@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,62 @@
1
+ import { NEXTJS_ACTION_NOT_FOUND_HEADER } from "./headers.js";
2
+ import { UnrecognizedActionError } from "../shims/unrecognized-action-error.js";
3
+ //#region src/server/server-action-not-found.ts
4
+ const SERVER_ACTION_NOT_FOUND_DOCS = "https://nextjs.org/docs/messages/failed-to-find-server-action";
5
+ const SERVER_ACTION_NOT_FOUND_BODY = "Server action not found.";
6
+ function getServerActionNotFoundPrefix(actionId) {
7
+ return `Failed to find Server Action${actionId ? ` "${actionId}"` : ""}.`;
8
+ }
9
+ function getServerActionNotFoundMessage(actionId) {
10
+ return `${getServerActionNotFoundPrefix(actionId)} This request might be from an older or newer deployment.\nRead more: ${SERVER_ACTION_NOT_FOUND_DOCS}`;
11
+ }
12
+ function getServerActionNotFoundClientMessage(actionId) {
13
+ return `Server Action "${actionId}" was not found on the server. \nRead more: ${SERVER_ACTION_NOT_FOUND_DOCS}`;
14
+ }
15
+ function getUnknownMessage(error) {
16
+ if (error instanceof Error) return error.message;
17
+ return typeof error === "string" ? error : "";
18
+ }
19
+ function isServerActionNotFoundError(error, actionId) {
20
+ const message = getUnknownMessage(error);
21
+ if (!message) return false;
22
+ if (actionId && message.startsWith(getServerActionNotFoundPrefix(actionId))) return true;
23
+ if (!actionId && message.startsWith("Failed to find Server Action")) return true;
24
+ if (actionId) {
25
+ const moduleId = actionId.split("#")[0];
26
+ if (message.includes(`[vite-rsc] invalid server reference '${actionId}'`) || moduleId && moduleId !== actionId && message.includes(`[vite-rsc] invalid server reference '${moduleId}'`)) return true;
27
+ if (message.includes(`server reference not found '${actionId}'`) || moduleId && moduleId !== actionId && message.includes(`server reference not found '${moduleId}'`)) return true;
28
+ return false;
29
+ }
30
+ return /\[vite-rsc] invalid server reference '/.test(message) || /server reference not found '/.test(message);
31
+ }
32
+ function createServerActionNotFoundResponse() {
33
+ return new Response(SERVER_ACTION_NOT_FOUND_BODY, {
34
+ status: 404,
35
+ headers: {
36
+ [NEXTJS_ACTION_NOT_FOUND_HEADER]: "1",
37
+ "content-type": "text/plain"
38
+ }
39
+ });
40
+ }
41
+ function isServerActionNotFoundResponse(response) {
42
+ return response.headers.get(NEXTJS_ACTION_NOT_FOUND_HEADER) === "1";
43
+ }
44
+ /**
45
+ * Throw an `UnrecognizedActionError` when the server reported the requested
46
+ * server action id as unknown (the `x-nextjs-action-not-found` response
47
+ * header); otherwise return so the caller can keep processing the response.
48
+ *
49
+ * The client-side counterpart of `createServerActionNotFoundResponse`. The
50
+ * typed error lets client `catch` blocks call the public
51
+ * `unstable_isUnrecognizedActionError` predicate to detect client/server
52
+ * deployment skew and recover (typically by reloading the page).
53
+ *
54
+ * Mirrors Next.js, whose server-action reducer throws `UnrecognizedActionError`
55
+ * on this same response header:
56
+ * https://github.com/vercel/next.js/blob/canary/packages/next/src/client/components/router-reducer/reducers/server-action-reducer.ts
57
+ */
58
+ function throwOnServerActionNotFound(response, actionId) {
59
+ if (isServerActionNotFoundResponse(response)) throw new UnrecognizedActionError(getServerActionNotFoundClientMessage(actionId));
60
+ }
61
+ //#endregion
62
+ export { createServerActionNotFoundResponse, getServerActionNotFoundMessage, isServerActionNotFoundError, throwOnServerActionNotFound };
@@ -0,0 +1,4 @@
1
+ //#region src/server/server-globals.d.ts
2
+ declare function installServerGlobals(): void;
3
+ //#endregion
4
+ export { installServerGlobals };
@@ -0,0 +1,35 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ //#region src/server/server-globals.ts
3
+ /**
4
+ * Server runtime global setup shared by vinext's generated server entries.
5
+ *
6
+ * This module intentionally runs its installer at import time. Generated entry
7
+ * modules import user pages and layouts as static dependencies, so any global
8
+ * correction that must happen before user module evaluation has to live in a
9
+ * side-effect dependency. A runtime function call from the generated entry
10
+ * body would run after static user imports have already evaluated.
11
+ */
12
+ function clearBrowserGlobal(name) {
13
+ const descriptor = Object.getOwnPropertyDescriptor(globalThis, name);
14
+ if (!descriptor && typeof Reflect.get(globalThis, name) === "undefined") return;
15
+ if (!descriptor) Object.defineProperty(globalThis, name, {
16
+ configurable: true,
17
+ value: void 0,
18
+ writable: true
19
+ });
20
+ else if (descriptor.configurable) Reflect.deleteProperty(globalThis, name);
21
+ else Reflect.set(globalThis, name, void 0);
22
+ if (typeof Reflect.get(globalThis, name) !== "undefined") throw new Error(`[vinext] Server runtime exposes a non-removable \`${name}\` global. This breaks Next.js SSR semantics where browser globals must be absent.`);
23
+ }
24
+ function installServerGlobals() {
25
+ clearBrowserGlobal("window");
26
+ clearBrowserGlobal("document");
27
+ if (typeof Reflect.get(globalThis, "AsyncLocalStorage") === "undefined") Object.defineProperty(globalThis, "AsyncLocalStorage", {
28
+ configurable: true,
29
+ value: AsyncLocalStorage,
30
+ writable: true
31
+ });
32
+ }
33
+ installServerGlobals();
34
+ //#endregion
35
+ export { installServerGlobals };
@@ -0,0 +1,61 @@
1
+ import { ArtifactCompatibilityEnvelope, ArtifactCompatibilityEvaluationOptions } from "./artifact-compatibility.js";
2
+ import { StaticLayoutArtifactReuseDecision } from "./cache-proof.js";
3
+ import { ClientReuseManifestEntry, ClientReuseManifestEntryRejection, ClientReuseManifestParseResult, ClientReuseManifestRejection, ClientReuseManifestSkipDisposition, ClientReuseManifestTraceFields } from "./client-reuse-manifest.js";
4
+ import { createStaticLayoutClientReuseArtifactCompatibility, createStaticLayoutClientReusePayloadHash, createStaticLayoutClientReuseRouteId } from "./static-layout-client-reuse-proof.js";
5
+
6
+ //#region src/server/skip-cache-proof.d.ts
7
+ type SkipCacheInvalidationProof = Readonly<{
8
+ kind: "invalidated";
9
+ invalidationEpoch: string | null;
10
+ }> | Readonly<{
11
+ kind: "unknown";
12
+ }> | Readonly<{
13
+ kind: "valid";
14
+ }>;
15
+ type SkipCacheArtifactProof = Readonly<{
16
+ compatibility: ArtifactCompatibilityEnvelope;
17
+ invalidation: SkipCacheInvalidationProof;
18
+ payloadHash: string | null;
19
+ }>;
20
+ type SkipCacheCrossCheckAcceptanceCode = "SKIP_CACHE_CROSS_CHECK_PASSED";
21
+ type SkipCacheCrossCheckVerified = Readonly<{
22
+ code: SkipCacheCrossCheckAcceptanceCode;
23
+ entryId: string;
24
+ fields: ClientReuseManifestTraceFields;
25
+ kind: "verified";
26
+ skipDisposition: ClientReuseManifestSkipDisposition;
27
+ }>;
28
+ type SkipCacheCrossCheckRejected = Readonly<{
29
+ kind: "rejected";
30
+ rejection: ClientReuseManifestEntryRejection;
31
+ skipDisposition: ClientReuseManifestSkipDisposition;
32
+ }>;
33
+ type SkipCacheCrossCheckResult = SkipCacheCrossCheckRejected | SkipCacheCrossCheckVerified;
34
+ type CrossCheckClientReuseManifestEntryWithCacheInput = Readonly<{
35
+ artifact: SkipCacheArtifactProof;
36
+ cacheDecision: StaticLayoutArtifactReuseDecision | null;
37
+ entry: ClientReuseManifestEntry;
38
+ }> & ArtifactCompatibilityEvaluationOptions;
39
+ type ClientReuseSkipTransportPlan = Readonly<{
40
+ entryRejections: readonly ClientReuseManifestEntryRejection[];
41
+ kind: "renderAndSend";
42
+ manifestRejection?: ClientReuseManifestRejection;
43
+ skipDisposition: ClientReuseManifestSkipDisposition;
44
+ skipIneligibleEntryIds: readonly string[];
45
+ skippedEntryIds: readonly string[];
46
+ }> | Readonly<{
47
+ entryRejections: readonly ClientReuseManifestEntryRejection[];
48
+ kind: "skip";
49
+ skipDisposition: ClientReuseManifestSkipDisposition;
50
+ skipIneligibleEntryIds: readonly string[];
51
+ skippedEntryIds: readonly string[];
52
+ }>;
53
+ type CreateClientReuseSkipTransportPlanInput = Readonly<{
54
+ manifest: ClientReuseManifestParseResult;
55
+ maxWireEntriesToVerify?: number;
56
+ verifyEntry: (entry: ClientReuseManifestEntry) => SkipCacheCrossCheckResult;
57
+ }>;
58
+ declare function crossCheckClientReuseManifestEntryWithCache(input: CrossCheckClientReuseManifestEntryWithCacheInput): SkipCacheCrossCheckResult;
59
+ declare function createClientReuseSkipTransportPlan(input: CreateClientReuseSkipTransportPlanInput): ClientReuseSkipTransportPlan;
60
+ //#endregion
61
+ export { SkipCacheInvalidationProof, createClientReuseSkipTransportPlan, createStaticLayoutClientReuseArtifactCompatibility, createStaticLayoutClientReusePayloadHash, createStaticLayoutClientReuseRouteId, crossCheckClientReuseManifestEntryWithCache };
@@ -0,0 +1,168 @@
1
+ import { ARTIFACT_COMPATIBILITY_PROOF_FIELDS, evaluateArtifactCompatibility } from "./artifact-compatibility.js";
2
+ import { createClientReusePayloadHash } from "./client-reuse-manifest.js";
3
+ import { createStaticLayoutClientReuseArtifactCompatibility, createStaticLayoutClientReusePayloadHash, createStaticLayoutClientReuseRouteId } from "./static-layout-client-reuse-proof.js";
4
+ //#region src/server/skip-cache-proof.ts
5
+ function createDisabledSkipDisposition() {
6
+ return {
7
+ code: "SKIP_MODEL_DISABLED",
8
+ enabled: false,
9
+ mode: "renderAndSend"
10
+ };
11
+ }
12
+ function createStaticLayoutSkipDisposition(skippedEntryIds) {
13
+ return {
14
+ code: "SKIP_STATIC_LAYOUT_VERIFIED",
15
+ enabled: true,
16
+ mode: "skipStaticLayout",
17
+ skippedEntryIds: [...skippedEntryIds]
18
+ };
19
+ }
20
+ function rejectSkipCacheCrossCheck(entry, code, fields = {}) {
21
+ return {
22
+ kind: "rejected",
23
+ rejection: {
24
+ code,
25
+ entryId: entry.id,
26
+ fields
27
+ },
28
+ skipDisposition: createDisabledSkipDisposition()
29
+ };
30
+ }
31
+ function collectArtifactCompatibilityProofMismatches(artifactCompatibility, proofCompatibility) {
32
+ const mismatchedFields = [];
33
+ for (const field of ARTIFACT_COMPATIBILITY_PROOF_FIELDS) if (artifactCompatibility[field] !== proofCompatibility[field]) mismatchedFields.push(field);
34
+ return mismatchedFields;
35
+ }
36
+ function isExactArtifactCompatibility(artifactCompatibility, entryCompatibility) {
37
+ return collectArtifactCompatibilityProofMismatches(artifactCompatibility, entryCompatibility).length === 0;
38
+ }
39
+ function assertNever(value) {
40
+ throw new Error(`Unhandled skip/cache proof state: ${String(value)}`);
41
+ }
42
+ function createRenderAndSendPlan(options) {
43
+ return {
44
+ kind: "renderAndSend",
45
+ entryRejections: options.entryRejections ?? [],
46
+ ...options.manifestRejection ? { manifestRejection: options.manifestRejection } : {},
47
+ skipDisposition: createDisabledSkipDisposition(),
48
+ skipIneligibleEntryIds: options.skipIneligibleEntryIds ?? [],
49
+ skippedEntryIds: []
50
+ };
51
+ }
52
+ function createVerificationBudgetExceededRejection(totalWireEntries, maxWireEntriesToVerify) {
53
+ return {
54
+ code: "SKIP_VERIFICATION_BUDGET_EXCEEDED",
55
+ fields: {
56
+ totalWireEntries,
57
+ maxWireEntriesToVerify
58
+ }
59
+ };
60
+ }
61
+ function crossCheckInvalidationProof(entry, invalidation) {
62
+ switch (invalidation.kind) {
63
+ case "valid": return null;
64
+ case "unknown": return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_INVALIDATION_UNKNOWN");
65
+ case "invalidated": return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_INVALIDATED", { invalidationEpoch: invalidation.invalidationEpoch });
66
+ default: return assertNever(invalidation);
67
+ }
68
+ }
69
+ function crossCheckClientReuseManifestEntryWithCache(input) {
70
+ const { cacheDecision, entry } = input;
71
+ if (cacheDecision === null) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_PROOF_MISSING");
72
+ if (cacheDecision.kind === "fallback") return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_PROOF_REJECTED", {
73
+ cacheProofCode: cacheDecision.fallback.code,
74
+ cacheProofMode: cacheDecision.fallback.mode,
75
+ cacheProofScope: cacheDecision.fallback.scope
76
+ });
77
+ const { proof } = cacheDecision;
78
+ if (entry.kind !== "layout" || proof.reuseClass !== "static-layout") return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_REUSE_CLASS_UNSUPPORTED", {
79
+ entryKind: entry.kind,
80
+ reuseClass: proof.reuseClass
81
+ });
82
+ if (entry.id !== proof.candidateOutput.layoutId) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_ENTRY_ID_MISMATCH", {
83
+ cacheEntryId: proof.candidateOutput.layoutId,
84
+ manifestEntryId: entry.id
85
+ });
86
+ const artifactProofMismatches = collectArtifactCompatibilityProofMismatches(input.artifact.compatibility, proof.candidateArtifactCompatibility);
87
+ if (artifactProofMismatches.length > 0) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_ARTIFACT_PROOF_MISMATCH", { mismatchedFields: artifactProofMismatches });
88
+ const artifactCompatibility = evaluateArtifactCompatibility(input.artifact.compatibility, entry.artifactCompatibility, { compatibilityMap: input.compatibilityMap });
89
+ if (artifactCompatibility.kind === "unknown") return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_ARTIFACT_COMPATIBILITY_UNKNOWN", {
90
+ compatibilityFallback: artifactCompatibility.fallback,
91
+ reason: artifactCompatibility.reason
92
+ });
93
+ if (artifactCompatibility.kind === "incompatible") return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_ARTIFACT_COMPATIBILITY_INCOMPATIBLE", {
94
+ compatibilityFallback: artifactCompatibility.fallback,
95
+ reason: artifactCompatibility.reason
96
+ });
97
+ if (entry.variantCacheKey !== proof.variant.cacheKey) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_VARIANT_MISMATCH", {
98
+ cacheVariantCacheKeyHash: createClientReusePayloadHash(proof.variant.cacheKey),
99
+ entryVariantCacheKeyHash: createClientReusePayloadHash(entry.variantCacheKey)
100
+ });
101
+ if (input.artifact.payloadHash === null) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_PAYLOAD_HASH_MISSING");
102
+ if (entry.payloadHash !== input.artifact.payloadHash) return rejectSkipCacheCrossCheck(entry, "SKIP_CACHE_PAYLOAD_HASH_MISMATCH", {
103
+ cachePayloadHash: input.artifact.payloadHash,
104
+ entryPayloadHash: entry.payloadHash
105
+ });
106
+ const invalidationRejection = crossCheckInvalidationProof(entry, input.artifact.invalidation);
107
+ if (invalidationRejection) return invalidationRejection;
108
+ const skipDisposition = isExactArtifactCompatibility(input.artifact.compatibility, entry.artifactCompatibility) ? createStaticLayoutSkipDisposition([entry.id]) : createDisabledSkipDisposition();
109
+ return {
110
+ kind: "verified",
111
+ code: "SKIP_CACHE_CROSS_CHECK_PASSED",
112
+ entryId: entry.id,
113
+ fields: {
114
+ entryKind: entry.kind,
115
+ reuseClass: proof.reuseClass,
116
+ variantCacheKeyHash: createClientReusePayloadHash(proof.variant.cacheKey)
117
+ },
118
+ skipDisposition
119
+ };
120
+ }
121
+ function createClientReuseSkipTransportPlan(input) {
122
+ const { manifest } = input;
123
+ if (manifest.kind === "absent") return createRenderAndSendPlan({});
124
+ if (manifest.kind === "rejected") return createRenderAndSendPlan({ manifestRejection: manifest.rejection });
125
+ const maxWireEntriesToVerify = input.maxWireEntriesToVerify ?? 8;
126
+ if (!Number.isSafeInteger(maxWireEntriesToVerify) || maxWireEntriesToVerify < 0) throw new RangeError("maxWireEntriesToVerify must be a non-negative safe integer");
127
+ const totalWireEntries = manifest.manifest.entries.length + manifest.entryRejections.length;
128
+ if (totalWireEntries > maxWireEntriesToVerify) return createRenderAndSendPlan({
129
+ entryRejections: manifest.entryRejections,
130
+ manifestRejection: createVerificationBudgetExceededRejection(totalWireEntries, maxWireEntriesToVerify)
131
+ });
132
+ const skippedEntryIds = [];
133
+ const skipIneligibleEntryIds = [];
134
+ const entryRejections = [...manifest.entryRejections];
135
+ for (const entry of manifest.manifest.entries) {
136
+ const verification = input.verifyEntry(entry);
137
+ if (verification.kind === "rejected") {
138
+ entryRejections.push(verification.rejection);
139
+ continue;
140
+ }
141
+ if (verification.entryId !== entry.id) {
142
+ entryRejections.push({
143
+ code: "SKIP_CACHE_ENTRY_ID_MISMATCH",
144
+ entryId: entry.id,
145
+ fields: {
146
+ verifierEntryId: verification.entryId,
147
+ manifestEntryId: entry.id
148
+ }
149
+ });
150
+ continue;
151
+ }
152
+ if (verification.skipDisposition.enabled) skippedEntryIds.push(entry.id);
153
+ else skipIneligibleEntryIds.push(entry.id);
154
+ }
155
+ if (skippedEntryIds.length === 0) return createRenderAndSendPlan({
156
+ entryRejections,
157
+ skipIneligibleEntryIds
158
+ });
159
+ return {
160
+ kind: "skip",
161
+ entryRejections,
162
+ skipDisposition: createStaticLayoutSkipDisposition(skippedEntryIds),
163
+ skipIneligibleEntryIds,
164
+ skippedEntryIds
165
+ };
166
+ }
167
+ //#endregion
168
+ export { createClientReuseSkipTransportPlan, createStaticLayoutClientReuseArtifactCompatibility, createStaticLayoutClientReusePayloadHash, createStaticLayoutClientReuseRouteId, crossCheckClientReuseManifestEntryWithCache };
@@ -0,0 +1,34 @@
1
+ //#region src/server/socket-error-backstop.d.ts
2
+ /**
3
+ * Pure predicate: returns the peer-disconnect code when `err` carries
4
+ * one of `ECONNRESET` / `EPIPE` / `ECONNABORTED`, otherwise `undefined`.
5
+ * Exported for unit testing in isolation (no process-state mutation).
6
+ */
7
+ declare function peerDisconnectCode(err: unknown): string | undefined;
8
+ /**
9
+ * Pure predicate: returns `true` when `err` is a benign failure from a
10
+ * dynamic `import()` of a static asset URL — the "URL dependency" pattern
11
+ * that Next.js tolerates at build time. Two shapes are recognised:
12
+ *
13
+ * - `ERR_UNKNOWN_FILE_EXTENSION`: the asset resolved on disk but is not an
14
+ * ES module (e.g. a co-located `./style.css`). The error message ends in
15
+ * the offending extension in quotes: `... extension ".css" for /path`.
16
+ * - `ERR_MODULE_NOT_FOUND`: the asset URL did not resolve (the chunk lives
17
+ * in `dist/server/` but the source asset does not). Node attaches the
18
+ * unresolved specifier on `err.url`; we match only when it points at a
19
+ * static-asset extension.
20
+ *
21
+ * Anything outside this allow-list (including missing `.js`/`.mjs`/`.ts`
22
+ * modules with no extension) returns `false` so real bugs still crash.
23
+ * Exported for unit testing in isolation.
24
+ */
25
+ declare function isBenignAssetImportError(err: unknown): boolean;
26
+ /**
27
+ * Test-only: returns whether the backstop has been installed in this
28
+ * process. Used by the unit test to assert idempotent install via the
29
+ * Symbol.for guard. Not part of the public API.
30
+ */
31
+ declare function isSocketErrorBackstopInstalled(): boolean;
32
+ declare function installSocketErrorBackstop(): void;
33
+ //#endregion
34
+ export { installSocketErrorBackstop, isBenignAssetImportError, isSocketErrorBackstopInstalled, peerDisconnectCode };
@@ -0,0 +1,200 @@
1
+ //#region src/server/socket-error-backstop.ts
2
+ /**
3
+ * Process-level backstop for peer-disconnect errors that escape
4
+ * per-connection / per-request error guards.
5
+ *
6
+ * Three real call sites in vinext that hit this:
7
+ * - `fromWeb(fetch().body).pipe(res)` in proxyExternalRewriteNode.
8
+ * - Streaming surfaces inside `@vitejs/plugin-rsc` with their own
9
+ * pipe topology (destinations aren't inbound connection sockets).
10
+ * - Outbound sockets created by middleware `fetch()`.
11
+ *
12
+ * Node's `pipe()` re-emits source errors onto the destination when
13
+ * the destination has no `'error'` listener, throwing synchronously
14
+ * inside a `nextTick` callback. The throw escapes to
15
+ * `uncaughtException`, where this listener filters it.
16
+ *
17
+ * Filters strictly on peer-disconnect codes (ECONNRESET / EPIPE /
18
+ * ECONNABORTED) plus benign static-asset `import()` rejections (see
19
+ * `isBenignAssetImportError`), and synchronously re-throws everything
20
+ * else, preserving Node's default crash semantics for genuine bugs.
21
+ * This is more conservative than Next.js's equivalent
22
+ * (`router-server.ts`'s log-only handler), which silently swallows
23
+ * every uncaught — vinext keeps real bugs surfacing.
24
+ *
25
+ * **Installed at module load.** Earlier iterations tried to gate
26
+ * install via Vite's `config()` hook (`command === "serve"`) so it
27
+ * was strictly dev-only, but the hook didn't fire reliably in
28
+ * vite-plus's lifecycle — install was silently skipped. The
29
+ * connection-level guard from #911 confirms `configureServer`-tied
30
+ * lifecycle hooks are timing-fragile too. Module-load install is
31
+ * the only place reliably observed to fire (verified via the
32
+ * `VINEXT_DEBUG_SOCKET_ERRORS` marker).
33
+ *
34
+ * **Prerender check is dynamic, not install-time.** Prerender (in
35
+ * `build/prerender.ts` and `build/run-prerender.ts`) calls
36
+ * `startProdServer()` from inside `vinext build` to render pages
37
+ * against a real HTTP server. User `fetch()` calls during prerender
38
+ * hit external APIs that can drop connections; absorbing those would
39
+ * silently produce corrupt prerendered output instead of crashing
40
+ * the build. Prerender already sets `VINEXT_PRERENDER=1` for its
41
+ * own purposes — the listener checks it at fire time and re-throws
42
+ * unconditionally when set, acting as if no listener were installed.
43
+ * Doing the check at install time wouldn't work: `index.ts` loads at
44
+ * Vite plugin import, well before prerender starts, so by the time
45
+ * `VINEXT_PRERENDER` is set the listener has already been installed
46
+ * (we cannot uninstall and re-install per phase).
47
+ *
48
+ * Side-effect of the unconditional re-throw during prerender: an
49
+ * orchestrator-induced ECONNRESET (e.g. the prerender's own HTTP
50
+ * client aborting a stuck route fetch) will surface the build crash
51
+ * as `Error: read ECONNRESET` rather than the underlying route
52
+ * failure. Acceptable trade-off — a hung prerender route is itself
53
+ * a build problem worth surfacing — but the resulting stack will
54
+ * point at the disconnect, not the cause. Set
55
+ * `VINEXT_DEBUG_SOCKET_ERRORS=1` to log peer-disconnect codes if
56
+ * you need to disambiguate.
57
+ *
58
+ * **Test skip is install-time.** Vitest workers that import
59
+ * `index.ts` directly should never have the listener installed —
60
+ * peer-disconnect errors during test runs should surface normally.
61
+ * `process.env.VITEST === "true"` is set by Vitest in every worker;
62
+ * `NODE_ENV === "test"` covers other test runners that follow the
63
+ * standard convention.
64
+ *
65
+ * **Listener ordering.** `index.ts` is imported synchronously at the
66
+ * top of every user's `vite.config.ts`, so vinext's listener registers
67
+ * before most user / tooling listeners (Sentry, OpenTelemetry,
68
+ * structured logging). For peer-disconnect codes the early-return is
69
+ * fine. For non-peer-disconnect errors the synchronous re-throw still
70
+ * crashes the process with the original stack, but listeners
71
+ * registered after vinext don't observe the event. Users who need
72
+ * crash-reporter visibility for non-peer-disconnect errors must
73
+ * register their handler before importing vinext.
74
+ *
75
+ * **Symbol.for caveat.** `Symbol.for("vinext.socketErrorBackstop")`
76
+ * is process-global, so if two different vinext versions are loaded
77
+ * in the same process the first to evaluate wins and the second's
78
+ * filter rules silently don't apply.
79
+ *
80
+ * Set `VINEXT_DEBUG_SOCKET_ERRORS=1` to log a one-line marker each
81
+ * time the listener absorbs an error.
82
+ */
83
+ const SOCKET_BACKSTOP_FLAG = Symbol.for("vinext.socketErrorBackstop");
84
+ /**
85
+ * Pure predicate: returns the peer-disconnect code when `err` carries
86
+ * one of `ECONNRESET` / `EPIPE` / `ECONNABORTED`, otherwise `undefined`.
87
+ * Exported for unit testing in isolation (no process-state mutation).
88
+ */
89
+ function peerDisconnectCode(err) {
90
+ const code = err?.code;
91
+ return code === "ECONNRESET" || code === "EPIPE" || code === "ECONNABORTED" ? code : void 0;
92
+ }
93
+ const STATIC_ASSET_IMPORT_EXTENSIONS = new Set([
94
+ ".css",
95
+ ".scss",
96
+ ".sass",
97
+ ".less",
98
+ ".styl",
99
+ ".png",
100
+ ".jpg",
101
+ ".jpeg",
102
+ ".gif",
103
+ ".svg",
104
+ ".webp",
105
+ ".avif",
106
+ ".ico",
107
+ ".bmp",
108
+ ".woff",
109
+ ".woff2",
110
+ ".ttf",
111
+ ".otf",
112
+ ".eot",
113
+ ".txt",
114
+ ".md",
115
+ ".csv",
116
+ ".xml",
117
+ ".pdf",
118
+ ".wasm"
119
+ ]);
120
+ /**
121
+ * Pure predicate: returns `true` when `err` is a benign failure from a
122
+ * dynamic `import()` of a static asset URL — the "URL dependency" pattern
123
+ * that Next.js tolerates at build time. Two shapes are recognised:
124
+ *
125
+ * - `ERR_UNKNOWN_FILE_EXTENSION`: the asset resolved on disk but is not an
126
+ * ES module (e.g. a co-located `./style.css`). The error message ends in
127
+ * the offending extension in quotes: `... extension ".css" for /path`.
128
+ * - `ERR_MODULE_NOT_FOUND`: the asset URL did not resolve (the chunk lives
129
+ * in `dist/server/` but the source asset does not). Node attaches the
130
+ * unresolved specifier on `err.url`; we match only when it points at a
131
+ * static-asset extension.
132
+ *
133
+ * Anything outside this allow-list (including missing `.js`/`.mjs`/`.ts`
134
+ * modules with no extension) returns `false` so real bugs still crash.
135
+ * Exported for unit testing in isolation.
136
+ */
137
+ function isBenignAssetImportError(err) {
138
+ if (err === null || typeof err !== "object") return false;
139
+ const code = err.code;
140
+ if (code === "ERR_UNKNOWN_FILE_EXTENSION") {
141
+ const message = err.message ?? "";
142
+ const match = /extension\s+"([^"]+)"/.exec(message);
143
+ return match != null && STATIC_ASSET_IMPORT_EXTENSIONS.has(match[1].toLowerCase());
144
+ }
145
+ if (code === "ERR_MODULE_NOT_FOUND") {
146
+ const url = err.url;
147
+ if (typeof url !== "string") return false;
148
+ const pathname = url.split("?", 1)[0].split("#", 1)[0];
149
+ const dot = pathname.lastIndexOf(".");
150
+ if (dot === -1) return false;
151
+ return STATIC_ASSET_IMPORT_EXTENSIONS.has(pathname.slice(dot).toLowerCase());
152
+ }
153
+ return false;
154
+ }
155
+ /**
156
+ * Test-only: returns whether the backstop has been installed in this
157
+ * process. Used by the unit test to assert idempotent install via the
158
+ * Symbol.for guard. Not part of the public API.
159
+ */
160
+ function isSocketErrorBackstopInstalled() {
161
+ return Boolean(process[SOCKET_BACKSTOP_FLAG]);
162
+ }
163
+ function installSocketErrorBackstop() {
164
+ const proc = process;
165
+ if (proc[SOCKET_BACKSTOP_FLAG]) return;
166
+ if (process.env.VITEST === "true" || process.env.NODE_ENV === "test") return;
167
+ proc[SOCKET_BACKSTOP_FLAG] = true;
168
+ const debug = process.env.VINEXT_DEBUG_SOCKET_ERRORS === "1";
169
+ if (debug) console.warn("[vinext] socket-error backstop installed");
170
+ const absorbBenignAssetImport = (reason, kind) => {
171
+ if (!isBenignAssetImportError(reason)) return false;
172
+ if (debug) {
173
+ const code = reason?.code;
174
+ console.warn(`[vinext] absorbed ${kind} ${code} (asset URL import)`);
175
+ }
176
+ return true;
177
+ };
178
+ process.on("uncaughtException", (err) => {
179
+ if (absorbBenignAssetImport(err, "uncaughtException")) return;
180
+ if (process.env.VINEXT_PRERENDER === "1") throw err;
181
+ const code = peerDisconnectCode(err);
182
+ if (code) {
183
+ if (debug) console.warn(`[vinext] absorbed uncaughtException ${code}`);
184
+ return;
185
+ }
186
+ throw err;
187
+ });
188
+ process.on("unhandledRejection", (reason) => {
189
+ if (absorbBenignAssetImport(reason, "unhandledRejection")) return;
190
+ if (process.env.VINEXT_PRERENDER === "1") throw reason;
191
+ const code = peerDisconnectCode(reason);
192
+ if (code) {
193
+ if (debug) console.warn(`[vinext] absorbed unhandledRejection ${code}`);
194
+ return;
195
+ }
196
+ throw reason;
197
+ });
198
+ }
199
+ //#endregion
200
+ export { installSocketErrorBackstop, isBenignAssetImportError, isSocketErrorBackstopInstalled, peerDisconnectCode };
@@ -0,0 +1,56 @@
1
+ //#region src/server/static-file-cache.d.ts
2
+ /** Content-type lookup for static assets. Shared with prod-server.ts. */
3
+ declare const CONTENT_TYPES: Record<string, string>;
4
+ /** A servable file variant with pre-computed response headers. */
5
+ type FileVariant = {
6
+ /** Absolute file path (used for streaming large files). */path: string; /** Uncompressed or encoded byte size for buffer-threshold decisions. */
7
+ size: number; /** Pre-computed response headers. */
8
+ headers: Record<string, string>; /** In-memory buffer for small files (below BUFFER_THRESHOLD). */
9
+ buffer?: Buffer;
10
+ };
11
+ type StaticFileEntry = {
12
+ /** Weak ETag for conditional request matching. */etag: string; /** Pre-computed headers for 304 Not Modified response. */
13
+ notModifiedHeaders: Record<string, string>; /** Original file variant (uncompressed). */
14
+ original: FileVariant; /** Brotli precompressed variant, if .br file exists. */
15
+ br?: FileVariant; /** Gzip precompressed variant, if .gz file exists. */
16
+ gz?: FileVariant; /** Zstandard precompressed variant, if .zst file exists. */
17
+ zst?: FileVariant;
18
+ };
19
+ /**
20
+ * In-memory cache of static file metadata, populated once at server startup.
21
+ *
22
+ * Usage:
23
+ * const cache = await StaticFileCache.create(clientDir);
24
+ * const entry = cache.lookup("/_next/static/app-abc123.js");
25
+ * // entry.br?.headers, entry.original.headers, etc.
26
+ */
27
+ declare class StaticFileCache {
28
+ private readonly entries;
29
+ private constructor();
30
+ /**
31
+ * Scan the client directory and build the cache.
32
+ *
33
+ * Gracefully handles non-existent directories (returns an empty cache).
34
+ */
35
+ static create(clientDir: string): Promise<StaticFileCache>;
36
+ /**
37
+ * Look up cached metadata for a URL pathname.
38
+ *
39
+ * Returns undefined if the file is not in the cache. The root path "/"
40
+ * always returns undefined — index.html is served by SSR/RSC.
41
+ */
42
+ lookup(pathname: string): StaticFileEntry | undefined;
43
+ }
44
+ /**
45
+ * Extract a stable weak ETag from a Vite hashed filename (e.g. `app-DqZc3R4n.js`).
46
+ * The hash is a content hash computed by the bundler — deterministic across
47
+ * identical builds regardless of filesystem timestamps.
48
+ *
49
+ * Must be a weak validator (W/) because the same tag is shared across
50
+ * content-encoded variants (original, .br, .gz, .zst) which are byte-different.
51
+ * Returns null if the filename doesn't contain a recognizable hash suffix,
52
+ * so the caller can fall back to mtime-based ETags.
53
+ */
54
+ declare function etagFromFilenameHash(relativePath: string, ext: string): string | null;
55
+ //#endregion
56
+ export { CONTENT_TYPES, StaticFileCache, etagFromFilenameHash };