@rangojs/router 0.0.0-experimental.dfa55db4 → 0.0.0-experimental.e16b7c00

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 (1041) hide show
  1. package/README.md +120 -25
  2. package/dist/bin/rango.js +147 -57
  3. package/dist/vite/index.js +2108 -829
  4. package/dist/vite/plugins/cloudflare-protocol-loader-hook.mjs +76 -0
  5. package/package.json +13 -8
  6. package/skills/breadcrumbs/SKILL.md +3 -1
  7. package/skills/bundle-analysis/SKILL.md +159 -0
  8. package/skills/cache-guide/SKILL.md +222 -30
  9. package/skills/caching/SKILL.md +188 -8
  10. package/skills/composability/SKILL.md +27 -2
  11. package/skills/document-cache/SKILL.md +78 -55
  12. package/skills/handler-use/SKILL.md +364 -0
  13. package/skills/hooks/SKILL.md +229 -20
  14. package/skills/host-router/SKILL.md +45 -20
  15. package/skills/i18n/SKILL.md +276 -0
  16. package/skills/intercept/SKILL.md +46 -4
  17. package/skills/layout/SKILL.md +28 -7
  18. package/skills/links/SKILL.md +247 -17
  19. package/skills/loader/SKILL.md +219 -9
  20. package/skills/middleware/SKILL.md +47 -12
  21. package/skills/migrate-nextjs/SKILL.md +582 -0
  22. package/skills/migrate-react-router/SKILL.md +769 -0
  23. package/skills/mime-routes/SKILL.md +27 -0
  24. package/skills/observability/SKILL.md +137 -0
  25. package/skills/parallel/SKILL.md +71 -6
  26. package/skills/prerender/SKILL.md +14 -33
  27. package/skills/rango/SKILL.md +236 -22
  28. package/skills/react-compiler/SKILL.md +168 -0
  29. package/skills/response-routes/SKILL.md +66 -9
  30. package/skills/route/SKILL.md +57 -4
  31. package/skills/router-setup/SKILL.md +3 -3
  32. package/skills/server-actions/SKILL.md +751 -0
  33. package/skills/streams-and-websockets/SKILL.md +283 -0
  34. package/skills/typesafety/SKILL.md +319 -27
  35. package/skills/use-cache/SKILL.md +36 -5
  36. package/skills/view-transitions/SKILL.md +294 -0
  37. package/src/__augment-tests__/augment.ts +81 -0
  38. package/src/__augment-tests__/augmented.check.ts +117 -0
  39. package/src/browser/action-coordinator.ts +53 -36
  40. package/src/browser/app-shell.ts +52 -0
  41. package/src/browser/event-controller.ts +86 -70
  42. package/src/browser/history-state.ts +21 -0
  43. package/src/browser/index.ts +3 -3
  44. package/src/browser/navigation-bridge.ts +86 -11
  45. package/src/browser/navigation-client.ts +76 -28
  46. package/src/browser/navigation-store.ts +32 -9
  47. package/src/browser/navigation-transaction.ts +10 -28
  48. package/src/browser/partial-update.ts +64 -26
  49. package/src/browser/prefetch/cache.ts +129 -21
  50. package/src/browser/prefetch/fetch.ts +148 -16
  51. package/src/browser/prefetch/queue.ts +36 -5
  52. package/src/browser/rango-state.ts +53 -13
  53. package/src/browser/react/Link.tsx +30 -2
  54. package/src/browser/react/NavigationProvider.tsx +72 -31
  55. package/src/browser/react/filter-segment-order.ts +51 -7
  56. package/src/browser/react/index.ts +3 -0
  57. package/src/browser/react/location-state-shared.ts +175 -4
  58. package/src/browser/react/location-state.ts +39 -13
  59. package/src/browser/react/use-handle.ts +17 -9
  60. package/src/browser/react/use-navigation.ts +22 -2
  61. package/src/browser/react/use-params.ts +20 -8
  62. package/src/browser/react/use-reverse.ts +106 -0
  63. package/src/browser/react/use-router.ts +22 -2
  64. package/src/browser/react/use-segments.ts +11 -8
  65. package/src/browser/response-adapter.ts +25 -0
  66. package/src/browser/rsc-router.tsx +64 -22
  67. package/src/browser/scroll-restoration.ts +22 -14
  68. package/src/browser/segment-reconciler.ts +36 -14
  69. package/src/browser/segment-structure-assert.ts +2 -2
  70. package/src/browser/server-action-bridge.ts +23 -30
  71. package/src/browser/types.ts +21 -0
  72. package/src/build/collect-fallback-refs.ts +107 -0
  73. package/src/build/generate-manifest.ts +60 -35
  74. package/src/build/generate-route-types.ts +2 -0
  75. package/src/build/index.ts +2 -0
  76. package/src/build/route-trie.ts +52 -25
  77. package/src/build/route-types/codegen.ts +4 -4
  78. package/src/build/route-types/include-resolution.ts +1 -1
  79. package/src/build/route-types/per-module-writer.ts +7 -4
  80. package/src/build/route-types/router-processing.ts +55 -14
  81. package/src/build/route-types/scan-filter.ts +1 -1
  82. package/src/build/route-types/source-scan.ts +118 -0
  83. package/src/build/runtime-discovery.ts +9 -20
  84. package/src/cache/cache-error.ts +104 -0
  85. package/src/cache/cache-policy.ts +95 -1
  86. package/src/cache/cache-runtime.ts +79 -13
  87. package/src/cache/cache-scope.ts +77 -46
  88. package/src/cache/cache-tag.ts +135 -0
  89. package/src/cache/cf/cf-cache-store.ts +1067 -176
  90. package/src/cache/cf/index.ts +4 -1
  91. package/src/cache/document-cache.ts +59 -7
  92. package/src/cache/index.ts +6 -0
  93. package/src/cache/memory-segment-store.ts +158 -14
  94. package/src/cache/tag-invalidation.ts +206 -0
  95. package/src/cache/types.ts +27 -0
  96. package/src/client.rsc.tsx +3 -0
  97. package/src/client.tsx +92 -182
  98. package/src/context-var.ts +5 -5
  99. package/src/decode-loader-results.ts +36 -0
  100. package/src/errors.ts +30 -1
  101. package/src/handle.ts +4 -6
  102. package/src/host/index.ts +2 -2
  103. package/src/host/router.ts +129 -57
  104. package/src/host/types.ts +31 -2
  105. package/src/host/utils.ts +1 -1
  106. package/src/href-client.ts +140 -20
  107. package/src/index.rsc.ts +16 -4
  108. package/src/index.ts +65 -15
  109. package/src/loader-store.ts +500 -0
  110. package/src/loader.rsc.ts +2 -5
  111. package/src/loader.ts +3 -10
  112. package/src/missing-id-error.ts +68 -0
  113. package/src/outlet-context.ts +1 -1
  114. package/src/prerender.ts +4 -4
  115. package/src/response-utils.ts +37 -0
  116. package/src/reverse.ts +65 -36
  117. package/src/route-content-wrapper.tsx +6 -28
  118. package/src/route-definition/dsl-helpers.ts +384 -257
  119. package/src/route-definition/helper-factories.ts +29 -139
  120. package/src/route-definition/helpers-types.ts +100 -28
  121. package/src/route-definition/resolve-handler-use.ts +6 -0
  122. package/src/route-definition/use-item-types.ts +32 -0
  123. package/src/route-types.ts +26 -41
  124. package/src/router/content-negotiation.ts +15 -2
  125. package/src/router/error-handling.ts +1 -1
  126. package/src/router/handler-context.ts +21 -38
  127. package/src/router/intercept-resolution.ts +4 -18
  128. package/src/router/lazy-includes.ts +8 -8
  129. package/src/router/loader-resolution.ts +19 -2
  130. package/src/router/manifest.ts +22 -13
  131. package/src/router/match-api.ts +4 -3
  132. package/src/router/match-handlers.ts +1 -0
  133. package/src/router/match-middleware/cache-lookup.ts +46 -92
  134. package/src/router/match-middleware/cache-store.ts +3 -2
  135. package/src/router/match-result.ts +103 -4
  136. package/src/router/metrics.ts +1 -1
  137. package/src/router/middleware-types.ts +15 -26
  138. package/src/router/middleware.ts +99 -84
  139. package/src/router/pattern-matching.ts +101 -17
  140. package/src/router/prerender-match.ts +3 -1
  141. package/src/router/preview-match.ts +3 -1
  142. package/src/router/request-classification.ts +4 -28
  143. package/src/router/revalidation.ts +58 -2
  144. package/src/router/router-interfaces.ts +45 -28
  145. package/src/router/router-options.ts +25 -1
  146. package/src/router/router-registry.ts +2 -5
  147. package/src/router/segment-resolution/fresh.ts +32 -6
  148. package/src/router/segment-resolution/loader-cache.ts +8 -17
  149. package/src/router/segment-resolution/revalidation.ts +154 -107
  150. package/src/router/segment-resolution/view-transition-default.ts +36 -0
  151. package/src/router/substitute-pattern-params.ts +56 -0
  152. package/src/router/trie-matching.ts +18 -13
  153. package/src/router/types.ts +8 -0
  154. package/src/router/url-params.ts +49 -0
  155. package/src/router.ts +23 -18
  156. package/src/rsc/handler-context.ts +2 -2
  157. package/src/rsc/handler.ts +46 -74
  158. package/src/rsc/helpers.ts +72 -43
  159. package/src/rsc/index.ts +1 -1
  160. package/src/rsc/origin-guard.ts +28 -10
  161. package/src/rsc/progressive-enhancement.ts +4 -0
  162. package/src/rsc/response-route-handler.ts +54 -54
  163. package/src/rsc/rsc-rendering.ts +35 -51
  164. package/src/rsc/runtime-warnings.ts +9 -10
  165. package/src/rsc/server-action.ts +17 -37
  166. package/src/rsc/ssr-setup.ts +16 -0
  167. package/src/rsc/types.ts +8 -2
  168. package/src/search-params.ts +4 -4
  169. package/src/segment-content-promise.ts +67 -0
  170. package/src/segment-loader-promise.ts +122 -0
  171. package/src/segment-system.tsx +132 -116
  172. package/src/serialize.ts +243 -0
  173. package/src/server/context.ts +143 -53
  174. package/src/server/cookie-store.ts +28 -4
  175. package/src/server/request-context.ts +46 -44
  176. package/src/ssr/index.tsx +5 -1
  177. package/src/static-handler.ts +1 -1
  178. package/src/types/cache-types.ts +13 -4
  179. package/src/types/error-types.ts +5 -1
  180. package/src/types/global-namespace.ts +39 -26
  181. package/src/types/handler-context.ts +68 -50
  182. package/src/types/index.ts +1 -0
  183. package/src/types/loader-types.ts +5 -6
  184. package/src/types/request-scope.ts +126 -0
  185. package/src/types/route-entry.ts +11 -0
  186. package/src/types/segments.ts +36 -2
  187. package/src/urls/include-helper.ts +34 -67
  188. package/src/urls/index.ts +0 -3
  189. package/src/urls/path-helper-types.ts +41 -7
  190. package/src/urls/path-helper.ts +17 -52
  191. package/src/urls/pattern-types.ts +36 -19
  192. package/src/urls/response-types.ts +22 -29
  193. package/src/urls/type-extraction.ts +26 -116
  194. package/src/urls/urls-function.ts +1 -5
  195. package/src/use-loader.tsx +416 -42
  196. package/src/vite/debug.ts +185 -0
  197. package/src/vite/discovery/bundle-postprocess.ts +6 -6
  198. package/src/vite/discovery/discover-routers.ts +101 -51
  199. package/src/vite/discovery/discovery-errors.ts +194 -0
  200. package/src/vite/discovery/gate-state.ts +171 -0
  201. package/src/vite/discovery/prerender-collection.ts +67 -26
  202. package/src/vite/discovery/route-types-writer.ts +40 -84
  203. package/src/vite/discovery/self-gen-tracking.ts +27 -1
  204. package/src/vite/discovery/state.ts +33 -0
  205. package/src/vite/discovery/virtual-module-codegen.ts +13 -23
  206. package/src/vite/index.ts +2 -0
  207. package/src/vite/plugin-types.ts +67 -0
  208. package/src/vite/plugins/cjs-to-esm.ts +8 -7
  209. package/src/vite/plugins/client-ref-dedup.ts +16 -0
  210. package/src/vite/plugins/client-ref-hashing.ts +28 -5
  211. package/src/vite/plugins/cloudflare-protocol-loader-hook.d.mts +23 -0
  212. package/src/vite/plugins/cloudflare-protocol-loader-hook.mjs +76 -0
  213. package/src/vite/plugins/cloudflare-protocol-stub.ts +214 -0
  214. package/src/vite/plugins/expose-action-id.ts +54 -30
  215. package/src/vite/plugins/expose-id-utils.ts +24 -8
  216. package/src/vite/plugins/expose-ids/export-analysis.ts +100 -20
  217. package/src/vite/plugins/expose-ids/handler-transform.ts +8 -61
  218. package/src/vite/plugins/expose-ids/loader-transform.ts +3 -5
  219. package/src/vite/plugins/expose-ids/router-transform.ts +20 -3
  220. package/src/vite/plugins/expose-internal-ids.ts +503 -468
  221. package/src/vite/plugins/performance-tracks.ts +29 -25
  222. package/src/vite/plugins/use-cache-transform.ts +65 -50
  223. package/src/vite/plugins/version-injector.ts +39 -23
  224. package/src/vite/plugins/version-plugin.ts +59 -2
  225. package/src/vite/plugins/virtual-entries.ts +2 -2
  226. package/src/vite/rango.ts +116 -29
  227. package/src/vite/router-discovery.ts +750 -100
  228. package/src/vite/utils/ast-handler-extract.ts +15 -15
  229. package/src/vite/utils/banner.ts +1 -1
  230. package/src/vite/utils/bundle-analysis.ts +4 -2
  231. package/src/vite/utils/client-chunks.ts +190 -0
  232. package/src/vite/utils/forward-user-plugins.ts +193 -0
  233. package/src/vite/utils/manifest-utils.ts +21 -5
  234. package/src/vite/utils/package-resolution.ts +41 -1
  235. package/src/vite/utils/prerender-utils.ts +21 -6
  236. package/src/vite/utils/shared-utils.ts +107 -26
  237. package/dist/__internal.d.ts +0 -83
  238. package/dist/__internal.d.ts.map +0 -1
  239. package/dist/__internal.js +0 -19
  240. package/dist/__internal.js.map +0 -1
  241. package/dist/__mocks__/version.d.ts +0 -7
  242. package/dist/__mocks__/version.d.ts.map +0 -1
  243. package/dist/__mocks__/version.js +0 -7
  244. package/dist/__mocks__/version.js.map +0 -1
  245. package/dist/__tests__/client-href.test.d.ts +0 -2
  246. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  247. package/dist/__tests__/client-href.test.js +0 -74
  248. package/dist/__tests__/client-href.test.js.map +0 -1
  249. package/dist/__tests__/component-utils.test.d.ts +0 -2
  250. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  251. package/dist/__tests__/component-utils.test.js +0 -51
  252. package/dist/__tests__/component-utils.test.js.map +0 -1
  253. package/dist/__tests__/event-controller.test.d.ts +0 -2
  254. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  255. package/dist/__tests__/event-controller.test.js +0 -538
  256. package/dist/__tests__/event-controller.test.js.map +0 -1
  257. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  258. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  259. package/dist/__tests__/helpers/route-tree.js +0 -374
  260. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  261. package/dist/__tests__/match-result.test.d.ts +0 -2
  262. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  263. package/dist/__tests__/match-result.test.js +0 -154
  264. package/dist/__tests__/match-result.test.js.map +0 -1
  265. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  266. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  267. package/dist/__tests__/navigation-store.test.js +0 -440
  268. package/dist/__tests__/navigation-store.test.js.map +0 -1
  269. package/dist/__tests__/partial-update.test.d.ts +0 -2
  270. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  271. package/dist/__tests__/partial-update.test.js +0 -1009
  272. package/dist/__tests__/partial-update.test.js.map +0 -1
  273. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  274. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  275. package/dist/__tests__/reverse-types.test.js +0 -656
  276. package/dist/__tests__/reverse-types.test.js.map +0 -1
  277. package/dist/__tests__/route-definition.test.d.ts +0 -2
  278. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  279. package/dist/__tests__/route-definition.test.js +0 -55
  280. package/dist/__tests__/route-definition.test.js.map +0 -1
  281. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  282. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  283. package/dist/__tests__/router-helpers.test.js +0 -377
  284. package/dist/__tests__/router-helpers.test.js.map +0 -1
  285. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  286. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  287. package/dist/__tests__/router-integration-2.test.js +0 -426
  288. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  289. package/dist/__tests__/router-integration.test.d.ts +0 -2
  290. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  291. package/dist/__tests__/router-integration.test.js +0 -1051
  292. package/dist/__tests__/router-integration.test.js.map +0 -1
  293. package/dist/__tests__/search-params.test.d.ts +0 -5
  294. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  295. package/dist/__tests__/search-params.test.js +0 -306
  296. package/dist/__tests__/search-params.test.js.map +0 -1
  297. package/dist/__tests__/segment-system.test.d.ts +0 -2
  298. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  299. package/dist/__tests__/segment-system.test.js +0 -627
  300. package/dist/__tests__/segment-system.test.js.map +0 -1
  301. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  302. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  303. package/dist/__tests__/static-handler-types.test.js +0 -63
  304. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  305. package/dist/__tests__/urls.test.d.ts +0 -2
  306. package/dist/__tests__/urls.test.d.ts.map +0 -1
  307. package/dist/__tests__/urls.test.js +0 -421
  308. package/dist/__tests__/urls.test.js.map +0 -1
  309. package/dist/__tests__/use-mount.test.d.ts +0 -2
  310. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  311. package/dist/__tests__/use-mount.test.js +0 -35
  312. package/dist/__tests__/use-mount.test.js.map +0 -1
  313. package/dist/bin/rango.d.ts +0 -2
  314. package/dist/bin/rango.d.ts.map +0 -1
  315. package/dist/bin/rango.js.map +0 -1
  316. package/dist/browser/event-controller.d.ts +0 -191
  317. package/dist/browser/event-controller.d.ts.map +0 -1
  318. package/dist/browser/event-controller.js +0 -559
  319. package/dist/browser/event-controller.js.map +0 -1
  320. package/dist/browser/index.d.ts +0 -2
  321. package/dist/browser/index.d.ts.map +0 -1
  322. package/dist/browser/index.js +0 -14
  323. package/dist/browser/index.js.map +0 -1
  324. package/dist/browser/link-interceptor.d.ts +0 -38
  325. package/dist/browser/link-interceptor.d.ts.map +0 -1
  326. package/dist/browser/link-interceptor.js +0 -99
  327. package/dist/browser/link-interceptor.js.map +0 -1
  328. package/dist/browser/logging.d.ts +0 -10
  329. package/dist/browser/logging.d.ts.map +0 -1
  330. package/dist/browser/logging.js +0 -29
  331. package/dist/browser/logging.js.map +0 -1
  332. package/dist/browser/lru-cache.d.ts +0 -17
  333. package/dist/browser/lru-cache.d.ts.map +0 -1
  334. package/dist/browser/lru-cache.js +0 -50
  335. package/dist/browser/lru-cache.js.map +0 -1
  336. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  337. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  338. package/dist/browser/merge-segment-loaders.js +0 -102
  339. package/dist/browser/merge-segment-loaders.js.map +0 -1
  340. package/dist/browser/navigation-bridge.d.ts +0 -102
  341. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  342. package/dist/browser/navigation-bridge.js +0 -708
  343. package/dist/browser/navigation-bridge.js.map +0 -1
  344. package/dist/browser/navigation-client.d.ts +0 -25
  345. package/dist/browser/navigation-client.d.ts.map +0 -1
  346. package/dist/browser/navigation-client.js +0 -157
  347. package/dist/browser/navigation-client.js.map +0 -1
  348. package/dist/browser/navigation-store.d.ts +0 -101
  349. package/dist/browser/navigation-store.d.ts.map +0 -1
  350. package/dist/browser/navigation-store.js +0 -625
  351. package/dist/browser/navigation-store.js.map +0 -1
  352. package/dist/browser/partial-update.d.ts +0 -75
  353. package/dist/browser/partial-update.d.ts.map +0 -1
  354. package/dist/browser/partial-update.js +0 -426
  355. package/dist/browser/partial-update.js.map +0 -1
  356. package/dist/browser/react/Link.d.ts +0 -86
  357. package/dist/browser/react/Link.d.ts.map +0 -1
  358. package/dist/browser/react/Link.js +0 -128
  359. package/dist/browser/react/Link.js.map +0 -1
  360. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  361. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  362. package/dist/browser/react/NavigationProvider.js +0 -216
  363. package/dist/browser/react/NavigationProvider.js.map +0 -1
  364. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  365. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  366. package/dist/browser/react/ScrollRestoration.js +0 -57
  367. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  368. package/dist/browser/react/context.d.ts +0 -46
  369. package/dist/browser/react/context.d.ts.map +0 -1
  370. package/dist/browser/react/context.js +0 -10
  371. package/dist/browser/react/context.js.map +0 -1
  372. package/dist/browser/react/index.d.ts +0 -11
  373. package/dist/browser/react/index.d.ts.map +0 -1
  374. package/dist/browser/react/index.js +0 -22
  375. package/dist/browser/react/index.js.map +0 -1
  376. package/dist/browser/react/location-state-shared.d.ts +0 -63
  377. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  378. package/dist/browser/react/location-state-shared.js +0 -81
  379. package/dist/browser/react/location-state-shared.js.map +0 -1
  380. package/dist/browser/react/location-state.d.ts +0 -23
  381. package/dist/browser/react/location-state.d.ts.map +0 -1
  382. package/dist/browser/react/location-state.js +0 -29
  383. package/dist/browser/react/location-state.js.map +0 -1
  384. package/dist/browser/react/mount-context.d.ts +0 -24
  385. package/dist/browser/react/mount-context.d.ts.map +0 -1
  386. package/dist/browser/react/mount-context.js +0 -24
  387. package/dist/browser/react/mount-context.js.map +0 -1
  388. package/dist/browser/react/use-action.d.ts +0 -64
  389. package/dist/browser/react/use-action.d.ts.map +0 -1
  390. package/dist/browser/react/use-action.js +0 -134
  391. package/dist/browser/react/use-action.js.map +0 -1
  392. package/dist/browser/react/use-client-cache.d.ts +0 -41
  393. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  394. package/dist/browser/react/use-client-cache.js +0 -39
  395. package/dist/browser/react/use-client-cache.js.map +0 -1
  396. package/dist/browser/react/use-handle.d.ts +0 -31
  397. package/dist/browser/react/use-handle.d.ts.map +0 -1
  398. package/dist/browser/react/use-handle.js +0 -144
  399. package/dist/browser/react/use-handle.js.map +0 -1
  400. package/dist/browser/react/use-href.d.ts +0 -33
  401. package/dist/browser/react/use-href.d.ts.map +0 -1
  402. package/dist/browser/react/use-href.js +0 -39
  403. package/dist/browser/react/use-href.js.map +0 -1
  404. package/dist/browser/react/use-link-status.d.ts +0 -37
  405. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  406. package/dist/browser/react/use-link-status.js +0 -99
  407. package/dist/browser/react/use-link-status.js.map +0 -1
  408. package/dist/browser/react/use-mount.d.ts +0 -25
  409. package/dist/browser/react/use-mount.d.ts.map +0 -1
  410. package/dist/browser/react/use-mount.js +0 -30
  411. package/dist/browser/react/use-mount.js.map +0 -1
  412. package/dist/browser/react/use-navigation.d.ts +0 -27
  413. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  414. package/dist/browser/react/use-navigation.js +0 -87
  415. package/dist/browser/react/use-navigation.js.map +0 -1
  416. package/dist/browser/react/use-segments.d.ts +0 -38
  417. package/dist/browser/react/use-segments.d.ts.map +0 -1
  418. package/dist/browser/react/use-segments.js +0 -130
  419. package/dist/browser/react/use-segments.js.map +0 -1
  420. package/dist/browser/request-controller.d.ts +0 -26
  421. package/dist/browser/request-controller.d.ts.map +0 -1
  422. package/dist/browser/request-controller.js +0 -147
  423. package/dist/browser/request-controller.js.map +0 -1
  424. package/dist/browser/rsc-router.d.ts +0 -129
  425. package/dist/browser/rsc-router.d.ts.map +0 -1
  426. package/dist/browser/rsc-router.js +0 -195
  427. package/dist/browser/rsc-router.js.map +0 -1
  428. package/dist/browser/scroll-restoration.d.ts +0 -93
  429. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  430. package/dist/browser/scroll-restoration.js +0 -321
  431. package/dist/browser/scroll-restoration.js.map +0 -1
  432. package/dist/browser/segment-structure-assert.d.ts +0 -17
  433. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  434. package/dist/browser/segment-structure-assert.js +0 -59
  435. package/dist/browser/segment-structure-assert.js.map +0 -1
  436. package/dist/browser/server-action-bridge.d.ts +0 -26
  437. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  438. package/dist/browser/server-action-bridge.js +0 -668
  439. package/dist/browser/server-action-bridge.js.map +0 -1
  440. package/dist/browser/shallow.d.ts +0 -12
  441. package/dist/browser/shallow.d.ts.map +0 -1
  442. package/dist/browser/shallow.js +0 -34
  443. package/dist/browser/shallow.js.map +0 -1
  444. package/dist/browser/types.d.ts +0 -369
  445. package/dist/browser/types.d.ts.map +0 -1
  446. package/dist/browser/types.js +0 -2
  447. package/dist/browser/types.js.map +0 -1
  448. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  449. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  450. package/dist/build/__tests__/generate-cli.test.js +0 -237
  451. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  452. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  453. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  454. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  455. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  456. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  457. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  458. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  459. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  460. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  461. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  462. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  463. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  464. package/dist/build/generate-manifest.d.ts +0 -81
  465. package/dist/build/generate-manifest.d.ts.map +0 -1
  466. package/dist/build/generate-manifest.js +0 -276
  467. package/dist/build/generate-manifest.js.map +0 -1
  468. package/dist/build/generate-route-types.d.ts +0 -115
  469. package/dist/build/generate-route-types.d.ts.map +0 -1
  470. package/dist/build/generate-route-types.js +0 -740
  471. package/dist/build/generate-route-types.js.map +0 -1
  472. package/dist/build/index.d.ts +0 -21
  473. package/dist/build/index.d.ts.map +0 -1
  474. package/dist/build/index.js +0 -21
  475. package/dist/build/index.js.map +0 -1
  476. package/dist/build/route-trie.d.ts +0 -71
  477. package/dist/build/route-trie.d.ts.map +0 -1
  478. package/dist/build/route-trie.js +0 -175
  479. package/dist/build/route-trie.js.map +0 -1
  480. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  481. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  482. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  483. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  484. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  485. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  486. package/dist/cache/__tests__/document-cache.test.js +0 -345
  487. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  488. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  489. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  490. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  491. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  492. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  493. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  494. package/dist/cache/__tests__/memory-store.test.js +0 -367
  495. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  496. package/dist/cache/cache-scope.d.ts +0 -102
  497. package/dist/cache/cache-scope.d.ts.map +0 -1
  498. package/dist/cache/cache-scope.js +0 -440
  499. package/dist/cache/cache-scope.js.map +0 -1
  500. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  501. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  502. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  503. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  504. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  505. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  506. package/dist/cache/cf/cf-cache-store.js +0 -242
  507. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  508. package/dist/cache/cf/index.d.ts +0 -14
  509. package/dist/cache/cf/index.d.ts.map +0 -1
  510. package/dist/cache/cf/index.js +0 -17
  511. package/dist/cache/cf/index.js.map +0 -1
  512. package/dist/cache/document-cache.d.ts +0 -64
  513. package/dist/cache/document-cache.d.ts.map +0 -1
  514. package/dist/cache/document-cache.js +0 -228
  515. package/dist/cache/document-cache.js.map +0 -1
  516. package/dist/cache/index.d.ts +0 -19
  517. package/dist/cache/index.d.ts.map +0 -1
  518. package/dist/cache/index.js +0 -21
  519. package/dist/cache/index.js.map +0 -1
  520. package/dist/cache/memory-segment-store.d.ts +0 -110
  521. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  522. package/dist/cache/memory-segment-store.js +0 -117
  523. package/dist/cache/memory-segment-store.js.map +0 -1
  524. package/dist/cache/memory-store.d.ts +0 -41
  525. package/dist/cache/memory-store.d.ts.map +0 -1
  526. package/dist/cache/memory-store.js +0 -191
  527. package/dist/cache/memory-store.js.map +0 -1
  528. package/dist/cache/types.d.ts +0 -317
  529. package/dist/cache/types.d.ts.map +0 -1
  530. package/dist/cache/types.js +0 -12
  531. package/dist/cache/types.js.map +0 -1
  532. package/dist/client.d.ts +0 -248
  533. package/dist/client.d.ts.map +0 -1
  534. package/dist/client.js +0 -367
  535. package/dist/client.js.map +0 -1
  536. package/dist/client.rsc.d.ts +0 -26
  537. package/dist/client.rsc.d.ts.map +0 -1
  538. package/dist/client.rsc.js +0 -46
  539. package/dist/client.rsc.js.map +0 -1
  540. package/dist/component-utils.d.ts +0 -36
  541. package/dist/component-utils.d.ts.map +0 -1
  542. package/dist/component-utils.js +0 -61
  543. package/dist/component-utils.js.map +0 -1
  544. package/dist/components/DefaultDocument.d.ts +0 -13
  545. package/dist/components/DefaultDocument.d.ts.map +0 -1
  546. package/dist/components/DefaultDocument.js +0 -15
  547. package/dist/components/DefaultDocument.js.map +0 -1
  548. package/dist/debug.d.ts +0 -58
  549. package/dist/debug.d.ts.map +0 -1
  550. package/dist/debug.js +0 -157
  551. package/dist/debug.js.map +0 -1
  552. package/dist/default-error-boundary.d.ts +0 -11
  553. package/dist/default-error-boundary.d.ts.map +0 -1
  554. package/dist/default-error-boundary.js +0 -45
  555. package/dist/default-error-boundary.js.map +0 -1
  556. package/dist/deps/browser.d.ts +0 -2
  557. package/dist/deps/browser.d.ts.map +0 -1
  558. package/dist/deps/browser.js +0 -3
  559. package/dist/deps/browser.js.map +0 -1
  560. package/dist/deps/html-stream-client.d.ts +0 -2
  561. package/dist/deps/html-stream-client.d.ts.map +0 -1
  562. package/dist/deps/html-stream-client.js +0 -3
  563. package/dist/deps/html-stream-client.js.map +0 -1
  564. package/dist/deps/html-stream-server.d.ts +0 -2
  565. package/dist/deps/html-stream-server.d.ts.map +0 -1
  566. package/dist/deps/html-stream-server.js +0 -3
  567. package/dist/deps/html-stream-server.js.map +0 -1
  568. package/dist/deps/rsc.d.ts +0 -2
  569. package/dist/deps/rsc.d.ts.map +0 -1
  570. package/dist/deps/rsc.js +0 -4
  571. package/dist/deps/rsc.js.map +0 -1
  572. package/dist/deps/ssr.d.ts +0 -2
  573. package/dist/deps/ssr.d.ts.map +0 -1
  574. package/dist/deps/ssr.js +0 -3
  575. package/dist/deps/ssr.js.map +0 -1
  576. package/dist/errors.d.ts +0 -174
  577. package/dist/errors.d.ts.map +0 -1
  578. package/dist/errors.js +0 -241
  579. package/dist/errors.js.map +0 -1
  580. package/dist/handle.d.ts +0 -78
  581. package/dist/handle.d.ts.map +0 -1
  582. package/dist/handle.js +0 -82
  583. package/dist/handle.js.map +0 -1
  584. package/dist/handles/MetaTags.d.ts +0 -14
  585. package/dist/handles/MetaTags.d.ts.map +0 -1
  586. package/dist/handles/MetaTags.js +0 -136
  587. package/dist/handles/MetaTags.js.map +0 -1
  588. package/dist/handles/index.d.ts +0 -6
  589. package/dist/handles/index.d.ts.map +0 -1
  590. package/dist/handles/index.js +0 -6
  591. package/dist/handles/index.js.map +0 -1
  592. package/dist/handles/meta.d.ts +0 -39
  593. package/dist/handles/meta.d.ts.map +0 -1
  594. package/dist/handles/meta.js +0 -202
  595. package/dist/handles/meta.js.map +0 -1
  596. package/dist/host/__tests__/errors.test.d.ts +0 -2
  597. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  598. package/dist/host/__tests__/errors.test.js +0 -76
  599. package/dist/host/__tests__/errors.test.js.map +0 -1
  600. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  601. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  602. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  603. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  604. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  605. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  606. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  607. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  608. package/dist/host/__tests__/router.test.d.ts +0 -2
  609. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  610. package/dist/host/__tests__/router.test.js +0 -241
  611. package/dist/host/__tests__/router.test.js.map +0 -1
  612. package/dist/host/__tests__/testing.test.d.ts +0 -2
  613. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  614. package/dist/host/__tests__/testing.test.js +0 -64
  615. package/dist/host/__tests__/testing.test.js.map +0 -1
  616. package/dist/host/__tests__/utils.test.d.ts +0 -2
  617. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  618. package/dist/host/__tests__/utils.test.js +0 -29
  619. package/dist/host/__tests__/utils.test.js.map +0 -1
  620. package/dist/host/cookie-handler.d.ts +0 -34
  621. package/dist/host/cookie-handler.d.ts.map +0 -1
  622. package/dist/host/cookie-handler.js +0 -124
  623. package/dist/host/cookie-handler.js.map +0 -1
  624. package/dist/host/errors.d.ts +0 -56
  625. package/dist/host/errors.d.ts.map +0 -1
  626. package/dist/host/errors.js +0 -79
  627. package/dist/host/errors.js.map +0 -1
  628. package/dist/host/index.d.ts +0 -29
  629. package/dist/host/index.d.ts.map +0 -1
  630. package/dist/host/index.js +0 -32
  631. package/dist/host/index.js.map +0 -1
  632. package/dist/host/pattern-matcher.d.ts +0 -36
  633. package/dist/host/pattern-matcher.d.ts.map +0 -1
  634. package/dist/host/pattern-matcher.js +0 -172
  635. package/dist/host/pattern-matcher.js.map +0 -1
  636. package/dist/host/router.d.ts +0 -26
  637. package/dist/host/router.d.ts.map +0 -1
  638. package/dist/host/router.js +0 -218
  639. package/dist/host/router.js.map +0 -1
  640. package/dist/host/testing.d.ts +0 -36
  641. package/dist/host/testing.d.ts.map +0 -1
  642. package/dist/host/testing.js +0 -55
  643. package/dist/host/testing.js.map +0 -1
  644. package/dist/host/types.d.ts +0 -115
  645. package/dist/host/types.d.ts.map +0 -1
  646. package/dist/host/types.js +0 -7
  647. package/dist/host/types.js.map +0 -1
  648. package/dist/host/utils.d.ts +0 -21
  649. package/dist/host/utils.d.ts.map +0 -1
  650. package/dist/host/utils.js +0 -23
  651. package/dist/host/utils.js.map +0 -1
  652. package/dist/href-client.d.ts +0 -131
  653. package/dist/href-client.d.ts.map +0 -1
  654. package/dist/href-client.js +0 -64
  655. package/dist/href-client.js.map +0 -1
  656. package/dist/href-context.d.ts +0 -29
  657. package/dist/href-context.d.ts.map +0 -1
  658. package/dist/href-context.js +0 -21
  659. package/dist/href-context.js.map +0 -1
  660. package/dist/index.d.ts +0 -73
  661. package/dist/index.d.ts.map +0 -1
  662. package/dist/index.js +0 -91
  663. package/dist/index.js.map +0 -1
  664. package/dist/index.rsc.d.ts +0 -32
  665. package/dist/index.rsc.d.ts.map +0 -1
  666. package/dist/index.rsc.js +0 -40
  667. package/dist/index.rsc.js.map +0 -1
  668. package/dist/internal-debug.d.ts +0 -2
  669. package/dist/internal-debug.d.ts.map +0 -1
  670. package/dist/internal-debug.js +0 -5
  671. package/dist/internal-debug.js.map +0 -1
  672. package/dist/loader.d.ts +0 -14
  673. package/dist/loader.d.ts.map +0 -1
  674. package/dist/loader.js +0 -20
  675. package/dist/loader.js.map +0 -1
  676. package/dist/loader.rsc.d.ts +0 -19
  677. package/dist/loader.rsc.d.ts.map +0 -1
  678. package/dist/loader.rsc.js +0 -99
  679. package/dist/loader.rsc.js.map +0 -1
  680. package/dist/network-error-thrower.d.ts +0 -17
  681. package/dist/network-error-thrower.d.ts.map +0 -1
  682. package/dist/network-error-thrower.js +0 -14
  683. package/dist/network-error-thrower.js.map +0 -1
  684. package/dist/outlet-context.d.ts +0 -13
  685. package/dist/outlet-context.d.ts.map +0 -1
  686. package/dist/outlet-context.js +0 -3
  687. package/dist/outlet-context.js.map +0 -1
  688. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  689. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  690. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  691. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  692. package/dist/prerender/param-hash.d.ts +0 -16
  693. package/dist/prerender/param-hash.d.ts.map +0 -1
  694. package/dist/prerender/param-hash.js +0 -36
  695. package/dist/prerender/param-hash.js.map +0 -1
  696. package/dist/prerender/store.d.ts +0 -38
  697. package/dist/prerender/store.d.ts.map +0 -1
  698. package/dist/prerender/store.js +0 -61
  699. package/dist/prerender/store.js.map +0 -1
  700. package/dist/prerender.d.ts +0 -66
  701. package/dist/prerender.d.ts.map +0 -1
  702. package/dist/prerender.js +0 -57
  703. package/dist/prerender.js.map +0 -1
  704. package/dist/reverse.d.ts +0 -196
  705. package/dist/reverse.d.ts.map +0 -1
  706. package/dist/reverse.js +0 -78
  707. package/dist/reverse.js.map +0 -1
  708. package/dist/root-error-boundary.d.ts +0 -33
  709. package/dist/root-error-boundary.d.ts.map +0 -1
  710. package/dist/root-error-boundary.js +0 -165
  711. package/dist/root-error-boundary.js.map +0 -1
  712. package/dist/route-content-wrapper.d.ts +0 -46
  713. package/dist/route-content-wrapper.d.ts.map +0 -1
  714. package/dist/route-content-wrapper.js +0 -77
  715. package/dist/route-content-wrapper.js.map +0 -1
  716. package/dist/route-definition.d.ts +0 -421
  717. package/dist/route-definition.d.ts.map +0 -1
  718. package/dist/route-definition.js +0 -868
  719. package/dist/route-definition.js.map +0 -1
  720. package/dist/route-map-builder.d.ts +0 -155
  721. package/dist/route-map-builder.d.ts.map +0 -1
  722. package/dist/route-map-builder.js +0 -237
  723. package/dist/route-map-builder.js.map +0 -1
  724. package/dist/route-types.d.ts +0 -165
  725. package/dist/route-types.d.ts.map +0 -1
  726. package/dist/route-types.js +0 -7
  727. package/dist/route-types.js.map +0 -1
  728. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  729. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  730. package/dist/router/__tests__/handler-context.test.js +0 -65
  731. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  732. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  733. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  734. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  735. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  736. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  737. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  738. package/dist/router/__tests__/match-context.test.js +0 -92
  739. package/dist/router/__tests__/match-context.test.js.map +0 -1
  740. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  741. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  742. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  743. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  744. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  745. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  746. package/dist/router/__tests__/match-result.test.js +0 -457
  747. package/dist/router/__tests__/match-result.test.js.map +0 -1
  748. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  749. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  750. package/dist/router/__tests__/on-error.test.js +0 -678
  751. package/dist/router/__tests__/on-error.test.js.map +0 -1
  752. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  753. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  754. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  755. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  756. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  757. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  758. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  759. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  760. package/dist/router/error-handling.d.ts +0 -77
  761. package/dist/router/error-handling.d.ts.map +0 -1
  762. package/dist/router/error-handling.js +0 -202
  763. package/dist/router/error-handling.js.map +0 -1
  764. package/dist/router/handler-context.d.ts +0 -20
  765. package/dist/router/handler-context.d.ts.map +0 -1
  766. package/dist/router/handler-context.js +0 -198
  767. package/dist/router/handler-context.js.map +0 -1
  768. package/dist/router/intercept-resolution.d.ts +0 -66
  769. package/dist/router/intercept-resolution.d.ts.map +0 -1
  770. package/dist/router/intercept-resolution.js +0 -246
  771. package/dist/router/intercept-resolution.js.map +0 -1
  772. package/dist/router/loader-resolution.d.ts +0 -64
  773. package/dist/router/loader-resolution.d.ts.map +0 -1
  774. package/dist/router/loader-resolution.js +0 -284
  775. package/dist/router/loader-resolution.js.map +0 -1
  776. package/dist/router/logging.d.ts +0 -15
  777. package/dist/router/logging.d.ts.map +0 -1
  778. package/dist/router/logging.js +0 -99
  779. package/dist/router/logging.js.map +0 -1
  780. package/dist/router/manifest.d.ts +0 -22
  781. package/dist/router/manifest.d.ts.map +0 -1
  782. package/dist/router/manifest.js +0 -181
  783. package/dist/router/manifest.js.map +0 -1
  784. package/dist/router/match-api.d.ts +0 -35
  785. package/dist/router/match-api.d.ts.map +0 -1
  786. package/dist/router/match-api.js +0 -406
  787. package/dist/router/match-api.js.map +0 -1
  788. package/dist/router/match-context.d.ts +0 -206
  789. package/dist/router/match-context.d.ts.map +0 -1
  790. package/dist/router/match-context.js +0 -17
  791. package/dist/router/match-context.js.map +0 -1
  792. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  793. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  794. package/dist/router/match-middleware/background-revalidation.js +0 -75
  795. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  796. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  797. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  798. package/dist/router/match-middleware/cache-lookup.js +0 -257
  799. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  800. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  801. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  802. package/dist/router/match-middleware/cache-store.js +0 -108
  803. package/dist/router/match-middleware/cache-store.js.map +0 -1
  804. package/dist/router/match-middleware/index.d.ts +0 -81
  805. package/dist/router/match-middleware/index.d.ts.map +0 -1
  806. package/dist/router/match-middleware/index.js +0 -80
  807. package/dist/router/match-middleware/index.js.map +0 -1
  808. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  809. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  810. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  811. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  812. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  813. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  814. package/dist/router/match-middleware/segment-resolution.js +0 -53
  815. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  816. package/dist/router/match-pipelines.d.ts +0 -147
  817. package/dist/router/match-pipelines.d.ts.map +0 -1
  818. package/dist/router/match-pipelines.js +0 -82
  819. package/dist/router/match-pipelines.js.map +0 -1
  820. package/dist/router/match-result.d.ts +0 -126
  821. package/dist/router/match-result.d.ts.map +0 -1
  822. package/dist/router/match-result.js +0 -93
  823. package/dist/router/match-result.js.map +0 -1
  824. package/dist/router/metrics.d.ts +0 -20
  825. package/dist/router/metrics.d.ts.map +0 -1
  826. package/dist/router/metrics.js +0 -47
  827. package/dist/router/metrics.js.map +0 -1
  828. package/dist/router/middleware.d.ts +0 -249
  829. package/dist/router/middleware.d.ts.map +0 -1
  830. package/dist/router/middleware.js +0 -434
  831. package/dist/router/middleware.js.map +0 -1
  832. package/dist/router/middleware.test.d.ts +0 -2
  833. package/dist/router/middleware.test.d.ts.map +0 -1
  834. package/dist/router/middleware.test.js +0 -816
  835. package/dist/router/middleware.test.js.map +0 -1
  836. package/dist/router/pattern-matching.d.ts +0 -149
  837. package/dist/router/pattern-matching.d.ts.map +0 -1
  838. package/dist/router/pattern-matching.js +0 -349
  839. package/dist/router/pattern-matching.js.map +0 -1
  840. package/dist/router/revalidation.d.ts +0 -44
  841. package/dist/router/revalidation.d.ts.map +0 -1
  842. package/dist/router/revalidation.js +0 -147
  843. package/dist/router/revalidation.js.map +0 -1
  844. package/dist/router/router-context.d.ts +0 -135
  845. package/dist/router/router-context.d.ts.map +0 -1
  846. package/dist/router/router-context.js +0 -36
  847. package/dist/router/router-context.js.map +0 -1
  848. package/dist/router/segment-resolution.d.ts +0 -127
  849. package/dist/router/segment-resolution.d.ts.map +0 -1
  850. package/dist/router/segment-resolution.js +0 -919
  851. package/dist/router/segment-resolution.js.map +0 -1
  852. package/dist/router/trie-matching.d.ts +0 -40
  853. package/dist/router/trie-matching.d.ts.map +0 -1
  854. package/dist/router/trie-matching.js +0 -127
  855. package/dist/router/trie-matching.js.map +0 -1
  856. package/dist/router/types.d.ts +0 -136
  857. package/dist/router/types.d.ts.map +0 -1
  858. package/dist/router/types.js +0 -7
  859. package/dist/router/types.js.map +0 -1
  860. package/dist/router.d.ts +0 -753
  861. package/dist/router.d.ts.map +0 -1
  862. package/dist/router.gen.d.ts +0 -6
  863. package/dist/router.gen.d.ts.map +0 -1
  864. package/dist/router.gen.js +0 -6
  865. package/dist/router.gen.js.map +0 -1
  866. package/dist/router.js +0 -1304
  867. package/dist/router.js.map +0 -1
  868. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  869. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  870. package/dist/rsc/__tests__/helpers.test.js +0 -140
  871. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  872. package/dist/rsc/handler.d.ts +0 -45
  873. package/dist/rsc/handler.d.ts.map +0 -1
  874. package/dist/rsc/handler.js +0 -1172
  875. package/dist/rsc/handler.js.map +0 -1
  876. package/dist/rsc/helpers.d.ts +0 -16
  877. package/dist/rsc/helpers.d.ts.map +0 -1
  878. package/dist/rsc/helpers.js +0 -55
  879. package/dist/rsc/helpers.js.map +0 -1
  880. package/dist/rsc/index.d.ts +0 -22
  881. package/dist/rsc/index.d.ts.map +0 -1
  882. package/dist/rsc/index.js +0 -23
  883. package/dist/rsc/index.js.map +0 -1
  884. package/dist/rsc/nonce.d.ts +0 -9
  885. package/dist/rsc/nonce.d.ts.map +0 -1
  886. package/dist/rsc/nonce.js +0 -18
  887. package/dist/rsc/nonce.js.map +0 -1
  888. package/dist/rsc/types.d.ts +0 -206
  889. package/dist/rsc/types.d.ts.map +0 -1
  890. package/dist/rsc/types.js +0 -8
  891. package/dist/rsc/types.js.map +0 -1
  892. package/dist/search-params.d.ts +0 -103
  893. package/dist/search-params.d.ts.map +0 -1
  894. package/dist/search-params.js +0 -74
  895. package/dist/search-params.js.map +0 -1
  896. package/dist/segment-system.d.ts +0 -75
  897. package/dist/segment-system.d.ts.map +0 -1
  898. package/dist/segment-system.js +0 -336
  899. package/dist/segment-system.js.map +0 -1
  900. package/dist/server/context.d.ts +0 -245
  901. package/dist/server/context.d.ts.map +0 -1
  902. package/dist/server/context.js +0 -197
  903. package/dist/server/context.js.map +0 -1
  904. package/dist/server/fetchable-loader-store.d.ts +0 -18
  905. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  906. package/dist/server/fetchable-loader-store.js +0 -18
  907. package/dist/server/fetchable-loader-store.js.map +0 -1
  908. package/dist/server/handle-store.d.ts +0 -85
  909. package/dist/server/handle-store.d.ts.map +0 -1
  910. package/dist/server/handle-store.js +0 -142
  911. package/dist/server/handle-store.js.map +0 -1
  912. package/dist/server/loader-registry.d.ts +0 -55
  913. package/dist/server/loader-registry.d.ts.map +0 -1
  914. package/dist/server/loader-registry.js +0 -132
  915. package/dist/server/loader-registry.js.map +0 -1
  916. package/dist/server/request-context.d.ts +0 -226
  917. package/dist/server/request-context.d.ts.map +0 -1
  918. package/dist/server/request-context.js +0 -290
  919. package/dist/server/request-context.js.map +0 -1
  920. package/dist/server/root-layout.d.ts +0 -4
  921. package/dist/server/root-layout.d.ts.map +0 -1
  922. package/dist/server/root-layout.js +0 -5
  923. package/dist/server/root-layout.js.map +0 -1
  924. package/dist/server.d.ts +0 -15
  925. package/dist/server.d.ts.map +0 -1
  926. package/dist/server.js +0 -20
  927. package/dist/server.js.map +0 -1
  928. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  929. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  930. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  931. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  932. package/dist/ssr/index.d.ts +0 -98
  933. package/dist/ssr/index.d.ts.map +0 -1
  934. package/dist/ssr/index.js +0 -158
  935. package/dist/ssr/index.js.map +0 -1
  936. package/dist/static-handler.d.ts +0 -50
  937. package/dist/static-handler.d.ts.map +0 -1
  938. package/dist/static-handler.gen.d.ts +0 -5
  939. package/dist/static-handler.gen.d.ts.map +0 -1
  940. package/dist/static-handler.gen.js +0 -5
  941. package/dist/static-handler.gen.js.map +0 -1
  942. package/dist/static-handler.js +0 -29
  943. package/dist/static-handler.js.map +0 -1
  944. package/dist/theme/ThemeProvider.d.ts +0 -20
  945. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  946. package/dist/theme/ThemeProvider.js +0 -240
  947. package/dist/theme/ThemeProvider.js.map +0 -1
  948. package/dist/theme/ThemeScript.d.ts +0 -48
  949. package/dist/theme/ThemeScript.d.ts.map +0 -1
  950. package/dist/theme/ThemeScript.js +0 -13
  951. package/dist/theme/ThemeScript.js.map +0 -1
  952. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  953. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  954. package/dist/theme/__tests__/theme.test.js +0 -103
  955. package/dist/theme/__tests__/theme.test.js.map +0 -1
  956. package/dist/theme/constants.d.ts +0 -29
  957. package/dist/theme/constants.d.ts.map +0 -1
  958. package/dist/theme/constants.js +0 -48
  959. package/dist/theme/constants.js.map +0 -1
  960. package/dist/theme/index.d.ts +0 -31
  961. package/dist/theme/index.d.ts.map +0 -1
  962. package/dist/theme/index.js +0 -36
  963. package/dist/theme/index.js.map +0 -1
  964. package/dist/theme/theme-context.d.ts +0 -40
  965. package/dist/theme/theme-context.d.ts.map +0 -1
  966. package/dist/theme/theme-context.js +0 -60
  967. package/dist/theme/theme-context.js.map +0 -1
  968. package/dist/theme/theme-script.d.ts +0 -27
  969. package/dist/theme/theme-script.d.ts.map +0 -1
  970. package/dist/theme/theme-script.js +0 -147
  971. package/dist/theme/theme-script.js.map +0 -1
  972. package/dist/theme/types.d.ts +0 -163
  973. package/dist/theme/types.d.ts.map +0 -1
  974. package/dist/theme/types.js +0 -11
  975. package/dist/theme/types.js.map +0 -1
  976. package/dist/theme/use-theme.d.ts +0 -12
  977. package/dist/theme/use-theme.d.ts.map +0 -1
  978. package/dist/theme/use-theme.js +0 -40
  979. package/dist/theme/use-theme.js.map +0 -1
  980. package/dist/types.d.ts +0 -1479
  981. package/dist/types.d.ts.map +0 -1
  982. package/dist/types.js +0 -10
  983. package/dist/types.js.map +0 -1
  984. package/dist/urls.d.ts +0 -441
  985. package/dist/urls.d.ts.map +0 -1
  986. package/dist/urls.gen.d.ts +0 -8
  987. package/dist/urls.gen.d.ts.map +0 -1
  988. package/dist/urls.gen.js +0 -8
  989. package/dist/urls.gen.js.map +0 -1
  990. package/dist/urls.js +0 -443
  991. package/dist/urls.js.map +0 -1
  992. package/dist/use-loader.d.ts +0 -127
  993. package/dist/use-loader.d.ts.map +0 -1
  994. package/dist/use-loader.js +0 -237
  995. package/dist/use-loader.js.map +0 -1
  996. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  997. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  998. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  999. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  1000. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  1001. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  1002. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  1003. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  1004. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  1005. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  1006. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  1007. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  1008. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  1009. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  1010. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  1011. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  1012. package/dist/vite/ast-handler-extract.d.ts +0 -49
  1013. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  1014. package/dist/vite/ast-handler-extract.js +0 -249
  1015. package/dist/vite/ast-handler-extract.js.map +0 -1
  1016. package/dist/vite/expose-action-id.d.ts +0 -19
  1017. package/dist/vite/expose-action-id.d.ts.map +0 -1
  1018. package/dist/vite/expose-action-id.js +0 -250
  1019. package/dist/vite/expose-action-id.js.map +0 -1
  1020. package/dist/vite/expose-id-utils.d.ts +0 -69
  1021. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  1022. package/dist/vite/expose-id-utils.js +0 -289
  1023. package/dist/vite/expose-id-utils.js.map +0 -1
  1024. package/dist/vite/expose-internal-ids.d.ts +0 -22
  1025. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  1026. package/dist/vite/expose-internal-ids.js +0 -886
  1027. package/dist/vite/expose-internal-ids.js.map +0 -1
  1028. package/dist/vite/index.d.ts +0 -149
  1029. package/dist/vite/index.d.ts.map +0 -1
  1030. package/dist/vite/index.js.bak +0 -5448
  1031. package/dist/vite/index.js.map +0 -1
  1032. package/dist/vite/index.named-routes.gen.ts +0 -103
  1033. package/dist/vite/package-resolution.d.ts +0 -43
  1034. package/dist/vite/package-resolution.d.ts.map +0 -1
  1035. package/dist/vite/package-resolution.js +0 -112
  1036. package/dist/vite/package-resolution.js.map +0 -1
  1037. package/dist/vite/virtual-entries.d.ts +0 -25
  1038. package/dist/vite/virtual-entries.d.ts.map +0 -1
  1039. package/dist/vite/virtual-entries.js +0 -110
  1040. package/dist/vite/virtual-entries.js.map +0 -1
  1041. package/src/browser/action-response-classifier.ts +0 -99
