less 3.13.1 → 4.1.0
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/Gruntfile.js +1 -1
- package/bin/lessc +14 -3
- package/dist/less.js +11156 -11157
- package/dist/less.min.js +3 -3
- package/dist/less.min.js.map +1 -1
- package/lib/less/constants.js +2 -2
- package/lib/less/constants.js.map +1 -1
- package/lib/less/contexts.js +88 -110
- 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/default-options.js +57 -53
- package/lib/less/default-options.js.map +1 -1
- package/lib/less/environment/abstract-file-manager.js +6 -6
- package/lib/less/environment/abstract-file-manager.js.map +1 -1
- package/lib/less/environment/abstract-plugin-loader.js +7 -13
- package/lib/less/environment/abstract-plugin-loader.js.map +1 -1
- package/lib/less/environment/environment.js +9 -11
- 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 +41 -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 +19 -35
- 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 +21 -12
- 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 +12 -8
- 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 +9 -11
- 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 +48 -82
- package/lib/less/index.js.map +1 -1
- package/lib/less/less-error.js +6 -24
- package/lib/less/less-error.js.map +1 -1
- package/lib/less/parse-tree.js +8 -8
- package/lib/less/parse-tree.js.map +1 -1
- package/lib/less/parse.js +11 -31
- package/lib/less/parse.js.map +1 -1
- package/lib/less/parser/chunker.js +4 -2
- package/lib/less/parser/chunker.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 +8 -29
- package/lib/less/parser/parser.js.map +1 -1
- package/lib/less/plugin-manager.js +2 -3
- package/lib/less/plugin-manager.js.map +1 -1
- package/lib/less/render.js +6 -22
- package/lib/less/render.js.map +1 -1
- package/lib/less/source-map-builder.js +4 -2
- package/lib/less/source-map-builder.js.map +1 -1
- package/lib/less/source-map-output.js +5 -7
- package/lib/less/source-map-output.js.map +1 -1
- package/lib/less/transform-tree.js +9 -9
- package/lib/less/transform-tree.js.map +1 -1
- package/lib/less/tree/anonymous.js +19 -20
- package/lib/less/tree/anonymous.js.map +1 -1
- package/lib/less/tree/assignment.js +22 -23
- package/lib/less/tree/assignment.js.map +1 -1
- package/lib/less/tree/atrule.js +105 -116
- package/lib/less/tree/atrule.js.map +1 -1
- package/lib/less/tree/attribute.js +18 -19
- package/lib/less/tree/attribute.js.map +1 -1
- package/lib/less/tree/call.js +68 -69
- package/lib/less/tree/call.js.map +1 -1
- package/lib/less/tree/color.js +163 -172
- package/lib/less/tree/color.js.map +1 -1
- package/lib/less/tree/combinator.js +9 -10
- package/lib/less/tree/combinator.js.map +1 -1
- package/lib/less/tree/comment.js +15 -16
- package/lib/less/tree/comment.js.map +1 -1
- package/lib/less/tree/condition.js +29 -30
- package/lib/less/tree/condition.js.map +1 -1
- package/lib/less/tree/debug-info.js +32 -30
- package/lib/less/tree/debug-info.js.map +1 -1
- package/lib/less/tree/declaration.js +71 -95
- package/lib/less/tree/declaration.js.map +1 -1
- package/lib/less/tree/detached-ruleset.js +18 -38
- package/lib/less/tree/detached-ruleset.js.map +1 -1
- package/lib/less/tree/dimension.js +126 -129
- package/lib/less/tree/dimension.js.map +1 -1
- package/lib/less/tree/element.js +40 -41
- package/lib/less/tree/element.js.map +1 -1
- package/lib/less/tree/expression.js +55 -74
- package/lib/less/tree/expression.js.map +1 -1
- package/lib/less/tree/extend.js +28 -34
- package/lib/less/tree/extend.js.map +1 -1
- package/lib/less/tree/import.js +120 -140
- package/lib/less/tree/import.js.map +1 -1
- package/lib/less/tree/index.js +37 -39
- package/lib/less/tree/index.js.map +1 -1
- package/lib/less/tree/javascript.js +23 -24
- package/lib/less/tree/javascript.js.map +1 -1
- package/lib/less/tree/js-eval-node.js +51 -50
- package/lib/less/tree/js-eval-node.js.map +1 -1
- package/lib/less/tree/keyword.js +10 -11
- package/lib/less/tree/keyword.js.map +1 -1
- package/lib/less/tree/media.js +111 -131
- package/lib/less/tree/media.js.map +1 -1
- package/lib/less/tree/mixin-call.js +156 -160
- package/lib/less/tree/mixin-call.js.map +1 -1
- package/lib/less/tree/mixin-definition.js +164 -184
- package/lib/less/tree/mixin-definition.js.map +1 -1
- package/lib/less/tree/namespace-value.js +53 -57
- package/lib/less/tree/namespace-value.js.map +1 -1
- package/lib/less/tree/negative.js +16 -17
- package/lib/less/tree/negative.js.map +1 -1
- package/lib/less/tree/node.js +39 -39
- package/lib/less/tree/node.js.map +1 -1
- package/lib/less/tree/operation.js +41 -63
- package/lib/less/tree/operation.js.map +1 -1
- package/lib/less/tree/paren.js +13 -14
- package/lib/less/tree/paren.js.map +1 -1
- package/lib/less/tree/property.js +48 -49
- package/lib/less/tree/property.js.map +1 -1
- package/lib/less/tree/quoted.js +50 -51
- package/lib/less/tree/quoted.js.map +1 -1
- package/lib/less/tree/ruleset.js +665 -702
- package/lib/less/tree/ruleset.js.map +1 -1
- package/lib/less/tree/selector.js +105 -106
- package/lib/less/tree/selector.js.map +1 -1
- package/lib/less/tree/unicode-descriptor.js +5 -6
- package/lib/less/tree/unicode-descriptor.js.map +1 -1
- package/lib/less/tree/unit.js +99 -120
- package/lib/less/tree/unit.js.map +1 -1
- package/lib/less/tree/url.js +44 -45
- package/lib/less/tree/url.js.map +1 -1
- package/lib/less/tree/value.js +27 -26
- package/lib/less/tree/value.js.map +1 -1
- package/lib/less/tree/variable-call.js +30 -31
- package/lib/less/tree/variable-call.js.map +1 -1
- package/lib/less/tree/variable.js +46 -48
- package/lib/less/tree/variable.js.map +1 -1
- package/lib/less/utils.js +5 -23
- package/lib/less/utils.js.map +1 -1
- package/lib/less/visitors/extend-visitor.js +14 -41
- package/lib/less/visitors/extend-visitor.js.map +1 -1
- package/lib/less/visitors/import-sequencer.js +2 -7
- package/lib/less/visitors/import-sequencer.js.map +1 -1
- package/lib/less/visitors/import-visitor.js +7 -33
- 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 +4 -6
- package/lib/less/visitors/to-css-visitor.js.map +1 -1
- package/lib/less/visitors/visitor.js +4 -12
- 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 +10 -16
- 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 +23 -38
- package/lib/less-node/url-file-manager.js.map +1 -1
- package/package.json +12 -9
- package/test/browser/less/errors/image-height-error.txt +1 -1
- package/test/browser/less/errors/image-size-error.txt +1 -1
- package/test/browser/less/errors/image-width-error.txt +1 -1
- package/test/index.js +28 -9
- package/test/less-test.js +36 -16
- package/tsconfig.json +1 -0
package/lib/less/index.js
CHANGED
|
@@ -1,76 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
22
|
-
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
23
|
-
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
24
|
-
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
25
|
-
r[k] = a[j];
|
|
26
|
-
return r;
|
|
27
|
-
};
|
|
28
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
29
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
|
-
};
|
|
31
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var
|
|
35
|
-
var
|
|
36
|
-
var
|
|
37
|
-
var
|
|
38
|
-
var
|
|
39
|
-
var
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var
|
|
45
|
-
var
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
var
|
|
49
|
-
var
|
|
50
|
-
var
|
|
51
|
-
var
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
* which makes it hard to refactor and reason about.
|
|
58
|
-
*/
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var environment_1 = tslib_1.__importDefault(require("./environment/environment"));
|
|
5
|
+
var data_1 = tslib_1.__importDefault(require("./data"));
|
|
6
|
+
var tree_1 = tslib_1.__importDefault(require("./tree"));
|
|
7
|
+
var abstract_file_manager_1 = tslib_1.__importDefault(require("./environment/abstract-file-manager"));
|
|
8
|
+
var abstract_plugin_loader_1 = tslib_1.__importDefault(require("./environment/abstract-plugin-loader"));
|
|
9
|
+
var visitors_1 = tslib_1.__importDefault(require("./visitors"));
|
|
10
|
+
var parser_1 = tslib_1.__importDefault(require("./parser/parser"));
|
|
11
|
+
var functions_1 = tslib_1.__importDefault(require("./functions"));
|
|
12
|
+
var contexts_1 = tslib_1.__importDefault(require("./contexts"));
|
|
13
|
+
var less_error_1 = tslib_1.__importDefault(require("./less-error"));
|
|
14
|
+
var transform_tree_1 = tslib_1.__importDefault(require("./transform-tree"));
|
|
15
|
+
var utils = tslib_1.__importStar(require("./utils"));
|
|
16
|
+
var plugin_manager_1 = tslib_1.__importDefault(require("./plugin-manager"));
|
|
17
|
+
var logger_1 = tslib_1.__importDefault(require("./logger"));
|
|
18
|
+
var source_map_output_1 = tslib_1.__importDefault(require("./source-map-output"));
|
|
19
|
+
var source_map_builder_1 = tslib_1.__importDefault(require("./source-map-builder"));
|
|
20
|
+
var parse_tree_1 = tslib_1.__importDefault(require("./parse-tree"));
|
|
21
|
+
var import_manager_1 = tslib_1.__importDefault(require("./import-manager"));
|
|
22
|
+
var parse_1 = tslib_1.__importDefault(require("./parse"));
|
|
23
|
+
var render_1 = tslib_1.__importDefault(require("./render"));
|
|
24
|
+
var package_json_1 = require("../../package.json");
|
|
25
|
+
var parse_node_version_1 = tslib_1.__importDefault(require("parse-node-version"));
|
|
26
|
+
function default_1(environment, fileManagers) {
|
|
27
|
+
var sourceMapOutput, sourceMapBuilder, parseTree, importManager;
|
|
59
28
|
environment = new environment_1.default(environment, fileManagers);
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
var render = render_1.default(environment,
|
|
65
|
-
var parse = parse_1.default(environment,
|
|
66
|
-
var
|
|
67
|
-
/**
|
|
68
|
-
* @todo
|
|
69
|
-
* This root properties / methods need to be organized.
|
|
70
|
-
* It's not clear what should / must be public and why.
|
|
71
|
-
*/
|
|
29
|
+
sourceMapOutput = source_map_output_1.default(environment);
|
|
30
|
+
sourceMapBuilder = source_map_builder_1.default(sourceMapOutput, environment);
|
|
31
|
+
parseTree = parse_tree_1.default(sourceMapBuilder);
|
|
32
|
+
importManager = import_manager_1.default(environment);
|
|
33
|
+
var render = render_1.default(environment, parseTree, importManager);
|
|
34
|
+
var parse = parse_1.default(environment, parseTree, importManager);
|
|
35
|
+
var v = parse_node_version_1.default("v" + package_json_1.version);
|
|
72
36
|
var initial = {
|
|
73
|
-
version: [
|
|
37
|
+
version: [v.major, v.minor, v.patch],
|
|
74
38
|
data: data_1.default,
|
|
75
39
|
tree: tree_1.default,
|
|
76
40
|
Environment: environment_1.default,
|
|
@@ -79,12 +43,12 @@ exports.default = (function (environment, fileManagers) {
|
|
|
79
43
|
environment: environment,
|
|
80
44
|
visitors: visitors_1.default,
|
|
81
45
|
Parser: parser_1.default,
|
|
82
|
-
functions:
|
|
46
|
+
functions: functions_1.default(environment),
|
|
83
47
|
contexts: contexts_1.default,
|
|
84
|
-
SourceMapOutput:
|
|
85
|
-
SourceMapBuilder:
|
|
86
|
-
ParseTree:
|
|
87
|
-
ImportManager:
|
|
48
|
+
SourceMapOutput: sourceMapOutput,
|
|
49
|
+
SourceMapBuilder: sourceMapBuilder,
|
|
50
|
+
ParseTree: parseTree,
|
|
51
|
+
ImportManager: importManager,
|
|
88
52
|
render: render,
|
|
89
53
|
parse: parse,
|
|
90
54
|
LessError: less_error_1.default,
|
|
@@ -94,13 +58,13 @@ exports.default = (function (environment, fileManagers) {
|
|
|
94
58
|
logger: logger_1.default
|
|
95
59
|
};
|
|
96
60
|
// Create a public API
|
|
97
|
-
var ctor = function (t) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
};
|
|
61
|
+
var ctor = function (t) {
|
|
62
|
+
return function () {
|
|
63
|
+
var obj = Object.create(t.prototype);
|
|
64
|
+
t.apply(obj, Array.prototype.slice.call(arguments, 0));
|
|
65
|
+
return obj;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
104
68
|
var t;
|
|
105
69
|
var api = Object.create(initial);
|
|
106
70
|
for (var n in initial.tree) {
|
|
@@ -126,5 +90,7 @@ exports.default = (function (environment, fileManagers) {
|
|
|
126
90
|
initial.parse = initial.parse.bind(api);
|
|
127
91
|
initial.render = initial.render.bind(api);
|
|
128
92
|
return api;
|
|
129
|
-
}
|
|
93
|
+
}
|
|
94
|
+
exports.default = default_1;
|
|
95
|
+
;
|
|
130
96
|
//# sourceMappingURL=index.js.map
|
package/lib/less/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/less/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/less/index.js"],"names":[],"mappings":"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","sourcesContent":["import Environment from './environment/environment';\nimport data from './data';\nimport tree from './tree';\nimport AbstractFileManager from './environment/abstract-file-manager';\nimport AbstractPluginLoader from './environment/abstract-plugin-loader';\nimport visitors from './visitors';\nimport Parser from './parser/parser';\nimport functions from './functions';\nimport contexts from './contexts';\nimport LessError from './less-error';\nimport transformTree from './transform-tree';\nimport * as utils from './utils';\nimport PluginManager from './plugin-manager';\nimport logger from './logger';\nimport SourceMapOutput from './source-map-output';\nimport SourceMapBuilder from './source-map-builder';\nimport ParseTree from './parse-tree';\nimport ImportManager from './import-manager';\nimport Parse from './parse';\nimport Render from './render';\nimport { version } from '../../package.json';\nimport parseVersion from 'parse-node-version';\n\nexport default function(environment, fileManagers) {\n let sourceMapOutput, sourceMapBuilder, parseTree, importManager;\n\n environment = new Environment(environment, fileManagers);\n sourceMapOutput = SourceMapOutput(environment);\n sourceMapBuilder = SourceMapBuilder(sourceMapOutput, environment);\n parseTree = ParseTree(sourceMapBuilder);\n importManager = ImportManager(environment);\n\n const render = Render(environment, parseTree, importManager);\n const parse = Parse(environment, parseTree, importManager);\n\n const v = parseVersion(`v${version}`);\n const initial = {\n version: [v.major, v.minor, v.patch],\n data,\n tree,\n Environment,\n AbstractFileManager,\n AbstractPluginLoader,\n environment,\n visitors,\n Parser,\n functions: functions(environment),\n contexts,\n SourceMapOutput: sourceMapOutput,\n SourceMapBuilder: sourceMapBuilder,\n ParseTree: parseTree,\n ImportManager: importManager,\n render,\n parse,\n LessError,\n transformTree,\n utils,\n PluginManager,\n logger\n };\n\n // Create a public API\n\n const ctor = function(t) {\n return function() {\n const obj = Object.create(t.prototype);\n t.apply(obj, Array.prototype.slice.call(arguments, 0));\n return obj;\n };\n };\n let t;\n const api = Object.create(initial);\n for (const n in initial.tree) {\n /* eslint guard-for-in: 0 */\n t = initial.tree[n];\n if (typeof t === 'function') {\n api[n.toLowerCase()] = ctor(t);\n }\n else {\n api[n] = Object.create(null);\n for (const o in t) {\n /* eslint guard-for-in: 0 */\n api[n][o.toLowerCase()] = ctor(t[o]);\n }\n }\n }\n\n /**\n * Some of the functions assume a `this` context of the API object,\n * which causes it to fail when wrapped for ES6 imports.\n * \n * An assumed `this` should be removed in the future.\n */\n initial.parse = initial.parse.bind(api);\n initial.render = initial.render.bind(api);\n\n return api;\n};\n"]}
|
package/lib/less/less-error.js
CHANGED
|
@@ -1,25 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
var
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var utils = tslib_1.__importStar(require("./utils"));
|
|
23
5
|
var anonymousFunc = /(<anonymous>|Function):(\d+):(\d+)/;
|
|
24
6
|
/**
|
|
25
7
|
* This is a centralized class of any error that could be thrown internally (mostly by the parser).
|
|
@@ -43,7 +25,7 @@ var anonymousFunc = /(<anonymous>|Function):(\d+):(\d+)/;
|
|
|
43
25
|
* @param {Object} fileContentMap - An object with file contents in 'contents' property (like importManager) @todo - move to fileManager?
|
|
44
26
|
* @param {string} [currentFilename]
|
|
45
27
|
*/
|
|
46
|
-
var LessError = function
|
|
28
|
+
var LessError = function (e, fileContentMap, currentFilename) {
|
|
47
29
|
Error.call(this);
|
|
48
30
|
var filename = e.filename || currentFilename;
|
|
49
31
|
this.message = e.message;
|
|
@@ -76,8 +58,8 @@ var LessError = function LessError(e, fileContentMap, currentFilename) {
|
|
|
76
58
|
}
|
|
77
59
|
catch (e) {
|
|
78
60
|
var match = e.stack.match(anonymousFunc);
|
|
79
|
-
var
|
|
80
|
-
lineAdjust = 1 -
|
|
61
|
+
var line = parseInt(match[2]);
|
|
62
|
+
lineAdjust = 1 - line;
|
|
81
63
|
}
|
|
82
64
|
if (found) {
|
|
83
65
|
if (found[2]) {
|
|
@@ -114,7 +96,7 @@ LessError.prototype.constructor = LessError;
|
|
|
114
96
|
* @returns {string}
|
|
115
97
|
*/
|
|
116
98
|
LessError.prototype.toString = function (options) {
|
|
117
|
-
|
|
99
|
+
options = options || {};
|
|
118
100
|
var message = '';
|
|
119
101
|
var extract = this.extract || [];
|
|
120
102
|
var error = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"less-error.js","sourceRoot":"","sources":["../../src/less/less-error.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"less-error.js","sourceRoot":"","sources":["../../src/less/less-error.js"],"names":[],"mappings":"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","sourcesContent":["import * as utils from './utils';\n\nconst anonymousFunc = /(<anonymous>|Function):(\\d+):(\\d+)/;\n\n/**\n * This is a centralized class of any error that could be thrown internally (mostly by the parser).\n * Besides standard .message it keeps some additional data like a path to the file where the error\n * occurred along with line and column numbers.\n *\n * @class\n * @extends Error\n * @type {module.LessError}\n *\n * @prop {string} type\n * @prop {string} filename\n * @prop {number} index\n * @prop {number} line\n * @prop {number} column\n * @prop {number} callLine\n * @prop {number} callExtract\n * @prop {string[]} extract\n *\n * @param {Object} e - An error object to wrap around or just a descriptive object\n * @param {Object} fileContentMap - An object with file contents in 'contents' property (like importManager) @todo - move to fileManager?\n * @param {string} [currentFilename]\n */\nconst LessError = function(e, fileContentMap, currentFilename) {\n Error.call(this);\n\n const filename = e.filename || currentFilename;\n\n this.message = e.message;\n this.stack = e.stack;\n\n if (fileContentMap && filename) {\n const input = fileContentMap.contents[filename];\n const loc = utils.getLocation(e.index, input);\n var line = loc.line;\n const col = loc.column;\n const callLine = e.call && utils.getLocation(e.call, input).line;\n const lines = input ? input.split('\\n') : '';\n\n this.type = e.type || 'Syntax';\n this.filename = filename;\n this.index = e.index;\n this.line = typeof line === 'number' ? line + 1 : null;\n this.column = col;\n\n if (!this.line && this.stack) {\n const found = this.stack.match(anonymousFunc);\n\n /**\n * We have to figure out how this environment stringifies anonymous functions\n * so we can correctly map plugin errors.\n * \n * Note, in Node 8, the output of anonymous funcs varied based on parameters\n * being present or not, so we inject dummy params.\n */\n const func = new Function('a', 'throw new Error()');\n let lineAdjust = 0;\n try {\n func();\n } catch (e) {\n const match = e.stack.match(anonymousFunc);\n var line = parseInt(match[2]);\n lineAdjust = 1 - line;\n }\n\n if (found) {\n if (found[2]) {\n this.line = parseInt(found[2]) + lineAdjust;\n }\n if (found[3]) {\n this.column = parseInt(found[3]);\n }\n }\n }\n\n this.callLine = callLine + 1;\n this.callExtract = lines[callLine];\n\n this.extract = [\n lines[this.line - 2],\n lines[this.line - 1],\n lines[this.line]\n ];\n }\n\n};\n\nif (typeof Object.create === 'undefined') {\n const F = function () {};\n F.prototype = Error.prototype;\n LessError.prototype = new F();\n} else {\n LessError.prototype = Object.create(Error.prototype);\n}\n\nLessError.prototype.constructor = LessError;\n\n/**\n * An overridden version of the default Object.prototype.toString\n * which uses additional information to create a helpful message.\n *\n * @param {Object} options\n * @returns {string}\n */\nLessError.prototype.toString = function(options) {\n options = options || {};\n\n let message = '';\n const extract = this.extract || [];\n let error = [];\n let stylize = function (str) { return str; };\n if (options.stylize) {\n const type = typeof options.stylize;\n if (type !== 'function') {\n throw Error(`options.stylize should be a function, got a ${type}!`);\n }\n stylize = options.stylize;\n }\n\n if (this.line !== null) {\n if (typeof extract[0] === 'string') {\n error.push(stylize(`${this.line - 1} ${extract[0]}`, 'grey'));\n }\n\n if (typeof extract[1] === 'string') {\n let errorTxt = `${this.line} `;\n if (extract[1]) {\n errorTxt += extract[1].slice(0, this.column) +\n stylize(stylize(stylize(extract[1].substr(this.column, 1), 'bold') +\n extract[1].slice(this.column + 1), 'red'), 'inverse');\n }\n error.push(errorTxt);\n }\n\n if (typeof extract[2] === 'string') {\n error.push(stylize(`${this.line + 1} ${extract[2]}`, 'grey'));\n }\n error = `${error.join('\\n') + stylize('', 'reset')}\\n`;\n }\n\n message += stylize(`${this.type}Error: ${this.message}`, 'red');\n if (this.filename) {\n message += stylize(' in ', 'red') + this.filename;\n }\n if (this.line) {\n message += stylize(` on line ${this.line}, column ${this.column + 1}:`, 'grey');\n }\n\n message += `\\n${error}`;\n\n if (this.callLine) {\n message += `${stylize('from ', 'red') + (this.filename || '')}/n`;\n message += `${stylize(this.callLine, 'grey')} ${this.callExtract}/n`;\n }\n\n return message;\n};\n\nexport default LessError;"]}
|
package/lib/less/parse-tree.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
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
|
-
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var less_error_1 = tslib_1.__importDefault(require("./less-error"));
|
|
5
|
+
var transform_tree_1 = tslib_1.__importDefault(require("./transform-tree"));
|
|
6
|
+
var logger_1 = tslib_1.__importDefault(require("./logger"));
|
|
7
|
+
function default_1(SourceMapBuilder) {
|
|
10
8
|
var ParseTree = /** @class */ (function () {
|
|
11
9
|
function ParseTree(root, imports) {
|
|
12
10
|
this.root = root;
|
|
@@ -65,5 +63,7 @@ exports.default = (function (SourceMapBuilder) {
|
|
|
65
63
|
return ParseTree;
|
|
66
64
|
}());
|
|
67
65
|
return ParseTree;
|
|
68
|
-
}
|
|
66
|
+
}
|
|
67
|
+
exports.default = default_1;
|
|
68
|
+
;
|
|
69
69
|
//# sourceMappingURL=parse-tree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-tree.js","sourceRoot":"","sources":["../../src/less/parse-tree.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse-tree.js","sourceRoot":"","sources":["../../src/less/parse-tree.js"],"names":[],"mappings":";;;AAAA,oEAAqC;AACrC,4EAA6C;AAC7C,4DAA8B;AAE9B,mBAAwB,gBAAgB;IACpC;QACI,mBAAY,IAAI,EAAE,OAAO;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAC3B,CAAC;QAED,yBAAK,GAAL,UAAM,OAAO;YACT,IAAI,SAAS,CAAC;YACd,IAAM,MAAM,GAAG,EAAE,CAAC;YAClB,IAAI,gBAAgB,CAAC;YACrB,IAAI;gBACA,SAAS,GAAG,wBAAa,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACjD;YAAC,OAAO,CAAC,EAAE;gBACR,MAAM,IAAI,oBAAS,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACxC;YAED,IAAI;gBACA,IAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,QAAQ,EAAE;oBACV,gBAAM,CAAC,IAAI,CAAC,2CAA2C;wBACnD,wFAAwF,CAAC,CAAC;iBACjG;gBAED,IAAM,YAAY,GAAG;oBACjB,QAAQ,UAAA;oBACR,eAAe,EAAE,OAAO,CAAC,eAAe;oBACxC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;oBACzC,YAAY,EAAE,CAAC;iBAAC,CAAC;gBAErB,IAAI,OAAO,CAAC,SAAS,EAAE;oBACnB,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC3D,MAAM,CAAC,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;iBAC9E;qBAAM;oBACH,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;iBAC9C;aACJ;YAAC,OAAO,CAAC,EAAE;gBACR,MAAM,IAAI,oBAAS,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACxC;YAED,IAAI,OAAO,CAAC,aAAa,EAAE;gBACvB,IAAM,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;gBACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5C,MAAM,CAAC,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,SAAA,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBACvH;aACJ;YACD,IAAI,OAAO,CAAC,SAAS,EAAE;gBACnB,MAAM,CAAC,GAAG,GAAG,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;aACxD;YAED,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;YACpB,KAAK,IAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACnC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;oBAC/E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7B;aACJ;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;QACL,gBAAC;IAAD,CAAC,AAzDD,IAyDC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AA7DD,4BA6DC;AAAA,CAAC","sourcesContent":["import LessError from './less-error';\nimport transformTree from './transform-tree';\nimport logger from './logger';\n\nexport default function(SourceMapBuilder) {\n class ParseTree {\n constructor(root, imports) {\n this.root = root;\n this.imports = imports;\n }\n\n toCSS(options) {\n let evaldRoot;\n const result = {};\n let sourceMapBuilder;\n try {\n evaldRoot = transformTree(this.root, options);\n } catch (e) {\n throw new LessError(e, this.imports);\n }\n\n try {\n const compress = Boolean(options.compress);\n if (compress) {\n logger.warn('The compress option has been deprecated. ' + \n 'We recommend you use a dedicated css minifier, for instance see less-plugin-clean-css.');\n }\n\n const toCSSOptions = {\n compress,\n dumpLineNumbers: options.dumpLineNumbers,\n strictUnits: Boolean(options.strictUnits),\n numPrecision: 8};\n\n if (options.sourceMap) {\n sourceMapBuilder = new SourceMapBuilder(options.sourceMap);\n result.css = sourceMapBuilder.toCSS(evaldRoot, toCSSOptions, this.imports);\n } else {\n result.css = evaldRoot.toCSS(toCSSOptions);\n }\n } catch (e) {\n throw new LessError(e, this.imports);\n }\n\n if (options.pluginManager) {\n const postProcessors = options.pluginManager.getPostProcessors();\n for (let i = 0; i < postProcessors.length; i++) {\n result.css = postProcessors[i].process(result.css, { sourceMap: sourceMapBuilder, options, imports: this.imports });\n }\n }\n if (options.sourceMap) {\n result.map = sourceMapBuilder.getExternalSourceMap();\n }\n\n result.imports = [];\n for (const file in this.imports.files) {\n if (this.imports.files.hasOwnProperty(file) && file !== this.imports.rootFilename) {\n result.imports.push(file);\n }\n }\n return result;\n }\n }\n\n return ParseTree;\n};\n"]}
|
package/lib/less/parse.js
CHANGED
|
@@ -1,33 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
var
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var contexts_1 = tslib_1.__importDefault(require("./contexts"));
|
|
5
|
+
var parser_1 = tslib_1.__importDefault(require("./parser/parser"));
|
|
6
|
+
var plugin_manager_1 = tslib_1.__importDefault(require("./plugin-manager"));
|
|
7
|
+
var less_error_1 = tslib_1.__importDefault(require("./less-error"));
|
|
8
|
+
var utils = tslib_1.__importStar(require("./utils"));
|
|
9
|
+
function default_1(environment, ParseTree, ImportManager) {
|
|
31
10
|
var parse = function (input, options, callback) {
|
|
32
11
|
if (typeof options === 'function') {
|
|
33
12
|
callback = options;
|
|
@@ -80,8 +59,7 @@ exports.default = (function (environment, ParseTree, ImportManager) {
|
|
|
80
59
|
// Do an async plugin queue like lessc
|
|
81
60
|
if (options.plugins) {
|
|
82
61
|
options.plugins.forEach(function (plugin) {
|
|
83
|
-
var evalResult;
|
|
84
|
-
var contents;
|
|
62
|
+
var evalResult, contents;
|
|
85
63
|
if (plugin.fileContent) {
|
|
86
64
|
contents = plugin.fileContent.replace(/^\uFEFF/, '');
|
|
87
65
|
evalResult = pluginManager_1.Loader.evalPlugin(contents, context_1, imports_1, plugin.options, plugin.filename);
|
|
@@ -104,5 +82,7 @@ exports.default = (function (environment, ParseTree, ImportManager) {
|
|
|
104
82
|
}
|
|
105
83
|
};
|
|
106
84
|
return parse;
|
|
107
|
-
}
|
|
85
|
+
}
|
|
86
|
+
exports.default = default_1;
|
|
87
|
+
;
|
|
108
88
|
//# sourceMappingURL=parse.js.map
|
package/lib/less/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/less/parse.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/less/parse.js"],"names":[],"mappings":";;;AAAA,gEAAkC;AAClC,mEAAqC;AACrC,4EAA6C;AAC7C,oEAAqC;AACrC,qDAAiC;AAEjC,mBAAwB,WAAW,EAAE,SAAS,EAAE,aAAa;IACzD,IAAM,KAAK,GAAG,UAAU,KAAK,EAAE,OAAO,EAAE,QAAQ;QAE5C,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YAC/B,QAAQ,GAAG,OAAO,CAAC;YACnB,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;SACjD;aACI;YACD,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;SAC5D;QAED,IAAI,CAAC,QAAQ,EAAE;YACX,IAAM,MAAI,GAAG,IAAI,CAAC;YAClB,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM;gBACxC,KAAK,CAAC,IAAI,CAAC,MAAI,EAAE,KAAK,EAAE,OAAO,EAAE,UAAS,GAAG,EAAE,MAAM;oBACjD,IAAI,GAAG,EAAE;wBACL,MAAM,CAAC,GAAG,CAAC,CAAC;qBACf;yBAAM;wBACH,OAAO,CAAC,MAAM,CAAC,CAAC;qBACnB;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;SACN;aAAM;YACH,IAAI,SAAO,CAAC;YACZ,IAAI,YAAY,SAAA,CAAC;YACjB,IAAM,eAAa,GAAG,IAAI,wBAAa,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAE3E,OAAO,CAAC,aAAa,GAAG,eAAa,CAAC;YAEtC,SAAO,GAAG,IAAI,kBAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEtC,IAAI,OAAO,CAAC,YAAY,EAAE;gBACtB,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;aACvC;iBAAM;gBACH,IAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;gBAC7C,IAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACpD,YAAY,GAAG;oBACX,QAAQ,UAAA;oBACR,WAAW,EAAE,SAAO,CAAC,WAAW;oBAChC,QAAQ,EAAE,SAAO,CAAC,QAAQ,IAAI,EAAE;oBAChC,gBAAgB,EAAE,SAAS;oBAC3B,SAAS,WAAA;oBACT,YAAY,EAAE,QAAQ;iBACzB,CAAC;gBACF,kCAAkC;gBAClC,IAAI,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;oBAClE,YAAY,CAAC,QAAQ,IAAI,GAAG,CAAC;iBAChC;aACJ;YAED,IAAM,SAAO,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,SAAO,EAAE,YAAY,CAAC,CAAC;YAC/D,IAAI,CAAC,aAAa,GAAG,SAAO,CAAC;YAE7B,8DAA8D;YAC9D,sCAAsC;YAEtC,IAAI,OAAO,CAAC,OAAO,EAAE;gBACjB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAS,MAAM;oBACnC,IAAI,UAAU,EAAE,QAAQ,CAAC;oBACzB,IAAI,MAAM,CAAC,WAAW,EAAE;wBACpB,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;wBACrD,UAAU,GAAG,eAAa,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAO,EAAE,SAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAC1G,IAAI,UAAU,YAAY,oBAAS,EAAE;4BACjC,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC;yBAC/B;qBACJ;yBACI;wBACD,eAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;qBACnC;gBACL,CAAC,CAAC,CAAC;aACN;YAED,IAAI,gBAAM,CAAC,SAAO,EAAE,SAAO,EAAE,YAAY,CAAC;iBACrC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,IAAI;gBAC3B,IAAI,CAAC,EAAE;oBAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;iBAAE;gBAC9B,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,SAAO,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC,EAAE,OAAO,CAAC,CAAC;SACnB;IACL,CAAC,CAAC;IACF,OAAO,KAAK,CAAC;AACjB,CAAC;AAhFD,4BAgFC;AAAA,CAAC","sourcesContent":["import contexts from './contexts';\nimport Parser from './parser/parser';\nimport PluginManager from './plugin-manager';\nimport LessError from './less-error';\nimport * as utils from './utils';\n\nexport default function(environment, ParseTree, ImportManager) {\n const parse = function (input, options, callback) {\n\n if (typeof options === 'function') {\n callback = options;\n options = utils.copyOptions(this.options, {});\n }\n else {\n options = utils.copyOptions(this.options, options || {});\n }\n\n if (!callback) {\n const self = this;\n return new Promise(function (resolve, reject) {\n parse.call(self, input, options, function(err, output) {\n if (err) {\n reject(err);\n } else {\n resolve(output);\n }\n });\n });\n } else {\n let context;\n let rootFileInfo;\n const pluginManager = new PluginManager(this, !options.reUsePluginManager);\n\n options.pluginManager = pluginManager;\n\n context = new contexts.Parse(options);\n\n if (options.rootFileInfo) {\n rootFileInfo = options.rootFileInfo;\n } else {\n const filename = options.filename || 'input';\n const entryPath = filename.replace(/[^\\/\\\\]*$/, '');\n rootFileInfo = {\n filename,\n rewriteUrls: context.rewriteUrls,\n rootpath: context.rootpath || '',\n currentDirectory: entryPath,\n entryPath,\n rootFilename: filename\n };\n // add in a missing trailing slash\n if (rootFileInfo.rootpath && rootFileInfo.rootpath.slice(-1) !== '/') {\n rootFileInfo.rootpath += '/';\n }\n }\n\n const imports = new ImportManager(this, context, rootFileInfo);\n this.importManager = imports;\n\n // TODO: allow the plugins to be just a list of paths or names\n // Do an async plugin queue like lessc\n\n if (options.plugins) {\n options.plugins.forEach(function(plugin) {\n let evalResult, contents;\n if (plugin.fileContent) {\n contents = plugin.fileContent.replace(/^\\uFEFF/, '');\n evalResult = pluginManager.Loader.evalPlugin(contents, context, imports, plugin.options, plugin.filename);\n if (evalResult instanceof LessError) {\n return callback(evalResult);\n }\n }\n else {\n pluginManager.addPlugin(plugin);\n }\n });\n }\n\n new Parser(context, imports, rootFileInfo)\n .parse(input, function (e, root) {\n if (e) { return callback(e); }\n callback(null, root, imports, options);\n }, options);\n }\n };\n return parse;\n};\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
// Split the input into chunks.
|
|
4
|
-
|
|
4
|
+
function default_1(input, fail) {
|
|
5
5
|
var len = input.length;
|
|
6
6
|
var level = 0;
|
|
7
7
|
var parenLevel = 0;
|
|
@@ -143,5 +143,7 @@ exports.default = (function (input, fail) {
|
|
|
143
143
|
}
|
|
144
144
|
emitChunk(true);
|
|
145
145
|
return chunks;
|
|
146
|
-
}
|
|
146
|
+
}
|
|
147
|
+
exports.default = default_1;
|
|
148
|
+
;
|
|
147
149
|
//# sourceMappingURL=chunker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunker.js","sourceRoot":"","sources":["../../../src/less/parser/chunker.js"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"chunker.js","sourceRoot":"","sources":["../../../src/less/parser/chunker.js"],"names":[],"mappings":"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","sourcesContent":["// Split the input into chunks.\nexport default function (input, fail) {\n const len = input.length;\n let level = 0;\n let parenLevel = 0;\n let lastOpening;\n let lastOpeningParen;\n let lastMultiComment;\n let lastMultiCommentEndBrace;\n const chunks = [];\n let emitFrom = 0;\n let chunkerCurrentIndex;\n let currentChunkStartIndex;\n let cc;\n let cc2;\n let matched;\n\n function emitChunk(force) {\n const len = chunkerCurrentIndex - emitFrom;\n if (((len < 512) && !force) || !len) {\n return;\n }\n chunks.push(input.slice(emitFrom, chunkerCurrentIndex + 1));\n emitFrom = chunkerCurrentIndex + 1;\n }\n\n for (chunkerCurrentIndex = 0; chunkerCurrentIndex < len; chunkerCurrentIndex++) {\n cc = input.charCodeAt(chunkerCurrentIndex);\n if (((cc >= 97) && (cc <= 122)) || (cc < 34)) {\n // a-z or whitespace\n continue;\n }\n\n switch (cc) {\n case 40: // (\n parenLevel++;\n lastOpeningParen = chunkerCurrentIndex;\n continue;\n case 41: // )\n if (--parenLevel < 0) {\n return fail('missing opening `(`', chunkerCurrentIndex);\n }\n continue;\n case 59: // ;\n if (!parenLevel) { emitChunk(); }\n continue;\n case 123: // {\n level++;\n lastOpening = chunkerCurrentIndex;\n continue;\n case 125: // }\n if (--level < 0) {\n return fail('missing opening `{`', chunkerCurrentIndex);\n }\n if (!level && !parenLevel) { emitChunk(); }\n continue;\n case 92: // \\\n if (chunkerCurrentIndex < len - 1) { chunkerCurrentIndex++; continue; }\n return fail('unescaped `\\\\`', chunkerCurrentIndex);\n case 34:\n case 39:\n case 96: // \", ' and `\n matched = 0;\n currentChunkStartIndex = chunkerCurrentIndex;\n for (chunkerCurrentIndex = chunkerCurrentIndex + 1; chunkerCurrentIndex < len; chunkerCurrentIndex++) {\n cc2 = input.charCodeAt(chunkerCurrentIndex);\n if (cc2 > 96) { continue; }\n if (cc2 == cc) { matched = 1; break; }\n if (cc2 == 92) { // \\\n if (chunkerCurrentIndex == len - 1) {\n return fail('unescaped `\\\\`', chunkerCurrentIndex);\n }\n chunkerCurrentIndex++;\n }\n }\n if (matched) { continue; }\n return fail(`unmatched \\`${String.fromCharCode(cc)}\\``, currentChunkStartIndex);\n case 47: // /, check for comment\n if (parenLevel || (chunkerCurrentIndex == len - 1)) { continue; }\n cc2 = input.charCodeAt(chunkerCurrentIndex + 1);\n if (cc2 == 47) {\n // //, find lnfeed\n for (chunkerCurrentIndex = chunkerCurrentIndex + 2; chunkerCurrentIndex < len; chunkerCurrentIndex++) {\n cc2 = input.charCodeAt(chunkerCurrentIndex);\n if ((cc2 <= 13) && ((cc2 == 10) || (cc2 == 13))) { break; }\n }\n } else if (cc2 == 42) {\n // /*, find */\n lastMultiComment = currentChunkStartIndex = chunkerCurrentIndex;\n for (chunkerCurrentIndex = chunkerCurrentIndex + 2; chunkerCurrentIndex < len - 1; chunkerCurrentIndex++) {\n cc2 = input.charCodeAt(chunkerCurrentIndex);\n if (cc2 == 125) { lastMultiCommentEndBrace = chunkerCurrentIndex; }\n if (cc2 != 42) { continue; }\n if (input.charCodeAt(chunkerCurrentIndex + 1) == 47) { break; }\n }\n if (chunkerCurrentIndex == len - 1) {\n return fail('missing closing `*/`', currentChunkStartIndex);\n }\n chunkerCurrentIndex++;\n }\n continue;\n case 42: // *, check for unmatched */\n if ((chunkerCurrentIndex < len - 1) && (input.charCodeAt(chunkerCurrentIndex + 1) == 47)) {\n return fail('unmatched `/*`', chunkerCurrentIndex);\n }\n continue;\n }\n }\n\n if (level !== 0) {\n if ((lastMultiComment > lastOpening) && (lastMultiCommentEndBrace > lastMultiComment)) {\n return fail('missing closing `}` or `*/`', lastOpening);\n } else {\n return fail('missing closing `}`', lastOpening);\n }\n } else if (parenLevel !== 0) {\n return fail('missing closing `)`', lastOpeningParen);\n }\n\n emitChunk(true);\n return chunks;\n};\n"]}
|
|
@@ -1,9 +1,7 @@
|
|
|
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
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var chunker_1 = tslib_1.__importDefault(require("./chunker"));
|
|
7
5
|
exports.default = (function () {
|
|
8
6
|
var // Less input string
|
|
9
7
|
input;
|