sass-embedded 1.66.1 → 1.69.1
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/dist/jest.config.js +8 -0
- package/dist/jest.config.js.map +1 -0
- package/dist/lib/index.js +3 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +5 -0
- package/dist/lib/src/compile.js +22 -13
- package/dist/lib/src/compile.js.map +1 -1
- package/dist/lib/src/importer-registry.js +15 -4
- package/dist/lib/src/importer-registry.js.map +1 -1
- package/dist/lib/src/legacy/importer.js +25 -30
- package/dist/lib/src/legacy/importer.js.map +1 -1
- package/dist/lib/src/legacy/index.js +27 -25
- package/dist/lib/src/legacy/index.js.map +1 -1
- package/dist/lib/src/legacy/utils.js +55 -0
- package/dist/lib/src/legacy/utils.js.map +1 -0
- package/dist/lib/src/message-transformer.test.js +81 -0
- package/dist/lib/src/message-transformer.test.js.map +1 -0
- package/dist/lib/src/packet-transformer.test.js +124 -0
- package/dist/lib/src/packet-transformer.test.js.map +1 -0
- package/dist/lib/src/protofier.js +8 -0
- package/dist/lib/src/protofier.js.map +1 -1
- package/dist/lib/src/request-tracker.test.js +71 -0
- package/dist/lib/src/request-tracker.test.js.map +1 -0
- package/dist/lib/src/sync-process/index.js +1 -1
- package/dist/lib/src/sync-process/index.js.map +1 -1
- package/dist/lib/src/sync-process/index.test.js +129 -0
- package/dist/lib/src/sync-process/index.test.js.map +1 -0
- package/dist/lib/src/sync-process/sync-message-port.test.js +125 -0
- package/dist/lib/src/sync-process/sync-message-port.test.js.map +1 -0
- package/dist/lib/src/utils.test.js +32 -0
- package/dist/lib/src/utils.test.js.map +1 -0
- package/dist/lib/src/value/index.js +10 -0
- package/dist/lib/src/value/index.js.map +1 -1
- package/dist/lib/src/value/mixin.js +29 -0
- package/dist/lib/src/value/mixin.js.map +1 -0
- package/dist/lib/src/vendor/embedded_sass_pb.js +79 -18
- package/dist/lib/src/vendor/embedded_sass_pb.js.map +1 -1
- package/dist/package.json +18 -14
- package/dist/test/dependencies.test.js +18 -0
- package/dist/test/dependencies.test.js.map +1 -0
- package/dist/test/sandbox.js +35 -0
- package/dist/test/sandbox.js.map +1 -0
- package/dist/test/utils.js +58 -0
- package/dist/test/utils.js.map +1 -0
- package/dist/tool/get-embedded-compiler.js +1 -1
- package/dist/tool/get-language-repo.js +2 -1
- package/dist/tool/get-language-repo.js.map +1 -1
- package/dist/tool/init.js +1 -1
- package/dist/tool/init.js.map +1 -1
- package/dist/tool/prepare-optional-release.js +1 -1
- package/dist/tool/prepare-optional-release.js.map +1 -1
- package/dist/tool/prepare-release.js +1 -1
- package/dist/tool/prepare-release.js.map +1 -1
- package/dist/tool/utils.js +8 -3
- package/dist/tool/utils.js.map +1 -1
- package/dist/types/importer.d.ts +48 -14
- package/dist/types/index.d.ts +7 -1
- package/dist/types/value/index.d.ts +10 -0
- package/dist/types/value/mixin.d.ts +14 -0
- package/package.json +18 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jest.config.js","sourceRoot":"","sources":["../jest.config.ts"],"names":[],"mappings":";;AAAA,MAAM,MAAM,GAAG;IACb,MAAM,EAAE,SAAS;IACjB,eAAe,EAAE,MAAM;CACxB,CAAC;AAEF,kBAAe,MAAM,CAAC"}
|
package/dist/lib/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// MIT-style license that can be found in the LICENSE file or at
|
|
4
4
|
// https://opensource.org/licenses/MIT.
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.NULL = exports.FALSE = exports.TRUE = exports.Logger = exports.info = exports.renderSync = exports.render = exports.compileStringAsync = exports.compileAsync = exports.compileString = exports.compile = exports.Exception = exports.types = exports.SassCalculation = exports.CalculationInterpolation = exports.CalculationOperation = exports.sassNull = exports.Value = exports.SassString = exports.SassNumber = exports.SassMap = exports.SassFunction = exports.SassColor = exports.sassTrue = exports.sassFalse = exports.SassArgumentList = exports.SassList = void 0;
|
|
6
|
+
exports.NULL = exports.FALSE = exports.TRUE = exports.Logger = exports.info = exports.renderSync = exports.render = exports.compileStringAsync = exports.compileAsync = exports.compileString = exports.compile = exports.Exception = exports.types = exports.SassCalculation = exports.CalculationInterpolation = exports.CalculationOperation = exports.sassNull = exports.Value = exports.SassString = exports.SassNumber = exports.SassMixin = exports.SassMap = exports.SassFunction = exports.SassColor = exports.sassTrue = exports.sassFalse = exports.SassArgumentList = exports.SassList = void 0;
|
|
7
7
|
const pkg = require("../package.json");
|
|
8
8
|
const boolean_1 = require("./src/value/boolean");
|
|
9
9
|
const null_1 = require("./src/value/null");
|
|
@@ -20,6 +20,8 @@ var function_1 = require("./src/value/function");
|
|
|
20
20
|
Object.defineProperty(exports, "SassFunction", { enumerable: true, get: function () { return function_1.SassFunction; } });
|
|
21
21
|
var map_1 = require("./src/value/map");
|
|
22
22
|
Object.defineProperty(exports, "SassMap", { enumerable: true, get: function () { return map_1.SassMap; } });
|
|
23
|
+
var mixin_1 = require("./src/value/mixin");
|
|
24
|
+
Object.defineProperty(exports, "SassMixin", { enumerable: true, get: function () { return mixin_1.SassMixin; } });
|
|
23
25
|
var number_1 = require("./src/value/number");
|
|
24
26
|
Object.defineProperty(exports, "SassNumber", { enumerable: true, get: function () { return number_1.SassNumber; } });
|
|
25
27
|
var string_1 = require("./src/value/string");
|
package/dist/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,uCAAuC;AACvC,iDAAwD;AACxD,2CAA0C;AAE1C,yCAAyD;AAAlC,gGAAA,QAAQ,OAAA;AAC/B,2DAA2D;AAAnD,iHAAA,gBAAgB,OAAA;AACxB,+CAAwD;AAAhD,oGAAA,SAAS,OAAA;AAAE,mGAAA,QAAQ,OAAA;AAC3B,2CAA4C;AAApC,kGAAA,SAAS,OAAA;AACjB,iDAAkD;AAA1C,wGAAA,YAAY,OAAA;AACpB,uCAAwC;AAAhC,8FAAA,OAAO,OAAA;AACf,6CAA8C;AAAtC,oGAAA,UAAU,OAAA;AAClB,6CAA8C;AAAtC,oGAAA,UAAU,OAAA;AAClB,qCAAkC;AAA1B,8FAAA,KAAK,OAAA;AACb,yCAA0C;AAAlC,gGAAA,QAAQ,OAAA;AAChB,yDAKkC;AAJhC,oHAAA,oBAAoB,OAAA;AAEpB,wHAAA,wBAAwB,OAAA;AACxB,+GAAA,eAAe,OAAA;AAGjB,8CAA4C;AAC5C,6CAA0C;AAAlC,sGAAA,SAAS,OAAA;AACjB,yCAKuB;AAJrB,kGAAA,OAAO,OAAA;AACP,wGAAA,aAAa,OAAA;AACb,uGAAA,YAAY,OAAA;AACZ,6GAAA,kBAAkB,OAAA;AAEpB,uCAAgD;AAAxC,gGAAA,MAAM,OAAA;AAAE,oGAAA,UAAU,OAAA;AAEb,QAAA,IAAI,GAAG,kBAAkB,GAAG,CAAC,OAAO,EAAE,CAAC;AAEvC,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE,EAAC,IAAI,KAAI,CAAC,EAAE,KAAK,KAAI,CAAC,EAAC;CAChC,CAAC;AAEF,gBAAgB;AAEH,QAAA,IAAI,GAAG,kBAAQ,CAAC;AAChB,QAAA,KAAK,GAAG,mBAAS,CAAC;AAClB,QAAA,IAAI,GAAG,eAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,uCAAuC;AACvC,iDAAwD;AACxD,2CAA0C;AAE1C,yCAAyD;AAAlC,gGAAA,QAAQ,OAAA;AAC/B,2DAA2D;AAAnD,iHAAA,gBAAgB,OAAA;AACxB,+CAAwD;AAAhD,oGAAA,SAAS,OAAA;AAAE,mGAAA,QAAQ,OAAA;AAC3B,2CAA4C;AAApC,kGAAA,SAAS,OAAA;AACjB,iDAAkD;AAA1C,wGAAA,YAAY,OAAA;AACpB,uCAAwC;AAAhC,8FAAA,OAAO,OAAA;AACf,2CAA4C;AAApC,kGAAA,SAAS,OAAA;AACjB,6CAA8C;AAAtC,oGAAA,UAAU,OAAA;AAClB,6CAA8C;AAAtC,oGAAA,UAAU,OAAA;AAClB,qCAAkC;AAA1B,8FAAA,KAAK,OAAA;AACb,yCAA0C;AAAlC,gGAAA,QAAQ,OAAA;AAChB,yDAKkC;AAJhC,oHAAA,oBAAoB,OAAA;AAEpB,wHAAA,wBAAwB,OAAA;AACxB,+GAAA,eAAe,OAAA;AAGjB,8CAA4C;AAC5C,6CAA0C;AAAlC,sGAAA,SAAS,OAAA;AACjB,yCAKuB;AAJrB,kGAAA,OAAO,OAAA;AACP,wGAAA,aAAa,OAAA;AACb,uGAAA,YAAY,OAAA;AACZ,6GAAA,kBAAkB,OAAA;AAEpB,uCAAgD;AAAxC,gGAAA,MAAM,OAAA;AAAE,oGAAA,UAAU,OAAA;AAEb,QAAA,IAAI,GAAG,kBAAkB,GAAG,CAAC,OAAO,EAAE,CAAC;AAEvC,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE,EAAC,IAAI,KAAI,CAAC,EAAE,KAAK,KAAI,CAAC,EAAC;CAChC,CAAC;AAEF,gBAAgB;AAEH,QAAA,IAAI,GAAG,kBAAQ,CAAC;AAChB,QAAA,KAAK,GAAG,mBAAS,CAAC;AAClB,QAAA,IAAI,GAAG,eAAQ,CAAC"}
|
package/dist/lib/index.mjs
CHANGED
|
@@ -13,6 +13,7 @@ export const SassBoolean = sass.SassBoolean;
|
|
|
13
13
|
export const SassCalculation = sass.SassCalculation
|
|
14
14
|
export const SassColor = sass.SassColor;
|
|
15
15
|
export const SassFunction = sass.SassFunction;
|
|
16
|
+
export const SassMixin = sass.SassMixin;
|
|
16
17
|
export const SassList = sass.SassList;
|
|
17
18
|
export const SassMap = sass.SassMap;
|
|
18
19
|
export const SassNumber = sass.SassNumber;
|
|
@@ -95,6 +96,10 @@ export default {
|
|
|
95
96
|
defaultExportDeprecation();
|
|
96
97
|
return sass.SassFunction;
|
|
97
98
|
},
|
|
99
|
+
get SassMixin() {
|
|
100
|
+
defaultExportDeprecation();
|
|
101
|
+
return sass.SassMixin;
|
|
102
|
+
},
|
|
98
103
|
get SassList() {
|
|
99
104
|
defaultExportDeprecation();
|
|
100
105
|
return sass.SassList;
|
package/dist/lib/src/compile.js
CHANGED
|
@@ -17,7 +17,7 @@ const message_transformer_1 = require("./message-transformer");
|
|
|
17
17
|
const packet_transformer_1 = require("./packet-transformer");
|
|
18
18
|
const sync_compiler_1 = require("./sync-compiler");
|
|
19
19
|
const deprotofy_span_1 = require("./deprotofy-span");
|
|
20
|
-
const
|
|
20
|
+
const utils_1 = require("./legacy/utils");
|
|
21
21
|
function compile(path, options) {
|
|
22
22
|
const importers = new importer_registry_1.ImporterRegistry(options);
|
|
23
23
|
return compileRequestSync(newCompilePathRequest(path, importers, options), importers, options);
|
|
@@ -52,13 +52,13 @@ function newCompileStringRequest(source, importers, options) {
|
|
|
52
52
|
syntax: utils.protofySyntax((_a = options === null || options === void 0 ? void 0 : options.syntax) !== null && _a !== void 0 ? _a : 'scss'),
|
|
53
53
|
});
|
|
54
54
|
const url = (_b = options === null || options === void 0 ? void 0 : options.url) === null || _b === void 0 ? void 0 : _b.toString();
|
|
55
|
-
if (url && url !==
|
|
55
|
+
if (url && url !== utils_1.legacyImporterProtocol) {
|
|
56
56
|
input.url = url;
|
|
57
57
|
}
|
|
58
58
|
if (options && 'importer' in options && options.importer) {
|
|
59
59
|
input.importer = importers.register(options.importer);
|
|
60
60
|
}
|
|
61
|
-
else if (url ===
|
|
61
|
+
else if (url === utils_1.legacyImporterProtocol) {
|
|
62
62
|
input.importer = new proto.InboundMessage_CompileRequest_Importer({
|
|
63
63
|
importer: { case: 'path', value: p.resolve('.') },
|
|
64
64
|
});
|
|
@@ -187,14 +187,23 @@ function createDispatcher(stdout, writeStdin, handlers) {
|
|
|
187
187
|
/** Handles a log event according to `options`. */
|
|
188
188
|
function handleLogEvent(options, event) {
|
|
189
189
|
var _a, _b;
|
|
190
|
+
let span = event.span ? (0, deprotofy_span_1.deprotofySourceSpan)(event.span) : null;
|
|
191
|
+
if (span && (options === null || options === void 0 ? void 0 : options.legacy))
|
|
192
|
+
span = (0, utils_1.removeLegacyImporterFromSpan)(span);
|
|
193
|
+
let message = event.message;
|
|
194
|
+
if (options === null || options === void 0 ? void 0 : options.legacy)
|
|
195
|
+
message = (0, utils_1.removeLegacyImporter)(message);
|
|
196
|
+
let formatted = event.formatted;
|
|
197
|
+
if (options === null || options === void 0 ? void 0 : options.legacy)
|
|
198
|
+
formatted = (0, utils_1.removeLegacyImporter)(formatted);
|
|
190
199
|
if (event.type === proto.LogEventType.DEBUG) {
|
|
191
200
|
if ((_a = options === null || options === void 0 ? void 0 : options.logger) === null || _a === void 0 ? void 0 : _a.debug) {
|
|
192
|
-
options.logger.debug(
|
|
193
|
-
span:
|
|
201
|
+
options.logger.debug(message, {
|
|
202
|
+
span: span,
|
|
194
203
|
});
|
|
195
204
|
}
|
|
196
205
|
else {
|
|
197
|
-
console.error(
|
|
206
|
+
console.error(formatted);
|
|
198
207
|
}
|
|
199
208
|
}
|
|
200
209
|
else {
|
|
@@ -202,16 +211,16 @@ function handleLogEvent(options, event) {
|
|
|
202
211
|
const params = {
|
|
203
212
|
deprecation: event.type === proto.LogEventType.DEPRECATION_WARNING,
|
|
204
213
|
};
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
params.span = (0, deprotofy_span_1.deprotofySourceSpan)(spanProto);
|
|
214
|
+
if (span)
|
|
215
|
+
params.span = span;
|
|
208
216
|
const stack = event.stackTrace;
|
|
209
|
-
if (stack)
|
|
210
|
-
params.stack = stack;
|
|
211
|
-
|
|
217
|
+
if (stack) {
|
|
218
|
+
params.stack = (options === null || options === void 0 ? void 0 : options.legacy) ? (0, utils_1.removeLegacyImporter)(stack) : stack;
|
|
219
|
+
}
|
|
220
|
+
options.logger.warn(message, params);
|
|
212
221
|
}
|
|
213
222
|
else {
|
|
214
|
-
console.error(
|
|
223
|
+
console.error(formatted);
|
|
215
224
|
}
|
|
216
225
|
}
|
|
217
226
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../lib/src/compile.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,0BAA0B;AAE1B,gDAAgD;AAEhD,mDAAmD;AACnD,iCAAiC;AACjC,qDAAuD;AAEvD,6CAA4D;AAC5D,2CAAsC;AACtC,2DAAqD;AACrD,2DAAqD;AACrD,+DAAyD;AACzD,6DAAuD;AACvD,mDAAqD;AACrD,qDAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../lib/src/compile.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,21 +31,26 @@ class ImporterRegistry {
|
|
|
31
31
|
}
|
|
32
32
|
/** Converts an importer to a proto without adding it to `this.importers`. */
|
|
33
33
|
register(importer) {
|
|
34
|
-
|
|
34
|
+
var _a;
|
|
35
|
+
const message = new proto.InboundMessage_CompileRequest_Importer();
|
|
35
36
|
if ('canonicalize' in importer) {
|
|
36
37
|
if ('findFileUrl' in importer) {
|
|
37
38
|
throw new Error('Importer may not contain both canonicalize() and findFileUrl(): ' +
|
|
38
39
|
(0, util_1.inspect)(importer));
|
|
39
40
|
}
|
|
40
|
-
|
|
41
|
+
message.importer = { case: 'importerId', value: this.id };
|
|
42
|
+
message.nonCanonicalScheme =
|
|
43
|
+
typeof importer.nonCanonicalScheme === 'string'
|
|
44
|
+
? [importer.nonCanonicalScheme]
|
|
45
|
+
: (_a = importer.nonCanonicalScheme) !== null && _a !== void 0 ? _a : [];
|
|
41
46
|
this.importersById.set(this.id, importer);
|
|
42
47
|
}
|
|
43
48
|
else {
|
|
44
|
-
|
|
49
|
+
message.importer = { case: 'fileImporterId', value: this.id };
|
|
45
50
|
this.fileImportersById.set(this.id, importer);
|
|
46
51
|
}
|
|
47
52
|
this.id += 1;
|
|
48
|
-
return
|
|
53
|
+
return message;
|
|
49
54
|
}
|
|
50
55
|
/** Handles a canonicalization request. */
|
|
51
56
|
canonicalize(request) {
|
|
@@ -56,6 +61,9 @@ class ImporterRegistry {
|
|
|
56
61
|
return (0, utils_1.catchOr)(() => {
|
|
57
62
|
return (0, utils_1.thenOr)(importer.canonicalize(request.url, {
|
|
58
63
|
fromImport: request.fromImport,
|
|
64
|
+
containingUrl: request.containingUrl
|
|
65
|
+
? new url_1.URL(request.containingUrl)
|
|
66
|
+
: null,
|
|
59
67
|
}), url => new proto.InboundMessage_CanonicalizeResponse({
|
|
60
68
|
result: url === null
|
|
61
69
|
? { case: undefined }
|
|
@@ -107,6 +115,9 @@ class ImporterRegistry {
|
|
|
107
115
|
return (0, utils_1.catchOr)(() => {
|
|
108
116
|
return (0, utils_1.thenOr)(importer.findFileUrl(request.url, {
|
|
109
117
|
fromImport: request.fromImport,
|
|
118
|
+
containingUrl: request.containingUrl
|
|
119
|
+
? new url_1.URL(request.containingUrl)
|
|
120
|
+
: null,
|
|
110
121
|
}), url => {
|
|
111
122
|
if (!url)
|
|
112
123
|
return new proto.InboundMessage_FileImportResponse();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer-registry.js","sourceRoot":"","sources":["../../../lib/src/importer-registry.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,0BAA0B;AAC1B,6BAAwB;AACxB,+BAA6B;AAE7B,iCAAiC;AAEjC,mDAAmD;AACnD,mCAAmD;AAEnD;;;GAGG;AACH,MAAa,gBAAgB;IAa3B,YAAY,OAAuB;;QATnC,gEAAgE;QAC/C,kBAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;QAEnE,qEAAqE;QACpD,sBAAiB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAE3E,0CAA0C;QAClC,OAAE,GAAG,CAAC,CAAC;QAGb,IAAI,CAAC,SAAS,GAAG,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,EAAE,CAAC;aACxC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aACxC,MAAM,CACL,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,EAAE,CAAC,CAAC,GAAG,CAC5B,IAAI,CAAC,EAAE,CACL,IAAI,KAAK,CAAC,sCAAsC,CAAC;YAC/C,QAAQ,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAC;SACjD,CAAC,CACL,CACF,CAAC;IACN,CAAC;IAED,6EAA6E;IAC7E,QAAQ,CACN,QAA6C
|
|
1
|
+
{"version":3,"file":"importer-registry.js","sourceRoot":"","sources":["../../../lib/src/importer-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
// MIT-style license that can be found in the LICENSE file or at
|
|
4
4
|
// https://opensource.org/licenses/MIT.
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.LegacyImporterWrapper = exports.
|
|
6
|
+
exports.LegacyImporterWrapper = exports.legacyImporterFileProtocol = exports.endOfLoadProtocol = void 0;
|
|
7
7
|
const assert_1 = require("assert");
|
|
8
|
-
const url_1 = require("url");
|
|
9
8
|
const fs = require("fs");
|
|
10
9
|
const p = require("path");
|
|
11
10
|
const util = require("util");
|
|
12
11
|
const resolve_path_1 = require("./resolve-path");
|
|
13
12
|
const utils_1 = require("../utils");
|
|
13
|
+
const utils_2 = require("./utils");
|
|
14
14
|
/**
|
|
15
15
|
* A special URL protocol we use to signal when a stylesheet has finished
|
|
16
16
|
* loading. This allows us to determine which stylesheet is "current" when
|
|
@@ -19,9 +19,9 @@ const utils_1 = require("../utils");
|
|
|
19
19
|
*/
|
|
20
20
|
exports.endOfLoadProtocol = 'sass-embedded-legacy-load-done:';
|
|
21
21
|
/**
|
|
22
|
-
* The URL protocol
|
|
22
|
+
* The `file:` URL protocol with [legacyImporterProtocolPrefix] at the beginning.
|
|
23
23
|
*/
|
|
24
|
-
exports.
|
|
24
|
+
exports.legacyImporterFileProtocol = 'legacy-importer-file:';
|
|
25
25
|
// A count of `endOfLoadProtocol` imports that have been generated. Each one
|
|
26
26
|
// must be a different URL to ensure that the importer results aren't cached.
|
|
27
27
|
let endOfLoadCount = 0;
|
|
@@ -37,23 +37,24 @@ class LegacyImporterWrapper {
|
|
|
37
37
|
this.sync = sync;
|
|
38
38
|
// A stack of previous URLs passed to `this.callbacks`.
|
|
39
39
|
this.prev = [];
|
|
40
|
-
// Whether we're expecting the next call to `canonicalize()` to be a relative
|
|
41
|
-
// load. The legacy importer API doesn't handle these loads in the same way as
|
|
42
|
-
// the modern API, so we always return `null` in this case.
|
|
43
|
-
this.expectingRelativeLoad = true;
|
|
44
40
|
const path = initialPrev !== 'stdin';
|
|
45
41
|
this.prev.push({ url: path ? p.resolve(initialPrev) : 'stdin', path });
|
|
46
42
|
}
|
|
47
43
|
canonicalize(url, options) {
|
|
48
44
|
if (url.startsWith(exports.endOfLoadProtocol))
|
|
49
45
|
return new URL(url);
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
46
|
+
if (url.startsWith(utils_2.legacyImporterProtocolPrefix) ||
|
|
47
|
+
url.startsWith(utils_2.legacyImporterProtocol)) {
|
|
48
|
+
// A load starts with `legacyImporterProtocolPrefix` if and only if it's a
|
|
49
|
+
// relative load for the current importer rather than an absolute load.
|
|
50
|
+
// For the most part, we want to ignore these, but for `file:` URLs
|
|
51
|
+
// specifically we want to resolve them on the filesystem to ensure
|
|
52
|
+
// locality.
|
|
53
|
+
const urlWithoutPrefix = url.substring(utils_2.legacyImporterProtocolPrefix.length);
|
|
54
|
+
if (urlWithoutPrefix.startsWith('file:')) {
|
|
54
55
|
let resolved = null;
|
|
55
56
|
try {
|
|
56
|
-
const path = (0, utils_1.fileUrlToPathCrossPlatform)(
|
|
57
|
+
const path = (0, utils_1.fileUrlToPathCrossPlatform)(urlWithoutPrefix);
|
|
57
58
|
resolved = (0, resolve_path_1.resolvePath)(path, options.fromImport);
|
|
58
59
|
}
|
|
59
60
|
catch (error) {
|
|
@@ -74,17 +75,11 @@ class LegacyImporterWrapper {
|
|
|
74
75
|
}
|
|
75
76
|
if (resolved !== null) {
|
|
76
77
|
this.prev.push({ url: resolved, path: true });
|
|
77
|
-
return (0,
|
|
78
|
+
return (0, utils_2.pathToLegacyFileUrl)(resolved);
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
|
-
this.expectingRelativeLoad = false;
|
|
81
81
|
return null;
|
|
82
82
|
}
|
|
83
|
-
else if (!url.startsWith('file:')) {
|
|
84
|
-
// We'll only search for another relative import when the URL isn't
|
|
85
|
-
// absolute.
|
|
86
|
-
this.expectingRelativeLoad = true;
|
|
87
|
-
}
|
|
88
83
|
const prev = this.prev[this.prev.length - 1];
|
|
89
84
|
return (0, utils_1.thenOr)((0, utils_1.thenOr)(this.invokeCallbacks(url, prev.url, options), result => {
|
|
90
85
|
var _a;
|
|
@@ -99,20 +94,20 @@ class LegacyImporterWrapper {
|
|
|
99
94
|
if ('contents' in result || !('file' in result)) {
|
|
100
95
|
this.lastContents = (_a = result.contents) !== null && _a !== void 0 ? _a : '';
|
|
101
96
|
if ('file' in result) {
|
|
102
|
-
return new URL(
|
|
97
|
+
return new URL(utils_2.legacyImporterProtocol +
|
|
103
98
|
encodeURI(result.file));
|
|
104
99
|
}
|
|
105
100
|
else if (/^[A-Za-z+.-]+:/.test(url)) {
|
|
106
|
-
return new URL(url);
|
|
101
|
+
return new URL(`${utils_2.legacyImporterProtocolPrefix}${url}`);
|
|
107
102
|
}
|
|
108
103
|
else {
|
|
109
|
-
return new URL(
|
|
104
|
+
return new URL(utils_2.legacyImporterProtocol + encodeURI(url));
|
|
110
105
|
}
|
|
111
106
|
}
|
|
112
107
|
else {
|
|
113
108
|
if (p.isAbsolute(result.file)) {
|
|
114
109
|
const resolved = (0, resolve_path_1.resolvePath)(result.file, options.fromImport);
|
|
115
|
-
return resolved ? (0,
|
|
110
|
+
return resolved ? (0, utils_2.pathToLegacyFileUrl)(resolved) : null;
|
|
116
111
|
}
|
|
117
112
|
const prefixes = [...this.loadPaths, '.'];
|
|
118
113
|
if (prev.path)
|
|
@@ -120,15 +115,15 @@ class LegacyImporterWrapper {
|
|
|
120
115
|
for (const prefix of prefixes) {
|
|
121
116
|
const resolved = (0, resolve_path_1.resolvePath)(p.join(prefix, result.file), options.fromImport);
|
|
122
117
|
if (resolved !== null)
|
|
123
|
-
return (0,
|
|
118
|
+
return (0, utils_2.pathToLegacyFileUrl)(resolved);
|
|
124
119
|
}
|
|
125
120
|
return null;
|
|
126
121
|
}
|
|
127
122
|
}), result => {
|
|
128
123
|
if (result !== null) {
|
|
129
|
-
const path = result.protocol ===
|
|
124
|
+
const path = result.protocol === exports.legacyImporterFileProtocol;
|
|
130
125
|
this.prev.push({
|
|
131
|
-
url: path ? (0,
|
|
126
|
+
url: path ? (0, utils_2.legacyFileUrlToPath)(result) : url,
|
|
132
127
|
path,
|
|
133
128
|
});
|
|
134
129
|
return result;
|
|
@@ -137,7 +132,7 @@ class LegacyImporterWrapper {
|
|
|
137
132
|
for (const loadPath of this.loadPaths) {
|
|
138
133
|
const resolved = (0, resolve_path_1.resolvePath)(p.join(loadPath, url), options.fromImport);
|
|
139
134
|
if (resolved !== null)
|
|
140
|
-
return (0,
|
|
135
|
+
return (0, utils_2.pathToLegacyFileUrl)(resolved);
|
|
141
136
|
}
|
|
142
137
|
return null;
|
|
143
138
|
}
|
|
@@ -153,13 +148,13 @@ class LegacyImporterWrapper {
|
|
|
153
148
|
sourceMapUrl: new URL(exports.endOfLoadProtocol),
|
|
154
149
|
};
|
|
155
150
|
}
|
|
156
|
-
if (canonicalUrl.protocol ===
|
|
151
|
+
if (canonicalUrl.protocol === exports.legacyImporterFileProtocol) {
|
|
157
152
|
const syntax = canonicalUrl.pathname.endsWith('.sass')
|
|
158
153
|
? 'indented'
|
|
159
154
|
: canonicalUrl.pathname.endsWith('.css')
|
|
160
155
|
? 'css'
|
|
161
156
|
: 'scss';
|
|
162
|
-
let contents = (_a = this.lastContents) !== null && _a !== void 0 ? _a : fs.readFileSync((0,
|
|
157
|
+
let contents = (_a = this.lastContents) !== null && _a !== void 0 ? _a : fs.readFileSync((0, utils_2.legacyFileUrlToPath)(canonicalUrl), 'utf-8');
|
|
163
158
|
this.lastContents = undefined;
|
|
164
159
|
if (syntax === 'scss') {
|
|
165
160
|
contents += this.endOfLoadImport;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../lib/src/legacy/importer.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,mCAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../lib/src/legacy/importer.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ const compile_1 = require("../compile");
|
|
|
12
12
|
const utils_1 = require("../utils");
|
|
13
13
|
const wrap_1 = require("./value/wrap");
|
|
14
14
|
const importer_1 = require("./importer");
|
|
15
|
+
const utils_2 = require("./utils");
|
|
15
16
|
function render(options, callback) {
|
|
16
17
|
try {
|
|
17
18
|
options = adjustOptions(options);
|
|
@@ -42,8 +43,8 @@ function renderSync(options) {
|
|
|
42
43
|
}
|
|
43
44
|
}
|
|
44
45
|
exports.renderSync = renderSync;
|
|
45
|
-
// Does some initial adjustments of `options` to make it easier to
|
|
46
|
-
//
|
|
46
|
+
// Does some initial adjustments of `options` to make it easier to pass to the
|
|
47
|
+
// new API.
|
|
47
48
|
function adjustOptions(options) {
|
|
48
49
|
var _a;
|
|
49
50
|
if (!('file' in options && options.file) && !('data' in options)) {
|
|
@@ -111,6 +112,7 @@ function convertOptions(options, sync) {
|
|
|
111
112
|
verbose: options.verbose,
|
|
112
113
|
charset: options.charset,
|
|
113
114
|
logger: options.logger,
|
|
115
|
+
legacy: true,
|
|
114
116
|
};
|
|
115
117
|
}
|
|
116
118
|
// Converts `LegacyStringOptions` into new API `StringOptions`.
|
|
@@ -119,8 +121,10 @@ function convertStringOptions(options, sync) {
|
|
|
119
121
|
return {
|
|
120
122
|
...modernOptions,
|
|
121
123
|
url: options.file
|
|
122
|
-
?
|
|
123
|
-
|
|
124
|
+
? options.importer
|
|
125
|
+
? (0, utils_2.pathToLegacyFileUrl)(options.file)
|
|
126
|
+
: (0, url_1.pathToFileURL)(options.file)
|
|
127
|
+
: new url_1.URL(utils_2.legacyImporterProtocol),
|
|
124
128
|
importer: modernOptions.importers ? modernOptions.importers[0] : undefined,
|
|
125
129
|
syntax: options.indentedSyntax ? 'indented' : 'scss',
|
|
126
130
|
};
|
|
@@ -181,12 +185,10 @@ function newLegacyResult(options, start, result) {
|
|
|
181
185
|
sourceMap.sources = sourceMap.sources
|
|
182
186
|
.filter(source => !source.startsWith(importer_1.endOfLoadProtocol))
|
|
183
187
|
.map(source => {
|
|
188
|
+
source = (0, utils_2.removeLegacyImporter)(source);
|
|
184
189
|
if (source.startsWith('file://')) {
|
|
185
190
|
return (0, utils_1.pathToUrlString)(p.relative(sourceMapDir, (0, utils_1.fileUrlToPathCrossPlatform)(source)));
|
|
186
191
|
}
|
|
187
|
-
else if (source.startsWith(importer_1.legacyImporterProtocol)) {
|
|
188
|
-
return source.substring(importer_1.legacyImporterProtocol.length);
|
|
189
|
-
}
|
|
190
192
|
else if (source.startsWith('data:')) {
|
|
191
193
|
return 'stdin';
|
|
192
194
|
}
|
|
@@ -220,15 +222,13 @@ function newLegacyResult(options, start, result) {
|
|
|
220
222
|
includedFiles: result.loadedUrls
|
|
221
223
|
.filter(url => url.protocol !== importer_1.endOfLoadProtocol)
|
|
222
224
|
.map(url => {
|
|
223
|
-
if (url.protocol ===
|
|
224
|
-
return (0, utils_1.fileUrlToPathCrossPlatform)(url);
|
|
225
|
-
}
|
|
226
|
-
else if (url.protocol === importer_1.legacyImporterProtocol) {
|
|
225
|
+
if (url.protocol === utils_2.legacyImporterProtocol) {
|
|
227
226
|
return decodeURI(url.pathname);
|
|
228
227
|
}
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
228
|
+
const urlString = (0, utils_2.removeLegacyImporter)(url.toString());
|
|
229
|
+
return urlString.startsWith('file:')
|
|
230
|
+
? (0, utils_1.fileUrlToPathCrossPlatform)(urlString)
|
|
231
|
+
: urlString;
|
|
232
232
|
}),
|
|
233
233
|
},
|
|
234
234
|
};
|
|
@@ -236,37 +236,39 @@ function newLegacyResult(options, start, result) {
|
|
|
236
236
|
// Decorates an Error with additional fields so that it behaves like a Node Sass
|
|
237
237
|
// error.
|
|
238
238
|
function newLegacyException(error) {
|
|
239
|
-
var _a, _b
|
|
239
|
+
var _a, _b;
|
|
240
240
|
if (!(error instanceof exception_1.Exception)) {
|
|
241
241
|
return Object.assign(error, {
|
|
242
242
|
formatted: error.toString(),
|
|
243
243
|
status: 3,
|
|
244
244
|
});
|
|
245
245
|
}
|
|
246
|
+
const span = error.span ? (0, utils_2.removeLegacyImporterFromSpan)(error.span) : null;
|
|
246
247
|
let file;
|
|
247
|
-
if (!(
|
|
248
|
+
if (!(span === null || span === void 0 ? void 0 : span.url)) {
|
|
248
249
|
file = 'stdin';
|
|
249
250
|
}
|
|
250
|
-
else if (
|
|
251
|
+
else if (span.url.protocol === 'file:') {
|
|
251
252
|
// We have to cast to Node's URL type here because the specified type is the
|
|
252
253
|
// standard URL type which is slightly less featureful. `fileURLToPath()`
|
|
253
254
|
// does work with standard URL objects in practice, but we know that we
|
|
254
255
|
// generate Node URLs here regardless.
|
|
255
|
-
file = (0, utils_1.fileUrlToPathCrossPlatform)(
|
|
256
|
+
file = (0, utils_1.fileUrlToPathCrossPlatform)(span.url);
|
|
256
257
|
}
|
|
257
258
|
else {
|
|
258
|
-
file =
|
|
259
|
+
file = span.url.toString();
|
|
259
260
|
}
|
|
261
|
+
const errorString = (0, utils_2.removeLegacyImporter)(error.toString());
|
|
260
262
|
return Object.assign(new Error(), {
|
|
261
263
|
status: 1,
|
|
262
|
-
message:
|
|
263
|
-
formatted:
|
|
264
|
-
toString: () =>
|
|
265
|
-
stack: error.stack,
|
|
266
|
-
line: (0, utils_1.isNullOrUndefined)((
|
|
264
|
+
message: errorString.replace(/^Error: /, ''),
|
|
265
|
+
formatted: errorString,
|
|
266
|
+
toString: () => errorString,
|
|
267
|
+
stack: error.stack ? (0, utils_2.removeLegacyImporter)(error.stack) : undefined,
|
|
268
|
+
line: (0, utils_1.isNullOrUndefined)((_a = error.span) === null || _a === void 0 ? void 0 : _a.start.line)
|
|
267
269
|
? undefined
|
|
268
270
|
: error.span.start.line + 1,
|
|
269
|
-
column: (0, utils_1.isNullOrUndefined)((
|
|
271
|
+
column: (0, utils_1.isNullOrUndefined)((_b = error.span) === null || _b === void 0 ? void 0 : _b.start.column)
|
|
270
272
|
? undefined
|
|
271
273
|
: error.span.start.column + 1,
|
|
272
274
|
file,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/src/legacy/index.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,yBAAyB;AACzB,0BAA0B;AAC1B,6BAAuC;AAEvC,4CAAuC;AACvC,wCAKoB;AACpB,oCAMkB;AAalB,uCAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/src/legacy/index.ts"],"names":[],"mappings":"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"}
|