@depup/angular__build 22.1.8-depup.5 → 22.2.0-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 (306) hide show
  1. package/README.md +11 -15
  2. package/builders.json +1 -1
  3. package/changes.json +17 -33
  4. package/package.json +36 -51
  5. package/src/builders/application/build-action.js +63 -92
  6. package/src/builders/application/build-action.js.map +1 -1
  7. package/src/builders/application/chunk-optimizer.d.ts +2 -2
  8. package/src/builders/application/chunk-optimizer.js +5 -5
  9. package/src/builders/application/chunk-optimizer.js.map +1 -1
  10. package/src/builders/application/execute-build.js +26 -19
  11. package/src/builders/application/execute-build.js.map +1 -1
  12. package/src/builders/application/execute-post-bundle.d.ts +2 -2
  13. package/src/builders/application/execute-post-bundle.js +5 -5
  14. package/src/builders/application/execute-post-bundle.js.map +1 -1
  15. package/src/builders/application/i18n.d.ts +3 -1
  16. package/src/builders/application/i18n.js +48 -13
  17. package/src/builders/application/i18n.js.map +1 -1
  18. package/src/{tools/esbuild → builders/application}/index-html-generator.d.ts +2 -2
  19. package/src/{tools/esbuild → builders/application}/index-html-generator.js +2 -2
  20. package/src/builders/application/index-html-generator.js.map +1 -0
  21. package/src/builders/application/index.js +2 -2
  22. package/src/builders/application/index.js.map +1 -1
  23. package/src/builders/application/options.d.ts +5 -0
  24. package/src/builders/application/options.js +8 -26
  25. package/src/builders/application/options.js.map +1 -1
  26. package/src/builders/application/results.d.ts +3 -2
  27. package/src/builders/application/schema.d.ts +2 -1
  28. package/src/builders/application/schema.js.map +1 -1
  29. package/src/builders/application/schema.json +1 -2
  30. package/src/builders/application/setup-bundling.js +3 -1
  31. package/src/builders/application/setup-bundling.js.map +1 -1
  32. package/src/builders/dev-server/internal.d.ts +1 -1
  33. package/src/builders/dev-server/internal.js +1 -1
  34. package/src/builders/dev-server/internal.js.map +1 -1
  35. package/src/builders/dev-server/vite/index.js +5 -8
  36. package/src/builders/dev-server/vite/index.js.map +1 -1
  37. package/src/builders/dev-server/vite/server.js +2 -0
  38. package/src/builders/dev-server/vite/server.js.map +1 -1
  39. package/src/builders/dev-server/vite/utils.d.ts +1 -1
  40. package/src/builders/dev-server/vite/utils.js +9 -4
  41. package/src/builders/dev-server/vite/utils.js.map +1 -1
  42. package/src/builders/extract-i18n/application-extraction.js +6 -5
  43. package/src/builders/extract-i18n/application-extraction.js.map +1 -1
  44. package/src/builders/karma/application_builder.js +1 -1
  45. package/src/builders/karma/application_builder.js.map +1 -1
  46. package/src/builders/karma/assets-middleware.d.ts +2 -2
  47. package/src/builders/karma/assets-middleware.js +5 -2
  48. package/src/builders/karma/assets-middleware.js.map +1 -1
  49. package/src/builders/karma/progress-reporter.js +7 -5
  50. package/src/builders/karma/progress-reporter.js.map +1 -1
  51. package/src/builders/karma/utils.d.ts +2 -1
  52. package/src/builders/karma/utils.js +2 -2
  53. package/src/builders/karma/utils.js.map +1 -1
  54. package/src/builders/unit-test/builder.js +1 -1
  55. package/src/builders/unit-test/runners/vitest/build-options.js +9 -3
  56. package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -1
  57. package/src/builders/unit-test/runners/vitest/executor.js +5 -4
  58. package/src/builders/unit-test/runners/vitest/executor.js.map +1 -1
  59. package/src/builders/unit-test/runners/vitest/plugins.d.ts +4 -4
  60. package/src/builders/unit-test/runners/vitest/plugins.js +9 -2
  61. package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -1
  62. package/src/builders/unit-test/schema.d.ts +3 -2
  63. package/src/builders/unit-test/schema.js.map +1 -1
  64. package/src/builders/unit-test/schema.json +3 -2
  65. package/src/builders/unit-test/test-discovery.js +3 -2
  66. package/src/builders/unit-test/test-discovery.js.map +1 -1
  67. package/src/private.d.ts +3 -5
  68. package/src/private.js +6 -9
  69. package/src/private.js.map +1 -1
  70. package/src/tools/angular/angular-host.d.ts +1 -2
  71. package/src/tools/angular/angular-host.js +6 -6
  72. package/src/tools/angular/angular-host.js.map +1 -1
  73. package/src/tools/angular/compilation/angular-compilation.d.ts +24 -16
  74. package/src/tools/angular/compilation/angular-compilation.js +4 -80
  75. package/src/tools/angular/compilation/angular-compilation.js.map +1 -1
  76. package/src/tools/angular/compilation/aot-compilation.d.ts +6 -12
  77. package/src/tools/angular/compilation/aot-compilation.js +23 -20
  78. package/src/tools/angular/compilation/aot-compilation.js.map +1 -1
  79. package/src/tools/angular/compilation/compiler-options.d.ts +25 -0
  80. package/src/tools/angular/compilation/compiler-options.js +135 -0
  81. package/src/tools/angular/compilation/compiler-options.js.map +1 -0
  82. package/src/tools/angular/compilation/factory.d.ts +5 -3
  83. package/src/tools/angular/compilation/factory.js +10 -5
  84. package/src/tools/angular/compilation/factory.js.map +1 -1
  85. package/src/tools/angular/compilation/index.d.ts +3 -3
  86. package/src/tools/angular/compilation/index.js +1 -3
  87. package/src/tools/angular/compilation/index.js.map +1 -1
  88. package/src/tools/angular/compilation/jit-compilation.d.ts +6 -9
  89. package/src/tools/angular/compilation/jit-compilation.js +10 -16
  90. package/src/tools/angular/compilation/jit-compilation.js.map +1 -1
  91. package/src/tools/angular/compilation/parallel-compilation.d.ts +3 -14
  92. package/src/tools/angular/compilation/parallel-compilation.js +40 -42
  93. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -1
  94. package/src/tools/angular/compilation/parallel-worker.d.ts +5 -17
  95. package/src/tools/angular/compilation/parallel-worker.js +89 -68
  96. package/src/tools/angular/compilation/parallel-worker.js.map +1 -1
  97. package/src/tools/angular/compilation/typescript-compilation.d.ts +31 -0
  98. package/src/tools/angular/compilation/typescript-compilation.js +125 -0
  99. package/src/tools/angular/compilation/typescript-compilation.js.map +1 -0
  100. package/src/tools/angular/linker/oxc-ast-host.d.ts +33 -0
  101. package/src/tools/angular/linker/oxc-ast-host.js +234 -0
  102. package/src/tools/angular/linker/oxc-ast-host.js.map +1 -0
  103. package/src/tools/angular/linker/oxc-linker.d.ts +22 -0
  104. package/src/tools/angular/linker/oxc-linker.js +75 -0
  105. package/src/tools/angular/linker/oxc-linker.js.map +1 -0
  106. package/src/tools/angular/linker/string-ast-factory.d.ts +86 -0
  107. package/src/tools/angular/linker/string-ast-factory.js +234 -0
  108. package/src/tools/angular/linker/string-ast-factory.js.map +1 -0
  109. package/src/tools/esbuild/angular/compilation-state.d.ts +23 -3
  110. package/src/tools/esbuild/angular/compilation-state.js +51 -13
  111. package/src/tools/esbuild/angular/compilation-state.js.map +1 -1
  112. package/src/tools/esbuild/angular/compiler-plugin.d.ts +1 -0
  113. package/src/tools/esbuild/angular/compiler-plugin.js +126 -139
  114. package/src/tools/esbuild/angular/compiler-plugin.js.map +1 -1
  115. package/src/tools/esbuild/angular/component-stylesheets.d.ts +3 -3
  116. package/src/tools/esbuild/angular/component-stylesheets.js +52 -22
  117. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -1
  118. package/src/tools/esbuild/angular/source-file-cache.d.ts +1 -2
  119. package/src/tools/esbuild/angular/source-file-cache.js +1 -11
  120. package/src/tools/esbuild/angular/source-file-cache.js.map +1 -1
  121. package/src/tools/esbuild/application-code-bundle.js +7 -14
  122. package/src/tools/esbuild/application-code-bundle.js.map +1 -1
  123. package/src/tools/esbuild/budget-stats.js +3 -3
  124. package/src/tools/esbuild/budget-stats.js.map +1 -1
  125. package/src/tools/esbuild/bundler-context.d.ts +23 -7
  126. package/src/tools/esbuild/bundler-context.js +112 -43
  127. package/src/tools/esbuild/bundler-context.js.map +1 -1
  128. package/src/tools/esbuild/bundler-execution-result.d.ts +2 -1
  129. package/src/tools/esbuild/bundler-execution-result.js +2 -2
  130. package/src/tools/esbuild/bundler-execution-result.js.map +1 -1
  131. package/src/tools/esbuild/bundler-files.js +3 -5
  132. package/src/tools/esbuild/bundler-files.js.map +1 -1
  133. package/src/tools/esbuild/compiler-plugin-options.js +2 -1
  134. package/src/tools/esbuild/compiler-plugin-options.js.map +1 -1
  135. package/src/tools/esbuild/i18n-locale-plugin.d.ts +1 -8
  136. package/src/tools/esbuild/i18n-locale-plugin.js +33 -114
  137. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -1
  138. package/src/tools/esbuild/license-extractor.d.ts +1 -1
  139. package/src/tools/esbuild/license-extractor.js +89 -86
  140. package/src/tools/esbuild/license-extractor.js.map +1 -1
  141. package/src/tools/esbuild/load-result-cache.d.ts +2 -1
  142. package/src/tools/esbuild/load-result-cache.js +28 -13
  143. package/src/tools/esbuild/load-result-cache.js.map +1 -1
  144. package/src/tools/esbuild/persistent-load-result-cache.d.ts +87 -0
  145. package/src/tools/esbuild/persistent-load-result-cache.js +229 -0
  146. package/src/tools/esbuild/persistent-load-result-cache.js.map +1 -0
  147. package/src/tools/esbuild/stylesheets/bundle-options.d.ts +1 -0
  148. package/src/tools/esbuild/stylesheets/bundle-options.js +1 -1
  149. package/src/tools/esbuild/stylesheets/bundle-options.js.map +1 -1
  150. package/src/tools/esbuild/stylesheets/css-resource-plugin.d.ts +3 -1
  151. package/src/tools/esbuild/stylesheets/css-resource-plugin.js +4 -2
  152. package/src/tools/esbuild/stylesheets/css-resource-plugin.js.map +1 -1
  153. package/src/tools/esbuild/stylesheets/sass-language.d.ts +9 -0
  154. package/src/tools/esbuild/stylesheets/sass-language.js +109 -50
  155. package/src/tools/esbuild/stylesheets/sass-language.js.map +1 -1
  156. package/src/tools/esbuild/stylesheets/stylesheet-cache-key.d.ts +35 -0
  157. package/src/tools/esbuild/stylesheets/stylesheet-cache-key.js +64 -0
  158. package/src/tools/esbuild/stylesheets/stylesheet-cache-key.js.map +1 -0
  159. package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.d.ts +1 -1
  160. package/src/tools/esbuild/utils.d.ts +3 -3
  161. package/src/tools/esbuild/utils.js +9 -6
  162. package/src/tools/esbuild/utils.js.map +1 -1
  163. package/src/tools/i18n/i18n-inliner-worker.d.ts +126 -0
  164. package/src/tools/i18n/i18n-inliner-worker.js +363 -0
  165. package/src/tools/i18n/i18n-inliner-worker.js.map +1 -0
  166. package/src/tools/i18n/i18n-inliner.d.ts +97 -0
  167. package/src/tools/i18n/i18n-inliner.js +500 -0
  168. package/src/tools/i18n/i18n-inliner.js.map +1 -0
  169. package/src/tools/i18n/i18n-translation-encoder.d.ts +21 -0
  170. package/src/tools/i18n/i18n-translation-encoder.js +92 -0
  171. package/src/tools/i18n/i18n-translation-encoder.js.map +1 -0
  172. package/src/tools/i18n/i18n-translation-reader.d.ts +41 -0
  173. package/src/tools/i18n/i18n-translation-reader.js +164 -0
  174. package/src/tools/i18n/i18n-translation-reader.js.map +1 -0
  175. package/src/tools/i18n/index.d.ts +11 -0
  176. package/src/tools/i18n/index.js +28 -0
  177. package/src/tools/i18n/index.js.map +1 -0
  178. package/src/tools/i18n/locale-data.d.ts +47 -0
  179. package/src/tools/i18n/locale-data.js +108 -0
  180. package/src/tools/i18n/locale-data.js.map +1 -0
  181. package/src/tools/javascript-transformer/index.d.ts +8 -0
  182. package/src/tools/javascript-transformer/index.js +25 -0
  183. package/src/tools/javascript-transformer/index.js.map +1 -0
  184. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer-worker.d.ts +0 -4
  185. package/src/tools/javascript-transformer/javascript-transformer-worker.js +231 -0
  186. package/src/tools/javascript-transformer/javascript-transformer-worker.js.map +1 -0
  187. package/src/tools/{esbuild → javascript-transformer}/javascript-transformer.d.ts +26 -9
  188. package/src/tools/javascript-transformer/javascript-transformer.js +294 -0
  189. package/src/tools/javascript-transformer/javascript-transformer.js.map +1 -0
  190. package/src/tools/{babel/plugins → oxc}/oxc-transform.d.ts +5 -2
  191. package/src/tools/{babel/plugins → oxc}/oxc-transform.js +105 -138
  192. package/src/tools/oxc/oxc-transform.js.map +1 -0
  193. package/src/tools/oxc/traversal.d.ts +32 -0
  194. package/src/tools/oxc/traversal.js +299 -0
  195. package/src/tools/oxc/traversal.js.map +1 -0
  196. package/src/tools/oxc/types.d.ts +20 -0
  197. package/src/tools/sass/rebasing-importer.d.ts +12 -18
  198. package/src/tools/sass/rebasing-importer.js +23 -26
  199. package/src/tools/sass/rebasing-importer.js.map +1 -1
  200. package/src/tools/sass/sass-service.d.ts +15 -38
  201. package/src/tools/sass/sass-service.js +132 -187
  202. package/src/tools/sass/sass-service.js.map +1 -1
  203. package/src/tools/vite/middlewares/assets-middleware.js +3 -3
  204. package/src/tools/vite/middlewares/assets-middleware.js.map +1 -1
  205. package/src/tools/vite/utils.d.ts +1 -1
  206. package/src/{tools/esbuild → utils/cache}/cache.d.ts +25 -8
  207. package/src/{tools/esbuild → utils/cache}/cache.js +72 -41
  208. package/src/utils/cache/cache.js.map +1 -0
  209. package/src/utils/cache/index.d.ts +8 -0
  210. package/src/utils/cache/index.js +25 -0
  211. package/src/utils/cache/index.js.map +1 -0
  212. package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js +1 -1
  213. package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.js.map +1 -1
  214. package/src/{tools/esbuild → utils/cache}/sqlite-cache-store.d.ts +1 -1
  215. package/src/utils/cache/sqlite-cache-store.js +339 -0
  216. package/src/utils/cache/sqlite-cache-store.js.map +1 -0
  217. package/src/utils/concurrency.d.ts +30 -0
  218. package/src/utils/concurrency.js +81 -0
  219. package/src/utils/concurrency.js.map +1 -0
  220. package/src/utils/environment-options.d.ts +34 -0
  221. package/src/utils/environment-options.js +42 -12
  222. package/src/utils/environment-options.js.map +1 -1
  223. package/src/utils/hash.d.ts +24 -0
  224. package/src/utils/hash.js +94 -0
  225. package/src/utils/hash.js.map +1 -0
  226. package/src/utils/i18n-options.d.ts +3 -1
  227. package/src/utils/i18n-options.js.map +1 -1
  228. package/src/utils/index-file/auto-csp.d.ts +8 -0
  229. package/src/utils/index-file/auto-csp.js +30 -3
  230. package/src/utils/index-file/auto-csp.js.map +1 -1
  231. package/src/utils/index-file/index-html-generator.d.ts +1 -1
  232. package/src/utils/index-file/index-html-generator.js +9 -13
  233. package/src/utils/index-file/index-html-generator.js.map +1 -1
  234. package/src/utils/index-file/inline-critical-css.d.ts +16 -18
  235. package/src/utils/index-file/inline-critical-css.js +78 -179
  236. package/src/utils/index-file/inline-critical-css.js.map +1 -1
  237. package/src/utils/index-file/nonce.d.ts +2 -0
  238. package/src/utils/index-file/nonce.js +1 -0
  239. package/src/utils/index-file/nonce.js.map +1 -1
  240. package/src/utils/normalize-cache.js +1 -1
  241. package/src/utils/postcss-configuration.d.ts +6 -0
  242. package/src/utils/postcss-configuration.js +23 -0
  243. package/src/utils/postcss-configuration.js.map +1 -1
  244. package/src/{tools/esbuild → utils}/profiling.js +1 -1
  245. package/src/{tools/esbuild → utils}/profiling.js.map +1 -1
  246. package/src/utils/server-rendering/manifest.d.ts +2 -2
  247. package/src/utils/server-rendering/manifest.js +53 -4
  248. package/src/utils/server-rendering/manifest.js.map +1 -1
  249. package/src/utils/source-map.d.ts +26 -2
  250. package/src/utils/source-map.js +151 -53
  251. package/src/utils/source-map.js.map +1 -1
  252. package/src/utils/test-files.d.ts +2 -2
  253. package/src/utils/test-files.js +3 -3
  254. package/src/utils/test-files.js.map +1 -1
  255. package/src/utils/watcher.d.ts +61 -0
  256. package/src/utils/watcher.js +642 -0
  257. package/src/utils/watcher.js.map +1 -0
  258. package/src/tools/angular/compilation/noop-compilation.d.ts +0 -20
  259. package/src/tools/angular/compilation/noop-compilation.js +0 -27
  260. package/src/tools/angular/compilation/noop-compilation.js.map +0 -1
  261. package/src/tools/babel/plugins/add-code-coverage.d.ts +0 -14
  262. package/src/tools/babel/plugins/add-code-coverage.js +0 -44
  263. package/src/tools/babel/plugins/add-code-coverage.js.map +0 -1
  264. package/src/tools/babel/plugins/adjust-static-class-members.d.ts +0 -25
  265. package/src/tools/babel/plugins/adjust-static-class-members.js +0 -349
  266. package/src/tools/babel/plugins/adjust-static-class-members.js.map +0 -1
  267. package/src/tools/babel/plugins/adjust-typescript-enums.d.ts +0 -21
  268. package/src/tools/babel/plugins/adjust-typescript-enums.js +0 -113
  269. package/src/tools/babel/plugins/adjust-typescript-enums.js.map +0 -1
  270. package/src/tools/babel/plugins/elide-angular-metadata.d.ts +0 -23
  271. package/src/tools/babel/plugins/elide-angular-metadata.js +0 -110
  272. package/src/tools/babel/plugins/elide-angular-metadata.js.map +0 -1
  273. package/src/tools/babel/plugins/index.d.ts +0 -11
  274. package/src/tools/babel/plugins/index.js +0 -22
  275. package/src/tools/babel/plugins/index.js.map +0 -1
  276. package/src/tools/babel/plugins/oxc-transform.js.map +0 -1
  277. package/src/tools/babel/plugins/pure-toplevel-functions.d.ts +0 -13
  278. package/src/tools/babel/plugins/pure-toplevel-functions.js +0 -128
  279. package/src/tools/babel/plugins/pure-toplevel-functions.js.map +0 -1
  280. package/src/tools/babel/plugins/types.d.ts +0 -20
  281. package/src/tools/babel/typings.d.ts +0 -21
  282. package/src/tools/esbuild/cache.js.map +0 -1
  283. package/src/tools/esbuild/i18n-inliner-worker.d.ts +0 -81
  284. package/src/tools/esbuild/i18n-inliner-worker.js +0 -255
  285. package/src/tools/esbuild/i18n-inliner-worker.js.map +0 -1
  286. package/src/tools/esbuild/i18n-inliner.d.ts +0 -58
  287. package/src/tools/esbuild/i18n-inliner.js +0 -265
  288. package/src/tools/esbuild/i18n-inliner.js.map +0 -1
  289. package/src/tools/esbuild/index-html-generator.js.map +0 -1
  290. package/src/tools/esbuild/javascript-transformer-worker.js +0 -192
  291. package/src/tools/esbuild/javascript-transformer-worker.js.map +0 -1
  292. package/src/tools/esbuild/javascript-transformer.js +0 -197
  293. package/src/tools/esbuild/javascript-transformer.js.map +0 -1
  294. package/src/tools/esbuild/sqlite-cache-store.js +0 -165
  295. package/src/tools/esbuild/sqlite-cache-store.js.map +0 -1
  296. package/src/tools/esbuild/watcher.d.ts +0 -25
  297. package/src/tools/esbuild/watcher.js +0 -119
  298. package/src/tools/esbuild/watcher.js.map +0 -1
  299. package/src/tools/sass/worker.d.ts +0 -63
  300. package/src/tools/sass/worker.js +0 -202
  301. package/src/tools/sass/worker.js.map +0 -1
  302. /package/src/tools/{esbuild/angular → angular/compilation}/diagnostics.d.ts +0 -0
  303. /package/src/tools/{esbuild/angular → angular/compilation}/diagnostics.js +0 -0
  304. /package/src/tools/{esbuild/angular → angular/compilation}/diagnostics.js.map +0 -0
  305. /package/src/{tools/esbuild → utils/cache}/lmdb-cache-store.d.ts +0 -0
  306. /package/src/{tools/esbuild → utils}/profiling.d.ts +0 -0
