@depup/angular__build 21.2.7-depup.0 → 22.0.7-depup.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 (164) hide show
  1. package/README.md +19 -14
  2. package/changes.json +49 -29
  3. package/package.json +87 -66
  4. package/src/builders/application/build-action.js +61 -46
  5. package/src/builders/application/build-action.js.map +1 -1
  6. package/src/builders/application/chunk-optimizer.js +104 -45
  7. package/src/builders/application/chunk-optimizer.js.map +1 -1
  8. package/src/builders/application/execute-build.js +33 -9
  9. package/src/builders/application/execute-build.js.map +1 -1
  10. package/src/builders/application/execute-post-bundle.d.ts +2 -2
  11. package/src/builders/application/execute-post-bundle.js +6 -7
  12. package/src/builders/application/execute-post-bundle.js.map +1 -1
  13. package/src/builders/application/i18n.d.ts +1 -1
  14. package/src/builders/application/i18n.js +2 -2
  15. package/src/builders/application/i18n.js.map +1 -1
  16. package/src/builders/application/index.js +49 -40
  17. package/src/builders/application/index.js.map +1 -1
  18. package/src/builders/application/options.d.ts +8 -3
  19. package/src/builders/application/options.js +5 -5
  20. package/src/builders/application/options.js.map +1 -1
  21. package/src/builders/application/results.d.ts +1 -1
  22. package/src/builders/application/schema.d.ts +2 -6
  23. package/src/builders/application/schema.js +6 -8
  24. package/src/builders/application/schema.js.map +1 -1
  25. package/src/builders/application/schema.json +2 -2
  26. package/src/builders/dev-server/internal.d.ts +1 -1
  27. package/src/builders/dev-server/internal.js +2 -2
  28. package/src/builders/dev-server/internal.js.map +1 -1
  29. package/src/builders/dev-server/options.js +11 -2
  30. package/src/builders/dev-server/options.js.map +1 -1
  31. package/src/builders/dev-server/vite/server.js +0 -3
  32. package/src/builders/dev-server/vite/server.js.map +1 -1
  33. package/src/builders/karma/application_builder.js +9 -0
  34. package/src/builders/karma/application_builder.js.map +1 -1
  35. package/src/builders/karma/progress-reporter.js +1 -3
  36. package/src/builders/karma/progress-reporter.js.map +1 -1
  37. package/src/builders/unit-test/builder.js +10 -4
  38. package/src/builders/unit-test/builder.js.map +1 -1
  39. package/src/builders/unit-test/options.d.ts +3 -0
  40. package/src/builders/unit-test/options.js +7 -1
  41. package/src/builders/unit-test/options.js.map +1 -1
  42. package/src/builders/unit-test/runners/dependency-checker.js +2 -2
  43. package/src/builders/unit-test/runners/dependency-checker.js.map +1 -1
  44. package/src/builders/unit-test/runners/karma/executor.js +1 -1
  45. package/src/builders/unit-test/runners/karma/executor.js.map +1 -1
  46. package/src/builders/unit-test/runners/vitest/browser-provider.d.ts +1 -0
  47. package/src/builders/unit-test/runners/vitest/browser-provider.js +3 -2
  48. package/src/builders/unit-test/runners/vitest/browser-provider.js.map +1 -1
  49. package/src/builders/unit-test/runners/vitest/build-options.d.ts +10 -0
  50. package/src/builders/unit-test/runners/vitest/build-options.js +125 -8
  51. package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -1
  52. package/src/builders/unit-test/runners/vitest/executor.js +3 -1
  53. package/src/builders/unit-test/runners/vitest/executor.js.map +1 -1
  54. package/src/builders/unit-test/runners/vitest/index.js +1 -1
  55. package/src/builders/unit-test/runners/vitest/index.js.map +1 -1
  56. package/src/builders/unit-test/runners/vitest/plugins.d.ts +2 -0
  57. package/src/builders/unit-test/runners/vitest/plugins.js +88 -31
  58. package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -1
  59. package/src/builders/unit-test/schema.d.ts +13 -2
  60. package/src/builders/unit-test/schema.js.map +1 -1
  61. package/src/builders/unit-test/schema.json +9 -1
  62. package/src/index.d.ts +1 -1
  63. package/src/index.js +2 -2
  64. package/src/index.js.map +1 -1
  65. package/src/tools/angular/compilation/aot-compilation.js +1 -1
  66. package/src/tools/angular/compilation/aot-compilation.js.map +1 -1
  67. package/src/tools/angular/compilation/jit-compilation.js.map +1 -1
  68. package/src/tools/angular/compilation/parallel-compilation.js +7 -2
  69. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -1
  70. package/src/tools/angular/compilation/parallel-worker.d.ts +1 -0
  71. package/src/tools/angular/compilation/parallel-worker.js +6 -1
  72. package/src/tools/angular/compilation/parallel-worker.js.map +1 -1
  73. package/src/tools/babel/plugins/add-code-coverage.d.ts +1 -1
  74. package/src/tools/babel/plugins/add-code-coverage.js +2 -3
  75. package/src/tools/babel/plugins/add-code-coverage.js.map +1 -1
  76. package/src/tools/babel/plugins/elide-angular-metadata.d.ts +4 -2
  77. package/src/tools/babel/plugins/elide-angular-metadata.js +2 -2
  78. package/src/tools/babel/plugins/elide-angular-metadata.js.map +1 -1
  79. package/src/tools/esbuild/angular/component-stylesheets.js +2 -1
  80. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -1
  81. package/src/tools/esbuild/angular-localize-init-warning-plugin.js +3 -0
  82. package/src/tools/esbuild/angular-localize-init-warning-plugin.js.map +1 -1
  83. package/src/tools/esbuild/application-code-bundle.js +9 -11
  84. package/src/tools/esbuild/application-code-bundle.js.map +1 -1
  85. package/src/tools/esbuild/budget-stats.d.ts +1 -1
  86. package/src/tools/esbuild/budget-stats.js +2 -2
  87. package/src/tools/esbuild/budget-stats.js.map +1 -1
  88. package/src/tools/esbuild/bundler-context.d.ts +2 -21
  89. package/src/tools/esbuild/bundler-context.js +35 -31
  90. package/src/tools/esbuild/bundler-context.js.map +1 -1
  91. package/src/tools/esbuild/bundler-execution-result.d.ts +3 -2
  92. package/src/tools/esbuild/bundler-execution-result.js +2 -2
  93. package/src/tools/esbuild/bundler-execution-result.js.map +1 -1
  94. package/src/tools/esbuild/bundler-files.d.ts +30 -0
  95. package/src/tools/esbuild/bundler-files.js +113 -0
  96. package/src/tools/esbuild/bundler-files.js.map +1 -0
  97. package/src/tools/esbuild/cache.d.ts +5 -0
  98. package/src/tools/esbuild/cache.js +82 -6
  99. package/src/tools/esbuild/cache.js.map +1 -1
  100. package/src/tools/esbuild/i18n-inliner-worker.js +3 -1
  101. package/src/tools/esbuild/i18n-inliner-worker.js.map +1 -1
  102. package/src/tools/esbuild/i18n-inliner.d.ts +1 -1
  103. package/src/tools/esbuild/i18n-inliner.js +4 -5
  104. package/src/tools/esbuild/i18n-inliner.js.map +1 -1
  105. package/src/tools/esbuild/i18n-locale-plugin.js +16 -4
  106. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -1
  107. package/src/tools/esbuild/index-html-generator.d.ts +1 -1
  108. package/src/tools/esbuild/index-html-generator.js +19 -2
  109. package/src/tools/esbuild/index-html-generator.js.map +1 -1
  110. package/src/tools/esbuild/javascript-transformer-worker.js +21 -2
  111. package/src/tools/esbuild/javascript-transformer-worker.js.map +1 -1
  112. package/src/tools/esbuild/javascript-transformer.js +84 -41
  113. package/src/tools/esbuild/javascript-transformer.js.map +1 -1
  114. package/src/tools/esbuild/profiling.d.ts +2 -0
  115. package/src/tools/esbuild/profiling.js +21 -0
  116. package/src/tools/esbuild/profiling.js.map +1 -1
  117. package/src/tools/esbuild/utils.d.ts +3 -15
  118. package/src/tools/esbuild/utils.js +5 -115
  119. package/src/tools/esbuild/utils.js.map +1 -1
  120. package/src/tools/esbuild/watcher.js +1 -1
  121. package/src/tools/esbuild/watcher.js.map +1 -1
  122. package/src/tools/vite/plugins/id-prefix-plugin.d.ts +7 -0
  123. package/src/tools/vite/plugins/id-prefix-plugin.js +23 -9
  124. package/src/tools/vite/plugins/id-prefix-plugin.js.map +1 -1
  125. package/src/tools/vite/plugins/ssr-ssl-plugin.js +2 -56
  126. package/src/tools/vite/plugins/ssr-ssl-plugin.js.map +1 -1
  127. package/src/tools/vite/utils.js +3 -3
  128. package/src/tools/vite/utils.js.map +1 -1
  129. package/src/utils/environment-options.d.ts +6 -4
  130. package/src/utils/environment-options.js +28 -2
  131. package/src/utils/environment-options.js.map +1 -1
  132. package/src/utils/index-file/augment-index-html.d.ts +14 -0
  133. package/src/utils/index-file/augment-index-html.js +22 -1
  134. package/src/utils/index-file/augment-index-html.js.map +1 -1
  135. package/src/utils/index-file/index-html-generator.d.ts +6 -0
  136. package/src/utils/index-file/index-html-generator.js +2 -1
  137. package/src/utils/index-file/index-html-generator.js.map +1 -1
  138. package/src/utils/index-file/inline-fonts.js +45 -2
  139. package/src/utils/index-file/inline-fonts.js.map +1 -1
  140. package/src/utils/normalize-asset-patterns.js +5 -1
  141. package/src/utils/normalize-asset-patterns.js.map +1 -1
  142. package/src/utils/normalize-cache.js +1 -1
  143. package/src/utils/path.d.ts +8 -0
  144. package/src/utils/path.js +14 -0
  145. package/src/utils/path.js.map +1 -1
  146. package/src/utils/resolve-assets.js +4 -0
  147. package/src/utils/resolve-assets.js.map +1 -1
  148. package/src/utils/resolve-project.d.ts +15 -0
  149. package/src/utils/resolve-project.js +24 -0
  150. package/src/utils/resolve-project.js.map +1 -0
  151. package/src/utils/server-rendering/manifest.d.ts +10 -1
  152. package/src/utils/server-rendering/manifest.js +17 -7
  153. package/src/utils/server-rendering/manifest.js.map +1 -1
  154. package/src/utils/server-rendering/prerender.d.ts +1 -1
  155. package/src/utils/server-rendering/prerender.js +2 -2
  156. package/src/utils/server-rendering/prerender.js.map +1 -1
  157. package/src/utils/server-rendering/utils.d.ts +3 -1
  158. package/src/utils/server-rendering/utils.js.map +1 -1
  159. package/src/utils/service-worker.d.ts +4 -2
  160. package/src/utils/service-worker.js +4 -4
  161. package/src/utils/service-worker.js.map +1 -1
  162. package/src/utils/test-files.js +2 -2
  163. package/src/utils/test-files.js.map +1 -1
  164. package/src/utils/version.js +1 -1
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import type { OutputFile } from 'esbuild';
9
+ export interface InitialFileRecord {
10
+ entrypoint: boolean;
11
+ name?: string;
12
+ type: 'script' | 'style';
13
+ external?: boolean;
14
+ serverFile: boolean;
15
+ depth: number;
16
+ }
17
+ export declare enum BuildOutputFileType {
18
+ Browser = 0,
19
+ Media = 1,
20
+ ServerApplication = 2,
21
+ ServerRoot = 3,
22
+ Root = 4
23
+ }
24
+ export interface BuildOutputFile extends OutputFile {
25
+ type: BuildOutputFileType;
26
+ readonly size: number;
27
+ clone: () => BuildOutputFile;
28
+ }
29
+ export declare function createOutputFile(path: string, data: string | Uint8Array, type: BuildOutputFileType): BuildOutputFile;
30
+ export declare function convertOutputFile(file: OutputFile, type: BuildOutputFileType): BuildOutputFile;
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.dev/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.BuildOutputFileType = void 0;
11
+ exports.createOutputFile = createOutputFile;
12
+ exports.convertOutputFile = convertOutputFile;
13
+ const node_crypto_1 = require("node:crypto");
14
+ var BuildOutputFileType;
15
+ (function (BuildOutputFileType) {
16
+ BuildOutputFileType[BuildOutputFileType["Browser"] = 0] = "Browser";
17
+ BuildOutputFileType[BuildOutputFileType["Media"] = 1] = "Media";
18
+ BuildOutputFileType[BuildOutputFileType["ServerApplication"] = 2] = "ServerApplication";
19
+ BuildOutputFileType[BuildOutputFileType["ServerRoot"] = 3] = "ServerRoot";
20
+ BuildOutputFileType[BuildOutputFileType["Root"] = 4] = "Root";
21
+ })(BuildOutputFileType || (exports.BuildOutputFileType = BuildOutputFileType = {}));
22
+ function createOutputFile(path, data, type) {
23
+ if (typeof data === 'string') {
24
+ let cachedContents = null;
25
+ let cachedText = data;
26
+ let cachedHash = null;
27
+ return {
28
+ path,
29
+ type,
30
+ get contents() {
31
+ cachedContents ??= new TextEncoder().encode(data);
32
+ return cachedContents;
33
+ },
34
+ set contents(value) {
35
+ cachedContents = value;
36
+ cachedText = null;
37
+ },
38
+ get text() {
39
+ cachedText ??= new TextDecoder('utf-8').decode(this.contents);
40
+ return cachedText;
41
+ },
42
+ get size() {
43
+ return this.contents.byteLength;
44
+ },
45
+ get hash() {
46
+ cachedHash ??= (0, node_crypto_1.createHash)('sha256')
47
+ .update(cachedText ?? this.contents)
48
+ .digest('hex');
49
+ return cachedHash;
50
+ },
51
+ clone() {
52
+ return createOutputFile(this.path, cachedText ?? this.contents, this.type);
53
+ },
54
+ };
55
+ }
56
+ else {
57
+ let cachedContents = data;
58
+ let cachedText = null;
59
+ let cachedHash = null;
60
+ return {
61
+ get contents() {
62
+ return cachedContents;
63
+ },
64
+ set contents(value) {
65
+ cachedContents = value;
66
+ cachedText = null;
67
+ },
68
+ path,
69
+ type,
70
+ get size() {
71
+ return this.contents.byteLength;
72
+ },
73
+ get text() {
74
+ cachedText ??= new TextDecoder('utf-8').decode(this.contents);
75
+ return cachedText;
76
+ },
77
+ get hash() {
78
+ cachedHash ??= (0, node_crypto_1.createHash)('sha256').update(this.contents).digest('hex');
79
+ return cachedHash;
80
+ },
81
+ clone() {
82
+ return createOutputFile(this.path, this.contents, this.type);
83
+ },
84
+ };
85
+ }
86
+ }
87
+ function convertOutputFile(file, type) {
88
+ let { contents: cachedContents } = file;
89
+ let cachedText = null;
90
+ return {
91
+ get contents() {
92
+ return cachedContents;
93
+ },
94
+ set contents(value) {
95
+ cachedContents = value;
96
+ cachedText = null;
97
+ },
98
+ hash: file.hash,
99
+ path: file.path,
100
+ type,
101
+ get size() {
102
+ return this.contents.byteLength;
103
+ },
104
+ get text() {
105
+ cachedText ??= new TextDecoder('utf-8').decode(this.contents);
106
+ return cachedText;
107
+ },
108
+ clone() {
109
+ return convertOutputFile(this, this.type);
110
+ },
111
+ };
112
+ }
113
+ //# sourceMappingURL=bundler-files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundler-files.js","sourceRoot":"","sources":["bundler-files.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ export interface CacheStore<V> {
39
39
  * to use a cache.
