vinext 1.0.0-beta.9 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (828) hide show
  1. package/README.md +150 -92
  2. package/THIRD_PARTY_LICENSES.md +51 -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 +7 -14
  33. package/dist/build/precompress.d.ts +2 -3
  34. package/dist/build/precompress.js +1 -1
  35. package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
  36. package/dist/build/prerender-cloudflare-loader.js +49 -0
  37. package/dist/build/prerender-paths.d.ts +36 -11
  38. package/dist/build/prerender-paths.js +274 -102
  39. package/dist/build/prerender-phase.d.ts +2 -3
  40. package/dist/build/prerender-server-entry.js +11 -3
  41. package/dist/build/prerender-server-pool.d.ts +9 -6
  42. package/dist/build/prerender-server-pool.js +8 -5
  43. package/dist/build/prerender.d.ts +73 -16
  44. package/dist/build/prerender.js +272 -80
  45. package/dist/build/preview-credentials.d.ts +5 -6
  46. package/dist/build/preview-credentials.js +2 -2
  47. package/dist/build/public-dir-conflict.d.ts +5 -6
  48. package/dist/build/public-dir-conflict.js +2 -1
  49. package/dist/build/report.d.ts +24 -20
  50. package/dist/build/report.js +10 -2
  51. package/dist/build/route-classification-injector.d.ts +2 -3
  52. package/dist/build/route-classification-manifest.d.ts +5 -6
  53. package/dist/build/run-prerender.d.ts +11 -9
  54. package/dist/build/run-prerender.js +26 -16
  55. package/dist/build/server-entry.d.ts +6 -0
  56. package/dist/build/server-entry.js +34 -0
  57. package/dist/build/server-manifest.d.ts +8 -3
  58. package/dist/build/server-manifest.js +14 -2
  59. package/dist/build/ssr-manifest.d.ts +5 -6
  60. package/dist/build/standalone.d.ts +2 -3
  61. package/dist/build/standalone.js +2 -2
  62. package/dist/build/static-export.d.ts +6 -7
  63. package/dist/cache/cache-adapters-virtual.d.ts +60 -20
  64. package/dist/cache/cache-adapters-virtual.js +50 -7
  65. package/dist/check.d.ts +11 -10
  66. package/dist/check.js +467 -176
  67. package/dist/cli-args.d.ts +7 -16
  68. package/dist/cli-args.js +2 -45
  69. package/dist/cli-dev-config.d.ts +10 -7
  70. package/dist/cli-dev-config.js +160 -3
  71. package/dist/cli.js +124 -442
  72. package/dist/client/app-nav-failure-handler.d.ts +6 -7
  73. package/dist/client/browser-globals.d.ts +4 -0
  74. package/dist/client/browser-globals.js +5 -0
  75. package/dist/client/client-rewrite-matcher.d.ts +2 -3
  76. package/dist/client/client-rewrites.d.ts +4 -5
  77. package/dist/client/dev-error-overlay-store.d.ts +13 -14
  78. package/dist/client/dev-error-overlay.d.ts +15 -15
  79. package/dist/client/dev-error-overlay.js +8 -5
  80. package/dist/client/instrumentation-client-inject.d.ts +3 -4
  81. package/dist/client/instrumentation-client-state.d.ts +5 -6
  82. package/dist/client/instrumentation-client.d.ts +3 -4
  83. package/dist/client/navigation-runtime.d.ts +20 -17
  84. package/dist/client/navigation-runtime.js +4 -3
  85. package/dist/client/pages-router-link-navigation.d.ts +4 -5
  86. package/dist/client/react-instance.d.ts +2 -3
  87. package/dist/client/validate-module-path.d.ts +2 -3
  88. package/dist/client/vinext-next-data.d.ts +7 -10
  89. package/dist/client/window-next.d.ts +4 -5
  90. package/dist/config/config-matchers.d.ts +16 -16
  91. package/dist/config/config-matchers.js +2 -4
  92. package/dist/config/dotenv.d.ts +3 -4
  93. package/dist/config/dotenv.js +14 -2
  94. package/dist/config/next-config.d.ts +31 -27
  95. package/dist/config/next-config.js +163 -16
  96. package/dist/config/prerender.d.ts +20 -16
  97. package/dist/config/prerender.js +10 -4
  98. package/dist/config/request-context.d.ts +5 -6
  99. package/dist/config/server-external-packages.d.ts +14 -3
  100. package/dist/config/server-external-packages.js +37 -3
  101. package/dist/config/tsconfig-paths.d.ts +3 -4
  102. package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
  103. package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
  104. package/dist/entries/app-browser-entry.d.ts +4 -5
  105. package/dist/entries/app-browser-entry.js +1 -3
  106. package/dist/entries/app-rsc-entry.d.ts +10 -3
  107. package/dist/entries/app-rsc-entry.js +503 -51
  108. package/dist/entries/app-rsc-manifest.d.ts +4 -3
  109. package/dist/entries/app-rsc-manifest.js +26 -8
  110. package/dist/entries/app-ssr-entry.d.ts +2 -3
  111. package/dist/entries/app-ssr-entry.js +8 -1
  112. package/dist/entries/pages-client-entry.d.ts +3 -3
  113. package/dist/entries/pages-client-entry.js +17 -2
  114. package/dist/entries/pages-server-entry.d.ts +13 -3
  115. package/dist/entries/pages-server-entry.js +234 -33
  116. package/dist/entries/runtime-entry-module.d.ts +4 -5
  117. package/dist/image/image-adapters-virtual.d.ts +4 -5
  118. package/dist/index.d.ts +10 -11
  119. package/dist/index.js +848 -255
  120. package/dist/init-cloudflare.d.ts +26 -17
  121. package/dist/init-cloudflare.js +711 -103
  122. package/dist/init-platform.d.ts +26 -22
  123. package/dist/init-platform.js +85 -29
  124. package/dist/init.d.ts +19 -13
  125. package/dist/init.js +126 -42
  126. package/dist/plugins/action-owner-manifest.d.ts +3 -4
  127. package/dist/plugins/action-owner-manifest.js +10 -3
  128. package/dist/plugins/ast-scope.d.ts +10 -11
  129. package/dist/plugins/ast-scope.js +10 -22
  130. package/dist/plugins/ast-utils.d.ts +16 -29
  131. package/dist/plugins/ast-utils.js +27 -71
  132. package/dist/plugins/async-hooks-stub.d.ts +2 -3
  133. package/dist/plugins/client-reference-dedup.d.ts +4 -5
  134. package/dist/plugins/commonjs-syntax.d.ts +16 -0
  135. package/dist/plugins/commonjs-syntax.js +22 -0
  136. package/dist/plugins/css-data-url.d.ts +2 -3
  137. package/dist/plugins/css-module-imports.d.ts +3 -4
  138. package/dist/plugins/css-module-imports.js +1 -1
  139. package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
  140. package/dist/plugins/dynamic-preload-metadata.js +55 -154
  141. package/dist/plugins/environment.d.ts +2 -3
  142. package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
  143. package/dist/plugins/extensionless-dynamic-import.js +6 -10
  144. package/dist/plugins/fonts.d.ts +10 -11
  145. package/dist/plugins/fonts.js +4 -3
  146. package/dist/plugins/ignore-dynamic-requests.d.ts +14 -4
  147. package/dist/plugins/ignore-dynamic-requests.js +113 -91
  148. package/dist/plugins/import-meta-url.d.ts +6 -7
  149. package/dist/plugins/import-meta-url.js +36 -48
  150. package/dist/plugins/instrumentation-client.d.ts +3 -3
  151. package/dist/plugins/instrumentation-client.js +46 -10
  152. package/dist/plugins/middleware-export-validation.d.ts +3 -4
  153. package/dist/plugins/middleware-export-validation.js +3 -3
  154. package/dist/plugins/middleware-server-only.d.ts +2 -3
  155. package/dist/plugins/og-asset-ownership.d.ts +5 -4
  156. package/dist/plugins/og-asset-ownership.js +24 -13
  157. package/dist/plugins/og-assets.d.ts +22 -5
  158. package/dist/plugins/og-assets.js +82 -21
  159. package/dist/plugins/og-harfbuzz.d.ts +24 -0
  160. package/dist/plugins/og-harfbuzz.js +271 -0
  161. package/dist/plugins/optimize-imports.d.ts +7 -7
  162. package/dist/plugins/optimize-imports.js +34 -45
  163. package/dist/plugins/pages-node-externals.d.ts +2 -3
  164. package/dist/plugins/pages-node-externals.js +6 -11
  165. package/dist/plugins/postcss.d.ts +8 -4
  166. package/dist/plugins/postcss.js +1 -1
  167. package/dist/plugins/remove-console.d.ts +2 -3
  168. package/dist/plugins/remove-console.js +0 -1
  169. package/dist/plugins/require-condition-resolution.d.ts +3 -4
  170. package/dist/plugins/require-condition-resolution.js +17 -18
  171. package/dist/plugins/require-context.d.ts +3 -3
  172. package/dist/plugins/require-context.js +41 -22
  173. package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
  174. package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
  175. package/dist/plugins/rsc-client-shim-excludes.js +1 -0
  176. package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
  177. package/dist/plugins/sass.d.ts +7 -8
  178. package/dist/plugins/sass.js +7 -4
  179. package/dist/plugins/scan-build-css.d.ts +12 -0
  180. package/dist/plugins/scan-build-css.js +39 -0
  181. package/dist/plugins/server-externals-manifest.d.ts +2 -3
  182. package/dist/plugins/strip-server-exports.d.ts +7 -6
  183. package/dist/plugins/strip-server-exports.js +4 -2
  184. package/dist/plugins/styled-jsx.d.ts +2 -3
  185. package/dist/plugins/styled-jsx.js +7 -7
  186. package/dist/plugins/transform-cache.d.ts +2 -3
  187. package/dist/plugins/transform-result.d.ts +21 -4
  188. package/dist/plugins/transform-result.js +23 -2
  189. package/dist/plugins/transitive-externals.d.ts +2 -3
  190. package/dist/plugins/typeof-window.d.ts +16 -7
  191. package/dist/plugins/typeof-window.js +62 -39
  192. package/dist/plugins/use-cache-callable.d.ts +2 -5
  193. package/dist/plugins/use-cache-callable.js +43 -22
  194. package/dist/plugins/wasm-module-import.d.ts +2 -3
  195. package/dist/plugins/worker-image-imports.d.ts +2 -3
  196. package/dist/plugins/worker-image-imports.js +6 -8
  197. package/dist/routing/app-route-graph.d.ts +18 -19
  198. package/dist/routing/app-route-graph.js +5 -6
  199. package/dist/routing/app-route-ids.d.ts +3 -0
  200. package/dist/routing/app-route-ids.js +6 -0
  201. package/dist/routing/app-router.d.ts +19 -6
  202. package/dist/routing/app-router.js +24 -2
  203. package/dist/routing/file-matcher.d.ts +9 -10
  204. package/dist/routing/pages-router.d.ts +6 -6
  205. package/dist/routing/pages-router.js +1 -1
  206. package/dist/routing/route-matching.d.ts +4 -5
  207. package/dist/routing/route-matching.js +4 -2
  208. package/dist/routing/route-pattern.d.ts +13 -14
  209. package/dist/routing/route-trie.d.ts +5 -6
  210. package/dist/routing/route-validation.d.ts +3 -4
  211. package/dist/routing/route-validation.js +12 -11
  212. package/dist/routing/utils.d.ts +13 -14
  213. package/dist/server/accept-encoding.d.ts +9 -10
  214. package/dist/server/api-handler.d.ts +2 -3
  215. package/dist/server/api-handler.js +9 -6
  216. package/dist/server/app-action-forwarding.d.ts +3 -4
  217. package/dist/server/app-action-forwarding.js +1 -1
  218. package/dist/server/app-action-request.d.ts +2 -3
  219. package/dist/server/app-bfcache-id.d.ts +4 -4
  220. package/dist/server/app-bfcache-id.js +7 -1
  221. package/dist/server/app-bfcache-identity.d.ts +8 -9
  222. package/dist/server/app-bfcache-identity.js +1 -2
  223. package/dist/server/app-browser-action-result.d.ts +15 -16
  224. package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
  225. package/dist/server/app-browser-entry.js +91 -36
  226. package/dist/server/app-browser-error.d.ts +5 -6
  227. package/dist/server/app-browser-error.js +9 -3
  228. package/dist/server/app-browser-history-controller.d.ts +4 -5
  229. package/dist/server/app-browser-hydration.d.ts +16 -6
  230. package/dist/server/app-browser-hydration.js +15 -2
  231. package/dist/server/app-browser-interception-context.d.ts +3 -4
  232. package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
  233. package/dist/server/app-browser-navigation-abort.d.ts +3 -4
  234. package/dist/server/app-browser-navigation-controller.d.ts +8 -8
  235. package/dist/server/app-browser-navigation-controller.js +9 -5
  236. package/dist/server/app-browser-navigation-response.d.ts +2 -3
  237. package/dist/server/app-browser-popstate.d.ts +4 -5
  238. package/dist/server/app-browser-prefetch-response.d.ts +5 -6
  239. package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
  240. package/dist/server/app-browser-server-action-client.d.ts +7 -6
  241. package/dist/server/app-browser-server-action-client.js +9 -5
  242. package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
  243. package/dist/server/app-browser-state.d.ts +17 -17
  244. package/dist/server/app-browser-state.js +7 -3
  245. package/dist/server/app-browser-stream.d.ts +5 -6
  246. package/dist/server/app-browser-stream.js +8 -6
  247. package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
  248. package/dist/server/app-browser-visible-commit.d.ts +6 -7
  249. package/dist/server/app-client-reference-preloader.d.ts +2 -3
  250. package/dist/server/app-elements-wire-key.d.ts +25 -0
  251. package/dist/server/app-elements-wire-key.js +69 -0
  252. package/dist/server/app-elements-wire.d.ts +34 -53
  253. package/dist/server/app-elements-wire.js +4 -75
  254. package/dist/server/app-elements.d.ts +5 -5
  255. package/dist/server/app-elements.js +1 -1
  256. package/dist/server/app-fallback-renderer.d.ts +4 -4
  257. package/dist/server/app-fallback-renderer.js +6 -6
  258. package/dist/server/app-fetch-tracing.d.ts +15 -0
  259. package/dist/server/app-fetch-tracing.js +38 -0
  260. package/dist/server/app-history-state.d.ts +25 -27
  261. package/dist/server/app-history-state.js +21 -16
  262. package/dist/server/app-hook-warning-suppression.d.ts +2 -3
  263. package/dist/server/app-hydration-cache-publication.d.ts +3 -4
  264. package/dist/server/app-inline-css-client.d.ts +3 -4
  265. package/dist/server/app-interception-context-header.d.ts +2 -3
  266. package/dist/server/app-layout-param-observation.d.ts +7 -8
  267. package/dist/server/app-metadata-tracing.d.ts +12 -0
  268. package/dist/server/app-metadata-tracing.js +17 -0
  269. package/dist/server/app-middleware.d.ts +7 -7
  270. package/dist/server/app-middleware.js +2 -3
  271. package/dist/server/app-mounted-slots-header.d.ts +2 -3
  272. package/dist/server/app-mounted-slots-header.js +2 -2
  273. package/dist/server/app-optimistic-routing.d.ts +10 -11
  274. package/dist/server/app-optimistic-routing.js +3 -2
  275. package/dist/server/app-page-boundary-render.d.ts +6 -6
  276. package/dist/server/app-page-boundary-render.js +10 -4
  277. package/dist/server/app-page-boundary.d.ts +9 -10
  278. package/dist/server/app-page-boundary.js +1 -1
  279. package/dist/server/app-page-cache-finalizer.d.ts +18 -9
  280. package/dist/server/app-page-cache-finalizer.js +51 -16
  281. package/dist/server/app-page-cache-render.d.ts +8 -5
  282. package/dist/server/app-page-cache-render.js +22 -4
  283. package/dist/server/app-page-cache.d.ts +28 -9
  284. package/dist/server/app-page-cache.js +95 -24
  285. package/dist/server/app-page-dispatch.d.ts +34 -12
  286. package/dist/server/app-page-dispatch.js +181 -64
  287. package/dist/server/app-page-element-builder.d.ts +13 -11
  288. package/dist/server/app-page-element-builder.js +104 -61
  289. package/dist/server/app-page-execution.d.ts +14 -14
  290. package/dist/server/app-page-execution.js +11 -7
  291. package/dist/server/app-page-head.d.ts +19 -16
  292. package/dist/server/app-page-head.js +25 -25
  293. package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
  294. package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
  295. package/dist/server/app-page-method.d.ts +5 -11
  296. package/dist/server/app-page-method.js +2 -9
  297. package/dist/server/app-page-params.d.ts +5 -6
  298. package/dist/server/app-page-ppr-runtime.d.ts +2 -2
  299. package/dist/server/app-page-probe.d.ts +5 -6
  300. package/dist/server/app-page-probe.js +5 -4
  301. package/dist/server/app-page-render-identity.d.ts +4 -5
  302. package/dist/server/app-page-render-observation.d.ts +8 -9
  303. package/dist/server/app-page-render-observation.js +1 -1
  304. package/dist/server/app-page-render.d.ts +41 -6
  305. package/dist/server/app-page-render.js +171 -24
  306. package/dist/server/app-page-request.d.ts +10 -9
  307. package/dist/server/app-page-request.js +16 -12
  308. package/dist/server/app-page-response.d.ts +20 -9
  309. package/dist/server/app-page-response.js +30 -12
  310. package/dist/server/app-page-route-wiring.d.ts +15 -15
  311. package/dist/server/app-page-route-wiring.js +31 -24
  312. package/dist/server/app-page-search-params-observation.d.ts +26 -5
  313. package/dist/server/app-page-search-params-observation.js +43 -7
  314. package/dist/server/app-page-segment-plan.d.ts +2 -3
  315. package/dist/server/app-page-segment-state.d.ts +11 -12
  316. package/dist/server/app-page-stream.d.ts +27 -11
  317. package/dist/server/app-page-stream.js +34 -6
  318. package/dist/server/app-page-tracing.d.ts +33 -0
  319. package/dist/server/app-page-tracing.js +50 -0
  320. package/dist/server/app-pages-bridge.d.ts +6 -6
  321. package/dist/server/app-pages-bridge.js +18 -4
  322. package/dist/server/app-post-middleware-context.d.ts +2 -3
  323. package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
  324. package/dist/server/app-ppr-fallback-shell-render.js +3 -2
  325. package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
  326. package/dist/server/app-prerender-endpoints.d.ts +5 -5
  327. package/dist/server/app-prerender-endpoints.js +3 -1
  328. package/dist/server/app-prerender-static-params.d.ts +15 -7
  329. package/dist/server/app-prerender-static-params.js +24 -9
  330. package/dist/server/app-render-abort-error.d.ts +3 -0
  331. package/dist/server/app-render-abort-error.js +8 -0
  332. package/dist/server/app-render-dependency.d.ts +14 -13
  333. package/dist/server/app-render-dependency.js +5 -1
  334. package/dist/server/app-request-context.d.ts +3 -4
  335. package/dist/server/app-request-stage-context.d.ts +5 -0
  336. package/dist/server/app-request-stage-context.js +11 -0
  337. package/dist/server/app-request-stage-dispatch.d.ts +25 -0
  338. package/dist/server/app-request-stage-dispatch.js +54 -0
  339. package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
  340. package/dist/server/app-request-stage-independent-entry.js +112 -0
  341. package/dist/server/app-response-header-provenance.d.ts +13 -7
  342. package/dist/server/app-response-header-provenance.js +34 -1
  343. package/dist/server/app-response-stage-entry.d.ts +9 -0
  344. package/dist/server/app-response-stage-entry.js +87 -0
  345. package/dist/server/app-route-handler-cache.d.ts +4 -4
  346. package/dist/server/app-route-handler-cache.js +51 -35
  347. package/dist/server/app-route-handler-dispatch.d.ts +3 -3
  348. package/dist/server/app-route-handler-dispatch.js +77 -56
  349. package/dist/server/app-route-handler-execution.d.ts +26 -14
  350. package/dist/server/app-route-handler-execution.js +94 -28
  351. package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
  352. package/dist/server/app-route-handler-middleware-context.js +15 -0
  353. package/dist/server/app-route-handler-policy.d.ts +11 -11
  354. package/dist/server/app-route-handler-policy.js +2 -2
  355. package/dist/server/app-route-handler-response.d.ts +9 -10
  356. package/dist/server/app-route-handler-response.js +14 -3
  357. package/dist/server/app-route-handler-runtime.d.ts +9 -10
  358. package/dist/server/app-route-handler-runtime.js +20 -16
  359. package/dist/server/app-route-module-loader.d.ts +6 -7
  360. package/dist/server/app-route-request-built-ins.d.ts +3 -4
  361. package/dist/server/app-route-tree-prefetch.d.ts +6 -7
  362. package/dist/server/app-route-tree-prefetch.js +2 -1
  363. package/dist/server/app-router-entry.d.ts +4 -1
  364. package/dist/server/app-router-entry.js +33 -17
  365. package/dist/server/app-rsc-cache-busting.d.ts +34 -27
  366. package/dist/server/app-rsc-cache-busting.js +14 -2
  367. package/dist/server/app-rsc-combined-handler.d.ts +9 -0
  368. package/dist/server/app-rsc-combined-handler.js +11 -0
  369. package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
  370. package/dist/server/app-rsc-error-handler.d.ts +12 -6
  371. package/dist/server/app-rsc-error-handler.js +15 -6
  372. package/dist/server/app-rsc-errors.d.ts +11 -9
  373. package/dist/server/app-rsc-errors.js +14 -16
  374. package/dist/server/app-rsc-handler.d.ts +32 -6
  375. package/dist/server/app-rsc-handler.js +425 -64
  376. package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
  377. package/dist/server/app-rsc-render-mode.d.ts +8 -9
  378. package/dist/server/app-rsc-request-normalization.d.ts +3 -3
  379. package/dist/server/app-rsc-request-normalization.js +5 -3
  380. package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
  381. package/dist/server/app-rsc-response-finalizer.js +10 -7
  382. package/dist/server/app-rsc-response-stage.d.ts +6 -0
  383. package/dist/server/app-rsc-response-stage.js +251 -0
  384. package/dist/server/app-rsc-route-matching.d.ts +3 -4
  385. package/dist/server/app-rsc-route-matching.js +3 -2
  386. package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
  387. package/dist/server/app-rsc-vary.d.ts +16 -0
  388. package/dist/server/app-rsc-vary.js +31 -0
  389. package/dist/server/app-segment-config.d.ts +119 -7
  390. package/dist/server/app-segment-config.js +242 -2
  391. package/dist/server/app-server-action-execution.d.ts +18 -13
  392. package/dist/server/app-server-action-execution.js +86 -33
  393. package/dist/server/app-ssr-entry.d.ts +14 -4
  394. package/dist/server/app-ssr-entry.js +62 -15
  395. package/dist/server/app-ssr-error-meta.d.ts +3 -4
  396. package/dist/server/app-ssr-error-meta.js +2 -1
  397. package/dist/server/app-ssr-router-instance.d.ts +2 -3
  398. package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
  399. package/dist/server/app-ssr-search-params-gate.js +54 -0
  400. package/dist/server/app-ssr-stream.d.ts +13 -9
  401. package/dist/server/app-ssr-stream.js +34 -8
  402. package/dist/server/app-static-generation.d.ts +4 -5
  403. package/dist/server/app-visited-response-cache.d.ts +11 -12
  404. package/dist/server/app-visited-response-cache.js +2 -2
  405. package/dist/server/app-worker-stages.d.ts +112 -0
  406. package/dist/server/app-worker-stages.js +105 -0
  407. package/dist/server/artifact-compatibility.d.ts +11 -12
  408. package/dist/server/before-interactive-head.d.ts +2 -3
  409. package/dist/server/bfcache-identity.d.ts +7 -8
  410. package/dist/server/cache-control.d.ts +35 -13
  411. package/dist/server/cache-control.js +64 -6
  412. package/dist/server/cache-headers.d.ts +3 -4
  413. package/dist/server/cache-proof.d.ts +75 -70
  414. package/dist/server/cache-proof.js +9 -1
  415. package/dist/server/cacheability-limits.d.ts +4 -5
  416. package/dist/server/cacheability-limits.js +2 -2
  417. package/dist/server/cacheability-manifest.d.ts +42 -16
  418. package/dist/server/cacheability-manifest.js +60 -10
  419. package/dist/server/cacheability-request.d.ts +37 -8
  420. package/dist/server/cacheability-request.js +192 -90
  421. package/dist/server/client-reuse-manifest.d.ts +17 -18
  422. package/dist/server/client-reuse-manifest.js +2 -2
  423. package/dist/server/client-trace-metadata.d.ts +9 -6
  424. package/dist/server/client-trace-metadata.js +27 -15
  425. package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
  426. package/dist/server/cloudflare-workers-tracing.js +8 -0
  427. package/dist/server/config-headers.d.ts +19 -5
  428. package/dist/server/config-headers.js +25 -11
  429. package/dist/server/cookie-utils.d.ts +2 -3
  430. package/dist/server/csp.d.ts +5 -6
  431. package/dist/server/default-global-error-module.d.ts +2 -3
  432. package/dist/server/default-global-not-found-module.d.ts +2 -3
  433. package/dist/server/default-not-found-module.d.ts +2 -3
  434. package/dist/server/defer-until-stream-consumed.d.ts +2 -3
  435. package/dist/server/defer-until-stream-consumed.js +2 -1
  436. package/dist/server/dev-initial-server-error.d.ts +3 -4
  437. package/dist/server/dev-initial-server-error.js +2 -1
  438. package/dist/server/dev-lockfile.d.ts +7 -8
  439. package/dist/server/dev-lockfile.js +4 -1
  440. package/dist/server/dev-module-runner.d.ts +2 -3
  441. package/dist/server/dev-origin-check.d.ts +5 -6
  442. package/dist/server/dev-route-files.d.ts +2 -3
  443. package/dist/server/dev-server.d.ts +4 -5
  444. package/dist/server/dev-server.js +141 -64
  445. package/dist/server/dev-stack-sourcemap.d.ts +7 -7
  446. package/dist/server/dev-stack-sourcemap.js +1 -1
  447. package/dist/server/document-initial-head.d.ts +3 -4
  448. package/dist/server/edge-api-runtime.d.ts +4 -5
  449. package/dist/server/fetch-handler.d.ts +3 -2
  450. package/dist/server/fetch-handler.js +3 -18
  451. package/dist/server/file-based-metadata.d.ts +2 -3
  452. package/dist/server/framework-tracer.d.ts +46 -0
  453. package/dist/server/framework-tracer.js +125 -0
  454. package/dist/server/fully-buffered-response.d.ts +11 -0
  455. package/dist/server/fully-buffered-response.js +19 -0
  456. package/dist/server/headers.d.ts +56 -61
  457. package/dist/server/headers.js +22 -31
  458. package/dist/server/html.d.ts +6 -27
  459. package/dist/server/html.js +16 -1
  460. package/dist/server/http-conditional.d.ts +5 -6
  461. package/dist/server/http-date.d.ts +2 -3
  462. package/dist/server/http-error-responses.d.ts +9 -10
  463. package/dist/server/http-error-responses.js +1 -0
  464. package/dist/server/http-range.d.ts +4 -5
  465. package/dist/server/hybrid-route-priority.d.ts +4 -5
  466. package/dist/server/image-optimization.d.ts +20 -21
  467. package/dist/server/implicit-tags.d.ts +3 -4
  468. package/dist/server/instrumentation-runtime.d.ts +17 -21
  469. package/dist/server/instrumentation-runtime.js +26 -8
  470. package/dist/server/instrumentation.d.ts +26 -30
  471. package/dist/server/instrumentation.js +18 -23
  472. package/dist/server/isr-cache.d.ts +30 -27
  473. package/dist/server/isr-cache.js +23 -70
  474. package/dist/server/isr-decision.d.ts +4 -4
  475. package/dist/server/metadata-route-build-data.d.ts +4 -5
  476. package/dist/server/metadata-route-response.d.ts +7 -7
  477. package/dist/server/metadata-route-response.js +158 -35
  478. package/dist/server/metadata-routes.d.ts +18 -19
  479. package/dist/server/middleware-matcher-pattern.d.ts +6 -7
  480. package/dist/server/middleware-matcher.d.ts +6 -7
  481. package/dist/server/middleware-path-to-regexp.d.ts +6 -7
  482. package/dist/server/middleware-path-to-regexp.js +11 -9
  483. package/dist/server/middleware-response-headers.d.ts +3 -4
  484. package/dist/server/middleware-runtime.d.ts +7 -8
  485. package/dist/server/middleware-runtime.js +36 -7
  486. package/dist/server/middleware.d.ts +5 -5
  487. package/dist/server/multi-stage.d.ts +141 -0
  488. package/dist/server/multi-stage.js +8 -0
  489. package/dist/server/navigation-planner.d.ts +26 -26
  490. package/dist/server/navigation-trace.d.ts +11 -12
  491. package/dist/server/next-error-digest.d.ts +4 -5
  492. package/dist/server/normalize-path.d.ts +5 -6
  493. package/dist/server/open-redirect.d.ts +2 -3
  494. package/dist/server/opentelemetry-api.d.ts +59 -0
  495. package/dist/server/opentelemetry-api.js +53 -0
  496. package/dist/server/opentelemetry-tracing.d.ts +5 -0
  497. package/dist/server/opentelemetry-tracing.js +83 -0
  498. package/dist/server/operation-token.d.ts +11 -12
  499. package/dist/server/otel-tracer-extension.d.ts +7 -9
  500. package/dist/server/otel-tracer-extension.js +37 -36
  501. package/dist/server/pages-api-route.d.ts +5 -4
  502. package/dist/server/pages-api-route.js +28 -9
  503. package/dist/server/pages-asset-tags.d.ts +7 -6
  504. package/dist/server/pages-asset-tags.js +104 -18
  505. package/dist/server/pages-body-parser-config.d.ts +4 -5
  506. package/dist/server/pages-body-parser-config.js +4 -4
  507. package/dist/server/pages-client-assets.d.ts +13 -5
  508. package/dist/server/pages-data-route.d.ts +11 -12
  509. package/dist/server/pages-data-route.js +1 -1
  510. package/dist/server/pages-default-404.d.ts +3 -4
  511. package/dist/server/pages-dev-hydration.d.ts +9 -4
  512. package/dist/server/pages-dev-hydration.js +19 -7
  513. package/dist/server/pages-dev-module-url.d.ts +3 -4
  514. package/dist/server/pages-dev-stylesheets.d.ts +5 -6
  515. package/dist/server/pages-document-asset-props.d.ts +6 -7
  516. package/dist/server/pages-document-initial-props.d.ts +5 -5
  517. package/dist/server/pages-document-initial-props.js +4 -2
  518. package/dist/server/pages-execution-tracing.d.ts +40 -0
  519. package/dist/server/pages-execution-tracing.js +80 -0
  520. package/dist/server/pages-get-initial-props.d.ts +9 -10
  521. package/dist/server/pages-i18n.d.ts +8 -8
  522. package/dist/server/pages-media-type.d.ts +4 -5
  523. package/dist/server/pages-node-compat.d.ts +11 -10
  524. package/dist/server/pages-node-compat.js +12 -4
  525. package/dist/server/pages-page-data.d.ts +23 -19
  526. package/dist/server/pages-page-data.js +82 -75
  527. package/dist/server/pages-page-handler.d.ts +7 -6
  528. package/dist/server/pages-page-handler.js +103 -47
  529. package/dist/server/pages-page-method.d.ts +2 -3
  530. package/dist/server/pages-page-response.d.ts +14 -10
  531. package/dist/server/pages-page-response.js +52 -32
  532. package/dist/server/pages-preview.d.ts +10 -11
  533. package/dist/server/pages-readiness.d.ts +2 -3
  534. package/dist/server/pages-request-pipeline.d.ts +15 -12
  535. package/dist/server/pages-request-pipeline.js +80 -35
  536. package/dist/server/pages-request-stage-entry.d.ts +23 -0
  537. package/dist/server/pages-request-stage-entry.js +316 -0
  538. package/dist/server/pages-response-stage-entry.d.ts +11 -0
  539. package/dist/server/pages-response-stage-entry.js +106 -0
  540. package/dist/server/pages-response-stage.d.ts +31 -0
  541. package/dist/server/pages-response-stage.js +49 -0
  542. package/dist/server/pages-revalidate.d.ts +3 -4
  543. package/dist/server/pages-revalidate.js +9 -4
  544. package/dist/server/pages-route-data-kind.d.ts +18 -0
  545. package/dist/server/pages-route-data-kind.js +11 -0
  546. package/dist/server/pages-router-entry.d.ts +1 -25
  547. package/dist/server/pages-router-entry.js +35 -148
  548. package/dist/server/pages-serializable-props.d.ts +3 -4
  549. package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
  550. package/dist/server/pregenerated-concrete-paths.js +12 -6
  551. package/dist/server/prerender-cache-life-header.d.ts +3 -4
  552. package/dist/server/prerender-manifest.d.ts +17 -11
  553. package/dist/server/prerender-manifest.js +7 -4
  554. package/dist/server/prerender-route-params.d.ts +16 -9
  555. package/dist/server/prerender-route-params.js +18 -3
  556. package/dist/server/prerender-work-unit-setup.d.ts +2 -3
  557. package/dist/server/prerender-work-unit-setup.js +5 -5
  558. package/dist/server/prod-server.d.ts +12 -9
  559. package/dist/server/prod-server.js +127 -44
  560. package/dist/server/proxy-trust.d.ts +5 -6
  561. package/dist/server/request-log.d.ts +3 -4
  562. package/dist/server/request-pipeline.d.ts +16 -16
  563. package/dist/server/request-pipeline.js +7 -2
  564. package/dist/server/request-stage.d.ts +5 -0
  565. package/dist/server/request-stage.js +7 -0
  566. package/dist/server/request-tracing.d.ts +22 -0
  567. package/dist/server/request-tracing.js +180 -0
  568. package/dist/server/response-stage-cacheability.d.ts +37 -0
  569. package/dist/server/response-stage-cacheability.js +55 -0
  570. package/dist/server/response-stage-policy.d.ts +23 -0
  571. package/dist/server/response-stage-policy.js +89 -0
  572. package/dist/server/response-stage.d.ts +5 -0
  573. package/dist/server/response-stage.js +7 -0
  574. package/dist/server/response-start-tracing.d.ts +14 -0
  575. package/dist/server/response-start-tracing.js +80 -0
  576. package/dist/server/revalidation-host.d.ts +2 -3
  577. package/dist/server/revalidation-host.js +1 -1
  578. package/dist/server/revalidation-request.d.ts +8 -0
  579. package/dist/server/revalidation-request.js +37 -0
  580. package/dist/server/rsc-completion-metadata.d.ts +6 -7
  581. package/dist/server/rsc-stream-hints.d.ts +18 -7
  582. package/dist/server/rsc-stream-hints.js +70 -35
  583. package/dist/server/seed-cache.d.ts +2 -3
  584. package/dist/server/seed-cache.js +8 -7
  585. package/dist/server/server-action-not-found.d.ts +5 -6
  586. package/dist/server/server-globals.d.ts +2 -3
  587. package/dist/server/skip-cache-proof.d.ts +4 -4
  588. package/dist/server/socket-error-backstop.d.ts +5 -6
  589. package/dist/server/socket-error-backstop.js +1 -1
  590. package/dist/server/static-file-cache.d.ts +5 -6
  591. package/dist/server/static-file-cache.js +9 -7
  592. package/dist/server/static-file-signal.d.ts +9 -6
  593. package/dist/server/static-file-signal.js +51 -2
  594. package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
  595. package/dist/server/streaming-metadata.d.ts +2 -3
  596. package/dist/server/tracer.d.ts +5 -0
  597. package/dist/server/tracer.js +13 -0
  598. package/dist/server/worker-prerender-discovery.d.ts +5 -6
  599. package/dist/server/worker-revalidation-context.d.ts +4 -4
  600. package/dist/server/worker-revalidation-context.js +6 -5
  601. package/dist/server/worker-stages.d.ts +43 -0
  602. package/dist/server/worker-stages.js +25 -0
  603. package/dist/server/worker-utils.d.ts +5 -6
  604. package/dist/server/worker-utils.js +2 -1
  605. package/dist/server/workers-tracing.d.ts +34 -0
  606. package/dist/server/workers-tracing.js +67 -0
  607. package/dist/shims/amp.d.ts +3 -4
  608. package/dist/shims/app-router-scroll-state.d.ts +9 -10
  609. package/dist/shims/app-router-scroll.d.ts +4 -5
  610. package/dist/shims/app-router-scroll.js +2 -1
  611. package/dist/shims/app.d.ts +5 -6
  612. package/dist/shims/before-interactive-context.d.ts +5 -6
  613. package/dist/shims/cache-callable-runtime.d.ts +44 -4
  614. package/dist/shims/cache-callable-runtime.js +168 -8
  615. package/dist/shims/cache-for-request.d.ts +2 -3
  616. package/dist/shims/cache-handler.d.ts +33 -20
  617. package/dist/shims/cache-handler.js +61 -2
  618. package/dist/shims/cache-request-state.d.ts +26 -38
  619. package/dist/shims/cache-request-state.js +2 -13
  620. package/dist/shims/cache-runtime.d.ts +23 -21
  621. package/dist/shims/cache-runtime.js +110 -28
  622. package/dist/shims/cache.d.ts +17 -16
  623. package/dist/shims/cache.js +19 -15
  624. package/dist/shims/cacheability-classification.d.ts +50 -29
  625. package/dist/shims/cacheability-classification.js +29 -14
  626. package/dist/shims/cdn-cache-state.d.ts +13 -0
  627. package/dist/shims/cdn-cache-state.js +23 -0
  628. package/dist/shims/cdn-cache.d.ts +59 -21
  629. package/dist/shims/cdn-cache.js +31 -47
  630. package/dist/shims/client-hook-error.d.ts +3 -4
  631. package/dist/shims/client-locale.d.ts +2 -3
  632. package/dist/shims/client-page-root.d.ts +24 -0
  633. package/dist/shims/client-page-root.js +121 -0
  634. package/dist/shims/compat-router.d.ts +2 -3
  635. package/dist/shims/config.d.ts +3 -4
  636. package/dist/shims/constants.d.ts +73 -74
  637. package/dist/shims/constants.js +1 -1
  638. package/dist/shims/default-not-found.d.ts +2 -3
  639. package/dist/shims/document.d.ts +9 -9
  640. package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
  641. package/dist/shims/dynamic-preload-chunks.js +17 -13
  642. package/dist/shims/dynamic.d.ts +3 -3
  643. package/dist/shims/error-boundary-navigation.d.ts +3 -4
  644. package/dist/shims/error-boundary.d.ts +17 -18
  645. package/dist/shims/error-boundary.js +17 -11
  646. package/dist/shims/error.d.ts +5 -19
  647. package/dist/shims/error.js +17 -10
  648. package/dist/shims/error.react-server.d.ts +4 -7
  649. package/dist/shims/error.react-server.js +4 -1
  650. package/dist/shims/fetch-cache.d.ts +22 -22
  651. package/dist/shims/fetch-cache.js +46 -20
  652. package/dist/shims/font-google-base.d.ts +9 -9
  653. package/dist/shims/font-google-base.js +2 -1
  654. package/dist/shims/font-local.d.ts +3 -3
  655. package/dist/shims/font-local.js +1 -1
  656. package/dist/shims/font-utils.d.ts +14 -15
  657. package/dist/shims/form.d.ts +2 -2
  658. package/dist/shims/form.js +10 -7
  659. package/dist/shims/hash-scroll.d.ts +5 -6
  660. package/dist/shims/head-state.d.ts +4 -5
  661. package/dist/shims/head.d.ts +16 -16
  662. package/dist/shims/head.js +5 -4
  663. package/dist/shims/headers.d.ts +44 -73
  664. package/dist/shims/headers.js +87 -144
  665. package/dist/shims/i18n-context.d.ts +5 -6
  666. package/dist/shims/i18n-state.d.ts +4 -5
  667. package/dist/shims/image-config.d.ts +5 -6
  668. package/dist/shims/image-config.js +2 -0
  669. package/dist/shims/image.d.ts +5 -5
  670. package/dist/shims/image.js +12 -8
  671. package/dist/shims/internal/als-registry.d.ts +4 -5
  672. package/dist/shims/internal/api-utils.d.ts +3 -4
  673. package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
  674. package/dist/shims/internal/app-page-props-cache-key.js +53 -1
  675. package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
  676. package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
  677. package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
  678. package/dist/shims/internal/app-route-detection.d.ts +2 -2
  679. package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
  680. package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
  681. package/dist/shims/internal/app-router-context.d.ts +9 -10
  682. package/dist/shims/internal/cache-context-accessor.d.ts +16 -0
  683. package/dist/shims/internal/cache-context-accessor.js +15 -0
  684. package/dist/shims/internal/cookie-serialize.d.ts +4 -5
  685. package/dist/shims/internal/format-url-object.d.ts +7 -0
  686. package/dist/shims/internal/format-url-object.js +53 -0
  687. package/dist/shims/internal/headers-state.d.ts +74 -0
  688. package/dist/shims/internal/headers-state.js +157 -0
  689. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
  690. package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
  691. package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
  692. package/dist/shims/internal/interpolate-as.d.ts +5 -6
  693. package/dist/shims/internal/interpolate-as.js +4 -2
  694. package/dist/shims/internal/link-status-registry.d.ts +5 -6
  695. package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
  696. package/dist/shims/internal/navigation-untracked.d.ts +2 -3
  697. package/dist/shims/internal/normalize-router-href.d.ts +15 -0
  698. package/dist/shims/internal/normalize-router-href.js +41 -0
  699. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
  700. package/dist/shims/internal/pages-data-target.d.ts +8 -6
  701. package/dist/shims/internal/pages-data-target.js +32 -36
  702. package/dist/shims/internal/pages-data-url.d.ts +4 -5
  703. package/dist/shims/internal/pages-data-url.js +2 -1
  704. package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
  705. package/dist/shims/internal/pages-router-components.d.ts +3 -4
  706. package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
  707. package/dist/shims/internal/route-pattern-for-warning.js +3 -3
  708. package/dist/shims/internal/router-context.d.ts +2 -3
  709. package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
  710. package/dist/shims/internal/thenable-well-known-properties.js +33 -0
  711. package/dist/shims/internal/utils.d.ts +7 -8
  712. package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
  713. package/dist/shims/layout-segment-context.d.ts +3 -4
  714. package/dist/shims/link-prefetch.d.ts +9 -10
  715. package/dist/shims/link.d.ts +4 -4
  716. package/dist/shims/link.js +56 -116
  717. package/dist/shims/metadata.d.ts +15 -16
  718. package/dist/shims/metadata.js +40 -36
  719. package/dist/shims/navigation-context-accessors.d.ts +9 -0
  720. package/dist/shims/navigation-context-accessors.js +19 -0
  721. package/dist/shims/navigation-context-state.d.ts +27 -18
  722. package/dist/shims/navigation-errors.d.ts +18 -19
  723. package/dist/shims/navigation-state.d.ts +6 -7
  724. package/dist/shims/navigation.d.ts +80 -68
  725. package/dist/shims/navigation.js +26 -18
  726. package/dist/shims/navigation.react-server.d.ts +9 -9
  727. package/dist/shims/offline.d.ts +2 -3
  728. package/dist/shims/og.d.ts +2 -2
  729. package/dist/shims/pages-router-runtime.d.ts +4 -5
  730. package/dist/shims/ppr-fallback-shell.d.ts +13 -14
  731. package/dist/shims/readonly-url-search-params.d.ts +2 -3
  732. package/dist/shims/request-context.d.ts +5 -6
  733. package/dist/shims/request-state-types.d.ts +2 -1
  734. package/dist/shims/root-params.d.ts +14 -15
  735. package/dist/shims/root-params.js +1 -1
  736. package/dist/shims/router-state.d.ts +5 -6
  737. package/dist/shims/router-state.js +1 -1
  738. package/dist/shims/router.d.ts +22 -21
  739. package/dist/shims/router.js +339 -164
  740. package/dist/shims/script-nonce-context.d.ts +8 -6
  741. package/dist/shims/script-nonce-context.js +15 -6
  742. package/dist/shims/script.d.ts +4 -4
  743. package/dist/shims/script.js +9 -7
  744. package/dist/shims/search-params-gate.d.ts +35 -0
  745. package/dist/shims/search-params-gate.js +32 -0
  746. package/dist/shims/server.d.ts +19 -51
  747. package/dist/shims/server.js +66 -30
  748. package/dist/shims/slot.d.ts +33 -15
  749. package/dist/shims/slot.js +41 -9
  750. package/dist/shims/streamed-icons.d.ts +3 -4
  751. package/dist/shims/thenable-params.d.ts +5 -7
  752. package/dist/shims/thenable-params.js +3 -24
  753. package/dist/shims/unified-request-context.d.ts +35 -32
  754. package/dist/shims/unified-request-context.js +34 -24
  755. package/dist/shims/unrecognized-action-error.d.ts +3 -4
  756. package/dist/shims/url-safety.d.ts +5 -6
  757. package/dist/shims/url-utils.d.ts +12 -13
  758. package/dist/shims/use-merged-ref.d.ts +2 -3
  759. package/dist/shims/user-agent.d.ts +31 -0
  760. package/dist/shims/user-agent.js +16 -0
  761. package/dist/shims/web-vitals.d.ts +2 -2
  762. package/dist/typegen.d.ts +3 -4
  763. package/dist/utils/asset-prefix.d.ts +7 -8
  764. package/dist/utils/base-path.d.ts +5 -6
  765. package/dist/utils/built-asset-url.d.ts +2 -3
  766. package/dist/utils/built-asset-url.js +1 -1
  767. package/dist/utils/cache-control-metadata.d.ts +4 -5
  768. package/dist/utils/client-build-manifest.d.ts +6 -7
  769. package/dist/utils/client-build-manifest.js +2 -1
  770. package/dist/utils/client-entry-manifest.d.ts +6 -7
  771. package/dist/utils/client-runtime-metadata.d.ts +8 -3
  772. package/dist/utils/client-runtime-metadata.js +18 -1
  773. package/dist/utils/commonjs-loader.d.ts +4 -5
  774. package/dist/utils/compare.d.ts +2 -3
  775. package/dist/utils/deployment-id.d.ts +6 -7
  776. package/dist/utils/dev-error-recovery-event.d.ts +2 -3
  777. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
  778. package/dist/utils/domain-locale.d.ts +7 -8
  779. package/dist/utils/encode-cache-tag.d.ts +4 -4
  780. package/dist/utils/encode-cache-tag.js +11 -1
  781. package/dist/utils/error-cause.d.ts +2 -3
  782. package/dist/utils/external-url.d.ts +2 -3
  783. package/dist/utils/has-trailing-comma.d.ts +3 -4
  784. package/dist/utils/hash.d.ts +3 -4
  785. package/dist/utils/html-limited-bots.d.ts +3 -4
  786. package/dist/utils/lazy-chunks.d.ts +8 -9
  787. package/dist/utils/lazy-chunks.js +4 -4
  788. package/dist/utils/manifest-paths.d.ts +5 -6
  789. package/dist/utils/mdx-scan.d.ts +11 -4
  790. package/dist/utils/mdx-scan.js +27 -1
  791. package/dist/utils/middleware-request-headers.d.ts +7 -6
  792. package/dist/utils/middleware-request-headers.js +6 -1
  793. package/dist/utils/navigation-signal.d.ts +3 -3
  794. package/dist/utils/navigation-signal.js +16 -1
  795. package/dist/utils/number.d.ts +2 -3
  796. package/dist/utils/package-name.d.ts +3 -4
  797. package/dist/utils/parse-cookie.d.ts +4 -5
  798. package/dist/utils/path.d.ts +8 -9
  799. package/dist/utils/plugin-options.d.ts +2 -3
  800. package/dist/utils/precompressed-variant.d.ts +3 -4
  801. package/dist/utils/prerender-output-paths.d.ts +4 -5
  802. package/dist/utils/project.d.ts +19 -30
  803. package/dist/utils/project.js +20 -29
  804. package/dist/utils/promise.d.ts +2 -3
  805. package/dist/utils/protocol-headers.d.ts +14 -15
  806. package/dist/utils/public-file-path.d.ts +2 -3
  807. package/dist/utils/public-routes.d.ts +2 -3
  808. package/dist/utils/query.d.ts +14 -9
  809. package/dist/utils/query.js +22 -1
  810. package/dist/utils/react-compiler-support.d.ts +6 -7
  811. package/dist/utils/react-version.d.ts +4 -3
  812. package/dist/utils/react-version.js +19 -1
  813. package/dist/utils/record.d.ts +2 -3
  814. package/dist/utils/redirect-digest.d.ts +3 -4
  815. package/dist/utils/regex-safety.d.ts +4 -5
  816. package/dist/utils/regex.d.ts +2 -3
  817. package/dist/utils/safe-json-file.d.ts +2 -3
  818. package/dist/utils/sorted-array.d.ts +2 -3
  819. package/dist/utils/text-stream.d.ts +3 -4
  820. package/dist/utils/vinext-root.d.ts +2 -3
  821. package/dist/utils/virtual-module.d.ts +3 -4
  822. package/dist/utils/vite-cli-invocation.d.ts +21 -0
  823. package/dist/utils/vite-cli-invocation.js +151 -0
  824. package/dist/utils/vite-version.d.ts +5 -6
  825. package/next-package.json +4 -0
  826. package/package.json +51 -6
  827. package/dist/server/metadata-route-cache-policy.d.ts +0 -6
  828. package/dist/server/metadata-route-cache-policy.js +0 -6
