vinext 1.0.0-beta.9 → 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 (800) hide show
  1. package/README.md +150 -92
  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 +36 -11
  37. package/dist/build/prerender-paths.js +273 -97
  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 +65 -15
  43. package/dist/build/prerender.js +139 -43
  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 +24 -20
  49. package/dist/build/report.js +10 -2
  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 +6 -7
  62. package/dist/cache/cache-adapters-virtual.d.ts +60 -20
  63. package/dist/cache/cache-adapters-virtual.js +50 -7
  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 -442
  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 -10
  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 +2 -4
  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 +4 -5
  102. package/dist/entries/app-browser-entry.js +1 -3
  103. package/dist/entries/app-rsc-entry.d.ts +10 -3
  104. package/dist/entries/app-rsc-entry.js +502 -51
  105. package/dist/entries/app-rsc-manifest.d.ts +4 -3
  106. package/dist/entries/app-rsc-manifest.js +26 -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 +234 -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 +711 -189
  117. package/dist/init-cloudflare.d.ts +26 -17
  118. package/dist/init-cloudflare.js +710 -102
  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 +19 -6
  191. package/dist/routing/app-router.js +24 -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 +87 -34
  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 +8 -4
  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 +6 -2
  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-client-reference-preloader.d.ts +2 -3
  237. package/dist/server/app-elements-wire-key.d.ts +25 -0
  238. package/dist/server/app-elements-wire-key.js +69 -0
  239. package/dist/server/app-elements-wire.d.ts +34 -53
  240. package/dist/server/app-elements-wire.js +4 -75
  241. package/dist/server/app-elements.d.ts +5 -5
  242. package/dist/server/app-elements.js +1 -1
  243. package/dist/server/app-fallback-renderer.d.ts +4 -4
  244. package/dist/server/app-fallback-renderer.js +6 -6
  245. package/dist/server/app-fetch-tracing.d.ts +15 -0
  246. package/dist/server/app-fetch-tracing.js +38 -0
  247. package/dist/server/app-history-state.d.ts +26 -27
  248. package/dist/server/app-history-state.js +19 -11
  249. package/dist/server/app-hook-warning-suppression.d.ts +2 -3
  250. package/dist/server/app-hydration-cache-publication.d.ts +3 -4
  251. package/dist/server/app-inline-css-client.d.ts +3 -4
  252. package/dist/server/app-interception-context-header.d.ts +2 -3
  253. package/dist/server/app-layout-param-observation.d.ts +7 -8
  254. package/dist/server/app-metadata-tracing.d.ts +12 -0
  255. package/dist/server/app-metadata-tracing.js +17 -0
  256. package/dist/server/app-middleware.d.ts +7 -7
  257. package/dist/server/app-middleware.js +2 -3
  258. package/dist/server/app-mounted-slots-header.d.ts +2 -3
  259. package/dist/server/app-mounted-slots-header.js +2 -2
  260. package/dist/server/app-optimistic-routing.d.ts +10 -11
  261. package/dist/server/app-optimistic-routing.js +3 -2
  262. package/dist/server/app-page-boundary-render.d.ts +6 -6
  263. package/dist/server/app-page-boundary-render.js +10 -4
  264. package/dist/server/app-page-boundary.d.ts +9 -10
  265. package/dist/server/app-page-boundary.js +1 -1
  266. package/dist/server/app-page-cache-finalizer.d.ts +18 -9
  267. package/dist/server/app-page-cache-finalizer.js +51 -16
  268. package/dist/server/app-page-cache-render.d.ts +8 -5
  269. package/dist/server/app-page-cache-render.js +22 -5
  270. package/dist/server/app-page-cache.d.ts +28 -9
  271. package/dist/server/app-page-cache.js +95 -24
  272. package/dist/server/app-page-dispatch.d.ts +34 -12
  273. package/dist/server/app-page-dispatch.js +181 -64
  274. package/dist/server/app-page-element-builder.d.ts +13 -11
  275. package/dist/server/app-page-element-builder.js +104 -61
  276. package/dist/server/app-page-execution.d.ts +14 -14
  277. package/dist/server/app-page-execution.js +11 -7
  278. package/dist/server/app-page-head.d.ts +19 -16
  279. package/dist/server/app-page-head.js +25 -25
  280. package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
  281. package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
  282. package/dist/server/app-page-method.d.ts +5 -11
  283. package/dist/server/app-page-method.js +2 -9
  284. package/dist/server/app-page-params.d.ts +5 -6
  285. package/dist/server/app-page-ppr-runtime.d.ts +2 -2
  286. package/dist/server/app-page-probe.d.ts +5 -6
  287. package/dist/server/app-page-probe.js +5 -4
  288. package/dist/server/app-page-render-identity.d.ts +4 -5
  289. package/dist/server/app-page-render-observation.d.ts +8 -9
  290. package/dist/server/app-page-render-observation.js +1 -1
  291. package/dist/server/app-page-render.d.ts +41 -6
  292. package/dist/server/app-page-render.js +171 -25
  293. package/dist/server/app-page-request.d.ts +10 -9
  294. package/dist/server/app-page-request.js +16 -12
  295. package/dist/server/app-page-response.d.ts +20 -9
  296. package/dist/server/app-page-response.js +30 -12
  297. package/dist/server/app-page-route-wiring.d.ts +15 -15
  298. package/dist/server/app-page-route-wiring.js +31 -24
  299. package/dist/server/app-page-search-params-observation.d.ts +26 -5
  300. package/dist/server/app-page-search-params-observation.js +42 -6
  301. package/dist/server/app-page-segment-plan.d.ts +2 -3
  302. package/dist/server/app-page-segment-state.d.ts +11 -12
  303. package/dist/server/app-page-stream.d.ts +27 -11
  304. package/dist/server/app-page-stream.js +34 -6
  305. package/dist/server/app-page-tracing.d.ts +33 -0
  306. package/dist/server/app-page-tracing.js +49 -0
  307. package/dist/server/app-pages-bridge.d.ts +6 -6
  308. package/dist/server/app-pages-bridge.js +17 -4
  309. package/dist/server/app-post-middleware-context.d.ts +2 -3
  310. package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
  311. package/dist/server/app-ppr-fallback-shell-render.js +3 -2
  312. package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
  313. package/dist/server/app-prerender-endpoints.d.ts +5 -5
  314. package/dist/server/app-prerender-endpoints.js +3 -1
  315. package/dist/server/app-prerender-static-params.d.ts +15 -7
  316. package/dist/server/app-prerender-static-params.js +24 -9
  317. package/dist/server/app-render-dependency.d.ts +14 -13
  318. package/dist/server/app-render-dependency.js +5 -1
  319. package/dist/server/app-request-context.d.ts +3 -4
  320. package/dist/server/app-request-stage-context.d.ts +5 -0
  321. package/dist/server/app-request-stage-context.js +11 -0
  322. package/dist/server/app-request-stage-dispatch.d.ts +25 -0
  323. package/dist/server/app-request-stage-dispatch.js +54 -0
  324. package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
  325. package/dist/server/app-request-stage-independent-entry.js +115 -0
  326. package/dist/server/app-response-header-provenance.d.ts +13 -7
  327. package/dist/server/app-response-header-provenance.js +34 -1
  328. package/dist/server/app-response-stage-entry.d.ts +9 -0
  329. package/dist/server/app-response-stage-entry.js +87 -0
  330. package/dist/server/app-route-handler-cache.d.ts +2 -3
  331. package/dist/server/app-route-handler-cache.js +46 -34
  332. package/dist/server/app-route-handler-dispatch.d.ts +3 -3
  333. package/dist/server/app-route-handler-dispatch.js +68 -54
  334. package/dist/server/app-route-handler-execution.d.ts +17 -13
  335. package/dist/server/app-route-handler-execution.js +69 -18
  336. package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
  337. package/dist/server/app-route-handler-middleware-context.js +15 -0
  338. package/dist/server/app-route-handler-policy.d.ts +11 -11
  339. package/dist/server/app-route-handler-response.d.ts +9 -10
  340. package/dist/server/app-route-handler-response.js +2 -0
  341. package/dist/server/app-route-handler-runtime.d.ts +9 -10
  342. package/dist/server/app-route-handler-runtime.js +20 -16
  343. package/dist/server/app-route-module-loader.d.ts +6 -7
  344. package/dist/server/app-route-request-built-ins.d.ts +3 -4
  345. package/dist/server/app-route-tree-prefetch.d.ts +6 -7
  346. package/dist/server/app-route-tree-prefetch.js +2 -1
  347. package/dist/server/app-router-entry.d.ts +2 -0
  348. package/dist/server/app-router-entry.js +28 -8
  349. package/dist/server/app-rsc-cache-busting.d.ts +34 -27
  350. package/dist/server/app-rsc-cache-busting.js +14 -2
  351. package/dist/server/app-rsc-combined-handler.d.ts +9 -0
  352. package/dist/server/app-rsc-combined-handler.js +11 -0
  353. package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
  354. package/dist/server/app-rsc-error-handler.d.ts +12 -6
  355. package/dist/server/app-rsc-error-handler.js +15 -6
  356. package/dist/server/app-rsc-errors.d.ts +12 -9
  357. package/dist/server/app-rsc-errors.js +15 -13
  358. package/dist/server/app-rsc-handler.d.ts +31 -6
  359. package/dist/server/app-rsc-handler.js +411 -61
  360. package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
  361. package/dist/server/app-rsc-render-mode.d.ts +8 -9
  362. package/dist/server/app-rsc-request-normalization.d.ts +3 -3
  363. package/dist/server/app-rsc-request-normalization.js +2 -1
  364. package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
  365. package/dist/server/app-rsc-response-finalizer.js +6 -6
  366. package/dist/server/app-rsc-response-stage.d.ts +6 -0
  367. package/dist/server/app-rsc-response-stage.js +251 -0
  368. package/dist/server/app-rsc-route-matching.d.ts +3 -4
  369. package/dist/server/app-rsc-route-matching.js +3 -2
  370. package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
  371. package/dist/server/app-rsc-vary.d.ts +16 -0
  372. package/dist/server/app-rsc-vary.js +31 -0
  373. package/dist/server/app-segment-config.d.ts +119 -7
  374. package/dist/server/app-segment-config.js +242 -2
  375. package/dist/server/app-server-action-execution.d.ts +16 -12
  376. package/dist/server/app-server-action-execution.js +86 -33
  377. package/dist/server/app-ssr-entry.d.ts +14 -4
  378. package/dist/server/app-ssr-entry.js +61 -14
  379. package/dist/server/app-ssr-error-meta.d.ts +3 -4
  380. package/dist/server/app-ssr-error-meta.js +2 -1
  381. package/dist/server/app-ssr-router-instance.d.ts +2 -3
  382. package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
  383. package/dist/server/app-ssr-search-params-gate.js +54 -0
  384. package/dist/server/app-ssr-stream.d.ts +13 -9
  385. package/dist/server/app-ssr-stream.js +33 -7
  386. package/dist/server/app-static-generation.d.ts +4 -5
  387. package/dist/server/app-visited-response-cache.d.ts +11 -12
  388. package/dist/server/app-visited-response-cache.js +2 -2
  389. package/dist/server/app-worker-stages.d.ts +112 -0
  390. package/dist/server/app-worker-stages.js +105 -0
  391. package/dist/server/artifact-compatibility.d.ts +11 -12
  392. package/dist/server/before-interactive-head.d.ts +2 -3
  393. package/dist/server/bfcache-identity.d.ts +7 -8
  394. package/dist/server/cache-control.d.ts +35 -13
  395. package/dist/server/cache-control.js +71 -5
  396. package/dist/server/cache-headers.d.ts +3 -4
  397. package/dist/server/cache-proof.d.ts +75 -70
  398. package/dist/server/cache-proof.js +9 -1
  399. package/dist/server/cacheability-limits.d.ts +4 -5
  400. package/dist/server/cacheability-limits.js +2 -2
  401. package/dist/server/cacheability-manifest.d.ts +42 -16
  402. package/dist/server/cacheability-manifest.js +60 -10
  403. package/dist/server/cacheability-request.d.ts +37 -8
  404. package/dist/server/cacheability-request.js +159 -57
  405. package/dist/server/client-reuse-manifest.d.ts +17 -18
  406. package/dist/server/client-reuse-manifest.js +2 -2
  407. package/dist/server/client-trace-metadata.d.ts +9 -6
  408. package/dist/server/client-trace-metadata.js +27 -15
  409. package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
  410. package/dist/server/cloudflare-workers-tracing.js +8 -0
  411. package/dist/server/config-headers.d.ts +19 -5
  412. package/dist/server/config-headers.js +25 -11
  413. package/dist/server/cookie-utils.d.ts +2 -3
  414. package/dist/server/csp.d.ts +5 -6
  415. package/dist/server/default-global-error-module.d.ts +2 -3
  416. package/dist/server/default-global-not-found-module.d.ts +2 -3
  417. package/dist/server/default-not-found-module.d.ts +2 -3
  418. package/dist/server/defer-until-stream-consumed.d.ts +2 -3
  419. package/dist/server/defer-until-stream-consumed.js +2 -1
  420. package/dist/server/dev-initial-server-error.d.ts +3 -4
  421. package/dist/server/dev-initial-server-error.js +2 -1
  422. package/dist/server/dev-lockfile.d.ts +7 -8
  423. package/dist/server/dev-lockfile.js +4 -1
  424. package/dist/server/dev-module-runner.d.ts +2 -3
  425. package/dist/server/dev-origin-check.d.ts +5 -6
  426. package/dist/server/dev-route-files.d.ts +2 -3
  427. package/dist/server/dev-server.d.ts +4 -5
  428. package/dist/server/dev-server.js +130 -61
  429. package/dist/server/dev-stack-sourcemap.d.ts +7 -7
  430. package/dist/server/dev-stack-sourcemap.js +1 -1
  431. package/dist/server/document-initial-head.d.ts +3 -4
  432. package/dist/server/edge-api-runtime.d.ts +4 -5
  433. package/dist/server/fetch-handler.d.ts +3 -2
  434. package/dist/server/fetch-handler.js +3 -18
  435. package/dist/server/file-based-metadata.d.ts +2 -3
  436. package/dist/server/framework-tracer.d.ts +46 -0
  437. package/dist/server/framework-tracer.js +125 -0
  438. package/dist/server/fully-buffered-response.d.ts +11 -0
  439. package/dist/server/fully-buffered-response.js +19 -0
  440. package/dist/server/headers.d.ts +54 -61
  441. package/dist/server/headers.js +18 -31
  442. package/dist/server/html.d.ts +6 -27
  443. package/dist/server/html.js +16 -1
  444. package/dist/server/http-conditional.d.ts +5 -6
  445. package/dist/server/http-date.d.ts +2 -3
  446. package/dist/server/http-error-responses.d.ts +9 -10
  447. package/dist/server/http-range.d.ts +4 -5
  448. package/dist/server/hybrid-route-priority.d.ts +4 -5
  449. package/dist/server/image-optimization.d.ts +20 -21
  450. package/dist/server/implicit-tags.d.ts +3 -4
  451. package/dist/server/instrumentation-runtime.d.ts +17 -21
  452. package/dist/server/instrumentation-runtime.js +26 -8
  453. package/dist/server/instrumentation.d.ts +26 -30
  454. package/dist/server/instrumentation.js +18 -23
  455. package/dist/server/isr-cache.d.ts +28 -27
  456. package/dist/server/isr-cache.js +18 -70
  457. package/dist/server/isr-decision.d.ts +4 -4
  458. package/dist/server/metadata-route-build-data.d.ts +4 -5
  459. package/dist/server/metadata-route-cache-policy.d.ts +2 -3
  460. package/dist/server/metadata-route-response.d.ts +7 -7
  461. package/dist/server/metadata-route-response.js +68 -2
  462. package/dist/server/metadata-routes.d.ts +18 -19
  463. package/dist/server/middleware-matcher-pattern.d.ts +6 -7
  464. package/dist/server/middleware-matcher.d.ts +6 -7
  465. package/dist/server/middleware-path-to-regexp.d.ts +6 -7
  466. package/dist/server/middleware-path-to-regexp.js +11 -9
  467. package/dist/server/middleware-response-headers.d.ts +3 -4
  468. package/dist/server/middleware-runtime.d.ts +7 -8
  469. package/dist/server/middleware-runtime.js +36 -7
  470. package/dist/server/middleware.d.ts +5 -5
  471. package/dist/server/multi-stage.d.ts +141 -0
  472. package/dist/server/multi-stage.js +8 -0
  473. package/dist/server/navigation-planner.d.ts +26 -26
  474. package/dist/server/navigation-trace.d.ts +11 -12
  475. package/dist/server/next-error-digest.d.ts +4 -5
  476. package/dist/server/normalize-path.d.ts +5 -6
  477. package/dist/server/open-redirect.d.ts +2 -3
  478. package/dist/server/opentelemetry-api.d.ts +59 -0
  479. package/dist/server/opentelemetry-api.js +53 -0
  480. package/dist/server/opentelemetry-tracing.d.ts +5 -0
  481. package/dist/server/opentelemetry-tracing.js +83 -0
  482. package/dist/server/operation-token.d.ts +11 -12
  483. package/dist/server/otel-tracer-extension.d.ts +7 -9
  484. package/dist/server/otel-tracer-extension.js +37 -36
  485. package/dist/server/pages-api-route.d.ts +5 -4
  486. package/dist/server/pages-api-route.js +20 -7
  487. package/dist/server/pages-asset-tags.d.ts +6 -6
  488. package/dist/server/pages-asset-tags.js +37 -2
  489. package/dist/server/pages-body-parser-config.d.ts +4 -5
  490. package/dist/server/pages-body-parser-config.js +4 -4
  491. package/dist/server/pages-client-assets.d.ts +11 -5
  492. package/dist/server/pages-data-route.d.ts +11 -12
  493. package/dist/server/pages-data-route.js +1 -1
  494. package/dist/server/pages-default-404.d.ts +3 -4
  495. package/dist/server/pages-dev-hydration.d.ts +9 -4
  496. package/dist/server/pages-dev-hydration.js +19 -7
  497. package/dist/server/pages-dev-module-url.d.ts +3 -4
  498. package/dist/server/pages-dev-stylesheets.d.ts +5 -6
  499. package/dist/server/pages-document-asset-props.d.ts +6 -7
  500. package/dist/server/pages-document-initial-props.d.ts +5 -5
  501. package/dist/server/pages-document-initial-props.js +4 -2
  502. package/dist/server/pages-execution-tracing.d.ts +40 -0
  503. package/dist/server/pages-execution-tracing.js +80 -0
  504. package/dist/server/pages-get-initial-props.d.ts +9 -10
  505. package/dist/server/pages-i18n.d.ts +8 -8
  506. package/dist/server/pages-media-type.d.ts +4 -5
  507. package/dist/server/pages-node-compat.d.ts +11 -10
  508. package/dist/server/pages-node-compat.js +12 -4
  509. package/dist/server/pages-page-data.d.ts +18 -19
  510. package/dist/server/pages-page-data.js +11 -10
  511. package/dist/server/pages-page-handler.d.ts +7 -6
  512. package/dist/server/pages-page-handler.js +77 -39
  513. package/dist/server/pages-page-method.d.ts +2 -3
  514. package/dist/server/pages-page-response.d.ts +14 -10
  515. package/dist/server/pages-page-response.js +49 -31
  516. package/dist/server/pages-preview.d.ts +10 -11
  517. package/dist/server/pages-readiness.d.ts +2 -3
  518. package/dist/server/pages-request-pipeline.d.ts +14 -12
  519. package/dist/server/pages-request-pipeline.js +60 -30
  520. package/dist/server/pages-request-stage-entry.d.ts +23 -0
  521. package/dist/server/pages-request-stage-entry.js +314 -0
  522. package/dist/server/pages-response-stage-entry.d.ts +11 -0
  523. package/dist/server/pages-response-stage-entry.js +106 -0
  524. package/dist/server/pages-response-stage.d.ts +31 -0
  525. package/dist/server/pages-response-stage.js +49 -0
  526. package/dist/server/pages-revalidate.d.ts +3 -4
  527. package/dist/server/pages-revalidate.js +9 -4
  528. package/dist/server/pages-route-data-kind.d.ts +18 -0
  529. package/dist/server/pages-route-data-kind.js +11 -0
  530. package/dist/server/pages-router-entry.d.ts +1 -25
  531. package/dist/server/pages-router-entry.js +35 -148
  532. package/dist/server/pages-serializable-props.d.ts +3 -4
  533. package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
  534. package/dist/server/pregenerated-concrete-paths.js +12 -6
  535. package/dist/server/prerender-cache-life-header.d.ts +3 -4
  536. package/dist/server/prerender-manifest.d.ts +11 -11
  537. package/dist/server/prerender-manifest.js +6 -3
  538. package/dist/server/prerender-route-params.d.ts +16 -9
  539. package/dist/server/prerender-route-params.js +18 -3
  540. package/dist/server/prerender-work-unit-setup.d.ts +2 -3
  541. package/dist/server/prerender-work-unit-setup.js +5 -5
  542. package/dist/server/prod-server.d.ts +12 -9
  543. package/dist/server/prod-server.js +124 -31
  544. package/dist/server/proxy-trust.d.ts +5 -6
  545. package/dist/server/request-log.d.ts +3 -4
  546. package/dist/server/request-pipeline.d.ts +16 -16
  547. package/dist/server/request-pipeline.js +7 -2
  548. package/dist/server/request-stage.d.ts +5 -0
  549. package/dist/server/request-stage.js +7 -0
  550. package/dist/server/request-tracing.d.ts +22 -0
  551. package/dist/server/request-tracing.js +180 -0
  552. package/dist/server/response-stage-cacheability.d.ts +37 -0
  553. package/dist/server/response-stage-cacheability.js +55 -0
  554. package/dist/server/response-stage-policy.d.ts +23 -0
  555. package/dist/server/response-stage-policy.js +89 -0
  556. package/dist/server/response-stage.d.ts +5 -0
  557. package/dist/server/response-stage.js +7 -0
  558. package/dist/server/response-start-tracing.d.ts +14 -0
  559. package/dist/server/response-start-tracing.js +80 -0
  560. package/dist/server/revalidation-host.d.ts +2 -3
  561. package/dist/server/revalidation-host.js +1 -1
  562. package/dist/server/revalidation-request.d.ts +8 -0
  563. package/dist/server/revalidation-request.js +37 -0
  564. package/dist/server/rsc-completion-metadata.d.ts +6 -7
  565. package/dist/server/rsc-stream-hints.d.ts +18 -7
  566. package/dist/server/rsc-stream-hints.js +70 -35
  567. package/dist/server/seed-cache.d.ts +2 -3
  568. package/dist/server/seed-cache.js +8 -7
  569. package/dist/server/server-action-not-found.d.ts +5 -6
  570. package/dist/server/server-globals.d.ts +2 -3
  571. package/dist/server/skip-cache-proof.d.ts +4 -4
  572. package/dist/server/socket-error-backstop.d.ts +5 -6
  573. package/dist/server/socket-error-backstop.js +1 -1
  574. package/dist/server/static-file-cache.d.ts +5 -6
  575. package/dist/server/static-file-cache.js +9 -7
  576. package/dist/server/static-file-signal.d.ts +9 -6
  577. package/dist/server/static-file-signal.js +51 -2
  578. package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
  579. package/dist/server/streaming-metadata.d.ts +2 -3
  580. package/dist/server/tracer.d.ts +5 -0
  581. package/dist/server/tracer.js +13 -0
  582. package/dist/server/worker-prerender-discovery.d.ts +5 -6
  583. package/dist/server/worker-revalidation-context.d.ts +2 -3
  584. package/dist/server/worker-revalidation-context.js +5 -5
  585. package/dist/server/worker-stages.d.ts +43 -0
  586. package/dist/server/worker-stages.js +25 -0
  587. package/dist/server/worker-utils.d.ts +5 -6
  588. package/dist/server/worker-utils.js +2 -1
  589. package/dist/server/workers-tracing.d.ts +17 -0
  590. package/dist/server/workers-tracing.js +27 -0
  591. package/dist/shims/amp.d.ts +3 -4
  592. package/dist/shims/app-router-scroll-state.d.ts +9 -10
  593. package/dist/shims/app-router-scroll.d.ts +4 -5
  594. package/dist/shims/app-router-scroll.js +2 -1
  595. package/dist/shims/app.d.ts +5 -6
  596. package/dist/shims/before-interactive-context.d.ts +5 -6
  597. package/dist/shims/cache-callable-runtime.d.ts +44 -4
  598. package/dist/shims/cache-callable-runtime.js +168 -8
  599. package/dist/shims/cache-for-request.d.ts +2 -3
  600. package/dist/shims/cache-handler.d.ts +33 -20
  601. package/dist/shims/cache-handler.js +61 -2
  602. package/dist/shims/cache-request-state.d.ts +28 -29
  603. package/dist/shims/cache-runtime.d.ts +23 -21
  604. package/dist/shims/cache-runtime.js +107 -27
  605. package/dist/shims/cache.d.ts +15 -15
  606. package/dist/shims/cache.js +15 -13
  607. package/dist/shims/cacheability-classification.d.ts +49 -28
  608. package/dist/shims/cacheability-classification.js +27 -12
  609. package/dist/shims/cdn-cache-state.d.ts +13 -0
  610. package/dist/shims/cdn-cache-state.js +23 -0
  611. package/dist/shims/cdn-cache.d.ts +50 -21
  612. package/dist/shims/cdn-cache.js +15 -38
  613. package/dist/shims/client-hook-error.d.ts +3 -4
  614. package/dist/shims/client-locale.d.ts +2 -3
  615. package/dist/shims/client-page-root.d.ts +24 -0
  616. package/dist/shims/client-page-root.js +121 -0
  617. package/dist/shims/compat-router.d.ts +2 -3
  618. package/dist/shims/config.d.ts +3 -4
  619. package/dist/shims/constants.d.ts +73 -74
  620. package/dist/shims/constants.js +1 -1
  621. package/dist/shims/default-not-found.d.ts +2 -3
  622. package/dist/shims/document.d.ts +9 -9
  623. package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
  624. package/dist/shims/dynamic-preload-chunks.js +17 -13
  625. package/dist/shims/dynamic.d.ts +3 -3
  626. package/dist/shims/error-boundary-navigation.d.ts +3 -4
  627. package/dist/shims/error-boundary.d.ts +17 -18
  628. package/dist/shims/error-boundary.js +17 -11
  629. package/dist/shims/error.d.ts +4 -4
  630. package/dist/shims/error.react-server.d.ts +3 -4
  631. package/dist/shims/fetch-cache.d.ts +22 -22
  632. package/dist/shims/fetch-cache.js +42 -17
  633. package/dist/shims/font-google-base.d.ts +9 -9
  634. package/dist/shims/font-google-base.js +2 -1
  635. package/dist/shims/font-local.d.ts +3 -3
  636. package/dist/shims/font-local.js +1 -1
  637. package/dist/shims/font-utils.d.ts +14 -15
  638. package/dist/shims/form.d.ts +2 -2
  639. package/dist/shims/form.js +10 -7
  640. package/dist/shims/hash-scroll.d.ts +5 -6
  641. package/dist/shims/head-state.d.ts +4 -5
  642. package/dist/shims/head.d.ts +16 -16
  643. package/dist/shims/head.js +5 -4
  644. package/dist/shims/headers.d.ts +67 -33
  645. package/dist/shims/headers.js +93 -6
  646. package/dist/shims/i18n-context.d.ts +5 -6
  647. package/dist/shims/i18n-state.d.ts +4 -5
  648. package/dist/shims/image-config.d.ts +5 -6
  649. package/dist/shims/image-config.js +2 -0
  650. package/dist/shims/image.d.ts +5 -5
  651. package/dist/shims/image.js +12 -8
  652. package/dist/shims/internal/als-registry.d.ts +4 -5
  653. package/dist/shims/internal/api-utils.d.ts +3 -4
  654. package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
  655. package/dist/shims/internal/app-page-props-cache-key.js +53 -1
  656. package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
  657. package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
  658. package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
  659. package/dist/shims/internal/app-route-detection.d.ts +2 -2
  660. package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
  661. package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
  662. package/dist/shims/internal/app-router-context.d.ts +9 -10
  663. package/dist/shims/internal/cookie-serialize.d.ts +4 -5
  664. package/dist/shims/internal/format-url-object.d.ts +7 -0
  665. package/dist/shims/internal/format-url-object.js +53 -0
  666. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
  667. package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
  668. package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
  669. package/dist/shims/internal/interpolate-as.d.ts +5 -6
  670. package/dist/shims/internal/interpolate-as.js +4 -2
  671. package/dist/shims/internal/link-status-registry.d.ts +5 -6
  672. package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
  673. package/dist/shims/internal/navigation-untracked.d.ts +2 -3
  674. package/dist/shims/internal/normalize-router-href.d.ts +15 -0
  675. package/dist/shims/internal/normalize-router-href.js +41 -0
  676. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
  677. package/dist/shims/internal/pages-data-target.d.ts +8 -6
  678. package/dist/shims/internal/pages-data-target.js +32 -36
  679. package/dist/shims/internal/pages-data-url.d.ts +4 -5
  680. package/dist/shims/internal/pages-data-url.js +2 -1
  681. package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
  682. package/dist/shims/internal/pages-router-components.d.ts +3 -4
  683. package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
  684. package/dist/shims/internal/route-pattern-for-warning.js +3 -3
  685. package/dist/shims/internal/router-context.d.ts +2 -3
  686. package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
  687. package/dist/shims/internal/thenable-well-known-properties.js +33 -0
  688. package/dist/shims/internal/utils.d.ts +7 -8
  689. package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
  690. package/dist/shims/layout-segment-context.d.ts +3 -4
  691. package/dist/shims/link-prefetch.d.ts +9 -10
  692. package/dist/shims/link.d.ts +4 -4
  693. package/dist/shims/link.js +56 -116
  694. package/dist/shims/metadata.d.ts +15 -16
  695. package/dist/shims/metadata.js +40 -36
  696. package/dist/shims/navigation-context-accessors.d.ts +9 -0
  697. package/dist/shims/navigation-context-accessors.js +19 -0
  698. package/dist/shims/navigation-context-state.d.ts +27 -18
  699. package/dist/shims/navigation-errors.d.ts +18 -19
  700. package/dist/shims/navigation-state.d.ts +6 -7
  701. package/dist/shims/navigation.d.ts +80 -68
  702. package/dist/shims/navigation.js +24 -16
  703. package/dist/shims/navigation.react-server.d.ts +9 -9
  704. package/dist/shims/offline.d.ts +2 -3
  705. package/dist/shims/og.d.ts +2 -2
  706. package/dist/shims/pages-router-runtime.d.ts +4 -5
  707. package/dist/shims/ppr-fallback-shell.d.ts +13 -14
  708. package/dist/shims/readonly-url-search-params.d.ts +2 -3
  709. package/dist/shims/request-context.d.ts +5 -6
  710. package/dist/shims/root-params.d.ts +14 -15
  711. package/dist/shims/router-state.d.ts +5 -6
  712. package/dist/shims/router-state.js +1 -1
  713. package/dist/shims/router.d.ts +22 -21
  714. package/dist/shims/router.js +339 -164
  715. package/dist/shims/script-nonce-context.d.ts +8 -6
  716. package/dist/shims/script-nonce-context.js +15 -6
  717. package/dist/shims/script.d.ts +4 -4
  718. package/dist/shims/script.js +9 -7
  719. package/dist/shims/search-params-gate.d.ts +35 -0
  720. package/dist/shims/search-params-gate.js +32 -0
  721. package/dist/shims/server.d.ts +19 -51
  722. package/dist/shims/server.js +14 -28
  723. package/dist/shims/slot.d.ts +33 -15
  724. package/dist/shims/slot.js +41 -9
  725. package/dist/shims/streamed-icons.d.ts +3 -4
  726. package/dist/shims/thenable-params.d.ts +5 -7
  727. package/dist/shims/thenable-params.js +3 -24
  728. package/dist/shims/unified-request-context.d.ts +34 -31
  729. package/dist/shims/unified-request-context.js +34 -24
  730. package/dist/shims/unrecognized-action-error.d.ts +3 -4
  731. package/dist/shims/url-safety.d.ts +5 -6
  732. package/dist/shims/url-utils.d.ts +12 -13
  733. package/dist/shims/use-merged-ref.d.ts +2 -3
  734. package/dist/shims/user-agent.d.ts +31 -0
  735. package/dist/shims/user-agent.js +16 -0
  736. package/dist/shims/web-vitals.d.ts +2 -2
  737. package/dist/typegen.d.ts +3 -4
  738. package/dist/utils/asset-prefix.d.ts +7 -8
  739. package/dist/utils/base-path.d.ts +5 -6
  740. package/dist/utils/built-asset-url.d.ts +2 -3
  741. package/dist/utils/built-asset-url.js +1 -1
  742. package/dist/utils/cache-control-metadata.d.ts +4 -5
  743. package/dist/utils/client-build-manifest.d.ts +6 -7
  744. package/dist/utils/client-build-manifest.js +2 -1
  745. package/dist/utils/client-entry-manifest.d.ts +6 -7
  746. package/dist/utils/client-runtime-metadata.d.ts +8 -3
  747. package/dist/utils/client-runtime-metadata.js +18 -1
  748. package/dist/utils/commonjs-loader.d.ts +4 -5
  749. package/dist/utils/compare.d.ts +2 -3
  750. package/dist/utils/deployment-id.d.ts +6 -7
  751. package/dist/utils/dev-error-recovery-event.d.ts +2 -3
  752. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
  753. package/dist/utils/domain-locale.d.ts +7 -8
  754. package/dist/utils/encode-cache-tag.d.ts +3 -4
  755. package/dist/utils/error-cause.d.ts +2 -3
  756. package/dist/utils/external-url.d.ts +2 -3
  757. package/dist/utils/has-trailing-comma.d.ts +3 -4
  758. package/dist/utils/hash.d.ts +3 -4
  759. package/dist/utils/html-limited-bots.d.ts +3 -4
  760. package/dist/utils/lazy-chunks.d.ts +8 -9
  761. package/dist/utils/lazy-chunks.js +4 -4
  762. package/dist/utils/manifest-paths.d.ts +5 -6
  763. package/dist/utils/mdx-scan.d.ts +11 -4
  764. package/dist/utils/mdx-scan.js +27 -1
  765. package/dist/utils/middleware-request-headers.d.ts +7 -6
  766. package/dist/utils/middleware-request-headers.js +6 -1
  767. package/dist/utils/navigation-signal.d.ts +3 -3
  768. package/dist/utils/navigation-signal.js +16 -1
  769. package/dist/utils/number.d.ts +2 -3
  770. package/dist/utils/package-name.d.ts +3 -4
  771. package/dist/utils/parse-cookie.d.ts +4 -5
  772. package/dist/utils/path.d.ts +8 -9
  773. package/dist/utils/plugin-options.d.ts +2 -3
  774. package/dist/utils/precompressed-variant.d.ts +3 -4
  775. package/dist/utils/prerender-output-paths.d.ts +4 -5
  776. package/dist/utils/project.d.ts +19 -30
  777. package/dist/utils/project.js +20 -29
  778. package/dist/utils/promise.d.ts +2 -3
  779. package/dist/utils/protocol-headers.d.ts +14 -15
  780. package/dist/utils/public-file-path.d.ts +2 -3
  781. package/dist/utils/public-routes.d.ts +2 -3
  782. package/dist/utils/query.d.ts +14 -9
  783. package/dist/utils/query.js +22 -1
  784. package/dist/utils/react-compiler-support.d.ts +6 -7
  785. package/dist/utils/react-version.d.ts +4 -3
  786. package/dist/utils/react-version.js +19 -1
  787. package/dist/utils/record.d.ts +2 -3
  788. package/dist/utils/redirect-digest.d.ts +3 -4
  789. package/dist/utils/regex-safety.d.ts +4 -5
  790. package/dist/utils/regex.d.ts +2 -3
  791. package/dist/utils/safe-json-file.d.ts +2 -3
  792. package/dist/utils/sorted-array.d.ts +2 -3
  793. package/dist/utils/text-stream.d.ts +3 -4
  794. package/dist/utils/vinext-root.d.ts +2 -3
  795. package/dist/utils/virtual-module.d.ts +3 -4
  796. package/dist/utils/vite-cli-invocation.d.ts +21 -0
  797. package/dist/utils/vite-cli-invocation.js +144 -0
  798. package/dist/utils/vite-version.d.ts +5 -6
  799. package/next-package.json +4 -0
  800. package/package.json +47 -6
