@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,205 @@
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.createAngularAssetsMiddleware = createAngularAssetsMiddleware;
11
+ exports.createBuildAssetsMiddleware = createBuildAssetsMiddleware;
12
+ const mrmime_1 = require("mrmime");
13
+ const node_crypto_1 = require("node:crypto");
14
+ const node_fs_1 = require("node:fs");
15
+ const node_path_1 = require("node:path");
16
+ const utils_1 = require("../utils");
17
+ const CSS_PREPROCESSOR_REGEXP = /\.(?:s[ac]ss|less|css)$/;
18
+ const JS_TS_REGEXP = /\.[cm]?[tj]sx?$/;
19
+ function createAngularAssetsMiddleware(server, assets, outputFiles, componentStyles, encapsulateStyle) {
20
+ return function angularAssetsMiddleware(req, res, next) {
21
+ if (req.url === undefined || res.writableEnded) {
22
+ return;
23
+ }
24
+ // Parse the incoming request.
25
+ // The base of the URL is unused but required to parse the URL.
26
+ const pathname = (0, utils_1.pathnameWithoutBasePath)(req.url, server.config.base);
27
+ const extension = (0, node_path_1.extname)(pathname);
28
+ const pathnameHasTrailingSlash = pathname.at(-1) === '/';
29
+ // Rewrite all build assets to a vite raw fs URL
30
+ const asset = assets.get(pathname);
31
+ if (asset) {
32
+ // This is a workaround to serve extensionless, CSS, JS and TS files without Vite transformations.
33
+ if (!extension || JS_TS_REGEXP.test(extension) || CSS_PREPROCESSOR_REGEXP.test(extension)) {
34
+ const contents = (0, node_fs_1.readFileSync)(asset.source);
35
+ const etag = `W/${(0, node_crypto_1.createHash)('sha256').update(contents).digest('hex')}`;
36
+ if (checkAndHandleEtag(req, res, etag)) {
37
+ return;
38
+ }
39
+ const mimeType = (0, mrmime_1.lookup)(extension);
40
+ if (mimeType) {
41
+ res.setHeader('Content-Type', mimeType);
42
+ }
43
+ res.setHeader('ETag', etag);
44
+ res.setHeader('Cache-Control', 'no-cache');
45
+ res.end(contents);
46
+ }
47
+ else {
48
+ // The encoding needs to match what happens in the vite static middleware.
49
+ // ref: https://github.com/vitejs/vite/blob/d4f13bd81468961c8c926438e815ab6b1c82735e/packages/vite/src/node/server/middlewares/static.ts#L163
50
+ req.url = `${server.config.base}@fs/${encodeURI(asset.source)}`;
51
+ next();
52
+ }
53
+ return;
54
+ }
55
+ // HTML fallbacking
56
+ // This matches what happens in the vite html fallback middleware.
57
+ // ref: https://github.com/vitejs/vite/blob/main/packages/vite/src/node/server/middlewares/htmlFallback.ts#L9
58
+ const htmlAssetSourcePath = pathnameHasTrailingSlash
59
+ ? // Trailing slash check for `index.html`.
60
+ assets.get(pathname + 'index.html')
61
+ : // Non-trailing slash check for fallback `.html`
62
+ assets.get(pathname + '.html');
63
+ if (htmlAssetSourcePath) {
64
+ req.url = `${server.config.base}@fs/${encodeURI(htmlAssetSourcePath.source)}`;
65
+ next();
66
+ return;
67
+ }
68
+ // Support HTTP HEAD requests for the virtual output files from the Angular build
69
+ if (req.method === 'HEAD' && outputFiles.get(pathname)?.servable) {
70
+ // While a GET will also generate content, the rest of the response is equivalent
71
+ req.method = 'GET';
72
+ }
73
+ // Resource files are handled directly.
74
+ // Global stylesheets (CSS files) are currently considered resources to workaround
75
+ // dev server sourcemap issues with stylesheets.
76
+ if (extension !== '.js' && extension !== '.html') {
77
+ const outputFile = outputFiles.get(pathname);
78
+ if (outputFile?.servable) {
79
+ let data = outputFile.contents;
80
+ const componentStyle = componentStyles.get(pathname);
81
+ if (componentStyle) {
82
+ // Inject component ID for view encapsulation if requested
83
+ const searchParams = new URL(req.url, 'http://localhost').searchParams;
84
+ const componentId = searchParams.get('ngcomp');
85
+ if (componentId !== null) {
86
+ // Track if the component uses ShadowDOM encapsulation (3 = ViewEncapsulation.ShadowDom)
87
+ // Shadow DOM components currently require a full reload.
88
+ // Vite's CSS hot replacement does not support shadow root searching.
89
+ if (searchParams.get('e') === '3') {
90
+ componentStyle.reload = true;
91
+ }
92
+ // Record the component style usage for HMR updates
93
+ if (componentStyle.used === undefined) {
94
+ componentStyle.used = new Set([componentId]);
95
+ }
96
+ else {
97
+ componentStyle.used.add(componentId);
98
+ }
99
+ const etag = `W/"${outputFile.contents.byteLength}-${outputFile.hash}-${componentId}"`;
100
+ if (checkAndHandleEtag(req, res, etag)) {
101
+ return;
102
+ }
103
+ // Shim the stylesheet if a component ID is provided
104
+ if (componentId.length > 0) {
105
+ // Validate component ID
106
+ if (!/^[_.\-\p{Letter}\d]+-c\d+$/u.test(componentId)) {
107
+ const message = 'Invalid component stylesheet ID request: ' + componentId;
108
+ // eslint-disable-next-line no-console
109
+ console.error(message);
110
+ res.statusCode = 400;
111
+ res.end(message);
112
+ return;
113
+ }
114
+ data = encapsulateStyle(data, componentId);
115
+ }
116
+ res.setHeader('Content-Type', 'text/css');
117
+ res.setHeader('Cache-Control', 'no-cache');
118
+ res.setHeader('ETag', etag);
119
+ res.end(data);
120
+ return;
121
+ }
122
+ }
123
+ const etag = `W/"${outputFile.contents.byteLength}-${outputFile.hash}"`;
124
+ if (checkAndHandleEtag(req, res, etag)) {
125
+ return;
126
+ }
127
+ const mimeType = (0, mrmime_1.lookup)(extension);
128
+ if (mimeType) {
129
+ res.setHeader('Content-Type', mimeType);
130
+ }
131
+ res.setHeader('Cache-Control', 'no-cache');
132
+ res.setHeader('ETag', etag);
133
+ res.end(data);
134
+ return;
135
+ }
136
+ }
137
+ // If the path has no trailing slash and it matches a servable directory redirect to the same path with slash.
138
+ // This matches the default express static behaviour.
139
+ // See: https://github.com/expressjs/serve-static/blob/89fc94567fae632718a2157206c52654680e9d01/index.js#L182
140
+ if (!pathnameHasTrailingSlash) {
141
+ for (const assetPath of assets.keys()) {
142
+ if (pathname === assetPath.substring(0, assetPath.lastIndexOf('/'))) {
143
+ const { pathname, search, hash } = new URL(req.url, 'http://localhost');
144
+ const location = [pathname, '/', search, hash].join('');
145
+ res.statusCode = 301;
146
+ res.setHeader('Content-Type', 'text/html');
147
+ res.setHeader('Location', location);
148
+ res.end(`
149
+ <!DOCTYPE html>
150
+ <html lang="en">
151
+ <head>
152
+ <meta charset="utf-8">
153
+ <title>Redirecting</title>
154
+ </head>
155
+ <body>
156
+ <pre>Redirecting to <a href="${location}">${location}</a></pre>
157
+ </body>
158
+ </html>
159
+ `);
160
+ return;
161
+ }
162
+ }
163
+ }
164
+ next();
165
+ };
166
+ }
167
+ function checkAndHandleEtag(req, res, etag) {
168
+ if (req.headers['if-none-match'] === etag) {
169
+ res.statusCode = 304;
170
+ res.end();
171
+ return true;
172
+ }
173
+ return false;
174
+ }
175
+ function createBuildAssetsMiddleware(basePath, buildResultFiles, readHandler = node_fs_1.readFileSync) {
176
+ return function buildAssetsMiddleware(req, res, next) {
177
+ if (req.url === undefined || res.writableEnded) {
178
+ return;
179
+ }
180
+ // Parse the incoming request.
181
+ // The base of the URL is unused but required to parse the URL.
182
+ const pathname = (0, utils_1.pathnameWithoutBasePath)(req.url, basePath);
183
+ const extension = (0, node_path_1.extname)(pathname);
184
+ if (extension && !/\.[mc]?[jt]s(?:\.map)?$/.test(extension)) {
185
+ const outputFile = buildResultFiles.get(pathname.slice(1));
186
+ if (outputFile) {
187
+ const contents = outputFile.origin === 'memory' ? outputFile.contents : readHandler(outputFile.inputPath);
188
+ const etag = `W/${(0, node_crypto_1.createHash)('sha256').update(contents).digest('hex')}`;
189
+ if (checkAndHandleEtag(req, res, etag)) {
190
+ return;
191
+ }
192
+ const mimeType = (0, mrmime_1.lookup)(extension);
193
+ if (mimeType) {
194
+ res.setHeader('Content-Type', mimeType);
195
+ }
196
+ res.setHeader('ETag', etag);
197
+ res.setHeader('Cache-Control', 'no-cache');
198
+ res.end(contents);
199
+ return;
200
+ }
201
+ }
202
+ next();
203
+ };
204
+ }
205
+ //# sourceMappingURL=assets-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets-middleware.js","sourceRoot":"","sources":["assets-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAoBH,sEA+KC;AAiBD,kEAwCC;AA1PD,mCAAkD;AAClD,6CAAyC;AACzC,qCAAuC;AAEvC,yCAAoC;AAGpC,oCAAkG;AAQlG,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AAC1D,MAAM,YAAY,GAAG,iBAAiB,CAAC;AAEvC,SAAgB,6BAA6B,CAC3C,MAAqB,EACrB,MAA2B,EAC3B,WAAqC,EACrC,eAAkD,EAClD,gBAAoE;IAEpE,OAAO,SAAS,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAA,+BAAuB,EAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,IAAA,mBAAO,EAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,wBAAwB,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;QAEzD,gDAAgD;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,KAAK,EAAE,CAAC;YACV,kGAAkG;YAClG,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1F,MAAM,QAAQ,GAAG,IAAA,sBAAY,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC5C,MAAM,IAAI,GAAG,KAAK,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxE,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACvC,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAA,eAAc,EAAC,SAAS,CAAC,CAAC;gBAC3C,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBAED,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC5B,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC3C,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,0EAA0E;gBAC1E,6IAA6I;gBAC7I,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChE,IAAI,EAAE,CAAC;YACT,CAAC;YAED,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,kEAAkE;QAClE,6GAA6G;QAC7G,MAAM,mBAAmB,GAAG,wBAAwB;YAClD,CAAC,CAAC,yCAAyC;gBACzC,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC;YACrC,CAAC,CAAC,gDAAgD;gBAChD,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;QAEnC,IAAI,mBAAmB,EAAE,CAAC;YACxB,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9E,IAAI,EAAE,CAAC;YAEP,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;YACjE,iFAAiF;YACjF,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,uCAAuC;QACvC,kFAAkF;QAClF,gDAAgD;QAChD,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACjD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,UAAU,EAAE,QAAQ,EAAE,CAAC;gBACzB,IAAI,IAAI,GAAwB,UAAU,CAAC,QAAQ,CAAC;gBACpD,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACrD,IAAI,cAAc,EAAE,CAAC;oBACnB,0DAA0D;oBAC1D,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC;oBACvE,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC/C,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;wBACzB,wFAAwF;wBACxF,yDAAyD;wBACzD,qEAAqE;wBACrE,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;4BAClC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;wBAC/B,CAAC;wBAED,mDAAmD;wBACnD,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BACtC,cAAc,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;wBAC/C,CAAC;6BAAM,CAAC;4BACN,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;wBACvC,CAAC;wBAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;wBACvF,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;4BACvC,OAAO;wBACT,CAAC;wBAED,oDAAoD;wBACpD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC3B,wBAAwB;4BACxB,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gCACrD,MAAM,OAAO,GAAG,2CAA2C,GAAG,WAAW,CAAC;gCAC1E,sCAAsC;gCACtC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gCACvB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gCACrB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gCAEjB,OAAO;4BACT,CAAC;4BAED,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;wBAC7C,CAAC;wBAED,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;wBAC1C,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;wBAC3C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBAC5B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBAEd,OAAO;oBACT,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC;gBACxE,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACvC,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAA,eAAc,EAAC,SAAS,CAAC,CAAC;gBAC3C,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBACD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC3C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC5B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEd,OAAO;YACT,CAAC;QACH,CAAC;QAED,8GAA8G;QAC9G,qDAAqD;QACrD,6GAA6G;QAC7G,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACtC,IAAI,QAAQ,KAAK,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACpE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;oBACxE,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAExD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;oBACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;oBAC3C,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;oBACpC,GAAG,CAAC,GAAG,CAAC;;;;;;;;+CAQ6B,QAAQ,KAAK,QAAQ;;;aAGvD,CAAC,CAAC;oBAEL,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,GAA4B,EAC5B,GAAmB,EACnB,IAAY;IAEZ,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1C,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;QACrB,GAAG,CAAC,GAAG,EAAE,CAAC;QAEV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,2BAA2B,CACzC,QAAgB,EAChB,gBAAiD,EACjD,cAAwC,sBAAY;IAEpD,OAAO,SAAS,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QAClD,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAA,+BAAuB,EAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAA,mBAAO,EAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,SAAS,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5D,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3D,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,QAAQ,GACZ,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBAE3F,MAAM,IAAI,GAAG,KAAK,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxE,IAAI,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACvC,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAA,eAAc,EAAC,SAAS,CAAC,CAAC;gBAC3C,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAC1C,CAAC;gBAED,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC5B,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC3C,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAElB,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,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 type { Connect } from 'vite';
9
+ /**
10
+ * Patches the Vite base middleware to correctly handle the Angular application's base href.
11
+ * This is necessary because Vite's default base middleware might not align with Angular's
12
+ * expected path handling when using SSR, especially when a base href is configured.
13
+ *
14
+ * @param middlewares The Connect server instance containing the middleware stack.
15
+ * @param base The base URL path to be handled by the middleware.
16
+ */
17
+ export declare function patchBaseMiddleware(middlewares: Connect.Server, base: string): void;
@@ -0,0 +1,44 @@
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.patchBaseMiddleware = patchBaseMiddleware;
11
+ const url_1 = require("../../../utils/url");
12
+ /**
13
+ * Patches the Vite base middleware to correctly handle the Angular application's base href.
14
+ * This is necessary because Vite's default base middleware might not align with Angular's
15
+ * expected path handling when using SSR, especially when a base href is configured.
16
+ *
17
+ * @param middlewares The Connect server instance containing the middleware stack.
18
+ * @param base The base URL path to be handled by the middleware.
19
+ */
20
+ function patchBaseMiddleware(middlewares, base) {
21
+ const entry = middlewares.stack.find(({ handle }) => typeof handle === 'function' && handle.name.startsWith('viteBaseMiddleware'));
22
+ if (typeof entry?.handle !== 'function') {
23
+ return;
24
+ }
25
+ entry.handle = function angularBaseMiddleware(req, res, next) {
26
+ const url = req.url || '/';
27
+ if (url.startsWith(base)) {
28
+ // Rewrite the URL to remove the base prefix before passing it to the next middleware.
29
+ // If the URL is exactly the base, it becomes '/'.
30
+ // Otherwise, we slice off the base and ensure there's a leading slash.
31
+ // See: https://github.com/vitejs/vite/blob/e81c183f8c8ccaf7774ef0d0ee125bf63dbf30b4/packages/vite/src/node/server/middlewares/base.ts#L12
32
+ req.url = url === base ? '/' : (0, url_1.addLeadingSlash)(url.slice(base.length - 1));
33
+ return next();
34
+ }
35
+ const { pathname, hash, search } = new URL(url, 'http://localhost');
36
+ if (pathname === '/' || pathname === '/index.html') {
37
+ res.writeHead(302, { Location: `${base}${search}${hash}` });
38
+ res.end();
39
+ return;
40
+ }
41
+ next();
42
+ };
43
+ }
44
+ //# sourceMappingURL=base-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-middleware.js","sourceRoot":"","sources":["base-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAcH,kDAmCC;AA7CD,4CAAqD;AAErD;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,WAA2B,EAAE,IAAY;IAC3E,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAClC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAC7F,CAAC;IAEF,IAAI,OAAO,KAAK,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;IAED,KAAK,CAAC,MAAM,GAAG,SAAS,qBAAqB,CAC3C,GAAoB,EACpB,GAAmB,EACnB,IAA6B;QAE7B,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;QAC3B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,sFAAsF;YACtF,kDAAkD;YAClD,uEAAuE;YACvE,0IAA0I;YAC1I,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,qBAAe,EAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAE3E,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACpE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;YACnD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5D,GAAG,CAAC,GAAG,EAAE,CAAC;YAEV,OAAO;QACT,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
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 { Connect } from 'vite';
9
+ export declare function createChromeDevtoolsMiddleware(cacheDir: string, projectRoot: string): Connect.NextHandleFunction;
@@ -0,0 +1,53 @@
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.createChromeDevtoolsMiddleware = createChromeDevtoolsMiddleware;
14
+ const node_assert_1 = __importDefault(require("node:assert"));
15
+ const node_crypto_1 = require("node:crypto");
16
+ const node_fs_1 = require("node:fs");
17
+ const node_path_1 = require("node:path");
18
+ const CHROME_DEVTOOLS_ROUTE = '/.well-known/appspecific/com.chrome.devtools.json';
19
+ function createChromeDevtoolsMiddleware(cacheDir, projectRoot) {
20
+ let devtoolsConfig;
21
+ const devtoolsConfigPath = (0, node_path_1.join)(cacheDir, 'com.chrome.devtools.json');
22
+ return function chromeDevtoolsMiddleware(req, res, next) {
23
+ if (req.url !== CHROME_DEVTOOLS_ROUTE) {
24
+ next();
25
+ return;
26
+ }
27
+ if (!devtoolsConfig) {
28
+ // We store the UUID and re-use it to ensure Chrome does not repeatedly ask for permissions when restarting the dev server.
29
+ try {
30
+ devtoolsConfig = (0, node_fs_1.readFileSync)(devtoolsConfigPath, 'utf-8');
31
+ const devtoolsConfigJson = JSON.parse(devtoolsConfig);
32
+ node_assert_1.default.equal(projectRoot, devtoolsConfigJson?.workspace.root);
33
+ }
34
+ catch {
35
+ const devtoolsConfigJson = {
36
+ workspace: {
37
+ root: projectRoot,
38
+ uuid: (0, node_crypto_1.randomUUID)(),
39
+ },
40
+ };
41
+ devtoolsConfig = JSON.stringify(devtoolsConfigJson, undefined, 2);
42
+ try {
43
+ (0, node_fs_1.mkdirSync)(cacheDir, { recursive: true });
44
+ (0, node_fs_1.writeFileSync)(devtoolsConfigPath, devtoolsConfig);
45
+ }
46
+ catch { }
47
+ }
48
+ }
49
+ res.setHeader('Content-Type', 'application/json');
50
+ res.end(devtoolsConfig);
51
+ };
52
+ }
53
+ //# sourceMappingURL=chrome-devtools-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chrome-devtools-middleware.js","sourceRoot":"","sources":["chrome-devtools-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAiBH,wEAyCC;AAxDD,8DAAiC;AACjC,6CAAyC;AACzC,qCAAiE;AACjE,yCAAiC;AAUjC,MAAM,qBAAqB,GAAG,mDAAmD,CAAC;AAElF,SAAgB,8BAA8B,CAC5C,QAAgB,EAChB,WAAmB;IAEnB,IAAI,cAAkC,CAAC;IACvC,MAAM,kBAAkB,GAAG,IAAA,gBAAI,EAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;IAEtE,OAAO,SAAS,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACrD,IAAI,GAAG,CAAC,GAAG,KAAK,qBAAqB,EAAE,CAAC;YACtC,IAAI,EAAE,CAAC;YAEP,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,2HAA2H;YAC3H,IAAI,CAAC;gBACH,cAAc,GAAG,IAAA,sBAAY,EAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;gBAE3D,MAAM,kBAAkB,GAAiB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBACpE,qBAAM,CAAC,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,kBAAkB,GAAiB;oBACvC,SAAS,EAAE;wBACT,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,IAAA,wBAAU,GAAE;qBACnB;iBACF,CAAC;gBAEF,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;gBAElE,IAAI,CAAC;oBACH,IAAA,mBAAS,EAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACzC,IAAA,uBAAa,EAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;gBACpD,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1B,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
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 { Connect, ViteDevServer } from 'vite';
9
+ export declare function createAngularComponentMiddleware(server: ViteDevServer, templateUpdates: ReadonlyMap<string, string>): Connect.NextHandleFunction;
@@ -0,0 +1,36 @@
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.createAngularComponentMiddleware = createAngularComponentMiddleware;
11
+ const utils_1 = require("../utils");
12
+ const ANGULAR_COMPONENT_PREFIX = '/@ng/component';
13
+ function createAngularComponentMiddleware(server, templateUpdates) {
14
+ return function angularComponentMiddleware(req, res, next) {
15
+ if (req.url === undefined || res.writableEnded) {
16
+ return;
17
+ }
18
+ const pathname = (0, utils_1.pathnameWithoutBasePath)(req.url, server.config.base);
19
+ if (!pathname.includes(ANGULAR_COMPONENT_PREFIX)) {
20
+ next();
21
+ return;
22
+ }
23
+ const requestUrl = new URL(req.url, 'http://localhost');
24
+ const componentId = requestUrl.searchParams.get('c');
25
+ if (!componentId) {
26
+ res.statusCode = 400;
27
+ res.end();
28
+ return;
29
+ }
30
+ const updateCode = templateUpdates.get(encodeURIComponent(componentId)) ?? '';
31
+ res.setHeader('Content-Type', 'text/javascript');
32
+ res.setHeader('Cache-Control', 'no-cache');
33
+ res.end(updateCode);
34
+ };
35
+ }
36
+ //# sourceMappingURL=component-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-middleware.js","sourceRoot":"","sources":["component-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAOH,4EA+BC;AAnCD,oCAAmD;AAEnD,MAAM,wBAAwB,GAAG,gBAAgB,CAAC;AAElD,SAAgB,gCAAgC,CAC9C,MAAqB,EACrB,eAA4C;IAE5C,OAAO,SAAS,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI;QACvD,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,+BAAuB,EAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACjD,IAAI,EAAE,CAAC;YAEP,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;YACrB,GAAG,CAAC,GAAG,EAAE,CAAC;YAEV,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;QAE9E,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;QACjD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAC3C,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,19 @@
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 { Connect, ViteDevServer } from 'vite';
9
+ /**
10
+ * Creates a middleware for adding custom headers.
11
+ *
12
+ * This middleware is responsible for setting HTTP headers as configured in the Vite server options.
13
+ * If headers are defined in the server configuration, they are applied to the server response.
14
+ *
15
+ * @param server - The instance of `ViteDevServer` containing the configuration, including custom headers.
16
+ * @returns A middleware function that processes the incoming request, sets headers if available,
17
+ * and passes control to the next middleware in the chain.
18
+ */
19
+ export declare function createAngularHeadersMiddleware(server: ViteDevServer): Connect.NextHandleFunction;
@@ -0,0 +1,35 @@
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.createAngularHeadersMiddleware = createAngularHeadersMiddleware;
11
+ /**
12
+ * Creates a middleware for adding custom headers.
13
+ *
14
+ * This middleware is responsible for setting HTTP headers as configured in the Vite server options.
15
+ * If headers are defined in the server configuration, they are applied to the server response.
16
+ *
17
+ * @param server - The instance of `ViteDevServer` containing the configuration, including custom headers.
18
+ * @returns A middleware function that processes the incoming request, sets headers if available,
19
+ * and passes control to the next middleware in the chain.
20
+ */
21
+ function createAngularHeadersMiddleware(server) {
22
+ return function angularHeadersMiddleware(_req, res, next) {
23
+ const headers = server.config.server.headers;
24
+ if (!headers) {
25
+ return next();
26
+ }
27
+ for (const [name, value] of Object.entries(headers)) {
28
+ if (value !== undefined) {
29
+ res.setHeader(name, value);
30
+ }
31
+ }
32
+ next();
33
+ };
34
+ }
35
+ //# sourceMappingURL=headers-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers-middleware.js","sourceRoot":"","sources":["headers-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAeH,wEAmBC;AA7BD;;;;;;;;;GASG;AACH,SAAgB,8BAA8B,CAAC,MAAqB;IAClE,OAAO,SAAS,wBAAwB,CACtC,IAA6B,EAC7B,GAAmB,EACnB,IAA0B;QAE1B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
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 { Connect } from 'vite';
9
+ export declare function patchHostValidationMiddleware(middlewares: Connect.Server): void;
@@ -0,0 +1,61 @@
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.patchHostValidationMiddleware = patchHostValidationMiddleware;
11
+ function patchHostValidationMiddleware(middlewares) {
12
+ const entry = middlewares.stack.find(({ handle }) => typeof handle === 'function' && handle.name.startsWith('hostValidationMiddleware'));
13
+ if (typeof entry?.handle !== 'function') {
14
+ return;
15
+ }
16
+ const originalHandle = entry.handle;
17
+ entry.handle = function angularHostValidationMiddleware(req, res, next) {
18
+ originalHandle(req, {
19
+ writeHead: (code) => {
20
+ res.writeHead(code, { 'content-type': 'text/html' });
21
+ },
22
+ end: () => {
23
+ const hostname = req.headers.host?.toLowerCase().split(':')[0] ?? '';
24
+ res.end(html403(hostname));
25
+ },
26
+ }, next);
27
+ };
28
+ }
29
+ function html403(hostname) {
30
+ return `<!doctype html>
31
+ <html>
32
+ <head>
33
+ <meta charset="utf-8" />
34
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
35
+ <title>Blocked request</title>
36
+ <style>
37
+ body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
38
+ line-height:1.4;margin:2rem;color:#1f2937}
39
+ code{background:#f3f4f6;padding:.15rem .35rem;border-radius:.25rem}
40
+ main{max-width:760px;margin:0 auto}
41
+ h1{font-size:1.5rem;margin-bottom:.75rem}
42
+ p{margin:.5rem 0}
43
+ pre{background:#f9fafb;border:1px solid #e5e7eb;padding:.75rem;border-radius:.5rem;overflow:auto}
44
+ </style>
45
+ </head>
46
+ <body>
47
+ <main>
48
+ <h1>Blocked request. This host ("${hostname}") is not allowed.</h1>
49
+ <p>To allow this host, add it to <code>allowedHosts</code> under the <code>serve</code> target in <code>angular.json</code>.</p>
50
+ <pre><code>{
51
+ "serve": {
52
+ "options": {
53
+ "allowedHosts": ["${hostname}"]
54
+ }
55
+ }
56
+ }</code></pre>
57
+ </main>
58
+ </body>
59
+ </html>`;
60
+ }
61
+ //# sourceMappingURL=host-check-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-check-middleware.js","sourceRoot":"","sources":["host-check-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAKH,sEA+BC;AA/BD,SAAgB,6BAA6B,CAAC,WAA2B;IACvE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAClC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CACb,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC,CACrF,CAAC;IAEF,IAAI,OAAO,KAAK,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,MAAoC,CAAC;IAElE,KAAK,CAAC,MAAM,GAAG,SAAS,+BAA+B,CACrD,GAAoB,EACpB,GAAmB,EACnB,IAA6B;QAE7B,cAAc,CACZ,GAAG,EACH;YACE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;gBAClB,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;YACvD,CAAC;YACD,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7B,CAAC;SACgB,EACnB,IAAI,CACL,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,QAAgB;IAC/B,OAAO;;;;;;;;;;;;;;;;;;yCAkBgC,QAAQ;;;;;0BAKvB,QAAQ;;;;;;UAMxB,CAAC;AACX,CAAC"}
@@ -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 type { ServerResponse } from 'node:http';
9
+ import type { Connect } from 'vite';
10
+ export declare function angularHtmlFallbackMiddleware(req: Connect.IncomingMessage, _res: ServerResponse, next: Connect.NextFunction): void;
@@ -0,0 +1,42 @@
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.angularHtmlFallbackMiddleware = angularHtmlFallbackMiddleware;
11
+ const utils_1 = require("../utils");
12
+ const ALLOWED_FALLBACK_METHODS = Object.freeze(['GET', 'HEAD']);
13
+ function angularHtmlFallbackMiddleware(req, _res, next) {
14
+ // Similar to how it is handled in vite
15
+ // https://github.com/vitejs/vite/blob/main/packages/vite/src/node/server/middlewares/htmlFallback.ts#L15C19-L15C45
16
+ if (!req.method || !ALLOWED_FALLBACK_METHODS.includes(req.method)) {
17
+ // No fallback for unsupported request methods
18
+ next();
19
+ return;
20
+ }
21
+ if (req.url) {
22
+ const mimeType = (0, utils_1.lookupMimeTypeFromRequest)(req.url);
23
+ if ((mimeType === 'text/html' || mimeType === 'application/xhtml+xml') &&
24
+ !/^\/index\.(?:csr\.)?html/.test(req.url)) {
25
+ // eslint-disable-next-line no-console
26
+ console.warn(`Request for HTML file "${req.url}" was received but no asset found. Asset may be missing from build.`);
27
+ }
28
+ else if (mimeType) {
29
+ // No fallback for request of asset-like files
30
+ next();
31
+ return;
32
+ }
33
+ }
34
+ if (!req.headers.accept ||
35
+ req.headers.accept.includes('text/html') ||
36
+ req.headers.accept.includes('text/*') ||
37
+ req.headers.accept.includes('*/*')) {
38
+ req.url = '/index.html';
39
+ }
40
+ next();
41
+ }
42
+ //# sourceMappingURL=html-fallback-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-fallback-middleware.js","sourceRoot":"","sources":["html-fallback-middleware.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAQH,sEA0CC;AA9CD,oCAAqD;AAErD,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,SAAgB,6BAA6B,CAC3C,GAA4B,EAC5B,IAAoB,EACpB,IAA0B;IAE1B,uCAAuC;IACvC,mHAAmH;IACnH,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAClE,8CAA8C;QAC9C,IAAI,EAAE,CAAC;QAEP,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,IAAA,iCAAyB,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpD,IACE,CAAC,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,uBAAuB,CAAC;YAClE,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EACzC,CAAC;YACD,sCAAsC;YACtC,OAAO,CAAC,IAAI,CACV,0BAA0B,GAAG,CAAC,GAAG,qEAAqE,CACvG,CAAC;QACJ,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,8CAA8C;YAC9C,IAAI,EAAE,CAAC;YAEP,OAAO;QACT,CAAC;IACH,CAAC;IAED,IACE,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;QACnB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QACxC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACrC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAClC,CAAC;QACD,GAAG,CAAC,GAAG,GAAG,aAAa,CAAC;IAC1B,CAAC;IAED,IAAI,EAAE,CAAC;AACT,CAAC"}
@@ -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 type { Connect, ViteDevServer } from 'vite';
9
+ import { AngularMemoryOutputFiles } from '../utils';
10
+ export declare function createAngularIndexHtmlMiddleware(server: ViteDevServer, outputFiles: AngularMemoryOutputFiles, resetComponentUpdates: () => void, indexHtmlTransformer: ((content: string) => Promise<string>) | undefined): Connect.NextHandleFunction;