@angular/build 22.2.0-rc.0 → 22.2.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.
Files changed (148) hide show
  1. package/package.json +11 -11
  2. package/src/builders/application/build-action.js +14 -59
  3. package/src/builders/application/build-action.js.map +1 -1
  4. package/src/builders/application/execute-build.js +1 -1
  5. package/src/builders/application/execute-build.js.map +1 -1
  6. package/src/builders/application/execute-post-bundle.js +1 -1
  7. package/src/builders/application/execute-post-bundle.js.map +1 -1
  8. package/src/builders/application/i18n.js +5 -3
  9. package/src/builders/application/i18n.js.map +1 -1
  10. package/src/{tools/esbuild → builders/application}/index-html-generator.d.ts +2 -2
  11. package/src/{tools/esbuild → builders/application}/index-html-generator.js +1 -1
  12. package/src/builders/application/index-html-generator.js.map +1 -0
  13. package/src/builders/application/options.d.ts +5 -0
  14. package/src/builders/application/options.js +3 -24
  15. package/src/builders/application/options.js.map +1 -1
  16. package/src/builders/dev-server/internal.d.ts +1 -1
  17. package/src/builders/dev-server/internal.js +1 -1
  18. package/src/builders/dev-server/internal.js.map +1 -1
  19. package/src/builders/karma/schema.d.ts +4 -4
  20. package/src/builders/karma/schema.json +2 -2
  21. package/src/builders/unit-test/runners/vitest/build-options.js +14 -3
  22. package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -1
  23. package/src/builders/unit-test/runners/vitest/executor.js +7 -1
  24. package/src/builders/unit-test/runners/vitest/executor.js.map +1 -1
  25. package/src/builders/unit-test/runners/vitest/plugins.d.ts +1 -0
  26. package/src/builders/unit-test/runners/vitest/plugins.js +7 -2
  27. package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -1
  28. package/src/builders/unit-test/schema.d.ts +4 -3
  29. package/src/builders/unit-test/schema.js.map +1 -1
  30. package/src/builders/unit-test/schema.json +2 -2
  31. package/src/private.d.ts +2 -2
  32. package/src/private.js +2 -2
  33. package/src/private.js.map +1 -1
  34. package/src/tools/angular/compilation/aot-compilation.js +1 -1
  35. package/src/tools/angular/compilation/aot-compilation.js.map +1 -1
  36. package/src/tools/angular/compilation/compiler-options.d.ts +1 -0
  37. package/src/tools/angular/compilation/compiler-options.js.map +1 -1
  38. package/src/tools/angular/compilation/jit-compilation.js +1 -1
  39. package/src/tools/angular/compilation/jit-compilation.js.map +1 -1
  40. package/src/tools/angular/compilation/parallel-compilation.js +1 -1
  41. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -1
  42. package/src/tools/angular/compilation/parallel-worker.js +1 -1
  43. package/src/tools/angular/compilation/parallel-worker.js.map +1 -1
  44. package/src/tools/angular/compilation/typescript-compilation.js +12 -2
  45. package/src/tools/angular/compilation/typescript-compilation.js.map +1 -1
  46. package/src/tools/angular/linker/oxc-ast-host.js +41 -11
  47. package/src/tools/angular/linker/oxc-ast-host.js.map +1 -1
  48. package/src/tools/angular/linker/oxc-linker.js +28 -4
  49. package/src/tools/angular/linker/oxc-linker.js.map +1 -1
  50. package/src/tools/esbuild/angular/compiler-plugin.d.ts +1 -0
  51. package/src/tools/esbuild/angular/compiler-plugin.js +4 -3
  52. package/src/tools/esbuild/angular/compiler-plugin.js.map +1 -1
  53. package/src/tools/esbuild/angular/component-stylesheets.js +1 -1
  54. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -1
  55. package/src/tools/esbuild/bundler-execution-result.d.ts +1 -1
  56. package/src/tools/esbuild/compiler-plugin-options.js +2 -1
  57. package/src/tools/esbuild/compiler-plugin-options.js.map +1 -1
  58. package/src/tools/esbuild/i18n-locale-plugin.d.ts +1 -40
  59. package/src/tools/esbuild/i18n-locale-plugin.js +11 -101
  60. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -1
  61. package/src/tools/esbuild/persistent-load-result-cache.d.ts +1 -1
  62. package/src/tools/esbuild/persistent-load-result-cache.js +3 -17
  63. package/src/tools/esbuild/persistent-load-result-cache.js.map +1 -1
  64. package/src/tools/esbuild/stylesheets/bundle-options.d.ts +1 -0
  65. package/src/tools/esbuild/stylesheets/bundle-options.js +1 -1
  66. package/src/tools/esbuild/stylesheets/bundle-options.js.map +1 -1
  67. package/src/tools/esbuild/stylesheets/css-resource-plugin.d.ts +3 -1
  68. package/src/tools/esbuild/stylesheets/css-resource-plugin.js +4 -2
  69. package/src/tools/esbuild/stylesheets/css-resource-plugin.js.map +1 -1
  70. package/src/tools/esbuild/stylesheets/sass-language.d.ts +7 -0
  71. package/src/tools/esbuild/stylesheets/sass-language.js +34 -13
  72. package/src/tools/esbuild/stylesheets/sass-language.js.map +1 -1
  73. package/src/tools/{esbuild → i18n}/i18n-inliner-worker.js +47 -33
  74. package/src/tools/i18n/i18n-inliner-worker.js.map +1 -0
  75. package/src/tools/{esbuild → i18n}/i18n-inliner.d.ts +1 -1
  76. package/src/tools/{esbuild → i18n}/i18n-inliner.js +35 -9
  77. package/src/tools/i18n/i18n-inliner.js.map +1 -0
  78. package/src/tools/i18n/index.d.ts +11 -0
  79. package/src/tools/i18n/index.js +28 -0
  80. package/src/tools/i18n/index.js.map +1 -0
  81. package/src/tools/i18n/locale-data.d.ts +47 -0
  82. package/src/tools/i18n/locale-data.js +108 -0
  83. package/src/tools/i18n/locale-data.js.map +1 -0
  84. package/src/tools/javascript-transformer/index.d.ts +8 -0
  85. package/src/tools/javascript-transformer/index.js +25 -0
  86. package/src/tools/javascript-transformer/index.js.map +1 -0
  87. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.js +3 -2
  88. package/src/tools/javascript-transformer/javascript-transformer-worker.js.map +1 -0
  89. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.d.ts +1 -1
  90. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.js.map +1 -1
  91. package/src/tools/vite/middlewares/assets-middleware.js +1 -1
  92. package/src/tools/vite/middlewares/assets-middleware.js.map +1 -1
  93. package/src/tools/vite/middlewares/ssr-middleware.d.ts +2 -2
  94. package/src/tools/vite/middlewares/ssr-middleware.js +5 -3
  95. package/src/tools/vite/middlewares/ssr-middleware.js.map +1 -1
  96. package/src/tools/vite/plugins/setup-middlewares-plugin.js +2 -2
  97. package/src/tools/vite/plugins/setup-middlewares-plugin.js.map +1 -1
  98. package/src/tools/vite/utils.d.ts +1 -1
  99. package/src/{tools/esbuild → utils/cache}/cache.js +2 -2
  100. package/src/{tools/esbuild → utils/cache}/cache.js.map +1 -1
  101. package/src/utils/cache/index.d.ts +8 -0
  102. package/src/utils/cache/index.js +25 -0
  103. package/src/utils/cache/index.js.map +1 -0
  104. package/src/utils/concurrency.d.ts +30 -0
  105. package/src/utils/concurrency.js +81 -0
  106. package/src/utils/concurrency.js.map +1 -0
  107. package/src/utils/environment-options.d.ts +8 -0
  108. package/src/utils/environment-options.js +9 -1
  109. package/src/utils/environment-options.js.map +1 -1
  110. package/src/utils/index-file/auto-csp.d.ts +8 -0
  111. package/src/utils/index-file/auto-csp.js +34 -5
  112. package/src/utils/index-file/auto-csp.js.map +1 -1
  113. package/src/utils/normalize-cache.js +7 -2
  114. package/src/utils/normalize-cache.js.map +1 -1
  115. package/src/utils/postcss-configuration.d.ts +6 -0
  116. package/src/utils/postcss-configuration.js +23 -0
  117. package/src/utils/postcss-configuration.js.map +1 -1
  118. package/src/{tools/esbuild → utils}/profiling.js +1 -1
  119. package/src/{tools/esbuild → utils}/profiling.js.map +1 -1
  120. package/src/utils/resolve-assets.d.ts +4 -0
  121. package/src/utils/resolve-assets.js +6 -2
  122. package/src/utils/resolve-assets.js.map +1 -1
  123. package/src/utils/version.js +1 -1
  124. package/src/{tools/esbuild → utils}/watcher.d.ts +24 -0
  125. package/src/{tools/esbuild → utils}/watcher.js +239 -15
  126. package/src/utils/watcher.js.map +1 -0
  127. package/src/tools/esbuild/i18n-inliner-worker.js.map +0 -1
  128. package/src/tools/esbuild/i18n-inliner.js.map +0 -1
  129. package/src/tools/esbuild/index-html-generator.js.map +0 -1
  130. package/src/tools/esbuild/javascript-transformer-worker.js.map +0 -1
  131. package/src/tools/esbuild/watcher.js.map +0 -1
  132. /package/src/tools/{esbuild → i18n}/i18n-inliner-worker.d.ts +0 -0
  133. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.d.ts +0 -0
  134. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.js +0 -0
  135. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.js.map +0 -0
  136. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.d.ts +0 -0
  137. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.js +0 -0
  138. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.js.map +0 -0
  139. /package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.d.ts +0 -0
  140. /package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.js +0 -0
  141. /package/src/{tools/esbuild → utils/cache}/cache.d.ts +0 -0
  142. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.d.ts +0 -0
  143. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js +0 -0
  144. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js.map +0 -0
  145. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.d.ts +0 -0
  146. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.js +0 -0
  147. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.js.map +0 -0
  148. /package/src/{tools/esbuild → utils}/profiling.d.ts +0 -0
