Commit Graph

91 Commits

Author SHA1 Message Date
Natalie Weizenbaum
e0333b303c Get simple extension working. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
69221190e7 Enable @extend.
Still tons of runtime errors.
2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
69a431c7bf Fix all analysis. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
8d396cc465 Add _mustUnify. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
b9c6a1dc4e _isParentSuperselector => complexIsParentSuperselector 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
a5a81382ac Add _paths. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
51c8213a6d Add _selectorPseudoIsSuperselector. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
b5b4cd5a8b Add PseudoSelector.normalizedName. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
2b120f005d Fix some hints. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
25f625af13 Fix most strong-mode errors. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
1ea3619d93 some analysis fixes 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
d5b029de9b Some extend infra juggling. 2016-08-30 15:51:20 -07:00
Natalie Weizenbaum
16ace03246 Add Extender.addExtension 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
3c0e8cbd86 Source tracking.
This is actually way simpler than the Ruby Sass version, but I think it
should obey the First Law just as well.
2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
a88670da4e Add selector specificity. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
efaf64020f Add an LCS implementation. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
ab2d8ae3f3 unify complex 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
9caecbe0d0 Simplify names. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
ec5eb46747 Compound/Simple unification. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
946c6c814c More extend stuff 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
5e93ee8667 Extend WIP 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
4b2cba2775 Structural equality for selectors. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
c0a2618792 Update differences.md. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
0629fab635 _addChild -> _parent.addChild 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
da91d13d4f Make bubbling Sass-compliant. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
c5eb7f187b Only store selectors/media queries. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
a3e00059c4 Add perf metrics. 2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
e8756eb02d Make CssNodes directly mutable.
This shaves off a significant amount of time, since now we don't have to
do what is essentially a full copy of the CSS tree. We may want to use
interfaces to provide an immutable view of the CSS tree for use outside
of the perform visitor.
2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
a4a7ec1bd9 Refactor bubbling.
This still isn't quite right, though...
2016-08-30 15:51:19 -07:00
Natalie Weizenbaum
9575005571 Fix analysis issues. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
42ead803e9 Partial implementation of media rule merging.
The outer query is still hanging around.
2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
6022128372 Clean up style rule tracking. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
d69839080e Add a mutable node class for the performer. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
ed9f54b076 Add a Parent interface. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
e1e139959f Bubbling! 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
2ece8c19c9 Complete the loop on media queries.
Still need bubbling support.
2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
d063b41e64 Add Sass media query classes. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
e94e55f642 Support static strings. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
5891dacf53 Partial media query parsing.
Still needs classes, plain-CSS parsing, and to be hooked up to visitors.
2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
8d46af6b56 Add support for unrecognized at-rules. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
162ea29c14 Use built-in string scanner methods. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
4b0f18def7 Fix selector parsing. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
951ab45274 Parse selectors for rule nodes. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
04ba7cf782 Get rid of spans on selectors.
Selectors aren't parsed from source files, so it doesn't makes sense to
track these.
2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
e413dfb427 SourceSpan -> FileSpan 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
849ee6022b Add selector parsing.
Not yet hooked up to perform.
2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
a23aa018b0 Support hex colors. 2016-08-30 15:51:18 -07:00
Natalie Weizenbaum
f09d2c01b2 Fix analysis. 2016-08-30 15:51:17 -07:00
Natalie Weizenbaum
13e3bd7707 Prefix all values. 2016-08-30 15:51:17 -07:00
Natalie Weizenbaum
2189dbf113 Parse strings. 2016-08-30 15:51:17 -07:00