@rangojs/router 0.0.0-experimental.ce770c9a → 0.0.0-experimental.debug-cache-fix

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 (817) hide show
  1. package/dist/vite/index.js +1 -1
  2. package/package.json +1 -1
  3. package/skills/parallel/SKILL.md +67 -0
  4. package/src/browser/partial-update.ts +11 -0
  5. package/src/cache/cache-runtime.ts +15 -11
  6. package/src/cache/cache-scope.ts +48 -5
  7. package/src/router/match-middleware/background-revalidation.ts +12 -1
  8. package/src/router/match-middleware/cache-lookup.ts +42 -2
  9. package/src/router/match-middleware/cache-store.ts +21 -4
  10. package/src/router/match-result.ts +11 -5
  11. package/src/router/router-context.ts +1 -0
  12. package/src/router/segment-resolution/fresh.ts +23 -12
  13. package/src/router/segment-resolution/revalidation.ts +35 -22
  14. package/src/types/handler-context.ts +103 -17
  15. package/dist/__internal.d.ts +0 -83
  16. package/dist/__internal.d.ts.map +0 -1
  17. package/dist/__internal.js +0 -19
  18. package/dist/__internal.js.map +0 -1
  19. package/dist/__mocks__/version.d.ts +0 -7
  20. package/dist/__mocks__/version.d.ts.map +0 -1
  21. package/dist/__mocks__/version.js +0 -7
  22. package/dist/__mocks__/version.js.map +0 -1
  23. package/dist/__tests__/client-href.test.d.ts +0 -2
  24. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  25. package/dist/__tests__/client-href.test.js +0 -74
  26. package/dist/__tests__/client-href.test.js.map +0 -1
  27. package/dist/__tests__/component-utils.test.d.ts +0 -2
  28. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  29. package/dist/__tests__/component-utils.test.js +0 -51
  30. package/dist/__tests__/component-utils.test.js.map +0 -1
  31. package/dist/__tests__/event-controller.test.d.ts +0 -2
  32. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  33. package/dist/__tests__/event-controller.test.js +0 -538
  34. package/dist/__tests__/event-controller.test.js.map +0 -1
  35. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  36. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  37. package/dist/__tests__/helpers/route-tree.js +0 -374
  38. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  39. package/dist/__tests__/match-result.test.d.ts +0 -2
  40. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  41. package/dist/__tests__/match-result.test.js +0 -154
  42. package/dist/__tests__/match-result.test.js.map +0 -1
  43. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  44. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  45. package/dist/__tests__/navigation-store.test.js +0 -440
  46. package/dist/__tests__/navigation-store.test.js.map +0 -1
  47. package/dist/__tests__/partial-update.test.d.ts +0 -2
  48. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  49. package/dist/__tests__/partial-update.test.js +0 -1009
  50. package/dist/__tests__/partial-update.test.js.map +0 -1
  51. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  52. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  53. package/dist/__tests__/reverse-types.test.js +0 -656
  54. package/dist/__tests__/reverse-types.test.js.map +0 -1
  55. package/dist/__tests__/route-definition.test.d.ts +0 -2
  56. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  57. package/dist/__tests__/route-definition.test.js +0 -55
  58. package/dist/__tests__/route-definition.test.js.map +0 -1
  59. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  60. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  61. package/dist/__tests__/router-helpers.test.js +0 -377
  62. package/dist/__tests__/router-helpers.test.js.map +0 -1
  63. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  64. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  65. package/dist/__tests__/router-integration-2.test.js +0 -426
  66. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  67. package/dist/__tests__/router-integration.test.d.ts +0 -2
  68. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  69. package/dist/__tests__/router-integration.test.js +0 -1051
  70. package/dist/__tests__/router-integration.test.js.map +0 -1
  71. package/dist/__tests__/search-params.test.d.ts +0 -5
  72. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  73. package/dist/__tests__/search-params.test.js +0 -306
  74. package/dist/__tests__/search-params.test.js.map +0 -1
  75. package/dist/__tests__/segment-system.test.d.ts +0 -2
  76. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  77. package/dist/__tests__/segment-system.test.js +0 -627
  78. package/dist/__tests__/segment-system.test.js.map +0 -1
  79. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  80. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  81. package/dist/__tests__/static-handler-types.test.js +0 -63
  82. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  83. package/dist/__tests__/urls.test.d.ts +0 -2
  84. package/dist/__tests__/urls.test.d.ts.map +0 -1
  85. package/dist/__tests__/urls.test.js +0 -421
  86. package/dist/__tests__/urls.test.js.map +0 -1
  87. package/dist/__tests__/use-mount.test.d.ts +0 -2
  88. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  89. package/dist/__tests__/use-mount.test.js +0 -35
  90. package/dist/__tests__/use-mount.test.js.map +0 -1
  91. package/dist/bin/rango.d.ts +0 -2
  92. package/dist/bin/rango.d.ts.map +0 -1
  93. package/dist/bin/rango.js.map +0 -1
  94. package/dist/browser/event-controller.d.ts +0 -191
  95. package/dist/browser/event-controller.d.ts.map +0 -1
  96. package/dist/browser/event-controller.js +0 -559
  97. package/dist/browser/event-controller.js.map +0 -1
  98. package/dist/browser/index.d.ts +0 -2
  99. package/dist/browser/index.d.ts.map +0 -1
  100. package/dist/browser/index.js +0 -14
  101. package/dist/browser/index.js.map +0 -1
  102. package/dist/browser/link-interceptor.d.ts +0 -38
  103. package/dist/browser/link-interceptor.d.ts.map +0 -1
  104. package/dist/browser/link-interceptor.js +0 -99
  105. package/dist/browser/link-interceptor.js.map +0 -1
  106. package/dist/browser/logging.d.ts +0 -10
  107. package/dist/browser/logging.d.ts.map +0 -1
  108. package/dist/browser/logging.js +0 -29
  109. package/dist/browser/logging.js.map +0 -1
  110. package/dist/browser/lru-cache.d.ts +0 -17
  111. package/dist/browser/lru-cache.d.ts.map +0 -1
  112. package/dist/browser/lru-cache.js +0 -50
  113. package/dist/browser/lru-cache.js.map +0 -1
  114. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  115. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  116. package/dist/browser/merge-segment-loaders.js +0 -102
  117. package/dist/browser/merge-segment-loaders.js.map +0 -1
  118. package/dist/browser/navigation-bridge.d.ts +0 -102
  119. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  120. package/dist/browser/navigation-bridge.js +0 -708
  121. package/dist/browser/navigation-bridge.js.map +0 -1
  122. package/dist/browser/navigation-client.d.ts +0 -25
  123. package/dist/browser/navigation-client.d.ts.map +0 -1
  124. package/dist/browser/navigation-client.js +0 -157
  125. package/dist/browser/navigation-client.js.map +0 -1
  126. package/dist/browser/navigation-store.d.ts +0 -101
  127. package/dist/browser/navigation-store.d.ts.map +0 -1
  128. package/dist/browser/navigation-store.js +0 -625
  129. package/dist/browser/navigation-store.js.map +0 -1
  130. package/dist/browser/partial-update.d.ts +0 -75
  131. package/dist/browser/partial-update.d.ts.map +0 -1
  132. package/dist/browser/partial-update.js +0 -426
  133. package/dist/browser/partial-update.js.map +0 -1
  134. package/dist/browser/react/Link.d.ts +0 -86
  135. package/dist/browser/react/Link.d.ts.map +0 -1
  136. package/dist/browser/react/Link.js +0 -128
  137. package/dist/browser/react/Link.js.map +0 -1
  138. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  139. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  140. package/dist/browser/react/NavigationProvider.js +0 -216
  141. package/dist/browser/react/NavigationProvider.js.map +0 -1
  142. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  143. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  144. package/dist/browser/react/ScrollRestoration.js +0 -57
  145. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  146. package/dist/browser/react/context.d.ts +0 -46
  147. package/dist/browser/react/context.d.ts.map +0 -1
  148. package/dist/browser/react/context.js +0 -10
  149. package/dist/browser/react/context.js.map +0 -1
  150. package/dist/browser/react/index.d.ts +0 -11
  151. package/dist/browser/react/index.d.ts.map +0 -1
  152. package/dist/browser/react/index.js +0 -22
  153. package/dist/browser/react/index.js.map +0 -1
  154. package/dist/browser/react/location-state-shared.d.ts +0 -63
  155. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  156. package/dist/browser/react/location-state-shared.js +0 -81
  157. package/dist/browser/react/location-state-shared.js.map +0 -1
  158. package/dist/browser/react/location-state.d.ts +0 -23
  159. package/dist/browser/react/location-state.d.ts.map +0 -1
  160. package/dist/browser/react/location-state.js +0 -29
  161. package/dist/browser/react/location-state.js.map +0 -1
  162. package/dist/browser/react/mount-context.d.ts +0 -24
  163. package/dist/browser/react/mount-context.d.ts.map +0 -1
  164. package/dist/browser/react/mount-context.js +0 -24
  165. package/dist/browser/react/mount-context.js.map +0 -1
  166. package/dist/browser/react/use-action.d.ts +0 -64
  167. package/dist/browser/react/use-action.d.ts.map +0 -1
  168. package/dist/browser/react/use-action.js +0 -134
  169. package/dist/browser/react/use-action.js.map +0 -1
  170. package/dist/browser/react/use-client-cache.d.ts +0 -41
  171. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  172. package/dist/browser/react/use-client-cache.js +0 -39
  173. package/dist/browser/react/use-client-cache.js.map +0 -1
  174. package/dist/browser/react/use-handle.d.ts +0 -31
  175. package/dist/browser/react/use-handle.d.ts.map +0 -1
  176. package/dist/browser/react/use-handle.js +0 -144
  177. package/dist/browser/react/use-handle.js.map +0 -1
  178. package/dist/browser/react/use-href.d.ts +0 -33
  179. package/dist/browser/react/use-href.d.ts.map +0 -1
  180. package/dist/browser/react/use-href.js +0 -39
  181. package/dist/browser/react/use-href.js.map +0 -1
  182. package/dist/browser/react/use-link-status.d.ts +0 -37
  183. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  184. package/dist/browser/react/use-link-status.js +0 -99
  185. package/dist/browser/react/use-link-status.js.map +0 -1
  186. package/dist/browser/react/use-mount.d.ts +0 -25
  187. package/dist/browser/react/use-mount.d.ts.map +0 -1
  188. package/dist/browser/react/use-mount.js +0 -30
  189. package/dist/browser/react/use-mount.js.map +0 -1
  190. package/dist/browser/react/use-navigation.d.ts +0 -27
  191. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  192. package/dist/browser/react/use-navigation.js +0 -87
  193. package/dist/browser/react/use-navigation.js.map +0 -1
  194. package/dist/browser/react/use-segments.d.ts +0 -38
  195. package/dist/browser/react/use-segments.d.ts.map +0 -1
  196. package/dist/browser/react/use-segments.js +0 -130
  197. package/dist/browser/react/use-segments.js.map +0 -1
  198. package/dist/browser/request-controller.d.ts +0 -26
  199. package/dist/browser/request-controller.d.ts.map +0 -1
  200. package/dist/browser/request-controller.js +0 -147
  201. package/dist/browser/request-controller.js.map +0 -1
  202. package/dist/browser/rsc-router.d.ts +0 -129
  203. package/dist/browser/rsc-router.d.ts.map +0 -1
  204. package/dist/browser/rsc-router.js +0 -195
  205. package/dist/browser/rsc-router.js.map +0 -1
  206. package/dist/browser/scroll-restoration.d.ts +0 -93
  207. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  208. package/dist/browser/scroll-restoration.js +0 -321
  209. package/dist/browser/scroll-restoration.js.map +0 -1
  210. package/dist/browser/segment-structure-assert.d.ts +0 -17
  211. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  212. package/dist/browser/segment-structure-assert.js +0 -59
  213. package/dist/browser/segment-structure-assert.js.map +0 -1
  214. package/dist/browser/server-action-bridge.d.ts +0 -26
  215. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  216. package/dist/browser/server-action-bridge.js +0 -668
  217. package/dist/browser/server-action-bridge.js.map +0 -1
  218. package/dist/browser/shallow.d.ts +0 -12
  219. package/dist/browser/shallow.d.ts.map +0 -1
  220. package/dist/browser/shallow.js +0 -34
  221. package/dist/browser/shallow.js.map +0 -1
  222. package/dist/browser/types.d.ts +0 -369
  223. package/dist/browser/types.d.ts.map +0 -1
  224. package/dist/browser/types.js +0 -2
  225. package/dist/browser/types.js.map +0 -1
  226. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  227. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  228. package/dist/build/__tests__/generate-cli.test.js +0 -237
  229. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  230. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  231. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  232. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  233. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  234. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  235. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  236. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  237. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  238. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  239. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  240. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  241. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  242. package/dist/build/generate-manifest.d.ts +0 -81
  243. package/dist/build/generate-manifest.d.ts.map +0 -1
  244. package/dist/build/generate-manifest.js +0 -276
  245. package/dist/build/generate-manifest.js.map +0 -1
  246. package/dist/build/generate-route-types.d.ts +0 -115
  247. package/dist/build/generate-route-types.d.ts.map +0 -1
  248. package/dist/build/generate-route-types.js +0 -740
  249. package/dist/build/generate-route-types.js.map +0 -1
  250. package/dist/build/index.d.ts +0 -21
  251. package/dist/build/index.d.ts.map +0 -1
  252. package/dist/build/index.js +0 -21
  253. package/dist/build/index.js.map +0 -1
  254. package/dist/build/route-trie.d.ts +0 -71
  255. package/dist/build/route-trie.d.ts.map +0 -1
  256. package/dist/build/route-trie.js +0 -175
  257. package/dist/build/route-trie.js.map +0 -1
  258. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  259. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  260. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  261. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  262. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  263. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  264. package/dist/cache/__tests__/document-cache.test.js +0 -345
  265. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  266. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  267. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  268. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  269. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  270. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  271. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  272. package/dist/cache/__tests__/memory-store.test.js +0 -367
  273. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  274. package/dist/cache/cache-scope.d.ts +0 -102
  275. package/dist/cache/cache-scope.d.ts.map +0 -1
  276. package/dist/cache/cache-scope.js +0 -440
  277. package/dist/cache/cache-scope.js.map +0 -1
  278. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  279. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  280. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  281. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  282. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  283. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  284. package/dist/cache/cf/cf-cache-store.js +0 -242
  285. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  286. package/dist/cache/cf/index.d.ts +0 -14
  287. package/dist/cache/cf/index.d.ts.map +0 -1
  288. package/dist/cache/cf/index.js +0 -17
  289. package/dist/cache/cf/index.js.map +0 -1
  290. package/dist/cache/document-cache.d.ts +0 -64
  291. package/dist/cache/document-cache.d.ts.map +0 -1
  292. package/dist/cache/document-cache.js +0 -228
  293. package/dist/cache/document-cache.js.map +0 -1
  294. package/dist/cache/index.d.ts +0 -19
  295. package/dist/cache/index.d.ts.map +0 -1
  296. package/dist/cache/index.js +0 -21
  297. package/dist/cache/index.js.map +0 -1
  298. package/dist/cache/memory-segment-store.d.ts +0 -110
  299. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  300. package/dist/cache/memory-segment-store.js +0 -117
  301. package/dist/cache/memory-segment-store.js.map +0 -1
  302. package/dist/cache/memory-store.d.ts +0 -41
  303. package/dist/cache/memory-store.d.ts.map +0 -1
  304. package/dist/cache/memory-store.js +0 -191
  305. package/dist/cache/memory-store.js.map +0 -1
  306. package/dist/cache/types.d.ts +0 -317
  307. package/dist/cache/types.d.ts.map +0 -1
  308. package/dist/cache/types.js +0 -12
  309. package/dist/cache/types.js.map +0 -1
  310. package/dist/client.d.ts +0 -248
  311. package/dist/client.d.ts.map +0 -1
  312. package/dist/client.js +0 -367
  313. package/dist/client.js.map +0 -1
  314. package/dist/client.rsc.d.ts +0 -26
  315. package/dist/client.rsc.d.ts.map +0 -1
  316. package/dist/client.rsc.js +0 -46
  317. package/dist/client.rsc.js.map +0 -1
  318. package/dist/component-utils.d.ts +0 -36
  319. package/dist/component-utils.d.ts.map +0 -1
  320. package/dist/component-utils.js +0 -61
  321. package/dist/component-utils.js.map +0 -1
  322. package/dist/components/DefaultDocument.d.ts +0 -13
  323. package/dist/components/DefaultDocument.d.ts.map +0 -1
  324. package/dist/components/DefaultDocument.js +0 -15
  325. package/dist/components/DefaultDocument.js.map +0 -1
  326. package/dist/debug.d.ts +0 -58
  327. package/dist/debug.d.ts.map +0 -1
  328. package/dist/debug.js +0 -157
  329. package/dist/debug.js.map +0 -1
  330. package/dist/default-error-boundary.d.ts +0 -11
  331. package/dist/default-error-boundary.d.ts.map +0 -1
  332. package/dist/default-error-boundary.js +0 -45
  333. package/dist/default-error-boundary.js.map +0 -1
  334. package/dist/deps/browser.d.ts +0 -2
  335. package/dist/deps/browser.d.ts.map +0 -1
  336. package/dist/deps/browser.js +0 -3
  337. package/dist/deps/browser.js.map +0 -1
  338. package/dist/deps/html-stream-client.d.ts +0 -2
  339. package/dist/deps/html-stream-client.d.ts.map +0 -1
  340. package/dist/deps/html-stream-client.js +0 -3
  341. package/dist/deps/html-stream-client.js.map +0 -1
  342. package/dist/deps/html-stream-server.d.ts +0 -2
  343. package/dist/deps/html-stream-server.d.ts.map +0 -1
  344. package/dist/deps/html-stream-server.js +0 -3
  345. package/dist/deps/html-stream-server.js.map +0 -1
  346. package/dist/deps/rsc.d.ts +0 -2
  347. package/dist/deps/rsc.d.ts.map +0 -1
  348. package/dist/deps/rsc.js +0 -4
  349. package/dist/deps/rsc.js.map +0 -1
  350. package/dist/deps/ssr.d.ts +0 -2
  351. package/dist/deps/ssr.d.ts.map +0 -1
  352. package/dist/deps/ssr.js +0 -3
  353. package/dist/deps/ssr.js.map +0 -1
  354. package/dist/errors.d.ts +0 -174
  355. package/dist/errors.d.ts.map +0 -1
  356. package/dist/errors.js +0 -241
  357. package/dist/errors.js.map +0 -1
  358. package/dist/handle.d.ts +0 -78
  359. package/dist/handle.d.ts.map +0 -1
  360. package/dist/handle.js +0 -82
  361. package/dist/handle.js.map +0 -1
  362. package/dist/handles/MetaTags.d.ts +0 -14
  363. package/dist/handles/MetaTags.d.ts.map +0 -1
  364. package/dist/handles/MetaTags.js +0 -136
  365. package/dist/handles/MetaTags.js.map +0 -1
  366. package/dist/handles/index.d.ts +0 -6
  367. package/dist/handles/index.d.ts.map +0 -1
  368. package/dist/handles/index.js +0 -6
  369. package/dist/handles/index.js.map +0 -1
  370. package/dist/handles/meta.d.ts +0 -39
  371. package/dist/handles/meta.d.ts.map +0 -1
  372. package/dist/handles/meta.js +0 -202
  373. package/dist/handles/meta.js.map +0 -1
  374. package/dist/host/__tests__/errors.test.d.ts +0 -2
  375. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  376. package/dist/host/__tests__/errors.test.js +0 -76
  377. package/dist/host/__tests__/errors.test.js.map +0 -1
  378. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  379. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  380. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  381. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  382. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  383. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  384. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  385. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  386. package/dist/host/__tests__/router.test.d.ts +0 -2
  387. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  388. package/dist/host/__tests__/router.test.js +0 -241
  389. package/dist/host/__tests__/router.test.js.map +0 -1
  390. package/dist/host/__tests__/testing.test.d.ts +0 -2
  391. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  392. package/dist/host/__tests__/testing.test.js +0 -64
  393. package/dist/host/__tests__/testing.test.js.map +0 -1
  394. package/dist/host/__tests__/utils.test.d.ts +0 -2
  395. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  396. package/dist/host/__tests__/utils.test.js +0 -29
  397. package/dist/host/__tests__/utils.test.js.map +0 -1
  398. package/dist/host/cookie-handler.d.ts +0 -34
  399. package/dist/host/cookie-handler.d.ts.map +0 -1
  400. package/dist/host/cookie-handler.js +0 -124
  401. package/dist/host/cookie-handler.js.map +0 -1
  402. package/dist/host/errors.d.ts +0 -56
  403. package/dist/host/errors.d.ts.map +0 -1
  404. package/dist/host/errors.js +0 -79
  405. package/dist/host/errors.js.map +0 -1
  406. package/dist/host/index.d.ts +0 -29
  407. package/dist/host/index.d.ts.map +0 -1
  408. package/dist/host/index.js +0 -32
  409. package/dist/host/index.js.map +0 -1
  410. package/dist/host/pattern-matcher.d.ts +0 -36
  411. package/dist/host/pattern-matcher.d.ts.map +0 -1
  412. package/dist/host/pattern-matcher.js +0 -172
  413. package/dist/host/pattern-matcher.js.map +0 -1
  414. package/dist/host/router.d.ts +0 -26
  415. package/dist/host/router.d.ts.map +0 -1
  416. package/dist/host/router.js +0 -218
  417. package/dist/host/router.js.map +0 -1
  418. package/dist/host/testing.d.ts +0 -36
  419. package/dist/host/testing.d.ts.map +0 -1
  420. package/dist/host/testing.js +0 -55
  421. package/dist/host/testing.js.map +0 -1
  422. package/dist/host/types.d.ts +0 -115
  423. package/dist/host/types.d.ts.map +0 -1
  424. package/dist/host/types.js +0 -7
  425. package/dist/host/types.js.map +0 -1
  426. package/dist/host/utils.d.ts +0 -21
  427. package/dist/host/utils.d.ts.map +0 -1
  428. package/dist/host/utils.js +0 -23
  429. package/dist/host/utils.js.map +0 -1
  430. package/dist/href-client.d.ts +0 -131
  431. package/dist/href-client.d.ts.map +0 -1
  432. package/dist/href-client.js +0 -64
  433. package/dist/href-client.js.map +0 -1
  434. package/dist/href-context.d.ts +0 -29
  435. package/dist/href-context.d.ts.map +0 -1
  436. package/dist/href-context.js +0 -21
  437. package/dist/href-context.js.map +0 -1
  438. package/dist/index.d.ts +0 -73
  439. package/dist/index.d.ts.map +0 -1
  440. package/dist/index.js +0 -91
  441. package/dist/index.js.map +0 -1
  442. package/dist/index.rsc.d.ts +0 -32
  443. package/dist/index.rsc.d.ts.map +0 -1
  444. package/dist/index.rsc.js +0 -40
  445. package/dist/index.rsc.js.map +0 -1
  446. package/dist/internal-debug.d.ts +0 -2
  447. package/dist/internal-debug.d.ts.map +0 -1
  448. package/dist/internal-debug.js +0 -5
  449. package/dist/internal-debug.js.map +0 -1
  450. package/dist/loader.d.ts +0 -14
  451. package/dist/loader.d.ts.map +0 -1
  452. package/dist/loader.js +0 -20
  453. package/dist/loader.js.map +0 -1
  454. package/dist/loader.rsc.d.ts +0 -19
  455. package/dist/loader.rsc.d.ts.map +0 -1
  456. package/dist/loader.rsc.js +0 -99
  457. package/dist/loader.rsc.js.map +0 -1
  458. package/dist/network-error-thrower.d.ts +0 -17
  459. package/dist/network-error-thrower.d.ts.map +0 -1
  460. package/dist/network-error-thrower.js +0 -14
  461. package/dist/network-error-thrower.js.map +0 -1
  462. package/dist/outlet-context.d.ts +0 -13
  463. package/dist/outlet-context.d.ts.map +0 -1
  464. package/dist/outlet-context.js +0 -3
  465. package/dist/outlet-context.js.map +0 -1
  466. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  467. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  468. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  469. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  470. package/dist/prerender/param-hash.d.ts +0 -16
  471. package/dist/prerender/param-hash.d.ts.map +0 -1
  472. package/dist/prerender/param-hash.js +0 -36
  473. package/dist/prerender/param-hash.js.map +0 -1
  474. package/dist/prerender/store.d.ts +0 -38
  475. package/dist/prerender/store.d.ts.map +0 -1
  476. package/dist/prerender/store.js +0 -61
  477. package/dist/prerender/store.js.map +0 -1
  478. package/dist/prerender.d.ts +0 -66
  479. package/dist/prerender.d.ts.map +0 -1
  480. package/dist/prerender.js +0 -57
  481. package/dist/prerender.js.map +0 -1
  482. package/dist/reverse.d.ts +0 -196
  483. package/dist/reverse.d.ts.map +0 -1
  484. package/dist/reverse.js +0 -78
  485. package/dist/reverse.js.map +0 -1
  486. package/dist/root-error-boundary.d.ts +0 -33
  487. package/dist/root-error-boundary.d.ts.map +0 -1
  488. package/dist/root-error-boundary.js +0 -165
  489. package/dist/root-error-boundary.js.map +0 -1
  490. package/dist/route-content-wrapper.d.ts +0 -46
  491. package/dist/route-content-wrapper.d.ts.map +0 -1
  492. package/dist/route-content-wrapper.js +0 -77
  493. package/dist/route-content-wrapper.js.map +0 -1
  494. package/dist/route-definition.d.ts +0 -421
  495. package/dist/route-definition.d.ts.map +0 -1
  496. package/dist/route-definition.js +0 -868
  497. package/dist/route-definition.js.map +0 -1
  498. package/dist/route-map-builder.d.ts +0 -155
  499. package/dist/route-map-builder.d.ts.map +0 -1
  500. package/dist/route-map-builder.js +0 -237
  501. package/dist/route-map-builder.js.map +0 -1
  502. package/dist/route-types.d.ts +0 -165
  503. package/dist/route-types.d.ts.map +0 -1
  504. package/dist/route-types.js +0 -7
  505. package/dist/route-types.js.map +0 -1
  506. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  507. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  508. package/dist/router/__tests__/handler-context.test.js +0 -65
  509. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  510. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  511. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  512. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  513. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  514. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  515. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  516. package/dist/router/__tests__/match-context.test.js +0 -92
  517. package/dist/router/__tests__/match-context.test.js.map +0 -1
  518. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  519. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  520. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  521. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  522. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  523. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  524. package/dist/router/__tests__/match-result.test.js +0 -457
  525. package/dist/router/__tests__/match-result.test.js.map +0 -1
  526. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  527. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  528. package/dist/router/__tests__/on-error.test.js +0 -678
  529. package/dist/router/__tests__/on-error.test.js.map +0 -1
  530. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  531. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  532. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  533. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  534. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  535. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  536. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  537. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  538. package/dist/router/error-handling.d.ts +0 -77
  539. package/dist/router/error-handling.d.ts.map +0 -1
  540. package/dist/router/error-handling.js +0 -202
  541. package/dist/router/error-handling.js.map +0 -1
  542. package/dist/router/handler-context.d.ts +0 -20
  543. package/dist/router/handler-context.d.ts.map +0 -1
  544. package/dist/router/handler-context.js +0 -198
  545. package/dist/router/handler-context.js.map +0 -1
  546. package/dist/router/intercept-resolution.d.ts +0 -66
  547. package/dist/router/intercept-resolution.d.ts.map +0 -1
  548. package/dist/router/intercept-resolution.js +0 -246
  549. package/dist/router/intercept-resolution.js.map +0 -1
  550. package/dist/router/loader-resolution.d.ts +0 -64
  551. package/dist/router/loader-resolution.d.ts.map +0 -1
  552. package/dist/router/loader-resolution.js +0 -284
  553. package/dist/router/loader-resolution.js.map +0 -1
  554. package/dist/router/logging.d.ts +0 -15
  555. package/dist/router/logging.d.ts.map +0 -1
  556. package/dist/router/logging.js +0 -99
  557. package/dist/router/logging.js.map +0 -1
  558. package/dist/router/manifest.d.ts +0 -22
  559. package/dist/router/manifest.d.ts.map +0 -1
  560. package/dist/router/manifest.js +0 -181
  561. package/dist/router/manifest.js.map +0 -1
  562. package/dist/router/match-api.d.ts +0 -35
  563. package/dist/router/match-api.d.ts.map +0 -1
  564. package/dist/router/match-api.js +0 -406
  565. package/dist/router/match-api.js.map +0 -1
  566. package/dist/router/match-context.d.ts +0 -206
  567. package/dist/router/match-context.d.ts.map +0 -1
  568. package/dist/router/match-context.js +0 -17
  569. package/dist/router/match-context.js.map +0 -1
  570. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  571. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  572. package/dist/router/match-middleware/background-revalidation.js +0 -75
  573. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  574. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  575. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  576. package/dist/router/match-middleware/cache-lookup.js +0 -257
  577. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  578. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  579. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  580. package/dist/router/match-middleware/cache-store.js +0 -108
  581. package/dist/router/match-middleware/cache-store.js.map +0 -1
  582. package/dist/router/match-middleware/index.d.ts +0 -81
  583. package/dist/router/match-middleware/index.d.ts.map +0 -1
  584. package/dist/router/match-middleware/index.js +0 -80
  585. package/dist/router/match-middleware/index.js.map +0 -1
  586. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  587. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  588. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  589. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  590. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  591. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  592. package/dist/router/match-middleware/segment-resolution.js +0 -53
  593. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  594. package/dist/router/match-pipelines.d.ts +0 -147
  595. package/dist/router/match-pipelines.d.ts.map +0 -1
  596. package/dist/router/match-pipelines.js +0 -82
  597. package/dist/router/match-pipelines.js.map +0 -1
  598. package/dist/router/match-result.d.ts +0 -126
  599. package/dist/router/match-result.d.ts.map +0 -1
  600. package/dist/router/match-result.js +0 -93
  601. package/dist/router/match-result.js.map +0 -1
  602. package/dist/router/metrics.d.ts +0 -20
  603. package/dist/router/metrics.d.ts.map +0 -1
  604. package/dist/router/metrics.js +0 -47
  605. package/dist/router/metrics.js.map +0 -1
  606. package/dist/router/middleware.d.ts +0 -249
  607. package/dist/router/middleware.d.ts.map +0 -1
  608. package/dist/router/middleware.js +0 -434
  609. package/dist/router/middleware.js.map +0 -1
  610. package/dist/router/middleware.test.d.ts +0 -2
  611. package/dist/router/middleware.test.d.ts.map +0 -1
  612. package/dist/router/middleware.test.js +0 -816
  613. package/dist/router/middleware.test.js.map +0 -1
  614. package/dist/router/pattern-matching.d.ts +0 -149
  615. package/dist/router/pattern-matching.d.ts.map +0 -1
  616. package/dist/router/pattern-matching.js +0 -349
  617. package/dist/router/pattern-matching.js.map +0 -1
  618. package/dist/router/revalidation.d.ts +0 -44
  619. package/dist/router/revalidation.d.ts.map +0 -1
  620. package/dist/router/revalidation.js +0 -147
  621. package/dist/router/revalidation.js.map +0 -1
  622. package/dist/router/router-context.d.ts +0 -135
  623. package/dist/router/router-context.d.ts.map +0 -1
  624. package/dist/router/router-context.js +0 -36
  625. package/dist/router/router-context.js.map +0 -1
  626. package/dist/router/segment-resolution.d.ts +0 -127
  627. package/dist/router/segment-resolution.d.ts.map +0 -1
  628. package/dist/router/segment-resolution.js +0 -919
  629. package/dist/router/segment-resolution.js.map +0 -1
  630. package/dist/router/trie-matching.d.ts +0 -40
  631. package/dist/router/trie-matching.d.ts.map +0 -1
  632. package/dist/router/trie-matching.js +0 -127
  633. package/dist/router/trie-matching.js.map +0 -1
  634. package/dist/router/types.d.ts +0 -136
  635. package/dist/router/types.d.ts.map +0 -1
  636. package/dist/router/types.js +0 -7
  637. package/dist/router/types.js.map +0 -1
  638. package/dist/router.d.ts +0 -753
  639. package/dist/router.d.ts.map +0 -1
  640. package/dist/router.gen.d.ts +0 -6
  641. package/dist/router.gen.d.ts.map +0 -1
  642. package/dist/router.gen.js +0 -6
  643. package/dist/router.gen.js.map +0 -1
  644. package/dist/router.js +0 -1304
  645. package/dist/router.js.map +0 -1
  646. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  647. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  648. package/dist/rsc/__tests__/helpers.test.js +0 -140
  649. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  650. package/dist/rsc/handler.d.ts +0 -45
  651. package/dist/rsc/handler.d.ts.map +0 -1
  652. package/dist/rsc/handler.js +0 -1172
  653. package/dist/rsc/handler.js.map +0 -1
  654. package/dist/rsc/helpers.d.ts +0 -16
  655. package/dist/rsc/helpers.d.ts.map +0 -1
  656. package/dist/rsc/helpers.js +0 -55
  657. package/dist/rsc/helpers.js.map +0 -1
  658. package/dist/rsc/index.d.ts +0 -22
  659. package/dist/rsc/index.d.ts.map +0 -1
  660. package/dist/rsc/index.js +0 -23
  661. package/dist/rsc/index.js.map +0 -1
  662. package/dist/rsc/nonce.d.ts +0 -9
  663. package/dist/rsc/nonce.d.ts.map +0 -1
  664. package/dist/rsc/nonce.js +0 -18
  665. package/dist/rsc/nonce.js.map +0 -1
  666. package/dist/rsc/types.d.ts +0 -206
  667. package/dist/rsc/types.d.ts.map +0 -1
  668. package/dist/rsc/types.js +0 -8
  669. package/dist/rsc/types.js.map +0 -1
  670. package/dist/search-params.d.ts +0 -103
  671. package/dist/search-params.d.ts.map +0 -1
  672. package/dist/search-params.js +0 -74
  673. package/dist/search-params.js.map +0 -1
  674. package/dist/segment-system.d.ts +0 -75
  675. package/dist/segment-system.d.ts.map +0 -1
  676. package/dist/segment-system.js +0 -336
  677. package/dist/segment-system.js.map +0 -1
  678. package/dist/server/context.d.ts +0 -245
  679. package/dist/server/context.d.ts.map +0 -1
  680. package/dist/server/context.js +0 -197
  681. package/dist/server/context.js.map +0 -1
  682. package/dist/server/fetchable-loader-store.d.ts +0 -18
  683. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  684. package/dist/server/fetchable-loader-store.js +0 -18
  685. package/dist/server/fetchable-loader-store.js.map +0 -1
  686. package/dist/server/handle-store.d.ts +0 -85
  687. package/dist/server/handle-store.d.ts.map +0 -1
  688. package/dist/server/handle-store.js +0 -142
  689. package/dist/server/handle-store.js.map +0 -1
  690. package/dist/server/loader-registry.d.ts +0 -55
  691. package/dist/server/loader-registry.d.ts.map +0 -1
  692. package/dist/server/loader-registry.js +0 -132
  693. package/dist/server/loader-registry.js.map +0 -1
  694. package/dist/server/request-context.d.ts +0 -226
  695. package/dist/server/request-context.d.ts.map +0 -1
  696. package/dist/server/request-context.js +0 -290
  697. package/dist/server/request-context.js.map +0 -1
  698. package/dist/server/root-layout.d.ts +0 -4
  699. package/dist/server/root-layout.d.ts.map +0 -1
  700. package/dist/server/root-layout.js +0 -5
  701. package/dist/server/root-layout.js.map +0 -1
  702. package/dist/server.d.ts +0 -15
  703. package/dist/server.d.ts.map +0 -1
  704. package/dist/server.js +0 -20
  705. package/dist/server.js.map +0 -1
  706. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  707. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  708. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  709. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  710. package/dist/ssr/index.d.ts +0 -98
  711. package/dist/ssr/index.d.ts.map +0 -1
  712. package/dist/ssr/index.js +0 -158
  713. package/dist/ssr/index.js.map +0 -1
  714. package/dist/static-handler.d.ts +0 -50
  715. package/dist/static-handler.d.ts.map +0 -1
  716. package/dist/static-handler.gen.d.ts +0 -5
  717. package/dist/static-handler.gen.d.ts.map +0 -1
  718. package/dist/static-handler.gen.js +0 -5
  719. package/dist/static-handler.gen.js.map +0 -1
  720. package/dist/static-handler.js +0 -29
  721. package/dist/static-handler.js.map +0 -1
  722. package/dist/theme/ThemeProvider.d.ts +0 -20
  723. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  724. package/dist/theme/ThemeProvider.js +0 -240
  725. package/dist/theme/ThemeProvider.js.map +0 -1
  726. package/dist/theme/ThemeScript.d.ts +0 -48
  727. package/dist/theme/ThemeScript.d.ts.map +0 -1
  728. package/dist/theme/ThemeScript.js +0 -13
  729. package/dist/theme/ThemeScript.js.map +0 -1
  730. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  731. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  732. package/dist/theme/__tests__/theme.test.js +0 -103
  733. package/dist/theme/__tests__/theme.test.js.map +0 -1
  734. package/dist/theme/constants.d.ts +0 -29
  735. package/dist/theme/constants.d.ts.map +0 -1
  736. package/dist/theme/constants.js +0 -48
  737. package/dist/theme/constants.js.map +0 -1
  738. package/dist/theme/index.d.ts +0 -31
  739. package/dist/theme/index.d.ts.map +0 -1
  740. package/dist/theme/index.js +0 -36
  741. package/dist/theme/index.js.map +0 -1
  742. package/dist/theme/theme-context.d.ts +0 -40
  743. package/dist/theme/theme-context.d.ts.map +0 -1
  744. package/dist/theme/theme-context.js +0 -60
  745. package/dist/theme/theme-context.js.map +0 -1
  746. package/dist/theme/theme-script.d.ts +0 -27
  747. package/dist/theme/theme-script.d.ts.map +0 -1
  748. package/dist/theme/theme-script.js +0 -147
  749. package/dist/theme/theme-script.js.map +0 -1
  750. package/dist/theme/types.d.ts +0 -163
  751. package/dist/theme/types.d.ts.map +0 -1
  752. package/dist/theme/types.js +0 -11
  753. package/dist/theme/types.js.map +0 -1
  754. package/dist/theme/use-theme.d.ts +0 -12
  755. package/dist/theme/use-theme.d.ts.map +0 -1
  756. package/dist/theme/use-theme.js +0 -40
  757. package/dist/theme/use-theme.js.map +0 -1
  758. package/dist/types.d.ts +0 -1479
  759. package/dist/types.d.ts.map +0 -1
  760. package/dist/types.js +0 -10
  761. package/dist/types.js.map +0 -1
  762. package/dist/urls.d.ts +0 -441
  763. package/dist/urls.d.ts.map +0 -1
  764. package/dist/urls.gen.d.ts +0 -8
  765. package/dist/urls.gen.d.ts.map +0 -1
  766. package/dist/urls.gen.js +0 -8
  767. package/dist/urls.gen.js.map +0 -1
  768. package/dist/urls.js +0 -443
  769. package/dist/urls.js.map +0 -1
  770. package/dist/use-loader.d.ts +0 -127
  771. package/dist/use-loader.d.ts.map +0 -1
  772. package/dist/use-loader.js +0 -237
  773. package/dist/use-loader.js.map +0 -1
  774. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  775. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  776. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  777. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  778. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  779. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  780. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  781. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  782. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  783. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  784. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  785. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  786. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  787. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  788. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  789. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  790. package/dist/vite/ast-handler-extract.d.ts +0 -49
  791. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  792. package/dist/vite/ast-handler-extract.js +0 -249
  793. package/dist/vite/ast-handler-extract.js.map +0 -1
  794. package/dist/vite/expose-action-id.d.ts +0 -19
  795. package/dist/vite/expose-action-id.d.ts.map +0 -1
  796. package/dist/vite/expose-action-id.js +0 -250
  797. package/dist/vite/expose-action-id.js.map +0 -1
  798. package/dist/vite/expose-id-utils.d.ts +0 -69
  799. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  800. package/dist/vite/expose-id-utils.js +0 -289
  801. package/dist/vite/expose-id-utils.js.map +0 -1
  802. package/dist/vite/expose-internal-ids.d.ts +0 -22
  803. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  804. package/dist/vite/expose-internal-ids.js +0 -886
  805. package/dist/vite/expose-internal-ids.js.map +0 -1
  806. package/dist/vite/index.d.ts +0 -149
  807. package/dist/vite/index.d.ts.map +0 -1
  808. package/dist/vite/index.js.map +0 -1
  809. package/dist/vite/index.named-routes.gen.ts +0 -103
  810. package/dist/vite/package-resolution.d.ts +0 -43
  811. package/dist/vite/package-resolution.d.ts.map +0 -1
  812. package/dist/vite/package-resolution.js +0 -112
  813. package/dist/vite/package-resolution.js.map +0 -1
  814. package/dist/vite/virtual-entries.d.ts +0 -25
  815. package/dist/vite/virtual-entries.d.ts.map +0 -1
  816. package/dist/vite/virtual-entries.js +0 -110
  817. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,330 +0,0 @@
