astro 5.16.5 → 6.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. package/{astro.js → bin/astro.mjs} +7 -8
  2. package/client.d.ts +19 -45
  3. package/components/ClientRouter.astro +0 -5
  4. package/components/Code.astro +2 -2
  5. package/components/Image.astro +2 -2
  6. package/components/Picture.astro +1 -1
  7. package/dist/actions/consts.d.ts +2 -5
  8. package/dist/actions/consts.js +4 -8
  9. package/dist/actions/integration.js +2 -4
  10. package/dist/actions/runtime/client.d.ts +84 -3
  11. package/dist/actions/runtime/client.js +238 -7
  12. package/dist/actions/runtime/entrypoints/client.d.ts +7 -0
  13. package/dist/actions/runtime/entrypoints/client.js +91 -0
  14. package/dist/actions/runtime/entrypoints/route.d.ts +2 -0
  15. package/dist/actions/runtime/{route.js → entrypoints/route.js} +1 -1
  16. package/dist/actions/runtime/entrypoints/server.d.ts +6 -0
  17. package/dist/actions/runtime/entrypoints/server.js +33 -0
  18. package/dist/actions/runtime/server.d.ts +11 -29
  19. package/dist/actions/runtime/server.js +162 -82
  20. package/dist/actions/runtime/types.d.ts +64 -0
  21. package/dist/actions/runtime/types.js +0 -0
  22. package/dist/actions/utils.d.ts +2 -2
  23. package/dist/actions/utils.js +2 -2
  24. package/dist/actions/vite-plugin-actions.js +18 -21
  25. package/dist/assets/build/generate.d.ts +2 -2
  26. package/dist/assets/build/generate.js +11 -9
  27. package/dist/assets/build/remote.js +4 -14
  28. package/dist/assets/endpoint/config.js +2 -2
  29. package/dist/assets/endpoint/dev.js +7 -6
  30. package/dist/assets/fonts/config.d.ts +86 -174
  31. package/dist/assets/fonts/config.js +15 -17
  32. package/dist/assets/fonts/infra/dev-remote-font-provider-mod-resolver.d.ts +3 -3
  33. package/dist/assets/fonts/infra/dev-remote-font-provider-mod-resolver.js +4 -4
  34. package/dist/assets/fonts/types.d.ts +1 -1
  35. package/dist/assets/fonts/vite-plugin-fonts.js +6 -3
  36. package/dist/assets/services/sharp.js +5 -6
  37. package/dist/assets/utils/index.d.ts +0 -6
  38. package/dist/assets/utils/index.js +0 -9
  39. package/dist/assets/utils/{transformToPath.d.ts → node.d.ts} +15 -1
  40. package/dist/assets/utils/{node/emitAsset.js → node.js} +34 -56
  41. package/dist/assets/vite-plugin-assets.js +9 -14
  42. package/dist/cli/index.js +0 -2
  43. package/dist/cli/infra/build-time-astro-version-provider.js +1 -1
  44. package/dist/cli/preferences/index.js +5 -1
  45. package/dist/config/index.js +11 -16
  46. package/dist/container/index.d.ts +0 -1
  47. package/dist/container/index.js +19 -14
  48. package/dist/container/pipeline.d.ts +2 -1
  49. package/dist/container/pipeline.js +4 -11
  50. package/dist/content/config.d.ts +34 -40
  51. package/dist/content/config.js +17 -13
  52. package/dist/content/content-layer.js +14 -21
  53. package/dist/content/data-store.d.ts +0 -2
  54. package/dist/content/loaders/errors.d.ts +3 -3
  55. package/dist/content/loaders/errors.js +5 -2
  56. package/dist/content/loaders/glob.d.ts +0 -5
  57. package/dist/content/loaders/glob.js +3 -30
  58. package/dist/content/loaders/types.d.ts +11 -4
  59. package/dist/content/mutable-data-store.js +1 -14
  60. package/dist/content/runtime-assets.d.ts +4 -4
  61. package/dist/content/runtime-assets.js +4 -7
  62. package/dist/content/runtime.d.ts +35 -73
  63. package/dist/content/runtime.js +63 -231
  64. package/dist/content/server-listeners.js +25 -88
  65. package/dist/content/types-generator.d.ts +1 -6
  66. package/dist/content/types-generator.js +87 -156
  67. package/dist/content/utils.d.ts +47 -412
  68. package/dist/content/utils.js +88 -203
  69. package/dist/content/vite-plugin-content-assets.d.ts +12 -4
  70. package/dist/content/vite-plugin-content-assets.js +100 -56
  71. package/dist/content/vite-plugin-content-imports.js +10 -8
  72. package/dist/content/vite-plugin-content-virtual-mod.js +13 -131
  73. package/dist/core/app/app.d.ts +5 -0
  74. package/dist/core/app/app.js +13 -0
  75. package/dist/core/app/base.d.ts +132 -0
  76. package/dist/core/app/base.js +448 -0
  77. package/dist/core/app/common.d.ts +6 -2
  78. package/dist/core/app/common.js +60 -33
  79. package/dist/core/app/dev/app.d.ts +15 -0
  80. package/dist/core/app/dev/app.js +86 -0
  81. package/dist/core/app/dev/pipeline.d.ts +13 -0
  82. package/dist/core/app/dev/pipeline.js +123 -0
  83. package/dist/core/app/entrypoint.d.ts +2 -0
  84. package/dist/core/app/entrypoint.js +15 -0
  85. package/dist/core/app/index.d.ts +7 -114
  86. package/dist/core/app/index.js +20 -557
  87. package/dist/core/app/logging.d.ts +3 -0
  88. package/dist/core/app/logging.js +11 -0
  89. package/dist/core/app/manifest.d.ts +9 -0
  90. package/dist/core/app/manifest.js +107 -0
  91. package/dist/core/app/middlewares.js +1 -1
  92. package/dist/core/app/node.d.ts +2 -8
  93. package/dist/core/app/node.js +8 -9
  94. package/dist/core/app/pipeline.d.ts +6 -5
  95. package/dist/core/app/pipeline.js +65 -49
  96. package/dist/core/app/types.d.ts +58 -22
  97. package/dist/core/app/validate-forwarded-headers.d.ts +16 -0
  98. package/dist/core/app/validate-forwarded-headers.js +60 -0
  99. package/dist/core/base-pipeline.d.ts +22 -14
  100. package/dist/core/base-pipeline.js +54 -6
  101. package/dist/core/build/app.d.ts +13 -0
  102. package/dist/core/build/app.js +38 -0
  103. package/dist/core/build/common.d.ts +1 -1
  104. package/dist/core/build/common.js +2 -2
  105. package/dist/core/build/generate.d.ts +1 -1
  106. package/dist/core/build/generate.js +95 -204
  107. package/dist/core/build/graph.js +2 -2
  108. package/dist/core/build/index.js +11 -19
  109. package/dist/core/build/internal.d.ts +3 -29
  110. package/dist/core/build/internal.js +1 -45
  111. package/dist/core/build/pipeline.d.ts +15 -26
  112. package/dist/core/build/pipeline.js +106 -170
  113. package/dist/core/build/plugins/index.d.ts +4 -2
  114. package/dist/core/build/plugins/index.js +17 -23
  115. package/dist/core/build/plugins/plugin-analyzer.d.ts +2 -2
  116. package/dist/core/build/plugins/plugin-analyzer.js +5 -13
  117. package/dist/core/build/plugins/plugin-component-entry.d.ts +7 -2
  118. package/dist/core/build/plugins/plugin-component-entry.js +5 -13
  119. package/dist/core/build/plugins/plugin-css.d.ts +2 -2
  120. package/dist/core/build/plugins/plugin-css.js +86 -41
  121. package/dist/core/build/plugins/plugin-internals.d.ts +2 -2
  122. package/dist/core/build/plugins/plugin-internals.js +24 -18
  123. package/dist/core/build/plugins/plugin-manifest.d.ts +33 -5
  124. package/dist/core/build/plugins/plugin-manifest.js +89 -131
  125. package/dist/core/build/plugins/plugin-middleware.d.ts +2 -2
  126. package/dist/core/build/plugins/plugin-middleware.js +5 -7
  127. package/dist/core/build/plugins/plugin-noop.d.ts +3 -0
  128. package/dist/core/build/plugins/plugin-noop.js +29 -0
  129. package/dist/core/build/plugins/plugin-prerender.d.ts +2 -2
  130. package/dist/core/build/plugins/plugin-prerender.js +7 -64
  131. package/dist/core/build/plugins/plugin-scripts.d.ts +5 -2
  132. package/dist/core/build/plugins/plugin-scripts.js +5 -13
  133. package/dist/core/build/plugins/plugin-ssr.d.ts +2 -2
  134. package/dist/core/build/plugins/plugin-ssr.js +60 -132
  135. package/dist/core/build/plugins/util.d.ts +1 -25
  136. package/dist/core/build/plugins/util.js +0 -47
  137. package/dist/core/build/runtime.d.ts +26 -0
  138. package/dist/core/build/runtime.js +45 -0
  139. package/dist/core/build/static-build.d.ts +2 -2
  140. package/dist/core/build/static-build.js +180 -154
  141. package/dist/core/build/types.d.ts +1 -2
  142. package/dist/core/build/util.d.ts +0 -1
  143. package/dist/core/build/util.js +0 -7
  144. package/dist/core/compile/compile.d.ts +2 -3
  145. package/dist/core/compile/compile.js +2 -4
  146. package/dist/core/config/config.js +2 -2
  147. package/dist/core/config/index.d.ts +0 -1
  148. package/dist/core/config/index.js +0 -2
  149. package/dist/core/config/schemas/base.d.ts +330 -1463
  150. package/dist/core/config/schemas/base.js +40 -56
  151. package/dist/core/config/schemas/refined.d.ts +2 -2
  152. package/dist/core/config/schemas/refined.js +8 -1
  153. package/dist/core/config/schemas/relative.d.ts +607 -1737
  154. package/dist/core/config/schemas/relative.js +4 -4
  155. package/dist/core/config/settings.d.ts +3 -3
  156. package/dist/core/config/settings.js +5 -6
  157. package/dist/core/config/validate.js +13 -2
  158. package/dist/core/config/vite-load.js +12 -3
  159. package/dist/core/constants.d.ts +12 -0
  160. package/dist/core/constants.js +22 -1
  161. package/dist/core/create-vite.d.ts +2 -6
  162. package/dist/core/create-vite.js +36 -47
  163. package/dist/core/csp/common.d.ts +1 -1
  164. package/dist/core/csp/common.js +1 -1
  165. package/dist/core/csp/config.d.ts +8 -4
  166. package/dist/core/csp/config.js +1 -1
  167. package/dist/core/dev/container.js +13 -9
  168. package/dist/core/dev/dev.js +1 -1
  169. package/dist/core/dev/restart.js +15 -6
  170. package/dist/core/errors/dev/runtime.d.ts +6 -0
  171. package/dist/core/errors/dev/runtime.js +27 -0
  172. package/dist/core/errors/dev/vite.js +2 -19
  173. package/dist/core/errors/errors-data.d.ts +85 -57
  174. package/dist/core/errors/errors-data.js +40 -28
  175. package/dist/core/errors/errors.d.ts +3 -3
  176. package/dist/core/errors/errors.js +1 -1
  177. package/dist/core/errors/overlay.js +1 -1
  178. package/dist/core/errors/zod-error-map.d.ts +2 -2
  179. package/dist/core/errors/zod-error-map.js +26 -24
  180. package/dist/core/messages.d.ts +2 -2
  181. package/dist/core/messages.js +2 -2
  182. package/dist/core/middleware/callMiddleware.js +1 -1
  183. package/dist/core/middleware/defineMiddleware.d.ts +2 -0
  184. package/dist/core/middleware/defineMiddleware.js +6 -0
  185. package/dist/core/middleware/index.d.ts +4 -4
  186. package/dist/core/middleware/index.js +6 -12
  187. package/dist/core/middleware/sequence.js +4 -4
  188. package/dist/core/middleware/vite-plugin.d.ts +1 -1
  189. package/dist/core/middleware/vite-plugin.js +18 -7
  190. package/dist/core/module-loader/index.d.ts +2 -2
  191. package/dist/core/module-loader/index.js +1 -1
  192. package/dist/core/module-loader/{loader.d.ts → runner.d.ts} +6 -17
  193. package/dist/core/module-loader/{loader.js → runner.js} +3 -0
  194. package/dist/core/module-loader/vite.d.ts +3 -2
  195. package/dist/core/module-loader/vite.js +17 -13
  196. package/dist/core/preview/index.js +20 -5
  197. package/dist/core/preview/static-preview-server.js +1 -0
  198. package/dist/core/redirects/component.js +1 -2
  199. package/dist/core/redirects/index.d.ts +0 -1
  200. package/dist/core/redirects/index.js +1 -3
  201. package/dist/core/redirects/render.js +5 -2
  202. package/dist/core/render/paginate.d.ts +1 -1
  203. package/dist/core/render/paginate.js +8 -6
  204. package/dist/core/render/params-and-props.d.ts +2 -0
  205. package/dist/core/render/params-and-props.js +19 -7
  206. package/dist/core/render/route-cache.d.ts +3 -3
  207. package/dist/core/render/route-cache.js +7 -7
  208. package/dist/core/render-context.d.ts +9 -7
  209. package/dist/core/render-context.js +46 -47
  210. package/dist/core/routing/astro-designed-error-pages.js +2 -2
  211. package/dist/core/routing/default.js +1 -1
  212. package/dist/core/routing/helpers.d.ts +22 -0
  213. package/dist/core/routing/helpers.js +25 -0
  214. package/dist/core/routing/index.d.ts +1 -1
  215. package/dist/core/routing/index.js +2 -2
  216. package/dist/core/routing/manifest/create.d.ts +6 -1
  217. package/dist/core/routing/manifest/create.js +9 -13
  218. package/dist/core/routing/manifest/generator.d.ts +3 -1
  219. package/dist/core/routing/params.d.ts +2 -1
  220. package/dist/core/routing/params.js +8 -8
  221. package/dist/core/routing/validation.d.ts +1 -2
  222. package/dist/core/routing/validation.js +2 -18
  223. package/dist/core/server-islands/endpoint.d.ts +1 -2
  224. package/dist/core/server-islands/endpoint.js +5 -4
  225. package/dist/core/server-islands/vite-plugin-server-islands.d.ts +1 -1
  226. package/dist/core/server-islands/vite-plugin-server-islands.js +89 -44
  227. package/dist/core/session/vite-plugin.d.ts +6 -0
  228. package/dist/core/session/vite-plugin.js +53 -0
  229. package/dist/core/session.d.ts +4 -2
  230. package/dist/core/session.js +8 -48
  231. package/dist/core/sync/index.d.ts +2 -5
  232. package/dist/core/sync/index.js +19 -34
  233. package/dist/core/util.d.ts +2 -2
  234. package/dist/core/util.js +3 -3
  235. package/dist/entrypoints/legacy.d.ts +2 -0
  236. package/dist/entrypoints/legacy.js +12 -0
  237. package/dist/entrypoints/prerender.d.ts +4 -0
  238. package/dist/entrypoints/prerender.js +7 -0
  239. package/dist/env/env-loader.d.ts +0 -1
  240. package/dist/env/env-loader.js +4 -17
  241. package/dist/env/schema.d.ts +21 -251
  242. package/dist/env/schema.js +6 -3
  243. package/dist/env/vite-plugin-env.js +3 -2
  244. package/dist/env/vite-plugin-import-meta-env.js +3 -2
  245. package/dist/environments.d.ts +3 -0
  246. package/dist/environments.js +11 -0
  247. package/dist/events/error.d.ts +2 -2
  248. package/dist/i18n/index.d.ts +2 -2
  249. package/dist/i18n/index.js +0 -3
  250. package/dist/i18n/utils.d.ts +1 -6
  251. package/dist/i18n/utils.js +1 -63
  252. package/dist/i18n/vite-plugin-i18n.d.ts +0 -5
  253. package/dist/i18n/vite-plugin-i18n.js +1 -22
  254. package/dist/integrations/hooks.d.ts +2 -3
  255. package/dist/integrations/hooks.js +9 -33
  256. package/dist/manifest/serialized.d.ts +9 -0
  257. package/dist/manifest/serialized.js +144 -0
  258. package/dist/manifest/virtual-module.d.ts +1 -4
  259. package/dist/manifest/virtual-module.js +77 -80
  260. package/dist/preferences/index.d.ts +1 -2
  261. package/dist/prefetch/index.d.ts +0 -10
  262. package/dist/prefetch/index.js +1 -1
  263. package/dist/prerender/routing.d.ts +5 -7
  264. package/dist/prerender/routing.js +6 -17
  265. package/dist/runtime/server/astro-global.d.ts +2 -2
  266. package/dist/runtime/server/astro-global.js +86 -24
  267. package/dist/runtime/server/render/server-islands.js +2 -2
  268. package/dist/runtime/server/transition.d.ts +1 -0
  269. package/dist/transitions/events.d.ts +7 -0
  270. package/dist/transitions/router.js +7 -3
  271. package/dist/transitions/vite-plugin-transitions.js +1 -4
  272. package/dist/types/astro.d.ts +10 -8
  273. package/dist/types/public/common.d.ts +1 -3
  274. package/dist/types/public/config.d.ts +364 -415
  275. package/dist/types/public/context.d.ts +21 -52
  276. package/dist/types/public/index.d.ts +2 -1
  277. package/dist/types/public/integrations.d.ts +23 -18
  278. package/dist/types/public/internal.d.ts +3 -18
  279. package/dist/types/public/preview.d.ts +6 -0
  280. package/dist/virtual-modules/i18n.d.ts +10 -2
  281. package/dist/virtual-modules/i18n.js +16 -7
  282. package/dist/virtual-modules/live-config.d.ts +1 -3
  283. package/dist/virtual-modules/live-config.js +1 -5
  284. package/dist/virtual-modules/middleware.d.ts +2 -1
  285. package/dist/virtual-modules/middleware.js +2 -1
  286. package/dist/vite-plugin-adapter-config/index.js +3 -2
  287. package/dist/vite-plugin-app/app.d.ts +47 -0
  288. package/dist/vite-plugin-app/app.js +410 -0
  289. package/dist/vite-plugin-app/createAstroServerApp.d.ts +8 -0
  290. package/dist/vite-plugin-app/createAstroServerApp.js +56 -0
  291. package/dist/vite-plugin-app/index.d.ts +3 -0
  292. package/dist/vite-plugin-app/index.js +16 -0
  293. package/dist/{vite-plugin-astro-server → vite-plugin-app}/pipeline.d.ts +5 -7
  294. package/dist/vite-plugin-app/pipeline.js +166 -0
  295. package/dist/vite-plugin-astro/index.js +11 -13
  296. package/dist/vite-plugin-astro-server/controller.d.ts +1 -1
  297. package/dist/vite-plugin-astro-server/error.d.ts +3 -4
  298. package/dist/vite-plugin-astro-server/error.js +2 -5
  299. package/dist/vite-plugin-astro-server/index.d.ts +1 -2
  300. package/dist/vite-plugin-astro-server/index.js +6 -4
  301. package/dist/vite-plugin-astro-server/metadata.js +1 -1
  302. package/dist/vite-plugin-astro-server/plugin.d.ts +4 -7
  303. package/dist/vite-plugin-astro-server/plugin.js +53 -96
  304. package/dist/vite-plugin-astro-server/server-state.d.ts +1 -1
  305. package/dist/vite-plugin-astro-server/util.d.ts +0 -2
  306. package/dist/vite-plugin-astro-server/util.js +1 -2
  307. package/dist/vite-plugin-astro-server/vite.d.ts +2 -2
  308. package/dist/vite-plugin-astro-server/vite.js +7 -7
  309. package/dist/vite-plugin-config-alias/index.js +40 -32
  310. package/dist/vite-plugin-css/index.d.ts +18 -0
  311. package/dist/vite-plugin-css/index.js +134 -0
  312. package/dist/vite-plugin-css/util.d.ts +5 -0
  313. package/dist/vite-plugin-css/util.js +8 -0
  314. package/dist/vite-plugin-environment/index.d.ts +15 -0
  315. package/dist/vite-plugin-environment/index.js +77 -0
  316. package/dist/vite-plugin-head/index.d.ts +1 -2
  317. package/dist/vite-plugin-head/index.js +42 -58
  318. package/dist/vite-plugin-hmr-reload/index.js +2 -1
  319. package/dist/vite-plugin-markdown/index.js +0 -1
  320. package/dist/vite-plugin-pages/const.d.ts +2 -0
  321. package/dist/vite-plugin-pages/const.js +6 -0
  322. package/dist/vite-plugin-pages/index.d.ts +2 -0
  323. package/dist/vite-plugin-pages/index.js +7 -0
  324. package/dist/vite-plugin-pages/page.d.ts +7 -0
  325. package/dist/vite-plugin-pages/page.js +48 -0
  326. package/dist/vite-plugin-pages/pages.d.ts +8 -0
  327. package/dist/vite-plugin-pages/pages.js +57 -0
  328. package/dist/vite-plugin-pages/util.d.ts +8 -0
  329. package/dist/vite-plugin-pages/util.js +15 -0
  330. package/dist/vite-plugin-renderers/index.d.ts +9 -0
  331. package/dist/vite-plugin-renderers/index.js +40 -0
  332. package/dist/vite-plugin-routes/index.d.ts +14 -0
  333. package/dist/vite-plugin-routes/index.js +177 -0
  334. package/dist/vite-plugin-scripts/index.js +2 -6
  335. package/dist/vite-plugin-scripts/page-ssr.js +3 -2
  336. package/dist/zod.d.ts +2 -2
  337. package/dist/zod.js +2 -2
  338. package/package.json +14 -15
  339. package/templates/content/module.mjs +9 -63
  340. package/templates/content/types.d.ts +32 -78
  341. package/types/actions.d.ts +1 -5
  342. package/types/content.d.ts +9 -11
  343. package/types/transitions.d.ts +25 -0
  344. package/dist/actions/loadActions.d.ts +0 -8
  345. package/dist/actions/loadActions.js +0 -13
  346. package/dist/actions/runtime/route.d.ts +0 -2
  347. package/dist/actions/runtime/shared.d.ts +0 -60
  348. package/dist/actions/runtime/shared.js +0 -296
  349. package/dist/actions/runtime/utils.d.ts +0 -31
  350. package/dist/actions/runtime/utils.js +0 -16
  351. package/dist/actions/runtime/virtual.d.ts +0 -4
  352. package/dist/actions/runtime/virtual.js +0 -127
  353. package/dist/assets/utils/node/emitAsset.d.ts +0 -29
  354. package/dist/assets/utils/transformToPath.js +0 -32
  355. package/dist/config/vite-plugin-content-listen.d.ts +0 -17
  356. package/dist/config/vite-plugin-content-listen.js +0 -26
  357. package/dist/container/polyfill.d.ts +0 -1
  358. package/dist/container/polyfill.js +0 -2
  359. package/dist/core/build/css-asset-name.d.ts +0 -9
  360. package/dist/core/build/css-asset-name.js +0 -89
  361. package/dist/core/build/plugin.d.ts +0 -43
  362. package/dist/core/build/plugin.js +0 -61
  363. package/dist/core/build/plugins/plugin-actions.d.ts +0 -4
  364. package/dist/core/build/plugins/plugin-actions.js +0 -16
  365. package/dist/core/build/plugins/plugin-chunks.d.ts +0 -2
  366. package/dist/core/build/plugins/plugin-chunks.js +0 -33
  367. package/dist/core/build/plugins/plugin-pages.d.ts +0 -6
  368. package/dist/core/build/plugins/plugin-pages.js +0 -66
  369. package/dist/core/build/plugins/plugin-renderers.d.ts +0 -5
  370. package/dist/core/build/plugins/plugin-renderers.js +0 -54
  371. package/dist/core/middleware/loadMiddleware.d.ts +0 -7
  372. package/dist/core/middleware/loadMiddleware.js +0 -14
  373. package/dist/core/polyfill.d.ts +0 -5
  374. package/dist/core/polyfill.js +0 -17
  375. package/dist/core/redirects/helpers.d.ts +0 -7
  376. package/dist/core/redirects/helpers.js +0 -10
  377. package/dist/core/routing/manifest/serialization.d.ts +0 -5
  378. package/dist/core/routing/manifest/serialization.js +0 -37
  379. package/dist/prerender/metadata.d.ts +0 -8
  380. package/dist/prerender/metadata.js +0 -18
  381. package/dist/vite-plugin-astro-postprocess/index.d.ts +0 -2
  382. package/dist/vite-plugin-astro-postprocess/index.js +0 -48
  383. package/dist/vite-plugin-astro-server/css.d.ts +0 -13
  384. package/dist/vite-plugin-astro-server/css.js +0 -48
  385. package/dist/vite-plugin-astro-server/pipeline.js +0 -166
  386. package/dist/vite-plugin-astro-server/request.d.ts +0 -14
  387. package/dist/vite-plugin-astro-server/request.js +0 -73
  388. package/dist/vite-plugin-astro-server/route.d.ts +0 -25
  389. package/dist/vite-plugin-astro-server/route.js +0 -283
  390. package/dist/vite-plugin-scanner/index.d.ts +0 -10
  391. package/dist/vite-plugin-scanner/index.js +0 -87
  392. package/dist/vite-plugin-ssr-manifest/index.d.ts +0 -2
  393. package/dist/vite-plugin-ssr-manifest/index.js +0 -26
@@ -1,8 +1,8 @@
1
1
  import { prependForwardSlash, removeFileExtension } from "../path.js";
2
2
  import { viteID } from "../util.js";
3
- import { makePageDataKey } from "./plugins/util.js";
4
3
  function createBuildInternals() {
5
4
  return {
5
+ clientInput: /* @__PURE__ */ new Set(),
6
6
  cssModuleToChunkIdMap: /* @__PURE__ */ new Map(),
7
7
  inlinedScripts: /* @__PURE__ */ new Map(),
8
8
  entrySpecifierToBundleMap: /* @__PURE__ */ new Map(),
@@ -16,8 +16,6 @@ function createBuildInternals() {
16
16
  discoveredScripts: /* @__PURE__ */ new Set(),
17
17
  staticFiles: /* @__PURE__ */ new Set(),
18
18
  componentMetadata: /* @__PURE__ */ new Map(),
19
- entryPoints: /* @__PURE__ */ new Map(),
20
- prerenderOnlyChunks: [],
21
19
  astroActionsEntryPoint: void 0,
22
20
  middlewareEntryPoint: void 0,
23
21
  clientChunksAndAssets: /* @__PURE__ */ new Set()
@@ -71,13 +69,6 @@ function* getPageDatasByClientOnlyID(internals, viteid) {
71
69
  }
72
70
  }
73
71
  }
74
- function getPageData(internals, route, component) {
75
- let pageData = internals.pagesByKeys.get(makePageDataKey(route, component));
76
- if (pageData) {
77
- return pageData;
78
- }
79
- return void 0;
80
- }
81
72
  function getPageDataByViteID(internals, viteid) {
82
73
  if (internals.pagesByViteID.has(viteid)) {
83
74
  return internals.pagesByViteID.get(viteid);
@@ -92,46 +83,11 @@ function hasPrerenderedPages(internals) {
92
83
  }
93
84
  return false;
94
85
  }
95
- function cssOrder(a, b) {
96
- let depthA = a.depth, depthB = b.depth, orderA = a.order, orderB = b.order;
97
- if (orderA === -1 && orderB >= 0) {
98
- return 1;
99
- } else if (orderB === -1 && orderA >= 0) {
100
- return -1;
101
- } else if (orderA > orderB) {
102
- return 1;
103
- } else if (orderA < orderB) {
104
- return -1;
105
- } else {
106
- if (depthA === -1) {
107
- return -1;
108
- } else if (depthB === -1) {
109
- return 1;
110
- } else {
111
- return depthA > depthB ? -1 : 1;
112
- }
113
- }
114
- }
115
- function mergeInlineCss(acc, current) {
116
- const lastAdded = acc.at(acc.length - 1);
117
- const lastWasInline = lastAdded?.type === "inline";
118
- const currentIsInline = current?.type === "inline";
119
- if (lastWasInline && currentIsInline) {
120
- const merged = { type: "inline", content: lastAdded.content + current.content };
121
- acc[acc.length - 1] = merged;
122
- return acc;
123
- }
124
- acc.push(current);
125
- return acc;
126
- }
127
86
  export {
128
87
  createBuildInternals,
129
- cssOrder,
130
- getPageData,
131
88
  getPageDataByViteID,
132
89
  getPageDatasByClientOnlyID,
133
90
  hasPrerenderedPages,
134
- mergeInlineCss,
135
91
  trackClientOnlyPageDatas,
136
92
  trackPageData,
137
93
  trackScriptPageDatas
@@ -1,53 +1,42 @@
1
- import type { AstroSettings, ComponentInstance } from '../../types/astro.js';
1
+ import type { ComponentInstance } from '../../types/astro.js';
2
2
  import type { RewritePayload } from '../../types/public/common.js';
3
3
  import type { RouteData, SSRResult } from '../../types/public/internal.js';
4
4
  import type { SSRManifest } from '../app/types.js';
5
5
  import type { TryRewriteResult } from '../base-pipeline.js';
6
- import { Pipeline } from '../render/index.js';
7
- import { type BuildInternals } from './internal.js';
8
- import type { PageBuildData, SinglePageBuiltModule, StaticBuildOptions } from './types.js';
6
+ import { Pipeline } from '../base-pipeline.js';
7
+ import type { BuildInternals } from './internal.js';
8
+ import type { SinglePageBuiltModule, StaticBuildOptions } from './types.js';
9
9
  /**
10
10
  * The build pipeline is responsible to gather the files emitted by the SSR build and generate the pages by executing these files.
11
11
  */
12
12
  export declare class BuildPipeline extends Pipeline {
13
13
  #private;
14
- readonly internals: BuildInternals;
15
14
  readonly manifest: SSRManifest;
16
- readonly options: StaticBuildOptions;
17
- readonly config: import("../../index.js").AstroConfig;
18
- readonly settings: AstroSettings;
19
15
  readonly defaultRoutes: {
20
16
  instance: ComponentInstance;
21
17
  matchesComponent(filePath: URL): boolean;
22
18
  route: string;
23
19
  component: string;
24
20
  }[];
25
- get outFolder(): URL;
21
+ internals: BuildInternals | undefined;
22
+ options: StaticBuildOptions | undefined;
23
+ getName(): string;
24
+ getSettings(): import("../../types/astro.js").AstroSettings;
25
+ getOptions(): StaticBuildOptions;
26
+ getInternals(): BuildInternals;
26
27
  private constructor();
27
28
  getRoutes(): RouteData[];
28
- static create({ internals, manifest, options, }: Pick<BuildPipeline, 'internals' | 'manifest' | 'options'>): BuildPipeline;
29
- /**
30
- * The SSR build emits two important files:
31
- * - dist/server/manifest.mjs
32
- * - dist/renderers.mjs
33
- *
34
- * These two files, put together, will be used to generate the pages.
35
- *
36
- * ## Errors
37
- *
38
- * It will throw errors if the previous files can't be found in the file system.
39
- *
40
- * @param staticBuildOptions
41
- */
42
- static retrieveManifest(settings: AstroSettings, internals: BuildInternals): Promise<SSRManifest>;
29
+ static create({ manifest }: Pick<BuildPipeline, 'manifest'>): BuildPipeline;
30
+ setInternals(internals: BuildInternals): void;
31
+ setOptions(options: StaticBuildOptions): void;
43
32
  headElements(routeData: RouteData): Pick<SSRResult, 'scripts' | 'styles' | 'links'>;
44
33
  componentMetadata(): void;
45
34
  /**
46
35
  * It collects the routes to generate during the build.
47
36
  * It returns a map of page information and their relative entry point as a string.
48
37
  */
49
- retrieveRoutesToGenerate(): Map<PageBuildData, string>;
38
+ retrieveRoutesToGenerate(): Set<RouteData>;
50
39
  getComponentByRoute(routeData: RouteData): Promise<ComponentInstance>;
40
+ getModuleForRoute(route: RouteData): Promise<SinglePageBuiltModule>;
51
41
  tryRewrite(payload: RewritePayload, request: Request): Promise<TryRewriteResult>;
52
- retrieveSsrEntry(route: RouteData, filePath: string): Promise<SinglePageBuiltModule>;
53
42
  }
@@ -1,18 +1,16 @@
1
- import { getServerOutputDirectory } from "../../prerender/utils.js";
1
+ import { VIRTUAL_PAGE_RESOLVED_MODULE_ID } from "../../vite-plugin-pages/const.js";
2
+ import { getVirtualModulePageName } from "../../vite-plugin-pages/util.js";
2
3
  import { BEFORE_HYDRATION_SCRIPT_ID, PAGE_SCRIPT_ID } from "../../vite-plugin-scripts/index.js";
3
- import { routeIsFallback, routeIsRedirect } from "../redirects/helpers.js";
4
- import { RedirectSinglePageBuiltModule } from "../redirects/index.js";
5
- import { Pipeline } from "../render/index.js";
4
+ import { createConsoleLogger } from "../app/index.js";
5
+ import { RedirectSinglePageBuiltModule } from "../redirects/component.js";
6
+ import { Pipeline } from "../base-pipeline.js";
6
7
  import { createAssetLink, createStylesheetElementSet } from "../render/ssr-element.js";
7
8
  import { createDefaultRoutes } from "../routing/default.js";
9
+ import { getFallbackRoute, routeIsFallback, routeIsRedirect } from "../routing/helpers.js";
8
10
  import { findRouteToRewrite } from "../routing/rewrite.js";
9
- import { getOutDirWithinCwd } from "./common.js";
10
- import { cssOrder, getPageData, mergeInlineCss } from "./internal.js";
11
- import { ASTRO_PAGE_MODULE_ID, ASTRO_PAGE_RESOLVED_MODULE_ID } from "./plugins/plugin-pages.js";
12
- import { getPagesFromVirtualModulePageName, getVirtualModulePageName } from "./plugins/util.js";
13
- import { i18nHasFallback } from "./util.js";
11
+ import { cssOrder, mergeInlineCss, getPageData } from "./runtime.js";
14
12
  class BuildPipeline extends Pipeline {
15
- constructor(internals, manifest, options, config = options.settings.config, settings = options.settings, defaultRoutes = createDefaultRoutes(manifest)) {
13
+ constructor(manifest, defaultRoutes = createDefaultRoutes(manifest)) {
16
14
  const resolveCache = /* @__PURE__ */ new Map();
17
15
  async function resolve(specifier) {
18
16
  if (resolveCache.has(specifier)) {
@@ -30,91 +28,57 @@ class BuildPipeline extends Pipeline {
30
28
  resolveCache.set(specifier, assetLink);
31
29
  return assetLink;
32
30
  }
33
- const serverLike = settings.buildOutput === "server";
34
- const streaming = serverLike;
35
- super(
36
- options.logger,
37
- manifest,
38
- options.runtimeMode,
39
- manifest.renderers,
40
- resolve,
41
- serverLike,
42
- streaming
43
- );
44
- this.internals = internals;
31
+ const logger = createConsoleLogger(manifest.logLevel);
32
+ super(logger, manifest, "production", manifest.renderers, resolve, manifest.serverLike);
45
33
  this.manifest = manifest;
46
- this.options = options;
47
- this.config = config;
48
- this.settings = settings;
49
34
  this.defaultRoutes = defaultRoutes;
50
35
  }
51
- #componentsInterner = /* @__PURE__ */ new WeakMap();
36
+ internals;
37
+ options;
38
+ getName() {
39
+ return "BuildPipeline";
40
+ }
52
41
  /**
53
42
  * This cache is needed to map a single `RouteData` to its file path.
54
43
  * @private
55
44
  */
56
45
  #routesByFilePath = /* @__PURE__ */ new WeakMap();
57
- get outFolder() {
58
- return this.settings.buildOutput === "server" ? this.settings.config.build.server : getOutDirWithinCwd(this.settings.config.outDir);
46
+ getSettings() {
47
+ if (!this.options) {
48
+ throw new Error("No options defined");
49
+ }
50
+ return this.options.settings;
51
+ }
52
+ getOptions() {
53
+ if (!this.options) {
54
+ throw new Error("No options defined");
55
+ }
56
+ return this.options;
57
+ }
58
+ getInternals() {
59
+ if (!this.internals) {
60
+ throw new Error("No internals defined");
61
+ }
62
+ return this.internals;
59
63
  }
60
64
  getRoutes() {
61
- return this.options.routesList.routes;
65
+ return this.getOptions().routesList.routes;
62
66
  }
63
- static create({
64
- internals,
65
- manifest,
66
- options
67
- }) {
68
- return new BuildPipeline(internals, manifest, options);
67
+ static create({ manifest }) {
68
+ return new BuildPipeline(manifest);
69
69
  }
70
- /**
71
- * The SSR build emits two important files:
72
- * - dist/server/manifest.mjs
73
- * - dist/renderers.mjs
74
- *
75
- * These two files, put together, will be used to generate the pages.
76
- *
77
- * ## Errors
78
- *
79
- * It will throw errors if the previous files can't be found in the file system.
80
- *
81
- * @param staticBuildOptions
82
- */
83
- static async retrieveManifest(settings, internals) {
84
- const baseDirectory = getServerOutputDirectory(settings);
85
- const manifestEntryUrl = new URL(
86
- `${internals.manifestFileName}?time=${Date.now()}`,
87
- baseDirectory
88
- );
89
- const { manifest } = await import(manifestEntryUrl.toString());
90
- if (!manifest) {
91
- throw new Error(
92
- "Astro couldn't find the emitted manifest. This is an internal error, please file an issue."
93
- );
94
- }
95
- const renderersEntryUrl = new URL(`renderers.mjs?time=${Date.now()}`, baseDirectory);
96
- const renderers = await import(renderersEntryUrl.toString());
97
- const middleware = internals.middlewareEntryPoint ? async function() {
98
- const mod = await import(internals.middlewareEntryPoint.toString());
99
- return { onRequest: mod.onRequest };
100
- } : manifest.middleware;
101
- if (!renderers) {
102
- throw new Error(
103
- "Astro couldn't find the emitted renderers. This is an internal error, please file an issue."
104
- );
105
- }
106
- return {
107
- ...manifest,
108
- renderers: renderers.renderers,
109
- middleware
110
- };
70
+ setInternals(internals) {
71
+ this.internals = internals;
72
+ }
73
+ setOptions(options) {
74
+ this.options = options;
111
75
  }
112
76
  headElements(routeData) {
113
77
  const {
114
- internals,
115
- manifest: { assetsPrefix, base },
116
- settings
78
+ manifest: { assetsPrefix, base }
117
79
  } = this;
80
+ const settings = this.getSettings();
81
+ const internals = this.getInternals();
118
82
  const links = /* @__PURE__ */ new Set();
119
83
  const pageBuildData = getPageData(internals, routeData.route, routeData.component);
120
84
  const scripts = /* @__PURE__ */ new Set();
@@ -148,116 +112,88 @@ class BuildPipeline extends Pipeline {
148
112
  * It returns a map of page information and their relative entry point as a string.
149
113
  */
150
114
  retrieveRoutesToGenerate() {
151
- const pages = /* @__PURE__ */ new Map();
152
- for (const [virtualModulePageName, filePath] of this.internals.entrySpecifierToBundleMap) {
153
- if (virtualModulePageName.includes(ASTRO_PAGE_RESOLVED_MODULE_ID)) {
154
- let pageDatas = [];
155
- pageDatas.push(
156
- ...getPagesFromVirtualModulePageName(
157
- this.internals,
158
- ASTRO_PAGE_RESOLVED_MODULE_ID,
159
- virtualModulePageName
160
- )
161
- );
162
- for (const pageData of pageDatas) {
163
- pages.set(pageData, filePath);
164
- }
115
+ const pages = /* @__PURE__ */ new Set();
116
+ const defaultRouteComponents = new Set(this.defaultRoutes.map((route) => route.component));
117
+ for (const { routeData } of this.manifest.routes) {
118
+ if (routeIsRedirect(routeData)) {
119
+ pages.add(routeData);
120
+ continue;
165
121
  }
166
- }
167
- for (const pageData of this.internals.pagesByKeys.values()) {
168
- if (routeIsRedirect(pageData.route)) {
169
- pages.set(pageData, pageData.component);
170
- } else if (routeIsFallback(pageData.route) && (i18nHasFallback(this.config) || routeIsFallback(pageData.route) && pageData.route.route === "/")) {
171
- const moduleSpecifier = getVirtualModulePageName(ASTRO_PAGE_MODULE_ID, pageData.component);
172
- const filePath = this.internals.entrySpecifierToBundleMap.get(moduleSpecifier);
173
- if (filePath) {
174
- pages.set(pageData, filePath);
175
- }
122
+ if (routeIsFallback(routeData) && i18nHasFallback(this.manifest)) {
123
+ pages.add(routeData);
124
+ continue;
125
+ }
126
+ if (defaultRouteComponents.has(routeData.component)) {
127
+ continue;
128
+ }
129
+ pages.add(routeData);
130
+ const moduleSpecifier = getVirtualModulePageName(
131
+ VIRTUAL_PAGE_RESOLVED_MODULE_ID,
132
+ routeData.component
133
+ );
134
+ const filePath = this.internals?.entrySpecifierToBundleMap.get(moduleSpecifier);
135
+ if (filePath) {
136
+ this.#routesByFilePath.set(routeData, filePath);
176
137
  }
177
- }
178
- for (const [buildData, filePath] of pages.entries()) {
179
- this.#routesByFilePath.set(buildData.route, filePath);
180
138
  }
181
139
  return pages;
182
140
  }
183
141
  async getComponentByRoute(routeData) {
184
- if (this.#componentsInterner.has(routeData)) {
185
- const entry = this.#componentsInterner.get(routeData);
186
- return await entry.page();
142
+ const module = await this.getModuleForRoute(routeData);
143
+ return module.page();
144
+ }
145
+ async getModuleForRoute(route) {
146
+ for (const defaultRoute of this.defaultRoutes) {
147
+ if (route.component === defaultRoute.component) {
148
+ return {
149
+ page: () => Promise.resolve(defaultRoute.instance)
150
+ };
151
+ }
187
152
  }
188
- for (const route of this.defaultRoutes) {
189
- if (route.component === routeData.component) {
190
- return route.instance;
153
+ let routeToProcess = route;
154
+ if (routeIsRedirect(route)) {
155
+ if (route.redirectRoute) {
156
+ routeToProcess = route.redirectRoute;
157
+ } else {
158
+ return RedirectSinglePageBuiltModule;
191
159
  }
160
+ } else if (routeIsFallback(route)) {
161
+ routeToProcess = getFallbackRoute(route, this.manifest.routes);
192
162
  }
193
- const filePath = this.#routesByFilePath.get(routeData);
194
- const module = await this.retrieveSsrEntry(routeData, filePath);
195
- return module.page();
163
+ if (this.manifest.pageMap) {
164
+ const importComponentInstance = this.manifest.pageMap.get(routeToProcess.component);
165
+ if (!importComponentInstance) {
166
+ throw new Error(
167
+ `Unexpectedly unable to find a component instance for route ${route.route}`
168
+ );
169
+ }
170
+ return await importComponentInstance();
171
+ } else if (this.manifest.pageModule) {
172
+ return this.manifest.pageModule;
173
+ }
174
+ throw new Error(
175
+ "Astro couldn't find the correct page to render, probably because it wasn't correctly mapped for SSR usage. This is an internal error, please file an issue."
176
+ );
196
177
  }
197
178
  async tryRewrite(payload, request) {
198
179
  const { routeData, pathname, newUrl } = findRouteToRewrite({
199
180
  payload,
200
181
  request,
201
- routes: this.options.routesList.routes,
202
- trailingSlash: this.config.trailingSlash,
203
- buildFormat: this.config.build.format,
204
- base: this.config.base,
205
- outDir: this.serverLike ? this.manifest.buildClientDir : this.manifest.outDir
182
+ routes: this.manifest.routes.map((routeInfo) => routeInfo.routeData),
183
+ trailingSlash: this.manifest.trailingSlash,
184
+ buildFormat: this.manifest.buildFormat,
185
+ base: this.manifest.base,
186
+ outDir: this.manifest.serverLike ? this.manifest.buildClientDir : this.manifest.outDir
206
187
  });
207
188
  const componentInstance = await this.getComponentByRoute(routeData);
208
189
  return { routeData, componentInstance, newUrl, pathname };
209
190
  }
210
- async retrieveSsrEntry(route, filePath) {
211
- if (this.#componentsInterner.has(route)) {
212
- return this.#componentsInterner.get(route);
213
- }
214
- let entry;
215
- if (routeIsRedirect(route)) {
216
- entry = await this.#getEntryForRedirectRoute(route, this.outFolder);
217
- } else if (routeIsFallback(route)) {
218
- entry = await this.#getEntryForFallbackRoute(route, this.outFolder);
219
- } else {
220
- const ssrEntryURLPage = createEntryURL(filePath, this.outFolder);
221
- entry = await import(ssrEntryURLPage.toString());
222
- }
223
- this.#componentsInterner.set(route, entry);
224
- return entry;
225
- }
226
- async #getEntryForFallbackRoute(route, outFolder) {
227
- if (route.type !== "fallback") {
228
- throw new Error(`Expected a redirect route.`);
229
- }
230
- if (route.redirectRoute) {
231
- const filePath = getEntryFilePath(this.internals, route.redirectRoute);
232
- if (filePath) {
233
- const url = createEntryURL(filePath, outFolder);
234
- const ssrEntryPage = await import(url.toString());
235
- return ssrEntryPage;
236
- }
237
- }
238
- return RedirectSinglePageBuiltModule;
239
- }
240
- async #getEntryForRedirectRoute(route, outFolder) {
241
- if (route.type !== "redirect") {
242
- throw new Error(`Expected a redirect route.`);
243
- }
244
- if (route.redirectRoute) {
245
- const filePath = getEntryFilePath(this.internals, route.redirectRoute);
246
- if (filePath) {
247
- const url = createEntryURL(filePath, outFolder);
248
- const ssrEntryPage = await import(url.toString());
249
- return ssrEntryPage;
250
- }
251
- }
252
- return RedirectSinglePageBuiltModule;
253
- }
254
- }
255
- function createEntryURL(filePath, outFolder) {
256
- return new URL("./" + filePath + `?time=${Date.now()}`, outFolder);
257
191
  }
258
- function getEntryFilePath(internals, pageData) {
259
- const id = "\0" + getVirtualModulePageName(ASTRO_PAGE_MODULE_ID, pageData.component);
260
- return internals.entrySpecifierToBundleMap.get(id);
192
+ function i18nHasFallback(manifest) {
193
+ if (manifest.i18n && manifest.i18n.fallback) {
194
+ return Object.keys(manifest.i18n.fallback).length > 0;
195
+ }
196
+ return false;
261
197
  }
262
198
  export {
263
199
  BuildPipeline
@@ -1,2 +1,4 @@
1
- import type { AstroBuildPluginContainer } from '../plugin.js';
2
- export declare function registerAllPlugins({ internals, options, register }: AstroBuildPluginContainer): void;
1
+ import type { Plugin as VitePlugin } from 'vite';
2
+ import type { BuildInternals } from '../internal.js';
3
+ import type { StaticBuildOptions } from '../types.js';
4
+ export declare function getAllBuildPlugins(internals: BuildInternals, options: StaticBuildOptions): Array<VitePlugin | VitePlugin[] | undefined>;
@@ -1,35 +1,29 @@
1
- import { astroConfigBuildPlugin } from "../../../content/vite-plugin-content-assets.js";
1
+ import { vitePluginActionsBuild } from "../../../actions/vite-plugin-actions.js";
2
2
  import { astroHeadBuildPlugin } from "../../../vite-plugin-head/index.js";
3
- import { pluginActions } from "./plugin-actions.js";
4
3
  import { pluginAnalyzer } from "./plugin-analyzer.js";
5
- import { pluginChunks } from "./plugin-chunks.js";
6
4
  import { pluginComponentEntry } from "./plugin-component-entry.js";
7
5
  import { pluginCSS } from "./plugin-css.js";
8
6
  import { pluginInternals } from "./plugin-internals.js";
9
- import { pluginManifest } from "./plugin-manifest.js";
10
7
  import { pluginMiddleware } from "./plugin-middleware.js";
11
- import { pluginPages } from "./plugin-pages.js";
12
8
  import { pluginPrerender } from "./plugin-prerender.js";
13
- import { pluginRenderers } from "./plugin-renderers.js";
14
9
  import { pluginScripts } from "./plugin-scripts.js";
15
10
  import { pluginSSR } from "./plugin-ssr.js";
16
- function registerAllPlugins({ internals, options, register }) {
17
- register(pluginComponentEntry(internals));
18
- register(pluginAnalyzer(internals));
19
- register(pluginInternals(options, internals));
20
- register(pluginManifest(options, internals));
21
- register(pluginRenderers(options));
22
- register(pluginMiddleware(options, internals));
23
- register(pluginActions(options, internals));
24
- register(pluginPages(options, internals));
25
- register(pluginCSS(options, internals));
26
- register(astroHeadBuildPlugin(internals));
27
- register(pluginPrerender(options, internals));
28
- register(astroConfigBuildPlugin(options, internals));
29
- register(pluginScripts(internals));
30
- register(pluginSSR(options, internals));
31
- register(pluginChunks());
11
+ import { pluginNoop } from "./plugin-noop.js";
12
+ function getAllBuildPlugins(internals, options) {
13
+ return [
14
+ pluginComponentEntry(internals),
15
+ pluginAnalyzer(internals),
16
+ pluginInternals(options, internals),
17
+ pluginMiddleware(options, internals),
18
+ vitePluginActionsBuild(options, internals),
19
+ ...pluginCSS(options, internals),
20
+ astroHeadBuildPlugin(internals),
21
+ pluginPrerender(options, internals),
22
+ pluginScripts(internals),
23
+ ...pluginSSR(options, internals),
24
+ pluginNoop()
25
+ ].filter(Boolean);
32
26
  }
33
27
  export {
34
- registerAllPlugins
28
+ getAllBuildPlugins
35
29
  };
@@ -1,3 +1,3 @@
1
+ import type { Plugin as VitePlugin } from 'vite';
1
2
  import type { BuildInternals } from '../internal.js';
2
- import type { AstroBuildPlugin } from '../plugin.js';
3
- export declare function pluginAnalyzer(internals: BuildInternals): AstroBuildPlugin;
3
+ export declare function pluginAnalyzer(internals: BuildInternals): VitePlugin;
@@ -4,9 +4,13 @@ import {
4
4
  trackClientOnlyPageDatas,
5
5
  trackScriptPageDatas
6
6
  } from "../internal.js";
7
- function vitePluginAnalyzer(internals) {
7
+ import { ASTRO_VITE_ENVIRONMENT_NAMES } from "../../constants.js";
8
+ function pluginAnalyzer(internals) {
8
9
  return {
9
10
  name: "@astro/rollup-plugin-astro-analyzer",
11
+ applyToEnvironment(environment) {
12
+ return environment.name === ASTRO_VITE_ENVIRONMENT_NAMES.ssr || environment.name === ASTRO_VITE_ENVIRONMENT_NAMES.prerender;
13
+ },
10
14
  async generateBundle() {
11
15
  const ids = this.getModuleIds();
12
16
  for (const id of ids) {
@@ -61,18 +65,6 @@ function vitePluginAnalyzer(internals) {
61
65
  }
62
66
  };
63
67
  }
64
- function pluginAnalyzer(internals) {
65
- return {
66
- targets: ["server"],
67
- hooks: {
68
- "build:before": () => {
69
- return {
70
- vitePlugin: vitePluginAnalyzer(internals)
71
- };
72
- }
73
- }
74
- };
75
- }
76
68
  export {
77
69
  pluginAnalyzer
78
70
  };
@@ -1,4 +1,9 @@
1
+ import type { Plugin as VitePlugin } from 'vite';
1
2
  import type { BuildInternals } from '../internal.js';
2
- import type { AstroBuildPlugin } from '../plugin.js';
3
+ /**
4
+ * When adding hydrated or client:only components as Rollup inputs, sometimes we're not using all
5
+ * of the export names, e.g. `import { Counter } from './ManyComponents.jsx'`. This plugin proxies
6
+ * entries to re-export only the names the user is using.
7
+ */
8
+ export declare function pluginComponentEntry(internals: BuildInternals): VitePlugin;
3
9
  export declare function normalizeEntryId(id: string): string;
4
- export declare function pluginComponentEntry(internals: BuildInternals): AstroBuildPlugin;
@@ -1,5 +1,6 @@
1
+ import { ASTRO_VITE_ENVIRONMENT_NAMES } from "../../constants.js";
1
2
  const astroEntryPrefix = "\0astro-entry:";
2
- function vitePluginComponentEntry(internals) {
3
+ function pluginComponentEntry(internals) {
3
4
  const componentToExportNames = /* @__PURE__ */ new Map();
4
5
  mergeComponentExportNames(internals.discoveredHydratedComponents);
5
6
  mergeComponentExportNames(internals.discoveredClientOnlyComponents);
@@ -22,6 +23,9 @@ function vitePluginComponentEntry(internals) {
22
23
  return {
23
24
  name: "@astro/plugin-component-entry",
24
25
  enforce: "pre",
26
+ applyToEnvironment(environment) {
27
+ return environment.name === ASTRO_VITE_ENVIRONMENT_NAMES.client;
28
+ },
25
29
  config(config) {
26
30
  const rollupInput = config.build?.rollupOptions?.input;
27
31
  if (Array.isArray(rollupInput)) {
@@ -55,18 +59,6 @@ function vitePluginComponentEntry(internals) {
55
59
  function normalizeEntryId(id) {
56
60
  return id.startsWith(astroEntryPrefix) ? id.slice(astroEntryPrefix.length) : id;
57
61
  }
58
- function pluginComponentEntry(internals) {
59
- return {
60
- targets: ["client"],
61
- hooks: {
62
- "build:before": () => {
63
- return {
64
- vitePlugin: vitePluginComponentEntry(internals)
65
- };
66
- }
67
- }
68
- };
69
- }
70
62
  export {
71
63
  normalizeEntryId,
72
64
  pluginComponentEntry
@@ -1,5 +1,5 @@
1
+ import type { Plugin as VitePlugin } from 'vite';
1
2
  import type { BuildInternals } from '../internal.js';
2
- import type { AstroBuildPlugin } from '../plugin.js';
3
3
  import type { StaticBuildOptions } from '../types.js';
4
4
  /***** ASTRO PLUGIN *****/
5
- export declare function pluginCSS(options: StaticBuildOptions, internals: BuildInternals): AstroBuildPlugin;
5
+ export declare function pluginCSS(options: StaticBuildOptions, internals: BuildInternals): VitePlugin[];