@@ -7,105 +7,15 @@
7
7
  * found in the LICENSE file at https://angular.dev/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.LOCALE_DATA_BASE_MODULE = exports.LOCALE_DATA_NAMESPACE = void 0;
11
- exports.resolveLocaleDataPath = resolveLocaleDataPath;
12
- exports.loadLocaleData = loadLocaleData;
10
+ exports.resolveLocaleDataPath = exports.loadLocaleData = exports.LOCALE_DATA_BASE_MODULE = exports.LOCALE_DATA_NAMESPACE = void 0;
13
11
  exports.createAngularLocaleDataPlugin = createAngularLocaleDataPlugin;
14
- const promises_1 = require("node:fs/promises");
15
12
  const resolve_project_1 = require("../../utils/resolve-project");
16
- /**
17
- * The internal namespace used by generated locale import statements and Angular locale data plugin.
18
- */
19
- exports.LOCALE_DATA_NAMESPACE = 'angular:locale/data';
20
- /**
21
- * The base module location used to search for locale specific data.
22
- */
23
- exports.LOCALE_DATA_BASE_MODULE = '@angular/common/locales/global';
24
- const localeDataCache = new Map();
25
- /**
26
- * Resolves the path to the Angular locale data file for a given locale tag.
27
- *
28
- * @param rawLocaleTag The raw locale identifier (e.g. "fr-CA", "de", "en-US").
29
- * @param projectResolve A function that attempts to resolve a path string to an absolute file path.
30
- * @returns Resolution result with file path, or warning/error diagnostics if applicable.
31
- */
32
- function resolveLocaleDataPath(rawLocaleTag, projectResolve) {
33
- let partialLocaleTag;
34
- try {
35
- const locale = new Intl.Locale(rawLocaleTag);
36
- partialLocaleTag = locale.baseName;
37
- }
38
- catch {
39
- return {
40
- error: `Invalid or unsupported locale provided in configuration: "${rawLocaleTag}"`,
41
- };
42
- }
43
- let exact = true;
44
- while (partialLocaleTag) {
45
- // Angular embeds the `en`/`en-US` locale into the framework and it does not need to be included again here.
46
- if (partialLocaleTag === 'en' || partialLocaleTag === 'en-US') {
47
- return {};
48
- }
49
- const potentialPath = `${exports.LOCALE_DATA_BASE_MODULE}/${partialLocaleTag}`;
50
- try {
51
- const resolvedPath = projectResolve(potentialPath);
52
- if (resolvedPath) {
53
- return {
54
- path: resolvedPath,
55
- warning: exact
56
- ? undefined
57
- : `Locale data for '${rawLocaleTag}' cannot be found. Using locale data for '${partialLocaleTag}'.`,
58
- };
59
- }
60
- }
61
- catch { }
62
- // Remove the last subtag and try again with a less specific locale.
63
- const parts = partialLocaleTag.split('-');
64
- partialLocaleTag = parts.slice(0, -1).join('-');
65
- exact = false;
66
- }
67
- return {
68
- warning: `Locale data for '${rawLocaleTag}' cannot be found. No locale data will be included for this locale.`,
69
- };
70
- }
71
- /**
72
- * Loads the Angular global locale data script for a specified locale tag.
73
- *
74
- * @param rawLocaleTag The raw locale identifier (e.g. "fr-CA", "de", "en-US").
75
- * @param projectRoot Optional project root for module resolution.
76
- * @returns A promise resolving to the loaded locale data script code and any diagnostic warnings.
77
- */
78
- function loadLocaleData(rawLocaleTag, projectRoot) {
79
- let cached = localeDataCache.get(rawLocaleTag);
80
- if (!cached) {
81
- cached = (async () => {
82
- const projectResolve = (0, resolve_project_1.createProjectResolver)(projectRoot ?? process.cwd());
83
- const resolution = resolveLocaleDataPath(rawLocaleTag, (potentialPath) => {
84
- try {
85
- return projectResolve(potentialPath);
86
- }
87
- catch {
88
- return undefined;
89
- }
90
- });
91
- if (resolution.error) {
92
- return { error: resolution.error };
93
- }
94
- if (resolution.path) {
95
- try {
96
- const code = await (0, promises_1.readFile)(resolution.path, 'utf8');
97
- return { code, warning: resolution.warning };
98
- }
99
- catch (e) {
100
- return { error: `Failed to read locale data file: ${e.message}` };
101
- }
102
- }
103
- return { warning: resolution.warning };
104
- })();
105
- localeDataCache.set(rawLocaleTag, cached);
106
- }
107
- return cached;
108
- }
13
+ const locale_data_1 = require("../i18n/locale-data");
14
+ var locale_data_2 = require("../i18n/locale-data");
15
+ Object.defineProperty(exports, "LOCALE_DATA_NAMESPACE", { enumerable: true, get: function () { return locale_data_2.LOCALE_DATA_NAMESPACE; } });
16
+ Object.defineProperty(exports, "LOCALE_DATA_BASE_MODULE", { enumerable: true, get: function () { return locale_data_2.LOCALE_DATA_BASE_MODULE; } });
17
+ Object.defineProperty(exports, "loadLocaleData", { enumerable: true, get: function () { return locale_data_2.loadLocaleData; } });
18
+ Object.defineProperty(exports, "resolveLocaleDataPath", { enumerable: true, get: function () { return locale_data_2.resolveLocaleDataPath; } });
109
19
  /**
110
20
  * Creates an esbuild plugin that resolves Angular locale data files from `@angular/common`.
111
21
  *
@@ -119,7 +29,7 @@ function createAngularLocaleDataPlugin() {
119
29
  const rawLocaleTag = path.split(':', 3)[2];
120
30
  const { absWorkingDir } = build.initialOptions;
121
31
  let projectResolve;
122
- const resolution = resolveLocaleDataPath(rawLocaleTag, (potentialPath) => {
32
+ const resolution = (0, locale_data_1.resolveLocaleDataPath)(rawLocaleTag, (potentialPath) => {
123
33
  projectResolve ??= (0, resolve_project_1.createProjectResolver)(absWorkingDir ?? process.cwd());
124
34
  try {
125
35
  return projectResolve(potentialPath);
@@ -131,14 +41,14 @@ function createAngularLocaleDataPlugin() {
131
41
  if (resolution.error) {
132
42
  return {
133
43
  path: rawLocaleTag,
134
- namespace: exports.LOCALE_DATA_NAMESPACE,
44
+ namespace: locale_data_1.LOCALE_DATA_NAMESPACE,
135
45
  errors: [{ text: resolution.error }],
136
46
  };
137
47
  }
138
48
  if (!resolution.path) {
139
49
  return {
140
50
  path: rawLocaleTag,
141
- namespace: exports.LOCALE_DATA_NAMESPACE,
51
+ namespace: locale_data_1.LOCALE_DATA_NAMESPACE,
142
52
  warnings: resolution.warning
143
53
  ? [{ location: null, text: resolution.warning }]
144
54
  : undefined,
@@ -150,7 +60,7 @@ function createAngularLocaleDataPlugin() {
150
60
  };
151
61
  });
152
62
  // Locales that cannot be found or are en/en-US will be loaded as empty content
153
- build.onLoad({ filter: /./, namespace: exports.LOCALE_DATA_NAMESPACE }, () => ({
63
+ build.onLoad({ filter: /./, namespace: locale_data_1.LOCALE_DATA_NAMESPACE }, () => ({
154
64
  contents: '',
155
65
  loader: 'empty',
156
66
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-locale-plugin.js","sourceRoot":"","sources":["i18n-locale-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n-locale-plugin.js","sourceRoot":"","sources":["i18n-locale-plugin.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AA0BH,sEAiDC;AAxED,iEAAoE;AACpE,qDAM6B;AAE7B,mDAO6B;AAN3B,oHAAA,qBAAqB,OAAA;AACrB,sHAAA,uBAAuB,OAAA;AAGvB,6GAAA,cAAc,OAAA;AACd,oHAAA,qBAAqB,OAAA;AAGvB;;;;GAIG;AACH,SAAgB,6BAA6B;IAC3C,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,KAAK,CAAC,KAAK;YACT,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBACvE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC;gBAC/C,IAAI,cAA6D,CAAC;gBAElE,MAAM,UAAU,GAAG,IAAA,mCAAqB,EAAC,YAAY,EAAE,CAAC,aAAa,EAAE,EAAE;oBACvE,cAAc,KAAK,IAAA,uCAAqB,EAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;oBACzE,IAAI,CAAC;wBACH,OAAO,cAAc,CAAC,aAAa,CAAC,CAAC;oBACvC,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,SAAS,CAAC;oBACnB,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;oBACrB,OAAO;wBACL,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,mCAAqB;wBAChC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;qBACrC,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrB,OAAO;wBACL,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,mCAAqB;wBAChC,QAAQ,EAAE,UAAU,CAAC,OAAO;4BAC1B,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;4BAChD,CAAC,CAAC,SAAS;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;iBAC1F,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,+EAA+E;YAC/E,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,mCAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;gBACrE,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC,CAAC;QACN,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -26,7 +26,7 @@
26
26
  * - {@link CachedDependencyMetadata}: Per-dependency file metadata (`hash`, `mtimeMs`, `size`) used for cache validation and healing.
27
27
  */
