vinext 1.0.0-beta.8 → 1.0.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 (813) hide show
  1. package/README.md +158 -84
  2. package/THIRD_PARTY_LICENSES.md +25 -0
  3. package/dist/_virtual/_rolldown/runtime.js +25 -0
  4. package/dist/build/action-owner-manifest.d.ts +8 -9
  5. package/dist/build/action-owner-manifest.js +23 -5
  6. package/dist/build/assets-ignore.d.ts +3 -4
  7. package/dist/build/clean-output.d.ts +2 -3
  8. package/dist/build/client-build-config.d.ts +40 -12
  9. package/dist/build/client-build-config.js +76 -6
  10. package/dist/build/css-url-assets.d.ts +4 -5
  11. package/dist/build/css-url-assets.js +5 -2
  12. package/dist/build/google-fonts/build-url.d.ts +3 -4
  13. package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
  14. package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
  15. package/dist/build/google-fonts/font-metadata.d.ts +2 -3
  16. package/dist/build/google-fonts/get-axes.d.ts +2 -3
  17. package/dist/build/google-fonts/sort-variants.d.ts +2 -3
  18. package/dist/build/google-fonts/validate.d.ts +2 -3
  19. package/dist/build/google-fonts/validate.js +8 -4
  20. package/dist/build/inject-pregenerated-paths.d.ts +2 -3
  21. package/dist/build/inject-pregenerated-paths.js +16 -14
  22. package/dist/build/inline-css.d.ts +3 -4
  23. package/dist/build/layout-classification-types.d.ts +4 -5
  24. package/dist/build/layout-classification.d.ts +7 -8
  25. package/dist/build/lifecycle.d.ts +42 -0
  26. package/dist/build/lifecycle.js +253 -0
  27. package/dist/build/module-dependency-cache.d.ts +2 -3
  28. package/dist/build/next-client-runtime-manifests.d.ts +4 -5
  29. package/dist/build/nitro-route-rules.d.ts +6 -7
  30. package/dist/build/nitro-route-rules.js +1 -1
  31. package/dist/build/pages-client-assets-module.d.ts +4 -8
  32. package/dist/build/pages-client-assets-module.js +1 -13
  33. package/dist/build/precompress.d.ts +2 -3
  34. package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
  35. package/dist/build/prerender-cloudflare-loader.js +49 -0
  36. package/dist/build/prerender-paths.d.ts +82 -8
  37. package/dist/build/prerender-paths.js +814 -99
  38. package/dist/build/prerender-phase.d.ts +2 -3
  39. package/dist/build/prerender-server-entry.js +11 -3
  40. package/dist/build/prerender-server-pool.d.ts +9 -6
  41. package/dist/build/prerender-server-pool.js +8 -5
  42. package/dist/build/prerender.d.ts +67 -15
  43. package/dist/build/prerender.js +177 -64
  44. package/dist/build/preview-credentials.d.ts +5 -6
  45. package/dist/build/preview-credentials.js +2 -2
  46. package/dist/build/public-dir-conflict.d.ts +5 -6
  47. package/dist/build/public-dir-conflict.js +2 -1
  48. package/dist/build/report.d.ts +38 -19
  49. package/dist/build/report.js +73 -4
  50. package/dist/build/route-classification-injector.d.ts +2 -3
  51. package/dist/build/route-classification-manifest.d.ts +5 -6
  52. package/dist/build/run-prerender.d.ts +11 -9
  53. package/dist/build/run-prerender.js +25 -16
  54. package/dist/build/server-entry.d.ts +4 -0
  55. package/dist/build/server-entry.js +28 -0
  56. package/dist/build/server-manifest.d.ts +8 -3
  57. package/dist/build/server-manifest.js +14 -2
  58. package/dist/build/ssr-manifest.d.ts +5 -6
  59. package/dist/build/standalone.d.ts +2 -3
  60. package/dist/build/standalone.js +2 -2
  61. package/dist/build/static-export.d.ts +7 -8
  62. package/dist/cache/cache-adapters-virtual.d.ts +95 -9
  63. package/dist/cache/cache-adapters-virtual.js +58 -6
  64. package/dist/check.d.ts +11 -10
  65. package/dist/check.js +467 -176
  66. package/dist/cli-args.d.ts +7 -16
  67. package/dist/cli-args.js +2 -45
  68. package/dist/cli-dev-config.d.ts +10 -7
  69. package/dist/cli-dev-config.js +160 -3
  70. package/dist/cli.js +124 -435
  71. package/dist/client/app-nav-failure-handler.d.ts +6 -7
  72. package/dist/client/client-rewrite-matcher.d.ts +2 -3
  73. package/dist/client/client-rewrites.d.ts +4 -5
  74. package/dist/client/dev-error-overlay-store.d.ts +13 -14
  75. package/dist/client/dev-error-overlay.d.ts +15 -15
  76. package/dist/client/dev-error-overlay.js +8 -5
  77. package/dist/client/instrumentation-client-inject.d.ts +3 -4
  78. package/dist/client/instrumentation-client-state.d.ts +5 -6
  79. package/dist/client/instrumentation-client.d.ts +3 -4
  80. package/dist/client/navigation-runtime.d.ts +21 -17
  81. package/dist/client/navigation-runtime.js +2 -1
  82. package/dist/client/pages-router-link-navigation.d.ts +4 -5
  83. package/dist/client/react-instance.d.ts +2 -3
  84. package/dist/client/validate-module-path.d.ts +2 -3
  85. package/dist/client/vinext-next-data.d.ts +7 -8
  86. package/dist/client/window-next.d.ts +4 -5
  87. package/dist/config/config-matchers.d.ts +16 -16
  88. package/dist/config/config-matchers.js +10 -7
  89. package/dist/config/dotenv.d.ts +3 -4
  90. package/dist/config/dotenv.js +2 -1
  91. package/dist/config/next-config.d.ts +31 -27
  92. package/dist/config/next-config.js +163 -16
  93. package/dist/config/prerender.d.ts +20 -16
  94. package/dist/config/prerender.js +10 -4
  95. package/dist/config/request-context.d.ts +5 -6
  96. package/dist/config/server-external-packages.d.ts +14 -3
  97. package/dist/config/server-external-packages.js +37 -3
  98. package/dist/config/tsconfig-paths.d.ts +3 -4
  99. package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
  100. package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
  101. package/dist/entries/app-browser-entry.d.ts +5 -6
  102. package/dist/entries/app-browser-entry.js +3 -2
  103. package/dist/entries/app-rsc-entry.d.ts +12 -3
  104. package/dist/entries/app-rsc-entry.js +530 -55
  105. package/dist/entries/app-rsc-manifest.d.ts +4 -3
  106. package/dist/entries/app-rsc-manifest.js +27 -8
  107. package/dist/entries/app-ssr-entry.d.ts +2 -3
  108. package/dist/entries/app-ssr-entry.js +8 -1
  109. package/dist/entries/pages-client-entry.d.ts +3 -3
  110. package/dist/entries/pages-client-entry.js +17 -2
  111. package/dist/entries/pages-server-entry.d.ts +13 -3
  112. package/dist/entries/pages-server-entry.js +237 -33
  113. package/dist/entries/runtime-entry-module.d.ts +4 -5
  114. package/dist/image/image-adapters-virtual.d.ts +4 -5
  115. package/dist/index.d.ts +10 -11
  116. package/dist/index.js +832 -199
  117. package/dist/init-cloudflare.d.ts +27 -16
  118. package/dist/init-cloudflare.js +754 -113
  119. package/dist/init-platform.d.ts +26 -22
  120. package/dist/init-platform.js +85 -29
  121. package/dist/init.d.ts +19 -13
  122. package/dist/init.js +123 -41
  123. package/dist/plugins/action-owner-manifest.d.ts +3 -4
  124. package/dist/plugins/action-owner-manifest.js +10 -3
  125. package/dist/plugins/ast-scope.d.ts +10 -11
  126. package/dist/plugins/ast-scope.js +10 -22
  127. package/dist/plugins/ast-utils.d.ts +16 -29
  128. package/dist/plugins/ast-utils.js +27 -71
  129. package/dist/plugins/async-hooks-stub.d.ts +2 -3
  130. package/dist/plugins/client-reference-dedup.d.ts +4 -5
  131. package/dist/plugins/css-data-url.d.ts +2 -3
  132. package/dist/plugins/css-module-imports.d.ts +3 -4
  133. package/dist/plugins/css-module-imports.js +1 -1
  134. package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
  135. package/dist/plugins/dynamic-preload-metadata.js +55 -154
  136. package/dist/plugins/environment.d.ts +2 -3
  137. package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
  138. package/dist/plugins/extensionless-dynamic-import.js +6 -10
  139. package/dist/plugins/fonts.d.ts +10 -11
  140. package/dist/plugins/fonts.js +4 -3
  141. package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
  142. package/dist/plugins/ignore-dynamic-requests.js +60 -89
  143. package/dist/plugins/import-meta-url.d.ts +6 -7
  144. package/dist/plugins/import-meta-url.js +31 -43
  145. package/dist/plugins/instrumentation-client.d.ts +3 -3
  146. package/dist/plugins/instrumentation-client.js +46 -10
  147. package/dist/plugins/middleware-export-validation.d.ts +3 -4
  148. package/dist/plugins/middleware-export-validation.js +3 -3
  149. package/dist/plugins/middleware-server-only.d.ts +2 -3
  150. package/dist/plugins/og-asset-ownership.d.ts +3 -4
  151. package/dist/plugins/og-assets.d.ts +4 -5
  152. package/dist/plugins/og-assets.js +32 -13
  153. package/dist/plugins/og-harfbuzz.d.ts +24 -0
  154. package/dist/plugins/og-harfbuzz.js +260 -0
  155. package/dist/plugins/optimize-imports.d.ts +7 -7
  156. package/dist/plugins/optimize-imports.js +32 -44
  157. package/dist/plugins/pages-node-externals.d.ts +2 -3
  158. package/dist/plugins/pages-node-externals.js +6 -11
  159. package/dist/plugins/postcss.d.ts +8 -4
  160. package/dist/plugins/postcss.js +1 -1
  161. package/dist/plugins/remove-console.d.ts +2 -3
  162. package/dist/plugins/remove-console.js +0 -1
  163. package/dist/plugins/require-condition-resolution.d.ts +3 -4
  164. package/dist/plugins/require-condition-resolution.js +17 -18
  165. package/dist/plugins/require-context.d.ts +2 -3
  166. package/dist/plugins/require-context.js +13 -21
  167. package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
  168. package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
  169. package/dist/plugins/rsc-client-shim-excludes.js +1 -0
  170. package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
  171. package/dist/plugins/sass.d.ts +7 -8
  172. package/dist/plugins/sass.js +7 -4
  173. package/dist/plugins/server-externals-manifest.d.ts +2 -3
  174. package/dist/plugins/strip-server-exports.d.ts +5 -6
  175. package/dist/plugins/strip-server-exports.js +1 -1
  176. package/dist/plugins/styled-jsx.d.ts +2 -3
  177. package/dist/plugins/styled-jsx.js +7 -7
  178. package/dist/plugins/transform-cache.d.ts +2 -3
  179. package/dist/plugins/transform-result.d.ts +3 -4
  180. package/dist/plugins/transitive-externals.d.ts +2 -3
  181. package/dist/plugins/typeof-window.d.ts +6 -7
  182. package/dist/plugins/typeof-window.js +30 -31
  183. package/dist/plugins/use-cache-callable.d.ts +2 -5
  184. package/dist/plugins/use-cache-callable.js +43 -22
  185. package/dist/plugins/wasm-module-import.d.ts +2 -3
  186. package/dist/plugins/worker-image-imports.d.ts +2 -3
  187. package/dist/plugins/worker-image-imports.js +6 -8
  188. package/dist/routing/app-route-graph.d.ts +19 -19
  189. package/dist/routing/app-route-graph.js +3 -2
  190. package/dist/routing/app-router.d.ts +20 -5
  191. package/dist/routing/app-router.js +28 -2
  192. package/dist/routing/file-matcher.d.ts +9 -10
  193. package/dist/routing/pages-router.d.ts +6 -6
  194. package/dist/routing/pages-router.js +1 -1
  195. package/dist/routing/route-matching.d.ts +4 -5
  196. package/dist/routing/route-matching.js +4 -2
  197. package/dist/routing/route-pattern.d.ts +13 -14
  198. package/dist/routing/route-trie.d.ts +5 -6
  199. package/dist/routing/route-validation.d.ts +3 -4
  200. package/dist/routing/route-validation.js +12 -11
  201. package/dist/routing/utils.d.ts +13 -14
  202. package/dist/server/accept-encoding.d.ts +9 -10
  203. package/dist/server/api-handler.d.ts +2 -3
  204. package/dist/server/api-handler.js +9 -6
  205. package/dist/server/app-action-forwarding.d.ts +3 -4
  206. package/dist/server/app-action-forwarding.js +1 -1
  207. package/dist/server/app-action-request.d.ts +2 -3
  208. package/dist/server/app-bfcache-id.d.ts +3 -4
  209. package/dist/server/app-bfcache-identity.d.ts +8 -9
  210. package/dist/server/app-browser-action-result.d.ts +15 -16
  211. package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
  212. package/dist/server/app-browser-entry.js +121 -40
  213. package/dist/server/app-browser-error.d.ts +5 -6
  214. package/dist/server/app-browser-error.js +9 -3
  215. package/dist/server/app-browser-history-controller.d.ts +4 -5
  216. package/dist/server/app-browser-hydration.d.ts +16 -6
  217. package/dist/server/app-browser-hydration.js +14 -1
  218. package/dist/server/app-browser-interception-context.d.ts +3 -4
  219. package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
  220. package/dist/server/app-browser-navigation-abort.d.ts +3 -4
  221. package/dist/server/app-browser-navigation-controller.d.ts +8 -8
  222. package/dist/server/app-browser-navigation-controller.js +9 -5
  223. package/dist/server/app-browser-navigation-response.d.ts +2 -3
  224. package/dist/server/app-browser-popstate.d.ts +4 -5
  225. package/dist/server/app-browser-prefetch-response.d.ts +5 -6
  226. package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
  227. package/dist/server/app-browser-server-action-client.d.ts +7 -6
  228. package/dist/server/app-browser-server-action-client.js +9 -5
  229. package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
  230. package/dist/server/app-browser-state.d.ts +17 -17
  231. package/dist/server/app-browser-state.js +7 -3
  232. package/dist/server/app-browser-stream.d.ts +4 -5
  233. package/dist/server/app-browser-stream.js +8 -6
  234. package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
  235. package/dist/server/app-browser-visible-commit.d.ts +6 -7
  236. package/dist/server/app-browser-visible-commit.js +1 -1
  237. package/dist/server/app-client-reference-preloader.d.ts +2 -3
  238. package/dist/server/app-elements-wire-key.d.ts +25 -0
  239. package/dist/server/app-elements-wire-key.js +69 -0
  240. package/dist/server/app-elements-wire.d.ts +34 -53
  241. package/dist/server/app-elements-wire.js +4 -75
  242. package/dist/server/app-elements.d.ts +5 -5
  243. package/dist/server/app-elements.js +1 -1
  244. package/dist/server/app-fallback-renderer.d.ts +4 -4
  245. package/dist/server/app-fallback-renderer.js +6 -6
  246. package/dist/server/app-fetch-tracing.d.ts +15 -0
  247. package/dist/server/app-fetch-tracing.js +38 -0
  248. package/dist/server/app-history-state.d.ts +26 -27
  249. package/dist/server/app-history-state.js +19 -11
  250. package/dist/server/app-hook-warning-suppression.d.ts +2 -3
  251. package/dist/server/app-hydration-cache-publication.d.ts +3 -4
  252. package/dist/server/app-inline-css-client.d.ts +3 -4
  253. package/dist/server/app-interception-context-header.d.ts +2 -3
  254. package/dist/server/app-layout-param-observation.d.ts +7 -8
  255. package/dist/server/app-metadata-tracing.d.ts +12 -0
  256. package/dist/server/app-metadata-tracing.js +17 -0
  257. package/dist/server/app-middleware.d.ts +15 -7
  258. package/dist/server/app-middleware.js +30 -5
  259. package/dist/server/app-mounted-slots-header.d.ts +2 -3
  260. package/dist/server/app-mounted-slots-header.js +2 -2
  261. package/dist/server/app-optimistic-routing.d.ts +14 -10
  262. package/dist/server/app-optimistic-routing.js +16 -3
  263. package/dist/server/app-page-boundary-render.d.ts +6 -6
  264. package/dist/server/app-page-boundary-render.js +10 -4
  265. package/dist/server/app-page-boundary.d.ts +9 -10
  266. package/dist/server/app-page-boundary.js +2 -1
  267. package/dist/server/app-page-cache-finalizer.d.ts +32 -8
  268. package/dist/server/app-page-cache-finalizer.js +118 -14
  269. package/dist/server/app-page-cache-render.d.ts +8 -5
  270. package/dist/server/app-page-cache-render.js +22 -5
  271. package/dist/server/app-page-cache.d.ts +28 -9
  272. package/dist/server/app-page-cache.js +96 -25
  273. package/dist/server/app-page-dispatch.d.ts +36 -12
  274. package/dist/server/app-page-dispatch.js +188 -63
  275. package/dist/server/app-page-element-builder.d.ts +13 -11
  276. package/dist/server/app-page-element-builder.js +104 -61
  277. package/dist/server/app-page-execution.d.ts +14 -14
  278. package/dist/server/app-page-execution.js +12 -8
  279. package/dist/server/app-page-head.d.ts +19 -16
  280. package/dist/server/app-page-head.js +25 -25
  281. package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
  282. package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
  283. package/dist/server/app-page-method.d.ts +5 -11
  284. package/dist/server/app-page-method.js +2 -9
  285. package/dist/server/app-page-params.d.ts +5 -6
  286. package/dist/server/app-page-ppr-runtime.d.ts +2 -2
  287. package/dist/server/app-page-probe.d.ts +5 -6
  288. package/dist/server/app-page-probe.js +5 -4
  289. package/dist/server/app-page-render-identity.d.ts +4 -5
  290. package/dist/server/app-page-render-observation.d.ts +8 -9
  291. package/dist/server/app-page-render-observation.js +1 -1
  292. package/dist/server/app-page-render.d.ts +42 -6
  293. package/dist/server/app-page-render.js +192 -28
  294. package/dist/server/app-page-request.d.ts +10 -9
  295. package/dist/server/app-page-request.js +16 -12
  296. package/dist/server/app-page-response.d.ts +20 -9
  297. package/dist/server/app-page-response.js +31 -13
  298. package/dist/server/app-page-route-wiring.d.ts +15 -15
  299. package/dist/server/app-page-route-wiring.js +31 -24
  300. package/dist/server/app-page-search-params-observation.d.ts +26 -5
  301. package/dist/server/app-page-search-params-observation.js +42 -6
  302. package/dist/server/app-page-segment-plan.d.ts +2 -3
  303. package/dist/server/app-page-segment-state.d.ts +11 -12
  304. package/dist/server/app-page-stream.d.ts +27 -11
  305. package/dist/server/app-page-stream.js +35 -6
  306. package/dist/server/app-page-tracing.d.ts +33 -0
  307. package/dist/server/app-page-tracing.js +49 -0
  308. package/dist/server/app-pages-bridge.d.ts +6 -6
  309. package/dist/server/app-pages-bridge.js +19 -4
  310. package/dist/server/app-post-middleware-context.d.ts +2 -3
  311. package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
  312. package/dist/server/app-ppr-fallback-shell-render.js +3 -2
  313. package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
  314. package/dist/server/app-prerender-endpoints.d.ts +5 -5
  315. package/dist/server/app-prerender-endpoints.js +26 -12
  316. package/dist/server/app-prerender-static-params.d.ts +15 -7
  317. package/dist/server/app-prerender-static-params.js +33 -11
  318. package/dist/server/app-render-dependency.d.ts +14 -13
  319. package/dist/server/app-render-dependency.js +5 -1
  320. package/dist/server/app-request-context.d.ts +3 -4
  321. package/dist/server/app-request-stage-context.d.ts +5 -0
  322. package/dist/server/app-request-stage-context.js +11 -0
  323. package/dist/server/app-request-stage-dispatch.d.ts +25 -0
  324. package/dist/server/app-request-stage-dispatch.js +54 -0
  325. package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
  326. package/dist/server/app-request-stage-independent-entry.js +115 -0
  327. package/dist/server/app-response-header-provenance.d.ts +13 -7
  328. package/dist/server/app-response-header-provenance.js +34 -1
  329. package/dist/server/app-response-stage-entry.d.ts +9 -0
  330. package/dist/server/app-response-stage-entry.js +87 -0
  331. package/dist/server/app-route-handler-cache.d.ts +2 -3
  332. package/dist/server/app-route-handler-cache.js +46 -34
  333. package/dist/server/app-route-handler-dispatch.d.ts +3 -3
  334. package/dist/server/app-route-handler-dispatch.js +75 -57
  335. package/dist/server/app-route-handler-execution.d.ts +18 -13
  336. package/dist/server/app-route-handler-execution.js +189 -25
  337. package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
  338. package/dist/server/app-route-handler-middleware-context.js +15 -0
  339. package/dist/server/app-route-handler-policy.d.ts +22 -10
  340. package/dist/server/app-route-handler-policy.js +19 -4
  341. package/dist/server/app-route-handler-response.d.ts +9 -10
  342. package/dist/server/app-route-handler-response.js +2 -0
  343. package/dist/server/app-route-handler-runtime.d.ts +9 -10
  344. package/dist/server/app-route-handler-runtime.js +20 -16
  345. package/dist/server/app-route-module-loader.d.ts +6 -7
  346. package/dist/server/app-route-request-built-ins.d.ts +3 -4
  347. package/dist/server/app-route-tree-prefetch.d.ts +6 -7
  348. package/dist/server/app-route-tree-prefetch.js +2 -1
  349. package/dist/server/app-router-entry.d.ts +2 -0
  350. package/dist/server/app-router-entry.js +76 -12
  351. package/dist/server/app-rsc-cache-busting.d.ts +47 -22
  352. package/dist/server/app-rsc-cache-busting.js +80 -18
  353. package/dist/server/app-rsc-combined-handler.d.ts +9 -0
  354. package/dist/server/app-rsc-combined-handler.js +11 -0
  355. package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
  356. package/dist/server/app-rsc-error-handler.d.ts +12 -6
  357. package/dist/server/app-rsc-error-handler.js +15 -6
  358. package/dist/server/app-rsc-errors.d.ts +12 -9
  359. package/dist/server/app-rsc-errors.js +15 -13
  360. package/dist/server/app-rsc-handler.d.ts +33 -6
  361. package/dist/server/app-rsc-handler.js +498 -83
  362. package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
  363. package/dist/server/app-rsc-render-mode.d.ts +8 -9
  364. package/dist/server/app-rsc-request-normalization.d.ts +3 -3
  365. package/dist/server/app-rsc-request-normalization.js +2 -1
  366. package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
  367. package/dist/server/app-rsc-response-finalizer.js +24 -7
  368. package/dist/server/app-rsc-response-stage.d.ts +6 -0
  369. package/dist/server/app-rsc-response-stage.js +251 -0
  370. package/dist/server/app-rsc-route-matching.d.ts +4 -4
  371. package/dist/server/app-rsc-route-matching.js +4 -2
  372. package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
  373. package/dist/server/app-rsc-vary.d.ts +16 -0
  374. package/dist/server/app-rsc-vary.js +31 -0
  375. package/dist/server/app-segment-config.d.ts +120 -6
  376. package/dist/server/app-segment-config.js +264 -12
  377. package/dist/server/app-server-action-execution.d.ts +16 -12
  378. package/dist/server/app-server-action-execution.js +88 -35
  379. package/dist/server/app-ssr-entry.d.ts +14 -4
  380. package/dist/server/app-ssr-entry.js +64 -17
  381. package/dist/server/app-ssr-error-meta.d.ts +3 -4
  382. package/dist/server/app-ssr-error-meta.js +2 -1
  383. package/dist/server/app-ssr-router-instance.d.ts +2 -3
  384. package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
  385. package/dist/server/app-ssr-search-params-gate.js +54 -0
  386. package/dist/server/app-ssr-stream.d.ts +13 -9
  387. package/dist/server/app-ssr-stream.js +33 -7
  388. package/dist/server/app-static-generation.d.ts +4 -5
  389. package/dist/server/app-visited-response-cache.d.ts +11 -12
  390. package/dist/server/app-visited-response-cache.js +2 -2
  391. package/dist/server/app-worker-stages.d.ts +112 -0
  392. package/dist/server/app-worker-stages.js +105 -0
  393. package/dist/server/artifact-compatibility.d.ts +11 -12
  394. package/dist/server/before-interactive-head.d.ts +2 -3
  395. package/dist/server/bfcache-identity.d.ts +7 -8
  396. package/dist/server/cache-control.d.ts +39 -11
  397. package/dist/server/cache-control.js +104 -7
  398. package/dist/server/cache-headers.d.ts +3 -4
  399. package/dist/server/cache-proof.d.ts +75 -70
  400. package/dist/server/cache-proof.js +9 -1
  401. package/dist/server/cacheability-limits.d.ts +8 -0
  402. package/dist/server/cacheability-limits.js +9 -0
  403. package/dist/server/cacheability-manifest.d.ts +68 -0
  404. package/dist/server/cacheability-manifest.js +241 -0
  405. package/dist/server/cacheability-request.d.ts +49 -0
  406. package/dist/server/cacheability-request.js +559 -0
  407. package/dist/server/client-reuse-manifest.d.ts +17 -18
  408. package/dist/server/client-reuse-manifest.js +2 -2
  409. package/dist/server/client-trace-metadata.d.ts +9 -6
  410. package/dist/server/client-trace-metadata.js +27 -15
  411. package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
  412. package/dist/server/cloudflare-workers-tracing.js +8 -0
  413. package/dist/server/config-headers.d.ts +19 -5
  414. package/dist/server/config-headers.js +39 -5
  415. package/dist/server/cookie-utils.d.ts +2 -3
  416. package/dist/server/csp.d.ts +5 -6
  417. package/dist/server/default-global-error-module.d.ts +2 -3
  418. package/dist/server/default-global-not-found-module.d.ts +2 -3
  419. package/dist/server/default-not-found-module.d.ts +2 -3
  420. package/dist/server/defer-until-stream-consumed.d.ts +2 -3
  421. package/dist/server/defer-until-stream-consumed.js +2 -1
  422. package/dist/server/dev-initial-server-error.d.ts +3 -4
  423. package/dist/server/dev-initial-server-error.js +2 -1
  424. package/dist/server/dev-lockfile.d.ts +7 -8
  425. package/dist/server/dev-lockfile.js +4 -1
  426. package/dist/server/dev-module-runner.d.ts +2 -3
  427. package/dist/server/dev-origin-check.d.ts +5 -6
  428. package/dist/server/dev-route-files.d.ts +2 -3
  429. package/dist/server/dev-server.d.ts +4 -5
  430. package/dist/server/dev-server.js +130 -61
  431. package/dist/server/dev-stack-sourcemap.d.ts +7 -7
  432. package/dist/server/dev-stack-sourcemap.js +1 -1
  433. package/dist/server/document-initial-head.d.ts +3 -4
  434. package/dist/server/edge-api-runtime.d.ts +4 -5
  435. package/dist/server/fetch-handler.d.ts +3 -2
  436. package/dist/server/fetch-handler.js +3 -18
  437. package/dist/server/file-based-metadata.d.ts +2 -3
  438. package/dist/server/framework-tracer.d.ts +46 -0
  439. package/dist/server/framework-tracer.js +125 -0
  440. package/dist/server/fully-buffered-response.d.ts +11 -0
  441. package/dist/server/fully-buffered-response.js +19 -0
  442. package/dist/server/headers.d.ts +62 -56
  443. package/dist/server/headers.js +33 -20
  444. package/dist/server/html.d.ts +6 -27
  445. package/dist/server/html.js +16 -1
  446. package/dist/server/http-conditional.d.ts +5 -6
  447. package/dist/server/http-date.d.ts +2 -3
  448. package/dist/server/http-error-responses.d.ts +9 -10
  449. package/dist/server/http-range.d.ts +4 -5
  450. package/dist/server/hybrid-route-priority.d.ts +4 -5
  451. package/dist/server/image-optimization.d.ts +20 -21
  452. package/dist/server/implicit-tags.d.ts +3 -4
  453. package/dist/server/instrumentation-runtime.d.ts +17 -21
  454. package/dist/server/instrumentation-runtime.js +26 -8
  455. package/dist/server/instrumentation.d.ts +26 -30
  456. package/dist/server/instrumentation.js +18 -23
  457. package/dist/server/isr-cache.d.ts +28 -27
  458. package/dist/server/isr-cache.js +18 -70
  459. package/dist/server/isr-decision.d.ts +4 -4
  460. package/dist/server/metadata-route-build-data.d.ts +4 -5
  461. package/dist/server/metadata-route-cache-policy.d.ts +2 -3
  462. package/dist/server/metadata-route-response.d.ts +7 -7
  463. package/dist/server/metadata-route-response.js +68 -2
  464. package/dist/server/metadata-routes.d.ts +18 -19
  465. package/dist/server/middleware-matcher-pattern.d.ts +6 -7
  466. package/dist/server/middleware-matcher.d.ts +13 -6
  467. package/dist/server/middleware-matcher.js +22 -1
  468. package/dist/server/middleware-path-to-regexp.d.ts +6 -7
  469. package/dist/server/middleware-path-to-regexp.js +11 -9
  470. package/dist/server/middleware-response-headers.d.ts +3 -4
  471. package/dist/server/middleware-runtime.d.ts +13 -8
  472. package/dist/server/middleware-runtime.js +54 -10
  473. package/dist/server/middleware.d.ts +5 -5
  474. package/dist/server/multi-stage.d.ts +141 -0
  475. package/dist/server/multi-stage.js +8 -0
  476. package/dist/server/navigation-planner.d.ts +26 -26
  477. package/dist/server/navigation-trace.d.ts +11 -12
  478. package/dist/server/next-error-digest.d.ts +4 -5
  479. package/dist/server/normalize-path.d.ts +5 -6
  480. package/dist/server/normalize-path.js +1 -1
  481. package/dist/server/open-redirect.d.ts +2 -3
  482. package/dist/server/opentelemetry-api.d.ts +59 -0
  483. package/dist/server/opentelemetry-api.js +53 -0
  484. package/dist/server/opentelemetry-tracing.d.ts +5 -0
  485. package/dist/server/opentelemetry-tracing.js +83 -0
  486. package/dist/server/operation-token.d.ts +11 -12
  487. package/dist/server/otel-tracer-extension.d.ts +7 -9
  488. package/dist/server/otel-tracer-extension.js +37 -36
  489. package/dist/server/pages-api-route.d.ts +5 -4
  490. package/dist/server/pages-api-route.js +21 -8
  491. package/dist/server/pages-asset-tags.d.ts +6 -6
  492. package/dist/server/pages-asset-tags.js +37 -2
  493. package/dist/server/pages-body-parser-config.d.ts +4 -5
  494. package/dist/server/pages-body-parser-config.js +4 -4
  495. package/dist/server/pages-client-assets.d.ts +11 -5
  496. package/dist/server/pages-data-route.d.ts +11 -12
  497. package/dist/server/pages-data-route.js +1 -1
  498. package/dist/server/pages-default-404.d.ts +3 -4
  499. package/dist/server/pages-dev-hydration.d.ts +9 -4
  500. package/dist/server/pages-dev-hydration.js +19 -7
  501. package/dist/server/pages-dev-module-url.d.ts +3 -4
  502. package/dist/server/pages-dev-stylesheets.d.ts +5 -6
  503. package/dist/server/pages-document-asset-props.d.ts +6 -7
  504. package/dist/server/pages-document-initial-props.d.ts +5 -5
  505. package/dist/server/pages-document-initial-props.js +4 -2
  506. package/dist/server/pages-execution-tracing.d.ts +40 -0
  507. package/dist/server/pages-execution-tracing.js +80 -0
  508. package/dist/server/pages-get-initial-props.d.ts +9 -10
  509. package/dist/server/pages-i18n.d.ts +8 -8
  510. package/dist/server/pages-i18n.js +3 -2
  511. package/dist/server/pages-media-type.d.ts +4 -5
  512. package/dist/server/pages-node-compat.d.ts +11 -10
  513. package/dist/server/pages-node-compat.js +12 -4
  514. package/dist/server/pages-page-data.d.ts +18 -19
  515. package/dist/server/pages-page-data.js +11 -10
  516. package/dist/server/pages-page-handler.d.ts +7 -6
  517. package/dist/server/pages-page-handler.js +98 -47
  518. package/dist/server/pages-page-method.d.ts +2 -3
  519. package/dist/server/pages-page-response.d.ts +14 -10
  520. package/dist/server/pages-page-response.js +49 -31
  521. package/dist/server/pages-preview.d.ts +10 -11
  522. package/dist/server/pages-readiness.d.ts +2 -3
  523. package/dist/server/pages-request-pipeline.d.ts +16 -12
  524. package/dist/server/pages-request-pipeline.js +69 -28
  525. package/dist/server/pages-request-stage-entry.d.ts +23 -0
  526. package/dist/server/pages-request-stage-entry.js +314 -0
  527. package/dist/server/pages-response-stage-entry.d.ts +11 -0
  528. package/dist/server/pages-response-stage-entry.js +106 -0
  529. package/dist/server/pages-response-stage.d.ts +31 -0
  530. package/dist/server/pages-response-stage.js +49 -0
  531. package/dist/server/pages-revalidate.d.ts +3 -4
  532. package/dist/server/pages-revalidate.js +9 -4
  533. package/dist/server/pages-route-data-kind.d.ts +18 -0
  534. package/dist/server/pages-route-data-kind.js +11 -0
  535. package/dist/server/pages-router-entry.d.ts +1 -25
  536. package/dist/server/pages-router-entry.js +48 -114
  537. package/dist/server/pages-serializable-props.d.ts +3 -4
  538. package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
  539. package/dist/server/pregenerated-concrete-paths.js +12 -6
  540. package/dist/server/prerender-cache-life-header.d.ts +3 -4
  541. package/dist/server/prerender-manifest.d.ts +11 -11
  542. package/dist/server/prerender-manifest.js +6 -3
  543. package/dist/server/prerender-route-params.d.ts +16 -9
  544. package/dist/server/prerender-route-params.js +18 -2
  545. package/dist/server/prerender-work-unit-setup.d.ts +4 -4
  546. package/dist/server/prerender-work-unit-setup.js +37 -14
  547. package/dist/server/prod-server.d.ts +12 -9
  548. package/dist/server/prod-server.js +129 -36
  549. package/dist/server/proxy-trust.d.ts +5 -6
  550. package/dist/server/request-log.d.ts +3 -4
  551. package/dist/server/request-pipeline.d.ts +17 -21
  552. package/dist/server/request-pipeline.js +8 -10
  553. package/dist/server/request-stage.d.ts +5 -0
  554. package/dist/server/request-stage.js +7 -0
  555. package/dist/server/request-tracing.d.ts +22 -0
  556. package/dist/server/request-tracing.js +180 -0
  557. package/dist/server/response-stage-cacheability.d.ts +37 -0
  558. package/dist/server/response-stage-cacheability.js +55 -0
  559. package/dist/server/response-stage-policy.d.ts +23 -0
  560. package/dist/server/response-stage-policy.js +89 -0
  561. package/dist/server/response-stage.d.ts +5 -0
  562. package/dist/server/response-stage.js +7 -0
  563. package/dist/server/response-start-tracing.d.ts +14 -0
  564. package/dist/server/response-start-tracing.js +80 -0
  565. package/dist/server/revalidation-host.d.ts +2 -3
  566. package/dist/server/revalidation-host.js +2 -1
  567. package/dist/server/revalidation-request.d.ts +8 -0
  568. package/dist/server/revalidation-request.js +37 -0
  569. package/dist/server/rsc-completion-metadata.d.ts +6 -7
  570. package/dist/server/rsc-stream-hints.d.ts +18 -7
  571. package/dist/server/rsc-stream-hints.js +70 -35
  572. package/dist/server/seed-cache.d.ts +2 -3
  573. package/dist/server/seed-cache.js +8 -7
  574. package/dist/server/server-action-not-found.d.ts +5 -6
  575. package/dist/server/server-globals.d.ts +2 -3
  576. package/dist/server/server-globals.js +13 -0
  577. package/dist/server/skip-cache-proof.d.ts +4 -4
  578. package/dist/server/socket-error-backstop.d.ts +5 -6
  579. package/dist/server/socket-error-backstop.js +1 -1
  580. package/dist/server/static-file-cache.d.ts +5 -6
  581. package/dist/server/static-file-cache.js +9 -7
  582. package/dist/server/static-file-signal.d.ts +16 -0
  583. package/dist/server/static-file-signal.js +82 -0
  584. package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
  585. package/dist/server/streaming-metadata.d.ts +2 -3
  586. package/dist/server/tracer.d.ts +5 -0
  587. package/dist/server/tracer.js +13 -0
  588. package/dist/server/worker-prerender-discovery.d.ts +18 -0
  589. package/dist/server/worker-prerender-discovery.js +55 -0
  590. package/dist/server/worker-revalidation-context.d.ts +2 -3
  591. package/dist/server/worker-revalidation-context.js +5 -5
  592. package/dist/server/worker-stages.d.ts +43 -0
  593. package/dist/server/worker-stages.js +25 -0
  594. package/dist/server/worker-utils.d.ts +5 -6
  595. package/dist/server/worker-utils.js +4 -4
  596. package/dist/server/workers-tracing.d.ts +17 -0
  597. package/dist/server/workers-tracing.js +27 -0
  598. package/dist/shims/amp.d.ts +3 -4
  599. package/dist/shims/app-router-scroll-state.d.ts +9 -10
  600. package/dist/shims/app-router-scroll.d.ts +4 -5
  601. package/dist/shims/app-router-scroll.js +2 -1
  602. package/dist/shims/app.d.ts +5 -6
  603. package/dist/shims/before-interactive-context.d.ts +5 -6
  604. package/dist/shims/cache-callable-runtime.d.ts +44 -4
  605. package/dist/shims/cache-callable-runtime.js +168 -8
  606. package/dist/shims/cache-for-request.d.ts +2 -3
  607. package/dist/shims/cache-handler.d.ts +33 -20
  608. package/dist/shims/cache-handler.js +61 -2
  609. package/dist/shims/cache-request-state.d.ts +28 -29
  610. package/dist/shims/cache-runtime.d.ts +23 -21
  611. package/dist/shims/cache-runtime.js +239 -121
  612. package/dist/shims/cache.d.ts +15 -15
  613. package/dist/shims/cache.js +25 -13
  614. package/dist/shims/cacheability-classification.d.ts +106 -0
  615. package/dist/shims/cacheability-classification.js +161 -0
  616. package/dist/shims/cdn-cache-state.d.ts +13 -0
  617. package/dist/shims/cdn-cache-state.js +23 -0
  618. package/dist/shims/cdn-cache.d.ts +76 -18
  619. package/dist/shims/cdn-cache.js +40 -39
  620. package/dist/shims/client-hook-error.d.ts +3 -4
  621. package/dist/shims/client-locale.d.ts +2 -3
  622. package/dist/shims/client-page-root.d.ts +24 -0
  623. package/dist/shims/client-page-root.js +121 -0
  624. package/dist/shims/compat-router.d.ts +2 -3
  625. package/dist/shims/config.d.ts +3 -4
  626. package/dist/shims/constants.d.ts +73 -74
  627. package/dist/shims/constants.js +1 -1
  628. package/dist/shims/default-not-found.d.ts +2 -3
  629. package/dist/shims/document.d.ts +9 -9
  630. package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
  631. package/dist/shims/dynamic-preload-chunks.js +17 -13
  632. package/dist/shims/dynamic.d.ts +3 -3
  633. package/dist/shims/error-boundary-navigation.d.ts +3 -4
  634. package/dist/shims/error-boundary.d.ts +17 -18
  635. package/dist/shims/error-boundary.js +17 -11
  636. package/dist/shims/error.d.ts +4 -4
  637. package/dist/shims/error.js +1 -1
  638. package/dist/shims/error.react-server.d.ts +3 -4
  639. package/dist/shims/fetch-cache.d.ts +22 -22
  640. package/dist/shims/fetch-cache.js +50 -20
  641. package/dist/shims/font-google-base.d.ts +9 -9
  642. package/dist/shims/font-google-base.js +2 -1
  643. package/dist/shims/font-local.d.ts +3 -3
  644. package/dist/shims/font-local.js +1 -1
  645. package/dist/shims/font-utils.d.ts +14 -15
  646. package/dist/shims/form.d.ts +2 -2
  647. package/dist/shims/form.js +10 -7
  648. package/dist/shims/hash-scroll.d.ts +5 -6
  649. package/dist/shims/head-state.d.ts +4 -5
  650. package/dist/shims/head.d.ts +16 -16
  651. package/dist/shims/head.js +5 -4
  652. package/dist/shims/headers.d.ts +68 -32
  653. package/dist/shims/headers.js +101 -10
  654. package/dist/shims/i18n-context.d.ts +5 -6
  655. package/dist/shims/i18n-state.d.ts +4 -5
  656. package/dist/shims/image-config.d.ts +5 -6
  657. package/dist/shims/image-config.js +2 -0
  658. package/dist/shims/image.d.ts +5 -5
  659. package/dist/shims/image.js +12 -8
  660. package/dist/shims/internal/als-registry.d.ts +4 -5
  661. package/dist/shims/internal/api-utils.d.ts +3 -4
  662. package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
  663. package/dist/shims/internal/app-page-props-cache-key.js +53 -1
  664. package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
  665. package/dist/shims/internal/app-prefetch-rsc-request.d.ts +13 -0
  666. package/dist/shims/internal/app-prefetch-rsc-request.js +12 -0
  667. package/dist/shims/internal/app-route-detection.d.ts +2 -2
  668. package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -6
  669. package/dist/shims/internal/app-route-prefetch-policy.js +1 -0
  670. package/dist/shims/internal/app-router-context.d.ts +9 -10
  671. package/dist/shims/internal/cookie-serialize.d.ts +4 -5
  672. package/dist/shims/internal/format-url-object.d.ts +7 -0
  673. package/dist/shims/internal/format-url-object.js +53 -0
  674. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
  675. package/dist/shims/internal/hybrid-client-route-owner-direct.js +29 -11
  676. package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
  677. package/dist/shims/internal/hybrid-client-route-owner.js +5 -4
  678. package/dist/shims/internal/interpolate-as.d.ts +5 -6
  679. package/dist/shims/internal/interpolate-as.js +4 -2
  680. package/dist/shims/internal/link-status-registry.d.ts +5 -6
  681. package/dist/shims/internal/make-hanging-promise.d.ts +8 -3
  682. package/dist/shims/internal/make-hanging-promise.js +13 -2
  683. package/dist/shims/internal/navigation-untracked.d.ts +2 -3
  684. package/dist/shims/internal/normalize-router-href.d.ts +15 -0
  685. package/dist/shims/internal/normalize-router-href.js +41 -0
  686. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
  687. package/dist/shims/internal/pages-data-target.d.ts +8 -6
  688. package/dist/shims/internal/pages-data-target.js +32 -36
  689. package/dist/shims/internal/pages-data-url.d.ts +4 -5
  690. package/dist/shims/internal/pages-data-url.js +2 -1
  691. package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
  692. package/dist/shims/internal/pages-router-components.d.ts +3 -4
  693. package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
  694. package/dist/shims/internal/route-pattern-for-warning.js +3 -3
  695. package/dist/shims/internal/router-context.d.ts +2 -3
  696. package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
  697. package/dist/shims/internal/thenable-well-known-properties.js +33 -0
  698. package/dist/shims/internal/utils.d.ts +7 -8
  699. package/dist/shims/internal/work-unit-async-storage.d.ts +12 -11
  700. package/dist/shims/layout-segment-context.d.ts +3 -4
  701. package/dist/shims/link-prefetch.d.ts +9 -10
  702. package/dist/shims/link.d.ts +4 -4
  703. package/dist/shims/link.js +67 -116
  704. package/dist/shims/metadata.d.ts +15 -16
  705. package/dist/shims/metadata.js +40 -36
  706. package/dist/shims/navigation-context-accessors.d.ts +9 -0
  707. package/dist/shims/navigation-context-accessors.js +19 -0
  708. package/dist/shims/navigation-context-state.d.ts +27 -18
  709. package/dist/shims/navigation-errors.d.ts +18 -19
  710. package/dist/shims/navigation-state.d.ts +6 -7
  711. package/dist/shims/navigation.d.ts +80 -68
  712. package/dist/shims/navigation.js +45 -17
  713. package/dist/shims/navigation.react-server.d.ts +9 -9
  714. package/dist/shims/navigation.react-server.js +1 -1
  715. package/dist/shims/offline.d.ts +2 -3
  716. package/dist/shims/og.d.ts +2 -2
  717. package/dist/shims/pages-router-runtime.d.ts +4 -5
  718. package/dist/shims/ppr-fallback-shell.d.ts +13 -14
  719. package/dist/shims/readonly-url-search-params.d.ts +2 -3
  720. package/dist/shims/request-context.d.ts +7 -6
  721. package/dist/shims/root-params.d.ts +14 -15
  722. package/dist/shims/router-state.d.ts +5 -6
  723. package/dist/shims/router-state.js +1 -1
  724. package/dist/shims/router.d.ts +22 -21
  725. package/dist/shims/router.js +339 -164
  726. package/dist/shims/script-nonce-context.d.ts +8 -6
  727. package/dist/shims/script-nonce-context.js +15 -6
  728. package/dist/shims/script.d.ts +4 -4
  729. package/dist/shims/script.js +9 -7
  730. package/dist/shims/search-params-gate.d.ts +35 -0
  731. package/dist/shims/search-params-gate.js +32 -0
  732. package/dist/shims/server.d.ts +19 -51
  733. package/dist/shims/server.js +14 -28
  734. package/dist/shims/slot.d.ts +33 -15
  735. package/dist/shims/slot.js +41 -9
  736. package/dist/shims/streamed-icons.d.ts +3 -4
  737. package/dist/shims/thenable-params.d.ts +5 -7
  738. package/dist/shims/thenable-params.js +3 -24
  739. package/dist/shims/unified-request-context.d.ts +34 -31
  740. package/dist/shims/unified-request-context.js +34 -24
  741. package/dist/shims/unrecognized-action-error.d.ts +3 -4
  742. package/dist/shims/url-safety.d.ts +5 -6
  743. package/dist/shims/url-utils.d.ts +18 -12
  744. package/dist/shims/url-utils.js +10 -1
  745. package/dist/shims/use-merged-ref.d.ts +2 -3
  746. package/dist/shims/user-agent.d.ts +31 -0
  747. package/dist/shims/user-agent.js +16 -0
  748. package/dist/shims/web-vitals.d.ts +2 -2
  749. package/dist/typegen.d.ts +3 -4
  750. package/dist/utils/asset-prefix.d.ts +7 -8
  751. package/dist/utils/base-path.d.ts +5 -6
  752. package/dist/utils/built-asset-url.d.ts +2 -3
  753. package/dist/utils/built-asset-url.js +1 -1
  754. package/dist/utils/cache-control-metadata.d.ts +4 -5
  755. package/dist/utils/client-build-manifest.d.ts +6 -7
  756. package/dist/utils/client-build-manifest.js +2 -1
  757. package/dist/utils/client-entry-manifest.d.ts +6 -7
  758. package/dist/utils/client-runtime-metadata.d.ts +8 -3
  759. package/dist/utils/client-runtime-metadata.js +18 -1
  760. package/dist/utils/commonjs-loader.d.ts +4 -5
  761. package/dist/utils/compare.d.ts +2 -3
  762. package/dist/utils/deployment-id.d.ts +6 -7
  763. package/dist/utils/dev-error-recovery-event.d.ts +2 -3
  764. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
  765. package/dist/utils/domain-locale.d.ts +7 -8
  766. package/dist/utils/encode-cache-tag.d.ts +3 -4
  767. package/dist/utils/error-cause.d.ts +2 -3
  768. package/dist/utils/external-url.d.ts +2 -3
  769. package/dist/utils/has-trailing-comma.d.ts +3 -4
  770. package/dist/utils/hash.d.ts +3 -4
  771. package/dist/utils/html-limited-bots.d.ts +3 -4
  772. package/dist/utils/lazy-chunks.d.ts +8 -9
  773. package/dist/utils/lazy-chunks.js +4 -4
  774. package/dist/utils/manifest-paths.d.ts +5 -6
  775. package/dist/utils/mdx-scan.d.ts +11 -4
  776. package/dist/utils/mdx-scan.js +27 -1
  777. package/dist/utils/middleware-request-headers.d.ts +7 -6
  778. package/dist/utils/middleware-request-headers.js +6 -1
  779. package/dist/utils/navigation-signal.d.ts +3 -3
  780. package/dist/utils/navigation-signal.js +16 -1
  781. package/dist/utils/number.d.ts +2 -3
  782. package/dist/utils/package-name.d.ts +3 -4
  783. package/dist/utils/parse-cookie.d.ts +4 -5
  784. package/dist/utils/path.d.ts +8 -9
  785. package/dist/utils/plugin-options.d.ts +2 -3
  786. package/dist/utils/precompressed-variant.d.ts +3 -4
  787. package/dist/utils/prerender-output-paths.d.ts +9 -10
  788. package/dist/utils/prerender-output-paths.js +16 -9
  789. package/dist/utils/project.d.ts +19 -30
  790. package/dist/utils/project.js +20 -29
  791. package/dist/utils/promise.d.ts +2 -3
  792. package/dist/utils/protocol-headers.d.ts +14 -15
  793. package/dist/utils/public-file-path.d.ts +2 -3
  794. package/dist/utils/public-routes.d.ts +2 -3
  795. package/dist/utils/query.d.ts +14 -9
  796. package/dist/utils/query.js +22 -1
  797. package/dist/utils/react-compiler-support.d.ts +6 -7
  798. package/dist/utils/react-version.d.ts +4 -3
  799. package/dist/utils/react-version.js +19 -1
  800. package/dist/utils/record.d.ts +2 -3
  801. package/dist/utils/redirect-digest.d.ts +3 -4
  802. package/dist/utils/regex-safety.d.ts +4 -5
  803. package/dist/utils/regex.d.ts +2 -3
  804. package/dist/utils/safe-json-file.d.ts +2 -3
  805. package/dist/utils/sorted-array.d.ts +2 -3
  806. package/dist/utils/text-stream.d.ts +3 -4
  807. package/dist/utils/vinext-root.d.ts +2 -3
  808. package/dist/utils/virtual-module.d.ts +3 -4
  809. package/dist/utils/vite-cli-invocation.d.ts +21 -0
  810. package/dist/utils/vite-cli-invocation.js +144 -0
  811. package/dist/utils/vite-version.d.ts +5 -6
  812. package/next-package.json +4 -0
  813. package/package.json +55 -6
package/dist/cli.js CHANGED
@@ -1,34 +1,22 @@
1
1
  #!/usr/bin/env node
2
2
  import path, { toSlash } from "./deps/.pnpm/pathslash@0.1.0/deps/pathslash/dist/index.js";
3
- import { detectPackageManager, ensureViteConfigCompatibility, hasAppDir, hasViteConfig } from "./utils/project.js";
3
+ import { detectPackageManager, ensureViteConfigCompatibility, findViteConfigPath } from "./utils/project.js";
4
4
  import { formatReport, runCheck } from "./check.js";
5
5
  import { parseArgs } from "./cli-args.js";
6
- import { createDevServerConfigPlugin, normalizeDevServerHostname } from "./cli-dev-config.js";
7
- import { PHASE_PRODUCTION_BUILD } from "./shims/constants.js";
8
- import { createRscCompatibilityId, findVinextNextConfigInPlugins, loadNextConfig, resolveNextConfig, resolveNextConfigInput } from "./config/next-config.js";
9
- import { loadDotenv } from "./config/dotenv.js";
10
- import { generateRouteTypes } from "./typegen.js";
11
- import { clearPagesClientAssetsBuildMetadata } from "./build/pages-client-assets-module.js";
12
- import { runWithPreviewBuildCredentials } from "./build/preview-credentials.js";
13
- import { findVinextPrerenderConfigInPlugins, findVinextRouteRootConfigInPlugins, formatVinextPrerenderLabel, resolveVinextPrerenderDecision } from "./config/prerender.js";
14
- import vinext from "./index.js";
15
- import { runPrerender } from "./build/run-prerender.js";
16
- import { emitPrerenderPathManifest } from "./build/prerender-paths.js";
17
- import { getReactUpgradeDeps } from "./utils/react-version.js";
6
+ import { findViteRoot, getViteCliInvocation, valueOptionName } from "./utils/vite-cli-invocation.js";
18
7
  import { init } from "./init.js";
19
8
  import { resolveInitOptions } from "./init-platform.js";
20
- import { resolveVinextPackageRoot } from "./utils/vinext-root.js";
21
- import { emitStandaloneOutput } from "./build/standalone.js";
22
- import { cleanBuildOutput } from "./build/clean-output.js";
23
- import { formatAlreadyRunningError, tryAcquireLockfile } from "./server/dev-lockfile.js";
9
+ import { loadDotenv } from "./config/dotenv.js";
10
+ import { PHASE_PRODUCTION_BUILD } from "./shims/constants.js";
11
+ import { loadNextConfig, resolveNextConfig } from "./config/next-config.js";
12
+ import { generateRouteTypes } from "./typegen.js";
24
13
  import { createRequire } from "node:module";
25
14
  import fs from "node:fs";
26
15
  import { pathToFileURL } from "node:url";
27
- import { randomBytes } from "node:crypto";
28
16
  import { execFileSync } from "node:child_process";
29
17
  //#region src/cli.ts
30
18
  /**
31
- * vinext CLI — drop-in replacement for the `next` command
19
+ * vinext CLI — migration and compatibility commands for vinext projects
32
20
  *
33
21
  * vinext dev Start development server (Vite)
34
22
  * vinext build Build for production
@@ -36,379 +24,103 @@ import { execFileSync } from "node:child_process";
36
24
  * vinext typegen Generate App Router route helper types
37
25
  * vinext lint Run linter (delegates to eslint/oxlint)
38
26
  *
39
- * Automatically configures Vite with the vinext plugin — no vite.config.ts
40
- * needed for most Next.js apps.
41
- */
42
- let _viteModule = null;
43
- /**
44
- * Dynamically load Vite from the project root. Falls back to the bundled
45
- * copy if the project doesn't have its own Vite installation.
46
- */
47
- async function loadVite() {
48
- if (_viteModule) return _viteModule;
49
- const projectRoot = process.cwd();
50
- let vitePath;
51
- try {
52
- vitePath = createRequire(path.join(projectRoot, "package.json")).resolve("vite");
53
- } catch {
54
- vitePath = "vite";
55
- }
56
- const vite = await (vitePath === "vite" ? import(vitePath) : import(pathToFileURL(vitePath).href));
57
- _viteModule = vite;
58
- return vite;
59
- }
60
- /**
61
- * Get the Vite version string. Returns "unknown" before loadVite() is called.
27
+ * The dev and build commands delegate to the project-local Vite CLI.
62
28
  */
