vinext 1.0.0-beta.8 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (813) hide show
  1. package/README.md +158 -84
  2. package/THIRD_PARTY_LICENSES.md +25 -0
  3. package/dist/_virtual/_rolldown/runtime.js +25 -0
  4. package/dist/build/action-owner-manifest.d.ts +8 -9
  5. package/dist/build/action-owner-manifest.js +23 -5
  6. package/dist/build/assets-ignore.d.ts +3 -4
  7. package/dist/build/clean-output.d.ts +2 -3
  8. package/dist/build/client-build-config.d.ts +40 -12
  9. package/dist/build/client-build-config.js +76 -6
  10. package/dist/build/css-url-assets.d.ts +4 -5
  11. package/dist/build/css-url-assets.js +5 -2
  12. package/dist/build/google-fonts/build-url.d.ts +3 -4
  13. package/dist/build/google-fonts/fallback-metrics.d.ts +3 -4
  14. package/dist/build/google-fonts/find-font-files-in-css.d.ts +2 -3
  15. package/dist/build/google-fonts/font-metadata.d.ts +2 -3
  16. package/dist/build/google-fonts/get-axes.d.ts +2 -3
  17. package/dist/build/google-fonts/sort-variants.d.ts +2 -3
  18. package/dist/build/google-fonts/validate.d.ts +2 -3
  19. package/dist/build/google-fonts/validate.js +8 -4
  20. package/dist/build/inject-pregenerated-paths.d.ts +2 -3
  21. package/dist/build/inject-pregenerated-paths.js +16 -14
  22. package/dist/build/inline-css.d.ts +3 -4
  23. package/dist/build/layout-classification-types.d.ts +4 -5
  24. package/dist/build/layout-classification.d.ts +7 -8
  25. package/dist/build/lifecycle.d.ts +42 -0
  26. package/dist/build/lifecycle.js +253 -0
  27. package/dist/build/module-dependency-cache.d.ts +2 -3
  28. package/dist/build/next-client-runtime-manifests.d.ts +4 -5
  29. package/dist/build/nitro-route-rules.d.ts +6 -7
  30. package/dist/build/nitro-route-rules.js +1 -1
  31. package/dist/build/pages-client-assets-module.d.ts +4 -8
  32. package/dist/build/pages-client-assets-module.js +1 -13
  33. package/dist/build/precompress.d.ts +2 -3
  34. package/dist/build/prerender-cloudflare-loader.d.ts +4 -0
  35. package/dist/build/prerender-cloudflare-loader.js +49 -0
  36. package/dist/build/prerender-paths.d.ts +82 -8
  37. package/dist/build/prerender-paths.js +814 -99
  38. package/dist/build/prerender-phase.d.ts +2 -3
  39. package/dist/build/prerender-server-entry.js +11 -3
  40. package/dist/build/prerender-server-pool.d.ts +9 -6
  41. package/dist/build/prerender-server-pool.js +8 -5
  42. package/dist/build/prerender.d.ts +67 -15
  43. package/dist/build/prerender.js +177 -64
  44. package/dist/build/preview-credentials.d.ts +5 -6
  45. package/dist/build/preview-credentials.js +2 -2
  46. package/dist/build/public-dir-conflict.d.ts +5 -6
  47. package/dist/build/public-dir-conflict.js +2 -1
  48. package/dist/build/report.d.ts +38 -19
  49. package/dist/build/report.js +73 -4
  50. package/dist/build/route-classification-injector.d.ts +2 -3
  51. package/dist/build/route-classification-manifest.d.ts +5 -6
  52. package/dist/build/run-prerender.d.ts +11 -9
  53. package/dist/build/run-prerender.js +25 -16
  54. package/dist/build/server-entry.d.ts +4 -0
  55. package/dist/build/server-entry.js +28 -0
  56. package/dist/build/server-manifest.d.ts +8 -3
  57. package/dist/build/server-manifest.js +14 -2
  58. package/dist/build/ssr-manifest.d.ts +5 -6
  59. package/dist/build/standalone.d.ts +2 -3
  60. package/dist/build/standalone.js +2 -2
  61. package/dist/build/static-export.d.ts +7 -8
  62. package/dist/cache/cache-adapters-virtual.d.ts +95 -9
  63. package/dist/cache/cache-adapters-virtual.js +58 -6
  64. package/dist/check.d.ts +11 -10
  65. package/dist/check.js +467 -176
  66. package/dist/cli-args.d.ts +7 -16
  67. package/dist/cli-args.js +2 -45
  68. package/dist/cli-dev-config.d.ts +10 -7
  69. package/dist/cli-dev-config.js +160 -3
  70. package/dist/cli.js +124 -435
  71. package/dist/client/app-nav-failure-handler.d.ts +6 -7
  72. package/dist/client/client-rewrite-matcher.d.ts +2 -3
  73. package/dist/client/client-rewrites.d.ts +4 -5
  74. package/dist/client/dev-error-overlay-store.d.ts +13 -14
  75. package/dist/client/dev-error-overlay.d.ts +15 -15
  76. package/dist/client/dev-error-overlay.js +8 -5
  77. package/dist/client/instrumentation-client-inject.d.ts +3 -4
  78. package/dist/client/instrumentation-client-state.d.ts +5 -6
  79. package/dist/client/instrumentation-client.d.ts +3 -4
  80. package/dist/client/navigation-runtime.d.ts +21 -17
  81. package/dist/client/navigation-runtime.js +2 -1
  82. package/dist/client/pages-router-link-navigation.d.ts +4 -5
  83. package/dist/client/react-instance.d.ts +2 -3
  84. package/dist/client/validate-module-path.d.ts +2 -3
  85. package/dist/client/vinext-next-data.d.ts +7 -8
  86. package/dist/client/window-next.d.ts +4 -5
  87. package/dist/config/config-matchers.d.ts +16 -16
  88. package/dist/config/config-matchers.js +10 -7
  89. package/dist/config/dotenv.d.ts +3 -4
  90. package/dist/config/dotenv.js +2 -1
  91. package/dist/config/next-config.d.ts +31 -27
  92. package/dist/config/next-config.js +163 -16
  93. package/dist/config/prerender.d.ts +20 -16
  94. package/dist/config/prerender.js +10 -4
  95. package/dist/config/request-context.d.ts +5 -6
  96. package/dist/config/server-external-packages.d.ts +14 -3
  97. package/dist/config/server-external-packages.js +37 -3
  98. package/dist/config/tsconfig-paths.d.ts +3 -4
  99. package/dist/deps/.pnpm/ignore@5.3.2/deps/ignore/index.js +189 -0
  100. package/dist/deps/.pnpm/ua-parser-js@1.0.35/deps/ua-parser-js/src/ua-parser.js +1057 -0
  101. package/dist/entries/app-browser-entry.d.ts +5 -6
  102. package/dist/entries/app-browser-entry.js +3 -2
  103. package/dist/entries/app-rsc-entry.d.ts +12 -3
  104. package/dist/entries/app-rsc-entry.js +530 -55
  105. package/dist/entries/app-rsc-manifest.d.ts +4 -3
  106. package/dist/entries/app-rsc-manifest.js +27 -8
  107. package/dist/entries/app-ssr-entry.d.ts +2 -3
  108. package/dist/entries/app-ssr-entry.js +8 -1
  109. package/dist/entries/pages-client-entry.d.ts +3 -3
  110. package/dist/entries/pages-client-entry.js +17 -2
  111. package/dist/entries/pages-server-entry.d.ts +13 -3
  112. package/dist/entries/pages-server-entry.js +237 -33
  113. package/dist/entries/runtime-entry-module.d.ts +4 -5
  114. package/dist/image/image-adapters-virtual.d.ts +4 -5
  115. package/dist/index.d.ts +10 -11
  116. package/dist/index.js +832 -199
  117. package/dist/init-cloudflare.d.ts +27 -16
  118. package/dist/init-cloudflare.js +754 -113
  119. package/dist/init-platform.d.ts +26 -22
  120. package/dist/init-platform.js +85 -29
  121. package/dist/init.d.ts +19 -13
  122. package/dist/init.js +123 -41
  123. package/dist/plugins/action-owner-manifest.d.ts +3 -4
  124. package/dist/plugins/action-owner-manifest.js +10 -3
  125. package/dist/plugins/ast-scope.d.ts +10 -11
  126. package/dist/plugins/ast-scope.js +10 -22
  127. package/dist/plugins/ast-utils.d.ts +16 -29
  128. package/dist/plugins/ast-utils.js +27 -71
  129. package/dist/plugins/async-hooks-stub.d.ts +2 -3
  130. package/dist/plugins/client-reference-dedup.d.ts +4 -5
  131. package/dist/plugins/css-data-url.d.ts +2 -3
  132. package/dist/plugins/css-module-imports.d.ts +3 -4
  133. package/dist/plugins/css-module-imports.js +1 -1
  134. package/dist/plugins/dynamic-preload-metadata.d.ts +3 -4
  135. package/dist/plugins/dynamic-preload-metadata.js +55 -154
  136. package/dist/plugins/environment.d.ts +2 -3
  137. package/dist/plugins/extensionless-dynamic-import.d.ts +2 -3
  138. package/dist/plugins/extensionless-dynamic-import.js +6 -10
  139. package/dist/plugins/fonts.d.ts +10 -11
  140. package/dist/plugins/fonts.js +4 -3
  141. package/dist/plugins/ignore-dynamic-requests.d.ts +3 -4
  142. package/dist/plugins/ignore-dynamic-requests.js +60 -89
  143. package/dist/plugins/import-meta-url.d.ts +6 -7
  144. package/dist/plugins/import-meta-url.js +31 -43
  145. package/dist/plugins/instrumentation-client.d.ts +3 -3
  146. package/dist/plugins/instrumentation-client.js +46 -10
  147. package/dist/plugins/middleware-export-validation.d.ts +3 -4
  148. package/dist/plugins/middleware-export-validation.js +3 -3
  149. package/dist/plugins/middleware-server-only.d.ts +2 -3
  150. package/dist/plugins/og-asset-ownership.d.ts +3 -4
  151. package/dist/plugins/og-assets.d.ts +4 -5
  152. package/dist/plugins/og-assets.js +32 -13
  153. package/dist/plugins/og-harfbuzz.d.ts +24 -0
  154. package/dist/plugins/og-harfbuzz.js +260 -0
  155. package/dist/plugins/optimize-imports.d.ts +7 -7
  156. package/dist/plugins/optimize-imports.js +32 -44
  157. package/dist/plugins/pages-node-externals.d.ts +2 -3
  158. package/dist/plugins/pages-node-externals.js +6 -11
  159. package/dist/plugins/postcss.d.ts +8 -4
  160. package/dist/plugins/postcss.js +1 -1
  161. package/dist/plugins/remove-console.d.ts +2 -3
  162. package/dist/plugins/remove-console.js +0 -1
  163. package/dist/plugins/require-condition-resolution.d.ts +3 -4
  164. package/dist/plugins/require-condition-resolution.js +17 -18
  165. package/dist/plugins/require-context.d.ts +2 -3
  166. package/dist/plugins/require-context.js +13 -21
  167. package/dist/plugins/rsc-client-reference-loaders.d.ts +2 -3
  168. package/dist/plugins/rsc-client-shim-excludes.d.ts +4 -5
  169. package/dist/plugins/rsc-client-shim-excludes.js +1 -0
  170. package/dist/plugins/rsc-reference-validation-normalizer.d.ts +2 -3
  171. package/dist/plugins/sass.d.ts +7 -8
  172. package/dist/plugins/sass.js +7 -4
  173. package/dist/plugins/server-externals-manifest.d.ts +2 -3
  174. package/dist/plugins/strip-server-exports.d.ts +5 -6
  175. package/dist/plugins/strip-server-exports.js +1 -1
  176. package/dist/plugins/styled-jsx.d.ts +2 -3
  177. package/dist/plugins/styled-jsx.js +7 -7
  178. package/dist/plugins/transform-cache.d.ts +2 -3
  179. package/dist/plugins/transform-result.d.ts +3 -4
  180. package/dist/plugins/transitive-externals.d.ts +2 -3
  181. package/dist/plugins/typeof-window.d.ts +6 -7
  182. package/dist/plugins/typeof-window.js +30 -31
  183. package/dist/plugins/use-cache-callable.d.ts +2 -5
  184. package/dist/plugins/use-cache-callable.js +43 -22
  185. package/dist/plugins/wasm-module-import.d.ts +2 -3
  186. package/dist/plugins/worker-image-imports.d.ts +2 -3
  187. package/dist/plugins/worker-image-imports.js +6 -8
  188. package/dist/routing/app-route-graph.d.ts +19 -19
  189. package/dist/routing/app-route-graph.js +3 -2
  190. package/dist/routing/app-router.d.ts +20 -5
  191. package/dist/routing/app-router.js +28 -2
  192. package/dist/routing/file-matcher.d.ts +9 -10
  193. package/dist/routing/pages-router.d.ts +6 -6
  194. package/dist/routing/pages-router.js +1 -1
  195. package/dist/routing/route-matching.d.ts +4 -5
  196. package/dist/routing/route-matching.js +4 -2
  197. package/dist/routing/route-pattern.d.ts +13 -14
  198. package/dist/routing/route-trie.d.ts +5 -6
  199. package/dist/routing/route-validation.d.ts +3 -4
  200. package/dist/routing/route-validation.js +12 -11
  201. package/dist/routing/utils.d.ts +13 -14
  202. package/dist/server/accept-encoding.d.ts +9 -10
  203. package/dist/server/api-handler.d.ts +2 -3
  204. package/dist/server/api-handler.js +9 -6
  205. package/dist/server/app-action-forwarding.d.ts +3 -4
  206. package/dist/server/app-action-forwarding.js +1 -1
  207. package/dist/server/app-action-request.d.ts +2 -3
  208. package/dist/server/app-bfcache-id.d.ts +3 -4
  209. package/dist/server/app-bfcache-identity.d.ts +8 -9
  210. package/dist/server/app-browser-action-result.d.ts +15 -16
  211. package/dist/server/app-browser-client-reuse-manifest.d.ts +2 -3
  212. package/dist/server/app-browser-entry.js +121 -40
  213. package/dist/server/app-browser-error.d.ts +5 -6
  214. package/dist/server/app-browser-error.js +9 -3
  215. package/dist/server/app-browser-history-controller.d.ts +4 -5
  216. package/dist/server/app-browser-hydration.d.ts +16 -6
  217. package/dist/server/app-browser-hydration.js +14 -1
  218. package/dist/server/app-browser-interception-context.d.ts +3 -4
  219. package/dist/server/app-browser-mpa-navigation.d.ts +4 -5
  220. package/dist/server/app-browser-navigation-abort.d.ts +3 -4
  221. package/dist/server/app-browser-navigation-controller.d.ts +8 -8
  222. package/dist/server/app-browser-navigation-controller.js +9 -5
  223. package/dist/server/app-browser-navigation-response.d.ts +2 -3
  224. package/dist/server/app-browser-popstate.d.ts +4 -5
  225. package/dist/server/app-browser-prefetch-response.d.ts +5 -6
  226. package/dist/server/app-browser-rsc-redirect.d.ts +4 -5
  227. package/dist/server/app-browser-server-action-client.d.ts +7 -6
  228. package/dist/server/app-browser-server-action-client.js +9 -5
  229. package/dist/server/app-browser-server-action-navigation.d.ts +2 -3
  230. package/dist/server/app-browser-state.d.ts +17 -17
  231. package/dist/server/app-browser-state.js +7 -3
  232. package/dist/server/app-browser-stream.d.ts +4 -5
  233. package/dist/server/app-browser-stream.js +8 -6
  234. package/dist/server/app-browser-supplemental-refresh.d.ts +11 -12
  235. package/dist/server/app-browser-visible-commit.d.ts +6 -7
  236. package/dist/server/app-browser-visible-commit.js +1 -1
  237. package/dist/server/app-client-reference-preloader.d.ts +2 -3
  238. package/dist/server/app-elements-wire-key.d.ts +25 -0
  239. package/dist/server/app-elements-wire-key.js +69 -0
  240. package/dist/server/app-elements-wire.d.ts +34 -53
  241. package/dist/server/app-elements-wire.js +4 -75
  242. package/dist/server/app-elements.d.ts +5 -5
  243. package/dist/server/app-elements.js +1 -1
  244. package/dist/server/app-fallback-renderer.d.ts +4 -4
  245. package/dist/server/app-fallback-renderer.js +6 -6
  246. package/dist/server/app-fetch-tracing.d.ts +15 -0
  247. package/dist/server/app-fetch-tracing.js +38 -0
  248. package/dist/server/app-history-state.d.ts +26 -27
  249. package/dist/server/app-history-state.js +19 -11
  250. package/dist/server/app-hook-warning-suppression.d.ts +2 -3
  251. package/dist/server/app-hydration-cache-publication.d.ts +3 -4
  252. package/dist/server/app-inline-css-client.d.ts +3 -4
  253. package/dist/server/app-interception-context-header.d.ts +2 -3
  254. package/dist/server/app-layout-param-observation.d.ts +7 -8
  255. package/dist/server/app-metadata-tracing.d.ts +12 -0
  256. package/dist/server/app-metadata-tracing.js +17 -0
  257. package/dist/server/app-middleware.d.ts +15 -7
  258. package/dist/server/app-middleware.js +30 -5
  259. package/dist/server/app-mounted-slots-header.d.ts +2 -3
  260. package/dist/server/app-mounted-slots-header.js +2 -2
  261. package/dist/server/app-optimistic-routing.d.ts +14 -10
  262. package/dist/server/app-optimistic-routing.js +16 -3
  263. package/dist/server/app-page-boundary-render.d.ts +6 -6
  264. package/dist/server/app-page-boundary-render.js +10 -4
  265. package/dist/server/app-page-boundary.d.ts +9 -10
  266. package/dist/server/app-page-boundary.js +2 -1
  267. package/dist/server/app-page-cache-finalizer.d.ts +32 -8
  268. package/dist/server/app-page-cache-finalizer.js +118 -14
  269. package/dist/server/app-page-cache-render.d.ts +8 -5
  270. package/dist/server/app-page-cache-render.js +22 -5
  271. package/dist/server/app-page-cache.d.ts +28 -9
  272. package/dist/server/app-page-cache.js +96 -25
  273. package/dist/server/app-page-dispatch.d.ts +36 -12
  274. package/dist/server/app-page-dispatch.js +188 -63
  275. package/dist/server/app-page-element-builder.d.ts +13 -11
  276. package/dist/server/app-page-element-builder.js +104 -61
  277. package/dist/server/app-page-execution.d.ts +14 -14
  278. package/dist/server/app-page-execution.js +12 -8
  279. package/dist/server/app-page-head.d.ts +19 -16
  280. package/dist/server/app-page-head.js +25 -25
  281. package/dist/server/app-page-http-access-fallback-metadata.d.ts +6 -5
  282. package/dist/server/app-page-http-access-fallback-metadata.js +9 -2
  283. package/dist/server/app-page-method.d.ts +5 -11
  284. package/dist/server/app-page-method.js +2 -9
  285. package/dist/server/app-page-params.d.ts +5 -6
  286. package/dist/server/app-page-ppr-runtime.d.ts +2 -2
  287. package/dist/server/app-page-probe.d.ts +5 -6
  288. package/dist/server/app-page-probe.js +5 -4
  289. package/dist/server/app-page-render-identity.d.ts +4 -5
  290. package/dist/server/app-page-render-observation.d.ts +8 -9
  291. package/dist/server/app-page-render-observation.js +1 -1
  292. package/dist/server/app-page-render.d.ts +42 -6
  293. package/dist/server/app-page-render.js +192 -28
  294. package/dist/server/app-page-request.d.ts +10 -9
  295. package/dist/server/app-page-request.js +16 -12
  296. package/dist/server/app-page-response.d.ts +20 -9
  297. package/dist/server/app-page-response.js +31 -13
  298. package/dist/server/app-page-route-wiring.d.ts +15 -15
  299. package/dist/server/app-page-route-wiring.js +31 -24
  300. package/dist/server/app-page-search-params-observation.d.ts +26 -5
  301. package/dist/server/app-page-search-params-observation.js +42 -6
  302. package/dist/server/app-page-segment-plan.d.ts +2 -3
  303. package/dist/server/app-page-segment-state.d.ts +11 -12
  304. package/dist/server/app-page-stream.d.ts +27 -11
  305. package/dist/server/app-page-stream.js +35 -6
  306. package/dist/server/app-page-tracing.d.ts +33 -0
  307. package/dist/server/app-page-tracing.js +49 -0
  308. package/dist/server/app-pages-bridge.d.ts +6 -6
  309. package/dist/server/app-pages-bridge.js +19 -4
  310. package/dist/server/app-post-middleware-context.d.ts +2 -3
  311. package/dist/server/app-ppr-fallback-shell-render.d.ts +3 -4
  312. package/dist/server/app-ppr-fallback-shell-render.js +3 -2
  313. package/dist/server/app-ppr-fallback-shell.d.ts +6 -7
  314. package/dist/server/app-prerender-endpoints.d.ts +5 -5
  315. package/dist/server/app-prerender-endpoints.js +26 -12
  316. package/dist/server/app-prerender-static-params.d.ts +15 -7
  317. package/dist/server/app-prerender-static-params.js +33 -11
  318. package/dist/server/app-render-dependency.d.ts +14 -13
  319. package/dist/server/app-render-dependency.js +5 -1
  320. package/dist/server/app-request-context.d.ts +3 -4
  321. package/dist/server/app-request-stage-context.d.ts +5 -0
  322. package/dist/server/app-request-stage-context.js +11 -0
  323. package/dist/server/app-request-stage-dispatch.d.ts +25 -0
  324. package/dist/server/app-request-stage-dispatch.js +54 -0
  325. package/dist/server/app-request-stage-independent-entry.d.ts +8 -0
  326. package/dist/server/app-request-stage-independent-entry.js +115 -0
  327. package/dist/server/app-response-header-provenance.d.ts +13 -7
  328. package/dist/server/app-response-header-provenance.js +34 -1
  329. package/dist/server/app-response-stage-entry.d.ts +9 -0
  330. package/dist/server/app-response-stage-entry.js +87 -0
  331. package/dist/server/app-route-handler-cache.d.ts +2 -3
  332. package/dist/server/app-route-handler-cache.js +46 -34
  333. package/dist/server/app-route-handler-dispatch.d.ts +3 -3
  334. package/dist/server/app-route-handler-dispatch.js +75 -57
  335. package/dist/server/app-route-handler-execution.d.ts +18 -13
  336. package/dist/server/app-route-handler-execution.js +189 -25
  337. package/dist/server/app-route-handler-middleware-context.d.ts +8 -0
  338. package/dist/server/app-route-handler-middleware-context.js +15 -0
  339. package/dist/server/app-route-handler-policy.d.ts +22 -10
  340. package/dist/server/app-route-handler-policy.js +19 -4
  341. package/dist/server/app-route-handler-response.d.ts +9 -10
  342. package/dist/server/app-route-handler-response.js +2 -0
  343. package/dist/server/app-route-handler-runtime.d.ts +9 -10
  344. package/dist/server/app-route-handler-runtime.js +20 -16
  345. package/dist/server/app-route-module-loader.d.ts +6 -7
  346. package/dist/server/app-route-request-built-ins.d.ts +3 -4
  347. package/dist/server/app-route-tree-prefetch.d.ts +6 -7
  348. package/dist/server/app-route-tree-prefetch.js +2 -1
  349. package/dist/server/app-router-entry.d.ts +2 -0
  350. package/dist/server/app-router-entry.js +76 -12
  351. package/dist/server/app-rsc-cache-busting.d.ts +47 -22
  352. package/dist/server/app-rsc-cache-busting.js +80 -18
  353. package/dist/server/app-rsc-combined-handler.d.ts +9 -0
  354. package/dist/server/app-rsc-combined-handler.js +11 -0
  355. package/dist/server/app-rsc-embedded-chunks.d.ts +6 -7
  356. package/dist/server/app-rsc-error-handler.d.ts +12 -6
  357. package/dist/server/app-rsc-error-handler.js +15 -6
  358. package/dist/server/app-rsc-errors.d.ts +12 -9
  359. package/dist/server/app-rsc-errors.js +15 -13
  360. package/dist/server/app-rsc-handler.d.ts +33 -6
  361. package/dist/server/app-rsc-handler.js +498 -83
  362. package/dist/server/app-rsc-redirect-flight.d.ts +4 -5
  363. package/dist/server/app-rsc-render-mode.d.ts +8 -9
  364. package/dist/server/app-rsc-request-normalization.d.ts +3 -3
  365. package/dist/server/app-rsc-request-normalization.js +2 -1
  366. package/dist/server/app-rsc-response-finalizer.d.ts +8 -5
  367. package/dist/server/app-rsc-response-finalizer.js +24 -7
  368. package/dist/server/app-rsc-response-stage.d.ts +6 -0
  369. package/dist/server/app-rsc-response-stage.js +251 -0
  370. package/dist/server/app-rsc-route-matching.d.ts +4 -4
  371. package/dist/server/app-rsc-route-matching.js +4 -2
  372. package/dist/server/app-rsc-state-fingerprint.d.ts +3 -4
  373. package/dist/server/app-rsc-vary.d.ts +16 -0
  374. package/dist/server/app-rsc-vary.js +31 -0
  375. package/dist/server/app-segment-config.d.ts +120 -6
  376. package/dist/server/app-segment-config.js +264 -12
  377. package/dist/server/app-server-action-execution.d.ts +16 -12
  378. package/dist/server/app-server-action-execution.js +88 -35
  379. package/dist/server/app-ssr-entry.d.ts +14 -4
  380. package/dist/server/app-ssr-entry.js +64 -17
  381. package/dist/server/app-ssr-error-meta.d.ts +3 -4
  382. package/dist/server/app-ssr-error-meta.js +2 -1
  383. package/dist/server/app-ssr-router-instance.d.ts +2 -3
  384. package/dist/server/app-ssr-search-params-gate.d.ts +20 -0
  385. package/dist/server/app-ssr-search-params-gate.js +54 -0
  386. package/dist/server/app-ssr-stream.d.ts +13 -9
  387. package/dist/server/app-ssr-stream.js +33 -7
  388. package/dist/server/app-static-generation.d.ts +4 -5
  389. package/dist/server/app-visited-response-cache.d.ts +11 -12
  390. package/dist/server/app-visited-response-cache.js +2 -2
  391. package/dist/server/app-worker-stages.d.ts +112 -0
  392. package/dist/server/app-worker-stages.js +105 -0
  393. package/dist/server/artifact-compatibility.d.ts +11 -12
  394. package/dist/server/before-interactive-head.d.ts +2 -3
  395. package/dist/server/bfcache-identity.d.ts +7 -8
  396. package/dist/server/cache-control.d.ts +39 -11
  397. package/dist/server/cache-control.js +104 -7
  398. package/dist/server/cache-headers.d.ts +3 -4
  399. package/dist/server/cache-proof.d.ts +75 -70
  400. package/dist/server/cache-proof.js +9 -1
  401. package/dist/server/cacheability-limits.d.ts +8 -0
  402. package/dist/server/cacheability-limits.js +9 -0
  403. package/dist/server/cacheability-manifest.d.ts +68 -0
  404. package/dist/server/cacheability-manifest.js +241 -0
  405. package/dist/server/cacheability-request.d.ts +49 -0
  406. package/dist/server/cacheability-request.js +559 -0
  407. package/dist/server/client-reuse-manifest.d.ts +17 -18
  408. package/dist/server/client-reuse-manifest.js +2 -2
  409. package/dist/server/client-trace-metadata.d.ts +9 -6
  410. package/dist/server/client-trace-metadata.js +27 -15
  411. package/dist/server/cloudflare-workers-tracing.d.ts +1 -0
  412. package/dist/server/cloudflare-workers-tracing.js +8 -0
  413. package/dist/server/config-headers.d.ts +19 -5
  414. package/dist/server/config-headers.js +39 -5
  415. package/dist/server/cookie-utils.d.ts +2 -3
  416. package/dist/server/csp.d.ts +5 -6
  417. package/dist/server/default-global-error-module.d.ts +2 -3
  418. package/dist/server/default-global-not-found-module.d.ts +2 -3
  419. package/dist/server/default-not-found-module.d.ts +2 -3
  420. package/dist/server/defer-until-stream-consumed.d.ts +2 -3
  421. package/dist/server/defer-until-stream-consumed.js +2 -1
  422. package/dist/server/dev-initial-server-error.d.ts +3 -4
  423. package/dist/server/dev-initial-server-error.js +2 -1
  424. package/dist/server/dev-lockfile.d.ts +7 -8
  425. package/dist/server/dev-lockfile.js +4 -1
  426. package/dist/server/dev-module-runner.d.ts +2 -3
  427. package/dist/server/dev-origin-check.d.ts +5 -6
  428. package/dist/server/dev-route-files.d.ts +2 -3
  429. package/dist/server/dev-server.d.ts +4 -5
  430. package/dist/server/dev-server.js +130 -61
  431. package/dist/server/dev-stack-sourcemap.d.ts +7 -7
  432. package/dist/server/dev-stack-sourcemap.js +1 -1
  433. package/dist/server/document-initial-head.d.ts +3 -4
  434. package/dist/server/edge-api-runtime.d.ts +4 -5
  435. package/dist/server/fetch-handler.d.ts +3 -2
  436. package/dist/server/fetch-handler.js +3 -18
  437. package/dist/server/file-based-metadata.d.ts +2 -3
  438. package/dist/server/framework-tracer.d.ts +46 -0
  439. package/dist/server/framework-tracer.js +125 -0
  440. package/dist/server/fully-buffered-response.d.ts +11 -0
  441. package/dist/server/fully-buffered-response.js +19 -0
  442. package/dist/server/headers.d.ts +62 -56
  443. package/dist/server/headers.js +33 -20
  444. package/dist/server/html.d.ts +6 -27
  445. package/dist/server/html.js +16 -1
  446. package/dist/server/http-conditional.d.ts +5 -6
  447. package/dist/server/http-date.d.ts +2 -3
  448. package/dist/server/http-error-responses.d.ts +9 -10
  449. package/dist/server/http-range.d.ts +4 -5
  450. package/dist/server/hybrid-route-priority.d.ts +4 -5
  451. package/dist/server/image-optimization.d.ts +20 -21
  452. package/dist/server/implicit-tags.d.ts +3 -4
  453. package/dist/server/instrumentation-runtime.d.ts +17 -21
  454. package/dist/server/instrumentation-runtime.js +26 -8
  455. package/dist/server/instrumentation.d.ts +26 -30
  456. package/dist/server/instrumentation.js +18 -23
  457. package/dist/server/isr-cache.d.ts +28 -27
  458. package/dist/server/isr-cache.js +18 -70
  459. package/dist/server/isr-decision.d.ts +4 -4
  460. package/dist/server/metadata-route-build-data.d.ts +4 -5
  461. package/dist/server/metadata-route-cache-policy.d.ts +2 -3
  462. package/dist/server/metadata-route-response.d.ts +7 -7
  463. package/dist/server/metadata-route-response.js +68 -2
  464. package/dist/server/metadata-routes.d.ts +18 -19
  465. package/dist/server/middleware-matcher-pattern.d.ts +6 -7
  466. package/dist/server/middleware-matcher.d.ts +13 -6
  467. package/dist/server/middleware-matcher.js +22 -1
  468. package/dist/server/middleware-path-to-regexp.d.ts +6 -7
  469. package/dist/server/middleware-path-to-regexp.js +11 -9
  470. package/dist/server/middleware-response-headers.d.ts +3 -4
  471. package/dist/server/middleware-runtime.d.ts +13 -8
  472. package/dist/server/middleware-runtime.js +54 -10
  473. package/dist/server/middleware.d.ts +5 -5
  474. package/dist/server/multi-stage.d.ts +141 -0
  475. package/dist/server/multi-stage.js +8 -0
  476. package/dist/server/navigation-planner.d.ts +26 -26
  477. package/dist/server/navigation-trace.d.ts +11 -12
  478. package/dist/server/next-error-digest.d.ts +4 -5
  479. package/dist/server/normalize-path.d.ts +5 -6
  480. package/dist/server/normalize-path.js +1 -1
  481. package/dist/server/open-redirect.d.ts +2 -3
  482. package/dist/server/opentelemetry-api.d.ts +59 -0
  483. package/dist/server/opentelemetry-api.js +53 -0
  484. package/dist/server/opentelemetry-tracing.d.ts +5 -0
  485. package/dist/server/opentelemetry-tracing.js +83 -0
  486. package/dist/server/operation-token.d.ts +11 -12
  487. package/dist/server/otel-tracer-extension.d.ts +7 -9
  488. package/dist/server/otel-tracer-extension.js +37 -36
  489. package/dist/server/pages-api-route.d.ts +5 -4
  490. package/dist/server/pages-api-route.js +21 -8
  491. package/dist/server/pages-asset-tags.d.ts +6 -6
  492. package/dist/server/pages-asset-tags.js +37 -2
  493. package/dist/server/pages-body-parser-config.d.ts +4 -5
  494. package/dist/server/pages-body-parser-config.js +4 -4
  495. package/dist/server/pages-client-assets.d.ts +11 -5
  496. package/dist/server/pages-data-route.d.ts +11 -12
  497. package/dist/server/pages-data-route.js +1 -1
  498. package/dist/server/pages-default-404.d.ts +3 -4
  499. package/dist/server/pages-dev-hydration.d.ts +9 -4
  500. package/dist/server/pages-dev-hydration.js +19 -7
  501. package/dist/server/pages-dev-module-url.d.ts +3 -4
  502. package/dist/server/pages-dev-stylesheets.d.ts +5 -6
  503. package/dist/server/pages-document-asset-props.d.ts +6 -7
  504. package/dist/server/pages-document-initial-props.d.ts +5 -5
  505. package/dist/server/pages-document-initial-props.js +4 -2
  506. package/dist/server/pages-execution-tracing.d.ts +40 -0
  507. package/dist/server/pages-execution-tracing.js +80 -0
  508. package/dist/server/pages-get-initial-props.d.ts +9 -10
  509. package/dist/server/pages-i18n.d.ts +8 -8
  510. package/dist/server/pages-i18n.js +3 -2
  511. package/dist/server/pages-media-type.d.ts +4 -5
  512. package/dist/server/pages-node-compat.d.ts +11 -10
  513. package/dist/server/pages-node-compat.js +12 -4
  514. package/dist/server/pages-page-data.d.ts +18 -19
  515. package/dist/server/pages-page-data.js +11 -10
  516. package/dist/server/pages-page-handler.d.ts +7 -6
  517. package/dist/server/pages-page-handler.js +98 -47
  518. package/dist/server/pages-page-method.d.ts +2 -3
  519. package/dist/server/pages-page-response.d.ts +14 -10
  520. package/dist/server/pages-page-response.js +49 -31
  521. package/dist/server/pages-preview.d.ts +10 -11
  522. package/dist/server/pages-readiness.d.ts +2 -3
  523. package/dist/server/pages-request-pipeline.d.ts +16 -12
  524. package/dist/server/pages-request-pipeline.js +69 -28
  525. package/dist/server/pages-request-stage-entry.d.ts +23 -0
  526. package/dist/server/pages-request-stage-entry.js +314 -0
  527. package/dist/server/pages-response-stage-entry.d.ts +11 -0
  528. package/dist/server/pages-response-stage-entry.js +106 -0
  529. package/dist/server/pages-response-stage.d.ts +31 -0
  530. package/dist/server/pages-response-stage.js +49 -0
  531. package/dist/server/pages-revalidate.d.ts +3 -4
  532. package/dist/server/pages-revalidate.js +9 -4
  533. package/dist/server/pages-route-data-kind.d.ts +18 -0
  534. package/dist/server/pages-route-data-kind.js +11 -0
  535. package/dist/server/pages-router-entry.d.ts +1 -25
  536. package/dist/server/pages-router-entry.js +48 -114
  537. package/dist/server/pages-serializable-props.d.ts +3 -4
  538. package/dist/server/pregenerated-concrete-paths.d.ts +9 -7
  539. package/dist/server/pregenerated-concrete-paths.js +12 -6
  540. package/dist/server/prerender-cache-life-header.d.ts +3 -4
  541. package/dist/server/prerender-manifest.d.ts +11 -11
  542. package/dist/server/prerender-manifest.js +6 -3
  543. package/dist/server/prerender-route-params.d.ts +16 -9
  544. package/dist/server/prerender-route-params.js +18 -2
  545. package/dist/server/prerender-work-unit-setup.d.ts +4 -4
  546. package/dist/server/prerender-work-unit-setup.js +37 -14
  547. package/dist/server/prod-server.d.ts +12 -9
  548. package/dist/server/prod-server.js +129 -36
  549. package/dist/server/proxy-trust.d.ts +5 -6
  550. package/dist/server/request-log.d.ts +3 -4
  551. package/dist/server/request-pipeline.d.ts +17 -21
  552. package/dist/server/request-pipeline.js +8 -10
  553. package/dist/server/request-stage.d.ts +5 -0
  554. package/dist/server/request-stage.js +7 -0
  555. package/dist/server/request-tracing.d.ts +22 -0
  556. package/dist/server/request-tracing.js +180 -0
  557. package/dist/server/response-stage-cacheability.d.ts +37 -0
  558. package/dist/server/response-stage-cacheability.js +55 -0
  559. package/dist/server/response-stage-policy.d.ts +23 -0
  560. package/dist/server/response-stage-policy.js +89 -0
  561. package/dist/server/response-stage.d.ts +5 -0
  562. package/dist/server/response-stage.js +7 -0
  563. package/dist/server/response-start-tracing.d.ts +14 -0
  564. package/dist/server/response-start-tracing.js +80 -0
  565. package/dist/server/revalidation-host.d.ts +2 -3
  566. package/dist/server/revalidation-host.js +2 -1
  567. package/dist/server/revalidation-request.d.ts +8 -0
  568. package/dist/server/revalidation-request.js +37 -0
  569. package/dist/server/rsc-completion-metadata.d.ts +6 -7
  570. package/dist/server/rsc-stream-hints.d.ts +18 -7
  571. package/dist/server/rsc-stream-hints.js +70 -35
  572. package/dist/server/seed-cache.d.ts +2 -3
  573. package/dist/server/seed-cache.js +8 -7
  574. package/dist/server/server-action-not-found.d.ts +5 -6
  575. package/dist/server/server-globals.d.ts +2 -3
  576. package/dist/server/server-globals.js +13 -0
  577. package/dist/server/skip-cache-proof.d.ts +4 -4
  578. package/dist/server/socket-error-backstop.d.ts +5 -6
  579. package/dist/server/socket-error-backstop.js +1 -1
  580. package/dist/server/static-file-cache.d.ts +5 -6
  581. package/dist/server/static-file-cache.js +9 -7
  582. package/dist/server/static-file-signal.d.ts +16 -0
  583. package/dist/server/static-file-signal.js +82 -0
  584. package/dist/server/static-layout-client-reuse-proof.d.ts +4 -5
  585. package/dist/server/streaming-metadata.d.ts +2 -3
  586. package/dist/server/tracer.d.ts +5 -0
  587. package/dist/server/tracer.js +13 -0
  588. package/dist/server/worker-prerender-discovery.d.ts +18 -0
  589. package/dist/server/worker-prerender-discovery.js +55 -0
  590. package/dist/server/worker-revalidation-context.d.ts +2 -3
  591. package/dist/server/worker-revalidation-context.js +5 -5
  592. package/dist/server/worker-stages.d.ts +43 -0
  593. package/dist/server/worker-stages.js +25 -0
  594. package/dist/server/worker-utils.d.ts +5 -6
  595. package/dist/server/worker-utils.js +4 -4
  596. package/dist/server/workers-tracing.d.ts +17 -0
  597. package/dist/server/workers-tracing.js +27 -0
  598. package/dist/shims/amp.d.ts +3 -4
  599. package/dist/shims/app-router-scroll-state.d.ts +9 -10
  600. package/dist/shims/app-router-scroll.d.ts +4 -5
  601. package/dist/shims/app-router-scroll.js +2 -1
  602. package/dist/shims/app.d.ts +5 -6
  603. package/dist/shims/before-interactive-context.d.ts +5 -6
  604. package/dist/shims/cache-callable-runtime.d.ts +44 -4
  605. package/dist/shims/cache-callable-runtime.js +168 -8
  606. package/dist/shims/cache-for-request.d.ts +2 -3
  607. package/dist/shims/cache-handler.d.ts +33 -20
  608. package/dist/shims/cache-handler.js +61 -2
  609. package/dist/shims/cache-request-state.d.ts +28 -29
  610. package/dist/shims/cache-runtime.d.ts +23 -21
  611. package/dist/shims/cache-runtime.js +239 -121
  612. package/dist/shims/cache.d.ts +15 -15
  613. package/dist/shims/cache.js +25 -13
  614. package/dist/shims/cacheability-classification.d.ts +106 -0
  615. package/dist/shims/cacheability-classification.js +161 -0
  616. package/dist/shims/cdn-cache-state.d.ts +13 -0
  617. package/dist/shims/cdn-cache-state.js +23 -0
  618. package/dist/shims/cdn-cache.d.ts +76 -18
  619. package/dist/shims/cdn-cache.js +40 -39
  620. package/dist/shims/client-hook-error.d.ts +3 -4
  621. package/dist/shims/client-locale.d.ts +2 -3
  622. package/dist/shims/client-page-root.d.ts +24 -0
  623. package/dist/shims/client-page-root.js +121 -0
  624. package/dist/shims/compat-router.d.ts +2 -3
  625. package/dist/shims/config.d.ts +3 -4
  626. package/dist/shims/constants.d.ts +73 -74
  627. package/dist/shims/constants.js +1 -1
  628. package/dist/shims/default-not-found.d.ts +2 -3
  629. package/dist/shims/document.d.ts +9 -9
  630. package/dist/shims/dynamic-preload-chunks.d.ts +2 -3
  631. package/dist/shims/dynamic-preload-chunks.js +17 -13
  632. package/dist/shims/dynamic.d.ts +3 -3
  633. package/dist/shims/error-boundary-navigation.d.ts +3 -4
  634. package/dist/shims/error-boundary.d.ts +17 -18
  635. package/dist/shims/error-boundary.js +17 -11
  636. package/dist/shims/error.d.ts +4 -4
  637. package/dist/shims/error.js +1 -1
  638. package/dist/shims/error.react-server.d.ts +3 -4
  639. package/dist/shims/fetch-cache.d.ts +22 -22
  640. package/dist/shims/fetch-cache.js +50 -20
  641. package/dist/shims/font-google-base.d.ts +9 -9
  642. package/dist/shims/font-google-base.js +2 -1
  643. package/dist/shims/font-local.d.ts +3 -3
  644. package/dist/shims/font-local.js +1 -1
  645. package/dist/shims/font-utils.d.ts +14 -15
  646. package/dist/shims/form.d.ts +2 -2
  647. package/dist/shims/form.js +10 -7
  648. package/dist/shims/hash-scroll.d.ts +5 -6
  649. package/dist/shims/head-state.d.ts +4 -5
  650. package/dist/shims/head.d.ts +16 -16
  651. package/dist/shims/head.js +5 -4
  652. package/dist/shims/headers.d.ts +68 -32
  653. package/dist/shims/headers.js +101 -10
  654. package/dist/shims/i18n-context.d.ts +5 -6
  655. package/dist/shims/i18n-state.d.ts +4 -5
  656. package/dist/shims/image-config.d.ts +5 -6
  657. package/dist/shims/image-config.js +2 -0
  658. package/dist/shims/image.d.ts +5 -5
  659. package/dist/shims/image.js +12 -8
  660. package/dist/shims/internal/als-registry.d.ts +4 -5
  661. package/dist/shims/internal/api-utils.d.ts +3 -4
  662. package/dist/shims/internal/app-page-props-cache-key.d.ts +32 -4
  663. package/dist/shims/internal/app-page-props-cache-key.js +53 -1
  664. package/dist/shims/internal/app-prefetch-fetch-queue.d.ts +5 -6
  665. package/dist/shims/internal/app-prefetch-rsc-request.d.ts +13 -0
  666. package/dist/shims/internal/app-prefetch-rsc-request.js +12 -0
  667. package/dist/shims/internal/app-route-detection.d.ts +2 -2
  668. package/dist/shims/internal/app-route-prefetch-policy.d.ts +5 -6
  669. package/dist/shims/internal/app-route-prefetch-policy.js +1 -0
  670. package/dist/shims/internal/app-router-context.d.ts +9 -10
  671. package/dist/shims/internal/cookie-serialize.d.ts +4 -5
  672. package/dist/shims/internal/format-url-object.d.ts +7 -0
  673. package/dist/shims/internal/format-url-object.js +53 -0
  674. package/dist/shims/internal/hybrid-client-route-owner-direct.d.ts +6 -7
  675. package/dist/shims/internal/hybrid-client-route-owner-direct.js +29 -11
  676. package/dist/shims/internal/hybrid-client-route-owner.d.ts +3 -3
  677. package/dist/shims/internal/hybrid-client-route-owner.js +5 -4
  678. package/dist/shims/internal/interpolate-as.d.ts +5 -6
  679. package/dist/shims/internal/interpolate-as.js +4 -2
  680. package/dist/shims/internal/link-status-registry.d.ts +5 -6
  681. package/dist/shims/internal/make-hanging-promise.d.ts +8 -3
  682. package/dist/shims/internal/make-hanging-promise.js +13 -2
  683. package/dist/shims/internal/navigation-untracked.d.ts +2 -3
  684. package/dist/shims/internal/normalize-router-href.d.ts +15 -0
  685. package/dist/shims/internal/normalize-router-href.js +41 -0
  686. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +8 -9
  687. package/dist/shims/internal/pages-data-target.d.ts +8 -6
  688. package/dist/shims/internal/pages-data-target.js +32 -36
  689. package/dist/shims/internal/pages-data-url.d.ts +4 -5
  690. package/dist/shims/internal/pages-data-url.js +2 -1
  691. package/dist/shims/internal/pages-router-accessor.d.ts +3 -4
  692. package/dist/shims/internal/pages-router-components.d.ts +3 -4
  693. package/dist/shims/internal/route-pattern-for-warning.d.ts +5 -6
  694. package/dist/shims/internal/route-pattern-for-warning.js +3 -3
  695. package/dist/shims/internal/router-context.d.ts +2 -3
  696. package/dist/shims/internal/thenable-well-known-properties.d.ts +10 -0
  697. package/dist/shims/internal/thenable-well-known-properties.js +33 -0
  698. package/dist/shims/internal/utils.d.ts +7 -8
  699. package/dist/shims/internal/work-unit-async-storage.d.ts +12 -11
  700. package/dist/shims/layout-segment-context.d.ts +3 -4
  701. package/dist/shims/link-prefetch.d.ts +9 -10
  702. package/dist/shims/link.d.ts +4 -4
  703. package/dist/shims/link.js +67 -116
  704. package/dist/shims/metadata.d.ts +15 -16
  705. package/dist/shims/metadata.js +40 -36
  706. package/dist/shims/navigation-context-accessors.d.ts +9 -0
  707. package/dist/shims/navigation-context-accessors.js +19 -0
  708. package/dist/shims/navigation-context-state.d.ts +27 -18
  709. package/dist/shims/navigation-errors.d.ts +18 -19
  710. package/dist/shims/navigation-state.d.ts +6 -7
  711. package/dist/shims/navigation.d.ts +80 -68
  712. package/dist/shims/navigation.js +45 -17
  713. package/dist/shims/navigation.react-server.d.ts +9 -9
  714. package/dist/shims/navigation.react-server.js +1 -1
  715. package/dist/shims/offline.d.ts +2 -3
  716. package/dist/shims/og.d.ts +2 -2
  717. package/dist/shims/pages-router-runtime.d.ts +4 -5
  718. package/dist/shims/ppr-fallback-shell.d.ts +13 -14
  719. package/dist/shims/readonly-url-search-params.d.ts +2 -3
  720. package/dist/shims/request-context.d.ts +7 -6
  721. package/dist/shims/root-params.d.ts +14 -15
  722. package/dist/shims/router-state.d.ts +5 -6
  723. package/dist/shims/router-state.js +1 -1
  724. package/dist/shims/router.d.ts +22 -21
  725. package/dist/shims/router.js +339 -164
  726. package/dist/shims/script-nonce-context.d.ts +8 -6
  727. package/dist/shims/script-nonce-context.js +15 -6
  728. package/dist/shims/script.d.ts +4 -4
  729. package/dist/shims/script.js +9 -7
  730. package/dist/shims/search-params-gate.d.ts +35 -0
  731. package/dist/shims/search-params-gate.js +32 -0
  732. package/dist/shims/server.d.ts +19 -51
  733. package/dist/shims/server.js +14 -28
  734. package/dist/shims/slot.d.ts +33 -15
  735. package/dist/shims/slot.js +41 -9
  736. package/dist/shims/streamed-icons.d.ts +3 -4
  737. package/dist/shims/thenable-params.d.ts +5 -7
  738. package/dist/shims/thenable-params.js +3 -24
  739. package/dist/shims/unified-request-context.d.ts +34 -31
  740. package/dist/shims/unified-request-context.js +34 -24
  741. package/dist/shims/unrecognized-action-error.d.ts +3 -4
  742. package/dist/shims/url-safety.d.ts +5 -6
  743. package/dist/shims/url-utils.d.ts +18 -12
  744. package/dist/shims/url-utils.js +10 -1
  745. package/dist/shims/use-merged-ref.d.ts +2 -3
  746. package/dist/shims/user-agent.d.ts +31 -0
  747. package/dist/shims/user-agent.js +16 -0
  748. package/dist/shims/web-vitals.d.ts +2 -2
  749. package/dist/typegen.d.ts +3 -4
  750. package/dist/utils/asset-prefix.d.ts +7 -8
  751. package/dist/utils/base-path.d.ts +5 -6
  752. package/dist/utils/built-asset-url.d.ts +2 -3
  753. package/dist/utils/built-asset-url.js +1 -1
  754. package/dist/utils/cache-control-metadata.d.ts +4 -5
  755. package/dist/utils/client-build-manifest.d.ts +6 -7
  756. package/dist/utils/client-build-manifest.js +2 -1
  757. package/dist/utils/client-entry-manifest.d.ts +6 -7
  758. package/dist/utils/client-runtime-metadata.d.ts +8 -3
  759. package/dist/utils/client-runtime-metadata.js +18 -1
  760. package/dist/utils/commonjs-loader.d.ts +4 -5
  761. package/dist/utils/compare.d.ts +2 -3
  762. package/dist/utils/deployment-id.d.ts +6 -7
  763. package/dist/utils/dev-error-recovery-event.d.ts +2 -3
  764. package/dist/utils/dev-stack-sourcemap-endpoint.d.ts +2 -3
  765. package/dist/utils/domain-locale.d.ts +7 -8
  766. package/dist/utils/encode-cache-tag.d.ts +3 -4
  767. package/dist/utils/error-cause.d.ts +2 -3
  768. package/dist/utils/external-url.d.ts +2 -3
  769. package/dist/utils/has-trailing-comma.d.ts +3 -4
  770. package/dist/utils/hash.d.ts +3 -4
  771. package/dist/utils/html-limited-bots.d.ts +3 -4
  772. package/dist/utils/lazy-chunks.d.ts +8 -9
  773. package/dist/utils/lazy-chunks.js +4 -4
  774. package/dist/utils/manifest-paths.d.ts +5 -6
  775. package/dist/utils/mdx-scan.d.ts +11 -4
  776. package/dist/utils/mdx-scan.js +27 -1
  777. package/dist/utils/middleware-request-headers.d.ts +7 -6
  778. package/dist/utils/middleware-request-headers.js +6 -1
  779. package/dist/utils/navigation-signal.d.ts +3 -3
  780. package/dist/utils/navigation-signal.js +16 -1
  781. package/dist/utils/number.d.ts +2 -3
  782. package/dist/utils/package-name.d.ts +3 -4
  783. package/dist/utils/parse-cookie.d.ts +4 -5
  784. package/dist/utils/path.d.ts +8 -9
  785. package/dist/utils/plugin-options.d.ts +2 -3
  786. package/dist/utils/precompressed-variant.d.ts +3 -4
  787. package/dist/utils/prerender-output-paths.d.ts +9 -10
  788. package/dist/utils/prerender-output-paths.js +16 -9
  789. package/dist/utils/project.d.ts +19 -30
  790. package/dist/utils/project.js +20 -29
  791. package/dist/utils/promise.d.ts +2 -3
  792. package/dist/utils/protocol-headers.d.ts +14 -15
  793. package/dist/utils/public-file-path.d.ts +2 -3
  794. package/dist/utils/public-routes.d.ts +2 -3
  795. package/dist/utils/query.d.ts +14 -9
  796. package/dist/utils/query.js +22 -1
  797. package/dist/utils/react-compiler-support.d.ts +6 -7
  798. package/dist/utils/react-version.d.ts +4 -3
  799. package/dist/utils/react-version.js +19 -1
  800. package/dist/utils/record.d.ts +2 -3
  801. package/dist/utils/redirect-digest.d.ts +3 -4
  802. package/dist/utils/regex-safety.d.ts +4 -5
  803. package/dist/utils/regex.d.ts +2 -3
  804. package/dist/utils/safe-json-file.d.ts +2 -3
  805. package/dist/utils/sorted-array.d.ts +2 -3
  806. package/dist/utils/text-stream.d.ts +3 -4
  807. package/dist/utils/vinext-root.d.ts +2 -3
  808. package/dist/utils/virtual-module.d.ts +3 -4
  809. package/dist/utils/vite-cli-invocation.d.ts +21 -0
  810. package/dist/utils/vite-cli-invocation.js +144 -0
  811. package/dist/utils/vite-version.d.ts +5 -6
  812. package/next-package.json +4 -0
  813. package/package.json +55 -6