@@ -6,102 +6,92 @@
6
6
  * Use of this source code is governed by an MIT-style license that can be
7
7
  * found in the LICENSE file at https://angular.dev/license
8
8
  */
9
- var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
10
- if (value !== null && value !== void 0) {
11
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
12
- var dispose, inner;
13
- if (async) {
14
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
15
- dispose = value[Symbol.asyncDispose];
16
- }
17
- if (dispose === void 0) {
18
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
19
- dispose = value[Symbol.dispose];
20
- if (async) inner = dispose;
21
- }
22
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
23
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
24
- env.stack.push({ value: value, dispose: dispose, async: async });
25
- }
26
- else if (async) {
27
- env.stack.push({ async: true });
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]; } };
28
14
  }
29
- return value;
30
- };
31
- var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
32
- return function (env) {
33
- function fail(e) {
34
- env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
35
- env.hasError = true;
36
- }
37
- var r, s = 0;
38
- function next() {
39
- while (r = env.stack.pop()) {
40
- try {
41
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
42
- if (r.dispose) {
43
- var result = r.dispose.call(r.value);
44
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
45
- }
46
- else s |= 1;
47
- }
48
- catch (e) {
49
- fail(e);
50
- }
51
- }
52
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
53
- if (env.hasError) throw env.error;
54
- }
55
- return next();
56
- };
57
- })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
58
- var e = new Error(message);
59
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
60
24
  });
