Commit Graph

571 Commits

Author SHA1 Message Date
Natalie Weizenbaum
6ed530c895 Test the Node.js API.
Closes #150
2017-07-06 17:39:07 -07:00
Natalie Weizenbaum
5d574f9923 Add support for ::slotted() (#156)
See sass/sass#2266
2017-07-05 16:00:20 -07:00
Sam Rawlins
7d92f2c1ad Support lineFeed in the Node API (#153) 2017-06-15 15:19:26 -07:00
Natalie Weizenbaum
bd52c9f80a Fix analysis issues. 2017-06-06 15:24:22 -07:00
Natalie Weizenbaum
ab48b7104d Upgrade to the latest source_span. (#151) 2017-06-05 12:35:30 -07:00
Natalie Weizenbaum
e032de83fb Allow \ before a selector in the indented syntax. (#152)
See sass/sass-spec#1136
2017-06-02 18:04:21 -07:00
Sam Rawlins
457a333727 Add indentType and indentWidth parameters (#136)
See #8
2017-06-02 15:42:22 -07:00
Sam Rawlins
7677ab1ba4 Parse declaration children before building its span (#149) 2017-06-01 15:36:16 -07:00
Natalie Weizenbaum
59e782e4dc Fix rounding behavior. (#147) 2017-05-29 17:07:21 -07:00
Natalie Weizenbaum
f8f90dc1e3 Improve the output of pseudo selectors.
Specifically, if a pseudo selector takes arguments and those arguments
had trailing whitespace in the source document, they no longer have
trailing whitespace in the output.
2017-05-28 16:21:58 -07:00
Natalie Weizenbaum
0ae7372d75 Allow compound extendees in selector functions. 2017-05-28 16:00:37 -07:00
Natalie Weizenbaum
b4d1d95889 Don't use partially-extended selectors as parents. 2017-05-28 15:54:18 -07:00
Sam Rawlins
2fd9df9b2c Fix ArgumentDeclaration.toString() when no args except rest (#145) 2017-05-28 14:20:01 -07:00
Natalie Weizenbaum
566156b3be Don't trim original compound selectors. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
5a95a72771 Extend existing extensions.
This allows us to support cases where an extension's extender is itself
extended after it's declared but before it's used.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
57fd640b43 Move _extendExistingStyleRules into a method. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
44244a2e88 Don't register a selector unnecessarily. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
4193b6346b Simplify specificity propagation.
A simple selector's source specificity should only come from its
original complex selector, and shouldn't be modified by extensions.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
9cfbf79f47 Check extend usage after the fact.
This means that extensions that match but fail to unify are valid, but
we think that's okay; see sass/sass#2250.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
9ded7e9e68 Use Maps rather than Expandos in Extender.
This seems to be substantially faster, at least on the VM.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
2f1fbcde69 Extend compound selectors in parallel.
Rather than extending each selector individually and unifying them with
the un-extended rest, this extends everything in one step and unifies in
the next.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
0e7ec951c3 Fix universal selector unification.
See sass/sass#2247
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
5a9b11084b Track the extender in the ExtendState.
Also rename it Extension.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
fe286487bd Track extenders by complex selector.
This allows us to share more logic if selector lists overlap.
2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
4173ffc901 Factor out _maybeExtendPseudo from _extendCompound. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
454171d7a0 Clean up _extendComplex by removing a variable. 2017-05-27 17:47:34 -07:00
Natalie Weizenbaum
c006fd8f14 Choose color names in alphabetical order. (#144) 2017-05-27 17:44:43 -07:00
Natalie Weizenbaum
4243535941 Update the formatter version. 2017-05-27 17:18:13 -07:00
Sam Rawlins
3b6f5ec3a0 Add a separator character to ListSeparator (#133) 2017-05-25 12:56:12 -07:00
Natalie Weizenbaum
61da3ec6b7 Disallow all top-level declarations and extend. (#141)
We were previously allowing declarations and extend in control
directives at the top level of documents, as long as those documents
were only ever imported in a nested context.
2017-05-25 12:18:57 -07:00
Natalie Weizenbaum
d4db75a8f9 Merge pull request #140 from sass/fixes
Fix a number of small bugs.
2017-05-19 18:59:17 -07:00
Natalie Weizenbaum
b3a00edec1 Properly parse unary operators after commas.
Closes #138
2017-05-18 18:13:33 -07:00
Natalie Weizenbaum
a4a2a26464 Allow /***/ in selectors.
Closes #135
2017-05-18 17:56:20 -07:00
Natalie Weizenbaum
372ef02aa6 Fix a string inspection crash.
This was being triggered for parse errors, because we inspect the
selector expression when we generate the error.

Closes #134
2017-05-18 17:39:47 -07:00
Natalie Weizenbaum
e840bd0927 Support "url" as an identifier name.
Closes #132
2017-05-18 17:38:54 -07:00
Natalie Weizenbaum
42786fd6cf Allow Parser.debug() to take any value. 2017-05-18 17:27:31 -07:00
Natalie Weizenbaum
b8c52743f6 Fix analysis errors. 2017-05-18 17:11:32 -07:00
Natalie Weizenbaum
7248cf0e27 Use real generic method syntax. 2017-05-18 17:11:32 -07:00
Natalie Weizenbaum
0556665f64 Fix @supports (not ...). (#125) 2017-05-18 17:05:58 -07:00
Natalie Weizenbaum
7182ea2fad Merge branch 'master' into fixes 2017-02-22 20:50:16 -08:00
Natalie Weizenbaum
716157f4bc Drop support for the reference combinator. (#123) 2017-02-22 20:48:56 -08:00
Natalie Weizenbaum
2f53f85053 Fix another extend edge-case. 2017-02-16 18:41:11 -08:00
Natalie Weizenbaum
7fe9dd8735 Fix hacky combinator unification. 2017-02-16 18:31:06 -08:00
Natalie Weizenbaum
2f86427ab8 Lazily re-compute indices for closures. (#120)
This produces a substantial speedup on Susy's tests.
2017-02-16 15:15:13 -08:00
Natalie Weizenbaum
18f4c1b801 Merge pull request #117 from sass/fixes
Fix more bugs.
2017-02-08 14:25:24 -08:00
Natalie Weizenbaum
89a7888a0e Properly isolate callable environments. 2017-02-04 14:16:29 -08:00
Natalie Weizenbaum
5e4d260c2a Fix a @content bug. 2017-02-04 12:39:23 -08:00
Natalie Weizenbaum
231a85be38 Improve Node file load speed. (#110) 2017-02-04 12:20:34 -08:00
Natalie Weizenbaum
79261fee8e Add boolean short-circuiting. 2017-02-03 17:37:54 -08:00
Natalie Weizenbaum
b32e5f96ce Fix a multi-combinator extend edge case. 2017-02-03 16:49:55 -08:00