vinext 1.0.0-beta.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (800) hide show
  1. package/README.md +150 -92
  2. package/THIRD_PARTY_LICENSES.md +25 -0
  3. package/dist/_virtual/_rolldown/runtime.js +25 -0
  4. package/dist/build/action-owner-manifest.d.ts +8 -9
  5. package/dist/build/action-owner-manifest.js +23 -5
  6. package/dist/build/assets-ignore.d.ts +3 -4
  7. package/dist/build/clean-output.d.ts +2 -3
  8. package/dist/build/client-build-config.d.ts +40 -12
  9. package/dist/build/client-build-config.js +76 -6
  10. package/dist/build/css-url-assets.d.ts +4 -5
  11. package/dist/build/css-url-assets.js +5 -2
  12. package/dist/build/google-fonts/build-url.d.ts +3 -4
  13. package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
  14. package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
  15. package/dist/build/google-fonts/font-metadata.d.ts +2 -3
  16. package/dist/build/google-fonts/get-axes.d.ts +2 -3
  17. package/dist/build/google-fonts/sort-variants.d.ts +2 -3
  18. package/dist/build/google-fonts/validate.d.ts +2 -3
  19. package/dist/build/google-fonts/validate.js +8 -4
  20. package/dist/build/inject-pregenerated-paths.d.ts +2 -3
  21. package/dist/build/inject-pregenerated-paths.js +16 -14
  22. package/dist/build/inline-css.d.ts +3 -4
  23. package/dist/build/layout-classification-types.d.ts +4 -5
  24. package/dist/build/layout-classification.d.ts +7 -8
  25. package/dist/build/lifecycle.d.ts +42 -0
  26. package/dist/build/lifecycle.js +253 -0
  27. package/dist/build/module-dependency-cache.d.ts +2 -3
  28. package/dist/build/next-client-runtime-manifests.d.ts +4 -5
  29. package/dist/build/nitro-route-rules.d.ts +6 -7
  30. package/dist/build/nitro-route-rules.js +1 -1
  31. package/dist/build/pages-client-assets-module.d.ts +4 -8
  32. package/dist/build/pages-client-assets-module.js +1 -13
  33. package/dist/build/precompress.d.ts +2 -3
  34. package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
  35. package/dist/build/prerender-cloudflare-loader.js +49 -0
  36. package/dist/build/prerender-paths.d.ts +36 -11
  37. package/dist/build/prerender-paths.js +273 -97
  38. package/dist/build/prerender-phase.d.ts +2 -3
  39. package/dist/build/prerender-server-entry.js +11 -3
  40. package/dist/build/prerender-server-pool.d.ts +9 -6
  41. package/dist/build/prerender-server-pool.js +8 -5
  42. package/dist/build/prerender.d.ts +65 -15
  43. package/dist/build/prerender.js +139 -43
  44. package/dist/build/preview-credentials.d.ts +5 -6
  45. package/dist/build/preview-credentials.js +2 -2
  46. package/dist/build/public-dir-conflict.d.ts +5 -6
  47. package/dist/build/public-dir-conflict.js +2 -1
  48. package/dist/build/report.d.ts +24 -20
  49. package/dist/build/report.js +10 -2
  50. package/dist/build/route-classification-injector.d.ts +2 -3
  51. package/dist/build/route-classification-manifest.d.ts +5 -6
  52. package/dist/build/run-prerender.d.ts +11 -9
  53. package/dist/build/run-prerender.js +25 -16
  54. package/dist/build/server-entry.d.ts +4 -0
  55. package/dist/build/server-entry.js +28 -0
  56. package/dist/build/server-manifest.d.ts +8 -3
  57. package/dist/build/server-manifest.js +14 -2
  58. package/dist/build/ssr-manifest.d.ts +5 -6
  59. package/dist/build/standalone.d.ts +2 -3
  60. package/dist/build/standalone.js +2 -2
  61. package/dist/build/static-export.d.ts +6 -7
  62. package/dist/cache/cache-adapters-virtual.d.ts +60 -20
  63. package/dist/cache/cache-adapters-virtual.js +50 -7
  64. package/dist/check.d.ts +11 -10
  65. package/dist/check.js +467 -176
  66. package/dist/cli-args.d.ts +7 -16
  67. package/dist/cli-args.js +2 -45
  68. package/dist/cli-dev-config.d.ts +10 -7
  69. package/dist/cli-dev-config.js +160 -3
  70. package/dist/cli.js +124 -442
  71. package/dist/client/app-nav-failure-handler.d.ts +6 -7
  72. package/dist/client/client-rewrite-matcher.d.ts +2 -3
  73. package/dist/client/client-rewrites.d.ts +4 -5
  74. package/dist/client/dev-error-overlay-store.d.ts +13 -14
  75. package/dist/client/dev-error-overlay.d.ts +15 -15
  76. package/dist/client/dev-error-overlay.js +8 -5
  77. package/dist/client/instrumentation-client-inject.d.ts +3 -4
  78. package/dist/client/instrumentation-client-state.d.ts +5 -6
  79. package/dist/client/instrumentation-client.d.ts +3 -4
  80. package/dist/client/navigation-runtime.d.ts +21 -17
  81. package/dist/client/navigation-runtime.js +2 -1
  82. package/dist/client/pages-router-link-navigation.d.ts +4 -5
  83. package/dist/client/react-instance.d.ts +2 -3
  84. package/dist/client/validate-module-path.d.ts +2 -3
  85. package/dist/client/vinext-next-data.d.ts +7 -10
  86. package/dist/client/window-next.d.ts +4 -5
  87. package/dist/config/config-matchers.d.ts +16 -16
  88. package/dist/config/config-matchers.js +2 -4
  89. package/dist/config/dotenv.d.ts +3 -4
  90. package/dist/config/dotenv.js +2 -1
  91. package/dist/config/next-config.d.ts +31 -27
  92. package/dist/config/next-config.js +163 -16
  93. package/dist/config/prerender.d.ts +20 -16
  94. package/dist/config/prerender.js +10 -4
  95. package/dist/config/request-context.d.ts +5 -6
  96. package/dist/config/server-external-packages.d.ts +14 -3
  97. package/dist/config/server-external-packages.js +37 -3
  98. package/dist/config/tsconfig-paths.d.ts +3 -4
  99. package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
  100. package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
  101. package/dist/entries/app-browser-entry.d.ts +4 -5
  102. package/dist/entries/app-browser-entry.js +1 -3
  103. package/dist/entries/app-rsc-entry.d.ts +10 -3
  104. package/dist/entries/app-rsc-entry.js +502 -51
  105. package/dist/entries/app-rsc-manifest.d.ts +4 -3
  106. package/dist/entries/app-rsc-manifest.js +26 -8
  107. package/dist/entries/app-ssr-entry.d.ts +2 -3
  108. package/dist/entries/app-ssr-entry.js +8 -1
  109. package/dist/entries/pages-client-entry.d.ts +3 -3
  110. package/dist/entries/pages-client-entry.js +17 -2
  111. package/dist/entries/pages-server-entry.d.ts +13 -3
  112. package/dist/entries/pages-server-entry.js +234 -33
  113. package/dist/entries/runtime-entry-module.d.ts +4 -5
  114. package/dist/image/image-adapters-virtual.d.ts +4 -5
  115. package/dist/index.d.ts +10 -11
  116. package/dist/index.js +711 -189
  117. package/dist/init-cloudflare.d.ts +26 -17
  118. package/dist/init-cloudflare.js +710 -102
  119. package/dist/init-platform.d.ts +26 -22
  120. package/dist/init-platform.js +85 -29
  121. package/dist/init.d.ts +19 -13
  122. package/dist/init.js +123 -41
  123. package/dist/plugins/action-owner-manifest.d.ts +3 -4
  124. package/dist/plugins/action-owner-manifest.js +10 -3
  125. package/dist/plugins/ast-scope.d.ts +10 -11
  126. package/dist/plugins/ast-scope.js +10 -22
  127. package/dist/plugins/ast-utils.d.ts +16 -29
  128. package/dist/plugins/ast-utils.js +27 -71
  129. package/dist/plugins/async-hooks-stub.d.ts +2 -3
  130. package/dist/plugins/client-reference-dedup.d.ts +4 -5
  131. package/dist/plugins/css-data-url.d.ts +2 -3
  132. package/dist/plugins/css-module-imports.d.ts +3 -4
  133. package/dist/plugins/css-module-imports.js +1 -1
  134. package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
  135. package/dist/plugins/dynamic-preload-metadata.js +55 -154
  136. package/dist/plugins/environment.d.ts +2 -3
  137. package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
  138. package/dist/plugins/extensionless-dynamic-import.js +6 -10
  139. package/dist/plugins/fonts.d.ts +10 -11
  140. package/dist/plugins/fonts.js +4 -3
  141. package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
  142. package/dist/plugins/ignore-dynamic-requests.js +60 -89
  143. package/dist/plugins/import-meta-url.d.ts +6 -7
  144. package/dist/plugins/import-meta-url.js +31 -43
  145. package/dist/plugins/instrumentation-client.d.ts +3 -3
  146. package/dist/plugins/instrumentation-client.js +46 -10
  147. package/dist/plugins/middleware-export-validation.d.ts +3 -4
  148. package/dist/plugins/middleware-export-validation.js +3 -3
  149. package/dist/plugins/middleware-server-only.d.ts +2 -3
  150. package/dist/plugins/og-asset-ownership.d.ts +3 -4
  151. package/dist/plugins/og-assets.d.ts +4 -5
  152. package/dist/plugins/og-assets.js +32 -13
  153. package/dist/plugins/og-harfbuzz.d.ts +24 -0
  154. package/dist/plugins/og-harfbuzz.js +260 -0
  155. package/dist/plugins/optimize-imports.d.ts +7 -7
  156. package/dist/plugins/optimize-imports.js +32 -44
  157. package/dist/plugins/pages-node-externals.d.ts +2 -3
  158. package/dist/plugins/pages-node-externals.js +6 -11
  159. package/dist/plugins/postcss.d.ts +8 -4
  160. package/dist/plugins/postcss.js +1 -1
  161. package/dist/plugins/remove-console.d.ts +2 -3
  162. package/dist/plugins/remove-console.js +0 -1
  163. package/dist/plugins/require-condition-resolution.d.ts +3 -4
  164. package/dist/plugins/require-condition-resolution.js +17 -18
  165. package/dist/plugins/require-context.d.ts +2 -3
  166. package/dist/plugins/require-context.js +13 -21
  167. package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
  168. package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
  169. package/dist/plugins/rsc-client-shim-excludes.js +1 -0
  170. package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
  171. package/dist/plugins/sass.d.ts +7 -8
  172. package/dist/plugins/sass.js +7 -4
  173. package/dist/plugins/server-externals-manifest.d.ts +2 -3
  174. package/dist/plugins/strip-server-exports.d.ts +5 -6
  175. package/dist/plugins/strip-server-exports.js +1 -1
  176. package/dist/plugins/styled-jsx.d.ts +2 -3
  177. package/dist/plugins/styled-jsx.js +7 -7
  178. package/dist/plugins/transform-cache.d.ts +2 -3
  179. package/dist/plugins/transform-result.d.ts +3 -4
  180. package/dist/plugins/transitive-externals.d.ts +2 -3
  181. package/dist/plugins/typeof-window.d.ts +6 -7
  182. package/dist/plugins/typeof-window.js +30 -31
  183. package/dist/plugins/use-cache-callable.d.ts +2 -5
  184. package/dist/plugins/use-cache-callable.js +43 -22
  185. package/dist/plugins/wasm-module-import.d.ts +2 -3
  186. package/dist/plugins/worker-image-imports.d.ts +2 -3
  187. package/dist/plugins/worker-image-imports.js +6 -8
  188. package/dist/routing/app-route-graph.d.ts +19 -19
  189. package/dist/routing/app-route-graph.js +3 -2
  190. package/dist/routing/app-router.d.ts +19 -6
  191. package/dist/routing/app-router.js +24 -2
  192. package/dist/routing/file-matcher.d.ts +9 -10
  193. package/dist/routing/pages-router.d.ts +6 -6
  194. package/dist/routing/pages-router.js +1 -1
  195. package/dist/routing/route-matching.d.ts +4 -5
  196. package/dist/routing/route-matching.js +4 -2
  197. package/dist/routing/route-pattern.d.ts +13 -14
  198. package/dist/routing/route-trie.d.ts +5 -6
  199. package/dist/routing/route-validation.d.ts +3 -4
  200. package/dist/routing/route-validation.js +12 -11
  201. package/dist/routing/utils.d.ts +13 -14
  202. package/dist/server/accept-encoding.d.ts +9 -10
  203. package/dist/server/api-handler.d.ts +2 -3
  204. package/dist/server/api-handler.js +9 -6
  205. package/dist/server/app-action-forwarding.d.ts +3 -4
  206. package/dist/server/app-action-forwarding.js +1 -1
  207. package/dist/server/app-action-request.d.ts +2 -3
  208. package/dist/server/app-bfcache-id.d.ts +3 -4
  209. package/dist/server/app-bfcache-identity.d.ts +8 -9
  210. package/dist/server/app-browser-action-result.d.ts +15 -16
  211. package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
  212. package/dist/server/app-browser-entry.js +87 -34
  213. package/dist/server/app-browser-error.d.ts +5 -6
  214. package/dist/server/app-browser-error.js +9 -3
  215. package/dist/server/app-browser-history-controller.d.ts +4 -5
  216. package/dist/server/app-browser-hydration.d.ts +16 -6
  217. package/dist/server/app-browser-hydration.js +14 -1
  218. package/dist/server/app-browser-interception-context.d.ts +3 -4
  219. package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
  220. package/dist/server/app-browser-navigation-abort.d.ts +3 -4
  221. package/dist/server/app-browser-navigation-controller.d.ts +8 -8
  222. package/dist/server/app-browser-navigation-controller.js +8 -4
  223. package/dist/server/app-browser-navigation-response.d.ts +2 -3
  224. package/dist/server/app-browser-popstate.d.ts +4 -5
  225. package/dist/server/app-browser-prefetch-response.d.ts +5 -6
  226. package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
  227. package/dist/server/app-browser-server-action-client.d.ts +7 -6
  228. package/dist/server/app-browser-server-action-client.js +9 -5
  229. package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
  230. package/dist/server/app-browser-state.d.ts +17 -17
  231. package/dist/server/app-browser-state.js +6 -2
  232. package/dist/server/app-browser-stream.d.ts +4 -5
  233. package/dist/server/app-browser-stream.js +8 -6
  234. package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
  235. package/dist/server/app-browser-visible-commit.d.ts +6 -7
  236. package/dist/server/app-client-reference-preloader.d.ts +2 -3
  237. package/dist/server/app-elements-wire-key.d.ts +25 -0
  238. package/dist/server/app-elements-wire-key.js +69 -0
  239. package/dist/server/app-elements-wire.d.ts +34 -53
  240. package/dist/server/app-elements-wire.js +4 -75
  241. package/dist/server/app-elements.d.ts +5 -5
  242. package/dist/server/app-elements.js +1 -1
  243. package/dist/server/app-fallback-renderer.d.ts +4 -4
  244. package/dist/server/app-fallback-renderer.js +6 -6
  245. package/dist/server/app-fetch-tracing.d.ts +15 -0
  246. package/dist/server/app-fetch-tracing.js +38 -0
  247. package/dist/server/app-history-state.d.ts +26 -27
  248. package/dist/server/app-history-state.js +19 -11
  249. package/dist/server/app-hook-warning-suppression.d.ts +2 -3
  250. package/dist/server/app-hydration-cache-publication.d.ts +3 -4
  251. package/dist/server/app-inline-css-client.d.ts +3 -4
  252. package/dist/server/app-interception-context-header.d.ts +2 -3
  253. package/dist/server/app-layout-param-observation.d.ts +7 -8
  254. package/dist/server/app-metadata-tracing.d.ts +12 -0
  255. package/dist/server/app-metadata-tracing.js +17 -0
  256. package/dist/server/app-middleware.d.ts +7 -7
  257. package/dist/server/app-middleware.js +2 -3
  258. package/dist/server/app-mounted-slots-header.d.ts +2 -3
  259. package/dist/server/app-mounted-slots-header.js +2 -2
  260. package/dist/server/app-optimistic-routing.d.ts +10 -11
  261. package/dist/server/app-optimistic-routing.js +3 -2
  262. package/dist/server/app-page-boundary-render.d.ts +6 -6
  263. package/dist/server/app-page-boundary-render.js +10 -4
  264. package/dist/server/app-page-boundary.d.ts +9 -10
  265. package/dist/server/app-page-boundary.js +1 -1
  266. package/dist/server/app-page-cache-finalizer.d.ts +18 -9
  267. package/dist/server/app-page-cache-finalizer.js +51 -16
  268. package/dist/server/app-page-cache-render.d.ts +8 -5
  269. package/dist/server/app-page-cache-render.js +22 -5
  270. package/dist/server/app-page-cache.d.ts +28 -9
  271. package/dist/server/app-page-cache.js +95 -24
  272. package/dist/server/app-page-dispatch.d.ts +34 -12
  273. package/dist/server/app-page-dispatch.js +181 -64
  274. package/dist/server/app-page-element-builder.d.ts +13 -11
  275. package/dist/server/app-page-element-builder.js +104 -61
  276. package/dist/server/app-page-execution.d.ts +14 -14
  277. package/dist/server/app-page-execution.js +11 -7
  278. package/dist/server/app-page-head.d.ts +19 -16
  279. package/dist/server/app-page-head.js +25 -25
  280. package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
  281. package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
  282. package/dist/server/app-page-method.d.ts +5 -11
  283. package/dist/server/app-page-method.js +2 -9
  284. package/dist/server/app-page-params.d.ts +5 -6
  285. package/dist/server/app-page-ppr-runtime.d.ts +2 -2
  286. package/dist/server/app-page-probe.d.ts +5 -6
  287. package/dist/server/app-page-probe.js +5 -4
  288. package/dist/server/app-page-render-identity.d.ts +4 -5
  289. package/dist/server/app-page-render-observation.d.ts +8 -9
  290. package/dist/server/app-page-render-observation.js +1 -1
  291. package/dist/server/app-page-render.d.ts +41 -6
  292. package/dist/server/app-page-render.js +171 -25
  293. package/dist/server/app-page-request.d.ts +10 -9
  294. package/dist/server/app-page-request.js +16 -12
  295. package/dist/server/app-page-response.d.ts +20 -9
  296. package/dist/server/app-page-response.js +30 -12
  297. package/dist/server/app-page-route-wiring.d.ts +15 -15
  298. package/dist/server/app-page-route-wiring.js +31 -24
  299. package/dist/server/app-page-search-params-observation.d.ts +26 -5
  300. package/dist/server/app-page-search-params-observation.js +42 -6
  301. package/dist/server/app-page-segment-plan.d.ts +2 -3
  302. package/dist/server/app-page-segment-state.d.ts +11 -12
  303. package/dist/server/app-page-stream.d.ts +27 -11
  304. package/dist/server/app-page-stream.js +34 -6
  305. package/dist/server/app-page-tracing.d.ts +33 -0
  306. package/dist/server/app-page-tracing.js +49 -0
  307. package/dist/server/app-pages-bridge.d.ts +6 -6
  308. package/dist/server/app-pages-bridge.js +17 -4
  309. package/dist/server/app-post-middleware-context.d.ts +2 -3
  310. package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
  311. package/dist/server/app-ppr-fallback-shell-render.js +3 -2
  312. package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
  313. package/dist/server/app-prerender-endpoints.d.ts +5 -5
  314. package/dist/server/app-prerender-endpoints.js +3 -1
  315. package/dist/server/app-prerender-static-params.d.ts +15 -7
  316. package/dist/server/app-prerender-static-params.js +24 -9
  317. package/dist/server/app-render-dependency.d.ts +14 -13
  318. package/dist/server/app-render-dependency.js +5 -1
  319. package/dist/server/app-request-context.d.ts +3 -4
  320. package/dist/server/app-request-stage-context.d.ts +5 -0
  321. package/dist/server/app-request-stage-context.js +11 -0
  322. package/dist/server/app-request-stage-dispatch.d.ts +25 -0
  323. package/dist/server/app-request-stage-dispatch.js +54 -0
  324. package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
  325. package/dist/server/app-request-stage-independent-entry.js +115 -0
  326. package/dist/server/app-response-header-provenance.d.ts +13 -7
  327. package/dist/server/app-response-header-provenance.js +34 -1
  328. package/dist/server/app-response-stage-entry.d.ts +9 -0
  329. package/dist/server/app-response-stage-entry.js +87 -0
  330. package/dist/server/app-route-handler-cache.d.ts +2 -3
  331. package/dist/server/app-route-handler-cache.js +46 -34
  332. package/dist/server/app-route-handler-dispatch.d.ts +3 -3
  333. package/dist/server/app-route-handler-dispatch.js +68 -54
  334. package/dist/server/app-route-handler-execution.d.ts +17 -13
  335. package/dist/server/app-route-handler-execution.js +69 -18
  336. package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
  337. package/dist/server/app-route-handler-middleware-context.js +15 -0
  338. package/dist/server/app-route-handler-policy.d.ts +11 -11
  339. package/dist/server/app-route-handler-response.d.ts +9 -10
  340. package/dist/server/app-route-handler-response.js +2 -0
  341. package/dist/server/app-route-handler-runtime.d.ts +9 -10
  342. package/dist/server/app-route-handler-runtime.js +20 -16
  343. package/dist/server/app-route-module-loader.d.ts +6 -7
  344. package/dist/server/app-route-request-built-ins.d.ts +3 -4
  345. package/dist/server/app-route-tree-prefetch.d.ts +6 -7
  346. package/dist/server/app-route-tree-prefetch.js +2 -1
  347. package/dist/server/app-router-entry.d.ts +2 -0
  348. package/dist/server/app-router-entry.js +28 -8
  349. package/dist/server/app-rsc-cache-busting.d.ts +34 -27
  350. package/dist/server/app-rsc-cache-busting.js +14 -2
  351. package/dist/server/app-rsc-combined-handler.d.ts +9 -0
  352. package/dist/server/app-rsc-combined-handler.js +11 -0
  353. package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
  354. package/dist/server/app-rsc-error-handler.d.ts +12 -6
  355. package/dist/server/app-rsc-error-handler.js +15 -6
  356. package/dist/server/app-rsc-errors.d.ts +12 -9
  357. package/dist/server/app-rsc-errors.js +15 -13
  358. package/dist/server/app-rsc-handler.d.ts +31 -6
  359. package/dist/server/app-rsc-handler.js +411 -61
  360. package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
  361. package/dist/server/app-rsc-render-mode.d.ts +8 -9
  362. package/dist/server/app-rsc-request-normalization.d.ts +3 -3
  363. package/dist/server/app-rsc-request-normalization.js +2 -1
  364. package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
  365. package/dist/server/app-rsc-response-finalizer.js +6 -6
  366. package/dist/server/app-rsc-response-stage.d.ts +6 -0
  367. package/dist/server/app-rsc-response-stage.js +251 -0
  368. package/dist/server/app-rsc-route-matching.d.ts +3 -4
  369. package/dist/server/app-rsc-route-matching.js +3 -2
  370. package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
  371. package/dist/server/app-rsc-vary.d.ts +16 -0
  372. package/dist/server/app-rsc-vary.js +31 -0
  373. package/dist/server/app-segment-config.d.ts +119 -7
  374. package/dist/server/app-segment-config.js +242 -2
  375. package/dist/server/app-server-action-execution.d.ts +16 -12
  376. package/dist/server/app-server-action-execution.js +86 -33
  377. package/dist/server/app-ssr-entry.d.ts +14 -4
  378. package/dist/server/app-ssr-entry.js +61 -14
  379. package/dist/server/app-ssr-error-meta.d.ts +3 -4
  380. package/dist/server/app-ssr-error-meta.js +2 -1
  381. package/dist/server/app-ssr-router-instance.d.ts +2 -3
  382. package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
  383. package/dist/server/app-ssr-search-params-gate.js +54 -0
  384. package/dist/server/app-ssr-stream.d.ts +13 -9
  385. package/dist/server/app-ssr-stream.js +33 -7
  386. package/dist/server/app-static-generation.d.ts +4 -5
  387. package/dist/server/app-visited-response-cache.d.ts +11 -12
  388. package/dist/server/app-visited-response-cache.js +2 -2
  389. package/dist/server/app-worker-stages.d.ts +112 -0
  390. package/dist/server/app-worker-stages.js +105 -0
  391. package/dist/server/artifact-compatibility.d.ts +11 -12
  392. package/dist/server/before-interactive-head.d.ts +2 -3
  393. package/dist/server/bfcache-identity.d.ts +7 -8
  394. package/dist/server/cache-control.d.ts +35 -13
  395. package/dist/server/cache-control.js +71 -5
  396. package/dist/server/cache-headers.d.ts +3 -4
  397. package/dist/server/cache-proof.d.ts +75 -70
  398. package/dist/server/cache-proof.js +9 -1
  399. package/dist/server/cacheability-limits.d.ts +4 -5
  400. package/dist/server/cacheability-limits.js +2 -2
  401. package/dist/server/cacheability-manifest.d.ts +42 -16
  402. package/dist/server/cacheability-manifest.js +60 -10
  403. package/dist/server/cacheability-request.d.ts +37 -8
  404. package/dist/server/cacheability-request.js +159 -57
  405. package/dist/server/client-reuse-manifest.d.ts +17 -18
  406. package/dist/server/client-reuse-manifest.js +2 -2
  407. package/dist/server/client-trace-metadata.d.ts +9 -6
  408. package/dist/server/client-trace-metadata.js +27 -15
  409. package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
  410. package/dist/server/cloudflare-workers-tracing.js +8 -0
  411. package/dist/server/config-headers.d.ts +19 -5
  412. package/dist/server/config-headers.js +25 -11
  413. package/dist/server/cookie-utils.d.ts +2 -3
  414. package/dist/server/csp.d.ts +5 -6
  415. package/dist/server/default-global-error-module.d.ts +2 -3
  416. package/dist/server/default-global-not-found-module.d.ts +2 -3
  417. package/dist/server/default-not-found-module.d.ts +2 -3
  418. package/dist/server/defer-until-stream-consumed.d.ts +2 -3
  419. package/dist/server/defer-until-stream-consumed.js +2 -1
  420. package/dist/server/dev-initial-server-error.d.ts +3 -4
  421. package/dist/server/dev-initial-server-error.js +2 -1
  422. package/dist/server/dev-lockfile.d.ts +7 -8
  423. package/dist/server/dev-lockfile.js +4 -1
  424. package/dist/server/dev-module-runner.d.ts +2 -3
  425. package/dist/server/dev-origin-check.d.ts +5 -6
  426. package/dist/server/dev-route-files.d.ts +2 -3
  427. package/dist/server/dev-server.d.ts +4 -5
  428. package/dist/server/dev-server.js +130 -61
  429. package/dist/server/dev-stack-sourcemap.d.ts +7 -7
  430. package/dist/server/dev-stack-sourcemap.js +1 -1
  431. package/dist/server/document-initial-head.d.ts +3 -4
  432. package/dist/server/edge-api-runtime.d.ts +4 -5
  433. package/dist/server/fetch-handler.d.ts +3 -2
  434. package/dist/server/fetch-handler.js +3 -18
  435. package/dist/server/file-based-metadata.d.ts +2 -3
  436. package/dist/server/framework-tracer.d.ts +46 -0
  437. package/dist/server/framework-tracer.js +125 -0
  438. package/dist/server/fully-buffered-response.d.ts +11 -0
  439. package/dist/server/fully-buffered-response.js +19 -0
  440. package/dist/server/headers.d.ts +54 -61
  441. package/dist/server/headers.js +18 -31
  442. package/dist/server/html.d.ts +6 -27
  443. package/dist/server/html.js +16 -1
  444. package/dist/server/http-conditional.d.ts +5 -6
  445. package/dist/server/http-date.d.ts +2 -3
  446. package/dist/server/http-error-responses.d.ts +9 -10
  447. package/dist/server/http-range.d.ts +4 -5
  448. package/dist/server/hybrid-route-priority.d.ts +4 -5
  449. package/dist/server/image-optimization.d.ts +20 -21
  450. package/dist/server/implicit-tags.d.ts +3 -4
  451. package/dist/server/instrumentation-runtime.d.ts +17 -21
  452. package/dist/server/instrumentation-runtime.js +26 -8
  453. package/dist/server/instrumentation.d.ts +26 -30
  454. package/dist/server/instrumentation.js +18 -23
  455. package/dist/server/isr-cache.d.ts +28 -27
  456. package/dist/server/isr-cache.js +18 -70
  457. package/dist/server/isr-decision.d.ts +4 -4
  458. package/dist/server/metadata-route-build-data.d.ts +4 -5
  459. package/dist/server/metadata-route-cache-policy.d.ts +2 -3
  460. package/dist/server/metadata-route-response.d.ts +7 -7
  461. package/dist/server/metadata-route-response.js +68 -2
  462. package/dist/server/metadata-routes.d.ts +18 -19
  463. package/dist/server/middleware-matcher-pattern.d.ts +6 -7
  464. package/dist/server/middleware-matcher.d.ts +6 -7
  465. package/dist/server/middleware-path-to-regexp.d.ts +6 -7
  466. package/dist/server/middleware-path-to-regexp.js +11 -9
  467. package/dist/server/middleware-response-headers.d.ts +3 -4
  468. package/dist/server/middleware-runtime.d.ts +7 -8
  469. package/dist/server/middleware-runtime.js +36 -7
  470. package/dist/server/middleware.d.ts +5 -5
  471. package/dist/server/multi-stage.d.ts +141 -0
  472. package/dist/server/multi-stage.js +8 -0
  473. package/dist/server/navigation-planner.d.ts +26 -26
  474. package/dist/server/navigation-trace.d.ts +11 -12
  475. package/dist/server/next-error-digest.d.ts +4 -5
  476. package/dist/server/normalize-path.d.ts +5 -6
  477. package/dist/server/open-redirect.d.ts +2 -3
  478. package/dist/server/opentelemetry-api.d.ts +59 -0
  479. package/dist/server/opentelemetry-api.js +53 -0
  480. package/dist/server/opentelemetry-tracing.d.ts +5 -0
  481. package/dist/server/opentelemetry-tracing.js +83 -0
  482. package/dist/server/operation-token.d.ts +11 -12
  483. package/dist/server/otel-tracer-extension.d.ts +7 -9
  484. package/dist/server/otel-tracer-extension.js +37 -36
  485. package/dist/server/pages-api-route.d.ts +5 -4
  486. package/dist/server/pages-api-route.js +20 -7
  487. package/dist/server/pages-asset-tags.d.ts +6 -6
  488. package/dist/server/pages-asset-tags.js +37 -2
  489. package/dist/server/pages-body-parser-config.d.ts +4 -5
  490. package/dist/server/pages-body-parser-config.js +4 -4
  491. package/dist/server/pages-client-assets.d.ts +11 -5
  492. package/dist/server/pages-data-route.d.ts +11 -12
  493. package/dist/server/pages-data-route.js +1 -1
  494. package/dist/server/pages-default-404.d.ts +3 -4
  495. package/dist/server/pages-dev-hydration.d.ts +9 -4
  496. package/dist/server/pages-dev-hydration.js +19 -7
  497. package/dist/server/pages-dev-module-url.d.ts +3 -4
  498. package/dist/server/pages-dev-stylesheets.d.ts +5 -6
  499. package/dist/server/pages-document-asset-props.d.ts +6 -7
  500. package/dist/server/pages-document-initial-props.d.ts +5 -5
  501. package/dist/server/pages-document-initial-props.js +4 -2
  502. package/dist/server/pages-execution-tracing.d.ts +40 -0
  503. package/dist/server/pages-execution-tracing.js +80 -0
  504. package/dist/server/pages-get-initial-props.d.ts +9 -10
  505. package/dist/server/pages-i18n.d.ts +8 -8
  506. package/dist/server/pages-media-type.d.ts +4 -5
  507. package/dist/server/pages-node-compat.d.ts +11 -10
  508. package/dist/server/pages-node-compat.js +12 -4
  509. package/dist/server/pages-page-data.d.ts +18 -19
  510. package/dist/server/pages-page-data.js +11 -10
  511. package/dist/server/pages-page-handler.d.ts +7 -6
  512. package/dist/server/pages-page-handler.js +77 -39
  513. package/dist/server/pages-page-method.d.ts +2 -3
  514. package/dist/server/pages-page-response.d.ts +14 -10
  515. package/dist/server/pages-page-response.js +49 -31
  516. package/dist/server/pages-preview.d.ts +10 -11
  517. package/dist/server/pages-readiness.d.ts +2 -3
  518. package/dist/server/pages-request-pipeline.d.ts +14 -12
  519. package/dist/server/pages-request-pipeline.js +60 -30
  520. package/dist/server/pages-request-stage-entry.d.ts +23 -0
  521. package/dist/server/pages-request-stage-entry.js +314 -0
  522. package/dist/server/pages-response-stage-entry.d.ts +11 -0
  523. package/dist/server/pages-response-stage-entry.js +106 -0
  524. package/dist/server/pages-response-stage.d.ts +31 -0
  525. package/dist/server/pages-response-stage.js +49 -0
  526. package/dist/server/pages-revalidate.d.ts +3 -4
  527. package/dist/server/pages-revalidate.js +9 -4
  528. package/dist/server/pages-route-data-kind.d.ts +18 -0
  529. package/dist/server/pages-route-data-kind.js +11 -0
  530. package/dist/server/pages-router-entry.d.ts +1 -25
  531. package/dist/server/pages-router-entry.js +35 -148
  532. package/dist/server/pages-serializable-props.d.ts +3 -4
  533. package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
  534. package/dist/server/pregenerated-concrete-paths.js +12 -6
  535. package/dist/server/prerender-cache-life-header.d.ts +3 -4
  536. package/dist/server/prerender-manifest.d.ts +11 -11
  537. package/dist/server/prerender-manifest.js +6 -3
  538. package/dist/server/prerender-route-params.d.ts +16 -9
  539. package/dist/server/prerender-route-params.js +18 -3
  540. package/dist/server/prerender-work-unit-setup.d.ts +2 -3
  541. package/dist/server/prerender-work-unit-setup.js +5 -5
  542. package/dist/server/prod-server.d.ts +12 -9
  543. package/dist/server/prod-server.js +124 -31
  544. package/dist/server/proxy-trust.d.ts +5 -6
  545. package/dist/server/request-log.d.ts +3 -4
  546. package/dist/server/request-pipeline.d.ts +16 -16
  547. package/dist/server/request-pipeline.js +7 -2
  548. package/dist/server/request-stage.d.ts +5 -0
  549. package/dist/server/request-stage.js +7 -0
  550. package/dist/server/request-tracing.d.ts +22 -0
  551. package/dist/server/request-tracing.js +180 -0
  552. package/dist/server/response-stage-cacheability.d.ts +37 -0
  553. package/dist/server/response-stage-cacheability.js +55 -0
  554. package/dist/server/response-stage-policy.d.ts +23 -0
  555. package/dist/server/response-stage-policy.js +89 -0
  556. package/dist/server/response-stage.d.ts +5 -0
  557. package/dist/server/response-stage.js +7 -0
  558. package/dist/server/response-start-tracing.d.ts +14 -0
  559. package/dist/server/response-start-tracing.js +80 -0
  560. package/dist/server/revalidation-host.d.ts +2 -3
  561. package/dist/server/revalidation-host.js +1 -1
  562. package/dist/server/revalidation-request.d.ts +8 -0
  563. package/dist/server/revalidation-request.js +37 -0
  564. package/dist/server/rsc-completion-metadata.d.ts +6 -7
  565. package/dist/server/rsc-stream-hints.d.ts +18 -7
  566. package/dist/server/rsc-stream-hints.js +70 -35
  567. package/dist/server/seed-cache.d.ts +2 -3
  568. package/dist/server/seed-cache.js +8 -7
  569. package/dist/server/server-action-not-found.d.ts +5 -6
  570. package/dist/server/server-globals.d.ts +2 -3
  571. package/dist/server/skip-cache-proof.d.ts +4 -4
  572. package/dist/server/socket-error-backstop.d.ts +5 -6
  573. package/dist/server/socket-error-backstop.js +1 -1
  574. package/dist/server/static-file-cache.d.ts +5 -6
  575. package/dist/server/static-file-cache.js +9 -7
  576. package/dist/server/static-file-signal.d.ts +9 -6
  577. package/dist/server/static-file-signal.js +51 -2
  578. package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
  579. package/dist/server/streaming-metadata.d.ts +2 -3
  580. package/dist/server/tracer.d.ts +5 -0
  581. package/dist/server/tracer.js +13 -0
  582. package/dist/server/worker-prerender-discovery.d.ts +5 -6
  583. package/dist/server/worker-revalidation-context.d.ts +2 -3
  584. package/dist/server/worker-revalidation-context.js +5 -5
  585. package/dist/server/worker-stages.d.ts +43 -0
  586. package/dist/server/worker-stages.js +25 -0
  587. package/dist/server/worker-utils.d.ts +5 -6
  588. package/dist/server/worker-utils.js +2 -1
  589. package/dist/server/workers-tracing.d.ts +17 -0
  590. package/dist/server/workers-tracing.js +27 -0
  591. package/dist/shims/amp.d.ts +3 -4
  592. package/dist/shims/app-router-scroll-state.d.ts +9 -10
  593. package/dist/shims/app-router-scroll.d.ts +4 -5
  594. package/dist/shims/app-router-scroll.js +2 -1
  595. package/dist/shims/app.d.ts +5 -6
  596. package/dist/shims/before-interactive-context.d.ts +5 -6
  597. package/dist/shims/cache-callable-runtime.d.ts +44 -4
  598. package/dist/shims/cache-callable-runtime.js +168 -8
  599. package/dist/shims/cache-for-request.d.ts +2 -3
  600. package/dist/shims/cache-handler.d.ts +33 -20
  601. package/dist/shims/cache-handler.js +61 -2
  602. package/dist/shims/cache-request-state.d.ts +28 -29
  603. package/dist/shims/cache-runtime.d.ts +23 -21
  604. package/dist/shims/cache-runtime.js +107 -27
  605. package/dist/shims/cache.d.ts +15 -15
  606. package/dist/shims/cache.js +15 -13
  607. package/dist/shims/cacheability-classification.d.ts +49 -28
  608. package/dist/shims/cacheability-classification.js +27 -12
  609. package/dist/shims/cdn-cache-state.d.ts +13 -0
  610. package/dist/shims/cdn-cache-state.js +23 -0
  611. package/dist/shims/cdn-cache.d.ts +50 -21
  612. package/dist/shims/cdn-cache.js +15 -38
  613. package/dist/shims/client-hook-error.d.ts +3 -4
  614. package/dist/shims/client-locale.d.ts +2 -3
  615. package/dist/shims/client-page-root.d.ts +24 -0
  616. package/dist/shims/client-page-root.js +121 -0
  617. package/dist/shims/compat-router.d.ts +2 -3
  618. package/dist/shims/config.d.ts +3 -4
  619. package/dist/shims/constants.d.ts +73 -74
  620. package/dist/shims/constants.js +1 -1
  621. package/dist/shims/default-not-found.d.ts +2 -3
  622. package/dist/shims/document.d.ts +9 -9
  623. package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
  624. package/dist/shims/dynamic-preload-chunks.js +17 -13
  625. package/dist/shims/dynamic.d.ts +3 -3
  626. package/dist/shims/error-boundary-navigation.d.ts +3 -4
  627. package/dist/shims/error-boundary.d.ts +17 -18
  628. package/dist/shims/error-boundary.js +17 -11
  629. package/dist/shims/error.d.ts +4 -4
  630. package/dist/shims/error.react-server.d.ts +3 -4
  631. package/dist/shims/fetch-cache.d.ts +22 -22
  632. package/dist/shims/fetch-cache.js +42 -17
  633. package/dist/shims/font-google-base.d.ts +9 -9
  634. package/dist/shims/font-google-base.js +2 -1
  635. package/dist/shims/font-local.d.ts +3 -3
  636. package/dist/shims/font-local.js +1 -1
  637. package/dist/shims/font-utils.d.ts +14 -15
  638. package/dist/shims/form.d.ts +2 -2
  639. package/dist/shims/form.js +10 -7
  640. package/dist/shims/hash-scroll.d.ts +5 -6
  641. package/dist/shims/head-state.d.ts +4 -5
  642. package/dist/shims/head.d.ts +16 -16
  643. package/dist/shims/head.js +5 -4
  644. package/dist/shims/headers.d.ts +67 -33
  645. package/dist/shims/headers.js +93 -6
  646. package/dist/shims/i18n-context.d.ts +5 -6
  647. package/dist/shims/i18n-state.d.ts +4 -5
  648. package/dist/shims/image-config.d.ts +5 -6
  649. package/dist/shims/image-config.js +2 -0
  650. package/dist/shims/image.d.ts +5 -5
  651. package/dist/shims/image.js +12 -8
  652. package/dist/shims/internal/als-registry.d.ts +4 -5
  653. package/dist/shims/internal/api-utils.d.ts +3 -4
  654. package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
  655. package/dist/shims/internal/app-page-props-cache-key.js +53 -1
  656. package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
  657. package/dist/shims/internal/app-prefetch-rsc-request.d.ts +5 -17
  658. package/dist/shims/internal/app-prefetch-rsc-request.js +5 -14
  659. package/dist/shims/internal/app-route-detection.d.ts +2 -2
  660. package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -8
  661. package/dist/shims/internal/app-route-prefetch-policy.js +0 -1
  662. package/dist/shims/internal/app-router-context.d.ts +9 -10
  663. package/dist/shims/internal/cookie-serialize.d.ts +4 -5
  664. package/dist/shims/internal/format-url-object.d.ts +7 -0
  665. package/dist/shims/internal/format-url-object.js +53 -0
  666. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
  667. package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
  668. package/dist/shims/internal/hybrid-client-route-owner.js +3 -2
  669. package/dist/shims/internal/interpolate-as.d.ts +5 -6
  670. package/dist/shims/internal/interpolate-as.js +4 -2
  671. package/dist/shims/internal/link-status-registry.d.ts +5 -6
  672. package/dist/shims/internal/make-hanging-promise.d.ts +3 -4
  673. package/dist/shims/internal/navigation-untracked.d.ts +2 -3
  674. package/dist/shims/internal/normalize-router-href.d.ts +15 -0
  675. package/dist/shims/internal/normalize-router-href.js +41 -0
  676. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
  677. package/dist/shims/internal/pages-data-target.d.ts +8 -6
  678. package/dist/shims/internal/pages-data-target.js +32 -36
  679. package/dist/shims/internal/pages-data-url.d.ts +4 -5
  680. package/dist/shims/internal/pages-data-url.js +2 -1
  681. package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
  682. package/dist/shims/internal/pages-router-components.d.ts +3 -4
  683. package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
  684. package/dist/shims/internal/route-pattern-for-warning.js +3 -3
  685. package/dist/shims/internal/router-context.d.ts +2 -3
  686. package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
  687. package/dist/shims/internal/thenable-well-known-properties.js +33 -0
  688. package/dist/shims/internal/utils.d.ts +7 -8
  689. package/dist/shims/internal/work-unit-async-storage.d.ts +10 -11
  690. package/dist/shims/layout-segment-context.d.ts +3 -4
  691. package/dist/shims/link-prefetch.d.ts +9 -10
  692. package/dist/shims/link.d.ts +4 -4
  693. package/dist/shims/link.js +56 -116
  694. package/dist/shims/metadata.d.ts +15 -16
  695. package/dist/shims/metadata.js +40 -36
  696. package/dist/shims/navigation-context-accessors.d.ts +9 -0
  697. package/dist/shims/navigation-context-accessors.js +19 -0
  698. package/dist/shims/navigation-context-state.d.ts +27 -18
  699. package/dist/shims/navigation-errors.d.ts +18 -19
  700. package/dist/shims/navigation-state.d.ts +6 -7
  701. package/dist/shims/navigation.d.ts +80 -68
  702. package/dist/shims/navigation.js +24 -16
  703. package/dist/shims/navigation.react-server.d.ts +9 -9
  704. package/dist/shims/offline.d.ts +2 -3
  705. package/dist/shims/og.d.ts +2 -2
  706. package/dist/shims/pages-router-runtime.d.ts +4 -5
  707. package/dist/shims/ppr-fallback-shell.d.ts +13 -14
  708. package/dist/shims/readonly-url-search-params.d.ts +2 -3
  709. package/dist/shims/request-context.d.ts +5 -6
  710. package/dist/shims/root-params.d.ts +14 -15
  711. package/dist/shims/router-state.d.ts +5 -6
  712. package/dist/shims/router-state.js +1 -1
  713. package/dist/shims/router.d.ts +22 -21
  714. package/dist/shims/router.js +339 -164
  715. package/dist/shims/script-nonce-context.d.ts +8 -6
  716. package/dist/shims/script-nonce-context.js +15 -6
  717. package/dist/shims/script.d.ts +4 -4
  718. package/dist/shims/script.js +9 -7
  719. package/dist/shims/search-params-gate.d.ts +35 -0
  720. package/dist/shims/search-params-gate.js +32 -0
  721. package/dist/shims/server.d.ts +19 -51
  722. package/dist/shims/server.js +14 -28
  723. package/dist/shims/slot.d.ts +33 -15
  724. package/dist/shims/slot.js +41 -9
  725. package/dist/shims/streamed-icons.d.ts +3 -4
  726. package/dist/shims/thenable-params.d.ts +5 -7
  727. package/dist/shims/thenable-params.js +3 -24
  728. package/dist/shims/unified-request-context.d.ts +34 -31
  729. package/dist/shims/unified-request-context.js +34 -24
  730. package/dist/shims/unrecognized-action-error.d.ts +3 -4
  731. package/dist/shims/url-safety.d.ts +5 -6
  732. package/dist/shims/url-utils.d.ts +12 -13
  733. package/dist/shims/use-merged-ref.d.ts +2 -3
  734. package/dist/shims/user-agent.d.ts +31 -0
  735. package/dist/shims/user-agent.js +16 -0
  736. package/dist/shims/web-vitals.d.ts +2 -2
  737. package/dist/typegen.d.ts +3 -4
  738. package/dist/utils/asset-prefix.d.ts +7 -8
  739. package/dist/utils/base-path.d.ts +5 -6
  740. package/dist/utils/built-asset-url.d.ts +2 -3
  741. package/dist/utils/built-asset-url.js +1 -1
  742. package/dist/utils/cache-control-metadata.d.ts +4 -5
  743. package/dist/utils/client-build-manifest.d.ts +6 -7
  744. package/dist/utils/client-build-manifest.js +2 -1
  745. package/dist/utils/client-entry-manifest.d.ts +6 -7
  746. package/dist/utils/client-runtime-metadata.d.ts +8 -3
  747. package/dist/utils/client-runtime-metadata.js +18 -1
  748. package/dist/utils/commonjs-loader.d.ts +4 -5
  749. package/dist/utils/compare.d.ts +2 -3
  750. package/dist/utils/deployment-id.d.ts +6 -7
  751. package/dist/utils/dev-error-recovery-event.d.ts +2 -3
  752. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
  753. package/dist/utils/domain-locale.d.ts +7 -8
  754. package/dist/utils/encode-cache-tag.d.ts +3 -4
  755. package/dist/utils/error-cause.d.ts +2 -3
  756. package/dist/utils/external-url.d.ts +2 -3
  757. package/dist/utils/has-trailing-comma.d.ts +3 -4
  758. package/dist/utils/hash.d.ts +3 -4
  759. package/dist/utils/html-limited-bots.d.ts +3 -4
  760. package/dist/utils/lazy-chunks.d.ts +8 -9
  761. package/dist/utils/lazy-chunks.js +4 -4
  762. package/dist/utils/manifest-paths.d.ts +5 -6
  763. package/dist/utils/mdx-scan.d.ts +11 -4
  764. package/dist/utils/mdx-scan.js +27 -1
  765. package/dist/utils/middleware-request-headers.d.ts +7 -6
  766. package/dist/utils/middleware-request-headers.js +6 -1
  767. package/dist/utils/navigation-signal.d.ts +3 -3
  768. package/dist/utils/navigation-signal.js +16 -1
  769. package/dist/utils/number.d.ts +2 -3
  770. package/dist/utils/package-name.d.ts +3 -4
  771. package/dist/utils/parse-cookie.d.ts +4 -5
  772. package/dist/utils/path.d.ts +8 -9
  773. package/dist/utils/plugin-options.d.ts +2 -3
  774. package/dist/utils/precompressed-variant.d.ts +3 -4
  775. package/dist/utils/prerender-output-paths.d.ts +4 -5
  776. package/dist/utils/project.d.ts +19 -30
  777. package/dist/utils/project.js +20 -29
  778. package/dist/utils/promise.d.ts +2 -3
  779. package/dist/utils/protocol-headers.d.ts +14 -15
  780. package/dist/utils/public-file-path.d.ts +2 -3
  781. package/dist/utils/public-routes.d.ts +2 -3
  782. package/dist/utils/query.d.ts +14 -9
  783. package/dist/utils/query.js +22 -1
  784. package/dist/utils/react-compiler-support.d.ts +6 -7
  785. package/dist/utils/react-version.d.ts +4 -3
  786. package/dist/utils/react-version.js +19 -1
  787. package/dist/utils/record.d.ts +2 -3
  788. package/dist/utils/redirect-digest.d.ts +3 -4
  789. package/dist/utils/regex-safety.d.ts +4 -5
  790. package/dist/utils/regex.d.ts +2 -3
  791. package/dist/utils/safe-json-file.d.ts +2 -3
  792. package/dist/utils/sorted-array.d.ts +2 -3
  793. package/dist/utils/text-stream.d.ts +3 -4
  794. package/dist/utils/vinext-root.d.ts +2 -3
  795. package/dist/utils/virtual-module.d.ts +3 -4
  796. package/dist/utils/vite-cli-invocation.d.ts +21 -0
  797. package/dist/utils/vite-cli-invocation.js +144 -0
  798. package/dist/utils/vite-version.d.ts +5 -6
  799. package/next-package.json +4 -0
  800. package/package.json +47 -6
@@ -1,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,
@@ -451,7 +508,8 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
451
508
  });
452
509
  const fallback = pathsResult?.fallback ?? false;
453
510
  const paths = pathsResult?.paths ?? [];
454
- const routeParams = getPagesRouteParams(patternToNextFormat(route.pattern));
511
+ const routePattern = patternToNextFormat(route.pattern);
512
+ const routeParams = getPagesRouteParams(routePattern);
455
513
  const isValidPath = paths.some((pathEntry) => matchesPagesStaticPath(pathEntry, params, routeParams, url));
456
514
  if (fallback === false && !isValidPath && requestPreviewData === false) {
457
515
  if (isDataReq) {
@@ -540,7 +598,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
540
598
  defaultLocale: currentDefaultLocale,
541
599
  ...previewContext
542
600
  };
543
- const result = await pageModule.getServerSideProps(context);
601
+ const result = await tracePagesData("getServerSideProps", route.pattern, () => pageModule.getServerSideProps(context));
544
602
  if (res.writableEnded) return;
545
603
  if (result && "props" in result) {
546
604
  pageProps = mergePagesDataProps(renderProps.pageProps, await Promise.resolve(result.props));
@@ -609,7 +667,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
609
667
  ...previewContext
610
668
  };
611
669
  if (await loadAppInitialProps()) return;
612
- const result = await pageModule.getStaticProps(context);
670
+ const result = await tracePagesData("getStaticProps", route.pattern, () => pageModule.getStaticProps(context));
613
671
  const routePattern = patternToNextFormat(route.pattern);
614
672
  assertPages404DoesNotReturnNotFound(routePattern, result);
615
673
  if (result) staticPropsRevalidateSeconds = resolvePagesRevalidateSeconds(result, routePattern);
@@ -754,17 +812,19 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
754
812
  pageModuleUrl,
755
813
  appModuleUrl,
756
814
  hasMiddleware,
757
- routeUrl: requestAsPath
815
+ routeUrl: requestAsPath,
816
+ clientMiddlewareMatcher
758
817
  }
759
818
  };
760
819
  const hydrationScript = createPagesDevHydrationScript({
761
820
  appModuleSource,
762
821
  pageModuleSource,
822
+ pageLoaders,
763
823
  reactStrictMode: reactStrictMode === true,
764
824
  replaceFallbackRoute: true,
765
825
  scriptNonce
766
826
  });
767
- const nextDataScript = `<script id="__NEXT_DATA__" type="application/json"${nonceAttr}>${safeJsonStringify({
827
+ const allScripts = `${`<script id="__NEXT_DATA__" type="application/json"${nonceAttr}>${safeJsonStringify({
768
828
  props: renderProps,
769
829
  page: patternToNextFormat(route.pattern),
770
830
  query: isFallbackRender ? {} : params,
@@ -775,11 +835,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
775
835
  defaultLocale: currentDefaultLocale,
776
836
  domainLocales,
777
837
  ...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}`;
838
+ })}<\/script>`}\n ${createInlineScriptTag(`window.__VINEXT_PAGE_PATTERNS__=${safeJsonStringify(pagePatterns)}`, scriptNonce)}\n ${hydrationScript}`;
783
839
  const extraHeaders = { ...gsspExtraHeaders };
784
840
  if (typeof pageModule.getStaticProps === "function") {
785
841
  extraHeaders["Cache-Control"] = DEV_PAGES_CACHE_CONTROL;
@@ -787,7 +843,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
787
843
  }
788
844
  applyDevPagesPreviewHeaders(extraHeaders, requestPreview);
789
845
  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), {
846
+ await streamPageToResponse(route.pattern, res, withScriptNonce(element, scriptNonce), {
791
847
  url,
792
848
  server,
793
849
  fontHeadHTML,
@@ -831,15 +887,16 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
831
887
  if (typeof routerShim.setSSRContext === "function") routerShim.setSSRContext(null);
832
888
  } catch (e) {
833
889
  console.error(e);
834
- reportRequestError(e instanceof Error ? e : new Error(String(e)), {
890
+ await reportRequestError(e, {
835
891
  path: url,
836
892
  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 ?? "")]))
893
+ headers: Object.fromEntries(Object.entries(req.headers).filter(([k]) => !k.startsWith(":")))
838
894
  }, {
839
895
  routerKind: "Pages Router",
840
896
  routePath: route.pattern,
841
- routeType: "render"
842
- }).catch(() => {});
897
+ routeType: "render",
898
+ 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
899
+ });
843
900
  try {
844
901
  await renderErrorPage(server, runner, req, res, url, pagesDir, 500, void 0, matcher, e instanceof Error ? e : new Error(String(e)), reactStrictMode, errorPageContext);
845
902
  } catch (fallbackErr) {
@@ -861,7 +918,7 @@ function createSSRHandler(server, runner, routes, pagesDir, i18nConfig, fileMatc
861
918
  async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCode, wrapWithRouterContext, fileMatcher, err, reactStrictMode = false, context = { basePath: "" }) {
862
919
  attachPagesRequestCookies(req);
863
920
  const matcher = fileMatcher ?? createValidFileMatcher();
864
- const candidates = statusCode === 404 ? ["404", "_error"] : statusCode === 500 ? ["500", "_error"] : ["_error"];
921
+ const candidates = statusCode === 404 ? ["404", "_error"] : ["_error"];
865
922
  for (const candidate of candidates) {
866
923
  let errorRouterShim = null;
867
924
  let candidateLoaded = false;
@@ -869,16 +926,25 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
869
926
  try {
870
927
  errorAssetPath = findFileWithExts(pagesDir, candidate, matcher);
871
928
  if (!errorAssetPath && candidate !== "_error") continue;
872
- const errorModule = await importModule(runner, errorAssetPath ?? "next/error");
929
+ const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
930
+ const { errorModule, AppComponent, appAssetPath, DocumentComponent } = await traceFindPageComponents(errorPage, async () => {
931
+ const errorModule = await importModule(runner, errorAssetPath ?? "next/error");
932
+ const appAssetPath = findFileWithExts(pagesDir, "_app", matcher);
933
+ const appModule = appAssetPath ? await importModule(runner, appAssetPath) : null;
934
+ const docFilePath = findFileWithExts(pagesDir, "_document", matcher);
935
+ const docModule = docFilePath ? await importModule(runner, docFilePath) : null;
936
+ return {
937
+ errorModule,
938
+ AppComponent: appModule?.default ?? null,
939
+ appAssetPath,
940
+ DocumentComponent: docModule?.default ?? null
941
+ };
942
+ });
873
943
  candidateLoaded = true;
874
944
  const ErrorComponent = errorModule.default;
875
945
  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
946
  const createElement = React.createElement;
880
947
  res.statusCode = statusCode;
881
- const errorPage = candidate === "_error" ? "/_error" : `/${candidate}`;
882
948
  const errorRouter = {
883
949
  pathname: errorPage,
884
950
  query: parseQueryString(url),
@@ -908,12 +974,12 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
908
974
  };
909
975
  if (typeof errorModule.getStaticProps === "function") {
910
976
  const isOnDemandRevalidate = isOnDemandRevalidateRequest(req.headers[PRERENDER_REVALIDATE_HEADER]);
911
- const staticResult = await errorModule.getStaticProps({
977
+ const staticResult = await tracePagesData("getStaticProps", errorPage, () => errorModule.getStaticProps({
912
978
  locale: context.locale,
913
979
  locales: context.locales,
914
980
  defaultLocale: context.defaultLocale,
915
981
  revalidateReason: isOnDemandRevalidate ? "on-demand" : "stale"
916
- });
982
+ }));
917
983
  assertPages404DoesNotReturnNotFound(errorPage, staticResult);
918
984
  if (staticResult?.redirect) {
919
985
  applyDevPagesCacheHeaders(res, isOnDemandRevalidate ? "REVALIDATED" : "HIT", NEVER_CACHE_CONTROL);
@@ -961,9 +1027,6 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
961
1027
  pageProps: mergePagesDataProps(appRenderProps.pageProps, errorProps)
962
1028
  } : appRenderProps;
963
1029
  } 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
1030
  const createErrorElement = (FinalApp, FinalComponent) => {
968
1031
  let errorElement = FinalApp ? createElement(FinalApp, {
969
1032
  ...renderProps,
@@ -990,22 +1053,28 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
990
1053
  query: parseQueryString(url),
991
1054
  buildId: context.buildId ?? process.env.__VINEXT_BUILD_ID ?? "development",
992
1055
  isFallback: false,
1056
+ locale: context.locale,
1057
+ locales: context.locales,
1058
+ defaultLocale: context.defaultLocale,
993
1059
  notFoundSrcPage: context.notFoundSrcPage,
994
1060
  __vinext: {
995
1061
  pageModuleUrl: errorModuleUrl ?? void 0,
996
- appModuleUrl: appModuleUrl ?? void 0
1062
+ appModuleUrl: appModuleUrl ?? void 0,
1063
+ hasMiddleware: context.hasMiddleware,
1064
+ clientMiddlewareMatcher: context.clientMiddlewareMatcher
997
1065
  }
998
1066
  })}<\/script>`}\n${createPagesDevHydrationScript({
999
1067
  appModuleSource,
1000
1068
  forceRouterReady: true,
1001
1069
  normalizePageProps: false,
1002
1070
  pageModuleSource: errorModuleSource,
1071
+ pageLoaders: context.pageLoaders,
1003
1072
  reactStrictMode: reactStrictMode === true,
1004
1073
  scriptNonce,
1005
1074
  setPagePatternsFromNextData: true
1006
1075
  })}`;
1007
1076
  if (statusCode === 404) stripDevPagesNotFoundFramingHeaders(res);
1008
- if (DocumentComponent) await streamPageToResponse(res, element, {
1077
+ if (DocumentComponent) await streamPageToResponse(errorPage, res, element, {
1009
1078
  url,
1010
1079
  server,
1011
1080
  fontHeadHTML: "",
@@ -1035,7 +1104,7 @@ async function renderErrorPage(server, runner, req, res, url, pagesDir, statusCo
1035
1104
  preserveExistingContentType: statusCode === 404
1036
1105
  });
1037
1106
  else {
1038
- const bodyHtml = await renderToStringAsync(element);
1107
+ const bodyHtml = await tracePagesDocument(errorPage, () => renderToStringAsync(element));
1039
1108
  const traceMetaHTML = getClientTraceMetadataHTML(context.clientTraceMetadata);
1040
1109
  const protectedAssetMarker = `data-vinext-document-asset-props-protected-${randomUUID()}`;
1041
1110
  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