@angular/build 22.2.0-next.7 → 22.2.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 (137) hide show
  1. package/builders.json +1 -1
  2. package/package.json +17 -17
  3. package/src/builders/application/build-action.js +14 -59
  4. package/src/builders/application/build-action.js.map +1 -1
  5. package/src/builders/application/execute-build.js +1 -1
  6. package/src/builders/application/execute-build.js.map +1 -1
  7. package/src/builders/application/execute-post-bundle.js +1 -1
  8. package/src/builders/application/execute-post-bundle.js.map +1 -1
  9. package/src/builders/application/i18n.d.ts +3 -1
  10. package/src/builders/application/i18n.js +8 -5
  11. package/src/builders/application/i18n.js.map +1 -1
  12. package/src/{tools/esbuild → builders/application}/index-html-generator.d.ts +2 -2
  13. package/src/{tools/esbuild → builders/application}/index-html-generator.js +1 -1
  14. package/src/builders/application/index-html-generator.js.map +1 -0
  15. package/src/builders/application/options.d.ts +5 -0
  16. package/src/builders/application/options.js +3 -24
  17. package/src/builders/application/options.js.map +1 -1
  18. package/src/builders/dev-server/internal.d.ts +1 -1
  19. package/src/builders/dev-server/internal.js +1 -1
  20. package/src/builders/dev-server/internal.js.map +1 -1
  21. package/src/builders/dev-server/vite/index.js +1 -1
  22. package/src/builders/dev-server/vite/index.js.map +1 -1
  23. package/src/builders/unit-test/runners/vitest/build-options.js +9 -3
  24. package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -1
  25. package/src/builders/unit-test/runners/vitest/executor.js +1 -0
  26. package/src/builders/unit-test/runners/vitest/executor.js.map +1 -1
  27. package/src/builders/unit-test/runners/vitest/plugins.d.ts +1 -0
  28. package/src/builders/unit-test/runners/vitest/plugins.js +7 -2
  29. package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -1
  30. package/src/private.d.ts +2 -2
  31. package/src/private.js +2 -2
  32. package/src/private.js.map +1 -1
  33. package/src/tools/angular/compilation/aot-compilation.js +1 -1
  34. package/src/tools/angular/compilation/aot-compilation.js.map +1 -1
  35. package/src/tools/angular/compilation/compiler-options.d.ts +1 -0
  36. package/src/tools/angular/compilation/compiler-options.js.map +1 -1
  37. package/src/tools/angular/compilation/jit-compilation.js +1 -1
  38. package/src/tools/angular/compilation/jit-compilation.js.map +1 -1
  39. package/src/tools/angular/compilation/parallel-compilation.js +1 -1
  40. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -1
  41. package/src/tools/angular/compilation/parallel-worker.js +1 -1
  42. package/src/tools/angular/compilation/parallel-worker.js.map +1 -1
  43. package/src/tools/angular/compilation/typescript-compilation.js +12 -2
  44. package/src/tools/angular/compilation/typescript-compilation.js.map +1 -1
  45. package/src/tools/angular/linker/oxc-ast-host.js +41 -11
  46. package/src/tools/angular/linker/oxc-ast-host.js.map +1 -1
  47. package/src/tools/esbuild/angular/compiler-plugin.d.ts +1 -0
  48. package/src/tools/esbuild/angular/compiler-plugin.js +6 -8
  49. package/src/tools/esbuild/angular/compiler-plugin.js.map +1 -1
  50. package/src/tools/esbuild/angular/component-stylesheets.js +5 -2
  51. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -1
  52. package/src/tools/esbuild/application-code-bundle.js +3 -3
  53. package/src/tools/esbuild/application-code-bundle.js.map +1 -1
  54. package/src/tools/esbuild/bundler-context.js +7 -4
  55. package/src/tools/esbuild/bundler-context.js.map +1 -1
  56. package/src/tools/esbuild/bundler-execution-result.d.ts +1 -1
  57. package/src/tools/esbuild/compiler-plugin-options.js +2 -1
  58. package/src/tools/esbuild/compiler-plugin-options.js.map +1 -1
  59. package/src/tools/esbuild/i18n-locale-plugin.d.ts +1 -40
  60. package/src/tools/esbuild/i18n-locale-plugin.js +11 -101
  61. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -1
  62. package/src/tools/esbuild/persistent-load-result-cache.d.ts +1 -1
  63. package/src/tools/esbuild/persistent-load-result-cache.js +3 -17
  64. package/src/tools/esbuild/persistent-load-result-cache.js.map +1 -1
  65. package/src/tools/esbuild/stylesheets/bundle-options.d.ts +1 -0
  66. package/src/tools/esbuild/stylesheets/bundle-options.js +1 -1
  67. package/src/tools/esbuild/stylesheets/bundle-options.js.map +1 -1
  68. package/src/tools/esbuild/stylesheets/css-resource-plugin.d.ts +3 -1
  69. package/src/tools/esbuild/stylesheets/css-resource-plugin.js +4 -2
  70. package/src/tools/esbuild/stylesheets/css-resource-plugin.js.map +1 -1
  71. package/src/tools/esbuild/stylesheets/sass-language.d.ts +8 -0
  72. package/src/tools/esbuild/stylesheets/sass-language.js +48 -15
  73. package/src/tools/esbuild/stylesheets/sass-language.js.map +1 -1
  74. package/src/tools/{esbuild → i18n}/i18n-inliner-worker.js +2 -2
  75. package/src/tools/{esbuild → i18n}/i18n-inliner-worker.js.map +1 -1
  76. package/src/tools/{esbuild → i18n}/i18n-inliner.d.ts +3 -2
  77. package/src/tools/{esbuild → i18n}/i18n-inliner.js +14 -7
  78. package/src/tools/i18n/i18n-inliner.js.map +1 -0
  79. package/src/tools/i18n/index.d.ts +11 -0
  80. package/src/tools/i18n/index.js +28 -0
  81. package/src/tools/i18n/index.js.map +1 -0
  82. package/src/tools/i18n/locale-data.d.ts +47 -0
  83. package/src/tools/i18n/locale-data.js +108 -0
  84. package/src/tools/i18n/locale-data.js.map +1 -0
  85. package/src/tools/javascript-transformer/index.d.ts +8 -0
  86. package/src/tools/javascript-transformer/index.js +25 -0
  87. package/src/tools/javascript-transformer/index.js.map +1 -0
  88. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.d.ts +8 -3
  89. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.js +19 -11
  90. package/src/tools/javascript-transformer/javascript-transformer.js.map +1 -0
  91. package/src/tools/vite/utils.d.ts +1 -1
  92. package/src/{tools/esbuild → utils/cache}/cache.js +2 -2
  93. package/src/{tools/esbuild → utils/cache}/cache.js.map +1 -1
  94. package/src/utils/cache/index.d.ts +8 -0
  95. package/src/utils/cache/index.js +25 -0
  96. package/src/utils/cache/index.js.map +1 -0
  97. package/src/utils/concurrency.d.ts +30 -0
  98. package/src/utils/concurrency.js +81 -0
  99. package/src/utils/concurrency.js.map +1 -0
  100. package/src/utils/environment-options.d.ts +16 -0
  101. package/src/utils/environment-options.js +17 -1
  102. package/src/utils/environment-options.js.map +1 -1
  103. package/src/utils/index-file/auto-csp.d.ts +8 -0
  104. package/src/utils/index-file/auto-csp.js +30 -3
  105. package/src/utils/index-file/auto-csp.js.map +1 -1
  106. package/src/utils/normalize-cache.js +1 -1
  107. package/src/utils/postcss-configuration.d.ts +6 -0
  108. package/src/utils/postcss-configuration.js +23 -0
  109. package/src/utils/postcss-configuration.js.map +1 -1
  110. package/src/{tools/esbuild → utils}/profiling.js +1 -1
  111. package/src/{tools/esbuild → utils}/profiling.js.map +1 -1
  112. package/src/utils/version.js +1 -1
  113. package/src/{tools/esbuild → utils}/watcher.d.ts +17 -0
  114. package/src/{tools/esbuild → utils}/watcher.js +78 -1
  115. package/src/utils/watcher.js.map +1 -0
  116. package/src/tools/esbuild/i18n-inliner.js.map +0 -1
  117. package/src/tools/esbuild/index-html-generator.js.map +0 -1
  118. package/src/tools/esbuild/javascript-transformer.js.map +0 -1
  119. package/src/tools/esbuild/watcher.js.map +0 -1
  120. /package/src/tools/{esbuild → i18n}/i18n-inliner-worker.d.ts +0 -0
  121. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.d.ts +0 -0
  122. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.js +0 -0
  123. /package/src/tools/{esbuild → i18n}/i18n-translation-encoder.js.map +0 -0
  124. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.d.ts +0 -0
  125. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.js +0 -0
  126. /package/src/tools/{esbuild → i18n}/i18n-translation-reader.js.map +0 -0
  127. /package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.d.ts +0 -0
  128. /package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.js +0 -0
  129. /package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.js.map +0 -0
  130. /package/src/{tools/esbuild → utils/cache}/cache.d.ts +0 -0
  131. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.d.ts +0 -0
  132. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js +0 -0
  133. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js.map +0 -0
  134. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.d.ts +0 -0
  135. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.js +0 -0
  136. /package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.js.map +0 -0
  137. /package/src/{tools/esbuild → utils}/profiling.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
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
+ export * from './cache';
@@ -0,0 +1,25 @@
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
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
21
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ __exportStar(require("./cache"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;AAEH,0CAAwB"}
@@ -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
+ /**
9
+ * Executes an asynchronous function for each item in an array concurrently up to a specified limit.
10
+ *
11
+ * If any task fails, processing of subsequent items stops and the first encountered error is re-thrown
12
+ * after all currently in-flight tasks have settled.
13
+ *
14
+ * @param items Array of items to process.
15
+ * @param limit Maximum number of concurrent tasks in flight.
16
+ * @param fn Async task function.
17
+ */
18
+ export declare function runConcurrent<T>(items: readonly T[], limit: number, fn: (item: T, index: number) => Promise<void>): Promise<void>;
19
+ /**
20
+ * Maps an array asynchronously with a sliding worker pool up to a specified concurrency limit.
21
+ *
22
+ * If any task fails, processing of subsequent items stops and the first encountered error is re-thrown
23
+ * after all currently in-flight tasks have settled.
24
+ *
25
+ * @param items Array of items to map.
26
+ * @param limit Maximum number of concurrent tasks in flight.
27
+ * @param fn Async mapper function.
28
+ * @returns Array of mapped results in the original item order.
29
+ */
30
+ export declare function mapConcurrent<T, R>(items: readonly T[], limit: number, fn: (item: T, index: number) => Promise<R>): Promise<R[]>;
@@ -0,0 +1,81 @@
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.runConcurrent = runConcurrent;
11
+ exports.mapConcurrent = mapConcurrent;
12
+ /**
13
+ * Executes an asynchronous function for each item in an array concurrently up to a specified limit.
14
+ *
15
+ * If any task fails, processing of subsequent items stops and the first encountered error is re-thrown
16
+ * after all currently in-flight tasks have settled.
17
+ *
18
+ * @param items Array of items to process.
19
+ * @param limit Maximum number of concurrent tasks in flight.
20
+ * @param fn Async task function.
21
+ */
22
+ async function runConcurrent(items, limit, fn) {
23
+ if (items.length === 0) {
24
+ return;
25
+ }
26
+ let index = 0;
27
+ let firstError;
28
+ const concurrency = Math.min(Math.max(1, Math.floor(limit) || 1), items.length);
29
+ const workers = Array.from({ length: concurrency }, async () => {
30
+ while (!firstError && index < items.length) {
31
+ const i = index++;
32
+ try {
33
+ await fn(items[i], i);
34
+ }
35
+ catch (error) {
36
+ firstError ??= error;
37
+ }
38
+ }
39
+ });
40
+ await Promise.allSettled(workers);
41
+ if (firstError) {
42
+ throw firstError;
43
+ }
44
+ }
45
+ /**
46
+ * Maps an array asynchronously with a sliding worker pool up to a specified concurrency limit.
47
+ *
48
+ * If any task fails, processing of subsequent items stops and the first encountered error is re-thrown
49
+ * after all currently in-flight tasks have settled.
50
+ *
51
+ * @param items Array of items to map.
52
+ * @param limit Maximum number of concurrent tasks in flight.
53
+ * @param fn Async mapper function.
54
+ * @returns Array of mapped results in the original item order.
55
+ */
56
+ async function mapConcurrent(items, limit, fn) {
57
+ if (items.length === 0) {
58
+ return [];
59
+ }
60
+ const results = new Array(items.length);
61
+ let index = 0;
62
+ let firstError;
63
+ const concurrency = Math.min(Math.max(1, Math.floor(limit) || 1), items.length);
64
+ const workers = Array.from({ length: concurrency }, async () => {
65
+ while (!firstError && index < items.length) {
66
+ const i = index++;
67
+ try {
68
+ results[i] = await fn(items[i], i);
69
+ }
70
+ catch (error) {
71
+ firstError ??= error;
72
+ }
73
+ }
74
+ });
75
+ await Promise.allSettled(workers);
76
+ if (firstError) {
77
+ throw firstError;
78
+ }
79
+ return results;
80
+ }
81
+ //# sourceMappingURL=concurrency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concurrency.js","sourceRoot":"","sources":["concurrency.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAYH,sCA6BC;AAaD,sCAgCC;AApFD;;;;;;;;;GASG;AACI,KAAK,UAAU,aAAa,CACjC,KAAmB,EACnB,KAAa,EACb,EAA6C;IAE7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,UAAmB,CAAC;IAExB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,IAAI,EAAE;QAC7D,OAAO,CAAC,UAAU,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACxB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,UAAU,KAAK,KAAK,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAElC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,UAAU,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,aAAa,CACjC,KAAmB,EACnB,KAAa,EACb,EAA0C;IAE1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,UAAmB,CAAC;IAExB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,IAAI,EAAE;QAC7D,OAAO,CAAC,UAAU,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,UAAU,KAAK,KAAK,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAElC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,UAAU,CAAC;IACnB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -36,6 +36,22 @@ export declare const hasCustomMaxWorkers: boolean;
36
36
  * When not set, defaults to available parallelism minus one to ensure the main thread is not starved.
37
37
  */
38
38
  export declare const maxWorkers: number;
39
+ /**
40
+ * The maximum number of workers to use for JavaScript transformations during bundling.
41
+ * Transformation tasks are short-lived, and esbuild concurrently utilizes all CPU cores
42
+ * for bundling. To prevent CPU starvation and thread startup overhead, concurrency is
43
+ * budgeted to a fraction of available cores, capped at 6, unless overridden by
44
+ * `NG_BUILD_MAX_WORKERS`.
45
+ */
46
+ export declare const maxTransformWorkers: number;
47
+ /**
48
+ * The maximum number of workers to use for i18n translation inlining.
49
+ * Translation inlining and sourcemap remapping are CPU- and memory-intensive operations.
50
+ * To prevent thread oversubscription, memory allocator lock contention, and high-core
51
+ * performance degradation, concurrency is capped at 8 unless overridden by
52
+ * `NG_BUILD_MAX_WORKERS`.
53
+ */
54
+ export declare const maxInlinerWorkers: number;
39
55
  /**
40
56
  * When `NG_BUILD_PARALLEL_TS` is set to `0` or `false`, parallel TypeScript compilation is disabled.
41
57
  */
@@ -7,7 +7,7 @@
7
7
  * found in the LICENSE file at https://angular.dev/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.persistentCacheStoreSetting = exports.bazelEsbuildPluginPath = exports.useSassEmbedded = exports.useBabelLinker = exports.usePartialSsrBuild = exports.useComponentTemplateHmr = exports.useComponentStyleHmr = exports.optimizeChunksThreshold = exports.useJSONBuildLogs = exports.useTypeChecking = exports.shouldWatchRoot = exports.debugPerformance = exports.useParallelTs = exports.maxWorkers = exports.hasCustomMaxWorkers = exports.useRolldownChunks = exports.allowMinify = exports.shouldBeautify = exports.allowMangle = void 0;
10
+ exports.persistentCacheStoreSetting = exports.bazelEsbuildPluginPath = exports.useSassEmbedded = exports.useBabelLinker = exports.usePartialSsrBuild = exports.useComponentTemplateHmr = exports.useComponentStyleHmr = exports.optimizeChunksThreshold = exports.useJSONBuildLogs = exports.useTypeChecking = exports.shouldWatchRoot = exports.debugPerformance = exports.useParallelTs = exports.maxInlinerWorkers = exports.maxTransformWorkers = exports.maxWorkers = exports.hasCustomMaxWorkers = exports.useRolldownChunks = exports.allowMinify = exports.shouldBeautify = exports.allowMangle = void 0;
11
11
  const node_os_1 = require("node:os");
12
12
  /** A set of strings that are considered "truthy" when parsing environment variables. */
13
13
  const TRUTHY_VALUES = new Set(['1', 'true']);
@@ -113,6 +113,22 @@ exports.hasCustomMaxWorkers = customMaxWorkers !== undefined;
113
113
  * When not set, defaults to available parallelism minus one to ensure the main thread is not starved.
114
114
  */
115
115
  exports.maxWorkers = customMaxWorkers ?? Math.max((0, node_os_1.availableParallelism)() - 1, 1);
116
+ /**
117
+ * The maximum number of workers to use for JavaScript transformations during bundling.
118
+ * Transformation tasks are short-lived, and esbuild concurrently utilizes all CPU cores
119
+ * for bundling. To prevent CPU starvation and thread startup overhead, concurrency is
120
+ * budgeted to a fraction of available cores, capped at 6, unless overridden by
121
+ * `NG_BUILD_MAX_WORKERS`.
122
+ */
123
+ exports.maxTransformWorkers = customMaxWorkers ?? Math.max(1, Math.min(6, Math.floor((0, node_os_1.availableParallelism)() / 4)));
124
+ /**
125
+ * The maximum number of workers to use for i18n translation inlining.
126
+ * Translation inlining and sourcemap remapping are CPU- and memory-intensive operations.
127
+ * To prevent thread oversubscription, memory allocator lock contention, and high-core
128
+ * performance degradation, concurrency is capped at 8 unless overridden by
129
+ * `NG_BUILD_MAX_WORKERS`.
130
+ */
131
+ exports.maxInlinerWorkers = customMaxWorkers ?? Math.min(8, (0, node_os_1.availableParallelism)());
116
132
  /**
117
133
  * When `NG_BUILD_PARALLEL_TS` is set to `0` or `false`, parallel TypeScript compilation is disabled.
118
134
  */
@@ -1 +1 @@
1
- {"version":3,"file":"environment-options.js","sourceRoot":"","sources":["environment-options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"environment-options.js","sourceRoot":"","sources":["environment-options.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,14 @@
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
+ /**
9
+ * Checks whether a particular string is a MIME type associated with JavaScript, according to
10
+ * https://html.spec.whatwg.org/multipage/scripting.html#javascript-mime-type
11
+ *
12
+ * @param mimeType a string that may be a MIME type
13
+ * @returns whether the string is a MIME type that is associated with JavaScript
14
+ */
15
+ export declare function isJavascriptMimeType(mimeType: string): boolean;
8
16
  /**
9
17
  * Calculates a CSP compatible hash of an inline script.
10
18
  * @param scriptText Text between opening and closing script tag. Has to
@@ -40,6 +40,7 @@ var __importStar = (this && this.__importStar) || (function () {
40
40
  };
41
41
  })();
42
42
  Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.isJavascriptMimeType = isJavascriptMimeType;
43
44
  exports.hashTextContent = hashTextContent;
44
45
  exports.autoCsp = autoCsp;
45
46
  const crypto = __importStar(require("node:crypto"));
@@ -57,15 +58,38 @@ const HASH_FUNCTION = 'sha256';
57
58
  function getScriptAttributeValue(tag, attrName) {
58
59
  return tag.attrs.find((attr) => attr.name === attrName)?.value;
59
60
  }
61
+ /**
62
+ * All MIME types associated with JavaScript according to the HTML specification:
63
+ * https://html.spec.whatwg.org/multipage/scripting.html#javascript-mime-type
64
+ */
65
+ const JAVASCRIPT_MIME_TYPES = new Set([
66
+ 'application/ecmascript',
67
+ 'application/javascript',
68
+ 'application/x-ecmascript',
69
+ 'application/x-javascript',
70
+ 'text/ecmascript',
71
+ 'text/javascript',
72
+ 'text/javascript1.0',
73
+ 'text/javascript1.1',
74
+ 'text/javascript1.2',
75
+ 'text/javascript1.3',
76
+ 'text/javascript1.4',
77
+ 'text/javascript1.5',
78
+ 'text/jscript',
79
+ 'text/livescript',
80
+ 'text/x-ecmascript',
81
+ 'text/x-javascript',
82
+ ]);
60
83
  /**
61
84
  * Checks whether a particular string is a MIME type associated with JavaScript, according to
62
- * https://developer.mozilla.org/en-US/docs/Web/HTTP/MIME_types#textjavascript
85
+ * https://html.spec.whatwg.org/multipage/scripting.html#javascript-mime-type
63
86
  *
64
87
  * @param mimeType a string that may be a MIME type
65
88
  * @returns whether the string is a MIME type that is associated with JavaScript
66
89
  */
67
90
  function isJavascriptMimeType(mimeType) {
68
- return mimeType.split(';')[0] === 'text/javascript';
91
+ const [essence] = mimeType.split(';', 1);
92
+ return JAVASCRIPT_MIME_TYPES.has(essence.trim().toLowerCase());
69
93
  }
70
94
  /**
71
95
  * Which of the type attributes on the script tag we should try passing along
@@ -74,7 +98,10 @@ function isJavascriptMimeType(mimeType) {
74
98
  * @returns whether to add the script tag to the dynamically loaded script tag
75
99
  */
76
100
  function shouldDynamicallyLoadScriptTagBasedOnType(scriptType) {
77
- return !scriptType || scriptType === 'module' || isJavascriptMimeType(scriptType);
101
+ if (!scriptType) {
102
+ return true;
103
+ }
104
+ return scriptType.trim().toLowerCase() === 'module' || isJavascriptMimeType(scriptType);
78
105
  }
79
106
  /**
80
107
  * Calculates a CSP compatible hash of an inline script.
@@ -1 +1 @@
1
- {"version":3,"file":"auto-csp.js","sourceRoot":"","sources":["auto-csp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-csp.js","sourceRoot":"","sources":["auto-csp.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ exports.normalizeCacheOptions = normalizeCacheOptions;
11
11
  const node_fs_1 = require("node:fs");
12
12
  const node_path_1 = require("node:path");
13
13
  /** Version placeholder is replaced during the build process with actual package version */
14
- const VERSION = '22.2.0-next.7';
14
+ const VERSION = '22.2.0';
15
15
  function hasCacheMetadata(value) {
16
16
  return (!!value &&
17
17
  typeof value === 'object' &&
@@ -14,6 +14,12 @@ export interface SearchDirectory {
14
14
  }
15
15
  export declare function generateSearchDirectories(roots: string[]): Promise<SearchDirectory[]>;
16
16
  export declare function findTailwindConfiguration(searchDirectories: SearchDirectory[]): string | undefined;
17
+ export declare function getTailwindConfig(searchDirectories: SearchDirectory[], workspaceRoot: string, logger?: {
18
+ warn(message: string): void;
19
+ }): Promise<{
20
+ file: string;
21
+ package: string;
22
+ } | undefined>;
17
23
  export declare function loadPostcssConfiguration(searchDirectories: SearchDirectory[]): Promise<{
18
24
  configPath: string;
19
25
  config: PostcssConfiguration;
@@ -9,8 +9,10 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.generateSearchDirectories = generateSearchDirectories;
11
11
  exports.findTailwindConfiguration = findTailwindConfiguration;
12
+ exports.getTailwindConfig = getTailwindConfig;
12
13
  exports.loadPostcssConfiguration = loadPostcssConfiguration;
13
14
  const promises_1 = require("node:fs/promises");
15
+ const node_module_1 = require("node:module");
14
16
  const node_path_1 = require("node:path");
15
17
  const postcssConfigurationFiles = ['postcss.config.json', '.postcssrc.json'];
16
18
  const tailwindConfigFiles = [
@@ -38,6 +40,27 @@ function findFile(searchDirectories, potentialFiles) {
38
40
  function findTailwindConfiguration(searchDirectories) {
39
41
  return findFile(searchDirectories, tailwindConfigFiles);
40
42
  }
43
+ async function getTailwindConfig(searchDirectories, workspaceRoot, logger) {
44
+ const tailwindConfigurationPath = findTailwindConfiguration(searchDirectories);
45
+ if (!tailwindConfigurationPath) {
46
+ return undefined;
47
+ }
48
+ // Create a node resolver from the configuration file
49
+ const resolver = (0, node_module_1.createRequire)(tailwindConfigurationPath);
50
+ try {
51
+ return {
52
+ file: tailwindConfigurationPath,
53
+ package: resolver.resolve('tailwindcss'),
54
+ };
55
+ }
56
+ catch {
57
+ const relativeTailwindConfigPath = (0, node_path_1.relative)(workspaceRoot, tailwindConfigurationPath);
58
+ logger?.warn(`Tailwind CSS configuration file found (${relativeTailwindConfigPath})` +
59
+ ` but the 'tailwindcss' package is not installed.` +
60
+ ` To enable Tailwind CSS, please install the 'tailwindcss' package.`);
61
+ }
62
+ return undefined;
63
+ }
41
64
  async function readPostcssConfiguration(configurationFile) {
42
65
  const data = await (0, promises_1.readFile)(configurationFile, 'utf-8');
43
66
  const config = JSON.parse(data);
@@ -1 +1 @@
1
- {"version":3,"file":"postcss-configuration.js","sourceRoot":"","sources":["postcss-configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postcss-configuration.js","sourceRoot":"","sources":["postcss-configuration.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ exports.mergeCumulativeDurations = mergeCumulativeDurations;
13
13
  exports.logCumulativeDurations = logCumulativeDurations;
14
14
  exports.profileAsync = profileAsync;
15
15
  exports.profileSync = profileSync;
16
- const environment_options_1 = require("../../utils/environment-options");
16
+ const environment_options_1 = require("./environment-options");
17
17
  let cumulativeDurations;
18
18
  function resetCumulativeDurations() {
19
19
  cumulativeDurations?.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"profiling.js","sourceRoot":"","sources":["profiling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiling.js","sourceRoot":"","sources":["profiling.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ function assertCompatibleAngularVersion(projectRoot) {
30
30
  }
31
31
  const angularCoreSemVer = new semver_1.SemVer(angularPkgJson['version']);
32
32
  const { version, build, raw } = angularCoreSemVer;
33
- const supportedAngularSemver = '^22.0.0 || ^22.2.0-next.0';
33
+ const supportedAngularSemver = '^22.0.0';
34
34
  if (version.startsWith('0.0.0') || supportedAngularSemver.startsWith('0.0.0')) {
35
35
  // Internal CLI and FW testing version.
36
36
  return;
@@ -24,6 +24,23 @@ export interface WatcherOptions {
24
24
  followSymlinks?: boolean;
25
25
  cwd?: string;
26
26
  }
27
+ export interface SetupWatcherOptions {
28
+ workspaceRoot: string;
29
+ projectRoot: string;
30
+ outputPath: string;
31
+ cacheOptions: {
32
+ basePath: string;
33
+ localBasePath?: string;
34
+ };
35
+ poll?: number;
36
+ preserveSymlinks?: boolean;
37
+ signal?: AbortSignal;
38
+ watchFiles?: Iterable<string>;
39
+ }
40
+ /**
41
+ * Sets up and initializes a file watcher with proper ignore patterns for build outputs and caches.
42
+ */
43
+ export declare function setupWatcher(options: SetupWatcherOptions): Promise<BuildWatcher>;
27
44
  /**
28
45
  * Normalizes a file system path string to POSIX format (forward slashes '/')
29
46
  * and strips trailing slashes (except root '/' or Windows drive root 'C:/').
@@ -44,14 +44,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
44
44
  };
45
45
  Object.defineProperty(exports, "__esModule", { value: true });
46
46
  exports.ChangedFiles = void 0;
47
+ exports.setupWatcher = setupWatcher;
47
48
  exports.toPosixPathNormalized = toPosixPathNormalized;
48
49
  exports.getDirectoryPath = getDirectoryPath;
49
50
  exports.createWatcher = createWatcher;
50
51
  exports.isPathInside = isPathInside;
52
+ const node_events_1 = require("node:events");
51
53
  const fs = __importStar(require("node:fs"));
52
54
  const path = __importStar(require("node:path"));
53
55
  const picomatch_1 = __importDefault(require("picomatch"));
54
- const path_1 = require("../../utils/path");
56
+ const environment_options_1 = require("./environment-options");
57
+ const path_1 = require("./path");
55
58
  class ChangedFiles {
56
59
  added = new Set();
57
60
  modified = new Set();
@@ -69,6 +72,75 @@ class ChangedFiles {
69
72
  }
70
73
  }
71
74
  exports.ChangedFiles = ChangedFiles;
75
+ // Watch workspace for package manager changes
76
+ const packageWatchFiles = [
77
+ // manifest can affect module resolution
78
+ 'package.json',
79
+ // npm lock file
80
+ 'package-lock.json',
81
+ // pnpm lock file
82
+ 'pnpm-lock.yaml',
83
+ // yarn lock file including Yarn PnP manifest files (https://yarnpkg.com/advanced/pnp-spec/)
84
+ 'yarn.lock',
85
+ '.pnp.cjs',
86
+ '.pnp.data.json',
87
+ ];
88
+ /**
89
+ * Sets up and initializes a file watcher with proper ignore patterns for build outputs and caches.
90
+ */
91
+ async function setupWatcher(options) {
92
+ const { workspaceRoot, projectRoot, outputPath, cacheOptions, poll, preserveSymlinks, signal, watchFiles, } = options;
93
+ const normalizedOutputBase = (0, path_1.toPosixPath)(outputPath);
94
+ const normalizedCacheBase = (0, path_1.toPosixPath)(cacheOptions.basePath);
95
+ const ignored = [
96
+ // Ignore the output and cache paths to avoid infinite rebuild cycles
97
+ normalizedOutputBase,
98
+ `${normalizedOutputBase}/**`,
99
+ normalizedCacheBase,
100
+ `${normalizedCacheBase}/**`,
101
+ `${(0, path_1.toPosixPath)(workspaceRoot)}/**/.*/**`,
102
+ ];
103
+ if (cacheOptions.localBasePath && cacheOptions.localBasePath !== cacheOptions.basePath) {
104
+ const normalizedLocalCacheBase = (0, path_1.toPosixPath)(cacheOptions.localBasePath);
105
+ ignored.push(normalizedLocalCacheBase, `${normalizedLocalCacheBase}/**`);
106
+ }
107
+ if (environment_options_1.shouldWatchRoot && !preserveSymlinks) {
108
+ // Ignore all node modules directories to avoid excessive file watchers.
109
+ // Package changes are handled below by watching manifest and lock files.
110
+ // NOTE: this is not enabled when preserveSymlinks is true as this would break `npm link` usages.
111
+ ignored.push('**/node_modules/**');
112
+ }
113
+ const watcher = await createWatcher({
114
+ polling: typeof poll === 'number',
115
+ interval: poll,
116
+ followSymlinks: preserveSymlinks,
117
+ ignored,
118
+ cwd: workspaceRoot,
119
+ });
120
+ // Setup abort support
121
+ if (signal) {
122
+ const onAbort = () => void watcher.close();
123
+ signal.addEventListener('abort', onAbort, { once: true });
124
+ const originalClose = watcher.close.bind(watcher);
125
+ watcher.close = async () => {
126
+ signal.removeEventListener('abort', onAbort);
127
+ await originalClose();
128
+ };
129
+ }
130
+ // Watch the entire project root if 'NG_BUILD_WATCH_ROOT' environment variable is set
131
+ if (environment_options_1.shouldWatchRoot) {
132
+ if (!preserveSymlinks) {
133
+ watcher.add(packageWatchFiles
134
+ .map((file) => path.join(workspaceRoot, file))
135
+ .filter((file) => fs.existsSync(file)));
136
+ }
137
+ watcher.add(projectRoot);
138
+ }
139
+ if (watchFiles) {
140
+ watcher.add(Array.isArray(watchFiles) ? watchFiles : Array.from(watchFiles));
141
+ }
142
+ return watcher;
143
+ }
72
144
  /**
73
145
  * Probes the filesystem at the specified target directory to determine whether it is case-sensitive.
74
146
  */
@@ -490,6 +562,11 @@ async function createChokidarWatcher(options, chokidarModule) {
490
562
  interval: options?.interval,
491
563
  });
492
564
  const initTime = Date.now();
565
+ // Wait for the watcher to complete its initial filesystem scan before returning.
566
+ // With `ignoreInitial: true`, any file visited during the initial scan is treated as the initial baseline
567
+ // and will not emit 'add' or 'change' events. Awaiting 'ready' ensures that rapid file modifications
568
+ // made right after watcher setup (e.g. in rebuild tests) are not swallowed as initial files.
569
+ await (0, node_events_1.once)(watcher, 'ready');
493
570
  const handleEvent = (type, rawPath) => {
494
571
  const posixPath = toPosixPathNormalized(rawPath);
495
572
  const lookupKey = toLookupKey(posixPath, isCaseSensitive);