@depup/angular__build 21.2.2-depup.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 (602) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +39 -0
  3. package/builders.json +34 -0
  4. package/changes.json +42 -0
  5. package/index.d.ts +8 -0
  6. package/index.js +25 -0
  7. package/index.js.map +1 -0
  8. package/package.json +177 -0
  9. package/private/index.d.ts +8 -0
  10. package/private/index.js +25 -0
  11. package/private/index.js.map +1 -0
  12. package/src/builders/application/build-action.d.ts +29 -0
  13. package/src/builders/application/build-action.js +355 -0
  14. package/src/builders/application/build-action.js.map +1 -0
  15. package/src/builders/application/chunk-optimizer.d.ts +21 -0
  16. package/src/builders/application/chunk-optimizer.js +278 -0
  17. package/src/builders/application/chunk-optimizer.js.map +1 -0
  18. package/src/builders/application/execute-build.d.ts +11 -0
  19. package/src/builders/application/execute-build.js +250 -0
  20. package/src/builders/application/execute-build.js.map +1 -0
  21. package/src/builders/application/execute-post-bundle.d.ts +27 -0
  22. package/src/builders/application/execute-post-bundle.js +136 -0
  23. package/src/builders/application/execute-post-bundle.js.map +1 -0
  24. package/src/builders/application/i18n.d.ts +31 -0
  25. package/src/builders/application/i18n.js +138 -0
  26. package/src/builders/application/i18n.js.map +1 -0
  27. package/src/builders/application/index.d.ts +32 -0
  28. package/src/builders/application/index.js +253 -0
  29. package/src/builders/application/index.js.map +1 -0
  30. package/src/builders/application/options.d.ts +214 -0
  31. package/src/builders/application/options.js +499 -0
  32. package/src/builders/application/options.js.map +1 -0
  33. package/src/builders/application/results.d.ts +73 -0
  34. package/src/builders/application/results.js +18 -0
  35. package/src/builders/application/results.js.map +1 -0
  36. package/src/builders/application/schema.d.ts +650 -0
  37. package/src/builders/application/schema.js +93 -0
  38. package/src/builders/application/schema.js.map +1 -0
  39. package/src/builders/application/schema.json +728 -0
  40. package/src/builders/application/setup-bundling.d.ts +25 -0
  41. package/src/builders/application/setup-bundling.js +104 -0
  42. package/src/builders/application/setup-bundling.js.map +1 -0
  43. package/src/builders/dev-server/builder.d.ts +31 -0
  44. package/src/builders/dev-server/builder.js +61 -0
  45. package/src/builders/dev-server/builder.js.map +1 -0
  46. package/src/builders/dev-server/index.d.ts +15 -0
  47. package/src/builders/dev-server/index.js +17 -0
  48. package/src/builders/dev-server/index.js.map +1 -0
  49. package/src/builders/dev-server/internal.d.ts +18 -0
  50. package/src/builders/dev-server/internal.js +28 -0
  51. package/src/builders/dev-server/internal.js.map +1 -0
  52. package/src/builders/dev-server/options.d.ts +51 -0
  53. package/src/builders/dev-server/options.js +104 -0
  54. package/src/builders/dev-server/options.js.map +1 -0
  55. package/src/builders/dev-server/output.d.ts +16 -0
  56. package/src/builders/dev-server/output.js +10 -0
  57. package/src/builders/dev-server/output.js.map +1 -0
  58. package/src/builders/dev-server/schema.d.ts +121 -0
  59. package/src/builders/dev-server/schema.js +5 -0
  60. package/src/builders/dev-server/schema.js.map +1 -0
  61. package/src/builders/dev-server/schema.json +138 -0
  62. package/src/builders/dev-server/vite/hmr.d.ts +25 -0
  63. package/src/builders/dev-server/vite/hmr.js +115 -0
  64. package/src/builders/dev-server/vite/hmr.js.map +1 -0
  65. package/src/builders/dev-server/vite/index.d.ts +21 -0
  66. package/src/builders/dev-server/vite/index.js +390 -0
  67. package/src/builders/dev-server/vite/index.js.map +1 -0
  68. package/src/builders/dev-server/vite/server.d.ts +15 -0
  69. package/src/builders/dev-server/vite/server.js +227 -0
  70. package/src/builders/dev-server/vite/server.js.map +1 -0
  71. package/src/builders/dev-server/vite/utils.d.ts +36 -0
  72. package/src/builders/dev-server/vite/utils.js +77 -0
  73. package/src/builders/dev-server/vite/utils.js.map +1 -0
  74. package/src/builders/extract-i18n/application-extraction.d.ts +18 -0
  75. package/src/builders/extract-i18n/application-extraction.js +132 -0
  76. package/src/builders/extract-i18n/application-extraction.js.map +1 -0
  77. package/src/builders/extract-i18n/builder.d.ts +14 -0
  78. package/src/builders/extract-i18n/builder.js +161 -0
  79. package/src/builders/extract-i18n/builder.js.map +1 -0
  80. package/src/builders/extract-i18n/index.d.ts +13 -0
  81. package/src/builders/extract-i18n/index.js +16 -0
  82. package/src/builders/extract-i18n/index.js.map +1 -0
  83. package/src/builders/extract-i18n/options.d.ts +33 -0
  84. package/src/builders/extract-i18n/options.js +86 -0
  85. package/src/builders/extract-i18n/options.js.map +1 -0
  86. package/src/builders/extract-i18n/schema.d.ts +53 -0
  87. package/src/builders/extract-i18n/schema.js +30 -0
  88. package/src/builders/extract-i18n/schema.js.map +1 -0
  89. package/src/builders/extract-i18n/schema.json +38 -0
  90. package/src/builders/karma/application_builder.d.ts +11 -0
  91. package/src/builders/karma/application_builder.js +324 -0
  92. package/src/builders/karma/application_builder.js.map +1 -0
  93. package/src/builders/karma/assets-middleware.d.ts +26 -0
  94. package/src/builders/karma/assets-middleware.js +66 -0
  95. package/src/builders/karma/assets-middleware.js.map +1 -0
  96. package/src/builders/karma/coverage.d.ts +9 -0
  97. package/src/builders/karma/coverage.js +32 -0
  98. package/src/builders/karma/coverage.js.map +1 -0
  99. package/src/builders/karma/find-tests.d.ts +9 -0
  100. package/src/builders/karma/find-tests.js +24 -0
  101. package/src/builders/karma/find-tests.js.map +1 -0
  102. package/src/builders/karma/index.d.ts +20 -0
  103. package/src/builders/karma/index.js +54 -0
  104. package/src/builders/karma/index.js.map +1 -0
  105. package/src/builders/karma/karma-config.d.ts +11 -0
  106. package/src/builders/karma/karma-config.js +80 -0
  107. package/src/builders/karma/karma-config.js.map +1 -0
  108. package/src/builders/karma/options.d.ts +42 -0
  109. package/src/builders/karma/options.js +44 -0
  110. package/src/builders/karma/options.js.map +1 -0
  111. package/src/builders/karma/polyfills/init_sourcemaps.js +10 -0
  112. package/src/builders/karma/polyfills/jasmine_global.js +18 -0
  113. package/src/builders/karma/polyfills/jasmine_global_cleanup.js +14 -0
  114. package/src/builders/karma/polyfills-plugin.d.ts +13 -0
  115. package/src/builders/karma/polyfills-plugin.js +75 -0
  116. package/src/builders/karma/polyfills-plugin.js.map +1 -0
  117. package/src/builders/karma/progress-reporter.d.ts +17 -0
  118. package/src/builders/karma/progress-reporter.js +76 -0
  119. package/src/builders/karma/progress-reporter.js.map +1 -0
  120. package/src/builders/karma/schema.d.ts +250 -0
  121. package/src/builders/karma/schema.js +16 -0
  122. package/src/builders/karma/schema.js.map +1 -0
  123. package/src/builders/karma/schema.json +348 -0
  124. package/src/builders/karma/utils.d.ts +17 -0
  125. package/src/builders/karma/utils.js +67 -0
  126. package/src/builders/karma/utils.js.map +1 -0
  127. package/src/builders/ng-packagr/builder.d.ts +19 -0
  128. package/src/builders/ng-packagr/builder.js +107 -0
  129. package/src/builders/ng-packagr/builder.js.map +1 -0
  130. package/src/builders/ng-packagr/index.d.ts +13 -0
  131. package/src/builders/ng-packagr/index.js +16 -0
  132. package/src/builders/ng-packagr/index.js.map +1 -0
  133. package/src/builders/ng-packagr/schema.d.ts +21 -0
  134. package/src/builders/ng-packagr/schema.js +5 -0
  135. package/src/builders/ng-packagr/schema.js.map +1 -0
  136. package/src/builders/ng-packagr/schema.json +26 -0
  137. package/src/builders/unit-test/builder.d.ts +15 -0
  138. package/src/builders/unit-test/builder.js +376 -0
  139. package/src/builders/unit-test/builder.js.map +1 -0
  140. package/src/builders/unit-test/index.d.ts +12 -0
  141. package/src/builders/unit-test/index.js +16 -0
  142. package/src/builders/unit-test/index.js.map +1 -0
  143. package/src/builders/unit-test/options.d.ts +53 -0
  144. package/src/builders/unit-test/options.js +119 -0
  145. package/src/builders/unit-test/options.js.map +1 -0
  146. package/src/builders/unit-test/runners/api.d.ts +65 -0
  147. package/src/builders/unit-test/runners/api.js +10 -0
  148. package/src/builders/unit-test/runners/api.js.map +1 -0
  149. package/src/builders/unit-test/runners/dependency-checker.d.ts +43 -0
  150. package/src/builders/unit-test/runners/dependency-checker.js +83 -0
  151. package/src/builders/unit-test/runners/dependency-checker.js.map +1 -0
  152. package/src/builders/unit-test/runners/karma/executor.d.ts +17 -0
  153. package/src/builders/unit-test/runners/karma/executor.js +164 -0
  154. package/src/builders/unit-test/runners/karma/executor.js.map +1 -0
  155. package/src/builders/unit-test/runners/karma/index.d.ts +13 -0
  156. package/src/builders/unit-test/runners/karma/index.js +44 -0
  157. package/src/builders/unit-test/runners/karma/index.js.map +1 -0
  158. package/src/builders/unit-test/runners/vitest/browser-provider.d.ts +17 -0
  159. package/src/builders/unit-test/runners/vitest/browser-provider.js +174 -0
  160. package/src/builders/unit-test/runners/vitest/browser-provider.js.map +1 -0
  161. package/src/builders/unit-test/runners/vitest/build-options.d.ts +11 -0
  162. package/src/builders/unit-test/runners/vitest/build-options.js +169 -0
  163. package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -0
  164. package/src/builders/unit-test/runners/vitest/configuration.d.ts +15 -0
  165. package/src/builders/unit-test/runners/vitest/configuration.js +57 -0
  166. package/src/builders/unit-test/runners/vitest/configuration.js.map +1 -0
  167. package/src/builders/unit-test/runners/vitest/executor.d.ts +29 -0
  168. package/src/builders/unit-test/runners/vitest/executor.js +318 -0
  169. package/src/builders/unit-test/runners/vitest/executor.js.map +1 -0
  170. package/src/builders/unit-test/runners/vitest/index.d.ts +13 -0
  171. package/src/builders/unit-test/runners/vitest/index.js +69 -0
  172. package/src/builders/unit-test/runners/vitest/index.js.map +1 -0
  173. package/src/builders/unit-test/runners/vitest/plugins.d.ts +32 -0
  174. package/src/builders/unit-test/runners/vitest/plugins.js +382 -0
  175. package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -0
  176. package/src/builders/unit-test/schema.d.ts +229 -0
  177. package/src/builders/unit-test/schema.js +25 -0
  178. package/src/builders/unit-test/schema.js.map +1 -0
  179. package/src/builders/unit-test/schema.json +280 -0
  180. package/src/builders/unit-test/test-discovery.d.ts +47 -0
  181. package/src/builders/unit-test/test-discovery.js +280 -0
  182. package/src/builders/unit-test/test-discovery.js.map +1 -0
  183. package/src/index.d.ts +16 -0
  184. package/src/index.js +25 -0
  185. package/src/index.js.map +1 -0
  186. package/src/private.d.ts +57 -0
  187. package/src/private.js +104 -0
  188. package/src/private.js.map +1 -0
  189. package/src/tools/angular/angular-host.d.ts +27 -0
  190. package/src/tools/angular/angular-host.js +164 -0
  191. package/src/tools/angular/angular-host.js.map +1 -0
  192. package/src/tools/angular/compilation/angular-compilation.d.ts +45 -0
  193. package/src/tools/angular/compilation/angular-compilation.js +104 -0
  194. package/src/tools/angular/compilation/angular-compilation.js.map +1 -0
  195. package/src/tools/angular/compilation/aot-compilation.d.ts +26 -0
  196. package/src/tools/angular/compilation/aot-compilation.js +341 -0
  197. package/src/tools/angular/compilation/aot-compilation.js.map +1 -0
  198. package/src/tools/angular/compilation/factory.d.ts +17 -0
  199. package/src/tools/angular/compilation/factory.js +67 -0
  200. package/src/tools/angular/compilation/factory.js.map +1 -0
  201. package/src/tools/angular/compilation/hmr-candidates.d.ts +22 -0
  202. package/src/tools/angular/compilation/hmr-candidates.js +270 -0
  203. package/src/tools/angular/compilation/hmr-candidates.js.map +1 -0
  204. package/src/tools/angular/compilation/index.d.ts +10 -0
  205. package/src/tools/angular/compilation/index.js +18 -0
  206. package/src/tools/angular/compilation/index.js.map +1 -0
  207. package/src/tools/angular/compilation/jit-compilation.d.ts +23 -0
  208. package/src/tools/angular/compilation/jit-compilation.js +150 -0
  209. package/src/tools/angular/compilation/jit-compilation.js.map +1 -0
  210. package/src/tools/angular/compilation/noop-compilation.d.ts +20 -0
  211. package/src/tools/angular/compilation/noop-compilation.js +27 -0
  212. package/src/tools/angular/compilation/noop-compilation.js.map +1 -0
  213. package/src/tools/angular/compilation/parallel-compilation.d.ts +44 -0
  214. package/src/tools/angular/compilation/parallel-compilation.js +119 -0
  215. package/src/tools/angular/compilation/parallel-compilation.js.map +1 -0
  216. package/src/tools/angular/compilation/parallel-worker.d.ts +39 -0
  217. package/src/tools/angular/compilation/parallel-worker.js +102 -0
  218. package/src/tools/angular/compilation/parallel-worker.js.map +1 -0
  219. package/src/tools/angular/transformers/jit-bootstrap-transformer.d.ts +10 -0
  220. package/src/tools/angular/transformers/jit-bootstrap-transformer.js +181 -0
  221. package/src/tools/angular/transformers/jit-bootstrap-transformer.js.map +1 -0
  222. package/src/tools/angular/transformers/jit-resource-transformer.d.ts +17 -0
  223. package/src/tools/angular/transformers/jit-resource-transformer.js +187 -0
  224. package/src/tools/angular/transformers/jit-resource-transformer.js.map +1 -0
  225. package/src/tools/angular/transformers/lazy-routes-transformer.d.ts +39 -0
  226. package/src/tools/angular/transformers/lazy-routes-transformer.js +164 -0
  227. package/src/tools/angular/transformers/lazy-routes-transformer.js.map +1 -0
  228. package/src/tools/angular/transformers/web-worker-transformer.d.ts +17 -0
  229. package/src/tools/angular/transformers/web-worker-transformer.js +94 -0
  230. package/src/tools/angular/transformers/web-worker-transformer.js.map +1 -0
  231. package/src/tools/angular/uri.d.ts +54 -0
  232. package/src/tools/angular/uri.js +76 -0
  233. package/src/tools/angular/uri.js.map +1 -0
  234. package/src/tools/babel/plugins/add-code-coverage.d.ts +14 -0
  235. package/src/tools/babel/plugins/add-code-coverage.js +45 -0
  236. package/src/tools/babel/plugins/add-code-coverage.js.map +1 -0
  237. package/src/tools/babel/plugins/adjust-static-class-members.d.ts +25 -0
  238. package/src/tools/babel/plugins/adjust-static-class-members.js +349 -0
  239. package/src/tools/babel/plugins/adjust-static-class-members.js.map +1 -0
  240. package/src/tools/babel/plugins/adjust-typescript-enums.d.ts +21 -0
  241. package/src/tools/babel/plugins/adjust-typescript-enums.js +113 -0
  242. package/src/tools/babel/plugins/adjust-typescript-enums.js.map +1 -0
  243. package/src/tools/babel/plugins/elide-angular-metadata.d.ts +21 -0
  244. package/src/tools/babel/plugins/elide-angular-metadata.js +110 -0
  245. package/src/tools/babel/plugins/elide-angular-metadata.js.map +1 -0
  246. package/src/tools/babel/plugins/index.d.ts +11 -0
  247. package/src/tools/babel/plugins/index.js +22 -0
  248. package/src/tools/babel/plugins/index.js.map +1 -0
  249. package/src/tools/babel/plugins/pure-toplevel-functions.d.ts +13 -0
  250. package/src/tools/babel/plugins/pure-toplevel-functions.js +128 -0
  251. package/src/tools/babel/plugins/pure-toplevel-functions.js.map +1 -0
  252. package/src/tools/babel/plugins/types.d.ts +20 -0
  253. package/src/tools/babel/typings.d.ts +21 -0
  254. package/src/tools/esbuild/angular/compilation-state.d.ts +15 -0
  255. package/src/tools/esbuild/angular/compilation-state.js +45 -0
  256. package/src/tools/esbuild/angular/compilation-state.js.map +1 -0
  257. package/src/tools/esbuild/angular/compiler-plugin.d.ts +34 -0
  258. package/src/tools/esbuild/angular/compiler-plugin.js +631 -0
  259. package/src/tools/esbuild/angular/compiler-plugin.js.map +1 -0
  260. package/src/tools/esbuild/angular/component-stylesheets.d.ts +49 -0
  261. package/src/tools/esbuild/angular/component-stylesheets.js +222 -0
  262. package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -0
  263. package/src/tools/esbuild/angular/diagnostics.d.ts +15 -0
  264. package/src/tools/esbuild/angular/diagnostics.js +72 -0
  265. package/src/tools/esbuild/angular/diagnostics.js.map +1 -0
  266. package/src/tools/esbuild/angular/file-reference-tracker.d.ts +17 -0
  267. package/src/tools/esbuild/angular/file-reference-tracker.js +58 -0
  268. package/src/tools/esbuild/angular/file-reference-tracker.js.map +1 -0
  269. package/src/tools/esbuild/angular/jit-plugin-callbacks.d.ts +23 -0
  270. package/src/tools/esbuild/angular/jit-plugin-callbacks.js +120 -0
  271. package/src/tools/esbuild/angular/jit-plugin-callbacks.js.map +1 -0
  272. package/src/tools/esbuild/angular/rewrite-bazel-paths.d.ts +8 -0
  273. package/src/tools/esbuild/angular/rewrite-bazel-paths.js +28 -0
  274. package/src/tools/esbuild/angular/rewrite-bazel-paths.js.map +1 -0
  275. package/src/tools/esbuild/angular/source-file-cache.d.ts +18 -0
  276. package/src/tools/esbuild/angular/source-file-cache.js +80 -0
  277. package/src/tools/esbuild/angular/source-file-cache.js.map +1 -0
  278. package/src/tools/esbuild/angular-localize-init-warning-plugin.d.ts +16 -0
  279. package/src/tools/esbuild/angular-localize-init-warning-plugin.js +50 -0
  280. package/src/tools/esbuild/angular-localize-init-warning-plugin.js.map +1 -0
  281. package/src/tools/esbuild/application-code-bundle.d.ts +19 -0
  282. package/src/tools/esbuild/application-code-bundle.js +542 -0
  283. package/src/tools/esbuild/application-code-bundle.js.map +1 -0
  284. package/src/tools/esbuild/budget-stats.d.ts +19 -0
  285. package/src/tools/esbuild/budget-stats.js +67 -0
  286. package/src/tools/esbuild/budget-stats.js.map +1 -0
  287. package/src/tools/esbuild/bundler-context.d.ts +80 -0
  288. package/src/tools/esbuild/bundler-context.js +399 -0
  289. package/src/tools/esbuild/bundler-context.js.map +1 -0
  290. package/src/tools/esbuild/bundler-execution-result.d.ts +95 -0
  291. package/src/tools/esbuild/bundler-execution-result.js +149 -0
  292. package/src/tools/esbuild/bundler-execution-result.js.map +1 -0
  293. package/src/tools/esbuild/cache.d.ts +93 -0
  294. package/src/tools/esbuild/cache.js +100 -0
  295. package/src/tools/esbuild/cache.js.map +1 -0
  296. package/src/tools/esbuild/commonjs-checker.d.ts +28 -0
  297. package/src/tools/esbuild/commonjs-checker.js +151 -0
  298. package/src/tools/esbuild/commonjs-checker.js.map +1 -0
  299. package/src/tools/esbuild/compiler-plugin-options.d.ts +14 -0
  300. package/src/tools/esbuild/compiler-plugin-options.js +30 -0
  301. package/src/tools/esbuild/compiler-plugin-options.js.map +1 -0
  302. package/src/tools/esbuild/external-packages-plugin.d.ts +18 -0
  303. package/src/tools/esbuild/external-packages-plugin.js +97 -0
  304. package/src/tools/esbuild/external-packages-plugin.js.map +1 -0
  305. package/src/tools/esbuild/global-scripts.d.ts +16 -0
  306. package/src/tools/esbuild/global-scripts.js +153 -0
  307. package/src/tools/esbuild/global-scripts.js.map +1 -0
  308. package/src/tools/esbuild/global-styles.d.ts +10 -0
  309. package/src/tools/esbuild/global-styles.js +79 -0
  310. package/src/tools/esbuild/global-styles.js.map +1 -0
  311. package/src/tools/esbuild/i18n-inliner-worker.d.ts +77 -0
  312. package/src/tools/esbuild/i18n-inliner-worker.js +184 -0
  313. package/src/tools/esbuild/i18n-inliner-worker.js.map +1 -0
  314. package/src/tools/esbuild/i18n-inliner.d.ts +58 -0
  315. package/src/tools/esbuild/i18n-inliner.js +266 -0
  316. package/src/tools/esbuild/i18n-inliner.js.map +1 -0
  317. package/src/tools/esbuild/i18n-locale-plugin.d.ts +22 -0
  318. package/src/tools/esbuild/i18n-locale-plugin.js +139 -0
  319. package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -0
  320. package/src/tools/esbuild/index-html-generator.d.ts +15 -0
  321. package/src/tools/esbuild/index-html-generator.js +91 -0
  322. package/src/tools/esbuild/index-html-generator.js.map +1 -0
  323. package/src/tools/esbuild/javascript-transformer-worker.d.ts +20 -0
  324. package/src/tools/esbuild/javascript-transformer-worker.js +162 -0
  325. package/src/tools/esbuild/javascript-transformer-worker.js.map +1 -0
  326. package/src/tools/esbuild/javascript-transformer.d.ts +54 -0
  327. package/src/tools/esbuild/javascript-transformer.js +153 -0
  328. package/src/tools/esbuild/javascript-transformer.js.map +1 -0
  329. package/src/tools/esbuild/license-extractor.d.ts +25 -0
  330. package/src/tools/esbuild/license-extractor.js +158 -0
  331. package/src/tools/esbuild/license-extractor.js.map +1 -0
  332. package/src/tools/esbuild/lmdb-cache-store.d.ts +18 -0
  333. package/src/tools/esbuild/lmdb-cache-store.js +55 -0
  334. package/src/tools/esbuild/lmdb-cache-store.js.map +1 -0
  335. package/src/tools/esbuild/load-result-cache.d.ts +21 -0
  336. package/src/tools/esbuild/load-result-cache.js +76 -0
  337. package/src/tools/esbuild/load-result-cache.js.map +1 -0
  338. package/src/tools/esbuild/loader-import-attribute-plugin.d.ts +9 -0
  339. package/src/tools/esbuild/loader-import-attribute-plugin.js +42 -0
  340. package/src/tools/esbuild/loader-import-attribute-plugin.js.map +1 -0
  341. package/src/tools/esbuild/profiling.d.ts +11 -0
  342. package/src/tools/esbuild/profiling.js +78 -0
  343. package/src/tools/esbuild/profiling.js.map +1 -0
  344. package/src/tools/esbuild/rxjs-esm-resolution-plugin.d.ts +18 -0
  345. package/src/tools/esbuild/rxjs-esm-resolution-plugin.js +44 -0
  346. package/src/tools/esbuild/rxjs-esm-resolution-plugin.js.map +1 -0
  347. package/src/tools/esbuild/server-bundle-metadata-plugin.d.ts +22 -0
  348. package/src/tools/esbuild/server-bundle-metadata-plugin.js +37 -0
  349. package/src/tools/esbuild/server-bundle-metadata-plugin.js.map +1 -0
  350. package/src/tools/esbuild/sourcemap-ignorelist-plugin.d.ts +17 -0
  351. package/src/tools/esbuild/sourcemap-ignorelist-plugin.js +73 -0
  352. package/src/tools/esbuild/sourcemap-ignorelist-plugin.js.map +1 -0
  353. package/src/tools/esbuild/stylesheets/bundle-options.d.ts +41 -0
  354. package/src/tools/esbuild/stylesheets/bundle-options.js +66 -0
  355. package/src/tools/esbuild/stylesheets/bundle-options.js.map +1 -0
  356. package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.d.ts +25 -0
  357. package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.js +57 -0
  358. package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.js.map +1 -0
  359. package/src/tools/esbuild/stylesheets/css-language.d.ts +9 -0
  360. package/src/tools/esbuild/stylesheets/css-language.js +16 -0
  361. package/src/tools/esbuild/stylesheets/css-language.js.map +1 -0
  362. package/src/tools/esbuild/stylesheets/css-resource-plugin.d.ts +18 -0
  363. package/src/tools/esbuild/stylesheets/css-resource-plugin.js +114 -0
  364. package/src/tools/esbuild/stylesheets/css-resource-plugin.js.map +1 -0
  365. package/src/tools/esbuild/stylesheets/less-language.d.ts +9 -0
  366. package/src/tools/esbuild/stylesheets/less-language.js +161 -0
  367. package/src/tools/esbuild/stylesheets/less-language.js.map +1 -0
  368. package/src/tools/esbuild/stylesheets/sass-language.d.ts +10 -0
  369. package/src/tools/esbuild/stylesheets/sass-language.js +231 -0
  370. package/src/tools/esbuild/stylesheets/sass-language.js.map +1 -0
  371. package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.d.ts +77 -0
  372. package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.js +333 -0
  373. package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.js.map +1 -0
  374. package/src/tools/esbuild/utils.d.ts +58 -0
  375. package/src/tools/esbuild/utils.js +394 -0
  376. package/src/tools/esbuild/utils.js.map +1 -0
  377. package/src/tools/esbuild/virtual-module-plugin.d.ts +33 -0
  378. package/src/tools/esbuild/virtual-module-plugin.js +43 -0
  379. package/src/tools/esbuild/virtual-module-plugin.js.map +1 -0
  380. package/src/tools/esbuild/wasm-plugin.d.ts +28 -0
  381. package/src/tools/esbuild/wasm-plugin.js +211 -0
  382. package/src/tools/esbuild/wasm-plugin.js.map +1 -0
  383. package/src/tools/esbuild/wasm.d.ts +25 -0
  384. package/src/tools/esbuild/watcher.d.ts +25 -0
  385. package/src/tools/esbuild/watcher.js +119 -0
  386. package/src/tools/esbuild/watcher.js.map +1 -0
  387. package/src/tools/sass/lexer.d.ts +18 -0
  388. package/src/tools/sass/lexer.js +172 -0
  389. package/src/tools/sass/lexer.js.map +1 -0
  390. package/src/tools/sass/rebasing-importer.d.ts +101 -0
  391. package/src/tools/sass/rebasing-importer.js +333 -0
  392. package/src/tools/sass/rebasing-importer.js.map +1 -0
  393. package/src/tools/sass/sass-service.d.ts +67 -0
  394. package/src/tools/sass/sass-service.js +242 -0
  395. package/src/tools/sass/sass-service.js.map +1 -0
  396. package/src/tools/sass/worker.d.ts +63 -0
  397. package/src/tools/sass/worker.js +202 -0
  398. package/src/tools/sass/worker.js.map +1 -0
  399. package/src/tools/vite/middlewares/assets-middleware.d.ts +17 -0
  400. package/src/tools/vite/middlewares/assets-middleware.js +205 -0
  401. package/src/tools/vite/middlewares/assets-middleware.js.map +1 -0
  402. package/src/tools/vite/middlewares/base-middleware.d.ts +17 -0
  403. package/src/tools/vite/middlewares/base-middleware.js +44 -0
  404. package/src/tools/vite/middlewares/base-middleware.js.map +1 -0
  405. package/src/tools/vite/middlewares/chrome-devtools-middleware.d.ts +9 -0
  406. package/src/tools/vite/middlewares/chrome-devtools-middleware.js +53 -0
  407. package/src/tools/vite/middlewares/chrome-devtools-middleware.js.map +1 -0
  408. package/src/tools/vite/middlewares/component-middleware.d.ts +9 -0
  409. package/src/tools/vite/middlewares/component-middleware.js +36 -0
  410. package/src/tools/vite/middlewares/component-middleware.js.map +1 -0
  411. package/src/tools/vite/middlewares/headers-middleware.d.ts +19 -0
  412. package/src/tools/vite/middlewares/headers-middleware.js +35 -0
  413. package/src/tools/vite/middlewares/headers-middleware.js.map +1 -0
  414. package/src/tools/vite/middlewares/host-check-middleware.d.ts +9 -0
  415. package/src/tools/vite/middlewares/host-check-middleware.js +61 -0
  416. package/src/tools/vite/middlewares/host-check-middleware.js.map +1 -0
  417. package/src/tools/vite/middlewares/html-fallback-middleware.d.ts +10 -0
  418. package/src/tools/vite/middlewares/html-fallback-middleware.js +42 -0
  419. package/src/tools/vite/middlewares/html-fallback-middleware.js.map +1 -0
  420. package/src/tools/vite/middlewares/index-html-middleware.d.ts +10 -0
  421. package/src/tools/vite/middlewares/index-html-middleware.js +47 -0
  422. package/src/tools/vite/middlewares/index-html-middleware.js.map +1 -0
  423. package/src/tools/vite/middlewares/index.d.ts +16 -0
  424. package/src/tools/vite/middlewares/index.js +30 -0
  425. package/src/tools/vite/middlewares/index.js.map +1 -0
  426. package/src/tools/vite/middlewares/ssr-middleware.d.ts +10 -0
  427. package/src/tools/vite/middlewares/ssr-middleware.js +129 -0
  428. package/src/tools/vite/middlewares/ssr-middleware.js.map +1 -0
  429. package/src/tools/vite/plugins/angular-memory-plugin.d.ts +18 -0
  430. package/src/tools/vite/plugins/angular-memory-plugin.js +149 -0
  431. package/src/tools/vite/plugins/angular-memory-plugin.js.map +1 -0
  432. package/src/tools/vite/plugins/id-prefix-plugin.d.ts +9 -0
  433. package/src/tools/vite/plugins/id-prefix-plugin.js +46 -0
  434. package/src/tools/vite/plugins/id-prefix-plugin.js.map +1 -0
  435. package/src/tools/vite/plugins/index.d.ts +12 -0
  436. package/src/tools/vite/plugins/index.js +22 -0
  437. package/src/tools/vite/plugins/index.js.map +1 -0
  438. package/src/tools/vite/plugins/setup-middlewares-plugin.d.ts +45 -0
  439. package/src/tools/vite/plugins/setup-middlewares-plugin.js +108 -0
  440. package/src/tools/vite/plugins/setup-middlewares-plugin.js.map +1 -0
  441. package/src/tools/vite/plugins/ssr-ssl-plugin.d.ts +9 -0
  442. package/src/tools/vite/plugins/ssr-ssl-plugin.js +92 -0
  443. package/src/tools/vite/plugins/ssr-ssl-plugin.js.map +1 -0
  444. package/src/tools/vite/plugins/ssr-transform-plugin.d.ts +9 -0
  445. package/src/tools/vite/plugins/ssr-transform-plugin.js +68 -0
  446. package/src/tools/vite/plugins/ssr-transform-plugin.js.map +1 -0
  447. package/src/tools/vite/utils.d.ts +45 -0
  448. package/src/tools/vite/utils.js +106 -0
  449. package/src/tools/vite/utils.js.map +1 -0
  450. package/src/utils/bundle-calculator.d.ts +45 -0
  451. package/src/utils/bundle-calculator.js +305 -0
  452. package/src/utils/bundle-calculator.js.map +1 -0
  453. package/src/utils/check-port.d.ts +8 -0
  454. package/src/utils/check-port.js +88 -0
  455. package/src/utils/check-port.js.map +1 -0
  456. package/src/utils/color.d.ts +9 -0
  457. package/src/utils/color.js +28 -0
  458. package/src/utils/color.js.map +1 -0
  459. package/src/utils/delete-output-dir.d.ts +11 -0
  460. package/src/utils/delete-output-dir.js +46 -0
  461. package/src/utils/delete-output-dir.js.map +1 -0
  462. package/src/utils/environment-options.d.ts +64 -0
  463. package/src/utils/environment-options.js +150 -0
  464. package/src/utils/environment-options.js.map +1 -0
  465. package/src/utils/error.d.ts +10 -0
  466. package/src/utils/error.js +21 -0
  467. package/src/utils/error.js.map +1 -0
  468. package/src/utils/format-bytes.d.ts +8 -0
  469. package/src/utils/format-bytes.js +22 -0
  470. package/src/utils/format-bytes.js.map +1 -0
  471. package/src/utils/i18n-options.d.ts +36 -0
  472. package/src/utils/i18n-options.js +208 -0
  473. package/src/utils/i18n-options.js.map +1 -0
  474. package/src/utils/index-file/add-event-dispatch-contract.d.ts +8 -0
  475. package/src/utils/index-file/add-event-dispatch-contract.js +28 -0
  476. package/src/utils/index-file/add-event-dispatch-contract.js.map +1 -0
  477. package/src/utils/index-file/augment-index-html.d.ts +40 -0
  478. package/src/utils/index-file/augment-index-html.js +300 -0
  479. package/src/utils/index-file/augment-index-html.js.map +1 -0
  480. package/src/utils/index-file/auto-csp.d.ts +23 -0
  481. package/src/utils/index-file/auto-csp.js +295 -0
  482. package/src/utils/index-file/auto-csp.js.map +1 -0
  483. package/src/utils/index-file/html-rewriting-stream.d.ts +15 -0
  484. package/src/utils/index-file/html-rewriting-stream.js +60 -0
  485. package/src/utils/index-file/html-rewriting-stream.js.map +1 -0
  486. package/src/utils/index-file/index-html-generator.d.ts +61 -0
  487. package/src/utils/index-file/index-html-generator.js +154 -0
  488. package/src/utils/index-file/index-html-generator.js.map +1 -0
  489. package/src/utils/index-file/inline-critical-css.d.ts +25 -0
  490. package/src/utils/index-file/inline-critical-css.js +193 -0
  491. package/src/utils/index-file/inline-critical-css.js.map +1 -0
  492. package/src/utils/index-file/inline-fonts.d.ts +23 -0
  493. package/src/utils/index-file/inline-fonts.js +240 -0
  494. package/src/utils/index-file/inline-fonts.js.map +1 -0
  495. package/src/utils/index-file/ngcm-attribute.d.ts +15 -0
  496. package/src/utils/index-file/ngcm-attribute.js +38 -0
  497. package/src/utils/index-file/ngcm-attribute.js.map +1 -0
  498. package/src/utils/index-file/nonce.d.ts +12 -0
  499. package/src/utils/index-file/nonce.js +54 -0
  500. package/src/utils/index-file/nonce.js.map +1 -0
  501. package/src/utils/index-file/valid-self-closing-tags.d.ts +9 -0
  502. package/src/utils/index-file/valid-self-closing-tags.js +90 -0
  503. package/src/utils/index-file/valid-self-closing-tags.js.map +1 -0
  504. package/src/utils/index.d.ts +11 -0
  505. package/src/utils/index.js +28 -0
  506. package/src/utils/index.js.map +1 -0
  507. package/src/utils/load-esm.d.ts +20 -0
  508. package/src/utils/load-esm.js +31 -0
  509. package/src/utils/load-esm.js.map +1 -0
  510. package/src/utils/load-proxy-config.d.ts +8 -0
  511. package/src/utils/load-proxy-config.js +186 -0
  512. package/src/utils/load-proxy-config.js.map +1 -0
  513. package/src/utils/load-translations.d.ts +16 -0
  514. package/src/utils/load-translations.js +93 -0
  515. package/src/utils/load-translations.js.map +1 -0
  516. package/src/utils/normalize-asset-patterns.d.ts +11 -0
  517. package/src/utils/normalize-asset-patterns.js +111 -0
  518. package/src/utils/normalize-asset-patterns.js.map +1 -0
  519. package/src/utils/normalize-cache.d.ts +16 -0
  520. package/src/utils/normalize-cache.js +46 -0
  521. package/src/utils/normalize-cache.js.map +1 -0
  522. package/src/utils/normalize-optimization.d.ts +13 -0
  523. package/src/utils/normalize-optimization.js +42 -0
  524. package/src/utils/normalize-optimization.js.map +1 -0
  525. package/src/utils/normalize-source-maps.d.ts +9 -0
  526. package/src/utils/normalize-source-maps.js +25 -0
  527. package/src/utils/normalize-source-maps.js.map +1 -0
  528. package/src/utils/path.d.ts +29 -0
  529. package/src/utils/path.js +38 -0
  530. package/src/utils/path.js.map +1 -0
  531. package/src/utils/postcss-configuration.d.ts +20 -0
  532. package/src/utils/postcss-configuration.js +86 -0
  533. package/src/utils/postcss-configuration.js.map +1 -0
  534. package/src/utils/project-metadata.d.ts +21 -0
  535. package/src/utils/project-metadata.js +32 -0
  536. package/src/utils/project-metadata.js.map +1 -0
  537. package/src/utils/purge-cache.d.ts +10 -0
  538. package/src/utils/purge-cache.js +40 -0
  539. package/src/utils/purge-cache.js.map +1 -0
  540. package/src/utils/resolve-assets.d.ts +18 -0
  541. package/src/utils/resolve-assets.js +35 -0
  542. package/src/utils/resolve-assets.js.map +1 -0
  543. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.d.ts +18 -0
  544. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js +125 -0
  545. package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js.map +1 -0
  546. package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.d.ts +8 -0
  547. package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js +14 -0
  548. package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js.map +1 -0
  549. package/src/utils/server-rendering/esm-in-memory-loader/utils.d.ts +8 -0
  550. package/src/utils/server-rendering/esm-in-memory-loader/utils.js +14 -0
  551. package/src/utils/server-rendering/esm-in-memory-loader/utils.js.map +1 -0
  552. package/src/utils/server-rendering/fetch-patch.d.ts +8 -0
  553. package/src/utils/server-rendering/fetch-patch.js +64 -0
  554. package/src/utils/server-rendering/fetch-patch.js.map +1 -0
  555. package/src/utils/server-rendering/launch-server.d.ts +14 -0
  556. package/src/utils/server-rendering/launch-server.js +96 -0
  557. package/src/utils/server-rendering/launch-server.js.map +1 -0
  558. package/src/utils/server-rendering/load-esm-from-memory.d.ts +27 -0
  559. package/src/utils/server-rendering/load-esm-from-memory.js +26 -0
  560. package/src/utils/server-rendering/load-esm-from-memory.js.map +1 -0
  561. package/src/utils/server-rendering/manifest.d.ts +58 -0
  562. package/src/utils/server-rendering/manifest.js +177 -0
  563. package/src/utils/server-rendering/manifest.js.map +1 -0
  564. package/src/utils/server-rendering/models.d.ts +28 -0
  565. package/src/utils/server-rendering/models.js +22 -0
  566. package/src/utils/server-rendering/models.js.map +1 -0
  567. package/src/utils/server-rendering/prerender.d.ts +39 -0
  568. package/src/utils/server-rendering/prerender.js +246 -0
  569. package/src/utils/server-rendering/prerender.js.map +1 -0
  570. package/src/utils/server-rendering/render-worker.d.ts +23 -0
  571. package/src/utils/server-rendering/render-worker.js +79 -0
  572. package/src/utils/server-rendering/render-worker.js.map +1 -0
  573. package/src/utils/server-rendering/routes-extractor-worker.d.ts +16 -0
  574. package/src/utils/server-rendering/routes-extractor-worker.js +73 -0
  575. package/src/utils/server-rendering/routes-extractor-worker.js.map +1 -0
  576. package/src/utils/server-rendering/utils.d.ts +21 -0
  577. package/src/utils/server-rendering/utils.js +43 -0
  578. package/src/utils/server-rendering/utils.js.map +1 -0
  579. package/src/utils/service-worker.d.ts +23 -0
  580. package/src/utils/service-worker.js +215 -0
  581. package/src/utils/service-worker.js.map +1 -0
  582. package/src/utils/stats-table.d.ts +20 -0
  583. package/src/utils/stats-table.js +205 -0
  584. package/src/utils/stats-table.js.map +1 -0
  585. package/src/utils/supported-browsers.d.ts +10 -0
  586. package/src/utils/supported-browsers.js +57 -0
  587. package/src/utils/supported-browsers.js.map +1 -0
  588. package/src/utils/test-files.d.ts +17 -0
  589. package/src/utils/test-files.js +83 -0
  590. package/src/utils/test-files.js.map +1 -0
  591. package/src/utils/tty.d.ts +8 -0
  592. package/src/utils/tty.js +23 -0
  593. package/src/utils/tty.js.map +1 -0
  594. package/src/utils/url.d.ts +81 -0
  595. package/src/utils/url.js +122 -0
  596. package/src/utils/url.js.map +1 -0
  597. package/src/utils/version.d.ts +8 -0
  598. package/src/utils/version.js +58 -0
  599. package/src/utils/version.js.map +1 -0
  600. package/src/utils/worker-pool.d.ts +12 -0
  601. package/src/utils/worker-pool.js +46 -0
  602. package/src/utils/worker-pool.js.map +1 -0