28
28
  import type { Loader, OnLoadResult, PartialMessage } from 'esbuild';
29
- import type { Cache as PersistentCacheStore } from './cache';
29
+ import type { Cache as PersistentCacheStore } from '../../utils/cache';
30
30
  import { LoadResultCache } from './load-result-cache';
31
31
  /**
32
32
  * Metadata for a single watch file dependency.
@@ -12,6 +12,7 @@ exports.extractDiskFilePath = extractDiskFilePath;
12
12
  const promises_1 = require("node:fs/promises");
13
13
  const node_path_1 = require("node:path");
14
14
  const node_url_1 = require("node:url");
15
+ const concurrency_1 = require("../../utils/concurrency");
15
16
  const hash_1 = require("../../utils/hash");
16
17
  const load_result_cache_1 = require("./load-result-cache");
17
18
  /**
@@ -52,21 +53,6 @@ function extractDiskFilePath(path) {
52
53
  }
53
54
  /** Maximum number of concurrent file system read/stat operations to prevent OS file descriptor exhaustion. */
54
55
  const MAX_CONCURRENT_READS = 16;
55
- /**
56
- * Maps an array asynchronously with a sliding worker pool to maintain full concurrency saturation.
57
- */
58
- async function mapConcurrent(items, limit, fn) {
59
- const results = new Array(items.length);
60
- let index = 0;
61
- const workers = Array.from({ length: Math.min(limit, items.length) }, async () => {
62
- while (index < items.length) {
63
- const i = index++;
64
- results[i] = await fn(items[i]);
65
- }
66
- });
67
- await Promise.all(workers);
68
- return results;
69
- }
70
56
  /**
71
57
  * Validates that all imported watch files exist on disk and their contents match.
72
58
  * Performs a fast-path metadata check (mtime + size) first, falling back to content hashing.
@@ -78,7 +64,7 @@ async function validateAndHealCacheEntry(watchFilesMetadata, store, cacheKey, ca
78
64
  }
79
65
  const watchFiles = Object.keys(watchFilesMetadata);
80
66
  let healed = false;
81
- const isValidResults = await mapConcurrent(watchFiles, MAX_CONCURRENT_READS, async (filePath) => {
67
+ const isValidResults = await (0, concurrency_1.mapConcurrent)(watchFiles, MAX_CONCURRENT_READS, async (filePath) => {
82
68
  try {
83
69
  const stats = await (0, promises_1.stat)(filePath);
84
70
  const expected = watchFilesMetadata[filePath];
@@ -127,7 +113,7 @@ async function validateAndHealCacheEntry(watchFilesMetadata, store, cacheKey, ca
127
113
  */