@@ -1,16 +1,18 @@
1
1
  import { closeAfterResponse, createRequestContext, runWithRequestContext } from "../shims/unified-request-context.js";
2
2
  import { createValidFileMatcher, findFileWithExts } from "../routing/file-matcher.js";
3
+ import { isBotUserAgent } from "../utils/html-limited-bots.js";
4
+ import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
5
+ import { sanitizeDestination } from "../config/config-matchers.js";
3
6
  import { patternToNextFormat } from "../routing/route-validation.js";
4
7
  import { matchRoute } from "../routing/pages-router.js";
5
- import { PRERENDER_REVALIDATE_HEADER } from "../utils/protocol-headers.js";
6
8
  import { NEXTJS_CACHE_HEADER, NEXTJS_DEPLOYMENT_ID_HEADER } from "./headers.js";
7
9
  import { isDangerousScheme } from "../shims/url-safety.js";
8
- import { sanitizeDestination } from "../config/config-matchers.js";
9
10
  import { extractLocaleFromUrl as extractLocaleFromUrl$1, resolvePagesI18nRequest } from "./pages-i18n.js";
10
11
  import { importModule, reportRequestError } from "./instrumentation.js";
11
12
  import { NEVER_CACHE_CONTROL } from "./cache-control.js";
12
13
  import { buildMissIsrCacheControl } from "./isr-decision.js";
