refactor: fix mixed declarations warnings on sass-embedded 1.77.7+ #15507
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.
Description
Where possible, moves mixins or declarations around in definitions or re-orders declarations where the order doesn't matter to avoid sass-embedded warnings with
1.77.7
+ as documented at https://sass-lang.com/documentation/breaking-changes/mixed-decls/There is also discussion about this at sass/dart-sass#2276 where a dart-sass developer refers to recommended approach being to re-order declarations where possible, and use
& {}
within mixins for behaviour that will be forward and backward compatible.Accordingly also disables the sass-lint rule requiring mixins at the start. Without deterministically ordered mixins it's not possible to cleanly avoid interleaved declarations and nested blocks without using
& {}
everywhere. However, if maintainers would rather, this could prefer the ugly& {}
opt-ins that will maintain the deterministic ordering, but in some cases lead to less efficient CSS as there isn't the implicit "hoisting" of declarations going on.Methodology was to run
yarn run test
and correct all the sass-embedded warnings that appeared there.Types of changes
Checklist
develop
ordevelop-v...
).