Add packages to optimize svgs dynamically
These packages will be used to dynamically optimize SVG images
during the build.
R=jacktfranklin@chromium.org
Bug: 1216402
Change-Id: I04e95aa7d79c9d67beaf8a7861182c52b16b7d0f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2939992
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
diff --git a/node_modules/css-tree/lib/parser/sequence.js b/node_modules/css-tree/lib/parser/sequence.js
new file mode 100644
index 0000000..44647e5
--- /dev/null
+++ b/node_modules/css-tree/lib/parser/sequence.js
@@ -0,0 +1,54 @@
+var TYPE = require('../tokenizer').TYPE;
+var WHITESPACE = TYPE.WhiteSpace;
+var COMMENT = TYPE.Comment;
+
+module.exports = function readSequence(recognizer) {
+ var children = this.createList();
+ var child = null;
+ var context = {
+ recognizer: recognizer,
+ space: null,
+ ignoreWS: false,
+ ignoreWSAfter: false
+ };
+
+ this.scanner.skipSC();
+
+ while (!this.scanner.eof) {
+ switch (this.scanner.tokenType) {
+ case COMMENT:
+ this.scanner.next();
+ continue;
+
+ case WHITESPACE:
+ if (context.ignoreWS) {
+ this.scanner.next();
+ } else {
+ context.space = this.WhiteSpace();
+ }
+ continue;
+ }
+
+ child = recognizer.getNode.call(this, context);
+
+ if (child === undefined) {
+ break;
+ }
+
+ if (context.space !== null) {
+ children.push(context.space);
+ context.space = null;
+ }
+
+ children.push(child);
+
+ if (context.ignoreWSAfter) {
+ context.ignoreWSAfter = false;
+ context.ignoreWS = true;
+ } else {
+ context.ignoreWS = false;
+ }
+ }
+
+ return children;
+};