13
- import { isOnDemandRevalidateRequest } from "./isr-cache.js";
14
+ import { isOnDemandRevalidateRequest } from "./revalidation-request.js";
15
+ import "./isr-cache.js";
14
16
  import { ensureFetchPatch } from "../shims/fetch-cache.js";
15
17
  import { mergeRouteParamsIntoQuery, parseQueryString } from "../utils/query.js";
16
18
  import "../shims/router-state.js";
@@ -25,9 +27,9 @@ import { buildPagesReadinessNextData } from "./pages-readiness.js";
25
27
  import { resolvePagesPageMethodResponse } from "./pages-page-method.js";
26
28
  import { loadUserDocumentInitialProps, runDocumentRenderPage } from "./pages-document-initial-props.js";
27
29
  import { callDocumentGetInitialProps } from "./document-initial-head.js";
28
- import { isBotUserAgent } from "../utils/html-limited-bots.js";
29
30
  import { hasPagesGetInitialProps, loadDevAppInitialProps, loadPagesGetInitialProps } from "./pages-get-initial-props.js";
30
31
  import { isSerializableProps } from "./pages-serializable-props.js";
32
+ import { traceFindPageComponents, tracePagesData, tracePagesDocument, tracePagesDocumentStream } from "./pages-execution-tracing.js";
31
33
  import { assertPages404DoesNotReturnNotFound, buildPagesRedirectProps, getPagesRouteParams, matchesPagesStaticPath, mergePagesDataProps, resolvePagesRedirect, resolvePagesRedirectLocation, resolvePagesRevalidateSeconds } from "./pages-page-data.js";
