Put components into an extra layer when using the legacy JS API #17918
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.
This PR changes the way how legacy JS
addComponents()
andmatchComponents()
CSS is handled. In v3, these were conceptually added to the@layer components
so that each utility defined in@layer utility
is able to overwrite it.In order to improve backwards compatibility, this PR tries to recreate the same behavior by relying on layer nesting. This means that as far as core is concerned, there is still only one
utility
layer, however utilities added via these APIs will now create a nested@layer components
. Since all utilities that are in the@layer utilities
alone will have have a higher presedenc than the components defined in@layer utilities.components
, this will emulate the legacy behavior.Test plan