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
@@ -246,10 +246,12 @@ var PagesResponseStream = class extends Writable {
246
246
  _destroy(error, callback) {
247
247
  this.streamEnded = true;
248
248
  this.releasePendingWrite(error);
249
- if (!this.resolved) if (error) {
250
- this.resolved = true;
251
- this.rejectResponse(error);
252
- } else this.resolveOnce();
249
+ if (!this.resolved) {
250
+ if (error) {
251
+ this.resolved = true;
252
+ this.rejectResponse(error);
253
+ } else this.resolveOnce();
254
+ }
253
255
  if (this.controller) try {
254
256
  if (error) this.controller.error(error);
255
257
  else this.controller.close();
@@ -345,6 +347,12 @@ function createPagesReqRes(options) {
345
347
  rejectResponse = reject;
346
348
  });
347
349
  const res = new PagesResponseStream(resolveResponse, rejectResponse, options.request.headers, options.trustedRevalidateOrigin ?? new URL(options.request.url).origin, options.allowedRevalidateHeaderKeys);
350
+ for (const [name, value] of options.initialResponseHeaders ?? []) {
351
+ if (name.toLowerCase() === "set-cookie") continue;
352
+ res.setHeader(name, value);
353
+ }
354
+ const initialCookies = options.initialResponseHeaders?.getSetCookie() ?? [];
355
+ if (initialCookies.length > 0) res.setHeader("Set-Cookie", initialCookies);
348
356
  attachPagesPreviewApi(req, res);
349
357
  return {
350
358
  req,
@@ -7,18 +7,18 @@ import { PagesGetInitialPropsRouter } from "./pages-get-initial-props.js";
7
7
  import { PagesGsspResponse, PagesI18nRenderContext, PagesNextDataExtras } from "./pages-page-response.js";
8
8
  import { ReactNode } from "react";
9
9
  //#region src/server/pages-page-data.d.ts
10
- type PagesRedirectResult = {
10
+ export type PagesRedirectResult = {
11
11
  destination: string;
12
12
  permanent?: boolean;
13
13
  statusCode?: number;
14
14
  basePath?: boolean;
15
15
  };
16
- type ResolvedPagesRedirect = {
16
+ export type ResolvedPagesRedirect = {
17
17
  destination: string;
18
18
  statusCode: number;
19
19
  basePath?: boolean;
20
20
  };
21
- type PagesStaticPathsEntry = string | {
21
+ export type PagesStaticPathsEntry = string | {
22
22
  params?: Record<string, unknown>;
23
23
  locale?: string;
24
24
  };
@@ -32,7 +32,7 @@ type PagesPagePropsResult = {
32
32
  notFound?: boolean;
33
33
  revalidate?: unknown;
34
34
  };
35
- declare function assertPages404DoesNotReturnNotFound(routePattern: string, result: Pick<PagesPagePropsResult, "notFound"> | null | undefined): void;
35
+ export declare function assertPages404DoesNotReturnNotFound(routePattern: string, result: Pick<PagesPagePropsResult, "notFound"> | null | undefined): void;
36
36
  /**
37
37
  * Next.js preserves an omitted/false Pages `revalidate` result as an indefinite
38
38
  * cache lifetime. The one-year sentinel is only an HTTP Cache-Control detail;
@@ -43,7 +43,7 @@ declare function assertPages404DoesNotReturnNotFound(routePattern: string, resul
43
43
  * - packages/next/src/server/render.tsx (`metadata.cacheControl`)
44
44
  * - packages/next/src/server/route-modules/pages/pages-handler.ts
45
45
  */
46
- declare function resolvePagesRevalidateSeconds(result: PagesPagePropsResult, routeUrl?: string): number | false;
46
+ export declare function resolvePagesRevalidateSeconds(result: PagesPagePropsResult, routeUrl?: string): number | false;
47
47
  type PagesMutableGsspResponse = {
48
48
  headersSent: boolean;
49
49
  } & PagesGsspResponse;
@@ -62,8 +62,8 @@ type PagesRenderProps = Record<string, unknown> & {
62
62
  * enumerable keys from arrays and primitive wrapper objects are retained.
63
63
  * https://github.com/vercel/next.js/blob/canary/packages/next/src/server/render.tsx
64
64
  */
65
- declare function mergePagesDataProps(appPageProps: unknown, dataProps: unknown): Record<string, unknown>;
66
- type PagesPageModule = {
65
+ export declare function mergePagesDataProps(appPageProps: unknown, dataProps: unknown): Record<string, unknown>;
66
+ export type PagesPageModule = {
67
67
  default?: unknown;
68
68
  getStaticPaths?: (context: {
69
69
  locales: string[];
@@ -130,7 +130,7 @@ type RenderPagesIsrHtmlOptions = {
130
130
  vinext?: VinextNextData["__vinext"];
131
131
  nextData?: PagesNextDataExtras;
132
132
  };
133
- type ResolvePagesPageDataOptions = {
133
+ export type ResolvePagesPageDataOptions = {
134
134
  applyRequestContexts: () => void;
135
135
  basePath?: string;
136
136
  buildId: string | null;
@@ -284,15 +284,15 @@ type ResolvePagesPageDataNotFoundResult = {
284
284
  cacheState?: "MISS" | "HIT" | "STALE";
285
285
  };
286
286
  type ResolvePagesPageDataResult = ResolvePagesPageDataRenderResult | ResolvePagesPageDataResponseResult | ResolvePagesPageDataNotFoundResult;
287
- declare function mergePagesNotFoundSourceHeaders(response: Response, sourceHeaders: Record<string, string | number | boolean | string[]> | undefined): Response;
287
+ export declare function mergePagesNotFoundSourceHeaders(response: Response, sourceHeaders: Record<string, string | number | boolean | string[]> | undefined): Response;
288
288
  /** Validate and normalize the redirect metadata returned by gSP/gSSP. */
289
- declare function resolvePagesRedirect(redirect: PagesRedirectResult, options: {
289
+ export declare function resolvePagesRedirect(redirect: PagesRedirectResult, options: {
290
290
  method: "getStaticProps" | "getServerSideProps";
291
291
  routeUrl: string;
292
292
  sanitizeDestination: (destination: string) => string;
293
293
  }): ResolvedPagesRedirect;
294
- declare function resolvePagesRedirectLocation(redirect: ResolvedPagesRedirect, configuredBasePath?: string): string;
295
- declare function buildPagesRedirectProps(redirect: ResolvedPagesRedirect, props: PagesRenderProps): PagesRenderProps;
294
+ export declare function resolvePagesRedirectLocation(redirect: ResolvedPagesRedirect, configuredBasePath?: string): string;
295
+ export declare function buildPagesRedirectProps(redirect: ResolvedPagesRedirect, props: PagesRenderProps): PagesRenderProps;
296
296
  /**
297
297
  * Compare a `getStaticPaths` entry against the actual request params.
298
298
  *
@@ -308,14 +308,13 @@ declare function buildPagesRedirectProps(redirect: ResolvedPagesRedirect, props:
308
308
  * entry with a missing `params` key, return false rather than throwing — the
309
309
  * caller will respond with a 404 just like Next.js does for unlisted paths.
310
310
  */
311
- type PagesRouteParam = {
311
+ export type PagesRouteParam = {
312
312
  key: string;
313
313
  repeat: boolean;
314
314
  optional: boolean;
315
315
  };
316
- declare function getPagesRouteParams(routePattern: string): PagesRouteParam[];
317
- declare function matchesPagesStaticPath(pathEntry: PagesStaticPathsEntry, params: Record<string, unknown>, routeParams: PagesRouteParam[], routeUrl: string): boolean;
318
- declare function renderPagesIsrHtml(options: RenderPagesIsrHtmlOptions): Promise<string>;
319
- declare function resolvePagesPageData(options: ResolvePagesPageDataOptions): Promise<ResolvePagesPageDataResult>;
320
- //#endregion
321
- export { PagesPageModule, PagesRedirectResult, PagesRouteParam, PagesStaticPathsEntry, ResolvePagesPageDataOptions, ResolvedPagesRedirect, assertPages404DoesNotReturnNotFound, buildPagesRedirectProps, getPagesRouteParams, matchesPagesStaticPath, mergePagesDataProps, mergePagesNotFoundSourceHeaders, renderPagesIsrHtml, resolvePagesPageData, resolvePagesRedirect, resolvePagesRedirectLocation, resolvePagesRevalidateSeconds };
316
+ export declare function getPagesRouteParams(routePattern: string): PagesRouteParam[];
317
+ export declare function matchesPagesStaticPath(pathEntry: PagesStaticPathsEntry, params: Record<string, unknown>, routeParams: PagesRouteParam[], routeUrl: string): boolean;
318
+ export declare function renderPagesIsrHtml(options: RenderPagesIsrHtmlOptions): Promise<string>;
319
+ export declare function resolvePagesPageData(options: ResolvePagesPageDataOptions): Promise<ResolvePagesPageDataResult>;
320
+ //#endregion
@@ -1,19 +1,20 @@
1
+ import { isUnknownRecord } from "../utils/record.js";
2
+ import { isBotUserAgent } from "../utils/html-limited-bots.js";
1
3
  import { normalizePathnameForRouteMatch } from "../routing/utils.js";
2
4
  import { NEXTJS_CACHE_HEADER, NEXTJS_DEPLOYMENT_ID_HEADER } from "./headers.js";
3
5
  import { isDangerousScheme } from "../shims/url-safety.js";
4
- import { isUnknownRecord } from "../utils/record.js";
5
6
  import { applyCdnResponseHeaders } from "./cache-control.js";
6
7
  import { buildMissIsrCacheControl, decideIsr } from "./isr-decision.js";
7
8
  import { buildPagesCacheValue, isrCacheControl } from "./isr-cache.js";
8
9
  import { encodeCacheTag } from "../utils/encode-cache-tag.js";
9
10
  import { normalizeStaticPathname } from "../routing/route-pattern.js";
10
11
  import { buildCacheStateHeaders } from "./cache-headers.js";
11
- import { isBotUserAgent } from "../utils/html-limited-bots.js";
12
12
  import { matchesIfNoneMatch } from "./http-conditional.js";
13
13
  import { buildPagesNextDataScript, generatePagesETag, isPagesStreamingBot, requestsNoCache } from "./pages-page-response.js";
14
14
  import { createPagesGetInitialPropsRouter, hasPagesGetInitialProps, isResponseSent, loadPagesGetInitialProps } from "./pages-get-initial-props.js";
15
15
  import { buildNextDataPropsJsonResponse } from "./pages-data-route.js";
16
16
  import { isSerializableProps } from "./pages-serializable-props.js";
17
+ import { tracePagesData, tracePagesDocument } from "./pages-execution-tracing.js";
17
18
  //#region src/server/pages-page-data.ts
18
19
  const ALLOWED_PAGES_REDIRECT_STATUS_CODES = /* @__PURE__ */ new Set([
19
20
  301,
@@ -577,7 +578,7 @@ async function resolvePagesPageData(options) {
577
578
  __N_SSP: true
578
579
  };
579
580
  const { req, res, responsePromise } = getSharedReqRes();
580
- const result = await options.pageModule.getServerSideProps({
581
+ const result = await tracePagesData("getServerSideProps", options.routePattern, () => options.pageModule.getServerSideProps({
581
582
  params: userFacingParams,
582
583
  req,
583
584
  res,
@@ -587,7 +588,7 @@ async function resolvePagesPageData(options) {
587
588
  locales: options.i18n.locales,
588
589
  defaultLocale: options.i18n.defaultLocale,
589
590
  ...previewContext
590
- });
591
+ }));
591
592
  if (isResponseSent(res)) return {
592
593
  kind: "response",
593
594
  response: await responsePromise
@@ -627,13 +628,13 @@ async function resolvePagesPageData(options) {
627
628
  if (freshAppResult.kind === "response") return;
628
629
  let freshPageProps = freshAppResult.pageProps;
629
630
  let freshRenderProps = freshAppResult.renderProps;
630
- const freshResult = await options.pageModule.getStaticProps?.({
631
+ const freshResult = await tracePagesData("getStaticProps", options.routePattern, () => options.pageModule.getStaticProps?.({
631
632
  params: userFacingParams,
632
633
  locale: options.i18n.locale,
633
634
  locales: options.i18n.locales,
634
635
  defaultLocale: options.i18n.defaultLocale,
635
636
  revalidateReason: "stale"
636
- });
637
+ }));
637
638
  if (!freshResult) return;
638
639
  assertPages404DoesNotReturnNotFound(options.routePattern, freshResult);
639
640
  const revalidateSeconds = resolvePagesRevalidateSeconds(freshResult, options.routeUrl);
@@ -663,7 +664,7 @@ async function resolvePagesPageData(options) {
663
664
  };
664
665
  if (options.validatePropsSerialization !== false) isSerializableProps(options.routePattern, "getStaticProps", freshPageProps);
665
666
  if (cachedValue?.kind === "PAGES" && !cachedValue.generatedFromDataRequest) {
666
- const freshHtml = await renderPagesIsrHtml({
667
+ const freshHtml = await tracePagesDocument(options.routePattern, () => renderPagesIsrHtml({
667
668
  buildId: options.buildId,
668
669
  cachedHtml: cachedValue.html,
669
670
  createPageElement: options.createPageElement,
@@ -677,7 +678,7 @@ async function resolvePagesPageData(options) {
677
678
  safeJsonStringify: options.safeJsonStringify,
678
679
  nextData: options.nextData,
679
680
  vinext: options.vinext
680
- });
681
+ }));
681
682
  await options.isrSet(cacheKey, buildPagesCacheValue(freshHtml, freshRenderProps, options.statusCode), { cacheControl: isrCacheControl(revalidateSeconds, { expireSeconds }) });
682
683
  return;
683
684
  }
@@ -745,14 +746,14 @@ async function resolvePagesPageData(options) {
745
746
  const shortCircuit = await loadForegroundAppInitialRenderProps();
746
747
  if (shortCircuit) return shortCircuit;
747
748
  }
748
- const result = generatedPageData ? null : await options.pageModule.getStaticProps({
749
+ const result = generatedPageData ? null : await tracePagesData("getStaticProps", options.routePattern, () => options.pageModule.getStaticProps({
749
750
  params: userFacingParams,
750
751
  locale: options.i18n.locale,
751
752
  locales: options.i18n.locales,
752
753
  defaultLocale: options.i18n.defaultLocale,
753
754
  ...previewContext,
754
755
  revalidateReason: options.isOnDemandRevalidate ? "on-demand" : options.isBuildTimePrerendering ? "build" : "stale"
755
- });
756
+ }));
756
757
  assertPages404DoesNotReturnNotFound(options.routePattern, result);
757
758
  if (generatedPageData) {
758
759
  renderProps = normalizePagesRenderProps(generatedPageData);
@@ -1,10 +1,12 @@
1
1
  import { PagesPreviewState } from "./pages-preview.js";
2
2
  import { RenderPageEnhancers } from "./pages-document-initial-props.js";
3
3
  import { PagesGetInitialPropsRouter } from "./pages-get-initial-props.js";
4
+ import { renderPagesPageResponse } from "./pages-page-response.js";
4
5
  import { PagesPageModule } from "./pages-page-data.js";
5
6
  import { ComponentType, ReactNode } from "react";
6
7
  //#region src/server/pages-page-handler.d.ts
7
- declare function finalizePagesPreviewResponse(response: Response, preview: PagesPreviewState): Response;
8
+ export declare function renderTracedPagesPageResponse(options: Parameters<typeof renderPagesPageResponse>[0]): Promise<Response>;
9
+ export declare function finalizePagesPreviewResponse(response: Response, preview: PagesPreviewState): Response;
8
10
  type PageRoute = {
9
11
  pattern: string;
10
12
  patternParts: string[];
@@ -38,14 +40,14 @@ type VinextConfigSubset = {
38
40
  disableOptimizedLoading: boolean;
39
41
  crossOrigin?: string;
40
42
  };
41
- declare function shouldEmitPagesClientTraceMetadata(pageModule: PagesPageModule, appComponent: unknown): boolean;
43
+ export declare function shouldEmitPagesClientTraceMetadata(pageModule: PagesPageModule, appComponent: unknown): boolean;
42
44
  /**
43
45
  * Options accepted by `createPagesPageHandler`.
44
46
  *
45
47
  * All `next/*`-derived functions are passed as closures from the generated
46
48
  * entry so this module avoids `next/*` imports and stays unit-testable.
47
49
  */
48
- type CreatePagesPageHandlerOptions = {
50
+ export type CreatePagesPageHandlerOptions = {
49
51
  /** Full page route table (built by the generated entry). */
50
52
  pageRoutes: PageRoute[];
51
53
  /** The `_error` route when present; null otherwise. */
@@ -142,6 +144,5 @@ type RenderPageOptions = {
142
144
  * The returned function is self-recursive for 404/500 fallback renders and
143
145
  * accepts the same options shape the generated entry always passed inline.
144
146
  */
145
- declare function createPagesPageHandler(opts: CreatePagesPageHandlerOptions): (request: Request, url: string, manifest: Record<string, string[]> | null | undefined, middlewareHeaders: Headers | null | undefined, options: RenderPageOptions | null | undefined) => Promise<Response>;
146
- //#endregion
147
- export { CreatePagesPageHandlerOptions, createPagesPageHandler, finalizePagesPreviewResponse, shouldEmitPagesClientTraceMetadata };
147
+ export declare function createPagesPageHandler(opts: CreatePagesPageHandlerOptions): (request: Request, url: string, manifest: Record<string, string[]> | null | undefined, middlewareHeaders: Headers | null | undefined, options: RenderPageOptions | null | undefined, initialResponseHeaders?: Headers) => Promise<Response>;
148
+ //#endregion
@@ -1,13 +1,16 @@
1
+ import { preserveFullyBufferedBodyMetadata } from "./fully-buffered-response.js";
1
2
  import { closeAfterResponse, closeAfterResponseWithBody, createRequestContext, runWithRequestContext } from "../shims/unified-request-context.js";
3
+ import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
2
4
  import { patternToNextFormat } from "../routing/route-validation.js";
3
5
  import { getRequestExecutionContext } from "../shims/request-context.js";
4
- import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
5
- import { NEXTJS_CACHE_HEADER, NEXTJS_DEPLOYMENT_ID_HEADER, VINEXT_CACHE_HEADER } from "./headers.js";
6
+ import { NEXTJS_CACHE_HEADER, NEXTJS_DEPLOYMENT_ID_HEADER, VINEXT_CACHE_HEADER, VINEXT_REVALIDATED_CACHE_TAG_HEADER } from "./headers.js";
6
7
  import { extractLocaleFromUrl, resolvePagesI18nRequest } from "./pages-i18n.js";
7
8
  import { reportRequestError } from "./instrumentation.js";
8
- import { BROWSER_REVALIDATE_CACHE_CONTROL, NEVER_CACHE_CONTROL, applyCdnResponseHeaders, hasExplicitNonCacheableResponsePolicy, shouldUseNextDeployCacheControl } from "./cache-control.js";
9
+ import { beginRouteCacheability, isRouteCacheabilityIdentityProbe, isRouteCacheabilityProbe, recordRouteCacheability } from "../shims/cacheability-classification.js";
10
+ import { BROWSER_REVALIDATE_CACHE_CONTROL, NEVER_CACHE_CONTROL, STATIC_CACHE_CONTROL, applyCdnResponseHeaders, hasExplicitNonCacheableResponsePolicy, shouldUseNextDeployCacheControl } from "./cache-control.js";
9
11
  import { buildMissIsrCacheControl } from "./isr-decision.js";
10
- import { coalesceOnDemandRevalidation, isOnDemandRevalidateRequest, isrCacheKey, isrGet, isrSet, triggerBackgroundRegeneration } from "./isr-cache.js";
12
+ import { isOnDemandRevalidateRequest } from "./revalidation-request.js";
13
+ import { coalesceOnDemandRevalidation, isrCacheKey, isrGet, isrSet, triggerBackgroundRegeneration } from "./isr-cache.js";
11
14
  import { encodeCacheTag } from "../utils/encode-cache-tag.js";
12
15
  import { ensureFetchPatch } from "../shims/fetch-cache.js";
13
16
  import { mergeRouteParamsIntoQuery, parseQueryString } from "../utils/query.js";
@@ -20,27 +23,54 @@ import { hasUserDocumentGetInitialProps } from "./document-initial-head.js";
20
23
  import { renderPagesPageResponse } from "./pages-page-response.js";
21
24
  import { hasPagesGetInitialProps } from "./pages-get-initial-props.js";
22
25
  import { buildNextDataNotFoundResponse, buildNextDataPropsJsonResponse, normalizePagesDataRequest, parseNextDataPathname } from "./pages-data-route.js";
26
+ import { traceFindPageComponents, tracePagesDocumentStream } from "./pages-execution-tracing.js";
23
27
  import { mergePagesNotFoundSourceHeaders, resolvePagesPageData } from "./pages-page-data.js";
24
28
  import { collectAssetTags, resolveClientModuleUrl } from "./pages-asset-tags.js";
25
29
  import { PAGES_PREVIEW_CACHE_CONTROL, appendPagesPreviewClearCookies, getPagesPreviewState } from "./pages-preview.js";
26
30
  import { createPagesReqRes } from "./pages-node-compat.js";
31
+ import { setFrameworkRequestRoute } from "./request-tracing.js";
27
32
  //#region src/server/pages-page-handler.ts
33
+ async function renderTracedPagesPageResponse(options) {
34
+ let bodyStream;
35
+ try {
36
+ return await renderPagesPageResponse({
37
+ ...options,
38
+ traceDocument: async (callback) => {
39
+ const result = await tracePagesDocumentStream(options.routePattern, callback);
40
+ bodyStream = result.bodyStream;
41
+ return result;
42
+ }
43
+ });
44
+ } catch (error) {
45
+ if (bodyStream && !bodyStream.locked) await bodyStream.cancel(error).catch(() => {});
46
+ throw error;
47
+ }
48
+ }
49
+ function preservePagesBodyMetadata(source, target) {
50
+ const result = preserveFullyBufferedBodyMetadata(source, target);
51
+ if (source.__vinextStreamedHtmlResponse === true) result.__vinextStreamedHtmlResponse = true;
52
+ return result;
53
+ }
28
54
  function finalizePagesPreviewResponse(response, preview) {
29
55
  if (preview.data === false && !preview.shouldClear) return response;
30
56
  const headers = new Headers(response.headers);
31
- if (preview.data !== false) applyCdnResponseHeaders(headers, { cacheControl: PAGES_PREVIEW_CACHE_CONTROL });
57
+ if (preview.data !== false || preview.shouldClear) applyCdnResponseHeaders(headers, { cacheControl: PAGES_PREVIEW_CACHE_CONTROL });
32
58
  if (preview.shouldClear) appendPagesPreviewClearCookies(headers);
33
- return new Response(response.body, {
59
+ return preservePagesBodyMetadata(response, new Response(response.body, {
34
60
  headers,
35
61
  status: response.status,
36
62
  statusText: response.statusText
37
- });
63
+ }));
38
64
  }
39
- function withPagesCacheState(response, state) {
65
+ function withPagesCacheState(response, state, revalidatedPathname) {
40
66
  const headers = new Headers(response.headers);
41
67
  if (state === "REVALIDATED") {
42
68
  headers.set(NEXTJS_CACHE_HEADER, state);
43
69
  headers.delete(VINEXT_CACHE_HEADER);
70
+ if (revalidatedPathname !== void 0) {
71
+ const stem = revalidatedPathname.length > 1 && revalidatedPathname.endsWith("/") ? revalidatedPathname.slice(0, -1) : revalidatedPathname;
72
+ headers.set(VINEXT_REVALIDATED_CACHE_TAG_HEADER, encodeCacheTag(`_N_T_${stem || "/"}`));
73
+ }
44
74
  } else setCacheStateHeaders(headers, state);
45
75
  return new Response(response.body, {
46
76
  headers,
@@ -108,7 +138,7 @@ function createPagesPageHandler(opts) {
108
138
  if (!i18nCacheVariant) return (router, pathname) => isrCacheKey(router, pathname, buildId ?? void 0);
109
139
  return (router, pathname) => isrCacheKey(router, pathname + "::i18n=" + encodeURIComponent(i18nCacheVariant), buildId ?? void 0);
110
140
  }
111
- async function renderPage(request, url, manifest, middlewareHeaders, options) {
141
+ async function renderPage(request, url, manifest, middlewareHeaders, options, initialResponseHeaders) {
112
142
  let isDataReq = !!(options && options.isDataReq);
113
143
  const requestUrl = new URL(request.url);
114
144
  const rawOriginalUrl = options && typeof options.originalUrl === "string" ? options.originalUrl : requestUrl.pathname + requestUrl.search;
@@ -183,15 +213,32 @@ function createPagesPageHandler(opts) {
183
213
  } else return buildDefaultPagesNotFoundResponse();
184
214
  }
185
215
  const { route, params } = match;
186
- const pageModule = route.module;
216
+ const pageModule = traceFindPageComponents(route.pattern, () => route.module);
187
217
  const isStaticPropsRoute = typeof pageModule.getStaticProps === "function";
218
+ const pagesReadiness = buildPagesReadinessNextData({
219
+ pageModule,
220
+ appComponent: AppComponent,
221
+ hasRewrites
222
+ });
223
+ const isCacheabilityProbe = isRouteCacheabilityProbe();
224
+ if (!isRouteMissErrorRender && options?.__forcedRoute === void 0) {
225
+ beginRouteCacheability("pages-page", route.pattern);
226
+ if (isRouteCacheabilityIdentityProbe()) return new Response(null, { status: 204 });
227
+ if (pagesReadiness.gssp !== true && pagesReadiness.gip !== true && !(pagesReadiness.appGip === true && !isStaticPropsRoute) && !isStaticPropsRoute) recordRouteCacheability({
228
+ cacheable: true,
229
+ cacheControl: STATIC_CACHE_CONTROL
230
+ });
231
+ }
232
+ const routeIsrGet = isCacheabilityProbe ? async () => null : isrGet;
233
+ const routeIsrSet = isCacheabilityProbe ? async () => {} : isrSet;
188
234
  const isStaticPropsRender = isStaticPropsRoute && typeof pageModule.getServerSideProps !== "function";
189
235
  if (!options?.__skipOnDemandCoalesce && !options?.__forcedRoute && isStaticPropsRoute && isOnDemandRevalidateRequest(request.headers.get("x-prerender-revalidate"))) {
190
- const snapshot = await coalesceOnDemandRevalidation(pageIsrCacheKey("pages", routeUrl.split("?")[0]), async () => {
236
+ const cacheKey = pageIsrCacheKey("pages", routeUrl.split("?")[0]);
237
+ const snapshot = await coalesceOnDemandRevalidation(cacheKey, async () => {
191
238
  const response = await renderPage(request, url, manifest, middlewareHeaders, {
192
239
  ...options,
193
240
  __skipOnDemandCoalesce: true
194
- });
241
+ }, initialResponseHeaders);
195
242
  return {
196
243
  body: request.method === "HEAD" || response.status === 204 || response.status === 304 ? null : new Uint8Array(await response.arrayBuffer()),
197
244
  headers: [...response.headers.entries()],
@@ -209,10 +256,11 @@ function createPagesPageHandler(opts) {
209
256
  const routerAsPathSource = isStaticPropsRender ? renderRouteUrl : renderAsPath ?? renderRouteUrl;
210
257
  const routerAsPath = i18nConfig ? extractLocaleFromUrl(routerAsPathSource, i18nConfig, locale).url : routerAsPathSource;
211
258
  const uCtx = createRequestContext({ executionContext: getRequestExecutionContext() });
212
- return closeAfterResponseWithBody(await runWithRequestContext(uCtx, async () => {
259
+ const response = await runWithRequestContext(uCtx, async () => {
213
260
  ensureFetchPatch();
214
261
  try {
215
262
  const routePattern = patternToNextFormat(route.pattern);
263
+ setFrameworkRequestRoute(routePattern);
216
264
  const renderStatusCode = renderStatusCodeOverride ?? (routePattern === "/404" ? 404 : void 0);
217
265
  const isrCachePathname = isStaticPropsRender && (routePattern === "/404" || routePattern === "/500" || routePattern === "/_error") ? routePattern : renderRouteUrl.split("?")[0];
218
266
  const isNotFoundErrorRender = routePattern === "/404" || routePattern === "/_error" && renderStatusCode === 404;
@@ -229,11 +277,7 @@ function createPagesPageHandler(opts) {
229
277
  };
230
278
  const previewData = preview.data;
231
279
  const pagesNextData = {
232
- ...buildPagesReadinessNextData({
233
- pageModule,
234
- appComponent: AppComponent,
235
- hasRewrites
236
- }),
280
+ ...pagesReadiness,
237
281
  ...previewData === false ? {} : { isPreview: true }
238
282
  };
239
283
  const navigationIsReady = isStaticPropsRender ? false : typeof getPagesNavigationIsReadyFromSerializedState === "function" ? getPagesNavigationIsReadyFromSerializedState(routePattern, originalRequestUrl.search, pagesNextData) : true;
@@ -294,6 +338,7 @@ function createPagesPageHandler(opts) {
294
338
  const createPageReqRes = () => {
295
339
  const reqRes = createPagesReqRes({
296
340
  body: void 0,
341
+ initialResponseHeaders,
297
342
  query,
298
343
  request,
299
344
  url: originalRequestPathAndSearch
@@ -322,8 +367,8 @@ function createPagesPageHandler(opts) {
322
367
  fontLinkHeader,
323
368
  i18n: buildI18nRenderContext(i18nConfig, locale, currentDefaultLocale, domainLocales),
324
369
  isrCacheKey: pageIsrCacheKey,
325
- isrGet,
326
- isrSet,
370
+ isrGet: routeIsrGet,
371
+ isrSet: routeIsrSet,
327
372
  expireSeconds: vinextConfig.expireTime,
328
373
  isBuildTimePrerendering: typeof process !== "undefined" && process.env && process.env.VINEXT_PRERENDER === "1",
329
374
  validatePropsSerialization: process.env.NODE_ENV !== "production" || process.env.VINEXT_PRERENDER === "1",
@@ -377,15 +422,15 @@ function createPagesPageHandler(opts) {
377
422
  __notFoundExpireSeconds: pageDataResult.expireSeconds,
378
423
  __notFoundCachePathname: isrCachePathname,
379
424
  __notFoundSourceHeaders: pageDataResult.responseHeaders
380
- });
425
+ }, initialResponseHeaders);
381
426
  else notFoundResponse = mergePagesNotFoundSourceHeaders(buildDefaultPagesNotFoundResponse(), pageDataResult.responseHeaders);
382
427
  notFoundResponse = stripPagesNotFoundFramingHeaders(notFoundResponse);
383
- if (isOnDemandRevalidate) notFoundResponse = withPagesCacheState(notFoundResponse, "REVALIDATED");
428
+ if (isOnDemandRevalidate) notFoundResponse = withPagesCacheState(notFoundResponse, "REVALIDATED", isrCachePathname);
384
429
  else if (pageDataResult.cacheState) notFoundResponse = withPagesCacheState(notFoundResponse, pageDataResult.cacheState);
385
430
  return finalizePagesPreviewResponse(notFoundResponse, preview);
386
431
  }
387
432
  if (pageDataResult.kind === "response") {
388
- let response = isOnDemandRevalidate && pageDataResult.onDemandRevalidateSuccess !== false ? withPagesCacheState(pageDataResult.response, "REVALIDATED") : pageDataResult.response;
433
+ let response = isOnDemandRevalidate && pageDataResult.onDemandRevalidateSuccess !== false ? withPagesCacheState(pageDataResult.response, "REVALIDATED", isrCachePathname) : pageDataResult.response;
389
434
  if (shouldApplyErrorResponsePolicy) response = applyPagesErrorCachePolicy(response, errorPageRevalidateSeconds, errorPageExpireSeconds, errorResponseCachePathname);
390
435
  return finalizePagesPreviewResponse(response, preview);
391
436
  }
@@ -417,39 +462,38 @@ function createPagesPageHandler(opts) {
417
462
  isFallback: true
418
463
  });
419
464
  if (isDataReq) {
420
- const init = { headers: {} };
465
+ const headers = new Headers();
421
466
  if (gsspRes && typeof gsspRes.getHeaders === "function") {
422
467
  const gsspHeaders = gsspRes.getHeaders();
423
468
  for (const k of Object.keys(gsspHeaders)) {
424
469
  const v = gsspHeaders[k];
425
470
  if (v === void 0 || v === null) continue;
426
- init.headers[k] = Array.isArray(v) ? v.join(", ") : String(v);
471
+ if (k.toLowerCase() === "set-cookie" && Array.isArray(v)) for (const cookie of v) headers.append(k, String(cookie));
472
+ else headers.set(k, Array.isArray(v) ? v.join(", ") : String(v));
427
473
  }
428
474
  }
429
475
  if (gsspRes) {
430
- let hasUserCacheControl = false;
431
- for (const headerKey of Object.keys(init.headers)) if (headerKey.toLowerCase() === "cache-control") {
432
- hasUserCacheControl = true;
433
- break;
434
- }
435
- if (!hasUserCacheControl) init.headers["Cache-Control"] = NEVER_CACHE_CONTROL;
476
+ if (!headers.has("Cache-Control")) headers.set("Cache-Control", NEVER_CACHE_CONTROL);
436
477
  } else if (isStaticPropsRoute) {
437
478
  if (isrRevalidateSeconds !== null) {
438
- const headers = new Headers(init.headers);
439
- applyCdnResponseHeaders(headers, { cacheControl: buildMissIsrCacheControl(isrRevalidateSeconds, vinextConfig.expireTime) });
440
- for (const [key, value] of headers) init.headers[key] = value;
441
- } else if (shouldUseNextDeployCacheControl()) init.headers["Cache-Control"] = BROWSER_REVALIDATE_CACHE_CONTROL;
479
+ const stem = isrCachePathname.endsWith("/") ? isrCachePathname.slice(0, -1) : isrCachePathname;
480
+ applyCdnResponseHeaders(headers, {
481
+ cacheControl: buildMissIsrCacheControl(isrRevalidateSeconds, vinextConfig.expireTime),
482
+ tags: [encodeCacheTag(`_N_T_${stem || "/"}`)]
483
+ });
484
+ } else if (shouldUseNextDeployCacheControl()) headers.set("Cache-Control", BROWSER_REVALIDATE_CACHE_CONTROL);
442
485
  }
443
486
  if (routePattern !== "/_error" && routePattern !== "/500") {
444
487
  const deploymentId = process.env.__VINEXT_DEPLOYMENT_ID || process.env.NEXT_DEPLOYMENT_ID;
445
- if (deploymentId) init.headers[NEXTJS_DEPLOYMENT_ID_HEADER] = deploymentId;
488
+ if (deploymentId) headers.set(NEXTJS_DEPLOYMENT_ID_HEADER, deploymentId);
446
489
  }
447
- return finalizePagesPreviewResponse(buildNextDataPropsJsonResponse(renderProps, safeJsonStringify, init), preview);
490
+ return finalizePagesPreviewResponse(buildNextDataPropsJsonResponse(renderProps, safeJsonStringify, { headers }), preview);
448
491
  }
449
492
  const pageModuleIds = [];
450
493
  if (appAssetPath) pageModuleIds.push(appAssetPath);
451
494
  if (route.filePath) pageModuleIds.push(route.filePath);
452
- let pageResponse = await renderPagesPageResponse({
495
+ const initialStylesheetHrefs = /* @__PURE__ */ new Set();
496
+ let pageResponse = await renderTracedPagesPageResponse({
453
497
  assetTags: collectAssetTags({
454
498
  manifest,
455
499
  moduleIds: pageModuleIds,
@@ -458,7 +502,8 @@ function createPagesPageHandler(opts) {
458
502
  basePath: vinextConfig.basePath,
459
503
  assetPrefix: vinextConfig.assetPrefix,
460
504
  deploymentId: process.env.__VINEXT_DEPLOYMENT_ID || process.env.NEXT_DEPLOYMENT_ID,
461
- crossOrigin: vinextConfig.crossOrigin
505
+ crossOrigin: vinextConfig.crossOrigin,
506
+ initialStylesheetHrefs
462
507
  }),
463
508
  buildId,
464
509
  clearSsrContext() {
@@ -489,7 +534,7 @@ function createPagesPageHandler(opts) {
489
534
  isrRevalidateSeconds,
490
535
  isOnDemandRevalidate,
491
536
  isStaticPropsRoute,
492
- isrSet,
537
+ isrSet: routeIsrSet,
493
538
  i18n: buildI18nRenderContext(i18nConfig, locale, currentDefaultLocale, domainLocales),
494
539
  isFallback: isFallbackRender,
495
540
  pageProps,
@@ -506,6 +551,7 @@ function createPagesPageHandler(opts) {
506
551
  routeUrl: renderRouteUrl,
507
552
  safeJsonStringify,
508
553
  scriptNonce,
554
+ initialStylesheetHrefs,
509
555
  crossOrigin: vinextConfig.crossOrigin,
510
556
  disableOptimizedLoading: vinextConfig.disableOptimizedLoading,
511
557
  statusCode: renderStatusCode,
@@ -518,22 +564,26 @@ function createPagesPageHandler(opts) {
518
564
  return finalizePagesPreviewResponse(pageResponse, preview);
519
565
  } catch (e) {
520
566
  console.error("[vinext] SSR error:", e);
521
- reportRequestError(e instanceof Error ? e : new Error(String(e)), {
567
+ await reportRequestError(e, {
522
568
  path: url,
523
569
  method: request.method,
524
570
  headers: Object.fromEntries(request.headers.entries())
525
571
  }, {
526
572
  routerKind: "Pages Router",
527
573
  routePath: route.pattern,
528
- routeType: "render"
529
- }).catch(() => {});
574
+ routeType: "render",
575
+ revalidateReason: isOnDemandRevalidateRequest(request.headers.get("x-prerender-revalidate")) ? "on-demand" : typeof pageModule.getStaticProps === "function" ? "stale" : void 0
576
+ });
530
577
  if (!isInternalErrorRender && !isDataReq) {
531
578
  let errorRoute = null;
532
579
  for (let i = 0; i < pageRoutes.length; i++) if (pageRoutes[i].pattern === "/500") {
533
580
  errorRoute = pageRoutes[i];
534
581
  break;
535
582
  }
536
- if (!errorRoute && errorPageRoute) errorRoute = errorPageRoute;
583
+ if (!errorRoute && errorPageRoute) {
584
+ traceFindPageComponents("/500", () => void 0);
585
+ errorRoute = errorPageRoute;
586
+ }
537
587
  if (errorRoute) try {
538
588
  return await renderPage(request, url, manifest, middlewareHeaders, {
539
589
  statusCode: 500,
@@ -542,16 +592,17 @@ function createPagesPageHandler(opts) {
542
592
  __isInternalErrorRender: true,
543
593
  __forcedRoute: errorRoute,
544
594
  err: e instanceof Error ? e : new Error(String(e))
545
- });
595
+ }, initialResponseHeaders);
546
596
  } catch (errorPageErr) {
547
597
  console.error("[vinext] Error page render failed:", errorPageErr);
548
598
  }
549
599
  }
550
600
  return new Response("Internal Server Error", { status: 500 });
551
601
  }
552
- }), uCtx);
602
+ });
603
+ return closeAfterResponseWithBody(response, uCtx);
553
604
  }
554
605
  return renderPage;
555
606
  }
556
607
  //#endregion
557
- export { createPagesPageHandler, finalizePagesPreviewResponse, shouldEmitPagesClientTraceMetadata };
608
+ export { createPagesPageHandler, finalizePagesPreviewResponse, renderTracedPagesPageResponse, shouldEmitPagesClientTraceMetadata };
@@ -42,6 +42,5 @@ type PagesPageMethodOptions = {
42
42
  * Returns a 405 `Response` when the request method is not allowed for a
43
43
  * static (no `getServerSideProps`) Pages Router page, otherwise `null`.
44
44
  */
45
- declare function resolvePagesPageMethodResponse(options: PagesPageMethodOptions): Response | null;
46
- //#endregion
47
- export { resolvePagesPageMethodResponse };
45
+ export declare function resolvePagesPageMethodResponse(options: PagesPageMethodOptions): Response | null;
46
+ //#endregion