32
34
  import { createPagesDevModuleUrl } from "./pages-dev-module-url.js";
33
35
  import { collectPagesDevInitialStylesheetHeadHTML } from "./pages-dev-stylesheets.js";
@@ -158,27 +160,43 @@ function stripDevPagesNotFoundFramingHeaders(res) {
158
160
  * deferring them reduces TTFB and lets the browser start parsing the
159
161
  * shell sooner).
160
162
  */
161
- async function streamPageToResponse(res, element, options) {
162
- const { url, server, fontHeadHTML, assetHeadHTML = "", scripts, DocumentComponent, statusCode, extraHeaders, getHeadHTML, getTailHeadHTML, enhancePageElement, scriptNonce, documentContext, setDocumentInitialHead, crossOrigin, bufferBodyBeforeHeaders = false, preserveExistingContentType = false } = options;
163
- const documentRenderPage = await runDocumentRenderPage({
164
- DocumentComponent,
165
- enhancePageElement,
166
- renderToReadableStream,
167
- renderStylesToString: renderToStringAsync,
168
- scriptNonce,
169
- context: documentContext
170
- });
171
- if (res.headersSent || res.writableEnded) return;
172
- let bodyStream;
173
- if (documentRenderPage.status === "rendered") {
174
- const synthesised = documentRenderPage.bodyHtml;
175
- bodyStream = new ReadableStream({ start(controller) {
176
- controller.enqueue(new TextEncoder().encode(synthesised));
177
- controller.close();
178
- } });
179
- } else bodyStream = await renderToReadableStream(element);
180
- if (documentRenderPage.status === "skipped") await callDocumentGetInitialProps(DocumentComponent, setDocumentInitialHead);
181
- else setDocumentInitialHead?.(documentRenderPage.head);
163
+ async function streamPageToResponseImpl(routePattern, res, element, options) {
164
+ const { url, server, fontHeadHTML, assetHeadHTML = "", scripts, DocumentComponent, statusCode, extraHeaders, getHeadHTML, getTailHeadHTML, enhancePageElement, scriptNonce, documentContext, setDocumentInitialHead, crossOrigin, bufferBodyBeforeHeaders = false, preserveExistingContentType = false, onDocumentBody } = options;
165
+ const renderDocument = async () => {
166
+ const documentRenderPage = await runDocumentRenderPage({
167
+ DocumentComponent,
168
+ enhancePageElement,
169
+ renderToReadableStream,
170
+ renderStylesToString: renderToStringAsync,
171
+ scriptNonce,
172
+ context: documentContext
173
+ });
174
+ if (res.headersSent || res.writableEnded) return {
175
+ documentRenderPage,
176
+ responseSent: true
177
+ };
178
+ let bodyStream;
179
+ if (documentRenderPage.status === "rendered") {
180
+ const synthesised = documentRenderPage.bodyHtml;
181
+ bodyStream = new ReadableStream({ start(controller) {
182
+ controller.enqueue(new TextEncoder().encode(synthesised));
183
+ controller.close();
184
+ } });
185
+ } else bodyStream = await renderToReadableStream(element);
186
+ if (documentRenderPage.status === "skipped") await callDocumentGetInitialProps(DocumentComponent, setDocumentInitialHead);
187
+ else setDocumentInitialHead?.(documentRenderPage.head);
188
+ return {
189
+ bodyStream,
190
+ documentRenderPage,
191
+ responseSent: false,
192
+ waitForBody: documentRenderPage.status === "skipped"
193
+ };
194
+ };
195
+ const documentResult = await tracePagesDocumentStream(routePattern, renderDocument);
196
+ if (documentResult.responseSent) return;
197
+ const { bodyStream, documentRenderPage } = documentResult;
198
+ if (!bodyStream) throw new Error("Pages document render did not produce a body stream");
199
+ onDocumentBody?.(bodyStream);
182
200
  const headHTML = getHeadHTML();
183
201
  const ssrHeadMarkerId = randomUUID();
184
202
  const ssrHeadStartMarker = `<!--VINEXT_SSR_HEAD_START:${ssrHeadMarkerId}-->`;
@@ -198,7 +216,8 @@ async function streamPageToResponse(res, element, options) {
198
216
  }));