63
- function getViteVersion() {
64
- return _viteModule?.version ?? "unknown";
65
- }
66
29
  const VERSION = JSON.parse(fs.readFileSync(new URL("../package.json", import.meta.url), "utf-8")).version;
67
30
  const command = process.argv[2];
68
31
  const rawArgs = process.argv.slice(3);
69
- /**
70
- * Create a custom Vite logger for build output.
71
- *
72
- * By default Vite/Rollup emit a lot of build noise: version banners, progress
73
- * lines, chunk size tables, minChunkSize diagnostics, and various internal
74
- * warnings that are either not actionable or already handled by vinext at
75
- * runtime. This logger suppresses all of that while keeping the things that
76
- * actually matter:
77
- *
78
- * KEPT
79
- * ✓ N modules transformed. — confirms the transform phase completed
80
- * ✓ built in Xs — build timing (useful perf signal)
81
- * Genuine warnings/errors — anything the user may need to act on
82
- *
83
- * SUPPRESSED (info)
84
- * vite vX.Y.Z building... — Vite version banner
85
- * transforming... / rendering chunks... / computing gzip size...
86
- * Initially, there are N chunks... — Rollup minChunkSize diagnostics
87
- * After merging chunks, there are...
88
- * X are below minChunkSize.
89
- * Blank lines
90
- * Chunk/asset size table rows — e.g. " dist/client/assets/foo.js 42 kB"
91
- * [rsc] / [ssr] / [client] / [worker] — RSC plugin env section headers
92
- *
93
- * SUPPRESSED (warn)
94
- * "dynamic import will not move module into another chunk" — internal chunking note
95
- * "X is not exported by virtual:vinext-*" — handled gracefully at runtime
96
- */
97
- function createBuildLogger(vite) {
98
- const logger = vite.createLogger("info", { allowClearScreen: false });
99
- const originalInfo = logger.info.bind(logger);
100
- const originalWarn = logger.warn.bind(logger);
101
- const strip = (s) => s.replace(/\x1b\[[0-9;]*m/g, "");
102
- logger.info = (msg, options) => {
103
- const plain = strip(msg);
104
- if (plain.trimStart().startsWith("✓")) {
105
- originalInfo(msg, options);
106
- return;
107
- }
108
- if (/^vite v\d/.test(plain.trim())) return;
109
- if (/^(transforming|rendering chunks|computing gzip size)/.test(plain.trim())) return;
110
- if (/^(Initially,|After merging|are below minChunkSize)/.test(plain.trim())) return;
111
- if (/^\s*$/.test(plain)) return;
112
- if (/^\s*(dist\/|\.\/)/.test(plain)) return;
113
- // @vitejs/plugin-rsc environment section headers ("[rsc]", "[ssr]", "[client]", "[worker]").
114
- if (/^\s*\[(rsc|ssr|client|worker)\]/.test(plain)) return;
115
- originalInfo(msg, options);
116
- };
117
- logger.warn = (msg, options) => {
118
- const plain = strip(msg);
119
- if (plain.includes("dynamic import will not move module into another chunk")) return;
120
- if (plain.includes("is not exported by") && plain.includes("virtual:vinext")) return;
121
- originalWarn(msg, options);
122
- };
123
- return logger;
124
- }
125
- function hasPagesDir() {
126
- return fs.existsSync(path.join(process.cwd(), "pages")) || fs.existsSync(path.join(process.cwd(), "src", "pages"));
127
- }
128
- async function loadBuildViteConfigMetadata(vite, root, mode) {
129
- if (!hasViteConfig(root)) return {
130
- nextConfig: null,
131
- prerenderConfig: null,
132
- routeRootConfig: null
133
- };
134
- const loaded = await vite.loadConfigFromFile({
135
- command: "build",
136
- mode
137
- }, void 0, root);
138
- const emptyOutDir = loaded?.config.build?.emptyOutDir;
139
- return {
140
- emptyOutDir: typeof emptyOutDir === "boolean" ? emptyOutDir : void 0,
141
- nextConfig: await findVinextNextConfigInPlugins(loaded?.config.plugins),
142
- prerenderConfig: await findVinextPrerenderConfigInPlugins(loaded?.config.plugins),
143
- routeRootConfig: await findVinextRouteRootConfigInPlugins(loaded?.config.plugins)
144
- };
32
+ const retiredVinextFlags = {
33
+ "-p": "This was a dev-server option; use --port with Vite dev instead.",
34
+ "-H": "This was a dev-server option; use --host with Vite dev instead.",
35
+ "--hostname": "This was a dev-server option; use --host with Vite dev instead.",
36
+ "--turbopack": "This was a no-op: vinext always uses Vite.",
37
+ "--experimental-https": "This was a no-op. Configure server.https in vite.config.ts for HTTPS.",
38
+ "--verbose": "Vite controls its own output; use --debug for more detail.",
39
+ "--prerender-all": "Configure vinext({ prerender: { routes: \"*\" } }) in vite.config.ts.",
40
+ "--prerender-concurrency": "Configure vinext({ prerender: { routes: \"*\", concurrency: 4 } }) in vite.config.ts.",
41
+ "--precompress": "Configure vinext({ precompress: true }) in vite.config.ts."
42
+ };
43
+ function rejectRetiredVinextFlags() {
44
+ for (const arg of rawArgs) {
45
+ if (arg === "--") break;
46
+ const flag = arg.split("=", 1)[0];
47
+ const reason = retiredVinextFlags[flag];
48
+ if (reason) throw new Error(`[vinext] ${flag} is no longer supported. ${reason}`);
49
+ }
145
50
  }
146
- /**
147
- * Build the Vite config automatically. If a vite.config.ts exists in the
148
- * project, Vite will merge our config with it (theirs takes precedence).
149
- * If there's no vite.config, this provides everything needed.
150
- */
151
- function buildViteConfig(overrides = {}, logger, mode) {
152
- if (hasViteConfig(process.cwd())) return {
153
- root: process.cwd(),
154
- ...mode ? { mode } : {},
155
- ...logger ? { customLogger: logger } : {},
156
- ...overrides
157
- };
158
- return {
159
- root: process.cwd(),
160
- ...mode ? { mode } : {},
161
- configFile: false,
162
- plugins: [vinext()],
163
- resolve: { dedupe: [
164
- "react",
165
- "react-dom",
166
- "react/jsx-runtime",
167
- "react/jsx-dev-runtime"
168
- ] },
169
- ...logger ? { customLogger: logger } : {},
170
- ...overrides
51
+ function configPreflight(command) {
52
+ const cwd = process.cwd();
53
+ const { root: positionalRoot, shouldPreflight } = findViteRoot(command, rawArgs);
54
+ const root = positionalRoot ? path.resolve(cwd, positionalRoot) : cwd;
55
+ if (!shouldPreflight) return { root };
56
+ let explicitConfig;
57
+ let explicitConfigCount = 0;
58
+ for (let index = 0; index < rawArgs.length; index += 1) {
59
+ const arg = rawArgs[index];
60
+ if (arg === "--") break;
61
+ if (valueOptionName(arg) !== "--config" && valueOptionName(arg) !== "-c") continue;
62
+ if (++explicitConfigCount > 1) return { root };
63
+ explicitConfig = arg.includes("=") ? arg.slice(arg.indexOf("=") + 1) : rawArgs[++index];
64
+ if (!explicitConfig || explicitConfig.startsWith("-")) return { root };
65
+ }
66
+ const configPath = explicitConfig ? path.resolve(cwd, explicitConfig) : findViteConfigPath(root);
67
+ if (configPath && fs.existsSync(configPath)) return {
68
+ root,
69
+ configPath
171
70
  };
71
+ throw new Error(`[vinext] No Vite config was found for this project. Run \`vinext init\` to create one, then retry \`vinext ${command}\`.`);
172
72
  }
173
- /**
174
- * Ensure the project's package.json has `"type": "module"` before Vite loads
175
- * the vite.config.ts. This prevents the esbuild CJS-bundling path that Vite
176
- * takes for projects without `"type": "module"`, which produces a `.mjs` temp
177
- * file containing `require()` calls — calls that fail on Node 22 when
178
- * targeting pure-ESM packages like `@cloudflare/vite-plugin`.
179
- *
180
- * This mirrors what `vinext init` does, but is applied lazily at dev/build
181
- * time for projects that were set up before `vinext init` added the step, or
182
- * that were migrated manually.
183
- */
184
- function applyViteConfigCompatibility(root) {
185
- const result = ensureViteConfigCompatibility(root);
186
- if (!result) return;
187
- for (const [oldName, newName] of result.renamed) console.warn(` [vinext] Renamed ${oldName} → ${newName} (required for "type": "module")`);
188
- if (result.addedTypeModule) console.warn(" [vinext] Added \"type\": \"module\" to package.json (required for Vite ESM config loading).\n Run `vinext init` to review all project configuration.");
189
- }
190
- async function dev() {
191
- const parsed = parseArgs(rawArgs);
192
- if (parsed.help) return printHelp("dev");
193
- loadDotenv({
194
- root: process.cwd(),
195
- mode: "development"
196
- });
197
- applyViteConfigCompatibility(process.cwd());
198
- const vite = await loadVite();
199
- const initialPort = parsed.port ?? 3e3;
200
- const initialHost = parsed.hostname ?? "localhost";
201
- let lockfile;
202
- const startedAt = Date.now();
203
- if (process.env.VINEXT_NO_DEV_LOCK !== "1") {
204
- const root = process.cwd();
205
- const initialDisplayHost = initialHost === "0.0.0.0" ? "localhost" : initialHost;
206
- const acquired = tryAcquireLockfile({
207
- root,
208
- info: {
209
- pid: process.pid,
210
- port: initialPort,
211
- hostname: initialHost,
212
- appUrl: `http://${initialDisplayHost}:${initialPort}`,
213
- startedAt,
214
- cwd: root
215
- }
216
- });
217
- if (!acquired.ok) {
218
- console.error("\n " + formatAlreadyRunningError({
219
- existing: acquired.existing,
220
- cwd: root,
221
- lockfilePath: acquired.lockfilePath
222
- }).replace(/\n/g, "\n ") + "\n");
223
- process.exit(1);
224
- }
225
- lockfile = acquired.lockfile;
226
- }
227
- console.log(`\n vinext dev (Vite ${getViteVersion()})\n`);
228
- const config = buildViteConfig();
229
- (config.plugins ??= []).push(createDevServerConfigPlugin(parsed));
230
- let server;
231
- try {
232
- server = await vite.createServer(config);
233
- const port = server.config.server.port ?? 3e3;
234
- const host = normalizeDevServerHostname(server.config.server.host);
235
- lockfile?.update({
236
- pid: process.pid,
237
- port,
238
- hostname: host,
239
- appUrl: `http://${host === "0.0.0.0" ? "localhost" : host}:${port}`,
240
- startedAt,
241
- cwd: process.cwd()
242
- });
243
- await server.listen();
244
- } catch (err) {
245
- lockfile?.release();
246
- throw err;
247
- }
248
- server.printUrls();
249
- if (lockfile) {
250
- const configuredPort = server.config.server.port ?? 3e3;
251
- const configuredHost = normalizeDevServerHostname(server.config.server.host);
252
- const resolved = server.resolvedUrls?.local[0];
253
- let actualPort = configuredPort;
254
- let appUrl;
255
- if (resolved) {
256
- appUrl = resolved.replace(/\/$/, "");
257
- try {
258
- const parsed = new URL(appUrl);
259
- actualPort = parsed.port ? Number.parseInt(parsed.port, 10) : actualPort;
260
- } catch {}
261
- } else {
262
- const address = server.httpServer?.address();
263
- actualPort = typeof address === "object" && address ? address.port : configuredPort;
264
- appUrl = `http://${configuredHost === "0.0.0.0" ? "localhost" : configuredHost}:${actualPort}`;
73
+ function resolveProjectViteCli(root) {
74
+ const cwd = process.cwd();
75
+ const candidates = /* @__PURE__ */ new Set([root, cwd]);
76
+ for (const candidate of candidates) {
77
+ const require = createRequire(path.join(candidate, "package.json"));
78
+ let packagePath;
79
+ try {
80
+ packagePath = require.resolve("vite/package.json");
81
+ } catch {
82
+ continue;
265
83
  }
266
- lockfile.update({
267
- pid: process.pid,
268
- port: actualPort,
269
- hostname: configuredHost,
270
- appUrl,
271
- startedAt,
272
- cwd: process.cwd()
273
- });
84
+ const packageRoot = path.dirname(packagePath);
85
+ const packageJson = JSON.parse(fs.readFileSync(packagePath, "utf-8"));
86
+ const bin = typeof packageJson.bin === "string" ? packageJson.bin : packageJson.bin?.vite;
87
+ const cliPath = bin ? path.resolve(packageRoot, bin) : path.join(path.dirname(require.resolve("vite")), "cli.js");
88
+ if (fs.existsSync(cliPath)) return cliPath;
274
89
  }
90
+ throw new Error("[vinext] Could not resolve the project-local Vite CLI. Run `vinext init` to install it.");
275
91
  }
276
- async function buildApp() {
277
- const parsed = parseArgs(rawArgs);
278
- if (parsed.help) return printHelp("build");
279
- const buildMode = parsed.mode ?? "production";
280
- if (!process.env.NODE_ENV) Reflect.set(process.env, "NODE_ENV", "production");
281
- if (parsed.precompress) process.env.VINEXT_PRECOMPRESS = "1";
282
- loadDotenv({
283
- root: process.cwd(),
284
- mode: buildMode
285
- });
286
- applyViteConfigCompatibility(process.cwd());
287
- const vite = await loadVite();
288
- const withBuildBundlerOptions = (bundlerOptions) => ({ rolldownOptions: bundlerOptions });
289
- console.log(`\n vinext build (Vite ${getViteVersion()})\n`);
290
- const root = toSlash(process.cwd());
291
- const isApp = hasAppDir(root);
292
- const buildConfigMetadata = await loadBuildViteConfigMetadata(vite, root, buildMode);
293
- const resolvedNextConfig = await resolveNextConfig(buildConfigMetadata.nextConfig ? await resolveNextConfigInput(buildConfigMetadata.nextConfig, PHASE_PRODUCTION_BUILD) : await loadNextConfig(root, PHASE_PRODUCTION_BUILD), root);
294
- process.env.__VINEXT_SHARED_BUILD_ID = resolvedNextConfig.buildId;
295
- process.env.__VINEXT_SHARED_RSC_COMPATIBILITY_ID = createRscCompatibilityId(resolvedNextConfig);
296
- if (!process.env.__VINEXT_SHARED_REVALIDATE_SECRET) process.env.__VINEXT_SHARED_REVALIDATE_SECRET = randomBytes(32).toString("hex");
297
- const outputMode = resolvedNextConfig.output;
298
- const distDir = path.resolve(root, "dist");
299
- if (outputMode === "standalone") {
300
- const vinextDistDir = path.join(resolveVinextPackageRoot(), "dist");
301
- if (!fs.existsSync(vinextDistDir)) {
302
- console.error(` Error: vinext dist/ not found at ${vinextDistDir}. Run \`pnpm run build\` in the vinext package first.`);
303
- process.exit(1);
304
- }
305
- }
306
- const logger = parsed.verbose ? vite.createLogger("info", { allowClearScreen: false }) : createBuildLogger(vite);
307
- if (isApp) {
308
- const reactUpgrade = getReactUpgradeDeps(process.cwd());
309
- if (reactUpgrade.length > 0) {
310
- const [pm, ...pmArgs] = detectPackageManager(process.cwd()).replace(/ -D$/, "").split(" ");
311
- console.log(" Upgrading React for RSC compatibility...");
312
- execFileSync(pm, [...pmArgs, ...reactUpgrade], {
313
- cwd: process.cwd(),
314
- stdio: "inherit",
315
- shell: process.platform === "win32"
92
+ async function proxyVite(command) {
93
+ console.warn(`[vinext] Tip: migrate from \`vinext ${command}\` to \`vite ${command}\`.`);
94
+ rejectRetiredVinextFlags();
95
+ const { root, configPath } = configPreflight(command);
96
+ const cliPath = resolveProjectViteCli(root);
97
+ process.argv = [
98
+ process.execPath,
99
+ cliPath,
100
+ command,
101
+ ...rawArgs
102
+ ];
103
+ if (configPath) {
104
+ const invocation = getViteCliInvocation();
105
+ if (invocation) {
106
+ if (!process.env.NODE_ENV) Reflect.set(process.env, "NODE_ENV", command === "build" ? "production" : invocation.mode === "test" ? "test" : "development");
107
+ loadDotenv({
108
+ root,
109
+ mode: invocation.mode
316
110
  });
317
111
  }
318
- }
319
- cleanBuildOutput({
320
- root,
321
- outDir: distDir,
322
- emptyOutDir: buildConfigMetadata.emptyOutDir
323
- });
324
- const isHybrid = isApp && hasPagesDir();
325
- const pagesClientAssetsBuildSession = isHybrid ? randomBytes(16).toString("hex") : null;
326
- if (pagesClientAssetsBuildSession) process.env.__VINEXT_PAGES_CLIENT_ASSETS_BUILD_SESSION = pagesClientAssetsBuildSession;
327
- await runWithPreviewBuildCredentials(async () => {
328
- try {
329
- const config = buildViteConfig({}, logger, buildMode);
330
- await (await vite.createBuilder(config)).buildApp();
331
- if (isHybrid) {
332
- console.log(" Building Pages Router server (hybrid)...");
333
- const root = process.cwd();
334
- let userTransformPlugins = [];
335
- if (hasViteConfig(process.cwd())) {
336
- const loaded = await vite.loadConfigFromFile({
337
- command: "build",
338
- mode: buildMode,
339
- isSsrBuild: true
340
- }, void 0, root);
341
- if (loaded?.config.plugins) userTransformPlugins = loaded.config.plugins.flat(Infinity).filter((p) => !!p && typeof p.name === "string" && !p.name.startsWith("vinext:") && !p.name.startsWith("vite:react") && !p.name.startsWith("rsc:") && p.name !== "vite-rsc-load-module-dev-proxy" && !p.name.startsWith("vite-plugin-cloudflare"));
342
- }
343
- await vite.build({
344
- root,
345
- mode: buildMode,
346
- configFile: false,
347
- plugins: [...userTransformPlugins, vinext({ disableAppRouter: true })],
348
- resolve: { dedupe: [
349
- "react",
350
- "react-dom",
351
- "react/jsx-runtime",
352
- "react/jsx-dev-runtime"
353
- ] },
354
- ...logger ? { customLogger: logger } : {},
355
- build: {
356
- outDir: "dist/server",
357
- emptyOutDir: false,
358
- ssr: "virtual:vinext-server-entry",
359
- ...withBuildBundlerOptions({ output: { entryFileNames: "entry.js" } })
360
- }
361
- });
362
- }
363
- } finally {
364
- if (pagesClientAssetsBuildSession) {
365
- clearPagesClientAssetsBuildMetadata(pagesClientAssetsBuildSession);
366
- if (process.env.__VINEXT_PAGES_CLIENT_ASSETS_BUILD_SESSION === pagesClientAssetsBuildSession) delete process.env.__VINEXT_PAGES_CLIENT_ASSETS_BUILD_SESSION;
112
+ if (configPath === findViteConfigPath(root)) {
113
+ const migrated = ensureViteConfigCompatibility(root);
114
+ if (migrated) {
115
+ for (const [oldName, newName] of migrated.renamed) console.warn(` [vinext] Renamed ${oldName} → ${newName} (required for "type": "module")`);
116
+ console.warn(" [vinext] Added \"type\": \"module\" to package.json (required for Vite ESM config loading).\n Run `vinext init` to review all project configuration.");
367
117
  }
368
118
  }
369
- });
370
- if (outputMode === "standalone") {
371
- const standalone = emitStandaloneOutput({
372
- root: process.cwd(),
373
- outDir: distDir
374
- });
375
- console.log(` Generated standalone output in ${path.relative(process.cwd(), standalone.standaloneDir)}/`);
376
- console.log(" Start it with: node dist/standalone/server.js\n");
377
- return process.exit(0);
378
- }
379
- let prerenderResult;
380
- const prerenderDecision = resolveVinextPrerenderDecision({
381
- prerenderAllFlag: parsed.prerenderAll,
382
- vinextPrerenderConfig: buildConfigMetadata.prerenderConfig,
383
- nextOutput: resolvedNextConfig.output
384
- });
385
- if (prerenderDecision) {
386
- if (resolvedNextConfig.enablePrerenderSourceMaps) {
387
- process.setSourceMapsEnabled(true);
388
- Error.stackTraceLimit = Math.max(Error.stackTraceLimit, 50);
389
- }
390
- process.stdout.write("\x1B[0m");
391
- console.log(` ${formatVinextPrerenderLabel(prerenderDecision)}`);
392
- prerenderResult = await runPrerender({
393
- root,
394
- concurrency: parsed.prerenderConcurrency,
395
- nextConfig: resolvedNextConfig
396
- });
397
- await emitPrerenderPathManifest({
398
- root,
399
- nextConfig: resolvedNextConfig,
400
- routeRootConfig: buildConfigMetadata.routeRootConfig
401
- });
402
119
  }
403
- process.stdout.write("\x1B[0m");
404
- const { printBuildReport } = await import("./build/report.js");
405
- await printBuildReport({
406
- root,
407
- pageExtensions: resolvedNextConfig.pageExtensions,
408
- prerenderResult: prerenderResult ?? void 0
409
- });
410
- console.log("\n Build complete. Run `vinext start` to start the production server.\n");
411
- process.exit(0);
120
+ await import(
121
+ /* @vite-ignore */
122
+ pathToFileURL(cliPath).href
123
+ );
412
124
  }
413
125
  async function start() {
414
126
  const parsed = parseArgs(rawArgs);
@@ -487,9 +199,10 @@ async function typegen() {
487
199
  root,
488
200
  mode: "production"
489
201
  });
202
+ const resolvedNextConfig = await resolveNextConfig(await loadNextConfig(root, PHASE_PRODUCTION_BUILD), root);
490
203
  const result = await generateRouteTypes({
491
204
  root,
492
- pageExtensions: (await resolveNextConfig(await loadNextConfig(root, PHASE_PRODUCTION_BUILD), root)).pageExtensions
205
+ pageExtensions: resolvedNextConfig.pageExtensions
493
206
  });
494
207
  const nextEnvMessage = result.nextEnvStatus === "unchanged" ? `${path.relative(root, result.nextEnvPath)} is up to date` : `${result.nextEnvStatus === "created" ? "Created" : "Updated"} ${path.relative(root, result.nextEnvPath)}`;
495
208
  console.log(`\n Generated route types at ${path.relative(root, result.routeTypesPath)}\n ${nextEnvMessage}\n`);
@@ -498,55 +211,21 @@ async function initCommand() {
498
211
  const parsed = parseArgs(rawArgs);
499
212
  if (parsed.help) return printHelp("init");
500
213
  console.log(`\n vinext init\n`);
501
- const port = parsed.port ?? 3001;
502
214
  const skipCheck = rawArgs.includes("--skip-check");
503
215
  const force = rawArgs.includes("--force");
216
+ const install = !rawArgs.includes("--no-install");
504
217
  const initOptions = await resolveInitOptions(rawArgs);
505
218
  await init({
506
219
  root: process.cwd(),
507
- port,
220
+ port: parsed.port,
508
221
  skipCheck,
222
+ skipCssModules: rawArgs.includes("--skip-css-modules"),
509
223
  force,
224
+ install,
510
225
  ...initOptions
511
226
  });
512
227
  }
513
228
  function printHelp(cmd) {
514
- if (cmd === "dev") {
515
- console.log(`
516
- vinext dev - Start development server
517
-
518
- Usage: vinext dev [options]
519
-
520
- Options:
521
- -p, --port <port> Port to listen on (default: 3000)
522
- -H, --hostname <host> Hostname to bind to (default: localhost)
523
- --turbopack Accepted for compatibility (no-op, Vite is always used)
524
- -h, --help Show this help
525
- `);
526
- return;
527
- }
528
- if (cmd === "build") {
529
- console.log(`
530
- vinext build - Build for production
531
-
532
- Usage: vinext build [options]
533
-
534
- Automatically detects App Router (app/) or Pages Router (pages/) and
535
- runs the appropriate multi-environment build via Vite.
536
- If next.config sets output: "standalone", also emits dist/standalone/server.js.
537
-
538
- Options:
539
- --verbose Show full Vite/Rollup build output (suppressed by default)
540
- --prerender-all Pre-render discovered routes after building. Equivalent
541
- to vinext({ prerender: true }) and takes priority.
542
- --prerender-concurrency <count>
543
- Maximum number of routes to pre-render in parallel
544
- --mode <mode> Load .env.<mode>* files and pass mode to Vite
545
- --precompress Precompress static assets at build time (.br, .gz, .zst)
546
- -h, --help Show this help
547
- `);
548
- return;
549
- }
550
229
  if (cmd === "start") {
551
230
  console.log(`
552
231
  vinext start - Start production server
@@ -591,18 +270,23 @@ function printHelp(cmd) {
591
270
  setup continues to work alongside vinext.
592
271
 
593
272
  Options:
594
- -p, --port <port> Dev server port for the vinext script (default: 3001)
273
+ -p, --port <port> Dev server port for the generated Vite script (default: 3001)
595
274
  --skip-check Skip the compatibility check step
275
+ --no-install Update dependency entries without installing them
596
276
  --force Overwrite existing vite.config.ts
597
277
  --platform <target> Deployment target: cloudflare or node
598
- --prerender Configure vinext build to pre-render all static routes
599
- (default: prompt, with No selected by default)
600
- --experimental-warm-cdn-cache
601
- Add experimental CDN pre-warming to the Cloudflare deploy script
602
- (Workers Cache CDN only, default: prompt with No)
603
- --cdn-cache <type> Cloudflare CDN cache: workers-cache or data-cache
604
- (default: workers-cache)
605
- --data-cache <type> Cloudflare data cache: kv or none (default: kv)
278
+ --prerender Configure Vite builds to pre-render static routes
279
+ (Cloudflare deploy won't serve them unless using Static Assets)
280
+ --warm-cache Add cache warming to the Cloudflare deploy script
281
+ (Response Store or Workers Cache, default: prompt with No)
282
+ --legacy-wrangler-cloudflare-init
283
+ Use the legacy Wrangler setup instead of cf
284
+ --cdn-cache <type> Cloudflare CDN cache: none, response-store, workers-cache,
285
+ static-assets, or data-cache
286
+ (default: none; response-store is the default cache choice)
287
+ --response-store-mode <type>
288
+ Workers Response Store mode: service-binding or self-contained
289
+ --data-cache <type> Cloudflare data cache: kv or none
606
290
  --image-optimization <type>
607
291
  Cloudflare image optimization: cloudflare-images or none
608
292
  -h, --help Show this help
@@ -610,15 +294,20 @@ function printHelp(cmd) {
610
294
  Examples:
611
295
  vinext init Prompt for a deployment platform
612
296
  vinext init --platform=cloudflare Configure Cloudflare Workers (default)
297
+ vinext init --platform=cloudflare --cdn-cache=response-store
298
+ Configure Workers Response Store (recommended)
613
299
  vinext init --platform=cloudflare --cdn-cache=data-cache
614
300
  Fall through CDN caching to the data cache
301
+ vinext init --platform=cloudflare --cdn-cache=static-assets
302
+ Package prerendered routes as read-only Static Assets
615
303
  vinext init --platform=cloudflare --data-cache=kv
616
304
  Configure the default Cloudflare cache handlers
617
305
  vinext init --platform=cloudflare --image-optimization=none
618
306
  Do not configure Cloudflare Images
619
- vinext init --prerender Add prerender: { routes: "*" } to vite.config.ts
620
- vinext init --experimental-warm-cdn-cache
621
- Add experimental CDN pre-warming to deploy:vinext
307
+ vinext init --platform=node --prerender
308
+ Add prerender: { routes: "*" } to vite.config.ts
309
+ vinext init --warm-cache
310
+ Add cache warming to deploy:vinext
622
311
  vinext init --platform=node Configure a Node deployment
623
312
  vinext init -p 4000 Use port 4000 for dev:vinext
624
313
  vinext init --force Overwrite existing vite.config.ts
@@ -675,7 +364,7 @@ function printHelp(cmd) {
675
364
 
676
365
  Examples:
677
366
  vinext dev Start dev server on port 3000
678
- vinext dev -p 4000 Start dev server on port 4000
367
+ vinext dev --port 4000 Start dev server on port 4000
679
368
  vinext build Build for production
680
369
  vinext typegen Generate route helper types
681
370
  vinext start Start production server
@@ -685,8 +374,8 @@ function printHelp(cmd) {
685
374
  npx @vinext/cloudflare deploy Deploy to Cloudflare Workers
686
375
  vp exec vinext-cloudflare deploy Deploy to Cloudflare Workers with Vite+
687
376
 
688
- vinext is a drop-in replacement for the \`next\` CLI.
689
- No vite.config.ts needed — just run \`vinext dev\` in your Next.js project.
377
+ The dev and build commands are thin proxies to the project-local Vite CLI.
378
+ Run \`vinext init\` first if the project does not have a Vite config.
690
379
  `);
691
380
  }
692
381
  if (command === "--version" || command === "-v") {
@@ -699,14 +388,14 @@ if (command === "--help" || command === "-h" || !command) {
699
388
  }
700
389
  switch (command) {
701
390
  case "dev":
702
- dev().catch((e) => {
703
- console.error(e);
391
+ proxyVite("dev").catch((error) => {
392
+ console.error(error instanceof Error ? error.message : error);
704
393
  process.exit(1);
705
394
  });
706
395
  break;
707
396
  case "build":
708
- buildApp().catch((e) => {
709
- console.error(e);
397
+ proxyVite("build").catch((error) => {
398
+ console.error(error instanceof Error ? error.message : error);
710
399
  process.exit(1);
711
400
  });
712
401
  break;