@@ -1,10 +1,11 @@
1
- import { splitPathSegments } from "../routing/utils.js";
2
- import { addBasePathToPathname, hasBasePath, stripBasePath } from "../utils/base-path.js";
3
- import { parseEdgeRequestCookieHeader } from "../utils/parse-cookie.js";
4
1
  import { VINEXT_MW_CTX_HEADER } from "../utils/protocol-headers.js";
5
- import { ACTION_FORWARDED_HEADER, ACTION_REDIRECT_HEADER, ACTION_REDIRECT_STATUS_HEADER, ACTION_REDIRECT_TYPE_HEADER, ACTION_REVALIDATED_HEADER, NEXT_ROUTER_STATE_TREE_HEADER, VINEXT_RSC_VARY_HEADER } from "./headers.js";
6
2
  import { buildRequestHeadersFromMiddlewareResponse } from "../utils/middleware-request-headers.js";
3
+ import { parseEdgeRequestCookieHeader } from "../utils/parse-cookie.js";
7
4
  import { isExternalUrl } from "../utils/external-url.js";
5
+ import { splitPathSegments } from "../routing/utils.js";
6
+ import { addBasePathToPathname, hasBasePath, stripBasePath } from "../utils/base-path.js";
7
+ import { NEXT_ROUTER_STATE_TREE_HEADER, VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
8
+ import { ACTION_FORWARDED_HEADER, ACTION_REDIRECT_HEADER, ACTION_REDIRECT_STATUS_HEADER, ACTION_REDIRECT_TYPE_HEADER, ACTION_REVALIDATED_HEADER, VINEXT_RENDERED_PATH_AND_SEARCH_HEADER } from "./headers.js";
8
9
  import { internalServerErrorResponse, payloadTooLargeResponse } from "./http-error-responses.js";
9
10
  import { attachRequestCfMetadata, validateCsrfOrigin, validateServerActionPayload } from "./request-pipeline.js";
10
11
  import { APP_RSC_RENDER_MODE_NAVIGATION } from "./app-rsc-render-mode.js";
@@ -12,12 +13,12 @@ import { isDraftModeRequest, setHeadersContext } from "../shims/headers.js";
12
13
  import { _drainPendingRevalidations, getAndClearActionRevalidationKind } from "../shims/cache-request-state.js";
13
14
  import { setCurrentFetchCacheMode, setCurrentFetchRevalidate, setCurrentFetchSoftTags, setCurrentForceDynamicFetchDefault } from "../shims/fetch-cache.js";
14
15
  import { readStreamAsTextWithLimit } from "../utils/text-stream.js";
16
+ import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
15
17
  import { VINEXT_RSC_CONTENT_TYPE, applyRscCompatibilityIdHeader, createRscRequestUrl, stripRscCacheBustingSearchParam } from "./app-rsc-cache-busting.js";
16
18
  import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
17
19
  import { applyEdgeRuntimeHeader } from "./app-page-response.js";
18
20
  import { getNextErrorDigest, parseNextHttpErrorDigest, parseNextRedirectDigest } from "./next-error-digest.js";
19
21
  import { buildAppPageTags } from "./implicit-tags.js";
20
- import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
21
22
  import { getSetCookieName } from "./cookie-utils.js";
22
23
  import { createServerActionNotFoundResponse, getServerActionNotFoundMessage, isServerActionNotFoundError } from "./server-action-not-found.js";
23
24
  import { resolveAppPageNavigationParams } from "./app-page-element-builder.js";
@@ -69,16 +70,19 @@ function parseBoundProgressiveActionReference(body, referencePrefix) {
69
70
  };
70
71
  }