@@ -0,0 +1,631 @@
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 __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;
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
+ })();
42
+ var __importDefault = (this && this.__importDefault) || function (mod) {
43
+ return (mod && mod.__esModule) ? mod : { "default": mod };
44
+ };
45
+ Object.defineProperty(exports, "__esModule", { value: true });
46
+ exports.createCompilerPlugin = createCompilerPlugin;
47
+ const node_assert_1 = __importDefault(require("node:assert"));
48
+ const node_crypto_1 = require("node:crypto");
49
+ const promises_1 = require("node:fs/promises");
50
+ const path = __importStar(require("node:path"));
51
+ const environment_options_1 = require("../../../utils/environment-options");
52
+ const compilation_1 = require("../../angular/compilation");
53
+ const javascript_transformer_1 = require("../javascript-transformer");
54
+ const load_result_cache_1 = require("../load-result-cache");
55
+ const profiling_1 = require("../profiling");
56
+ const compilation_state_1 = require("./compilation-state");
57
+ const file_reference_tracker_1 = require("./file-reference-tracker");
58
+ const jit_plugin_callbacks_1 = require("./jit-plugin-callbacks");
59
+ const rewrite_bazel_paths_1 = require("./rewrite-bazel-paths");
60
+ // eslint-disable-next-line max-lines-per-function
61
+ function createCompilerPlugin(pluginOptions, compilationOrFactory, stylesheetBundler) {
62
+ return {
63
+ name: 'angular-compiler',
64
+ // eslint-disable-next-line max-lines-per-function
65
+ async setup(build) {
66
+ let setupWarnings = [];
67
+ const preserveSymlinks = build.initialOptions.preserveSymlinks;
68
+ // Initialize a worker pool for JavaScript transformations.
69
+ // Webcontainers currently do not support this persistent cache store.
70
+ let cacheStore;
71
+ if (pluginOptions.sourceFileCache?.persistentCachePath && !process.versions.webcontainer) {
72
+ try {
73
+ const { LmdbCacheStore } = await Promise.resolve().then(() => __importStar(require('../lmdb-cache-store')));
74
+ cacheStore = new LmdbCacheStore(path.join(pluginOptions.sourceFileCache.persistentCachePath, 'angular-compiler.db'));
75
+ }
76
+ catch (e) {
77
+ setupWarnings.push({
78
+ text: 'Unable to initialize JavaScript cache storage.',
79
+ location: null,
80
+ notes: [
81
+ // Only show first line of lmdb load error which has platform support listed
82
+ { text: e?.message.split('\n')[0] ?? `${e}` },
83
+ {
84
+ text: 'This will not affect the build output content but may result in slower builds.',
85
+ },
86
+ ],
87
+ });
88
+ }
89
+ }
90
+ const javascriptTransformer = new javascript_transformer_1.JavaScriptTransformer({
91
+ sourcemap: !!pluginOptions.sourcemap,
92
+ thirdPartySourcemaps: pluginOptions.thirdPartySourcemaps,
93
+ advancedOptimizations: pluginOptions.advancedOptimizations,
94
+ jit: pluginOptions.jit || pluginOptions.includeTestMetadata,
95
+ }, environment_options_1.maxWorkers, cacheStore?.createCache('jstransformer'));
96
+ // Setup defines based on the values used by the Angular compiler-cli
97
+ build.initialOptions.define ??= {};
98
+ build.initialOptions.define['ngI18nClosureMode'] ??= 'false';
99
+ // The factory is only relevant for compatibility purposes with the private API.
100
+ // TODO: Update private API in the next major to allow compilation function factory removal here.
101
+ const compilation = typeof compilationOrFactory === 'function'
102
+ ? await compilationOrFactory()
103
+ : compilationOrFactory;
104
+ // The in-memory cache of TypeScript file outputs will be used during the build in `onLoad` callbacks for TS files.
105
+ // A string value indicates direct TS/NG output and a Uint8Array indicates fully transformed code.
106
+ const typeScriptFileCache = pluginOptions.sourceFileCache?.typeScriptFileCache ??
107
+ new Map();
108
+ // The resources from component stylesheets and web workers that will be added to the build results output files
109
+ const additionalResults = new Map();
110
+ // Compilation is initially assumed to have errors until emitted
111
+ let hasCompilationErrors = true;
112
+ // Determines if TypeScript should process JavaScript files based on tsconfig `allowJs` option
113
+ let shouldTsIgnoreJs = true;
114
+ // Determines if transpilation should be handle by TypeScript or esbuild
115
+ let useTypeScriptTranspilation = true;
116
+ let sharedTSCompilationState;
117
+ // To fully invalidate files, track resource referenced files and their referencing source
118
+ const referencedFileTracker = new file_reference_tracker_1.FileReferenceTracker();
119
+ // eslint-disable-next-line max-lines-per-function
120
+ build.onStart(async () => {
121
+ sharedTSCompilationState = (0, compilation_state_1.getSharedCompilationState)();
122
+ if (!(compilation instanceof compilation_1.NoopCompilation)) {
123
+ sharedTSCompilationState.markAsInProgress();
124
+ }
125
+ const result = {
126
+ warnings: setupWarnings,
127
+ };
128
+ // Reset debug performance tracking
129
+ (0, profiling_1.resetCumulativeDurations)();
130
+ // Update the reference tracker and generate a full set of modified files for the
131
+ // Angular compiler which does not have direct knowledge of transitive resource
132
+ // dependencies or web worker processing.
133
+ let modifiedFiles;
134
+ if (!(compilation instanceof compilation_1.NoopCompilation) &&
135
+ pluginOptions.sourceFileCache?.modifiedFiles.size) {
136
+ // TODO: Differentiate between changed input files and stale output files
137
+ modifiedFiles = referencedFileTracker.update(pluginOptions.sourceFileCache.modifiedFiles);
138
+ pluginOptions.sourceFileCache.invalidate(modifiedFiles);
139
+ // External runtime styles are invalidated and rebuilt at the beginning of a rebuild to avoid
140
+ // the need to execute the application bundler for component style only changes.
141
+ if (!pluginOptions.externalRuntimeStyles) {
142
+ stylesheetBundler.invalidate(modifiedFiles);
143
+ }
144
+ // Remove any stale additional results based on modified files
145
+ modifiedFiles.forEach((file) => additionalResults.delete(file));
146
+ }
147
+ if (compilation.update && pluginOptions.sourceFileCache?.modifiedFiles.size) {
148
+ await compilation.update(modifiedFiles ?? pluginOptions.sourceFileCache.modifiedFiles);
149
+ }
150
+ // Create Angular compiler host options
151
+ const hostOptions = {
152
+ fileReplacements: pluginOptions.fileReplacements,
153
+ modifiedFiles,
154
+ sourceFileCache: pluginOptions.sourceFileCache,
155
+ async transformStylesheet(data, containingFile, stylesheetFile, order, className) {
156
+ let stylesheetResult;
157
+ let resultSource = stylesheetFile ?? containingFile;
158
+ // Stylesheet file only exists for external stylesheets
159
+ if (stylesheetFile) {
160
+ stylesheetResult = await stylesheetBundler.bundleFile(stylesheetFile);
161
+ }
162
+ else {
163
+ stylesheetResult = await stylesheetBundler.bundleInline(data, containingFile,
164
+ // Inline stylesheets from a template style element are always CSS; Otherwise, use default.
165
+ containingFile.endsWith('.html') ? 'css' : undefined,
166
+ // When external runtime styles are enabled, an identifier for the style that does not change
167
+ // based on the content is required to avoid emitted JS code changes. Any JS code changes will
168
+ // invalid the output and force a full page reload for HMR cases. The containing file and order
169
+ // of the style within the containing file is used.
170
+ pluginOptions.externalRuntimeStyles
171
+ ? (0, node_crypto_1.createHash)('sha256')
172
+ .update(containingFile)
173
+ .update((order ?? 0).toString())
174
+ .update(className ?? '')
175
+ .digest('hex')
176
+ : undefined);
177
+ // Adjust result source for inline styles.
178
+ // There may be multiple inline styles with the same containing file and to ensure that the results
179
+ // do not overwrite each other the result source identifier needs to be unique for each. The class
180
+ // name and order fields can be used for this. The structure is arbitrary as long as it is unique.
181
+ resultSource += `?class=${className}&order=${order}`;
182
+ }
183
+ (result.warnings ??= []).push(...stylesheetResult.warnings);
184
+ if (stylesheetResult.errors) {
185
+ (result.errors ??= []).push(...stylesheetResult.errors);
186
+ return '';
187
+ }
188
+ const { contents, outputFiles, metafile, referencedFiles } = stylesheetResult;
189
+ additionalResults.set(resultSource, {
190
+ outputFiles,
191
+ metafile,
192
+ });
193
+ if (referencedFiles) {
194
+ referencedFileTracker.add(containingFile, referencedFiles);
195
+ if (stylesheetFile) {
196
+ // Angular AOT compiler needs modified direct resource files to correctly invalidate its analysis
197
+ referencedFileTracker.add(stylesheetFile, referencedFiles);
198
+ }
199
+ }
200
+ return contents;
201
+ },
202
+ processWebWorker(workerFile, containingFile) {
203
+ const fullWorkerPath = path.join(path.dirname(containingFile), workerFile);
204
+ // The synchronous API must be used due to the TypeScript compilation currently being
205
+ // fully synchronous and this process callback being called from within a TypeScript
206
+ // transformer.
207
+ const workerResult = bundleWebWorker(build, pluginOptions, fullWorkerPath);
208
+ (result.warnings ??= []).push(...workerResult.warnings);
209
+ if (workerResult.errors.length > 0) {
210
+ (result.errors ??= []).push(...workerResult.errors);
211
+ // Track worker file errors to allow rebuilds on changes
212
+ referencedFileTracker.add(containingFile, workerResult.errors
213
+ .map((error) => error.location?.file)
214
+ .filter((file) => !!file)
215
+ .map((file) => path.join(build.initialOptions.absWorkingDir ?? '', file)));
216
+ additionalResults.set(fullWorkerPath, { errors: result.errors });
217
+ // Return the original path if the build failed
218
+ return workerFile;
219
+ }
220
+ (0, node_assert_1.default)('outputFiles' in workerResult, 'Invalid web worker bundle result.');
221
+ additionalResults.set(fullWorkerPath, {
222
+ outputFiles: workerResult.outputFiles,
223
+ metafile: workerResult.metafile,
224
+ });
225
+ referencedFileTracker.add(containingFile, Object.keys(workerResult.metafile.inputs).map((input) => path.join(build.initialOptions.absWorkingDir ?? '', input)));
226
+ // Return bundled worker file entry name to be used in the built output
227
+ const workerCodeFile = workerResult.outputFiles.find((file) => /^worker-[A-Z0-9]{8}.[cm]?js$/.test(path.basename(file.path)));
228
+ (0, node_assert_1.default)(workerCodeFile, 'Web Worker bundled code file should always be present.');
229
+ const workerCodePath = path.relative(build.initialOptions.outdir ?? '', workerCodeFile.path);
230
+ return workerCodePath.replaceAll('\\', '/');
231
+ },
232
+ };
233
+ // Initialize the Angular compilation for the current build.
234
+ // In watch mode, previous build state will be reused.
235
+ let referencedFiles;
236
+ let externalStylesheets;
237
+ try {
238
+ const initializationResult = await compilation.initialize(pluginOptions.tsconfig, hostOptions, createCompilerOptionsTransformer(setupWarnings, pluginOptions, preserveSymlinks, build.initialOptions.conditions));
239
+ shouldTsIgnoreJs = !initializationResult.compilerOptions.allowJs;
240
+ // Isolated modules option ensures safe non-TypeScript transpilation.
241
+ // Typescript printing support for sourcemaps is not yet integrated.
242
+ useTypeScriptTranspilation =
243
+ !initializationResult.compilerOptions.isolatedModules ||
244
+ !!initializationResult.compilerOptions.sourceMap ||
245
+ !!initializationResult.compilerOptions.inlineSourceMap;
246
+ referencedFiles = initializationResult.referencedFiles;
247
+ externalStylesheets = initializationResult.externalStylesheets;
248
+ if (initializationResult.templateUpdates) {
249
+ // Propagate any template updates
250
+ initializationResult.templateUpdates.forEach((value, key) => pluginOptions.templateUpdates?.set(key, value));
251
+ }
252
+ }
253
+ catch (error) {
254
+ (result.errors ??= []).push({
255
+ text: 'Angular compilation initialization failed.',
256
+ location: null,
257
+ notes: [
258
+ {
259
+ text: error instanceof Error ? (error.stack ?? error.message) : `${error}`,
260
+ location: null,
261
+ },
262
+ ],
263
+ });
264
+ // Initialization failure prevents further compilation steps
265
+ hasCompilationErrors = true;
266
+ return result;
267
+ }
268
+ if (compilation instanceof compilation_1.NoopCompilation) {
269
+ hasCompilationErrors = await sharedTSCompilationState.waitUntilReady;
270
+ return result;
271
+ }
272
+ if (externalStylesheets) {
273
+ // Process any new external stylesheets
274
+ for (const [stylesheetFile, externalId] of externalStylesheets) {
275
+ await bundleExternalStylesheet(stylesheetBundler, stylesheetFile, externalId, result, additionalResults);
276
+ }
277
+ }
278
+ // Update TypeScript file output cache for all affected files
279
+ try {
280
+ await (0, profiling_1.profileAsync)('NG_EMIT_TS', async () => {
281
+ for (const { filename, contents } of await compilation.emitAffectedFiles()) {
282
+ typeScriptFileCache.set(path.normalize(filename), contents);
283
+ }
284
+ });
285
+ }
286
+ catch (error) {
287
+ (result.errors ??= []).push({
288
+ text: 'Angular compilation emit failed.',
289
+ location: null,
290
+ notes: [
291
+ {
292
+ text: error instanceof Error ? (error.stack ?? error.message) : `${error}`,
293
+ location: null,
294
+ },
295
+ ],
296
+ });
297
+ }
298
+ const diagnostics = await compilation.diagnoseFiles(environment_options_1.useTypeChecking ? compilation_1.DiagnosticModes.All : compilation_1.DiagnosticModes.All & ~compilation_1.DiagnosticModes.Semantic);
299
+ if (diagnostics.errors?.length) {
300
+ (result.errors ??= []).push(...diagnostics.errors);
301
+ }
302
+ if (diagnostics.warnings?.length) {
303
+ (result.warnings ??= []).push(...diagnostics.warnings);
304
+ }
305
+ // Add errors from failed additional results.
306
+ // This must be done after emit to capture latest web worker results.
307
+ for (const { errors } of additionalResults.values()) {
308
+ if (errors) {
309
+ (result.errors ??= []).push(...errors);
310
+ }
311
+ }
312
+ // Store referenced files for updated file watching if enabled
313
+ if (pluginOptions.sourceFileCache) {
314
+ pluginOptions.sourceFileCache.referencedFiles = [
315
+ ...referencedFiles,
316
+ ...referencedFileTracker.referencedFiles,
317
+ ];
318
+ }
319
+ hasCompilationErrors = !!result.errors?.length;
320
+ // Reset the setup warnings so that they are only shown during the first build.
321
+ setupWarnings = undefined;
322
+ sharedTSCompilationState.markAsReady(hasCompilationErrors);
323
+ return result;
324
+ });
325
+ build.onLoad({ filter: /\.[cm]?[jt]sx?$/ }, async (args) => {
326
+ const request = (0, rewrite_bazel_paths_1.rewriteForBazel)(path.normalize(pluginOptions.fileReplacements?.[path.normalize(args.path)] ?? args.path));
327
+ const isJS = /\.[cm]?js$/.test(request);
328
+ // Skip TS load attempt if JS TypeScript compilation not enabled and file is JS
329
+ if (shouldTsIgnoreJs && isJS) {
330
+ return undefined;
331
+ }
332
+ // The filename is currently used as a cache key. Since the cache is memory only,
333
+ // the options cannot change and do not need to be represented in the key. If the
334
+ // cache is later stored to disk, then the options that affect transform output
335
+ // would need to be added to the key as well as a check for any change of content.
336
+ let contents = typeScriptFileCache.get(request);
337
+ if (contents === undefined) {
338
+ // If the Angular compilation had errors the file may not have been emitted.
339
+ // To avoid additional errors about missing files, return empty contents.
340
+ if (hasCompilationErrors) {
341
+ return { contents: '', loader: 'js' };
342
+ }
343
+ // No TS result indicates the file is not part of the TypeScript program.
344
+ // If allowJs is enabled and the file is JS then defer to the next load hook.
345
+ if (!shouldTsIgnoreJs && isJS) {
346
+ return undefined;
347
+ }
348
+ const diangosticRoot = build.initialOptions.absWorkingDir ?? '';
349
+ // Evaluate whether the file requires the Angular compiler transpilation.
350
+ // If not, issue a warning but allow bundler to process the file (no type-checking).
351
+ const directContents = await (0, promises_1.readFile)(request, 'utf-8');
352
+ if (!requiresAngularCompiler(directContents)) {
353
+ return {
354
+ warnings: [createMissingFileDiagnostic(request, args.path, diangosticRoot, false)],
355
+ contents,
356
+ loader: 'ts',
357
+ resolveDir: path.dirname(request),
358
+ };
359
+ }
360
+ // Otherwise return an error
361
+ return {
362
+ errors: [createMissingFileDiagnostic(request, args.path, diangosticRoot, true)],
363
+ };
364
+ }
365
+ else if (typeof contents === 'string' && (useTypeScriptTranspilation || isJS)) {
366
+ // A string indicates untransformed output from the TS/NG compiler.
367
+ // This step is unneeded when using esbuild transpilation.
368
+ const sideEffects = await hasSideEffects(request);
369
+ const instrumentForCoverage = pluginOptions.instrumentForCoverage?.(request);
370
+ contents = await javascriptTransformer.transformData(request, contents, true /* skipLinker */, sideEffects, instrumentForCoverage);
371
+ // Store as the returned Uint8Array to allow caching the fully transformed code
372
+ typeScriptFileCache.set(request, contents);
373
+ }
374
+ let loader;
375
+ if (useTypeScriptTranspilation || isJS) {
376
+ // TypeScript has transpiled to JS or is already JS
377
+ loader = 'js';
378
+ }
379
+ else if (request.at(-1) === 'x') {
380
+ // TSX and TS have different syntax rules. Only set if input is a TSX file.
381
+ loader = 'tsx';
382
+ }
383
+ else {
384
+ // Otherwise, directly bundle TS
385
+ loader = 'ts';
386
+ }
387
+ return {
388
+ contents,
389
+ loader,
390
+ resolveDir: path.dirname(request),
391
+ };
392
+ });
393
+ build.onLoad({ filter: /\.[cm]?js$/ }, (0, load_result_cache_1.createCachedLoad)(pluginOptions.loadResultCache, async (args) => {
394
+ let request = (0, rewrite_bazel_paths_1.rewriteForBazel)(args.path);
395
+ if (pluginOptions.fileReplacements) {
396
+ const replacement = pluginOptions.fileReplacements[path.normalize(args.path)];
397
+ if (replacement) {
398
+ request = path.normalize(replacement);
399
+ }
400
+ }
401
+ return (0, profiling_1.profileAsync)('NG_EMIT_JS*', async () => {
402
+ const sideEffects = await hasSideEffects(request);
403
+ const contents = await javascriptTransformer.transformFile(request, pluginOptions.jit, sideEffects);
404
+ return {
405
+ contents,
406
+ loader: 'js',
407
+ resolveDir: path.dirname(request),
408
+ watchFiles: request !== args.path ? [request] : undefined,
409
+ };
410
+ }, true);
411
+ }));
412
+ // Add a load handler if there are file replacement option entries for JSON files
413
+ if (pluginOptions.fileReplacements &&
414
+ Object.keys(pluginOptions.fileReplacements).some((value) => value.endsWith('.json'))) {
415
+ build.onLoad({ filter: /\.json$/ }, (0, load_result_cache_1.createCachedLoad)(pluginOptions.loadResultCache, async (args) => {
416
+ const replacement = pluginOptions.fileReplacements?.[path.normalize(args.path)];
417
+ if (replacement) {
418
+ return {
419
+ contents: await Promise.resolve().then(() => __importStar(require('node:fs/promises'))).then(({ readFile }) => readFile(path.normalize(replacement))),
420
+ loader: 'json',
421
+ watchFiles: [replacement],
422
+ };
423
+ }
424
+ // If no replacement defined, let esbuild handle it directly
425
+ return null;
426
+ }));
427
+ }
428
+ // Setup bundling of component templates and stylesheets when in JIT mode
429
+ if (pluginOptions.jit) {
430
+ (0, jit_plugin_callbacks_1.setupJitPluginCallbacks)(build, stylesheetBundler, additionalResults, pluginOptions.loadResultCache);
431
+ }
432
+ build.onEnd((result) => {
433
+ // Ensure other compilations are unblocked if the main compilation throws during start
434
+ sharedTSCompilationState?.markAsReady(hasCompilationErrors);
435
+ for (const { outputFiles, metafile } of additionalResults.values()) {
436
+ // Add any additional output files to the main output files
437
+ if (outputFiles?.length) {
438
+ result.outputFiles?.push(...outputFiles);
439
+ }
440
+ // Combine additional metafiles with main metafile
441
+ if (result.metafile && metafile) {
442
+ // Append the existing object, by appending to it we prevent unnecessary new objections creations with spread
443
+ // mitigating significant performance overhead for large apps.
444
+ // See: https://bugs.chromium.org/p/v8/issues/detail?id=11536
445
+ Object.assign(result.metafile.inputs, metafile.inputs);
446
+ Object.assign(result.metafile.outputs, metafile.outputs);
447
+ }
448
+ }
449
+ (0, profiling_1.logCumulativeDurations)();
450
+ });
451
+ build.onDispose(() => {
452
+ sharedTSCompilationState?.dispose();
453
+ void compilation.close?.();
454
+ void javascriptTransformer.close();
455
+ void cacheStore?.close();
456
+ });
457
+ /**
458
+ * Checks if the file has side-effects when `advancedOptimizations` is enabled.
459
+ */
460
+ async function hasSideEffects(path) {
461
+ if (!pluginOptions.advancedOptimizations) {
462
+ return undefined;
463
+ }
464
+ const { sideEffects } = await build.resolve(path, {
465
+ kind: 'import-statement',
466
+ resolveDir: build.initialOptions.absWorkingDir ?? '',
467
+ });
468
+ return sideEffects;
469
+ }
470
+ },
471
+ };
472
+ }
473
+ async function bundleExternalStylesheet(stylesheetBundler, stylesheetFile, externalId, result, additionalResults) {
474
+ const styleResult = await stylesheetBundler.bundleFile(stylesheetFile, externalId);
475
+ (result.warnings ??= []).push(...styleResult.warnings);
476
+ if (styleResult.errors) {
477
+ (result.errors ??= []).push(...styleResult.errors);
478
+ }
479
+ else {
480
+ const { outputFiles, metafile } = styleResult;
481
+ // Clear inputs to prevent triggering a rebuild of the application code for component
482
+ // stylesheet file only changes when the dev server enables the internal-only external
483
+ // stylesheet option. This does not affect builds since only the dev server can enable
484
+ // the internal option.
485
+ metafile.inputs = {};
486
+ additionalResults.set(stylesheetFile, {
487
+ outputFiles,
488
+ metafile,
489
+ });
490
+ }
491
+ }
492
+ function createCompilerOptionsTransformer(setupWarnings, pluginOptions, preserveSymlinks, customConditions) {
493
+ return (compilerOptions) => {
494
+ // target of 9 is ES2022 (using the number avoids an expensive import of typescript just for an enum)
495
+ if (compilerOptions.target === undefined || compilerOptions.target < 9 /** ES2022 */) {
496
+ // If 'useDefineForClassFields' is already defined in the users project leave the value as is.
497
+ // Otherwise fallback to false due to https://github.com/microsoft/TypeScript/issues/45995
498
+ // which breaks the deprecated `@Effects` NGRX decorator and potentially other existing code as well.
499
+ compilerOptions.target = 9 /** ES2022 */;
500
+ compilerOptions.useDefineForClassFields ??= false;
501
+ // Only add the warning on the initial build
502
+ setupWarnings?.push({
503
+ text: `TypeScript compiler options 'target' and 'useDefineForClassFields' are set to 'ES2022' and ` +
504
+ `'false' respectively by the Angular CLI.`,
505
+ location: { file: pluginOptions.tsconfig },
506
+ notes: [
507
+ {
508
+ text: 'To control ECMA version and features use the Browserslist configuration. ' +
509
+ 'For more information, see https://angular.dev/tools/cli/build#configuring-browser-compatibility',
510
+ },
511
+ ],
512
+ });
513
+ }
514
+ if (compilerOptions.compilationMode === 'partial') {
515
+ setupWarnings?.push({
516
+ text: 'Angular partial compilation mode is not supported when building applications.',
517
+ location: null,
518
+ notes: [{ text: 'Full compilation mode will be used instead.' }],
519
+ });
520
+ compilerOptions.compilationMode = 'full';
521
+ }
522
+ // Enable incremental compilation by default if caching is enabled and incremental is not explicitly disabled
523
+ if (compilerOptions.incremental !== false &&
524
+ pluginOptions.sourceFileCache?.persistentCachePath) {
525
+ compilerOptions.incremental = true;
526
+ // Set the build info file location to the configured cache directory
527
+ compilerOptions.tsBuildInfoFile = path.join(pluginOptions.sourceFileCache?.persistentCachePath, '.tsbuildinfo');
528
+ }
529
+ else {
530
+ compilerOptions.incremental = false;
531
+ }
532
+ if (compilerOptions.module === undefined || compilerOptions.module < 5 /** ES2015 */) {
533
+ compilerOptions.module = 7; /** ES2022 */
534
+ setupWarnings?.push({
535
+ text: `TypeScript compiler options 'module' values 'CommonJS', 'UMD', 'System' and 'AMD' are not supported.`,
536
+ location: null,
537
+ notes: [{ text: `The 'module' option will be set to 'ES2022' instead.` }],
538
+ });
539
+ }
540
+ if (compilerOptions.isolatedModules && compilerOptions.emitDecoratorMetadata) {
541
+ setupWarnings?.push({
542
+ text: `TypeScript compiler option 'isolatedModules' may prevent the 'emitDecoratorMetadata' option from emitting all metadata.`,
543
+ location: null,
544
+ notes: [
545
+ {
546
+ text: `The 'emitDecoratorMetadata' option is not required by Angular` +
547
+ 'and can be removed if not explictly required by the project.',
548
+ },
549
+ ],
550
+ });
551
+ }
552
+ // Synchronize custom resolve conditions.
553
+ // Set if using the supported bundler resolution mode (bundler is the default in new projects)
554
+ if (compilerOptions.moduleResolution === 100 /* ModuleResolutionKind.Bundler */ ||
555
+ compilerOptions.module === 200 /** ModuleKind.Preserve */) {
556
+ compilerOptions.customConditions = customConditions;
557
+ }
558
+ return {
559
+ ...compilerOptions,
560
+ noEmitOnError: false,
561
+ composite: false,
562
+ inlineSources: !!pluginOptions.sourcemap,
563
+ inlineSourceMap: !!pluginOptions.sourcemap,
564
+ sourceMap: undefined,
565
+ mapRoot: undefined,
566
+ sourceRoot: undefined,
567
+ preserveSymlinks,
568
+ externalRuntimeStyles: pluginOptions.externalRuntimeStyles,
569
+ _enableHmr: !!pluginOptions.templateUpdates,
570
+ supportTestBed: !!pluginOptions.includeTestMetadata,
571
+ supportJitMode: !!pluginOptions.includeTestMetadata,
572
+ };
573
+ };
574
+ }
575
+ function bundleWebWorker(build, pluginOptions, workerFile) {
576
+ try {
577
+ return build.esbuild.buildSync({
578
+ ...build.initialOptions,
579
+ platform: 'browser',
580
+ write: false,
581
+ bundle: true,
582
+ metafile: true,
583
+ format: 'esm',
584
+ entryNames: 'worker-[hash]',
585
+ entryPoints: [workerFile],
586
+ sourcemap: pluginOptions.sourcemap,
587
+ // Zone.js is not used in Web workers so no need to disable
588
+ supported: undefined,
589
+ // Plugins are not supported in sync esbuild calls
590
+ plugins: undefined,
591
+ });
592
+ }
593
+ catch (error) {
594
+ if (error && typeof error === 'object' && 'errors' in error && 'warnings' in error) {
595
+ return error;
596
+ }
597
+ throw error;
598
+ }
599
+ }
600
+ function createMissingFileDiagnostic(request, original, root, angular) {
601
+ const relativeRequest = path.relative(root, request);
602
+ const notes = [];
603
+ if (angular) {
604
+ notes.push({
605
+ text: `Files containing Angular metadata ('@Component'/'@Directive'/etc.) must be part of the TypeScript compilation.` +
606
+ ` You can ensure the file is part of the TypeScript program via the 'files' or 'include' property.`,
607
+ });
608
+ }
609
+ else {
610
+ notes.push({
611
+ text: `The file will be bundled and included in the output but will not be type-checked at build time.` +
612
+ ` To remove this message you can add the file to the TypeScript program via the 'files' or 'include' property.`,
613
+ });
614
+ }
615
+ const relativeOriginal = path.relative(root, original);
616
+ if (relativeRequest !== relativeOriginal) {
617
+ notes.push({
618
+ text: `File is requested from a file replacement of '${relativeOriginal}'.`,
619
+ });
620
+ }
621
+ const diagnostic = {
622
+ text: `File '${relativeRequest}' not found in TypeScript compilation.`,
623
+ notes,
624
+ };
625
+ return diagnostic;
626
+ }
627
+ const POTENTIAL_METADATA_REGEX = /@angular\/core|@Component|@Directive|@Injectable|@Pipe|@NgModule/;
628
+ function requiresAngularCompiler(contents) {
629
+ return POTENTIAL_METADATA_REGEX.test(contents);
630
+ }
631
+ //# sourceMappingURL=compiler-plugin.js.map