Handle close modal events with a service. #2349
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
TL;DR: This change simplifies logic around handling common modal events. It's a refactor of FF stuff but necessary to not repeat the same funny business with segments. It also provides a "Common Modal Event" service that could be used for other similar situations where building out ngrx infrastructure for temporary values feels like a bit much.
Explanation: We basically have 2 modal close patterns in the newer UI modals:
In order to avoid that, we came up with 3 very different and regrettably convoluted patterns to handle http success callbacks and modal event triggers without storing additional state:
This change removes the first 2 above in favor of a simple service that can be called from effects. This way seems much more direct and easy to understand. Technically it still violates ngrx patterns because it causes a side-effect that is unmanaged by ngrx, but I think this is fine.