199
217
  if (DocumentComponent) {
200
218
  const docProps = documentRenderPage.status === "skipped" ? await loadUserDocumentInitialProps(DocumentComponent) : documentRenderPage.docProps;
201
- const renderedDocument = extractDocumentAssetProps(await renderToStringAsync(docProps ? React.createElement(DocumentComponent, docProps) : React.createElement(DocumentComponent)));
219
+ const docElement = docProps ? React.createElement(DocumentComponent, docProps) : React.createElement(DocumentComponent);
220
+ const renderedDocument = extractDocumentAssetProps(await renderToStringAsync(docElement));
202
221
  documentAssetProps = renderedDocument.props;
203
222
  let docHtml = protectAssetTags(renderedDocument.html);
204
223
  const generatedScripts = applyGeneratedAssetProps(scripts, renderedDocument.props, "next-script");
@@ -264,6 +283,20 @@ async function streamPageToResponse(res, element, options) {
264
283
  }
265
284
  res.end(suffix);
266
285
  }
286
+ async function streamPageToResponse(...args) {
287
+ let bodyStream;
288
+ try {
289
+ await streamPageToResponseImpl(args[0], args[1], args[2], {
290
+ ...args[3],
291
+ onDocumentBody(stream) {
292
+ bodyStream = stream;
293
+ }
294
+ });
295
+ } catch (error) {
296
+ if (bodyStream && !bodyStream.locked) await bodyStream.cancel(error).catch(() => {});
297
+ throw error;
298
+ }
299
+ }
267
300
  /**
268
301
  * Extract locale prefix from a URL path.
269
302
  * e.g. /fr/about -> { locale: "fr", url: "/about", hadPrefix: true }
@@ -282,9 +315,20 @@ function extractLocaleFromUrl(url, i18nConfig) {
282
315
  * 4. Render the component to HTML
283
316
  * 5. Wrap in _document shell and send response
284
317
  */
285
- function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatcher, basePath = "", trailingSlash = false, hasMiddleware = false, hasRewrites = false, clientTraceMetadata, htmlLimitedBots, reactStrictMode = false, expireTime = PAGES_CACHE_ONE_YEAR_SECONDS, crossOrigin, buildId = process.env.__VINEXT_BUILD_ID ?? "development") {
318
+ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatcher, basePath = "", trailingSlash = false, hasMiddleware = false, hasRewrites = false, clientTraceMetadata, htmlLimitedBots, reactStrictMode = false, expireTime = PAGES_CACHE_ONE_YEAR_SECONDS, crossOrigin, buildId = process.env.__VINEXT_BUILD_ID ?? "development", clientMiddlewareMatcher, classifyPageRoute) {
286
319
  const matcher = fileMatcher ?? createValidFileMatcher();
287
320
  const pagePatterns = routes.map((r) => patternToNextFormat(r.pattern));
321
+ const pageLoaders = routes.map((route) => ({
322
+ pattern: patternToNextFormat(route.pattern),
323
+ moduleSource: createPagesDevModuleUrl(server.config.root, route.filePath, "/"),
324
+ dataKind: classifyPageRoute?.(route) ?? "none"
325
+ }));
326
+ const errorFile = findFileWithExts(pagesDir, "_error", matcher);
327
+ pageLoaders.push({
328
+ pattern: "/_error",
329
+ moduleSource: errorFile ? createPagesDevModuleUrl(server.config.root, errorFile, "/") : "next/error",
330
+ dataKind: "none"
331
+ });
288
332
  const _alsRegistration = Promise.all([runner.import("vinext/head-state"), runner.import("vinext/router-state")]);
289
333
  _alsRegistration.catch(() => {});
290
334
  return async (req, res, url, statusCode, isDataReq = false, originalUrl = url) => {
@@ -324,6 +368,9 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
324
368
  basePath,
325
369
  buildId,
326
370
  clientTraceMetadata,
371
+ pageLoaders,
372
+ hasMiddleware,
373
+ clientMiddlewareMatcher,
327
374
  locale: locale ?? currentDefaultLocale,
328
375
  locales: i18nConfig?.locales,
329
376
  defaultLocale: currentDefaultLocale,
@@ -359,6 +406,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
359
406
  const userFacingParams = route.isDynamic ? params : null;
360
407
  let query = mergeRouteParamsIntoQuery(parseQueryString(url), params);
361
408
  const requestContext = createRequestContext();
409
+ let isStaticPropsRender = false;
362
410
  const closeRequest = () => void closeAfterResponse(requestContext);
363
411
  res.on("finish", closeRequest);
364
412
  res.on("close", closeRequest);
@@ -378,8 +426,20 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
378
426
  hostname: req.headers.host?.split(":", 1)[0]
379
427
  });
380
428
  }
381
- const pageModule = await importModule(runner, route.filePath);
382
- const isStaticPropsRender = typeof pageModule.getStaticProps === "function" && typeof pageModule.getServerSideProps !== "function";
429
+ const { pageModule, AppComponent, appFilePath, DocumentComponent } = await traceFindPageComponents(route.pattern, async () => {
430
+ const pageModule = await importModule(runner, route.filePath);
431
+ const appFilePath = findFileWithExts(pagesDir, "_app", matcher);
432
+ const appModule = appFilePath ? await importModule(runner, appFilePath) : null;
433
+ const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
434
+ const docModule = docFilePath ? await runner.import(docFilePath) : null;
435
+ return {
436
+ pageModule,
437
+ AppComponent: appModule?.default ?? null,
438
+ appFilePath,
439
+ DocumentComponent: docModule?.default ?? null
440
+ };
441
+ });
442
+ isStaticPropsRender = typeof pageModule.getStaticProps === "function" && typeof pageModule.getServerSideProps !== "function";
383
443
  if (isStaticPropsRender) {
384
444
  query = mergeRouteParamsIntoQuery({}, params);
385
445
  requestAsPath = localeStrippedUrl.split("?")[0];
@@ -389,9 +449,6 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
389
449
  shouldClear: false
390
450
  };
391
451
  const requestPreviewData = requestPreview.data;
392
- let AppComponent = null;
393
- const appFilePath = findFileWithExts(pagesDir, "_app", matcher);
394
- if (appFilePath) AppComponent = (await importModule(runner, appFilePath)).default ?? null;
395
452
  const pagesNextData = {
396
453
  ...buildPagesReadinessNextData({
397
454
  pageModule,
@@ -447,12 +504,17 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
447
504
  if (typeof pageModule.getStaticPaths === "function" && route.isDynamic) {
448
505
  const pathsResult = await pageModule.getStaticPaths({
449
506
  locales: i18nConfig?.locales ?? [],
450
- defaultLocale: currentDefaultLocale ?? ""
507
+ defaultLocale: i18nConfig?.defaultLocale ?? ""
451
508
  });
452
509
  const fallback = pathsResult?.fallback ?? false;
453
510
  const paths = pathsResult?.paths ?? [];
454
- const routeParams = getPagesRouteParams(patternToNextFormat(route.pattern));
455
- const isValidPath = paths.some((pathEntry) => matchesPagesStaticPath(pathEntry, params, routeParams, url));
511
+ const routePattern = patternToNextFormat(route.pattern);
512
+ const routeParams = getPagesRouteParams(routePattern);
513
+ const isValidPath = paths.some((pathEntry) => matchesPagesStaticPath(pathEntry, params, routeParams, localeStrippedUrl, {
514
+ locale,
515
+ locales: i18nConfig?.locales,
516
+ defaultLocale: i18nConfig?.defaultLocale
517
+ }));
456
518
  if (fallback === false && !isValidPath && requestPreviewData === false) {
457
519
  if (isDataReq) {
458
520
  const deploymentId = process.env.__VINEXT_DEPLOYMENT_ID || process.env.NEXT_DEPLOYMENT_ID;
@@ -540,7 +602,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
540
602
  defaultLocale: currentDefaultLocale,
541
603
  ...previewContext
542
604
  };
543
- const result = await pageModule.getServerSideProps(context);
605
+ const result = await tracePagesData("getServerSideProps", route.pattern, () => pageModule.getServerSideProps(context));
544
606
  if (res.writableEnded) return;
545
607
  if (result && "props" in result) {
546
608
  pageProps = mergePagesDataProps(renderProps.pageProps, await Promise.resolve(result.props));
@@ -609,7 +671,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
609
671
  ...previewContext
610
672
  };
611
673
  if (await loadAppInitialProps()) return;
612
- const result = await pageModule.getStaticProps(context);
674
+ const result = await tracePagesData("getStaticProps", route.pattern, () => pageModule.getStaticProps(context));
613
675
  const routePattern = patternToNextFormat(route.pattern);
614
676
  assertPages404DoesNotReturnNotFound(routePattern, result);
615
677
  if (result) staticPropsRevalidateSeconds = resolvePagesRevalidateSeconds(result, routePattern);
@@ -687,6 +749,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
687
749
  }
688
750
  if ((statusCode ?? 200) === 200) dataHeaders["x-nextjs-matched-path"] = `${locale ? `/${locale}` : ""}${patternToNextFormat(route.pattern)}`;
689
751
  if (gsspExtraHeaders) for (const [k, v] of Object.entries(gsspExtraHeaders)) dataHeaders[k] = v;
752
+ dataHeaders["Cache-Control"] = DEV_PAGES_CACHE_CONTROL;
690
753
  applyDevPagesPreviewHeaders(dataHeaders, requestPreview);
691
754
  const dataRoutePattern = patternToNextFormat(route.pattern);
692
755
  if (dataRoutePattern !== "/_error" && dataRoutePattern !== "/500") {
@@ -754,17 +817,19 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
754
817
  pageModuleUrl,
755
818
  appModuleUrl,
756
819
  hasMiddleware,
757
- routeUrl: requestAsPath
820
+ routeUrl: requestAsPath,
821
+ clientMiddlewareMatcher
758
822
  }
759
823
  };
760
824
  const hydrationScript = createPagesDevHydrationScript({
761
825
  appModuleSource,
762
826
  pageModuleSource,
827
+ pageLoaders,
763
828
  reactStrictMode: reactStrictMode === true,
764
829
  replaceFallbackRoute: true,
765
830
  scriptNonce
766
831
  });
767
- const nextDataScript = `<script id="__NEXT_DATA__" type="application/json"${nonceAttr}>${safeJsonStringify({
832
+ const allScripts = `${`<script id="__NEXT_DATA__" type="application/json"${nonceAttr}>${safeJsonStringify({
768
833
  props: renderProps,
769
834
  page: patternToNextFormat(route.pattern),
770
835
  query: isFallbackRender ? {} : params,
@@ -775,19 +840,18 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
775
840
  defaultLocale: currentDefaultLocale,
776
841
  domainLocales,
777
842
  ...serializedPagesNextData
778
- })}<\/script>`;
779
- const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
780
- let DocumentComponent = null;
781
- if (docFilePath) DocumentComponent = (await runner.import(docFilePath)).default ?? null;
782
- const allScripts = `${nextDataScript}\n ${createInlineScriptTag(`window.__VINEXT_PAGE_PATTERNS__=${safeJsonStringify(pagePatterns)}`, scriptNonce)}\n ${hydrationScript}`;
783
- const extraHeaders = { ...gsspExtraHeaders };
843
+ })}<\/script>`}\n ${createInlineScriptTag(`window.__VINEXT_PAGE_PATTERNS__=${safeJsonStringify(pagePatterns)}`, scriptNonce)}\n ${hydrationScript}`;
844
+ const extraHeaders = {
845
+ ...gsspExtraHeaders,
846
+ "Cache-Control": DEV_PAGES_CACHE_CONTROL
847
+ };
784
848
  if (typeof pageModule.getStaticProps === "function") {
785
849
  extraHeaders["Cache-Control"] = DEV_PAGES_CACHE_CONTROL;
786
850
  extraHeaders[NEXTJS_CACHE_HEADER] = isFallbackRender ? "MISS" : isOnDemandRevalidate ? "REVALIDATED" : "HIT";
787
851
  }
788
852
  applyDevPagesPreviewHeaders(extraHeaders, requestPreview);
789
853
  if (allFontPreloads.length > 0) extraHeaders["Link"] = allFontPreloads.map((p) => `<${p.href}>; rel=preload; as=font; type=${p.type}; crossorigin`).join(", ");
790
- await streamPageToResponse(res, withScriptNonce(element, scriptNonce), {
854
+ await streamPageToResponse(route.pattern, res, withScriptNonce(element, scriptNonce), {
791
855
  url,
792
856
  server,
793
857
  fontHeadHTML,
@@ -831,15 +895,16 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
831
895
  if (typeof routerShim.setSSRContext === "function") routerShim.setSSRContext(null);
832
896
  } catch (e) {
833
897
  console.error(e);
834
- reportRequestError(e instanceof Error ? e : new Error(String(e)), {
898
+ await reportRequestError(e, {
835
899
  path: url,
836
900
  method: req.method ?? "GET",
837
- headers: Object.fromEntries(Object.entries(req.headers).filter(([k]) => !k.startsWith(":")).map(([k, v]) => [k, Array.isArray(v) ? v.join(", ") : String(v ?? "")]))
901
+ headers: Object.fromEntries(Object.entries(req.headers).filter(([k]) => !k.startsWith(":")))
838
902
  }, {
839
903
  routerKind: "Pages Router",
840
904
  routePath: route.pattern,
841
- routeType: "render"
842
- }).catch(() => {});
905
+ routeType: "render",
906
+ revalidateReason: isOnDemandRevalidateRequest(Array.isArray(req.headers["x-prerender-revalidate"]) ? req.headers["x-prerender-revalidate"]?.[0] : req.headers["x-prerender-revalidate"]) ? "on-demand" : isStaticPropsRender ? "stale" : void 0
907
+ });
843
908
  try {
844
909
  await renderErrorPage(server, runner, req, res, url, pagesDir, 500, void 0, matcher, e instanceof Error ? e : new Error(String(e)), reactStrictMode, errorPageContext);
845
910
  } catch (fallbackErr) {
@@ -861,7 +926,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
861
926
  async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCode, wrapWithRouterContext, fileMatcher, err, reactStrictMode = false, context = { basePath: "" }) {
862
927
  attachPagesRequestCookies(req);
863
928
  const matcher = fileMatcher ?? createValidFileMatcher();
864
- const candidates = statusCode === 404 ? ["404", "_error"] : statusCode === 500 ? ["500", "_error"] : ["_error"];
929
+ const candidates = statusCode === 404 ? ["404", "_error"] : ["_error"];
865
930
  for (const candidate of candidates) {
866
931
  let errorRouterShim = null;
867
932
  let candidateLoaded = false;
@@ -869,16 +934,25 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
869
934
  try {
870
935
  errorAssetPath = findFileWithExts(pagesDir, candidate, matcher);
871
936
  if (!errorAssetPath && candidate !== "_error") continue;
872
- const errorModule = await importModule(runner, errorAssetPath ?? "next/error");
937
+ const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
938
+ const { errorModule, AppComponent, appAssetPath, DocumentComponent } = await traceFindPageComponents(errorPage, async () => {
939
+ const errorModule = await importModule(runner, errorAssetPath ?? "next/error");
940
+ const appAssetPath = findFileWithExts(pagesDir, "_app", matcher);
941
+ const appModule = appAssetPath ? await importModule(runner, appAssetPath) : null;
942
+ const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
943
+ const docModule = docFilePath ? await importModule(runner, docFilePath) : null;
944
+ return {
945
+ errorModule,
946
+ AppComponent: appModule?.default ?? null,
947
+ appAssetPath,
948
+ DocumentComponent: docModule?.default ?? null
949
+ };
950
+ });
873
951
  candidateLoaded = true;
874
952
  const ErrorComponent = errorModule.default;
875
953
  if (!ErrorComponent) continue;
876
- let AppComponent = null;
877
- const appAssetPath = findFileWithExts(pagesDir, "_app", matcher);
878
- if (appAssetPath) AppComponent = (await importModule(runner, appAssetPath)).default ?? null;
879
954
  const createElement = React.createElement;
880
955
  res.statusCode = statusCode;
881
- const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
882
956
  const errorRouter = {
883
957
  pathname: errorPage,
884
958
  query: parseQueryString(url),
@@ -908,12 +982,12 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
908
982
  };
909
983
  if (typeof errorModule.getStaticProps === "function") {
910
984
  const isOnDemandRevalidate = isOnDemandRevalidateRequest(req.headers[PRERENDER_REVALIDATE_HEADER]);
911
- const staticResult = await errorModule.getStaticProps({
985
+ const staticResult = await tracePagesData("getStaticProps", errorPage, () => errorModule.getStaticProps({
912
986
  locale: context.locale,
913
987
  locales: context.locales,
914
988
  defaultLocale: context.defaultLocale,
915
989
  revalidateReason: isOnDemandRevalidate ? "on-demand" : "stale"
916
- });
990
+ }));
917
991
  assertPages404DoesNotReturnNotFound(errorPage, staticResult);
918
992
  if (staticResult?.redirect) {
919
993
  applyDevPagesCacheHeaders(res, isOnDemandRevalidate ? "REVALIDATED" : "HIT", NEVER_CACHE_CONTROL);
@@ -961,9 +1035,6 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
961
1035
  pageProps: mergePagesDataProps(appRenderProps.pageProps, errorProps)
962
1036
  } : appRenderProps;
963
1037
  } else renderProps = { pageProps: errorProps };
964
- let DocumentComponent = null;
965
- const docFilePathErr = findFileWithExts(pagesDir, "_document", matcher);
966
- if (docFilePathErr) DocumentComponent = (await importModule(runner, docFilePathErr)).default ?? null;
967
1038
  const createErrorElement = (FinalApp, FinalComponent) => {
968
1039
  let errorElement = FinalApp ? createElement(FinalApp, {
969
1040
  ...renderProps,
@@ -990,22 +1061,28 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
990
1061
  query: parseQueryString(url),
991
1062
  buildId: context.buildId ?? process.env.__VINEXT_BUILD_ID ?? "development",
992
1063
  isFallback: false,
1064
+ locale: context.locale,
1065
+ locales: context.locales,
1066
+ defaultLocale: context.defaultLocale,
993
1067
  notFoundSrcPage: context.notFoundSrcPage,
994
1068
  __vinext: {
995
1069
  pageModuleUrl: errorModuleUrl ?? void 0,
996
- appModuleUrl: appModuleUrl ?? void 0
1070
+ appModuleUrl: appModuleUrl ?? void 0,
1071
+ hasMiddleware: context.hasMiddleware,
1072
+ clientMiddlewareMatcher: context.clientMiddlewareMatcher
997
1073
  }
998
1074
  })}<\/script>`}\n${createPagesDevHydrationScript({
999
1075
  appModuleSource,
1000
1076
  forceRouterReady: true,
1001
1077
  normalizePageProps: false,
1002
1078
  pageModuleSource: errorModuleSource,
1079
+ pageLoaders: context.pageLoaders,
1003
1080
  reactStrictMode: reactStrictMode === true,
1004
1081
  scriptNonce,
1005
1082
  setPagePatternsFromNextData: true
1006
1083
  })}`;
1007
1084
  if (statusCode === 404) stripDevPagesNotFoundFramingHeaders(res);
1008
- if (DocumentComponent) await streamPageToResponse(res, element, {
1085
+ if (DocumentComponent) await streamPageToResponse(errorPage, res, element, {
1009
1086
  url,
1010
1087
  server,
1011
1088
  fontHeadHTML: "",
@@ -1035,7 +1112,7 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
1035
1112
  preserveExistingContentType: statusCode === 404
1036
1113
  });
1037
1114
  else {
1038
- const bodyHtml = await renderToStringAsync(element);
1115
+ const bodyHtml = await tracePagesDocument(errorPage, () => renderToStringAsync(element));
1039
1116
  const traceMetaHTML = getClientTraceMetadataHTML(context.clientTraceMetadata);
1040
1117
  const protectedAssetMarker = `data-vinext-document-asset-props-protected-${randomUUID()}`;
1041
1118
  const protectAssetTags = (assetHtml) => markDocumentAssetPropsProtectedTags(assetHtml, protectedAssetMarker);
@@ -1,7 +1,7 @@
1
1
  import { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT } from "../utils/dev-stack-sourcemap-endpoint.js";
2
2
  import { ViteDevServer } from "vite";
3
3
  //#region src/server/dev-stack-sourcemap.d.ts
4
- type SourceMapPayload = {
4
+ export type SourceMapPayload = {
5
5
  version?: number;
6
6
  sources: string[];
7
7
  sourcesContent?: (string | null)[];
@@ -32,10 +32,10 @@ type MappedStackLine = {
32
32
  ignored: boolean;
33
33
  codeFrame?: StackCodeFramePayload;
34
34
  };
35
- declare function installDevStackSourcemapMiddleware(server: ViteDevServer): void;
36
- declare function mapStackLineWithMetadata(server: ViteDevServer, line: string, requestHost: string | undefined, sourceMapCache: Map<string, Promise<SourceMapPayload | null>>): Promise<MappedStackLine>;
37
- declare function originalPositionFor(sourceMap: SourceMapPayload, generatedLine: number, generatedColumn: number): SourceMapPosition | null;
38
- declare function decodeVlqSegment(segment: string): number[];
39
- declare function resolveSourceFile(source: string, sourceMap: SourceMapPayload, generatedUrl: URL): string;
35
+ export declare function installDevStackSourcemapMiddleware(server: ViteDevServer): void;
36
+ export declare function mapStackLineWithMetadata(server: ViteDevServer, line: string, requestHost: string | undefined, sourceMapCache: Map<string, Promise<SourceMapPayload | null>>): Promise<MappedStackLine>;
37
+ export declare function originalPositionFor(sourceMap: SourceMapPayload, generatedLine: number, generatedColumn: number): SourceMapPosition | null;
38
+ export declare function decodeVlqSegment(segment: string): number[];
39
+ export declare function resolveSourceFile(source: string, sourceMap: SourceMapPayload, generatedUrl: URL): string;
40
40
  //#endregion
41
- export { SourceMapPayload, VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT, decodeVlqSegment, installDevStackSourcemapMiddleware, mapStackLineWithMetadata, originalPositionFor, resolveSourceFile };
41
+ export { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT };
@@ -3,7 +3,7 @@ import { VINEXT_ORIGINAL_STACK_TRACE_ENDPOINT } from "../utils/dev-stack-sourcem
3
3
  import { readFile } from "node:fs/promises";
4
4
  import { fileURLToPath, pathToFileURL } from "node:url";
5
5
  //#region src/server/dev-stack-sourcemap.ts
6
- const MAX_ORIGINAL_STACK_TRACE_BODY_BYTES = 1024 * 1024;
6
+ const MAX_ORIGINAL_STACK_TRACE_BODY_BYTES = 1048576;
7
7
  const V8_PAREN_STACK_LINE = /^(\s*at\s+.*?\()(.+):(\d+):(\d+)(\)\s*)$/;
8
8
  const V8_BARE_STACK_LINE = /^(\s*at\s+)(.+):(\d+):(\d+)(\s*)$/;
9
9
  const MOZ_STACK_LINE = /^([^@\n]*@)(.+):(\d+):(\d+)(\s*)$/;
@@ -10,7 +10,6 @@ import React from "react";
10
10
  * Callers use this to decide whether the render pipeline owes `_document` the
11
11
  * full `getInitialProps` contract, since only an override can observe it.
12
12
  */
13
- declare function hasUserDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined): boolean;
14
- declare function callDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined, setDocumentInitialHead: ((head: React.ReactNode[]) => void) | undefined): Promise<void>;
15
- //#endregion
16
- export { callDocumentGetInitialProps, hasUserDocumentGetInitialProps };
13
+ export declare function hasUserDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined): boolean;
14
+ export declare function callDocumentGetInitialProps(DocumentComponent: React.ComponentType | null | undefined, setDocumentInitialHead: ((head: React.ReactNode[]) => void) | undefined): Promise<void>;
15
+ //#endregion
@@ -1,6 +1,6 @@
1
1
  //#region src/server/edge-api-runtime.d.ts
2
- declare function isEdgeApiRuntime(runtime: string | undefined): boolean;
3
- type EdgeApiExecutionRuntime = "node" | "worker";
2
+ export declare function isEdgeApiRuntime(runtime: string | undefined): boolean;
3
+ export type EdgeApiExecutionRuntime = "node" | "worker";
4
4
  /**
5
5
  * Remove wire-level body headers after Node's fetch implementation has decoded
6
6
  * an Edge API response. Next.js applies the same boundary in its edge sandbox.
@@ -8,6 +8,5 @@ type EdgeApiExecutionRuntime = "node" | "worker";
8
8
  * Workers keep the original response untouched: workerd preserves the encoded
9
9
  * body/header pair and can stream it directly to the client.
10
10
  */
11
- declare function finalizeEdgeApiResponse(response: Response, runtime: EdgeApiExecutionRuntime): Response;
12
- //#endregion
13
- export { EdgeApiExecutionRuntime, finalizeEdgeApiResponse, isEdgeApiRuntime };
11
+ export declare function finalizeEdgeApiResponse(response: Response, runtime: EdgeApiExecutionRuntime): Response;
12
+ //#endregion
@@ -1,2 +1,3 @@
1
- import handler from "virtual:vinext-worker-entry";
2
- export { handler as default };
1
+ import virtual_vinext_worker_entry_default from "virtual:vinext-worker-entry";
2
+ export * from "virtual:vinext-worker-entry";
3
+ export { virtual_vinext_worker_entry_default as default };
@@ -1,18 +1,3 @@
1
- import handler from "virtual:vinext-worker-entry";
2
- //#region src/server/fetch-handler.ts
3
- /**
4
- * Default Cloudflare fetch handler for vinext.
5
- *
6
- * Use this directly in wrangler.jsonc:
7
- * "main": "vinext/server/fetch-handler"
8
- *
9
- * Or import and delegate to it from a custom worker:
10
- * import handler from "vinext/server/fetch-handler";
11
- * return handler.fetch(request, env, ctx);
12
- *
13
- * The vinext plugin resolves this to the App Router or Pages Router handler
14
- * for the current project at build time.
15
- */
16
- var fetch_handler_default = handler;
17
- //#endregion
18
- export { fetch_handler_default as default };
1
+ import virtual_vinext_worker_entry_default from "virtual:vinext-worker-entry";
2
+ export * from "virtual:vinext-worker-entry";
3
+ export { virtual_vinext_worker_entry_default as default };
@@ -23,6 +23,5 @@ type FileBasedMetadataOptions = {
23
23
  */
24
24
  basePath?: string;
25
25
  };
26
- declare function applyFileBasedMetadata(metadata: Metadata | null, routePath: string, params: AppPageParams, metadataRoutes: readonly MetadataFileRoute[] | null | undefined, options?: FileBasedMetadataOptions): Promise<Metadata | null>;
27
- //#endregion
28
- export { applyFileBasedMetadata };
26
+ export declare function applyFileBasedMetadata(metadata: Metadata | null, routePath: string, params: AppPageParams, metadataRoutes: readonly MetadataFileRoute[] | null | undefined, options?: FileBasedMetadataOptions): Promise<Metadata | null>;
27
+ //#endregion
@@ -0,0 +1,46 @@
1
+ //#region src/server/framework-tracer.d.ts
2
+ type FrameworkSpanAttributeValue = string | number | boolean;
3
+ type FrameworkSpanDescriptor = {
4
+ attributes?: Readonly<Record<string, FrameworkSpanAttributeValue | undefined>>;
5
+ kind?: "client" | "internal" | "server";
6
+ name?: string;
7
+ recordErrors?: boolean;
8
+ type: string;
9
+ };
10
+ export type ResolvedFrameworkSpanDescriptor = {
11
+ attributes: Readonly<Record<string, FrameworkSpanAttributeValue>>;
12
+ kind: "client" | "internal" | "server";
13
+ name: string;
14
+ type: string;
15
+ };
16
+ export type FrameworkTracingBackendSpan = {
17
+ recordException?(error: unknown): void;
18
+ setAttribute(key: string, value: FrameworkSpanAttributeValue): void;
19
+ setErrorStatus?(message?: string): void;
20
+ updateName?(name: string): void;
21
+ };
22
+ export type FrameworkTracingIntegration = {
23
+ captureActiveContext?(): <T>(callback: () => T) => T;
24
+ getActiveSpan?(): FrameworkTracingBackendSpan | undefined;
25
+ id: string;
26
+ enterSpan<T>(descriptor: ResolvedFrameworkSpanDescriptor, callback: (span: FrameworkTracingBackendSpan) => T): T;
27
+ runWithDetachedContext?<T>(callback: () => T): T;
28
+ withPropagatedContext?<T>(carrier: Headers, callback: () => T): T;
29
+ };
30
+ export type FrameworkSpan = {
31
+ recordException(error: unknown): void;
32
+ setAttribute(key: string, value: FrameworkSpanAttributeValue | undefined): void;
33
+ setAttributes(attributes: Readonly<Record<string, FrameworkSpanAttributeValue | undefined>>): void;
34
+ setErrorStatus(message?: string): void;
35
+ updateName(name: string): void;
36
+ };
37
+ export type FrameworkTracer = {
38
+ captureActiveContext(): <T>(callback: () => T) => T;
39
+ getActiveScopeSpan(): FrameworkSpan | undefined;
40
+ runWithDetachedContext<T>(callback: () => T): T;
41
+ trace<T>(descriptor: FrameworkSpanDescriptor, callback: (span: FrameworkSpan) => T): T;
42
+ withPropagatedContext<T>(carrier: Headers, callback: () => T): T;
43
+ };
44
+ export declare function recordFrameworkSpanError(span: FrameworkSpan, error: unknown): void;
45
+ export declare function createFrameworkTracer(integrations: readonly FrameworkTracingIntegration[]): FrameworkTracer;
46
+ //#endregion