25
+ var __importStar = (this && this.__importStar) || (function () {
26
+ var ownKeys = function(o) {
27
+ ownKeys = Object.getOwnPropertyNames || function (o) {
28
+ var ar = [];
29
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
30
+ return ar;
31
+ };
32
+ return ownKeys(o);
33
+ };
34
+ return function (mod) {
35
+ if (mod && mod.__esModule) return mod;
36
+ var result = {};
37
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
38
+ __setModuleDefault(result, mod);
39
+ return result;
40
+ };
41
+ })();
61
42
  var __importDefault = (this && this.__importDefault) || function (mod) {
62
43
  return (mod && mod.__esModule) ? mod : { "default": mod };
63
44
  };
64
45
  Object.defineProperty(exports, "__esModule", { value: true });
65
- exports.SassWorkerImplementation = void 0;
66
- const node_assert_1 = __importDefault(require("node:assert"));
46
+ exports.SassCompiler = void 0;
47
+ const remapping_1 = __importDefault(require("@ampproject/remapping"));
48
+ const node_path_1 = require("node:path");
67
49
  const node_url_1 = require("node:url");
68
- const node_worker_threads_1 = require("node:worker_threads");
69
50
  const environment_options_1 = require("../../utils/environment-options");
70
- const worker_pool_1 = require("../../utils/worker-pool");
71
- // Polyfill Symbol.dispose if not present
72
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
- Symbol.dispose ??= Symbol('Symbol Dispose');
74
- /**
75
- * The maximum number of Workers that will be created to execute render requests.
76
- */
77
- const MAX_RENDER_WORKERS = environment_options_1.maxWorkers;
51
+ const rebasing_importer_1 = require("./rebasing-importer");
52
+ function isFileImporter(value) {
53
+ return 'findFileUrl' in value;
54
+ }
78
55
  /**
79
- * A Sass renderer implementation that provides an interface that can be used by Webpack's
80
- * `sass-loader`. The implementation uses a Worker thread to perform the Sass rendering
81
- * with the `dart-sass` package. The `dart-sass` synchronous render function is used within
82
- * the worker which can be up to two times faster than the asynchronous variant.
56
+ * A Sass renderer implementation that uses the persistent Dart Sass embedded compiler
57
+ * daemon (`sass-embedded`) communicating over standard input/output with protocol buffers,
58
+ * or falls back to the pure-JS Dart Sass async compiler (`sass.initAsyncCompiler()`).
83
59
  */
84
- class SassWorkerImplementation {
60
+ class SassCompiler {
85
61
  rebase;
86
- maxThreads;
87
- #workerPool;
88
- constructor(rebase = false, maxThreads = MAX_RENDER_WORKERS) {
62
+ #asyncCompiler;
63
+ #asyncCompilerPromise;
64
+ #directoryCache = new Map();
65
+ constructor(rebase = false) {
89
66
  this.rebase = rebase;
90
- this.maxThreads = maxThreads;
91
67
  }
92
- #ensureWorkerPool() {
93
- this.#workerPool ??= new worker_pool_1.WorkerPool({
94
- filename: require.resolve('./worker'),
95
- maxThreads: this.maxThreads,
96
- });
97
- return this.#workerPool;
68
+ async #createAsyncCompiler() {
69
+ if (environment_options_1.useSassEmbedded) {
70
+ const { initAsyncCompiler } = await Promise.resolve().then(() => __importStar(require('sass-embedded')));
71
+ return initAsyncCompiler();
72
+ }
73
+ const { initAsyncCompiler } = await Promise.resolve().then(() => __importStar(require('sass')));
74
+ return initAsyncCompiler();
75
+ }
76
+ async #ensureAsyncCompiler() {
77
+ if (this.#asyncCompiler) {
78
+ return this.#asyncCompiler;
79
+ }
80
+ this.#asyncCompilerPromise ??= this.#createAsyncCompiler();
81
+ try {
82
+ this.#asyncCompiler = await this.#asyncCompilerPromise;
83
+ }
84
+ finally {
85
+ this.#asyncCompilerPromise = undefined;
86
+ }
87
+ return this.#asyncCompiler;
98
88
  }
