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
@@ -1,7 +1,9 @@
1
1
  import { runWithFetchDedupe } from "../shims/fetch-cache.js";
2
+ import { searchParamsToRecord } from "../utils/query.js";
2
3
  import { mergeMetadataEntries, mergeViewport, postProcessMetadata, resolveModuleMetadata as resolveModuleMetadata$1, resolveModuleViewport } from "../shims/metadata.js";
3
4
  import { resolveAppPageBranchParams, resolveAppPageSegmentParams } from "./app-page-params.js";
4
5
  import { tagAppPageMetadataError } from "./app-page-execution.js";
6
+ import { createAppMetadataModuleRoute, traceGenerateMetadata } from "./app-metadata-tracing.js";
5
7
  //#region src/server/app-page-head.ts
6
8
  /**
7
9
  * Wrapped {@link _resolveModuleMetadata} that tags any thrown error with the
@@ -15,9 +17,9 @@ import { tagAppPageMetadataError } from "./app-page-execution.js";
15
17
  * See https://github.com/cloudflare/vinext/issues/1347
16
18
  * and Next.js test/e2e/app-dir/metadata-streaming.
17
19
  */
18
- async function resolveModuleMetadata(...args) {
20
+ async function resolveModuleMetadata(moduleRoute, ...args) {
19
21
  try {
20
- return await resolveModuleMetadata$1(...args);
22
+ return await (typeof args[0].generateMetadata === "function" ? traceGenerateMetadata(moduleRoute, () => resolveModuleMetadata$1(...args)) : resolveModuleMetadata$1(...args));
21
23
  } catch (error) {
22
24
  throw tagAppPageMetadataError(error);
23
25
  }
@@ -25,6 +27,7 @@ async function resolveModuleMetadata(...args) {
25
27
  function resolveActiveParallelRouteHeadInputs(options) {
26
28
  return Object.entries(options.slots ?? {}).map(([slotKey, slot]) => {
27
29
  const ownerTreePosition = options.layoutTreePositions?.[slot.layoutIndex ?? 0] ?? 0;
30
+ const ownerRouteSegments = options.routeSegments.slice(0, ownerTreePosition);
28
31
  const ownerParams = resolveAppPageSegmentParams(options.routeSegments, ownerTreePosition, options.params);
29
32
  const slotParams = options.slotParams?.[slotKey] ?? options.params;
30
33
  const notFoundParams = slot.notFound ? {
@@ -35,6 +38,8 @@ function resolveActiveParallelRouteHeadInputs(options) {
35
38
  const interceptLayouts = options.interceptLayouts ?? [];
36
39
  const inheritedSlotNotFound = slot.notFoundTreePosition === 0 ? slot.notFound ?? null : null;
37
40
  const interceptNotFound = options.interceptNotFound ?? inheritedSlotNotFound;
41
+ const interceptRouteSegments = options.interceptSourcePageSegments ?? options.routeSegments;
42
+ const interceptNotFoundRouteSegments = options.interceptNotFound ? (options.interceptNotFoundBranchSegments ?? interceptRouteSegments).slice(0, options.interceptNotFoundTreePosition ?? 0) : [...ownerRouteSegments, ...(slot.routeSegments ?? []).slice(0, slot.notFoundTreePosition ?? 0)];
38
43
  const interceptNotFoundParams = interceptNotFound ? {
39
44
  ...ownerParams,
40
45
  ...resolveParallelLayoutParams(options.interceptNotFoundBranchSegments ?? options.interceptBranchSegments ?? options.routeSegments, options.interceptNotFound ? options.interceptNotFoundTreePosition ?? 0 : slot.notFoundTreePosition ?? 0, options.interceptParams ?? options.params)
@@ -52,15 +57,18 @@ function resolveActiveParallelRouteHeadInputs(options) {
52
57
  layoutTreePositions: [...slot.layout ? [0] : [], ...interceptLayouts.filter(isPresent).map(() => options.routeSegments.length)],
53
58
  pageModule: options.interceptPage,
54
59
  params: options.interceptParams ?? options.params,
55
- routeSegments: options.interceptSourcePageSegments ?? options.routeSegments
60
+ routeSegments: interceptRouteSegments
56
61
  },
57
62
  ...interceptNotFound ? {
58
63
  notFoundModule: interceptNotFound,
64
+ notFoundModuleRouteSegments: interceptNotFoundRouteSegments,
59
65
  notFoundParams: interceptNotFoundParams
60
66
  } : {},
61
67
  ownerTreePosition
62
68
  };
63
69
  }
70
+ const slotRouteSegments = slot.routeSegments ?? options.routeSegments;
71
+ const moduleRouteSegments = slot.routeSegments ?? [];
64
72
  return {
65
73
  head: {
66
74
  layoutModules: [slot.layout, ...slot.configLayouts ?? []].filter(isPresent),
@@ -71,10 +79,13 @@ function resolveActiveParallelRouteHeadInputs(options) {
71
79
  layoutTreePositions: [...slot.layout ? [0] : [], ...slot.configLayoutTreePositions ?? []],
72
80
  pageModule: slot.page,
73
81
  params: slotParams,
74
- routeSegments: slot.routeSegments ?? options.routeSegments
82
+ ...ownerRouteSegments.length > 0 ? { moduleRoutePrefixSegments: ownerRouteSegments } : {},
83
+ ...slot.routeSegments ? {} : { moduleRouteSegments },
84
+ routeSegments: slotRouteSegments
75
85
  },
76
86
  ...slot.notFound ? {
77
87
  notFoundModule: slot.notFound,
88
+ notFoundModuleRouteSegments: [...ownerRouteSegments, ...moduleRouteSegments.slice(0, slot.notFoundTreePosition ?? 0)],
78
89
  notFoundParams
79
90
  } : {},
80
91
  ownerTreePosition
@@ -91,23 +102,9 @@ function hasGenerateMetadata(module) {
91
102
  return typeof module?.generateMetadata === "function";
92
103
  }
93
104
  function collectAppPageSearchParams(searchParams) {
94
- const pageSearchParams = Object.create(null);
95
- let hasSearchParams = false;
96
- searchParams?.forEach((value, key) => {
97
- hasSearchParams = true;
98
- const currentValue = pageSearchParams[key];
99
- if (Array.isArray(currentValue)) {
100
- pageSearchParams[key] = [...currentValue, value];
101
- return;
102
- }
103
- if (currentValue !== void 0) {
104
- pageSearchParams[key] = [currentValue, value];
105
- return;
106
- }
107
- pageSearchParams[key] = value;
108
- });
105
+ const pageSearchParams = searchParamsToRecord(searchParams);
109
106
  return {
110
- hasSearchParams,
107
+ hasSearchParams: Object.keys(pageSearchParams).length > 0,
111
108
  pageSearchParams
112
109
  };
113
110
  }
@@ -154,7 +151,7 @@ async function resolveLayoutMetadata(layoutInputs, params, routeSegments) {
154
151
  for (const layoutInput of layoutInputs) {
155
152
  const parentForLayout = accumulatedMetadata;
156
153
  const layoutParams = resolveAppPageSegmentParams(routeSegments, layoutInput.treePosition, params);
157
- const metadataPromise = resolveModuleMetadata(layoutInput.module, layoutParams, void 0, parentForLayout);
154
+ const metadataPromise = resolveModuleMetadata(createAppMetadataModuleRoute(routeSegments.slice(0, layoutInput.treePosition), "layout"), layoutInput.module, layoutParams, void 0, parentForLayout);
158
155
  layoutMetadataPromises.push(metadataPromise);
159
156
  metadataPromise.catch(() => null);
160
157
  accumulatedMetadata = metadataPromise.then(async (metadataResult) => {
@@ -194,6 +191,8 @@ function parallelRouteHasDynamicMetadata(parallelRoute) {
194
191
  async function resolveParallelRouteMetadata(parallelRoute, fallbackParams, fallbackRouteSegments, pageSearchParams, parent, searchParamsObserver) {
195
192
  const params = parallelRoute.params ?? fallbackParams;
196
193
  const routeSegments = parallelRoute.routeSegments ?? fallbackRouteSegments;
194
+ const moduleRoutePrefixSegments = parallelRoute.moduleRoutePrefixSegments ?? [];
195
+ const moduleRouteSegments = parallelRoute.moduleRouteSegments ?? routeSegments;
197
196
  const metadataResults = [];
198
197
  const metadataSources = [];
199
198
  let accumulatedMetadata = parent;
@@ -201,7 +200,8 @@ async function resolveParallelRouteMetadata(parallelRoute, fallbackParams, fallb
201
200
  const layoutTreePositions = parallelRoute.layoutTreePositions ?? [];
202
201
  const layoutParams = parallelRoute.layoutParams ?? [];
203
202
  for (const [index, layoutModule] of layoutModules.entries()) {
204
- const layoutMetadata = await resolveModuleMetadata(layoutModule, layoutParams[index] ?? resolveParallelLayoutParams(routeSegments, layoutTreePositions[index] ?? 0, params), void 0, accumulatedMetadata);
203
+ const currentLayoutParams = layoutParams[index] ?? resolveParallelLayoutParams(routeSegments, layoutTreePositions[index] ?? 0, params);
204
+ const layoutMetadata = await resolveModuleMetadata(createAppMetadataModuleRoute([...moduleRoutePrefixSegments, ...moduleRouteSegments.slice(0, layoutTreePositions[index] ?? 0)], "layout"), layoutModule, currentLayoutParams, void 0, accumulatedMetadata);
205
205
  metadataResults.push(layoutMetadata);
206
206
  metadataSources.push({
207
207
  metadata: layoutMetadata,
@@ -213,7 +213,7 @@ async function resolveParallelRouteMetadata(parallelRoute, fallbackParams, fallb
213
213
  }
214
214
  }
215
215
  if (parallelRoute.pageModule) {
216
- const pageMetadata = await resolveModuleMetadata(parallelRoute.pageModule, params, pageSearchParams, accumulatedMetadata, searchParamsObserver);
216
+ const pageMetadata = await resolveModuleMetadata(createAppMetadataModuleRoute([...moduleRoutePrefixSegments, ...moduleRouteSegments], "page"), parallelRoute.pageModule, params, pageSearchParams, accumulatedMetadata, searchParamsObserver);
217
217
  metadataResults.push(pageMetadata);
218
218
  metadataSources.push({
219
219
  metadata: pageMetadata,
@@ -267,7 +267,7 @@ function resolveOrderedAppPageMetadata(options) {
267
267
  let accumulatedEntriesPromise = Promise.resolve([]);
268
268
  for (const source of options.sources) {
269
269
  const parentPromise = accumulatedEntriesPromise.then((entries) => entries.length > 0 ? mergeMetadataEntries(entries) : {});
270
- const metadataPromise = resolveModuleMetadata(source.module, source.params, source.searchParams, parentPromise, source.searchParamsObserver);
270
+ const metadataPromise = resolveModuleMetadata(source.moduleRoute, source.module, source.params, source.searchParams, parentPromise, source.searchParamsObserver);
271
271
  metadataPromises.push(metadataPromise);
272
272
  metadataPromise.catch(() => null);
273
273
  accumulatedEntriesPromise = Promise.all([accumulatedEntriesPromise, metadataPromise]).then(([entries, metadata]) => metadata ? [...entries, { metadata }] : entries);
@@ -317,7 +317,7 @@ function prepareAppPageHeadInner(options) {
317
317
  layoutMetadataResultsForParent.catch(() => null);
318
318
  const pageParentPromise = layoutMetadataResultsForParent.then((metadataResults) => metadataResults.length > 0 ? mergeMetadataEntries(metadataResults.map((metadata) => ({ metadata }))) : {});
319
319
  pageParentPromise.catch(() => null);
320
- const pageMetadataPromise = options.pageModule ? resolveModuleMetadata(options.pageModule, options.params, pageSearchParams, pageParentPromise, options.searchParamsObserver) : Promise.resolve(null);
320
+ const pageMetadataPromise = options.pageModule ? resolveModuleMetadata(createAppMetadataModuleRoute(routeSegments, "page"), options.pageModule, options.params, pageSearchParams, pageParentPromise, options.searchParamsObserver) : Promise.resolve(null);
321
321
  const parallelRoutes = options.parallelRoutes ?? [];
322
322
  const parallelRouteMetadataPromise = Promise.all(parallelRoutes.map((parallelRoute) => resolveParallelRouteMetadata(parallelRoute, options.params, routeSegments, pageSearchParams, pageParentPromise, options.searchParamsObserver)));
323
323
  const parallelRouteViewportPromises = [];
@@ -6,8 +6,10 @@ import { ActiveParallelRouteHeadInput, AppPageHeadModule, ApplyAppPageFileBasedM
6
6
  type HttpAccessFallbackMetadataPlanOptions<TModule extends AppPageHeadModule = AppPageHeadModule> = {
7
7
  boundaryModule?: TModule | null;
8
8
  boundaryParams: AppPageParams;
9
+ boundaryRouteSegments?: readonly string[] | null;
9
10
  /** Whether active branches may replace the fallback with their local not-found convention. */
10
11
  branchNotFoundConventions?: boolean;
12
+ errorConvention: "forbidden" | "not-found" | "unauthorized";
11
13
  layoutModules: readonly (TModule | null | undefined)[];
12
14
  layoutTreePositions?: readonly number[] | null;
13
15
  parallelBranches?: readonly ActiveParallelRouteHeadInput<TModule>[] | null;
@@ -22,8 +24,7 @@ type ResolveHttpAccessFallbackMetadataOptions<TModule extends AppPageHeadModule
22
24
  metadataRoutes: readonly MetadataFileRoute[];
23
25
  routePath: string;
24
26
  };
25
- declare function createHttpAccessFallbackMetadataPlan<TModule extends AppPageHeadModule>(options: HttpAccessFallbackMetadataPlanOptions<TModule>): OrderedAppPageMetadataSource<TModule>[];
26
- declare function resolveHttpAccessFallbackMetadata<TModule extends AppPageHeadModule>(options: ResolveHttpAccessFallbackMetadataOptions<TModule>): Promise<Metadata | null>;
27
- declare function resolveHttpAccessFallbackViewport<TModule extends AppPageHeadModule>(options: HttpAccessFallbackMetadataPlanOptions<TModule>): Promise<ResolvedViewport>;
28
- //#endregion
29
- export { createHttpAccessFallbackMetadataPlan, resolveHttpAccessFallbackMetadata, resolveHttpAccessFallbackViewport };
27
+ export declare function createHttpAccessFallbackMetadataPlan<TModule extends AppPageHeadModule>(options: HttpAccessFallbackMetadataPlanOptions<TModule>): OrderedAppPageMetadataSource<TModule>[];
28
+ export declare function resolveHttpAccessFallbackMetadata<TModule extends AppPageHeadModule>(options: ResolveHttpAccessFallbackMetadataOptions<TModule>): Promise<Metadata | null>;
29
+ export declare function resolveHttpAccessFallbackViewport<TModule extends AppPageHeadModule>(options: HttpAccessFallbackMetadataPlanOptions<TModule>): Promise<ResolvedViewport>;
30
+ //#endregion
@@ -1,5 +1,6 @@
1
1
  import { mergeViewport, resolveModuleViewport } from "../shims/metadata.js";
2
2
  import { resolveAppPageBranchParams, resolveAppPageSegmentParams } from "./app-page-params.js";
3
+ import { createAppMetadataModuleRoute } from "./app-metadata-tracing.js";
3
4
  import { resolveOrderedAppPageMetadata } from "./app-page-head.js";
4
5
  //#region src/server/app-page-http-access-fallback-metadata.ts
5
6
  function isPresent(value) {
@@ -24,6 +25,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
24
25
  source: {
25
26
  includeWhenEmpty: true,
26
27
  module: layoutModule,
28
+ moduleRoute: createAppMetadataModuleRoute(routeSegments.slice(0, treePosition), options.errorConvention),
27
29
  params: resolveAppPageSegmentParams(routeSegments, treePosition, options.params),
28
30
  routeSegments: routeSegments.slice(0, treePosition)
29
31
  }
@@ -31,7 +33,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
31
33
  }
32
34
  let activeBoundaryModule = options.boundaryModule;
33
35
  let activeBoundaryParams = options.boundaryParams;
34
- let activeBoundaryRouteSegments = routeSegments;
36
+ let activeBoundaryRouteSegments = options.boundaryRouteSegments ?? [];
35
37
  const appendFallbackLeaf = () => {
36
38
  if (fallbackLeafMode === "final") {
37
39
  plan.push({ kind: "fallback-leaf" });
@@ -43,6 +45,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
43
45
  source: {
44
46
  includeWhenEmpty: true,
45
47
  module: activeBoundaryModule,
48
+ moduleRoute: createAppMetadataModuleRoute(activeBoundaryRouteSegments, options.errorConvention),
46
49
  params: activeBoundaryParams,
47
50
  routeSegments: activeBoundaryRouteSegments
48
51
  }
@@ -54,6 +57,8 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
54
57
  const parallelRoute = branch.head;
55
58
  const parallelParams = parallelRoute.params ?? options.params;
56
59
  const parallelRouteSegments = parallelRoute.routeSegments ?? routeSegments;
60
+ const parallelModuleRoutePrefix = parallelRoute.moduleRoutePrefixSegments ?? [];
61
+ const parallelModuleRouteSegments = parallelRoute.moduleRouteSegments ?? parallelRouteSegments;
57
62
  const layoutModules = [...parallelRoute.layoutModules ?? [], parallelRoute.layoutModule].filter(isPresent);
58
63
  const layoutTreePositions = parallelRoute.layoutTreePositions ?? [];
59
64
  const layoutParams = parallelRoute.layoutParams ?? [];
@@ -62,6 +67,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
62
67
  source: {
63
68
  includeWhenEmpty: true,
64
69
  module: layoutModule,
70
+ moduleRoute: createAppMetadataModuleRoute([...parallelModuleRoutePrefix, ...parallelModuleRouteSegments.slice(0, layoutTreePositions[index] ?? 0)], options.errorConvention),
65
71
  params: layoutParams[index] ?? resolveAppPageBranchParams(parallelRouteSegments, layoutTreePositions[index] ?? 0, parallelParams),
66
72
  routeSegments: parallelRouteSegments
67
73
  }
@@ -69,7 +75,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
69
75
  if (options.branchNotFoundConventions !== false && branch.notFoundModule) {
70
76
  activeBoundaryModule = branch.notFoundModule;
71
77
  activeBoundaryParams = branch.notFoundParams ?? parallelParams;
72
- activeBoundaryRouteSegments = parallelRouteSegments;
78
+ activeBoundaryRouteSegments = branch.notFoundModuleRouteSegments ?? [...parallelModuleRoutePrefix, ...parallelModuleRouteSegments];
73
79
  }
74
80
  appendFallbackLeaf();
75
81
  }
@@ -79,6 +85,7 @@ function createHttpAccessFallbackPlan(options, fallbackLeafMode) {
79
85
  return [{
80
86
  includeWhenEmpty: true,
81
87
  module: activeBoundaryModule,
88
+ moduleRoute: createAppMetadataModuleRoute(activeBoundaryRouteSegments, options.errorConvention),
82
89
  params: activeBoundaryParams,
83
90
  routeSegments: activeBoundaryRouteSegments
84
91
  }];
@@ -1,15 +1,9 @@
1
1
  //#region src/server/app-page-method.d.ts
2
- type AppPageMethodPolicyOptions = {
3
- dynamicConfig?: string;
4
- hasGenerateStaticParams: boolean;
5
- isDynamicRoute: boolean;
6
- revalidateSeconds: number | null;
7
- };
8
2
  type ResolveAppPageMethodResponseOptions = {
3
+ /** `isAppPageStaticEligible` for the route. */
4
+ isStaticEligible: boolean;
9
5
  middlewareHeaders?: Headers | null;
10
6
  request: Pick<Request, "headers" | "method">;
11
- } & AppPageMethodPolicyOptions;
12
- declare function isStaticOrSsgAppPageCandidate(options: AppPageMethodPolicyOptions): boolean;
13
- declare function resolveAppPageMethodResponse(options: ResolveAppPageMethodResponseOptions): Response | null;
14
- //#endregion
15
- export { isStaticOrSsgAppPageCandidate, resolveAppPageMethodResponse };
7
+ };
8
+ export declare function resolveAppPageMethodResponse(options: ResolveAppPageMethodResponseOptions): Response | null;
9
+ //#endregion
@@ -6,20 +6,13 @@ function isNonGetOrHead(method) {
6
6
  const normalizedMethod = method.toUpperCase();
7
7
  return normalizedMethod !== "GET" && normalizedMethod !== "HEAD";
8
8
  }
9
- function isStaticOrSsgAppPageCandidate(options) {
10
- if (options.dynamicConfig === "force-dynamic" || options.revalidateSeconds === 0) return false;
11
- if (options.dynamicConfig === "force-static" || options.dynamicConfig === "error") return true;
12
- if (options.revalidateSeconds !== null && options.revalidateSeconds > 0) return true;
13
- if (options.hasGenerateStaticParams) return true;
14
- return !options.isDynamicRoute;
15
- }
16
9
  function resolveAppPageMethodResponse(options) {
17
10
  if (!isNonGetOrHead(options.request.method)) return null;
18
11
  if (isPossibleAppRouteActionRequest(options.request)) return null;
19
- if (!isStaticOrSsgAppPageCandidate(options)) return null;
12
+ if (!options.isStaticEligible) return null;
20
13
  const headers = new Headers();
21
14
  mergeMiddlewareResponseHeaders(headers, options.middlewareHeaders ?? null);
22
15
  return methodNotAllowedResponse("GET, HEAD", { headers });
23
16
  }
24
17
  //#endregion
25
- export { isStaticOrSsgAppPageCandidate, resolveAppPageMethodResponse };
18
+ export { resolveAppPageMethodResponse };
@@ -1,8 +1,7 @@
1
1
  import { AppPageParams } from "./app-page-boundary.js";
2
2
  //#region src/server/app-page-params.d.ts
3
- declare function getAppPageSegmentParamName(segment: string): string | null;
4
- declare function resolveAppPageSegmentParamScopeKeys(routeSegments: readonly string[] | null | undefined, treePosition: number): readonly string[];
5
- declare function resolveAppPageSegmentParams(routeSegments: readonly string[] | null | undefined, treePosition: number, matchedParams: AppPageParams): AppPageParams;
6
- declare function resolveAppPageBranchParams(branchSegments: readonly string[], treePosition: number, matchedParams: AppPageParams, scopedSegments?: readonly string[]): AppPageParams;
7
- //#endregion
8
- export { getAppPageSegmentParamName, resolveAppPageBranchParams, resolveAppPageSegmentParamScopeKeys, resolveAppPageSegmentParams };
3
+ export declare function getAppPageSegmentParamName(segment: string): string | null;
4
+ export declare function resolveAppPageSegmentParamScopeKeys(routeSegments: readonly string[] | null | undefined, treePosition: number): readonly string[];
5
+ export declare function resolveAppPageSegmentParams(routeSegments: readonly string[] | null | undefined, treePosition: number, matchedParams: AppPageParams): AppPageParams;
6
+ export declare function resolveAppPageBranchParams(branchSegments: readonly string[], treePosition: number, matchedParams: AppPageParams, scopedSegments?: readonly string[]): AppPageParams;
7
+ //#endregion
@@ -1,6 +1,6 @@
1
1
  import { createAppPprFallbackShells } from "./app-ppr-fallback-shell.js";
2
2
  import { AppPageDispatchRoute, AppPagePprRuntime } from "./app-page-dispatch.js";
3
3
  //#region src/server/app-page-ppr-runtime.d.ts
4
- declare const appPagePprRuntime: AppPagePprRuntime<AppPageDispatchRoute>;
4
+ export declare const appPagePprRuntime: AppPagePprRuntime<AppPageDispatchRoute>;
5
5
  //#endregion
6
- export { appPagePprRuntime, createAppPprFallbackShells };
6
+ export { createAppPprFallbackShells };
@@ -11,7 +11,7 @@ type ProbeReactServerSubtreeOptions = Readonly<{
11
11
  * immediate function body. The real RSC render remains authoritative; probe
12
12
  * failures only make static-layout skip fall back to render-and-send.
13
13
  */
14
- declare function probeReactServerSubtree(node: unknown, options?: ProbeReactServerSubtreeOptions): Promise<void>;
14
+ export declare function probeReactServerSubtree(node: unknown, options?: ProbeReactServerSubtreeOptions): Promise<void>;
15
15
  /**
16
16
  * Build a probePage() invocation for the App Router request lifecycle.
17
17
  *
@@ -29,7 +29,7 @@ declare function probeReactServerSubtree(node: unknown, options?: ProbeReactServ
29
29
  * Returns `null` when the route has no page component (eg. interception-only
30
30
  * routes), matching the caller contract on `probePage`.
31
31
  */
32
- declare function probeAppPage(options: {
32
+ export declare function probeAppPage(options: {
33
33
  pageComponent: unknown;
34
34
  asyncRouteParams: unknown;
35
35
  searchParams: URLSearchParams | null | undefined;
@@ -102,7 +102,7 @@ type AppPageProbeIntercept = Readonly<{
102
102
  * real render still observes that access and skips the query-invariant cache
103
103
  * write (the same loading.tsx backstop), so this cannot under-bail.
104
104
  */
105
- declare function buildAppPageProbes(options: {
105
+ export declare function buildAppPageProbes(options: {
106
106
  route: AppPageProbeRoute;
107
107
  pageComponent: unknown;
108
108
  asyncRouteParams: unknown;
@@ -135,6 +135,5 @@ type ProbeAppPageBeforeRenderOptions = {
135
135
  /** When provided, enables per-layout static/dynamic classification. */
136
136
  classification?: LayoutClassificationOptions | null;
137
137
  };
138
- declare function probeAppPageBeforeRender(options: ProbeAppPageBeforeRenderOptions): Promise<ProbeAppPageBeforeRenderResult>;
139
- //#endregion
140
- export { buildAppPageProbes, probeAppPage, probeAppPageBeforeRender, probeReactServerSubtree };
138
+ export declare function probeAppPageBeforeRender(options: ProbeAppPageBeforeRenderOptions): Promise<ProbeAppPageBeforeRenderResult>;
139
+ //#endregion
@@ -1,7 +1,7 @@
1
1
  import { isPromiseLike } from "../utils/promise.js";
2
2
  import { isNextRouterError } from "../shims/navigation-errors.js";
3
3
  import "../shims/navigation-server.js";
4
- import { markAppPagePropsForUseCache } from "../shims/internal/app-page-props-cache-key.js";
4
+ import { markAppPagePropsForUseCache, withUseCachePageMarker } from "../shims/internal/app-page-props-cache-key.js";
5
5
  import { probeAppPageComponent, probeAppPageLayouts } from "./app-page-execution.js";
6
6
  import { collectAppPageSearchParams } from "./app-page-head.js";
7
7
  import { makeObservedAppPageSearchParamsThenable } from "./app-page-search-params-observation.js";
@@ -152,10 +152,11 @@ function probeAppPage(options) {
152
152
  const { pageComponent, asyncRouteParams, searchParams } = options;
153
153
  if (typeof pageComponent !== "function") return null;
154
154
  const { pageSearchParams } = collectAppPageSearchParams(searchParams);
155
- const result = pageComponent(markAppPagePropsForUseCache({
155
+ const asyncSearchParams = makeObservedAppPageSearchParamsThenable(pageSearchParams, { observeReactPromiseStatus: true });
156
+ const result = pageComponent(markAppPagePropsForUseCache(withUseCachePageMarker(pageComponent, {
156
157
  params: asyncRouteParams,
157
- searchParams: makeObservedAppPageSearchParamsThenable(pageSearchParams, { observeReactPromiseStatus: true })
158
- }));
158
+ searchParams: asyncSearchParams
159
+ })));
159
160
  if (isPromiseLike(result)) return result.then(async (resolved) => {
160
161
  await probeReactServerSubtreeForDynamicUsage(resolved);
161
162
  return resolved;
@@ -9,7 +9,7 @@ type AppPageRenderIdentityInput = {
9
9
  interceptSourceMatchedUrl?: string | null;
10
10
  interceptSlotId?: string | null;
11
11
  };
12
- type AppPageRenderIdentity = {
12
+ export type AppPageRenderIdentity = {
13
13
  displayPathname: string;
14
14
  interception: AppElementsInterception | null;
15
15
  interceptionContext: string | null;
@@ -18,7 +18,6 @@ type AppPageRenderIdentity = {
18
18
  routeId: string;
19
19
  targetMatchedPathname: string;
20
20
  };
21
- declare function normalizeAppPageInterceptionProofPathname(pathname: string | null): string | null;
22
- declare function createAppPageRenderIdentity(input: AppPageRenderIdentityInput): AppPageRenderIdentity;
23
- //#endregion
24
- export { AppPageRenderIdentity, createAppPageRenderIdentity, normalizeAppPageInterceptionProofPathname };
21
+ export declare function normalizeAppPageInterceptionProofPathname(pathname: string | null): string | null;
22
+ export declare function createAppPageRenderIdentity(input: AppPageRenderIdentityInput): AppPageRenderIdentity;
23
+ //#endregion
@@ -1,14 +1,14 @@
1
1
  import { BoundaryOutcome, CacheProofOutputScope, RenderCacheability, RenderObservation, RenderObservationCompleteness, RenderRequestApiKind } from "./cache-proof.js";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/server/app-page-render-observation.d.ts
4
- type AppPageRenderObservationState = Readonly<{
4
+ export type AppPageRenderObservationState = Readonly<{
5
5
  dynamicFetches: readonly string[];
6
6
  requestApis: readonly RenderRequestApiKind[];
7
7
  }>;
8
- declare function createEmptyAppPageRenderObservationState(): AppPageRenderObservationState;
9
- declare function consumeAppPageRenderObservationState(): AppPageRenderObservationState;
10
- declare function discardAppPageRenderState(): void;
11
- declare function createAppPageRenderObservation(options: {
8
+ export declare function createEmptyAppPageRenderObservationState(): AppPageRenderObservationState;
9
+ export declare function consumeAppPageRenderObservationState(): AppPageRenderObservationState;
10
+ export declare function discardAppPageRenderState(): void;
11
+ export declare function createAppPageRenderObservation(options: {
12
12
  boundaryOutcome: BoundaryOutcome;
13
13
  cacheTags: readonly string[];
14
14
  cacheability: RenderCacheability;
@@ -18,18 +18,17 @@ declare function createAppPageRenderObservation(options: {
18
18
  params: Record<string, unknown>;
19
19
  state: AppPageRenderObservationState;
20
20
  }): RenderObservation;
21
- declare function createAppPageRscOutputScope(options: {
21
+ export declare function createAppPageRscOutputScope(options: {
22
22
  element: ReactNode | Readonly<Record<string, ReactNode>>;
23
23
  mountedSlotsHeader?: string | null;
24
24
  renderEpoch: string | null;
25
25
  rootBoundaryId: string | null;
26
26
  routePattern: string;
27
27
  }): CacheProofOutputScope;
28
- declare function createAppPageHtmlOutputScope(options: {
28
+ export declare function createAppPageHtmlOutputScope(options: {
29
29
  element: ReactNode | Readonly<Record<string, ReactNode>>;
30
30
  renderEpoch: string | null;
31
31
  rootBoundaryId: string | null;
32
32
  routePattern: string;
33
33
  }): CacheProofOutputScope;
34
- //#endregion
35
- export { AppPageRenderObservationState, consumeAppPageRenderObservationState, createAppPageHtmlOutputScope, createAppPageRenderObservation, createAppPageRscOutputScope, createEmptyAppPageRenderObservationState, discardAppPageRenderState };
34
+ //#endregion
@@ -1,6 +1,6 @@
1
1
  import { fnv1a64 } from "../utils/hash.js";
2
- import { AppElementsWire, isAppElementsRecord } from "./app-elements-wire.js";
3
2
  import { normalizeMountedSlotsHeader } from "./app-mounted-slots-header.js";
3
+ import { AppElementsWire, isAppElementsRecord } from "./app-elements-wire.js";
4
4
  import "./app-elements.js";
5
5
  import { consumeDynamicUsage, consumeInvalidDynamicUsageError, consumeRenderRequestApiUsage } from "../shims/headers.js";
6
6
  import { _consumeRequestScopedCacheLife } from "../shims/cache-request-state.js";
@@ -9,6 +9,7 @@ import { AppPageMiddlewareContext } from "./app-page-response.js";
9
9
  import { AppLayoutParamAccessTracker } from "./app-layout-param-observation.js";
10
10
  import { RootParams } from "../shims/root-params.js";
11
11
  import { AppPageSsrHandler } from "./app-page-stream.js";
12
+ import { AppRenderErrorContextOverrides } from "./app-rsc-error-handler.js";
12
13
  import { AppPageRenderObservationState } from "./app-page-render-observation.js";
13
14
  import { AppPageCacheSetter } from "./isr-cache.js";
14
15
  import { ReactNode } from "react";
@@ -21,8 +22,17 @@ type AppPageRequestCacheLife = {
21
22
  expire?: number;
22
23
  stale?: number;
23
24
  };
24
- type RenderAppPageLifecycleOptions = {
25
+ type AppPageRenderableElement = ReactNode | Readonly<Record<string, ReactNode>>;
26
+ type PreparedAppPageElement = {
27
+ element: AppPageRenderableElement;
28
+ response?: never;
29
+ } | {
30
+ element?: never;
31
+ response: Response;
32
+ };
33
+ type RenderAppPageLifecycleOptionsBase = {
25
34
  basePath?: string;
35
+ bypassInterceptionContextCache?: boolean;
26
36
  /**
27
37
  * Allow-list of OpenTelemetry propagation keys to emit as `<meta>` tags in
28
38
  * the SSR head. From `experimental.clientTraceMetadata` in `next.config`.
@@ -42,7 +52,7 @@ type RenderAppPageLifecycleOptions = {
42
52
  consumeRenderObservationState?: () => AppPageRenderObservationState;
43
53
  /** Read and clear any invalid dynamic usage error recorded during render (dev-only). */
44
54
  consumeInvalidDynamicUsageError?: () => unknown;
45
- createRscOnErrorHandler: (pathname: string, routePath: string) => AppPageBoundaryOnError;
55
+ createRscOnErrorHandler: (pathname: string, routePath: string, overrides?: AppRenderErrorContextOverrides) => AppPageBoundaryOnError;
46
56
  getFontLinks: () => string[];
47
57
  getFontPreloads: () => AppPageFontPreload[];
48
58
  getFontStyles: () => string[];
@@ -60,6 +70,17 @@ type RenderAppPageLifecycleOptions = {
60
70
  isEdgeRuntime?: boolean;
61
71
  isForceDynamic: boolean;
62
72
  isForceStatic: boolean;
73
+ /**
74
+ * Whether Next.js would classify the route as static or SSG from its config
75
+ * (`isAppPageStaticEligible`). Other routes are never full-page cached.
76
+ */
77
+ isStaticEligible: boolean;
78
+ /**
79
+ * Production render that may be stored under a query-free key: SSR
80
+ * `useSearchParams()` waits until the render is known to be dynamic, and
81
+ * bails out to client rendering otherwise.
82
+ */
83
+ isCacheCandidate?: boolean;
63
84
  isProgressiveActionRender?: boolean;
64
85
  isPrerender?: boolean;
65
86
  isSpeculativePrerender?: boolean;
@@ -67,6 +88,8 @@ type RenderAppPageLifecycleOptions = {
67
88
  probePageBeforeRender?: boolean;
68
89
  omitPendingDynamicCacheState?: boolean;
69
90
  isRscRequest: boolean;
91
+ traceOperation?: "prerender" | "render";
92
+ onRenderComplete?: (completion: Promise<void>) => void;
70
93
  isrDebug?: AppPageDebugLogger;
71
94
  isrHtmlKey: (pathname: string) => string;
72
95
  isrRscKey: (pathname: string, mountedSlotsHeader?: string | null, renderMode?: AppRscRenderMode, interceptionContext?: string | null, interceptionId?: string | null) => string;
@@ -111,9 +134,22 @@ type RenderAppPageLifecycleOptions = {
111
134
  renderMode?: AppRscRenderMode;
112
135
  waitUntil?: (promise: Promise<void>) => void;
113
136
  layoutParamAccess?: AppLayoutParamAccessTracker;
114
- element: ReactNode | Readonly<Record<string, ReactNode>>;
115
137
  classification?: LayoutClassificationOptions | null;
116
138
  };
117
- declare function renderAppPageLifecycle(options: RenderAppPageLifecycleOptions): Promise<Response>;
118
- //#endregion
119
- export { renderAppPageLifecycle };
139
+ type RenderAppPageLifecycleOptions = RenderAppPageLifecycleOptionsBase & ({
140
+ element: AppPageRenderableElement;
141
+ prepareElement?: never;
142
+ } | {
143
+ element?: never;
144
+ prepareElement: () => Promise<PreparedAppPageElement>;
145
+ });
146
+ /**
147
+ * A render that is known dynamic is never cacheable: a route Next.js can't make
148
+ * static, draft mode, `force-dynamic`, `revalidate = 0`, or a dynamic API read
149
+ * before the response left the render. Responses that leave the render before
150
+ * its response policy, such as error boundaries and special errors, get the
151
+ * same header as the normal render.
152
+ */
153
+ export declare function applyIneligibleRouteCachePolicy(response: Response, options: Pick<RenderAppPageLifecycleOptions, "isDraftMode" | "isDynamicError" | "isForceDynamic" | "isForceStatic" | "isProduction" | "isProgressiveActionRender" | "isRscRequest" | "isStaticEligible" | "middlewareContext" | "peekDynamicUsage" | "revalidateSeconds" | "scriptNonce">): Response;
154
+ export declare function renderAppPageLifecycle(options: RenderAppPageLifecycleOptions): Promise<Response>;
155
+ //#endregion