684 Commits

Author SHA1 Message Date
Natalie Weizenbaum
1450c241c6 Support input:output syntax for compiling multiple files at once
Partially addresses #264
2018-05-20 20:57:33 +01:00
Natalie Weizenbaum
beff4a1011 Add infrastructure for compiling multiple sources at once
This will allow us to use the same code path for --update as we do for
normal compilation.
2018-05-20 19:44:09 +01:00
Natalie Weizenbaum
2d72f1cdca
Add support for @elseif (#317)
Closes #316
2018-05-03 17:12:40 -07:00
Natalie Weizenbaum
b5fd1409ce
Fix relative imports through relative load paths in the Node API (#315)
Closes #314
2018-05-02 17:04:36 -07:00
Natalie Weizenbaum
ecbf1aebce
Add a RecursiveStatementVisitor (#313)
This will make it easier to write utilities that traverse the syntax
tree.
2018-05-02 11:29:47 -07:00
Natalie Weizenbaum
5bf7773590 Track variable declarations for source maps
Closes #2
2018-04-25 17:50:24 -07:00
Natalie Weizenbaum
326f0fd86a Remove the span argument from _EvaluateVisitor._evaluateArguments()
This was too broad; we should use the individual expressions' spans
instead.
2018-04-25 17:49:45 -07:00
Natalie Weizenbaum
6a117905ab
Fix a crash when printing warnings through the Node API (#311)
Closes #307
2018-04-25 17:47:29 -07:00
Natalie Weizenbaum
234aa12e08
Add CLI source map support (#309)
Partially addresses #2
2018-04-25 16:12:37 -07:00
Natalie Weizenbaum
7c616ef987 Limit the combinatorial explosion of compile calls 2018-04-25 13:41:22 -07:00
Natalie Weizenbaum
19408d943b Refactor the way CLI options are handled
Exposing the options through a stateless object makes it easier to
separate out the procedure of compilation from the logic behind
parsing each option.
2018-04-25 13:41:22 -07:00
Natalie Weizenbaum
3082a77b01 Add sections to the CLI --help documentation 2018-04-24 14:12:56 -07:00
Natalie Weizenbaum
dc8d8a6166
Run Dart Sass in checked mode in tests (#304)
Also fix a checked mode error.
2018-04-23 21:20:38 -07:00
Natalie Weizenbaum
7a882bd3be Fix a relative import bug in the JS API
Closes #284
2018-04-21 00:50:23 -07:00
Natalie Weizenbaum
fd19bc85b6
Add a JavaScript API for source map generation (#302)
Partially addresses #2
2018-04-20 17:56:00 -07:00
Natalie Weizenbaum
9ea001598a
Add a Dart API for source map generation (#299)
Partially addresses #2
2018-04-19 16:51:20 -07:00
Natalie Weizenbaum
b23993ea66
Always emit units for non-length/angle 0 values (#300)
Closes #297
2018-04-19 15:20:17 -07:00
Natalie Weizenbaum
6fd0f6d6e3
Improve the error message for extending compound selectors. (#294)
Closes #286
2018-04-14 16:02:53 -07:00
Natalie Weizenbaum
2e42c749a0
Properly parse #{$var} -#{$var} (#292)
Closes #290
2018-04-12 17:41:21 -07:00
Natalie Weizenbaum
26ca01cb92 Fix an outdated doc comment 2018-04-12 16:59:39 -07:00
Natalie Weizenbaum
a31251fdc9
Create a directory for CSS output if necessary (#291)
Closes #288
2018-04-12 16:40:53 -07:00
Natalie Weizenbaum
5cce76b6d4
Use constants from dart2_constants (#282) 2018-04-04 15:49:07 -07:00
Natalie Weizenbaum
713d179c9e Use the new mechanism for distinguishing Node from web compilation 2018-04-03 16:56:59 -07:00
Natalie Weizenbaum
e131fd0a36
Stop using deprecated args APIs (#278) 2018-03-29 14:16:14 -07:00
Natalie Weizenbaum
880c91444e
Add support for "sass input.scss output.css" (#275)
Closes #274
2018-03-27 13:45:03 -07:00
Natalie Weizenbaum
74cfe29814
Remove the deprecated render() function (#270) 2018-03-26 12:45:43 -07:00
Natalie Weizenbaum
6608a46d1e Make errors subtypes of Error 2018-03-23 15:22:10 -07:00
Natalie Weizenbaum
0e5a707ab4 Support both data and path options for the Node API 2018-03-23 14:55:28 -07:00
Natalie Weizenbaum
4c293f3ca7
Allow "!" in custom property values (#266)
Closes #260
2018-03-22 17:07:19 -07:00
Natalie Weizenbaum
5cc3238d4a
Explicitly recommend importing the Dart library with a prefix (#262) 2018-03-20 15:43:02 -07:00
Natalie Weizenbaum
0cc3777b46
Fix media query merging (#258)
Closes #244
2018-03-16 16:22:56 -07:00
Natalie Weizenbaum
9d3c8cdc1e
Allow mod 0 (#255)
Closes #254
2018-03-16 13:39:21 -07:00
Natalie Weizenbaum
7fd8f7d6c2
Add an --indented flag (#253)
Closes #105
2018-03-11 23:07:31 -07:00
Natalie Weizenbaum
b93fcdb5ed Add a --quiet flag to the CLI
Partially addresses #105
2018-03-11 21:05:34 -07:00
Natalie Weizenbaum
4c6494c288 Add a Logger class to control how output is emitted 2018-03-11 21:05:34 -07:00
Natalie Weizenbaum
da32588af1
Add support for the --load-path flag (#251)
Partially addresses #105
2018-03-11 20:39:00 -07:00
Natalie Weizenbaum
07b02174e0
Represent DynamicImport.url as a String (#250)
This works around dart-lang/sdk#32490. We need to preserve the leading
"./" to match Node Sass's behavior.

Closes #246
2018-03-11 15:46:59 -07:00
John Harvey
e63b8e1b40 Add support for _index files (#220)
See sass/sass#690
2018-03-09 14:46:46 -08:00
Natalie Weizenbaum
aba4ab1421
Properly parse multi-line selectors in the indented syntax (#243)
Closes #235
Closes #237
2018-03-02 17:49:57 -08:00
Natalie Weizenbaum
b7d4384a5c
Preserve whitespace after and in media queries in compressed mode (#242)
Closes #239
2018-03-02 14:15:38 -08:00
Natalie Weizenbaum
7d89ad0c1c
Properly handle hard tabs in the indented syntax (#241)
Closes #87
2018-03-01 18:59:58 -08:00
Natalie Weizenbaum
5c750cf7fb Preserve empty lines in indented loud comments 2018-02-23 17:56:54 -08:00
Natalie Weizenbaum
b404e32c46 Fix /* formatting to match Ruby Sass 2018-02-23 17:56:52 -08:00
Natalie Weizenbaum
7454a1b57f Don't add */ for indented syntax loud comments that already have it 2018-02-23 17:01:32 -08:00
Natalie Weizenbaum
bacc380d5b Don't deadlock on /* comments in the indented syntax
Closes #238
2018-02-23 16:29:23 -08:00
Jen Thakar
90e65c1a93 Fix bug in visitColor for compressed mode
If `value` is not a named color, `name.length` will error.
This checks that `name` is not null before checking the length.
2018-02-03 13:25:07 -08:00
Natalie Weizenbaum
f1e58e083e
Make SassList.contents private (#227)
This forces users to use Value.asList, which encourages them to be
aware that every value counts as a list.
2018-02-02 17:36:29 -08:00
Natalie Weizenbaum
a7ca1e0055 new SassString() defaults to quoted
We encourage API users to produce quoted strings when in doubt, so our
API should match that behavior.
2018-02-02 16:49:23 -08:00
Natalie Weizenbaum
163e99bff2 Be explicit about string quotes in new SassString() 2018-02-02 16:47:54 -08:00
Natalie Weizenbaum
5a1bfaebbf Add support for the Node Sass custom function API
Closes #10
Closes #12
2018-01-30 11:14:42 -08:00