71
72
  function prepareActionPageRerenderContext(options) {
72
- if (options.dynamicConfig === "force-static" || options.dynamicConfig === "error") setHeadersContext(createStaticGenerationHeadersContext({
73
- draftModeEnabled: isDraftModeRequest(createActionRerenderRequest({
73
+ if (options.dynamicConfig === "force-static" || options.dynamicConfig === "error") {
74
+ const rerenderRequest = createActionRerenderRequest({
74
75
  draftModeCookie: options.draftModeCookie,
75
76
  request: options.request
76
- }), options.draftModeSecret),
77
- draftModeSecret: options.draftModeSecret,
78
- dynamicConfig: options.dynamicConfig,
79
- routeKind: "page",
80
- routePattern: options.routePattern
81
- }));
77
+ });
78
+ setHeadersContext(createStaticGenerationHeadersContext({
79
+ draftModeEnabled: isDraftModeRequest(rerenderRequest, options.draftModeSecret),
80
+ draftModeSecret: options.draftModeSecret,
81
+ dynamicConfig: options.dynamicConfig,
82
+ routeKind: "page",
83
+ routePattern: options.routePattern
84
+ }));
85
+ }
82
86
  return options.dynamicConfig === "force-static" ? new URLSearchParams() : options.searchParams;
83
87
  }