40
40
  */
41
41
  export declare class Cache<V, S extends CacheStore<V> = CacheStore<V>> {
42
+ #private;
42
43
  protected readonly store: S;
43
44
  readonly namespace?: string | undefined;
44
45
  constructor(store: S, namespace?: string | undefined);
@@ -70,6 +71,10 @@ export declare class Cache<V, S extends CacheStore<V> = CacheStore<V>> {
70
71
  * @param value A value to put in the cache.
71
72
  */
72
73
  put(key: string, value: V): Promise<void>;
74
+ /**
75
+ * Clears the base class internal state (requests, write counts, and pending gets).
76
+ */
77
+ protected clearInternal(): void;
73
78
  }
74
79
  /**
75
80
  * A lightweight in-memory cache implementation based on a JavaScript Map object.
@@ -16,10 +16,23 @@ exports.MemoryCache = exports.Cache = void 0;
16
16
  class Cache {
17
17
  store;
18
18
  namespace;
19
+ // In-flight creator promises to deduplicate concurrent requests for the same key.
20
+ #requests = new Map();
21
+ // Track how many writes occurred for a key to detect mutations during await gaps.
22
+ #writeCounts = new Map();
23
+ // Count the number of active, pending getOrCreate operations per key to avoid memory leaks.
24
+ #pendingGets = new Map();
19
25
  constructor(store, namespace) {
20
26
  this.store = store;
21
27
  this.namespace = namespace;
22
28
  }
29
+ #incrementWrite(key) {
30
+ // Only track write counts if there is a pending getOrCreate operation active for the key.
31
+ // This ensures that write counts are not leaked when no concurrent gets are running.
32
+ if (this.#pendingGets.has(key)) {
33
+ this.#writeCounts.set(key, (this.#writeCounts.get(key) || 0) + 1);
34
+ }
35
+ }
23
36
  /**
24
37
  * Prefixes a key with the cache namespace if present.
25
38
  * @param key A key string to prefix.
@@ -41,12 +54,63 @@ class Cache {
41
54
  */
42
55
  async getOrCreate(key, creator) {
43
56
  const namespacedKey = this.withNamespace(key);
44
- let value = await this.store.get(namespacedKey);
45
- if (value === undefined) {
46
- value = await creator();
47
- await this.store.set(namespacedKey, value);
57
+ // 1. If another call is already running the creator for this key, share its promise.
58
+ let activeRequest = this.#requests.get(namespacedKey);
59
+ if (activeRequest !== undefined) {
60
+ return activeRequest;
61
+ }
62
+ // Increment pending gets count to enable write-tracking for this key.
63
+ const currentPending = this.#pendingGets.get(namespacedKey) || 0;
64
+ this.#pendingGets.set(namespacedKey, currentPending + 1);
65
+ try {
66
+ const startWriteCount = this.#writeCounts.get(namespacedKey) || 0;
67
+ // 2. Query the backing store. Since store.get can be async, we yield to the event loop.
68
+ const value = await this.store.get(namespacedKey);
69
+ // If a write (e.g. put) occurred during the store.get await gap, we must abort
70
+ // the current execution and restart to ensure we return the newly written value.
71
+ if ((this.#writeCounts.get(namespacedKey) || 0) !== startWriteCount) {
72
+ return this.getOrCreate(key, creator);
73
+ }
74
+ if (value !== undefined) {
75
+ return value;
76
+ }
77
+ // 3. Recheck active request after the await gap in case another concurrent call
78
+ // initiated a creator during the store.get wait.
79
+ activeRequest = this.#requests.get(namespacedKey);
80
+ if (activeRequest !== undefined) {
81
+ return activeRequest;
82
+ }
83
+ // 4. Run the creator to produce the new value, and store its promise in #requests.
84
+ activeRequest = Promise.resolve(creator()).then(async (newValue) => {
85
+ // Ensure this request is still the active one before writing back to the store
86
+ // (prevents overwriting newer data if put() was called before resolution).
87
+ if (this.#requests.get(namespacedKey) === activeRequest) {
88
+ this.#incrementWrite(namespacedKey);
89
+ await this.store.set(namespacedKey, newValue);
90
+ this.#requests.delete(namespacedKey);
91
+ }
92
+ return newValue;
93
+ }, (error) => {
94
+ // Clean up the active request if the creator fails.
95
+ if (this.#requests.get(namespacedKey) === activeRequest) {
96
+ this.#requests.delete(namespacedKey);
97
+ }
98
+ throw error;
99
+ });
100
+ this.#requests.set(namespacedKey, activeRequest);
101
+ return activeRequest;
102
+ }
103
+ finally {
104
+ // Clean up write counts and pending gets once all concurrent gets for this key finish.
105
+ const current = this.#pendingGets.get(namespacedKey) || 0;
106
+ if (current <= 1) {
107
+ this.#pendingGets.delete(namespacedKey);
108
+ this.#writeCounts.delete(namespacedKey);
109
+ }
110
+ else {
111
+ this.#pendingGets.set(namespacedKey, current - 1);
112
+ }
48
113
  }
49
- return value;
50
114
  }
51
115
  /**
52
116
  * Gets the value associated with a provided key if available.
@@ -64,7 +128,18 @@ class Cache {
64
128
  * @param value A value to put in the cache.
65
129
  */
66
130
  async put(key, value) {
67
- await this.store.set(this.withNamespace(key), value);
131
+ const namespacedKey = this.withNamespace(key);
132
+ this.#requests.delete(namespacedKey);
133
+ this.#incrementWrite(namespacedKey);
134
+ await this.store.set(namespacedKey, value);
135
+ }
136
+ /**
137
+ * Clears the base class internal state (requests, write counts, and pending gets).
138
+ */
139
+ clearInternal() {
140
+ this.#requests.clear();
141
+ this.#writeCounts.clear();
142
+ this.#pendingGets.clear();
68
143
  }
69
144
  }
70
145
  exports.Cache = Cache;
@@ -79,6 +154,7 @@ class MemoryCache extends Cache {
79
154
  * Removes all entries from the cache instance.
80
155
  */
81
156
  clear() {
157
+ this.clearInternal();
82
158
  this.store.clear();
83
159
  }
84
160
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAkCH;;;;GAIG;AACH,MAAa,KAAK;IAEK;IACV;IAFX,YACqB,KAAQ,EAClB,SAAkB;QADR,UAAK,GAAL,KAAK,CAAG;QAClB,cAAS,GAAT,SAAS,CAAS;IAC1B,CAAC;IAEJ;;;;OAIG;IACO,aAAa,CAAC,GAAW;QACjC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;QACpC,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,WAAW,CAAC,GAAW,EAAE,OAA6B;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAEhD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,KAAQ;QAC7B,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;CACF;AA3DD,sBA2DC;AAED;;GAEG;AACH,MAAa,WAAe,SAAQ,KAAwB;IAC1D;QACE,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;CACF;AA3BD,kCA2BC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"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"}
@@ -155,7 +155,9 @@ async function transformWithBabel(code, map, options) {
155
155
  // Which makes it hard to find the actual error message.
156
156
  const index = error.message.indexOf(')\n');
157
157
  const msg = index !== -1 ? error.message.slice(0, index + 1) : error.message;
158
- throw new Error(`${msg}\nAn error occurred inlining file "${options.filename}"`);
158
+ throw new Error(`${msg}\nAn error occurred inlining file "${options.filename}"`, {
159
+ cause: error,
160
+ });
159
161
  }
160
162
  if (!ast) {
161
163
  throw new Error(`Unknown error occurred inlining file "${options.filename}"`);
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-inliner-worker.js","sourceRoot":"","sources":["i18n-inliner-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n-inliner-worker.js","sourceRoot":"","sources":["i18n-inliner-worker.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqEH,6BAmBC;AASD,gCAOC;AAtGD,sEAAkE;AAClE,sCAAiF;AACjF,8DAAiC;AACjC,6DAAiD;AACjD,6CAAkD;AAgDlD,oGAAoG;AACpG,qFAAqF;AACrF,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,GAAG,CAAC,gCAAU,IAAI,EAAE,CAItE,CAAC;AAEF;;;;;;GAMG;AACY,KAAK,UAAU,UAAU,CAAC,OAA0B;IACjE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzC,IAAA,qBAAM,EAAC,IAAI,KAAK,SAAS,EAAE,oCAAoC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IAErF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,IAAI,EACJ,GAAG,IAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,EAC1C,OAAO,CACR,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,QAAQ;QACtB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;KACtC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,UAAU,CAAC,OAA0B;IACzD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAE1E,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI;QACnB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;KACtC,CAAC;AACJ,CAAC;AAOD;;;GAGG;AACH,IAAI,mBAAsD,CAAC;AAE3D;;;;GAIG;AACH,KAAK,UAAU,iBAAiB;IAC9B,qFAAqF;IACrF,yFAAyF;IACzF,sCAAsC;IACtC,mBAAmB,KAAK,wDAAa,yBAAyB,GAAC,CAAC;IAEhE,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAc,EAAE,WAAgD;IAC/F,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAE7E,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,OAAO,CAAC,IAAI;IACV,8DAA8D;IAC9D,yBAAyB,CAAC,WAAW,EAAE,CAAC,WAAW,IAAI,EAAE,CAAQ,EAAE;QACjE,kBAAkB,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB;KAC9E,CAAC,CACH,CAAC;IAEF,gHAAgH;IAChH,OAAO,CAAC,IAAI,CAAC;QACX,OAAO,EAAE;YACP,aAAa,CAAC,IAAI;gBAChB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,wBAAwB,EAAE,CAAC;oBACjD,IAAI,CAAC,WAAW,CAAC,YAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,kBAAkB,CAC/B,IAAY,EACZ,GAA+B,EAC/B,OAA0B;IAE1B,IAAI,GAAG,CAAC;IACR,IAAI,CAAC;QACH,GAAG,GAAG,IAAA,gBAAS,EAAC,IAAI,EAAE;YACpB,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,aAAa;YACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAA,qBAAa,EAAC,KAAK,CAAC,CAAC;QAErB,gCAAgC;QAChC,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,sCAAsC,OAAO,CAAC,QAAQ,GAAG,EAAE;YAC/E,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9F,MAAM,eAAe,GAAG,MAAM,IAAA,4BAAqB,EAAC,GAAG,EAAE,IAAI,EAAE;QAC7D,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,iEAAiE;QACjE,cAAc,EAAE,KAA6B;QAC7C,UAAU,EAAE,CAAC,CAAC,GAAG;QACjB,OAAO,EAAE,cAAc;QACvB,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;QACd,sBAAsB,EAAE,KAAK;QAC7B,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iDAAiD,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,SAAS,CAAC;IACd,IAAI,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,CAAC;QAC/B,SAAS,GAAG,IAAA,mBAAS,EAAC,CAAC,eAAe,CAAC,GAAqB,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;AAClG,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
- import { BuildOutputFile } from './bundler-context';
8
+ import { type BuildOutputFile } from './bundler-files';
9
9
  /**
10
10
  * Inlining options that should apply to all transformed code.
11
11
  */
@@ -48,8 +48,7 @@ const node_assert_1 = __importDefault(require("node:assert"));
48
48
  const node_crypto_1 = require("node:crypto");
49
49
  const node_path_1 = require("node:path");
50
50
  const worker_pool_1 = require("../../utils/worker-pool");
51
- const bundler_context_1 = require("./bundler-context");
52
- const utils_1 = require("./utils");
51
+ const bundler_files_1 = require("./bundler-files");
53
52
  /**
54
53
  * A keyword used to indicate if a JavaScript file may require inlining of translations.
55
54
  * This keyword is used to avoid processing files that would not otherwise need i18n processing.
@@ -75,7 +74,7 @@ class I18nInliner {
75
74
  const files = new Map();
76
75
  const pendingMaps = [];
77
76
  for (const file of outputFiles) {
78
- if (file.type === bundler_context_1.BuildOutputFileType.Root || file.type === bundler_context_1.BuildOutputFileType.ServerRoot) {
77
+ if (file.type === bundler_files_1.BuildOutputFileType.Root || file.type === bundler_files_1.BuildOutputFileType.ServerRoot) {
79
78
  // Skip also the server entry-point.
80
79
  // Skip stats and similar files.
81
80
  continue;
@@ -179,9 +178,9 @@ class I18nInliner {
179
178
  ...rawResults.flatMap(({ file, code, map, messages }) => {
180
179
  const type = this.#localizeFiles.get(file)?.type;
181
180
  (0, node_assert_1.default)(type !== undefined, 'localized file should always have a type' + file);
182
- const resultFiles = [(0, utils_1.createOutputFile)(file, code, type)];
181
+ const resultFiles = [(0, bundler_files_1.createOutputFile)(file, code, type)];
183
182
  if (map) {
184
- resultFiles.push((0, utils_1.createOutputFile)(file + '.map', map, type));
183
+ resultFiles.push((0, bundler_files_1.createOutputFile)(file + '.map', map, type));
185
184
  }
186
185
  for (const message of messages) {
187
186
  if (message.type === 'error') {
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-inliner.js","sourceRoot":"","sources":["i18n-inliner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n-inliner.js","sourceRoot":"","sources":["i18n-inliner.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.LOCALE_DATA_BASE_MODULE = exports.LOCALE_DATA_NAMESPACE = void 0;
11
11
  exports.createAngularLocaleDataPlugin = createAngularLocaleDataPlugin;
12
- const node_module_1 = require("node:module");
12
+ const resolve_project_1 = require("../../utils/resolve-project");
13
13
  /**
14
14
  * The internal namespace used by generated locale import statements and Angular locale data plugin.
15
15
  */
@@ -48,7 +48,7 @@ function createAngularLocaleDataPlugin() {
48
48
  };
49
49
  }
50
50
  let exact = true;
51
- let localeRequire;
51
+ let projectResolve;
52
52
  while (partialLocaleTag) {
53
53
  // Angular embeds the `en`/`en-US` locale into the framework and it does not need to be included again here.
54
54
  // The onLoad hook below for the locale data namespace has an `empty` loader that will prevent inclusion.
@@ -69,9 +69,9 @@ function createAngularLocaleDataPlugin() {
69
69
  let result;
70
70
  const { packages, absWorkingDir } = build.initialOptions;
71
71
  if (packages === 'external' && absWorkingDir) {
72
- localeRequire ??= (0, node_module_1.createRequire)(absWorkingDir + '/');
72
+ projectResolve ??= (0, resolve_project_1.createProjectResolver)(absWorkingDir);
73
73
  try {
74
- localeRequire.resolve(potentialPath);
74
+ projectResolve(potentialPath);
75
75
  result = {
76
76
  errors: [],
77
77
  warnings: [],
@@ -90,6 +90,18 @@ function createAngularLocaleDataPlugin() {
90
90
  kind: 'import-statement',
91
91
  resolveDir: absWorkingDir,
92
92
  });
93
+ if (result && result.external && absWorkingDir) {
94
+ projectResolve ??= (0, resolve_project_1.createProjectResolver)(absWorkingDir);
95
+ try {
96
+ const resolvedPath = projectResolve(potentialPath);
97
+ result = {
98
+ ...result,
99
+ external: false,
100
+ path: resolvedPath,
101
+ };
102
+ }
103
+ catch { }
104
+ }
93
105
  }
94
106
  if (result?.path) {
95
107
  if (exact) {
@@ -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":"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"}
@@ -6,7 +6,7 @@
6
6
  * found in the LICENSE file at https://angular.dev/license
7
7
  */
8
8
  import { NormalizedApplicationBuildOptions } from '../../builders/application/options';
9
- import { BuildOutputFile, InitialFileRecord } from './bundler-context';
9
+ import { BuildOutputFile, InitialFileRecord } from './bundler-files';
10
10
  export declare function generateIndexHtml(initialFiles: Map<string, InitialFileRecord>, outputFiles: BuildOutputFile[], buildOptions: NormalizedApplicationBuildOptions, lang?: string): Promise<{
11
11
  csrContent: string;
12
12
  ssrContent?: string;
@@ -12,9 +12,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.generateIndexHtml = generateIndexHtml;
14
14
  const node_assert_1 = __importDefault(require("node:assert"));
15
+ const node_crypto_1 = require("node:crypto");
15
16
  const node_path_1 = __importDefault(require("node:path"));
16
17
  const index_html_generator_1 = require("../../utils/index-file/index-html-generator");
17
- const bundler_context_1 = require("./bundler-context");
18
+ const bundler_files_1 = require("./bundler-files");
18
19
  /**
19
20
  * The maximum number of module preload link elements that should be added for
20
21
  * initial scripts.
@@ -48,7 +49,7 @@ async function generateIndexHtml(initialFiles, outputFiles, buildOptions, lang)
48
49
  hints.push(...modulePreloads.slice(0, MODULE_PRELOAD_MAX));
49
50
  }
50
51
  /** Virtual output path to support reading in-memory files. */
51
- const browserOutputFiles = outputFiles.filter(({ type }) => type === bundler_context_1.BuildOutputFileType.Browser);
52
+ const browserOutputFiles = outputFiles.filter(({ type }) => type === bundler_files_1.BuildOutputFileType.Browser);
52
53
  const virtualOutputPath = '/';
53
54
  const readAsset = async function (filePath) {
54
55
  // Remove leading directory separator
@@ -59,6 +60,21 @@ async function generateIndexHtml(initialFiles, outputFiles, buildOptions, lang)
59
60
  }
60
61
  throw new Error(`Output file does not exist: ${relativefilePath}`);
61
62
  };
63
+ // When SRI is enabled, build an integrity map for every browser JavaScript
64
+ // chunk so an `<script type="importmap">` block can carry integrity metadata
65
+ // for modules loaded via dynamic `import()`.
66
+ let chunksIntegrity;
67
+ if (subresourceIntegrity) {
68
+ const integrity = new Map();
69
+ for (const file of browserOutputFiles) {
70
+ if (!file.path.endsWith('.js') || initialFiles.has(file.path)) {
71
+ continue;
72
+ }
73
+ const hash = (0, node_crypto_1.createHash)('sha384').update(file.contents).digest('base64');
74
+ integrity.set(file.path, 'sha384-' + hash);
75
+ }
76
+ chunksIntegrity = integrity;
77
+ }
62
78
  // Create an index HTML generator that reads from the in-memory output files
63
79
  const indexHtmlGenerator = new index_html_generator_1.IndexHtmlGenerator({
64
80
  indexPath: indexHtmlOptions.input,
@@ -72,6 +88,7 @@ async function generateIndexHtml(initialFiles, outputFiles, buildOptions, lang)
72
88
  buildOptions.prerenderOptions ||
73
89
  buildOptions.appShellOptions),
74
90
  autoCsp: buildOptions.security.autoCsp,
91
+ chunksIntegrity,
75
92
  });
76
93
  indexHtmlGenerator.readAsset = readAsset;
77
94
  return indexHtmlGenerator.process({
@@ -1 +1 @@
1
- {"version":3,"file":"index-html-generator.js","sourceRoot":"","sources":["index-html-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-html-generator.js","sourceRoot":"","sources":["index-html-generator.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
46
46
  exports.default = transformJavaScript;
47
47
  const core_1 = require("@babel/core");
48
48
  const node_fs_1 = __importDefault(require("node:fs"));
49
+ const node_module_1 = require("node:module");
49
50
  const node_path_1 = __importDefault(require("node:path"));
50
51
  const piscina_1 = __importDefault(require("piscina"));
51
52
  const textDecoder = new TextDecoder();
@@ -74,8 +75,26 @@ async function transformWithBabel(filename, data, options) {
74
75
  (!!options.thirdPartySourcemaps || !/[\\/]node_modules[\\/]/.test(filename));
75
76
  const plugins = [];
76
77
  if (options.instrumentForCoverage) {
77
- const { default: coveragePlugin } = await Promise.resolve().then(() => __importStar(require('../babel/plugins/add-code-coverage.js')));
78
- plugins.push(coveragePlugin);
78
+ try {
79
+ let resolvedPath = 'istanbul-lib-instrument';
80
+ try {
81
+ const requireFn = (0, node_module_1.createRequire)(filename);
82
+ resolvedPath = requireFn.resolve('istanbul-lib-instrument');
83
+ }
84
+ catch {
85
+ // Fallback to pool worker import traversal
86
+ }
87
+ const istanbul = await Promise.resolve(`${resolvedPath}`).then(s => __importStar(require(s)));
88
+ const programVisitor = istanbul.programVisitor ?? istanbul.default?.programVisitor;
89
+ if (!programVisitor) {
90
+ throw new Error('programVisitor is not available in istanbul-lib-instrument.');
91
+ }
92
+ const { default: coveragePluginFactory } = await Promise.resolve().then(() => __importStar(require('../babel/plugins/add-code-coverage.js')));
93
+ plugins.push(coveragePluginFactory(programVisitor));
94
+ }
95
+ catch (error) {
96
+ throw new Error(`The 'istanbul-lib-instrument' package is required for code coverage but was not found. Please install the package.`, { cause: error });
97
+ }
79
98
  }
80
99
  if (shouldLink) {
81
100
  // Lazy load the linker plugin only when linking is required
@@ -1 +1 @@
1
- {"version":3,"file":"javascript-transformer-worker.js","sourceRoot":"","sources":["javascript-transformer-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"javascript-transformer-worker.js","sourceRoot":"","sources":["javascript-transformer-worker.ts"],"names":[],"mappings":"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"}