@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,187 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.createJitResourceTransformer = createJitResourceTransformer;
14
+ const typescript_1 = __importDefault(require("typescript"));
15
+ const uri_1 = require("../uri");
16
+ /**
17
+ * Creates a TypeScript Transformer to transform Angular Component resource references into
18
+ * static import statements. This transformer is used in Angular's JIT compilation mode to
19
+ * support processing of component resources. When in AOT mode, the Angular AOT compiler handles
20
+ * this processing and this transformer is not used.
21
+ * @param getTypeChecker A function that returns a TypeScript TypeChecker instance for the program.
22
+ * @returns A TypeScript transformer factory.
23
+ */
24
+ function createJitResourceTransformer(getTypeChecker) {
25
+ return (context) => {
26
+ const typeChecker = getTypeChecker();
27
+ const nodeFactory = context.factory;
28
+ const resourceImportDeclarations = [];
29
+ const visitNode = (node) => {
30
+ if (typescript_1.default.isClassDeclaration(node)) {
31
+ const decorators = typescript_1.default.getDecorators(node);
32
+ if (!decorators || decorators.length === 0) {
33
+ return node;
34
+ }
35
+ return nodeFactory.updateClassDeclaration(node, [
36
+ ...decorators.map((current) => visitDecorator(nodeFactory, current, typeChecker, resourceImportDeclarations)),
37
+ ...(typescript_1.default.getModifiers(node) ?? []),
38
+ ], node.name, node.typeParameters, node.heritageClauses, node.members);
39
+ }
40
+ return typescript_1.default.visitEachChild(node, visitNode, context);
41
+ };
42
+ return (sourceFile) => {
43
+ const updatedSourceFile = typescript_1.default.visitEachChild(sourceFile, visitNode, context);
44
+ if (resourceImportDeclarations.length > 0) {
45
+ return nodeFactory.updateSourceFile(updatedSourceFile, typescript_1.default.setTextRange(nodeFactory.createNodeArray([...resourceImportDeclarations, ...updatedSourceFile.statements], updatedSourceFile.statements.hasTrailingComma), updatedSourceFile.statements), updatedSourceFile.isDeclarationFile, updatedSourceFile.referencedFiles, updatedSourceFile.typeReferenceDirectives, updatedSourceFile.hasNoDefaultLib, updatedSourceFile.libReferenceDirectives);
46
+ }
47
+ else {
48
+ return updatedSourceFile;
49
+ }
50
+ };
51
+ };
52
+ }
53
+ function visitDecorator(nodeFactory, node, typeChecker, resourceImportDeclarations) {
54
+ const origin = getDecoratorOrigin(node, typeChecker);
55
+ if (!origin || origin.module !== '@angular/core' || origin.name !== 'Component') {
56
+ return node;
57
+ }
58
+ if (!typescript_1.default.isCallExpression(node.expression)) {
59
+ return node;
60
+ }
61
+ const decoratorFactory = node.expression;
62
+ const args = decoratorFactory.arguments;
63
+ if (args.length !== 1 || !typescript_1.default.isObjectLiteralExpression(args[0])) {
64
+ // Unsupported component metadata
65
+ return node;
66
+ }
67
+ const objectExpression = args[0];
68
+ const styleReplacements = [];
69
+ // visit all properties
70
+ let properties = typescript_1.default.visitNodes(objectExpression.properties, (node) => typescript_1.default.isObjectLiteralElementLike(node)
71
+ ? visitComponentMetadata(nodeFactory, node, styleReplacements, resourceImportDeclarations)
72
+ : node);
73
+ // replace properties with updated properties
74
+ if (styleReplacements.length > 0) {
75
+ const styleProperty = nodeFactory.createPropertyAssignment(nodeFactory.createIdentifier('styles'), nodeFactory.createArrayLiteralExpression(styleReplacements));
76
+ properties = nodeFactory.createNodeArray([...properties, styleProperty]);
77
+ }
78
+ return nodeFactory.updateDecorator(node, nodeFactory.updateCallExpression(decoratorFactory, decoratorFactory.expression, decoratorFactory.typeArguments, [nodeFactory.updateObjectLiteralExpression(objectExpression, properties)]));
79
+ }
80
+ function visitComponentMetadata(nodeFactory, node, styleReplacements, resourceImportDeclarations) {
81
+ if (!typescript_1.default.isPropertyAssignment(node) || typescript_1.default.isComputedPropertyName(node.name)) {
82
+ return node;
83
+ }
84
+ switch (node.name.text) {
85
+ case 'templateUrl':
86
+ // Only analyze string literals
87
+ if (!typescript_1.default.isStringLiteralLike(node.initializer)) {
88
+ return node;
89
+ }
90
+ return node.initializer.text.length === 0
91
+ ? node
92
+ : nodeFactory.updatePropertyAssignment(node, nodeFactory.createIdentifier('template'), createResourceImport(nodeFactory, (0, uri_1.generateJitFileUri)(node.initializer.text, 'template'), resourceImportDeclarations));
93
+ case 'styles':
94
+ if (typescript_1.default.isStringLiteralLike(node.initializer)) {
95
+ styleReplacements.unshift(createResourceImport(nodeFactory, (0, uri_1.generateJitInlineUri)(node.initializer.text, 'style'), resourceImportDeclarations));
96
+ return undefined;
97
+ }
98
+ if (typescript_1.default.isArrayLiteralExpression(node.initializer)) {
99
+ const inlineStyles = typescript_1.default.visitNodes(node.initializer.elements, (node) => {
100
+ if (!typescript_1.default.isStringLiteralLike(node)) {
101
+ return node;
102
+ }
103
+ return node.text.length === 0
104
+ ? undefined // An empty inline style is equivalent to not having a style element
105
+ : createResourceImport(nodeFactory, (0, uri_1.generateJitInlineUri)(node.text, 'style'), resourceImportDeclarations);
106
+ });
107
+ // Inline styles should be placed first
108
+ styleReplacements.unshift(...inlineStyles);
109
+ // The inline styles will be added afterwards in combination with any external styles
110
+ return undefined;
111
+ }
112
+ return node;
113
+ case 'styleUrl':
114
+ if (typescript_1.default.isStringLiteralLike(node.initializer)) {
115
+ styleReplacements.push(createResourceImport(nodeFactory, (0, uri_1.generateJitFileUri)(node.initializer.text, 'style'), resourceImportDeclarations));
116
+ return undefined;
117
+ }
118
+ return node;
119
+ case 'styleUrls': {
120
+ if (!typescript_1.default.isArrayLiteralExpression(node.initializer)) {
121
+ return node;
122
+ }
123
+ const externalStyles = typescript_1.default.visitNodes(node.initializer.elements, (node) => {
124
+ if (!typescript_1.default.isStringLiteralLike(node)) {
125
+ return node;
126
+ }
127
+ return node.text
128
+ ? createResourceImport(nodeFactory, (0, uri_1.generateJitFileUri)(node.text, 'style'), resourceImportDeclarations)
129
+ : undefined;
130
+ });
131
+ // External styles are applied after any inline styles
132
+ styleReplacements.push(...externalStyles);
133
+ // The external styles will be added afterwards in combination with any inline styles
134
+ return undefined;
135
+ }
136
+ default:
137
+ // All other elements are passed through
138
+ return node;
139
+ }
140
+ }
141
+ function createResourceImport(nodeFactory, url, resourceImportDeclarations) {
142
+ const urlLiteral = nodeFactory.createStringLiteral(url);
143
+ const importName = nodeFactory.createIdentifier(`__NG_CLI_RESOURCE__${resourceImportDeclarations.length}`);
144
+ resourceImportDeclarations.push(nodeFactory.createImportDeclaration(undefined, nodeFactory.createImportClause(undefined, importName, undefined), urlLiteral));
145
+ return importName;
146
+ }
147
+ function getDecoratorOrigin(decorator, typeChecker) {
148
+ if (!typescript_1.default.isCallExpression(decorator.expression)) {
149
+ return null;
150
+ }
151
+ let identifier;
152
+ let name = '';
153
+ if (typescript_1.default.isPropertyAccessExpression(decorator.expression.expression)) {
154
+ identifier = decorator.expression.expression.expression;
155
+ name = decorator.expression.expression.name.text;
156
+ }
157
+ else if (typescript_1.default.isIdentifier(decorator.expression.expression)) {
158
+ identifier = decorator.expression.expression;
159
+ }
160
+ else {
161
+ return null;
162
+ }
163
+ // NOTE: resolver.getReferencedImportDeclaration would work as well but is internal
164
+ const symbol = typeChecker.getSymbolAtLocation(identifier);
165
+ if (symbol && symbol.declarations && symbol.declarations.length > 0) {
166
+ const declaration = symbol.declarations[0];
167
+ let module;
168
+ if (typescript_1.default.isImportSpecifier(declaration)) {
169
+ name = (declaration.propertyName || declaration.name).text;
170
+ module = declaration.parent.parent.parent.moduleSpecifier.text;
171
+ }
172
+ else if (typescript_1.default.isNamespaceImport(declaration)) {
173
+ // Use the name from the decorator namespace property access
174
+ module = declaration.parent.parent.moduleSpecifier.text;
175
+ }
176
+ else if (typescript_1.default.isImportClause(declaration)) {
177
+ name = declaration.name.text;
178
+ module = declaration.parent.moduleSpecifier.text;
179
+ }
180
+ else {
181
+ return null;
182
+ }
183
+ return { name, module };
184
+ }
185
+ return null;
186
+ }
187
+ //# sourceMappingURL=jit-resource-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jit-resource-transformer.js","sourceRoot":"","sources":["jit-resource-transformer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import ts from 'typescript';
9
+ /**
10
+ * A transformer factory that adds a property to the lazy-loaded route object.
11
+ * This property is used to allow for the retrieval of the module path during SSR.
12
+ *
13
+ * @param compilerOptions The compiler options.
14
+ * @param compilerHost The compiler host.
15
+ * @returns A transformer factory.
16
+ *
17
+ * @example
18
+ * **Before:**
19
+ * ```ts
20
+ * const routes: Routes = [
21
+ * {
22
+ * path: 'lazy',
23
+ * loadChildren: () => import('./lazy/lazy.module').then(m => m.LazyModule)
24
+ * }
25
+ * ];
26
+ * ```
27
+ *
28
+ * **After:**
29
+ * ```ts
30
+ * const routes: Routes = [
31
+ * {
32
+ * path: 'lazy',
33
+ * loadChildren: () => import('./lazy/lazy.module').then(m => m.LazyModule),
34
+ * ...(typeof ngServerMode !== "undefined" && ngServerMode ? { ɵentryName: "./lazy/lazy.module.ts" }: {})
35
+ * }
36
+ * ];
37
+ * ```
38
+ */
39
+ export declare function lazyRoutesTransformer(compilerOptions: ts.CompilerOptions, compilerHost: ts.CompilerHost): ts.TransformerFactory<ts.SourceFile>;
@@ -0,0 +1,164 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.lazyRoutesTransformer = lazyRoutesTransformer;
14
+ const node_assert_1 = __importDefault(require("node:assert"));
15
+ const posix_1 = require("node:path/posix");
16
+ const typescript_1 = __importDefault(require("typescript"));
17
+ /**
18
+ * A transformer factory that adds a property to the lazy-loaded route object.
19
+ * This property is used to allow for the retrieval of the module path during SSR.
20
+ *
21
+ * @param compilerOptions The compiler options.
22
+ * @param compilerHost The compiler host.
23
+ * @returns A transformer factory.
24
+ *
25
+ * @example
26
+ * **Before:**
27
+ * ```ts
28
+ * const routes: Routes = [
29
+ * {
30
+ * path: 'lazy',
31
+ * loadChildren: () => import('./lazy/lazy.module').then(m => m.LazyModule)
32
+ * }
33
+ * ];
34
+ * ```
35
+ *
36
+ * **After:**
37
+ * ```ts
38
+ * const routes: Routes = [
39
+ * {
40
+ * path: 'lazy',
41
+ * loadChildren: () => import('./lazy/lazy.module').then(m => m.LazyModule),
42
+ * ...(typeof ngServerMode !== "undefined" && ngServerMode ? { ɵentryName: "./lazy/lazy.module.ts" }: {})
43
+ * }
44
+ * ];
45
+ * ```
46
+ */
47
+ function lazyRoutesTransformer(compilerOptions, compilerHost) {
48
+ const moduleResolutionCache = compilerHost.getModuleResolutionCache?.();
49
+ (0, node_assert_1.default)(typeof compilerOptions.basePath === 'string', 'compilerOptions.basePath should be a string.');
50
+ const basePath = compilerOptions.basePath;
51
+ return (context) => {
52
+ const factory = context.factory;
53
+ const visitor = (node) => {
54
+ if (!typescript_1.default.isObjectLiteralExpression(node)) {
55
+ // Not an object literal, so skip it.
56
+ return typescript_1.default.visitEachChild(node, visitor, context);
57
+ }
58
+ const loadFunction = getLoadComponentOrChildrenProperty(node)?.initializer;
59
+ // Check if the initializer is an arrow function or a function expression
60
+ if (!loadFunction ||
61
+ (!typescript_1.default.isArrowFunction(loadFunction) && !typescript_1.default.isFunctionExpression(loadFunction))) {
62
+ return typescript_1.default.visitEachChild(node, visitor, context);
63
+ }
64
+ let callExpression;
65
+ if (typescript_1.default.isArrowFunction(loadFunction)) {
66
+ // Handle arrow functions: body can either be a block or a direct call expression
67
+ const body = loadFunction.body;
68
+ if (typescript_1.default.isBlock(body)) {
69
+ // Arrow function with a block: check the first statement for a return call expression
70
+ const firstStatement = body.statements[0];
71
+ if (firstStatement &&
72
+ typescript_1.default.isReturnStatement(firstStatement) &&
73
+ firstStatement.expression &&
74
+ typescript_1.default.isCallExpression(firstStatement.expression)) {
75
+ callExpression = firstStatement.expression;
76
+ }
77
+ }
78
+ else if (typescript_1.default.isCallExpression(body)) {
79
+ // Arrow function with a direct call expression as its body
80
+ callExpression = body;
81
+ }
82
+ }
83
+ else if (typescript_1.default.isFunctionExpression(loadFunction)) {
84
+ // Handle function expressions: check for a return statement with a call expression
85
+ const returnExpression = loadFunction.body.statements.find(typescript_1.default.isReturnStatement)?.expression;
86
+ if (returnExpression && typescript_1.default.isCallExpression(returnExpression)) {
87
+ callExpression = returnExpression;
88
+ }
89
+ }
90
+ if (!callExpression) {
91
+ return typescript_1.default.visitEachChild(node, visitor, context);
92
+ }
93
+ // Optionally check for the 'then' property access expression
94
+ const expression = callExpression.expression;
95
+ if (!typescript_1.default.isCallExpression(expression) &&
96
+ typescript_1.default.isPropertyAccessExpression(expression) &&
97
+ expression.name.text !== 'then') {
98
+ return typescript_1.default.visitEachChild(node, visitor, context);
99
+ }
100
+ const importExpression = typescript_1.default.isPropertyAccessExpression(expression)
101
+ ? expression.expression // Navigate to the underlying expression for 'then'
102
+ : callExpression;
103
+ // Ensure the underlying expression is an import call
104
+ if (!typescript_1.default.isCallExpression(importExpression) ||
105
+ importExpression.expression.kind !== typescript_1.default.SyntaxKind.ImportKeyword) {
106
+ return typescript_1.default.visitEachChild(node, visitor, context);
107
+ }
108
+ // Check if the argument to the import call is a string literal
109
+ const callExpressionArgument = importExpression.arguments[0];
110
+ if (!typescript_1.default.isStringLiteralLike(callExpressionArgument)) {
111
+ // Not a string literal, so skip it.
112
+ return typescript_1.default.visitEachChild(node, visitor, context);
113
+ }
114
+ const resolvedPath = typescript_1.default.resolveModuleName(callExpressionArgument.text, node.getSourceFile().fileName, compilerOptions, compilerHost, moduleResolutionCache)?.resolvedModule?.resolvedFileName;
115
+ if (!resolvedPath) {
116
+ // Could not resolve the module, so skip it.
117
+ return typescript_1.default.visitEachChild(node, visitor, context);
118
+ }
119
+ const resolvedRelativePath = (0, posix_1.relative)(basePath, resolvedPath);
120
+ // Create the new property
121
+ // Example: `...(typeof ngServerMode !== "undefined" && ngServerMode ? { ɵentryName: "src/home.ts" }: {})`
122
+ const newProperty = factory.createSpreadAssignment(factory.createParenthesizedExpression(factory.createConditionalExpression(factory.createBinaryExpression(factory.createBinaryExpression(factory.createTypeOfExpression(factory.createIdentifier('ngServerMode')), factory.createToken(typescript_1.default.SyntaxKind.ExclamationEqualsEqualsToken), factory.createStringLiteral('undefined')), factory.createToken(typescript_1.default.SyntaxKind.AmpersandAmpersandToken), factory.createIdentifier('ngServerMode')), factory.createToken(typescript_1.default.SyntaxKind.QuestionToken), factory.createObjectLiteralExpression([
123
+ factory.createPropertyAssignment(factory.createIdentifier('ɵentryName'), factory.createStringLiteral(resolvedRelativePath)),
124
+ ]), factory.createToken(typescript_1.default.SyntaxKind.ColonToken), factory.createObjectLiteralExpression([]))));
125
+ // Add the new property to the object literal.
126
+ return factory.updateObjectLiteralExpression(node, [...node.properties, newProperty]);
127
+ };
128
+ return (sourceFile) => {
129
+ const text = sourceFile.text;
130
+ if (!text.includes('loadC')) {
131
+ // Fast check for 'loadComponent' and 'loadChildren'.
132
+ return sourceFile;
133
+ }
134
+ return typescript_1.default.visitEachChild(sourceFile, visitor, context);
135
+ };
136
+ };
137
+ }
138
+ /**
139
+ * Retrieves the property assignment for the `loadComponent` or `loadChildren` property of a route object.
140
+ *
141
+ * @param node The object literal expression to search.
142
+ * @returns The property assignment if found, otherwise `undefined`.
143
+ */
144
+ function getLoadComponentOrChildrenProperty(node) {
145
+ let hasPathProperty = false;
146
+ let loadComponentOrChildrenProperty;
147
+ for (const prop of node.properties) {
148
+ if (!typescript_1.default.isPropertyAssignment(prop) || !typescript_1.default.isIdentifier(prop.name)) {
149
+ continue;
150
+ }
151
+ const propertyNameText = prop.name.text;
152
+ if (propertyNameText === 'path') {
153
+ hasPathProperty = true;
154
+ }
155
+ else if (propertyNameText === 'loadComponent' || propertyNameText === 'loadChildren') {
156
+ loadComponentOrChildrenProperty = prop;
157
+ }
158
+ if (hasPathProperty && loadComponentOrChildrenProperty) {
159
+ break;
160
+ }
161
+ }
162
+ return loadComponentOrChildrenProperty;
163
+ }
164
+ //# sourceMappingURL=lazy-routes-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy-routes-transformer.js","sourceRoot":"","sources":["lazy-routes-transformer.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAoCH,sDAuJC;AAzLD,8DAAiC;AACjC,2CAA2C;AAC3C,4DAA4B;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,qBAAqB,CACnC,eAAmC,EACnC,YAA6B;IAE7B,MAAM,qBAAqB,GAAG,YAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC;IACxE,IAAA,qBAAM,EACJ,OAAO,eAAe,CAAC,QAAQ,KAAK,QAAQ,EAC5C,8CAA8C,CAC/C,CAAC;IACF,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC;IAE1C,OAAO,CAAC,OAAiC,EAAE,EAAE;QAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAEhC,MAAM,OAAO,GAAG,CAAC,IAAa,EAAW,EAAE;YACzC,IAAI,CAAC,oBAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,qCAAqC;gBACrC,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,YAAY,GAAG,kCAAkC,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC;YAC3E,yEAAyE;YACzE,IACE,CAAC,YAAY;gBACb,CAAC,CAAC,oBAAE,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,EAC7E,CAAC;gBACD,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,IAAI,cAA6C,CAAC;YAElD,IAAI,oBAAE,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,iFAAiF;gBACjF,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;gBAE/B,IAAI,oBAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrB,sFAAsF;oBACtF,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAE1C,IACE,cAAc;wBACd,oBAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC;wBACpC,cAAc,CAAC,UAAU;wBACzB,oBAAE,CAAC,gBAAgB,CAAC,cAAc,CAAC,UAAU,CAAC,EAC9C,CAAC;wBACD,cAAc,GAAG,cAAc,CAAC,UAAU,CAAC;oBAC7C,CAAC;gBACH,CAAC;qBAAM,IAAI,oBAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,2DAA2D;oBAC3D,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC;iBAAM,IAAI,oBAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjD,mFAAmF;gBACnF,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CACxD,oBAAE,CAAC,iBAAiB,CACrB,EAAE,UAAU,CAAC;gBAEd,IAAI,gBAAgB,IAAI,oBAAE,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC9D,cAAc,GAAG,gBAAgB,CAAC;gBACpC,CAAC;YACH,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,6DAA6D;YAC7D,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;YAC7C,IACE,CAAC,oBAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC;gBAChC,oBAAE,CAAC,0BAA0B,CAAC,UAAU,CAAC;gBACzC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,EAC/B,CAAC;gBACD,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,gBAAgB,GAAG,oBAAE,CAAC,0BAA0B,CAAC,UAAU,CAAC;gBAChE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,mDAAmD;gBAC3E,CAAC,CAAC,cAAc,CAAC;YAEnB,qDAAqD;YACrD,IACE,CAAC,oBAAE,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;gBACtC,gBAAgB,CAAC,UAAU,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,aAAa,EAChE,CAAC;gBACD,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,+DAA+D;YAC/D,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,oBAAE,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBACpD,oCAAoC;gBACpC,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,YAAY,GAAG,oBAAE,CAAC,iBAAiB,CACvC,sBAAsB,CAAC,IAAI,EAC3B,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,EAC7B,eAAe,EACf,YAAY,EACZ,qBAAqB,CACtB,EAAE,cAAc,EAAE,gBAAgB,CAAC;YAEpC,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,4CAA4C;gBAC5C,OAAO,oBAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,oBAAoB,GAAG,IAAA,gBAAQ,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAE9D,0BAA0B;YAC1B,0GAA0G;YAC1G,MAAM,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAChD,OAAO,CAAC,6BAA6B,CACnC,OAAO,CAAC,2BAA2B,CACjC,OAAO,CAAC,sBAAsB,CAC5B,OAAO,CAAC,sBAAsB,CAC5B,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,EACxE,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAC/D,OAAO,CAAC,mBAAmB,CAAC,WAAW,CAAC,CACzC,EACD,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAC1D,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,CACzC,EACD,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAChD,OAAO,CAAC,6BAA6B,CAAC;gBACpC,OAAO,CAAC,wBAAwB,CAC9B,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,EACtC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAClD;aACF,CAAC,EACF,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAC7C,OAAO,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAC1C,CACF,CACF,CAAC;YAEF,8CAA8C;YAC9C,OAAO,OAAO,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACxF,CAAC,CAAC;QAEF,OAAO,CAAC,UAAU,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,qDAAqD;gBACrD,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,OAAO,oBAAE,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,kCAAkC,CACzC,IAAgC;IAEhC,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,+BAAkE,CAAC;IACvE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,oBAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClE,SAAS;QACX,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACxC,IAAI,gBAAgB,KAAK,MAAM,EAAE,CAAC;YAChC,eAAe,GAAG,IAAI,CAAC;QACzB,CAAC;aAAM,IAAI,gBAAgB,KAAK,eAAe,IAAI,gBAAgB,KAAK,cAAc,EAAE,CAAC;YACvF,+BAA+B,GAAG,IAAI,CAAC;QACzC,CAAC;QAED,IAAI,eAAe,IAAI,+BAA+B,EAAE,CAAC;YACvD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,+BAA+B,CAAC;AACzC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import ts from 'typescript';
9
+ /**
10
+ * Creates a TypeScript Transformer to process Worker and SharedWorker entry points and transform
11
+ * the URL instances to reference the built and bundled worker code. This uses a callback process
12
+ * similar to the component stylesheets to allow the main esbuild plugin to process files as needed.
13
+ * Unsupported worker expressions will be left in their origin form.
14
+ * @param getTypeChecker A function that returns a TypeScript TypeChecker instance for the program.
15
+ * @returns A TypeScript transformer factory.
16
+ */
17
+ export declare function createWorkerTransformer(fileProcessor: (file: string, importer: string) => string): ts.TransformerFactory<ts.SourceFile>;
@@ -0,0 +1,94 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.createWorkerTransformer = createWorkerTransformer;
14
+ const typescript_1 = __importDefault(require("typescript"));
15
+ /**
16
+ * Creates a TypeScript Transformer to process Worker and SharedWorker entry points and transform
17
+ * the URL instances to reference the built and bundled worker code. This uses a callback process
18
+ * similar to the component stylesheets to allow the main esbuild plugin to process files as needed.
19
+ * Unsupported worker expressions will be left in their origin form.
20
+ * @param getTypeChecker A function that returns a TypeScript TypeChecker instance for the program.
21
+ * @returns A TypeScript transformer factory.
22
+ */
23
+ function createWorkerTransformer(fileProcessor) {
24
+ return (context) => {
25
+ const nodeFactory = context.factory;
26
+ const visitNode = (node) => {
27
+ // Check if the node is a valid new expression for a Worker or SharedWorker
28
+ // TODO: Add global scope check
29
+ if (!typescript_1.default.isNewExpression(node) ||
30
+ !typescript_1.default.isIdentifier(node.expression) ||
31
+ (node.expression.text !== 'Worker' && node.expression.text !== 'SharedWorker')) {
32
+ // Visit child nodes of non-Worker expressions
33
+ return typescript_1.default.visitEachChild(node, visitNode, context);
34
+ }
35
+ // Worker should have atleast one argument but not more than two
36
+ if (!node.arguments || node.arguments.length < 1 || node.arguments.length > 2) {
37
+ return node;
38
+ }
39
+ // First argument must be a new URL expression
40
+ const workerUrlNode = node.arguments[0];
41
+ // TODO: Add global scope check
42
+ if (!typescript_1.default.isNewExpression(workerUrlNode) ||
43
+ !typescript_1.default.isIdentifier(workerUrlNode.expression) ||
44
+ workerUrlNode.expression.text !== 'URL') {
45
+ return node;
46
+ }
47
+ // URL must have 2 arguments
48
+ if (!workerUrlNode.arguments || workerUrlNode.arguments.length !== 2) {
49
+ return node;
50
+ }
51
+ // URL arguments must be a string and then `import.meta.url`
52
+ if (!typescript_1.default.isStringLiteralLike(workerUrlNode.arguments[0]) ||
53
+ !typescript_1.default.isPropertyAccessExpression(workerUrlNode.arguments[1]) ||
54
+ !typescript_1.default.isMetaProperty(workerUrlNode.arguments[1].expression) ||
55
+ workerUrlNode.arguments[1].name.text !== 'url') {
56
+ return node;
57
+ }
58
+ const filePath = workerUrlNode.arguments[0].text;
59
+ const importer = node.getSourceFile().fileName;
60
+ // Process the file
61
+ const replacementPath = fileProcessor(filePath, importer);
62
+ // Update if the path changed
63
+ if (replacementPath !== filePath) {
64
+ return nodeFactory.updateNewExpression(node, node.expression, node.typeArguments,
65
+ // Update Worker arguments
66
+ typescript_1.default.setTextRange(nodeFactory.createNodeArray([
67
+ nodeFactory.updateNewExpression(workerUrlNode, workerUrlNode.expression, workerUrlNode.typeArguments,
68
+ // Update URL arguments
69
+ typescript_1.default.setTextRange(nodeFactory.createNodeArray([
70
+ nodeFactory.createStringLiteral(replacementPath),
71
+ workerUrlNode.arguments[1],
72
+ ], workerUrlNode.arguments.hasTrailingComma), workerUrlNode.arguments)),
73
+ // Use the second Worker argument (options) if present.
74
+ // Otherwise create a default options object for module Workers.
75
+ node.arguments[1] ??
76
+ nodeFactory.createObjectLiteralExpression([
77
+ nodeFactory.createPropertyAssignment('type', nodeFactory.createStringLiteral('module')),
78
+ ]),
79
+ ], node.arguments.hasTrailingComma), node.arguments));
80
+ }
81
+ else {
82
+ return node;
83
+ }
84
+ };
85
+ return (sourceFile) => {
86
+ // Skip transformer if there are no Workers
87
+ if (!sourceFile.text.includes('Worker')) {
88
+ return sourceFile;
89
+ }
90
+ return typescript_1.default.visitEachChild(sourceFile, visitNode, context);
91
+ };
92
+ };
93
+ }
94
+ //# sourceMappingURL=web-worker-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-worker-transformer.js","sourceRoot":"","sources":["web-worker-transformer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ /**
9
+ * A string value representing the namespace for Angular JIT mode related imports for
10
+ * Component styles. This namespace is used for both inline (`styles`) and external
11
+ * (`styleUrls`) styles.
12
+ */
13
+ export declare const JIT_STYLE_NAMESPACE: "angular:jit:style";
14
+ /**
15
+ * A string value representing the namespace for Angular JIT mode related imports for
16
+ * Component templates. This namespace is currently only used for external (`templateUrl`)
17
+ * templates.
18
+ */
19
+ export declare const JIT_TEMPLATE_NAMESPACE: "angular:jit:template";
20
+ /**
21
+ * A regular expression that can be used to match a Angular JIT mode namespace URI.
22
+ * It contains capture groups for the type (template/style), origin (file/inline), and specifier.
23
+ * The {@link parseJitUri} function can be used to parse and return an object representation of a JIT URI.
24
+ */
25
+ export declare const JIT_NAMESPACE_REGEXP: RegExp;
26
+ /**
27
+ * Generates an Angular JIT mode namespace URI for a given file.
28
+ * @param file The path of the file to be included.
29
+ * @param type The type of the file (`style` or `template`).
30
+ * @returns A string containing the full JIT namespace URI.
31
+ */
32
+ export declare function generateJitFileUri(file: string, type: 'style' | 'template'): string;
33
+ /**
34
+ * Generates an Angular JIT mode namespace URI for a given inline style or template.
35
+ * The provided content is base64 encoded and included in the URI.
36
+ * @param data The content to encode within the URI.
37
+ * @param type The type of the content (`style` or `template`).
38
+ * @returns A string containing the full JIT namespace URI.
39
+ */
40
+ export declare function generateJitInlineUri(data: string | Uint8Array, type: 'style' | 'template'): string;
41
+ /**
42
+ * Parses a string containing a JIT namespace URI.
43
+ * JIT namespace URIs are used to encode the information for an Angular component's stylesheets
44
+ * and templates when compiled in JIT mode.
45
+ * @param uri The URI to parse into its underlying components.
46
+ * @returns An object containing the namespace, type, origin, and specifier of the URI;
47
+ * `undefined` if not a JIT namespace URI.
48
+ */
49
+ export declare function parseJitUri(uri: string): {
50
+ namespace: string;
51
+ type: "style" | "template";
52
+ origin: "file" | "inline";
53
+ specifier: string;
54
+ } | undefined;