1
- import { describe, it, expect, beforeEach, vi } from "vitest";
2
- import { CFCacheStore, CACHE_STALE_AT_HEADER, CACHE_STATUS_HEADER, } from "../cf-cache-store";
3
- // ============================================================================
4
- // Mock Cloudflare Cache API
5
- // ============================================================================
6
- class MockCache {
7
- constructor() {
8
- this.store = new Map();
9
- }
10
- async match(request) {
11
- return this.store.get(request.url)?.clone();
12
- }
13
- async put(request, response) {
14
- this.store.set(request.url, response.clone());
15
- }
16
- async delete(request) {
17
- return this.store.delete(request.url);
18
- }
19
- clear() {
20
- this.store.clear();
21
- }
22
- }
23
- class MockCaches {
24
- constructor() {
25
- this.caches = new Map();
26
- this._default = new MockCache();
27
- }
28
- async open(name) {
29
- if (!this.caches.has(name)) {
30
- this.caches.set(name, new MockCache());
31
- }
32
- return this.caches.get(name);
33
- }
34
- get default() {
35
- return this._default;
36
- }
37
- clear() {
38
- this._default.clear();
39
- this.caches.forEach((cache) => cache.clear());
40
- this.caches.clear();
41
- }
42
- }
43
- // Install mock globally
44
- const mockCaches = new MockCaches();
45
- globalThis.caches = mockCaches;
46
- // ============================================================================
47
- // Mock ExecutionContext
48
- // ============================================================================
49
- const createMockCtx = () => ({
50
- waitUntil: vi.fn((p) => p),
51
- passThroughOnException: vi.fn(),
52
- });
53
- // ============================================================================
54
- // Test Data
55
- // ============================================================================
56
- const createTestData = () => ({
57
- segments: [
58
- {
59
- encoded: "test-component",
60
- metadata: {
61
- id: "test-segment",
62
- type: "route",
63
- namespace: "test",
64
- index: 0,
65
- params: {},
66
- },
67
- },
68
- ],
69
- handles: {},
70
- expiresAt: Date.now() + 60000,
71
- });
72
- // ============================================================================
73
- // Tests
74
- // ============================================================================
75
- describe("CFCacheStore", () => {
76
- beforeEach(() => {
77
- mockCaches.clear();
78
- vi.useFakeTimers();
79
- });
80
- describe("constructor", () => {
81
- it("should require ctx", () => {
82
- expect(() => new CFCacheStore({})).toThrow("[CFCacheStore] ExecutionContext (ctx) is required");
83
- });
84
- it("should accept ctx and custom options", () => {
85
- const store = new CFCacheStore({
86
- ctx: createMockCtx(),
87
- namespace: "custom-cache",
88
- baseUrl: "https://custom.internal/",
89
- defaults: { ttl: 120, swr: 600 },
90
- });
91
- expect(store.defaults).toEqual({ ttl: 120, swr: 600 });
92
- });
93
- });
94
- describe("get/set", () => {
95
- it("should return null for missing key", async () => {
96
- const store = new CFCacheStore({ ctx: createMockCtx() });
97
- const result = await store.get("missing-key");
98
- expect(result).toBeNull();
99
- });
100
- it("should store and retrieve data", async () => {
101
- const mockCtx = createMockCtx();
102
- const store = new CFCacheStore({ ctx: mockCtx });
103
- const data = createTestData();
104
- await store.set("test-key", data, 60);
105
- // Execute waitUntil callback
106
- await mockCtx.waitUntil.mock.results[0].value;
107
- const result = await store.get("test-key");
108
- expect(result).not.toBeNull();
109
- expect(result.data).toEqual(data);
110
- expect(result.shouldRevalidate).toBe(false);
111
- });
112
- it("should set Cache-Control header with TTL", async () => {
113
- const mockCtx = createMockCtx();
114
- const store = new CFCacheStore({ ctx: mockCtx });
115
- const data = createTestData();
116
- await store.set("test-key", data, 60);
117
- await mockCtx.waitUntil.mock.results[0].value;
118
- // Uses caches.default by default
119
- const cache = mockCaches.default;
120
- const request = new Request("https://rsc-cache.internal.com/test-key");
121
- const response = await cache.match(request);
122
- expect(response?.headers.get("Cache-Control")).toBe("public, max-age=60");
123
- });
124
- it("should extend TTL with SWR window", async () => {
125
- const mockCtx = createMockCtx();
126
- const store = new CFCacheStore({ ctx: mockCtx });
127
- const data = createTestData();
128
- await store.set("test-key", data, 60, 300);
129
- await mockCtx.waitUntil.mock.results[0].value;
130
- const cache = mockCaches.default;
131
- const request = new Request("https://rsc-cache.internal.com/test-key");
132
- const response = await cache.match(request);
133
- expect(response?.headers.get("Cache-Control")).toBe("public, max-age=360");
134
- });
135
- it("should use store defaults for SWR if not provided", async () => {
136
- const mockCtx = createMockCtx();
137
- const store = new CFCacheStore({ ctx: mockCtx, defaults: { swr: 120 } });
138
- const data = createTestData();
139
- await store.set("test-key", data, 60);
140
- await mockCtx.waitUntil.mock.results[0].value;
141
- const cache = mockCaches.default;
142
- const request = new Request("https://rsc-cache.internal.com/test-key");
143
- const response = await cache.match(request);
144
- expect(response?.headers.get("Cache-Control")).toBe("public, max-age=180");
145
- });
146
- it("should use named cache when namespace is provided", async () => {
147
- const mockCtx = createMockCtx();
148
- const store = new CFCacheStore({ ctx: mockCtx, namespace: "custom-cache" });
149
- const data = createTestData();
150
- await store.set("test-key", data, 60);
151
- await mockCtx.waitUntil.mock.results[0].value;
152
- const cache = await mockCaches.open("custom-cache");
153
- const request = new Request("https://rsc-cache.internal.com/test-key");
154
- const response = await cache.match(request);
155
- expect(response?.headers.get("Cache-Control")).toBe("public, max-age=60");
156
- });
157
- it("should use waitUntil for non-blocking writes", async () => {
158
- const mockCtx = createMockCtx();
159
- const store = new CFCacheStore({ ctx: mockCtx });
160
- const data = createTestData();
161
- await store.set("test-key", data, 60);
162
- expect(mockCtx.waitUntil).toHaveBeenCalledTimes(1);
163
- expect(mockCtx.waitUntil).toHaveBeenCalledWith(expect.any(Promise));
164
- // Wait for the write to complete
165
- await mockCtx.waitUntil.mock.results[0].value;
166
- // Now the entry should be in cache
167
- const result = await store.get("test-key");
168
- expect(result).not.toBeNull();
169
- });
170
- });
171
- describe("staleness headers", () => {
172
- it("should set stale-at header based on TTL", async () => {
173
- vi.setSystemTime(new Date("2024-01-01T00:00:00Z"));
174
- const mockCtx = createMockCtx();
175
- const store = new CFCacheStore({ ctx: mockCtx });
176
- const data = createTestData();
177
- await store.set("test-key", data, 60);
178
- await mockCtx.waitUntil.mock.results[0].value;
179
- const cache = mockCaches.default;
180
- const request = new Request("https://rsc-cache.internal.com/test-key");
181
- const response = await cache.match(request);
182
- const staleAt = Number(response?.headers.get(CACHE_STALE_AT_HEADER));
183
- const expectedStaleAt = Date.now() + 60 * 1000;
184
- expect(staleAt).toBe(expectedStaleAt);
185
- });
186
- it("should set status header to HIT", async () => {
187
- const mockCtx = createMockCtx();
188
- const store = new CFCacheStore({ ctx: mockCtx });
189
- const data = createTestData();
190
- await store.set("test-key", data, 60);
191
- await mockCtx.waitUntil.mock.results[0].value;
192
- const cache = mockCaches.default;
193
- const request = new Request("https://rsc-cache.internal.com/test-key");
194
- const response = await cache.match(request);
195
- expect(response?.headers.get(CACHE_STATUS_HEADER)).toBe("HIT");
196
- });
197
- });
198
- describe("staleness detection and atomic revalidation", () => {
199
- it("should return shouldRevalidate=false for fresh entries", async () => {
200
- vi.setSystemTime(new Date("2024-01-01T00:00:00Z"));
201
- const mockCtx = createMockCtx();
202
- const store = new CFCacheStore({ ctx: mockCtx });
203
- const data = createTestData();
204
- await store.set("test-key", data, 60);
205
- await mockCtx.waitUntil.mock.results[0].value;
206
- // Still fresh
207
- vi.advanceTimersByTime(30 * 1000);
208
- const result = await store.get("test-key");
209
- expect(result?.shouldRevalidate).toBe(false);
210
- });
211
- it("should return shouldRevalidate=true and atomically mark REVALIDATING for stale entries", async () => {
212
- vi.setSystemTime(new Date("2024-01-01T00:00:00Z"));
213
- const mockCtx = createMockCtx();
214
- const store = new CFCacheStore({ ctx: mockCtx });
215
- const data = createTestData();
216
- await store.set("test-key", data, 60, 300);
217
- await mockCtx.waitUntil.mock.results[0].value;
218
- // Past TTL but within SWR window
219
- vi.advanceTimersByTime(120 * 1000);
220
- // First get should return shouldRevalidate=true and mark as REVALIDATING
221
- const result = await store.get("test-key");
222
- expect(result?.shouldRevalidate).toBe(true);
223
- // Verify the entry is now marked as REVALIDATING
224
- const cache = mockCaches.default;
225
- const request = new Request("https://rsc-cache.internal.com/" + encodeURIComponent("test-key"));
226
- const response = await cache.match(request);
227
- expect(response?.headers.get(CACHE_STATUS_HEADER)).toBe("REVALIDATING");
228
- });
229
- it("should return shouldRevalidate=false when already REVALIDATING", async () => {
230
- vi.setSystemTime(new Date("2024-01-01T00:00:00Z"));
231
- const mockCtx = createMockCtx();
232
- const store = new CFCacheStore({ ctx: mockCtx });
233
- const data = createTestData();
234
- await store.set("test-key", data, 60, 300);
235
- await mockCtx.waitUntil.mock.results[0].value;
236
- // Make it stale
237
- vi.advanceTimersByTime(120 * 1000);
238
- // First get - atomically marks as REVALIDATING
239
- const result1 = await store.get("test-key");
240
- expect(result1?.shouldRevalidate).toBe(true);
241
- // Second get - already REVALIDATING, should not trigger again
242
- const result2 = await store.get("test-key");
243
- expect(result2?.shouldRevalidate).toBe(false);
244
- });
245
- it("should prevent thundering herd with sequential requests", async () => {
246
- // Note: Real thundering herd prevention relies on CF Cache API's atomic semantics.
247
- // This test verifies sequential requests work correctly - first triggers revalidation,
248
- // subsequent ones see REVALIDATING status and don't trigger again.
249
- vi.setSystemTime(new Date("2024-01-01T00:00:00Z"));
250
- const mockCtx = createMockCtx();
251
- const store = new CFCacheStore({ ctx: mockCtx });
252
- const data = createTestData();
253
- await store.set("test-key", data, 60, 300);
254
- await mockCtx.waitUntil.mock.results[0].value;
255
- // Make it stale
256
- vi.advanceTimersByTime(120 * 1000);
257
- // Sequential requests - first triggers revalidation
258
- const result1 = await store.get("test-key");
259
- expect(result1?.shouldRevalidate).toBe(true);
260
- expect(result1?.data).toBeDefined();
261
- // Subsequent requests see REVALIDATING status
262
- const result2 = await store.get("test-key");
263
- expect(result2?.shouldRevalidate).toBe(false);
264
- expect(result2?.data).toBeDefined();
265
- const result3 = await store.get("test-key");
266
- expect(result3?.shouldRevalidate).toBe(false);
267
- expect(result3?.data).toBeDefined();
268
- });
269
- });
270
- describe("delete", () => {
271
- it("should delete existing entry", async () => {
272
- const mockCtx = createMockCtx();
273
- const store = new CFCacheStore({ ctx: mockCtx });
274
- const data = createTestData();
275
- await store.set("test-key", data, 60);
276
- await mockCtx.waitUntil.mock.results[0].value;
277
- const deleted = await store.delete("test-key");
278
- expect(deleted).toBe(true);
279
- const result = await store.get("test-key");
280
- expect(result).toBeNull();
281
- });
282
- it("should return false for non-existent entry", async () => {
283
- const store = new CFCacheStore({ ctx: createMockCtx() });
284
- const deleted = await store.delete("missing-key");
285
- expect(deleted).toBe(false);
286
- });
287
- });
288
- describe("key encoding", () => {
289
- it("should handle special characters in keys", async () => {
290
- const mockCtx = createMockCtx();
291
- const store = new CFCacheStore({ ctx: mockCtx });
292
- const data = createTestData();
293
- const key = "route:products/category=electronics&page=1";
294
- await store.set(key, data, 60);
295
- await mockCtx.waitUntil.mock.results[0].value;
296
- const result = await store.get(key);
297
- expect(result).not.toBeNull();
298
- expect(result.data).toEqual(data);
299
- });
300
- });
301
- describe("baseUrl configuration", () => {
302
- it("should use explicit baseUrl when provided", async () => {
303
- const mockCtx = createMockCtx();
304
- const store = new CFCacheStore({
305
- ctx: mockCtx,
306
- baseUrl: "https://custom.example.com/",
307
- });
308
- const data = createTestData();
309
- await store.set("custom-key", data, 60);
310
- await mockCtx.waitUntil.mock.results[0].value;
311
- // Verify round-trip works with custom baseUrl
312
- const result = await store.get("custom-key");
313
- expect(result).not.toBeNull();
314
- expect(result.data).toEqual(data);
315
- });
316
- it("should use fallback when no requestContext available", async () => {
317
- // Default behavior when getRequestContext returns null
318
- const mockCtx = createMockCtx();
319
- const store = new CFCacheStore({ ctx: mockCtx });
320
- const data = createTestData();
321
- await store.set("fallback-key", data, 60);
322
- await mockCtx.waitUntil.mock.results[0].value;
323
- // Verify round-trip works with fallback baseUrl
324
- const result = await store.get("fallback-key");
325
- expect(result).not.toBeNull();
326
- expect(result.data).toEqual(data);
327
- });
328
- });
329
- });
330
- //# sourceMappingURL=cf-cache-store.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cf-cache-store.test.js","sourceRoot":"","sources":["../../../../src/cache/cf/__tests__/cf-cache-store.test.ts"],"names":[],"mappings":"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"}
@@ -1,165 +0,0 @@
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.
10
- * Handles SWR atomically - get() checks staleness and marks REVALIDATING in one operation.
11
- *
12
- * Features:
13
- * - Extended TTL for SWR window (max-age = ttl + swr)
14
- * - Staleness via x-edge-cache-stale-at header
15
- * - Atomic REVALIDATING status for thundering herd prevention
16
- * - Non-blocking writes via waitUntil
17
- */
18
- import type { SegmentCacheStore, CachedEntryData, CacheDefaults, CacheGetResult } from "../types.js";
19
- import { type RequestContext } from "../../server/request-context.js";
20
- /** Header storing timestamp when entry becomes stale */
21
- export declare const CACHE_STALE_AT_HEADER = "x-edge-cache-stale-at";
22
- /** Header storing cache status: HIT | REVALIDATING */
23
- export declare const CACHE_STATUS_HEADER = "x-edge-cache-status";
24
- /**
25
- * Maximum age in seconds for REVALIDATING status before allowing new revalidation.
26
- * After this period, a stale entry in REVALIDATING status will trigger revalidation again.
27
- * @internal
28
- */
29
- export declare const MAX_REVALIDATION_INTERVAL = 30;
30
- /**
31
- * Cloudflare Workers ExecutionContext (subset we need)
32
- */
33
- export interface ExecutionContext {
34
- waitUntil(promise: Promise<any>): void;
35
- passThroughOnException(): void;
36
- }
37
- export interface CFCacheStoreOptions<TEnv = unknown> {
38
- /**
39
- * Cache namespace. If not provided, uses caches.default (recommended).
40
- * Only set this if you need isolated cache storage.
41
- */
42
- namespace?: string;
43
- /**
44
- * Base URL for cache keys.
45
- *
46
- * If not provided, derives from request hostname via requestContext:
47
- * - Production domains → uses `https://{hostname}/`
48
- * - Dev/preview (localhost, workers.dev, pages.dev) → uses internal fallback URL
49
- */
50
- baseUrl?: string;
51
- /** Default cache options */
52
- defaults?: CacheDefaults;
53
- /**
54
- * Cloudflare ExecutionContext for non-blocking cache writes.
55
- * Pass the `ctx` from your worker's fetch handler.
56
- *
57
- * @example
58
- * ```typescript
59
- * new CFCacheStore({ ctx: env.ctx })
60
- * ```
61
- */
62
- ctx: ExecutionContext;
63
- /**
64
- * Cache version string override. When this changes, all cached entries are
65
- * effectively invalidated (new keys won't match old entries).
66
- *
67
- * Defaults to the auto-generated VERSION from `rsc-router:version` virtual module.
68
- * Only set this if you need a custom versioning strategy.
69
- */
70
- version?: string;
71
- /**
72
- * Custom key generator applied to all cache operations.
73
- * Receives the full RequestContext (including env) and the default-generated key.
74
- * Return value becomes the final cache key (unless route overrides with `key` option).
75
- *
76
- * @example Using headers for user segmentation
77
- * ```typescript
78
- * keyGenerator: (ctx, defaultKey) => {
79
- * const segment = ctx.request.headers.get('x-user-segment') || 'default';
80
- * return `${segment}:${defaultKey}`;
81
- * }
82
- * ```
83
- *
84
- * @example Using env bindings for multi-region
85
- * ```typescript
86
- * keyGenerator: (ctx, defaultKey) => {
87
- * const region = ctx.env.REGION || 'us';
88
- * return `${region}:${defaultKey}`;
89
- * }
90
- * ```
91
- *
92
- * @example Using cookies for locale-aware caching
93
- * ```typescript
94
- * keyGenerator: (ctx, defaultKey) => {
95
- * const locale = ctx.cookie('locale') || 'en';
96
- * return `${locale}:${defaultKey}`;
97
- * }
98
- * ```
99
- */
100
- keyGenerator?: (ctx: RequestContext<TEnv>, defaultKey: string) => string | Promise<string>;
101
- }
102
- /**
103
- * Cache status values for the x-edge-cache-status header.
104
- * @internal
105
- */
106
- export type CacheStatus = "HIT" | "REVALIDATING";
107
- export declare class CFCacheStore<TEnv = unknown> implements SegmentCacheStore<TEnv> {
108
- readonly defaults?: CacheDefaults;
109
- readonly keyGenerator?: (ctx: RequestContext<TEnv>, defaultKey: string) => string | Promise<string>;
110
- private readonly namespace?;
111
- private readonly baseUrl;
112
- private readonly waitUntil?;
113
- private readonly version?;
114
- constructor(options: CFCacheStoreOptions<TEnv>);
115
- /**
116
- * Derive base URL from request hostname via requestContext.
117
- * Uses internal fallback for dev/preview environments.
118
- * @internal
119
- */
120
- private deriveBaseUrl;
121
- /**
122
- * Get the cache instance - uses caches.default unless namespace is specified.
123
- * @internal
124
- */
125
- private getCache;
126
- /**
127
- * Get cached entry data by key.
128
- *
129
- * Handles SWR atomically:
130
- * - If stale and not already revalidating, marks as REVALIDATING and returns shouldRevalidate: true
131
- * - If already REVALIDATING (and recent), returns shouldRevalidate: false
132
- * - If fresh, returns shouldRevalidate: false
133
- *
134
- * The atomic mark prevents thundering herd - only first request triggers revalidation.
135
- */
136
- get(key: string): Promise<CacheGetResult | null>;
137
- /**
138
- * Store entry data with TTL and optional SWR window.
139
- * Uses waitUntil for non-blocking write when available.
140
- */
141
- set(key: string, data: CachedEntryData, ttl: number, swr?: number): Promise<void>;
142
- /**
143
- * Delete a cached entry
144
- */
145
- delete(key: string): Promise<boolean>;
146
- /**
147
- * Get a cached Response by key (for document-level caching).
148
- * Returns the response and whether it should be revalidated (SWR).
149
- */
150
- getResponse(key: string): Promise<{
151
- response: Response;
152
- shouldRevalidate: boolean;
153
- } | null>;
154
- /**
155
- * Store a Response with TTL and optional SWR window (for document-level caching).
156
- */
157
- putResponse(key: string, response: Response, ttl: number, swr?: number): Promise<void>;
158
- /**
159
- * Convert string key to Request object for CF Cache API.
160
- * Includes version in URL if specified (for cache invalidation on code changes).
161
- * @internal
162
- */
163
- private keyToRequest;
164
- }
165
- //# sourceMappingURL=cf-cache-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cf-cache-store.d.ts","sourceRoot":"","sources":["../../../src/cache/cf/cf-cache-store.ts"],"names":[],"mappings":"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"}