128
114
  async function computeMetadataForWatchFiles(watchFiles, knownContents) {
129
115
  const watchFilesMetadata = {};
130
- await mapConcurrent(watchFiles, MAX_CONCURRENT_READS, async (filePath) => {
116
+ await (0, concurrency_1.runConcurrent)(watchFiles, MAX_CONCURRENT_READS, async (filePath) => {
131
117
  try {
132
118
  const knownContent = knownContents?.get(filePath);
133
119
  const [content, stats] = await Promise.all([
@@ -1 +1 @@
1
- {"version":3,"file":"persistent-load-result-cache.js","sourceRoot":"","sources":["persistent-load-result-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistent-load-result-cache.js","sourceRoot":"","sources":["persistent-load-result-cache.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface BundleStylesheetOptions {
14
14
  workspaceRoot: string;
15
15
  optimization: boolean;
16
16
  inlineFonts: boolean;
17
+ dataurl?: boolean;
17
18
  preserveSymlinks?: boolean;
18
19
  sourcemap: boolean | 'external' | 'inline' | 'linked';
19
20
  sourcesContent?: boolean;
@@ -33,7 +33,7 @@ function createStylesheetBundleOptions(options, cache, inlineComponentData) {
33
33
  pluginFactory.create(sass_language_1.SassStylesheetLanguage),
34
34
  pluginFactory.create(less_language_1.LessStylesheetLanguage),
35
35
  pluginFactory.create(css_language_1.CssStylesheetLanguage),
36
- (0, css_resource_plugin_1.createCssResourcePlugin)(cache),
36
+ (0, css_resource_plugin_1.createCssResourcePlugin)(cache, options.dataurl),
37
37
  ];
38
38
  if (options.inlineFonts) {
39
39
  plugins.unshift((0, css_inline_fonts_plugin_1.createCssInlineFontsPlugin)({ cache, cacheOptions: options.cacheOptions }));
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-options.js","sourceRoot":"","sources":["bundle-options.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAgCH,sEAyDC;AAtFD,0DAA6B;AAI7B,uEAAuE;AACvE,iDAAuD;AACvD,+DAAgE;AAChE,mDAAyD;AACzD,mDAAyD;AACzD,2EAA4F;AAoB5F,SAAgB,6BAA6B,CAC3C,OAAgC,EAChC,KAAuB,EACvB,mBAA4C;IAE5C,6EAA6E;IAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7D,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC,CACjD,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,mDAAuB,CAC/C;QACE,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS;QAC9B,YAAY;QACZ,mBAAmB;QACnB,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,EACD,KAAK,CACN,CAAC;IAEF,MAAM,OAAO,GAAa;QACxB,aAAa,CAAC,MAAM,CAAC,sCAAsB,CAAC;QAC5C,aAAa,CAAC,MAAM,CAAC,sCAAsB,CAAC;QAC5C,aAAa,CAAC,MAAM,CAAC,oCAAqB,CAAC;QAC3C,IAAA,6CAAuB,EAAC,KAAK,CAAC;KAC/B,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,OAAO,CAAC,IAAA,oDAA0B,EAAC,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;QACvC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK;QACrC,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,OAAO,CAAC,YAAY;QAC5B,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,aAAa;QAC7B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,OAAO,CAAC,oBAAoB;QACtC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC;QAC1F,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC7B,6EAA6E;QAC7E,gFAAgF;QAChF,iBAAiB,EAAE,EAAE;QACrB,OAAO;KACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bundle-options.js","sourceRoot":"","sources":["bundle-options.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAiCH,sEAyDC;AAvFD,0DAA6B;AAI7B,uEAAuE;AACvE,iDAAuD;AACvD,+DAAgE;AAChE,mDAAyD;AACzD,mDAAyD;AACzD,2EAA4F;AAqB5F,SAAgB,6BAA6B,CAC3C,OAAgC,EAChC,KAAuB,EACvB,mBAA4C;IAE5C,6EAA6E;IAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC7D,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC,CACjD,CAAC;IAEF,MAAM,aAAa,GAAG,IAAI,mDAAuB,CAC/C;QACE,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS;QAC9B,YAAY;QACZ,mBAAmB;QACnB,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,EACD,KAAK,CACN,CAAC;IAEF,MAAM,OAAO,GAAa;QACxB,aAAa,CAAC,MAAM,CAAC,sCAAsB,CAAC;QAC5C,aAAa,CAAC,MAAM,CAAC,sCAAsB,CAAC;QAC5C,aAAa,CAAC,MAAM,CAAC,oCAAqB,CAAC;QAC3C,IAAA,6CAAuB,EAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;KAChD,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,OAAO,CAAC,IAAA,oDAA0B,EAAC,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;QACvC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK;QACrC,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,OAAO,CAAC,YAAY;QAC5B,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,aAAa;QAC7B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,OAAO,CAAC,oBAAoB;QACtC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC;QAC1F,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC7B,6EAA6E;QAC7E,gFAAgF;QAChF,iBAAiB,EAAE,EAAE;QACrB,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -13,6 +13,8 @@ import { LoadResultCache } from '../load-result-cache';
13
13
  * and types to be supported without needing to manually specify all extensions
14
14
  * within the build configuration.
15
15
  *
16
+ * @param cache An optional load result cache.
17
+ * @param dataurl If true, resources will be loaded with the 'dataurl' loader to inline them as base64 data URIs.
16
18
  * @returns An esbuild {@link Plugin} instance.
17
19
  */
18
- export declare function createCssResourcePlugin(cache?: LoadResultCache): Plugin;
20
+ export declare function createCssResourcePlugin(cache?: LoadResultCache, dataurl?: boolean): Plugin;
@@ -23,9 +23,11 @@ const CSS_RESOURCE_RESOLUTION = Symbol('CSS_RESOURCE_RESOLUTION');
23
23
  * and types to be supported without needing to manually specify all extensions
24
24
  * within the build configuration.
25
25
  *
26
+ * @param cache An optional load result cache.
27
+ * @param dataurl If true, resources will be loaded with the 'dataurl' loader to inline them as base64 data URIs.
26
28
  * @returns An esbuild {@link Plugin} instance.
27
29
  */
28
- function createCssResourcePlugin(cache) {
30
+ function createCssResourcePlugin(cache, dataurl) {
29
31
  return {
30
32
  name: 'angular-css-resource',
31
33
  setup(build) {
@@ -104,7 +106,7 @@ function createCssResourcePlugin(cache) {
104
106
  const resourcePath = (0, node_path_1.join)(build.initialOptions.absWorkingDir ?? '', args.path);
105
107
  return {
106
108
  contents: await (0, promises_1.readFile)(resourcePath),
107
- loader: 'file',
109
+ loader: dataurl ? 'dataurl' : 'file',
108
110
  watchFiles: [resourcePath],
109
111
  };
110
112
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"css-resource-plugin.js","sourceRoot":"","sources":["css-resource-plugin.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAuBH,0DAmGC;AAvHD,+CAA4C;AAC5C,yCAAoD;AACpD,4DAAyE;AAEzE,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AAEtD;;;GAGG;AACH,MAAM,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAElE;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CAAC,KAAuB;IAC7D,OAAO;QACL,IAAI,EAAE,sBAAsB;QAC5B,KAAK,CAAC,KAAkB;YACtB,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC/C,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC;gBAE9E,kEAAkE;gBAClE,yEAAyE;gBACzE,IAAI,IAAI,KAAK,WAAW,IAAI,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;oBAChE,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBAC5D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC9B,gEAAgE;oBAChE,iDAAiD;oBACjD,WAAW,GAAG,aAAa,CAAC;oBAC5B,aAAa,GAAG,EAAE,CAAC;gBACrB,CAAC;gBAED,qFAAqF;gBACrF,qBAAqB;gBACrB,IAAI,qCAAqC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC5D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,QAAQ,EAAE,IAAI;qBACf,CAAC;gBACJ,CAAC;gBAED,UAAU,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;gBAE3C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;oBAC9C,QAAQ;oBACR,IAAI;oBACJ,SAAS;oBACT,UAAU;oBACV,UAAU,EAAE,IAAA,gBAAI,EAAC,UAAU,EAAE,aAAa,CAAC;iBAC5C,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACzB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC/B,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBAC3B,KAAK,CAAC,KAAK,GAAG;4BACZ;gCACE,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,mGAAmG;6BAC1G;yBACF,CAAC;oBACJ,CAAC;yBAAM,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBAClC,KAAK,CAAC,KAAK,GAAG;4BACZ;gCACE,QAAQ,EAAE,IAAI;gCACd,IAAI,EACF,uFAAuF;oCACvF,kCAAkC;6BACrC;yBACF,CAAC;oBACJ,CAAC;oBAED,MAAM,SAAS,GAAG,QAAQ,IAAI,IAAA,mBAAO,EAAC,QAAQ,CAAC,CAAC;oBAChD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;wBACzB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;4BACf,QAAQ,EAAE,IAAI;4BACd,IAAI,EAAE,6EAA6E;yBACpF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,2FAA2F;gBAC3F,uCAAuC;gBACvC,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;oBAChC,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAED,uFAAuF;gBACvF,OAAO;oBACL,GAAG,MAAM;oBACT,yFAAyF;oBACzF,wFAAwF;oBACxF,IAAI,EAAE,IAAA,oBAAQ,EAAC,KAAK,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC;oBACrE,SAAS,EAAE,sBAAsB;iBAClC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,MAAM,CACV,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,sBAAsB,EAAE,EAClD,IAAA,oCAAgB,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACrC,MAAM,YAAY,GAAG,IAAA,gBAAI,EAAC,KAAK,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE/E,OAAO;oBACL,QAAQ,EAAE,MAAM,IAAA,mBAAQ,EAAC,YAAY,CAAC;oBACtC,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,CAAC,YAAY,CAAC;iBAC3B,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"css-resource-plugin.js","sourceRoot":"","sources":["css-resource-plugin.ts"],"names":[],"mappings":"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"}
@@ -10,3 +10,10 @@ export declare function resetSassWorkerPoolCaches(): void;
10
10
  export declare function shutdownSassWorkerPool(): void;
11
11
  export declare const SassStylesheetLanguage: Readonly<StylesheetLanguage>;
12
12
  export declare function isPackageUrl(url: string): boolean;
13
+ /**
14
+ * Returns the scope that qualifies the cached package resolutions of a stylesheet. A stylesheet
15
+ * within `node_modules` uses the root of its enclosing package, since every file of a package
16
+ * resolves its dependencies against the same `node_modules` directories. All other stylesheets use
17
+ * the working directory, allowing component stylesheets to share package resolutions.
18
+ */
19
+ export declare function getPackageScope(containingPath: string | undefined, workingDirectory: string | undefined): string;
@@ -44,9 +44,10 @@ exports.SassStylesheetLanguage = void 0;
44
44
  exports.resetSassWorkerPoolCaches = resetSassWorkerPoolCaches;
45
45
  exports.shutdownSassWorkerPool = shutdownSassWorkerPool;
46
46
  exports.isPackageUrl = isPackageUrl;
47
+ exports.getPackageScope = getPackageScope;
47
48
  const node_path_1 = require("node:path");
48
49
  const node_url_1 = require("node:url");
49
- const cache_1 = require("../cache");
50
+ const cache_1 = require("../../../utils/cache");
50
51
  let sassService;
51
52
  let sassServicePromise;
52
53
  let resolutionCache;
@@ -81,11 +82,7 @@ exports.SassStylesheetLanguage = Object.freeze({
81
82
  fileFilter: /\.s[ac]ss$/,
82
83
  process(data, file, format, options, build) {
83
84
  const syntax = format === 'sass' ? 'indented' : 'scss';
84
- const resolveUrl = async (url, options) => {
85
- let resolveDir = build.initialOptions.absWorkingDir;
86
- if (options.containingUrl) {
87
- resolveDir = (0, node_path_1.dirname)((0, node_url_1.fileURLToPath)(options.containingUrl));
88
- }
85
+ const resolveUrl = async (url, resolveDir) => {
89
86
  const path = url.startsWith('pkg:') ? url.slice(4) : url;
90
87
  const result = await build.resolve(path, {
91
88
  kind: 'import-rule',
@@ -93,7 +90,7 @@ exports.SassStylesheetLanguage = Object.freeze({
93
90
  });
94
91
  return result;
95
92
  };
96
- return compileString(data, file, syntax, options, resolveUrl);
93
+ return compileString(data, file, syntax, options, resolveUrl, build.initialOptions.absWorkingDir);
97
94
  },
98
95
  });
99
96
  function isPackageUrl(url) {
@@ -118,7 +115,23 @@ function parsePackageName(url) {
118
115
  },
119
116
  };
120
117
  }
121
- async function compileString(data, filePath, syntax, options, resolveUrl) {
118
+ /**
119
+ * Returns the scope that qualifies the cached package resolutions of a stylesheet. A stylesheet
120
+ * within `node_modules` uses the root of its enclosing package, since every file of a package
121
+ * resolves its dependencies against the same `node_modules` directories. All other stylesheets use
122
+ * the working directory, allowing component stylesheets to share package resolutions.
123
+ */
124
+ function getPackageScope(containingPath, workingDirectory) {
125
+ // The directory segments of the stylesheet, excluding the file name
126
+ const segments = containingPath?.split(/[\\/]/).slice(0, -1) ?? [];
127
+ const index = segments.lastIndexOf('node_modules');
128
+ if (index === -1) {
129
+ return workingDirectory ?? '';
130
+ }
131
+ const packageNameLength = segments[index + 1]?.[0] === '@' ? 2 : 1;
132
+ return segments.slice(0, index + 1 + packageNameLength).join('/');
133
+ }
134
+ async function compileString(data, filePath, syntax, options, resolveUrl, workingDirectory) {
122
135
  // Lazily load Sass when a Sass file is found
123
136
  if (sassService === undefined) {
124
137
  if (sassServicePromise === undefined) {
@@ -132,7 +145,8 @@ async function compileString(data, filePath, syntax, options, resolveUrl) {
132
145
  }
133
146
  }
134
147
  // Caching follows Sass behavior where a given package url will always resolve to the same value
135
- // regardless of its importer's path. Relative paths are qualified with the containing URL.
148
+ // regardless of its importer's path, except for importers within `node_modules`, which are
149
+ // scoped to their enclosing package. Relative paths are qualified with the containing URL.
136
150
  // A null value indicates that the cached resolution attempt failed to find a location and
137
151
  // later stage resolution should be attempted. This avoids potentially expensive repeat
138
152
  // failing resolution attempts.
@@ -157,10 +171,17 @@ async function compileString(data, filePath, syntax, options, resolveUrl) {
157
171
  importers: [
158
172
  {
159
173
  findFileUrl: (url, options) => {
174
+ const containingPath = options.containingUrl?.protocol === 'file:'
175
+ ? (0, node_url_1.fileURLToPath)(options.containingUrl)
176
+ : undefined;
177
+ const resolveDir = containingPath ? (0, node_path_1.dirname)(containingPath) : workingDirectory;
160
178
  const isPackage = isPackageUrl(url);
161
- const cacheKey = isPackage ? url : `${options.containingUrl?.href ?? ''}:${url}`;
179
+ const scope = getPackageScope(containingPath, workingDirectory);
180
+ const cacheKey = isPackage
181
+ ? `${scope}:${url}`
182
+ : `${options.containingUrl?.href ?? ''}:${url}`;
162
183
  return currentResolutionCache.getOrCreate(cacheKey, async () => {
163
- const result = await resolveUrl(url, options);
184
+ const result = await resolveUrl(url, resolveDir);
164
185
  if (result.path) {
165
186
  return (0, node_url_1.pathToFileURL)(result.path);
166
187
  }
@@ -171,9 +192,9 @@ async function compileString(data, filePath, syntax, options, resolveUrl) {
171
192
  const { packageName, pathSegments } = parsePackageName(url);
172
193
  // Caching package root locations is particularly beneficial for `@material/*` packages
173
194
  // which extensively use deep imports.
174
- const packageRoot = await currentPackageRootCache.getOrCreate(packageName, async () => {
195
+ const packageRoot = await currentPackageRootCache.getOrCreate(`${scope}:${packageName}`, async () => {
175
196
  // Use the required presence of a package root `package.json` file to resolve the location
176
- const packageResult = await resolveUrl(packageName + '/package.json', options);
197
+ const packageResult = await resolveUrl(packageName + '/package.json', resolveDir);
177
198
  return packageResult.path ? (0, node_path_1.dirname)(packageResult.path) : null;
178
199
  });
179
200
  // Package not found could be because of an error or the specifier is intended to be found
@@ -1 +1 @@
1
- {"version":3,"file":"sass-language.js","sourceRoot":"","sources":["sass-language.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sass-language.js","sourceRoot":"","sources":["sass-language.ts"],"names":[],"mappings":"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"}