libsass
libsass copied to clipboard
A C/C++ implementation of a Sass compiler
Issue sass/sass#2247 PR sass/sass#2316 Spec sass/sass-spec#1145
Issue https://github.com/sass/sass/issues/1496 PS https://github.com/sass/sass/pull/2318 Spec sass/sass-spec#1146
Added to Sass in https://github.com/sass/sass/commit/14d88e365086a99f28f49c192047360e622888ee Specs are in [spec/sass_3_5/extend/unify-root-pseudoelement](https://github.com/sass/sass-spec/tree/master/spec/sass_3_5/extend/unify-root-pseudoelement)
Issue https://github.com/sass/sass/issues/2228 PR https://github.com/sass/sass/pull/2314 Spec https://github.com/sass/sass-spec/pull/1143
`:matches(a c)` should be a superselector of the selector `a c`, but LibSass currently returns `false` for `is-superselector(":matches(a c)", "a c")`.
A `::slotted()` selector should be a superselector of another `::slotted()` selector if the former's selector is a superselector of the latter's, but currently `is-superselector("::slotted(a)", "::slotted(a.b)")` returns `false`.
`selector-append("a", "b|c")`, `selector-append("a", "|c")`, and `selector-append("a", "*|c")` should all throw errors, but in LibSass they currently return `ac`.
`selector-append(".a", "&")` should throw an error, but it currently returns `.a`.
If `:foo(X)` is a superselector of `:foo(Y)`, where `X` and `Y` are selectors, `:-pfx-foo(X)` should also be a superselector of `:-pfx-foo(Y)`. For the most part LibSass gets this right, but...
Currently the following function calls all return false: * `is-superselector("a ~ c", "a ~ b ~ c")` * `is-superselector("b ~ c", "a ~ b ~ c")` * `is-superselector("a ~ c",...