* Fix off-by-one error in variant sort mapping
This didn’t actually have any negative effect because of how it was implemented. But it only happened to work right :D
* Make arbitrary variant sorting deterministic
* Update changelog
* Use faster byte-order comparison
We really only care that the order is _always_ the same. localeCompare is still locale dependent based on environment. This ensures it’s dependent on content only.
* Fix CS
* Add standalone-cli build for Windows ARM64
* Fix path to binary on windows
* Fix style
* Simplify Windows mapping in standalone CLI tests
Co-authored-by: Jordan Pittman <jordan@cryptica.me>
* Don’t reorder webkit scrollbar pseudo elements
In reality, we need to stop reordering pseudo elements completely as `::before:hover` and `::after:hover` are 100% valid and should work per the CSS selector spec even though no browser currently supports it.
* Update changelog
* Support using variables as arbitrary values without var()
* Update changelog
* Add tests for variable fallback values
Co-authored-by: Adam Wathan <4323180+adamwathan@users.noreply.github.com>
* fix `foo-[abc]/[def]` not being handled correctly
This commit does a bit of cleanup, it also ensures that we lookup
`[abc]/[def]` in the `values` first, and if it doesn't exist, then we
start parsing all the values out.
We also ensure that `abc` and `def` are parsed out correctly for the
correct type instead of dropping the rule altogether because we happen
to end up with an `any` rule.
TODO: we should further clean the whole type system because this should
only be used to figure out what type an arbitrary value is and to find
the corresponding plugin and that's it.
One of the fixes is doing a crazy lookup and running a generator, even
though we know it is a lookup value so we should be done with all the
work anyways.
* update changelog
* fix !imp selector not safelisted as valid class
* add tests for !imp selectors in safelist config
* add test to check for invalid variants
* Only check important utilities for patterns that include a `!`
* Update changelog
Co-authored-by: Jordan Pittman <jordan@cryptica.me>
* Pick up changes from files that are both context and content deps
We switched to absolute paths and it broke this revealing a lurking bug. Fun.
* Update changelog
* Update changelog