@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,83 @@
1
+ import { FontStyle } from "./font-utils.js";
2
+
3
+ //#region src/shims/font-google-base.d.ts
4
+ type FontOptions = {
5
+ weight?: string | string[];
6
+ style?: string | string[];
7
+ subsets?: string[];
8
+ display?: string;
9
+ preload?: boolean;
10
+ fallback?: string[];
11
+ adjustFontFallback?: boolean | string;
12
+ variable?: string;
13
+ axes?: string[];
14
+ };
15
+ type FontResult = {
16
+ className: string;
17
+ style: FontStyle;
18
+ variable?: string;
19
+ };
20
+ type InternalGoogleFontRuntimeOptions = {
21
+ selfHostedCSS?: string;
22
+ preloadUrls?: string[];
23
+ adjustedFallbackCSS?: string;
24
+ fontWeight?: number;
25
+ fontStyle?: "normal" | "italic";
26
+ };
27
+ type FontLoaderOptions = FontOptions & {
28
+ /**
29
+ * Internal payload injected by the vinext:google-fonts transform after
30
+ * metadata validation. Runtime must prefer these values over user options
31
+ * because they represent the resolved Next-compatible face, including
32
+ * metadata defaults such as italic-only families.
33
+ */
34
+ _vinext?: {
35
+ font?: InternalGoogleFontRuntimeOptions;
36
+ };
37
+ };
38
+ /**
39
+ * Build a Google Fonts CSS URL.
40
+ *
41
+ * In production this code path is dead. The build plugin
42
+ * (`vinext:google-fonts` in `src/plugins/fonts.ts`) statically resolves
43
+ * each font call's axis values against the bundled metadata, fetches the
44
+ * Google Fonts CSS, and injects the resulting CSS as
45
+ * `_vinext.font.selfHostedCSS` so the runtime never queries Google. The shim
46
+ * only reaches this builder when the plugin's static parser bails (dynamic
47
+ * options, eval-only shapes), which is dev-only.
48
+ *
49
+ * The dev fallback intentionally has no metadata: shipping the 388 KB
50
+ * `font-data.json` to the Worker bundle would dwarf the rest of the shim,
51
+ * and the production path already has the metadata-aware variant. The
52
+ * tradeoff is that the dev fallback cannot resolve a variable font's
53
+ * actual `wght` axis range. It emits no axis segment when no `weight` is
54
+ * given, which makes Google return the default static face (200) instead
55
+ * of the broken `:wght@100..900` URL that issue #885 reports.
56
+ */
57
+ declare function buildGoogleFontsUrl(family: string, options: FontOptions): string;
58
+ /**
59
+ * Get collected SSR font class styles (used by the renderer).
60
+ * Note: We don't clear the arrays because fonts are loaded at module import
61
+ * time and need to persist across all requests in the Workers environment.
62
+ */
63
+ declare function getSSRFontStyles(): string[];
64
+ /**
65
+ * Get collected SSR font URLs (used by the renderer).
66
+ * Note: We don't clear the arrays because fonts are loaded at module import
67
+ * time and need to persist across all requests in the Workers environment.
68
+ */
69
+ declare function getSSRFontLinks(): string[];
70
+ /**
71
+ * Get collected SSR font preload data (used by the renderer).
72
+ * Returns an array of { href, type } objects for emitting
73
+ * <link rel="preload" as="font" ...> tags.
74
+ */
75
+ declare function getSSRFontPreloads(): Array<{
76
+ href: string;
77
+ type: string;
78
+ }>;
79
+ type FontLoader = (options?: FontLoaderOptions) => FontResult;
80
+ declare function createFontLoader(family: string): FontLoader;
81
+ declare const googleFonts: Record<string, FontLoader>;
82
+ //#endregion
83
+ export { FontLoader, FontOptions, FontResult, buildGoogleFontsUrl, createFontLoader, googleFonts as default, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,290 @@
1
+ import { escapeCSSString, formatFontClassRule, getFontMimeType, resolveSingleFaceStyle, sanitizeCSSVarName, sanitizeFallback } from "./font-utils.js";
2
+ import { buildGoogleFontsUrl as buildGoogleFontsUrl$1 } from "../build/google-fonts/build-url.js";
3
+ //#region src/shims/font-google-base.ts
4
+ /**
5
+ * next/font/google shim
6
+ *
7
+ * Provides a compatible shim for Next.js Google Fonts.
8
+ *
9
+ * Two modes:
10
+ * 1. **Dev / CDN mode** (default): Loads fonts from Google Fonts CDN via <link> tags.
11
+ * 2. **Self-hosted mode** (production build): The vinext:google-fonts Vite plugin
12
+ * fetches font CSS + .woff2 files at build time, caches them locally, and injects
13
+ * @font-face CSS pointing at local assets. No requests to Google at runtime.
14
+ *
15
+ * Usage:
16
+ * import { Inter } from 'next/font/google';
17
+ * const inter = Inter({ subsets: ['latin'], weight: ['400', '700'] });
18
+ * // inter.className -> stable CSS class for this font/options pair
19
+ * // inter.style -> { fontFamily: "'Inter', 'Inter Fallback'", fontStyle: "normal" }
20
+ * // inter.variable -> CSS class that sets the font CSS variable when requested
21
+ */
22
+ const injectedFonts = /* @__PURE__ */ new Set();
23
+ /**
24
+ * Convert a font family name to a CSS variable name.
25
+ * e.g., "Inter" -> "--font-inter", "Roboto Mono" -> "--font-roboto-mono"
26
+ */
27
+ function toVarName(family) {
28
+ return "--font-" + family.toLowerCase().replace(/\s+/g, "-");
29
+ }
30
+ function fontClassSegment(family) {
31
+ return family.toLowerCase().replace(/[^a-z0-9_-]+/g, "_").replace(/^_+|_+$/g, "") || "font";
32
+ }
33
+ function normalizeStringSetOption(value) {
34
+ if (!value) return "";
35
+ return [...new Set((Array.isArray(value) ? value : [value]).map((item) => item.trim()).filter(Boolean))].sort().join(",");
36
+ }
37
+ function normalizeWeightOption(value) {
38
+ const normalized = normalizeStringSetOption(value);
39
+ return normalized === "variable" ? "" : normalized;
40
+ }
41
+ function normalizeStyleOption(value) {
42
+ const values = new Set((Array.isArray(value) ? value : value ? [value] : []).map((item) => item.trim()).filter(Boolean));
43
+ const hasItalic = values.has("italic");
44
+ const hasNormal = values.has("normal");
45
+ if (!hasItalic) return "";
46
+ return hasNormal ? "italic,normal" : "italic";
47
+ }
48
+ function normalizeFallbackOption(value) {
49
+ if (!value) return "";
50
+ return value.map((item) => item.trim()).join(",");
51
+ }
52
+ function normalizeBooleanOption(value) {
53
+ if (value === void 0) return "";
54
+ return value ? "1" : "0";
55
+ }
56
+ function normalizeStringOrBooleanOption(value) {
57
+ if (value === void 0) return "";
58
+ return typeof value === "boolean" ? normalizeBooleanOption(value) : value;
59
+ }
60
+ function hashString(value) {
61
+ let hash = 2166136261;
62
+ for (let i = 0; i < value.length; i++) {
63
+ hash ^= value.charCodeAt(i);
64
+ hash = Math.imul(hash, 16777619) >>> 0;
65
+ }
66
+ return hash.toString(36).padStart(7, "0");
67
+ }
68
+ function createFontIdentity(family, options, cssVarName, fallback) {
69
+ return hashString([
70
+ family,
71
+ cssVarName,
72
+ normalizeWeightOption(options.weight),
73
+ normalizeStyleOption(options.style),
74
+ normalizeStringSetOption(options.subsets),
75
+ options.display ?? "swap",
76
+ normalizeBooleanOption(options.preload),
77
+ normalizeFallbackOption(fallback),
78
+ normalizeStringOrBooleanOption(options.adjustFontFallback),
79
+ normalizeStringSetOption(options.axes),
80
+ options._vinext?.font?.selfHostedCSS ?? "",
81
+ options._vinext?.font?.fontWeight?.toString() ?? "",
82
+ options._vinext?.font?.fontStyle ?? ""
83
+ ].join("\0"));
84
+ }
85
+ /**
86
+ * Build a Google Fonts CSS URL.
87
+ *
88
+ * In production this code path is dead. The build plugin
89
+ * (`vinext:google-fonts` in `src/plugins/fonts.ts`) statically resolves
90
+ * each font call's axis values against the bundled metadata, fetches the
91
+ * Google Fonts CSS, and injects the resulting CSS as
92
+ * `_vinext.font.selfHostedCSS` so the runtime never queries Google. The shim
93
+ * only reaches this builder when the plugin's static parser bails (dynamic
94
+ * options, eval-only shapes), which is dev-only.
95
+ *
96
+ * The dev fallback intentionally has no metadata: shipping the 388 KB
97
+ * `font-data.json` to the Worker bundle would dwarf the rest of the shim,
98
+ * and the production path already has the metadata-aware variant. The
99
+ * tradeoff is that the dev fallback cannot resolve a variable font's
100
+ * actual `wght` axis range. It emits no axis segment when no `weight` is
101
+ * given, which makes Google return the default static face (200) instead
102
+ * of the broken `:wght@100..900` URL that issue #885 reports.
103
+ */
104
+ function buildGoogleFontsUrl(family, options) {
105
+ const weights = options.weight ? Array.isArray(options.weight) ? options.weight : [options.weight] : [];
106
+ const styles = options.style ? Array.isArray(options.style) ? options.style : [options.style] : [];
107
+ const hasItalic = styles.includes("italic");
108
+ const hasNormal = styles.includes("normal");
109
+ const ital = hasItalic ? [...hasNormal ? ["0"] : [], "1"] : void 0;
110
+ const normalizedWeights = weights.length === 1 && weights[0] === "variable" ? [] : weights;
111
+ return buildGoogleFontsUrl$1(family, {
112
+ wght: normalizedWeights.length > 0 ? normalizedWeights : ital ? ["400"] : void 0,
113
+ ital
114
+ }, options.display ?? "swap");
115
+ }
116
+ /**
117
+ * Inject a <link> tag for the font (client-side only).
118
+ * On the server, we track font URLs for SSR head injection.
119
+ */
120
+ function injectFontStylesheet(url) {
121
+ if (injectedFonts.has(url)) return;
122
+ injectedFonts.add(url);
123
+ if (typeof document !== "undefined") {
124
+ const link = document.createElement("link");
125
+ link.rel = "stylesheet";
126
+ link.href = url;
127
+ document.head.appendChild(link);
128
+ }
129
+ }
130
+ /** Track which className CSS rules have been injected. */
131
+ const injectedClassRules = /* @__PURE__ */ new Set();
132
+ /**
133
+ * Inject a CSS rule that maps a className to the exported font style.
134
+ *
135
+ * This is what makes `<div className={inter.className}>` apply the font.
136
+ * Next.js generates equivalent rules at build time.
137
+ *
138
+ * In Next.js, the .className class sets font-family and any single
139
+ * font-weight/font-style. CSS variables are handled separately by .variable.
140
+ */
141
+ function injectClassNameRule(className, fontStyle) {
142
+ if (injectedClassRules.has(className)) return;
143
+ injectedClassRules.add(className);
144
+ const css = formatFontClassRule(className, fontStyle);
145
+ if (typeof document === "undefined") {
146
+ ssrFontStyles.push(css);
147
+ return;
148
+ }
149
+ const styleElement = document.createElement("style");
150
+ styleElement.textContent = css;
151
+ styleElement.setAttribute("data-vinext-font-class", className);
152
+ document.head.appendChild(styleElement);
153
+ }
154
+ /** Track which variable class CSS rules have been injected. */
155
+ const injectedVariableRules = /* @__PURE__ */ new Set();
156
+ /**
157
+ * Inject a CSS rule that sets a CSS variable on an element.
158
+ * This is what makes `<html className={inter.variable}>` set the CSS variable
159
+ * that can be referenced by other styles (e.g., Tailwind's font-sans).
160
+ *
161
+ * In Next.js, the .variable class ONLY sets the CSS variable — it does NOT
162
+ * set font-family. This is critical because apps commonly apply multiple
163
+ * .variable classes to <body> (e.g., geistSans.variable + geistMono.variable).
164
+ * If we also set font-family here, the last class wins due to CSS cascade,
165
+ * causing all text to use that font (e.g., everything becomes monospace).
166
+ */
167
+ function injectVariableClassRule(variableClassName, cssVarName, fontFamily) {
168
+ if (injectedVariableRules.has(variableClassName)) return;
169
+ injectedVariableRules.add(variableClassName);
170
+ const css = `.${variableClassName} { ${cssVarName}: ${fontFamily}; }\n`;
171
+ if (typeof document === "undefined") {
172
+ ssrFontStyles.push(css);
173
+ return;
174
+ }
175
+ const style = document.createElement("style");
176
+ style.textContent = css;
177
+ style.setAttribute("data-vinext-font-variable", variableClassName);
178
+ document.head.appendChild(style);
179
+ }
180
+ const ssrFontStyles = [];
181
+ /**
182
+ * Get collected SSR font class styles (used by the renderer).
183
+ * Note: We don't clear the arrays because fonts are loaded at module import
184
+ * time and need to persist across all requests in the Workers environment.
185
+ */
186
+ function getSSRFontStyles() {
187
+ return [...ssrFontStyles];
188
+ }
189
+ const ssrFontUrls = [];
190
+ /**
191
+ * Get collected SSR font URLs (used by the renderer).
192
+ * Note: We don't clear the arrays because fonts are loaded at module import
193
+ * time and need to persist across all requests in the Workers environment.
194
+ */
195
+ function getSSRFontLinks() {
196
+ return [...ssrFontUrls];
197
+ }
198
+ const ssrFontPreloads = [];
199
+ const ssrFontPreloadHrefs = /* @__PURE__ */ new Set();
200
+ /**
201
+ * Get collected SSR font preload data (used by the renderer).
202
+ * Returns an array of { href, type } objects for emitting
203
+ * <link rel="preload" as="font" ...> tags.
204
+ */
205
+ function getSSRFontPreloads() {
206
+ return [...ssrFontPreloads];
207
+ }
208
+ /**
209
+ * Collect build-selected font file URLs for preload link generation.
210
+ * Only collects on the server (SSR). Deduplicates by href using a Set for O(1) lookups.
211
+ */
212
+ function collectFontPreloads(urls) {
213
+ if (typeof document !== "undefined") return;
214
+ for (const href of urls) if (href.startsWith("/") && !ssrFontPreloadHrefs.has(href)) {
215
+ ssrFontPreloadHrefs.add(href);
216
+ ssrFontPreloads.push({
217
+ href,
218
+ type: getFontMimeType(href)
219
+ });
220
+ }
221
+ }
222
+ /** Track injected self-hosted @font-face blocks (deduplicate) */
223
+ const injectedSelfHosted = /* @__PURE__ */ new Set();
224
+ /**
225
+ * Inject self-hosted @font-face CSS (from the build plugin).
226
+ * This replaces the CDN <link> tag with inline CSS.
227
+ */
228
+ function injectSelfHostedCSS(css, preloadUrls = []) {
229
+ collectFontPreloads(preloadUrls);
230
+ if (injectedSelfHosted.has(css)) return;
231
+ injectedSelfHosted.add(css);
232
+ if (typeof document === "undefined") {
233
+ ssrFontStyles.push(css);
234
+ return;
235
+ }
236
+ const style = document.createElement("style");
237
+ style.textContent = css;
238
+ style.setAttribute("data-vinext-font-selfhosted", "true");
239
+ document.head.appendChild(style);
240
+ }
241
+ function createFontLoader(family) {
242
+ return function fontLoader(options = {}) {
243
+ const internal = options._vinext?.font;
244
+ const fallback = options.fallback ?? [];
245
+ const adjustedFallback = options.adjustFontFallback === false || !internal?.adjustedFallbackCSS ? [] : [`'${escapeCSSString(family)} Fallback'`];
246
+ const fontFamily = [
247
+ `'${escapeCSSString(family)}'`,
248
+ ...adjustedFallback,
249
+ ...fallback.map(sanitizeFallback)
250
+ ].join(", ");
251
+ const defaultVarName = toVarName(family);
252
+ const cssVarName = options.variable ? sanitizeCSSVarName(options.variable) ?? defaultVarName : defaultVarName;
253
+ const id = createFontIdentity(family, options, cssVarName, fallback);
254
+ const classSegment = fontClassSegment(family);
255
+ const className = `__font_${classSegment}_${id}`;
256
+ const variableClassName = `__variable_${classSegment}_${id}`;
257
+ const style = resolveSingleFaceStyle({
258
+ fontFamily,
259
+ weight: options.weight,
260
+ style: options.style,
261
+ internalWeight: internal?.fontWeight,
262
+ internalStyle: internal?.fontStyle,
263
+ google: true
264
+ });
265
+ if (internal?.selfHostedCSS) injectSelfHostedCSS(internal.selfHostedCSS, internal.preloadUrls);
266
+ else {
267
+ const url = buildGoogleFontsUrl(family, options);
268
+ injectFontStylesheet(url);
269
+ if (typeof document === "undefined") {
270
+ if (!ssrFontUrls.includes(url)) ssrFontUrls.push(url);
271
+ }
272
+ }
273
+ if (options.adjustFontFallback !== false && internal?.adjustedFallbackCSS) injectSelfHostedCSS(internal.adjustedFallbackCSS);
274
+ injectClassNameRule(className, style);
275
+ if (options.variable) injectVariableClassRule(variableClassName, cssVarName, fontFamily);
276
+ return {
277
+ className,
278
+ style,
279
+ ...options.variable ? { variable: variableClassName } : {}
280
+ };
281
+ };
282
+ }
283
+ const googleFonts = new Proxy({}, { get(_target, prop) {
284
+ if (typeof prop !== "string") return void 0;
285
+ if (prop === "__esModule") return true;
286
+ if (prop === "default") return googleFonts;
287
+ return createFontLoader(prop.replace(/_/g, " ").replace(/([a-z])([A-Z])/g, "$1 $2"));
288
+ } });
289
+ //#endregion
290
+ export { buildGoogleFontsUrl, createFontLoader, googleFonts as default, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,2 @@
1
+ import googleFonts, { buildGoogleFontsUrl, createFontLoader, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles } from "./font-google-base.js";
2
+ export { buildGoogleFontsUrl, createFontLoader, googleFonts as default, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,2 @@
1
+ import googleFonts, { buildGoogleFontsUrl, createFontLoader, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles } from "./font-google-base.js";
2
+ export { buildGoogleFontsUrl, createFontLoader, googleFonts as default, getSSRFontLinks, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,50 @@
1
+ import { FontStyle } from "./font-utils.js";
2
+
3
+ //#region src/shims/font-local.d.ts
4
+ type LocalFontSrc = {
5
+ path: string;
6
+ weight?: string;
7
+ style?: string;
8
+ };
9
+ type LocalFontOptions = {
10
+ src: string | LocalFontSrc | LocalFontSrc[];
11
+ display?: string;
12
+ weight?: string;
13
+ style?: string;
14
+ fallback?: string[];
15
+ preload?: boolean;
16
+ variable?: string;
17
+ adjustFontFallback?: boolean | string;
18
+ declarations?: Array<{
19
+ prop: string;
20
+ value: string;
21
+ }>;
22
+ _vinext?: {
23
+ font?: {
24
+ family?: unknown;
25
+ };
26
+ };
27
+ };
28
+ type FontResult = {
29
+ className: string;
30
+ style: FontStyle;
31
+ variable?: string;
32
+ };
33
+ /**
34
+ * Get collected SSR font styles (used by the renderer).
35
+ * Note: We don't clear the arrays because fonts are loaded at module import
36
+ * time and need to persist across all requests in the Workers environment.
37
+ */
38
+ declare function getSSRFontStyles(): string[];
39
+ /**
40
+ * Get collected SSR font preload data (used by the renderer).
41
+ * Returns an array of { href, type } objects for emitting
42
+ * <link rel="preload" as="font" ...> tags.
43
+ */
44
+ declare function getSSRFontPreloads(): Array<{
45
+ href: string;
46
+ type: string;
47
+ }>;
48
+ declare function localFont(options: LocalFontOptions): FontResult;
49
+ //#endregion
50
+ export { localFont as default, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,195 @@
1
+ import { escapeCSSString, formatFontClassRule, getFontMimeType, resolveSingleFaceStyle, sanitizeCSSVarName, sanitizeFallback, sanitizeFontDescriptorValue } from "./font-utils.js";
2
+ //#region src/shims/font-local.ts
3
+ /**
4
+ * next/font/local shim
5
+ *
6
+ * Provides a runtime-compatible shim for Next.js local fonts.
7
+ * Generates @font-face CSS declarations and returns an object
8
+ * with className, style, and variable properties.
9
+ *
10
+ * Supports both client-side injection and SSR collection,
11
+ * matching the patterns used by the Google font shim.
12
+ *
13
+ * Usage:
14
+ * import localFont from 'next/font/local';
15
+ * const myFont = localFont({ src: './my-font.woff2' });
16
+ * // myFont.className -> unique CSS class
17
+ * // myFont.style -> { fontFamily: "'__local_font_0', sans-serif" }
18
+ * // myFont.variable -> generated class name when requested
19
+ */
20
+ /**
21
+ * Validate a CSS property name for use in declarations.
22
+ *
23
+ * Only allows standard CSS property names (lowercase letters and hyphens)
24
+ * and custom properties (--prefixed). Rejects anything that could inject
25
+ * CSS rules via crafted property names.
26
+ */
27
+ function sanitizeCSSProperty(prop) {
28
+ if (/^(--)?[a-zA-Z][a-zA-Z0-9-]*$/.test(prop)) return prop;
29
+ }
30
+ function sanitizeInternalFontFamily(name) {
31
+ if (typeof name !== "string" || name.length === 0) return void 0;
32
+ if (/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(name)) return name;
33
+ }
34
+ let classCounter = 0;
35
+ const injectedFonts = /* @__PURE__ */ new Set();
36
+ function generateFontFaceCSS(family, options, sources) {
37
+ const display = options.display ?? "swap";
38
+ const rules = [];
39
+ for (const src of sources) {
40
+ const weight = sanitizeFontDescriptorValue(src.weight ?? options.weight ?? "400") ?? "400";
41
+ const style = sanitizeFontDescriptorValue(src.style ?? options.style ?? "normal") ?? "normal";
42
+ const format = src.path.endsWith(".woff2") ? "woff2" : src.path.endsWith(".woff") ? "woff" : src.path.endsWith(".ttf") ? "truetype" : src.path.endsWith(".otf") ? "opentype" : "woff2";
43
+ rules.push(`@font-face {
44
+ font-family: '${escapeCSSString(family)}';
45
+ src: url('${escapeCSSString(src.path)}') format('${format}');
46
+ font-weight: ${weight};
47
+ font-style: ${style};
48
+ font-display: ${display};
49
+ }`);
50
+ }
51
+ if (options.declarations) for (const decl of options.declarations) {
52
+ const safeProp = sanitizeCSSProperty(decl.prop);
53
+ const safeValue = sanitizeFontDescriptorValue(decl.value);
54
+ if (safeProp && safeValue) rules.push(`@font-face { font-family: '${escapeCSSString(family)}'; ${safeProp}: ${safeValue}; }`);
55
+ }
56
+ return rules.join("\n");
57
+ }
58
+ const ssrFontStyles = [];
59
+ const ssrFontPreloads = [];
60
+ const ssrFontPreloadHrefs = /* @__PURE__ */ new Set();
61
+ /**
62
+ * Get collected SSR font styles (used by the renderer).
63
+ * Note: We don't clear the arrays because fonts are loaded at module import
64
+ * time and need to persist across all requests in the Workers environment.
65
+ */
66
+ function getSSRFontStyles() {
67
+ return [...ssrFontStyles];
68
+ }
69
+ /**
70
+ * Get collected SSR font preload data (used by the renderer).
71
+ * Returns an array of { href, type } objects for emitting
72
+ * <link rel="preload" as="font" ...> tags.
73
+ */
74
+ function getSSRFontPreloads() {
75
+ return [...ssrFontPreloads];
76
+ }
77
+ function injectFontFaceCSS(css, id) {
78
+ if (injectedFonts.has(id)) return;
79
+ injectedFonts.add(id);
80
+ if (typeof document === "undefined") {
81
+ ssrFontStyles.push(css);
82
+ return;
83
+ }
84
+ const style = document.createElement("style");
85
+ style.textContent = css;
86
+ style.setAttribute("data-vinext-font", id);
87
+ document.head.appendChild(style);
88
+ }
89
+ /** Track which className CSS rules have been injected. */
90
+ const injectedClassRules = /* @__PURE__ */ new Set();
91
+ /**
92
+ * Inject a CSS rule that maps a className to the exported font style.
93
+ *
94
+ * This is what makes `<div className={font.className}>` apply the font.
95
+ *
96
+ * In Next.js, the .className class sets font-family and any single
97
+ * font-weight/font-style. CSS variables are handled separately by .variable.
98
+ */
99
+ function injectClassNameRule(className, fontStyle) {
100
+ if (injectedClassRules.has(className)) return;
101
+ injectedClassRules.add(className);
102
+ const css = formatFontClassRule(className, fontStyle);
103
+ if (typeof document === "undefined") {
104
+ ssrFontStyles.push(css);
105
+ return;
106
+ }
107
+ const style = document.createElement("style");
108
+ style.textContent = css;
109
+ style.setAttribute("data-vinext-font-class", className);
110
+ document.head.appendChild(style);
111
+ }
112
+ /** Track which variable class CSS rules have been injected. */
113
+ const injectedVariableRules = /* @__PURE__ */ new Set();
114
+ /** Track which :root CSS variable rules have been injected. */
115
+ const injectedRootVariables = /* @__PURE__ */ new Set();
116
+ /**
117
+ * Inject a CSS rule that sets a CSS variable on an element.
118
+ * This is what makes `<html className={font.variable}>` set the CSS variable
119
+ * that can be referenced by other styles (e.g., Tailwind's font-sans).
120
+ *
121
+ * In Next.js, the .variable class ONLY sets the CSS variable — it does NOT
122
+ * set font-family. This is critical because apps commonly apply multiple
123
+ * .variable classes to <body> (e.g., geistSans.variable + geistMono.variable).
124
+ * If we also set font-family here, the last class wins due to CSS cascade,
125
+ * causing all text to use that font (e.g., everything becomes monospace).
126
+ */
127
+ function injectVariableClassRule(variableClassName, cssVarName, fontFamily) {
128
+ if (injectedVariableRules.has(variableClassName)) return;
129
+ injectedVariableRules.add(variableClassName);
130
+ let css = `.${variableClassName} { ${cssVarName}: ${fontFamily}; }\n`;
131
+ if (!injectedRootVariables.has(cssVarName)) {
132
+ injectedRootVariables.add(cssVarName);
133
+ css += `:root { ${cssVarName}: ${fontFamily}; }\n`;
134
+ }
135
+ if (typeof document === "undefined") {
136
+ ssrFontStyles.push(css);
137
+ return;
138
+ }
139
+ const style = document.createElement("style");
140
+ style.textContent = css;
141
+ style.setAttribute("data-vinext-font-variable", variableClassName);
142
+ document.head.appendChild(style);
143
+ }
144
+ /**
145
+ * Normalize the `src` option into a flat array of `{ path, weight?, style? }`.
146
+ * Handles string, single object, and array forms.
147
+ */
148
+ function normalizeSources(options) {
149
+ if (Array.isArray(options.src)) return options.src;
150
+ if (typeof options.src === "string") return [{ path: options.src }];
151
+ return [options.src];
152
+ }
153
+ /**
154
+ * Collect font source URLs for preload link generation.
155
+ * Only collects on the server (SSR). Deduplicates by href using a Set for O(1) lookups.
156
+ */
157
+ function collectFontPreloads(sources) {
158
+ if (typeof document !== "undefined") return;
159
+ for (const src of sources) {
160
+ const href = src.path;
161
+ if (href && href.startsWith("/") && !ssrFontPreloadHrefs.has(href)) {
162
+ ssrFontPreloadHrefs.add(href);
163
+ ssrFontPreloads.push({
164
+ href,
165
+ type: getFontMimeType(href)
166
+ });
167
+ }
168
+ }
169
+ }
170
+ function localFont(options) {
171
+ const id = classCounter++;
172
+ const sources = normalizeSources(options);
173
+ const singleSource = sources.length === 1 ? sources[0] : void 0;
174
+ const family = sanitizeInternalFontFamily(options._vinext?.font?.family) ?? `__local_font_${id}`;
175
+ const className = `__font_local_${id}`;
176
+ const fontFamily = `'${family}', ${(options.fallback ?? ["sans-serif"]).map(sanitizeFallback).join(", ")}`;
177
+ const cssVarName = options.variable ? sanitizeCSSVarName(options.variable) : void 0;
178
+ const variableClassName = `__variable_local_${id}`;
179
+ const style = singleSource ? resolveSingleFaceStyle({
180
+ fontFamily,
181
+ weight: singleSource.weight ?? options.weight,
182
+ style: singleSource.style ?? options.style
183
+ }) : { fontFamily };
184
+ collectFontPreloads(sources);
185
+ injectFontFaceCSS(generateFontFaceCSS(family, options, sources), className);
186
+ injectClassNameRule(className, style);
187
+ if (cssVarName) injectVariableClassRule(variableClassName, cssVarName, fontFamily);
188
+ return {
189
+ className,
190
+ style,
191
+ ...cssVarName ? { variable: variableClassName } : {}
192
+ };
193
+ }
194
+ //#endregion
195
+ export { localFont as default, getSSRFontPreloads, getSSRFontStyles };
@@ -0,0 +1,56 @@
1
+ //#region src/shims/font-utils.d.ts
2
+ type FontStyle = {
3
+ fontFamily: string;
4
+ fontWeight?: number;
5
+ fontStyle?: string;
6
+ };
7
+ type FontFaceStyleInput = {
8
+ fontFamily: string;
9
+ weight?: string | string[];
10
+ style?: string | string[];
11
+ internalWeight?: number;
12
+ internalStyle?: string;
13
+ google?: boolean;
14
+ };
15
+ /**
16
+ * Escape a string for safe interpolation inside a CSS single-quoted string.
17
+ *
18
+ * Prevents CSS injection by escaping characters that could break out of
19
+ * a `'...'` CSS string context: backslashes, single quotes, and newlines.
20
+ *
21
+ * Used by font-google-base.ts, font-local.ts, and fallback-metrics.ts.
22
+ */
23
+ declare function escapeCSSString(value: string): string;
24
+ /**
25
+ * Validate a CSS custom property name (e.g. `--font-inter`).
26
+ *
27
+ * Custom properties must start with `--` and only contain alphanumeric
28
+ * characters, hyphens, and underscores. Anything else could be used to
29
+ * break out of the CSS declaration and inject arbitrary rules.
30
+ *
31
+ * Returns the name if valid, undefined otherwise.
32
+ */
33
+ declare function sanitizeCSSVarName(name: string): string | undefined;
34
+ /**
35
+ * Sanitize a CSS font-family fallback name.
36
+ *
37
+ * Generic family names (sans-serif, serif, monospace, etc.) are used as-is.
38
+ * Named families are wrapped in escaped quotes. This prevents injection via
39
+ * crafted fallback values like `); } body { color: red; } .x {`.
40
+ */
41
+ declare function sanitizeFallback(name: string): string;
42
+ declare function singleFontOptionValue(value: string | string[] | undefined): string | undefined;
43
+ declare function sanitizeFontDescriptorValue(value: string): string | undefined;
44
+ declare function resolveFontWeight(weight: string | string[] | undefined): number | undefined;
45
+ declare function resolveFontStyle(style: string | string[] | undefined): string | undefined;
46
+ declare function resolveGoogleFontStyle(style: string | string[] | undefined): string | undefined;
47
+ declare function resolveSingleFaceStyle(input: FontFaceStyleInput): FontStyle;
48
+ declare function formatFontClassRule(className: string, style: FontStyle): string;
49
+ /**
50
+ * Determine the MIME type for a font file based on its extension.
51
+ * Uses endsWith() only to avoid false positives from substring matches
52
+ * (e.g. ".woff" matching ".woff2").
53
+ */
54
+ declare function getFontMimeType(pathOrUrl: string): string;
55
+ //#endregion
56
+ export { FontFaceStyleInput, FontStyle, escapeCSSString, formatFontClassRule, getFontMimeType, resolveFontStyle, resolveFontWeight, resolveGoogleFontStyle, resolveSingleFaceStyle, sanitizeCSSVarName, sanitizeFallback, sanitizeFontDescriptorValue, singleFontOptionValue };