@@ -1,9 +1,9 @@
1
1
  import { getOrCreateAls } from "./internal/als-registry.js";
2
- import { getRequestContext, isInsideUnifiedScope, runWithUnifiedStateMutation } from "./unified-request-context.js";
3
- import { parseEdgeRequestCookieHeader } from "../utils/parse-cookie.js";
2
+ import { ensureRenderDynamicLatch, getRequestContext, isInsideUnifiedScope, runWithUnifiedStateMutation } from "./unified-request-context.js";
4
3
  import { MIDDLEWARE_SET_COOKIE_HEADER } from "../utils/protocol-headers.js";
5
- import { FLIGHT_HEADERS, NEXT_HTML_REQUEST_ID_HEADER, NEXT_REQUEST_ID_HEADER } from "../server/headers.js";
6
4
  import { buildRequestHeadersFromMiddlewareResponse } from "../utils/middleware-request-headers.js";
5
+ import { parseEdgeRequestCookieHeader } from "../utils/parse-cookie.js";
6
+ import { FLIGHT_HEADERS, NEXT_HTML_REQUEST_ID_HEADER, NEXT_REQUEST_ID_HEADER } from "../server/headers.js";
7
7
  import { serializeSetCookie, validateCookieName } from "./internal/cookie-serialize.js";
8
8
  import { createPprFallbackShellSuspensePromise } from "./ppr-fallback-shell.js";
9
9
  //#region src/shims/headers.ts
@@ -16,12 +16,19 @@ import { createPprFallbackShellSuspensePromise } from "./ppr-fallback-shell.js";
16
16
  * In Next.js 15+, cookies() and headers() return Promises (async).
17
17
  * We support both the sync (legacy) and async patterns.
18
18
  */
19
+ function createRenderDynamicLatch() {
20
+ return {
21
+ dynamic: false,
22
+ listeners: /* @__PURE__ */ new Set()
23
+ };
24
+ }
19
25
  const _FALLBACK_KEY = Symbol.for("vinext.nextHeadersShim.fallback");
20
26
  const _g = globalThis;
21
27
  const _als = getOrCreateAls("vinext.nextHeadersShim.als");
22
28
  const _fallbackState = _g[_FALLBACK_KEY] ??= {
23
29
  headersContext: null,
24
30
  dynamicUsageDetected: false,
31
+ renderDynamicLatch: createRenderDynamicLatch(),
25
32
  renderRequestApiUsage: /* @__PURE__ */ new Set(),
26
33
  connectionProbe: null,
27
34
  invalidDynamicUsageError: null,
@@ -113,9 +120,40 @@ function markDynamicUsage() {
113
120
  const state = _getState();
114
121
  if (state.headersContext?.forceStatic) return;
115
122
  state.dynamicUsageDetected = true;
123
+ const latches = [ensureRenderDynamicLatch(state)];
116
124
  forEachConnectionProbeTarget(state, (target) => {
117
125
  target.dynamicUsageDetected = true;
126
+ latches.push(ensureRenderDynamicLatch(target));
118
127
  });
128
+ for (const latch of latches) latchRenderDynamic(latch);
129
+ }
130
+ function latchRenderDynamic(latch) {
131
+ if (latch.dynamic) return;
132
+ latch.dynamic = true;
133
+ const listeners = [...latch.listeners];
134
+ latch.listeners.clear();
135
+ for (const listener of listeners) try {
136
+ listener();
137
+ } catch (error) {
138
+ console.error(error);
139
+ }
140
+ }
141
+ /** Whether the current render has used a dynamic API at any point so far. */
142
+ function isRenderDynamicLatched() {
143
+ return ensureRenderDynamicLatch(_getState()).dynamic;
144
+ }
145
+ /**
146
+ * Call `listener` once when the current render first uses a dynamic API.
147
+ * Returns an unsubscribe function. The listener never runs if the render is
148
+ * already latched; check `isRenderDynamicLatched()` first.
149
+ */
150
+ function onRenderDynamicLatched(listener) {
151
+ const latch = ensureRenderDynamicLatch(_getState());
152
+ if (latch.dynamic) return () => {};
153
+ latch.listeners.add(listener);
154
+ return () => {
155
+ latch.listeners.delete(listener);
156
+ };
119
157
  }
120
158
  function forEachConnectionProbeTarget(state, visit) {
121
159
  let target = state.connectionProbe?.dynamicUsageTarget ?? null;
@@ -154,8 +192,10 @@ async function runWithIsolatedDynamicUsage(fn) {
154
192
  return runInChildState(childState);
155
193
  });
156
194
  }
195
+ const parentState = _getState();
157
196
  const childState = {
158
- ..._getState(),
197
+ ...parentState,
198
+ renderDynamicLatch: ensureRenderDynamicLatch(parentState),
159
199
  dynamicUsageDetected: false
160
200
  };
161
201
  return await _als.run(childState, () => runInChildState(childState));
@@ -211,6 +251,7 @@ async function runWithConnectionProbe(fn) {
211
251
  }
212
252
  const childState = {
213
253
  ...parentState,
254
+ renderDynamicLatch: ensureRenderDynamicLatch(parentState),
214
255
  connectionProbe: probe
215
256
  };
216
257
  return await _als.run(childState, () => runInChildState(childState));
@@ -234,15 +275,15 @@ function consumeRenderRequestApiUsage() {
234
275
  const _USE_CACHE_ALS_KEY = Symbol.for("vinext.cacheRuntime.contextAls");
235
276
  /** Symbol used by cache.ts to store the unstable_cache ALS on globalThis */
236
277
  const _UNSTABLE_CACHE_ALS_KEY = Symbol.for("vinext.unstableCache.als");
237
- function _getGlobalCacheScopeStorage(key) {
278
+ function _getGlobalCacheScopeStore(key) {
238
279
  const value = Reflect.get(globalThis, key);
239
280
  if (!value || typeof value !== "object") return null;
240
281
  const getStore = Reflect.get(value, "getStore");
241
282
  if (typeof getStore !== "function") return null;
242
- return { getStore: () => getStore.call(value) };
283
+ return getStore.call(value);
243
284
  }
244
285
  function _getUseCacheGuardContext() {
245
- const store = _getGlobalCacheScopeStorage(_USE_CACHE_ALS_KEY)?.getStore();
286
+ const store = _getGlobalCacheScopeStore(_USE_CACHE_ALS_KEY);
246
287
  if (!store || typeof store !== "object") return null;
247
288
  return store;
248
289
  }
@@ -251,7 +292,11 @@ function _isInsidePublicUseCache() {
251
292
  return ctx !== null && ctx.variant !== "private";
252
293
  }
253
294
  function _isInsideUnstableCache() {
254
- return _getGlobalCacheScopeStorage(_UNSTABLE_CACHE_ALS_KEY)?.getStore() === true;
295
+ return _getGlobalCacheScopeStore(_UNSTABLE_CACHE_ALS_KEY) === true;
296
+ }
297
+ /** Whether work is executing inside a cache boundary that owns its reuse. */
298
+ function isInsideAnyCacheScope() {
299
+ return _getUseCacheGuardContext() !== null || _isInsideUnstableCache();
255
300
  }
256
301
  /**
257
302
  * Throw if the current execution is inside a "use cache" or unstable_cache()
@@ -350,11 +395,54 @@ function getHeadersAccessPhase() {
350
395
  function getHeadersContext() {
351
396
  return _getState().headersContext;
352
397
  }
398
+ /** Serialize the effective request-cookie view, including middleware Set-Cookie overlays. */
399
+ function getEffectiveRequestCookieHeader() {
400
+ const context = getHeadersContext();
401
+ if (!context || context.cookies.size === 0) return null;
402
+ return [...context.cookies].map(([name, value]) => `${name}=${encodeURIComponent(value)}`).join("; ");
403
+ }
404
+ function hasEffectiveRequestCookieChanges(cookieHeader) {
405
+ const effective = getHeadersContext()?.cookies;
406
+ if (!effective) return false;
407
+ const original = parseEdgeRequestCookieHeader(cookieHeader ?? "");
408
+ if (effective.size !== original.size) return true;
409
+ for (const [name, value] of effective) if (original.get(name) !== value) return true;
410
+ return false;
411
+ }
412
+ /**
413
+ * Replace only the request-cookie view for the active request scope.
414
+ *
415
+ * Middleware Set-Cookie mutations are visible through `cookies()` during the
416
+ * same request in Next.js, but they do not rewrite the raw `Cookie` value
417
+ * returned by `headers()`. The staged App renderer uses this seam to restore
418
+ * that split view without changing the request Headers object.
419
+ */
420
+ function applyEffectiveRequestCookieHeader(cookieHeader) {
421
+ const context = _getState().headersContext;
422
+ if (!context) return;
423
+ rebuildCookiesFromHeader(context, cookieHeader);
424
+ context.readonlyCookies = void 0;
425
+ context.mutableCookies = void 0;
426
+ }
427
+ /** Restore a middleware draft-mode transition inside a staged render scope. */
428
+ function restoreDraftModeTransition(cookieHeader) {
429
+ const state = _getState();
430
+ const context = state.headersContext;
431
+ if (!context) return;
432
+ const entry = setCookieNameValue(cookieHeader);
433
+ if (!entry || entry.name !== DRAFT_MODE_COOKIE) return;
434
+ context.cookies.set(entry.name, entry.value);
435
+ context.readonlyCookies = void 0;
436
+ context.mutableCookies = void 0;
437
+ context.draftModeEnabled = entry.value === validateDraftModeSecret(context.draftModeSecret ?? "");
438
+ state.draftModeCookieHeader = cookieHeader;
439
+ }
353
440
  function setHeadersContext(ctx) {
354
441
  const state = _getState();
355
442
  if (ctx !== null) {
356
443
  state.headersContext = ctx;
357
444
  state.dynamicUsageDetected = false;
445
+ state.renderDynamicLatch = createRenderDynamicLatch();
358
446
  state.renderRequestApiUsage = /* @__PURE__ */ new Set();
359
447
  state.pendingSetCookies = [];
360
448
  state.draftModeCookieHeader = null;
@@ -368,6 +456,7 @@ function runWithHeadersContext(ctx, fn) {
368
456
  if (isInsideUnifiedScope()) return runWithUnifiedStateMutation((uCtx) => {
369
457
  uCtx.headersContext = ctx;
370
458
  uCtx.dynamicUsageDetected = false;
459
+ uCtx.renderDynamicLatch = createRenderDynamicLatch();
371
460
  uCtx.renderRequestApiUsage = /* @__PURE__ */ new Set();
372
461
  uCtx.connectionProbe = null;
373
462
  uCtx.pendingSetCookies = [];
@@ -377,6 +466,7 @@ function runWithHeadersContext(ctx, fn) {
377
466
  const state = {
378
467
  headersContext: ctx,
379
468
  dynamicUsageDetected: false,
469
+ renderDynamicLatch: createRenderDynamicLatch(),
380
470
  renderRequestApiUsage: /* @__PURE__ */ new Set(),
381
471
  connectionProbe: null,
382
472
  invalidDynamicUsageError: null,
@@ -586,7 +676,8 @@ function headersContextFromRequest(request, options) {
586
676
  let _cookies = null;
587
677
  function getCookies() {
588
678
  if (_cookies) return _cookies;
589
- _cookies = parseEdgeRequestCookieHeader(headersProxy.get("cookie") || "");
679
+ const cookieHeader = headersProxy.get("cookie") || "";
680
+ _cookies = parseEdgeRequestCookieHeader(cookieHeader);
590
681
  return _cookies;
591
682
  }
592
683
  return {
@@ -887,4 +978,4 @@ function serializeMutableCookie(cookie) {
887
978
  });
888
979
  }
889
980
  //#endregion
890
- export { applyMiddlewareRequestHeaders, consumeDynamicUsage, consumeInvalidDynamicUsageError, consumeRenderRequestApiUsage, cookies, draftMode, getActiveDraftModeState, getAndClearPendingCookies, getDraftModeCookieHeader, getHeadersAccessPhase, getHeadersContext, headers, headersContextFromRequest, isDraftModeEnabled, isDraftModeRequest, markDynamicUsage, markRenderRequestApiUsage, peekDynamicUsage, peekRenderRequestApiUsage, runWithConnectionProbe, runWithHeadersContext, runWithIsolatedDynamicUsage, setHeadersAccessPhase, setHeadersContext, suspendConnectionProbe, throwIfInsideCacheScope, throwIfStaticGenerationAccessError };
981
+ export { applyEffectiveRequestCookieHeader, applyMiddlewareRequestHeaders, consumeDynamicUsage, consumeInvalidDynamicUsageError, consumeRenderRequestApiUsage, cookies, createRenderDynamicLatch, draftMode, getActiveDraftModeState, getAndClearPendingCookies, getDraftModeCookieHeader, getEffectiveRequestCookieHeader, getHeadersAccessPhase, getHeadersContext, hasEffectiveRequestCookieChanges, headers, headersContextFromRequest, isDraftModeEnabled, isDraftModeRequest, isInsideAnyCacheScope, isRenderDynamicLatched, markDynamicUsage, markRenderRequestApiUsage, onRenderDynamicLatched, peekDynamicUsage, peekRenderRequestApiUsage, restoreDraftModeTransition, runWithConnectionProbe, runWithHeadersContext, runWithIsolatedDynamicUsage, setHeadersAccessPhase, setHeadersContext, suspendConnectionProbe, throwIfInsideCacheScope, throwIfStaticGenerationAccessError };
@@ -1,6 +1,6 @@
1
1
  import { DomainLocale } from "../utils/domain-locale.js";
2
2
  //#region src/shims/i18n-context.d.ts
3
- type I18nContext = {
3
+ export type I18nContext = {
4
4
  locale?: string;
5
5
  locales?: string[];
6
6
  defaultLocale?: string;
@@ -11,11 +11,10 @@ type I18nContext = {
11
11
  * Register ALS-backed accessors. Called by i18n-state.ts on import.
12
12
  * @internal
13
13
  */
14
- declare function _registerI18nStateAccessors(accessors: {
14
+ export declare function _registerI18nStateAccessors(accessors: {
15
15
  getI18nContext: () => I18nContext | null;
16
16
  setI18nContext: (ctx: I18nContext | null) => void;
17
17
  }): void;
18
- declare function getI18nContext(): I18nContext | null;
19
- declare function setI18nContext(ctx: I18nContext | null): void;
20
- //#endregion
21
- export { I18nContext, _registerI18nStateAccessors, getI18nContext, setI18nContext };
18
+ export declare function getI18nContext(): I18nContext | null;
19
+ export declare function setI18nContext(ctx: I18nContext | null): void;
20
+ //#endregion
@@ -1,13 +1,12 @@
1
1
  import { I18nContext } from "./i18n-context.js";
2
2
  //#region src/shims/i18n-state.d.ts
3
- type I18nState = {
3
+ export type I18nState = {
4
4
  i18nContext: I18nContext | null;
5
5
  };
6
6
  /**
7
7
  * Run a function within an i18n state ALS scope.
8
8
  * Ensures per-request isolation for i18n context on concurrent runtimes.
9
9
  */
10
- declare function runWithI18nState<T>(fn: () => Promise<T>): Promise<T>;
11
- declare function runWithI18nState<T>(fn: () => T | Promise<T>): T | Promise<T>;
12
- //#endregion
13
- export { I18nState, runWithI18nState };
10
+ export declare function runWithI18nState<T>(fn: () => Promise<T>): Promise<T>;
11
+ export declare function runWithI18nState<T>(fn: () => T | Promise<T>): T | Promise<T>;
12
+ //#endregion
@@ -12,7 +12,7 @@
12
12
  * - `**` matches any number of segments
13
13
  * - protocol, port, and search are matched exactly when specified
14
14
  */
15
- type RemotePattern = {
15
+ export type RemotePattern = {
16
16
  protocol?: string;
17
17
  hostname: string;
18
18
  port?: string;
@@ -23,11 +23,11 @@ type RemotePattern = {
23
23
  * Check whether a URL matches a single remote pattern.
24
24
  * Follows the same semantics as Next.js's matchRemotePattern().
25
25
  */
26
- declare function matchRemotePattern(pattern: RemotePattern, url: URL): boolean;
26
+ export declare function matchRemotePattern(pattern: RemotePattern, url: URL): boolean;
27
27
  /**
28
28
  * Check whether a URL matches any configured remote pattern or legacy domain.
29
29
  */
30
- declare function hasRemoteMatch(domains: string[], remotePatterns: RemotePattern[], url: URL): boolean;
30
+ export declare function hasRemoteMatch(domains: string[], remotePatterns: RemotePattern[], url: URL): boolean;
31
31
  /**
32
32
  * Determine whether a string is a private (non-routable) IP address.
33
33
  * Works for IPv4 and IPv6, including bracketed and IPv4-mapped forms.
@@ -40,6 +40,5 @@ declare function hasRemoteMatch(domains: string[], remotePatterns: RemotePattern
40
40
  *
41
41
  * https://github.com/vercel/next.js/blob/canary/packages/next/src/server/is-private-ip.ts
42
42
  */
43
- declare function isPrivateIp(ip: string): boolean;
44
- //#endregion
45
- export { RemotePattern, hasRemoteMatch, isPrivateIp, matchRemotePattern };
43
+ export declare function isPrivateIp(ip: string): boolean;
44
+ //#endregion
@@ -59,6 +59,7 @@ function matchRemotePattern(pattern, url) {
59
59
  function hasRemoteMatch(domains, remotePatterns, url) {
60
60
  return domains.some((domain) => url.hostname === domain) || remotePatterns.some((p) => matchRemotePattern(p, url));
61
61
  }
62
+ const IPV4_LITERAL_CHARS_RE = /^[0-9a-fA-FxX.]+$/;
62
63
  /**
63
64
  * Determine whether a string is a private (non-routable) IP address.
64
65
  * Works for IPv4 and IPv6, including bracketed and IPv4-mapped forms.
@@ -73,6 +74,7 @@ function hasRemoteMatch(domains, remotePatterns, url) {
73
74
  */
74
75
  function isPrivateIp(ip) {
75
76
  if (ip.startsWith("[") && ip.endsWith("]")) ip = ip.slice(1, -1);
77
+ if (!ip.includes(":") && !IPV4_LITERAL_CHARS_RE.test(ip)) return false;
76
78
  try {
77
79
  const parsed = ipaddr.parse(ip);
78
80
  if (parsed instanceof ipaddr.IPv6 && parsed.isIPv4MappedAddress()) return parsed.toIPv4Address().range() !== "unicast";
@@ -1,8 +1,8 @@
1
1
  import React from "react";
2
2
  import { ImageLoader, ImageProps as ImageProps$1, ImgProps, StaticImageData, StaticImport, StaticRequire } from "@vinext/types/next/upstream/dist/shared/lib/get-img-props";
3
3
  //#region src/shims/image.d.ts
4
- type ImageLoaderProps = Parameters<ImageLoader>[0];
5
- type ImageProps = ImageProps$1;
4
+ export type ImageLoaderProps = Parameters<ImageLoader>[0];
5
+ export type ImageProps = ImageProps$1;
6
6
  /**
7
7
  * Build a `/_next/image` optimization URL.
8
8
  *
@@ -10,7 +10,7 @@ type ImageProps = ImageProps$1;
10
10
  * the Images binding to resize/transcode on the fly. In dev, the Vite dev
11
11
  * server handles it as a passthrough (serves the original file).
12
12
  */
13
- declare function imageOptimizationUrl(src: string, width: number, quality?: number): string;
13
+ export declare function imageOptimizationUrl(src: string, width: number, quality?: number): string;
14
14
  declare const Image: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, "alt" | "height" | "loading" | "ref" | "src" | "srcSet" | "width"> & {
15
15
  src: string | StaticImport;
16
16
  alt: string;
@@ -37,8 +37,8 @@ declare const Image: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProp
37
37
  * getImageProps — for advanced use cases (picture elements, background images).
38
38
  * Returns the props that would be passed to the underlying <img> element.
39
39
  */
40
- declare function getImageProps(props: ImageProps): {
40
+ export declare function getImageProps(props: ImageProps): {
41
41
  props: ImgProps;
42
42
  };
43
43
  //#endregion
44
- export { type ImageLoader, ImageLoaderProps, ImageProps, type StaticImageData, type StaticRequire, Image as default, getImageProps, imageOptimizationUrl };
44
+ export { type ImageLoader, type StaticImageData, type StaticRequire, Image as default };
@@ -453,10 +453,12 @@ const Image = forwardRef(function Image({ src: srcProp, alt, width, height, fill
453
453
  }
454
454
  if (isRemoteUrl(src)) {
455
455
  const validation = validateRemoteUrl(src);
456
- if (!validation.allowed) if (__isDev) console.warn(`[next/image] ${validation.reason}`);
457
- else {
458
- console.error(`[next/image] ${validation.reason}`);
459
- return null;
456
+ if (!validation.allowed) {
457
+ if (__isDev) console.warn(`[next/image] ${validation.reason}`);
458
+ else {
459
+ console.error(`[next/image] ${validation.reason}`);
460
+ return null;
461
+ }
460
462
  }
461
463
  const sanitizedBlur = imgBlurDataURL ? sanitizeBlurDataURL(imgBlurDataURL) : void 0;
462
464
  const showBlur = !blurComplete && placeholder === "blur" && sanitizedBlur;
@@ -603,10 +605,12 @@ function getImageProps(props) {
603
605
  let blockedInProd = false;
604
606
  if (isRemoteUrl(src)) {
605
607
  const validation = validateRemoteUrl(src);
606
- if (!validation.allowed) if (__isDev) console.warn(`[next/image] ${validation.reason}`);
607
- else {
608
- console.error(`[next/image] ${validation.reason}`);
609
- blockedInProd = true;
608
+ if (!validation.allowed) {
609
+ if (__isDev) console.warn(`[next/image] ${validation.reason}`);
610
+ else {
611
+ console.error(`[next/image] ${validation.reason}`);
612
+ blockedInProd = true;
613
+ }
610
614
  }
611
615
  }
612
616
  const imgQuality = typeof _quality === "string" ? Number(_quality) : _quality ?? 75;
@@ -8,7 +8,7 @@ import { AsyncLocalStorage } from "node:async_hooks";
8
8
  * @param key - String key fed to `Symbol.for(...)`. By convention vinext
9
9
  * shims use a dotted namespace such as `"vinext.cache.als"`.
10
10
  */
11
- declare function getOrCreateAls<T>(key: string): AsyncLocalStorage<T>;
11
+ export declare function getOrCreateAls<T>(key: string): AsyncLocalStorage<T>;
12
12
  /**
13
13
  * Enrol an ALS that is *not* created through `getOrCreateAls` into the
14
14
  * scope-exit set. For stores that must stay module-local for identity reasons
@@ -19,7 +19,7 @@ declare function getOrCreateAls<T>(key: string): AsyncLocalStorage<T>;
19
19
  * keeps importing nothing but `node:async_hooks` and stays safe to evaluate in
20
20
  * client bundles where that resolves to a constructor-less stub.
21
21
  */
22
- declare function registerAlsForScopeExit(als: AsyncLocalStorage<never>): void;
22
+ export declare function registerAlsForScopeExit(als: AsyncLocalStorage<never>): void;
23
23
  /**
24
24
  * Run `fn` — and every async continuation it starts — outside every
25
25
  * request-scoped AsyncLocalStorage vinext installs, so the callback observes no
@@ -38,6 +38,5 @@ declare function registerAlsForScopeExit(als: AsyncLocalStorage<never>): void;
38
38
  * the unified store is absent, so a partial exit would enable that path rather
39
39
  * than close it.
40
40
  */
41
- declare function runOutsideRequestScopes<T>(fn: () => T): T;
42
- //#endregion
43
- export { getOrCreateAls, registerAlsForScopeExit, runOutsideRequestScopes };
41
+ export declare function runOutsideRequestScopes<T>(fn: () => T): T;
42
+ //#endregion
@@ -4,11 +4,10 @@
4
4
  *
5
5
  * Used by: @clerk/nextjs (type-only import of NextApiRequestCookies).
6
6
  */
7
- type NextApiRequestCookies = Partial<{
7
+ export type NextApiRequestCookies = Partial<{
8
8
  [key: string]: string;
9
9
  }>;
10
- type NextApiRequestQuery = Partial<{
10
+ export type NextApiRequestQuery = Partial<{
11
11
  [key: string]: string | string[];
12
12
  }>;
13
- //#endregion
14
- export { NextApiRequestCookies, NextApiRequestQuery };
13
+ //#endregion
@@ -1,5 +1,33 @@
1
1
  //#region src/shims/internal/app-page-props-cache-key.d.ts
2
- declare function markAppPagePropsForUseCache<T extends object>(props: T): T;
3
- declare function isMarkedAppPagePropsObject(value: object): boolean;
4
- //#endregion
5
- export { isMarkedAppPagePropsObject, markAppPagePropsForUseCache };
2
+ /**
3
+ * Enumerable page marker, matching Next.js's `$$isPage` prop. It must be an
4
+ * ordinary string key: React's createElement drops symbol and non-enumerable
5
+ * props before a server component is invoked.
6
+ */
7
+ export declare const APP_PAGE_USE_CACHE_MARKER = "$$isPage";
8
+ export declare function markAppPagePropsForUseCache<T extends object>(props: T): T;
9
+ export declare function isMarkedAppPagePropsObject(value: object): boolean;
10
+ /**
11
+ * Whether `fn` is a transformed `"use cache"` function, including a bound
12
+ * one. Like Next.js's `isUseCacheFunction`, this survives `.bind()`: React's
13
+ * server-reference `bind` copies `$$typeof`/`$$id` to the bound function but
14
+ * not vinext's own marker symbol.
15
+ */
16
+ export declare function isUseCacheFunctionReference(fn: unknown): boolean;
17
+ /**
18
+ * Add Next.js's `$$isPage` marker when `fn` is a `"use cache"` function
19
+ * invoked as a page component or as a page's generateMetadata/generateViewport
20
+ * (create-component-tree.tsx, resolve-metadata.ts `createSegmentProps`). The
21
+ * cache wrapper reads and removes it, so page semantics follow the invocation
22
+ * even when the cached function is defined in (or re-exported from) another
23
+ * module, or bound.
24
+ */
25
+ export declare function withUseCachePageMarker<T extends Record<string, unknown>>(fn: unknown, props: T): T;
26
+ /**
27
+ * Whether `value` is page props carrying the `$$isPage` marker. Only plain
28
+ * objects qualify: the framework always passes a plain props object, and
29
+ * reading the marker through a thenable params/searchParams proxy would be
30
+ * observed as a param access.
31
+ */
32
+ export declare function hasUseCachePageMarker(value: unknown): value is Record<string, unknown>;
33
+ //#endregion
@@ -1,5 +1,20 @@
1
1
  //#region src/shims/internal/app-page-props-cache-key.ts
2
2
  const APP_PAGE_PROPS_CACHE_KEY_MARKER = Symbol.for("vinext.appPagePropsCacheKeyMarker");
3
+ const USE_CACHE_FUNCTION_SYMBOL = Symbol.for("vinext.useCacheFunction");
4
+ const SERVER_REFERENCE_TAG = Symbol.for("react.server.reference");
5
+ /**
6
+ * Server reference ids of transformed cache functions end in the export name
7
+ * the use-cache transform assigns (`secureExportName` in
8
+ * plugins/use-cache-callable.ts): `$$vinext_cache_` plus an HMAC-SHA256 hex
9
+ * digest. `"use server"` actions keep their own export names.
10
+ */
11
+ const USE_CACHE_SERVER_REFERENCE_ID_RE = /#\$\$vinext_cache_[0-9a-f]{64}$/;
12
+ /**
13
+ * Enumerable page marker, matching Next.js's `$$isPage` prop. It must be an
14
+ * ordinary string key: React's createElement drops symbol and non-enumerable
15
+ * props before a server component is invoked.
16
+ */
17
+ const APP_PAGE_USE_CACHE_MARKER = "$$isPage";
3
18
  function markAppPagePropsForUseCache(props) {
4
19
  Object.defineProperty(props, APP_PAGE_PROPS_CACHE_KEY_MARKER, {
5
20
  configurable: false,
@@ -12,5 +27,42 @@ function markAppPagePropsForUseCache(props) {
12
27
  function isMarkedAppPagePropsObject(value) {
13
28
  return Reflect.get(value, APP_PAGE_PROPS_CACHE_KEY_MARKER) === true;
14
29
  }
30
+ /**
31
+ * Whether `fn` is a transformed `"use cache"` function, including a bound
32
+ * one. Like Next.js's `isUseCacheFunction`, this survives `.bind()`: React's
33
+ * server-reference `bind` copies `$$typeof`/`$$id` to the bound function but
34
+ * not vinext's own marker symbol.
35
+ */
36
+ function isUseCacheFunctionReference(fn) {
37
+ if (typeof fn !== "function") return false;
38
+ if (Reflect.get(fn, USE_CACHE_FUNCTION_SYMBOL) === true) return true;
39
+ const reference = fn;
40
+ return reference.$$typeof === SERVER_REFERENCE_TAG && typeof reference.$$id === "string" && USE_CACHE_SERVER_REFERENCE_ID_RE.test(reference.$$id);
41
+ }
42
+ /**
43
+ * Add Next.js's `$$isPage` marker when `fn` is a `"use cache"` function
44
+ * invoked as a page component or as a page's generateMetadata/generateViewport
45
+ * (create-component-tree.tsx, resolve-metadata.ts `createSegmentProps`). The
46
+ * cache wrapper reads and removes it, so page semantics follow the invocation
47
+ * even when the cached function is defined in (or re-exported from) another
48
+ * module, or bound.
49
+ */
50
+ function withUseCachePageMarker(fn, props) {
51
+ return isUseCacheFunctionReference(fn) ? {
52
+ ...props,
53
+ [APP_PAGE_USE_CACHE_MARKER]: true
54
+ } : props;
55
+ }
56
+ /**
57
+ * Whether `value` is page props carrying the `$$isPage` marker. Only plain
58
+ * objects qualify: the framework always passes a plain props object, and
59
+ * reading the marker through a thenable params/searchParams proxy would be
60
+ * observed as a param access.
61
+ */
62
+ function hasUseCachePageMarker(value) {
63
+ if (value === null || typeof value !== "object") return false;
64
+ const prototype = Object.getPrototypeOf(value);
65
+ return (prototype === Object.prototype || prototype === null) && value["$$isPage"] === true;
66
+ }
15
67
  //#endregion
16
- export { isMarkedAppPagePropsObject, markAppPagePropsForUseCache };
68
+ export { APP_PAGE_USE_CACHE_MARKER, hasUseCachePageMarker, isMarkedAppPagePropsObject, isUseCacheFunctionReference, markAppPagePropsForUseCache, withUseCachePageMarker };
@@ -1,13 +1,13 @@
1
1
  //#region src/shims/internal/app-prefetch-fetch-queue.d.ts
2
- declare function releaseAppPrefetchFetchSlot(response: Response): void;
2
+ export declare function releaseAppPrefetchFetchSlot(response: Response): void;
3
3
  /**
4
4
  * Low-priority App Router prefetches share a small request queue. The consumer
5
5
  * must either snapshot the returned Response with snapshotRscResponse() or call
6
6
  * releaseAppPrefetchFetchSlot() when it drops the response without consuming it.
7
7
  */
8
- declare function scheduleAppPrefetchFetch(fetcher: (signal: AbortSignal) => Promise<Response>, priority: "low" | "high"): Promise<Response>;
8
+ export declare function scheduleAppPrefetchFetch(fetcher: (signal: AbortSignal) => Promise<Response>, priority: "low" | "high"): Promise<Response>;
9
9
  /** Cancel a queued or in-flight prefetch request. No-op once it has settled. */
10
- declare function cancelAppPrefetchFetch(promise: Promise<Response> | undefined): void;
10
+ export declare function cancelAppPrefetchFetch(promise: Promise<Response> | undefined): void;
11
11
  /**
12
12
  * Start a still-queued prefetch request immediately.
13
13
  *
@@ -20,6 +20,5 @@ declare function cancelAppPrefetchFetch(promise: Promise<Response> | undefined):
20
20
  *
21
21
  * No-op when the request has already started or was never queued.
22
22
  */
23
- declare function promoteAppPrefetchFetch(promise: Promise<Response> | undefined): void;
24
- //#endregion
25
- export { cancelAppPrefetchFetch, promoteAppPrefetchFetch, releaseAppPrefetchFetchSlot, scheduleAppPrefetchFetch };
23
+ export declare function promoteAppPrefetchFetch(promise: Promise<Response> | undefined): void;
24
+ //#endregion
@@ -0,0 +1,13 @@
1
+ //#region src/shims/internal/app-prefetch-rsc-request.d.ts
2
+ export type ResolveAppPrefetchRscRequestOptions = {
3
+ fullHref: string;
4
+ headers: Headers;
5
+ rewrittenPrefetchHref: string | null;
6
+ };
7
+ export type ResolvedAppPrefetchRscRequest = {
8
+ additionalRscUrls: string[];
9
+ rscUrl: string;
10
+ };
11
+ /** Resolve the ordinary RSC request identities shared by `<Link>` and `router.prefetch()`. */
12
+ export declare function resolveAppPrefetchRscRequest({ fullHref, headers, rewrittenPrefetchHref }: ResolveAppPrefetchRscRequestOptions): Promise<ResolvedAppPrefetchRscRequest>;
13
+ //#endregion
@@ -0,0 +1,12 @@
1
+ import { createRscRequestUrl } from "../../server/app-rsc-cache-busting.js";
2
+ //#region src/shims/internal/app-prefetch-rsc-request.ts
3
+ /** Resolve the ordinary RSC request identities shared by `<Link>` and `router.prefetch()`. */
4
+ async function resolveAppPrefetchRscRequest({ fullHref, headers, rewrittenPrefetchHref }) {
5
+ const [rscUrl, ...additionalRscUrls] = await Promise.all([createRscRequestUrl(fullHref, headers), ...rewrittenPrefetchHref !== null && rewrittenPrefetchHref !== fullHref ? [createRscRequestUrl(rewrittenPrefetchHref, headers)] : []]);
6
+ return {
7
+ additionalRscUrls,
8
+ rscUrl
9
+ };
10
+ }
11
+ //#endregion
12
+ export { resolveAppPrefetchRscRequest };
@@ -18,6 +18,6 @@ declare global {
18
18
  * first (e.g. `link.tsx` normalises to match `trailingSlash` config before
19
19
  * calling, while `router.prefetch()` passes the raw user-supplied URL).
20
20
  */
21
- declare function markAppRouteDetectedOnPrefetch(href: string, basePath: string): Promise<void>;
21
+ export declare function markAppRouteDetectedOnPrefetch(href: string, basePath: string): Promise<void>;
22
22
  //#endregion
23
- export { getPagesRouterComponentsMap, markAppRouteDetectedOnPrefetch };
23
+ export { getPagesRouterComponentsMap };
@@ -10,7 +10,7 @@ declare global {
10
10
  * it at all, whether the response is reusable by a later navigation, and which
11
11
  * cache TTL family applies.
12
12
  */
13
- type AppRoutePrefetchPolicy = {
13
+ export type AppRoutePrefetchPolicy = {
14
14
  cacheForNavigation: boolean;
15
15
  /**
16
16
  * How the dynamic stale-time signal affects this prefetch. Navigation data
@@ -25,8 +25,7 @@ type AppRoutePrefetchPolicy = {
25
25
  requiresRouteTreePrefetch?: true;
26
26
  shouldPrefetch: boolean;
27
27
  };
28
- declare function canAutoPrefetchFullAppRoute(href: string): boolean;
29
- declare function resolveAutoAppRoutePrefetch(href: string): AppRoutePrefetchPolicy;
30
- declare function resolveFullAppRoutePrefetch(): AppRoutePrefetchPolicy;
31
- //#endregion
32
- export { AppRoutePrefetchPolicy, canAutoPrefetchFullAppRoute, resolveAutoAppRoutePrefetch, resolveFullAppRoutePrefetch };
28
+ export declare function canAutoPrefetchFullAppRoute(href: string): boolean;
29
+ export declare function resolveAutoAppRoutePrefetch(href: string): AppRoutePrefetchPolicy;
30
+ export declare function resolveFullAppRoutePrefetch(): AppRoutePrefetchPolicy;
31
+ //#endregion
@@ -35,6 +35,7 @@ function resolveAutoAppRoutePrefetch(href) {
35
35
  if (routeHref === null) return NO_APP_ROUTE_PREFETCH;
36
36
  const match = matchRouteWithTrie(routeHref, routes, linkPrefetchRouteTrieCache);
37
37
  if (!match) return NO_APP_ROUTE_PREFETCH;
38
+ if (process.env.NODE_ENV === "production" && process.env.__NEXT_CONFIG_OUTPUT === "export") return resolveFullAppRoutePrefetch();
38
39
  const route = match.route;
39
40
  const requiresRouteTreePrefetch = String(process.env.__NEXT_CACHE_COMPONENTS) === "true" && route.hasRootParams === true;
40
41
  const routeUrl = new URL(routeHref, "http://vinext.local");
@@ -1,13 +1,13 @@
1
1
  import * as React$1 from "react";
2
2
  //#region src/shims/internal/app-router-context.d.ts
3
- type NavigateOptions = {
3
+ export type NavigateOptions = {
4
4
  scroll?: boolean;
5
5
  };
6
- type PrefetchOptions = {
6
+ export type PrefetchOptions = {
7
7
  kind?: unknown;
8
8
  onInvalidate?: () => void;
9
9
  };
10
- type AppRouterInstance = {
10
+ export type AppRouterInstance = {
11
11
  bfcacheId: string;
12
12
  back(): void;
13
13
  forward(): void;
@@ -21,10 +21,9 @@ type AppRouterInstance = {
21
21
  */
22
22
  experimental_gesturePush?(href: string, options?: NavigateOptions): void;
23
23
  };
24
- declare const AppRouterContext: React$1.Context<AppRouterInstance | null> | null;
25
- declare const GlobalLayoutRouterContext: React$1.Context<unknown> | null;
26
- declare const LayoutRouterContext: React$1.Context<unknown> | null;
27
- declare const MissingSlotContext: React$1.Context<Set<string>> | null;
28
- declare const TemplateContext: React$1.Context<unknown> | null;
29
- //#endregion
30
- export { AppRouterContext, AppRouterInstance, GlobalLayoutRouterContext, LayoutRouterContext, MissingSlotContext, NavigateOptions, PrefetchOptions, TemplateContext };
24
+ export declare const AppRouterContext: React$1.Context<AppRouterInstance | null> | null;
25
+ export declare const GlobalLayoutRouterContext: React$1.Context<unknown> | null;
26
+ export declare const LayoutRouterContext: React$1.Context<unknown> | null;
27
+ export declare const MissingSlotContext: React$1.Context<Set<string>> | null;
28
+ export declare const TemplateContext: React$1.Context<unknown> | null;
29
+ //#endregion