@@ -1,242 +0,0 @@
1
- /// <reference path="../../vite/version.d.ts" />
2
- import { getRequestContext, } from "../../server/request-context.js";
3
- import { VERSION } from "@rangojs/router:version";
4
- // ============================================================================
5
- // Constants
6
- // ============================================================================
7
- /** Header storing timestamp when entry becomes stale */
8
- export const CACHE_STALE_AT_HEADER = "x-edge-cache-stale-at";
9
- /** Header storing cache status: HIT | REVALIDATING */
10
- export const CACHE_STATUS_HEADER = "x-edge-cache-status";
11
- /**
12
- * Maximum age in seconds for REVALIDATING status before allowing new revalidation.
13
- * After this period, a stale entry in REVALIDATING status will trigger revalidation again.
14
- * @internal
15
- */
16
- export const MAX_REVALIDATION_INTERVAL = 30;
17
- // ============================================================================
18
- // CFCacheStore Implementation
19
- // ============================================================================
20
- export class CFCacheStore {
21
- constructor(options) {
22
- if (!options.ctx) {
23
- throw new Error("[CFCacheStore] ExecutionContext (ctx) is required. " +
24
- "Pass the Cloudflare ExecutionContext from your worker's fetch handler: " +
25
- "new CFCacheStore({ ctx: env.ctx })");
26
- }
27
- this.namespace = options.namespace;
28
- this.baseUrl = options.baseUrl ?? this.deriveBaseUrl();
29
- this.defaults = options.defaults;
30
- this.version = options.version ?? VERSION;
31
- this.keyGenerator = options.keyGenerator;
32
- this.waitUntil = (fn) => options.ctx.waitUntil(fn());
33
- }
34
- /**
35
- * Derive base URL from request hostname via requestContext.
36
- * Uses internal fallback for dev/preview environments.
37
- * @internal
38
- */
39
- deriveBaseUrl() {
40
- const fallback = "https://rsc-cache.internal.com/";
41
- const ctx = getRequestContext();
42
- if (!ctx?.request) {
43
- return fallback;
44
- }
45
- try {
46
- const url = new URL(ctx.request.url);
47
- const hostname = url.hostname;
48
- // Use fallback for dev/preview environments
49
- if (hostname === "localhost" ||
50
- hostname === "127.0.0.1" ||
51
- hostname.endsWith(".workers.dev") ||
52
- hostname.endsWith(".pages.dev")) {
53
- return fallback;
54
- }
55
- // Use actual hostname for production
56
- return `https://${hostname}/`;
57
- }
58
- catch {
59
- return fallback;
60
- }
61
- }
62
- /**
63
- * Get the cache instance - uses caches.default unless namespace is specified.
64
- * @internal
65
- */
66
- getCache() {
67
- if (this.namespace) {
68
- return caches.open(this.namespace);
69
- }
70
- return caches.default;
71
- }
72
- /**
73
- * Get cached entry data by key.
74
- *
75
- * Handles SWR atomically:
76
- * - If stale and not already revalidating, marks as REVALIDATING and returns shouldRevalidate: true
77
- * - If already REVALIDATING (and recent), returns shouldRevalidate: false
78
- * - If fresh, returns shouldRevalidate: false
79
- *
80
- * The atomic mark prevents thundering herd - only first request triggers revalidation.
81
- */
82
- async get(key) {
83
- try {
84
- const cache = await this.getCache();
85
- const request = this.keyToRequest(key);
86
- const response = await cache.match(request);
87
- if (!response) {
88
- return null;
89
- }
90
- // Read status headers
91
- const status = response.headers.get(CACHE_STATUS_HEADER);
92
- const age = Number(response.headers.get("age") ?? "0");
93
- const staleAt = Number(response.headers.get(CACHE_STALE_AT_HEADER) ?? "0");
94
- const isStale = staleAt > 0 && Date.now() > staleAt;
95
- const isRevalidating = status === "REVALIDATING" && age < MAX_REVALIDATION_INTERVAL;
96
- // Case 1: Fresh or already being revalidated - just return data
97
- if (!isStale || isRevalidating) {
98
- const data = (await response.json());
99
- return { data, shouldRevalidate: false };
100
- }
101
- // Case 2: Stale and needs revalidation - atomically mark REVALIDATING
102
- const [b1, b2] = response.body.tee();
103
- const headers = new Headers(response.headers);
104
- headers.set(CACHE_STATUS_HEADER, "REVALIDATING");
105
- // Blocking write - must complete before returning to prevent race
106
- await cache.put(request, new Response(b1, { status: response.status, headers }));
107
- const data = (await new Response(b2).json());
108
- return { data, shouldRevalidate: true };
109
- }
110
- catch (error) {
111
- console.error("[CFCacheStore] get failed:", error);
112
- return null;
113
- }
114
- }
115
- /**
116
- * Store entry data with TTL and optional SWR window.
117
- * Uses waitUntil for non-blocking write when available.
118
- */
119
- async set(key, data, ttl, swr) {
120
- try {
121
- const cache = await this.getCache();
122
- const request = this.keyToRequest(key);
123
- // Extended TTL covers SWR window
124
- const swrWindow = swr ?? this.defaults?.swr ?? 0;
125
- const totalTtl = ttl + swrWindow;
126
- const staleAt = Date.now() + ttl * 1000;
127
- const response = new Response(JSON.stringify(data), {
128
- headers: {
129
- "Content-Type": "application/json",
130
- "Cache-Control": `public, max-age=${totalTtl}`,
131
- [CACHE_STALE_AT_HEADER]: String(staleAt),
132
- [CACHE_STATUS_HEADER]: "HIT",
133
- },
134
- });
135
- const putPromise = cache.put(request, response);
136
- if (this.waitUntil) {
137
- // Non-blocking write
138
- this.waitUntil(async () => {
139
- await putPromise;
140
- });
141
- }
142
- else {
143
- // Blocking fallback
144
- await putPromise;
145
- }
146
- }
147
- catch (error) {
148
- console.error("[CFCacheStore] set failed:", error);
149
- }
150
- }
151
- /**
152
- * Delete a cached entry
153
- */
154
- async delete(key) {
155
- try {
156
- const cache = await this.getCache();
157
- return await cache.delete(this.keyToRequest(key));
158
- }
159
- catch (error) {
160
- console.error("[CFCacheStore] delete failed:", error);
161
- return false;
162
- }
163
- }
164
- // ============================================================================
165
- // Document Cache Methods
166
- // ============================================================================
167
- /**
168
- * Get a cached Response by key (for document-level caching).
169
- * Returns the response and whether it should be revalidated (SWR).
170
- */
171
- async getResponse(key) {
172
- try {
173
- const cache = await this.getCache();
174
- const request = this.keyToRequest(`doc:${key}`);
175
- const response = await cache.match(request);
176
- if (!response || response.status !== 200) {
177
- return null;
178
- }
179
- // Check staleness
180
- const staleAt = Number(response.headers.get(CACHE_STALE_AT_HEADER) || 0);
181
- const isStale = staleAt > 0 && Date.now() > staleAt;
182
- return {
183
- response,
184
- shouldRevalidate: isStale,
185
- };
186
- }
187
- catch (error) {
188
- console.error("[CFCacheStore] getResponse failed:", error);
189
- return null;
190
- }
191
- }
192
- /**
193
- * Store a Response with TTL and optional SWR window (for document-level caching).
194
- */
195
- async putResponse(key, response, ttl, swr) {
196
- try {
197
- const cache = await this.getCache();
198
- const request = this.keyToRequest(`doc:${key}`);
199
- // Extended TTL covers SWR window
200
- const swrWindow = swr ?? this.defaults?.swr ?? 0;
201
- const totalTtl = ttl + swrWindow;
202
- const staleAt = Date.now() + ttl * 1000;
203
- // Clone and add cache headers
204
- const headers = new Headers(response.headers);
205
- headers.set("Cache-Control", `public, max-age=${totalTtl}`);
206
- headers.set(CACHE_STALE_AT_HEADER, String(staleAt));
207
- const toCache = new Response(response.body, {
208
- status: response.status,
209
- statusText: response.statusText,
210
- headers,
211
- });
212
- const putPromise = cache.put(request, toCache);
213
- if (this.waitUntil) {
214
- // Non-blocking write
215
- this.waitUntil(async () => {
216
- await putPromise;
217
- });
218
- }
219
- else {
220
- // Blocking fallback
221
- await putPromise;
222
- }
223
- }
224
- catch (error) {
225
- console.error("[CFCacheStore] putResponse failed:", error);
226
- }
227
- }
228
- /**
229
- * Convert string key to Request object for CF Cache API.
230
- * Includes version in URL if specified (for cache invalidation on code changes).
231
- * @internal
232
- */
233
- keyToRequest(key) {
234
- const encodedKey = encodeURIComponent(key);
235
- // Include version in URL path to invalidate cache when version changes
236
- const versionPath = this.version ? `v/${this.version}/` : "";
237
- return new Request(`${this.baseUrl}${versionPath}${encodedKey}`, {
238
- method: "GET",
239
- });
240
- }
241
- }
242
- //# sourceMappingURL=cf-cache-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cf-cache-store.js","sourceRoot":"","sources":["../../../src/cache/cf/cf-cache-store.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Cloudflare Cache Store Exports
3
- *
4
- * Main export:
5
- * - CFCacheStore - Production cache store using Cloudflare's Cache API
6
- *
7
- * Header constants (for inspection/debugging):
8
- * - CACHE_STALE_AT_HEADER - Header containing staleness timestamp
9
- * - CACHE_STATUS_HEADER - Header containing HIT/REVALIDATING status
10
- */
11
- export { CFCacheStore, type CFCacheStoreOptions } from "./cf-cache-store.js";
12
- export { CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER } from "./cf-cache-store.js";
13
- export { type CacheStatus, MAX_REVALIDATION_INTERVAL } from "./cf-cache-store.js";
14
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cache/cf/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGjF,OAAO,EAAE,KAAK,WAAW,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Cloudflare Cache Store Exports
3
- *
4
- * Main export:
5
- * - CFCacheStore - Production cache store using Cloudflare's Cache API
6
- *
7
- * Header constants (for inspection/debugging):
8
- * - CACHE_STALE_AT_HEADER - Header containing staleness timestamp
9
- * - CACHE_STATUS_HEADER - Header containing HIT/REVALIDATING status
10
- */
11
- // Public API
12
- export { CFCacheStore } from "./cf-cache-store.js";
13
- // Header constants for debugging and inspection
14
- export { CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER } from "./cf-cache-store.js";
15
- // Internal exports (re-exported for backwards compatibility, marked @internal in source)
16
- export { MAX_REVALIDATION_INTERVAL } from "./cf-cache-store.js";
17
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cache/cf/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,aAAa;AACb,OAAO,EAAE,YAAY,EAA4B,MAAM,qBAAqB,CAAC;AAE7E,gDAAgD;AAChD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,yFAAyF;AACzF,OAAO,EAAoB,yBAAyB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,64 +0,0 @@
1
- /**
2
- * Document-Level Cache Middleware
3
- *
4
- * Caches full HTTP responses at the edge based on Cache-Control headers.
5
- * Routes opt-in to caching by setting s-maxage or stale-while-revalidate headers.
6
- *
7
- * Flow:
8
- * 1. Check cache for existing response
9
- * 2. If fresh hit → return cached response
10
- * 3. If stale hit (within SWR window) → return cached, revalidate in background
11
- * 4. If miss → run handler, cache if response has cache headers
12
- */
13
- import type { MiddlewareFn, MiddlewareContext } from "../router/middleware.js";
14
- export interface DocumentCacheOptions<TEnv = any> {
15
- /**
16
- * Skip caching for specific paths (e.g., API routes)
17
- */
18
- skipPaths?: string[];
19
- /**
20
- * Custom cache key generator
21
- */
22
- keyGenerator?: (url: URL) => string;
23
- /**
24
- * Callback to determine if caching should be enabled for this request.
25
- * Receives the middleware context and returns true to enable caching.
26
- * If not provided, caching is enabled by default.
27
- *
28
- * @example
29
- * ```typescript
30
- * createDocumentCacheMiddleware({
31
- * isEnabled: (ctx) => !ctx.request.headers.has('x-skip-cache'),
32
- * })
33
- * ```
34
- */
35
- isEnabled?: (ctx: MiddlewareContext<TEnv>) => boolean | Promise<boolean>;
36
- /**
37
- * Enable debug logging for cache operations.
38
- * Logs HIT, MISS, STALE, and REVALIDATED events.
39
- * Defaults to false.
40
- */
41
- debug?: boolean;
42
- }
43
- /**
44
- * Create document cache middleware
45
- *
46
- * Add this middleware to your router to enable document-level caching.
47
- * It uses the cache store's getResponse/putResponse methods for caching.
48
- * Routes opt-in by setting Cache-Control headers with s-maxage.
49
- *
50
- * @example
51
- * ```typescript
52
- * // Add middleware to router
53
- * const router = createRouter<AppEnv>()
54
- * .use(createDocumentCacheMiddleware({
55
- * isEnabled: (ctx) => ctx.url.pathname !== '/admin',
56
- * }))
57
- * .route("home", (ctx) => {
58
- * ctx.headers.set("Cache-Control", "s-maxage=60, stale-while-revalidate=300");
59
- * return <HomePage />;
60
- * });
61
- * ```
62
- */
63
- export declare function createDocumentCacheMiddleware<TEnv = any>(options?: DocumentCacheOptions<TEnv>): MiddlewareFn<TEnv>;
64
- //# sourceMappingURL=document-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-cache.d.ts","sourceRoot":"","sources":["../../src/cache/document-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAoH/E,MAAM,WAAW,oBAAoB,CAAC,IAAI,GAAG,GAAG;IAC9C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC;IAEpC;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzE;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,GAAG,GAAG,EACtD,OAAO,GAAE,oBAAoB,CAAC,IAAI,CAAM,GACvC,YAAY,CAAC,IAAI,CAAC,CA2JpB"}
@@ -1,228 +0,0 @@
1
- /**
2
- * Document-Level Cache Middleware
3
- *
4
- * Caches full HTTP responses at the edge based on Cache-Control headers.
5
- * Routes opt-in to caching by setting s-maxage or stale-while-revalidate headers.
6
- *
7
- * Flow:
8
- * 1. Check cache for existing response
9
- * 2. If fresh hit → return cached response
10
- * 3. If stale hit (within SWR window) → return cached, revalidate in background
11
- * 4. If miss → run handler, cache if response has cache headers
12
- */
13
- import { getRequestContext } from "../server/request-context.js";
14
- // ============================================================================
15
- // Constants
16
- // ============================================================================
17
- /** Header indicating cache status for debugging */
18
- const CACHE_STATUS_HEADER = "x-document-cache-status";
19
- /**
20
- * Simple hash function for segment IDs.
21
- * Creates a short, deterministic hash to differentiate cache keys
22
- * based on which segments the client already has.
23
- */
24
- function hashSegmentIds(segmentIds) {
25
- if (!segmentIds)
26
- return "";
27
- let hash = 0;
28
- for (let i = 0; i < segmentIds.length; i++) {
29
- const char = segmentIds.charCodeAt(i);
30
- hash = ((hash << 5) - hash + char) | 0;
31
- }
32
- // Convert to base36 for shorter string, take absolute value
33
- return Math.abs(hash).toString(36);
34
- }
35
- /**
36
- * Parse Cache-Control header for s-maxage and stale-while-revalidate directives
37
- */
38
- function parseCacheControl(header) {
39
- if (!header)
40
- return null;
41
- const directives = {};
42
- // Parse s-maxage
43
- const sMaxAgeMatch = header.match(/s-maxage\s*=\s*(\d+)/i);
44
- if (sMaxAgeMatch) {
45
- directives.sMaxAge = parseInt(sMaxAgeMatch[1], 10);
46
- }
47
- // Parse stale-while-revalidate
48
- const swrMatch = header.match(/stale-while-revalidate\s*=\s*(\d+)/i);
49
- if (swrMatch) {
50
- directives.staleWhileRevalidate = parseInt(swrMatch[1], 10);
51
- }
52
- // Only return if we have at least s-maxage (required for document caching)
53
- if (directives.sMaxAge !== undefined) {
54
- return directives;
55
- }
56
- return null;
57
- }
58
- /**
59
- * Check if response should be cached based on Cache-Control headers
60
- */
61
- function shouldCacheResponse(response) {
62
- // Only cache successful responses
63
- if (response.status !== 200) {
64
- return null;
65
- }
66
- const cacheControl = response.headers.get("Cache-Control");
67
- return parseCacheControl(cacheControl);
68
- }
69
- // ============================================================================
70
- // Response Helpers
71
- // ============================================================================
72
- /**
73
- * Add cache status header to response for debugging
74
- */
75
- function addCacheStatusHeader(response, status) {
76
- const headers = new Headers(response.headers);
77
- headers.set(CACHE_STATUS_HEADER, status);
78
- return new Response(response.body, {
79
- status: response.status,
80
- statusText: response.statusText,
81
- headers,
82
- });
83
- }
84
- /**
85
- * Run onResponse callbacks registered on the request context
86
- */
87
- function runOnResponseCallbacks(response, callbacks) {
88
- let result = response;
89
- for (const callback of callbacks) {
90
- result = callback(result);
91
- }
92
- return result;
93
- }
94
- /**
95
- * Create document cache middleware
96
- *
97
- * Add this middleware to your router to enable document-level caching.
98
- * It uses the cache store's getResponse/putResponse methods for caching.
99
- * Routes opt-in by setting Cache-Control headers with s-maxage.
100
- *
101
- * @example
102
- * ```typescript
103
- * // Add middleware to router
104
- * const router = createRouter<AppEnv>()
105
- * .use(createDocumentCacheMiddleware({
106
- * isEnabled: (ctx) => ctx.url.pathname !== '/admin',
107
- * }))
108
- * .route("home", (ctx) => {
109
- * ctx.headers.set("Cache-Control", "s-maxage=60, stale-while-revalidate=300");
110
- * return <HomePage />;
111
- * });
112
- * ```
113
- */
114
- export function createDocumentCacheMiddleware(options = {}) {
115
- const { skipPaths = [], keyGenerator, isEnabled, debug = false } = options;
116
- const log = debug
117
- ? (message) => console.log(message)
118
- : () => { };
119
- return async function documentCacheMiddleware(ctx, next) {
120
- const url = ctx.url;
121
- // Skip RSC action requests (mutations shouldn't be cached)
122
- if (url.searchParams.has("_rsc_action")) {
123
- return next();
124
- }
125
- // Skip loader requests (have their own caching)
126
- if (url.searchParams.has("_rsc_loader")) {
127
- return next();
128
- }
129
- // Skip configured paths
130
- if (skipPaths.some((path) => url.pathname.startsWith(path))) {
131
- return next();
132
- }
133
- // Check if caching is enabled for this request
134
- if (isEnabled) {
135
- const enabled = await isEnabled(ctx);
136
- if (!enabled) {
137
- return next();
138
- }
139
- }
140
- // Get request context and cache store
141
- const requestCtx = getRequestContext();
142
- const store = requestCtx?._cacheStore;
143
- // Skip if no cache store or store doesn't support response caching
144
- if (!store?.getResponse || !store?.putResponse) {
145
- return next();
146
- }
147
- // Determine request type for cache key differentiation
148
- const isPartial = url.searchParams.has("_rsc_partial");
149
- const typeLabel = isPartial ? "RSC" : "HTML";
150
- // Generate cache key
151
- // For partial requests, include hash of client segments to prevent serving
152
- // wrong cached response when navigating from different pages with different layouts
153
- const clientSegments = url.searchParams.get("_rsc_segments") || "";
154
- const segmentHash = isPartial && clientSegments ? `:${hashSegmentIds(clientSegments)}` : "";
155
- const typeSuffix = isPartial ? ":rsc" : ":html";
156
- const cacheKey = keyGenerator
157
- ? keyGenerator(url) + segmentHash + typeSuffix
158
- : `${url.pathname}${segmentHash}${typeSuffix}`;
159
- try {
160
- // 1. Check cache
161
- const cached = await store.getResponse(cacheKey);
162
- if (cached && cached.response.status === 200) {
163
- if (!cached.shouldRevalidate) {
164
- // Fresh hit - return immediately
165
- log(`[DocumentCache] HIT ${typeLabel}: ${url.pathname}`);
166
- let response = addCacheStatusHeader(cached.response, "HIT");
167
- // Run onResponse callbacks even for cache hits
168
- if (requestCtx && requestCtx._onResponseCallbacks.length > 0) {
169
- response = runOnResponseCallbacks(response, requestCtx._onResponseCallbacks);
170
- }
171
- return response;
172
- }
173
- // Stale hit - return cached response, revalidate in background
174
- log(`[DocumentCache] STALE ${typeLabel}: ${url.pathname} (revalidating)`);
175
- if (requestCtx) {
176
- requestCtx.waitUntil(async () => {
177
- try {
178
- const fresh = await next();
179
- const directives = shouldCacheResponse(fresh);
180
- if (directives) {
181
- await store.putResponse(cacheKey, fresh, directives.sMaxAge, directives.staleWhileRevalidate);
182
- log(`[DocumentCache] REVALIDATED ${typeLabel}: ${url.pathname}`);
183
- }
184
- }
185
- catch (error) {
186
- console.error(`[DocumentCache] Revalidation failed:`, error);
187
- }
188
- });
189
- }
190
- let response = addCacheStatusHeader(cached.response, "STALE");
191
- // Run onResponse callbacks even for stale cache hits
192
- if (requestCtx && requestCtx._onResponseCallbacks.length > 0) {
193
- response = runOnResponseCallbacks(response, requestCtx._onResponseCallbacks);
194
- }
195
- return response;
196
- }
197
- // 2. Cache miss - run handler
198
- const originalResponse = await next();
199
- // 3. Cache if response has appropriate headers
200
- const directives = shouldCacheResponse(originalResponse);
201
- if (directives) {
202
- log(`[DocumentCache] MISS ${typeLabel}: ${url.pathname} (caching with s-maxage=${directives.sMaxAge})`);
203
- // Tee the body so we can return one stream and cache the other
204
- const [returnStream, cacheStream] = originalResponse.body.tee();
205
- // Clone response for caching (non-blocking)
206
- if (requestCtx) {
207
- requestCtx.waitUntil(async () => {
208
- try {
209
- await store.putResponse(cacheKey, new Response(cacheStream, originalResponse), directives.sMaxAge, directives.staleWhileRevalidate);
210
- }
211
- catch (error) {
212
- console.error(`[DocumentCache] Cache write failed:`, error);
213
- }
214
- });
215
- }
216
- return addCacheStatusHeader(new Response(returnStream, originalResponse), "MISS");
217
- }
218
- // No cache headers - pass through
219
- return originalResponse;
220
- }
221
- catch (error) {
222
- console.error(`[DocumentCache] Error:`, error);
223
- // On any cache error, fall through to handler
224
- return next();
225
- }
226
- };
227
- }
228
- //# sourceMappingURL=document-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-cache.js","sourceRoot":"","sources":["../../src/cache/document-cache.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- /**
2
- * Cache Store
3
- *
4
- * Server-side caching for RSC segments and loader data.
5
- *
6
- * Main exports for users:
7
- * - SegmentCacheStore - Interface for implementing custom cache stores
8
- * - MemorySegmentCacheStore - In-memory cache for development/testing
9
- * - CFCacheStore - Cloudflare edge cache store for production
10
- * - CacheScope / createCacheScope - Request-scoped cache provider
11
- */
12
- export type { CacheStore, CacheEntry, CacheValue, CacheValueType, CachePutOptions, CacheMetadata, } from "./types.js";
13
- export { MemoryCacheStore } from "./memory-store.js";
14
- export type { SegmentCacheStore, SegmentCacheProvider, CachedEntryData, CachedEntryResult, CacheGetResult, SerializedSegmentData, SegmentHandleData, CacheConfig, CacheConfigOrFactory, } from "./types.js";
15
- export { MemorySegmentCacheStore } from "./memory-segment-store.js";
16
- export { CFCacheStore, type CFCacheStoreOptions, CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER, } from "./cf/index.js";
17
- export { CacheScope, createCacheScope } from "./cache-scope.js";
18
- export { createDocumentCacheMiddleware, type DocumentCacheOptions, } from "./document-cache.js";
19
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,YAAY,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGrD,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGhE,OAAO,EACL,6BAA6B,EAC7B,KAAK,oBAAoB,GAC1B,MAAM,qBAAqB,CAAC"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Cache Store
3
- *
4
- * Server-side caching for RSC segments and loader data.
5
- *
6
- * Main exports for users:
7
- * - SegmentCacheStore - Interface for implementing custom cache stores
8
- * - MemorySegmentCacheStore - In-memory cache for development/testing
9
- * - CFCacheStore - Cloudflare edge cache store for production
10
- * - CacheScope / createCacheScope - Request-scoped cache provider
11
- */
12
- // Generic memory cache (reserved for future extensibility)
13
- export { MemoryCacheStore } from "./memory-store.js";
14
- export { MemorySegmentCacheStore } from "./memory-segment-store.js";
15
- // Cloudflare cache store
16
- export { CFCacheStore, CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER, } from "./cf/index.js";
17
- // Cache scope
18
- export { CacheScope, createCacheScope } from "./cache-scope.js";
19
- // Document-level cache middleware
20
- export { createDocumentCacheMiddleware, } from "./document-cache.js";
21
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAcH,2DAA2D;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAerD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,yBAAyB;AACzB,OAAO,EACL,YAAY,EAEZ,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAEvB,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEhE,kCAAkC;AAClC,OAAO,EACL,6BAA6B,GAE9B,MAAM,qBAAqB,CAAC"}