@qzsy/vinext 0.1.7

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 (803) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +773 -0
  3. package/dist/build/assets-ignore.d.ts +32 -0
  4. package/dist/build/assets-ignore.js +48 -0
  5. package/dist/build/clean-output.d.ts +13 -0
  6. package/dist/build/clean-output.js +34 -0
  7. package/dist/build/client-build-config.d.ts +171 -0
  8. package/dist/build/client-build-config.js +270 -0
  9. package/dist/build/css-url-assets.d.ts +29 -0
  10. package/dist/build/css-url-assets.js +213 -0
  11. package/dist/build/google-fonts/build-url.d.ts +9 -0
  12. package/dist/build/google-fonts/build-url.js +28 -0
  13. package/dist/build/google-fonts/fallback-metrics-data.js +14029 -0
  14. package/dist/build/google-fonts/fallback-metrics.d.ts +12 -0
  15. package/dist/build/google-fonts/fallback-metrics.js +44 -0
  16. package/dist/build/google-fonts/find-font-files-in-css.d.ts +16 -0
  17. package/dist/build/google-fonts/find-font-files-in-css.js +28 -0
  18. package/dist/build/google-fonts/font-data.js +24983 -0
  19. package/dist/build/google-fonts/font-metadata.d.ts +16 -0
  20. package/dist/build/google-fonts/font-metadata.js +5 -0
  21. package/dist/build/google-fonts/get-axes.d.ts +6 -0
  22. package/dist/build/google-fonts/get-axes.js +37 -0
  23. package/dist/build/google-fonts/sort-variants.d.ts +4 -0
  24. package/dist/build/google-fonts/sort-variants.js +12 -0
  25. package/dist/build/google-fonts/validate.d.ts +27 -0
  26. package/dist/build/google-fonts/validate.js +54 -0
  27. package/dist/build/inline-css.d.ts +6 -0
  28. package/dist/build/inline-css.js +48 -0
  29. package/dist/build/layout-classification-types.d.ts +61 -0
  30. package/dist/build/layout-classification-types.js +1 -0
  31. package/dist/build/layout-classification.d.ts +59 -0
  32. package/dist/build/layout-classification.js +98 -0
  33. package/dist/build/next-client-runtime-manifests.d.ts +14 -0
  34. package/dist/build/next-client-runtime-manifests.js +39 -0
  35. package/dist/build/nitro-route-rules.d.ts +49 -0
  36. package/dist/build/nitro-route-rules.js +79 -0
  37. package/dist/build/precompress.d.ts +27 -0
  38. package/dist/build/precompress.js +110 -0
  39. package/dist/build/prerender.d.ts +209 -0
  40. package/dist/build/prerender.js +932 -0
  41. package/dist/build/report.d.ts +132 -0
  42. package/dist/build/report.js +504 -0
  43. package/dist/build/route-classification-injector.d.ts +34 -0
  44. package/dist/build/route-classification-injector.js +59 -0
  45. package/dist/build/route-classification-manifest.d.ts +52 -0
  46. package/dist/build/route-classification-manifest.js +143 -0
  47. package/dist/build/run-prerender.d.ts +61 -0
  48. package/dist/build/run-prerender.js +224 -0
  49. package/dist/build/server-manifest.d.ts +18 -0
  50. package/dist/build/server-manifest.js +22 -0
  51. package/dist/build/ssr-manifest.d.ts +18 -0
  52. package/dist/build/ssr-manifest.js +69 -0
  53. package/dist/build/standalone.d.ts +31 -0
  54. package/dist/build/standalone.js +203 -0
  55. package/dist/build/static-export.d.ts +55 -0
  56. package/dist/build/static-export.js +60 -0
  57. package/dist/cache/cache-adapters-virtual.d.ts +50 -0
  58. package/dist/cache/cache-adapters-virtual.js +45 -0
  59. package/dist/cache.d.ts +2 -0
  60. package/dist/cache.js +2 -0
  61. package/dist/check.d.ts +87 -0
  62. package/dist/check.js +1037 -0
  63. package/dist/cli-args.d.ts +33 -0
  64. package/dist/cli-args.js +124 -0
  65. package/dist/cli.d.ts +1 -0
  66. package/dist/cli.js +744 -0
  67. package/dist/client/app-nav-failure-handler.d.ts +8 -0
  68. package/dist/client/app-nav-failure-handler.js +44 -0
  69. package/dist/client/empty-module.d.ts +1 -0
  70. package/dist/client/empty-module.js +1 -0
  71. package/dist/client/instrumentation-client-inject.d.ts +33 -0
  72. package/dist/client/instrumentation-client-inject.js +55 -0
  73. package/dist/client/instrumentation-client-state.d.ts +9 -0
  74. package/dist/client/instrumentation-client-state.js +17 -0
  75. package/dist/client/instrumentation-client.d.ts +7 -0
  76. package/dist/client/instrumentation-client.js +6 -0
  77. package/dist/client/navigation-runtime.d.ts +70 -0
  78. package/dist/client/navigation-runtime.js +169 -0
  79. package/dist/client/pages-router-link-navigation.d.ts +61 -0
  80. package/dist/client/pages-router-link-navigation.js +42 -0
  81. package/dist/client/validate-module-path.d.ts +17 -0
  82. package/dist/client/validate-module-path.js +24 -0
  83. package/dist/client/vinext-next-data.d.ts +44 -0
  84. package/dist/client/vinext-next-data.js +50 -0
  85. package/dist/client/window-next.d.ts +168 -0
  86. package/dist/client/window-next.js +57 -0
  87. package/dist/cloudflare/index.d.ts +3 -0
  88. package/dist/cloudflare/index.js +3 -0
  89. package/dist/cloudflare/src/cache/cdn-adapter.runtime.js +102 -0
  90. package/dist/cloudflare/src/cache/kv-data-adapter.runtime.d.ts +126 -0
  91. package/dist/cloudflare/src/cache/kv-data-adapter.runtime.js +435 -0
  92. package/dist/cloudflare/src/utils/cache-control-metadata.js +20 -0
  93. package/dist/cloudflare/tpr.d.ts +82 -0
  94. package/dist/cloudflare/tpr.js +558 -0
  95. package/dist/config/config-matchers.d.ts +257 -0
  96. package/dist/config/config-matchers.js +1046 -0
  97. package/dist/config/dotenv.d.ts +56 -0
  98. package/dist/config/dotenv.js +88 -0
  99. package/dist/config/next-config.d.ts +540 -0
  100. package/dist/config/next-config.js +1050 -0
  101. package/dist/config/tsconfig-paths.d.ts +21 -0
  102. package/dist/config/tsconfig-paths.js +157 -0
  103. package/dist/deploy.d.ts +190 -0
  104. package/dist/deploy.js +1033 -0
  105. package/dist/entries/app-browser-entry.d.ts +29 -0
  106. package/dist/entries/app-browser-entry.js +83 -0
  107. package/dist/entries/app-rsc-entry.d.ts +81 -0
  108. package/dist/entries/app-rsc-entry.js +943 -0
  109. package/dist/entries/app-rsc-manifest.d.ts +53 -0
  110. package/dist/entries/app-rsc-manifest.js +294 -0
  111. package/dist/entries/app-ssr-entry.d.ts +15 -0
  112. package/dist/entries/app-ssr-entry.js +24 -0
  113. package/dist/entries/pages-client-entry.d.ts +11 -0
  114. package/dist/entries/pages-client-entry.js +204 -0
  115. package/dist/entries/pages-entry-helpers.d.ts +2 -0
  116. package/dist/entries/pages-entry-helpers.js +2 -0
  117. package/dist/entries/pages-server-entry.d.ts +11 -0
  118. package/dist/entries/pages-server-entry.js +398 -0
  119. package/dist/entries/runtime-entry-module.d.ts +25 -0
  120. package/dist/entries/runtime-entry-module.js +46 -0
  121. package/dist/index.d.ts +115 -0
  122. package/dist/index.js +2661 -0
  123. package/dist/init.d.ts +69 -0
  124. package/dist/init.js +253 -0
  125. package/dist/plugins/ast-utils.d.ts +20 -0
  126. package/dist/plugins/ast-utils.js +78 -0
  127. package/dist/plugins/async-hooks-stub.d.ts +18 -0
  128. package/dist/plugins/async-hooks-stub.js +40 -0
  129. package/dist/plugins/client-reference-dedup.d.ts +35 -0
  130. package/dist/plugins/client-reference-dedup.js +189 -0
  131. package/dist/plugins/css-data-url.d.ts +6 -0
  132. package/dist/plugins/css-data-url.js +83 -0
  133. package/dist/plugins/dynamic-preload-metadata.d.ts +13 -0
  134. package/dist/plugins/dynamic-preload-metadata.js +413 -0
  135. package/dist/plugins/extensionless-dynamic-import.d.ts +6 -0
  136. package/dist/plugins/extensionless-dynamic-import.js +155 -0
  137. package/dist/plugins/fonts.d.ts +95 -0
  138. package/dist/plugins/fonts.js +711 -0
  139. package/dist/plugins/import-meta-url.d.ts +16 -0
  140. package/dist/plugins/import-meta-url.js +353 -0
  141. package/dist/plugins/instrumentation-client.d.ts +6 -0
  142. package/dist/plugins/instrumentation-client.js +27 -0
  143. package/dist/plugins/middleware-export-validation.d.ts +5 -0
  144. package/dist/plugins/middleware-export-validation.js +36 -0
  145. package/dist/plugins/middleware-server-only.d.ts +53 -0
  146. package/dist/plugins/middleware-server-only.js +90 -0
  147. package/dist/plugins/og-asset-ownership.d.ts +27 -0
  148. package/dist/plugins/og-asset-ownership.js +285 -0
  149. package/dist/plugins/og-assets.d.ts +50 -0
  150. package/dist/plugins/og-assets.js +229 -0
  151. package/dist/plugins/optimize-imports.d.ts +42 -0
  152. package/dist/plugins/optimize-imports.js +587 -0
  153. package/dist/plugins/postcss.d.ts +26 -0
  154. package/dist/plugins/postcss.js +96 -0
  155. package/dist/plugins/remove-console.d.ts +21 -0
  156. package/dist/plugins/remove-console.js +177 -0
  157. package/dist/plugins/require-context.d.ts +6 -0
  158. package/dist/plugins/require-context.js +185 -0
  159. package/dist/plugins/rsc-client-reference-loaders.d.ts +6 -0
  160. package/dist/plugins/rsc-client-reference-loaders.js +46 -0
  161. package/dist/plugins/rsc-client-shim-excludes.d.ts +6 -0
  162. package/dist/plugins/rsc-client-shim-excludes.js +35 -0
  163. package/dist/plugins/sass.d.ts +62 -0
  164. package/dist/plugins/sass.js +268 -0
  165. package/dist/plugins/server-externals-manifest.d.ts +26 -0
  166. package/dist/plugins/server-externals-manifest.js +81 -0
  167. package/dist/plugins/strip-server-exports.d.ts +21 -0
  168. package/dist/plugins/strip-server-exports.js +519 -0
  169. package/dist/plugins/typeof-window.d.ts +14 -0
  170. package/dist/plugins/typeof-window.js +150 -0
  171. package/dist/plugins/wasm-module-import.d.ts +15 -0
  172. package/dist/plugins/wasm-module-import.js +50 -0
  173. package/dist/routing/app-route-graph.d.ts +336 -0
  174. package/dist/routing/app-route-graph.js +1518 -0
  175. package/dist/routing/app-router.d.ts +30 -0
  176. package/dist/routing/app-router.js +59 -0
  177. package/dist/routing/file-matcher.d.ts +60 -0
  178. package/dist/routing/file-matcher.js +147 -0
  179. package/dist/routing/pages-router.d.ts +48 -0
  180. package/dist/routing/pages-router.js +163 -0
  181. package/dist/routing/route-matching.d.ts +27 -0
  182. package/dist/routing/route-matching.js +42 -0
  183. package/dist/routing/route-pattern.d.ts +64 -0
  184. package/dist/routing/route-pattern.js +165 -0
  185. package/dist/routing/route-trie.d.ts +67 -0
  186. package/dist/routing/route-trie.js +143 -0
  187. package/dist/routing/route-validation.d.ts +10 -0
  188. package/dist/routing/route-validation.js +101 -0
  189. package/dist/routing/utils.d.ts +117 -0
  190. package/dist/routing/utils.js +242 -0
  191. package/dist/server/accept-encoding.d.ts +29 -0
  192. package/dist/server/accept-encoding.js +95 -0
  193. package/dist/server/api-handler.d.ts +17 -0
  194. package/dist/server/api-handler.js +276 -0
  195. package/dist/server/app-action-request.d.ts +4 -0
  196. package/dist/server/app-action-request.js +9 -0
  197. package/dist/server/app-bfcache-id.d.ts +5 -0
  198. package/dist/server/app-bfcache-id.js +5 -0
  199. package/dist/server/app-bfcache-identity.d.ts +36 -0
  200. package/dist/server/app-bfcache-identity.js +156 -0
  201. package/dist/server/app-browser-action-result.d.ts +64 -0
  202. package/dist/server/app-browser-action-result.js +111 -0
  203. package/dist/server/app-browser-client-reuse-manifest.d.ts +12 -0
  204. package/dist/server/app-browser-client-reuse-manifest.js +101 -0
  205. package/dist/server/app-browser-entry.d.ts +1 -0
  206. package/dist/server/app-browser-entry.js +1087 -0
  207. package/dist/server/app-browser-error.d.ts +13 -0
  208. package/dist/server/app-browser-error.js +52 -0
  209. package/dist/server/app-browser-history-controller.d.ts +104 -0
  210. package/dist/server/app-browser-history-controller.js +210 -0
  211. package/dist/server/app-browser-hydration.d.ts +32 -0
  212. package/dist/server/app-browser-hydration.js +29 -0
  213. package/dist/server/app-browser-interception-context.d.ts +24 -0
  214. package/dist/server/app-browser-interception-context.js +43 -0
  215. package/dist/server/app-browser-mpa-navigation.d.ts +16 -0
  216. package/dist/server/app-browser-mpa-navigation.js +42 -0
  217. package/dist/server/app-browser-navigation-controller.d.ts +109 -0
  218. package/dist/server/app-browser-navigation-controller.js +465 -0
  219. package/dist/server/app-browser-popstate.d.ts +26 -0
  220. package/dist/server/app-browser-popstate.js +44 -0
  221. package/dist/server/app-browser-rsc-redirect.d.ts +38 -0
  222. package/dist/server/app-browser-rsc-redirect.js +64 -0
  223. package/dist/server/app-browser-server-action-client.d.ts +32 -0
  224. package/dist/server/app-browser-server-action-client.js +128 -0
  225. package/dist/server/app-browser-server-action-navigation.d.ts +6 -0
  226. package/dist/server/app-browser-server-action-navigation.js +9 -0
  227. package/dist/server/app-browser-state.d.ts +140 -0
  228. package/dist/server/app-browser-state.js +315 -0
  229. package/dist/server/app-browser-stream.d.ts +28 -0
  230. package/dist/server/app-browser-stream.js +122 -0
  231. package/dist/server/app-browser-visible-commit.d.ts +78 -0
  232. package/dist/server/app-browser-visible-commit.js +241 -0
  233. package/dist/server/app-client-reference-preloader.d.ts +14 -0
  234. package/dist/server/app-client-reference-preloader.js +44 -0
  235. package/dist/server/app-elements-wire.d.ts +192 -0
  236. package/dist/server/app-elements-wire.js +443 -0
  237. package/dist/server/app-elements.d.ts +9 -0
  238. package/dist/server/app-elements.js +18 -0
  239. package/dist/server/app-fallback-renderer.d.ts +89 -0
  240. package/dist/server/app-fallback-renderer.js +136 -0
  241. package/dist/server/app-history-state.d.ts +85 -0
  242. package/dist/server/app-history-state.js +223 -0
  243. package/dist/server/app-hook-warning-suppression.d.ts +6 -0
  244. package/dist/server/app-hook-warning-suppression.js +10 -0
  245. package/dist/server/app-inline-css-client.d.ts +6 -0
  246. package/dist/server/app-inline-css-client.js +35 -0
  247. package/dist/server/app-interception-context-header.d.ts +32 -0
  248. package/dist/server/app-interception-context-header.js +42 -0
  249. package/dist/server/app-layout-param-observation.d.ts +43 -0
  250. package/dist/server/app-layout-param-observation.js +168 -0
  251. package/dist/server/app-middleware.d.ts +46 -0
  252. package/dist/server/app-middleware.js +168 -0
  253. package/dist/server/app-mounted-slots-header.d.ts +35 -0
  254. package/dist/server/app-mounted-slots-header.js +58 -0
  255. package/dist/server/app-optimistic-routing.d.ts +53 -0
  256. package/dist/server/app-optimistic-routing.js +227 -0
  257. package/dist/server/app-page-boundary-render.d.ts +85 -0
  258. package/dist/server/app-page-boundary-render.js +305 -0
  259. package/dist/server/app-page-boundary.d.ts +102 -0
  260. package/dist/server/app-page-boundary.js +120 -0
  261. package/dist/server/app-page-cache-finalizer.d.ts +62 -0
  262. package/dist/server/app-page-cache-finalizer.js +122 -0
  263. package/dist/server/app-page-cache-render.d.ts +53 -0
  264. package/dist/server/app-page-cache-render.js +91 -0
  265. package/dist/server/app-page-cache.d.ts +83 -0
  266. package/dist/server/app-page-cache.js +272 -0
  267. package/dist/server/app-page-dispatch.d.ts +223 -0
  268. package/dist/server/app-page-dispatch.js +610 -0
  269. package/dist/server/app-page-element-builder.d.ts +96 -0
  270. package/dist/server/app-page-element-builder.js +205 -0
  271. package/dist/server/app-page-execution.d.ts +138 -0
  272. package/dist/server/app-page-execution.js +328 -0
  273. package/dist/server/app-page-head.d.ts +65 -0
  274. package/dist/server/app-page-head.js +228 -0
  275. package/dist/server/app-page-method.d.ts +15 -0
  276. package/dist/server/app-page-method.js +25 -0
  277. package/dist/server/app-page-params.d.ts +8 -0
  278. package/dist/server/app-page-params.js +39 -0
  279. package/dist/server/app-page-ppr-runtime.d.ts +7 -0
  280. package/dist/server/app-page-ppr-runtime.js +70 -0
  281. package/dist/server/app-page-probe.d.ts +134 -0
  282. package/dist/server/app-page-probe.js +276 -0
  283. package/dist/server/app-page-render-identity.d.ts +21 -0
  284. package/dist/server/app-page-render-identity.js +40 -0
  285. package/dist/server/app-page-render-observation.d.ts +36 -0
  286. package/dist/server/app-page-render-observation.js +82 -0
  287. package/dist/server/app-page-render.d.ts +111 -0
  288. package/dist/server/app-page-render.js +602 -0
  289. package/dist/server/app-page-request.d.ts +137 -0
  290. package/dist/server/app-page-request.js +216 -0
  291. package/dist/server/app-page-response.d.ts +68 -0
  292. package/dist/server/app-page-response.js +120 -0
  293. package/dist/server/app-page-route-wiring.d.ts +151 -0
  294. package/dist/server/app-page-route-wiring.js +452 -0
  295. package/dist/server/app-page-search-params-observation.d.ts +10 -0
  296. package/dist/server/app-page-search-params-observation.js +20 -0
  297. package/dist/server/app-page-segment-state.d.ts +9 -0
  298. package/dist/server/app-page-segment-state.js +80 -0
  299. package/dist/server/app-page-stream.d.ts +151 -0
  300. package/dist/server/app-page-stream.js +143 -0
  301. package/dist/server/app-pages-bridge.d.ts +63 -0
  302. package/dist/server/app-pages-bridge.js +63 -0
  303. package/dist/server/app-post-middleware-context.d.ts +15 -0
  304. package/dist/server/app-post-middleware-context.js +26 -0
  305. package/dist/server/app-ppr-fallback-shell-render.d.ts +18 -0
  306. package/dist/server/app-ppr-fallback-shell-render.js +26 -0
  307. package/dist/server/app-ppr-fallback-shell.d.ts +33 -0
  308. package/dist/server/app-ppr-fallback-shell.js +89 -0
  309. package/dist/server/app-prerender-endpoints.d.ts +18 -0
  310. package/dist/server/app-prerender-endpoints.js +94 -0
  311. package/dist/server/app-prerender-static-params.d.ts +30 -0
  312. package/dist/server/app-prerender-static-params.js +81 -0
  313. package/dist/server/app-render-dependency.d.ts +14 -0
  314. package/dist/server/app-render-dependency.js +41 -0
  315. package/dist/server/app-request-context.d.ts +20 -0
  316. package/dist/server/app-request-context.js +29 -0
  317. package/dist/server/app-route-handler-cache.d.ts +46 -0
  318. package/dist/server/app-route-handler-cache.js +78 -0
  319. package/dist/server/app-route-handler-dispatch.d.ts +49 -0
  320. package/dist/server/app-route-handler-dispatch.js +163 -0
  321. package/dist/server/app-route-handler-execution.d.ts +86 -0
  322. package/dist/server/app-route-handler-execution.js +128 -0
  323. package/dist/server/app-route-handler-policy.d.ts +55 -0
  324. package/dist/server/app-route-handler-policy.js +58 -0
  325. package/dist/server/app-route-handler-response.d.ts +28 -0
  326. package/dist/server/app-route-handler-response.js +145 -0
  327. package/dist/server/app-route-handler-runtime.d.ts +39 -0
  328. package/dist/server/app-route-handler-runtime.js +250 -0
  329. package/dist/server/app-route-module-loader.d.ts +91 -0
  330. package/dist/server/app-route-module-loader.js +83 -0
  331. package/dist/server/app-router-entry.d.ts +13 -0
  332. package/dist/server/app-router-entry.js +49 -0
  333. package/dist/server/app-rsc-cache-busting.d.ts +64 -0
  334. package/dist/server/app-rsc-cache-busting.js +206 -0
  335. package/dist/server/app-rsc-embedded-chunks.d.ts +8 -0
  336. package/dist/server/app-rsc-embedded-chunks.js +32 -0
  337. package/dist/server/app-rsc-error-handler.d.ts +20 -0
  338. package/dist/server/app-rsc-error-handler.js +28 -0
  339. package/dist/server/app-rsc-errors.d.ts +40 -0
  340. package/dist/server/app-rsc-errors.js +60 -0
  341. package/dist/server/app-rsc-handler.d.ts +201 -0
  342. package/dist/server/app-rsc-handler.js +538 -0
  343. package/dist/server/app-rsc-render-mode.d.ts +11 -0
  344. package/dist/server/app-rsc-render-mode.js +25 -0
  345. package/dist/server/app-rsc-request-normalization.d.ts +48 -0
  346. package/dist/server/app-rsc-request-normalization.js +75 -0
  347. package/dist/server/app-rsc-response-finalizer.d.ts +37 -0
  348. package/dist/server/app-rsc-response-finalizer.js +54 -0
  349. package/dist/server/app-rsc-route-matching.d.ts +93 -0
  350. package/dist/server/app-rsc-route-matching.js +134 -0
  351. package/dist/server/app-segment-config.d.ts +46 -0
  352. package/dist/server/app-segment-config.js +113 -0
  353. package/dist/server/app-server-action-execution.d.ts +219 -0
  354. package/dist/server/app-server-action-execution.js +767 -0
  355. package/dist/server/app-ssr-entry.d.ts +52 -0
  356. package/dist/server/app-ssr-entry.js +295 -0
  357. package/dist/server/app-ssr-error-meta.d.ts +13 -0
  358. package/dist/server/app-ssr-error-meta.js +48 -0
  359. package/dist/server/app-ssr-router-instance.d.ts +6 -0
  360. package/dist/server/app-ssr-router-instance.js +24 -0
  361. package/dist/server/app-ssr-stream.d.ts +60 -0
  362. package/dist/server/app-ssr-stream.js +408 -0
  363. package/dist/server/app-static-generation.d.ts +15 -0
  364. package/dist/server/app-static-generation.js +19 -0
  365. package/dist/server/app-visited-response-cache.d.ts +23 -0
  366. package/dist/server/app-visited-response-cache.js +19 -0
  367. package/dist/server/artifact-compatibility.d.ts +54 -0
  368. package/dist/server/artifact-compatibility.js +91 -0
  369. package/dist/server/before-interactive-head.d.ts +17 -0
  370. package/dist/server/before-interactive-head.js +35 -0
  371. package/dist/server/cache-control.d.ts +37 -0
  372. package/dist/server/cache-control.js +56 -0
  373. package/dist/server/cache-headers.d.ts +6 -0
  374. package/dist/server/cache-headers.js +17 -0
  375. package/dist/server/cache-proof.d.ts +364 -0
  376. package/dist/server/cache-proof.js +794 -0
  377. package/dist/server/client-reuse-manifest.d.ts +104 -0
  378. package/dist/server/client-reuse-manifest.js +209 -0
  379. package/dist/server/client-trace-metadata.d.ts +30 -0
  380. package/dist/server/client-trace-metadata.js +81 -0
  381. package/dist/server/cookie-utils.d.ts +12 -0
  382. package/dist/server/cookie-utils.js +18 -0
  383. package/dist/server/csp.d.ts +10 -0
  384. package/dist/server/csp.js +41 -0
  385. package/dist/server/default-global-error-module.d.ts +19 -0
  386. package/dist/server/default-global-error-module.js +18 -0
  387. package/dist/server/default-not-found-module.d.ts +19 -0
  388. package/dist/server/default-not-found-module.js +18 -0
  389. package/dist/server/defer-until-stream-consumed.d.ts +7 -0
  390. package/dist/server/defer-until-stream-consumed.js +34 -0
  391. package/dist/server/dev-error-overlay-store.d.ts +39 -0
  392. package/dist/server/dev-error-overlay-store.js +86 -0
  393. package/dist/server/dev-error-overlay.d.ts +51 -0
  394. package/dist/server/dev-error-overlay.js +1341 -0
  395. package/dist/server/dev-initial-server-error.d.ts +9 -0
  396. package/dist/server/dev-initial-server-error.js +26 -0
  397. package/dist/server/dev-lockfile.d.ts +109 -0
  398. package/dist/server/dev-lockfile.js +179 -0
  399. package/dist/server/dev-module-runner.d.ts +30 -0
  400. package/dist/server/dev-module-runner.js +91 -0
  401. package/dist/server/dev-origin-check.d.ts +62 -0
  402. package/dist/server/dev-origin-check.js +156 -0
  403. package/dist/server/dev-route-files.d.ts +6 -0
  404. package/dist/server/dev-route-files.js +71 -0
  405. package/dist/server/dev-server.d.ts +58 -0
  406. package/dist/server/dev-server.js +1114 -0
  407. package/dist/server/dev-stack-sourcemap-endpoint.d.ts +4 -0
  408. package/dist/server/dev-stack-sourcemap-endpoint.js +4 -0
  409. package/dist/server/dev-stack-sourcemap.d.ts +43 -0
  410. package/dist/server/dev-stack-sourcemap.js +443 -0
  411. package/dist/server/document-initial-head.d.ts +6 -0
  412. package/dist/server/document-initial-head.js +33 -0
  413. package/dist/server/edge-api-runtime.d.ts +4 -0
  414. package/dist/server/edge-api-runtime.js +6 -0
  415. package/dist/server/file-based-metadata.d.ts +29 -0
  416. package/dist/server/file-based-metadata.js +401 -0
  417. package/dist/server/headers.d.ts +114 -0
  418. package/dist/server/headers.js +136 -0
  419. package/dist/server/html.d.ts +28 -0
  420. package/dist/server/html.js +41 -0
  421. package/dist/server/http-error-responses.d.ts +91 -0
  422. package/dist/server/http-error-responses.js +105 -0
  423. package/dist/server/hybrid-route-priority.d.ts +22 -0
  424. package/dist/server/hybrid-route-priority.js +33 -0
  425. package/dist/server/image-optimization.d.ts +130 -0
  426. package/dist/server/image-optimization.js +247 -0
  427. package/dist/server/implicit-tags.d.ts +6 -0
  428. package/dist/server/implicit-tags.js +44 -0
  429. package/dist/server/instrumentation-runtime.d.ts +49 -0
  430. package/dist/server/instrumentation-runtime.js +35 -0
  431. package/dist/server/instrumentation.d.ts +85 -0
  432. package/dist/server/instrumentation.js +130 -0
  433. package/dist/server/isr-cache.d.ts +127 -0
  434. package/dist/server/isr-cache.js +282 -0
  435. package/dist/server/isr-decision.d.ts +79 -0
  436. package/dist/server/isr-decision.js +70 -0
  437. package/dist/server/metadata-route-build-data.d.ts +24 -0
  438. package/dist/server/metadata-route-build-data.js +148 -0
  439. package/dist/server/metadata-route-response.d.ts +16 -0
  440. package/dist/server/metadata-route-response.js +205 -0
  441. package/dist/server/metadata-routes.d.ts +139 -0
  442. package/dist/server/metadata-routes.js +433 -0
  443. package/dist/server/middleware-matcher.d.ts +14 -0
  444. package/dist/server/middleware-matcher.js +111 -0
  445. package/dist/server/middleware-request-headers.d.ts +11 -0
  446. package/dist/server/middleware-request-headers.js +65 -0
  447. package/dist/server/middleware-response-headers.d.ts +12 -0
  448. package/dist/server/middleware-response-headers.js +42 -0
  449. package/dist/server/middleware-runtime.d.ts +67 -0
  450. package/dist/server/middleware-runtime.js +240 -0
  451. package/dist/server/middleware.d.ts +62 -0
  452. package/dist/server/middleware.js +114 -0
  453. package/dist/server/navigation-planner.d.ts +308 -0
  454. package/dist/server/navigation-planner.js +831 -0
  455. package/dist/server/navigation-trace.d.ts +68 -0
  456. package/dist/server/navigation-trace.js +71 -0
  457. package/dist/server/next-error-digest.d.ts +44 -0
  458. package/dist/server/next-error-digest.js +40 -0
  459. package/dist/server/normalize-path.d.ts +38 -0
  460. package/dist/server/normalize-path.js +70 -0
  461. package/dist/server/open-redirect.d.ts +12 -0
  462. package/dist/server/open-redirect.js +21 -0
  463. package/dist/server/operation-token.d.ts +40 -0
  464. package/dist/server/operation-token.js +85 -0
  465. package/dist/server/otel-tracer-extension.d.ts +45 -0
  466. package/dist/server/otel-tracer-extension.js +89 -0
  467. package/dist/server/pages-api-route.d.ts +83 -0
  468. package/dist/server/pages-api-route.js +75 -0
  469. package/dist/server/pages-asset-tags.d.ts +78 -0
  470. package/dist/server/pages-asset-tags.js +126 -0
  471. package/dist/server/pages-body-parser-config.d.ts +59 -0
  472. package/dist/server/pages-body-parser-config.js +77 -0
  473. package/dist/server/pages-data-route.d.ts +121 -0
  474. package/dist/server/pages-data-route.js +157 -0
  475. package/dist/server/pages-default-404.d.ts +30 -0
  476. package/dist/server/pages-default-404.js +38 -0
  477. package/dist/server/pages-dev-module-url.d.ts +4 -0
  478. package/dist/server/pages-dev-module-url.js +15 -0
  479. package/dist/server/pages-document-initial-props.d.ts +77 -0
  480. package/dist/server/pages-document-initial-props.js +109 -0
  481. package/dist/server/pages-get-initial-props.d.ts +67 -0
  482. package/dist/server/pages-get-initial-props.js +92 -0
  483. package/dist/server/pages-i18n.d.ts +106 -0
  484. package/dist/server/pages-i18n.js +183 -0
  485. package/dist/server/pages-media-type.d.ts +15 -0
  486. package/dist/server/pages-media-type.js +24 -0
  487. package/dist/server/pages-node-compat.d.ts +55 -0
  488. package/dist/server/pages-node-compat.js +235 -0
  489. package/dist/server/pages-page-data.d.ts +223 -0
  490. package/dist/server/pages-page-data.js +484 -0
  491. package/dist/server/pages-page-handler.d.ts +100 -0
  492. package/dist/server/pages-page-handler.js +403 -0
  493. package/dist/server/pages-page-method.d.ts +47 -0
  494. package/dist/server/pages-page-method.js +17 -0
  495. package/dist/server/pages-page-response.d.ts +138 -0
  496. package/dist/server/pages-page-response.js +285 -0
  497. package/dist/server/pages-readiness.d.ts +36 -0
  498. package/dist/server/pages-readiness.js +21 -0
  499. package/dist/server/pages-request-pipeline.d.ts +116 -0
  500. package/dist/server/pages-request-pipeline.js +311 -0
  501. package/dist/server/pages-revalidate.d.ts +15 -0
  502. package/dist/server/pages-revalidate.js +19 -0
  503. package/dist/server/pages-serializable-props.d.ts +24 -0
  504. package/dist/server/pages-serializable-props.js +67 -0
  505. package/dist/server/pregenerated-concrete-paths.d.ts +16 -0
  506. package/dist/server/pregenerated-concrete-paths.js +61 -0
  507. package/dist/server/prerender-manifest.d.ts +33 -0
  508. package/dist/server/prerender-manifest.js +54 -0
  509. package/dist/server/prerender-route-params.d.ts +23 -0
  510. package/dist/server/prerender-route-params.js +113 -0
  511. package/dist/server/prerender-work-unit-setup.d.ts +6 -0
  512. package/dist/server/prerender-work-unit-setup.js +28 -0
  513. package/dist/server/prod-server.d.ts +148 -0
  514. package/dist/server/prod-server.js +1136 -0
  515. package/dist/server/proxy-trust.d.ts +40 -0
  516. package/dist/server/proxy-trust.js +68 -0
  517. package/dist/server/request-log.d.ts +39 -0
  518. package/dist/server/request-log.js +56 -0
  519. package/dist/server/request-pipeline.d.ts +187 -0
  520. package/dist/server/request-pipeline.js +447 -0
  521. package/dist/server/rsc-stream-hints.d.ts +10 -0
  522. package/dist/server/rsc-stream-hints.js +41 -0
  523. package/dist/server/seed-cache.d.ts +29 -0
  524. package/dist/server/seed-cache.js +125 -0
  525. package/dist/server/server-action-not-found.d.ts +21 -0
  526. package/dist/server/server-action-not-found.js +62 -0
  527. package/dist/server/server-globals.d.ts +4 -0
  528. package/dist/server/server-globals.js +35 -0
  529. package/dist/server/skip-cache-proof.d.ts +61 -0
  530. package/dist/server/skip-cache-proof.js +168 -0
  531. package/dist/server/socket-error-backstop.d.ts +34 -0
  532. package/dist/server/socket-error-backstop.js +200 -0
  533. package/dist/server/static-file-cache.d.ts +56 -0
  534. package/dist/server/static-file-cache.js +231 -0
  535. package/dist/server/static-layout-client-reuse-proof.d.ts +15 -0
  536. package/dist/server/static-layout-client-reuse-proof.js +33 -0
  537. package/dist/server/streaming-metadata.d.ts +4 -0
  538. package/dist/server/streaming-metadata.js +8 -0
  539. package/dist/server/worker-utils.d.ts +7 -0
  540. package/dist/server/worker-utils.js +99 -0
  541. package/dist/shims/amp.d.ts +19 -0
  542. package/dist/shims/amp.js +23 -0
  543. package/dist/shims/app-router-scroll-state.d.ts +15 -0
  544. package/dist/shims/app-router-scroll-state.js +61 -0
  545. package/dist/shims/app-router-scroll.d.ts +29 -0
  546. package/dist/shims/app-router-scroll.js +141 -0
  547. package/dist/shims/app.d.ts +42 -0
  548. package/dist/shims/app.js +48 -0
  549. package/dist/shims/before-interactive-context.d.ts +40 -0
  550. package/dist/shims/before-interactive-context.js +8 -0
  551. package/dist/shims/cache-for-request.d.ts +57 -0
  552. package/dist/shims/cache-for-request.js +72 -0
  553. package/dist/shims/cache-handler.d.ts +106 -0
  554. package/dist/shims/cache-handler.js +176 -0
  555. package/dist/shims/cache-request-state.d.ts +47 -0
  556. package/dist/shims/cache-request-state.js +126 -0
  557. package/dist/shims/cache-runtime.d.ts +83 -0
  558. package/dist/shims/cache-runtime.js +452 -0
  559. package/dist/shims/cache.d.ts +145 -0
  560. package/dist/shims/cache.js +401 -0
  561. package/dist/shims/cdn-cache.d.ts +125 -0
  562. package/dist/shims/cdn-cache.js +100 -0
  563. package/dist/shims/client-hook-error.d.ts +13 -0
  564. package/dist/shims/client-hook-error.js +17 -0
  565. package/dist/shims/client-locale.d.ts +14 -0
  566. package/dist/shims/client-locale.js +11 -0
  567. package/dist/shims/client-only.d.ts +1 -0
  568. package/dist/shims/client-only.js +1 -0
  569. package/dist/shims/compat-router.d.ts +16 -0
  570. package/dist/shims/compat-router.js +25 -0
  571. package/dist/shims/config.d.ts +28 -0
  572. package/dist/shims/config.js +21 -0
  573. package/dist/shims/constants.d.ts +130 -0
  574. package/dist/shims/constants.js +167 -0
  575. package/dist/shims/default-global-error.d.ts +31 -0
  576. package/dist/shims/default-global-error.js +179 -0
  577. package/dist/shims/default-not-found.d.ts +11 -0
  578. package/dist/shims/default-not-found.js +59 -0
  579. package/dist/shims/document.d.ts +92 -0
  580. package/dist/shims/document.js +76 -0
  581. package/dist/shims/dynamic-preload-chunks.d.ts +8 -0
  582. package/dist/shims/dynamic-preload-chunks.js +79 -0
  583. package/dist/shims/dynamic.d.ts +35 -0
  584. package/dist/shims/dynamic.js +204 -0
  585. package/dist/shims/error-boundary-navigation.d.ts +7 -0
  586. package/dist/shims/error-boundary-navigation.js +44 -0
  587. package/dist/shims/error-boundary.d.ts +155 -0
  588. package/dist/shims/error-boundary.js +342 -0
  589. package/dist/shims/error.d.ts +31 -0
  590. package/dist/shims/error.js +123 -0
  591. package/dist/shims/error.react-server.d.ts +9 -0
  592. package/dist/shims/error.react-server.js +6 -0
  593. package/dist/shims/fetch-cache.d.ts +136 -0
  594. package/dist/shims/fetch-cache.js +766 -0
  595. package/dist/shims/font-google-base.d.ts +83 -0
  596. package/dist/shims/font-google-base.js +290 -0
  597. package/dist/shims/font-google.d.ts +2 -0
  598. package/dist/shims/font-google.js +2 -0
  599. package/dist/shims/font-local.d.ts +50 -0
  600. package/dist/shims/font-local.js +195 -0
  601. package/dist/shims/font-utils.d.ts +56 -0
  602. package/dist/shims/font-utils.js +107 -0
  603. package/dist/shims/form.d.ts +19 -0
  604. package/dist/shims/form.js +236 -0
  605. package/dist/shims/hash-scroll.d.ts +10 -0
  606. package/dist/shims/hash-scroll.js +47 -0
  607. package/dist/shims/head-state.d.ts +16 -0
  608. package/dist/shims/head-state.js +43 -0
  609. package/dist/shims/head.d.ts +73 -0
  610. package/dist/shims/head.js +340 -0
  611. package/dist/shims/headers.d.ts +253 -0
  612. package/dist/shims/headers.js +754 -0
  613. package/dist/shims/i18n-context.d.ts +22 -0
  614. package/dist/shims/i18n-context.js +42 -0
  615. package/dist/shims/i18n-state.d.ts +14 -0
  616. package/dist/shims/i18n-state.js +38 -0
  617. package/dist/shims/image-config.d.ts +45 -0
  618. package/dist/shims/image-config.js +85 -0
  619. package/dist/shims/image.d.ts +55 -0
  620. package/dist/shims/image.js +582 -0
  621. package/dist/shims/internal/als-registry.d.ts +14 -0
  622. package/dist/shims/internal/als-registry.js +80 -0
  623. package/dist/shims/internal/api-utils.d.ts +14 -0
  624. package/dist/shims/internal/api-utils.js +1 -0
  625. package/dist/shims/internal/app-page-props-cache-key.d.ts +5 -0
  626. package/dist/shims/internal/app-page-props-cache-key.js +16 -0
  627. package/dist/shims/internal/app-route-detection.d.ts +39 -0
  628. package/dist/shims/internal/app-route-detection.js +62 -0
  629. package/dist/shims/internal/app-router-context.d.ts +31 -0
  630. package/dist/shims/internal/app-router-context.js +28 -0
  631. package/dist/shims/internal/cookie-serialize.d.ts +45 -0
  632. package/dist/shims/internal/cookie-serialize.js +49 -0
  633. package/dist/shims/internal/cookies.d.ts +2 -0
  634. package/dist/shims/internal/cookies.js +2 -0
  635. package/dist/shims/internal/hybrid-client-route-owner.d.ts +31 -0
  636. package/dist/shims/internal/hybrid-client-route-owner.js +143 -0
  637. package/dist/shims/internal/interpolate-as.d.ts +25 -0
  638. package/dist/shims/internal/interpolate-as.js +196 -0
  639. package/dist/shims/internal/link-status-registry.d.ts +43 -0
  640. package/dist/shims/internal/link-status-registry.js +42 -0
  641. package/dist/shims/internal/make-hanging-promise.d.ts +15 -0
  642. package/dist/shims/internal/make-hanging-promise.js +44 -0
  643. package/dist/shims/internal/navigation-untracked.d.ts +35 -0
  644. package/dist/shims/internal/navigation-untracked.js +56 -0
  645. package/dist/shims/internal/pages-data-fetch-dedup.d.ts +54 -0
  646. package/dist/shims/internal/pages-data-fetch-dedup.js +121 -0
  647. package/dist/shims/internal/pages-data-target.d.ts +62 -0
  648. package/dist/shims/internal/pages-data-target.js +98 -0
  649. package/dist/shims/internal/pages-data-url.d.ts +41 -0
  650. package/dist/shims/internal/pages-data-url.js +71 -0
  651. package/dist/shims/internal/pages-router-accessor.d.ts +19 -0
  652. package/dist/shims/internal/pages-router-accessor.js +13 -0
  653. package/dist/shims/internal/route-pattern-for-warning.d.ts +27 -0
  654. package/dist/shims/internal/route-pattern-for-warning.js +40 -0
  655. package/dist/shims/internal/router-context.d.ts +7 -0
  656. package/dist/shims/internal/router-context.js +13 -0
  657. package/dist/shims/internal/utils.d.ts +52 -0
  658. package/dist/shims/internal/utils.js +27 -0
  659. package/dist/shims/internal/work-unit-async-storage.d.ts +30 -0
  660. package/dist/shims/internal/work-unit-async-storage.js +17 -0
  661. package/dist/shims/layout-segment-context.d.ts +24 -0
  662. package/dist/shims/layout-segment-context.js +39 -0
  663. package/dist/shims/legacy-image.d.ts +41 -0
  664. package/dist/shims/legacy-image.js +49 -0
  665. package/dist/shims/link-prefetch.d.ts +41 -0
  666. package/dist/shims/link-prefetch.js +43 -0
  667. package/dist/shims/link.d.ts +102 -0
  668. package/dist/shims/link.js +687 -0
  669. package/dist/shims/metadata.d.ts +285 -0
  670. package/dist/shims/metadata.js +820 -0
  671. package/dist/shims/navigation-context-state.d.ts +40 -0
  672. package/dist/shims/navigation-context-state.js +116 -0
  673. package/dist/shims/navigation-errors.d.ts +55 -0
  674. package/dist/shims/navigation-errors.js +110 -0
  675. package/dist/shims/navigation-server.d.ts +3 -0
  676. package/dist/shims/navigation-server.js +3 -0
  677. package/dist/shims/navigation-state.d.ts +25 -0
  678. package/dist/shims/navigation-state.js +66 -0
  679. package/dist/shims/navigation.d.ts +286 -0
  680. package/dist/shims/navigation.js +1206 -0
  681. package/dist/shims/navigation.react-server.d.ts +14 -0
  682. package/dist/shims/navigation.react-server.js +32 -0
  683. package/dist/shims/offline.d.ts +4 -0
  684. package/dist/shims/offline.js +15 -0
  685. package/dist/shims/og.d.ts +17 -0
  686. package/dist/shims/og.js +48 -0
  687. package/dist/shims/pages-router-runtime.d.ts +12 -0
  688. package/dist/shims/pages-router-runtime.js +24 -0
  689. package/dist/shims/ppr-fallback-shell.d.ts +33 -0
  690. package/dist/shims/ppr-fallback-shell.js +170 -0
  691. package/dist/shims/readonly-url-search-params.d.ts +13 -0
  692. package/dist/shims/readonly-url-search-params.js +26 -0
  693. package/dist/shims/request-context.d.ts +58 -0
  694. package/dist/shims/request-context.js +45 -0
  695. package/dist/shims/request-state-types.d.ts +12 -0
  696. package/dist/shims/request-state-types.js +1 -0
  697. package/dist/shims/root-params.d.ts +12 -0
  698. package/dist/shims/root-params.js +30 -0
  699. package/dist/shims/router-state.d.ts +32 -0
  700. package/dist/shims/router-state.js +39 -0
  701. package/dist/shims/router.d.ts +192 -0
  702. package/dist/shims/router.js +1786 -0
  703. package/dist/shims/script-nonce-context.d.ts +11 -0
  704. package/dist/shims/script-nonce-context.js +23 -0
  705. package/dist/shims/script.d.ts +43 -0
  706. package/dist/shims/script.js +370 -0
  707. package/dist/shims/server-only.d.ts +1 -0
  708. package/dist/shims/server-only.js +1 -0
  709. package/dist/shims/server.d.ts +323 -0
  710. package/dist/shims/server.js +729 -0
  711. package/dist/shims/slot.d.ts +45 -0
  712. package/dist/shims/slot.js +230 -0
  713. package/dist/shims/thenable-params.d.ts +11 -0
  714. package/dist/shims/thenable-params.js +176 -0
  715. package/dist/shims/unified-request-context.d.ts +68 -0
  716. package/dist/shims/unified-request-context.js +86 -0
  717. package/dist/shims/unrecognized-action-error.d.ts +34 -0
  718. package/dist/shims/unrecognized-action-error.js +39 -0
  719. package/dist/shims/url-safety.d.ts +34 -0
  720. package/dist/shims/url-safety.js +70 -0
  721. package/dist/shims/url-utils.d.ts +51 -0
  722. package/dist/shims/url-utils.js +156 -0
  723. package/dist/shims/use-merged-ref.d.ts +6 -0
  724. package/dist/shims/use-merged-ref.js +38 -0
  725. package/dist/shims/web-vitals.d.ts +8 -0
  726. package/dist/shims/web-vitals.js +22 -0
  727. package/dist/typegen.d.ts +9 -0
  728. package/dist/typegen.js +228 -0
  729. package/dist/utils/asset-prefix.d.ts +96 -0
  730. package/dist/utils/asset-prefix.js +122 -0
  731. package/dist/utils/base-path.d.ts +31 -0
  732. package/dist/utils/base-path.js +45 -0
  733. package/dist/utils/built-asset-url.d.ts +4 -0
  734. package/dist/utils/built-asset-url.js +11 -0
  735. package/dist/utils/cache-control-metadata.d.ts +4 -0
  736. package/dist/utils/cache-control-metadata.js +12 -0
  737. package/dist/utils/client-build-manifest.d.ts +21 -0
  738. package/dist/utils/client-build-manifest.js +87 -0
  739. package/dist/utils/client-entry-manifest.d.ts +11 -0
  740. package/dist/utils/client-entry-manifest.js +29 -0
  741. package/dist/utils/client-runtime-metadata.d.ts +45 -0
  742. package/dist/utils/client-runtime-metadata.js +63 -0
  743. package/dist/utils/commonjs-loader.d.ts +16 -0
  744. package/dist/utils/commonjs-loader.js +100 -0
  745. package/dist/utils/compare.d.ts +4 -0
  746. package/dist/utils/compare.js +8 -0
  747. package/dist/utils/deployment-id.d.ts +8 -0
  748. package/dist/utils/deployment-id.js +22 -0
  749. package/dist/utils/dev-error-recovery-event.d.ts +4 -0
  750. package/dist/utils/dev-error-recovery-event.js +4 -0
  751. package/dist/utils/domain-locale.d.ts +26 -0
  752. package/dist/utils/domain-locale.js +50 -0
  753. package/dist/utils/encode-cache-tag.d.ts +30 -0
  754. package/dist/utils/encode-cache-tag.js +36 -0
  755. package/dist/utils/error-cause.d.ts +4 -0
  756. package/dist/utils/error-cause.js +95 -0
  757. package/dist/utils/has-trailing-comma.d.ts +24 -0
  758. package/dist/utils/has-trailing-comma.js +62 -0
  759. package/dist/utils/hash.d.ts +24 -0
  760. package/dist/utils/hash.js +55 -0
  761. package/dist/utils/html-limited-bots.d.ts +21 -0
  762. package/dist/utils/html-limited-bots.js +35 -0
  763. package/dist/utils/lazy-chunks.d.ts +59 -0
  764. package/dist/utils/lazy-chunks.js +112 -0
  765. package/dist/utils/manifest-paths.d.ts +30 -0
  766. package/dist/utils/manifest-paths.js +66 -0
  767. package/dist/utils/mdx-scan.d.ts +9 -0
  768. package/dist/utils/mdx-scan.js +34 -0
  769. package/dist/utils/navigation-signal.d.ts +4 -0
  770. package/dist/utils/navigation-signal.js +12 -0
  771. package/dist/utils/number.d.ts +4 -0
  772. package/dist/utils/number.js +6 -0
  773. package/dist/utils/parse-cookie.d.ts +13 -0
  774. package/dist/utils/parse-cookie.js +52 -0
  775. package/dist/utils/path.d.ts +22 -0
  776. package/dist/utils/path.js +30 -0
  777. package/dist/utils/prerender-output-paths.d.ts +14 -0
  778. package/dist/utils/prerender-output-paths.js +22 -0
  779. package/dist/utils/project.d.ts +76 -0
  780. package/dist/utils/project.js +213 -0
  781. package/dist/utils/promise.d.ts +4 -0
  782. package/dist/utils/promise.js +6 -0
  783. package/dist/utils/public-routes.d.ts +4 -0
  784. package/dist/utils/public-routes.js +48 -0
  785. package/dist/utils/query.d.ts +49 -0
  786. package/dist/utils/query.js +122 -0
  787. package/dist/utils/record.d.ts +4 -0
  788. package/dist/utils/record.js +6 -0
  789. package/dist/utils/regex.d.ts +4 -0
  790. package/dist/utils/regex.js +6 -0
  791. package/dist/utils/safe-json-file.d.ts +17 -0
  792. package/dist/utils/safe-json-file.js +23 -0
  793. package/dist/utils/sorted-array.d.ts +8 -0
  794. package/dist/utils/sorted-array.js +20 -0
  795. package/dist/utils/text-stream.d.ts +28 -0
  796. package/dist/utils/text-stream.js +64 -0
  797. package/dist/utils/vinext-root.d.ts +23 -0
  798. package/dist/utils/vinext-root.js +29 -0
  799. package/dist/utils/virtual-module.d.ts +5 -0
  800. package/dist/utils/virtual-module.js +0 -0
  801. package/dist/utils/vite-version.d.ts +21 -0
  802. package/dist/utils/vite-version.js +42 -0
  803. package/package.json +145 -0
@@ -0,0 +1,401 @@
1
+ import { getOrCreateAls } from "./internal/als-registry.js";
2
+ import { getRequestContext, isInsideUnifiedScope } from "./unified-request-context.js";
3
+ import { getRequestExecutionContext, runWithExecutionContext } from "./request-context.js";
4
+ import { MemoryCacheHandler, NoOpCacheHandler, configureMemoryCacheHandler, getCacheHandler, getDataCacheHandler, setCacheHandler, setDataCacheHandler } from "./cache-handler.js";
5
+ import { getCdnCacheAdapter } from "./cdn-cache.js";
6
+ import { fnv1a64 } from "../utils/hash.js";
7
+ import { makeHangingPromise } from "./internal/make-hanging-promise.js";
8
+ import { getHeadersAccessPhase, markDynamicUsage } from "./headers.js";
9
+ import { ACTION_DID_REVALIDATE_DYNAMIC_ONLY, ACTION_DID_REVALIDATE_STATIC_AND_DYNAMIC, _consumeRequestScopedCacheLife, _initRequestScopedCacheState, _peekRequestScopedCacheLife, _peekUnstableCacheObservations, _registerCacheContextAccessor, _runWithCacheState, _setRequestScopedCacheLife, cacheLifeProfiles, getAndClearActionRevalidationKind, getRegisteredCacheContext, markActionRevalidation, recordUnstableCacheObservation, shouldServeStaleUnstableCacheEntry } from "./cache-request-state.js";
10
+ import { encodeCacheTag, encodeCacheTags } from "../utils/encode-cache-tag.js";
11
+ import { workUnitAsyncStorage } from "./internal/work-unit-async-storage.js";
12
+ //#region src/shims/cache.ts
13
+ /**
14
+ * next/cache shim
15
+ *
16
+ * Provides the Next.js caching API surface: revalidateTag, revalidatePath,
17
+ * unstable_cache. Backed by a pluggable CacheHandler that defaults to
18
+ * in-memory but can be swapped for Cloudflare KV, Redis, DynamoDB, etc.
19
+ *
20
+ * The CacheHandler interface matches Next.js 16's CacheHandler class, so
21
+ * existing community adapters (@neshca/cache-handler, @opennextjs/aws, etc.)
22
+ * can be used directly.
23
+ *
24
+ * Recommended configuration is declarative, via the `cache` option on the
25
+ * `vinext()` plugin in vite.config.ts:
26
+ * import { kvDataAdapter } from '@vinext/cloudflare/cache/kv-data-adapter';
27
+ * vinext({ cache: { data: kvDataAdapter({ binding: 'VINEXT_KV_CACHE' }) } })
28
+ *
29
+ * The imperative `setCacheHandler` / `setDataCacheHandler` setters are
30
+ * deprecated for consumers and retained only as the internal registration
31
+ * target used by the generated cache-adapter module.
32
+ */
33
+ const _g = globalThis;
34
+ /**
35
+ * Revalidate cached data associated with a specific cache tag.
36
+ *
37
+ * Works with both `fetch(..., { next: { tags: ['myTag'] } })` and
38
+ * `unstable_cache(fn, keys, { tags: ['myTag'] })`.
39
+ *
40
+ * Next.js 16 updated signature: accepts a cacheLife profile as second argument
41
+ * for stale-while-revalidate (SWR) behavior. The single-argument form is
42
+ * deprecated but still supported for backward compatibility.
43
+ *
44
+ * @param tag - Cache tag to revalidate
45
+ * @param profile - cacheLife profile name (e.g. 'max', 'hours') or inline { expire: number }
46
+ */
47
+ async function revalidateTag(tag, profile) {
48
+ let durations;
49
+ if (typeof profile === "string") {
50
+ const resolved = cacheLifeProfiles[profile];
51
+ if (resolved) durations = { expire: resolved.expire };
52
+ } else if (profile && typeof profile === "object") durations = profile;
53
+ if (!profile || !durations || durations.expire === 0) markActionRevalidation(1);
54
+ await _invalidateEncodedTag(encodeCacheTag(tag), durations);
55
+ }
56
+ /**
57
+ * Invalidate one already-encoded tag across both cache layers.
58
+ *
59
+ * Ordering is intentional and load-bearing: invalidate the data cache store
60
+ * FIRST (covers fetch data, `"use cache"`, and page entries stored there by the
61
+ * default CDN adapter), THEN ask the CDN adapter to purge its edge (a no-op for
62
+ * the default adapter). Purging the edge before the store is invalidated would
63
+ * let the edge re-fetch and re-cache stale data.
64
+ */
65
+ async function _invalidateEncodedTag(encoded, durations) {
66
+ await getDataCacheHandler().revalidateTag(encoded, durations);
67
+ await getCdnCacheAdapter().revalidateTag(encoded, durations);
68
+ }
69
+ /**
70
+ * Revalidate cached data associated with a specific path.
71
+ *
72
+ * Invalidation works through implicit tags generated at render time by
73
+ * `buildAppPageCacheTags`, matching Next.js's getDerivedTags:
74
+ *
75
+ * - `type: "layout"` → invalidates `_N_T_<path>/layout`, cascading to all
76
+ * descendant pages (they carry ancestor layout tags from render time).
77
+ * - `type: "page"` → invalidates `_N_T_<path>/page`, targeting only the
78
+ * exact route's page component.
79
+ * - No type → invalidates `_N_T_<path>` (broader, exact path).
80
+ *
81
+ * The `type` parameter is App Router only — Pages Router does not generate
82
+ * layout/page hierarchy tags, so only no-type invalidation applies there.
83
+ */
84
+ async function revalidatePath(path, type) {
85
+ markActionRevalidation(1);
86
+ const stem = path.endsWith("/") ? path.slice(0, -1) : path;
87
+ await _invalidateEncodedTag(encodeCacheTag(type ? `_N_T_${stem}/${type}` : `_N_T_${stem || "/"}`));
88
+ }
89
+ /**
90
+ * No-op shim for API compatibility.
91
+ *
92
+ * In Next.js, calling `refresh()` inside a Server Action triggers a
93
+ * client-side router refresh so the user immediately sees updated data.
94
+ * vinext reports the dynamic-only invalidation through the Server Action
95
+ * response header that the client router already understands.
96
+ */
97
+ function refresh() {
98
+ markActionRevalidation(2);
99
+ }
100
+ /**
101
+ * Expire a cache tag immediately (Next.js 16).
102
+ *
103
+ * Server Actions-only API that expires a tag so the next request
104
+ * fetches fresh data. Unlike `revalidateTag`, which uses stale-while-revalidate,
105
+ * `updateTag` invalidates synchronously within the same request context.
106
+ *
107
+ * Throws if called outside a Server Action — e.g. from a Route Handler or
108
+ * during render — matching Next.js's enforcement. For Route Handlers, callers
109
+ * should use `revalidateTag` instead.
110
+ *
111
+ * @see https://nextjs.org/docs/app/api-reference/functions/updateTag
112
+ */
113
+ async function updateTag(tag) {
114
+ if (getHeadersAccessPhase() !== "action") throw new Error("updateTag can only be called from within a Server Action. To invalidate cache tags in Route Handlers or other contexts, use revalidateTag instead. See more info here: https://nextjs.org/docs/app/api-reference/functions/updateTag");
115
+ markActionRevalidation(1);
116
+ await _invalidateEncodedTag(encodeCacheTag(tag));
117
+ }
118
+ /**
119
+ * Opt out of static rendering and indicate a particular component should not be cached.
120
+ *
121
+ * In Next.js, calling noStore() inside a Server Component ensures the component
122
+ * is dynamically rendered. In our implementation, this is a no-op since we don't
123
+ * have the same static/dynamic rendering split — all server rendering is on-demand.
124
+ * It's provided for API compatibility so apps importing it don't break.
125
+ */
126
+ function unstable_noStore() {
127
+ markDynamicUsage();
128
+ }
129
+ /**
130
+ * A fulfilled thenable that React can unwrap synchronously via `use()`
131
+ * without ever suspending. Reusing a single instance avoids allocating
132
+ * on every call — matching Next.js's browser/client implementation.
133
+ *
134
+ * @see https://github.com/vercel/next.js/blob/canary/packages/next/src/client/request/io.browser.ts
135
+ */
136
+ const _resolvedIOPromise = Promise.resolve(void 0);
137
+ _resolvedIOPromise.status = "fulfilled";
138
+ _resolvedIOPromise.value = void 0;
139
+ /**
140
+ * Marks an IO boundary in server components by returning a resolved promise
141
+ * during requests and a hanging promise during prerendering.
142
+ *
143
+ * See: https://github.com/vercel/next.js/pull/92521
144
+ * Guard removed: https://github.com/vercel/next.js/pull/92923
145
+ * Stabilized (renamed from unstable_io): https://github.com/vercel/next.js/pull/93621
146
+ *
147
+ * Ported from Next.js: packages/next/src/server/request/io.ts
148
+ * https://github.com/vercel/next.js/blob/canary/packages/next/src/server/request/io.ts
149
+ *
150
+ * Behavior by work unit type:
151
+ * - request → resolve immediately (no delay needed for dynamic SSR)
152
+ * - prerender / prerender-client / prerender-runtime → hang (prevent
153
+ * execution past IO boundary during static generation)
154
+ * - cache / private-cache / unstable-cache → resolve immediately
155
+ * (caches capture IO results at fill time)
156
+ * - generate-static-params → resolve immediately (build time, no prerender to stall)
157
+ * - prerender-legacy → resolve immediately (no cache components)
158
+ *
159
+ * When no work unit store is present (e.g. client-side, standalone script),
160
+ * resolves immediately — matching the browser/client implementation.
161
+ */
162
+ function io() {
163
+ const workUnitStore = workUnitAsyncStorage.getStore();
164
+ if (workUnitStore) switch (workUnitStore.type) {
165
+ case "request": return _resolvedIOPromise;
166
+ case "prerender":
167
+ case "prerender-client":
168
+ case "prerender-runtime": return makeHangingPromise(workUnitStore.renderSignal, workUnitStore.route ?? "unknown", "`io()`");
169
+ case "cache":
170
+ case "private-cache":
171
+ case "unstable-cache":
172
+ case "generate-static-params":
173
+ case "prerender-legacy": return _resolvedIOPromise;
174
+ default: return _resolvedIOPromise;
175
+ }
176
+ return _resolvedIOPromise;
177
+ }
178
+ /**
179
+ * @deprecated Use `io` instead. Kept as a transitional alias since vinext
180
+ * shipped the unstable name longer than upstream Next.js (see #805). Will be
181
+ * removed in a future minor.
182
+ */
183
+ function unstable_io() {
184
+ if (!_unstableIoWarned) {
185
+ _unstableIoWarned = true;
186
+ console.warn("[vinext] `unstable_io` is deprecated. Import `io` from 'next/cache' instead.");
187
+ }
188
+ return io();
189
+ }
190
+ let _unstableIoWarned = false;
191
+ /**
192
+ * Set the cache lifetime for a "use cache" function.
193
+ *
194
+ * Accepts either a built-in profile name (e.g., "hours", "days") or a custom
195
+ * configuration object. In Next.js, this only works inside "use cache" functions.
196
+ *
197
+ * When called inside a "use cache" function, this sets the cache TTL.
198
+ * The "minimum-wins" rule applies: if called multiple times, the shortest
199
+ * duration for each field wins.
200
+ *
201
+ * When called outside a "use cache" context, this is a validated no-op.
202
+ */
203
+ function cacheLife(profile) {
204
+ let resolvedConfig;
205
+ if (typeof profile === "string") {
206
+ if (!cacheLifeProfiles[profile]) {
207
+ console.warn(`[vinext] cacheLife: unknown profile "${profile}". Available profiles: ${Object.keys(cacheLifeProfiles).join(", ")}`);
208
+ return;
209
+ }
210
+ resolvedConfig = { ...cacheLifeProfiles[profile] };
211
+ } else if (typeof profile === "object" && profile !== null) {
212
+ if (profile.expire !== void 0 && profile.revalidate !== void 0 && profile.expire < profile.revalidate) console.warn("[vinext] cacheLife: expire must be >= revalidate");
213
+ resolvedConfig = {
214
+ ...cacheLifeProfiles.default,
215
+ ...profile
216
+ };
217
+ } else return;
218
+ try {
219
+ const ctx = getRegisteredCacheContext();
220
+ if (ctx) {
221
+ ctx.lifeConfigs.push(resolvedConfig);
222
+ if (resolvedConfig.revalidate !== void 0) ctx.hasExplicitRevalidate = true;
223
+ if (resolvedConfig.expire !== void 0) ctx.hasExplicitExpire = true;
224
+ _setRequestScopedCacheLife(resolvedConfig);
225
+ return;
226
+ }
227
+ } catch {}
228
+ _setRequestScopedCacheLife(resolvedConfig);
229
+ }
230
+ /**
231
+ * Tag a "use cache" function's cached result for on-demand revalidation.
232
+ *
233
+ * Tags set here can be invalidated via revalidateTag(). In Next.js, this only
234
+ * works inside "use cache" functions.
235
+ *
236
+ * When called inside a "use cache" function, tags are attached to the cached
237
+ * entry. They can later be invalidated via revalidateTag().
238
+ *
239
+ * When called outside a "use cache" context, this is a no-op.
240
+ */
241
+ function cacheTag(...tags) {
242
+ try {
243
+ const ctx = getRegisteredCacheContext();
244
+ if (ctx) ctx.tags.push(...encodeCacheTags(tags));
245
+ } catch {}
246
+ }
247
+ /**
248
+ * @deprecated Use `cacheLife` instead. `unstable_cacheLife` was stabilized
249
+ * upstream and the `unstable_`-prefixed name will be removed in a future
250
+ * version of Next.js. Kept as a delegating alias for parity.
251
+ *
252
+ * Emits a one-time deprecation warning via `console.error` (matching Next.js),
253
+ * then delegates to `cacheLife`.
254
+ *
255
+ * Ported from Next.js: packages/next/cache.js
256
+ * https://github.com/vercel/next.js/blob/canary/packages/next/cache.js
257
+ *
258
+ * Asserted by Next.js test:
259
+ * test/e2e/app-dir/cache-components-errors/cache-components-unstable-deprecations.test.ts
260
+ */
261
+ let _unstableCacheLifeWarned = false;
262
+ function unstable_cacheLife(profile) {
263
+ if (!_unstableCacheLifeWarned) {
264
+ _unstableCacheLifeWarned = true;
265
+ console.error(/* @__PURE__ */ new Error("`unstable_cacheLife` was recently stabilized and should be imported as `cacheLife`. The `unstable` prefixed form will be removed in a future version of Next.js."));
266
+ }
267
+ return cacheLife(profile);
268
+ }
269
+ /**
270
+ * @deprecated Use `cacheTag` instead. `unstable_cacheTag` was stabilized
271
+ * upstream and the `unstable_`-prefixed name will be removed in a future
272
+ * version of Next.js. Kept as a delegating alias for parity.
273
+ *
274
+ * Emits a one-time deprecation warning via `console.error` (matching Next.js),
275
+ * then delegates to `cacheTag`.
276
+ *
277
+ * Ported from Next.js: packages/next/cache.js
278
+ * https://github.com/vercel/next.js/blob/canary/packages/next/cache.js
279
+ *
280
+ * Asserted by Next.js test:
281
+ * test/e2e/app-dir/cache-components-errors/cache-components-unstable-deprecations.test.ts
282
+ */
283
+ let _unstableCacheTagWarned = false;
284
+ function unstable_cacheTag(...tags) {
285
+ if (!_unstableCacheTagWarned) {
286
+ _unstableCacheTagWarned = true;
287
+ console.error(/* @__PURE__ */ new Error("`unstable_cacheTag` was recently stabilized and should be imported as `cacheTag`. The `unstable` prefixed form will be removed in a future version of Next.js."));
288
+ }
289
+ return cacheTag(...tags);
290
+ }
291
+ /**
292
+ * AsyncLocalStorage to track whether we're inside an unstable_cache() callback.
293
+ * Stored on globalThis via Symbol so headers.ts can detect the scope without
294
+ * a direct import (avoiding circular dependencies).
295
+ */
296
+ const _unstableCacheAls = getOrCreateAls("vinext.unstableCache.als");
297
+ function serializeUnstableCacheResult(value) {
298
+ return JSON.stringify(value === void 0 ? { undef: true } : { v: value });
299
+ }
300
+ function deserializeUnstableCacheResult(body) {
301
+ const wrapper = JSON.parse(body);
302
+ return "undef" in wrapper ? void 0 : wrapper.v;
303
+ }
304
+ function tryDeserializeUnstableCacheResult(body) {
305
+ try {
306
+ return {
307
+ ok: true,
308
+ value: deserializeUnstableCacheResult(body)
309
+ };
310
+ } catch {
311
+ return { ok: false };
312
+ }
313
+ }
314
+ /**
315
+ * Check if the current execution context is inside an unstable_cache() callback.
316
+ * Used by headers(), cookies(), and connection() to throw errors when
317
+ * dynamic request APIs are called inside a cache scope.
318
+ */
319
+ function isInsideUnstableCacheScope() {
320
+ return _unstableCacheAls.getStore() === true;
321
+ }
322
+ const _UNSTABLE_CACHE_PENDING_REVALIDATIONS_KEY = Symbol.for("vinext.unstableCache.pendingRevalidations");
323
+ function getPendingUnstableCacheRevalidations() {
324
+ const existing = _g[_UNSTABLE_CACHE_PENDING_REVALIDATIONS_KEY];
325
+ if (existing instanceof Map) return existing;
326
+ const pending = /* @__PURE__ */ new Map();
327
+ _g[_UNSTABLE_CACHE_PENDING_REVALIDATIONS_KEY] = pending;
328
+ return pending;
329
+ }
330
+ function waitUntilUnstableCacheRevalidation(promise) {
331
+ if (!isInsideUnifiedScope()) return;
332
+ getRequestContext().executionContext?.waitUntil(promise);
333
+ }
334
+ function scheduleUnstableCacheBackgroundRevalidation(cacheKey, refresh) {
335
+ const pending = getPendingUnstableCacheRevalidations();
336
+ if (pending.has(cacheKey)) return;
337
+ const trackedRevalidation = refresh().then(() => void 0).catch((err) => {
338
+ console.error(`[vinext] unstable_cache background revalidation failed for ${cacheKey}:`, err);
339
+ }).finally(() => {
340
+ if (pending.get(cacheKey) === trackedRevalidation) pending.delete(cacheKey);
341
+ });
342
+ pending.set(cacheKey, trackedRevalidation);
343
+ waitUntilUnstableCacheRevalidation(trackedRevalidation);
344
+ }
345
+ async function refreshUnstableCacheResult(fn, args, cacheKey, tags, revalidateSeconds) {
346
+ const result = await _unstableCacheAls.run(true, () => fn(...args));
347
+ const cacheValue = {
348
+ kind: "FETCH",
349
+ data: {
350
+ headers: {},
351
+ body: serializeUnstableCacheResult(result),
352
+ url: cacheKey
353
+ },
354
+ tags,
355
+ revalidate: typeof revalidateSeconds === "number" ? revalidateSeconds : false
356
+ };
357
+ await getDataCacheHandler().set(cacheKey, cacheValue, {
358
+ fetchCache: true,
359
+ tags,
360
+ revalidate: revalidateSeconds
361
+ });
362
+ return result;
363
+ }
364
+ /**
365
+ * Wrap an async function with caching.
366
+ *
367
+ * Returns a new function that caches results. The cache key is derived
368
+ * from keyParts + serialized arguments.
369
+ */
370
+ function unstable_cache(fn, keyParts, options) {
371
+ const baseKey = keyParts ? keyParts.join(":") : fnv1a64(fn.toString());
372
+ const tags = encodeCacheTags(options?.tags ?? []);
373
+ const revalidateSeconds = options?.revalidate;
374
+ const cachedFn = async (...args) => {
375
+ const cacheKey = `unstable_cache:${baseKey}:${JSON.stringify(args)}`;
376
+ recordUnstableCacheObservation({
377
+ kind: "unstable_cache",
378
+ keyHash: fnv1a64(cacheKey),
379
+ revalidate: typeof revalidateSeconds === "number" ? revalidateSeconds : revalidateSeconds === false ? false : null,
380
+ tagCount: tags.length,
381
+ tagHash: tags.length > 0 ? fnv1a64(JSON.stringify(tags)) : null
382
+ });
383
+ const existing = await getDataCacheHandler().get(cacheKey, {
384
+ kind: "FETCH",
385
+ tags
386
+ });
387
+ if (existing?.value && existing.value.kind === "FETCH") {
388
+ const cached = tryDeserializeUnstableCacheResult(existing.value.data.body);
389
+ if (cached.ok) if (existing.cacheState === "stale") {
390
+ if (shouldServeStaleUnstableCacheEntry()) {
391
+ scheduleUnstableCacheBackgroundRevalidation(cacheKey, () => refreshUnstableCacheResult(fn, args, cacheKey, tags, revalidateSeconds));
392
+ return cached.value;
393
+ }
394
+ } else return cached.value;
395
+ }
396
+ return await refreshUnstableCacheResult(fn, args, cacheKey, tags, revalidateSeconds);
397
+ };
398
+ return cachedFn;
399
+ }
400
+ //#endregion
401
+ export { ACTION_DID_REVALIDATE_DYNAMIC_ONLY, ACTION_DID_REVALIDATE_STATIC_AND_DYNAMIC, MemoryCacheHandler, NoOpCacheHandler, _consumeRequestScopedCacheLife, _initRequestScopedCacheState, _peekRequestScopedCacheLife, _peekUnstableCacheObservations, _registerCacheContextAccessor, _runWithCacheState, _setRequestScopedCacheLife, cacheLife, cacheLifeProfiles, cacheTag, configureMemoryCacheHandler, getAndClearActionRevalidationKind, getCacheHandler, getDataCacheHandler, getRegisteredCacheContext, getRequestExecutionContext, io, isInsideUnstableCacheScope, markActionRevalidation, unstable_noStore as noStore, unstable_noStore, recordUnstableCacheObservation, refresh, revalidatePath, revalidateTag, runWithExecutionContext, setCacheHandler, setDataCacheHandler, shouldServeStaleUnstableCacheEntry, unstable_cache, unstable_cacheLife, unstable_cacheTag, unstable_io, updateTag };
@@ -0,0 +1,125 @@
1
+ import { CacheHandlerValue, IncrementalCacheValue } from "./cache-handler.js";
2
+
3
+ //#region src/shims/cdn-cache.d.ts
4
+ /** A map of response header name -> value the adapter wants applied or removed. */
5
+ type CdnResponseHeaders = Record<string, string | null>;
6
+ type CdnCacheableHeaderInput = {
7
+ /**
8
+ * The cacheable `Cache-Control` value the framework computed for shared
9
+ * caches (e.g. `s-maxage=60, stale-while-revalidate`). May be an empty string
10
+ * when no cacheable policy applies.
11
+ */
12
+ cacheControl: string;
13
+ /**
14
+ * True when this is a freshly-rendered **streaming** response whose
15
+ * dynamic-ness is not yet proven (late Server Component request-API usage can
16
+ * only be detected after the stream drains).
17
+ *
18
+ * The default adapter forces `no-store` for the browser in this case — the
19
+ * page is instead served from the origin store on subsequent requests. Edge
20
+ * adapters may instead emit edge-only cache headers (e.g. `CDN-Cache-Control`)
21
+ * so the CDN performs SWR while the browser still sees `no-store`.
22
+ */
23
+ pendingDynamicCheck?: boolean;
24
+ /**
25
+ * The cache tags associated with this page/route, already canonicalised
26
+ * (e.g. via `encodeCacheTag`). Edge adapters use these to emit a tag header
27
+ * (e.g. a `Cache-Tag` header) so tag-based purging can target the response.
28
+ * The default adapter ignores them.
29
+ */
30
+ tags?: readonly string[];
31
+ };
32
+ /**
33
+ * The serving strategy for page-level ISR. Implement this to delegate
34
+ * page/route/image caching to a CDN edge instead of the origin store.
35
+ */
36
+ type CdnCacheAdapter = {
37
+ /**
38
+ * Read a page-level artifact. Returning a value lets the origin serve it
39
+ * (HIT/STALE); returning `null` makes the origin render fresh.
40
+ *
41
+ * Default: reads the data cache. Edge adapters typically return `null` so the
42
+ * edge owns serving.
43
+ */
44
+ get(key: string, ctx?: Record<string, unknown>): Promise<CacheHandlerValue | null>;
45
+ /**
46
+ * Persist a freshly-rendered page-level artifact.
47
+ *
48
+ * Default: writes to the data cache. Edge adapters that rely entirely on the
49
+ * CDN may make this a no-op.
50
+ */
51
+ set(key: string, data: IncrementalCacheValue | null, ctx?: Record<string, unknown>): Promise<void>;
52
+ /**
53
+ * Build the response cache headers for a given policy. Returns a map so an
54
+ * adapter can emit more than one header (e.g. `Cache-Control` +
55
+ * `CDN-Cache-Control`) and remove stale adapter-owned headers with `null`.
56
+ */
57
+ buildResponseHeaders(input: CdnCacheableHeaderInput): CdnResponseHeaders;
58
+ /**
59
+ * Whether the **origin** runs in-process background regeneration when a stale
60
+ * entry is served. Edge adapters set this to `false` because the CDN
61
+ * revalidates by re-requesting the origin.
62
+ */
63
+ readonly ownsBackgroundRevalidation: boolean;
64
+ /**
65
+ * Propagate a tag/path invalidation to the CDN edge (purge). Called *in
66
+ * addition to* the data cache's own tag invalidation, so the default
67
+ * implementation is a no-op (the data cache already invalidated its entries).
68
+ *
69
+ * Edge adapters implement this to purge the edge cache — typically firing the
70
+ * purge through the request execution context (`ctx.waitUntil`).
71
+ */
72
+ revalidateTag(tags: string | string[], durations?: {
73
+ expire?: number;
74
+ }): Promise<void>;
75
+ };
76
+ /**
77
+ * Default origin-managed ISR strategy: store page artifacts in the data cache,
78
+ * serve HIT/STALE from it, run in-process background regeneration, and emit the
79
+ * framework's standard `Cache-Control` headers.
80
+ */
81
+ declare class DefaultCdnCacheAdapter implements CdnCacheAdapter {
82
+ readonly ownsBackgroundRevalidation = true;
83
+ get(key: string, ctx?: Record<string, unknown>): Promise<CacheHandlerValue | null>;
84
+ set(key: string, data: IncrementalCacheValue | null, ctx?: Record<string, unknown>): Promise<void>;
85
+ buildResponseHeaders(input: CdnCacheableHeaderInput): CdnResponseHeaders;
86
+ revalidateTag(_tags: string | string[], _durations?: {
87
+ expire?: number;
88
+ }): Promise<void>;
89
+ }
90
+ /**
91
+ * Set a custom CDN cache adapter to delegate page-level ISR to a CDN edge. An
92
+ * explicit adapter always wins over the built-in request-context / default
93
+ * selection.
94
+ *
95
+ * @deprecated Don't wire up the CDN cache adapter imperatively. Configure it
96
+ * declaratively via the `cache.cdn` option on the `vinext()` plugin in your
97
+ * `vite.config.ts`, using a config-time adapter builder. On Cloudflare Workers:
98
+ *
99
+ * ```ts
100
+ * import { vinext } from "vinext";
101
+ * import { cdnAdapter } from "@vinext/cloudflare/cache/cdn-adapter";
102
+ *
103
+ * export default defineConfig({
104
+ * plugins: [vinext({ cache: { cdn: cdnAdapter() } })],
105
+ * });
106
+ * ```
107
+ *
108
+ * The plugin registers the adapter across every runtime/router entry, so you
109
+ * don't have to call this from a worker entry. This setter remains as the
110
+ * internal registration target and for backwards compatibility, but is not the
111
+ * recommended consumer API.
112
+ */
113
+ declare function setCdnCacheAdapter(adapter: CdnCacheAdapter): void;
114
+ /**
115
+ * Get the active CDN cache adapter. See the precedence note above:
116
+ * explicit (or an already-resolved auto-detected edge adapter) → origin-managed
117
+ * {@link DefaultCdnCacheAdapter}.
118
+ *
119
+ * Auto-detection of the Cloudflare Workers Cache (`ctx.cache`) only runs when
120
+ * `VINEXT_CDN_CACHE_AUTO_DETECT === "1"`; otherwise the default adapter is used
121
+ * unless an adapter was set explicitly.
122
+ */
123
+ declare function getCdnCacheAdapter(): CdnCacheAdapter;
124
+ //#endregion
125
+ export { CdnCacheAdapter, CdnCacheableHeaderInput, CdnResponseHeaders, DefaultCdnCacheAdapter, getCdnCacheAdapter, setCdnCacheAdapter };
@@ -0,0 +1,100 @@
1
+ import { getRequestExecutionContext } from "./request-context.js";
2
+ import { getDataCacheHandler } from "./cache-handler.js";
3
+ import { CloudflareCdnCacheAdapter } from "../cloudflare/src/cache/cdn-adapter.runtime.js";
4
+ //#region src/shims/cdn-cache.ts
5
+ /**
6
+ * CDN cache adapter — owns the *page-level ISR serving strategy*.
7
+ *
8
+ * This is deliberately distinct from the data cache handler (see `./cache.ts`):
9
+ *
10
+ * - The **data cache** stores cached data (fetch, `"use cache"`,
11
+ * `unstable_cache`, route-handler data). It is a pure key/value store.
12
+ *
13
+ * - The **CDN cache adapter** decides *how page-level ISR is served*: where the
14
+ * rendered page/route/image artifacts live, what cache headers the response
15
+ * carries, whether the origin runs background regeneration, and how
16
+ * invalidation propagates to a CDN edge.
17
+ *
18
+ * Two strategies sit behind one interface:
19
+ *
20
+ * | Concern | DefaultCdnCacheAdapter (origin-managed) | Edge adapter (CDN-managed) |
21
+ * | ------------------ | --------------------------------------- | ------------------------------------------- |
22
+ * | Serve from store? | Yes — reads the data cache | No — origin renders fresh, edge caches |
23
+ * | Background regen | In-process via `waitUntil` | Edge re-requests origin |
24
+ * | Response headers | `Cache-Control` (SWR) | `Cache-Control: no-store` + `CDN-Cache-Control: <SWR>` |
25
+ * | Invalidation | (data cache handles tag invalidation) | purge / revalidate via request context |
26
+ *
27
+ * The default adapter is a thin shim over the data cache + the framework's
28
+ * existing header logic, so default behavior is byte-for-byte identical to the
29
+ * pre-split implementation.
30
+ */
31
+ const PENDING_DYNAMIC_CACHE_CONTROL = "no-store, must-revalidate";
32
+ /**
33
+ * Default origin-managed ISR strategy: store page artifacts in the data cache,
34
+ * serve HIT/STALE from it, run in-process background regeneration, and emit the
35
+ * framework's standard `Cache-Control` headers.
36
+ */
37
+ var DefaultCdnCacheAdapter = class {
38
+ ownsBackgroundRevalidation = true;
39
+ async get(key, ctx) {
40
+ return getDataCacheHandler().get(key, ctx);
41
+ }
42
+ async set(key, data, ctx) {
43
+ await getDataCacheHandler().set(key, data, ctx);
44
+ }
45
+ buildResponseHeaders(input) {
46
+ if (input.pendingDynamicCheck) return { "Cache-Control": PENDING_DYNAMIC_CACHE_CONTROL };
47
+ return { "Cache-Control": input.cacheControl };
48
+ }
49
+ async revalidateTag(_tags, _durations) {}
50
+ };
51
+ const _CDN_KEY = Symbol.for("vinext.cdnCacheAdapter");
52
+ const _gCdn = globalThis;
53
+ let _defaultAdapter = null;
54
+ /**
55
+ * Set a custom CDN cache adapter to delegate page-level ISR to a CDN edge. An
56
+ * explicit adapter always wins over the built-in request-context / default
57
+ * selection.
58
+ *
59
+ * @deprecated Don't wire up the CDN cache adapter imperatively. Configure it
60
+ * declaratively via the `cache.cdn` option on the `vinext()` plugin in your
61
+ * `vite.config.ts`, using a config-time adapter builder. On Cloudflare Workers:
62
+ *
63
+ * ```ts
64
+ * import { vinext } from "vinext";
65
+ * import { cdnAdapter } from "@vinext/cloudflare/cache/cdn-adapter";
66
+ *
67
+ * export default defineConfig({
68
+ * plugins: [vinext({ cache: { cdn: cdnAdapter() } })],
69
+ * });
70
+ * ```
71
+ *
72
+ * The plugin registers the adapter across every runtime/router entry, so you
73
+ * don't have to call this from a worker entry. This setter remains as the
74
+ * internal registration target and for backwards compatibility, but is not the
75
+ * recommended consumer API.
76
+ */
77
+ function setCdnCacheAdapter(adapter) {
78
+ _gCdn[_CDN_KEY] = adapter;
79
+ }
80
+ /**
81
+ * Get the active CDN cache adapter. See the precedence note above:
82
+ * explicit (or an already-resolved auto-detected edge adapter) → origin-managed
83
+ * {@link DefaultCdnCacheAdapter}.
84
+ *
85
+ * Auto-detection of the Cloudflare Workers Cache (`ctx.cache`) only runs when
86
+ * `VINEXT_CDN_CACHE_AUTO_DETECT === "1"`; otherwise the default adapter is used
87
+ * unless an adapter was set explicitly.
88
+ */
89
+ function getCdnCacheAdapter() {
90
+ const active = _gCdn[_CDN_KEY];
91
+ if (active) return active;
92
+ if (process.env.VINEXT_CDN_CACHE_AUTO_DETECT === "1" && getRequestExecutionContext()?.cache) {
93
+ const edge = new CloudflareCdnCacheAdapter();
94
+ _gCdn[_CDN_KEY] = edge;
95
+ return edge;
96
+ }
97
+ return _defaultAdapter ??= new DefaultCdnCacheAdapter();
98
+ }
99
+ //#endregion
100
+ export { DefaultCdnCacheAdapter, getCdnCacheAdapter, setCdnCacheAdapter };
@@ -0,0 +1,13 @@
1
+ //#region src/shims/client-hook-error.d.ts
2
+ /**
3
+ * Shared error helper for client-only hooks called in Server Components.
4
+ *
5
+ * Used by `.react-server.ts` shim variants to provide a clear, actionable
6
+ * error message when a developer forgets the "use client" directive.
7
+ *
8
+ * @see https://github.com/cloudflare/vinext/issues/834
9
+ */
10
+ declare function buildClientHookErrorMessage(hookName: string): string;
11
+ declare function throwClientHookError(hookName: string): never;
12
+ //#endregion
13
+ export { buildClientHookErrorMessage, throwClientHookError };
@@ -0,0 +1,17 @@
1
+ //#region src/shims/client-hook-error.ts
2
+ /**
3
+ * Shared error helper for client-only hooks called in Server Components.
4
+ *
5
+ * Used by `.react-server.ts` shim variants to provide a clear, actionable
6
+ * error message when a developer forgets the "use client" directive.
7
+ *
8
+ * @see https://github.com/cloudflare/vinext/issues/834
9
+ */
10
+ function buildClientHookErrorMessage(hookName) {
11
+ return `${hookName} only works in Client Components. Add the "use client" directive at the top of the file to use it. Read more: https://nextjs.org/docs/messages/react-client-hook-in-server-component`;
12
+ }
13
+ function throwClientHookError(hookName) {
14
+ throw new Error(buildClientHookErrorMessage(hookName));
15
+ }
16
+ //#endregion
17
+ export { buildClientHookErrorMessage, throwClientHookError };
@@ -0,0 +1,14 @@
1
+ import { DomainLocale } from "../utils/domain-locale.js";
2
+
3
+ //#region src/shims/client-locale.d.ts
4
+ declare function getCurrentBrowserLocale({
5
+ basePath,
6
+ domainLocales,
7
+ hostname
8
+ }: {
9
+ basePath: string;
10
+ domainLocales: readonly DomainLocale[] | undefined;
11
+ hostname: string | null | undefined;
12
+ }): string | undefined;
13
+ //#endregion
14
+ export { getCurrentBrowserLocale };