@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,168 @@
1
+ import { isInsideUnifiedScope, runWithUnifiedStateMutation } from "../shims/unified-request-context.js";
2
+ import { peekDynamicUsage, peekRenderRequestApiUsage } from "../shims/headers.js";
3
+ import { _peekRequestScopedCacheLife, _peekUnstableCacheObservations } from "../shims/cache-request-state.js";
4
+ import { getCollectedFetchTags, peekCacheableFetchObservations, peekDynamicFetchObservations } from "../shims/fetch-cache.js";
5
+ import { isPromiseLike } from "../utils/promise.js";
6
+ //#region src/server/app-layout-param-observation.ts
7
+ const STATIC_LAYOUT_OBSERVATION_SKIP_RULES = [
8
+ ["SKIP_LAYOUT_PARAMS_OBSERVATION_INCOMPLETE", (observation) => observation.completeness !== "complete"],
9
+ ["SKIP_LAYOUT_PARAMS_PRESENT", (observation) => observation.paramScopeKeys.length > 0],
10
+ ["SKIP_LAYOUT_PARAMS_OBSERVED", (observation) => observation.observed],
11
+ ["SKIP_LAYOUT_DYNAMIC_USAGE_OBSERVED", (observation) => observation.dynamicUsageObserved],
12
+ ["SKIP_LAYOUT_REQUEST_API_OBSERVED", (observation) => observation.requestApis.length > 0],
13
+ ["SKIP_LAYOUT_REVALIDATE_PRESENT", (observation) => observation.finiteRevalidateSeconds !== null],
14
+ ["SKIP_LAYOUT_CACHE_LIFE_OBSERVED", (observation) => observation.cacheLifeObserved],
15
+ ["SKIP_LAYOUT_UNSTABLE_CACHE_OBSERVED", (observation) => observation.unstableCaches.length > 0],
16
+ ["SKIP_LAYOUT_CACHE_TAGS_OBSERVED", (observation) => observation.cacheTags.length > 0],
17
+ ["SKIP_LAYOUT_CACHEABLE_FETCHES_OBSERVED", (observation) => observation.cacheableFetchCount > 0],
18
+ ["SKIP_LAYOUT_DYNAMIC_FETCHES_OBSERVED", (observation) => observation.dynamicFetchCount > 0]
19
+ ];
20
+ function createStaticLayoutObservationTraceFields(observation) {
21
+ return {
22
+ cacheLifeObserved: observation.cacheLifeObserved,
23
+ cacheTags: observation.cacheTags,
24
+ cacheableFetchCount: observation.cacheableFetchCount,
25
+ dynamicFetchCount: observation.dynamicFetchCount,
26
+ dynamicUsageObserved: observation.dynamicUsageObserved,
27
+ finiteRevalidateSeconds: observation.finiteRevalidateSeconds,
28
+ observedParamKeys: observation.keys,
29
+ paramScopeKeys: observation.paramScopeKeys,
30
+ requestApis: observation.requestApis,
31
+ unstableCacheCount: observation.unstableCaches.length,
32
+ unstableCacheKeyHashes: observation.unstableCaches.map((cache) => cache.keyHash),
33
+ unstableCacheRevalidates: observation.unstableCaches.map((cache) => String(cache.revalidate)),
34
+ unstableCacheTagCounts: observation.unstableCaches.map((cache) => String(cache.tagCount)),
35
+ unstableCacheTagHashes: observation.unstableCaches.map((cache) => cache.tagHash ?? "none")
36
+ };
37
+ }
38
+ function getStaticLayoutObservationSkipRejection(observation) {
39
+ for (const [code, matches] of STATIC_LAYOUT_OBSERVATION_SKIP_RULES) if (matches(observation)) return {
40
+ code,
41
+ fields: createStaticLayoutObservationTraceFields(observation)
42
+ };
43
+ return null;
44
+ }
45
+ function isAppLayoutObservationUnsafeForStaticReuse(observation) {
46
+ return getStaticLayoutObservationSkipRejection(observation) !== null;
47
+ }
48
+ function createAppLayoutParamAccessTracker() {
49
+ const observations = /* @__PURE__ */ new Map();
50
+ const ensureObservation = (layoutId) => {
51
+ const existing = observations.get(layoutId);
52
+ if (existing) return existing;
53
+ const created = {
54
+ cacheLifeObserved: false,
55
+ cacheTags: /* @__PURE__ */ new Set(),
56
+ cacheableFetches: /* @__PURE__ */ new Set(),
57
+ dynamicFetches: /* @__PURE__ */ new Set(),
58
+ dynamicUsageObserved: false,
59
+ finiteRevalidateSeconds: null,
60
+ keys: /* @__PURE__ */ new Set(),
61
+ observed: false,
62
+ paramScopeKeys: /* @__PURE__ */ new Set(),
63
+ probeComplete: false,
64
+ requestApis: /* @__PURE__ */ new Set(),
65
+ unstableCaches: /* @__PURE__ */ new Map()
66
+ };
67
+ observations.set(layoutId, created);
68
+ return created;
69
+ };
70
+ const markObserved = (layoutId, keys) => {
71
+ const observation = ensureObservation(layoutId);
72
+ observation.observed = true;
73
+ for (const key of keys) observation.keys.add(key);
74
+ };
75
+ const markProbeComplete = (layoutId) => {
76
+ ensureObservation(layoutId).probeComplete = true;
77
+ };
78
+ const runWithIsolatedProbeDependencies = (probe) => {
79
+ if (!isInsideUnifiedScope()) return probe();
80
+ return runWithUnifiedStateMutation((ctx) => {
81
+ ctx.cacheableFetchUrls = /* @__PURE__ */ new Set();
82
+ ctx.currentRequestTags = [];
83
+ ctx.currentFetchSoftTags = [];
84
+ ctx.dynamicFetchUrls = /* @__PURE__ */ new Set();
85
+ ctx.dynamicUsageDetected = false;
86
+ ctx.renderRequestApiUsage = /* @__PURE__ */ new Set();
87
+ ctx.requestScopedCacheLife = null;
88
+ ctx.unstableCacheObservations = /* @__PURE__ */ new Map();
89
+ }, probe);
90
+ };
91
+ const recordProbeDependencies = (layoutId) => {
92
+ const observation = ensureObservation(layoutId);
93
+ if (peekDynamicUsage()) observation.dynamicUsageObserved = true;
94
+ if (_peekRequestScopedCacheLife() !== null) observation.cacheLifeObserved = true;
95
+ for (const tag of getCollectedFetchTags()) observation.cacheTags.add(tag);
96
+ for (const url of peekCacheableFetchObservations()) observation.cacheableFetches.add(url);
97
+ for (const url of peekDynamicFetchObservations()) observation.dynamicFetches.add(url);
98
+ for (const requestApi of peekRenderRequestApiUsage()) observation.requestApis.add(requestApi);
99
+ for (const unstableCache of _peekUnstableCacheObservations()) observation.unstableCaches.set(unstableCache.keyHash, unstableCache);
100
+ };
101
+ return {
102
+ createThenableParamsObserver(layoutId) {
103
+ return { observeParamAccess(keys) {
104
+ markObserved(layoutId, keys);
105
+ } };
106
+ },
107
+ getLayoutObservation(layoutId) {
108
+ const observation = observations.get(layoutId);
109
+ if (!observation) return {
110
+ cacheLifeObserved: false,
111
+ cacheTags: [],
112
+ cacheableFetchCount: 0,
113
+ completeness: "unknown",
114
+ dynamicFetchCount: 0,
115
+ dynamicUsageObserved: false,
116
+ finiteRevalidateSeconds: null,
117
+ keys: [],
118
+ observed: false,
119
+ paramScopeKeys: [],
120
+ requestApis: [],
121
+ unstableCaches: []
122
+ };
123
+ return {
124
+ cacheLifeObserved: observation.cacheLifeObserved,
125
+ cacheTags: [...observation.cacheTags].sort(),
126
+ cacheableFetchCount: observation.cacheableFetches.size,
127
+ completeness: observation.probeComplete ? "complete" : "unknown",
128
+ dynamicFetchCount: observation.dynamicFetches.size,
129
+ dynamicUsageObserved: observation.dynamicUsageObserved,
130
+ finiteRevalidateSeconds: observation.finiteRevalidateSeconds,
131
+ keys: [...observation.keys].sort(),
132
+ observed: observation.observed,
133
+ paramScopeKeys: [...observation.paramScopeKeys].sort(),
134
+ requestApis: [...observation.requestApis].sort(),
135
+ unstableCaches: [...observation.unstableCaches.values()].sort((a, b) => a.keyHash.localeCompare(b.keyHash))
136
+ };
137
+ },
138
+ recordLayoutFiniteRevalidate(layoutId, revalidateSeconds) {
139
+ if (!Number.isFinite(revalidateSeconds) || revalidateSeconds <= 0) return;
140
+ const observation = ensureObservation(layoutId);
141
+ observation.finiteRevalidateSeconds = observation.finiteRevalidateSeconds === null ? revalidateSeconds : Math.min(observation.finiteRevalidateSeconds, revalidateSeconds);
142
+ },
143
+ recordLayoutParamScope(layoutId, paramScopeKeys) {
144
+ const observation = ensureObservation(layoutId);
145
+ for (const key of paramScopeKeys) observation.paramScopeKeys.add(key);
146
+ },
147
+ runLayoutProbe(layoutId, probe) {
148
+ return runWithIsolatedProbeDependencies(() => {
149
+ const result = probe();
150
+ if (!isPromiseLike(result)) {
151
+ recordProbeDependencies(layoutId);
152
+ markProbeComplete(layoutId);
153
+ return result;
154
+ }
155
+ return Promise.resolve(result).then((resolved) => {
156
+ recordProbeDependencies(layoutId);
157
+ markProbeComplete(layoutId);
158
+ return resolved;
159
+ }, (error) => {
160
+ recordProbeDependencies(layoutId);
161
+ throw error;
162
+ });
163
+ });
164
+ }
165
+ };
166
+ }
167
+ //#endregion
168
+ export { createAppLayoutParamAccessTracker, getStaticLayoutObservationSkipRejection, isAppLayoutObservationUnsafeForStaticReuse };
@@ -0,0 +1,46 @@
1
+ import { NextI18nConfig } from "../config/next-config.js";
2
+ import { MiddlewareModule } from "./middleware-runtime.js";
3
+ import { FLIGHT_HEADERS } from "./headers.js";
4
+
5
+ //#region src/server/app-middleware.d.ts
6
+ type AppMiddlewareContext = {
7
+ headers: Headers | null;
8
+ requestHeaders: Headers | null;
9
+ status: number | null;
10
+ };
11
+ type ApplyAppMiddlewareOptions = {
12
+ basePath?: string;
13
+ cleanPathname: string;
14
+ context: AppMiddlewareContext;
15
+ i18nConfig?: NextI18nConfig | null;
16
+ /**
17
+ * Whether the inbound request was a `_next/data` fetch. Captured from the
18
+ * raw incoming headers by the caller, because `x-nextjs-data` is in
19
+ * INTERNAL_HEADERS and is stripped before this function runs.
20
+ */
21
+ isDataRequest?: boolean;
22
+ filePath?: string;
23
+ isProxy: boolean;
24
+ module: MiddlewareModule;
25
+ request: Request;
26
+ /**
27
+ * Forwarded to `executeMiddleware` so the NextRequest exposes a NextURL with
28
+ * the configured trailingSlash policy. This is what makes
29
+ * `NextResponse.redirect(request.nextUrl)` emit a Location that honours
30
+ * `trailingSlash`.
31
+ */
32
+ trailingSlash?: boolean;
33
+ };
34
+ type ApplyAppMiddlewareResult = {
35
+ kind: "continue";
36
+ cleanPathname: string;
37
+ search: string | null;
38
+ } | {
39
+ kind: "response";
40
+ response: Response;
41
+ };
42
+ declare function isExternalMiddlewareRewrite(rewriteUrl: string, request: Request): boolean;
43
+ declare function proxyExternalMiddlewareRewrite(request: Request, rewriteUrl: string, context: AppMiddlewareContext): Promise<Response>;
44
+ declare function applyAppMiddleware(options: ApplyAppMiddlewareOptions): Promise<ApplyAppMiddlewareResult>;
45
+ //#endregion
46
+ export { AppMiddlewareContext, ApplyAppMiddlewareOptions, ApplyAppMiddlewareResult, FLIGHT_HEADERS, applyAppMiddleware, isExternalMiddlewareRewrite, proxyExternalMiddlewareRewrite };
@@ -0,0 +1,168 @@
1
+ import { FLIGHT_HEADERS, VINEXT_MW_CTX_HEADER } from "./headers.js";
2
+ import { buildRequestHeadersFromMiddlewareResponse } from "./middleware-request-headers.js";
3
+ import { isExternalUrl, proxyExternalRequest } from "../config/config-matchers.js";
4
+ import { internalServerErrorResponse } from "./http-error-responses.js";
5
+ import { cloneRequestWithHeaders, processMiddlewareHeaders } from "./request-pipeline.js";
6
+ import { executeMiddleware } from "./middleware-runtime.js";
7
+ import { applyMiddlewareRequestHeaders, setHeadersContext } from "../shims/headers.js";
8
+ import { setNavigationContext } from "../shims/navigation-context-state.js";
9
+ import { mergeMiddlewareResponseHeaders } from "./middleware-response-headers.js";
10
+ import "../shims/navigation.js";
11
+ //#region src/server/app-middleware.ts
12
+ const FLIGHT_HEADER_SET = new Set(FLIGHT_HEADERS);
13
+ function isForwardedMiddlewareContext(value) {
14
+ return !!value && typeof value === "object";
15
+ }
16
+ function requestWithoutFlightHeaders(request) {
17
+ let hasFlightHeader = false;
18
+ const headers = new Headers();
19
+ for (const [key, value] of request.headers) if (FLIGHT_HEADER_SET.has(key.toLowerCase())) hasFlightHeader = true;
20
+ else headers.append(key, value);
21
+ if (!hasFlightHeader) return request;
22
+ return cloneRequestWithHeaders(request.body ? request.clone() : request, headers);
23
+ }
24
+ function appendForwardedHeader(headers, value) {
25
+ if (!Array.isArray(value) || value.length < 2) return;
26
+ const key = value[0];
27
+ const headerValue = value[1];
28
+ if (typeof key === "string" && typeof headerValue === "string") headers.append(key, headerValue);
29
+ }
30
+ function responseFromMiddlewareRedirect(result) {
31
+ if (result.response) return result.response;
32
+ const headers = new Headers(result.responseHeaders);
33
+ if (result.redirectUrl) headers.set("Location", result.redirectUrl);
34
+ return new Response(null, {
35
+ status: result.redirectStatus ?? 307,
36
+ headers
37
+ });
38
+ }
39
+ function isExternalMiddlewareRewrite(rewriteUrl, request) {
40
+ return new URL(rewriteUrl, request.url).origin !== new URL(request.url).origin;
41
+ }
42
+ function requestWithMiddlewareRequestHeaders(request, middlewareHeaders) {
43
+ const nextHeaders = middlewareHeaders ? buildRequestHeadersFromMiddlewareResponse(request.headers, middlewareHeaders, { preserveCredentialHeaders: true }) : null;
44
+ if (!nextHeaders) return request;
45
+ const init = {
46
+ method: request.method,
47
+ headers: nextHeaders,
48
+ body: request.body
49
+ };
50
+ if (request.body) Object.defineProperty(init, "duplex", {
51
+ value: "half",
52
+ enumerable: true
53
+ });
54
+ return new Request(request.url, init);
55
+ }
56
+ async function proxyExternalMiddlewareRewrite(request, rewriteUrl, context) {
57
+ const proxyRequest = requestWithMiddlewareRequestHeaders(request, context.requestHeaders ?? context.headers);
58
+ setHeadersContext(null);
59
+ setNavigationContext(null);
60
+ const proxyResponse = await proxyExternalRequest(proxyRequest, rewriteUrl);
61
+ const headers = new Headers(proxyResponse.headers);
62
+ processMiddlewareHeaders(headers);
63
+ if (!context.headers) return new Response(proxyResponse.body, {
64
+ status: proxyResponse.status,
65
+ statusText: proxyResponse.statusText,
66
+ headers
67
+ });
68
+ const middlewareHeaders = new Headers(context.headers);
69
+ processMiddlewareHeaders(middlewareHeaders);
70
+ mergeMiddlewareResponseHeaders(headers, middlewareHeaders);
71
+ return new Response(proxyResponse.body, {
72
+ status: proxyResponse.status,
73
+ statusText: proxyResponse.statusText,
74
+ headers
75
+ });
76
+ }
77
+ function applyForwardedMiddlewareContext(request, context) {
78
+ if (process.env.NODE_ENV === "production") return { applied: false };
79
+ const header = request.headers.get(VINEXT_MW_CTX_HEADER);
80
+ if (!header) return { applied: false };
81
+ try {
82
+ const data = JSON.parse(header);
83
+ if (!isForwardedMiddlewareContext(data)) return { applied: false };
84
+ if (Array.isArray(data.h) && data.h.length > 0) {
85
+ context.headers = new Headers();
86
+ for (const entry of data.h) appendForwardedHeader(context.headers, entry);
87
+ }
88
+ if (typeof data.s === "number") context.status = data.s;
89
+ if (typeof data.r === "string" && data.r.length > 0) return {
90
+ applied: true,
91
+ rewriteUrl: data.r
92
+ };
93
+ return { applied: true };
94
+ } catch (e) {
95
+ console.error("[vinext] Failed to parse forwarded middleware context:", e);
96
+ return { applied: false };
97
+ }
98
+ }
99
+ async function applyAppMiddleware(options) {
100
+ const forwarded = applyForwardedMiddlewareContext(options.request, options.context);
101
+ const middlewareRequest = requestWithoutFlightHeaders(options.request);
102
+ let cleanPathname = options.cleanPathname;
103
+ let search = null;
104
+ if (forwarded.rewriteUrl) try {
105
+ if (isExternalMiddlewareRewrite(forwarded.rewriteUrl, middlewareRequest)) return {
106
+ kind: "response",
107
+ response: await proxyExternalMiddlewareRewrite(middlewareRequest, forwarded.rewriteUrl, options.context)
108
+ };
109
+ const rewriteParsed = new URL(forwarded.rewriteUrl, middlewareRequest.url);
110
+ cleanPathname = rewriteParsed.pathname;
111
+ search = rewriteParsed.search;
112
+ } catch (e) {
113
+ console.error("[vinext] Failed to apply forwarded middleware rewrite:", e);
114
+ forwarded.applied = false;
115
+ }
116
+ if (!forwarded.applied) {
117
+ const result = await executeMiddleware({
118
+ basePath: options.basePath,
119
+ hadBasePath: true,
120
+ filePath: options.filePath,
121
+ i18nConfig: options.i18nConfig,
122
+ isDataRequest: options.isDataRequest,
123
+ isProxy: options.isProxy,
124
+ module: options.module,
125
+ normalizedPathname: cleanPathname,
126
+ request: middlewareRequest,
127
+ trailingSlash: options.trailingSlash
128
+ });
129
+ if (!result.continue) {
130
+ if (result.redirectUrl) return {
131
+ kind: "response",
132
+ response: responseFromMiddlewareRedirect(result)
133
+ };
134
+ if (result.response) return {
135
+ kind: "response",
136
+ response: result.response
137
+ };
138
+ return {
139
+ kind: "response",
140
+ response: internalServerErrorResponse()
141
+ };
142
+ }
143
+ if (result.responseHeaders) options.context.headers = new Headers(result.responseHeaders);
144
+ if (result.status !== void 0) options.context.status = result.status;
145
+ if (result.rewriteUrl) {
146
+ if (result.rewriteStatus !== void 0) options.context.status = result.rewriteStatus;
147
+ if (isExternalUrl(result.rewriteUrl)) return {
148
+ kind: "response",
149
+ response: await proxyExternalMiddlewareRewrite(middlewareRequest, result.rewriteUrl, options.context)
150
+ };
151
+ const rewriteParsed = new URL(result.rewriteUrl, middlewareRequest.url);
152
+ cleanPathname = rewriteParsed.pathname;
153
+ search = rewriteParsed.search;
154
+ }
155
+ }
156
+ if (options.context.headers) {
157
+ options.context.requestHeaders = new Headers(options.context.headers);
158
+ applyMiddlewareRequestHeaders(options.context.headers);
159
+ processMiddlewareHeaders(options.context.headers);
160
+ }
161
+ return {
162
+ kind: "continue",
163
+ cleanPathname,
164
+ search
165
+ };
166
+ }
167
+ //#endregion
168
+ export { FLIGHT_HEADERS, applyAppMiddleware, isExternalMiddlewareRewrite, proxyExternalMiddlewareRewrite };
@@ -0,0 +1,35 @@
1
+ //#region src/server/app-mounted-slots-header.d.ts
2
+ /**
3
+ * Normalize the `x-vinext-mounted-slots` header for request handling and cache keying.
4
+ *
5
+ * The browser sends mounted slot ids as a space-separated list in the order slots were
6
+ * rendered, which changes across navigations. This normalizes to a canonical form
7
+ * (sorted, deduplicated) so equivalent slot sets map to the same RSC cache entry.
8
+ *
9
+ * Security: the value flows into the ISR RSC cache key (`appIsrRscKey`). Without
10
+ * bounds, an attacker who controls this header can fabricate unbounded distinct
11
+ * values to fan out KV writes (per-write billing) or fragment the cache. See
12
+ * `SECURITY-AUDIT-2026-05.md` finding F-PROD-1. The legitimate wire format is a
13
+ * whitespace-separated list of `slot:<name>:<treePath>` tokens (see
14
+ * `createAppPayloadSlotId` in `app-elements-wire.ts`); anything else is rejected.
15
+ *
16
+ * Bounds applied:
17
+ * - Total raw header value capped at MAX_RAW_HEADER_LENGTH bytes (returns null
18
+ * if exceeded so the request is treated as if the header were absent).
19
+ * - Each token capped at MAX_TOKEN_LENGTH bytes.
20
+ * - Token count capped at MAX_SLOT_TOKENS (extras are dropped after sort + dedup).
21
+ * - Each token must match the legitimate slot-id shape, as defined by the
22
+ * AppElements wire codec (`AppElementsWire.isSlotId`). Wire-format details
23
+ * are intentionally kept inside the codec so this module does not duplicate
24
+ * them. Malformed tokens are dropped silently rather than rejecting the
25
+ * whole request — this matches the prior forgiving behavior for browsers
26
+ * that send legitimate but stale formats during rolling deploys.
27
+ *
28
+ * Consumed by:
29
+ * - app-rsc-request-normalization (request lifecycle, reads incoming header)
30
+ * - app-elements (outgoing x-vinext-mounted-slots construction)
31
+ * - isr-cache (RSC cache key generation)
32
+ */
33
+ declare function normalizeMountedSlotsHeader(raw: string | null | undefined): string | null;
34
+ //#endregion
35
+ export { normalizeMountedSlotsHeader };
@@ -0,0 +1,58 @@
1
+ import { AppElementsWire } from "./app-elements-wire.js";
2
+ //#region src/server/app-mounted-slots-header.ts
3
+ /**
4
+ * Normalize the `x-vinext-mounted-slots` header for request handling and cache keying.
5
+ *
6
+ * The browser sends mounted slot ids as a space-separated list in the order slots were
7
+ * rendered, which changes across navigations. This normalizes to a canonical form
8
+ * (sorted, deduplicated) so equivalent slot sets map to the same RSC cache entry.
9
+ *
10
+ * Security: the value flows into the ISR RSC cache key (`appIsrRscKey`). Without
11
+ * bounds, an attacker who controls this header can fabricate unbounded distinct
12
+ * values to fan out KV writes (per-write billing) or fragment the cache. See
13
+ * `SECURITY-AUDIT-2026-05.md` finding F-PROD-1. The legitimate wire format is a
14
+ * whitespace-separated list of `slot:<name>:<treePath>` tokens (see
15
+ * `createAppPayloadSlotId` in `app-elements-wire.ts`); anything else is rejected.
16
+ *
17
+ * Bounds applied:
18
+ * - Total raw header value capped at MAX_RAW_HEADER_LENGTH bytes (returns null
19
+ * if exceeded so the request is treated as if the header were absent).
20
+ * - Each token capped at MAX_TOKEN_LENGTH bytes.
21
+ * - Token count capped at MAX_SLOT_TOKENS (extras are dropped after sort + dedup).
22
+ * - Each token must match the legitimate slot-id shape, as defined by the
23
+ * AppElements wire codec (`AppElementsWire.isSlotId`). Wire-format details
24
+ * are intentionally kept inside the codec so this module does not duplicate
25
+ * them. Malformed tokens are dropped silently rather than rejecting the
26
+ * whole request — this matches the prior forgiving behavior for browsers
27
+ * that send legitimate but stale formats during rolling deploys.
28
+ *
29
+ * Consumed by:
30
+ * - app-rsc-request-normalization (request lifecycle, reads incoming header)
31
+ * - app-elements (outgoing x-vinext-mounted-slots construction)
32
+ * - isr-cache (RSC cache key generation)
33
+ */
34
+ /** Hard cap on the raw header value byte length. Real values are <1 KB. */
35
+ const MAX_RAW_HEADER_LENGTH = 4096;
36
+ /** Hard cap on a single slot token byte length. */
37
+ const MAX_TOKEN_LENGTH = 256;
38
+ /** Hard cap on the number of slot tokens kept after normalization. */
39
+ const MAX_SLOT_TOKENS = 16;
40
+ /**
41
+ * Validate a single mounted-slot token. Shape validation is delegated to the
42
+ * AppElements wire codec so the wire format definition lives in exactly one
43
+ * place. This module only enforces the additional security cap on token byte
44
+ * length to bound cache-key cardinality.
45
+ */
46
+ function isValidSlotToken(token) {
47
+ if (token.length === 0 || token.length > MAX_TOKEN_LENGTH) return false;
48
+ return AppElementsWire.isSlotId(token);
49
+ }
50
+ function normalizeMountedSlotsHeader(raw) {
51
+ if (!raw) return null;
52
+ if (raw.length > MAX_RAW_HEADER_LENGTH) return null;
53
+ const validTokens = raw.split(/\s+/).filter((token) => token && isValidSlotToken(token));
54
+ if (validTokens.length === 0) return null;
55
+ return Array.from(new Set(validTokens)).sort().slice(0, MAX_SLOT_TOKENS).join(" ") || null;
56
+ }
57
+ //#endregion
58
+ export { normalizeMountedSlotsHeader };
@@ -0,0 +1,53 @@
1
+ import { RouteManifest, RouteManifestRoute } from "../routing/app-route-graph.js";
2
+ import { AppElements } from "./app-elements-wire.js";
3
+ //#region src/server/app-optimistic-routing.d.ts
4
+ type OptimisticRouteMatch = {
5
+ params: Record<string, string | string[]>;
6
+ route: RouteManifestRoute;
7
+ };
8
+ type OptimisticRouteTemplate = {
9
+ elements: AppElements;
10
+ mountedSlotsHeader: string | null;
11
+ pageElementIds: readonly string[];
12
+ routeId: string;
13
+ };
14
+ type OptimisticNavigationPayload = {
15
+ elements: AppElements;
16
+ params: Record<string, string | string[]>;
17
+ template: OptimisticRouteTemplate;
18
+ };
19
+ declare function getOptimisticRouteTemplateKey(options: {
20
+ interceptionContext: string | null;
21
+ mountedSlotsHeader: string | null;
22
+ routeId: string;
23
+ }): string;
24
+ declare function getOptimisticPrefetchSourceKey(options: {
25
+ cacheKey: string;
26
+ interceptionContext: string | null;
27
+ mountedSlotsHeader: string | null;
28
+ }): string;
29
+ declare function matchOptimisticRouteManifestRoute(options: {
30
+ basePath: string;
31
+ href: string;
32
+ routeManifest: RouteManifest;
33
+ }): OptimisticRouteMatch | null;
34
+ declare function createOptimisticRouteTemplate(options: {
35
+ allowLoadingShell?: boolean;
36
+ basePath: string;
37
+ elements: AppElements;
38
+ href: string;
39
+ interceptionContext: string | null;
40
+ mountedSlotsHeader: string | null;
41
+ routeManifest: RouteManifest;
42
+ }): OptimisticRouteTemplate | null;
43
+ declare function createOptimisticRouteElements(template: OptimisticRouteTemplate): AppElements;
44
+ declare function resolveOptimisticNavigationPayload(options: {
45
+ basePath: string;
46
+ href: string;
47
+ interceptionContext: string | null;
48
+ mountedSlotsHeader: string | null;
49
+ routeManifest: RouteManifest;
50
+ templates: ReadonlyMap<string, OptimisticRouteTemplate>;
51
+ }): OptimisticNavigationPayload | null;
52
+ //#endregion
53
+ export { OptimisticRouteTemplate, createOptimisticRouteElements, createOptimisticRouteTemplate, getOptimisticPrefetchSourceKey, getOptimisticRouteTemplateKey, matchOptimisticRouteManifestRoute, resolveOptimisticNavigationPayload };