sass-embedded 1.69.7 → 1.71.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.
Files changed (39) hide show
  1. package/dist/lib/index.js +10 -4
  2. package/dist/lib/index.js.map +1 -1
  3. package/dist/lib/index.mjs +25 -0
  4. package/dist/lib/src/compile.js +28 -228
  5. package/dist/lib/src/compile.js.map +1 -1
  6. package/dist/lib/src/compiler/async.js +127 -0
  7. package/dist/lib/src/compiler/async.js.map +1 -0
  8. package/dist/lib/src/compiler/sync.js +146 -0
  9. package/dist/lib/src/compiler/sync.js.map +1 -0
  10. package/dist/lib/src/compiler/utils.js +153 -0
  11. package/dist/lib/src/compiler/utils.js.map +1 -0
  12. package/dist/lib/src/dispatcher.js +23 -5
  13. package/dist/lib/src/dispatcher.js.map +1 -1
  14. package/dist/lib/src/function-registry.js +4 -7
  15. package/dist/lib/src/function-registry.js.map +1 -1
  16. package/dist/lib/src/importer-registry.js +28 -2
  17. package/dist/lib/src/importer-registry.js.map +1 -1
  18. package/dist/lib/src/legacy/index.js +9 -2
  19. package/dist/lib/src/legacy/index.js.map +1 -1
  20. package/dist/lib/src/legacy/utils.js +10 -10
  21. package/dist/lib/src/legacy/utils.js.map +1 -1
  22. package/dist/lib/src/logger.js +10 -0
  23. package/dist/lib/src/logger.js.map +1 -0
  24. package/dist/lib/src/vendor/embedded_sass_pb.js +51 -1
  25. package/dist/lib/src/vendor/embedded_sass_pb.js.map +1 -1
  26. package/dist/package.json +19 -19
  27. package/dist/tool/utils.js +2 -2
  28. package/dist/tool/utils.js.map +1 -1
  29. package/dist/types/compile.d.ts +184 -6
  30. package/dist/types/importer.d.ts +133 -0
  31. package/dist/types/index.d.ts +5 -0
  32. package/dist/types/index.m.d.ts +5 -0
  33. package/dist/types/legacy/options.d.ts +19 -0
  34. package/dist/types/options.d.ts +4 -4
  35. package/package.json +19 -19
  36. package/dist/lib/src/async-compiler.js +0 -42
  37. package/dist/lib/src/async-compiler.js.map +0 -1
  38. package/dist/lib/src/sync-compiler.js +0 -55
  39. package/dist/lib/src/sync-compiler.js.map +0 -1
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ // Copyright 2024 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.initCompiler = exports.Compiler = void 0;
7
+ const rxjs_1 = require("rxjs");
8
+ const path = require("path");
9
+ const utils_1 = require("./utils");
10
+ const compiler_path_1 = require("../compiler-path");
11
+ const function_registry_1 = require("../function-registry");
12
+ const importer_registry_1 = require("../importer-registry");
13
+ const message_transformer_1 = require("../message-transformer");
14
+ const packet_transformer_1 = require("../packet-transformer");
15
+ const sync_process_1 = require("../sync-process");
16
+ const utils = require("../utils");
17
+ /**
18
+ * Flag allowing the constructor passed by `initCompiler` so we can
19
+ * differentiate and throw an error if the `Compiler` is constructed via `new
20
+ * Compiler`.
21
+ */
22
+ const initFlag = Symbol();
23
+ /** A synchronous wrapper for the embedded Sass compiler */
24
+ class Compiler {
25
+ /** Writes `buffer` to the child process's stdin. */
26
+ writeStdin(buffer) {
27
+ this.process.stdin.write(buffer);
28
+ }
29
+ /** Yields the next event from the underlying process. */
30
+ yield() {
31
+ const event = this.process.yield();
32
+ switch (event.type) {
33
+ case 'stdout':
34
+ this.stdout$.next(event.data);
35
+ return true;
36
+ case 'stderr':
37
+ this.stderr$.next(event.data);
38
+ return true;
39
+ case 'exit':
40
+ this.disposed = true;
41
+ return false;
42
+ }
43
+ }
44
+ /** Blocks until the underlying process exits. */
45
+ yieldUntilExit() {
46
+ while (!this.disposed) {
47
+ this.yield();
48
+ }
49
+ }
50
+ /**
51
+ * Sends a compile request to the child process and returns the CompileResult.
52
+ * Throws if there were any protocol or compilation errors.
53
+ */
54
+ compileRequestSync(request, importers, options) {
55
+ const functions = new function_registry_1.FunctionRegistry(options === null || options === void 0 ? void 0 : options.functions);
56
+ const dispatcher = (0, utils_1.createDispatcher)(this.compilationId++, this.messageTransformer, {
57
+ handleImportRequest: request => importers.import(request),
58
+ handleFileImportRequest: request => importers.fileImport(request),
59
+ handleCanonicalizeRequest: request => importers.canonicalize(request),
60
+ handleFunctionCallRequest: request => functions.call(request),
61
+ });
62
+ this.dispatchers.add(dispatcher);
63
+ dispatcher.logEvents$.subscribe(event => (0, utils_1.handleLogEvent)(options, event));
64
+ let error;
65
+ let response;
66
+ dispatcher.sendCompileRequest(request, (error_, response_) => {
67
+ this.dispatchers.delete(dispatcher);
68
+ // Reset the compilation ID when the compiler goes idle (no active
69
+ // dispatchers) to avoid overflowing it.
70
+ // https://github.com/sass/embedded-host-node/pull/261#discussion_r1429266794
71
+ if (this.dispatchers.size === 0)
72
+ this.compilationId = 1;
73
+ if (error_) {
74
+ error = error_;
75
+ }
76
+ else {
77
+ response = response_;
78
+ }
79
+ });
80
+ for (;;) {
81
+ if (!this.yield()) {
82
+ throw utils.compilerError('Embedded compiler exited unexpectedly.');
83
+ }
84
+ if (error)
85
+ throw error;
86
+ if (response)
87
+ return (0, utils_1.handleCompileResponse)(response);
88
+ }
89
+ }
90
+ /** Guards against using a disposed compiler. */
91
+ throwIfDisposed() {
92
+ if (this.disposed) {
93
+ throw utils.compilerError('Sync compiler has already been disposed.');
94
+ }
95
+ }
96
+ /** Initialize resources shared across compilations. */
97
+ constructor(flag) {
98
+ /** The underlying process that's being wrapped. */
99
+ this.process = new sync_process_1.SyncProcess(compiler_path_1.compilerCommand[0], [...compiler_path_1.compilerCommand.slice(1), '--embedded'], {
100
+ // Use the command's cwd so the compiler survives the removal of the
101
+ // current working directory.
102
+ // https://github.com/sass/embedded-host-node/pull/261#discussion_r1438712923
103
+ cwd: path.dirname(compiler_path_1.compilerCommand[0]),
104
+ windowsHide: true,
105
+ });
106
+ /** The next compilation ID. */
107
+ this.compilationId = 1;
108
+ /** A list of active dispatchers. */
109
+ this.dispatchers = new Set();
110
+ /** The buffers emitted by the child process's stdout. */
111
+ this.stdout$ = new rxjs_1.Subject();
112
+ /** The buffers emitted by the child process's stderr. */
113
+ this.stderr$ = new rxjs_1.Subject();
114
+ /** Whether the underlying compiler has already exited. */
115
+ this.disposed = false;
116
+ if (flag !== initFlag) {
117
+ throw utils.compilerError('Compiler can not be directly constructed. ' +
118
+ 'Please use `sass.initAsyncCompiler()` instead.');
119
+ }
120
+ this.stderr$.subscribe(data => process.stderr.write(data));
121
+ const packetTransformer = new packet_transformer_1.PacketTransformer(this.stdout$, buffer => {
122
+ this.writeStdin(buffer);
123
+ });
124
+ this.messageTransformer = new message_transformer_1.MessageTransformer(packetTransformer.outboundProtobufs$, packet => packetTransformer.writeInboundProtobuf(packet));
125
+ }
126
+ compile(path, options) {
127
+ this.throwIfDisposed();
128
+ const importers = new importer_registry_1.ImporterRegistry(options);
129
+ return this.compileRequestSync((0, utils_1.newCompilePathRequest)(path, importers, options), importers, options);
130
+ }
131
+ compileString(source, options) {
132
+ this.throwIfDisposed();
133
+ const importers = new importer_registry_1.ImporterRegistry(options);
134
+ return this.compileRequestSync((0, utils_1.newCompileStringRequest)(source, importers, options), importers, options);
135
+ }
136
+ dispose() {
137
+ this.process.stdin.end();
138
+ this.yieldUntilExit();
139
+ }
140
+ }
141
+ exports.Compiler = Compiler;
142
+ function initCompiler() {
143
+ return new Compiler(initFlag);
144
+ }
145
+ exports.initCompiler = initCompiler;
146
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../../lib/src/compiler/sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ // Copyright 2024 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.handleCompileResponse = exports.handleLogEvent = exports.newCompileStringRequest = exports.newCompilePathRequest = exports.createDispatcher = void 0;
7
+ const p = require("path");
8
+ const supportsColor = require("supports-color");
9
+ const deprotofy_span_1 = require("../deprotofy-span");
10
+ const dispatcher_1 = require("../dispatcher");
11
+ const exception_1 = require("../exception");
12
+ const utils_1 = require("../legacy/utils");
13
+ const logger_1 = require("../logger");
14
+ const utils = require("../utils");
15
+ const proto = require("../vendor/embedded_sass_pb");
16
+ /**
17
+ * Creates a dispatcher that dispatches messages from the given `stdout` stream.
18
+ */
19
+ function createDispatcher(compilationId, messageTransformer, handlers) {
20
+ return new dispatcher_1.Dispatcher(compilationId, messageTransformer.outboundMessages$, message => messageTransformer.writeInboundMessage(message), handlers);
21
+ }
22
+ exports.createDispatcher = createDispatcher;
23
+ // Creates a compilation request for the given `options` without adding any
24
+ // input-specific options.
25
+ function newCompileRequest(importers, options) {
26
+ var _a, _b, _c, _d;
27
+ const request = new proto.InboundMessage_CompileRequest({
28
+ importers: importers.importers,
29
+ globalFunctions: Object.keys((_a = options === null || options === void 0 ? void 0 : options.functions) !== null && _a !== void 0 ? _a : {}),
30
+ sourceMap: !!(options === null || options === void 0 ? void 0 : options.sourceMap),
31
+ sourceMapIncludeSources: !!(options === null || options === void 0 ? void 0 : options.sourceMapIncludeSources),
32
+ alertColor: (_b = options === null || options === void 0 ? void 0 : options.alertColor) !== null && _b !== void 0 ? _b : !!supportsColor.stdout,
33
+ alertAscii: !!(options === null || options === void 0 ? void 0 : options.alertAscii),
34
+ quietDeps: !!(options === null || options === void 0 ? void 0 : options.quietDeps),
35
+ verbose: !!(options === null || options === void 0 ? void 0 : options.verbose),
36
+ charset: !!((_c = options === null || options === void 0 ? void 0 : options.charset) !== null && _c !== void 0 ? _c : true),
37
+ silent: (options === null || options === void 0 ? void 0 : options.logger) === logger_1.Logger.silent,
38
+ });
39
+ switch ((_d = options === null || options === void 0 ? void 0 : options.style) !== null && _d !== void 0 ? _d : 'expanded') {
40
+ case 'expanded':
41
+ request.style = proto.OutputStyle.EXPANDED;
42
+ break;
43
+ case 'compressed':
44
+ request.style = proto.OutputStyle.COMPRESSED;
45
+ break;
46
+ default:
47
+ throw new Error(`Unknown options.style: "${options === null || options === void 0 ? void 0 : options.style}"`);
48
+ }
49
+ return request;
50
+ }
51
+ // Creates a request for compiling a file.
52
+ function newCompilePathRequest(path, importers, options) {
53
+ const absPath = p.resolve(path);
54
+ const request = newCompileRequest(importers, options);
55
+ request.input = { case: 'path', value: absPath };
56
+ return request;
57
+ }
58
+ exports.newCompilePathRequest = newCompilePathRequest;
59
+ // Creates a request for compiling a string.
60
+ function newCompileStringRequest(source, importers, options) {
61
+ var _a, _b;
62
+ const input = new proto.InboundMessage_CompileRequest_StringInput({
63
+ source,
64
+ syntax: utils.protofySyntax((_a = options === null || options === void 0 ? void 0 : options.syntax) !== null && _a !== void 0 ? _a : 'scss'),
65
+ });
66
+ const url = (_b = options === null || options === void 0 ? void 0 : options.url) === null || _b === void 0 ? void 0 : _b.toString();
67
+ if (url && url !== utils_1.legacyImporterProtocol) {
68
+ input.url = url;
69
+ }
70
+ if (options && 'importer' in options && options.importer) {
71
+ input.importer = importers.register(options.importer);
72
+ }
73
+ else if (url === utils_1.legacyImporterProtocol) {
74
+ input.importer = new proto.InboundMessage_CompileRequest_Importer({
75
+ importer: { case: 'path', value: p.resolve('.') },
76
+ });
77
+ }
78
+ else {
79
+ // When importer is not set on the host, the compiler will set a
80
+ // FileSystemImporter if `url` is set to a file: url or a NoOpImporter.
81
+ }
82
+ const request = newCompileRequest(importers, options);
83
+ request.input = { case: 'string', value: input };
84
+ return request;
85
+ }
86
+ exports.newCompileStringRequest = newCompileStringRequest;
87
+ /** Handles a log event according to `options`. */
88
+ function handleLogEvent(options, event) {
89
+ var _a, _b;
90
+ let span = event.span ? (0, deprotofy_span_1.deprotofySourceSpan)(event.span) : null;
91
+ if (span && (options === null || options === void 0 ? void 0 : options.legacy))
92
+ span = (0, utils_1.removeLegacyImporterFromSpan)(span);
93
+ let message = event.message;
94
+ if (options === null || options === void 0 ? void 0 : options.legacy)
95
+ message = (0, utils_1.removeLegacyImporter)(message);
96
+ let formatted = event.formatted;
97
+ if (options === null || options === void 0 ? void 0 : options.legacy)
98
+ formatted = (0, utils_1.removeLegacyImporter)(formatted);
99
+ if (event.type === proto.LogEventType.DEBUG) {
100
+ if ((_a = options === null || options === void 0 ? void 0 : options.logger) === null || _a === void 0 ? void 0 : _a.debug) {
101
+ options.logger.debug(message, {
102
+ span: span,
103
+ });
104
+ }
105
+ else {
106
+ console.error(formatted);
107
+ }
108
+ }
109
+ else {
110
+ if ((_b = options === null || options === void 0 ? void 0 : options.logger) === null || _b === void 0 ? void 0 : _b.warn) {
111
+ const params = {
112
+ deprecation: event.type === proto.LogEventType.DEPRECATION_WARNING,
113
+ };
114
+ if (span)
115
+ params.span = span;
116
+ const stack = event.stackTrace;
117
+ if (stack) {
118
+ params.stack = (options === null || options === void 0 ? void 0 : options.legacy) ? (0, utils_1.removeLegacyImporter)(stack) : stack;
119
+ }
120
+ options.logger.warn(message, params);
121
+ }
122
+ else {
123
+ console.error(formatted);
124
+ }
125
+ }
126
+ }
127
+ exports.handleLogEvent = handleLogEvent;
128
+ /**
129
+ * Converts a `CompileResponse` into a `CompileResult`.
130
+ *
131
+ * Throws a `SassException` if the compilation failed.
132
+ */
133
+ function handleCompileResponse(response) {
134
+ if (response.result.case === 'success') {
135
+ const success = response.result.value;
136
+ const result = {
137
+ css: success.css,
138
+ loadedUrls: response.loadedUrls.map(url => new URL(url)),
139
+ };
140
+ const sourceMap = success.sourceMap;
141
+ if (sourceMap)
142
+ result.sourceMap = JSON.parse(sourceMap);
143
+ return result;
144
+ }
145
+ else if (response.result.case === 'failure') {
146
+ throw new exception_1.Exception(response.result.value);
147
+ }
148
+ else {
149
+ throw utils.compilerError('Compiler sent empty CompileResponse.');
150
+ }
151
+ }
152
+ exports.handleCompileResponse = handleCompileResponse;
153
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/src/compiler/utils.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,10 @@ class Dispatcher {
41
41
  // All outbound messages for this compilation. If we detect any errors while
42
42
  // dispatching messages, this completes.
43
43
  this.messages$ = new rxjs_1.Subject();
44
+ // Subject to unsubscribe from all outbound messages to prevent past
45
+ // dispatchers with compilation IDs reused by future dispatchers from
46
+ // receiving messages intended for future dispatchers.
47
+ this.unsubscribe$ = new rxjs_1.Subject();
44
48
  // If the dispatcher encounters an error, this errors out. It is publicly
45
49
  // exposed as a readonly Observable.
46
50
  this.errorInternal$ = new rxjs_1.Subject();
@@ -64,7 +68,7 @@ class Dispatcher {
64
68
  return result instanceof Promise
65
69
  ? result.then(() => message)
66
70
  : [message];
67
- }))
71
+ }), (0, operators_1.takeUntil)(this.unsubscribe$))
68
72
  .subscribe({
69
73
  next: message => this.messages$.next(message),
70
74
  error: error => this.throwAndClose(error),
@@ -76,21 +80,29 @@ class Dispatcher {
76
80
  }
77
81
  /**
78
82
  * Sends a CompileRequest inbound. Passes the corresponding outbound
79
- * CompileResponse or an error to `callback`.
83
+ * CompileResponse or an error to `callback` and unsubscribes from all
84
+ * outbound events.
80
85
  *
81
86
  * This uses an old-style callback argument so that it can work either
82
87
  * synchronously or asynchronously. If the underlying stdout stream emits
83
88
  * events synchronously, `callback` will be called synchronously.
84
89
  */
85
90
  sendCompileRequest(request, callback) {
91
+ // Call the callback but unsubscribe first
92
+ const callback_ = (err, response) => {
93
+ this.unsubscribe();
94
+ return callback(err, response);
95
+ };
86
96
  if (this.messages$.isStopped) {
87
- callback(new Error('Tried writing to closed dispatcher'), undefined);
97
+ callback_(new Error('Tried writing to closed dispatcher'), undefined);
88
98
  return;
89
99
  }
90
100
  this.messages$
91
101
  .pipe((0, operators_1.filter)(message => message.message.case === 'compileResponse'), (0, operators_1.map)(message => message.message.value))
92
- .subscribe({ next: response => callback(null, response) });
93
- this.error$.subscribe({ error: error => callback(error, undefined) });
102
+ .subscribe({ next: response => callback_(null, response) });
103
+ this.error$.subscribe({
104
+ error: error => callback_(error, undefined),
105
+ });
94
106
  try {
95
107
  this.writeInboundMessage([
96
108
  this.compilationId,
@@ -103,11 +115,17 @@ class Dispatcher {
103
115
  this.throwAndClose(error);
104
116
  }
105
117
  }
118
+ // Stop the outbound message subscription.
119
+ unsubscribe() {
120
+ this.unsubscribe$.next(undefined);
121
+ this.unsubscribe$.complete();
122
+ }
106
123
  // Rejects with `error` all promises awaiting an outbound response, and
107
124
  // silently closes all subscriptions awaiting outbound events.
108
125
  throwAndClose(error) {
109
126
  this.messages$.complete();
110
127
  this.errorInternal$.error(error);
128
+ this.unsubscribe();
111
129
  }
112
130
  // Keeps track of all outbound messages. If the outbound `message` contains a
113
131
  // request or response, registers it with pendingOutboundRequests. If it
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../lib/src/dispatcher.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,+BAAyC;AACzC,8CAAqD;AAGrD,mDAAmD;AACnD,uDAAiD;AACjD,mCAAoE;AAEpE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAa,UAAU;IA6BrB,YACmB,aAAqB,EACrB,iBAEhB,EACgB,mBAER,EACQ,uBAAiD;QAPjD,kBAAa,GAAb,aAAa,CAAQ;QACrB,sBAAiB,GAAjB,iBAAiB,CAEjC;QACgB,wBAAmB,GAAnB,mBAAmB,CAE3B;QACQ,4BAAuB,GAAvB,uBAAuB,CAA0B;QApCpE,6EAA6E;QAC7E,kCAAkC;QACjB,4BAAuB,GAAG,IAAI,gCAAc,EAAE,CAAC;QAEhE,4EAA4E;QAC5E,wCAAwC;QACvB,cAAS,GAAG,IAAI,cAAO,EAAyB,CAAC;QAElE,yEAAyE;QACzE,oCAAoC;QACnB,mBAAc,GAAG,IAAI,cAAO,EAAQ,CAAC;QAEtD;;;;WAIG;QACM,WAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAE7C;;;WAGG;QACM,eAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CACvC,IAAA,kBAAM,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,EACtD,IAAA,eAAG,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAuC,CAAC,CACxE,CAAC;QAYA,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,CAAC,0BAA0B,aAAa,GAAG,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,iBAAiB;aACnB,IAAI,CACH,IAAA,kBAAM,EAAC,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa,CAAC,EACjE,IAAA,eAAG,EAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAC7B,IAAA,oBAAQ,EAAC,OAAO,CAAC,EAAE;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACnD,OAAO,MAAM,YAAY,OAAO;gBAC9B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;gBAC5B,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAChB,CAAC,CAAC,CACH;aACA,SAAS,CAAC;YACT,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7C,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YACzC,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YACjC,CAAC;SACF,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;OAOG;IACH,kBAAkB,CAChB,OAA4C,EAC5C,QAGS;QAET,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YAC7B,QAAQ,CAAC,IAAI,KAAK,CAAC,oCAAoC,CAAC,EAAE,SAAS,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS;aACX,IAAI,CACH,IAAA,kBAAM,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,iBAAiB,CAAC,EAC7D,IAAA,eAAG,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAyB,CAAC,CAC1D;aACA,SAAS,CAAC,EAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,EAAC,CAAC,CAAC;QAEpE,IAAI,CAAC;YACH,IAAI,CAAC,mBAAmB,CAAC;gBACvB,IAAI,CAAC,aAAa;gBAClB,IAAI,KAAK,CAAC,cAAc,CAAC;oBACvB,OAAO,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAC;iBAClD,CAAC;aACH,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,8DAA8D;IACtD,aAAa,CAAC,KAAc;QAClC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,6EAA6E;IAC7E,wEAAwE;IACxE,2EAA2E;IAC3E,uCAAuC;IAC/B,qBAAqB,CAC3B,OAA8B;QAE9B,QAAQ,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAK,UAAU;gBACb,sCAAsC;gBACtC,OAAO,SAAS,CAAC;YAEnB,KAAK,iBAAiB;gBACpB,8CAA8C;gBAC9C,OAAO,SAAS,CAAC;YAEnB,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,gBAAgB,CAAC;gBAC9B,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAE3C,OAAO,IAAA,cAAM,EACX,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,OAAO,CAAC,EACzD,QAAQ,CAAC,EAAE;oBACT,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC7D,CAAC,CACF,CAAC;YACJ,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,oBAAoB,CAAC;gBAClC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3C,OAAO,IAAA,cAAM,EACX,IAAI,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAC7D,QAAQ,CAAC,EAAE;oBACT,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC7D,CAAC,CACF,CAAC;YACJ,CAAC;YAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,sBAAsB,CAAC;gBACpC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3C,OAAO,IAAA,cAAM,EACX,IAAI,CAAC,uBAAuB,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAC/D,QAAQ,CAAC,EAAE;oBACT,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC7D,CAAC,CACF,CAAC;YACJ,CAAC;YAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtC,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,sBAAsB,CAAC;gBACpC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3C,OAAO,IAAA,cAAM,EACX,IAAI,CAAC,uBAAuB,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAC/D,QAAQ,CAAC,EAAE;oBACT,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC7D,CAAC,CACF,CAAC;YACJ,CAAC;YAED,KAAK,OAAO;gBACV,MAAM,IAAA,iBAAS,EAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEjD;gBACE,MAAM,IAAA,qBAAa,EAAC,wBAAwB,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,wEAAwE;IAChE,kBAAkB,CACxB,SAAiB,EACjB,OAGC;QAED,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,SAAS,CAAC;QAE7B,IACE,OAAO,CAAC,IAAI,KAAK,gBAAgB;YACjC,OAAO,CAAC,IAAI,KAAK,oBAAoB;YACrC,OAAO,CAAC,IAAI,KAAK,sBAAsB;YACvC,OAAO,CAAC,IAAI,KAAK,sBAAsB,EACvC,CAAC;YACD,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC;YACvB,IAAI,CAAC,aAAa;YAClB,IAAI,KAAK,CAAC,cAAc,CAAC,EAAC,OAAO,EAAC,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;CACF;AAvND,gCAuNC"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../lib/src/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,6 @@ const proto = require("./vendor/embedded_sass_pb");
10
10
  const utils_1 = require("./utils");
11
11
  const protofier_1 = require("./protofier");
12
12
  const value_1 = require("./value");
13
- /**
14
- * The next ID to use for a function. The embedded protocol requires that
15
- * function IDs be globally unique.
16
- */
17
- let nextFunctionID = 0;
18
13
  /**
19
14
  * Tracks functions that are defined on the host so that the compiler can
20
15
  * execute them.
@@ -24,6 +19,8 @@ class FunctionRegistry {
24
19
  this.functionsByName = new Map();
25
20
  this.functionsById = new Map();
26
21
  this.idsByFunction = new Map();
22
+ /** The next ID to use for a function. */
23
+ this.id = 0;
27
24
  for (const [signature, fn] of Object.entries(functionsBySignature !== null && functionsBySignature !== void 0 ? functionsBySignature : {})) {
28
25
  const openParen = signature.indexOf('(');
29
26
  if (openParen === -1) {
@@ -35,8 +32,8 @@ class FunctionRegistry {
35
32
  /** Registers `fn` as a function that can be called using the returned ID. */
36
33
  register(fn) {
37
34
  return utils.putIfAbsent(this.idsByFunction, fn, () => {
38
- const id = nextFunctionID;
39
- nextFunctionID += 1;
35
+ const id = this.id;
36
+ this.id += 1;
40
37
  this.functionsById.set(id, fn);
41
38
  return id;
42
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"function-registry.js","sourceRoot":"","sources":["../../../lib/src/function-registry.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,+BAA6B;AAG7B,iCAAiC;AAEjC,mDAAmD;AACnD,mCAAkE;AAClE,2CAAsC;AACtC,mCAA8B;AAE9B;;;GAGG;AACH,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB;;;GAGG;AACH,MAAa,gBAAgB;IAK3B,YAAY,oBAA2D;QAJtD,oBAAe,GAAG,IAAI,GAAG,EAAgC,CAAC;QAC1D,kBAAa,GAAG,IAAI,GAAG,EAAgC,CAAC;QACxD,kBAAa,GAAG,IAAI,GAAG,EAAgC,CAAC;QAGvE,KAAK,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,aAApB,oBAAoB,cAApB,oBAAoB,GAAI,EAAE,CAAC,EAAE,CAAC;YACzE,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,kBAAkB,CAAC,CAAC;YACtE,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,QAAQ,CAAC,EAAwB;QAC/B,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,EAAE,GAAG,EAAE;YACpD,MAAM,EAAE,GAAG,cAAc,CAAC;YAC1B,cAAc,IAAI,CAAC,CAAC;YACpB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,CACF,OAAkD;QAElD,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE7B,OAAO,IAAA,eAAO,EACZ,GAAG,EAAE;YACH,OAAO,IAAA,cAAM,EACX,EAAE,CACA,OAAO,CAAC,SAAS,CAAC,GAAG,CACnB,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAgB,CACnD,CACF,EACD,MAAM,CAAC,EAAE;gBACP,IAAI,CAAC,CAAC,MAAM,YAAY,aAAK,CAAC,EAAE,CAAC;oBAC/B,MAAM,IAAI,GACR,OAAO,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM;wBAChC,CAAC,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG;wBACjC,CAAC,CAAC,oBAAoB,CAAC;oBAC3B,MAAM,CACJ,sBAAsB,IAAI,uBAAuB;wBACjD,IAAA,cAAO,EAAC,MAAM,CAAC,CAChB,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAI,KAAK,CAAC,mCAAmC,CAAC;oBACnD,MAAM,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC;oBAC3D,qBAAqB,EAAE,SAAS,CAAC,qBAAqB;iBACvD,CAAC,CAAC;YACL,CAAC,CACF,CAAC;QACJ,CAAC,EACD,KAAK,CAAC,EAAE,CACN,IAAI,KAAK,CAAC,mCAAmC,CAAC;YAC5C,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAC;SAC3C,CAAC,CACL,CAAC;IACJ,CAAC;IAED,sDAAsD;IAC9C,GAAG,CACT,OAAkD;QAElD,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC9D,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAC;YAElB,MAAM,IAAA,qBAAa,EACjB,oEAAoE;gBAClE,UAAU,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CACxC,CAAC;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACpD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAC;YAElB,MAAM,IAAA,qBAAa,EACjB,oEAAoE;gBAClE,YAAY,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CAC1C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAA,qBAAa,EACjB,sEAAsE;gBACpE,OAAO,CACV,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAhGD,4CAgGC"}
1
+ {"version":3,"file":"function-registry.js","sourceRoot":"","sources":["../../../lib/src/function-registry.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,31 @@
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.ImporterRegistry = void 0;
6
+ exports.ImporterRegistry = exports.NodePackageImporter = void 0;
7
7
  const p = require("path");
8
8
  const url_1 = require("url");
9
9
  const util_1 = require("util");
10
10
  const utils = require("./utils");
11
11
  const proto = require("./vendor/embedded_sass_pb");
12
12
  const utils_1 = require("./utils");
13
+ const entryPointDirectoryKey = Symbol();
14
+ class NodePackageImporter {
15
+ constructor(entryPointDirectory) {
16
+ var _a;
17
+ entryPointDirectory = entryPointDirectory
18
+ ? p.resolve(entryPointDirectory)
19
+ : ((_a = require.main) === null || _a === void 0 ? void 0 : _a.filename)
20
+ ? p.dirname(require.main.filename)
21
+ : undefined;
22
+ if (!entryPointDirectory) {
23
+ throw new Error('The Node package importer cannot determine an entry point ' +
24
+ 'because `require.main.filename` is not defined. ' +
25
+ 'Please provide an `entryPointDirectory` to the `NodePackageImporter`.');
26
+ }
27
+ this[entryPointDirectoryKey] = entryPointDirectory;
28
+ }
29
+ }
30
+ exports.NodePackageImporter = NodePackageImporter;
13
31
  /**
14
32
  * A registry of importers defined in the host that can be invoked by the
15
33
  * compiler.
@@ -33,7 +51,15 @@ class ImporterRegistry {
33
51
  register(importer) {
34
52
  var _a;
35
53
  const message = new proto.InboundMessage_CompileRequest_Importer();
36
- if ('canonicalize' in importer) {
54
+ if (importer instanceof NodePackageImporter) {
55
+ const importerMessage = new proto.NodePackageImporter();
56
+ importerMessage.entryPointDirectory = importer[entryPointDirectoryKey];
57
+ message.importer = {
58
+ case: 'nodePackageImporter',
59
+ value: importerMessage,
60
+ };
61
+ }
62
+ else if ('canonicalize' in importer) {
37
63
  if ('findFileUrl' in importer) {
38
64
  throw new Error('Importer may not contain both canonicalize() and findFileUrl(): ' +
39
65
  (0, util_1.inspect)(importer));
@@ -1 +1 @@
1
- {"version":3,"file":"importer-registry.js","sourceRoot":"","sources":["../../../lib/src/importer-registry.ts"],"names":[],"mappings":"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"}
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,MAAM,sBAAsB,GAAG,MAAM,EAAE,CAAC;AAExC,MAAa,mBAAmB;IAG9B,YAAY,mBAA4B;;QACtC,mBAAmB,GAAG,mBAAmB;YACvC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;YAChC,CAAC,CAAC,CAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,QAAQ;gBACxB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAClC,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,4DAA4D;gBAC1D,kDAAkD;gBAClD,uEAAuE,CAC1E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,sBAAsB,CAAC,GAAG,mBAAmB,CAAC;IACrD,CAAC;CACF;AAlBD,kDAkBC;AAED;;;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,CACd,IAAI,CAAC,QAAQ,CACX,QAAqE,CACtE,CACF;aACA,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,QAAmE;;QAEnE,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,sCAAsC,EAAE,CAAC;QACnE,IAAI,QAAQ,YAAY,mBAAmB,EAAE,CAAC;YAC5C,MAAM,eAAe,GAAG,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;YACxD,eAAe,CAAC,mBAAmB,GAAG,QAAQ,CAAC,sBAAsB,CAAC,CAAC;YACvE,OAAO,CAAC,QAAQ,GAAG;gBACjB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,eAAe;aACvB,CAAC;QACJ,CAAC;aAAM,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;YACtC,IAAI,aAAa,IAAI,QAAQ,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,kEAAkE;oBAChE,IAAA,cAAO,EAAC,QAAQ,CAAC,CACpB,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,QAAQ,GAAG,EAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC;YACxD,OAAO,CAAC,kBAAkB;gBACxB,OAAO,QAAQ,CAAC,kBAAkB,KAAK,QAAQ;oBAC7C,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBAC/B,CAAC,CAAC,MAAA,QAAQ,CAAC,kBAAkB,mCAAI,EAAE,CAAC;YACxC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,QAAQ,GAAG,EAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC;YAC5D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACb,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,0CAA0C;IAC1C,YAAY,CACV,OAAkD;QAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,aAAa,CAAC,yCAAyC,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,IAAA,eAAO,EACZ,GAAG,EAAE;YACH,OAAO,IAAA,cAAM,EACX,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE;gBACjC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;oBAClC,CAAC,CAAC,IAAI,SAAG,CAAC,OAAO,CAAC,aAAa,CAAC;oBAChC,CAAC,CAAC,IAAI;aACT,CAAC,EACF,GAAG,CAAC,EAAE,CACJ,IAAI,KAAK,CAAC,mCAAmC,CAAC;gBAC5C,MAAM,EACJ,GAAG,KAAK,IAAI;oBACV,CAAC,CAAC,EAAC,IAAI,EAAE,SAAS,EAAC;oBACnB,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAC;aAC3C,CAAC,CACL,CAAC;QACJ,CAAC,EACD,KAAK,CAAC,EAAE,CACN,IAAI,KAAK,CAAC,mCAAmC,CAAC;YAC5C,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAC;SAC3C,CAAC,CACL,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,MAAM,CACJ,OAA4C;QAE5C,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,IAAA,eAAO,EACZ,GAAG,EAAE;YACH,OAAO,IAAA,cAAM,EAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;;gBAC1D,IAAI,CAAC,MAAM;oBAAE,OAAO,IAAI,KAAK,CAAC,6BAA6B,EAAE,CAAC;gBAE9D,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACxC,MAAM,KAAK,CACT,0DACG,MAAM,CAAC,QAAe,CAAC,WAAW,CAAC,IACtC,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;oBACzD,MAAM,KAAK,CACT,6DAA6D;wBAC3D,MAAM,CAAC,YAAY,CACtB,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAI,KAAK,CAAC,6BAA6B,CAAC;oBAC7C,MAAM,EAAE;wBACN,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,IAAI,KAAK,CAAC,2CAA2C,CAAC;4BAC3D,QAAQ,EAAE,MAAM,CAAC,QAAQ;4BACzB,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC;4BAC1C,YAAY,EAAE,MAAA,MAAA,MAAM,CAAC,YAAY,0CAAE,QAAQ,EAAE,mCAAI,EAAE;yBACpD,CAAC;qBACH;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,EACD,KAAK,CAAC,EAAE,CACN,IAAI,KAAK,CAAC,6BAA6B,CAAC;YACtC,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAC;SAC3C,CAAC,CACL,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,UAAU,CACR,OAAgD;QAEhD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAA,eAAO,EACZ,GAAG,EAAE;YACH,OAAO,IAAA,cAAM,EACX,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE;gBAChC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;oBAClC,CAAC,CAAC,IAAI,SAAG,CAAC,OAAO,CAAC,aAAa,CAAC;oBAChC,CAAC,CAAC,IAAI;aACT,CAAC,EACF,GAAG,CAAC,EAAE;gBACJ,IAAI,CAAC,GAAG;oBAAE,OAAO,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC;gBAC/D,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;oBAC7B,MAAM,CACJ,gBAAgB,IAAA,cAAO,EAAC,QAAQ,CAAC,0BAA0B;wBAC3D,CAAC,IAAI,GAAG,cAAc,OAAO,CAAC,GAAG,IAAI,CACtC,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,KAAK,CAAC,iCAAiC,CAAC;oBACjD,MAAM,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAC;iBACjD,CAAC,CAAC;YACL,CAAC,CACF,CAAC;QACJ,CAAC,EACD,KAAK,CAAC,EAAE,CACN,IAAI,KAAK,CAAC,iCAAiC,CAAC;YAC1C,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAC;SAC3C,CAAC,CACL,CAAC;IACJ,CAAC;CACF;AAxLD,4CAwLC"}
@@ -7,6 +7,7 @@ exports.renderSync = exports.render = void 0;
7
7
  const fs = require("fs");
8
8
  const p = require("path");
9
9
  const url_1 = require("url");
10
+ const importer_registry_1 = require("../importer-registry");
10
11
  const exception_1 = require("../exception");
11
12
  const compile_1 = require("../compile");
12
13
  const utils_1 = require("../utils");
@@ -103,7 +104,9 @@ function convertOptions(options, sync) {
103
104
  : undefined;
104
105
  return {
105
106
  functions,
106
- importers,
107
+ importers: options.pkgImporter instanceof importer_registry_1.NodePackageImporter
108
+ ? [options.pkgImporter, ...(importers !== null && importers !== void 0 ? importers : [])]
109
+ : importers,
107
110
  sourceMap: wasSourceMapRequested(options),
108
111
  sourceMapIncludeSources: options.sourceMapContents,
109
112
  loadPaths: importers ? undefined : options.includePaths,
@@ -117,7 +120,11 @@ function convertOptions(options, sync) {
117
120
  }
118
121
  // Converts `LegacyStringOptions` into new API `StringOptions`.
119
122
  function convertStringOptions(options, sync) {
123
+ var _a;
120
124
  const modernOptions = convertOptions(options, sync);
125
+ // Find the first non-NodePackageImporter to pass as legacy `importer` option.
126
+ // NodePackageImporter will be passed in `modernOptions.importers`.
127
+ const importer = (_a = modernOptions.importers) === null || _a === void 0 ? void 0 : _a.find(_importer => !(_importer instanceof importer_registry_1.NodePackageImporter));
121
128
  return {
122
129
  ...modernOptions,
123
130
  url: options.file
@@ -125,7 +132,7 @@ function convertStringOptions(options, sync) {
125
132
  ? (0, utils_2.pathToLegacyFileUrl)(options.file)
126
133
  : (0, url_1.pathToFileURL)(options.file)
127
134
  : new url_1.URL(utils_2.legacyImporterProtocol),
128
- importer: modernOptions.importers ? modernOptions.importers[0] : undefined,
135
+ importer,
129
136
  syntax: options.indentedSyntax ? 'indented' : 'scss',
130
137
  };
131
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/src/legacy/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/src/legacy/index.ts"],"names":[],"mappings":"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"}