84
88
  function createActionRerenderRequest(options) {
@@ -320,8 +324,30 @@ function dedupePendingCookies(cookies) {
320
324
  function isAppServerActionFunction(action) {
321
325
  return typeof action === "function";
322
326
  }
323
- function normalizeError(error) {
324
- return error instanceof Error ? error : new Error(String(error));
327
+ function normalizeDevServerReferenceId(id) {
328
+ const exportSeparator = id.indexOf("#");
329
+ if (exportSeparator === -1) return id;
330
+ const moduleId = id.slice(0, exportSeparator);
331
+ const cacheTag = moduleId.indexOf("$$cache=");
332
+ return (cacheTag === -1 ? moduleId : moduleId.slice(0, cacheTag)) + id.slice(exportSeparator);
333
+ }
334
+ function requiresRegisteredServerReferenceMatch(actionId) {
335
+ const exportSeparator = actionId.indexOf("#");
336
+ if (exportSeparator === -1) return true;
337
+ return !/^[0-9a-f]{12}$/.test(actionId.slice(0, exportSeparator));
338
+ }
339
+ function matchesRegisteredServerReference(action, actionId) {
340
+ const registeredId = Reflect.get(action, "$$id");
341
+ if (typeof registeredId !== "string") return false;
342
+ const normalizedRegisteredId = normalizeDevServerReferenceId(registeredId);
343
+ const normalizedActionId = normalizeDevServerReferenceId(actionId);
344
+ if (normalizedRegisteredId === normalizedActionId) return true;
345
+ const registeredSeparator = normalizedRegisteredId.indexOf("#");
346
+ const actionSeparator = normalizedActionId.indexOf("#");
347
+ if (registeredSeparator === -1 || actionSeparator === -1) return false;
348
+ if (normalizedRegisteredId.slice(0, registeredSeparator) !== normalizedActionId.slice(0, actionSeparator)) return false;
349
+ const registeredExport = normalizedRegisteredId.slice(registeredSeparator + 1);
350
+ return !/^\$\$vinext_cache_[0-9a-f]{64}$/.test(registeredExport);
325
351
  }
326
352
  function getServerActionFailureMessage(error) {
327
353
  return error instanceof Error && error.message ? error.message : String(error);
@@ -457,14 +483,16 @@ function getActionHttpFallbackStatus(error) {
457
483
  function createServerActionErrorResponse(error, options) {
458
484
  options.getAndClearPendingCookies();
459
485
  console.error("[vinext] Server action error:", error);
460
- options.reportRequestError(normalizeError(error), {
486
+ options.reportRequestError(error, {
461
487
  path: options.cleanPathname,
462
488
  method: options.request.method,
463
489
  headers: Object.fromEntries(options.request.headers.entries())
464
490
  }, {
465
491
  routerKind: "App Router",
466
- routePath: options.cleanPathname,
467
- routeType: "action"
492
+ routePath: options.routePattern,
493
+ routeType: "action",
494
+ renderSource: "react-server-components-payload",
495
+ revalidateReason: void 0
468
496
  });
469
497
  options.clearRequestContext();
470
498
  return internalServerErrorResponse(process.env.NODE_ENV === "production" ? void 0 : "Server action failed: " + getServerActionFailureMessage(error));
@@ -539,6 +567,10 @@ async function handleProgressiveServerActionRequest(options) {
539
567
  });
540
568
  return null;
541
569
  }
570
+ if (directActionId && requiresRegisteredServerReferenceMatch(directActionId) && !matchesRegisteredServerReference(action, directActionId)) return createActionNotFoundResponse(directActionId, {
571
+ clearRequestContext: options.clearRequestContext,
572
+ getAndClearPendingCookies: options.getAndClearPendingCookies
573
+ });
542
574
  const decodedActionId = Reflect.get(action, "$$id");
543
575
  if (typeof decodedActionId === "string" && decodedActionId !== directActionId && options.forwardAction) {
544
576
  const forwardResponse = await options.forwardAction(decodedActionId);
@@ -561,14 +593,16 @@ async function handleProgressiveServerActionRequest(options) {
561
593
  actionFailed = true;
562
594
  if (!(getActionHttpFallbackStatus(error) !== null || isServerActionNotFoundError(error, null))) {
563
595
  console.error("[vinext] Server action error:", error);
564
- options.reportRequestError(normalizeError(error), {
596
+ options.reportRequestError(error, {
565
597
  path: options.cleanPathname,
566
598
  method: options.request.method,
567
599
  headers: Object.fromEntries(options.request.headers.entries())
568
600
  }, {
569
601
  routerKind: "App Router",
570
- routePath: options.cleanPathname,
571
- routeType: "action"
602
+ routePath: options.routePattern,
603
+ routeType: "action",
604
+ renderSource: "react-server-components-payload",
605
+ revalidateReason: void 0
572
606
  });
573
607
  }
574
608
  }
@@ -622,14 +656,16 @@ async function handleProgressiveServerActionRequest(options) {
622
656
  getAndClearActionRevalidationKind();
623
657
  options.getAndClearPendingCookies();
624
658
  console.error("[vinext] Server action payload parsing error:", error);
625
- options.reportRequestError(normalizeError(error), {
659
+ options.reportRequestError(error, {
626
660
  path: options.cleanPathname,
627
661
  method: options.request.method,
628
662
  headers: Object.fromEntries(options.request.headers.entries())
629
663
  }, {
630
664
  routerKind: "App Router",
631
- routePath: options.cleanPathname,
632
- routeType: "action"
665
+ routePath: options.routePattern,
666
+ routeType: "action",
667
+ renderSource: "react-server-components-payload",
668
+ revalidateReason: void 0
633
669
  });
634
670
  options.clearRequestContext();
635
671
  return internalServerErrorResponse(process.env.NODE_ENV === "production" ? void 0 : "Server action parsing failed: " + getServerActionFailureMessage(error));
@@ -651,14 +687,16 @@ async function handleProgressiveServerActionRequest(options) {
651
687
  async function renderFetchActionBodyExceededResponse(options) {
652
688
  const error = createBodyExceededError(options.maxActionBodySizeLabel);
653
689
  console.error("[vinext] Server action error:", error);
654
- options.reportRequestError(normalizeError(error), {
690
+ options.reportRequestError(error, {
655
691
  path: options.cleanPathname,
656
692
  method: options.request.method,
657
693
  headers: Object.fromEntries(options.request.headers.entries())
658
694
  }, {
659
695
  routerKind: "App Router",
660
- routePath: options.cleanPathname,
661
- routeType: "action"
696
+ routePath: options.currentRouteMatch?.route.pattern ?? options.cleanPathname,
697
+ routeType: "action",
698
+ renderSource: "react-server-components-payload",
699
+ revalidateReason: void 0
662
700
  });
663
701
  getAndClearActionRevalidationKind();
664
702
  options.getAndClearPendingCookies();
@@ -667,7 +705,10 @@ async function renderFetchActionBodyExceededResponse(options) {
667
705
  data: options.sanitizeErrorForClient(error)
668
706
  };
669
707
  const temporaryReferences = options.createTemporaryReferenceSet();
670
- const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, options.cleanPathname);
708
+ const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, options.currentRouteMatch?.route.pattern ?? options.cleanPathname, {
709
+ renderSource: "react-server-components-payload",
710
+ routeType: "action"
711
+ });
671
712
  const rscStream = await options.renderToReadableStream({ returnValue }, {
672
713
  temporaryReferences,
673
714
  onError: onRenderError
@@ -705,7 +746,7 @@ async function handleServerActionRscRequest(options) {
705
746
  });
706
747
  throw error;
707
748
  }
708
- if (!isAppServerActionFunction(loadedAction)) return createActionNotFoundResponse(options.actionId, {
749
+ if (!isAppServerActionFunction(loadedAction) || requiresRegisteredServerReferenceMatch(options.actionId) && !matchesRegisteredServerReference(loadedAction, options.actionId)) return createActionNotFoundResponse(options.actionId, {
709
750
  clearRequestContext: options.clearRequestContext,
710
751
  getAndClearPendingCookies: options.getAndClearPendingCookies
711
752
  });
@@ -735,7 +776,7 @@ async function handleServerActionRscRequest(options) {
735
776
  });
736
777
  throw error;
737
778
  }
738
- if (!isAppServerActionFunction(loadedAction)) return createActionNotFoundResponse(options.actionId, {
779
+ if (!isAppServerActionFunction(loadedAction) || requiresRegisteredServerReferenceMatch(options.actionId) && !matchesRegisteredServerReference(loadedAction, options.actionId)) return createActionNotFoundResponse(options.actionId, {
739
780
  clearRequestContext: options.clearRequestContext,
740
781
  getAndClearPendingCookies: options.getAndClearPendingCookies
741
782
  });
@@ -867,7 +908,10 @@ async function handleServerActionRscRequest(options) {
867
908
  const actionRevalidationKind = resolveActionRevalidationKind(actionPendingCookies.length > 0 || Boolean(actionDraftCookie));
868
909
  const isHttpFallback = actionStatus === 401 || actionStatus === 403 || actionStatus === 404;
869
910
  if (!isHttpFallback && (actionWasForwarded || actionRevalidationKind === ACTION_DID_NOT_REVALIDATE)) {
870
- const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, options.cleanPathname);
911
+ const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, options.currentRouteMatch?.route.pattern ?? options.cleanPathname, {
912
+ renderSource: "react-server-components-payload",
913
+ routeType: "action"
914
+ });
871
915
  const rscStream = await options.renderToReadableStream({ returnValue }, {
872
916
  temporaryReferences,
873
917
  onError: onRenderError
@@ -891,6 +935,7 @@ async function handleServerActionRscRequest(options) {
891
935
  const match = options.currentRouteMatch;
892
936
  let element;
893
937
  let errorPattern = match ? match.route.pattern : options.cleanPathname;
938
+ let renderedPathAndSearch = null;
894
939
  const actionRerenderIsRscRequest = true;
895
940
  if (match) {
896
941
  const { route: actionRoute, params: actionParams } = match;
@@ -920,6 +965,8 @@ async function handleServerActionRscRequest(options) {
920
965
  searchParams: actionRerenderSearchParams,
921
966
  params: resolvedActionNavigationParams
922
967
  });
968
+ const renderedSearch = options.searchParams.toString();
969
+ renderedPathAndSearch = renderedSearch ? `${options.cleanPathname}?${renderedSearch}` : options.cleanPathname;
923
970
  setCurrentFetchCacheMode(options.resolveRouteFetchCacheMode?.(actionRerenderTarget.route) ?? null);
924
971
  setCurrentFetchRevalidate(options.resolveRouteRevalidateSeconds?.(actionRerenderTarget.route) ?? null);
925
972
  setCurrentForceDynamicFetchDefault(actionRerenderDynamicConfig === "force-dynamic");
@@ -934,6 +981,7 @@ async function handleServerActionRscRequest(options) {
934
981
  route: actionRerenderTarget.route,
935
982
  searchParams: actionRerenderSearchParams,
936
983
  renderMode: APP_RSC_RENDER_MODE_NAVIGATION,
984
+ isForceStatic: actionRerenderDynamicConfig === "force-static",
937
985
  observeMetadataSearchParamsAccess: actionRerenderDynamicConfig !== "force-static",
938
986
  observePageSearchParamsAccess: actionRerenderDynamicConfig !== "force-static"
939
987
  });
@@ -943,7 +991,10 @@ async function handleServerActionRscRequest(options) {
943
991
  const actionRouteId = options.createPayloadRouteId(options.cleanPathname, null);
944
992
  element = options.createNotFoundElement(actionRouteId);
945
993
  }
946
- const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, errorPattern);
994
+ const onRenderError = options.createRscOnErrorHandler(options.request, options.cleanPathname, errorPattern, {
995
+ renderSource: "react-server-components-payload",
996
+ routeType: "action"
997
+ });
947
998
  const renderActionRerender = () => options.renderToReadableStream({
948
999
  root: element,
949
1000
  returnValue
@@ -960,6 +1011,7 @@ async function handleServerActionRscRequest(options) {
960
1011
  mergeMiddlewareResponseHeaders(actionHeaders, options.middlewareHeaders);
961
1012
  applyRscCompatibilityIdHeader(actionHeaders);
962
1013
  setActionRevalidatedHeader(actionHeaders, actionRevalidationKind);
1014
+ if (renderedPathAndSearch !== null) actionHeaders.set(VINEXT_RENDERED_PATH_AND_SEARCH_HEADER, encodeURIComponent(renderedPathAndSearch));
963
1015
  const actionResponse = createServerActionRscResponse(rscStream, {
964
1016
  status: options.middlewareStatus ?? actionStatus,
965
1017
  headers: actionHeaders
@@ -976,7 +1028,8 @@ async function handleServerActionRscRequest(options) {
976
1028
  clearRequestContext: options.clearRequestContext,
977
1029
  getAndClearPendingCookies: options.getAndClearPendingCookies,
978
1030
  reportRequestError: options.reportRequestError,
979
- request: options.request
1031
+ request: options.request,
1032
+ routePattern: options.currentRouteMatch?.route.pattern ?? options.cleanPathname
980
1033
  });
981
1034
  }
982
1035
  }
@@ -5,16 +5,16 @@ import { AppSsrRenderResult } from "./app-page-stream.js";
5
5
  import "../shims/navigation-server.js";
6
6
  import { ReactFormState } from "react-dom/client";
7
7
  //#region src/server/app-ssr-entry.d.ts
8
- type FontPreload = {
8
+ export type FontPreload = {
9
9
  href: string;
10
10
  type: string;
11
11
  };
12
- type FontData = {
12
+ export type FontData = {
13
13
  links?: string[];
14
14
  styles?: string[];
15
15
  preloads?: FontPreload[];
16
16
  };
17
- declare function handleSsr(rscStream: ReadableStream<Uint8Array>, navContext: NavigationContext | null, fontData?: FontData, options?: {
17
+ export declare function handleSsr(rscStream: ReadableStream<Uint8Array>, navContext: NavigationContext | null, fontData?: FontData, options?: {
18
18
  scriptNonce?: string;
19
19
  /** Pre-split side stream for embed+capture fusion. When provided,
20
20
  * rscStream is fed directly to createFromReadableStream (no internal tee).
@@ -33,6 +33,8 @@ declare function handleSsr(rscStream: ReadableStream<Uint8Array>, navContext: Na
33
33
  * SSR head. Undefined or empty disables emission entirely.
34
34
  */
35
35
  clientTraceMetadata?: readonly string[];
36
+ /** Private marker used to identify only this render's injected trace tags. */
37
+ clientTraceMetadataMarker?: string;
36
38
  /**
37
39
  * Maximum total length (in characters) of the preload `Link` header React
38
40
  * emits during SSR. `0` disables emission. From `reactMaxHeadersLength` in
@@ -42,6 +44,8 @@ declare function handleSsr(rscStream: ReadableStream<Uint8Array>, navContext: Na
42
44
  rootParams?: RootParams;
43
45
  /** Dev-only: original server error to surface in the browser overlay. */
44
46
  initialDevServerError?: unknown;
47
+ /** Report an SSR/Fizz render failure through instrumentation. */
48
+ onSsrError?: (error: unknown) => unknown;
45
49
  /** Mirror inline Flight chunks into Next.js's `self.__next_f` transport. */
46
50
  mirrorNextFlight?: boolean;
47
51
  /** When true, wait for the full React tree (including Suspense boundaries)
@@ -52,6 +56,12 @@ declare function handleSsr(rscStream: ReadableStream<Uint8Array>, navContext: Na
52
56
  isStaticGeneration?: boolean;
53
57
  /** `dynamic = "force-static"` suppresses the useSearchParams bailout. */
54
58
  isForceStatic?: boolean;
59
+ /**
60
+ * Production render that may be stored under a query-free key. SSR
61
+ * `useSearchParams()` waits on a per-request gate, and the navigation
62
+ * payload leaves the query for the browser to read.
63
+ */
64
+ isCacheCandidate?: boolean;
55
65
  fallbackToErrorDocumentOnShellError?: boolean;
56
66
  dynamicStaleTimeSeconds?: number;
57
67
  getInitialNavigationCacheMetadata?: () => InitialNavigationCacheMetadata;
@@ -60,4 +70,4 @@ declare const _default: {
60
70
  fetch(request: Request): Promise<Response>;
61
71
  };
62
72
  //#endregion
63
- export { FontData, FontPreload, _default as default, handleSsr };
73
+ export { _default as default };
@@ -4,24 +4,29 @@ import { isOpenRedirectShaped } from "./open-redirect.js";
4
4
  import { AppElementsWire } from "./app-elements-wire.js";
5
5
  import "./app-elements.js";
6
6
  import { isPprFallbackShellAbortError } from "../shims/ppr-fallback-shell.js";
7
+ import { onRenderDynamicLatched } from "../shims/headers.js";
7
8
  import { AppRouterContext } from "../shims/internal/app-router-context.js";
8
9
  import { appendAssetDeploymentIdQuery } from "../utils/deployment-id.js";
9
10
  import { withScriptNonce } from "../shims/script-nonce-context.js";
10
11
  import { createInlineScriptTag, createNonceAttribute, escapeHtmlAttr, safeJsonStringify } from "./html.js";
11
- import { getClientTraceMetadataHTML } from "./client-trace-metadata.js";
12
+ import { getClientTraceMetadataHTML, markClientTraceMetadataBlock } from "./client-trace-metadata.js";
13
+ import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
12
14
  import { setPagesClientAssets } from "./pages-client-assets.js";
13
15
  import { ServerInsertedHTMLContext, clearServerInsertedHTML, getBfcacheIdMapContext, registerServerInsertedHTMLCallback, renderServerInsertedHTML, setNavigationContext } from "../shims/navigation-context-state.js";
14
16
  import "../shims/navigation-server.js";
15
17
  import DefaultGlobalError from "../shims/default-global-error.js";
16
18
  import { BfcacheIdentityMapContext, ElementsContext, Slot } from "../shims/slot.js";
19
+ import { getNextErrorDigest } from "./next-error-digest.js";
17
20
  import { createSsrErrorMetaRenderer } from "./app-ssr-error-meta.js";
18
- import { createNavigationRuntimeRscMetadataScript, createRscEmbedTransform, createTickBufferedTransform, waitAtLeastOneReactRenderTask } from "./app-ssr-stream.js";
19
- import { deferUntilStreamConsumed } from "./defer-until-stream-consumed.js";
21
+ import { createClientPageSsrSearchParamsSource } from "./app-page-search-params-observation.js";
22
+ import { isAppRenderAbortError } from "./app-rsc-errors.js";
23
+ import { createNavigationRuntimeRenderedSearchScript, createNavigationRuntimeRscMetadataScript, createRscEmbedTransform, createTickBufferedTransform, waitAtLeastOneReactRenderTask } from "./app-ssr-stream.js";
20
24
  import { createInitialBfcacheMaps } from "./app-bfcache-identity.js";
21
25
  import { RSC_FORM_STATE_GLOBAL } from "./app-browser-hydration.js";
22
26
  import { createClientReferencePreloader } from "./app-client-reference-preloader.js";
23
27
  import { runWithRootParamsScope } from "../shims/root-params.js";
24
28
  import { runWithNavigationContext } from "../shims/navigation-state.js";
29
+ import { startCandidateSearchParamsGate } from "./app-ssr-search-params-gate.js";
25
30
  import { BeforeInteractiveContext } from "../shims/before-interactive-context.js";
26
31
  import { renderBeforeInteractiveInlineScripts } from "./before-interactive-head.js";
27
32
  import { createInitialDevServerErrorScript } from "./dev-initial-server-error.js";
@@ -151,7 +156,7 @@ function extractBootstrapModuleUrl(bootstrapScriptContent) {
151
156
  }
152
157
  function buildModulePreloadHtml(bootstrapModuleUrl, nonce) {
153
158
  if (!bootstrapModuleUrl) return "";
154
- return `<link rel="modulepreload"${createNonceAttribute(nonce)} href="${escapeHtmlAttr(bootstrapModuleUrl)}" />\n`;
159
+ return `<link rel="modulepreload"${createNonceAttribute(nonce)} href="${escapeHtmlAttr(bootstrapModuleUrl)}" crossorigin="${pagesClientAssets.crossOrigin ?? ""}" />\n`;
155
160
  }
156
161
  function buildHeadInjectionHtml(navContext, bootstrapModuleUrl, formState, insertedHTML, fontHTML, dynamicStaleTimeSeconds, searchParamsFromBrowser, scriptNonce) {
157
162
  const navPayload = {
@@ -166,19 +171,33 @@ function requireNavigationContext(navContext) {
166
171
  }
167
172
  async function handleSsr(rscStream, navContext, fontData, options) {
168
173
  return runWithNavigationContext(async () => {
174
+ const assetCrossOrigin = pagesClientAssets.crossOrigin ?? "";
175
+ const searchParamsGate = options?.isCacheCandidate === true && options.isStaticGeneration !== true && options.isForceStatic !== true ? startCandidateSearchParamsGate() : null;
176
+ let rendersDynamic = false;
177
+ const stopWatchingDynamic = searchParamsGate ? onRenderDynamicLatched(() => {
178
+ rendersDynamic = true;
179
+ }) : null;
180
+ const requiredNavigationContext = requireNavigationContext(navContext);
169
181
  const ssrNavigationContext = {
170
- ...requireNavigationContext(navContext),
182
+ ...requiredNavigationContext,
171
183
  isStaticGeneration: options?.isStaticGeneration,
172
- isForceStatic: options?.isForceStatic
184
+ isForceStatic: options?.isForceStatic,
185
+ searchParamsGate: searchParamsGate?.gate,
186
+ getClientPageSearchParams: createClientPageSsrSearchParamsSource(requiredNavigationContext.searchParams, {
187
+ isForceStatic: options?.isForceStatic,
188
+ isPprFallbackShell: options?.pprFallbackShellSignal !== void 0
189
+ })
173
190
  };
174
191
  await clientReferencePreloader.preload();
175
192
  setNavigationContext(ssrNavigationContext);
176
193
  clearServerInsertedHTML();
177
194
  const cleanup = () => {
195
+ stopWatchingDynamic?.();
178
196
  setNavigationContext(null);
179
197
  clearServerInsertedHTML();
180
198
  };
181
- return runWithRootParamsScope(options?.rootParams ?? {}, async () => {
199
+ const rootParams = options?.rootParams ?? {};
200
+ return runWithRootParamsScope(rootParams, async () => {
182
201
  try {
183
202
  let ssrStream;
184
203
  let rscEmbed;
@@ -199,10 +218,12 @@ async function handleSsr(rscStream, navContext, fontData, options) {
199
218
  getInitialNavigationCacheMetadata: options?.getInitialNavigationCacheMetadata
200
219
  });
201
220
  }
221
+ if (searchParamsGate) ssrStream = searchParamsGate.settleWhenConsumed(ssrStream);
202
222
  let flightRoot = null;
203
223
  function VinextFlightRoot() {
204
224
  for (const moduleUrl of pagesClientAssets.appBootstrapPreinitModules ?? []) preinitModule(moduleUrl, {
205
225
  as: "script",
226
+ crossOrigin: assetCrossOrigin,
206
227
  nonce: options?.scriptNonce
207
228
  });
208
229
  if (!flightRoot) flightRoot = createFromReadableStream(ssrStream);
@@ -224,7 +245,8 @@ async function handleSsr(rscStream, navContext, fontData, options) {
224
245
  const registerBeforeInteractiveInlineScript = (script) => {
225
246
  beforeInteractiveInlineScripts.push(script);
226
247
  };
227
- const ssrRoot = withScriptNonce(createElement(BeforeInteractiveContext.Provider, { value: registerBeforeInteractiveInlineScript }, ssrTree), options?.scriptNonce);
248
+ const treeWithBeforeInteractive = createElement(BeforeInteractiveContext.Provider, { value: registerBeforeInteractiveInlineScript }, ssrTree);
249
+ const ssrRoot = withScriptNonce(treeWithBeforeInteractive, options?.scriptNonce);
228
250
  const bootstrapModuleUrl = extractBootstrapModuleUrl(await import.meta.viteRsc.loadBootstrapScriptContent("index"));
229
251
  const errorMetaRenderer = createSsrErrorMetaRenderer({ basePath: options?.basePath });
230
252
  const pprFallbackShellSignal = options?.pprFallbackShellSignal;
@@ -232,7 +254,10 @@ async function handleSsr(rscStream, navContext, fontData, options) {
232
254
  const maxHeadersLength = options?.reactMaxHeadersLength ?? DEFAULT_REACT_MAX_HEADERS_LENGTH;
233
255
  const captureHeaders = maxHeadersLength > 0;
234
256
  const renderOptions = {
235
- bootstrapModules: bootstrapModuleUrl ? [bootstrapModuleUrl] : void 0,
257
+ bootstrapModules: bootstrapModuleUrl ? [{
258
+ src: bootstrapModuleUrl,
259
+ crossOrigin: assetCrossOrigin
260
+ }] : void 0,
236
261
  formState: options?.formState ?? null,
237
262
  nonce: options?.scriptNonce,
238
263
  onHeaders: captureHeaders ? (headers) => {
@@ -242,12 +267,17 @@ async function handleSsr(rscStream, navContext, fontData, options) {
242
267
  maxHeadersLength: captureHeaders ? maxHeadersLength : void 0,
243
268
  onError(error) {
244
269
  if (pprFallbackShellSignal && isPprFallbackShellAbortError(error)) return;
270
+ if (isAppRenderAbortError(error)) return void 0;
245
271
  errorMetaRenderer.capture(error);
246
- if (error && typeof error === "object" && "digest" in error) return String(error.digest);
272
+ const instrumentationDigest = options?.onSsrError?.(error);
273
+ if (typeof instrumentationDigest === "string") return instrumentationDigest;
274
+ const existingDigest = getNextErrorDigest(error);
275
+ if (existingDigest !== null) return existingDigest;
247
276
  if (process.env.NODE_ENV === "production" && error) return ssrErrorDigest(getErrorMessage(error) + (error instanceof Error ? error.stack ?? "" : ""));
248
277
  }
249
278
  };
250
279
  let htmlStream;
280
+ let renderComplete = Promise.resolve();
251
281
  let shellErrorRecovered = false;
252
282
  let shouldDelayInitialHtmlPull = false;
253
283
  if (pprFallbackShellSignal) {
@@ -263,6 +293,7 @@ async function handleSsr(rscStream, navContext, fontData, options) {
263
293
  let streamingHtmlStream;
264
294
  try {
265
295
  streamingHtmlStream = await renderToReadableStream(ssrRoot, { ...renderOptions });
296
+ renderComplete = streamingHtmlStream.allReady;
266
297
  if (options?.waitForAllReady === true) await streamingHtmlStream.allReady;
267
298
  else shouldDelayInitialHtmlPull = true;
268
299
  htmlStream = streamingHtmlStream;
@@ -281,23 +312,38 @@ async function handleSsr(rscStream, navContext, fontData, options) {
281
312
  const fontHTML = renderFontHtml(fontData, options?.scriptNonce, { includeStyles: !mergeFontStylesIntoInlineCss });
282
313
  let traceMetaHTML = null;
283
314
  const getTraceMetaHTML = () => {
284
- if (traceMetaHTML === null) traceMetaHTML = getClientTraceMetadataHTML(options?.clientTraceMetadata);
315
+ if (traceMetaHTML === null) traceMetaHTML = markClientTraceMetadataBlock(getClientTraceMetadataHTML(options?.clientTraceMetadata, options?.isStaticGeneration), options?.clientTraceMetadataMarker);
285
316
  return traceMetaHTML;
286
317
  };
287
318
  let didInjectHeadHTML = false;
319
+ let headHidQuery = false;
320
+ let didSendRenderedSearch = false;
321
+ const getRenderedSearchHTML = () => {
322
+ if (!headHidQuery || !rendersDynamic || didSendRenderedSearch) return "";
323
+ didSendRenderedSearch = true;
324
+ const search = ssrNavigationContext.searchParams.toString();
325
+ return createInlineScriptTag(createNavigationRuntimeRenderedSearchScript(search ? `?${search}` : ""), options?.scriptNonce);
326
+ };
288
327
  const getInsertedHTML = () => {
289
328
  const insertedHTML = renderInsertedHtml(renderServerInsertedHTML());
290
329
  const errorMetaHTML = errorMetaRenderer.flush();
291
330
  const initialDevServerErrorHTML = createInitialDevServerErrorScript(options?.initialDevServerError, options?.scriptNonce);
292
- if (didInjectHeadHTML) return insertedHTML + errorMetaHTML;
331
+ if (didInjectHeadHTML) return insertedHTML + errorMetaHTML + getRenderedSearchHTML();
293
332
  didInjectHeadHTML = true;
294
- return buildHeadInjectionHtml(ssrNavigationContext, bootstrapModuleUrl, options?.formState ?? null, insertedHTML + errorMetaHTML + getTraceMetaHTML() + initialDevServerErrorHTML, fontHTML, options?.dynamicStaleTimeSeconds, options?.isStaticGeneration === true ? options.isForceStatic !== true : void 0, options?.scriptNonce);
333
+ const hidesQuery = searchParamsGate !== null && searchParamsGate.gate.decision !== "real";
334
+ headHidQuery = hidesQuery;
335
+ const isSearchParamsFromBrowser = hidesQuery || (options?.isStaticGeneration === true ? options.isForceStatic !== true : void 0);
336
+ return buildHeadInjectionHtml(hidesQuery ? {
337
+ ...ssrNavigationContext,
338
+ searchParams: new URLSearchParams()
339
+ } : ssrNavigationContext, bootstrapModuleUrl, options?.formState ?? null, insertedHTML + errorMetaHTML + getTraceMetaHTML() + initialDevServerErrorHTML, fontHTML, options?.dynamicStaleTimeSeconds, isSearchParamsFromBrowser, options?.scriptNonce);
295
340
  };
296
341
  const getBeforeInteractiveHeadHTML = () => renderBeforeInteractiveInlineScripts(beforeInteractiveInlineScripts);
297
342
  if (shouldDelayInitialHtmlPull) await waitAtLeastOneReactRenderTask();
298
343
  return {
299
344
  htmlStream: deferUntilStreamConsumed(htmlStream.pipeThrough(createTickBufferedTransform(rscEmbed, getInsertedHTML, getBeforeInteractiveHeadHTML, inlineCssManifest, inlineCssFontStyles, inlineCssFontStyleFallbackHTML, options?.scriptNonce)), cleanup),
300
345
  metadataReady: Promise.resolve(),
346
+ renderComplete,
301
347
  capturedRscData: options?.capturedRscDataRef?.value ?? null,
302
348
  shellErrorRecovered,
303
349
  linkHeader: reactLinkHeader
@@ -310,7 +356,8 @@ async function handleSsr(rscStream, navContext, fontData, options) {
310
356
  });
311
357
  }
312
358
  var app_ssr_entry_default = { async fetch(request) {
313
- if (isOpenRedirectShaped(new URL(request.url).pathname)) return notFoundResponse();
359
+ const url = new URL(request.url);
360
+ if (isOpenRedirectShaped(url.pathname)) return notFoundResponse();
314
361
  const result = await (await import.meta.viteRsc.loadModule("rsc", "index")).default(request);
315
362
  if (result instanceof Response) return result;
316
363
  if (result == null) return notFoundResponse();
@@ -7,7 +7,6 @@ type SsrErrorMetaRenderer = {
7
7
  capture: (error: unknown) => void;
8
8
  flush: () => string;
9
9
  };
10
- declare function renderSsrErrorMetaTags(errors: readonly unknown[], options?: SsrErrorMetaRenderOptions): string;
11
- declare function createSsrErrorMetaRenderer(options?: SsrErrorMetaRenderOptions): SsrErrorMetaRenderer;
12
- //#endregion
13
- export { createSsrErrorMetaRenderer, renderSsrErrorMetaTags };
10
+ export declare function renderSsrErrorMetaTags(errors: readonly unknown[], options?: SsrErrorMetaRenderOptions): string;
11
+ export declare function createSsrErrorMetaRenderer(options?: SsrErrorMetaRenderOptions): SsrErrorMetaRenderer;
12
+ //#endregion
@@ -8,7 +8,8 @@ function prefixRedirectLocation(location, basePath) {
8
8
  const hashIndex = location.indexOf("#");
9
9
  const queryIndex = location.indexOf("?");
10
10
  const pathnameEnd = queryIndex === -1 ? hashIndex === -1 ? location.length : hashIndex : hashIndex === -1 ? queryIndex : Math.min(queryIndex, hashIndex);
11
- return addBasePathToPathname(location.slice(0, pathnameEnd), basePath) + location.slice(pathnameEnd);
11
+ const pathname = location.slice(0, pathnameEnd);
12
+ return addBasePathToPathname(pathname, basePath) + location.slice(pathnameEnd);
12
13
  }
13
14
  function renderSsrErrorMetaTag(error, options) {
14
15
  const digest = getNextErrorDigest(error);
@@ -1,5 +1,4 @@
1
1
  import { AppRouterInstance } from "../shims/internal/app-router-context.js";
2
2
  //#region src/server/app-ssr-router-instance.d.ts
3
- declare const ssrAppRouterInstance: AppRouterInstance;
4
- //#endregion
5
- export { ssrAppRouterInstance };
3
+ export declare const ssrAppRouterInstance: AppRouterInstance;
4
+ //#endregion
@@ -0,0 +1,20 @@
1
+ import { SearchParamsGate } from "../shims/search-params-gate.js";
2
+ //#region src/server/app-ssr-search-params-gate.d.ts
3
+ type CandidateSearchParamsGate = {
4
+ gate: SearchParamsGate;
5
+ /**
6
+ * Wrap the Flight stream SSR reads. The gate settles once SSR has read it to
7
+ * the end, and opens if it is cancelled or fails.
8
+ */
9
+ settleWhenConsumed: (flightStream: ReadableStream<Uint8Array>) => ReadableStream<Uint8Array>;
10
+ };
11
+ /**
12
+ * Start the SSR `useSearchParams()` gate of a cache-candidate render.
13
+ *
14
+ * The gate opens with real values as soon as the render uses a dynamic API,
15
+ * including before this call. Otherwise it bails out when the render settles:
16
+ * the RSC stream has ended and SSR has read the whole Flight response, so no
17
+ * server component can mark the render dynamic any more.
18
+ */
19
+ export declare function startCandidateSearchParamsGate(): CandidateSearchParamsGate;
20
+ //#endregion
@@ -0,0 +1,54 @@
1
+ import { isRenderDynamicLatched, markDynamicUsage, onRenderDynamicLatched } from "../shims/headers.js";
2
+ import { createSearchParamsGate } from "../shims/search-params-gate.js";
3
+ //#region src/server/app-ssr-search-params-gate.ts
4
+ /**
5
+ * Start the SSR `useSearchParams()` gate of a cache-candidate render.
6
+ *
7
+ * The gate opens with real values as soon as the render uses a dynamic API,
8
+ * including before this call. Otherwise it bails out when the render settles:
9
+ * the RSC stream has ended and SSR has read the whole Flight response, so no
10
+ * server component can mark the render dynamic any more.
11
+ */
12
+ function startCandidateSearchParamsGate() {
13
+ const controller = createSearchParamsGate({ onOpen: markDynamicUsage });
14
+ const unsubscribe = onRenderDynamicLatched(() => controller.open());
15
+ if (isRenderDynamicLatched()) controller.open();
16
+ let finished = false;
17
+ const finish = (endedNormally) => {
18
+ if (finished) return;
19
+ finished = true;
20
+ unsubscribe();
21
+ if (endedNormally) controller.settle();
22
+ else controller.open();
23
+ };
24
+ return {
25
+ gate: controller.gate,
26
+ settleWhenConsumed: (flightStream) => {
27
+ const reader = flightStream.getReader();
28
+ return new ReadableStream({
29
+ async pull(streamController) {
30
+ let result;
31
+ try {
32
+ result = await reader.read();
33
+ } catch (error) {
34
+ finish(false);
35
+ streamController.error(error);
36
+ return;
37
+ }
38
+ if (result.done) {
39
+ streamController.close();
40
+ finish(true);
41
+ return;
42
+ }
43
+ streamController.enqueue(result.value);
44
+ },
45
+ cancel(reason) {
46
+ finish(false);
47
+ return reader.cancel(reason);
48
+ }
49
+ });
50
+ }
51
+ };
52
+ }
53
+ //#endregion
54
+ export { startCandidateSearchParamsGate };