Improve type detection for arbitrary color values #8201
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.
Fixes #8171
This PR improves type detection for arbitrary color values. Previously the following classes would not be generated because the type of the values could not be determined:
Instead you would have to provide a type hint:
The hint should not be necessary here because we can tell the values are colors based on the use of
rgb()
.This PR adds a
loose
mode to theparseColor
function that allows colors with fewer than 3 parts (like the above examples) as long as at least one of the parts is variable. We then use this parsing mode when looking for colors in arbitrary values.