Skip to content

[pull] dev from opf:dev #422

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

Merged
merged 6 commits into from
Feb 14, 2025
Merged

[pull] dev from opf:dev #422

merged 6 commits into from
Feb 14, 2025

Conversation

pull[bot]
Copy link

@pull pull bot commented Feb 14, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.1)

Can you help keep this open source service alive? 💖 Please sponsor : )

brunopagno and others added 6 commits February 11, 2025 14:05
Use @-mention of user when quote replying to a comment
The idea is that now there is a central class (a Wizard)
managing the steps necessary to guide the user through creation
of a new storage.

This avoids problems such as the update action of step A being
required to prepare some parts of step B already, so that the
view/component for step B can be rendered correctly.

Since the same components are used inside and outside of the
step-by-step wizard, we are explicitly transferring the state on
whether we are currently in a wizard via parameters. This results
in some degree of boilerplate, but is hopefully more clear than
guessing based on context, whether or not we should show the next
step after submission or go back to regular edit mode.
The storage view component now has no own "opinion" on the display
order and grouping of steps anymore, but will merely reflect the wizard
configuration. Changes in the wizard are immediately reflected in the UI
as well. Selection of the right components was also extracted into the
storage registries.

Renamings of existing translations were in most cases avoided, by renaming wizard
steps according to existing translations.

This made it necessary to unify the instantiation of all components rendered
inside the storage view, which was relatively straight-forward for most of them.
The OAuthClientFormComponent was challenging, as there was one use case where it
needed to be initialized with a client that was not yet assigned to the storage.
All of these shared some common patterns that were always repeated,
so it made sense to unify them in a common base class.

For the info components this also affected inclusion of the
StorageViewInformation module, which is why I promoted this module
to be the new superclass for these components.

Closer inspection will probably reveal more commonalities that can
be moved upwards in the class hierarchy.
Refactor the step-by-step storage setup
@pull pull bot added the ⤵️ pull label Feb 14, 2025
@pull pull bot merged commit ad91f7e into kp-forks:dev Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants