@rangojs/router 0.0.0-experimental.tapabs3 → 0.1.0

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 (1319) hide show
  1. package/dist/bin/rango.js +8 -40
  2. package/dist/types/__internal.d.ts +127 -0
  3. package/dist/types/bin/rango.d.ts +1 -0
  4. package/dist/types/browser/action-coordinator.d.ts +57 -0
  5. package/dist/types/browser/action-fence.d.ts +33 -0
  6. package/dist/types/browser/app-shell.d.ts +34 -0
  7. package/dist/types/browser/app-version.d.ts +6 -0
  8. package/dist/types/browser/connection-warmup.d.ts +31 -0
  9. package/dist/types/browser/cookie-name.d.ts +66 -0
  10. package/dist/types/browser/event-controller.d.ts +221 -0
  11. package/dist/types/browser/history-state.d.ts +26 -0
  12. package/dist/types/browser/index.d.ts +1 -0
  13. package/dist/types/browser/intercept-utils.d.ts +30 -0
  14. package/dist/types/browser/invalidate-client-cache.d.ts +17 -0
  15. package/dist/types/browser/link-interceptor.d.ts +43 -0
  16. package/dist/types/browser/logging.d.ts +33 -0
  17. package/dist/types/browser/merge-segment-loaders.d.ts +38 -0
  18. package/dist/types/browser/navigation-bridge.d.ts +27 -0
  19. package/dist/types/browser/navigation-client.d.ts +17 -0
  20. package/dist/types/browser/navigation-store-handle.d.ts +25 -0
  21. package/dist/types/browser/navigation-store.d.ts +95 -0
  22. package/dist/types/browser/navigation-transaction.d.ts +75 -0
  23. package/dist/types/browser/network-error-handler.d.ts +35 -0
  24. package/dist/types/browser/partial-update.d.ts +61 -0
  25. package/dist/types/browser/prefetch/cache.d.ts +183 -0
  26. package/dist/types/browser/prefetch/fetch.d.ts +52 -0
  27. package/dist/types/browser/prefetch/observer.d.ts +27 -0
  28. package/dist/types/browser/prefetch/policy.d.ts +13 -0
  29. package/dist/types/browser/prefetch/queue.d.ts +48 -0
  30. package/dist/types/browser/prefetch/resource-ready.d.ts +28 -0
  31. package/dist/types/browser/rango-state.d.ts +52 -0
  32. package/dist/types/browser/react/Link.d.ts +140 -0
  33. package/dist/types/browser/react/NavigationProvider.d.ts +88 -0
  34. package/dist/types/browser/react/ScrollRestoration.d.ts +78 -0
  35. package/dist/types/browser/react/context.d.ts +54 -0
  36. package/dist/types/browser/react/filter-segment-order.d.ts +35 -0
  37. package/dist/types/browser/react/index.d.ts +1 -0
  38. package/dist/types/browser/react/location-state-shared.d.ts +162 -0
  39. package/dist/types/browser/react/location-state.d.ts +29 -0
  40. package/dist/types/browser/react/mount-context.d.ts +23 -0
  41. package/dist/types/browser/react/nonce-context.d.ts +14 -0
  42. package/dist/types/browser/react/shallow-equal.d.ts +5 -0
  43. package/dist/types/browser/react/use-action.d.ts +61 -0
  44. package/dist/types/browser/react/use-handle.d.ts +21 -0
  45. package/dist/types/browser/react/use-href.d.ts +32 -0
  46. package/dist/types/browser/react/use-link-status.d.ts +36 -0
  47. package/dist/types/browser/react/use-mount.d.ts +24 -0
  48. package/dist/types/browser/react/use-navigation.d.ts +15 -0
  49. package/dist/types/browser/react/use-params.d.ts +21 -0
  50. package/dist/types/browser/react/use-pathname.d.ts +13 -0
  51. package/dist/types/browser/react/use-reverse.d.ts +40 -0
  52. package/dist/types/browser/react/use-router.d.ts +23 -0
  53. package/dist/types/browser/react/use-search-params.d.ts +19 -0
  54. package/dist/types/browser/react/use-segments.d.ts +29 -0
  55. package/dist/types/browser/response-adapter.d.ts +58 -0
  56. package/dist/types/browser/rsc-router.d.ts +141 -0
  57. package/dist/types/browser/scroll-restoration.d.ts +103 -0
  58. package/dist/types/browser/segment-reconciler.d.ts +74 -0
  59. package/dist/types/browser/segment-structure-assert.d.ts +16 -0
  60. package/dist/types/browser/server-action-bridge.d.ts +29 -0
  61. package/dist/types/browser/types.d.ts +530 -0
  62. package/dist/types/browser/validate-redirect-origin.d.ts +28 -0
  63. package/dist/types/build/collect-fallback-refs.d.ts +5 -0
  64. package/dist/types/build/generate-manifest.d.ts +100 -0
  65. package/dist/types/build/generate-route-types.d.ts +8 -0
  66. package/dist/types/build/index.d.ts +21 -0
  67. package/dist/types/build/prefix-tree-utils.d.ts +56 -0
  68. package/dist/types/build/route-trie.d.ts +89 -0
  69. package/dist/types/build/route-types/ast-helpers.d.ts +3 -0
  70. package/dist/types/build/route-types/ast-route-extraction.d.ts +13 -0
  71. package/dist/types/build/route-types/codegen.d.ts +16 -0
  72. package/dist/types/build/route-types/include-resolution.d.ts +74 -0
  73. package/dist/types/build/route-types/param-extraction.d.ts +13 -0
  74. package/dist/types/build/route-types/per-module-writer.d.ts +18 -0
  75. package/dist/types/build/route-types/router-processing.d.ts +82 -0
  76. package/dist/types/build/route-types/scan-filter.d.ts +17 -0
  77. package/dist/types/build/route-types/source-scan.d.ts +13 -0
  78. package/dist/types/build/runtime-discovery.d.ts +24 -0
  79. package/dist/types/cache/background-task.d.ts +21 -0
  80. package/dist/types/cache/cache-error.d.ts +71 -0
  81. package/dist/types/cache/cache-key-utils.d.ts +35 -0
  82. package/dist/types/cache/cache-policy.d.ts +59 -0
  83. package/dist/types/cache/cache-runtime.d.ts +51 -0
  84. package/dist/types/cache/cache-scope.d.ts +134 -0
  85. package/dist/types/cache/cache-tag.d.ts +79 -0
  86. package/dist/types/cache/cf/cf-base64.d.ts +4 -0
  87. package/dist/types/cache/cf/cf-cache-constants.d.ts +105 -0
  88. package/dist/types/cache/cf/cf-cache-store.d.ts +588 -0
  89. package/dist/types/cache/cf/cf-cache-types.d.ts +363 -0
  90. package/dist/types/cache/cf/cf-kv-utils.d.ts +22 -0
  91. package/dist/types/cache/cf/cf-tag-marker-memo.d.ts +15 -0
  92. package/dist/types/cache/cf/cf-zone-purge.d.ts +31 -0
  93. package/dist/types/cache/cf/index.d.ts +4 -0
  94. package/dist/types/cache/document-cache.d.ts +69 -0
  95. package/dist/types/cache/handle-capture.d.ts +23 -0
  96. package/dist/types/cache/handle-snapshot.d.ts +39 -0
  97. package/dist/types/cache/index.d.ts +7 -0
  98. package/dist/types/cache/memory-segment-store.d.ts +163 -0
  99. package/dist/types/cache/profile-registry.d.ts +40 -0
  100. package/dist/types/cache/read-through-swr.d.ts +60 -0
  101. package/dist/types/cache/segment-codec.d.ts +78 -0
  102. package/dist/types/cache/shell-snapshot.d.ts +173 -0
  103. package/dist/types/cache/tag-invalidation.d.ts +74 -0
  104. package/dist/types/cache/taint.d.ts +71 -0
  105. package/dist/types/cache/types.d.ts +418 -0
  106. package/dist/types/cache/vercel/index.d.ts +1 -0
  107. package/dist/types/cache/vercel/vercel-cache-store.d.ts +267 -0
  108. package/dist/types/client.d.ts +184 -0
  109. package/dist/types/client.rsc.d.ts +39 -0
  110. package/dist/types/cloudflare/index.d.ts +7 -0
  111. package/dist/types/cloudflare/tracing.d.ts +53 -0
  112. package/dist/types/component-utils.d.ts +46 -0
  113. package/dist/types/components/DefaultDocument.d.ts +13 -0
  114. package/dist/types/context-var.d.ts +84 -0
  115. package/dist/types/debug.d.ts +57 -0
  116. package/dist/types/decode-loader-results.d.ts +5 -0
  117. package/dist/types/default-error-boundary.d.ts +10 -0
  118. package/dist/types/defer.d.ts +89 -0
  119. package/dist/types/deps/browser.d.ts +1 -0
  120. package/dist/types/deps/html-stream-client.d.ts +1 -0
  121. package/dist/types/deps/html-stream-server.d.ts +1 -0
  122. package/dist/types/deps/rsc.d.ts +1 -0
  123. package/dist/types/deps/ssr.d.ts +1 -0
  124. package/dist/types/encode-kv.d.ts +35 -0
  125. package/dist/types/errors.d.ts +226 -0
  126. package/dist/types/escape-script.d.ts +44 -0
  127. package/dist/types/handle.d.ts +93 -0
  128. package/dist/types/handles/MetaTags.d.ts +17 -0
  129. package/dist/types/handles/Scripts.d.ts +38 -0
  130. package/dist/types/handles/breadcrumbs.d.ts +43 -0
  131. package/dist/types/handles/deferred-resolution.d.ts +53 -0
  132. package/dist/types/handles/is-thenable.d.ts +12 -0
  133. package/dist/types/handles/meta.d.ts +43 -0
  134. package/dist/types/handles/script.d.ts +139 -0
  135. package/dist/types/host/cookie-handler.d.ts +8 -0
  136. package/dist/types/host/errors.d.ts +40 -0
  137. package/dist/types/host/index.d.ts +33 -0
  138. package/dist/types/host/pattern-matcher.d.ts +30 -0
  139. package/dist/types/host/router.d.ts +12 -0
  140. package/dist/types/host/testing.d.ts +41 -0
  141. package/dist/types/host/types.d.ts +148 -0
  142. package/dist/types/host/utils.d.ts +20 -0
  143. package/dist/types/href-client.d.ts +214 -0
  144. package/dist/types/index.d.ts +112 -0
  145. package/dist/types/index.rsc.d.ts +51 -0
  146. package/dist/types/internal-debug.d.ts +1 -0
  147. package/dist/types/loader-store.d.ts +193 -0
  148. package/dist/types/loader.d.ts +18 -0
  149. package/dist/types/loader.rsc.d.ts +18 -0
  150. package/dist/types/missing-id-error.d.ts +1 -0
  151. package/dist/types/outlet-context.d.ts +12 -0
  152. package/dist/types/outlet-provider.d.ts +12 -0
  153. package/dist/types/prerender/build-shell-capture.d.ts +104 -0
  154. package/dist/types/prerender/param-hash.d.ts +6 -0
  155. package/dist/types/prerender/shell-manifest-key.d.ts +18 -0
  156. package/dist/types/prerender/store.d.ts +62 -0
  157. package/dist/types/prerender.d.ts +292 -0
  158. package/dist/types/redirect-origin.d.ts +67 -0
  159. package/dist/types/regex-escape.d.ts +6 -0
  160. package/dist/types/render-error-thrower.d.ts +13 -0
  161. package/dist/types/response-utils.d.ts +35 -0
  162. package/dist/types/reverse.d.ts +206 -0
  163. package/dist/types/root-error-boundary.d.ts +32 -0
  164. package/dist/types/route-content-wrapper.d.ts +40 -0
  165. package/dist/types/route-definition/dsl-helpers.d.ts +130 -0
  166. package/dist/types/route-definition/helper-factories.d.ts +22 -0
  167. package/dist/types/route-definition/helpers-types.d.ts +392 -0
  168. package/dist/types/route-definition/index.d.ts +7 -0
  169. package/dist/types/route-definition/redirect.d.ts +48 -0
  170. package/dist/types/route-definition/resolve-handler-use.d.ts +19 -0
  171. package/dist/types/route-definition/use-item-types.d.ts +1 -0
  172. package/dist/types/route-definition.d.ts +1 -0
  173. package/dist/types/route-map-builder.d.ts +127 -0
  174. package/dist/types/route-name.d.ts +27 -0
  175. package/dist/types/route-types.d.ts +172 -0
  176. package/dist/types/router/basename.d.ts +10 -0
  177. package/dist/types/router/content-negotiation.d.ts +91 -0
  178. package/dist/types/router/debug-manifest.d.ts +7 -0
  179. package/dist/types/router/error-handling.d.ts +76 -0
  180. package/dist/types/router/find-match.d.ts +19 -0
  181. package/dist/types/router/handler-context.d.ts +41 -0
  182. package/dist/types/router/instrument.d.ts +161 -0
  183. package/dist/types/router/intercept-resolution.d.ts +79 -0
  184. package/dist/types/router/lazy-includes.d.ts +26 -0
  185. package/dist/types/router/loader-resolution.d.ts +63 -0
  186. package/dist/types/router/logging.d.ts +41 -0
  187. package/dist/types/router/manifest.d.ts +8 -0
  188. package/dist/types/router/match-api.d.ts +19 -0
  189. package/dist/types/router/match-context.d.ts +184 -0
  190. package/dist/types/router/match-handlers.d.ts +49 -0
  191. package/dist/types/router/match-middleware/background-revalidation.d.ts +113 -0
  192. package/dist/types/router/match-middleware/cache-lookup.d.ts +113 -0
  193. package/dist/types/router/match-middleware/cache-store.d.ts +112 -0
  194. package/dist/types/router/match-middleware/index.d.ts +80 -0
  195. package/dist/types/router/match-middleware/intercept-resolution.d.ts +116 -0
  196. package/dist/types/router/match-middleware/segment-resolution.d.ts +94 -0
  197. package/dist/types/router/match-pipelines.d.ts +103 -0
  198. package/dist/types/router/match-result.d.ts +114 -0
  199. package/dist/types/router/metrics.d.ts +6 -0
  200. package/dist/types/router/middleware-types.d.ts +74 -0
  201. package/dist/types/router/middleware.d.ts +116 -0
  202. package/dist/types/router/navigation-snapshot.d.ts +22 -0
  203. package/dist/types/router/params-util.d.ts +8 -0
  204. package/dist/types/router/parse-pattern.d.ts +38 -0
  205. package/dist/types/router/pattern-matching.d.ts +169 -0
  206. package/dist/types/router/prefetch-cache-ttl.d.ts +27 -0
  207. package/dist/types/router/prefetch-limits.d.ts +20 -0
  208. package/dist/types/router/prerender-match.d.ts +50 -0
  209. package/dist/types/router/preview-match.d.ts +22 -0
  210. package/dist/types/router/request-classification.d.ts +104 -0
  211. package/dist/types/router/revalidation.d.ts +57 -0
  212. package/dist/types/router/route-snapshot.d.ts +112 -0
  213. package/dist/types/router/router-context.d.ts +137 -0
  214. package/dist/types/router/router-interfaces.d.ts +432 -0
  215. package/dist/types/router/router-options.d.ts +738 -0
  216. package/dist/types/router/router-registry.d.ts +15 -0
  217. package/dist/types/router/segment-resolution/fresh.d.ts +55 -0
  218. package/dist/types/router/segment-resolution/helpers.d.ts +93 -0
  219. package/dist/types/router/segment-resolution/loader-cache.d.ts +33 -0
  220. package/dist/types/router/segment-resolution/loader-mask.d.ts +44 -0
  221. package/dist/types/router/segment-resolution/loader-snapshot.d.ts +90 -0
  222. package/dist/types/router/segment-resolution/mask-nested.d.ts +53 -0
  223. package/dist/types/router/segment-resolution/revalidation.d.ts +85 -0
  224. package/dist/types/router/segment-resolution/static-store.d.ts +17 -0
  225. package/dist/types/router/segment-resolution/streamed-handler-telemetry.d.ts +16 -0
  226. package/dist/types/router/segment-resolution/view-transition-default.d.ts +28 -0
  227. package/dist/types/router/segment-resolution.d.ts +3 -0
  228. package/dist/types/router/segment-wrappers.d.ts +53 -0
  229. package/dist/types/router/state-cookie-name.d.ts +1 -0
  230. package/dist/types/router/substitute-pattern-params.d.ts +23 -0
  231. package/dist/types/router/telemetry-otel.d.ts +113 -0
  232. package/dist/types/router/telemetry.d.ts +216 -0
  233. package/dist/types/router/timeout.d.ts +96 -0
  234. package/dist/types/router/tracing.d.ts +125 -0
  235. package/dist/types/router/trie-matching.d.ts +32 -0
  236. package/dist/types/router/types.d.ts +98 -0
  237. package/dist/types/router/url-params.d.ts +26 -0
  238. package/dist/types/router.d.ts +7 -0
  239. package/dist/types/rsc/capture-queue.d.ts +6 -0
  240. package/dist/types/rsc/full-payload.d.ts +22 -0
  241. package/dist/types/rsc/handler-context.d.ts +31 -0
  242. package/dist/types/rsc/handler.d.ts +9 -0
  243. package/dist/types/rsc/helpers.d.ts +124 -0
  244. package/dist/types/rsc/index.d.ts +17 -0
  245. package/dist/types/rsc/json-route-result.d.ts +20 -0
  246. package/dist/types/rsc/loader-fetch.d.ts +14 -0
  247. package/dist/types/rsc/manifest-init.d.ts +18 -0
  248. package/dist/types/rsc/nonce.d.ts +28 -0
  249. package/dist/types/rsc/origin-guard.d.ts +50 -0
  250. package/dist/types/rsc/progressive-enhancement.d.ts +19 -0
  251. package/dist/types/rsc/redirect-guard.d.ts +37 -0
  252. package/dist/types/rsc/render-pipeline.d.ts +138 -0
  253. package/dist/types/rsc/response-cache-serve.d.ts +46 -0
  254. package/dist/types/rsc/response-error.d.ts +19 -0
  255. package/dist/types/rsc/response-route-handler.d.ts +29 -0
  256. package/dist/types/rsc/rsc-rendering.d.ts +23 -0
  257. package/dist/types/rsc/runtime-warnings.d.ts +22 -0
  258. package/dist/types/rsc/server-action.d.ts +68 -0
  259. package/dist/types/rsc/shell-build-manifest.d.ts +84 -0
  260. package/dist/types/rsc/shell-capture-constants.d.ts +27 -0
  261. package/dist/types/rsc/shell-capture.d.ts +374 -0
  262. package/dist/types/rsc/shell-serve.d.ts +174 -0
  263. package/dist/types/rsc/ssr-setup.d.ts +73 -0
  264. package/dist/types/rsc/transition-gate.d.ts +27 -0
  265. package/dist/types/rsc/types.d.ts +290 -0
  266. package/dist/types/runtime-env.d.ts +1 -0
  267. package/dist/types/search-params.d.ts +125 -0
  268. package/dist/types/segment-content-promise.d.ts +13 -0
  269. package/dist/types/segment-fragments.d.ts +56 -0
  270. package/dist/types/segment-loader-promise.d.ts +22 -0
  271. package/dist/types/segment-system.d.ts +84 -0
  272. package/dist/types/serialize.d.ts +164 -0
  273. package/dist/types/server/context.d.ts +494 -0
  274. package/dist/types/server/cookie-parse.d.ts +10 -0
  275. package/dist/types/server/cookie-store.d.ts +107 -0
  276. package/dist/types/server/fetchable-loader-store.d.ts +20 -0
  277. package/dist/types/server/handle-store.d.ts +100 -0
  278. package/dist/types/server/loader-registry.d.ts +32 -0
  279. package/dist/types/server/request-context.d.ts +618 -0
  280. package/dist/types/server/root-layout.d.ts +3 -0
  281. package/dist/types/server.d.ts +15 -0
  282. package/dist/types/ssr/index.d.ts +233 -0
  283. package/dist/types/ssr/inject-rsc-eager.d.ts +3 -0
  284. package/dist/types/ssr/preinit-client-references.d.ts +71 -0
  285. package/dist/types/ssr/ssr-root.d.ts +69 -0
  286. package/dist/types/static-handler.d.ts +57 -0
  287. package/dist/types/testing/cache-status.d.ts +63 -0
  288. package/dist/types/testing/collect-handle.d.ts +20 -0
  289. package/dist/types/testing/dispatch.d.ts +127 -0
  290. package/dist/types/testing/dom.entry.d.ts +15 -0
  291. package/dist/types/testing/e2e/fixture.d.ts +37 -0
  292. package/dist/types/testing/e2e/index.d.ts +31 -0
  293. package/dist/types/testing/e2e/matchers.d.ts +17 -0
  294. package/dist/types/testing/e2e/page-helpers.d.ts +62 -0
  295. package/dist/types/testing/e2e/parity.d.ts +111 -0
  296. package/dist/types/testing/e2e/server.d.ts +35 -0
  297. package/dist/types/testing/flight-matchers.d.ts +55 -0
  298. package/dist/types/testing/flight-normalize.d.ts +1 -0
  299. package/dist/types/testing/flight-tree.d.ts +192 -0
  300. package/dist/types/testing/flight.d.ts +115 -0
  301. package/dist/types/testing/flight.entry.d.ts +27 -0
  302. package/dist/types/testing/generated-routes.d.ts +66 -0
  303. package/dist/types/testing/index.d.ts +54 -0
  304. package/dist/types/testing/internal/context.d.ts +225 -0
  305. package/dist/types/testing/internal/flight-client-globals.d.ts +1 -0
  306. package/dist/types/testing/internal/seed-vars.d.ts +30 -0
  307. package/dist/types/testing/render-handler.d.ts +160 -0
  308. package/dist/types/testing/render-route.d.ts +246 -0
  309. package/dist/types/testing/run-loader.d.ts +186 -0
  310. package/dist/types/testing/run-middleware.d.ts +132 -0
  311. package/dist/types/testing/run-transition-when.d.ts +77 -0
  312. package/dist/types/testing/shell-status.d.ts +58 -0
  313. package/dist/types/testing/vitest-stubs/cloudflare-email.d.ts +6 -0
  314. package/dist/types/testing/vitest-stubs/cloudflare-workers.d.ts +13 -0
  315. package/dist/types/testing/vitest-stubs/plugin-rsc.d.ts +7 -0
  316. package/dist/types/testing/vitest-stubs/version.d.ts +1 -0
  317. package/dist/types/testing/vitest.d.ts +205 -0
  318. package/dist/types/theme/ThemeProvider.d.ts +13 -0
  319. package/dist/types/theme/ThemeScript.d.ts +45 -0
  320. package/dist/types/theme/constants.d.ts +39 -0
  321. package/dist/types/theme/index.d.ts +29 -0
  322. package/dist/types/theme/theme-context.d.ts +21 -0
  323. package/dist/types/theme/theme-script.d.ts +26 -0
  324. package/dist/types/theme/types.d.ts +162 -0
  325. package/dist/types/theme/use-theme.d.ts +8 -0
  326. package/dist/types/types/boundaries.d.ts +93 -0
  327. package/dist/types/types/cache-types.d.ts +191 -0
  328. package/dist/types/types/error-types.d.ts +114 -0
  329. package/dist/types/types/global-namespace.d.ts +90 -0
  330. package/dist/types/types/handler-context.d.ts +658 -0
  331. package/dist/types/types/index.d.ts +11 -0
  332. package/dist/types/types/loader-types.d.ts +182 -0
  333. package/dist/types/types/request-scope.d.ts +93 -0
  334. package/dist/types/types/route-config.d.ts +105 -0
  335. package/dist/types/types/route-entry.d.ts +95 -0
  336. package/dist/types/types/segments.d.ts +234 -0
  337. package/dist/types/types.d.ts +1 -0
  338. package/dist/types/urls/include-helper.d.ts +17 -0
  339. package/dist/types/urls/include-provider.d.ts +27 -0
  340. package/dist/types/urls/index.d.ts +6 -0
  341. package/dist/types/urls/path-helper-types.d.ts +197 -0
  342. package/dist/types/urls/path-helper.d.ts +12 -0
  343. package/dist/types/urls/pattern-types.d.ts +166 -0
  344. package/dist/types/urls/response-types.d.ts +67 -0
  345. package/dist/types/urls/type-extraction.d.ts +157 -0
  346. package/dist/types/urls/urls-function.d.ts +24 -0
  347. package/dist/types/urls.d.ts +1 -0
  348. package/dist/types/use-loader.d.ts +150 -0
  349. package/dist/types/vercel/index.d.ts +10 -0
  350. package/dist/types/vercel/tracing.d.ts +70 -0
  351. package/dist/types/vite/debug.d.ts +80 -0
  352. package/dist/types/vite/discovery/bundle-postprocess.d.ts +12 -0
  353. package/dist/types/vite/discovery/dev-prerender-cache.d.ts +65 -0
  354. package/dist/types/vite/discovery/discover-routers.d.ts +17 -0
  355. package/dist/types/vite/discovery/discovery-errors.d.ts +113 -0
  356. package/dist/types/vite/discovery/gate-state.d.ts +79 -0
  357. package/dist/types/vite/discovery/prerender-collection.d.ts +24 -0
  358. package/dist/types/vite/discovery/route-types-writer.d.ts +32 -0
  359. package/dist/types/vite/discovery/self-gen-tracking.d.ts +22 -0
  360. package/dist/types/vite/discovery/shell-prerender-phase.d.ts +40 -0
  361. package/dist/types/vite/discovery/state.d.ts +162 -0
  362. package/dist/types/vite/discovery/virtual-module-codegen.d.ts +15 -0
  363. package/dist/types/vite/index.d.ts +11 -0
  364. package/dist/types/vite/inject-client-debug.d.ts +56 -0
  365. package/dist/types/vite/plugin-types.d.ts +298 -0
  366. package/dist/types/vite/plugins/cjs-to-esm.d.ts +6 -0
  367. package/dist/types/vite/plugins/client-ref-dedup.d.ts +40 -0
  368. package/dist/types/vite/plugins/client-ref-hashing.d.ts +35 -0
  369. package/dist/types/vite/plugins/cloudflare-protocol-stub.d.ts +64 -0
  370. package/dist/types/vite/plugins/expose-action-id.d.ts +18 -0
  371. package/dist/types/vite/plugins/expose-id-utils.d.ts +37 -0
  372. package/dist/types/vite/plugins/expose-ids/export-analysis.d.ts +19 -0
  373. package/dist/types/vite/plugins/expose-ids/handler-transform.d.ts +10 -0
  374. package/dist/types/vite/plugins/expose-ids/loader-transform.d.ts +8 -0
  375. package/dist/types/vite/plugins/expose-ids/router-transform.d.ts +13 -0
  376. package/dist/types/vite/plugins/expose-ids/types.d.ts +29 -0
  377. package/dist/types/vite/plugins/expose-internal-ids.d.ts +6 -0
  378. package/dist/types/vite/plugins/performance-tracks.d.ts +25 -0
  379. package/dist/types/vite/plugins/refresh-cmd.d.ts +20 -0
  380. package/dist/types/vite/plugins/use-cache-transform.d.ts +20 -0
  381. package/dist/types/vite/plugins/vercel-output.d.ts +85 -0
  382. package/dist/types/vite/plugins/version-injector.d.ts +21 -0
  383. package/dist/types/vite/plugins/version-plugin.d.ts +19 -0
  384. package/dist/types/vite/plugins/virtual-entries.d.ts +36 -0
  385. package/dist/types/vite/plugins/virtual-stub-plugin.d.ts +7 -0
  386. package/dist/types/vite/rango.d.ts +29 -0
  387. package/dist/types/vite/router-discovery.d.ts +23 -0
  388. package/dist/types/vite/utils/ast-handler-extract.d.ts +64 -0
  389. package/dist/types/vite/utils/banner.d.ts +2 -0
  390. package/dist/types/vite/utils/bundle-analysis.d.ts +28 -0
  391. package/dist/types/vite/utils/client-chunks.d.ts +55 -0
  392. package/dist/types/vite/utils/directive-prologue.d.ts +16 -0
  393. package/dist/types/vite/utils/forward-user-plugins.d.ts +37 -0
  394. package/dist/types/vite/utils/manifest-utils.d.ts +7 -0
  395. package/dist/types/vite/utils/package-resolution.d.ts +6 -0
  396. package/dist/types/vite/utils/prerender-utils.d.ts +32 -0
  397. package/dist/types/vite/utils/shared-utils.d.ts +55 -0
  398. package/dist/vite/index.js +1051 -361
  399. package/package.json +39 -33
  400. package/skills/catalog.json +6 -0
  401. package/skills/cloudflare/SKILL.md +149 -0
  402. package/skills/cloudflare/agents/openai.yaml +4 -0
  403. package/skills/cloudflare/references/d1-and-local-dev.md +131 -0
  404. package/skills/cloudflare/references/streaming-and-deploy.md +107 -0
  405. package/skills/cloudflare/references/webhooks-and-crypto.md +147 -0
  406. package/skills/composability/SKILL.md +14 -0
  407. package/skills/debug-manifest/SKILL.md +2 -10
  408. package/skills/links/SKILL.md +12 -0
  409. package/skills/middleware/SKILL.md +33 -0
  410. package/skills/migrate-nextjs/SKILL.md +65 -16
  411. package/skills/migrate-nextjs/backend-host-swap.md +120 -0
  412. package/skills/migrate-react-router/SKILL.md +6 -6
  413. package/skills/mime-routes/SKILL.md +25 -17
  414. package/skills/ppr/SKILL.md +100 -15
  415. package/skills/prerender/SKILL.md +44 -1
  416. package/skills/rango/SKILL.md +10 -10
  417. package/skills/response-routes/SKILL.md +41 -4
  418. package/skills/route/SKILL.md +6 -0
  419. package/skills/testing/SKILL.md +1 -0
  420. package/skills/testing/cache-prerender.md +43 -2
  421. package/skills/testing/response-routes.md +2 -2
  422. package/src/browser/event-controller.ts +16 -2
  423. package/src/browser/rsc-router.tsx +11 -0
  424. package/src/build/generate-manifest.ts +5 -36
  425. package/src/build/route-trie.ts +5 -50
  426. package/src/cache/cache-key-utils.ts +0 -1
  427. package/src/cache/cache-scope.ts +41 -3
  428. package/src/cache/cf/cf-cache-store.ts +465 -56
  429. package/src/cache/cf/cf-cache-types.ts +66 -0
  430. package/src/cache/cf/cf-tag-marker-memo.ts +5 -2
  431. package/src/cache/cf/cf-zone-purge.ts +101 -0
  432. package/src/cache/cf/index.ts +5 -0
  433. package/src/cache/handle-snapshot.ts +22 -1
  434. package/src/cache/index.ts +2 -0
  435. package/src/cache/memory-segment-store.ts +32 -0
  436. package/src/cache/segment-codec.ts +47 -0
  437. package/src/cache/shell-snapshot.ts +79 -14
  438. package/src/cache/types.ts +38 -0
  439. package/src/cache/vercel/vercel-cache-store.ts +71 -2
  440. package/src/deps/ssr.ts +4 -1
  441. package/src/index.rsc.ts +7 -0
  442. package/src/index.ts +1 -0
  443. package/src/prerender/build-shell-capture.ts +447 -0
  444. package/src/prerender/shell-manifest-key.ts +20 -0
  445. package/src/prerender/store.ts +10 -1
  446. package/src/prerender.ts +3 -3
  447. package/src/redirect-origin.ts +37 -8
  448. package/src/route-map-builder.ts +8 -8
  449. package/src/router/content-negotiation.ts +47 -5
  450. package/src/router/handler-context.ts +18 -10
  451. package/src/router/intercept-resolution.ts +30 -1
  452. package/src/router/loader-resolution.ts +16 -0
  453. package/src/router/match-api.ts +9 -2
  454. package/src/router/match-middleware/cache-lookup.ts +12 -1
  455. package/src/router/metrics.ts +17 -2
  456. package/src/router/middleware-types.ts +17 -0
  457. package/src/router/middleware.ts +4 -0
  458. package/src/router/prerender-match.ts +28 -0
  459. package/src/router/router-interfaces.ts +7 -6
  460. package/src/router/router-options.ts +13 -8
  461. package/src/router/segment-resolution/fresh.ts +21 -2
  462. package/src/router/segment-resolution/helpers.ts +1 -1
  463. package/src/router/segment-resolution/loader-cache.ts +38 -7
  464. package/src/router/segment-resolution/mask-nested.ts +19 -3
  465. package/src/router/segment-resolution/revalidation.ts +9 -0
  466. package/src/router/telemetry-otel.ts +11 -0
  467. package/src/router/telemetry.ts +1 -0
  468. package/src/router/timeout.ts +41 -1
  469. package/src/router.ts +5 -4
  470. package/src/rsc/capture-queue.ts +67 -0
  471. package/src/rsc/handler.ts +151 -77
  472. package/src/rsc/helpers.ts +67 -4
  473. package/src/rsc/progressive-enhancement.ts +66 -54
  474. package/src/rsc/redirect-guard.ts +3 -1
  475. package/src/rsc/render-pipeline.ts +559 -0
  476. package/src/rsc/response-cache-serve.ts +39 -18
  477. package/src/rsc/response-route-handler.ts +9 -45
  478. package/src/rsc/rsc-rendering.ts +303 -103
  479. package/src/rsc/server-action.ts +50 -42
  480. package/src/rsc/shell-build-manifest.ts +316 -0
  481. package/src/rsc/shell-capture-constants.ts +27 -0
  482. package/src/rsc/shell-capture.ts +595 -69
  483. package/src/rsc/shell-serve.ts +133 -3
  484. package/src/rsc/ssr-setup.ts +102 -23
  485. package/src/segment-fragments.ts +124 -0
  486. package/src/server/context.ts +184 -8
  487. package/src/server/request-context.ts +297 -45
  488. package/src/ssr/index.tsx +167 -32
  489. package/src/ssr/preinit-client-references.ts +106 -0
  490. package/src/ssr/ssr-root.tsx +35 -2
  491. package/src/testing/dispatch.ts +132 -67
  492. package/src/testing/e2e/index.ts +8 -0
  493. package/src/testing/index.ts +9 -1
  494. package/src/testing/internal/context.ts +9 -0
  495. package/src/testing/render-handler.ts +15 -1
  496. package/src/testing/run-middleware.ts +14 -0
  497. package/src/testing/shell-status.ts +100 -0
  498. package/src/types/handler-context.ts +13 -2
  499. package/src/urls/path-helper-types.ts +1 -1
  500. package/src/urls/pattern-types.ts +29 -0
  501. package/src/vite/discovery/discover-routers.ts +71 -52
  502. package/src/vite/discovery/prerender-collection.ts +16 -0
  503. package/src/vite/discovery/shell-prerender-phase.ts +397 -0
  504. package/src/vite/discovery/state.ts +44 -0
  505. package/src/vite/discovery/virtual-module-codegen.ts +126 -20
  506. package/src/vite/index.ts +1 -0
  507. package/src/vite/plugin-types.ts +33 -0
  508. package/src/vite/plugins/version-plugin.ts +8 -0
  509. package/src/vite/plugins/virtual-entries.ts +37 -4
  510. package/src/vite/rango.ts +42 -2
  511. package/src/vite/router-discovery.ts +432 -21
  512. package/src/vite/utils/package-resolution.ts +1 -0
  513. package/src/vite/utils/prerender-utils.ts +25 -6
  514. package/src/vite/utils/shared-utils.ts +4 -2
  515. package/dist/__internal.d.ts +0 -83
  516. package/dist/__internal.d.ts.map +0 -1
  517. package/dist/__internal.js +0 -19
  518. package/dist/__internal.js.map +0 -1
  519. package/dist/__mocks__/version.d.ts +0 -7
  520. package/dist/__mocks__/version.d.ts.map +0 -1
  521. package/dist/__mocks__/version.js +0 -7
  522. package/dist/__mocks__/version.js.map +0 -1
  523. package/dist/__tests__/client-href.test.d.ts +0 -2
  524. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  525. package/dist/__tests__/client-href.test.js +0 -74
  526. package/dist/__tests__/client-href.test.js.map +0 -1
  527. package/dist/__tests__/component-utils.test.d.ts +0 -2
  528. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  529. package/dist/__tests__/component-utils.test.js +0 -51
  530. package/dist/__tests__/component-utils.test.js.map +0 -1
  531. package/dist/__tests__/event-controller.test.d.ts +0 -2
  532. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  533. package/dist/__tests__/event-controller.test.js +0 -538
  534. package/dist/__tests__/event-controller.test.js.map +0 -1
  535. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  536. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  537. package/dist/__tests__/helpers/route-tree.js +0 -374
  538. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  539. package/dist/__tests__/match-result.test.d.ts +0 -2
  540. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  541. package/dist/__tests__/match-result.test.js +0 -154
  542. package/dist/__tests__/match-result.test.js.map +0 -1
  543. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  544. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  545. package/dist/__tests__/navigation-store.test.js +0 -440
  546. package/dist/__tests__/navigation-store.test.js.map +0 -1
  547. package/dist/__tests__/partial-update.test.d.ts +0 -2
  548. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  549. package/dist/__tests__/partial-update.test.js +0 -1009
  550. package/dist/__tests__/partial-update.test.js.map +0 -1
  551. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  552. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  553. package/dist/__tests__/reverse-types.test.js +0 -656
  554. package/dist/__tests__/reverse-types.test.js.map +0 -1
  555. package/dist/__tests__/route-definition.test.d.ts +0 -2
  556. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  557. package/dist/__tests__/route-definition.test.js +0 -55
  558. package/dist/__tests__/route-definition.test.js.map +0 -1
  559. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  560. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  561. package/dist/__tests__/router-helpers.test.js +0 -377
  562. package/dist/__tests__/router-helpers.test.js.map +0 -1
  563. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  564. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  565. package/dist/__tests__/router-integration-2.test.js +0 -426
  566. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  567. package/dist/__tests__/router-integration.test.d.ts +0 -2
  568. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  569. package/dist/__tests__/router-integration.test.js +0 -1051
  570. package/dist/__tests__/router-integration.test.js.map +0 -1
  571. package/dist/__tests__/search-params.test.d.ts +0 -5
  572. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  573. package/dist/__tests__/search-params.test.js +0 -306
  574. package/dist/__tests__/search-params.test.js.map +0 -1
  575. package/dist/__tests__/segment-system.test.d.ts +0 -2
  576. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  577. package/dist/__tests__/segment-system.test.js +0 -627
  578. package/dist/__tests__/segment-system.test.js.map +0 -1
  579. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  580. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  581. package/dist/__tests__/static-handler-types.test.js +0 -63
  582. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  583. package/dist/__tests__/urls.test.d.ts +0 -2
  584. package/dist/__tests__/urls.test.d.ts.map +0 -1
  585. package/dist/__tests__/urls.test.js +0 -421
  586. package/dist/__tests__/urls.test.js.map +0 -1
  587. package/dist/__tests__/use-mount.test.d.ts +0 -2
  588. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  589. package/dist/__tests__/use-mount.test.js +0 -35
  590. package/dist/__tests__/use-mount.test.js.map +0 -1
  591. package/dist/bin/rango.d.ts +0 -2
  592. package/dist/bin/rango.d.ts.map +0 -1
  593. package/dist/bin/rango.js.map +0 -1
  594. package/dist/browser/event-controller.d.ts +0 -191
  595. package/dist/browser/event-controller.d.ts.map +0 -1
  596. package/dist/browser/event-controller.js +0 -559
  597. package/dist/browser/event-controller.js.map +0 -1
  598. package/dist/browser/index.d.ts +0 -2
  599. package/dist/browser/index.d.ts.map +0 -1
  600. package/dist/browser/index.js +0 -14
  601. package/dist/browser/index.js.map +0 -1
  602. package/dist/browser/link-interceptor.d.ts +0 -38
  603. package/dist/browser/link-interceptor.d.ts.map +0 -1
  604. package/dist/browser/link-interceptor.js +0 -99
  605. package/dist/browser/link-interceptor.js.map +0 -1
  606. package/dist/browser/logging.d.ts +0 -10
  607. package/dist/browser/logging.d.ts.map +0 -1
  608. package/dist/browser/logging.js +0 -29
  609. package/dist/browser/logging.js.map +0 -1
  610. package/dist/browser/lru-cache.d.ts +0 -17
  611. package/dist/browser/lru-cache.d.ts.map +0 -1
  612. package/dist/browser/lru-cache.js +0 -50
  613. package/dist/browser/lru-cache.js.map +0 -1
  614. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  615. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  616. package/dist/browser/merge-segment-loaders.js +0 -102
  617. package/dist/browser/merge-segment-loaders.js.map +0 -1
  618. package/dist/browser/navigation-bridge.d.ts +0 -102
  619. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  620. package/dist/browser/navigation-bridge.js +0 -708
  621. package/dist/browser/navigation-bridge.js.map +0 -1
  622. package/dist/browser/navigation-client.d.ts +0 -25
  623. package/dist/browser/navigation-client.d.ts.map +0 -1
  624. package/dist/browser/navigation-client.js +0 -157
  625. package/dist/browser/navigation-client.js.map +0 -1
  626. package/dist/browser/navigation-store.d.ts +0 -101
  627. package/dist/browser/navigation-store.d.ts.map +0 -1
  628. package/dist/browser/navigation-store.js +0 -625
  629. package/dist/browser/navigation-store.js.map +0 -1
  630. package/dist/browser/partial-update.d.ts +0 -75
  631. package/dist/browser/partial-update.d.ts.map +0 -1
  632. package/dist/browser/partial-update.js +0 -426
  633. package/dist/browser/partial-update.js.map +0 -1
  634. package/dist/browser/react/Link.d.ts +0 -86
  635. package/dist/browser/react/Link.d.ts.map +0 -1
  636. package/dist/browser/react/Link.js +0 -128
  637. package/dist/browser/react/Link.js.map +0 -1
  638. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  639. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  640. package/dist/browser/react/NavigationProvider.js +0 -216
  641. package/dist/browser/react/NavigationProvider.js.map +0 -1
  642. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  643. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  644. package/dist/browser/react/ScrollRestoration.js +0 -57
  645. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  646. package/dist/browser/react/context.d.ts +0 -46
  647. package/dist/browser/react/context.d.ts.map +0 -1
  648. package/dist/browser/react/context.js +0 -10
  649. package/dist/browser/react/context.js.map +0 -1
  650. package/dist/browser/react/index.d.ts +0 -11
  651. package/dist/browser/react/index.d.ts.map +0 -1
  652. package/dist/browser/react/index.js +0 -22
  653. package/dist/browser/react/index.js.map +0 -1
  654. package/dist/browser/react/location-state-shared.d.ts +0 -63
  655. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  656. package/dist/browser/react/location-state-shared.js +0 -81
  657. package/dist/browser/react/location-state-shared.js.map +0 -1
  658. package/dist/browser/react/location-state.d.ts +0 -23
  659. package/dist/browser/react/location-state.d.ts.map +0 -1
  660. package/dist/browser/react/location-state.js +0 -29
  661. package/dist/browser/react/location-state.js.map +0 -1
  662. package/dist/browser/react/mount-context.d.ts +0 -24
  663. package/dist/browser/react/mount-context.d.ts.map +0 -1
  664. package/dist/browser/react/mount-context.js +0 -24
  665. package/dist/browser/react/mount-context.js.map +0 -1
  666. package/dist/browser/react/use-action.d.ts +0 -64
  667. package/dist/browser/react/use-action.d.ts.map +0 -1
  668. package/dist/browser/react/use-action.js +0 -134
  669. package/dist/browser/react/use-action.js.map +0 -1
  670. package/dist/browser/react/use-client-cache.d.ts +0 -41
  671. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  672. package/dist/browser/react/use-client-cache.js +0 -39
  673. package/dist/browser/react/use-client-cache.js.map +0 -1
  674. package/dist/browser/react/use-handle.d.ts +0 -31
  675. package/dist/browser/react/use-handle.d.ts.map +0 -1
  676. package/dist/browser/react/use-handle.js +0 -144
  677. package/dist/browser/react/use-handle.js.map +0 -1
  678. package/dist/browser/react/use-href.d.ts +0 -33
  679. package/dist/browser/react/use-href.d.ts.map +0 -1
  680. package/dist/browser/react/use-href.js +0 -39
  681. package/dist/browser/react/use-href.js.map +0 -1
  682. package/dist/browser/react/use-link-status.d.ts +0 -37
  683. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  684. package/dist/browser/react/use-link-status.js +0 -99
  685. package/dist/browser/react/use-link-status.js.map +0 -1
  686. package/dist/browser/react/use-mount.d.ts +0 -25
  687. package/dist/browser/react/use-mount.d.ts.map +0 -1
  688. package/dist/browser/react/use-mount.js +0 -30
  689. package/dist/browser/react/use-mount.js.map +0 -1
  690. package/dist/browser/react/use-navigation.d.ts +0 -27
  691. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  692. package/dist/browser/react/use-navigation.js +0 -87
  693. package/dist/browser/react/use-navigation.js.map +0 -1
  694. package/dist/browser/react/use-segments.d.ts +0 -38
  695. package/dist/browser/react/use-segments.d.ts.map +0 -1
  696. package/dist/browser/react/use-segments.js +0 -130
  697. package/dist/browser/react/use-segments.js.map +0 -1
  698. package/dist/browser/request-controller.d.ts +0 -26
  699. package/dist/browser/request-controller.d.ts.map +0 -1
  700. package/dist/browser/request-controller.js +0 -147
  701. package/dist/browser/request-controller.js.map +0 -1
  702. package/dist/browser/rsc-router.d.ts +0 -129
  703. package/dist/browser/rsc-router.d.ts.map +0 -1
  704. package/dist/browser/rsc-router.js +0 -195
  705. package/dist/browser/rsc-router.js.map +0 -1
  706. package/dist/browser/scroll-restoration.d.ts +0 -93
  707. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  708. package/dist/browser/scroll-restoration.js +0 -321
  709. package/dist/browser/scroll-restoration.js.map +0 -1
  710. package/dist/browser/segment-structure-assert.d.ts +0 -17
  711. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  712. package/dist/browser/segment-structure-assert.js +0 -59
  713. package/dist/browser/segment-structure-assert.js.map +0 -1
  714. package/dist/browser/server-action-bridge.d.ts +0 -26
  715. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  716. package/dist/browser/server-action-bridge.js +0 -668
  717. package/dist/browser/server-action-bridge.js.map +0 -1
  718. package/dist/browser/shallow.d.ts +0 -12
  719. package/dist/browser/shallow.d.ts.map +0 -1
  720. package/dist/browser/shallow.js +0 -34
  721. package/dist/browser/shallow.js.map +0 -1
  722. package/dist/browser/types.d.ts +0 -369
  723. package/dist/browser/types.d.ts.map +0 -1
  724. package/dist/browser/types.js +0 -2
  725. package/dist/browser/types.js.map +0 -1
  726. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  727. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  728. package/dist/build/__tests__/generate-cli.test.js +0 -237
  729. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  730. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  731. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  732. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  733. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  734. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  735. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  736. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  737. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  738. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  739. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  740. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  741. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  742. package/dist/build/generate-manifest.d.ts +0 -81
  743. package/dist/build/generate-manifest.d.ts.map +0 -1
  744. package/dist/build/generate-manifest.js +0 -276
  745. package/dist/build/generate-manifest.js.map +0 -1
  746. package/dist/build/generate-route-types.d.ts +0 -115
  747. package/dist/build/generate-route-types.d.ts.map +0 -1
  748. package/dist/build/generate-route-types.js +0 -740
  749. package/dist/build/generate-route-types.js.map +0 -1
  750. package/dist/build/index.d.ts +0 -21
  751. package/dist/build/index.d.ts.map +0 -1
  752. package/dist/build/index.js +0 -21
  753. package/dist/build/index.js.map +0 -1
  754. package/dist/build/route-trie.d.ts +0 -71
  755. package/dist/build/route-trie.d.ts.map +0 -1
  756. package/dist/build/route-trie.js +0 -175
  757. package/dist/build/route-trie.js.map +0 -1
  758. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  759. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  760. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  761. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  762. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  763. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  764. package/dist/cache/__tests__/document-cache.test.js +0 -345
  765. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  766. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  767. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  768. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  769. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  770. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  771. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  772. package/dist/cache/__tests__/memory-store.test.js +0 -367
  773. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  774. package/dist/cache/cache-scope.d.ts +0 -102
  775. package/dist/cache/cache-scope.d.ts.map +0 -1
  776. package/dist/cache/cache-scope.js +0 -440
  777. package/dist/cache/cache-scope.js.map +0 -1
  778. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  779. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  780. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  781. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  782. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  783. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  784. package/dist/cache/cf/cf-cache-store.js +0 -242
  785. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  786. package/dist/cache/cf/index.d.ts +0 -14
  787. package/dist/cache/cf/index.d.ts.map +0 -1
  788. package/dist/cache/cf/index.js +0 -17
  789. package/dist/cache/cf/index.js.map +0 -1
  790. package/dist/cache/document-cache.d.ts +0 -64
  791. package/dist/cache/document-cache.d.ts.map +0 -1
  792. package/dist/cache/document-cache.js +0 -228
  793. package/dist/cache/document-cache.js.map +0 -1
  794. package/dist/cache/index.d.ts +0 -19
  795. package/dist/cache/index.d.ts.map +0 -1
  796. package/dist/cache/index.js +0 -21
  797. package/dist/cache/index.js.map +0 -1
  798. package/dist/cache/memory-segment-store.d.ts +0 -110
  799. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  800. package/dist/cache/memory-segment-store.js +0 -117
  801. package/dist/cache/memory-segment-store.js.map +0 -1
  802. package/dist/cache/memory-store.d.ts +0 -41
  803. package/dist/cache/memory-store.d.ts.map +0 -1
  804. package/dist/cache/memory-store.js +0 -191
  805. package/dist/cache/memory-store.js.map +0 -1
  806. package/dist/cache/types.d.ts +0 -317
  807. package/dist/cache/types.d.ts.map +0 -1
  808. package/dist/cache/types.js +0 -12
  809. package/dist/cache/types.js.map +0 -1
  810. package/dist/client.d.ts +0 -248
  811. package/dist/client.d.ts.map +0 -1
  812. package/dist/client.js +0 -367
  813. package/dist/client.js.map +0 -1
  814. package/dist/client.rsc.d.ts +0 -26
  815. package/dist/client.rsc.d.ts.map +0 -1
  816. package/dist/client.rsc.js +0 -46
  817. package/dist/client.rsc.js.map +0 -1
  818. package/dist/component-utils.d.ts +0 -36
  819. package/dist/component-utils.d.ts.map +0 -1
  820. package/dist/component-utils.js +0 -61
  821. package/dist/component-utils.js.map +0 -1
  822. package/dist/components/DefaultDocument.d.ts +0 -13
  823. package/dist/components/DefaultDocument.d.ts.map +0 -1
  824. package/dist/components/DefaultDocument.js +0 -15
  825. package/dist/components/DefaultDocument.js.map +0 -1
  826. package/dist/debug.d.ts +0 -58
  827. package/dist/debug.d.ts.map +0 -1
  828. package/dist/debug.js +0 -157
  829. package/dist/debug.js.map +0 -1
  830. package/dist/default-error-boundary.d.ts +0 -11
  831. package/dist/default-error-boundary.d.ts.map +0 -1
  832. package/dist/default-error-boundary.js +0 -45
  833. package/dist/default-error-boundary.js.map +0 -1
  834. package/dist/deps/browser.d.ts +0 -2
  835. package/dist/deps/browser.d.ts.map +0 -1
  836. package/dist/deps/browser.js +0 -3
  837. package/dist/deps/browser.js.map +0 -1
  838. package/dist/deps/html-stream-client.d.ts +0 -2
  839. package/dist/deps/html-stream-client.d.ts.map +0 -1
  840. package/dist/deps/html-stream-client.js +0 -3
  841. package/dist/deps/html-stream-client.js.map +0 -1
  842. package/dist/deps/html-stream-server.d.ts +0 -2
  843. package/dist/deps/html-stream-server.d.ts.map +0 -1
  844. package/dist/deps/html-stream-server.js +0 -3
  845. package/dist/deps/html-stream-server.js.map +0 -1
  846. package/dist/deps/rsc.d.ts +0 -2
  847. package/dist/deps/rsc.d.ts.map +0 -1
  848. package/dist/deps/rsc.js +0 -4
  849. package/dist/deps/rsc.js.map +0 -1
  850. package/dist/deps/ssr.d.ts +0 -2
  851. package/dist/deps/ssr.d.ts.map +0 -1
  852. package/dist/deps/ssr.js +0 -3
  853. package/dist/deps/ssr.js.map +0 -1
  854. package/dist/errors.d.ts +0 -174
  855. package/dist/errors.d.ts.map +0 -1
  856. package/dist/errors.js +0 -241
  857. package/dist/errors.js.map +0 -1
  858. package/dist/handle.d.ts +0 -78
  859. package/dist/handle.d.ts.map +0 -1
  860. package/dist/handle.js +0 -82
  861. package/dist/handle.js.map +0 -1
  862. package/dist/handles/MetaTags.d.ts +0 -14
  863. package/dist/handles/MetaTags.d.ts.map +0 -1
  864. package/dist/handles/MetaTags.js +0 -136
  865. package/dist/handles/MetaTags.js.map +0 -1
  866. package/dist/handles/index.d.ts +0 -6
  867. package/dist/handles/index.d.ts.map +0 -1
  868. package/dist/handles/index.js +0 -6
  869. package/dist/handles/index.js.map +0 -1
  870. package/dist/handles/meta.d.ts +0 -39
  871. package/dist/handles/meta.d.ts.map +0 -1
  872. package/dist/handles/meta.js +0 -202
  873. package/dist/handles/meta.js.map +0 -1
  874. package/dist/host/__tests__/errors.test.d.ts +0 -2
  875. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  876. package/dist/host/__tests__/errors.test.js +0 -76
  877. package/dist/host/__tests__/errors.test.js.map +0 -1
  878. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  879. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  880. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  881. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  882. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  883. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  884. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  885. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  886. package/dist/host/__tests__/router.test.d.ts +0 -2
  887. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  888. package/dist/host/__tests__/router.test.js +0 -241
  889. package/dist/host/__tests__/router.test.js.map +0 -1
  890. package/dist/host/__tests__/testing.test.d.ts +0 -2
  891. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  892. package/dist/host/__tests__/testing.test.js +0 -64
  893. package/dist/host/__tests__/testing.test.js.map +0 -1
  894. package/dist/host/__tests__/utils.test.d.ts +0 -2
  895. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  896. package/dist/host/__tests__/utils.test.js +0 -29
  897. package/dist/host/__tests__/utils.test.js.map +0 -1
  898. package/dist/host/cookie-handler.d.ts +0 -34
  899. package/dist/host/cookie-handler.d.ts.map +0 -1
  900. package/dist/host/cookie-handler.js +0 -124
  901. package/dist/host/cookie-handler.js.map +0 -1
  902. package/dist/host/errors.d.ts +0 -56
  903. package/dist/host/errors.d.ts.map +0 -1
  904. package/dist/host/errors.js +0 -79
  905. package/dist/host/errors.js.map +0 -1
  906. package/dist/host/index.d.ts +0 -29
  907. package/dist/host/index.d.ts.map +0 -1
  908. package/dist/host/index.js +0 -32
  909. package/dist/host/index.js.map +0 -1
  910. package/dist/host/pattern-matcher.d.ts +0 -36
  911. package/dist/host/pattern-matcher.d.ts.map +0 -1
  912. package/dist/host/pattern-matcher.js +0 -172
  913. package/dist/host/pattern-matcher.js.map +0 -1
  914. package/dist/host/router.d.ts +0 -26
  915. package/dist/host/router.d.ts.map +0 -1
  916. package/dist/host/router.js +0 -218
  917. package/dist/host/router.js.map +0 -1
  918. package/dist/host/testing.d.ts +0 -36
  919. package/dist/host/testing.d.ts.map +0 -1
  920. package/dist/host/testing.js +0 -55
  921. package/dist/host/testing.js.map +0 -1
  922. package/dist/host/types.d.ts +0 -115
  923. package/dist/host/types.d.ts.map +0 -1
  924. package/dist/host/types.js +0 -7
  925. package/dist/host/types.js.map +0 -1
  926. package/dist/host/utils.d.ts +0 -21
  927. package/dist/host/utils.d.ts.map +0 -1
  928. package/dist/host/utils.js +0 -23
  929. package/dist/host/utils.js.map +0 -1
  930. package/dist/href-client.d.ts +0 -131
  931. package/dist/href-client.d.ts.map +0 -1
  932. package/dist/href-client.js +0 -64
  933. package/dist/href-client.js.map +0 -1
  934. package/dist/href-context.d.ts +0 -29
  935. package/dist/href-context.d.ts.map +0 -1
  936. package/dist/href-context.js +0 -21
  937. package/dist/href-context.js.map +0 -1
  938. package/dist/index.d.ts +0 -73
  939. package/dist/index.d.ts.map +0 -1
  940. package/dist/index.js +0 -91
  941. package/dist/index.js.map +0 -1
  942. package/dist/index.rsc.d.ts +0 -32
  943. package/dist/index.rsc.d.ts.map +0 -1
  944. package/dist/index.rsc.js +0 -40
  945. package/dist/index.rsc.js.map +0 -1
  946. package/dist/internal-debug.d.ts +0 -2
  947. package/dist/internal-debug.d.ts.map +0 -1
  948. package/dist/internal-debug.js +0 -5
  949. package/dist/internal-debug.js.map +0 -1
  950. package/dist/loader.d.ts +0 -14
  951. package/dist/loader.d.ts.map +0 -1
  952. package/dist/loader.js +0 -20
  953. package/dist/loader.js.map +0 -1
  954. package/dist/loader.rsc.d.ts +0 -19
  955. package/dist/loader.rsc.d.ts.map +0 -1
  956. package/dist/loader.rsc.js +0 -99
  957. package/dist/loader.rsc.js.map +0 -1
  958. package/dist/network-error-thrower.d.ts +0 -17
  959. package/dist/network-error-thrower.d.ts.map +0 -1
  960. package/dist/network-error-thrower.js +0 -14
  961. package/dist/network-error-thrower.js.map +0 -1
  962. package/dist/outlet-context.d.ts +0 -13
  963. package/dist/outlet-context.d.ts.map +0 -1
  964. package/dist/outlet-context.js +0 -3
  965. package/dist/outlet-context.js.map +0 -1
  966. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  967. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  968. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  969. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  970. package/dist/prerender/param-hash.d.ts +0 -16
  971. package/dist/prerender/param-hash.d.ts.map +0 -1
  972. package/dist/prerender/param-hash.js +0 -36
  973. package/dist/prerender/param-hash.js.map +0 -1
  974. package/dist/prerender/store.d.ts +0 -38
  975. package/dist/prerender/store.d.ts.map +0 -1
  976. package/dist/prerender/store.js +0 -61
  977. package/dist/prerender/store.js.map +0 -1
  978. package/dist/prerender.d.ts +0 -66
  979. package/dist/prerender.d.ts.map +0 -1
  980. package/dist/prerender.js +0 -57
  981. package/dist/prerender.js.map +0 -1
  982. package/dist/reverse.d.ts +0 -196
  983. package/dist/reverse.d.ts.map +0 -1
  984. package/dist/reverse.js +0 -78
  985. package/dist/reverse.js.map +0 -1
  986. package/dist/root-error-boundary.d.ts +0 -33
  987. package/dist/root-error-boundary.d.ts.map +0 -1
  988. package/dist/root-error-boundary.js +0 -165
  989. package/dist/root-error-boundary.js.map +0 -1
  990. package/dist/route-content-wrapper.d.ts +0 -46
  991. package/dist/route-content-wrapper.d.ts.map +0 -1
  992. package/dist/route-content-wrapper.js +0 -77
  993. package/dist/route-content-wrapper.js.map +0 -1
  994. package/dist/route-definition.d.ts +0 -421
  995. package/dist/route-definition.d.ts.map +0 -1
  996. package/dist/route-definition.js +0 -868
  997. package/dist/route-definition.js.map +0 -1
  998. package/dist/route-map-builder.d.ts +0 -155
  999. package/dist/route-map-builder.d.ts.map +0 -1
  1000. package/dist/route-map-builder.js +0 -237
  1001. package/dist/route-map-builder.js.map +0 -1
  1002. package/dist/route-types.d.ts +0 -165
  1003. package/dist/route-types.d.ts.map +0 -1
  1004. package/dist/route-types.js +0 -7
  1005. package/dist/route-types.js.map +0 -1
  1006. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  1007. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  1008. package/dist/router/__tests__/handler-context.test.js +0 -65
  1009. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  1010. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  1011. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  1012. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  1013. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  1014. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  1015. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  1016. package/dist/router/__tests__/match-context.test.js +0 -92
  1017. package/dist/router/__tests__/match-context.test.js.map +0 -1
  1018. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  1019. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  1020. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  1021. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  1022. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  1023. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  1024. package/dist/router/__tests__/match-result.test.js +0 -457
  1025. package/dist/router/__tests__/match-result.test.js.map +0 -1
  1026. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  1027. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  1028. package/dist/router/__tests__/on-error.test.js +0 -678
  1029. package/dist/router/__tests__/on-error.test.js.map +0 -1
  1030. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  1031. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  1032. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  1033. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  1034. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  1035. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  1036. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  1037. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  1038. package/dist/router/error-handling.d.ts +0 -77
  1039. package/dist/router/error-handling.d.ts.map +0 -1
  1040. package/dist/router/error-handling.js +0 -202
  1041. package/dist/router/error-handling.js.map +0 -1
  1042. package/dist/router/handler-context.d.ts +0 -20
  1043. package/dist/router/handler-context.d.ts.map +0 -1
  1044. package/dist/router/handler-context.js +0 -198
  1045. package/dist/router/handler-context.js.map +0 -1
  1046. package/dist/router/intercept-resolution.d.ts +0 -66
  1047. package/dist/router/intercept-resolution.d.ts.map +0 -1
  1048. package/dist/router/intercept-resolution.js +0 -246
  1049. package/dist/router/intercept-resolution.js.map +0 -1
  1050. package/dist/router/loader-resolution.d.ts +0 -64
  1051. package/dist/router/loader-resolution.d.ts.map +0 -1
  1052. package/dist/router/loader-resolution.js +0 -284
  1053. package/dist/router/loader-resolution.js.map +0 -1
  1054. package/dist/router/logging.d.ts +0 -15
  1055. package/dist/router/logging.d.ts.map +0 -1
  1056. package/dist/router/logging.js +0 -99
  1057. package/dist/router/logging.js.map +0 -1
  1058. package/dist/router/manifest.d.ts +0 -22
  1059. package/dist/router/manifest.d.ts.map +0 -1
  1060. package/dist/router/manifest.js +0 -181
  1061. package/dist/router/manifest.js.map +0 -1
  1062. package/dist/router/match-api.d.ts +0 -35
  1063. package/dist/router/match-api.d.ts.map +0 -1
  1064. package/dist/router/match-api.js +0 -406
  1065. package/dist/router/match-api.js.map +0 -1
  1066. package/dist/router/match-context.d.ts +0 -206
  1067. package/dist/router/match-context.d.ts.map +0 -1
  1068. package/dist/router/match-context.js +0 -17
  1069. package/dist/router/match-context.js.map +0 -1
  1070. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  1071. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  1072. package/dist/router/match-middleware/background-revalidation.js +0 -75
  1073. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  1074. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  1075. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  1076. package/dist/router/match-middleware/cache-lookup.js +0 -257
  1077. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  1078. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  1079. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  1080. package/dist/router/match-middleware/cache-store.js +0 -108
  1081. package/dist/router/match-middleware/cache-store.js.map +0 -1
  1082. package/dist/router/match-middleware/index.d.ts +0 -81
  1083. package/dist/router/match-middleware/index.d.ts.map +0 -1
  1084. package/dist/router/match-middleware/index.js +0 -80
  1085. package/dist/router/match-middleware/index.js.map +0 -1
  1086. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  1087. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  1088. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  1089. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  1090. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  1091. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  1092. package/dist/router/match-middleware/segment-resolution.js +0 -53
  1093. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  1094. package/dist/router/match-pipelines.d.ts +0 -147
  1095. package/dist/router/match-pipelines.d.ts.map +0 -1
  1096. package/dist/router/match-pipelines.js +0 -82
  1097. package/dist/router/match-pipelines.js.map +0 -1
  1098. package/dist/router/match-result.d.ts +0 -126
  1099. package/dist/router/match-result.d.ts.map +0 -1
  1100. package/dist/router/match-result.js +0 -93
  1101. package/dist/router/match-result.js.map +0 -1
  1102. package/dist/router/metrics.d.ts +0 -20
  1103. package/dist/router/metrics.d.ts.map +0 -1
  1104. package/dist/router/metrics.js +0 -47
  1105. package/dist/router/metrics.js.map +0 -1
  1106. package/dist/router/middleware.d.ts +0 -249
  1107. package/dist/router/middleware.d.ts.map +0 -1
  1108. package/dist/router/middleware.js +0 -434
  1109. package/dist/router/middleware.js.map +0 -1
  1110. package/dist/router/middleware.test.d.ts +0 -2
  1111. package/dist/router/middleware.test.d.ts.map +0 -1
  1112. package/dist/router/middleware.test.js +0 -816
  1113. package/dist/router/middleware.test.js.map +0 -1
  1114. package/dist/router/pattern-matching.d.ts +0 -149
  1115. package/dist/router/pattern-matching.d.ts.map +0 -1
  1116. package/dist/router/pattern-matching.js +0 -349
  1117. package/dist/router/pattern-matching.js.map +0 -1
  1118. package/dist/router/revalidation.d.ts +0 -44
  1119. package/dist/router/revalidation.d.ts.map +0 -1
  1120. package/dist/router/revalidation.js +0 -147
  1121. package/dist/router/revalidation.js.map +0 -1
  1122. package/dist/router/router-context.d.ts +0 -135
  1123. package/dist/router/router-context.d.ts.map +0 -1
  1124. package/dist/router/router-context.js +0 -36
  1125. package/dist/router/router-context.js.map +0 -1
  1126. package/dist/router/segment-resolution.d.ts +0 -127
  1127. package/dist/router/segment-resolution.d.ts.map +0 -1
  1128. package/dist/router/segment-resolution.js +0 -919
  1129. package/dist/router/segment-resolution.js.map +0 -1
  1130. package/dist/router/trie-matching.d.ts +0 -40
  1131. package/dist/router/trie-matching.d.ts.map +0 -1
  1132. package/dist/router/trie-matching.js +0 -127
  1133. package/dist/router/trie-matching.js.map +0 -1
  1134. package/dist/router/types.d.ts +0 -136
  1135. package/dist/router/types.d.ts.map +0 -1
  1136. package/dist/router/types.js +0 -7
  1137. package/dist/router/types.js.map +0 -1
  1138. package/dist/router.d.ts +0 -753
  1139. package/dist/router.d.ts.map +0 -1
  1140. package/dist/router.gen.d.ts +0 -6
  1141. package/dist/router.gen.d.ts.map +0 -1
  1142. package/dist/router.gen.js +0 -6
  1143. package/dist/router.gen.js.map +0 -1
  1144. package/dist/router.js +0 -1304
  1145. package/dist/router.js.map +0 -1
  1146. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  1147. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  1148. package/dist/rsc/__tests__/helpers.test.js +0 -140
  1149. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  1150. package/dist/rsc/handler.d.ts +0 -45
  1151. package/dist/rsc/handler.d.ts.map +0 -1
  1152. package/dist/rsc/handler.js +0 -1172
  1153. package/dist/rsc/handler.js.map +0 -1
  1154. package/dist/rsc/helpers.d.ts +0 -16
  1155. package/dist/rsc/helpers.d.ts.map +0 -1
  1156. package/dist/rsc/helpers.js +0 -55
  1157. package/dist/rsc/helpers.js.map +0 -1
  1158. package/dist/rsc/index.d.ts +0 -22
  1159. package/dist/rsc/index.d.ts.map +0 -1
  1160. package/dist/rsc/index.js +0 -23
  1161. package/dist/rsc/index.js.map +0 -1
  1162. package/dist/rsc/nonce.d.ts +0 -9
  1163. package/dist/rsc/nonce.d.ts.map +0 -1
  1164. package/dist/rsc/nonce.js +0 -18
  1165. package/dist/rsc/nonce.js.map +0 -1
  1166. package/dist/rsc/types.d.ts +0 -206
  1167. package/dist/rsc/types.d.ts.map +0 -1
  1168. package/dist/rsc/types.js +0 -8
  1169. package/dist/rsc/types.js.map +0 -1
  1170. package/dist/search-params.d.ts +0 -103
  1171. package/dist/search-params.d.ts.map +0 -1
  1172. package/dist/search-params.js +0 -74
  1173. package/dist/search-params.js.map +0 -1
  1174. package/dist/segment-system.d.ts +0 -75
  1175. package/dist/segment-system.d.ts.map +0 -1
  1176. package/dist/segment-system.js +0 -336
  1177. package/dist/segment-system.js.map +0 -1
  1178. package/dist/server/context.d.ts +0 -245
  1179. package/dist/server/context.d.ts.map +0 -1
  1180. package/dist/server/context.js +0 -197
  1181. package/dist/server/context.js.map +0 -1
  1182. package/dist/server/fetchable-loader-store.d.ts +0 -18
  1183. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  1184. package/dist/server/fetchable-loader-store.js +0 -18
  1185. package/dist/server/fetchable-loader-store.js.map +0 -1
  1186. package/dist/server/handle-store.d.ts +0 -85
  1187. package/dist/server/handle-store.d.ts.map +0 -1
  1188. package/dist/server/handle-store.js +0 -142
  1189. package/dist/server/handle-store.js.map +0 -1
  1190. package/dist/server/loader-registry.d.ts +0 -55
  1191. package/dist/server/loader-registry.d.ts.map +0 -1
  1192. package/dist/server/loader-registry.js +0 -132
  1193. package/dist/server/loader-registry.js.map +0 -1
  1194. package/dist/server/request-context.d.ts +0 -226
  1195. package/dist/server/request-context.d.ts.map +0 -1
  1196. package/dist/server/request-context.js +0 -290
  1197. package/dist/server/request-context.js.map +0 -1
  1198. package/dist/server/root-layout.d.ts +0 -4
  1199. package/dist/server/root-layout.d.ts.map +0 -1
  1200. package/dist/server/root-layout.js +0 -5
  1201. package/dist/server/root-layout.js.map +0 -1
  1202. package/dist/server.d.ts +0 -15
  1203. package/dist/server.d.ts.map +0 -1
  1204. package/dist/server.js +0 -20
  1205. package/dist/server.js.map +0 -1
  1206. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  1207. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  1208. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  1209. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  1210. package/dist/ssr/index.d.ts +0 -98
  1211. package/dist/ssr/index.d.ts.map +0 -1
  1212. package/dist/ssr/index.js +0 -158
  1213. package/dist/ssr/index.js.map +0 -1
  1214. package/dist/static-handler.d.ts +0 -50
  1215. package/dist/static-handler.d.ts.map +0 -1
  1216. package/dist/static-handler.gen.d.ts +0 -5
  1217. package/dist/static-handler.gen.d.ts.map +0 -1
  1218. package/dist/static-handler.gen.js +0 -5
  1219. package/dist/static-handler.gen.js.map +0 -1
  1220. package/dist/static-handler.js +0 -29
  1221. package/dist/static-handler.js.map +0 -1
  1222. package/dist/theme/ThemeProvider.d.ts +0 -20
  1223. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  1224. package/dist/theme/ThemeProvider.js +0 -240
  1225. package/dist/theme/ThemeProvider.js.map +0 -1
  1226. package/dist/theme/ThemeScript.d.ts +0 -48
  1227. package/dist/theme/ThemeScript.d.ts.map +0 -1
  1228. package/dist/theme/ThemeScript.js +0 -13
  1229. package/dist/theme/ThemeScript.js.map +0 -1
  1230. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  1231. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  1232. package/dist/theme/__tests__/theme.test.js +0 -103
  1233. package/dist/theme/__tests__/theme.test.js.map +0 -1
  1234. package/dist/theme/constants.d.ts +0 -29
  1235. package/dist/theme/constants.d.ts.map +0 -1
  1236. package/dist/theme/constants.js +0 -48
  1237. package/dist/theme/constants.js.map +0 -1
  1238. package/dist/theme/index.d.ts +0 -31
  1239. package/dist/theme/index.d.ts.map +0 -1
  1240. package/dist/theme/index.js +0 -36
  1241. package/dist/theme/index.js.map +0 -1
  1242. package/dist/theme/theme-context.d.ts +0 -40
  1243. package/dist/theme/theme-context.d.ts.map +0 -1
  1244. package/dist/theme/theme-context.js +0 -60
  1245. package/dist/theme/theme-context.js.map +0 -1
  1246. package/dist/theme/theme-script.d.ts +0 -27
  1247. package/dist/theme/theme-script.d.ts.map +0 -1
  1248. package/dist/theme/theme-script.js +0 -147
  1249. package/dist/theme/theme-script.js.map +0 -1
  1250. package/dist/theme/types.d.ts +0 -163
  1251. package/dist/theme/types.d.ts.map +0 -1
  1252. package/dist/theme/types.js +0 -11
  1253. package/dist/theme/types.js.map +0 -1
  1254. package/dist/theme/use-theme.d.ts +0 -12
  1255. package/dist/theme/use-theme.d.ts.map +0 -1
  1256. package/dist/theme/use-theme.js +0 -40
  1257. package/dist/theme/use-theme.js.map +0 -1
  1258. package/dist/types.d.ts +0 -1479
  1259. package/dist/types.d.ts.map +0 -1
  1260. package/dist/types.js +0 -10
  1261. package/dist/types.js.map +0 -1
  1262. package/dist/urls.d.ts +0 -441
  1263. package/dist/urls.d.ts.map +0 -1
  1264. package/dist/urls.gen.d.ts +0 -8
  1265. package/dist/urls.gen.d.ts.map +0 -1
  1266. package/dist/urls.gen.js +0 -8
  1267. package/dist/urls.gen.js.map +0 -1
  1268. package/dist/urls.js +0 -443
  1269. package/dist/urls.js.map +0 -1
  1270. package/dist/use-loader.d.ts +0 -127
  1271. package/dist/use-loader.d.ts.map +0 -1
  1272. package/dist/use-loader.js +0 -237
  1273. package/dist/use-loader.js.map +0 -1
  1274. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  1275. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  1276. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  1277. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  1278. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  1279. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  1280. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  1281. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  1282. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  1283. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  1284. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  1285. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  1286. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  1287. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  1288. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  1289. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  1290. package/dist/vite/ast-handler-extract.d.ts +0 -49
  1291. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  1292. package/dist/vite/ast-handler-extract.js +0 -249
  1293. package/dist/vite/ast-handler-extract.js.map +0 -1
  1294. package/dist/vite/expose-action-id.d.ts +0 -19
  1295. package/dist/vite/expose-action-id.d.ts.map +0 -1
  1296. package/dist/vite/expose-action-id.js +0 -250
  1297. package/dist/vite/expose-action-id.js.map +0 -1
  1298. package/dist/vite/expose-id-utils.d.ts +0 -69
  1299. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  1300. package/dist/vite/expose-id-utils.js +0 -289
  1301. package/dist/vite/expose-id-utils.js.map +0 -1
  1302. package/dist/vite/expose-internal-ids.d.ts +0 -22
  1303. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  1304. package/dist/vite/expose-internal-ids.js +0 -886
  1305. package/dist/vite/expose-internal-ids.js.map +0 -1
  1306. package/dist/vite/index.d.ts +0 -149
  1307. package/dist/vite/index.d.ts.map +0 -1
  1308. package/dist/vite/index.js.bak +0 -5448
  1309. package/dist/vite/index.js.map +0 -1
  1310. package/dist/vite/index.named-routes.gen.ts +0 -103
  1311. package/dist/vite/package-resolution.d.ts +0 -43
  1312. package/dist/vite/package-resolution.d.ts.map +0 -1
  1313. package/dist/vite/package-resolution.js +0 -112
  1314. package/dist/vite/package-resolution.js.map +0 -1
  1315. package/dist/vite/virtual-entries.d.ts +0 -25
  1316. package/dist/vite/virtual-entries.d.ts.map +0 -1
  1317. package/dist/vite/virtual-entries.js +0 -110
  1318. package/dist/vite/virtual-entries.js.map +0 -1
  1319. package/skills/migrate-react-router/cloudflare-workers.md +0 -129
@@ -0,0 +1,588 @@
1
+ declare global {
2
+ interface CacheStorage {
3
+ readonly default: Cache;
4
+ }
5
+ }
6
+ /**
7
+ * Cloudflare Edge Cache Store
8
+ *
9
+ * Production cache store using Cloudflare's Cache API (L1) with optional
10
+ * KV persistence (L2).
11
+ *
12
+ * L1 (Cache API): Per-colo, fast, ephemeral. Handles SWR atomically.
13
+ * L2 (KV): Global, persistent, ~50ms reads. Auto-warms cold colos.
14
+ *
15
+ * Read flow: L1 hit → serve | L1 miss → L2 hit → serve + promote to L1 | both miss → render
16
+ * Write flow: L1 write + L2 write (both via waitUntil)
17
+ *
18
+ * Features:
19
+ * - Extended TTL for SWR window (max-age = ttl + swr)
20
+ * - Staleness via x-edge-cache-stale-at header
21
+ * - Atomic REVALIDATING status for thundering herd prevention (L1 only)
22
+ * - Non-blocking writes via waitUntil
23
+ * - KV L2 for cross-colo cache persistence
24
+ */
25
+ import type { SegmentCacheStore, CachedEntryData, CacheDefaults, CacheGetResult, CacheItemResult, CacheItemOptions, ShellCacheEntry } from "../types.js";
26
+ import { type RequestContext } from "../../server/request-context.js";
27
+ import { CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER, CACHE_TAGS_HEADER, CACHE_TAGGED_AT_HEADER, TAG_MARKER_PREFIX, CACHE_REVALIDATING_AT_HEADER, MAX_REVALIDATION_INTERVAL, EDGE_LOOKUP_TIMEOUT_MS, EDGE_READ_TIMEOUT_MS, KV_READ_TIMEOUT_MS } from "./cf-cache-constants.js";
28
+ export { CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER, CACHE_TAGS_HEADER, CACHE_TAGGED_AT_HEADER, TAG_MARKER_PREFIX, CACHE_REVALIDATING_AT_HEADER, MAX_REVALIDATION_INTERVAL, EDGE_LOOKUP_TIMEOUT_MS, EDGE_READ_TIMEOUT_MS, KV_READ_TIMEOUT_MS, };
29
+ import type { KVNamespace, CFCacheReadDebugEvent, CFCacheDebug, CFCacheStoreOptions } from "./cf-cache-types.js";
30
+ export type { KVNamespace, CFCacheReadDebugEvent, CFCacheDebug, CFCacheStoreOptions, };
31
+ export declare class CFCacheStore<TEnv = unknown> implements SegmentCacheStore<TEnv> {
32
+ readonly defaults?: CacheDefaults;
33
+ readonly keyGenerator?: (ctx: RequestContext<TEnv>, defaultKey: string) => string | Promise<string>;
34
+ private readonly namespace?;
35
+ private readonly explicitBaseUrl?;
36
+ private readonly waitUntil?;
37
+ private readonly version?;
38
+ private readonly edgeLookupTimeoutMs;
39
+ private readonly edgeReadTimeoutMs;
40
+ private readonly kvReadTimeoutMs;
41
+ private readonly debug?;
42
+ private readonly kv?;
43
+ private readonly onRevalidateTag?;
44
+ private readonly tagPurge?;
45
+ private readonly tagInvalidationTtl?;
46
+ private readonly tagCacheTtl;
47
+ constructor(options: CFCacheStoreOptions<TEnv>);
48
+ /**
49
+ * Warn about a namespace-scoped misconfiguration once per namespace per
50
+ * isolate. `seen` is the module-level Set for that message family -- Sets
51
+ * are module-level (not instance fields) so re-constructed stores in the
52
+ * same isolate don't re-warn.
53
+ * @internal
54
+ */
55
+ private warnOncePerNamespace;
56
+ /**
57
+ * Validate a consumer-supplied tagInvalidationTtl against CF KV's expirationTtl
58
+ * floor. A finite value below KV_MIN_EXPIRATION_TTL is raised to it (with a
59
+ * one-time warning) so invalidation keeps working instead of every marker
60
+ * write throwing; a non-finite or non-positive value returns undefined (the
61
+ * no-expiry default). The warning still notes the sizing rule: the TTL must
62
+ * exceed the largest entry TTL+SWR or invalidated entries can resurrect.
63
+ * @internal
64
+ */
65
+ private sanitizeTagInvalidationTtl;
66
+ /**
67
+ * Emit a debug event if `debug` is enabled. Swallows sink errors so a faulty
68
+ * debug callback can never break a cache read.
69
+ * @internal
70
+ */
71
+ private emitDebug;
72
+ /**
73
+ * Resolve the cache-key base URL for the current cache operation.
74
+ * Prefers an explicit `baseUrl` option; otherwise derives it from the live
75
+ * request. Called per operation (from keyToRequest), which runs inside the
76
+ * request-context ALS, so deriveBaseUrl sees the request and can use the
77
+ * production host instead of the internal fallback.
78
+ * @internal
79
+ */
80
+ private resolveBaseUrl;
81
+ /**
82
+ * Derive base URL from request hostname via requestContext.
83
+ * Uses internal fallback for dev/preview environments and untrusted hostnames.
84
+ * Must run inside the request context (invoked lazily via resolveBaseUrl).
85
+ * @internal
86
+ */
87
+ private deriveBaseUrl;
88
+ /**
89
+ * Get the cache instance - uses caches.default unless namespace is specified.
90
+ * @internal
91
+ */
92
+ private getCache;
93
+ /**
94
+ * Race an async cache read against a latency budget. Shared by all three read
95
+ * tiers (L1 match, L1 body, L2/KV) so the timeout policy lives in one place:
96
+ * on timeout it returns `{ value: undefined, timedOut: true }` and logs
97
+ * `${label} exceeded ${budgetMs}ms; treating as miss`; the abandoned read is
98
+ * left to settle in the background (late rejection swallowed) rather than
99
+ * aborted, since the underlying CF primitives expose no cancellation. A budget
100
+ * <= 0 disables the bound and awaits the read directly. `read` is a thunk so
101
+ * the disabled path and the raced path start the read identically.
102
+ * @internal
103
+ */
104
+ private readWithTimeout;
105
+ /**
106
+ * Read from the L1 edge cache under the edgeLookupTimeoutMs budget. A `match`
107
+ * slower than the budget is abandoned and reported as a miss
108
+ * (`{ response: undefined, timedOut: true }`) so a degraded colo cannot stall
109
+ * the request; callers fall through to their normal miss path (L2/KV or
110
+ * render). The `timedOut` flag lets callers distinguish an abandoned slow
111
+ * match from a genuine miss for debug reporting; `error` is set when the
112
+ * `match` itself rejected (a transient L1 infra error) so the caller can
113
+ * report it as cache-read while still degrading to L2/KV -- distinct from a
114
+ * genuine miss (no entry), which sets neither flag.
115
+ * @internal
116
+ */
117
+ private matchWithTimeout;
118
+ /**
119
+ * Read and JSON-parse a matched L1 Response's body under the edgeReadTimeoutMs
120
+ * budget. CF resolves `match()` with a lazily-streamed body, so the latency
121
+ * tail surfaces here -- after matchWithTimeout has already passed -- not in the
122
+ * match itself. On timeout `undefined` is returned so the caller falls through
123
+ * to L2/KV or render.
124
+ * @internal
125
+ */
126
+ private readJsonWithTimeout;
127
+ /**
128
+ * Self-heal a corrupt L1 entry, then return the fall-through result. Reports
129
+ * the corruption as cache-corrupt (so an onError consumer sees it distinctly
130
+ * from a transient outage), runs the caller's L2/KV fall-through, and evicts
131
+ * the faulty per-colo entry ONLY when that fall-through found no good copy.
132
+ *
133
+ * The conditional evict is the load-bearing detail: when KV DOES serve a copy,
134
+ * kvGet* has already scheduled a same-key promote (`cache.put`); an eager
135
+ * `cache.delete` here would race that put with no CF Cache API ordering
136
+ * guarantee and could clobber the freshly-restored entry. So in that case we
137
+ * lean on #558's heal-by-overwrite (the non-suppressed fall-through promotes /
138
+ * a fresh render re-`set`s over the bad entry) and skip the delete. Only when
139
+ * this request's fall-through found no copy (=== null) is the eager evict
140
+ * scheduled -- useful then, since nothing else will overwrite the poison entry.
141
+ * A null fall-through can also be a KV-read TIMEOUT rather than a genuine miss:
142
+ * a concurrent request that read KV successfully may be promoting the same key,
143
+ * and this evict could race it. That is benign -- the worst case is one wasted
144
+ * colo-local promote, never a wrong served value, and the next read self-heals
145
+ * -- so we accept it rather than suppressing the evict on a timeout (which
146
+ * would strand the poison entry when KV really is empty). The evict is
147
+ * non-blocking (waitUntil) so it never adds latency to the degraded read.
148
+ * @internal
149
+ */
150
+ private healCorruptL1;
151
+ /**
152
+ * Re-put a stale L1 entry marked REVALIDATING, so concurrent requests serve it
153
+ * without each triggering a revalidation. Shared by get()/getItem().
154
+ *
155
+ * The write is NON-BLOCKING (waitUntil) and best-effort by design:
156
+ * - It runs in waitUntil, so it never adds the put latency to the served stale
157
+ * read and a put failure can never turn that good read into a miss. The put
158
+ * is still initiated synchronously (this.waitUntil invokes its callback
159
+ * immediately), so concurrent readers see the marker land at the same time an
160
+ * awaited write would -- awaiting only blocks the current request.
161
+ * - The background revalidation's fresh set() is gated behind a full re-render,
162
+ * so it lands well after this put; a stale-clobbers-fresh race would require
163
+ * this single put to be slower than that entire render+set, and self-heals
164
+ * within MAX_REVALIDATION_INTERVAL.
165
+ *
166
+ * Cache-Control is recomputed to the REMAINING ttl from the stored hard-expiry
167
+ * deadline (see remainingCacheControl), not copied from the original
168
+ * full-window header -- copying it would restart CF retention on every re-arm
169
+ * and pin a perpetually-failing entry past hard-expiry. A legacy/tampered entry
170
+ * without a valid deadline floors to max-age=1 and self-heals via KV.
171
+ * @internal
172
+ */
173
+ private markRevalidating;
174
+ /**
175
+ * Document-tier counterpart of markRevalidating for getResponse's herd guard.
176
+ * The segment/item tiers JSON-parse the body, so they re-put with a string
177
+ * body; document bodies are streamed verbatim, so we re-put with a CLONED
178
+ * response body (`response.clone()`) supplied by the caller -- the original
179
+ * body still streams to the client while the marker carries the clone. Same
180
+ * REVALIDATING status header, same revalidating-at stamp, same
181
+ * remainingCacheControl re-put math as markRevalidating, so the document tier
182
+ * suppresses concurrent revalidation for the identical MAX_REVALIDATION_INTERVAL
183
+ * window the segment tier does. Best-effort and non-blocking: a failed marker
184
+ * write must not affect the served stale read.
185
+ * @internal
186
+ */
187
+ private markResponseRevalidating;
188
+ /**
189
+ * Guard the segment tier against a `keyGenerator` that returns a key colliding
190
+ * with a reserved tag-marker namespace: `__tag__/` (the KV marker key) or
191
+ * `__tagmarker__/` (the L1 Cache API marker request). The item/doc tiers are
192
+ * internally prefixed (`fn:`/`doc:`) so only the bare segment key can collide;
193
+ * a collision would let a segment write clobber - or a segment read/delete
194
+ * evict - a live tag marker, silently breaking invalidation. Report loudly
195
+ * (so a misconfigured keyGenerator surfaces immediately) and treat the segment
196
+ * operation as a miss/no-op rather than corrupting the marker namespace.
197
+ * @internal
198
+ */
199
+ private isReservedSegmentKey;
200
+ /**
201
+ * Get cached entry data by key.
202
+ *
203
+ * Handles SWR atomically:
204
+ * - If stale and not already revalidating, marks as REVALIDATING and returns shouldRevalidate: true
205
+ * - If already REVALIDATING (and recent), returns shouldRevalidate: false
206
+ * - If fresh, returns shouldRevalidate: false
207
+ *
208
+ * On L1 miss, falls back to KV (L2) if configured.
209
+ * KV hits are promoted to L1 in the background.
210
+ */
211
+ get(key: string): Promise<CacheGetResult | null>;
212
+ /**
213
+ * Store entry data with TTL and optional SWR window.
214
+ * Uses waitUntil for non-blocking write when available.
215
+ * When KV is configured, also persists to L2.
216
+ */
217
+ set(key: string, data: CachedEntryData, ttl: number, swr?: number): Promise<void>;
218
+ /**
219
+ * Delete a cached entry from L1 and L2.
220
+ */
221
+ delete(key: string): Promise<boolean>;
222
+ /**
223
+ * Get a cached Response by key (for document-level caching).
224
+ * Returns the response and whether it should be revalidated (SWR).
225
+ * Falls back to KV (L2) on L1 miss.
226
+ */
227
+ getResponse(key: string): Promise<{
228
+ response: Response;
229
+ shouldRevalidate: boolean;
230
+ } | null>;
231
+ /**
232
+ * Strip internal edge headers and restore the author's Cache-Control before a
233
+ * cached document Response is served to a client. L1 entries carry the
234
+ * internal staleness/status headers and a rewritten Cache-Control; none of
235
+ * those should reach the browser or an upstream CDN.
236
+ */
237
+ private toClientResponse;
238
+ /**
239
+ * Store a Response with TTL and optional SWR window (for document-level caching).
240
+ * When KV is configured, also persists to L2.
241
+ */
242
+ putResponse(key: string, response: Response, ttl: number, swr?: number, tags?: string[]): Promise<void>;
243
+ /**
244
+ * Get a cached function result by key.
245
+ * Follows the same SWR pattern as get() for segment caching.
246
+ * Falls back to KV (L2) on L1 miss.
247
+ */
248
+ getItem(key: string): Promise<CacheItemResult | null>;
249
+ /**
250
+ * Store a function result with TTL and optional SWR window.
251
+ * When KV is configured, also persists to L2.
252
+ */
253
+ setItem(key: string, value: string, options?: CacheItemOptions): Promise<void>;
254
+ /**
255
+ * Warn once per isolate that the shell family is inert: getShell/putShell
256
+ * are ONLY called for routes that declared the `ppr` path option, so firing
257
+ * here (not in the constructor) scopes the warning to apps that actually
258
+ * use PPR — a KV-less CFCacheStore is a perfectly fine config otherwise.
259
+ * Without it, the correctness-first fail-open (issue #651) is invisible:
260
+ * every ppr route is a permanent MISS with zero diagnostics.
261
+ * @internal
262
+ */
263
+ private warnShellFamilyInertOnce;
264
+ /**
265
+ * Get a cached PPR shell entry by key from KV (no L1). Applies the KV read
266
+ * budget, corrupt-entry eviction, hard-expiry, and tag invalidation exactly
267
+ * like kvGetItem, minus the L1 promote. SWR is a plain staleness flag — KV has
268
+ * no REVALIDATING herd guard, so the shell-cache middleware's module-level
269
+ * in-flight set is the recapture stampede guard.
270
+ */
271
+ getShell(key: string): Promise<{
272
+ entry: ShellCacheEntry;
273
+ shouldRevalidate?: boolean;
274
+ } | null>;
275
+ /**
276
+ * Store a PPR shell entry in KV with TTL and optional SWR window. Non-blocking
277
+ * (waitUntil) like the other KV writes. The tags/taggedAt ride in the envelope
278
+ * so isGloballyInvalidated() can invalidate the shell via the shared KV markers.
279
+ */
280
+ putShell(key: string, entry: ShellCacheEntry, ttlSeconds?: number, swrSeconds?: number, tags?: string[]): Promise<void>;
281
+ /**
282
+ * Convert string key to Request object for CF Cache API.
283
+ * Includes version in URL if specified (for cache invalidation on code changes).
284
+ * @internal
285
+ */
286
+ private keyToRequest;
287
+ /**
288
+ * Convert string key to KV key string.
289
+ * Uses same version prefix as Cache API for consistent invalidation.
290
+ * @internal
291
+ */
292
+ private toKVKey;
293
+ /**
294
+ * Host token for the current request, used to namespace the document KV key.
295
+ * Derived from the same resolveBaseUrl() that namespaces the L1 (Cache API)
296
+ * tier, so a doc entry's KV twin lands under the identical host bucket.
297
+ * Falls back to "_" if the base URL cannot be parsed (it always carries a
298
+ * trailing-slash origin, so parsing succeeds in practice).
299
+ * @internal
300
+ */
301
+ private docKVHost;
302
+ /**
303
+ * Convert a document key to its host-namespaced KV key. The L1 tier already
304
+ * namespaces document entries by host via keyToRequest/resolveBaseUrl, but the
305
+ * KV fallback keyed only on `doc:{key}`, so two hosts serving the same path
306
+ * could collide on the KV tier (one host serving another's cached document).
307
+ * Prefixing the host closes that cross-host collision. Deterministic per
308
+ * (host, key). Segment/fn/tag-marker KV keys keep toKVKey unchanged: tag
309
+ * markers are intentionally global (invalidation must cross hosts), and the
310
+ * document tier is the one with a request-host context here.
311
+ * @internal
312
+ */
313
+ private toDocKVKey;
314
+ /**
315
+ * Best-effort delete of a single KV key, reporting (not swallowing) a delete
316
+ * failure as cache-delete. Used by the corrupt-entry self-heal paths.
317
+ * @internal
318
+ */
319
+ private evictKvKey;
320
+ /**
321
+ * Schedule a corrupt-entry KV eviction as a NON-BLOCKING background task
322
+ * (waitUntil) instead of awaiting it on the request path. The corrupt read has
323
+ * already resolved to a miss; awaiting an unbounded kv.delete here would re-add
324
+ * exactly the multi-second stall the read budgets exist to prevent when the KV
325
+ * namespace is degraded. evictKvKey never rejects (it reports its own failure),
326
+ * so the fire-and-forget fallback is safe when no waitUntil is available.
327
+ * @internal
328
+ */
329
+ private scheduleKvEvict;
330
+ /**
331
+ * KV-get a JSON envelope, EVICTING the key only when it is genuinely corrupt.
332
+ *
333
+ * Reads as { type: "text" }, NOT { type: "json" }, on purpose: the "json" form
334
+ * fuses the network read and the JSON parse, so a transient KV outage (5xx/429/
335
+ * network blip) is indistinguishable from a malformed body and would delete a
336
+ * still-good cross-colo entry - a self-inflicted miss storm. Reading text lets a
337
+ * transient read error propagate to the caller's outer catch (reported
338
+ * cache-read, the entry left intact); only a JSON.parse failure on a body that
339
+ * WAS successfully read - or an envelope that parses but fails `validate`
340
+ * (fields missing from a truncated write) - is true corruption that evicts +
341
+ * reports cache-corrupt. A MISSING key (kv.get -> null) is a normal miss.
342
+ * @internal
343
+ */
344
+ private kvGetOrEvict;
345
+ /** KV key for a tag's invalidation marker. */
346
+ private tagMarkerKey;
347
+ /**
348
+ * Header entries carrying an entry's tags (JSON-encoded, comma-safe) and the
349
+ * timestamp they were attached. Returns an empty object when there are no
350
+ * tags so untagged entries stay header-free and skip the invalidation check.
351
+ *
352
+ * Also stamps the namespaced `Cache-Tag` header (see entryCacheTags) so a
353
+ * Cloudflare purge-by-tag can evict the entry — the mechanism purge mode
354
+ * (tagPurge) relies on. Written unconditionally (not only in purge mode):
355
+ * it costs a small header and makes existing entries purgeable the moment a
356
+ * consumer turns purge mode on, with no re-render needed.
357
+ */
358
+ private tagHeaderEntries;
359
+ /**
360
+ * Joined entry Cache-Tag header value for `tags`, or null when it would
361
+ * exceed Cloudflare's aggregate header limit. Tokens are pure ASCII
362
+ * (encodeURIComponent output), so .length is bytes.
363
+ * @internal
364
+ */
365
+ private entryCacheTagHeader;
366
+ /**
367
+ * Write-path gate for the one configuration where an over-limit tag set has
368
+ * NO invalidation path: purge mode WITHOUT KV. There the entry Cache-Tag
369
+ * tokens are the only eviction mechanism, and a tag set whose header
370
+ * overflows CACHE_TAG_HEADER_MAX_BYTES gets no tokens — a purge could never
371
+ * evict the entry and there is no KV marker fallback, so it would serve
372
+ * stale until TTL while updateTag() reports success. Returns true (and
373
+ * warns once) so the caller SKIPS caching: the route simply renders fresh,
374
+ * which is the fail-safe direction. With KV configured the omitted-header
375
+ * entry falls back to the marker check (see tagHeaderEntries), and KV-less
376
+ * MARKER mode keeps its documented no-read-side-invalidation semantics —
377
+ * neither is gated.
378
+ * @internal
379
+ */
380
+ private skipUncacheableTagSet;
381
+ /**
382
+ * Merge the internal tag headers onto an existing Headers instance. The
383
+ * from-scratch paths spread tagHeaderEntries() into an object-literal init;
384
+ * the document put/promote paths build a Headers first, so they .set() each
385
+ * entry instead — except `Cache-Tag`, which is APPENDED: a document author
386
+ * may have set their own Cache-Tag, and clobbering it would break their CDN
387
+ * purging. Append produces the comma-merged list CF expects.
388
+ */
389
+ private setTagHeaders;
390
+ /** Read an entry's tags/taggedAt back from its headers. */
391
+ private readTagInfo;
392
+ /**
393
+ * Whether an entry tagged at `taggedAt` with `tags` has been invalidated since.
394
+ * Reads the per-tag invalidation markers from KV and returns true if any tag's
395
+ * latest invalidation is at or after taggedAt (>= so a same-millisecond
396
+ * invalidate wins, favouring freshness over staleness). Fails open: KV errors
397
+ * never turn a hit into a wrongful miss-storm beyond this single read.
398
+ */
399
+ private isGloballyInvalidated;
400
+ /**
401
+ * Tag-invalidation check for an L1 (Cache API) hit. In purge mode (tagPurge
402
+ * configured), invalidateTags() evicts L1 entries via a Cloudflare
403
+ * purge-by-tag call, so a hit that SURVIVED is trusted without a per-read
404
+ * marker lookup — that skipped lookup is the entire point of purge mode.
405
+ * Only the per-request memo is consulted (synchronous, no KV read) so a
406
+ * request that ran updateTag() still masks its own entries during the purge
407
+ * propagation window (read-your-own-writes).
408
+ *
409
+ * The trust is conditional on the entry actually CARRYING this store's
410
+ * entry Cache-Tag tokens (`headers`): an entry a purge cannot reach — one
411
+ * written before the tokens existed, or whose tag set overflowed the
412
+ * Cache-Tag header limit — keeps the full marker check, or purge mode
413
+ * would serve it stale until TTL with no eviction path.
414
+ *
415
+ * Without tagPurge this is the full marker cascade. KV-tier reads and
416
+ * shells always use isGloballyInvalidated directly: purge cannot reach KV,
417
+ * so the markers stay their invalidation mechanism.
418
+ * @internal
419
+ */
420
+ private isL1Invalidated;
421
+ /** Synthetic Cache API request for a tag's L1-cached invalidation marker. */
422
+ private tagMarkerRequest;
423
+ /**
424
+ * Read a tag's latest invalidation timestamp (or null if never invalidated)
425
+ * through the cascade: per-request memo -> per-colo L1 cache (only when
426
+ * tagCacheTtl > 0) -> KV (the global truth). The memo is always consulted
427
+ * first so it stays authoritative within a request (read-your-own-writes),
428
+ * and every KV/L1 result is written back into the memo. A Cache API miss
429
+ * always falls through to KV; absence is represented by a cached sentinel,
430
+ * never by a miss.
431
+ *
432
+ * Concurrent reads of the same tag within a request share one in-flight read
433
+ * (the resolved-value memo only collapses sequential reads; parallel segment
434
+ * loading would otherwise issue one KV read per concurrent reader).
435
+ * @internal
436
+ */
437
+ private readTagMarker;
438
+ /**
439
+ * Uncached body of readTagMarker: L1 (per-colo Cache API, opt-in via
440
+ * tagCacheTtl) -> KV. Writes the resolved value back into the memo.
441
+ * @internal
442
+ */
443
+ private fetchTagMarker;
444
+ /**
445
+ * Namespace token used inside every `rg:*` Cache-Tag. encodeURIComponent'd
446
+ * like the tag values: a raw namespace containing a comma would split into
447
+ * bogus tokens inside the comma-delimited Cache-Tag header — breaking both
448
+ * stripInternalCacheTags (internal tokens would leak to clients) and the
449
+ * purge match (the purged tag string never equals any stored token).
450
+ * @internal
451
+ */
452
+ private nsToken;
453
+ /**
454
+ * Cloudflare Cache-Tags written on a tag's L1 marker entry, namespaced per
455
+ * store so purges never collide with other Cache-Tags in the zone. Three
456
+ * tiers, broad to specific:
457
+ * rg:{ns} - everything this store cached (deploy/nuclear reset)
458
+ * rg:{ns}:lk - all tag-lookup markers
459
+ * rg:{ns}:lk:{tag} - this tag's lookup (the normal updateTag purge target)
460
+ * The namespace and tag value are encodeURIComponent'd so commas/spaces
461
+ * can't corrupt the comma-delimited Cache-Tag header.
462
+ * @internal
463
+ */
464
+ private lookupCacheTags;
465
+ /**
466
+ * Build one `{prefix}{tag}` Cache-Tag token, bounded to CACHE_TAG_TOKEN_MAX:
467
+ * an over-long encoded tag collapses to `{prefix}h:{fnv1a64(tag)}` so a
468
+ * legally-long application tag can never blow Cloudflare's per-tag purge
469
+ * limit (1,024 chars) or bloat the header. Deterministic, so the write-time
470
+ * token and the invalidate-time purge token always agree.
471
+ * @internal
472
+ */
473
+ private boundedTagToken;
474
+ /** The specific Cache-Tag a consumer purges to evict tag `tag`'s lookup. */
475
+ private lookupPurgeTag;
476
+ /**
477
+ * Cloudflare Cache-Tags written on a tagged DATA entry (segment/item/doc),
478
+ * mirroring the lookup-marker tiers but under `:e` (entry):
479
+ * rg:{ns} - everything this store cached (deploy/nuclear reset)
480
+ * rg:{ns}:e - all data entries
481
+ * rg:{ns}:e:{t} - entries carrying tag `t` (the purge-mode invalidation
482
+ * target; see CFCacheStoreOptions.tagPurge)
483
+ * Namespace and tag value encodeURIComponent'd like the lookup tier.
484
+ * @internal
485
+ */
486
+ private entryCacheTags;
487
+ /** The specific Cache-Tag purged to evict entries carrying tag `tag`. */
488
+ private entryPurgeTag;
489
+ /**
490
+ * Whether an L1 entry's stored headers carry this store's entry Cache-Tag
491
+ * tokens — i.e. whether a purge-by-tag can actually evict it. False for an
492
+ * entry written before this feature existed, or one whose tag set exceeded
493
+ * CACHE_TAG_HEADER_MAX_BYTES (header omitted). Purge mode only trusts
494
+ * entries a purge can reach; the rest keep the marker check.
495
+ * @internal
496
+ */
497
+ private hasEntryCacheTags;
498
+ /**
499
+ * Drop this store's namespaced tokens (`rg:{ns}` and `rg:{ns}:*`) from a
500
+ * Cache-Tag header, keeping author-set tokens intact. Deletes the header
501
+ * when nothing remains. Serve-path counterpart of setTagHeaders' append.
502
+ * An author token that exactly equals a reserved `rg:{ns}` tier is stripped
503
+ * too — `rg:` is this store's documented-reserved Cache-Tag prefix.
504
+ * @internal
505
+ */
506
+ private stripInternalCacheTags;
507
+ /**
508
+ * Write a tag marker value into the per-colo L1 Cache API with tagCacheTtl.
509
+ * `null` is stored as the TAG_MARKER_ABSENT sentinel so "no marker yet" is
510
+ * cacheable (most tags are never invalidated - that is where the read savings
511
+ * come from). The entry also carries a namespaced Cache-Tag so an external
512
+ * purge-by-tag (via onRevalidateTag) can evict it across colos promptly,
513
+ * rather than waiting out tagCacheTtl. Best-effort.
514
+ * @internal
515
+ */
516
+ private putTagMarkerL1;
517
+ /**
518
+ * Invalidate every entry tagged with any of `tags`. Receives the whole batch
519
+ * from one updateTag()/revalidateTag() call so the eager-purge hook fires
520
+ * ONCE (one CDN purge request, not one per tag). For each tag: records the KV
521
+ * marker (the durable cross-colo truth that reads compare taggedAt against),
522
+ * writes the fresh marker straight into this colo's L1 (write-through, NOT
523
+ * delete - a delete would let the next read re-read a not-yet-converged KV
524
+ * value and re-arm the stale window), and memoizes it for same-request
525
+ * read-your-own-writes. In purge mode (tagPurge) it then AWAITS the
526
+ * consumer's purge-by-tag call with the entry Cache-Tags — the eviction the
527
+ * per-read marker skip on L1 hits relies on. Finally fires onRevalidateTag
528
+ * with the namespaced lookup Cache-Tags so a consumer purge evicts the
529
+ * cached lookups in other colos promptly (otherwise they converge within
530
+ * tagCacheTtl).
531
+ *
532
+ * Durable-write integrity: the in-memory write-through (memo + L1) for a tag
533
+ * runs ONLY after that tag's KV marker write is confirmed. If any KV write
534
+ * fails (transient error, or an over-512-byte key), this rejects with the
535
+ * failed tags so an awaiting updateTag() surfaces the failure instead of
536
+ * silently reporting success while other requests/colos serve stale data. The
537
+ * eager purge still fires for the whole batch first (it is additive).
538
+ */
539
+ /**
540
+ * Build-shell read-through gate (SegmentCacheStore.isTagsInvalidatedSince):
541
+ * a baked shell entry is immutable in the build manifest, so eviction is
542
+ * answered by the SAME KV tag markers updateTag() writes, compared against
543
+ * the entry's build-time createdAt. Thin public wrapper over the private
544
+ * envelope check (identical semantics: marker >= since, fail open).
545
+ */
546
+ isTagsInvalidatedSince(tags: string[], sinceMs: number): Promise<boolean>;
547
+ invalidateTags(tags: string[]): Promise<void>;
548
+ /**
549
+ * KV fallback for segment cache reads.
550
+ * Returns null if KV is not configured, entry is missing, or expired.
551
+ * Promotes hits to L1 via waitUntil.
552
+ * @internal
553
+ */
554
+ private kvGetSegment;
555
+ /**
556
+ * Write segment data to KV.
557
+ *
558
+ * `dataJson` is the already-serialized CachedEntryData body also stored in
559
+ * L1 — embedded as envelope.d without a second JSON.stringify walk.
560
+ * @internal
561
+ */
562
+ private kvSetSegment;
563
+ /**
564
+ * Promote segment data from KV to L1 Cache API.
565
+ * @internal
566
+ */
567
+ private promoteSegmentToL1;
568
+ /**
569
+ * KV fallback for function cache reads.
570
+ * @internal
571
+ */
572
+ private kvGetItem;
573
+ /**
574
+ * Promote function cache data from KV to L1.
575
+ * @internal
576
+ */
577
+ private promoteItemToL1;
578
+ /**
579
+ * KV fallback for document cache reads.
580
+ * @internal
581
+ */
582
+ private kvGetResponse;
583
+ /**
584
+ * Promote document cache data from KV to L1.
585
+ * @internal
586
+ */
587
+ private promoteResponseToL1;
588
+ }