Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor registration & payment plugin options UX - last bits #4806

Merged

Conversation

sergei-maertens
Copy link
Member

No ticket, this is my fun :)

Changes

  • Refactored remaining registration plugins (except for Camunda) to button + modal config form
  • Refactored sole payment provider plugin (Ogone) to button + modal config form
  • Dropped support for RJSF forms - we only use the schema's for enum -> choice extraction.

One more PR will probably follow at some point to get the Camunda options form working without RJSF, and then the dependency can be dropped.

Checklist

Check off the items that are completed or not relevant.

  • Impact on features

    • Checked copying a form
    • Checked import/export of a form
    • Config checks in the configuration overview admin page
    • Problem detection in the admin email digest is handled
  • Release management

    • I have labelled the PR as "needs-backport" accordingly
  • I have updated the translations assets (you do NOT need to provide translations)

    • Ran ./bin/makemessages_js.sh
    • Ran ./bin/compilemessages_js.sh
  • Commit hygiene

    • Commit messages refer to the relevant Github issue
    • Commit messages explain the "why" of change, not the how

Copy link

codecov bot commented Oct 31, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 96.55%. Comparing base (19b45bd) to head (f20a7f9).
Report is 11 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4806   +/-   ##
=======================================
  Coverage   96.55%   96.55%           
=======================================
  Files         748      748           
  Lines       25413    25413           
  Branches     3358     3358           
=======================================
  Hits        24538    24538           
  Misses        610      610           
  Partials      265      265           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Instead of inline configuration options, expose them via a config
modal instead, to be consistent with other, real, registration backends.

The goal is to be able to drop RJSF eventually.
We used React JsonSchema Form to render a minimal form layout given
the serializer definition from the backend. This is now no longer
supported - you must explicitly define a configuration form (we
recommend using Formik for this) to use/render for a better UX and
more consistent UI appearance.
Similar to the registration backends, payment provider configuration
forms must now be defined explicitly.
We only have the Camunda options form making use of the wrapper left
as something to clean up, so we cannot drop the dependency entirely yet,
but almost there!
They're not limited to usage in registration backends, but
also useful for the payment plugin configuration, and, at
some point, probably also for prefill.
Replaced the duplicated code with a dedicated 'generic' component for
both payment/registration plugin configuration option forms.
@sergei-maertens sergei-maertens force-pushed the feature/refactor-remaining-registration-backends branch from 79c897b to f20a7f9 Compare November 8, 2024 17:21
@sergei-maertens sergei-maertens merged commit 24f1225 into master Nov 8, 2024
34 checks passed
@sergei-maertens sergei-maertens deleted the feature/refactor-remaining-registration-backends branch November 8, 2024 17:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants