@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,127 @@
1
+ import { RenderObservation } from "./cache-proof.js";
2
+ import { CacheHandlerValue, CachedAppPageValue, CachedPagesValue, IncrementalCacheValue } from "../shims/cache-handler.js";
3
+ import { OnRequestErrorContext } from "./instrumentation.js";
4
+ import { normalizeMountedSlotsHeader } from "./app-mounted-slots-header.js";
5
+ import { AppRscRenderMode } from "./app-rsc-render-mode.js";
6
+
7
+ //#region src/server/isr-cache.d.ts
8
+ /**
9
+ * Header set on the internal request that `res.revalidate()` issues to
10
+ * trigger on-demand ISR regeneration of a Pages Router route. Mirrors Next.js's
11
+ * `PRERENDER_REVALIDATE_HEADER` (`x-prerender-revalidate`) — see
12
+ * `.nextjs-ref/packages/next/src/lib/constants.ts`.
13
+ *
14
+ * SECURITY: in Next.js this header is NOT a presence flag — it carries the
15
+ * secret `previewModeId`, and `checkIsOnDemandRevalidate`
16
+ * (`.nextjs-ref/packages/next/src/server/api-utils/index.ts`) only treats a
17
+ * request as on-demand revalidation when the value *equals* that secret. If we
18
+ * gated on presence alone, any external client could send
19
+ * `x-prerender-revalidate: <anything>` to force synchronous regeneration of any
20
+ * ISR page, bypassing the fresh/stale cache short-circuits — a
21
+ * cache-stampede/DoS vector. We therefore validate the value against
22
+ * {@link getRevalidateSecret} (a build-time secret shared across all Workers
23
+ * isolates) with a constant-time comparison, and only the matching value (sent
24
+ * by our own `res.revalidate()`) is honored.
25
+ */
26
+ declare const PRERENDER_REVALIDATE_HEADER = "x-prerender-revalidate";
27
+ /**
28
+ * Companion header to {@link PRERENDER_REVALIDATE_HEADER}. When set,
29
+ * `res.revalidate(path, { unstable_onlyGenerated: true })` only revalidates the
30
+ * path if it was already generated, and a 404 response counts as a successful
31
+ * no-op. Mirrors Next.js's `PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER`
32
+ * (`x-prerender-revalidate-if-generated`) — see
33
+ * `.nextjs-ref/packages/next/src/lib/constants.ts`.
34
+ */
35
+ declare const PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER = "x-prerender-revalidate-if-generated";
36
+ declare function getRevalidateSecret(): string;
37
+ /**
38
+ * Authorize an incoming request as an on-demand revalidation trigger. Mirrors
39
+ * Next.js's `checkIsOnDemandRevalidate`: the {@link PRERENDER_REVALIDATE_HEADER}
40
+ * value must *equal* the process revalidate secret. Header presence alone is
41
+ * NOT sufficient — see the security note on {@link PRERENDER_REVALIDATE_HEADER}.
42
+ */
43
+ declare function isOnDemandRevalidateRequest(headerValue: string | string[] | null | undefined): boolean;
44
+ type ISRCacheEntry = {
45
+ value: CacheHandlerValue;
46
+ isStale: boolean;
47
+ };
48
+ /**
49
+ * Get a cache entry with staleness information.
50
+ *
51
+ * Returns { value, isStale: false } for fresh entries,
52
+ * { value, isStale: true } for expired-but-usable entries,
53
+ * or null for cache misses.
54
+ */
55
+ declare function isrGet(key: string): Promise<ISRCacheEntry | null>;
56
+ /**
57
+ * Store a value in the ISR cache with a revalidation period.
58
+ */
59
+ declare function isrSet(key: string, data: IncrementalCacheValue, revalidateSeconds: number, tags?: string[], expireSeconds?: number): Promise<void>;
60
+ declare function isrSetPrerenderedAppPage(key: string, data: CachedAppPageValue, metadata: {
61
+ expireSeconds?: number;
62
+ revalidateSeconds?: number;
63
+ /**
64
+ * Implicit/path tags to attach to the seeded entry. Required so that
65
+ * `revalidatePath()` (and `revalidateTag()`) can invalidate prerender-seeded
66
+ * cache entries — without tags the entry is unreachable by tag-based
67
+ * invalidation and remains stale until natural `revalidateAt` expiry.
68
+ * See cloudflare/vinext#1486.
69
+ */
70
+ tags?: string[];
71
+ }): Promise<void>;
72
+ /**
73
+ * Trigger a background regeneration for a cache key.
74
+ *
75
+ * If a regeneration for this key is already in progress, this is a no-op.
76
+ * The renderFn should produce the new cache value and call isrSet internally.
77
+ *
78
+ * On Cloudflare Workers the regeneration promise is registered with
79
+ * `ctx.waitUntil()` via the ALS-backed ExecutionContext, keeping the isolate
80
+ * alive until the regeneration completes even after the Response is returned.
81
+ *
82
+ * When `errorContext` is provided and the render function fails, the error
83
+ * is reported via `reportRequestError` (instrumentation hook) with
84
+ * `revalidateReason: "stale"`.
85
+ */
86
+ declare function triggerBackgroundRegeneration(key: string, renderFn: () => Promise<void>, errorContext?: {
87
+ routerKind: OnRequestErrorContext["routerKind"];
88
+ routePath: string;
89
+ routeType: OnRequestErrorContext["routeType"];
90
+ }): void;
91
+ /**
92
+ * Build a CachedPagesValue for the Pages Router ISR cache.
93
+ */
94
+ declare function buildPagesCacheValue(html: string, pageData: object, status?: number): CachedPagesValue;
95
+ /**
96
+ * Build a CachedAppPageValue for the App Router ISR cache.
97
+ */
98
+ declare function buildAppPageCacheValue(html: string, rscData?: ArrayBuffer, status?: number, renderObservation?: RenderObservation): CachedAppPageValue;
99
+ /**
100
+ * Compute an ISR cache key for a given router type and pathname.
101
+ * Long pathnames are hashed to stay within KV key-length limits (512 bytes).
102
+ */
103
+ declare function isrCacheKey(router: string, pathname: string, buildId?: string): string;
104
+ declare function appIsrHtmlKey(pathname: string): string;
105
+ /**
106
+ * Build the ISR cache key for an RSC payload.
107
+ *
108
+ * Variants are sequenced in order: `source:<hash>` (intercepted source context,
109
+ * only when an interception context is present), `slots:<hash>` (mounted parallel
110
+ * route slots), and optionally `<render-mode-variant>` (e.g. `preserve-ui` or
111
+ * `prefetch-loading-shell`). Existing cached entries under the old format will
112
+ * become unreachable after deployment. This is acceptable because ISR entries
113
+ * have TTLs and will be regenerated on the next request.
114
+ */
115
+ declare function appIsrRscKey(pathname: string, mountedSlotsHeader?: string | null, renderMode?: AppRscRenderMode, interceptionContext?: string | null): string;
116
+ declare function appIsrRouteKey(pathname: string): string;
117
+ /**
118
+ * Store the revalidate duration for a cache key.
119
+ * Uses insertion-order LRU eviction to prevent unbounded growth.
120
+ */
121
+ declare function setRevalidateDuration(key: string, seconds: number): void;
122
+ /**
123
+ * Get the revalidate duration for a cache key.
124
+ */
125
+ declare function getRevalidateDuration(key: string): number | undefined;
126
+ //#endregion
127
+ export { ISRCacheEntry, PRERENDER_REVALIDATE_HEADER, PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER, appIsrHtmlKey, appIsrRouteKey, appIsrRscKey, buildAppPageCacheValue, buildPagesCacheValue, getRevalidateDuration, getRevalidateSecret, isOnDemandRevalidateRequest, isrCacheKey, isrGet, isrSet, isrSetPrerenderedAppPage, normalizeMountedSlotsHeader, setRevalidateDuration, triggerBackgroundRegeneration };
@@ -0,0 +1,282 @@
1
+ import { getRequestExecutionContext } from "../shims/request-context.js";
2
+ import { reportRequestError } from "./instrumentation.js";
3
+ import { getCdnCacheAdapter } from "../shims/cdn-cache.js";
4
+ import { fnv1a64 } from "../utils/hash.js";
5
+ import { normalizeMountedSlotsHeader } from "./app-mounted-slots-header.js";
6
+ import { APP_RSC_RENDER_MODE_NAVIGATION, getRscRenderModeCacheVariant } from "./app-rsc-render-mode.js";
7
+ import { normalizeAppPageInterceptionProofPathname } from "./app-page-render-identity.js";
8
+ //#region src/server/isr-cache.ts
9
+ /**
10
+ * Header set on the internal request that `res.revalidate()` issues to
11
+ * trigger on-demand ISR regeneration of a Pages Router route. Mirrors Next.js's
12
+ * `PRERENDER_REVALIDATE_HEADER` (`x-prerender-revalidate`) — see
13
+ * `.nextjs-ref/packages/next/src/lib/constants.ts`.
14
+ *
15
+ * SECURITY: in Next.js this header is NOT a presence flag — it carries the
16
+ * secret `previewModeId`, and `checkIsOnDemandRevalidate`
17
+ * (`.nextjs-ref/packages/next/src/server/api-utils/index.ts`) only treats a
18
+ * request as on-demand revalidation when the value *equals* that secret. If we
19
+ * gated on presence alone, any external client could send
20
+ * `x-prerender-revalidate: <anything>` to force synchronous regeneration of any
21
+ * ISR page, bypassing the fresh/stale cache short-circuits — a
22
+ * cache-stampede/DoS vector. We therefore validate the value against
23
+ * {@link getRevalidateSecret} (a build-time secret shared across all Workers
24
+ * isolates) with a constant-time comparison, and only the matching value (sent
25
+ * by our own `res.revalidate()`) is honored.
26
+ */
27
+ const PRERENDER_REVALIDATE_HEADER = "x-prerender-revalidate";
28
+ /**
29
+ * Companion header to {@link PRERENDER_REVALIDATE_HEADER}. When set,
30
+ * `res.revalidate(path, { unstable_onlyGenerated: true })` only revalidates the
31
+ * path if it was already generated, and a 404 response counts as a successful
32
+ * no-op. Mirrors Next.js's `PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER`
33
+ * (`x-prerender-revalidate-if-generated`) — see
34
+ * `.nextjs-ref/packages/next/src/lib/constants.ts`.
35
+ */
36
+ const PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER = "x-prerender-revalidate-if-generated";
37
+ /**
38
+ * Build-time secret that authenticates on-demand revalidation requests, the
39
+ * vinext analog of Next.js's prerender-manifest `previewModeId`.
40
+ *
41
+ * `res.revalidate()` loops back into the server via an internal `fetch()`. On
42
+ * Cloudflare Workers that loopback can land on a *different* isolate than the
43
+ * sender, so a per-process random secret would mismatch across isolates and
44
+ * false-reject legitimate revalidations (and, symmetrically, two isolates with
45
+ * independently-rolled secrets could never agree). The fix mirrors Next.js's
46
+ * `previewModeId`: the secret is generated once at BUILD time and baked
47
+ * (server-only — never into the client bundle) into every server bundle via the
48
+ * `__VINEXT_REVALIDATE_SECRET` Vite `define`, so it is byte-for-byte identical in
49
+ * every isolate. See `vinext build` CLI (`__VINEXT_SHARED_REVALIDATE_SECRET`) and
50
+ * the `vinext:compiler-define-server` plugin. The sender attaches it as the
51
+ * {@link PRERENDER_REVALIDATE_HEADER} value; the receiver authorizes a request
52
+ * only when the incoming value equals this secret (see
53
+ * {@link isOnDemandRevalidateRequest}).
54
+ *
55
+ * When the build-time define is absent — dev mode, and any path that doesn't
56
+ * run through `vinext build` — we fall back to a lazily-generated random secret.
57
+ * Those paths are single-process, so a module-scoped value is shared by sender
58
+ * and receiver there — no regression.
59
+ */
60
+ let devRevalidateSecret;
61
+ function getRevalidateSecret() {
62
+ const baked = process.env.__VINEXT_REVALIDATE_SECRET;
63
+ if (baked) return baked;
64
+ if (devRevalidateSecret === void 0) {
65
+ const bytes = new Uint8Array(32);
66
+ crypto.getRandomValues(bytes);
67
+ devRevalidateSecret = Array.from(bytes, (b) => b.toString(16).padStart(2, "0")).join("");
68
+ }
69
+ return devRevalidateSecret;
70
+ }
71
+ /**
72
+ * Constant-time string equality. Avoids leaking secret length / prefix via
73
+ * early-exit timing on the on-demand revalidation auth check. Returns false
74
+ * for length mismatch (the only safe option without revealing the secret
75
+ * length, and equality is impossible anyway).
76
+ */
77
+ function safeEqual(a, b) {
78
+ if (a.length !== b.length) return false;
79
+ let mismatch = 0;
80
+ for (let i = 0; i < a.length; i++) mismatch |= a.charCodeAt(i) ^ b.charCodeAt(i);
81
+ return mismatch === 0;
82
+ }
83
+ /**
84
+ * Authorize an incoming request as an on-demand revalidation trigger. Mirrors
85
+ * Next.js's `checkIsOnDemandRevalidate`: the {@link PRERENDER_REVALIDATE_HEADER}
86
+ * value must *equal* the process revalidate secret. Header presence alone is
87
+ * NOT sufficient — see the security note on {@link PRERENDER_REVALIDATE_HEADER}.
88
+ */
89
+ function isOnDemandRevalidateRequest(headerValue) {
90
+ if (typeof headerValue !== "string" || headerValue.length === 0) return false;
91
+ return safeEqual(headerValue, getRevalidateSecret());
92
+ }
93
+ /**
94
+ * Get a cache entry with staleness information.
95
+ *
96
+ * Returns { value, isStale: false } for fresh entries,
97
+ * { value, isStale: true } for expired-but-usable entries,
98
+ * or null for cache misses.
99
+ */
100
+ async function isrGet(key) {
101
+ const result = await getCdnCacheAdapter().get(key);
102
+ if (!result || !result.value) return null;
103
+ if (result.cacheState === "expired") return null;
104
+ return {
105
+ value: result,
106
+ isStale: result.cacheState === "stale"
107
+ };
108
+ }
109
+ /**
110
+ * Store a value in the ISR cache with a revalidation period.
111
+ */
112
+ async function isrSet(key, data, revalidateSeconds, tags, expireSeconds) {
113
+ await getCdnCacheAdapter().set(key, data, {
114
+ cacheControl: expireSeconds === void 0 ? { revalidate: revalidateSeconds } : {
115
+ revalidate: revalidateSeconds,
116
+ expire: expireSeconds
117
+ },
118
+ revalidate: revalidateSeconds,
119
+ tags: tags ?? []
120
+ });
121
+ }
122
+ async function isrSetPrerenderedAppPage(key, data, metadata) {
123
+ const revalidateSeconds = metadata.revalidateSeconds;
124
+ const tags = metadata.tags;
125
+ if (process.env.NEXT_PRIVATE_DEBUG_CACHE) console.debug("[vinext] ISR: seed", key);
126
+ const ctx = {};
127
+ if (revalidateSeconds !== void 0) {
128
+ ctx.revalidate = revalidateSeconds;
129
+ ctx.cacheControl = metadata.expireSeconds === void 0 ? { revalidate: revalidateSeconds } : {
130
+ revalidate: revalidateSeconds,
131
+ expire: metadata.expireSeconds
132
+ };
133
+ }
134
+ if (tags && tags.length > 0) ctx.tags = tags;
135
+ await getCdnCacheAdapter().set(key, data, ctx);
136
+ if (revalidateSeconds !== void 0) setRevalidateDuration(key, revalidateSeconds);
137
+ }
138
+ const _PENDING_REGEN_KEY = Symbol.for("vinext.isrCache.pendingRegenerations");
139
+ const _g = globalThis;
140
+ const pendingRegenerations = _g[_PENDING_REGEN_KEY] ??= /* @__PURE__ */ new Map();
141
+ /**
142
+ * Trigger a background regeneration for a cache key.
143
+ *
144
+ * If a regeneration for this key is already in progress, this is a no-op.
145
+ * The renderFn should produce the new cache value and call isrSet internally.
146
+ *
147
+ * On Cloudflare Workers the regeneration promise is registered with
148
+ * `ctx.waitUntil()` via the ALS-backed ExecutionContext, keeping the isolate
149
+ * alive until the regeneration completes even after the Response is returned.
150
+ *
151
+ * When `errorContext` is provided and the render function fails, the error
152
+ * is reported via `reportRequestError` (instrumentation hook) with
153
+ * `revalidateReason: "stale"`.
154
+ */
155
+ function triggerBackgroundRegeneration(key, renderFn, errorContext) {
156
+ if (!getCdnCacheAdapter().ownsBackgroundRevalidation) return;
157
+ if (pendingRegenerations.has(key)) return;
158
+ const promise = renderFn().catch((err) => {
159
+ console.error(`[vinext] ISR background regeneration failed for ${key}:`, err);
160
+ if (errorContext) reportRequestError(err instanceof Error ? err : new Error(String(err)), {
161
+ path: key,
162
+ method: "GET",
163
+ headers: {}
164
+ }, {
165
+ routerKind: errorContext.routerKind,
166
+ routePath: errorContext.routePath,
167
+ routeType: errorContext.routeType,
168
+ revalidateReason: "stale"
169
+ });
170
+ }).finally(() => {
171
+ pendingRegenerations.delete(key);
172
+ });
173
+ pendingRegenerations.set(key, promise);
174
+ getRequestExecutionContext()?.waitUntil(promise);
175
+ }
176
+ /**
177
+ * Build a CachedPagesValue for the Pages Router ISR cache.
178
+ */
179
+ function buildPagesCacheValue(html, pageData, status) {
180
+ return {
181
+ kind: "PAGES",
182
+ html,
183
+ pageData,
184
+ headers: void 0,
185
+ status
186
+ };
187
+ }
188
+ /**
189
+ * Build a CachedAppPageValue for the App Router ISR cache.
190
+ */
191
+ function buildAppPageCacheValue(html, rscData, status, renderObservation) {
192
+ const value = {
193
+ kind: "APP_PAGE",
194
+ html,
195
+ rscData,
196
+ headers: void 0,
197
+ postponed: void 0,
198
+ status
199
+ };
200
+ if (renderObservation) value.renderObservation = renderObservation;
201
+ return value;
202
+ }
203
+ function normalizeCachePathname(pathname) {
204
+ return pathname === "/" ? "/" : pathname.replace(/\/$/, "");
205
+ }
206
+ function buildCacheKey(prefix, pathname, suffix) {
207
+ const normalized = normalizeCachePathname(pathname);
208
+ const suffixPart = suffix ? `:${suffix}` : "";
209
+ const key = `${prefix}:${normalized}${suffixPart}`;
210
+ if (key.length <= 200) return key;
211
+ return `${prefix}:__hash:${fnv1a64(normalized)}${suffixPart}`;
212
+ }
213
+ /**
214
+ * Compute an ISR cache key for a given router type and pathname.
215
+ * Long pathnames are hashed to stay within KV key-length limits (512 bytes).
216
+ */
217
+ function isrCacheKey(router, pathname, buildId) {
218
+ return buildCacheKey(buildId ? `${router}:${buildId}` : router, pathname);
219
+ }
220
+ /**
221
+ * Compute an App Router ISR key for one cache artifact.
222
+ *
223
+ * App pages store HTML, RSC payloads, and route-handler responses separately.
224
+ * The suffix mirrors Next.js's separate on-disk app artifacts while keeping the
225
+ * Cloudflare KV key under its 512-byte limit for long pathnames.
226
+ */
227
+ function appIsrCacheKey(pathname, suffix, buildId = process.env.__VINEXT_BUILD_ID) {
228
+ return buildCacheKey(buildId ? `app:${buildId}` : "app", pathname, suffix);
229
+ }
230
+ function appIsrHtmlKey(pathname) {
231
+ return appIsrCacheKey(pathname, "html");
232
+ }
233
+ function normalizeInterceptionContextForCacheKey(interceptionContext) {
234
+ return normalizeAppPageInterceptionProofPathname(interceptionContext);
235
+ }
236
+ /**
237
+ * Build the ISR cache key for an RSC payload.
238
+ *
239
+ * Variants are sequenced in order: `source:<hash>` (intercepted source context,
240
+ * only when an interception context is present), `slots:<hash>` (mounted parallel
241
+ * route slots), and optionally `<render-mode-variant>` (e.g. `preserve-ui` or
242
+ * `prefetch-loading-shell`). Existing cached entries under the old format will
243
+ * become unreachable after deployment. This is acceptable because ISR entries
244
+ * have TTLs and will be regenerated on the next request.
245
+ */
246
+ function appIsrRscKey(pathname, mountedSlotsHeader, renderMode = APP_RSC_RENDER_MODE_NAVIGATION, interceptionContext) {
247
+ const normalizedMountedSlotsHeader = normalizeMountedSlotsHeader(mountedSlotsHeader);
248
+ const sourceVariant = interceptionContext === void 0 || interceptionContext === null ? null : normalizeInterceptionContextForCacheKey(interceptionContext);
249
+ const variant = [
250
+ sourceVariant ? `source:${fnv1a64(sourceVariant)}` : null,
251
+ normalizedMountedSlotsHeader ? `slots:${fnv1a64(normalizedMountedSlotsHeader)}` : null,
252
+ getRscRenderModeCacheVariant(renderMode)
253
+ ].filter((part) => part !== null).join(":");
254
+ return appIsrCacheKey(pathname, variant ? `rsc:${variant}` : "rsc");
255
+ }
256
+ function appIsrRouteKey(pathname) {
257
+ return appIsrCacheKey(pathname, "route");
258
+ }
259
+ const MAX_REVALIDATE_ENTRIES = 1e4;
260
+ const _REVALIDATE_KEY = Symbol.for("vinext.isrCache.revalidateDurations");
261
+ const revalidateDurations = _g[_REVALIDATE_KEY] ??= /* @__PURE__ */ new Map();
262
+ /**
263
+ * Store the revalidate duration for a cache key.
264
+ * Uses insertion-order LRU eviction to prevent unbounded growth.
265
+ */
266
+ function setRevalidateDuration(key, seconds) {
267
+ revalidateDurations.delete(key);
268
+ revalidateDurations.set(key, seconds);
269
+ while (revalidateDurations.size > MAX_REVALIDATE_ENTRIES) {
270
+ const first = revalidateDurations.keys().next().value;
271
+ if (first !== void 0) revalidateDurations.delete(first);
272
+ else break;
273
+ }
274
+ }
275
+ /**
276
+ * Get the revalidate duration for a cache key.
277
+ */
278
+ function getRevalidateDuration(key) {
279
+ return revalidateDurations.get(key);
280
+ }
281
+ //#endregion
282
+ export { PRERENDER_REVALIDATE_HEADER, PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER, appIsrHtmlKey, appIsrRouteKey, appIsrRscKey, buildAppPageCacheValue, buildPagesCacheValue, getRevalidateDuration, getRevalidateSecret, isOnDemandRevalidateRequest, isrCacheKey, isrGet, isrSet, isrSetPrerenderedAppPage, normalizeMountedSlotsHeader, setRevalidateDuration, triggerBackgroundRegeneration };
@@ -0,0 +1,79 @@
1
+ import { CacheControlMetadata } from "../shims/cache-handler.js";
2
+ import { NEVER_CACHE_CONTROL, NO_STORE_CACHE_CONTROL } from "./cache-control.js";
3
+
4
+ //#region src/server/isr-decision.d.ts
5
+ type IsrDisposition = "HIT" | "STALE" | "MISS";
6
+ type IsrDecision = {
7
+ disposition: IsrDisposition; /** True when the caller must schedule a background regeneration. */
8
+ scheduleRegeneration: boolean; /** The `Cache-Control` string to stamp on the response. */
9
+ cacheControl: string;
10
+ };
11
+ /**
12
+ * Per-router special-case policies for `Cache-Control`.
13
+ *
14
+ * - `"app-page"` / `"pages"`: `buildCachedRevalidateCacheControl` for HIT/STALE.
15
+ * - `"app-route"`: same, but `revalidateSeconds=0` forces `NEVER_CACHE_CONTROL`
16
+ * and `revalidateSeconds=Infinity` forces `STATIC_CACHE_CONTROL`.
17
+ * - `"dev"`: like `"pages"`, but `revalidate=0`/`Infinity` guards are absent
18
+ * (dev never caches when revalidate=0 and never has Infinity entries in practice).
19
+ */
20
+ type IsrPolicyKind = "app-page" | "app-route" | "pages" | "dev";
21
+ type DecideIsrOptions = {
22
+ /**
23
+ * The cache state. Content guards (kind-mismatch, empty body,
24
+ * query-variant-unproven) must have already passed before passing
25
+ * `"HIT"` or `"STALE"` here.
26
+ */
27
+ cacheState: "HIT" | "STALE" | "MISS"; /** Which router is making the decision. */
28
+ kind: IsrPolicyKind;
29
+ /**
30
+ * The route's configured revalidate window in seconds. Used as the fallback
31
+ * when `cacheControlMeta` is absent.
32
+ *
33
+ * For `"dev"` call sites this is the only source of the revalidate value —
34
+ * dev never has metadata attached to a cache entry.
35
+ */
36
+ revalidateSeconds: number;
37
+ /**
38
+ * The expire ceiling (seconds from epoch) read from the route config.
39
+ * Absent when the route pre-dates expire metadata support.
40
+ */
41
+ expireSeconds?: number;
42
+ /**
43
+ * Optional per-entry metadata written alongside the cache value.
44
+ * When present its `revalidate`/`expire` fields override the route defaults,
45
+ * exactly as the call sites do today with `cacheControl?.revalidate ?? revalidateSeconds`.
46
+ */
47
+ cacheControlMeta?: CacheControlMetadata;
48
+ };
49
+ /**
50
+ * Derive the `Cache-Control` string for an ISR response.
51
+ *
52
+ * Content guards (kind mismatch, query-variant-unproven, empty body) are the
53
+ * caller's responsibility and must happen *before* this call. `cacheState`
54
+ * must only be `"HIT"` or `"STALE"` when those guards have already passed.
55
+ */
56
+ declare function decideIsr(options: DecideIsrOptions): IsrDecision;
57
+ /**
58
+ * Build the `Cache-Control` string for a fresh MISS response whose ISR policy
59
+ * is known (i.e. revalidate is set and > 0). Uses the unbounded SWR form when
60
+ * no expire ceiling is available, exactly as `buildRevalidateCacheControl` does.
61
+ *
62
+ * Separate from `decideIsr` because a MISS doesn't read a cache entry and
63
+ * therefore never has `cacheControlMeta`. `expireSeconds` here is the route
64
+ * config ceiling passed directly from the caller (not a per-entry fallback).
65
+ */
66
+ declare function buildMissIsrCacheControl(revalidateSeconds: number, expireSeconds?: number): string;
67
+ /**
68
+ * Build the `Cache-Control` string for a fresh (MISS) app-route response.
69
+ *
70
+ * Applies the same `revalidateSeconds=0`→NEVER and `Infinity`→STATIC gates
71
+ * that `decideIsr` uses for app-route cached responses. `expireSeconds` is
72
+ * the route config ceiling passed directly (not per-entry metadata fallback).
73
+ *
74
+ * Used by `applyRouteHandlerRevalidateHeader` which operates on a fresh
75
+ * response that has no per-entry cache metadata.
76
+ */
77
+ declare function buildAppRouteMissIsrCacheControl(revalidateSeconds: number, expireSeconds?: number): string;
78
+ //#endregion
79
+ export { NEVER_CACHE_CONTROL as ISR_NEVER_CACHE_CONTROL, NO_STORE_CACHE_CONTROL as ISR_NO_STORE_CACHE_CONTROL, buildAppRouteMissIsrCacheControl, buildMissIsrCacheControl, decideIsr };
@@ -0,0 +1,70 @@
1
+ import { NEVER_CACHE_CONTROL, NO_STORE_CACHE_CONTROL, STATIC_CACHE_CONTROL, buildCachedRevalidateCacheControl, buildRevalidateCacheControl } from "./cache-control.js";
2
+ //#region src/server/isr-decision.ts
3
+ /** Resolve effective revalidate/expire, preferring per-entry metadata. */
4
+ function resolveRevalidate(options) {
5
+ return {
6
+ effectiveRevalidate: options.cacheControlMeta?.revalidate ?? options.revalidateSeconds,
7
+ effectiveExpire: options.cacheControlMeta === void 0 ? void 0 : options.cacheControlMeta.expire ?? options.expireSeconds
8
+ };
9
+ }
10
+ function buildCacheControl(disposition, kind, revalidate, expire) {
11
+ if (kind === "app-route") {
12
+ if (revalidate === 0) return NEVER_CACHE_CONTROL;
13
+ if (revalidate === Infinity) return STATIC_CACHE_CONTROL;
14
+ }
15
+ return buildCachedRevalidateCacheControl(disposition, revalidate, expire);
16
+ }
17
+ /**
18
+ * Derive the `Cache-Control` string for an ISR response.
19
+ *
20
+ * Content guards (kind mismatch, query-variant-unproven, empty body) are the
21
+ * caller's responsibility and must happen *before* this call. `cacheState`
22
+ * must only be `"HIT"` or `"STALE"` when those guards have already passed.
23
+ */
24
+ function decideIsr(options) {
25
+ if (options.cacheState === "MISS") return {
26
+ disposition: "MISS",
27
+ scheduleRegeneration: false,
28
+ cacheControl: ""
29
+ };
30
+ const { effectiveRevalidate, effectiveExpire } = resolveRevalidate(options);
31
+ if (options.cacheState === "HIT") return {
32
+ disposition: "HIT",
33
+ scheduleRegeneration: false,
34
+ cacheControl: buildCacheControl("HIT", options.kind, effectiveRevalidate, effectiveExpire)
35
+ };
36
+ return {
37
+ disposition: "STALE",
38
+ scheduleRegeneration: true,
39
+ cacheControl: buildCacheControl("STALE", options.kind, effectiveRevalidate, effectiveExpire)
40
+ };
41
+ }
42
+ /**
43
+ * Build the `Cache-Control` string for a fresh MISS response whose ISR policy
44
+ * is known (i.e. revalidate is set and > 0). Uses the unbounded SWR form when
45
+ * no expire ceiling is available, exactly as `buildRevalidateCacheControl` does.
46
+ *
47
+ * Separate from `decideIsr` because a MISS doesn't read a cache entry and
48
+ * therefore never has `cacheControlMeta`. `expireSeconds` here is the route
49
+ * config ceiling passed directly from the caller (not a per-entry fallback).
50
+ */
51
+ function buildMissIsrCacheControl(revalidateSeconds, expireSeconds) {
52
+ return buildRevalidateCacheControl(revalidateSeconds, expireSeconds);
53
+ }
54
+ /**
55
+ * Build the `Cache-Control` string for a fresh (MISS) app-route response.
56
+ *
57
+ * Applies the same `revalidateSeconds=0`→NEVER and `Infinity`→STATIC gates
58
+ * that `decideIsr` uses for app-route cached responses. `expireSeconds` is
59
+ * the route config ceiling passed directly (not per-entry metadata fallback).
60
+ *
61
+ * Used by `applyRouteHandlerRevalidateHeader` which operates on a fresh
62
+ * response that has no per-entry cache metadata.
63
+ */
64
+ function buildAppRouteMissIsrCacheControl(revalidateSeconds, expireSeconds) {
65
+ if (revalidateSeconds === 0) return NEVER_CACHE_CONTROL;
66
+ if (revalidateSeconds === Infinity) return STATIC_CACHE_CONTROL;
67
+ return buildRevalidateCacheControl(revalidateSeconds, expireSeconds);
68
+ }
69
+ //#endregion
70
+ export { NEVER_CACHE_CONTROL as ISR_NEVER_CACHE_CONTROL, NO_STORE_CACHE_CONTROL as ISR_NO_STORE_CACHE_CONTROL, buildAppRouteMissIsrCacheControl, buildMissIsrCacheControl, decideIsr };
@@ -0,0 +1,24 @@
1
+ import { MetadataFileRoute, MetadataRouteHeadData } from "./metadata-routes.js";
2
+
3
+ //#region src/server/metadata-route-build-data.d.ts
4
+ type MetadataRouteEntrySourceInput = {
5
+ entryData: MetadataRouteEntryData;
6
+ moduleName?: string;
7
+ patternParts?: readonly string[] | null;
8
+ };
9
+ type MetadataRouteEntryData = {
10
+ type: MetadataFileRoute["type"];
11
+ isDynamic: boolean;
12
+ routePrefix: string;
13
+ routeSegments: readonly string[];
14
+ servedUrl: string;
15
+ contentType: string;
16
+ contentHash: string;
17
+ headData?: MetadataRouteHeadData | null;
18
+ fileDataBase64?: string;
19
+ };
20
+ declare function createMetadataRouteEntryData(route: MetadataFileRoute): MetadataRouteEntryData;
21
+ declare function createMetadataRouteEntrySource(input: MetadataRouteEntrySourceInput): string;
22
+ declare function createMetadataRouteEntriesSource(routes: readonly MetadataFileRoute[], moduleNames: ReadonlyMap<string, string>): string[];
23
+ //#endregion
24
+ export { createMetadataRouteEntriesSource, createMetadataRouteEntryData, createMetadataRouteEntrySource };