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,10 +1,9 @@
1
1
  //#region src/server/worker-utils.d.ts
2
- declare function finalizeMissingStaticAssetResponse(response: Response, missingBuildAsset: boolean): Response;
3
- declare function mergeHeaders(response: Response, extraHeaders: Record<string, string | string[]>, statusOverride?: number): Response;
4
- declare function resolveStaticAssetSignal(signalResponse: Response, options: {
2
+ export declare function finalizeMissingStaticAssetResponse(response: Response, missingBuildAsset: boolean): Response;
3
+ export declare function mergeHeaders(response: Response, extraHeaders: Record<string, string | string[]>, statusOverride?: number): Response;
4
+ export declare function resolveStaticAssetSignal(signalResponse: Response, options: {
5
5
  fetchAsset(path: string): Promise<Response>;
6
6
  }): Promise<Response | null>;
7
7
  /** Retarget a Worker asset request without dropping its conditional/range fields. */
8
- declare function createStaticAssetRequest(assetPath: string, sourceRequest: Request): Request;
9
- //#endregion
10
- export { createStaticAssetRequest, finalizeMissingStaticAssetResponse, mergeHeaders, resolveStaticAssetSignal };
8
+ export declare function createStaticAssetRequest(assetPath: string, sourceRequest: Request): Request;
9
+ //#endregion
@@ -94,7 +94,8 @@ async function resolveStaticAssetSignal(signalResponse, options) {
94
94
  const extraHeaders = buildHeaderRecord(signalResponse, [
95
95
  "content-encoding",
96
96
  "content-length",
97
- "content-type"
97
+ "content-type",
98
+ "transfer-encoding"
98
99
  ]);
99
100
  cancelResponseBody(signalResponse);
100
101
  const assetResponse = await options.fetchAsset(assetPath);
@@ -0,0 +1,17 @@
1
+ import { FrameworkTracingIntegration } from "./framework-tracer.js";
2
+ //#region src/server/workers-tracing.d.ts
3
+ export type WorkersTracingException = string | {
4
+ name: string;
5
+ message: string;
6
+ stack?: string;
7
+ };
8
+ export type WorkersTracingSpan = {
9
+ readonly isTraced: boolean;
10
+ recordException?(exception: WorkersTracingException): void;
11
+ setAttribute(key: string, value: boolean | number | string): void;
12
+ };
13
+ export type WorkersTracing = {
14
+ enterSpan<T>(name: string, callback: (span: WorkersTracingSpan) => T): T;
15
+ };
16
+ export declare function createWorkersTracingIntegration(tracing: WorkersTracing): FrameworkTracingIntegration;
17
+ //#endregion
@@ -0,0 +1,27 @@
1
+ //#region src/server/workers-tracing.ts
2
+ function normalizeException(error) {
3
+ if (typeof error === "string") return error;
4
+ if (error instanceof Error) return {
5
+ message: error.message,
6
+ name: error.name,
7
+ ...error.stack ? { stack: error.stack } : {}
8
+ };
9
+ return String(error);
10
+ }
11
+ function createWorkersTracingIntegration(tracing) {
12
+ const backendSpan = (span) => ({
13
+ recordException: (error) => span.recordException?.(normalizeException(error)),
14
+ setAttribute: (key, value) => span.setAttribute(key, value)
15
+ });
16
+ return {
17
+ id: "cloudflare-workers",
18
+ enterSpan(descriptor, callback) {
19
+ return tracing.enterSpan(descriptor.name, (span) => {
20
+ for (const [key, value] of Object.entries(descriptor.attributes)) span.setAttribute(key, value);
21
+ return callback(backendSpan(span));
22
+ });
23
+ }
24
+ };
25
+ }
26
+ //#endregion
27
+ export { createWorkersTracingIntegration };
@@ -9,11 +9,10 @@
9
9
  * Check if the current page is being served as AMP.
10
10
  * Always returns false — AMP is not supported.
11
11
  */
12
- declare function useAmp(): boolean;
12
+ export declare function useAmp(): boolean;
13
13
  /**
14
14
  * Check if AMP is enabled for the current page.
15
15
  * Always returns false.
16
16
  */
17
- declare function isInAmpMode(): boolean;
18
- //#endregion
19
- export { isInAmpMode, useAmp };
17
+ export declare function isInAmpMode(): boolean;
18
+ //#endregion
@@ -1,17 +1,16 @@
1
1
  //#region src/shims/app-router-scroll-state.d.ts
2
- type AppRouterScrollIntent = Readonly<{
2
+ export type AppRouterScrollIntent = Readonly<{
3
3
  commitId: number | null;
4
4
  hash: string | null;
5
5
  headElements: ReadonlySet<Element> | null;
6
6
  id: number;
7
7
  targetHoistedInHead: boolean;
8
8
  }>;
9
- declare function beginAppRouterScrollIntent(hash: string | null): AppRouterScrollIntent;
10
- declare function clearAppRouterScrollIntent(): void;
11
- declare function getPendingAppRouterScrollIntent(): AppRouterScrollIntent | null;
12
- declare function isLatestAppRouterScrollIntent(expected: AppRouterScrollIntent | null | undefined): boolean;
13
- declare function claimAppRouterScrollIntentForCommit(expected: AppRouterScrollIntent | null | undefined, commitId: number): void;
14
- declare function markAppRouterScrollIntentHeadHoisted(expected: AppRouterScrollIntent | null | undefined, commitId: number): void;
15
- declare function consumeAppRouterScrollIntent(expected: AppRouterScrollIntent | null | undefined, commitId?: number): AppRouterScrollIntent | null;
16
- //#endregion
17
- export { AppRouterScrollIntent, beginAppRouterScrollIntent, claimAppRouterScrollIntentForCommit, clearAppRouterScrollIntent, consumeAppRouterScrollIntent, getPendingAppRouterScrollIntent, isLatestAppRouterScrollIntent, markAppRouterScrollIntentHeadHoisted };
9
+ export declare function beginAppRouterScrollIntent(hash: string | null): AppRouterScrollIntent;
10
+ export declare function clearAppRouterScrollIntent(): void;
11
+ export declare function getPendingAppRouterScrollIntent(): AppRouterScrollIntent | null;
12
+ export declare function isLatestAppRouterScrollIntent(expected: AppRouterScrollIntent | null | undefined): boolean;
13
+ export declare function claimAppRouterScrollIntentForCommit(expected: AppRouterScrollIntent | null | undefined, commitId: number): void;
14
+ export declare function markAppRouterScrollIntentHeadHoisted(expected: AppRouterScrollIntent | null | undefined, commitId: number): void;
15
+ export declare function consumeAppRouterScrollIntent(expected: AppRouterScrollIntent | null | undefined, commitId?: number): AppRouterScrollIntent | null;
16
+ //#endregion
@@ -1,6 +1,6 @@
1
1
  import * as React$1 from "react";
2
2
  //#region src/shims/app-router-scroll.d.ts
3
- declare class AppRouterScrollTargetInner extends React$1.Component<{
3
+ export declare class AppRouterScrollTargetInner extends React$1.Component<{
4
4
  children: React$1.ReactNode;
5
5
  commitId: number | null;
6
6
  }> {
@@ -12,12 +12,11 @@ declare class AppRouterScrollTargetInner extends React$1.Component<{
12
12
  componentWillUnmount(): void;
13
13
  render(): React$1.ReactNode;
14
14
  }
15
- declare function AppRouterScrollCommitProvider({ children, commitId }: {
15
+ export declare function AppRouterScrollCommitProvider({ children, commitId }: {
16
16
  children?: React$1.ReactNode;
17
17
  commitId: number | null;
18
18
  }): React$1.JSX.Element;
19
- declare function AppRouterScrollTarget({ children }: {
19
+ export declare function AppRouterScrollTarget({ children }: {
20
20
  children: React$1.ReactNode;
21
21
  }): React$1.JSX.Element;
22
- //#endregion
23
- export { AppRouterScrollCommitProvider, AppRouterScrollTarget, AppRouterScrollTargetInner };
22
+ //#endregion
@@ -133,8 +133,9 @@ function AppRouterScrollCommitProvider({ children, commitId }) {
133
133
  });
134
134
  }
135
135
  function AppRouterScrollTarget({ children }) {
136
+ const commitId = React$1.useContext(AppRouterScrollCommitContext);
136
137
  return /* @__PURE__ */ jsx(AppRouterScrollTargetInner, {
137
- commitId: React$1.useContext(AppRouterScrollCommitContext),
138
+ commitId,
138
139
  children
139
140
  });
140
141
  }
@@ -1,6 +1,6 @@
1
1
  import React, { ComponentType } from "react";
2
2
  //#region src/shims/app.d.ts
3
- type AppProps<P = any> = {
3
+ export type AppProps<P = any> = {
4
4
  Component: ComponentType<P> & {
5
5
  getInitialProps?: (ctx: any) => any;
6
6
  };
@@ -13,7 +13,7 @@ type AppProps<P = any> = {
13
13
  * The context passed to `App.getInitialProps`. Mirrors Next.js's
14
14
  * `AppContextType` from `packages/next/src/shared/lib/utils.ts`.
15
15
  */
16
- type AppContext = {
16
+ export type AppContext = {
17
17
  Component: ComponentType<any> & {
18
18
  getInitialProps?: (ctx: any) => any;
19
19
  };
@@ -25,14 +25,13 @@ type AppContext = {
25
25
  * The initial props shape returned by `App.getInitialProps`. Mirrors
26
26
  * Next.js's `AppInitialProps` from `packages/next/src/shared/lib/utils.ts`.
27
27
  */
28
- type AppInitialProps<PageProps = any> = {
28
+ export type AppInitialProps<PageProps = any> = {
29
29
  pageProps: PageProps;
30
30
  };
31
31
  declare function appGetInitialProps({ Component, ctx }: AppContext): Promise<AppInitialProps>;
32
- declare class App<P = any, CP = any, S = any> extends React.Component<P & AppProps<CP>, S> {
32
+ export default class App<P = any, CP = any, S = any> extends React.Component<P & AppProps<CP>, S> {
33
33
  static origGetInitialProps: typeof appGetInitialProps;
34
34
  static getInitialProps: typeof appGetInitialProps;
35
35
  render(): React.ReactElement;
36
36
  }
37
- //#endregion
38
- export { AppContext, AppInitialProps, AppProps, App as default };
37
+ //#endregion
@@ -15,7 +15,7 @@ import React from "react";
15
15
  * (`(self.__next_s=...).push(...)`). An entry has `src` set for external
16
16
  * scripts and `innerHTML` set for inline scripts (never both).
17
17
  */
18
- type BeforeInteractiveInlineScript = {
18
+ export type BeforeInteractiveInlineScript = {
19
19
  /** Optional id attribute. */
20
20
  id?: string;
21
21
  /** External script URL. Set for src beforeInteractive scripts. */
@@ -35,8 +35,7 @@ type BeforeInteractiveInlineScript = {
35
35
  */
36
36
  attributes?: Record<string, string | boolean>;
37
37
  };
38
- type RegisterBeforeInteractiveInlineScript = (script: BeforeInteractiveInlineScript) => void;
39
- declare const BeforeInteractiveContext: React.Context<RegisterBeforeInteractiveInlineScript | null>;
40
- declare function useBeforeInteractiveRegister(): RegisterBeforeInteractiveInlineScript | null;
41
- //#endregion
42
- export { BeforeInteractiveContext, BeforeInteractiveInlineScript, RegisterBeforeInteractiveInlineScript, useBeforeInteractiveRegister };
38
+ export type RegisterBeforeInteractiveInlineScript = (script: BeforeInteractiveInlineScript) => void;
39
+ export declare const BeforeInteractiveContext: React.Context<RegisterBeforeInteractiveInlineScript | null>;
40
+ export declare function useBeforeInteractiveRegister(): RegisterBeforeInteractiveInlineScript | null;
41
+ //#endregion
@@ -1,3 +1,4 @@
1
+ import { VinextCacheFunctionInvocation } from "../server/multi-stage.js";
1
2
  import { RegisterCachedFunctionOptions } from "./cache-runtime.js";
2
3
  //#region src/shims/cache-callable-runtime.d.ts
3
4
  declare const CACHE_CAPTURE_TYPE = "use-cache-captures";
@@ -5,7 +6,46 @@ type CacheCaptureEnvelope = {
5
6
  type: typeof CACHE_CAPTURE_TYPE;
6
7
  encrypted: string | PromiseLike<string>;
7
8
  };
8
- declare function encryptCacheCaptures(captures: unknown[]): CacheCaptureEnvelope;
9
- declare function registerCachedFunction<TArgs extends unknown[], TResult>(fn: (...args: TArgs) => Promise<TResult>, id: string, variant: string, options: RegisterCachedFunctionOptions): (...args: TArgs) => Promise<TResult>;
10
- //#endregion
11
- export { encryptCacheCaptures, registerCachedFunction };
9
+ /**
10
+ * Flight serializes a promise as its resolved value and drops its own fields.
11
+ * Next.js params are promises that also expose their resolved fields, and the
12
+ * cache key is built from those fields, so the payload carries each such
13
+ * promise's fields next to the arguments and decoding assigns them back.
14
+ */
15
+ type EncodedCacheArguments = {
16
+ args: unknown[];
17
+ thenableObjects: EncodedThenableObject[];
18
+ };
19
+ /**
20
+ * Flight writes each object once, so `promise` decodes to the same promise as
21
+ * every other reference to it, including ones inside resolved values, and the
22
+ * fields share references with the arguments. The fields build the cache key;
23
+ * the resolved value can differ: the params proxy hides params named like
24
+ * promise or React fields (`value`, `status`) from its own keys but still
25
+ * resolves to them.
26
+ */
27
+ type EncodedThenableObject = {
28
+ fields: Record<string, unknown>;
29
+ promise: PromiseLike<unknown>;
30
+ };
31
+ export declare function encryptCacheCaptures(captures: unknown[]): CacheCaptureEnvelope;
32
+ /**
33
+ * What to do when a read would run a getter: `reject` throws
34
+ * `UnreplayableCacheArgumentsError`, `skip` leaves the getter unread.
35
+ */
36
+ type GetterHandling = "reject" | "skip";
37
+ /**
38
+ * Collect the own fields of every promise-augmented object in the arguments,
39
+ * including ones inside resolved promise values. The arguments are passed to
40
+ * Flight as they are, so Flight keeps their shared references and cycles.
41
+ * With `getters: "reject"`, throws `UnreplayableCacheArgumentsError` when the
42
+ * arguments hold a getter; with `"skip"`, promise fields behind a getter are
43
+ * not recorded.
44
+ */
45
+ export declare function encodeCacheArguments(args: unknown[], getters?: GetterHandling): Promise<EncodedCacheArguments>;
46
+ /** Restore the promise fields that `encodeCacheArguments` captured before Flight encoding. */
47
+ export declare function decodeCacheArguments(value: unknown): unknown[];
48
+ export declare function registerCachedFunction<TArgs extends unknown[], TResult>(fn: (...args: TArgs) => Promise<TResult>, id: string, variant: string, options: RegisterCachedFunctionOptions): (...args: TArgs) => Promise<TResult>;
49
+ /** Load and invoke one transformed cache function through its server-reference identity. */
50
+ export declare function invokeCacheFunction(invocation: VinextCacheFunctionInvocation, loadServerAction: (id: string) => Promise<unknown>): Promise<void>;
51
+ //#endregion
@@ -1,30 +1,190 @@
1
- import { registerCachedFunction as registerCachedFunction$1 } from "./cache-runtime.js";
1
+ import { isThenableObject, isUseCacheFunction, registerCachedFunction as registerCachedFunction$1 } from "./cache-runtime.js";
2
2
  import { decryptActionBoundArgs, encryptActionBoundArgs } from "@vitejs/plugin-rsc/utils/encryption-runtime";
3
3
  //#region src/shims/cache-callable-runtime.ts
4
4
  const CACHE_CAPTURE_TYPE = "use-cache-captures";
5
5
  function encryptCacheCaptures(captures) {
6
6
  return {
7
7
  type: CACHE_CAPTURE_TYPE,
8
- encrypted: encryptActionBoundArgs(captures)
8
+ encrypted: encryptCaptures(captures)
9
9
  };
10
10
  }
11
11
  async function decryptCacheCaptures(value) {
12
12
  if (!isCacheCaptureEnvelope(value)) return;
13
- const captures = await decryptActionBoundArgs(Promise.resolve(value.encrypted));
14
- if (!Array.isArray(captures)) throw new Error("Invalid cache capture payload");
15
- return captures;
13
+ return decryptCacheArguments(value.encrypted);
14
+ }
15
+ async function encryptCaptures(captures) {
16
+ return encryptActionBoundArgs(await encodeCacheArguments(captures, "skip"));
17
+ }
18
+ async function encryptCacheArguments(args) {
19
+ return encryptActionBoundArgs(await encodeCacheArguments(args));
20
+ }
21
+ async function decryptCacheArguments(encrypted) {
22
+ return decodeCacheArguments(await decryptActionBoundArgs(Promise.resolve(encrypted)));
23
+ }
24
+ function isThenable(value) {
25
+ return "then" in value && typeof value.then === "function";
26
+ }
27
+ function isPlainRecord(value) {
28
+ const prototype = Object.getPrototypeOf(value);
29
+ return (prototype === Object.prototype || prototype === null) && !("$$typeof" in value);
30
+ }
31
+ /**
32
+ * The arguments hold a getter. Flight reads it again while serializing, and a
33
+ * getter can return a different value, such as a new promise, on every read,
34
+ * so the recorded promise fields may not match what Flight serializes.
35
+ */
36
+ var UnreplayableCacheArgumentsError = class extends Error {
37
+ constructor() {
38
+ super("Cache function arguments with getters cannot be replayed");
39
+ }
40
+ };
41
+ /**
42
+ * The own entries of `value` that Flight serializes: every index below an
43
+ * array's `length`, including holes and non-enumerable indices, as
44
+ * `JSON.stringify` reads them, and the enumerable own keys of anything else.
45
+ * A getter, own or inherited through an array hole, is never run.
46
+ */
47
+ function ownEntries(value, getters) {
48
+ const keys = Array.isArray(value) ? Array.from({ length: value.length }, (_, index) => String(index)) : Object.keys(value);
49
+ const entries = [];
50
+ for (const key of keys) {
51
+ if (readsGetter(value, key)) {
52
+ if (getters === "reject") throw new UnreplayableCacheArgumentsError();
53
+ continue;
54
+ }
55
+ entries.push([key, Reflect.get(value, key)]);
56
+ }
57
+ return entries;
58
+ }
59
+ /**
60
+ * Whether reading `key` from `value` runs a getter. An array hole reads
61
+ * through the prototype chain, which can hold an indexed data property or
62
+ * accessor. A setter-only accessor reads as `undefined` without running code.
63
+ */
64
+ function readsGetter(value, key) {
65
+ for (let target = value; target !== null; target = Reflect.getPrototypeOf(target)) {
66
+ const descriptor = Reflect.getOwnPropertyDescriptor(target, key);
67
+ if (descriptor) return typeof descriptor.get === "function";
68
+ }
69
+ return false;
70
+ }
71
+ /** Members of the values Flight serializes recursively, which can hold params. */
72
+ function flightMembers(value, getters) {
73
+ if (value instanceof Map) return [...value].flat();
74
+ if (value instanceof Set) return [...value];
75
+ if (isThenableObject(value) || Array.isArray(value) || isPlainRecord(value)) return ownEntries(value, getters).map(([, member]) => member);
76
+ return [];
77
+ }
78
+ /**
79
+ * Collect the own fields of every promise-augmented object in the arguments,
80
+ * including ones inside resolved promise values. The arguments are passed to
81
+ * Flight as they are, so Flight keeps their shared references and cycles.
82
+ * With `getters: "reject"`, throws `UnreplayableCacheArgumentsError` when the
83
+ * arguments hold a getter; with `"skip"`, promise fields behind a getter are
84
+ * not recorded.
85
+ */
86
+ async function encodeCacheArguments(args, getters = "reject") {
87
+ const settled = /* @__PURE__ */ new Map();
88
+ for (;;) {
89
+ const thenableObjects = [];
90
+ const unsettled = [];
91
+ const visited = /* @__PURE__ */ new Set();
92
+ const pending = [args];
93
+ while (pending.length > 0) {
94
+ const value = pending.pop();
95
+ if (typeof value !== "object" || value === null || visited.has(value)) continue;
96
+ visited.add(value);
97
+ const children = flightMembers(value, getters);
98
+ if (isThenableObject(value)) {
99
+ const fields = Object.fromEntries(ownEntries(value, getters));
100
+ thenableObjects.push({
101
+ fields,
102
+ promise: value
103
+ });
104
+ }
105
+ if (isThenable(value)) {
106
+ const result = settled.get(value);
107
+ if (!result) unsettled.push(value);
108
+ else if (result.status === "fulfilled") children.push(result.value);
109
+ }
110
+ for (const child of children) pending.push(child);
111
+ }
112
+ if (unsettled.length === 0) return {
113
+ args,
114
+ thenableObjects
115
+ };
116
+ const results = await Promise.allSettled(unsettled);
117
+ unsettled.forEach((thenable, index) => settled.set(thenable, results[index]));
118
+ }
119
+ }
120
+ /** Restore the promise fields that `encodeCacheArguments` captured before Flight encoding. */
121
+ function decodeCacheArguments(value) {
122
+ if (typeof value !== "object" || value === null || !("args" in value) || !Array.isArray(value.args) || !("thenableObjects" in value) || !Array.isArray(value.thenableObjects)) throw new Error("Invalid cache function arguments");
123
+ adoptFlightThenables(value);
124
+ for (const thenableObject of value.thenableObjects) {
125
+ if (!isEncodedThenableObject(thenableObject)) throw new Error("Invalid cache function arguments");
126
+ Object.assign(thenableObject.promise, thenableObject.fields);
127
+ }
128
+ return value.args;
129
+ }
130
+ function isEncodedThenableObject(value) {
131
+ if (typeof value !== "object" || value === null || !isPlainRecord(value)) return false;
132
+ const { fields, promise } = value;
133
+ return typeof fields === "object" && fields !== null && isPlainRecord(fields) && promise instanceof Promise;
134
+ }
135
+ /**
136
+ * Flight decodes promises as React chunks whose own fields are React's
137
+ * internal state. Adopt them into native promises, which have no own fields,
138
+ * so key serialization sees a promise exactly as the original call did.
139
+ * Flight shares one chunk between references to the same promise, so each
140
+ * chunk is adopted once, including references inside resolved values.
141
+ */
142
+ function adoptFlightThenables(value, adopted = /* @__PURE__ */ new WeakMap()) {
143
+ if (typeof value !== "object" || value === null) return value;
144
+ if (adopted.has(value)) return adopted.get(value);
145
+ if (isThenable(value)) {
146
+ const promise = Promise.resolve(value).then((resolved) => adoptFlightThenables(resolved, adopted));
147
+ promise.catch(() => {});
148
+ adopted.set(value, promise);
149
+ return promise;
150
+ }
151
+ if (value instanceof Map) {
152
+ adopted.set(value, value);
153
+ const entries = [...value];
154
+ value.clear();
155
+ for (const [key, item] of entries) value.set(adoptFlightThenables(key, adopted), adoptFlightThenables(item, adopted));
156
+ return value;
157
+ }
158
+ if (value instanceof Set) {
159
+ adopted.set(value, value);
160
+ const items = [...value];
161
+ value.clear();
162
+ for (const item of items) value.add(adoptFlightThenables(item, adopted));
163
+ return value;
164
+ }
165
+ if (!Array.isArray(value) && !isPlainRecord(value)) return value;
166
+ adopted.set(value, value);
167
+ for (const key of Object.keys(value)) Reflect.set(value, key, adoptFlightThenables(Reflect.get(value, key), adopted));
168
+ return value;
16
169
  }
17
170
  function isCacheCaptureEnvelope(value) {
18
171
  if (typeof value !== "object" || value === null) return false;
19
172
  if (!("type" in value) || value.type !== CACHE_CAPTURE_TYPE || !("encrypted" in value)) return false;
20
173
  const encrypted = value.encrypted;
21
- return typeof encrypted === "string" || typeof encrypted === "object" && encrypted !== null && "then" in encrypted && typeof encrypted.then === "function";
174
+ return typeof encrypted === "string" || typeof encrypted === "object" && encrypted !== null && isThenable(encrypted);
22
175
  }
23
176
  function registerCachedFunction(fn, id, variant, options) {
24
177
  return registerCachedFunction$1(fn, id, variant, {
25
178
  ...options,
26
- decryptCaptures: decryptCacheCaptures
179
+ decryptCaptures: decryptCacheCaptures,
180
+ encodeInvocationArgs: encryptCacheArguments
27
181
  });
28
182
  }
183
+ /** Load and invoke one transformed cache function through its server-reference identity. */
184
+ async function invokeCacheFunction(invocation, loadServerAction) {
185
+ const fn = await loadServerAction(invocation.referenceId);
186
+ if (!isUseCacheFunction(fn)) throw new Error(`Server reference ${invocation.referenceId} is not a cache function`);
187
+ await fn(...await decryptCacheArguments(invocation.encryptedArgs));
188
+ }
29
189
  //#endregion
30
- export { encryptCacheCaptures, registerCachedFunction };
190
+ export { decodeCacheArguments, encodeCacheArguments, encryptCacheCaptures, invokeCacheFunction, registerCachedFunction };
@@ -52,6 +52,5 @@
52
52
  * factories. Async factories that reject have their cache cleared, allowing retry.
53
53
  * @returns A function with the same return type that caches the result per request.
54
54
  */
55
- declare function cacheForRequest<T>(factory: () => T): () => T;
56
- //#endregion
57
- export { cacheForRequest };
55
+ export declare function cacheForRequest<T>(factory: () => T): () => T;
56
+ //#endregion
@@ -1,13 +1,13 @@
1
1
  import { RenderObservation } from "../server/cache-proof.js";
2
2
  //#region src/shims/cache-handler.d.ts
3
- type CacheHandlerValue = {
3
+ export type CacheHandlerValue = {
4
4
  lastModified: number;
5
5
  age?: number;
6
6
  cacheState?: string;
7
7
  cacheControl?: CacheControlMetadata;
8
8
  value: IncrementalCacheValue | null;
9
9
  };
10
- type CacheControlMetadata = {
10
+ export type CacheControlMetadata = {
11
11
  revalidate: number | false;
12
12
  expire?: number;
13
13
  /**
@@ -17,8 +17,8 @@ type CacheControlMetadata = {
17
17
  */
18
18
  stale?: number;
19
19
  };
20
- type IncrementalCacheValue = CachedFetchValue | CachedAppPageValue | CachedPagesValue | CachedRouteValue | CachedRedirectValue | CachedImageValue;
21
- type CachedFetchValue = {
20
+ export type IncrementalCacheValue = CachedFetchValue | CachedAppPageValue | CachedPagesValue | CachedRouteValue | CachedRedirectValue | CachedImageValue;
21
+ export type CachedFetchValue = {
22
22
  kind: "FETCH";
23
23
  data: {
24
24
  headers: Record<string, string>;
@@ -29,16 +29,23 @@ type CachedFetchValue = {
29
29
  tags?: string[];
30
30
  revalidate: number | false;
31
31
  };
32
- type CachedAppPageValue = {
32
+ export type CachedAppPageValue = {
33
33
  kind: "APP_PAGE";
34
34
  html: string;
35
35
  rscData: ArrayBuffer | undefined;
36
36
  headers: Record<string, string | string[]> | undefined;
37
37
  postponed: string | undefined;
38
+ /**
39
+ * Set by a read-only adapter whose entries are build-time prerenders. A
40
+ * prerender that reads the query is skipped as dynamic, so such an entry
41
+ * serves every query without a render observation, as Next.js serves its
42
+ * static output.
43
+ */
44
+ prerendered?: true;
38
45
  renderObservation?: RenderObservation;
39
46
  status: number | undefined;
40
47
  };
41
- type CachedPagesValue = {
48
+ export type CachedPagesValue = {
42
49
  kind: "PAGES";
43
50
  html: string;
44
51
  pageData: object;
@@ -46,30 +53,30 @@ type CachedPagesValue = {
46
53
  headers: Record<string, string | string[]> | undefined;
47
54
  status: number | undefined;
48
55
  };
49
- type CachedRouteValue = {
56
+ export type CachedRouteValue = {
50
57
  kind: "APP_ROUTE";
51
58
  body: ArrayBuffer;
52
59
  status: number;
53
60
  headers: Record<string, string | string[]>;
54
61
  };
55
- type CachedRedirectValue = {
62
+ export type CachedRedirectValue = {
56
63
  kind: "REDIRECT";
57
64
  props: object;
58
65
  };
59
- type CachedImageValue = {
66
+ export type CachedImageValue = {
60
67
  kind: "IMAGE";
61
68
  etag: string;
62
69
  buffer: ArrayBuffer;
63
70
  extension: string;
64
71
  revalidate?: number;
65
72
  };
66
- type CacheHandlerContext = {
73
+ export type CacheHandlerContext = {
67
74
  dev?: boolean;
68
75
  maxMemoryCacheSize?: number;
69
76
  revalidatedTags?: string[];
70
77
  [key: string]: unknown;
71
78
  };
72
- type CacheHandler = {
79
+ export type CacheHandler = {
73
80
  get(key: string, ctx?: Record<string, unknown>): Promise<CacheHandlerValue | null>;
74
81
  set(key: string, data: IncrementalCacheValue | null, ctx?: Record<string, unknown>): Promise<void>;
75
82
  revalidateTag(tags: string | string[], durations?: {
@@ -77,7 +84,7 @@ type CacheHandler = {
77
84
  }): Promise<void>;
78
85
  resetRequestCache?(): void;
79
86
  };
80
- declare class NoOpCacheHandler implements CacheHandler {
87
+ export declare class NoOpCacheHandler implements CacheHandler {
81
88
  get(_key: string, _ctx?: Record<string, unknown>): Promise<CacheHandlerValue | null>;
82
89
  set(_key: string, _data: IncrementalCacheValue | null, _ctx?: Record<string, unknown>): Promise<void>;
83
90
  revalidateTag(_tags: string | string[], _durations?: {
@@ -87,7 +94,7 @@ declare class NoOpCacheHandler implements CacheHandler {
87
94
  type MemoryCacheHandlerOptions = Pick<CacheHandlerContext, "maxMemoryCacheSize"> & {
88
95
  cacheMaxMemorySize?: number;
89
96
  };
90
- declare class MemoryCacheHandler implements CacheHandler {
97
+ export declare class MemoryCacheHandler implements CacheHandler {
91
98
  private store;
92
99
  private tagRevalidatedAt;
93
100
  private readonly maxMemoryCacheSize;
@@ -102,10 +109,16 @@ declare class MemoryCacheHandler implements CacheHandler {
102
109
  revalidateTag(tags: string | string[]): Promise<void>;
103
110
  resetRequestCache(): void;
104
111
  }
105
- declare function configureMemoryCacheHandler(options?: MemoryCacheHandlerOptions): void;
106
- declare function setDataCacheHandler(handler: CacheHandler): void;
107
- declare function getDataCacheHandler(): CacheHandler;
108
- declare function setCacheHandler(handler: CacheHandler): void;
109
- declare function getCacheHandler(): CacheHandler;
110
- //#endregion
111
- export { CacheControlMetadata, CacheHandler, CacheHandlerContext, CacheHandlerValue, CachedAppPageValue, CachedFetchValue, CachedImageValue, CachedPagesValue, CachedRedirectValue, CachedRouteValue, IncrementalCacheValue, MemoryCacheHandler, NoOpCacheHandler, configureMemoryCacheHandler, getCacheHandler, getDataCacheHandler, setCacheHandler, setDataCacheHandler };
112
+ export declare function configureMemoryCacheHandler(options?: MemoryCacheHandlerOptions): void;
113
+ export declare function setDataCacheHandler(handler: CacheHandler): void;
114
+ /**
115
+ * Lazily keep the first declaratively configured handler shared across
116
+ * duplicated stage modules. Imperative setters remain able to replace it.
117
+ */
118
+ export declare function registerDataCacheHandler(factory: () => CacheHandler): void;
119
+ /** Register a lightweight proxy that imports the configured handler on first use. */
120
+ export declare function registerLazyDataCacheHandler(load: () => Promise<void>): void;
121
+ export declare function getDataCacheHandler(): CacheHandler;
122
+ export declare function setCacheHandler(handler: CacheHandler): void;
123
+ export declare function getCacheHandler(): CacheHandler;
124
+ //#endregion