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
@@ -12,7 +12,7 @@ type RscEmbedTransformOptions = {
12
12
  };
13
13
  type HtmlInsertion = string | (() => string);
14
14
  type InlineCssManifest = Record<string, string>;
15
- type InitialNavigationCacheMetadata = {
15
+ export type InitialNavigationCacheMetadata = {
16
16
  kind: "dynamic" | "static";
17
17
  dynamicStaleTimeSeconds?: number;
18
18
  /**
@@ -21,23 +21,28 @@ type InitialNavigationCacheMetadata = {
21
21
  */
22
22
  staleTimeSeconds?: number;
23
23
  };
24
- declare function waitAtLeastOneReactRenderTask(): Promise<void>;
25
- declare function navigationRuntimeRscBootstrapExpression(): string;
26
- declare function createNavigationRuntimeRscMetadataScript(params: Record<string, string | string[]>, nav: {
24
+ export declare function waitAtLeastOneReactRenderTask(): Promise<void>;
25
+ export declare function navigationRuntimeRscBootstrapExpression(): string;
26
+ export declare function createNavigationRuntimeRscMetadataScript(params: Record<string, string | string[]>, nav: {
27
27
  pathname: string;
28
28
  searchParams: [string, string][];
29
29
  }, dynamicStaleTimeSeconds?: number, searchParamsFromBrowser?: boolean): string;
30
+ /**
31
+ * The query a client page read during SSR, for a render that turned dynamic
32
+ * after its head told the browser to read the query from its own URL.
33
+ */
34
+ export declare function createNavigationRuntimeRenderedSearchScript(search: string): string;
30
35
  /**
31
36
  * Create a helper that progressively embeds RSC chunks as inline <script> tags.
32
37
  * The browser entry turns the embedded chunks back into Uint8Array data.
33
38
  */
34
- declare function createRscEmbedTransform(embedStream: ReadableStream<Uint8Array>, optionsOrNonce?: RscEmbedTransformOptions | string): RscEmbedTransform;
39
+ export declare function createRscEmbedTransform(embedStream: ReadableStream<Uint8Array>, optionsOrNonce?: RscEmbedTransformOptions | string): RscEmbedTransform;
35
40
  /**
36
41
  * Fix invalid preload "as" values in server-rendered HTML.
37
42
  * React Fizz emits <link rel="preload" as="stylesheet"> for CSS, but the
38
43
  * HTML spec requires as="style" for <link rel="preload">.
39
44
  */
40
- declare function fixPreloadAs(html: string): string;
45
+ export declare function fixPreloadAs(html: string): string;
41
46
  /**
42
47
  * Create the tick-buffered HTML transform that injects RSC scripts between
43
48
  * React Fizz flush cycles without corrupting split HTML chunks.
@@ -65,6 +70,5 @@ declare function fixPreloadAs(html: string): string;
65
70
  * to no-op and let the user-rendered Script (in its source-order
66
71
  * position) ship as-is.
67
72
  */
68
- declare function createTickBufferedTransform(rscEmbed: RscEmbedTransform, injectHTML?: HtmlInsertion, injectAfterHeadOpenHTML?: HtmlInsertion, inlineCssManifest?: InlineCssManifest, inlineCssPrependCss?: string, inlineCssPrependFallbackHTML?: string, inlineCssScriptNonce?: string): TransformStream<Uint8Array, Uint8Array>;
69
- //#endregion
70
- export { InitialNavigationCacheMetadata, createNavigationRuntimeRscMetadataScript, createRscEmbedTransform, createTickBufferedTransform, fixPreloadAs, navigationRuntimeRscBootstrapExpression, waitAtLeastOneReactRenderTask };
73
+ export declare function createTickBufferedTransform(rscEmbed: RscEmbedTransform, injectHTML?: HtmlInsertion, injectAfterHeadOpenHTML?: HtmlInsertion, inlineCssManifest?: InlineCssManifest, inlineCssPrependCss?: string, inlineCssPrependFallbackHTML?: string, inlineCssScriptNonce?: string): TransformStream<Uint8Array, Uint8Array>;
74
+ //#endregion
@@ -2,6 +2,7 @@ import { createInlineScriptTag, escapeHtmlAttr, htmlTokenListContains, safeJsonS
2
2
  import { bytesToBase64, concatUint8Arrays } from "./app-rsc-embedded-chunks.js";
3
3
  import { NAVIGATION_RUNTIME_SYMBOL_DESCRIPTION } from "../client/navigation-runtime.js";
4
4
  //#region src/server/app-ssr-stream.ts
5
+ const RSC_EMBED_TEXT_BATCH_MAX_LENGTH = 65536;
5
6
  function waitAtLeastOneReactRenderTask() {
6
7
  return new Promise((resolve) => setTimeout(resolve, 0));
7
8
  }
@@ -12,6 +13,13 @@ function navigationRuntimeRscBootstrapExpression() {
12
13
  function createNavigationRuntimeRscMetadataScript(params, nav, dynamicStaleTimeSeconds, searchParamsFromBrowser) {
13
14
  return "Object.assign(" + navigationRuntimeRscBootstrapExpression() + ",{params:" + safeJsonStringify(params) + ",nav:" + safeJsonStringify(nav) + (searchParamsFromBrowser === void 0 ? "" : ",searchParamsFromBrowser:" + safeJsonStringify(searchParamsFromBrowser)) + (dynamicStaleTimeSeconds === void 0 ? "" : ",dynamicStaleTimeSeconds:" + safeJsonStringify(dynamicStaleTimeSeconds)) + "})";
14
15
  }
16
+ /**
17
+ * The query a client page read during SSR, for a render that turned dynamic
18
+ * after its head told the browser to read the query from its own URL.
19
+ */
20
+ function createNavigationRuntimeRenderedSearchScript(search) {
21
+ return "Object.assign(" + navigationRuntimeRscBootstrapExpression() + ",{renderedSearch:" + safeJsonStringify(search) + "})";
22
+ }
15
23
  function createNavigationRuntimeRscChunkScript(chunk) {
16
24
  return navigationRuntimeRscBootstrapExpression() + ".rsc.push(" + safeJsonStringify(chunk) + ")";
17
25
  }
@@ -43,6 +51,10 @@ function createRscEmbedTransform(embedStream, optionsOrNonce = {}) {
43
51
  const rawChunks = [];
44
52
  let reading = false;
45
53
  let mirroredNextFlightBootstrap = false;
54
+ const textDecoder = new TextDecoder("utf-8", {
55
+ fatal: true,
56
+ ignoreBOM: true
57
+ });
46
58
  async function pumpReader() {
47
59
  if (reading) return;
48
60
  reading = true;
@@ -52,11 +64,7 @@ function createRscEmbedTransform(embedStream, optionsOrNonce = {}) {
52
64
  if (result.done) break;
53
65
  rawChunks.push(result.value);
54
66
  try {
55
- const text = new TextDecoder("utf-8", {
56
- fatal: true,
57
- ignoreBOM: true
58
- }).decode(result.value);
59
- pendingChunks.push(text);
67
+ pendingChunks.push(textDecoder.decode(result.value));
60
68
  } catch {
61
69
  pendingChunks.push([3, bytesToBase64(result.value)]);
62
70
  }
@@ -74,8 +82,26 @@ function createRscEmbedTransform(embedStream, optionsOrNonce = {}) {
74
82
  if (pendingChunks.length === 0) return "";
75
83
  const chunks = pendingChunks;
76
84
  pendingChunks = [];
85
+ const embeddedChunks = [];
86
+ let textChunks = [];
87
+ let textLength = 0;
88
+ const flushTextChunks = () => {
89
+ if (textChunks.length === 0) return;
90
+ embeddedChunks.push(textChunks.join(""));
91
+ textChunks = [];
92
+ textLength = 0;
93
+ };
94
+ for (const chunk of chunks) if (typeof chunk === "string") {
95
+ if (textLength > 0 && textLength + chunk.length > RSC_EMBED_TEXT_BATCH_MAX_LENGTH) flushTextChunks();
96
+ textChunks.push(chunk);
97
+ textLength += chunk.length;
98
+ } else {
99
+ flushTextChunks();
100
+ embeddedChunks.push(chunk);
101
+ }
102
+ flushTextChunks();
77
103
  let scripts = "";
78
- for (const chunk of chunks) {
104
+ for (const chunk of embeddedChunks) {
79
105
  scripts += createInlineScriptTag(createNavigationRuntimeRscChunkScript(chunk), options.scriptNonce);
80
106
  if (options.mirrorNextFlight) {
81
107
  if (!mirroredNextFlightBootstrap) {
@@ -429,4 +455,4 @@ function createTickBufferedTransform(rscEmbed, injectHTML = "", injectAfterHeadO
429
455
  });
430
456
  }
431
457
  //#endregion
432
- export { createNavigationRuntimeRscMetadataScript, createRscEmbedTransform, createTickBufferedTransform, fixPreloadAs, navigationRuntimeRscBootstrapExpression, waitAtLeastOneReactRenderTask };
458
+ export { createNavigationRuntimeRenderedSearchScript, createNavigationRuntimeRscMetadataScript, createRscEmbedTransform, createTickBufferedTransform, fixPreloadAs, navigationRuntimeRscBootstrapExpression, waitAtLeastOneReactRenderTask };
@@ -8,8 +8,7 @@ type CreateStaticGenerationHeadersContextOptions = {
8
8
  routeKind: AppStaticGenerationRouteKind;
9
9
  routePattern?: string;
10
10
  };
11
- declare function getAppPageStaticGenerationErrorMessage(): string;
12
- declare function getAppRouteStaticGenerationErrorMessage(routePattern?: string, expression?: string): string;
13
- declare function createStaticGenerationHeadersContext(options: CreateStaticGenerationHeadersContextOptions): HeadersContext;
14
- //#endregion
15
- export { createStaticGenerationHeadersContext, getAppPageStaticGenerationErrorMessage, getAppRouteStaticGenerationErrorMessage };
11
+ export declare function getAppPageStaticGenerationErrorMessage(): string;
12
+ export declare function getAppRouteStaticGenerationErrorMessage(routePattern?: string, expression?: string): string;
13
+ export declare function createStaticGenerationHeadersContext(options: CreateStaticGenerationHeadersContextOptions): HeadersContext;
14
+ //#endregion
@@ -3,7 +3,7 @@ import "./app-elements.js";
3
3
  import { CachedRscResponse } from "../shims/navigation.js";
4
4
  //#region src/server/app-visited-response-cache.d.ts
5
5
  type VisitedResponseCacheNavigationKind = "navigate" | "refresh" | "traverse";
6
- type VisitedResponseCacheEntry = {
6
+ export type VisitedResponseCacheEntry = {
7
7
  createdAt: number;
8
8
  elements?: AppElements;
9
9
  expiresAt: number;
@@ -12,10 +12,10 @@ type VisitedResponseCacheEntry = {
12
12
  response: CachedRscResponse;
13
13
  reuseAfterHistoryRestore: boolean;
14
14
  };
15
- declare const VISITED_RESPONSE_CACHE_TTL: number;
16
- declare const MAX_TRAVERSAL_CACHE_TTL: number;
17
- declare function hasNavigationResponseHistoryLifetime(snapshot: CachedRscResponse): boolean;
18
- declare function createVisitedResponseCacheEntry(options: {
15
+ export declare const VISITED_RESPONSE_CACHE_TTL: number;
16
+ export declare const MAX_TRAVERSAL_CACHE_TTL: number;
17
+ export declare function hasNavigationResponseHistoryLifetime(snapshot: CachedRscResponse): boolean;
18
+ export declare function createVisitedResponseCacheEntry(options: {
19
19
  elements?: AppElements;
20
20
  fallbackTtlMs?: number;
21
21
  now: number;
@@ -24,16 +24,15 @@ declare function createVisitedResponseCacheEntry(options: {
24
24
  response: CachedRscResponse;
25
25
  reuseAfterHistoryRestore?: boolean;
26
26
  }): VisitedResponseCacheEntry;
27
- declare function isVisitedResponseCacheEntryFresh(entry: VisitedResponseCacheEntry, options: {
27
+ export declare function isVisitedResponseCacheEntryFresh(entry: VisitedResponseCacheEntry, options: {
28
28
  navigationKind: VisitedResponseCacheNavigationKind;
29
29
  now: number;
30
30
  }): boolean;
31
- declare function findVisitedResponseCacheEntry(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): {
31
+ export declare function findVisitedResponseCacheEntry(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): {
32
32
  cacheKey: string;
33
33
  entry: VisitedResponseCacheEntry;
34
34
  } | null;
35
- declare function deleteVisitedResponseCacheEntry(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): boolean;
36
- declare function deleteAllVisitedResponseCacheEntries(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): number;
37
- declare function deleteInvalidatedHistoryRestoreEntries(cache: Map<string, VisitedResponseCacheEntry>): void;
38
- //#endregion
39
- export { MAX_TRAVERSAL_CACHE_TTL, VISITED_RESPONSE_CACHE_TTL, VisitedResponseCacheEntry, createVisitedResponseCacheEntry, deleteAllVisitedResponseCacheEntries, deleteInvalidatedHistoryRestoreEntries, deleteVisitedResponseCacheEntry, findVisitedResponseCacheEntry, hasNavigationResponseHistoryLifetime, isVisitedResponseCacheEntryFresh };
35
+ export declare function deleteVisitedResponseCacheEntry(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): boolean;
36
+ export declare function deleteAllVisitedResponseCacheEntries(cache: Map<string, VisitedResponseCacheEntry>, rscUrl: string, interceptionContext: string | null): number;
37
+ export declare function deleteInvalidatedHistoryRestoreEntries(cache: Map<string, VisitedResponseCacheEntry>): void;
38
+ //#endregion
@@ -3,8 +3,8 @@ import "./app-elements.js";
3
3
  import { stripRscCacheBustingSearchParam } from "./app-rsc-cache-busting.js";
4
4
  import { resolveCachedRscResponseExpiresAt } from "../shims/navigation.js";
5
5
  //#region src/server/app-visited-response-cache.ts
6
- const VISITED_RESPONSE_CACHE_TTL = 5 * 6e4;
7
- const MAX_TRAVERSAL_CACHE_TTL = 30 * 6e4;
6
+ const VISITED_RESPONSE_CACHE_TTL = 3e5;
7
+ const MAX_TRAVERSAL_CACHE_TTL = 18e5;
8
8
  function hasNavigationResponseHistoryLifetime(snapshot) {
9
9
  const dynamicStaleTime = snapshot.completedDynamicStaleTimeSeconds ?? snapshot.dynamicStaleTimeSeconds;
10
10
  return dynamicStaleTime !== void 0 ? dynamicStaleTime > 0 : snapshot.serverStaleTime !== void 0;
@@ -0,0 +1,112 @@
1
+ import { CacheabilityManifest } from "./cacheability-manifest.js";
2
+ import { VinextResponseStageCacheability, VinextResponseStageDispatchOptions, VinextResponseStageTransport } from "./multi-stage.js";
3
+ import { AppRscRenderMode } from "./app-rsc-render-mode.js";
4
+ import { TrustedPrerenderState } from "./prerender-route-params.js";
5
+ //#region src/server/app-worker-stages.d.ts
6
+ export declare const APP_WORKER_RESPONSE_STAGE_PROTOCOL_VERSION = 10;
7
+ export declare const APP_METADATA_RESPONSE_STAGE_NO_MATCH_HEADER = "x-vinext-app-metadata-stage-no-match";
8
+ type AppPageParams = Record<string, string | string[]>;
9
+ type AppWorkerResponseStageEnvelope = {
10
+ buildId: string | null;
11
+ cacheability: VinextResponseStageCacheability;
12
+ draftModeCookie: string | null;
13
+ middlewareCookieOverlay: string | null;
14
+ protocolVersion: typeof APP_WORKER_RESPONSE_STAGE_PROTOCOL_VERSION;
15
+ /** Canonical public request origin used to partition and validate shared renders. */
16
+ requestOrigin: string;
17
+ scriptNonce: string | null;
18
+ };
19
+ type AppFullRequestWorkerResponseStageProps = AppWorkerResponseStageEnvelope & {
20
+ kind: "app-full-request";
21
+ prerenderDiscovery: boolean;
22
+ staticFileSignalToken: string;
23
+ trustedPrerenderState: TrustedPrerenderState | null;
24
+ };
25
+ export type AppMatchedWorkerResponseStageProps = AppWorkerResponseStageEnvelope & {
26
+ kind: "app-page" | "app-route-handler";
27
+ bypassInterceptionContextCache: boolean;
28
+ /** Origin-cache pathname; differs from cleanPathname after an internal rewrite. */
29
+ cachePathname: string;
30
+ canUseCanonicalLoadingShell: boolean;
31
+ canonicalPathname: string;
32
+ cleanPathname: string;
33
+ forceDynamic?: boolean;
34
+ interceptionContext: string | null;
35
+ interceptionId: string | null;
36
+ isRscRequest: boolean;
37
+ matchKind: "interception" | "request" | "resolved";
38
+ mountedSlotsHeader: string | null;
39
+ params: AppPageParams;
40
+ resolvedUrl: string;
41
+ routePattern: string;
42
+ routePathname: string;
43
+ renderMode: AppRscRenderMode;
44
+ };
45
+ type AppNotFoundWorkerResponseStageProps = AppWorkerResponseStageEnvelope & {
46
+ kind: "app-not-found";
47
+ canonicalPathname: string;
48
+ cleanPathname: string;
49
+ isRscRequest: boolean;
50
+ mountedSlotsHeader: string | null;
51
+ renderMode: AppRscRenderMode;
52
+ resolvedUrl: string;
53
+ };
54
+ type AppMetadataWorkerResponseStageProps = AppWorkerResponseStageEnvelope & {
55
+ kind: "app-metadata";
56
+ canonicalPathname: string;
57
+ cleanPathname: string;
58
+ isRscRequest: boolean;
59
+ mountedSlotsHeader: string | null;
60
+ renderMode: AppRscRenderMode;
61
+ resolvedUrl: string;
62
+ routePathname: string;
63
+ };
64
+ type HybridPagesWorkerResponseStageProps = AppWorkerResponseStageEnvelope & {
65
+ kind: "hybrid-pages";
66
+ allowRscDocumentFallback: boolean;
67
+ appRouteMatch: {
68
+ isDynamic: boolean;
69
+ pattern: string;
70
+ } | null;
71
+ canonicalPathname: string;
72
+ cleanPathname: string;
73
+ isDataRequest: boolean;
74
+ isRscRequest: boolean;
75
+ matchKind: "dynamic" | "static";
76
+ /** Complete response-header snapshot installed before request-time Pages user code runs. */
77
+ preHandlerHeaders: Array<[string, string]> | null;
78
+ resourceKind: "api" | "page";
79
+ requestUrl: string;
80
+ resolvedUrl: string;
81
+ };
82
+ export type AppWorkerResponseStageProps = AppFullRequestWorkerResponseStageProps | AppMatchedWorkerResponseStageProps | AppMetadataWorkerResponseStageProps | AppNotFoundWorkerResponseStageProps | HybridPagesWorkerResponseStageProps;
83
+ export type DispatchAppWorkerResponseStage = VinextResponseStageTransport<AppWorkerResponseStageProps>;
84
+ export type RenderAppWorkerResponseStageLocally = (request: Request, props: AppWorkerResponseStageProps) => Promise<Response>;
85
+ /** Normalize a shared App page HEAD request onto its method-invariant GET representation. */
86
+ export declare function prepareSharedAppPageDispatch(request: Request, cache: VinextResponseStageDispatchOptions["cache"]): Request;
87
+ /**
88
+ * Build the query-free cache identity of a shared App page dispatch. The user
89
+ * query leaves both the URL and `resolvedUrl`; the `.rsc` suffix, an RSC
90
+ * request's validated `_rsc`, and the render mode stay because they select the
91
+ * representation. HTML identities also drop the RSC selector headers.
92
+ */
93
+ export declare function createSharedAppPageCacheIdentity(request: Request, props: AppMatchedWorkerResponseStageProps): NonNullable<VinextResponseStageDispatchOptions["cacheIdentity"]>;
94
+ /**
95
+ * Drop the user query from an App page dispatch URL and its `resolvedUrl`,
96
+ * keeping an RSC request's validated `_rsc`, the rule the query-free cache
97
+ * identity uses.
98
+ */
99
+ export declare function withoutAppPageDispatchQuery(requestUrl: string, props: AppMatchedWorkerResponseStageProps): {
100
+ props: AppMatchedWorkerResponseStageProps;
101
+ url: string;
102
+ };
103
+ /**
104
+ * Whether the Workers Cache request-stage projection gives a shared App page
105
+ * dispatch the `static-candidate` state, so its dispatch drops the user query.
106
+ * It is decided from the inputs completed-response admission uses: the
107
+ * header-canonicalized request's representation, the pathname after rewrites
108
+ * and the matched route pattern.
109
+ */
110
+ export declare function isStaticCandidateAppPageDispatch(projection: CacheabilityManifest, request: Request, props: AppMatchedWorkerResponseStageProps): boolean;
111
+ export declare function isAppWorkerResponseStageProps(value: unknown): value is AppWorkerResponseStageProps;
112
+ //#endregion
@@ -0,0 +1,105 @@
1
+ import { VINEXT_RSC_VARY_HEADER } from "./app-rsc-vary.js";
2
+ import { cacheabilityManifestPageState, cacheabilityRequestIdentity, cacheabilityRoutePathname } from "./cacheability-manifest.js";
3
+ import { keepOnlyValidatedRscCacheBustingSearchParam } from "./app-rsc-cache-busting.js";
4
+ import { isTrustedPrerenderState } from "./prerender-route-params.js";
5
+ //#region src/server/app-worker-stages.ts
6
+ const APP_WORKER_RESPONSE_STAGE_PROTOCOL_VERSION = 10;
7
+ const APP_METADATA_RESPONSE_STAGE_NO_MATCH_HEADER = "x-vinext-app-metadata-stage-no-match";
8
+ const STATIC_FILE_SIGNAL_TOKEN_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
9
+ /** Normalize a shared App page HEAD request onto its method-invariant GET representation. */
10
+ function prepareSharedAppPageDispatch(request, cache) {
11
+ return cache !== "bypass" && request.method.toUpperCase() === "HEAD" ? new Request(request, { method: "GET" }) : request;
12
+ }
13
+ /**
14
+ * Build the query-free cache identity of a shared App page dispatch. The user
15
+ * query leaves both the URL and `resolvedUrl`; the `.rsc` suffix, an RSC
16
+ * request's validated `_rsc`, and the render mode stay because they select the
17
+ * representation. HTML identities also drop the RSC selector headers.
18
+ */
19
+ function createSharedAppPageCacheIdentity(request, props) {
20
+ const queryFree = withoutAppPageDispatchQuery(request.url, props);
21
+ const headers = new Headers(request.headers);
22
+ if (!props.isRscRequest) for (const name of VINEXT_RSC_VARY_HEADER.split(",")) headers.delete(name.trim());
23
+ return {
24
+ props: queryFree.props,
25
+ request: new Request(queryFree.url, {
26
+ headers,
27
+ method: request.method
28
+ })
29
+ };
30
+ }
31
+ /**
32
+ * Drop the user query from an App page dispatch URL and its `resolvedUrl`,
33
+ * keeping an RSC request's validated `_rsc`, the rule the query-free cache
34
+ * identity uses.
35
+ */
36
+ function withoutAppPageDispatchQuery(requestUrl, props) {
37
+ const url = new URL(requestUrl);
38
+ keepOnlyValidatedRscCacheBustingSearchParam(url, props.isRscRequest);
39
+ const searchIndex = props.resolvedUrl.indexOf("?");
40
+ return {
41
+ props: {
42
+ ...props,
43
+ resolvedUrl: searchIndex === -1 ? props.resolvedUrl : props.resolvedUrl.slice(0, searchIndex)
44
+ },
45
+ url: url.toString()
46
+ };
47
+ }
48
+ /**
49
+ * Whether the Workers Cache request-stage projection gives a shared App page
50
+ * dispatch the `static-candidate` state, so its dispatch drops the user query.
51
+ * It is decided from the inputs completed-response admission uses: the
52
+ * header-canonicalized request's representation, the pathname after rewrites
53
+ * and the matched route pattern.
54
+ */
55
+ function isStaticCandidateAppPageDispatch(projection, request, props) {
56
+ const identity = cacheabilityRequestIdentity(request, props.cacheability.representation);
57
+ if (!identity) return false;
58
+ return cacheabilityManifestPageState(projection, {
59
+ kind: "app-page",
60
+ pattern: props.routePattern
61
+ }, identity.representation, cacheabilityRoutePathname(props.cacheability.resolvedRoutePathname, identity.representation)) === "static-candidate";
62
+ }
63
+ function isAppPageParams(value) {
64
+ if (!value || typeof value !== "object" || Array.isArray(value)) return false;
65
+ for (const param of Object.values(value)) {
66
+ if (typeof param === "string") continue;
67
+ if (!Array.isArray(param) || param.some((item) => typeof item !== "string")) return false;
68
+ }
69
+ return true;
70
+ }
71
+ function isCanonicalHttpOrigin(value) {
72
+ if (typeof value !== "string") return false;
73
+ try {
74
+ const url = new URL(value);
75
+ return (url.protocol === "http:" || url.protocol === "https:") && url.origin === value;
76
+ } catch {
77
+ return false;
78
+ }
79
+ }
80
+ function isAppWorkerResponseStageProps(value) {
81
+ if (!value || typeof value !== "object") return false;
82
+ const props = value;
83
+ if (props.protocolVersion !== 10 || props.buildId !== null && typeof props.buildId !== "string" || !isResponseStageCacheability(props.cacheability) || props.draftModeCookie !== null && typeof props.draftModeCookie !== "string" || props.middlewareCookieOverlay !== null && typeof props.middlewareCookieOverlay !== "string" || !isCanonicalHttpOrigin(props.requestOrigin) || props.scriptNonce !== null && typeof props.scriptNonce !== "string") return false;
84
+ if (props.kind === "app-full-request") return typeof props.prerenderDiscovery === "boolean" && typeof props.staticFileSignalToken === "string" && STATIC_FILE_SIGNAL_TOKEN_RE.test(props.staticFileSignalToken) && (props.trustedPrerenderState === null || isTrustedPrerenderState(props.trustedPrerenderState));
85
+ if (props.kind === "hybrid-pages") {
86
+ const hybrid = props;
87
+ const appRouteMatch = hybrid.appRouteMatch;
88
+ return typeof hybrid.allowRscDocumentFallback === "boolean" && (appRouteMatch === null || typeof appRouteMatch === "object" && typeof appRouteMatch.isDynamic === "boolean" && typeof appRouteMatch.pattern === "string" && appRouteMatch.pattern.startsWith("/")) && typeof hybrid.canonicalPathname === "string" && hybrid.canonicalPathname.startsWith("/") && typeof hybrid.cleanPathname === "string" && hybrid.cleanPathname.startsWith("/") && typeof hybrid.isDataRequest === "boolean" && typeof hybrid.isRscRequest === "boolean" && (hybrid.matchKind === "dynamic" || hybrid.matchKind === "static") && (hybrid.preHandlerHeaders === null || isSerializedHeaders(hybrid.preHandlerHeaders)) && (hybrid.resourceKind === "api" || hybrid.resourceKind === "page") && typeof hybrid.requestUrl === "string" && typeof hybrid.resolvedUrl === "string" && hybrid.resolvedUrl.startsWith("/");
89
+ }
90
+ if (props.kind === "app-metadata" || props.kind === "app-not-found") {
91
+ const special = props;
92
+ return typeof special.canonicalPathname === "string" && special.canonicalPathname.startsWith("/") && typeof special.cleanPathname === "string" && special.cleanPathname.startsWith("/") && typeof special.isRscRequest === "boolean" && (special.mountedSlotsHeader === null || typeof special.mountedSlotsHeader === "string") && typeof special.resolvedUrl === "string" && special.resolvedUrl.startsWith("/") && (props.kind !== "app-metadata" || typeof props.routePathname === "string" && props.routePathname.startsWith("/")) && (special.renderMode === "navigation" || special.renderMode === "prefetch-empty" || special.renderMode === "prefetch-dynamic-shell" || special.renderMode === "prefetch-loading-shell");
93
+ }
94
+ return (props.kind === "app-page" || props.kind === "app-route-handler") && typeof props.bypassInterceptionContextCache === "boolean" && typeof props.cachePathname === "string" && props.cachePathname.startsWith("/") && typeof props.canUseCanonicalLoadingShell === "boolean" && typeof props.canonicalPathname === "string" && props.canonicalPathname.startsWith("/") && typeof props.cleanPathname === "string" && props.cleanPathname.startsWith("/") && (props.forceDynamic === void 0 || typeof props.forceDynamic === "boolean") && (props.interceptionContext === null || typeof props.interceptionContext === "string") && (props.interceptionId === null || typeof props.interceptionId === "string") && typeof props.isRscRequest === "boolean" && (props.matchKind === "interception" || props.matchKind === "request" || props.matchKind === "resolved") && (props.mountedSlotsHeader === null || typeof props.mountedSlotsHeader === "string") && isAppPageParams(props.params) && typeof props.resolvedUrl === "string" && props.resolvedUrl.startsWith("/") && typeof props.routePattern === "string" && props.routePattern.startsWith("/") && typeof props.routePathname === "string" && props.routePathname.startsWith("/") && (props.renderMode === "navigation" || props.renderMode === "prefetch-empty" || props.renderMode === "prefetch-dynamic-shell" || props.renderMode === "prefetch-loading-shell");
95
+ }
96
+ function isSerializedHeaders(value) {
97
+ return Array.isArray(value) && value.every((entry) => Array.isArray(entry) && entry.length === 2 && typeof entry[0] === "string" && typeof entry[1] === "string");
98
+ }
99
+ function isResponseStageCacheability(value) {
100
+ if (!value || typeof value !== "object") return false;
101
+ const cacheability = value;
102
+ return (cacheability.probeMode === null || cacheability.probeMode === "probe" || cacheability.probeMode === "identity") && (cacheability.policyHeaders === null || Array.isArray(cacheability.policyHeaders) && cacheability.policyHeaders.every((entry) => Array.isArray(entry) && entry.length === 2 && typeof entry[0] === "string" && typeof entry[1] === "string")) && (cacheability.representation === void 0 || cacheability.representation === "app-route" || cacheability.representation === "html" || cacheability.representation === "pages-data" || cacheability.representation === "rsc-full" || cacheability.representation === "rsc-loading-shell") && typeof cacheability.resolvedRoutePathname === "string" && cacheability.resolvedRoutePathname.startsWith("/");
103
+ }
104
+ //#endregion
105
+ export { APP_METADATA_RESPONSE_STAGE_NO_MATCH_HEADER, APP_WORKER_RESPONSE_STAGE_PROTOCOL_VERSION, createSharedAppPageCacheIdentity, isAppWorkerResponseStageProps, isStaticCandidateAppPageDispatch, prepareSharedAppPageDispatch, withoutAppPageDispatchQuery };
@@ -1,8 +1,8 @@
1
1
  //#region src/server/artifact-compatibility.d.ts
2
- declare const ARTIFACT_COMPATIBILITY_SCHEMA_VERSION = 1;
3
- declare const APP_ELEMENTS_SCHEMA_VERSION = 1;
4
- declare const RSC_PAYLOAD_SCHEMA_VERSION = 1;
5
- type ArtifactCompatibilityEnvelope = Readonly<{
2
+ export declare const ARTIFACT_COMPATIBILITY_SCHEMA_VERSION = 1;
3
+ export declare const APP_ELEMENTS_SCHEMA_VERSION = 1;
4
+ export declare const RSC_PAYLOAD_SCHEMA_VERSION = 1;
5
+ export type ArtifactCompatibilityEnvelope = Readonly<{
6
6
  schemaVersion: typeof ARTIFACT_COMPATIBILITY_SCHEMA_VERSION;
7
7
  graphVersion: string | null;
8
8
  deploymentVersion: string | null;
@@ -11,7 +11,7 @@ type ArtifactCompatibilityEnvelope = Readonly<{
11
11
  rootBoundaryId: string | null;
12
12
  renderEpoch: string | null;
13
13
  }>;
14
- declare const ARTIFACT_COMPATIBILITY_PROOF_FIELDS: readonly (keyof ArtifactCompatibilityEnvelope)[];
14
+ export declare const ARTIFACT_COMPATIBILITY_PROOF_FIELDS: readonly (keyof ArtifactCompatibilityEnvelope)[];
15
15
  type ArtifactCompatibilityEnvelopeInput = Readonly<{
16
16
  graphVersion?: string | null;
17
17
  deploymentVersion?: string | null;
@@ -25,7 +25,7 @@ type ArtifactCompatibilityMap = Readonly<{
25
25
  rootBoundaryIds?: readonly ArtifactCompatibilitySet[];
26
26
  renderEpochs?: readonly ArtifactCompatibilitySet[];
27
27
  }>;
28
- type ArtifactCompatibilityEvaluationOptions = Readonly<{
28
+ export type ArtifactCompatibilityEvaluationOptions = Readonly<{
29
29
  compatibilityMap?: ArtifactCompatibilityMap;
30
30
  }>;
31
31
  type ArtifactCompatibilityFallback = "renderFresh";
@@ -46,9 +46,8 @@ type ArtifactCompatibilityGraphVersionInput = Readonly<{
46
46
  routePattern: string;
47
47
  rootBoundaryId: string | null;
48
48
  }>;
49
- declare function createArtifactCompatibilityEnvelope(input?: ArtifactCompatibilityEnvelopeInput): ArtifactCompatibilityEnvelope;
50
- declare function createArtifactCompatibilityGraphVersion(input: ArtifactCompatibilityGraphVersionInput): string;
51
- declare function parseArtifactCompatibilityEnvelope(value: unknown): ArtifactCompatibilityEnvelope | null;
52
- declare function evaluateArtifactCompatibility(current: ArtifactCompatibilityEnvelope, candidate: ArtifactCompatibilityEnvelope, options?: ArtifactCompatibilityEvaluationOptions): ArtifactCompatibilityDecision;
53
- //#endregion
54
- export { APP_ELEMENTS_SCHEMA_VERSION, ARTIFACT_COMPATIBILITY_PROOF_FIELDS, ARTIFACT_COMPATIBILITY_SCHEMA_VERSION, ArtifactCompatibilityEnvelope, ArtifactCompatibilityEvaluationOptions, RSC_PAYLOAD_SCHEMA_VERSION, createArtifactCompatibilityEnvelope, createArtifactCompatibilityGraphVersion, evaluateArtifactCompatibility, parseArtifactCompatibilityEnvelope };
49
+ export declare function createArtifactCompatibilityEnvelope(input?: ArtifactCompatibilityEnvelopeInput): ArtifactCompatibilityEnvelope;
50
+ export declare function createArtifactCompatibilityGraphVersion(input: ArtifactCompatibilityGraphVersionInput): string;
51
+ export declare function parseArtifactCompatibilityEnvelope(value: unknown): ArtifactCompatibilityEnvelope | null;
52
+ export declare function evaluateArtifactCompatibility(current: ArtifactCompatibilityEnvelope, candidate: ArtifactCompatibilityEnvelope, options?: ArtifactCompatibilityEvaluationOptions): ArtifactCompatibilityDecision;
53
+ //#endregion
@@ -11,6 +11,5 @@ import { BeforeInteractiveInlineScript } from "../shims/before-interactive-conte
11
11
  * passed through here is being concatenated directly into HTML; treat the
12
12
  * inputs accordingly.
13
13
  */
14
- declare function renderBeforeInteractiveInlineScripts(scripts: readonly BeforeInteractiveInlineScript[]): string;
15
- //#endregion
16
- export { renderBeforeInteractiveInlineScripts };
14
+ export declare function renderBeforeInteractiveInlineScripts(scripts: readonly BeforeInteractiveInlineScript[]): string;
15
+ //#endregion
@@ -1,10 +1,10 @@
1
1
  //#region src/server/bfcache-identity.d.ts
2
2
  type ParallelSlotBindingState = "active" | "default" | "unmatched";
3
- declare function createNestedBfcacheSlotSegmentId(parentSlotId: string, level: number): string;
4
- declare function isNestedBfcacheSlotSegmentId(id: string): boolean;
5
- declare function isNestedBfcacheSlotSegmentIdFor(id: string, parentSlotId: string): boolean;
6
- type BfcacheSegmentIdentity = string;
7
- type BfcacheSegmentDescriptor = {
3
+ export declare function createNestedBfcacheSlotSegmentId(parentSlotId: string, level: number): string;
4
+ export declare function isNestedBfcacheSlotSegmentId(id: string): boolean;
5
+ export declare function isNestedBfcacheSlotSegmentIdFor(id: string, parentSlotId: string): boolean;
6
+ export type BfcacheSegmentIdentity = string;
7
+ export type BfcacheSegmentDescriptor = {
8
8
  kind: "page";
9
9
  graphId: string;
10
10
  rootBoundaryId: string | null;
@@ -40,6 +40,5 @@ type BfcacheSegmentDescriptor = {
40
40
  boundSegmentKey: string;
41
41
  sourceBoundSegmentKey: string;
42
42
  };
43
- declare function deriveBfcacheSegmentIdentity(descriptor: BfcacheSegmentDescriptor): string;
44
- //#endregion
45
- export { BfcacheSegmentDescriptor, BfcacheSegmentIdentity, createNestedBfcacheSlotSegmentId, deriveBfcacheSegmentIdentity, isNestedBfcacheSlotSegmentId, isNestedBfcacheSlotSegmentIdFor };
43
+ export declare function deriveBfcacheSegmentIdentity(descriptor: BfcacheSegmentDescriptor): string;
44
+ //#endregion
@@ -1,18 +1,32 @@
1
1
  import { CdnCacheableHeaderInput, isNonCacheableCacheControl } from "../shims/cdn-cache.js";
2
2
  //#region src/server/cache-control.d.ts
3
- declare const NEVER_CACHE_CONTROL = "private, no-cache, no-store, max-age=0, must-revalidate";
4
- declare const BROWSER_REVALIDATE_CACHE_CONTROL = "public, max-age=0, must-revalidate";
5
- declare const STATIC_CACHE_CONTROL = "s-maxage=31536000, stale-while-revalidate";
6
- declare const NO_STORE_CACHE_CONTROL = "no-store, must-revalidate";
7
- declare function shouldUseNextDeployCacheControl(): boolean;
3
+ export declare const NEVER_CACHE_CONTROL = "private, no-cache, no-store, max-age=0, must-revalidate";
4
+ export declare const BROWSER_REVALIDATE_CACHE_CONTROL = "public, max-age=0, must-revalidate";
5
+ export declare const STATIC_CACHE_CONTROL = "s-maxage=31536000, stale-while-revalidate";
6
+ export declare const NO_STORE_CACHE_CONTROL = "no-store, must-revalidate";
7
+ export declare function shouldUseNextDeployCacheControl(): boolean;
8
8
  /**
9
9
  * Whether an existing response explicitly opted out of storage. Adapters may
10
10
  * inspect the provider-specific policy headers they own; the generic fallback
11
11
  * only understands the framework-owned `Cache-Control` header.
12
12
  */
13
- declare function hasExplicitNonCacheableResponsePolicy(headers: Headers): boolean;
13
+ export declare function hasExplicitNonCacheableResponsePolicy(headers: Headers, baseline?: Headers): boolean;
14
+ /** Whether a response header controls core or the active CDN adapter. */
15
+ export declare function isCdnResponsePolicyHeader(name: string): boolean;
16
+ /** Whether a response declares any core- or adapter-owned cache policy. */
17
+ export declare function hasCdnResponsePolicy(headers: Headers): boolean;
18
+ /** Read the effective shared-cache policy without interpreting provider headers in core. */
19
+ export declare function readCdnResponseCacheControl(headers: Headers | undefined): string | null;
20
+ /** Name the lowercased policy header whose value `readCdnResponseCacheControl` read. */
21
+ export declare function readCdnResponsePolicyHeaderName(headers: Headers): string | null;
22
+ /** Ask the active adapter whether one policy header explicitly disables storage. */
23
+ export declare function isNonCacheableCdnResponsePolicy(name: string, value: string): boolean;
24
+ /** Capture only cache-policy provenance from an outer composition stage. */
25
+ export declare function captureCdnResponsePolicyHeaders(headers: Headers): Headers;
26
+ /** Capture policy values that were added above an already-transported baseline. */
27
+ export declare function captureCdnResponsePolicyOverrides(headers: Headers, baseline: Headers): Headers;
14
28
  /** Delegate provider-specific request routing validation to the CDN adapter. */
15
- declare function validateCdnRequest(request: Request): Promise<Response | null>;
29
+ export declare function validateCdnRequest(request: Request): Promise<Response | null>;
16
30
  /**
17
31
  * Route a cacheable response's headers through the active CDN cache adapter and
18
32
  * apply the result to `headers`. The default adapter yields a single
@@ -23,11 +37,19 @@ declare function validateCdnRequest(request: Request): Promise<Response | null>;
23
37
  * while returning `null` removes it. Core only clears the generic header it
24
38
  * owns before applying that map.
25
39
  */
26
- declare function applyCdnResponseHeaders(headers: Headers, input: CdnCacheableHeaderInput): void;
40
+ export declare function applyCdnResponseHeaders(headers: Headers, input: CdnCacheableHeaderInput): void;
41
+ /**
42
+ * Reconcile request-stage policy composed above a reusable response artifact.
43
+ * A newly applied private policy must clear any cacheable provider headers that
44
+ * belonged to the inner artifact before the final response leaves the gateway.
45
+ * `outerPolicyHeaders` contains only policy set by the uncached request stage,
46
+ * so an identical inner value cannot hide explicit outer provenance.
47
+ */
48
+ export declare function reconcileCdnResponseHeadersAfterOuterPolicy(headers: Headers, outerPolicyHeaders: Headers): void;
27
49
  /** Apply adapter-owned build identity to an HTML or RSC page response. */
28
- declare function applyCdnResponseIdentityHeaders(response: Response, request: Request): Response;
50
+ export declare function applyCdnResponseIdentityHeaders(response: Response, request: Request): Response;
29
51
  /** Apply adapter-owned build identity to an already-classified response. */
30
- declare function applyCdnResponseBuildIdentityHeaders(response: Response): Response;
52
+ export declare function applyCdnResponseBuildIdentityHeaders(response: Response): Response;
31
53
  /**
32
54
  * Matches Next.js's `getCacheControlHeader` stale window semantics while
33
55
  * preserving vinext's legacy unbounded SWR header when no expire ceiling is
@@ -36,7 +58,7 @@ declare function applyCdnResponseBuildIdentityHeaders(response: Response): Respo
36
58
  * Next.js source:
37
59
  * https://github.com/vercel/next.js/blob/canary/packages/next/src/server/lib/cache-control.ts
38
60
  */
39
- declare function buildRevalidateCacheControl(revalidateSeconds: number | false, expireSeconds?: number): string;
61
+ export declare function buildRevalidateCacheControl(revalidateSeconds: number | false, expireSeconds?: number): string;
40
62
  /**
41
63
  * Builds Cache-Control for ISR cache reads. HIT responses and STALE responses
42
64
  * with stored expire metadata use the same route policy because Next.js derives
@@ -44,6 +66,6 @@ declare function buildRevalidateCacheControl(revalidateSeconds: number | false,
44
66
  * STALE entries without expire metadata keep vinext's legacy `s-maxage=0`
45
67
  * fallback so older cache entries are not treated as newly fresh downstream.
46
68
  */
47
- declare function buildCachedRevalidateCacheControl(cacheState: "HIT" | "STALE", revalidateSeconds: number | false, expireSeconds?: number): string;
69
+ export declare function buildCachedRevalidateCacheControl(cacheState: "HIT" | "STALE", revalidateSeconds: number | false, expireSeconds?: number): string;
48
70
  //#endregion
49
- export { BROWSER_REVALIDATE_CACHE_CONTROL, NEVER_CACHE_CONTROL, NO_STORE_CACHE_CONTROL, STATIC_CACHE_CONTROL, applyCdnResponseBuildIdentityHeaders, applyCdnResponseHeaders, applyCdnResponseIdentityHeaders, buildCachedRevalidateCacheControl, buildRevalidateCacheControl, hasExplicitNonCacheableResponsePolicy, isNonCacheableCacheControl, shouldUseNextDeployCacheControl, validateCdnRequest };
71
+ export { isNonCacheableCacheControl };