99
89
  /**
100
90
  * Provides information about the Sass implementation.
101
- * This mimics enough of the `dart-sass` value to be used with the `sass-loader`.
91
+ * This mimics enough of the `sass-embedded` or `sass` value to be used with the `sass-loader`.
102
92
  */
103
93
  get info() {
104
- return 'dart-sass\tworker';
94
+ return environment_options_1.useSassEmbedded ? 'sass-embedded\tasync-compiler' : 'dart-sass\tasync-compiler';
105
95
  }
106
96
  /**
107
97
  * The synchronous render function is not used by the `sass-loader`.
@@ -110,133 +100,88 @@ class SassWorkerImplementation {
110
100
  throw new Error('Sass compileString is not supported.');
111
101
  }
112
102
  /**
113
- * Asynchronously request a Sass stylesheet to be renderered.
103
+ * Asynchronously request a Sass stylesheet to be rendered using the native embedded compiler
104
+ * or the pure-JS async compiler fallback.
114
105
  *
115
106
  * @param source The contents to compile.
116
- * @param options The `dart-sass` options to use when rendering the stylesheet.
107
+ * @param options The `sass` / `sass-embedded` options to use when rendering the stylesheet.
117
108
  */
118
109
  async compileStringAsync(source, options) {
119
- const env_1 = { stack: [], error: void 0, hasError: false };
120
- try {
121
- // The `functions`, `logger` and `importer` options are JavaScript functions that cannot be transferred.
122
- // If any additional function options are added in the future, they must be excluded as well.
123
- const { functions, importers, url, logger, ...serializableOptions } = options;
124
- // The CLI's configuration does not use or expose the ability to define custom Sass functions
125
- if (functions && Object.keys(functions).length > 0) {
126
- throw new Error('Sass custom functions are not supported.');
127
- }
128
- const importerChannel = __addDisposableResource(env_1, importers?.length ? this.#createImporterChannel(importers) : undefined, false);
129
- const response = (await this.#ensureWorkerPool().run({
130
- source,
131
- importerChannel,
132
- hasLogger: !!logger,
133
- rebase: this.rebase,
134
- options: {
135
- ...serializableOptions,
136
- // URL is not serializable so to convert to string here and back to URL in the worker.
137
- url: url ? (0, node_url_1.fileURLToPath)(url) : undefined,
138
- },
139
- }, {
140
- transferList: importerChannel ? [importerChannel.port] : undefined,
141
- }));
142
- const { result, error, warnings } = response;
143
- if (warnings && logger?.warn) {
144
- for (const { message, span, ...options } of warnings) {
145
- logger.warn(message, {
146
- ...options,
147
- span: span && {
148
- ...span,
149
- url: span.url ? (0, node_url_1.pathToFileURL)(span.url) : undefined,
150
- },
151
- });
152
- }
153
- }
154
- if (error) {
155
- // Convert stringified url value required for cloning back to a URL object
156
- const url = error.span?.url;
157
- if (url) {
158
- error.span.url = (0, node_url_1.pathToFileURL)(url);
159
- }
160
- throw error;
110
+ // The CLI's configuration does not use or expose the ability to define custom Sass functions
111
+ if (options.functions && Object.keys(options.functions).length > 0) {
112
+ throw new Error('Sass custom functions are not supported.');
113
+ }
114
+ const compiler = await this.#ensureAsyncCompiler();
115
+ if (!this.rebase) {
116
+ return compiler.compileStringAsync(source, options);
117
+ }
118
+ const { functions, importers, importer, url, logger, ...serializableOptions } = options;
119
+ let finalImporters;
120
+ let loadPaths = options.loadPaths;
121
+ const entryDirectory = url ? (0, node_path_1.dirname)((0, node_url_1.fileURLToPath)(url)) : process.cwd();
122
+ const directoryCache = this.#directoryCache;
123
+ const rebaseSourceMaps = options.sourceMap ? new Map() : undefined;
124
+ if (importers?.length) {
125
+ if (importers.some((i) => !isFileImporter(i))) {
126
+ throw new Error('Only File Importers are supported.');
161
127
  }
162
- (0, node_assert_1.default)(result, 'Sass render worker should always return a result or an error');
163
- return {
164
- ...result,
165
- // URL is not serializable so in the worker we convert to string and here back to URL.
166
- loadedUrls: result.loadedUrls.map((p) => (0, node_url_1.pathToFileURL)(p)),
167
- };
128
+ finalImporters = [
129
+ new rebasing_importer_1.AsyncModuleUrlRebasingImporter(entryDirectory, directoryCache, rebaseSourceMaps, async (specifier, options) => {
130
+ for (const importer of importers) {
131
+ const result = await importer.findFileUrl(specifier, options);
132
+ if (result) {
133
+ return result;
134
+ }
135
+ }
136
+ return null;
137
+ }),
138
+ ];
168
139
  }
169
- catch (e_1) {
170
- env_1.error = e_1;
171
- env_1.hasError = true;
140
+ if (loadPaths?.length) {
141
+ finalImporters ??= [];
142
+ finalImporters.push(new rebasing_importer_1.LoadPathsUrlRebasingImporter(entryDirectory, directoryCache, rebaseSourceMaps, loadPaths));
143
+ loadPaths = undefined;
172
144
  }
173
- finally {
174
- __disposeResources(env_1);
145
+ const relativeImporter = new rebasing_importer_1.RelativeUrlRebasingImporter(entryDirectory, directoryCache, rebaseSourceMaps);
146
+ const result = await compiler.compileStringAsync(source, {
147
+ ...serializableOptions,
148
+ url,
149
+ loadPaths,
150
+ importers: finalImporters,
151
+ importer: relativeImporter,
152
+ logger,
153
+ });
154
+ if (result.sourceMap && rebaseSourceMaps?.size) {
155
+ result.sourceMap = (0, remapping_1.default)(result.sourceMap, (file, context) => (file !== context.importer ? rebaseSourceMaps.get(file) : null));
175
156
  }
157
+ return result;
176
158
  }
177
159
  /**
178
- * Shutdown the Sass render worker.
179
- * Executing this method will stop any pending render requests.
160
+ * Clear the directory cache.
161
+ */
162
+ clearCache() {
163
+ this.#directoryCache.clear();
164
+ }
165
+ /**
166
+ * Shutdown the Sass compiler.
180
167
  * @returns A void promise that resolves when closing is complete.
181
168
  */
182
169
  async close() {
183
- if (this.#workerPool) {
170
+ this.clearCache();
171
+ if (this.#asyncCompilerPromise) {
184
172
  try {
185
- await this.#workerPool.destroy();
173
+ await this.#ensureAsyncCompiler();
186
174
  }
187
- finally {
188
- this.#workerPool = undefined;
175
+ catch {
176
+ // Ignore compiler initialization failures on shutdown
189
177
  }
190
178
  }
191
- }
192
- #createImporterChannel(importers) {
193
- const { port1: mainImporterPort, port2: workerImporterPort } = new node_worker_threads_1.MessageChannel();
194
- const importerSignal = new Int32Array(new SharedArrayBuffer(4));
195
- mainImporterPort.on('message', ({ url, options }) => {
196
- this.processImporters(importers, url, {
197
- ...options,
198
- // URL is not serializable so in the worker we convert to string and here back to URL.
199
- containingUrl: options.containingUrl
200
- ? (0, node_url_1.pathToFileURL)(options.containingUrl)
201
- : null,
202
- })
203
- .then((result) => {
204
- mainImporterPort.postMessage(result);
205
- })
206
- .catch((error) => {
207
- mainImporterPort.postMessage(error);
208
- })
209
- .finally(() => {
210
- Atomics.store(importerSignal, 0, 1);
211
- Atomics.notify(importerSignal, 0);
212
- });
213
- });
214
- mainImporterPort.unref();
215
- return {
216
- port: workerImporterPort,
217
- signal: importerSignal,
218
- [Symbol.dispose]() {
219
- mainImporterPort.close();
220
- },
221
- };
222
- }
223
- async processImporters(importers, url, options) {
224
- for (const importer of importers) {
225
- if (!this.isFileImporter(importer)) {
226
- // Importer
227
- throw new Error('Only File Importers are supported.');
228
- }
229
- // File importer (Can be sync or aync).
230
- const result = await importer.findFileUrl(url, options);
231
- if (result) {
232
- return (0, node_url_1.fileURLToPath)(result);
233
- }
179
+ if (this.#asyncCompiler) {
180
+ const compiler = this.#asyncCompiler;
181
+ this.#asyncCompiler = undefined;
182
+ await compiler.dispose();
234
183
  }
235
- return null;
236
- }
237
- isFileImporter(value) {
238
- return 'findFileUrl' in value;
239
184
  }
240
185
  }
241
- exports.SassWorkerImplementation = SassWorkerImplementation;
186
+ exports.SassCompiler = SassCompiler;
242
187
  //# sourceMappingURL=sass-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sass-service.js","sourceRoot":"","sources":["sass-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sass-service.js","sourceRoot":"","sources":["sass-service.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.createAngularAssetsMiddleware = createAngularAssetsMiddleware;
11
11
  exports.createBuildAssetsMiddleware = createBuildAssetsMiddleware;
12
12
  const mrmime_1 = require("mrmime");
13
- const node_crypto_1 = require("node:crypto");
14
13
  const node_fs_1 = require("node:fs");
15
14
  const node_path_1 = require("node:path");
15
+ const hash_1 = require("../../../utils/hash");
16
16
  const utils_1 = require("../utils");
17
17
  const CSS_PREPROCESSOR_REGEXP = /\.(?:s[ac]ss|less|css)$/;
18
18
  const JS_TS_REGEXP = /\.[cm]?[tj]sx?$/;
@@ -32,7 +32,7 @@ function createAngularAssetsMiddleware(server, assets, outputFiles, componentSty
32
32
  // This is a workaround to serve extensionless, CSS, JS and TS files without Vite transformations.
33
33
  if (!extension || JS_TS_REGEXP.test(extension) || CSS_PREPROCESSOR_REGEXP.test(extension)) {
34
34
  const contents = (0, node_fs_1.readFileSync)(asset.source);
35
- const etag = `W/${(0, node_crypto_1.createHash)('sha256').update(contents).digest('hex')}`;
35
+ const etag = `W/${(0, hash_1.calculateHash)(contents)}`;
36
36
  if (checkAndHandleEtag(req, res, etag)) {
37
37
  return;
38
38
  }
@@ -185,7 +185,7 @@ function createBuildAssetsMiddleware(basePath, buildResultFiles, readHandler = n
185
185
  const outputFile = buildResultFiles.get(pathname.slice(1));
186
186
  if (outputFile) {
187
187
  const contents = outputFile.origin === 'memory' ? outputFile.contents : readHandler(outputFile.inputPath);
188
- const etag = `W/${(0, node_crypto_1.createHash)('sha256').update(contents).digest('hex')}`;
188
+ const etag = `W/${(0, hash_1.calculateHash)(contents)}`;
189
189
  if (checkAndHandleEtag(req, res, etag)) {
190
190
  return;
191
191
  }
@@ -1 +1 @@
1
- {"version":3,"file":"assets-middleware.js","sourceRoot":"","sources":["assets-middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assets-middleware.js","sourceRoot":"","sources":["assets-middleware.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import type { DepOptimizationConfig } from 'vite' with {
9
9
  'resolution-mode': 'import'
10
10
  };
11
11
  import type { ExternalResultMetadata } from '../esbuild/bundler-execution-result';
12
- import { JavaScriptTransformer } from '../esbuild/javascript-transformer';
12
+ import { JavaScriptTransformer } from '../javascript-transformer';
13
13
  export type AngularMemoryOutputFiles = Map<string, {
14
14
  contents: Uint8Array;
15
15
  hash: string;
@@ -37,6 +37,20 @@ export interface PersistentCacheStore<V = any> extends CacheStore<V> {
37
37
  createCache<T = V>(namespace: string): Cache<T>;
38
38
  close(): void | Promise<void>;
39
39
  }
40
+ /**
41
+ * A backing data store wrapper that namespaces all keys using length-prefix framing.
42
+ * Prevents key collisions between namespaces regardless of characters (such as colons)
43
+ * in the namespace or key.
44
+ */
45
+ export declare class NamespacedCacheStore<V> implements CacheStore<V> {
46
+ #private;
47
+ private readonly store;
48
+ readonly namespace: string;
49
+ constructor(store: CacheStore<V>, namespace: string);
50
+ get(key: string): V | undefined | Promise<V | undefined>;
51
+ has(key: string): boolean | Promise<boolean>;
52
+ set(key: string, value: V): this | Promise<this>;
53
+ }
40
54
  /**
41
55
  * A cache object that allows accessing and storing key/value pairs in
42
56
  * an underlying CacheStore. This class is the primary method for consumers
@@ -45,14 +59,7 @@ export interface PersistentCacheStore<V = any> extends CacheStore<V> {
45
59
  export declare class Cache<V, S extends CacheStore<V> = CacheStore<V>> {
46
60
  #private;
47
61
  protected readonly store: S;
48
- readonly namespace?: string | undefined;
49
- constructor(store: S, namespace?: string | undefined);
50
- /**
51
- * Prefixes a key with the cache namespace if present.
52
- * @param key A key string to prefix.
53
- * @returns A prefixed key if a namespace is present. Otherwise the provided key.
54
- */
55
- protected withNamespace(key: string): string;
62
+ constructor(store: S);
56
63
  /**
57
64
  * Gets the value associated with a provided key if available.
58
65
  * Otherwise, creates a value using the factory creator function, puts the value
@@ -75,6 +82,10 @@ export declare class Cache<V, S extends CacheStore<V> = CacheStore<V>> {
75
82
  * @param value A value to put in the cache.
76
83
  */
77
84
  put(key: string, value: V): Promise<void>;
85
+ /**
86
+ * Clears internal state for a specific key (requests, write counts, and pending gets).
87
+ */
88
+ protected deleteInternal(key: string): void;
78
89
  /**
79
90
  * Clears the base class internal state (requests, write counts, and pending gets).
80
91
  */
@@ -85,6 +96,12 @@ export declare class Cache<V, S extends CacheStore<V> = CacheStore<V>> {
85
96
  */
86
97
  export declare class MemoryCache<V> extends Cache<V, Map<string, V>> {
87
98
  constructor();
99
+ /**
100
+ * Removes the specified key from the cache instance.
101
+ * @param key The key to remove.
102
+ * @returns True if an element in the Map existed and has been removed, or false if the element does not exist.
103
+ */
104
+ delete(key: string): boolean;
88
105
  /**
89
106
  * Removes all entries from the cache instance.
90
107
  */