@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,97 @@
1
+ "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.dev/license
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.createExternalPackagesPlugin = createExternalPackagesPlugin;
11
+ const node_path_1 = require("node:path");
12
+ const EXTERNAL_PACKAGE_RESOLUTION = Symbol('EXTERNAL_PACKAGE_RESOLUTION');
13
+ /**
14
+ * Creates a plugin that marks any resolved path as external if it is within a node modules directory.
15
+ * This is used instead of the esbuild `packages` option to avoid marking files that should be loaded
16
+ * via customized loaders. This is necessary to prevent Vite development server pre-bundling errors.
17
+ *
18
+ * @returns An esbuild plugin.
19
+ */
20
+ function createExternalPackagesPlugin(options) {
21
+ const exclusions = new Set(options?.exclude);
22
+ // Similar to esbuild, --external:@foo/bar automatically implies --external:@foo/bar/*,
23
+ // which matches import paths like @foo/bar/baz.
24
+ // This means all paths within the @foo/bar package are also marked as external.
25
+ const exclusionsPrefixes = options?.exclude?.map((exclusion) => exclusion + '/') ?? [];
26
+ const seenExclusions = new Set();
27
+ const seenExternals = new Set();
28
+ const seenNonExclusions = new Set();
29
+ return {
30
+ name: 'angular-external-packages',
31
+ setup(build) {
32
+ // Find all loader keys that are not using the 'file' loader.
33
+ // The 'file' loader is automatically handled by Vite and does not need exclusion.
34
+ const loaderOptionKeys = build.initialOptions.loader &&
35
+ Object.entries(build.initialOptions.loader)
36
+ .filter(([, value]) => value !== 'file')
37
+ .map(([key]) => key);
38
+ // Safe to use native packages external option if no loader options or exclusions present
39
+ if (!exclusions.size && !loaderOptionKeys?.length) {
40
+ build.initialOptions.packages = 'external';
41
+ return;
42
+ }
43
+ const loaderFileExtensions = new Set(loaderOptionKeys);
44
+ // Only attempt resolve of non-relative and non-absolute paths
45
+ build.onResolve({ filter: /^[^./]/ }, async (args) => {
46
+ if (args.pluginData?.[EXTERNAL_PACKAGE_RESOLUTION]) {
47
+ return null;
48
+ }
49
+ if (seenExternals.has(args.path)) {
50
+ return { external: true };
51
+ }
52
+ if (exclusions.has(args.path) || seenExclusions.has(args.path)) {
53
+ return null;
54
+ }
55
+ if (!seenNonExclusions.has(args.path)) {
56
+ for (const exclusion of exclusionsPrefixes) {
57
+ if (args.path.startsWith(exclusion)) {
58
+ seenExclusions.add(args.path);
59
+ return null;
60
+ }
61
+ }
62
+ seenNonExclusions.add(args.path);
63
+ }
64
+ const { importer, kind, resolveDir, namespace, pluginData = {} } = args;
65
+ pluginData[EXTERNAL_PACKAGE_RESOLUTION] = true;
66
+ const result = await build.resolve(args.path, {
67
+ importer,
68
+ kind,
69
+ namespace,
70
+ pluginData,
71
+ resolveDir,
72
+ });
73
+ // Return result if unable to resolve
74
+ if (!result.path) {
75
+ return result;
76
+ }
77
+ // Return if explicitly marked external (externalDependencies option)
78
+ if (result.external) {
79
+ seenExternals.add(args.path);
80
+ return { external: true };
81
+ }
82
+ // Allow customized loaders to run against configured paths regardless of location
83
+ if (loaderFileExtensions.has((0, node_path_1.extname)(result.path))) {
84
+ return result;
85
+ }
86
+ // Mark paths from a node modules directory as external
87
+ if (/[\\/]node_modules[\\/]/.test(result.path)) {
88
+ seenExternals.add(args.path);
89
+ return { external: true };
90
+ }
91
+ // Otherwise return original result
92
+ return result;
93
+ });
94
+ },
95
+ };
96
+ }
97
+ //# sourceMappingURL=external-packages-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-packages-plugin.js","sourceRoot":"","sources":["external-packages-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.dev/license
7
+ */
8
+ import type { NormalizedApplicationBuildOptions } from '../../builders/application/options';
9
+ import { BundlerOptionsFactory } from './bundler-context';
10
+ /**
11
+ * Create an esbuild 'build' options object for all global scripts defined in the user provied
12
+ * build options.
13
+ * @param options The builder's user-provider normalized options.
14
+ * @returns An esbuild BuildOptions object.
15
+ */
16
+ export declare function createGlobalScriptsBundleOptions(options: NormalizedApplicationBuildOptions, target: string[], initial: boolean): BundlerOptionsFactory | undefined;
@@ -0,0 +1,153 @@
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.createGlobalScriptsBundleOptions = createGlobalScriptsBundleOptions;
47
+ const magic_string_1 = __importStar(require("magic-string"));
48
+ const node_assert_1 = __importDefault(require("node:assert"));
49
+ const promises_1 = require("node:fs/promises");
50
+ const node_path_1 = __importDefault(require("node:path"));
51
+ const error_1 = require("../../utils/error");
52
+ const load_result_cache_1 = require("./load-result-cache");
53
+ const sourcemap_ignorelist_plugin_1 = require("./sourcemap-ignorelist-plugin");
54
+ const virtual_module_plugin_1 = require("./virtual-module-plugin");
55
+ /**
56
+ * Create an esbuild 'build' options object for all global scripts defined in the user provied
57
+ * build options.
58
+ * @param options The builder's user-provider normalized options.
59
+ * @returns An esbuild BuildOptions object.
60
+ */
61
+ function createGlobalScriptsBundleOptions(options, target, initial) {
62
+ const { globalScripts, optimizationOptions, outputNames, preserveSymlinks, sourcemapOptions, jsonLogs, workspaceRoot, define, } = options;
63
+ const namespace = 'angular:script/global';
64
+ const entryPoints = {};
65
+ let found = false;
66
+ for (const script of globalScripts) {
67
+ if (script.initial === initial) {
68
+ found = true;
69
+ entryPoints[script.name] = `${namespace}:${script.name}`;
70
+ }
71
+ }
72
+ // Skip if there are no entry points for the style loading type
73
+ if (found === false) {
74
+ return;
75
+ }
76
+ return (loadCache) => {
77
+ return {
78
+ absWorkingDir: workspaceRoot,
79
+ bundle: false,
80
+ splitting: false,
81
+ entryPoints,
82
+ entryNames: initial ? outputNames.bundles : '[name]',
83
+ assetNames: outputNames.media,
84
+ mainFields: ['script', 'browser', 'main'],
85
+ conditions: ['script', optimizationOptions.scripts ? 'production' : 'development'],
86
+ resolveExtensions: ['.mjs', '.js', '.cjs'],
87
+ logLevel: options.verbose && !jsonLogs ? 'debug' : 'silent',
88
+ metafile: true,
89
+ minify: optimizationOptions.scripts,
90
+ outdir: workspaceRoot,
91
+ sourcemap: sourcemapOptions.scripts && (sourcemapOptions.hidden ? 'external' : true),
92
+ write: false,
93
+ platform: 'neutral',
94
+ target,
95
+ preserveSymlinks,
96
+ define,
97
+ plugins: [
98
+ (0, sourcemap_ignorelist_plugin_1.createSourcemapIgnorelistPlugin)(),
99
+ (0, virtual_module_plugin_1.createVirtualModulePlugin)({
100
+ namespace,
101
+ external: true,
102
+ // Add the `js` extension here so that esbuild generates an output file with the extension
103
+ transformPath: (path) => path.slice(namespace.length + 1) + '.js',
104
+ loadContent: (args, build) => (0, load_result_cache_1.createCachedLoad)(loadCache, async (args) => {
105
+ const files = globalScripts.find(({ name }) => name === args.path.slice(0, -3))?.files;
106
+ (0, node_assert_1.default)(files, `Invalid operation: global scripts name not found [${args.path}]`);
107
+ // Global scripts are concatenated using magic-string instead of bundled via esbuild.
108
+ const bundleContent = new magic_string_1.Bundle();
109
+ const watchFiles = [];
110
+ for (const filename of files) {
111
+ let fileContent;
112
+ try {
113
+ // Attempt to read as a relative path from the workspace root
114
+ const fullPath = node_path_1.default.join(workspaceRoot, filename);
115
+ fileContent = await (0, promises_1.readFile)(fullPath, 'utf-8');
116
+ watchFiles.push(fullPath);
117
+ }
118
+ catch (e) {
119
+ (0, error_1.assertIsError)(e);
120
+ if (e.code !== 'ENOENT') {
121
+ throw e;
122
+ }
123
+ // If not found, attempt to resolve as a module specifier
124
+ const resolveResult = await build.resolve(filename, {
125
+ kind: 'entry-point',
126
+ resolveDir: workspaceRoot,
127
+ });
128
+ if (resolveResult.errors.length) {
129
+ // Remove resolution failure notes about marking as external since it doesn't apply
130
+ // to global scripts.
131
+ resolveResult.errors.forEach((error) => (error.notes = []));
132
+ return {
133
+ errors: resolveResult.errors,
134
+ warnings: resolveResult.warnings,
135
+ };
136
+ }
137
+ watchFiles.push(resolveResult.path);
138
+ fileContent = await (0, promises_1.readFile)(resolveResult.path, 'utf-8');
139
+ }
140
+ bundleContent.addSource(new magic_string_1.default(fileContent, { filename }));
141
+ }
142
+ return {
143
+ contents: bundleContent.toString(),
144
+ loader: 'js',
145
+ watchFiles,
146
+ };
147
+ }).call(build, args),
148
+ }),
149
+ ],
150
+ };
151
+ };
152
+ }
153
+ //# sourceMappingURL=global-scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-scripts.js","sourceRoot":"","sources":["global-scripts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
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 { NormalizedApplicationBuildOptions } from '../../builders/application/options';
9
+ import { BundlerOptionsFactory } from './bundler-context';
10
+ export declare function createGlobalStylesBundleOptions(options: NormalizedApplicationBuildOptions, target: string[], initial: boolean): BundlerOptionsFactory | undefined;
@@ -0,0 +1,79 @@
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.createGlobalStylesBundleOptions = createGlobalStylesBundleOptions;
14
+ const node_assert_1 = __importDefault(require("node:assert"));
15
+ const path_1 = require("../../utils/path");
16
+ const bundle_options_1 = require("./stylesheets/bundle-options");
17
+ const virtual_module_plugin_1 = require("./virtual-module-plugin");
18
+ function createGlobalStylesBundleOptions(options, target, initial) {
19
+ const { workspaceRoot, optimizationOptions, sourcemapOptions, outputNames, globalStyles, preserveSymlinks, externalDependencies, stylePreprocessorOptions, tailwindConfiguration, postcssConfiguration, cacheOptions, } = options;
20
+ const namespace = 'angular:styles/global';
21
+ const entryPoints = {};
22
+ let found = false;
23
+ for (const style of globalStyles) {
24
+ if (style.initial === initial) {
25
+ found = true;
26
+ entryPoints[style.name] = `${namespace};${style.name}`;
27
+ }
28
+ }
29
+ // Skip if there are no entry points for the style loading type
30
+ if (found === false) {
31
+ return;
32
+ }
33
+ return (loadCache) => {
34
+ const buildOptions = (0, bundle_options_1.createStylesheetBundleOptions)({
35
+ workspaceRoot,
36
+ optimization: !!optimizationOptions.styles.minify,
37
+ inlineFonts: !!optimizationOptions.fonts.inline,
38
+ sourcemap: !!sourcemapOptions.styles && (sourcemapOptions.hidden ? 'external' : true),
39
+ sourcesContent: sourcemapOptions.sourcesContent,
40
+ preserveSymlinks,
41
+ target,
42
+ externalDependencies,
43
+ outputNames: initial
44
+ ? outputNames
45
+ : {
46
+ ...outputNames,
47
+ bundles: '[name]',
48
+ },
49
+ includePaths: stylePreprocessorOptions?.includePaths,
50
+ // string[] | undefined' is not assignable to type '(Version | DeprecationOrId)[] | undefined'.
51
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
52
+ sass: stylePreprocessorOptions?.sass,
53
+ tailwindConfiguration,
54
+ postcssConfiguration,
55
+ cacheOptions,
56
+ }, loadCache);
57
+ // Keep special CSS comments `/*! comment */` in place when `removeSpecialComments` is disabled.
58
+ // These comments are special for a number of CSS tools such as Beasties and PurgeCSS.
59
+ buildOptions.legalComments = optimizationOptions.styles?.removeSpecialComments
60
+ ? 'none'
61
+ : 'inline';
62
+ buildOptions.entryPoints = entryPoints;
63
+ buildOptions.plugins.unshift((0, virtual_module_plugin_1.createVirtualModulePlugin)({
64
+ namespace,
65
+ transformPath: (path) => path.split(';', 2)[1],
66
+ loadContent: (args) => {
67
+ const files = globalStyles.find(({ name }) => name === args.path)?.files;
68
+ (0, node_assert_1.default)(files, `global style name should always be found [${args.path}]`);
69
+ return {
70
+ contents: files.map((file) => `@import '${(0, path_1.toPosixPath)(file)}';`).join('\n'),
71
+ loader: 'css',
72
+ resolveDir: workspaceRoot,
73
+ };
74
+ },
75
+ }));
76
+ return buildOptions;
77
+ };
78
+ }
79
+ //# sourceMappingURL=global-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-styles.js","sourceRoot":"","sources":["global-styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
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
+ * The options passed to the inliner for each file request
10
+ */
11
+ interface InlineFileRequest {
12
+ /**
13
+ * The filename that should be processed. The data for the file is provided to the Worker
14
+ * during Worker initialization.
15
+ */
16
+ filename: string;
17
+ /**
18
+ * The locale specifier that should be used during the inlining process of the file.
19
+ */
20
+ locale: string;
21
+ /**
22
+ * The translation messages for the locale that should be used during the inlining process of the file.
23
+ */
24
+ translation?: Record<string, unknown>;
25
+ }
26
+ /**
27
+ * The options passed to the inliner for each code request
28
+ */
29
+ interface InlineCodeRequest {
30
+ /**
31
+ * The code that should be processed.
32
+ */
33
+ code: string;
34
+ /**
35
+ * The filename to use in error and warning messages for the provided code.
36
+ */
37
+ filename: string;
38
+ /**
39
+ * The locale specifier that should be used during the inlining process of the file.
40
+ */
41
+ locale: string;
42
+ /**
43
+ * The translation messages for the locale that should be used during the inlining process of the file.
44
+ */
45
+ translation?: Record<string, unknown>;
46
+ }
47
+ /**
48
+ * Inlines the provided locale and translation into a JavaScript file that contains `$localize` usage.
49
+ * This function is the main entry for the Worker's action that is called by the worker pool.
50
+ *
51
+ * @param request An InlineRequest object representing the options for inlining
52
+ * @returns An object containing the inlined file and optional map content.
53
+ */
54
+ export default function inlineFile(request: InlineFileRequest): Promise<{
55
+ file: string;
56
+ code: string;
57
+ map: string | undefined;
58
+ messages: {
59
+ type: "warning" | "error";
60
+ message: string;
61
+ }[];
62
+ }>;
63
+ /**
64
+ * Inlines the provided locale and translation into JavaScript code that contains `$localize` usage.
65
+ * This function is a secondary entry primarily for use with component HMR update modules.
66
+ *
67
+ * @param request An InlineRequest object representing the options for inlining
68
+ * @returns An object containing the inlined code.
69
+ */
70
+ export declare function inlineCode(request: InlineCodeRequest): Promise<{
71
+ output: string;
72
+ messages: {
73
+ type: "warning" | "error";
74
+ message: string;
75
+ }[];
76
+ }>;
77
+ export {};
@@ -0,0 +1,184 @@
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.default = inlineFile;
47
+ exports.inlineCode = inlineCode;
48
+ const remapping_1 = __importDefault(require("@ampproject/remapping"));
49
+ const core_1 = require("@babel/core");
50
+ const node_assert_1 = __importDefault(require("node:assert"));
51
+ const node_worker_threads_1 = require("node:worker_threads");
52
+ const error_1 = require("../../utils/error");
53
+ // Extract the application files and common options used for inline requests from the Worker context
54
+ // TODO: Evaluate overall performance difference of passing translations here as well
55
+ const { files, missingTranslation, shouldOptimize } = (node_worker_threads_1.workerData || {});
56
+ /**
57
+ * Inlines the provided locale and translation into a JavaScript file that contains `$localize` usage.
58
+ * This function is the main entry for the Worker's action that is called by the worker pool.
59
+ *
60
+ * @param request An InlineRequest object representing the options for inlining
61
+ * @returns An object containing the inlined file and optional map content.
62
+ */
63
+ async function inlineFile(request) {
64
+ const data = files.get(request.filename);
65
+ (0, node_assert_1.default)(data !== undefined, `Invalid inline request for file '${request.filename}'.`);
66
+ const code = await data.text();
67
+ const map = await files.get(request.filename + '.map')?.text();
68
+ const result = await transformWithBabel(code, map && JSON.parse(map), request);
69
+ return {
70
+ file: request.filename,
71
+ code: result.code,
72
+ map: result.map,
73
+ messages: result.diagnostics.messages,
74
+ };
75
+ }
76
+ /**
77
+ * Inlines the provided locale and translation into JavaScript code that contains `$localize` usage.
78
+ * This function is a secondary entry primarily for use with component HMR update modules.
79
+ *
80
+ * @param request An InlineRequest object representing the options for inlining
81
+ * @returns An object containing the inlined code.
82
+ */
83
+ async function inlineCode(request) {
84
+ const result = await transformWithBabel(request.code, undefined, request);
85
+ return {
86
+ output: result.code,
87
+ messages: result.diagnostics.messages,
88
+ };
89
+ }
90
+ /**
91
+ * Cached instance of the `@angular/localize/tools` module.
92
+ * This is used to remove the need to repeatedly import the module per file translation.
93
+ */
94
+ let localizeToolsModule;
95
+ /**
96
+ * Attempts to load the `@angular/localize/tools` module containing the functionality to
97
+ * perform the file translations.
98
+ * This module must be dynamically loaded as it is an ESM module and this file is CommonJS.
99
+ */
100
+ async function loadLocalizeTools() {
101
+ // Load ESM `@angular/localize/tools` using the TypeScript dynamic import workaround.
102
+ // Once TypeScript provides support for keeping the dynamic import this workaround can be
103
+ // changed to a direct dynamic import.
104
+ localizeToolsModule ??= await Promise.resolve().then(() => __importStar(require('@angular/localize/tools')));
105
+ return localizeToolsModule;
106
+ }
107
+ /**
108
+ * Creates the needed Babel plugins to inline a given locale and translation for a JavaScript file.
109
+ * @param locale A string containing the locale specifier to use.
110
+ * @param translation A object record containing locale specific messages to use.
111
+ * @returns An array of Babel plugins.
112
+ */
113
+ async function createI18nPlugins(locale, translation) {
114
+ const { Diagnostics, makeEs2015TranslatePlugin } = await loadLocalizeTools();
115
+ const plugins = [];
116
+ const diagnostics = new Diagnostics();
117
+ plugins.push(
118
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
119
+ makeEs2015TranslatePlugin(diagnostics, (translation || {}), {
120
+ missingTranslation: translation === undefined ? 'ignore' : missingTranslation,
121
+ }));
122
+ // Create a plugin to replace the locale specifier constant inject by the build system with the actual specifier
123
+ plugins.push({
124
+ visitor: {
125
+ StringLiteral(path) {
126
+ if (path.node.value === '___NG_LOCALE_INSERT___') {
127
+ path.replaceWith(core_1.types.stringLiteral(locale));
128
+ }
129
+ },
130
+ },
131
+ });
132
+ return { diagnostics, plugins };
133
+ }
134
+ /**
135
+ * Transforms a JavaScript file using Babel to inline the request locale and translation.
136
+ * @param code A string containing the JavaScript code to transform.
137
+ * @param map A sourcemap object for the provided JavaScript code.
138
+ * @param options The inline request options to use.
139
+ * @returns An object containing the code, map, and diagnostics from the transformation.
140
+ */
141
+ async function transformWithBabel(code, map, options) {
142
+ let ast;
143
+ try {
144
+ ast = (0, core_1.parseSync)(code, {
145
+ babelrc: false,
146
+ configFile: false,
147
+ sourceType: 'unambiguous',
148
+ filename: options.filename,
149
+ });
150
+ }
151
+ catch (error) {
152
+ (0, error_1.assertIsError)(error);
153
+ // Make the error more readable.
154
+ // Same errors will contain the full content of the file as the error message
155
+ // Which makes it hard to find the actual error message.
156
+ const index = error.message.indexOf(')\n');
157
+ const msg = index !== -1 ? error.message.slice(0, index + 1) : error.message;
158
+ throw new Error(`${msg}\nAn error occurred inlining file "${options.filename}"`);
159
+ }
160
+ if (!ast) {
161
+ throw new Error(`Unknown error occurred inlining file "${options.filename}"`);
162
+ }
163
+ const { diagnostics, plugins } = await createI18nPlugins(options.locale, options.translation);
164
+ const transformResult = await (0, core_1.transformFromAstAsync)(ast, code, {
165
+ filename: options.filename,
166
+ // false is a valid value but not included in the type definition
167
+ inputSourceMap: false,
168
+ sourceMaps: !!map,
169
+ compact: shouldOptimize,
170
+ configFile: false,
171
+ babelrc: false,
172
+ browserslistConfigFile: false,
173
+ plugins,
174
+ });
175
+ if (!transformResult || !transformResult.code) {
176
+ throw new Error(`Unknown error occurred processing bundle for "${options.filename}".`);
177
+ }
178
+ let outputMap;
179
+ if (map && transformResult.map) {
180
+ outputMap = (0, remapping_1.default)([transformResult.map, map], () => null);
181
+ }
182
+ return { code: transformResult.code, map: outputMap && JSON.stringify(outputMap), diagnostics };
183
+ }
184
+ //# sourceMappingURL=i18n-inliner-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n-inliner-worker.js","sourceRoot":"","sources":["i18n-inliner-worker.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqEH,6BAmBC;AASD,gCAOC;AAtGD,sEAAkE;AAClE,sCAAiF;AACjF,8DAAiC;AACjC,6DAAiD;AACjD,6CAAkD;AAgDlD,oGAAoG;AACpG,qFAAqF;AACrF,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,GAAG,CAAC,gCAAU,IAAI,EAAE,CAItE,CAAC;AAEF;;;;;;GAMG;AACY,KAAK,UAAU,UAAU,CAAC,OAA0B;IACjE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzC,IAAA,qBAAM,EAAC,IAAI,KAAK,SAAS,EAAE,oCAAoC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IAErF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,IAAI,EACJ,GAAG,IAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,EAC1C,OAAO,CACR,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,QAAQ;QACtB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;KACtC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,UAAU,CAAC,OAA0B;IACzD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAE1E,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI;QACnB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;KACtC,CAAC;AACJ,CAAC;AAOD;;;GAGG;AACH,IAAI,mBAAsD,CAAC;AAE3D;;;;GAIG;AACH,KAAK,UAAU,iBAAiB;IAC9B,qFAAqF;IACrF,yFAAyF;IACzF,sCAAsC;IACtC,mBAAmB,KAAK,wDAAa,yBAAyB,GAAC,CAAC;IAEhE,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAc,EAAE,WAAgD;IAC/F,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAE7E,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,OAAO,CAAC,IAAI;IACV,8DAA8D;IAC9D,yBAAyB,CAAC,WAAW,EAAE,CAAC,WAAW,IAAI,EAAE,CAAQ,EAAE;QACjE,kBAAkB,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB;KAC9E,CAAC,CACH,CAAC;IAEF,gHAAgH;IAChH,OAAO,CAAC,IAAI,CAAC;QACX,OAAO,EAAE;YACP,aAAa,CAAC,IAAI;gBAChB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,wBAAwB,EAAE,CAAC;oBACjD,IAAI,CAAC,WAAW,CAAC,YAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,kBAAkB,CAC/B,IAAY,EACZ,GAA+B,EAC/B,OAA0B;IAE1B,IAAI,GAAG,CAAC;IACR,IAAI,CAAC;QACH,GAAG,GAAG,IAAA,gBAAS,EAAC,IAAI,EAAE;YACpB,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,aAAa;YACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAA,qBAAa,EAAC,KAAK,CAAC,CAAC;QAErB,gCAAgC;QAChC,6EAA6E;QAC7E,wDAAwD;QACxD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,sCAAsC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACnF,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9F,MAAM,eAAe,GAAG,MAAM,IAAA,4BAAqB,EAAC,GAAG,EAAE,IAAI,EAAE;QAC7D,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,iEAAiE;QACjE,cAAc,EAAE,KAA6B;QAC7C,UAAU,EAAE,CAAC,CAAC,GAAG;QACjB,OAAO,EAAE,cAAc;QACvB,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;QACd,sBAAsB,EAAE,KAAK;QAC7B,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iDAAiD,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,SAAS,CAAC;IACd,IAAI,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,CAAC;QAC/B,SAAS,GAAG,IAAA,mBAAS,EAAC,CAAC,eAAe,CAAC,GAAqB,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;AAClG,CAAC"}