fix(custom-properties): use default key name if pluralize returns empty #2389
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 fixes a bug in custom-properties where keys such as
"s"
are not generated correctly. This is due to the pluralize package not handling"s"
in an expected way in this context of themes.Essentially
This will not be corrected on pluralize, see: plurals/pluralize#36
This poses a problem for theme keys which is using "s" as a key to indicate "small", for example.
Bug
Consider a theme where we have radius sizes defined as:
This will create an incorrect CSS var, for the "s" key:
And you also get the invalid CSS custom property warning:
Solution
Since
pluralize
can at times return empty strings, in such cases it is better to just use thekey
itself. With this fix the output for the radius CSS custom properties are as expected: