@rangojs/router 0.0.0-experimental.37 → 0.0.0-experimental.380dd010

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 (843) hide show
  1. package/dist/bin/rango.js +3 -2
  2. package/dist/vite/index.js +131 -196
  3. package/package.json +1 -1
  4. package/skills/caching/SKILL.md +37 -4
  5. package/src/browser/navigation-bridge.ts +1 -3
  6. package/src/browser/navigation-client.ts +70 -24
  7. package/src/browser/navigation-transaction.ts +11 -9
  8. package/src/browser/partial-update.ts +39 -9
  9. package/src/browser/prefetch/cache.ts +54 -2
  10. package/src/browser/prefetch/fetch.ts +22 -12
  11. package/src/browser/prefetch/queue.ts +53 -13
  12. package/src/browser/react/Link.tsx +9 -1
  13. package/src/browser/react/NavigationProvider.tsx +27 -0
  14. package/src/browser/scroll-restoration.ts +33 -32
  15. package/src/browser/types.ts +9 -0
  16. package/src/build/route-types/router-processing.ts +12 -2
  17. package/src/cache/cache-scope.ts +2 -2
  18. package/src/cache/cf/cf-cache-store.ts +453 -11
  19. package/src/cache/cf/index.ts +5 -1
  20. package/src/cache/index.ts +1 -0
  21. package/src/route-definition/redirect.ts +2 -2
  22. package/src/route-map-builder.ts +7 -1
  23. package/src/router/find-match.ts +4 -2
  24. package/src/router/intercept-resolution.ts +2 -0
  25. package/src/router/lazy-includes.ts +2 -0
  26. package/src/router/logging.ts +4 -1
  27. package/src/router/manifest.ts +3 -1
  28. package/src/router/match-middleware/segment-resolution.ts +1 -0
  29. package/src/router/middleware.ts +2 -1
  30. package/src/router/router-context.ts +5 -1
  31. package/src/router/segment-resolution/revalidation.ts +4 -1
  32. package/src/router/segment-wrappers.ts +2 -0
  33. package/src/router.ts +4 -0
  34. package/src/server/request-context.ts +10 -4
  35. package/src/types/route-entry.ts +7 -0
  36. package/src/vite/discovery/state.ts +0 -2
  37. package/src/vite/plugin-types.ts +0 -83
  38. package/src/vite/plugins/expose-action-id.ts +1 -3
  39. package/src/vite/rango.ts +144 -209
  40. package/src/vite/router-discovery.ts +0 -8
  41. package/dist/__internal.d.ts +0 -83
  42. package/dist/__internal.d.ts.map +0 -1
  43. package/dist/__internal.js +0 -19
  44. package/dist/__internal.js.map +0 -1
  45. package/dist/__mocks__/version.d.ts +0 -7
  46. package/dist/__mocks__/version.d.ts.map +0 -1
  47. package/dist/__mocks__/version.js +0 -7
  48. package/dist/__mocks__/version.js.map +0 -1
  49. package/dist/__tests__/client-href.test.d.ts +0 -2
  50. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  51. package/dist/__tests__/client-href.test.js +0 -74
  52. package/dist/__tests__/client-href.test.js.map +0 -1
  53. package/dist/__tests__/component-utils.test.d.ts +0 -2
  54. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  55. package/dist/__tests__/component-utils.test.js +0 -51
  56. package/dist/__tests__/component-utils.test.js.map +0 -1
  57. package/dist/__tests__/event-controller.test.d.ts +0 -2
  58. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  59. package/dist/__tests__/event-controller.test.js +0 -538
  60. package/dist/__tests__/event-controller.test.js.map +0 -1
  61. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  62. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  63. package/dist/__tests__/helpers/route-tree.js +0 -374
  64. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  65. package/dist/__tests__/match-result.test.d.ts +0 -2
  66. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  67. package/dist/__tests__/match-result.test.js +0 -154
  68. package/dist/__tests__/match-result.test.js.map +0 -1
  69. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  70. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  71. package/dist/__tests__/navigation-store.test.js +0 -440
  72. package/dist/__tests__/navigation-store.test.js.map +0 -1
  73. package/dist/__tests__/partial-update.test.d.ts +0 -2
  74. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  75. package/dist/__tests__/partial-update.test.js +0 -1009
  76. package/dist/__tests__/partial-update.test.js.map +0 -1
  77. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  78. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  79. package/dist/__tests__/reverse-types.test.js +0 -656
  80. package/dist/__tests__/reverse-types.test.js.map +0 -1
  81. package/dist/__tests__/route-definition.test.d.ts +0 -2
  82. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  83. package/dist/__tests__/route-definition.test.js +0 -55
  84. package/dist/__tests__/route-definition.test.js.map +0 -1
  85. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  86. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  87. package/dist/__tests__/router-helpers.test.js +0 -377
  88. package/dist/__tests__/router-helpers.test.js.map +0 -1
  89. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  90. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  91. package/dist/__tests__/router-integration-2.test.js +0 -426
  92. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  93. package/dist/__tests__/router-integration.test.d.ts +0 -2
  94. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  95. package/dist/__tests__/router-integration.test.js +0 -1051
  96. package/dist/__tests__/router-integration.test.js.map +0 -1
  97. package/dist/__tests__/search-params.test.d.ts +0 -5
  98. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  99. package/dist/__tests__/search-params.test.js +0 -306
  100. package/dist/__tests__/search-params.test.js.map +0 -1
  101. package/dist/__tests__/segment-system.test.d.ts +0 -2
  102. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  103. package/dist/__tests__/segment-system.test.js +0 -627
  104. package/dist/__tests__/segment-system.test.js.map +0 -1
  105. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  106. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  107. package/dist/__tests__/static-handler-types.test.js +0 -63
  108. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  109. package/dist/__tests__/urls.test.d.ts +0 -2
  110. package/dist/__tests__/urls.test.d.ts.map +0 -1
  111. package/dist/__tests__/urls.test.js +0 -421
  112. package/dist/__tests__/urls.test.js.map +0 -1
  113. package/dist/__tests__/use-mount.test.d.ts +0 -2
  114. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  115. package/dist/__tests__/use-mount.test.js +0 -35
  116. package/dist/__tests__/use-mount.test.js.map +0 -1
  117. package/dist/bin/rango.d.ts +0 -2
  118. package/dist/bin/rango.d.ts.map +0 -1
  119. package/dist/bin/rango.js.map +0 -1
  120. package/dist/browser/event-controller.d.ts +0 -191
  121. package/dist/browser/event-controller.d.ts.map +0 -1
  122. package/dist/browser/event-controller.js +0 -559
  123. package/dist/browser/event-controller.js.map +0 -1
  124. package/dist/browser/index.d.ts +0 -2
  125. package/dist/browser/index.d.ts.map +0 -1
  126. package/dist/browser/index.js +0 -14
  127. package/dist/browser/index.js.map +0 -1
  128. package/dist/browser/link-interceptor.d.ts +0 -38
  129. package/dist/browser/link-interceptor.d.ts.map +0 -1
  130. package/dist/browser/link-interceptor.js +0 -99
  131. package/dist/browser/link-interceptor.js.map +0 -1
  132. package/dist/browser/logging.d.ts +0 -10
  133. package/dist/browser/logging.d.ts.map +0 -1
  134. package/dist/browser/logging.js +0 -29
  135. package/dist/browser/logging.js.map +0 -1
  136. package/dist/browser/lru-cache.d.ts +0 -17
  137. package/dist/browser/lru-cache.d.ts.map +0 -1
  138. package/dist/browser/lru-cache.js +0 -50
  139. package/dist/browser/lru-cache.js.map +0 -1
  140. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  141. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  142. package/dist/browser/merge-segment-loaders.js +0 -102
  143. package/dist/browser/merge-segment-loaders.js.map +0 -1
  144. package/dist/browser/navigation-bridge.d.ts +0 -102
  145. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  146. package/dist/browser/navigation-bridge.js +0 -708
  147. package/dist/browser/navigation-bridge.js.map +0 -1
  148. package/dist/browser/navigation-client.d.ts +0 -25
  149. package/dist/browser/navigation-client.d.ts.map +0 -1
  150. package/dist/browser/navigation-client.js +0 -157
  151. package/dist/browser/navigation-client.js.map +0 -1
  152. package/dist/browser/navigation-store.d.ts +0 -101
  153. package/dist/browser/navigation-store.d.ts.map +0 -1
  154. package/dist/browser/navigation-store.js +0 -625
  155. package/dist/browser/navigation-store.js.map +0 -1
  156. package/dist/browser/partial-update.d.ts +0 -75
  157. package/dist/browser/partial-update.d.ts.map +0 -1
  158. package/dist/browser/partial-update.js +0 -426
  159. package/dist/browser/partial-update.js.map +0 -1
  160. package/dist/browser/react/Link.d.ts +0 -86
  161. package/dist/browser/react/Link.d.ts.map +0 -1
  162. package/dist/browser/react/Link.js +0 -128
  163. package/dist/browser/react/Link.js.map +0 -1
  164. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  165. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  166. package/dist/browser/react/NavigationProvider.js +0 -216
  167. package/dist/browser/react/NavigationProvider.js.map +0 -1
  168. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  169. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  170. package/dist/browser/react/ScrollRestoration.js +0 -57
  171. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  172. package/dist/browser/react/context.d.ts +0 -46
  173. package/dist/browser/react/context.d.ts.map +0 -1
  174. package/dist/browser/react/context.js +0 -10
  175. package/dist/browser/react/context.js.map +0 -1
  176. package/dist/browser/react/index.d.ts +0 -11
  177. package/dist/browser/react/index.d.ts.map +0 -1
  178. package/dist/browser/react/index.js +0 -22
  179. package/dist/browser/react/index.js.map +0 -1
  180. package/dist/browser/react/location-state-shared.d.ts +0 -63
  181. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  182. package/dist/browser/react/location-state-shared.js +0 -81
  183. package/dist/browser/react/location-state-shared.js.map +0 -1
  184. package/dist/browser/react/location-state.d.ts +0 -23
  185. package/dist/browser/react/location-state.d.ts.map +0 -1
  186. package/dist/browser/react/location-state.js +0 -29
  187. package/dist/browser/react/location-state.js.map +0 -1
  188. package/dist/browser/react/mount-context.d.ts +0 -24
  189. package/dist/browser/react/mount-context.d.ts.map +0 -1
  190. package/dist/browser/react/mount-context.js +0 -24
  191. package/dist/browser/react/mount-context.js.map +0 -1
  192. package/dist/browser/react/use-action.d.ts +0 -64
  193. package/dist/browser/react/use-action.d.ts.map +0 -1
  194. package/dist/browser/react/use-action.js +0 -134
  195. package/dist/browser/react/use-action.js.map +0 -1
  196. package/dist/browser/react/use-client-cache.d.ts +0 -41
  197. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  198. package/dist/browser/react/use-client-cache.js +0 -39
  199. package/dist/browser/react/use-client-cache.js.map +0 -1
  200. package/dist/browser/react/use-handle.d.ts +0 -31
  201. package/dist/browser/react/use-handle.d.ts.map +0 -1
  202. package/dist/browser/react/use-handle.js +0 -144
  203. package/dist/browser/react/use-handle.js.map +0 -1
  204. package/dist/browser/react/use-href.d.ts +0 -33
  205. package/dist/browser/react/use-href.d.ts.map +0 -1
  206. package/dist/browser/react/use-href.js +0 -39
  207. package/dist/browser/react/use-href.js.map +0 -1
  208. package/dist/browser/react/use-link-status.d.ts +0 -37
  209. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  210. package/dist/browser/react/use-link-status.js +0 -99
  211. package/dist/browser/react/use-link-status.js.map +0 -1
  212. package/dist/browser/react/use-mount.d.ts +0 -25
  213. package/dist/browser/react/use-mount.d.ts.map +0 -1
  214. package/dist/browser/react/use-mount.js +0 -30
  215. package/dist/browser/react/use-mount.js.map +0 -1
  216. package/dist/browser/react/use-navigation.d.ts +0 -27
  217. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  218. package/dist/browser/react/use-navigation.js +0 -87
  219. package/dist/browser/react/use-navigation.js.map +0 -1
  220. package/dist/browser/react/use-segments.d.ts +0 -38
  221. package/dist/browser/react/use-segments.d.ts.map +0 -1
  222. package/dist/browser/react/use-segments.js +0 -130
  223. package/dist/browser/react/use-segments.js.map +0 -1
  224. package/dist/browser/request-controller.d.ts +0 -26
  225. package/dist/browser/request-controller.d.ts.map +0 -1
  226. package/dist/browser/request-controller.js +0 -147
  227. package/dist/browser/request-controller.js.map +0 -1
  228. package/dist/browser/rsc-router.d.ts +0 -129
  229. package/dist/browser/rsc-router.d.ts.map +0 -1
  230. package/dist/browser/rsc-router.js +0 -195
  231. package/dist/browser/rsc-router.js.map +0 -1
  232. package/dist/browser/scroll-restoration.d.ts +0 -93
  233. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  234. package/dist/browser/scroll-restoration.js +0 -321
  235. package/dist/browser/scroll-restoration.js.map +0 -1
  236. package/dist/browser/segment-structure-assert.d.ts +0 -17
  237. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  238. package/dist/browser/segment-structure-assert.js +0 -59
  239. package/dist/browser/segment-structure-assert.js.map +0 -1
  240. package/dist/browser/server-action-bridge.d.ts +0 -26
  241. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  242. package/dist/browser/server-action-bridge.js +0 -668
  243. package/dist/browser/server-action-bridge.js.map +0 -1
  244. package/dist/browser/shallow.d.ts +0 -12
  245. package/dist/browser/shallow.d.ts.map +0 -1
  246. package/dist/browser/shallow.js +0 -34
  247. package/dist/browser/shallow.js.map +0 -1
  248. package/dist/browser/types.d.ts +0 -369
  249. package/dist/browser/types.d.ts.map +0 -1
  250. package/dist/browser/types.js +0 -2
  251. package/dist/browser/types.js.map +0 -1
  252. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  253. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  254. package/dist/build/__tests__/generate-cli.test.js +0 -237
  255. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  256. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  257. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  258. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  259. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  260. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  261. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  262. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  263. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  264. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  265. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  266. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  267. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  268. package/dist/build/generate-manifest.d.ts +0 -81
  269. package/dist/build/generate-manifest.d.ts.map +0 -1
  270. package/dist/build/generate-manifest.js +0 -276
  271. package/dist/build/generate-manifest.js.map +0 -1
  272. package/dist/build/generate-route-types.d.ts +0 -115
  273. package/dist/build/generate-route-types.d.ts.map +0 -1
  274. package/dist/build/generate-route-types.js +0 -740
  275. package/dist/build/generate-route-types.js.map +0 -1
  276. package/dist/build/index.d.ts +0 -21
  277. package/dist/build/index.d.ts.map +0 -1
  278. package/dist/build/index.js +0 -21
  279. package/dist/build/index.js.map +0 -1
  280. package/dist/build/route-trie.d.ts +0 -71
  281. package/dist/build/route-trie.d.ts.map +0 -1
  282. package/dist/build/route-trie.js +0 -175
  283. package/dist/build/route-trie.js.map +0 -1
  284. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  285. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  286. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  287. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  288. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  289. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  290. package/dist/cache/__tests__/document-cache.test.js +0 -345
  291. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  292. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  293. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  294. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  295. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  296. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  297. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  298. package/dist/cache/__tests__/memory-store.test.js +0 -367
  299. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  300. package/dist/cache/cache-scope.d.ts +0 -102
  301. package/dist/cache/cache-scope.d.ts.map +0 -1
  302. package/dist/cache/cache-scope.js +0 -440
  303. package/dist/cache/cache-scope.js.map +0 -1
  304. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  305. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  306. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  307. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  308. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  309. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  310. package/dist/cache/cf/cf-cache-store.js +0 -242
  311. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  312. package/dist/cache/cf/index.d.ts +0 -14
  313. package/dist/cache/cf/index.d.ts.map +0 -1
  314. package/dist/cache/cf/index.js +0 -17
  315. package/dist/cache/cf/index.js.map +0 -1
  316. package/dist/cache/document-cache.d.ts +0 -64
  317. package/dist/cache/document-cache.d.ts.map +0 -1
  318. package/dist/cache/document-cache.js +0 -228
  319. package/dist/cache/document-cache.js.map +0 -1
  320. package/dist/cache/index.d.ts +0 -19
  321. package/dist/cache/index.d.ts.map +0 -1
  322. package/dist/cache/index.js +0 -21
  323. package/dist/cache/index.js.map +0 -1
  324. package/dist/cache/memory-segment-store.d.ts +0 -110
  325. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  326. package/dist/cache/memory-segment-store.js +0 -117
  327. package/dist/cache/memory-segment-store.js.map +0 -1
  328. package/dist/cache/memory-store.d.ts +0 -41
  329. package/dist/cache/memory-store.d.ts.map +0 -1
  330. package/dist/cache/memory-store.js +0 -191
  331. package/dist/cache/memory-store.js.map +0 -1
  332. package/dist/cache/types.d.ts +0 -317
  333. package/dist/cache/types.d.ts.map +0 -1
  334. package/dist/cache/types.js +0 -12
  335. package/dist/cache/types.js.map +0 -1
  336. package/dist/client.d.ts +0 -248
  337. package/dist/client.d.ts.map +0 -1
  338. package/dist/client.js +0 -367
  339. package/dist/client.js.map +0 -1
  340. package/dist/client.rsc.d.ts +0 -26
  341. package/dist/client.rsc.d.ts.map +0 -1
  342. package/dist/client.rsc.js +0 -46
  343. package/dist/client.rsc.js.map +0 -1
  344. package/dist/component-utils.d.ts +0 -36
  345. package/dist/component-utils.d.ts.map +0 -1
  346. package/dist/component-utils.js +0 -61
  347. package/dist/component-utils.js.map +0 -1
  348. package/dist/components/DefaultDocument.d.ts +0 -13
  349. package/dist/components/DefaultDocument.d.ts.map +0 -1
  350. package/dist/components/DefaultDocument.js +0 -15
  351. package/dist/components/DefaultDocument.js.map +0 -1
  352. package/dist/debug.d.ts +0 -58
  353. package/dist/debug.d.ts.map +0 -1
  354. package/dist/debug.js +0 -157
  355. package/dist/debug.js.map +0 -1
  356. package/dist/default-error-boundary.d.ts +0 -11
  357. package/dist/default-error-boundary.d.ts.map +0 -1
  358. package/dist/default-error-boundary.js +0 -45
  359. package/dist/default-error-boundary.js.map +0 -1
  360. package/dist/deps/browser.d.ts +0 -2
  361. package/dist/deps/browser.d.ts.map +0 -1
  362. package/dist/deps/browser.js +0 -3
  363. package/dist/deps/browser.js.map +0 -1
  364. package/dist/deps/html-stream-client.d.ts +0 -2
  365. package/dist/deps/html-stream-client.d.ts.map +0 -1
  366. package/dist/deps/html-stream-client.js +0 -3
  367. package/dist/deps/html-stream-client.js.map +0 -1
  368. package/dist/deps/html-stream-server.d.ts +0 -2
  369. package/dist/deps/html-stream-server.d.ts.map +0 -1
  370. package/dist/deps/html-stream-server.js +0 -3
  371. package/dist/deps/html-stream-server.js.map +0 -1
  372. package/dist/deps/rsc.d.ts +0 -2
  373. package/dist/deps/rsc.d.ts.map +0 -1
  374. package/dist/deps/rsc.js +0 -4
  375. package/dist/deps/rsc.js.map +0 -1
  376. package/dist/deps/ssr.d.ts +0 -2
  377. package/dist/deps/ssr.d.ts.map +0 -1
  378. package/dist/deps/ssr.js +0 -3
  379. package/dist/deps/ssr.js.map +0 -1
  380. package/dist/errors.d.ts +0 -174
  381. package/dist/errors.d.ts.map +0 -1
  382. package/dist/errors.js +0 -241
  383. package/dist/errors.js.map +0 -1
  384. package/dist/handle.d.ts +0 -78
  385. package/dist/handle.d.ts.map +0 -1
  386. package/dist/handle.js +0 -82
  387. package/dist/handle.js.map +0 -1
  388. package/dist/handles/MetaTags.d.ts +0 -14
  389. package/dist/handles/MetaTags.d.ts.map +0 -1
  390. package/dist/handles/MetaTags.js +0 -136
  391. package/dist/handles/MetaTags.js.map +0 -1
  392. package/dist/handles/index.d.ts +0 -6
  393. package/dist/handles/index.d.ts.map +0 -1
  394. package/dist/handles/index.js +0 -6
  395. package/dist/handles/index.js.map +0 -1
  396. package/dist/handles/meta.d.ts +0 -39
  397. package/dist/handles/meta.d.ts.map +0 -1
  398. package/dist/handles/meta.js +0 -202
  399. package/dist/handles/meta.js.map +0 -1
  400. package/dist/host/__tests__/errors.test.d.ts +0 -2
  401. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  402. package/dist/host/__tests__/errors.test.js +0 -76
  403. package/dist/host/__tests__/errors.test.js.map +0 -1
  404. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  405. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  406. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  407. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  408. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  409. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  410. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  411. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  412. package/dist/host/__tests__/router.test.d.ts +0 -2
  413. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  414. package/dist/host/__tests__/router.test.js +0 -241
  415. package/dist/host/__tests__/router.test.js.map +0 -1
  416. package/dist/host/__tests__/testing.test.d.ts +0 -2
  417. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  418. package/dist/host/__tests__/testing.test.js +0 -64
  419. package/dist/host/__tests__/testing.test.js.map +0 -1
  420. package/dist/host/__tests__/utils.test.d.ts +0 -2
  421. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  422. package/dist/host/__tests__/utils.test.js +0 -29
  423. package/dist/host/__tests__/utils.test.js.map +0 -1
  424. package/dist/host/cookie-handler.d.ts +0 -34
  425. package/dist/host/cookie-handler.d.ts.map +0 -1
  426. package/dist/host/cookie-handler.js +0 -124
  427. package/dist/host/cookie-handler.js.map +0 -1
  428. package/dist/host/errors.d.ts +0 -56
  429. package/dist/host/errors.d.ts.map +0 -1
  430. package/dist/host/errors.js +0 -79
  431. package/dist/host/errors.js.map +0 -1
  432. package/dist/host/index.d.ts +0 -29
  433. package/dist/host/index.d.ts.map +0 -1
  434. package/dist/host/index.js +0 -32
  435. package/dist/host/index.js.map +0 -1
  436. package/dist/host/pattern-matcher.d.ts +0 -36
  437. package/dist/host/pattern-matcher.d.ts.map +0 -1
  438. package/dist/host/pattern-matcher.js +0 -172
  439. package/dist/host/pattern-matcher.js.map +0 -1
  440. package/dist/host/router.d.ts +0 -26
  441. package/dist/host/router.d.ts.map +0 -1
  442. package/dist/host/router.js +0 -218
  443. package/dist/host/router.js.map +0 -1
  444. package/dist/host/testing.d.ts +0 -36
  445. package/dist/host/testing.d.ts.map +0 -1
  446. package/dist/host/testing.js +0 -55
  447. package/dist/host/testing.js.map +0 -1
  448. package/dist/host/types.d.ts +0 -115
  449. package/dist/host/types.d.ts.map +0 -1
  450. package/dist/host/types.js +0 -7
  451. package/dist/host/types.js.map +0 -1
  452. package/dist/host/utils.d.ts +0 -21
  453. package/dist/host/utils.d.ts.map +0 -1
  454. package/dist/host/utils.js +0 -23
  455. package/dist/host/utils.js.map +0 -1
  456. package/dist/href-client.d.ts +0 -131
  457. package/dist/href-client.d.ts.map +0 -1
  458. package/dist/href-client.js +0 -64
  459. package/dist/href-client.js.map +0 -1
  460. package/dist/href-context.d.ts +0 -29
  461. package/dist/href-context.d.ts.map +0 -1
  462. package/dist/href-context.js +0 -21
  463. package/dist/href-context.js.map +0 -1
  464. package/dist/index.d.ts +0 -73
  465. package/dist/index.d.ts.map +0 -1
  466. package/dist/index.js +0 -91
  467. package/dist/index.js.map +0 -1
  468. package/dist/index.rsc.d.ts +0 -32
  469. package/dist/index.rsc.d.ts.map +0 -1
  470. package/dist/index.rsc.js +0 -40
  471. package/dist/index.rsc.js.map +0 -1
  472. package/dist/internal-debug.d.ts +0 -2
  473. package/dist/internal-debug.d.ts.map +0 -1
  474. package/dist/internal-debug.js +0 -5
  475. package/dist/internal-debug.js.map +0 -1
  476. package/dist/loader.d.ts +0 -14
  477. package/dist/loader.d.ts.map +0 -1
  478. package/dist/loader.js +0 -20
  479. package/dist/loader.js.map +0 -1
  480. package/dist/loader.rsc.d.ts +0 -19
  481. package/dist/loader.rsc.d.ts.map +0 -1
  482. package/dist/loader.rsc.js +0 -99
  483. package/dist/loader.rsc.js.map +0 -1
  484. package/dist/network-error-thrower.d.ts +0 -17
  485. package/dist/network-error-thrower.d.ts.map +0 -1
  486. package/dist/network-error-thrower.js +0 -14
  487. package/dist/network-error-thrower.js.map +0 -1
  488. package/dist/outlet-context.d.ts +0 -13
  489. package/dist/outlet-context.d.ts.map +0 -1
  490. package/dist/outlet-context.js +0 -3
  491. package/dist/outlet-context.js.map +0 -1
  492. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  493. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  494. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  495. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  496. package/dist/prerender/param-hash.d.ts +0 -16
  497. package/dist/prerender/param-hash.d.ts.map +0 -1
  498. package/dist/prerender/param-hash.js +0 -36
  499. package/dist/prerender/param-hash.js.map +0 -1
  500. package/dist/prerender/store.d.ts +0 -38
  501. package/dist/prerender/store.d.ts.map +0 -1
  502. package/dist/prerender/store.js +0 -61
  503. package/dist/prerender/store.js.map +0 -1
  504. package/dist/prerender.d.ts +0 -66
  505. package/dist/prerender.d.ts.map +0 -1
  506. package/dist/prerender.js +0 -57
  507. package/dist/prerender.js.map +0 -1
  508. package/dist/reverse.d.ts +0 -196
  509. package/dist/reverse.d.ts.map +0 -1
  510. package/dist/reverse.js +0 -78
  511. package/dist/reverse.js.map +0 -1
  512. package/dist/root-error-boundary.d.ts +0 -33
  513. package/dist/root-error-boundary.d.ts.map +0 -1
  514. package/dist/root-error-boundary.js +0 -165
  515. package/dist/root-error-boundary.js.map +0 -1
  516. package/dist/route-content-wrapper.d.ts +0 -46
  517. package/dist/route-content-wrapper.d.ts.map +0 -1
  518. package/dist/route-content-wrapper.js +0 -77
  519. package/dist/route-content-wrapper.js.map +0 -1
  520. package/dist/route-definition.d.ts +0 -421
  521. package/dist/route-definition.d.ts.map +0 -1
  522. package/dist/route-definition.js +0 -868
  523. package/dist/route-definition.js.map +0 -1
  524. package/dist/route-map-builder.d.ts +0 -155
  525. package/dist/route-map-builder.d.ts.map +0 -1
  526. package/dist/route-map-builder.js +0 -237
  527. package/dist/route-map-builder.js.map +0 -1
  528. package/dist/route-types.d.ts +0 -165
  529. package/dist/route-types.d.ts.map +0 -1
  530. package/dist/route-types.js +0 -7
  531. package/dist/route-types.js.map +0 -1
  532. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  533. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  534. package/dist/router/__tests__/handler-context.test.js +0 -65
  535. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  536. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  537. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  538. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  539. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  540. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  541. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  542. package/dist/router/__tests__/match-context.test.js +0 -92
  543. package/dist/router/__tests__/match-context.test.js.map +0 -1
  544. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  545. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  546. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  547. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  548. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  549. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  550. package/dist/router/__tests__/match-result.test.js +0 -457
  551. package/dist/router/__tests__/match-result.test.js.map +0 -1
  552. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  553. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  554. package/dist/router/__tests__/on-error.test.js +0 -678
  555. package/dist/router/__tests__/on-error.test.js.map +0 -1
  556. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  557. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  558. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  559. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  560. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  561. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  562. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  563. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  564. package/dist/router/error-handling.d.ts +0 -77
  565. package/dist/router/error-handling.d.ts.map +0 -1
  566. package/dist/router/error-handling.js +0 -202
  567. package/dist/router/error-handling.js.map +0 -1
  568. package/dist/router/handler-context.d.ts +0 -20
  569. package/dist/router/handler-context.d.ts.map +0 -1
  570. package/dist/router/handler-context.js +0 -198
  571. package/dist/router/handler-context.js.map +0 -1
  572. package/dist/router/intercept-resolution.d.ts +0 -66
  573. package/dist/router/intercept-resolution.d.ts.map +0 -1
  574. package/dist/router/intercept-resolution.js +0 -246
  575. package/dist/router/intercept-resolution.js.map +0 -1
  576. package/dist/router/loader-resolution.d.ts +0 -64
  577. package/dist/router/loader-resolution.d.ts.map +0 -1
  578. package/dist/router/loader-resolution.js +0 -284
  579. package/dist/router/loader-resolution.js.map +0 -1
  580. package/dist/router/logging.d.ts +0 -15
  581. package/dist/router/logging.d.ts.map +0 -1
  582. package/dist/router/logging.js +0 -99
  583. package/dist/router/logging.js.map +0 -1
  584. package/dist/router/manifest.d.ts +0 -22
  585. package/dist/router/manifest.d.ts.map +0 -1
  586. package/dist/router/manifest.js +0 -181
  587. package/dist/router/manifest.js.map +0 -1
  588. package/dist/router/match-api.d.ts +0 -35
  589. package/dist/router/match-api.d.ts.map +0 -1
  590. package/dist/router/match-api.js +0 -406
  591. package/dist/router/match-api.js.map +0 -1
  592. package/dist/router/match-context.d.ts +0 -206
  593. package/dist/router/match-context.d.ts.map +0 -1
  594. package/dist/router/match-context.js +0 -17
  595. package/dist/router/match-context.js.map +0 -1
  596. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  597. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  598. package/dist/router/match-middleware/background-revalidation.js +0 -75
  599. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  600. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  601. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  602. package/dist/router/match-middleware/cache-lookup.js +0 -257
  603. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  604. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  605. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  606. package/dist/router/match-middleware/cache-store.js +0 -108
  607. package/dist/router/match-middleware/cache-store.js.map +0 -1
  608. package/dist/router/match-middleware/index.d.ts +0 -81
  609. package/dist/router/match-middleware/index.d.ts.map +0 -1
  610. package/dist/router/match-middleware/index.js +0 -80
  611. package/dist/router/match-middleware/index.js.map +0 -1
  612. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  613. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  614. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  615. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  616. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  617. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  618. package/dist/router/match-middleware/segment-resolution.js +0 -53
  619. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  620. package/dist/router/match-pipelines.d.ts +0 -147
  621. package/dist/router/match-pipelines.d.ts.map +0 -1
  622. package/dist/router/match-pipelines.js +0 -82
  623. package/dist/router/match-pipelines.js.map +0 -1
  624. package/dist/router/match-result.d.ts +0 -126
  625. package/dist/router/match-result.d.ts.map +0 -1
  626. package/dist/router/match-result.js +0 -93
  627. package/dist/router/match-result.js.map +0 -1
  628. package/dist/router/metrics.d.ts +0 -20
  629. package/dist/router/metrics.d.ts.map +0 -1
  630. package/dist/router/metrics.js +0 -47
  631. package/dist/router/metrics.js.map +0 -1
  632. package/dist/router/middleware.d.ts +0 -249
  633. package/dist/router/middleware.d.ts.map +0 -1
  634. package/dist/router/middleware.js +0 -434
  635. package/dist/router/middleware.js.map +0 -1
  636. package/dist/router/middleware.test.d.ts +0 -2
  637. package/dist/router/middleware.test.d.ts.map +0 -1
  638. package/dist/router/middleware.test.js +0 -816
  639. package/dist/router/middleware.test.js.map +0 -1
  640. package/dist/router/pattern-matching.d.ts +0 -149
  641. package/dist/router/pattern-matching.d.ts.map +0 -1
  642. package/dist/router/pattern-matching.js +0 -349
  643. package/dist/router/pattern-matching.js.map +0 -1
  644. package/dist/router/revalidation.d.ts +0 -44
  645. package/dist/router/revalidation.d.ts.map +0 -1
  646. package/dist/router/revalidation.js +0 -147
  647. package/dist/router/revalidation.js.map +0 -1
  648. package/dist/router/router-context.d.ts +0 -135
  649. package/dist/router/router-context.d.ts.map +0 -1
  650. package/dist/router/router-context.js +0 -36
  651. package/dist/router/router-context.js.map +0 -1
  652. package/dist/router/segment-resolution.d.ts +0 -127
  653. package/dist/router/segment-resolution.d.ts.map +0 -1
  654. package/dist/router/segment-resolution.js +0 -919
  655. package/dist/router/segment-resolution.js.map +0 -1
  656. package/dist/router/trie-matching.d.ts +0 -40
  657. package/dist/router/trie-matching.d.ts.map +0 -1
  658. package/dist/router/trie-matching.js +0 -127
  659. package/dist/router/trie-matching.js.map +0 -1
  660. package/dist/router/types.d.ts +0 -136
  661. package/dist/router/types.d.ts.map +0 -1
  662. package/dist/router/types.js +0 -7
  663. package/dist/router/types.js.map +0 -1
  664. package/dist/router.d.ts +0 -753
  665. package/dist/router.d.ts.map +0 -1
  666. package/dist/router.gen.d.ts +0 -6
  667. package/dist/router.gen.d.ts.map +0 -1
  668. package/dist/router.gen.js +0 -6
  669. package/dist/router.gen.js.map +0 -1
  670. package/dist/router.js +0 -1304
  671. package/dist/router.js.map +0 -1
  672. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  673. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  674. package/dist/rsc/__tests__/helpers.test.js +0 -140
  675. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  676. package/dist/rsc/handler.d.ts +0 -45
  677. package/dist/rsc/handler.d.ts.map +0 -1
  678. package/dist/rsc/handler.js +0 -1172
  679. package/dist/rsc/handler.js.map +0 -1
  680. package/dist/rsc/helpers.d.ts +0 -16
  681. package/dist/rsc/helpers.d.ts.map +0 -1
  682. package/dist/rsc/helpers.js +0 -55
  683. package/dist/rsc/helpers.js.map +0 -1
  684. package/dist/rsc/index.d.ts +0 -22
  685. package/dist/rsc/index.d.ts.map +0 -1
  686. package/dist/rsc/index.js +0 -23
  687. package/dist/rsc/index.js.map +0 -1
  688. package/dist/rsc/nonce.d.ts +0 -9
  689. package/dist/rsc/nonce.d.ts.map +0 -1
  690. package/dist/rsc/nonce.js +0 -18
  691. package/dist/rsc/nonce.js.map +0 -1
  692. package/dist/rsc/types.d.ts +0 -206
  693. package/dist/rsc/types.d.ts.map +0 -1
  694. package/dist/rsc/types.js +0 -8
  695. package/dist/rsc/types.js.map +0 -1
  696. package/dist/search-params.d.ts +0 -103
  697. package/dist/search-params.d.ts.map +0 -1
  698. package/dist/search-params.js +0 -74
  699. package/dist/search-params.js.map +0 -1
  700. package/dist/segment-system.d.ts +0 -75
  701. package/dist/segment-system.d.ts.map +0 -1
  702. package/dist/segment-system.js +0 -336
  703. package/dist/segment-system.js.map +0 -1
  704. package/dist/server/context.d.ts +0 -245
  705. package/dist/server/context.d.ts.map +0 -1
  706. package/dist/server/context.js +0 -197
  707. package/dist/server/context.js.map +0 -1
  708. package/dist/server/fetchable-loader-store.d.ts +0 -18
  709. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  710. package/dist/server/fetchable-loader-store.js +0 -18
  711. package/dist/server/fetchable-loader-store.js.map +0 -1
  712. package/dist/server/handle-store.d.ts +0 -85
  713. package/dist/server/handle-store.d.ts.map +0 -1
  714. package/dist/server/handle-store.js +0 -142
  715. package/dist/server/handle-store.js.map +0 -1
  716. package/dist/server/loader-registry.d.ts +0 -55
  717. package/dist/server/loader-registry.d.ts.map +0 -1
  718. package/dist/server/loader-registry.js +0 -132
  719. package/dist/server/loader-registry.js.map +0 -1
  720. package/dist/server/request-context.d.ts +0 -226
  721. package/dist/server/request-context.d.ts.map +0 -1
  722. package/dist/server/request-context.js +0 -290
  723. package/dist/server/request-context.js.map +0 -1
  724. package/dist/server/root-layout.d.ts +0 -4
  725. package/dist/server/root-layout.d.ts.map +0 -1
  726. package/dist/server/root-layout.js +0 -5
  727. package/dist/server/root-layout.js.map +0 -1
  728. package/dist/server.d.ts +0 -15
  729. package/dist/server.d.ts.map +0 -1
  730. package/dist/server.js +0 -20
  731. package/dist/server.js.map +0 -1
  732. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  733. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  734. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  735. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  736. package/dist/ssr/index.d.ts +0 -98
  737. package/dist/ssr/index.d.ts.map +0 -1
  738. package/dist/ssr/index.js +0 -158
  739. package/dist/ssr/index.js.map +0 -1
  740. package/dist/static-handler.d.ts +0 -50
  741. package/dist/static-handler.d.ts.map +0 -1
  742. package/dist/static-handler.gen.d.ts +0 -5
  743. package/dist/static-handler.gen.d.ts.map +0 -1
  744. package/dist/static-handler.gen.js +0 -5
  745. package/dist/static-handler.gen.js.map +0 -1
  746. package/dist/static-handler.js +0 -29
  747. package/dist/static-handler.js.map +0 -1
  748. package/dist/theme/ThemeProvider.d.ts +0 -20
  749. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  750. package/dist/theme/ThemeProvider.js +0 -240
  751. package/dist/theme/ThemeProvider.js.map +0 -1
  752. package/dist/theme/ThemeScript.d.ts +0 -48
  753. package/dist/theme/ThemeScript.d.ts.map +0 -1
  754. package/dist/theme/ThemeScript.js +0 -13
  755. package/dist/theme/ThemeScript.js.map +0 -1
  756. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  757. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  758. package/dist/theme/__tests__/theme.test.js +0 -103
  759. package/dist/theme/__tests__/theme.test.js.map +0 -1
  760. package/dist/theme/constants.d.ts +0 -29
  761. package/dist/theme/constants.d.ts.map +0 -1
  762. package/dist/theme/constants.js +0 -48
  763. package/dist/theme/constants.js.map +0 -1
  764. package/dist/theme/index.d.ts +0 -31
  765. package/dist/theme/index.d.ts.map +0 -1
  766. package/dist/theme/index.js +0 -36
  767. package/dist/theme/index.js.map +0 -1
  768. package/dist/theme/theme-context.d.ts +0 -40
  769. package/dist/theme/theme-context.d.ts.map +0 -1
  770. package/dist/theme/theme-context.js +0 -60
  771. package/dist/theme/theme-context.js.map +0 -1
  772. package/dist/theme/theme-script.d.ts +0 -27
  773. package/dist/theme/theme-script.d.ts.map +0 -1
  774. package/dist/theme/theme-script.js +0 -147
  775. package/dist/theme/theme-script.js.map +0 -1
  776. package/dist/theme/types.d.ts +0 -163
  777. package/dist/theme/types.d.ts.map +0 -1
  778. package/dist/theme/types.js +0 -11
  779. package/dist/theme/types.js.map +0 -1
  780. package/dist/theme/use-theme.d.ts +0 -12
  781. package/dist/theme/use-theme.d.ts.map +0 -1
  782. package/dist/theme/use-theme.js +0 -40
  783. package/dist/theme/use-theme.js.map +0 -1
  784. package/dist/types.d.ts +0 -1479
  785. package/dist/types.d.ts.map +0 -1
  786. package/dist/types.js +0 -10
  787. package/dist/types.js.map +0 -1
  788. package/dist/urls.d.ts +0 -441
  789. package/dist/urls.d.ts.map +0 -1
  790. package/dist/urls.gen.d.ts +0 -8
  791. package/dist/urls.gen.d.ts.map +0 -1
  792. package/dist/urls.gen.js +0 -8
  793. package/dist/urls.gen.js.map +0 -1
  794. package/dist/urls.js +0 -443
  795. package/dist/urls.js.map +0 -1
  796. package/dist/use-loader.d.ts +0 -127
  797. package/dist/use-loader.d.ts.map +0 -1
  798. package/dist/use-loader.js +0 -237
  799. package/dist/use-loader.js.map +0 -1
  800. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  801. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  802. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  803. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  804. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  805. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  806. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  807. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  808. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  809. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  810. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  811. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  812. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  813. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  814. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  815. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  816. package/dist/vite/ast-handler-extract.d.ts +0 -49
  817. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  818. package/dist/vite/ast-handler-extract.js +0 -249
  819. package/dist/vite/ast-handler-extract.js.map +0 -1
  820. package/dist/vite/expose-action-id.d.ts +0 -19
  821. package/dist/vite/expose-action-id.d.ts.map +0 -1
  822. package/dist/vite/expose-action-id.js +0 -250
  823. package/dist/vite/expose-action-id.js.map +0 -1
  824. package/dist/vite/expose-id-utils.d.ts +0 -69
  825. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  826. package/dist/vite/expose-id-utils.js +0 -289
  827. package/dist/vite/expose-id-utils.js.map +0 -1
  828. package/dist/vite/expose-internal-ids.d.ts +0 -22
  829. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  830. package/dist/vite/expose-internal-ids.js +0 -886
  831. package/dist/vite/expose-internal-ids.js.map +0 -1
  832. package/dist/vite/index.d.ts +0 -149
  833. package/dist/vite/index.d.ts.map +0 -1
  834. package/dist/vite/index.js.map +0 -1
  835. package/dist/vite/index.named-routes.gen.ts +0 -103
  836. package/dist/vite/package-resolution.d.ts +0 -43
  837. package/dist/vite/package-resolution.d.ts.map +0 -1
  838. package/dist/vite/package-resolution.js +0 -112
  839. package/dist/vite/package-resolution.js.map +0 -1
  840. package/dist/vite/virtual-entries.d.ts +0 -25
  841. package/dist/vite/virtual-entries.d.ts.map +0 -1
  842. package/dist/vite/virtual-entries.js +0 -110
  843. 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":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAG3B,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E,MAAM,SAAS;IAAf;QACU,UAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAiB9C,CAAC;IAfC,KAAK,CAAC,KAAK,CAAC,OAAgB;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAgB,EAAE,QAAkB;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAgB;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAED,MAAM,UAAU;IAAhB;QACU,WAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;QACtC,aAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;IAkBrC,CAAC;IAhBC,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;IAChC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AAED,wBAAwB;AACxB,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;AACnC,UAAkB,CAAC,MAAM,GAAG,UAAU,CAAC;AAExC,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAAC;IAC3B,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC;IACxC,sBAAsB,EAAE,EAAE,CAAC,EAAE,EAAE;CAChC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,cAAc,GAAG,GAAoB,EAAE,CAAC,CAAC;IAC7C,QAAQ,EAAE;QACR;YACE,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE;gBACR,EAAE,EAAE,cAAc;gBAClB,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,MAAM;gBACjB,KAAK,EAAE,CAAC;gBACR,MAAM,EAAE,EAAE;aACX;SACF;KACF;IACD,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;CAC9B,CAAC,CAAC;AAEH,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,YAAY,CAAC,EAAS,CAAC,CAAC,CAAC,OAAO,CAC/C,mDAAmD,CACpD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC;gBAC7B,GAAG,EAAE,aAAa,EAAE;gBACpB,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,0BAA0B;gBACnC,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACjC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,6BAA6B;YAC7B,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAE3C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,CAAC,MAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,iCAAiC;YACjC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACzE,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;YAC5E,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAEtC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpE,iCAAiC;YACjC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,mCAAmC;YACnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;YACrE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YAE/C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAE5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6CAA6C,EAAE,GAAG,EAAE;QAC3D,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,cAAc;YACd,EAAE,CAAC,mBAAmB,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;YAElC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;YACtG,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,iCAAiC;YACjC,EAAE,CAAC,mBAAmB,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YAEnC,yEAAyE;YACzE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE5C,iDAAiD;YACjD,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CACzB,iCAAiC,GAAG,kBAAkB,CAAC,UAAU,CAAC,CACnE,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,gBAAgB;YAChB,EAAE,CAAC,mBAAmB,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YAEnC,+CAA+C;YAC/C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7C,8DAA8D;YAC9D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,mFAAmF;YACnF,uFAAuF;YACvF,mEAAmE;YACnE,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,gBAAgB;YAChB,EAAE,CAAC,mBAAmB,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YAEnC,oDAAoD;YACpD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAEpC,8CAA8C;YAC9C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAEpC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;YAC5C,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAE/C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,GAAG,GAAG,4CAA4C,CAAC;YACzD,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/B,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC;gBAC7B,GAAG,EAAE,OAAO;gBACZ,OAAO,EAAE,6BAA6B;aACvC,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACxC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,8CAA8C;YAC9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,uDAAuD;YACvD,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;YAE9B,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1C,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE9C,gDAAgD;YAChD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -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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"}