less 4.0.1-alpha.0 → 4.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +2 -1
- package/.eslintrc.json +70 -2
- package/Gruntfile.js +8 -23
- package/dist/less.js +1161 -1132
- package/dist/less.min.js +3 -3
- package/dist/less.min.js.map +1 -1
- package/lib/less/constants.js +2 -1
- package/lib/less/constants.js.map +1 -1
- package/lib/less/contexts.js +2 -20
- package/lib/less/contexts.js.map +1 -1
- package/lib/less/data/index.js +3 -5
- package/lib/less/data/index.js.map +1 -1
- package/lib/less/environment/abstract-plugin-loader.js +3 -5
- package/lib/less/environment/abstract-plugin-loader.js.map +1 -1
- package/lib/less/environment/environment.js +2 -4
- package/lib/less/environment/environment.js.map +1 -1
- package/lib/less/functions/boolean.js +14 -6
- package/lib/less/functions/boolean.js.map +1 -1
- package/lib/less/functions/color-blending.js +2 -4
- package/lib/less/functions/color-blending.js.map +1 -1
- package/lib/less/functions/color.js +7 -9
- package/lib/less/functions/color.js.map +1 -1
- package/lib/less/functions/data-uri.js +5 -26
- package/lib/less/functions/data-uri.js.map +1 -1
- package/lib/less/functions/default.js +2 -4
- package/lib/less/functions/default.js.map +1 -1
- package/lib/less/functions/function-caller.js +7 -12
- package/lib/less/functions/function-caller.js.map +1 -1
- package/lib/less/functions/index.js +14 -16
- package/lib/less/functions/index.js.map +1 -1
- package/lib/less/functions/list.js +11 -13
- package/lib/less/functions/list.js.map +1 -1
- package/lib/less/functions/math-helper.js +2 -4
- package/lib/less/functions/math-helper.js.map +1 -1
- package/lib/less/functions/math.js +2 -4
- package/lib/less/functions/math.js.map +1 -1
- package/lib/less/functions/number.js +4 -6
- package/lib/less/functions/number.js.map +1 -1
- package/lib/less/functions/string.js +4 -6
- package/lib/less/functions/string.js.map +1 -1
- package/lib/less/functions/svg.js +6 -8
- package/lib/less/functions/svg.js.map +1 -1
- package/lib/less/functions/types.js +11 -12
- package/lib/less/functions/types.js.map +1 -1
- package/lib/less/import-manager.js +6 -27
- package/lib/less/import-manager.js.map +1 -1
- package/lib/less/index.js +25 -43
- package/lib/less/index.js.map +1 -1
- package/lib/less/less-error.js +2 -20
- package/lib/less/less-error.js.map +1 -1
- package/lib/less/parse-tree.js +4 -6
- package/lib/less/parse-tree.js.map +1 -1
- package/lib/less/parse.js +6 -27
- package/lib/less/parse.js.map +1 -1
- package/lib/less/parser/parser-input.js +2 -4
- package/lib/less/parser/parser-input.js.map +1 -1
- package/lib/less/parser/parser.js +10 -31
- package/lib/less/parser/parser.js.map +1 -1
- package/lib/less/render.js +2 -20
- package/lib/less/render.js.map +1 -1
- package/lib/less/source-map-output.js +5 -1
- package/lib/less/source-map-output.js.map +1 -1
- package/lib/less/transform-tree.js +4 -6
- package/lib/less/transform-tree.js.map +1 -1
- package/lib/less/tree/anonymous.js +22 -41
- package/lib/less/tree/anonymous.js.map +1 -1
- package/lib/less/tree/assignment.js +15 -34
- package/lib/less/tree/assignment.js.map +1 -1
- package/lib/less/tree/atrule.js +49 -68
- package/lib/less/tree/atrule.js.map +1 -1
- package/lib/less/tree/attribute.js +16 -35
- package/lib/less/tree/attribute.js.map +1 -1
- package/lib/less/tree/call.js +20 -39
- package/lib/less/tree/call.js.map +1 -1
- package/lib/less/tree/color.js +75 -94
- package/lib/less/tree/color.js.map +1 -1
- package/lib/less/tree/combinator.js +16 -35
- package/lib/less/tree/combinator.js.map +1 -1
- package/lib/less/tree/comment.js +17 -36
- package/lib/less/tree/comment.js.map +1 -1
- package/lib/less/tree/condition.js +16 -35
- package/lib/less/tree/condition.js.map +1 -1
- package/lib/less/tree/debug-info.js.map +1 -1
- package/lib/less/tree/declaration.js +36 -74
- package/lib/less/tree/declaration.js.map +1 -1
- package/lib/less/tree/detached-ruleset.js +19 -57
- package/lib/less/tree/detached-ruleset.js.map +1 -1
- package/lib/less/tree/dimension.js +36 -53
- package/lib/less/tree/dimension.js.map +1 -1
- package/lib/less/tree/element.js +34 -53
- package/lib/less/tree/element.js.map +1 -1
- package/lib/less/tree/expression.js +23 -61
- package/lib/less/tree/expression.js.map +1 -1
- package/lib/less/tree/extend.js +34 -53
- package/lib/less/tree/extend.js.map +1 -1
- package/lib/less/tree/import.js +46 -84
- package/lib/less/tree/import.js.map +1 -1
- package/lib/less/tree/index.js +71 -46
- package/lib/less/tree/index.js.map +1 -1
- package/lib/less/tree/javascript.js +16 -35
- package/lib/less/tree/javascript.js.map +1 -1
- package/lib/less/tree/js-eval-node.js +14 -31
- package/lib/less/tree/js-eval-node.js.map +1 -1
- package/lib/less/tree/keyword.js +10 -29
- package/lib/less/tree/keyword.js.map +1 -1
- package/lib/less/tree/media.js +40 -78
- package/lib/less/tree/media.js.map +1 -1
- package/lib/less/tree/mixin-call.js +34 -47
- package/lib/less/tree/mixin-call.js.map +1 -1
- package/lib/less/tree/mixin-definition.js +51 -89
- package/lib/less/tree/mixin-definition.js.map +1 -1
- package/lib/less/tree/namespace-value.js +22 -37
- package/lib/less/tree/namespace-value.js.map +1 -1
- package/lib/less/tree/negative.js +14 -33
- package/lib/less/tree/negative.js.map +1 -1
- package/lib/less/tree/node.js +20 -7
- package/lib/less/tree/node.js.map +1 -1
- package/lib/less/tree/operation.js +22 -59
- package/lib/less/tree/operation.js.map +1 -1
- package/lib/less/tree/paren.js +12 -31
- package/lib/less/tree/paren.js.map +1 -1
- package/lib/less/tree/property.js +21 -36
- package/lib/less/tree/property.js.map +1 -1
- package/lib/less/tree/quoted.js +25 -44
- package/lib/less/tree/quoted.js.map +1 -1
- package/lib/less/tree/ruleset.js +69 -107
- package/lib/less/tree/ruleset.js.map +1 -1
- package/lib/less/tree/selector.js +38 -57
- package/lib/less/tree/selector.js.map +1 -1
- package/lib/less/tree/unicode-descriptor.js +8 -27
- package/lib/less/tree/unicode-descriptor.js.map +1 -1
- package/lib/less/tree/unit.js +38 -76
- package/lib/less/tree/unit.js.map +1 -1
- package/lib/less/tree/url.js +20 -39
- package/lib/less/tree/url.js.map +1 -1
- package/lib/less/tree/value.js +21 -40
- package/lib/less/tree/value.js.map +1 -1
- package/lib/less/tree/variable-call.js +17 -36
- package/lib/less/tree/variable-call.js.map +1 -1
- package/lib/less/tree/variable.js +21 -36
- package/lib/less/tree/variable.js.map +1 -1
- package/lib/less/utils.js +5 -33
- package/lib/less/utils.js.map +1 -1
- package/lib/less/visitors/extend-visitor.js +5 -26
- package/lib/less/visitors/extend-visitor.js.map +1 -1
- package/lib/less/visitors/import-sequencer.js.map +1 -1
- package/lib/less/visitors/import-visitor.js +5 -26
- package/lib/less/visitors/import-visitor.js.map +1 -1
- package/lib/less/visitors/index.js +7 -9
- package/lib/less/visitors/index.js.map +1 -1
- package/lib/less/visitors/join-selector-visitor.js +2 -4
- package/lib/less/visitors/join-selector-visitor.js.map +1 -1
- package/lib/less/visitors/to-css-visitor.js +7 -7
- package/lib/less/visitors/to-css-visitor.js.map +1 -1
- package/lib/less/visitors/visitor.js +2 -4
- package/lib/less/visitors/visitor.js.map +1 -1
- package/lib/less-browser/add-default-options.js +2 -4
- package/lib/less-browser/add-default-options.js.map +1 -1
- package/lib/less-browser/bootstrap.js +4 -6
- package/lib/less-browser/bootstrap.js.map +1 -1
- package/lib/less-browser/browser.js +2 -20
- package/lib/less-browser/browser.js.map +1 -1
- package/lib/less-browser/error-reporting.js +3 -24
- package/lib/less-browser/error-reporting.js.map +1 -1
- package/lib/less-browser/file-manager.js +17 -36
- package/lib/less-browser/file-manager.js.map +1 -1
- package/lib/less-browser/image-size.js +2 -4
- package/lib/less-browser/image-size.js.map +1 -1
- package/lib/less-browser/index.js +9 -11
- package/lib/less-browser/index.js.map +1 -1
- package/lib/less-browser/plugin-loader.js +10 -29
- package/lib/less-browser/plugin-loader.js.map +1 -1
- package/lib/less-node/file-manager.js +15 -34
- package/lib/less-node/file-manager.js.map +1 -1
- package/lib/less-node/image-size.js +4 -6
- package/lib/less-node/image-size.js.map +1 -1
- package/lib/less-node/index.js +6 -8
- package/lib/less-node/index.js.map +1 -1
- package/lib/less-node/plugin-loader.js +23 -42
- package/lib/less-node/plugin-loader.js.map +1 -1
- package/lib/less-node/url-file-manager.js +24 -39
- package/lib/less-node/url-file-manager.js.map +1 -1
- package/package.json +20 -17
- package/test/index.js +20 -2
- package/test/less-test.js +36 -16
- package/tsconfig.json +6 -0
- package/LICENSE +0 -177
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../src/less/tree/import.js"],"names":[],"mappings":"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","sourcesContent":["import Node from './node';\nimport Media from './media';\nimport URL from './url';\nimport Quoted from './quoted';\nimport Ruleset from './ruleset';\nimport Anonymous from './anonymous';\nimport * as utils from '../utils';\nimport LessError from '../less-error';\n\n//\n// CSS @import node\n//\n// The general strategy here is that we don't want to wait\n// for the parsing to be completed, before we start importing\n// the file. That's because in the context of a browser,\n// most of the time will be spent waiting for the server to respond.\n//\n// On creation, we push the import path to our import queue, though\n// `import,push`, we also pass it a callback, which it'll call once\n// the file has been fetched, and parsed.\n//\nclass Import extends Node {\n constructor(path, features, options, index, currentFileInfo, visibilityInfo) {\n super();\n\n this.options = options;\n this._index = index;\n this._fileInfo = currentFileInfo;\n this.path = path;\n this.features = features;\n this.allowRoot = true;\n\n if (this.options.less !== undefined || this.options.inline) {\n this.css = !this.options.less || this.options.inline;\n } else {\n const pathValue = this.getPath();\n if (pathValue && /[#\\.\\&\\?]css([\\?;].*)?$/.test(pathValue)) {\n this.css = true;\n }\n }\n this.copyVisibilityInfo(visibilityInfo);\n this.setParent(this.features, this);\n this.setParent(this.path, this);\n }\n\n accept(visitor) {\n if (this.features) {\n this.features = visitor.visit(this.features);\n }\n this.path = visitor.visit(this.path);\n if (!this.options.isPlugin && !this.options.inline && this.root) {\n this.root = visitor.visit(this.root);\n }\n }\n\n genCSS(context, output) {\n if (this.css && this.path._fileInfo.reference === undefined) {\n output.add('@import ', this._fileInfo, this._index);\n this.path.genCSS(context, output);\n if (this.features) {\n output.add(' ');\n this.features.genCSS(context, output);\n }\n output.add(';');\n }\n }\n\n getPath() {\n return (this.path instanceof URL) ?\n this.path.value.value : this.path.value;\n }\n\n isVariableImport() {\n let path = this.path;\n if (path instanceof URL) {\n path = path.value;\n }\n if (path instanceof Quoted) {\n return path.containsVariables();\n }\n\n return true;\n }\n\n evalForImport(context) {\n let path = this.path;\n\n if (path instanceof URL) {\n path = path.value;\n }\n\n return new Import(path.eval(context), this.features, this.options, this._index, this._fileInfo, this.visibilityInfo());\n }\n\n evalPath(context) {\n const path = this.path.eval(context);\n const fileInfo = this._fileInfo;\n\n if (!(path instanceof URL)) {\n // Add the rootpath if the URL requires a rewrite\n const pathValue = path.value;\n if (fileInfo &&\n pathValue &&\n context.pathRequiresRewrite(pathValue)) {\n path.value = context.rewritePath(pathValue, fileInfo.rootpath);\n } else {\n path.value = context.normalizePath(path.value);\n }\n }\n\n return path;\n }\n\n eval(context) {\n const result = this.doEval(context);\n if (this.options.reference || this.blocksVisibility()) {\n if (result.length || result.length === 0) {\n result.forEach(function (node) {\n node.addVisibilityBlock();\n }\n );\n } else {\n result.addVisibilityBlock();\n }\n }\n return result;\n }\n\n doEval(context) {\n let ruleset;\n let registry;\n const features = this.features && this.features.eval(context);\n\n if (this.options.isPlugin) {\n if (this.root && this.root.eval) {\n try {\n this.root.eval(context);\n }\n catch (e) {\n e.message = 'Plugin error during evaluation';\n throw new LessError(e, this.root.imports, this.root.filename);\n }\n }\n registry = context.frames[0] && context.frames[0].functionRegistry;\n if ( registry && this.root && this.root.functions ) {\n registry.addMultiple( this.root.functions );\n }\n\n return [];\n }\n\n if (this.skip) {\n if (typeof this.skip === 'function') {\n this.skip = this.skip();\n }\n if (this.skip) {\n return [];\n }\n }\n if (this.options.inline) {\n const contents = new Anonymous(this.root, 0,\n {\n filename: this.importedFilename,\n reference: this.path._fileInfo && this.path._fileInfo.reference\n }, true, true);\n\n return this.features ? new Media([contents], this.features.value) : [contents];\n } else if (this.css) {\n const newImport = new Import(this.evalPath(context), features, this.options, this._index);\n if (!newImport.css && this.error) {\n throw this.error;\n }\n return newImport;\n } else if (this.root) {\n ruleset = new Ruleset(null, utils.copyArray(this.root.rules));\n ruleset.evalImports(context);\n\n return this.features ? new Media(ruleset.rules, this.features.value) : ruleset.rules;\n } else {\n return [];\n }\n }\n}\n\nImport.prototype.type = 'Import';\nexport default Import;\n"]}
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../src/less/tree/import.js"],"names":[],"mappings":"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","sourcesContent":["import Node from './node';\nimport Media from './media';\nimport URL from './url';\nimport Quoted from './quoted';\nimport Ruleset from './ruleset';\nimport Anonymous from './anonymous';\nimport * as utils from '../utils';\nimport LessError from '../less-error';\n\n//\n// CSS @import node\n//\n// The general strategy here is that we don't want to wait\n// for the parsing to be completed, before we start importing\n// the file. That's because in the context of a browser,\n// most of the time will be spent waiting for the server to respond.\n//\n// On creation, we push the import path to our import queue, though\n// `import,push`, we also pass it a callback, which it'll call once\n// the file has been fetched, and parsed.\n//\nconst Import = function(path, features, options, index, currentFileInfo, visibilityInfo) {\n this.options = options;\n this._index = index;\n this._fileInfo = currentFileInfo;\n this.path = path;\n this.features = features;\n this.allowRoot = true;\n\n if (this.options.less !== undefined || this.options.inline) {\n this.css = !this.options.less || this.options.inline;\n } else {\n const pathValue = this.getPath();\n if (pathValue && /[#\\.\\&\\?]css([\\?;].*)?$/.test(pathValue)) {\n this.css = true;\n }\n }\n this.copyVisibilityInfo(visibilityInfo);\n this.setParent(this.features, this);\n this.setParent(this.path, this);\n};\n\nImport.prototype = Object.assign(new Node(), {\n type: 'Import',\n\n accept(visitor) {\n if (this.features) {\n this.features = visitor.visit(this.features);\n }\n this.path = visitor.visit(this.path);\n if (!this.options.isPlugin && !this.options.inline && this.root) {\n this.root = visitor.visit(this.root);\n }\n },\n\n genCSS(context, output) {\n if (this.css && this.path._fileInfo.reference === undefined) {\n output.add('@import ', this._fileInfo, this._index);\n this.path.genCSS(context, output);\n if (this.features) {\n output.add(' ');\n this.features.genCSS(context, output);\n }\n output.add(';');\n }\n },\n\n getPath() {\n return (this.path instanceof URL) ?\n this.path.value.value : this.path.value;\n },\n\n isVariableImport() {\n let path = this.path;\n if (path instanceof URL) {\n path = path.value;\n }\n if (path instanceof Quoted) {\n return path.containsVariables();\n }\n\n return true;\n },\n\n evalForImport(context) {\n let path = this.path;\n\n if (path instanceof URL) {\n path = path.value;\n }\n\n return new Import(path.eval(context), this.features, this.options, this._index, this._fileInfo, this.visibilityInfo());\n },\n\n evalPath(context) {\n const path = this.path.eval(context);\n const fileInfo = this._fileInfo;\n\n if (!(path instanceof URL)) {\n // Add the rootpath if the URL requires a rewrite\n const pathValue = path.value;\n if (fileInfo &&\n pathValue &&\n context.pathRequiresRewrite(pathValue)) {\n path.value = context.rewritePath(pathValue, fileInfo.rootpath);\n } else {\n path.value = context.normalizePath(path.value);\n }\n }\n\n return path;\n },\n\n eval(context) {\n const result = this.doEval(context);\n if (this.options.reference || this.blocksVisibility()) {\n if (result.length || result.length === 0) {\n result.forEach(function (node) {\n node.addVisibilityBlock();\n }\n );\n } else {\n result.addVisibilityBlock();\n }\n }\n return result;\n },\n\n doEval(context) {\n let ruleset;\n let registry;\n const features = this.features && this.features.eval(context);\n\n if (this.options.isPlugin) {\n if (this.root && this.root.eval) {\n try {\n this.root.eval(context);\n }\n catch (e) {\n e.message = 'Plugin error during evaluation';\n throw new LessError(e, this.root.imports, this.root.filename);\n }\n }\n registry = context.frames[0] && context.frames[0].functionRegistry;\n if ( registry && this.root && this.root.functions ) {\n registry.addMultiple( this.root.functions );\n }\n\n return [];\n }\n\n if (this.skip) {\n if (typeof this.skip === 'function') {\n this.skip = this.skip();\n }\n if (this.skip) {\n return [];\n }\n }\n if (this.options.inline) {\n const contents = new Anonymous(this.root, 0,\n {\n filename: this.importedFilename,\n reference: this.path._fileInfo && this.path._fileInfo.reference\n }, true, true);\n\n return this.features ? new Media([contents], this.features.value) : [contents];\n } else if (this.css) {\n const newImport = new Import(this.evalPath(context), features, this.options, this._index);\n if (!newImport.css && this.error) {\n throw this.error;\n }\n return newImport;\n } else if (this.root) {\n ruleset = new Ruleset(null, utils.copyArray(this.root.rules));\n ruleset.evalImports(context);\n\n return this.features ? new Media(ruleset.rules, this.features.value) : ruleset.rules;\n } else {\n return [];\n }\n }\n});\n\nexport default Import;\n"]}
|
package/lib/less/tree/index.js
CHANGED
|
@@ -1,53 +1,78 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
var
|
|
22
|
-
var
|
|
23
|
-
var
|
|
24
|
-
var
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
var
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
var
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var
|
|
35
|
-
var
|
|
36
|
-
var
|
|
37
|
-
var
|
|
38
|
-
var
|
|
39
|
-
var
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var node_1 = tslib_1.__importDefault(require("./node"));
|
|
5
|
+
var color_1 = tslib_1.__importDefault(require("./color"));
|
|
6
|
+
var atrule_1 = tslib_1.__importDefault(require("./atrule"));
|
|
7
|
+
var detached_ruleset_1 = tslib_1.__importDefault(require("./detached-ruleset"));
|
|
8
|
+
var operation_1 = tslib_1.__importDefault(require("./operation"));
|
|
9
|
+
var dimension_1 = tslib_1.__importDefault(require("./dimension"));
|
|
10
|
+
var unit_1 = tslib_1.__importDefault(require("./unit"));
|
|
11
|
+
var keyword_1 = tslib_1.__importDefault(require("./keyword"));
|
|
12
|
+
var variable_1 = tslib_1.__importDefault(require("./variable"));
|
|
13
|
+
var property_1 = tslib_1.__importDefault(require("./property"));
|
|
14
|
+
var ruleset_1 = tslib_1.__importDefault(require("./ruleset"));
|
|
15
|
+
var element_1 = tslib_1.__importDefault(require("./element"));
|
|
16
|
+
var attribute_1 = tslib_1.__importDefault(require("./attribute"));
|
|
17
|
+
var combinator_1 = tslib_1.__importDefault(require("./combinator"));
|
|
18
|
+
var selector_1 = tslib_1.__importDefault(require("./selector"));
|
|
19
|
+
var quoted_1 = tslib_1.__importDefault(require("./quoted"));
|
|
20
|
+
var expression_1 = tslib_1.__importDefault(require("./expression"));
|
|
21
|
+
var declaration_1 = tslib_1.__importDefault(require("./declaration"));
|
|
22
|
+
var call_1 = tslib_1.__importDefault(require("./call"));
|
|
23
|
+
var url_1 = tslib_1.__importDefault(require("./url"));
|
|
24
|
+
var import_1 = tslib_1.__importDefault(require("./import"));
|
|
25
|
+
var comment_1 = tslib_1.__importDefault(require("./comment"));
|
|
26
|
+
var anonymous_1 = tslib_1.__importDefault(require("./anonymous"));
|
|
27
|
+
var value_1 = tslib_1.__importDefault(require("./value"));
|
|
28
|
+
var javascript_1 = tslib_1.__importDefault(require("./javascript"));
|
|
29
|
+
var assignment_1 = tslib_1.__importDefault(require("./assignment"));
|
|
30
|
+
var condition_1 = tslib_1.__importDefault(require("./condition"));
|
|
31
|
+
var paren_1 = tslib_1.__importDefault(require("./paren"));
|
|
32
|
+
var media_1 = tslib_1.__importDefault(require("./media"));
|
|
33
|
+
var unicode_descriptor_1 = tslib_1.__importDefault(require("./unicode-descriptor"));
|
|
34
|
+
var negative_1 = tslib_1.__importDefault(require("./negative"));
|
|
35
|
+
var extend_1 = tslib_1.__importDefault(require("./extend"));
|
|
36
|
+
var variable_call_1 = tslib_1.__importDefault(require("./variable-call"));
|
|
37
|
+
var namespace_value_1 = tslib_1.__importDefault(require("./namespace-value"));
|
|
40
38
|
// mixins
|
|
41
|
-
var mixin_call_1 = __importDefault(require("./mixin-call"));
|
|
42
|
-
var mixin_definition_1 = __importDefault(require("./mixin-definition"));
|
|
39
|
+
var mixin_call_1 = tslib_1.__importDefault(require("./mixin-call"));
|
|
40
|
+
var mixin_definition_1 = tslib_1.__importDefault(require("./mixin-definition"));
|
|
43
41
|
exports.default = {
|
|
44
|
-
Node: node_1.default,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
Node: node_1.default,
|
|
43
|
+
Color: color_1.default,
|
|
44
|
+
AtRule: atrule_1.default,
|
|
45
|
+
DetachedRuleset: detached_ruleset_1.default,
|
|
46
|
+
Operation: operation_1.default,
|
|
47
|
+
Dimension: dimension_1.default,
|
|
48
|
+
Unit: unit_1.default,
|
|
49
|
+
Keyword: keyword_1.default,
|
|
50
|
+
Variable: variable_1.default,
|
|
51
|
+
Property: property_1.default,
|
|
52
|
+
Ruleset: ruleset_1.default,
|
|
53
|
+
Element: element_1.default,
|
|
54
|
+
Attribute: attribute_1.default,
|
|
55
|
+
Combinator: combinator_1.default,
|
|
56
|
+
Selector: selector_1.default,
|
|
57
|
+
Quoted: quoted_1.default,
|
|
58
|
+
Expression: expression_1.default,
|
|
59
|
+
Declaration: declaration_1.default,
|
|
60
|
+
Call: call_1.default,
|
|
61
|
+
URL: url_1.default,
|
|
62
|
+
Import: import_1.default,
|
|
63
|
+
Comment: comment_1.default,
|
|
64
|
+
Anonymous: anonymous_1.default,
|
|
65
|
+
Value: value_1.default,
|
|
66
|
+
JavaScript: javascript_1.default,
|
|
67
|
+
Assignment: assignment_1.default,
|
|
68
|
+
Condition: condition_1.default,
|
|
69
|
+
Paren: paren_1.default,
|
|
70
|
+
Media: media_1.default,
|
|
71
|
+
UnicodeDescriptor: unicode_descriptor_1.default,
|
|
72
|
+
Negative: negative_1.default,
|
|
73
|
+
Extend: extend_1.default,
|
|
74
|
+
VariableCall: variable_call_1.default,
|
|
75
|
+
NamespaceValue: namespace_value_1.default,
|
|
51
76
|
mixin: {
|
|
52
77
|
Call: mixin_call_1.default,
|
|
53
78
|
Definition: mixin_definition_1.default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/less/tree/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/less/tree/index.js"],"names":[],"mappings":";;;AAAA,wDAA0B;AAC1B,0DAA4B;AAC5B,4DAA8B;AAC9B,gFAAiD;AACjD,kEAAoC;AACpC,kEAAoC;AACpC,wDAA0B;AAC1B,8DAAgC;AAChC,gEAAkC;AAClC,gEAAkC;AAClC,8DAAgC;AAChC,8DAAgC;AAChC,kEAAoC;AACpC,oEAAsC;AACtC,gEAAkC;AAClC,4DAA8B;AAC9B,oEAAsC;AACtC,sEAAwC;AACxC,wDAA0B;AAC1B,sDAAwB;AACxB,4DAA8B;AAC9B,8DAAgC;AAChC,kEAAoC;AACpC,0DAA4B;AAC5B,oEAAsC;AACtC,oEAAsC;AACtC,kEAAoC;AACpC,0DAA4B;AAC5B,0DAA4B;AAC5B,oFAAqD;AACrD,gEAAkC;AAClC,4DAA8B;AAC9B,0EAA2C;AAC3C,8EAA+C;AAE/C,SAAS;AACT,oEAAqC;AACrC,gFAAiD;AAEjD,kBAAe;IACX,IAAI,gBAAA;IAAE,KAAK,iBAAA;IAAE,MAAM,kBAAA;IAAE,eAAe,4BAAA;IAAE,SAAS,qBAAA;IAC/C,SAAS,qBAAA;IAAE,IAAI,gBAAA;IAAE,OAAO,mBAAA;IAAE,QAAQ,oBAAA;IAAE,QAAQ,oBAAA;IAC5C,OAAO,mBAAA;IAAE,OAAO,mBAAA;IAAE,SAAS,qBAAA;IAAE,UAAU,sBAAA;IAAE,QAAQ,oBAAA;IACjD,MAAM,kBAAA;IAAE,UAAU,sBAAA;IAAE,WAAW,uBAAA;IAAE,IAAI,gBAAA;IAAE,GAAG,eAAA;IAAE,MAAM,kBAAA;IAClD,OAAO,mBAAA;IAAE,SAAS,qBAAA;IAAE,KAAK,iBAAA;IAAE,UAAU,sBAAA;IAAE,UAAU,sBAAA;IACjD,SAAS,qBAAA;IAAE,KAAK,iBAAA;IAAE,KAAK,iBAAA;IAAE,iBAAiB,8BAAA;IAAE,QAAQ,oBAAA;IACpD,MAAM,kBAAA;IAAE,YAAY,yBAAA;IAAE,cAAc,2BAAA;IACpC,KAAK,EAAE;QACH,IAAI,EAAE,oBAAS;QACf,UAAU,EAAE,0BAAe;KAC9B;CACJ,CAAC","sourcesContent":["import Node from './node';\nimport Color from './color';\nimport AtRule from './atrule';\nimport DetachedRuleset from './detached-ruleset';\nimport Operation from './operation';\nimport Dimension from './dimension';\nimport Unit from './unit';\nimport Keyword from './keyword';\nimport Variable from './variable';\nimport Property from './property';\nimport Ruleset from './ruleset';\nimport Element from './element';\nimport Attribute from './attribute';\nimport Combinator from './combinator';\nimport Selector from './selector';\nimport Quoted from './quoted';\nimport Expression from './expression';\nimport Declaration from './declaration';\nimport Call from './call';\nimport URL from './url';\nimport Import from './import';\nimport Comment from './comment';\nimport Anonymous from './anonymous';\nimport Value from './value';\nimport JavaScript from './javascript';\nimport Assignment from './assignment';\nimport Condition from './condition';\nimport Paren from './paren';\nimport Media from './media';\nimport UnicodeDescriptor from './unicode-descriptor';\nimport Negative from './negative';\nimport Extend from './extend';\nimport VariableCall from './variable-call';\nimport NamespaceValue from './namespace-value';\n\n// mixins\nimport MixinCall from './mixin-call';\nimport MixinDefinition from './mixin-definition';\n\nexport default {\n Node, Color, AtRule, DetachedRuleset, Operation,\n Dimension, Unit, Keyword, Variable, Property,\n Ruleset, Element, Attribute, Combinator, Selector,\n Quoted, Expression, Declaration, Call, URL, Import,\n Comment, Anonymous, Value, JavaScript, Assignment,\n Condition, Paren, Media, UnicodeDescriptor, Negative,\n Extend, VariableCall, NamespaceValue,\n mixin: {\n Call: MixinCall,\n Definition: MixinDefinition\n }\n};"]}
|
|
@@ -1,36 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
16
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
var
|
|
22
|
-
var
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
JavaScript.prototype.eval = function (context) {
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var js_eval_node_1 = tslib_1.__importDefault(require("./js-eval-node"));
|
|
5
|
+
var dimension_1 = tslib_1.__importDefault(require("./dimension"));
|
|
6
|
+
var quoted_1 = tslib_1.__importDefault(require("./quoted"));
|
|
7
|
+
var anonymous_1 = tslib_1.__importDefault(require("./anonymous"));
|
|
8
|
+
var JavaScript = function (string, escaped, index, currentFileInfo) {
|
|
9
|
+
this.escaped = escaped;
|
|
10
|
+
this.expression = string;
|
|
11
|
+
this._index = index;
|
|
12
|
+
this._fileInfo = currentFileInfo;
|
|
13
|
+
};
|
|
14
|
+
JavaScript.prototype = Object.assign(new js_eval_node_1.default(), {
|
|
15
|
+
type: 'JavaScript',
|
|
16
|
+
eval: function (context) {
|
|
34
17
|
var result = this.evaluateJavaScript(this.expression, context);
|
|
35
18
|
var type = typeof result;
|
|
36
19
|
if (type === 'number' && !isNaN(result)) {
|
|
@@ -45,9 +28,7 @@ var JavaScript = /** @class */ (function (_super) {
|
|
|
45
28
|
else {
|
|
46
29
|
return new anonymous_1.default(result);
|
|
47
30
|
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
}(js_eval_node_1.default));
|
|
51
|
-
JavaScript.prototype.type = 'JavaScript';
|
|
31
|
+
}
|
|
32
|
+
});
|
|
52
33
|
exports.default = JavaScript;
|
|
53
34
|
//# sourceMappingURL=javascript.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../../src/less/tree/javascript.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../../src/less/tree/javascript.js"],"names":[],"mappings":";;;AAAA,wEAAwC;AACxC,kEAAoC;AACpC,4DAA8B;AAC9B,kEAAoC;AAEpC,IAAM,UAAU,GAAG,UAAS,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe;IAC/D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IACzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC;AACrC,CAAC,CAAA;AAED,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,sBAAU,EAAE,EAAE;IACnD,IAAI,EAAE,YAAY;IAElB,IAAI,YAAC,OAAO;QACR,IAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjE,IAAM,IAAI,GAAG,OAAO,MAAM,CAAC;QAE3B,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YACrC,OAAO,IAAI,mBAAS,CAAC,MAAM,CAAC,CAAC;SAChC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;YAC1B,OAAO,IAAI,gBAAM,CAAC,OAAI,MAAM,OAAG,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SACvE;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,IAAI,mBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC3C;aAAM;YACH,OAAO,IAAI,mBAAS,CAAC,MAAM,CAAC,CAAC;SAChC;IACL,CAAC;CACJ,CAAC,CAAC;AAEH,kBAAe,UAAU,CAAC","sourcesContent":["import JsEvalNode from './js-eval-node';\nimport Dimension from './dimension';\nimport Quoted from './quoted';\nimport Anonymous from './anonymous';\n\nconst JavaScript = function(string, escaped, index, currentFileInfo) {\n this.escaped = escaped;\n this.expression = string;\n this._index = index;\n this._fileInfo = currentFileInfo;\n}\n\nJavaScript.prototype = Object.assign(new JsEvalNode(), {\n type: 'JavaScript',\n\n eval(context) {\n const result = this.evaluateJavaScript(this.expression, context);\n const type = typeof result;\n\n if (type === 'number' && !isNaN(result)) {\n return new Dimension(result);\n } else if (type === 'string') {\n return new Quoted(`\"${result}\"`, result, this.escaped, this._index);\n } else if (Array.isArray(result)) {\n return new Anonymous(result.join(', '));\n } else {\n return new Anonymous(result);\n }\n }\n});\n\nexport default JavaScript;\n"]}
|
|
@@ -1,29 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
16
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
var
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
JsEvalNode.prototype.evaluateJavaScript = function (expression, context) {
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var node_1 = tslib_1.__importDefault(require("./node"));
|
|
5
|
+
var variable_1 = tslib_1.__importDefault(require("./variable"));
|
|
6
|
+
var JsEvalNode = function () { };
|
|
7
|
+
JsEvalNode.prototype = Object.assign(new node_1.default(), {
|
|
8
|
+
evaluateJavaScript: function (expression, context) {
|
|
27
9
|
var result;
|
|
28
10
|
var that = this;
|
|
29
11
|
var evalContext = {};
|
|
@@ -39,7 +21,8 @@ var JsEvalNode = /** @class */ (function (_super) {
|
|
|
39
21
|
expression = new Function("return (" + expression + ")");
|
|
40
22
|
}
|
|
41
23
|
catch (e) {
|
|
42
|
-
throw { message: "JavaScript evaluation error: " + e.message + " from `" + expression + "`",
|
|
24
|
+
throw { message: "JavaScript evaluation error: " + e.message + " from `" + expression + "`",
|
|
25
|
+
filename: this.fileInfo().filename,
|
|
43
26
|
index: this.getIndex() };
|
|
44
27
|
}
|
|
45
28
|
var variables = context.frames[0].variables();
|
|
@@ -58,20 +41,20 @@ var JsEvalNode = /** @class */ (function (_super) {
|
|
|
58
41
|
result = expression.call(evalContext);
|
|
59
42
|
}
|
|
60
43
|
catch (e) {
|
|
61
|
-
throw { message: "JavaScript evaluation error: '" + e.name + ": " + e.message.replace(/["]/g, '\'') + "'",
|
|
44
|
+
throw { message: "JavaScript evaluation error: '" + e.name + ": " + e.message.replace(/["]/g, '\'') + "'",
|
|
45
|
+
filename: this.fileInfo().filename,
|
|
62
46
|
index: this.getIndex() };
|
|
63
47
|
}
|
|
64
48
|
return result;
|
|
65
|
-
}
|
|
66
|
-
|
|
49
|
+
},
|
|
50
|
+
jsify: function (obj) {
|
|
67
51
|
if (Array.isArray(obj.value) && (obj.value.length > 1)) {
|
|
68
52
|
return "[" + obj.value.map(function (v) { return v.toCSS(); }).join(', ') + "]";
|
|
69
53
|
}
|
|
70
54
|
else {
|
|
71
55
|
return obj.toCSS();
|
|
72
56
|
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
}(node_1.default));
|
|
57
|
+
}
|
|
58
|
+
});
|
|
76
59
|
exports.default = JsEvalNode;
|
|
77
60
|
//# sourceMappingURL=js-eval-node.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js-eval-node.js","sourceRoot":"","sources":["../../../src/less/tree/js-eval-node.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"js-eval-node.js","sourceRoot":"","sources":["../../../src/less/tree/js-eval-node.js"],"names":[],"mappings":";;;AAAA,wDAA0B;AAC1B,gEAAkC;AAElC,IAAM,UAAU,GAAG,cAAY,CAAC,CAAC;AAEjC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAI,EAAE,EAAE;IAC7C,kBAAkB,YAAC,UAAU,EAAE,OAAO;QAClC,IAAI,MAAM,CAAC;QACX,IAAM,IAAI,GAAG,IAAI,CAAC;QAClB,IAAM,WAAW,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;YAC5B,MAAM,EAAE,OAAO,EAAE,8DAA8D;gBAC3E,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ;gBAClC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;SAChC;QAED,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,EAAE,IAAI;YAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,kBAAQ,CAAC,MAAI,IAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,IAAI;YACA,UAAU,GAAG,IAAI,QAAQ,CAAC,aAAW,UAAU,MAAG,CAAC,CAAC;SACvD;QAAC,OAAO,CAAC,EAAE;YACR,MAAM,EAAE,OAAO,EAAE,kCAAgC,CAAC,CAAC,OAAO,eAAW,UAAU,MAAI;gBAC/E,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ;gBAClC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;SAChC;QAED,IAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAChD,KAAK,IAAM,CAAC,IAAI,SAAS,EAAE;YACvB,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;gBAC7B,0BAA0B;gBAC1B,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG;oBACtB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK;oBACzB,IAAI,EAAE;wBACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;oBAC5C,CAAC;iBACJ,CAAC;aACL;SACJ;QAED,IAAI;YACA,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACzC;QAAC,OAAO,CAAC,EAAE;YACR,MAAM,EAAE,OAAO,EAAE,mCAAiC,CAAC,CAAC,IAAI,UAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAG;gBAC3F,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ;gBAClC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;SAChC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,YAAC,GAAG;QACL,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YACpD,OAAO,MAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC;SAC9E;aAAM;YACH,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC;SACtB;IACL,CAAC;CACJ,CAAC,CAAC;AAEH,kBAAe,UAAU,CAAC","sourcesContent":["import Node from './node';\nimport Variable from './variable';\n\nconst JsEvalNode = function() {};\n\nJsEvalNode.prototype = Object.assign(new Node(), {\n evaluateJavaScript(expression, context) {\n let result;\n const that = this;\n const evalContext = {};\n\n if (!context.javascriptEnabled) {\n throw { message: 'Inline JavaScript is not enabled. Is it set in your options?',\n filename: this.fileInfo().filename,\n index: this.getIndex() };\n }\n\n expression = expression.replace(/@\\{([\\w-]+)\\}/g, function (_, name) {\n return that.jsify(new Variable(`@${name}`, that.getIndex(), that.fileInfo()).eval(context));\n });\n\n try {\n expression = new Function(`return (${expression})`);\n } catch (e) {\n throw { message: `JavaScript evaluation error: ${e.message} from \\`${expression}\\`` ,\n filename: this.fileInfo().filename,\n index: this.getIndex() };\n }\n\n const variables = context.frames[0].variables();\n for (const k in variables) {\n if (variables.hasOwnProperty(k)) {\n /* jshint loopfunc:true */\n evalContext[k.slice(1)] = {\n value: variables[k].value,\n toJS: function () {\n return this.value.eval(context).toCSS();\n }\n };\n }\n }\n\n try {\n result = expression.call(evalContext);\n } catch (e) {\n throw { message: `JavaScript evaluation error: '${e.name}: ${e.message.replace(/[\"]/g, '\\'')}'` ,\n filename: this.fileInfo().filename,\n index: this.getIndex() };\n }\n return result;\n },\n\n jsify(obj) {\n if (Array.isArray(obj.value) && (obj.value.length > 1)) {\n return `[${obj.value.map(function (v) { return v.toCSS(); }).join(', ')}]`;\n } else {\n return obj.toCSS();\n }\n }\n});\n\nexport default JsEvalNode;\n"]}
|
package/lib/less/tree/keyword.js
CHANGED
|
@@ -1,38 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
16
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
17
|
-
};
|
|
18
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
Keyword.prototype.genCSS = function (context, output) {
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var node_1 = tslib_1.__importDefault(require("./node"));
|
|
5
|
+
var Keyword = function (value) {
|
|
6
|
+
this.value = value;
|
|
7
|
+
};
|
|
8
|
+
Keyword.prototype = Object.assign(new node_1.default(), {
|
|
9
|
+
type: 'Keyword',
|
|
10
|
+
genCSS: function (context, output) {
|
|
28
11
|
if (this.value === '%') {
|
|
29
12
|
throw { type: 'Syntax', message: 'Invalid % without number' };
|
|
30
13
|
}
|
|
31
14
|
output.add(this.value);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
}(node_1.default));
|
|
35
|
-
Keyword.prototype.type = 'Keyword';
|
|
15
|
+
}
|
|
16
|
+
});
|
|
36
17
|
Keyword.True = new Keyword('true');
|
|
37
18
|
Keyword.False = new Keyword('false');
|
|
38
19
|
exports.default = Keyword;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/less/tree/keyword.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/less/tree/keyword.js"],"names":[],"mappings":";;;AAAA,wDAA0B;AAE1B,IAAM,OAAO,GAAG,UAAS,KAAK;IAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACvB,CAAC,CAAC;AAEF,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAI,EAAE,EAAE;IAC1C,IAAI,EAAE,SAAS;IAEf,MAAM,YAAC,OAAO,EAAE,MAAM;QAClB,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,EAAE;YAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;SAAE;QAC1F,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;CACJ,CAAC,CAAC;AAEH,OAAO,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;AACnC,OAAO,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;AAErC,kBAAe,OAAO,CAAC","sourcesContent":["import Node from './node';\n\nconst Keyword = function(value) {\n this.value = value;\n};\n\nKeyword.prototype = Object.assign(new Node(), {\n type: 'Keyword',\n\n genCSS(context, output) {\n if (this.value === '%') { throw { type: 'Syntax', message: 'Invalid % without number' }; }\n output.add(this.value);\n }\n});\n\nKeyword.True = new Keyword('true');\nKeyword.False = new Keyword('false');\n\nexport default Keyword;\n"]}
|
package/lib/less/tree/media.js
CHANGED
|
@@ -1,81 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
extendStatics(d, b);
|
|
11
|
-
function __() { this.constructor = d; }
|
|
12
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
-
};
|
|
14
|
-
})();
|
|
15
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
|
-
if (k2 === undefined) k2 = k;
|
|
17
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
18
|
-
}) : (function(o, m, k, k2) {
|
|
19
|
-
if (k2 === undefined) k2 = k;
|
|
20
|
-
o[k2] = m[k];
|
|
21
|
-
}));
|
|
22
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
23
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
24
|
-
}) : function(o, v) {
|
|
25
|
-
o["default"] = v;
|
|
26
|
-
});
|
|
27
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
|
-
};
|
|
37
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
var
|
|
39
|
-
var
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
Media.prototype.isRulesetLike = function () {
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var ruleset_1 = tslib_1.__importDefault(require("./ruleset"));
|
|
5
|
+
var value_1 = tslib_1.__importDefault(require("./value"));
|
|
6
|
+
var selector_1 = tslib_1.__importDefault(require("./selector"));
|
|
7
|
+
var anonymous_1 = tslib_1.__importDefault(require("./anonymous"));
|
|
8
|
+
var expression_1 = tslib_1.__importDefault(require("./expression"));
|
|
9
|
+
var atrule_1 = tslib_1.__importDefault(require("./atrule"));
|
|
10
|
+
var utils = tslib_1.__importStar(require("../utils"));
|
|
11
|
+
var Media = function (value, features, index, currentFileInfo, visibilityInfo) {
|
|
12
|
+
this._index = index;
|
|
13
|
+
this._fileInfo = currentFileInfo;
|
|
14
|
+
var selectors = (new selector_1.default([], null, null, this._index, this._fileInfo)).createEmptySelectors();
|
|
15
|
+
this.features = new value_1.default(features);
|
|
16
|
+
this.rules = [new ruleset_1.default(selectors, value)];
|
|
17
|
+
this.rules[0].allowImports = true;
|
|
18
|
+
this.copyVisibilityInfo(visibilityInfo);
|
|
19
|
+
this.allowRoot = true;
|
|
20
|
+
this.setParent(selectors, this);
|
|
21
|
+
this.setParent(this.features, this);
|
|
22
|
+
this.setParent(this.rules, this);
|
|
23
|
+
};
|
|
24
|
+
Media.prototype = Object.assign(new atrule_1.default(), {
|
|
25
|
+
type: 'Media',
|
|
26
|
+
isRulesetLike: function () {
|
|
63
27
|
return true;
|
|
64
|
-
}
|
|
65
|
-
|
|
28
|
+
},
|
|
29
|
+
accept: function (visitor) {
|
|
66
30
|
if (this.features) {
|
|
67
31
|
this.features = visitor.visit(this.features);
|
|
68
32
|
}
|
|
69
33
|
if (this.rules) {
|
|
70
34
|
this.rules = visitor.visitArray(this.rules);
|
|
71
35
|
}
|
|
72
|
-
}
|
|
73
|
-
|
|
36
|
+
},
|
|
37
|
+
genCSS: function (context, output) {
|
|
74
38
|
output.add('@media ', this._fileInfo, this._index);
|
|
75
39
|
this.features.genCSS(context, output);
|
|
76
40
|
this.outputRuleset(context, output, this.rules);
|
|
77
|
-
}
|
|
78
|
-
|
|
41
|
+
},
|
|
42
|
+
eval: function (context) {
|
|
79
43
|
if (!context.mediaBlocks) {
|
|
80
44
|
context.mediaBlocks = [];
|
|
81
45
|
context.mediaPath = [];
|
|
@@ -95,8 +59,8 @@ var Media = /** @class */ (function (_super) {
|
|
|
95
59
|
context.mediaPath.pop();
|
|
96
60
|
return context.mediaPath.length === 0 ? media.evalTop(context) :
|
|
97
61
|
media.evalNested(context);
|
|
98
|
-
}
|
|
99
|
-
|
|
62
|
+
},
|
|
63
|
+
evalTop: function (context) {
|
|
100
64
|
var result = this;
|
|
101
65
|
// Render all dependent Media blocks.
|
|
102
66
|
if (context.mediaBlocks.length > 1) {
|
|
@@ -109,8 +73,8 @@ var Media = /** @class */ (function (_super) {
|
|
|
109
73
|
delete context.mediaBlocks;
|
|
110
74
|
delete context.mediaPath;
|
|
111
75
|
return result;
|
|
112
|
-
}
|
|
113
|
-
|
|
76
|
+
},
|
|
77
|
+
evalNested: function (context) {
|
|
114
78
|
var i;
|
|
115
79
|
var value;
|
|
116
80
|
var path = context.mediaPath.concat([this]);
|
|
@@ -137,8 +101,8 @@ var Media = /** @class */ (function (_super) {
|
|
|
137
101
|
this.setParent(this.features, this);
|
|
138
102
|
// Fake a tree-node that doesn't output anything.
|
|
139
103
|
return new ruleset_1.default([], []);
|
|
140
|
-
}
|
|
141
|
-
|
|
104
|
+
},
|
|
105
|
+
permute: function (arr) {
|
|
142
106
|
if (arr.length === 0) {
|
|
143
107
|
return [];
|
|
144
108
|
}
|
|
@@ -155,16 +119,14 @@ var Media = /** @class */ (function (_super) {
|
|
|
155
119
|
}
|
|
156
120
|
return result;
|
|
157
121
|
}
|
|
158
|
-
}
|
|
159
|
-
|
|
122
|
+
},
|
|
123
|
+
bubbleSelectors: function (selectors) {
|
|
160
124
|
if (!selectors) {
|
|
161
125
|
return;
|
|
162
126
|
}
|
|
163
127
|
this.rules = [new ruleset_1.default(utils.copyArray(selectors), [this.rules[0]])];
|
|
164
128
|
this.setParent(this.rules, this);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
}(atrule_1.default));
|
|
168
|
-
Media.prototype.type = 'Media';
|
|
129
|
+
}
|
|
130
|
+
});
|
|
169
131
|
exports.default = Media;
|
|
170
132
|
//# sourceMappingURL=media.js.map
|