@rangojs/router 0.0.0-experimental.21 → 0.0.0-experimental.21efdd86

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 (961) hide show
  1. package/AGENTS.md +4 -0
  2. package/README.md +122 -30
  3. package/dist/bin/rango.js +138 -50
  4. package/dist/vite/index.js +602 -309
  5. package/package.json +16 -15
  6. package/skills/breadcrumbs/SKILL.md +250 -0
  7. package/skills/cache-guide/SKILL.md +32 -0
  8. package/skills/caching/SKILL.md +49 -8
  9. package/skills/document-cache/SKILL.md +2 -2
  10. package/skills/hooks/SKILL.md +33 -31
  11. package/skills/host-router/SKILL.md +218 -0
  12. package/skills/links/SKILL.md +3 -1
  13. package/skills/loader/SKILL.md +72 -22
  14. package/skills/middleware/SKILL.md +2 -0
  15. package/skills/parallel/SKILL.md +126 -0
  16. package/skills/prerender/SKILL.md +112 -70
  17. package/skills/rango/SKILL.md +0 -1
  18. package/skills/route/SKILL.md +34 -4
  19. package/skills/router-setup/SKILL.md +95 -5
  20. package/skills/typesafety/SKILL.md +35 -23
  21. package/src/__internal.ts +92 -0
  22. package/src/browser/app-version.ts +14 -0
  23. package/src/browser/event-controller.ts +5 -0
  24. package/src/browser/link-interceptor.ts +4 -0
  25. package/src/browser/navigation-bridge.ts +104 -14
  26. package/src/browser/navigation-client.ts +126 -44
  27. package/src/browser/navigation-store.ts +43 -8
  28. package/src/browser/navigation-transaction.ts +11 -9
  29. package/src/browser/partial-update.ts +80 -15
  30. package/src/browser/prefetch/cache.ts +166 -27
  31. package/src/browser/prefetch/fetch.ts +52 -39
  32. package/src/browser/prefetch/policy.ts +6 -0
  33. package/src/browser/prefetch/queue.ts +92 -20
  34. package/src/browser/prefetch/resource-ready.ts +77 -0
  35. package/src/browser/react/Link.tsx +70 -14
  36. package/src/browser/react/NavigationProvider.tsx +40 -4
  37. package/src/browser/react/context.ts +7 -2
  38. package/src/browser/react/use-handle.ts +9 -58
  39. package/src/browser/react/use-router.ts +21 -8
  40. package/src/browser/rsc-router.tsx +143 -60
  41. package/src/browser/scroll-restoration.ts +41 -42
  42. package/src/browser/segment-reconciler.ts +6 -1
  43. package/src/browser/server-action-bridge.ts +8 -6
  44. package/src/browser/types.ts +60 -5
  45. package/src/build/generate-manifest.ts +6 -6
  46. package/src/build/generate-route-types.ts +3 -0
  47. package/src/build/route-trie.ts +19 -3
  48. package/src/build/route-types/include-resolution.ts +8 -1
  49. package/src/build/route-types/router-processing.ts +223 -74
  50. package/src/build/route-types/scan-filter.ts +8 -1
  51. package/src/cache/cache-runtime.ts +15 -11
  52. package/src/cache/cache-scope.ts +48 -7
  53. package/src/cache/cf/cf-cache-store.ts +453 -11
  54. package/src/cache/cf/index.ts +5 -1
  55. package/src/cache/document-cache.ts +17 -7
  56. package/src/cache/index.ts +1 -0
  57. package/src/cache/taint.ts +55 -0
  58. package/src/client.rsc.tsx +2 -1
  59. package/src/client.tsx +3 -102
  60. package/src/context-var.ts +72 -2
  61. package/src/debug.ts +2 -2
  62. package/src/handle.ts +40 -0
  63. package/src/handles/breadcrumbs.ts +66 -0
  64. package/src/handles/index.ts +1 -0
  65. package/src/host/index.ts +0 -3
  66. package/src/index.rsc.ts +6 -36
  67. package/src/index.ts +40 -66
  68. package/src/prerender/store.ts +5 -4
  69. package/src/prerender.ts +138 -77
  70. package/src/reverse.ts +22 -1
  71. package/src/route-definition/dsl-helpers.ts +73 -25
  72. package/src/route-definition/helpers-types.ts +10 -6
  73. package/src/route-definition/index.ts +3 -3
  74. package/src/route-definition/redirect.ts +11 -3
  75. package/src/route-definition/resolve-handler-use.ts +149 -0
  76. package/src/route-map-builder.ts +7 -1
  77. package/src/route-types.ts +11 -0
  78. package/src/router/content-negotiation.ts +100 -1
  79. package/src/router/find-match.ts +4 -2
  80. package/src/router/handler-context.ts +108 -25
  81. package/src/router/intercept-resolution.ts +11 -4
  82. package/src/router/lazy-includes.ts +4 -1
  83. package/src/router/loader-resolution.ts +123 -11
  84. package/src/router/logging.ts +5 -2
  85. package/src/router/manifest.ts +9 -3
  86. package/src/router/match-api.ts +125 -190
  87. package/src/router/match-middleware/background-revalidation.ts +30 -2
  88. package/src/router/match-middleware/cache-lookup.ts +88 -16
  89. package/src/router/match-middleware/cache-store.ts +53 -10
  90. package/src/router/match-middleware/intercept-resolution.ts +9 -7
  91. package/src/router/match-middleware/segment-resolution.ts +61 -5
  92. package/src/router/match-result.ts +22 -15
  93. package/src/router/metrics.ts +238 -13
  94. package/src/router/middleware-types.ts +53 -12
  95. package/src/router/middleware.ts +172 -85
  96. package/src/router/navigation-snapshot.ts +182 -0
  97. package/src/router/pattern-matching.ts +20 -5
  98. package/src/router/prerender-match.ts +114 -10
  99. package/src/router/preview-match.ts +30 -102
  100. package/src/router/request-classification.ts +310 -0
  101. package/src/router/revalidation.ts +27 -7
  102. package/src/router/route-snapshot.ts +245 -0
  103. package/src/router/router-context.ts +6 -1
  104. package/src/router/router-interfaces.ts +50 -5
  105. package/src/router/router-options.ts +50 -19
  106. package/src/router/segment-resolution/fresh.ts +210 -19
  107. package/src/router/segment-resolution/helpers.ts +30 -25
  108. package/src/router/segment-resolution/loader-cache.ts +1 -0
  109. package/src/router/segment-resolution/revalidation.ts +448 -301
  110. package/src/router/segment-wrappers.ts +2 -0
  111. package/src/router/trie-matching.ts +20 -2
  112. package/src/router/types.ts +1 -0
  113. package/src/router.ts +88 -15
  114. package/src/rsc/handler.ts +546 -359
  115. package/src/rsc/index.ts +0 -20
  116. package/src/rsc/manifest-init.ts +5 -1
  117. package/src/rsc/progressive-enhancement.ts +25 -8
  118. package/src/rsc/rsc-rendering.ts +35 -43
  119. package/src/rsc/server-action.ts +16 -10
  120. package/src/rsc/ssr-setup.ts +128 -0
  121. package/src/rsc/types.ts +10 -1
  122. package/src/search-params.ts +16 -13
  123. package/src/segment-system.tsx +140 -4
  124. package/src/server/context.ts +148 -16
  125. package/src/server/loader-registry.ts +9 -8
  126. package/src/server/request-context.ts +186 -29
  127. package/src/server.ts +6 -0
  128. package/src/ssr/index.tsx +4 -0
  129. package/src/static-handler.ts +18 -6
  130. package/src/theme/index.ts +4 -13
  131. package/src/types/cache-types.ts +4 -4
  132. package/src/types/handler-context.ts +149 -49
  133. package/src/types/loader-types.ts +36 -9
  134. package/src/types/route-config.ts +17 -8
  135. package/src/types/route-entry.ts +8 -1
  136. package/src/types/segments.ts +2 -5
  137. package/src/urls/path-helper-types.ts +9 -2
  138. package/src/urls/path-helper.ts +48 -13
  139. package/src/urls/pattern-types.ts +12 -0
  140. package/src/urls/response-types.ts +16 -6
  141. package/src/use-loader.tsx +73 -4
  142. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  143. package/src/vite/discovery/discover-routers.ts +7 -4
  144. package/src/vite/discovery/prerender-collection.ts +14 -1
  145. package/src/vite/discovery/state.ts +13 -6
  146. package/src/vite/index.ts +8 -3
  147. package/src/vite/plugin-types.ts +51 -79
  148. package/src/vite/plugins/expose-action-id.ts +1 -3
  149. package/src/vite/plugins/performance-tracks.ts +88 -0
  150. package/src/vite/plugins/refresh-cmd.ts +127 -0
  151. package/src/vite/plugins/version-plugin.ts +13 -1
  152. package/src/vite/rango.ts +163 -211
  153. package/src/vite/router-discovery.ts +178 -45
  154. package/src/vite/utils/banner.ts +3 -3
  155. package/src/vite/utils/prerender-utils.ts +18 -0
  156. package/src/vite/utils/shared-utils.ts +3 -2
  157. package/dist/__internal.d.ts +0 -83
  158. package/dist/__internal.d.ts.map +0 -1
  159. package/dist/__internal.js +0 -19
  160. package/dist/__internal.js.map +0 -1
  161. package/dist/__mocks__/version.d.ts +0 -7
  162. package/dist/__mocks__/version.d.ts.map +0 -1
  163. package/dist/__mocks__/version.js +0 -7
  164. package/dist/__mocks__/version.js.map +0 -1
  165. package/dist/__tests__/client-href.test.d.ts +0 -2
  166. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  167. package/dist/__tests__/client-href.test.js +0 -74
  168. package/dist/__tests__/client-href.test.js.map +0 -1
  169. package/dist/__tests__/component-utils.test.d.ts +0 -2
  170. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  171. package/dist/__tests__/component-utils.test.js +0 -51
  172. package/dist/__tests__/component-utils.test.js.map +0 -1
  173. package/dist/__tests__/event-controller.test.d.ts +0 -2
  174. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  175. package/dist/__tests__/event-controller.test.js +0 -538
  176. package/dist/__tests__/event-controller.test.js.map +0 -1
  177. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  178. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  179. package/dist/__tests__/helpers/route-tree.js +0 -374
  180. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  181. package/dist/__tests__/match-result.test.d.ts +0 -2
  182. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  183. package/dist/__tests__/match-result.test.js +0 -154
  184. package/dist/__tests__/match-result.test.js.map +0 -1
  185. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  186. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  187. package/dist/__tests__/navigation-store.test.js +0 -440
  188. package/dist/__tests__/navigation-store.test.js.map +0 -1
  189. package/dist/__tests__/partial-update.test.d.ts +0 -2
  190. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  191. package/dist/__tests__/partial-update.test.js +0 -1009
  192. package/dist/__tests__/partial-update.test.js.map +0 -1
  193. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  194. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  195. package/dist/__tests__/reverse-types.test.js +0 -656
  196. package/dist/__tests__/reverse-types.test.js.map +0 -1
  197. package/dist/__tests__/route-definition.test.d.ts +0 -2
  198. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  199. package/dist/__tests__/route-definition.test.js +0 -55
  200. package/dist/__tests__/route-definition.test.js.map +0 -1
  201. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  202. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  203. package/dist/__tests__/router-helpers.test.js +0 -377
  204. package/dist/__tests__/router-helpers.test.js.map +0 -1
  205. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  206. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  207. package/dist/__tests__/router-integration-2.test.js +0 -426
  208. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  209. package/dist/__tests__/router-integration.test.d.ts +0 -2
  210. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  211. package/dist/__tests__/router-integration.test.js +0 -1051
  212. package/dist/__tests__/router-integration.test.js.map +0 -1
  213. package/dist/__tests__/search-params.test.d.ts +0 -5
  214. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  215. package/dist/__tests__/search-params.test.js +0 -306
  216. package/dist/__tests__/search-params.test.js.map +0 -1
  217. package/dist/__tests__/segment-system.test.d.ts +0 -2
  218. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  219. package/dist/__tests__/segment-system.test.js +0 -627
  220. package/dist/__tests__/segment-system.test.js.map +0 -1
  221. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  222. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  223. package/dist/__tests__/static-handler-types.test.js +0 -63
  224. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  225. package/dist/__tests__/urls.test.d.ts +0 -2
  226. package/dist/__tests__/urls.test.d.ts.map +0 -1
  227. package/dist/__tests__/urls.test.js +0 -421
  228. package/dist/__tests__/urls.test.js.map +0 -1
  229. package/dist/__tests__/use-mount.test.d.ts +0 -2
  230. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  231. package/dist/__tests__/use-mount.test.js +0 -35
  232. package/dist/__tests__/use-mount.test.js.map +0 -1
  233. package/dist/bin/rango.d.ts +0 -2
  234. package/dist/bin/rango.d.ts.map +0 -1
  235. package/dist/bin/rango.js.map +0 -1
  236. package/dist/browser/event-controller.d.ts +0 -191
  237. package/dist/browser/event-controller.d.ts.map +0 -1
  238. package/dist/browser/event-controller.js +0 -559
  239. package/dist/browser/event-controller.js.map +0 -1
  240. package/dist/browser/index.d.ts +0 -2
  241. package/dist/browser/index.d.ts.map +0 -1
  242. package/dist/browser/index.js +0 -14
  243. package/dist/browser/index.js.map +0 -1
  244. package/dist/browser/link-interceptor.d.ts +0 -38
  245. package/dist/browser/link-interceptor.d.ts.map +0 -1
  246. package/dist/browser/link-interceptor.js +0 -99
  247. package/dist/browser/link-interceptor.js.map +0 -1
  248. package/dist/browser/logging.d.ts +0 -10
  249. package/dist/browser/logging.d.ts.map +0 -1
  250. package/dist/browser/logging.js +0 -29
  251. package/dist/browser/logging.js.map +0 -1
  252. package/dist/browser/lru-cache.d.ts +0 -17
  253. package/dist/browser/lru-cache.d.ts.map +0 -1
  254. package/dist/browser/lru-cache.js +0 -50
  255. package/dist/browser/lru-cache.js.map +0 -1
  256. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  257. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  258. package/dist/browser/merge-segment-loaders.js +0 -102
  259. package/dist/browser/merge-segment-loaders.js.map +0 -1
  260. package/dist/browser/navigation-bridge.d.ts +0 -102
  261. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  262. package/dist/browser/navigation-bridge.js +0 -708
  263. package/dist/browser/navigation-bridge.js.map +0 -1
  264. package/dist/browser/navigation-client.d.ts +0 -25
  265. package/dist/browser/navigation-client.d.ts.map +0 -1
  266. package/dist/browser/navigation-client.js +0 -157
  267. package/dist/browser/navigation-client.js.map +0 -1
  268. package/dist/browser/navigation-store.d.ts +0 -101
  269. package/dist/browser/navigation-store.d.ts.map +0 -1
  270. package/dist/browser/navigation-store.js +0 -625
  271. package/dist/browser/navigation-store.js.map +0 -1
  272. package/dist/browser/partial-update.d.ts +0 -75
  273. package/dist/browser/partial-update.d.ts.map +0 -1
  274. package/dist/browser/partial-update.js +0 -426
  275. package/dist/browser/partial-update.js.map +0 -1
  276. package/dist/browser/react/Link.d.ts +0 -86
  277. package/dist/browser/react/Link.d.ts.map +0 -1
  278. package/dist/browser/react/Link.js +0 -128
  279. package/dist/browser/react/Link.js.map +0 -1
  280. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  281. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  282. package/dist/browser/react/NavigationProvider.js +0 -216
  283. package/dist/browser/react/NavigationProvider.js.map +0 -1
  284. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  285. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  286. package/dist/browser/react/ScrollRestoration.js +0 -57
  287. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  288. package/dist/browser/react/context.d.ts +0 -46
  289. package/dist/browser/react/context.d.ts.map +0 -1
  290. package/dist/browser/react/context.js +0 -10
  291. package/dist/browser/react/context.js.map +0 -1
  292. package/dist/browser/react/index.d.ts +0 -11
  293. package/dist/browser/react/index.d.ts.map +0 -1
  294. package/dist/browser/react/index.js +0 -22
  295. package/dist/browser/react/index.js.map +0 -1
  296. package/dist/browser/react/location-state-shared.d.ts +0 -63
  297. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  298. package/dist/browser/react/location-state-shared.js +0 -81
  299. package/dist/browser/react/location-state-shared.js.map +0 -1
  300. package/dist/browser/react/location-state.d.ts +0 -23
  301. package/dist/browser/react/location-state.d.ts.map +0 -1
  302. package/dist/browser/react/location-state.js +0 -29
  303. package/dist/browser/react/location-state.js.map +0 -1
  304. package/dist/browser/react/mount-context.d.ts +0 -24
  305. package/dist/browser/react/mount-context.d.ts.map +0 -1
  306. package/dist/browser/react/mount-context.js +0 -24
  307. package/dist/browser/react/mount-context.js.map +0 -1
  308. package/dist/browser/react/use-action.d.ts +0 -64
  309. package/dist/browser/react/use-action.d.ts.map +0 -1
  310. package/dist/browser/react/use-action.js +0 -134
  311. package/dist/browser/react/use-action.js.map +0 -1
  312. package/dist/browser/react/use-client-cache.d.ts +0 -41
  313. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  314. package/dist/browser/react/use-client-cache.js +0 -39
  315. package/dist/browser/react/use-client-cache.js.map +0 -1
  316. package/dist/browser/react/use-handle.d.ts +0 -31
  317. package/dist/browser/react/use-handle.d.ts.map +0 -1
  318. package/dist/browser/react/use-handle.js +0 -144
  319. package/dist/browser/react/use-handle.js.map +0 -1
  320. package/dist/browser/react/use-href.d.ts +0 -33
  321. package/dist/browser/react/use-href.d.ts.map +0 -1
  322. package/dist/browser/react/use-href.js +0 -39
  323. package/dist/browser/react/use-href.js.map +0 -1
  324. package/dist/browser/react/use-link-status.d.ts +0 -37
  325. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  326. package/dist/browser/react/use-link-status.js +0 -99
  327. package/dist/browser/react/use-link-status.js.map +0 -1
  328. package/dist/browser/react/use-mount.d.ts +0 -25
  329. package/dist/browser/react/use-mount.d.ts.map +0 -1
  330. package/dist/browser/react/use-mount.js +0 -30
  331. package/dist/browser/react/use-mount.js.map +0 -1
  332. package/dist/browser/react/use-navigation.d.ts +0 -27
  333. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  334. package/dist/browser/react/use-navigation.js +0 -87
  335. package/dist/browser/react/use-navigation.js.map +0 -1
  336. package/dist/browser/react/use-segments.d.ts +0 -38
  337. package/dist/browser/react/use-segments.d.ts.map +0 -1
  338. package/dist/browser/react/use-segments.js +0 -130
  339. package/dist/browser/react/use-segments.js.map +0 -1
  340. package/dist/browser/request-controller.d.ts +0 -26
  341. package/dist/browser/request-controller.d.ts.map +0 -1
  342. package/dist/browser/request-controller.js +0 -147
  343. package/dist/browser/request-controller.js.map +0 -1
  344. package/dist/browser/rsc-router.d.ts +0 -129
  345. package/dist/browser/rsc-router.d.ts.map +0 -1
  346. package/dist/browser/rsc-router.js +0 -195
  347. package/dist/browser/rsc-router.js.map +0 -1
  348. package/dist/browser/scroll-restoration.d.ts +0 -93
  349. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  350. package/dist/browser/scroll-restoration.js +0 -321
  351. package/dist/browser/scroll-restoration.js.map +0 -1
  352. package/dist/browser/segment-structure-assert.d.ts +0 -17
  353. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  354. package/dist/browser/segment-structure-assert.js +0 -59
  355. package/dist/browser/segment-structure-assert.js.map +0 -1
  356. package/dist/browser/server-action-bridge.d.ts +0 -26
  357. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  358. package/dist/browser/server-action-bridge.js +0 -668
  359. package/dist/browser/server-action-bridge.js.map +0 -1
  360. package/dist/browser/shallow.d.ts +0 -12
  361. package/dist/browser/shallow.d.ts.map +0 -1
  362. package/dist/browser/shallow.js +0 -34
  363. package/dist/browser/shallow.js.map +0 -1
  364. package/dist/browser/types.d.ts +0 -369
  365. package/dist/browser/types.d.ts.map +0 -1
  366. package/dist/browser/types.js +0 -2
  367. package/dist/browser/types.js.map +0 -1
  368. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  369. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  370. package/dist/build/__tests__/generate-cli.test.js +0 -237
  371. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  372. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  373. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  374. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  375. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  376. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  377. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  378. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  379. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  380. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  381. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  382. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  383. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  384. package/dist/build/generate-manifest.d.ts +0 -81
  385. package/dist/build/generate-manifest.d.ts.map +0 -1
  386. package/dist/build/generate-manifest.js +0 -276
  387. package/dist/build/generate-manifest.js.map +0 -1
  388. package/dist/build/generate-route-types.d.ts +0 -115
  389. package/dist/build/generate-route-types.d.ts.map +0 -1
  390. package/dist/build/generate-route-types.js +0 -740
  391. package/dist/build/generate-route-types.js.map +0 -1
  392. package/dist/build/index.d.ts +0 -21
  393. package/dist/build/index.d.ts.map +0 -1
  394. package/dist/build/index.js +0 -21
  395. package/dist/build/index.js.map +0 -1
  396. package/dist/build/route-trie.d.ts +0 -71
  397. package/dist/build/route-trie.d.ts.map +0 -1
  398. package/dist/build/route-trie.js +0 -175
  399. package/dist/build/route-trie.js.map +0 -1
  400. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  401. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  402. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  403. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  404. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  405. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  406. package/dist/cache/__tests__/document-cache.test.js +0 -345
  407. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  408. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  409. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  410. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  411. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  412. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  413. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  414. package/dist/cache/__tests__/memory-store.test.js +0 -367
  415. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  416. package/dist/cache/cache-scope.d.ts +0 -102
  417. package/dist/cache/cache-scope.d.ts.map +0 -1
  418. package/dist/cache/cache-scope.js +0 -440
  419. package/dist/cache/cache-scope.js.map +0 -1
  420. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  421. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  422. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  423. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  424. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  425. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  426. package/dist/cache/cf/cf-cache-store.js +0 -242
  427. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  428. package/dist/cache/cf/index.d.ts +0 -14
  429. package/dist/cache/cf/index.d.ts.map +0 -1
  430. package/dist/cache/cf/index.js +0 -17
  431. package/dist/cache/cf/index.js.map +0 -1
  432. package/dist/cache/document-cache.d.ts +0 -64
  433. package/dist/cache/document-cache.d.ts.map +0 -1
  434. package/dist/cache/document-cache.js +0 -228
  435. package/dist/cache/document-cache.js.map +0 -1
  436. package/dist/cache/index.d.ts +0 -19
  437. package/dist/cache/index.d.ts.map +0 -1
  438. package/dist/cache/index.js +0 -21
  439. package/dist/cache/index.js.map +0 -1
  440. package/dist/cache/memory-segment-store.d.ts +0 -110
  441. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  442. package/dist/cache/memory-segment-store.js +0 -117
  443. package/dist/cache/memory-segment-store.js.map +0 -1
  444. package/dist/cache/memory-store.d.ts +0 -41
  445. package/dist/cache/memory-store.d.ts.map +0 -1
  446. package/dist/cache/memory-store.js +0 -191
  447. package/dist/cache/memory-store.js.map +0 -1
  448. package/dist/cache/types.d.ts +0 -317
  449. package/dist/cache/types.d.ts.map +0 -1
  450. package/dist/cache/types.js +0 -12
  451. package/dist/cache/types.js.map +0 -1
  452. package/dist/client.d.ts +0 -248
  453. package/dist/client.d.ts.map +0 -1
  454. package/dist/client.js +0 -367
  455. package/dist/client.js.map +0 -1
  456. package/dist/client.rsc.d.ts +0 -26
  457. package/dist/client.rsc.d.ts.map +0 -1
  458. package/dist/client.rsc.js +0 -46
  459. package/dist/client.rsc.js.map +0 -1
  460. package/dist/component-utils.d.ts +0 -36
  461. package/dist/component-utils.d.ts.map +0 -1
  462. package/dist/component-utils.js +0 -61
  463. package/dist/component-utils.js.map +0 -1
  464. package/dist/components/DefaultDocument.d.ts +0 -13
  465. package/dist/components/DefaultDocument.d.ts.map +0 -1
  466. package/dist/components/DefaultDocument.js +0 -15
  467. package/dist/components/DefaultDocument.js.map +0 -1
  468. package/dist/debug.d.ts +0 -58
  469. package/dist/debug.d.ts.map +0 -1
  470. package/dist/debug.js +0 -157
  471. package/dist/debug.js.map +0 -1
  472. package/dist/default-error-boundary.d.ts +0 -11
  473. package/dist/default-error-boundary.d.ts.map +0 -1
  474. package/dist/default-error-boundary.js +0 -45
  475. package/dist/default-error-boundary.js.map +0 -1
  476. package/dist/deps/browser.d.ts +0 -2
  477. package/dist/deps/browser.d.ts.map +0 -1
  478. package/dist/deps/browser.js +0 -3
  479. package/dist/deps/browser.js.map +0 -1
  480. package/dist/deps/html-stream-client.d.ts +0 -2
  481. package/dist/deps/html-stream-client.d.ts.map +0 -1
  482. package/dist/deps/html-stream-client.js +0 -3
  483. package/dist/deps/html-stream-client.js.map +0 -1
  484. package/dist/deps/html-stream-server.d.ts +0 -2
  485. package/dist/deps/html-stream-server.d.ts.map +0 -1
  486. package/dist/deps/html-stream-server.js +0 -3
  487. package/dist/deps/html-stream-server.js.map +0 -1
  488. package/dist/deps/rsc.d.ts +0 -2
  489. package/dist/deps/rsc.d.ts.map +0 -1
  490. package/dist/deps/rsc.js +0 -4
  491. package/dist/deps/rsc.js.map +0 -1
  492. package/dist/deps/ssr.d.ts +0 -2
  493. package/dist/deps/ssr.d.ts.map +0 -1
  494. package/dist/deps/ssr.js +0 -3
  495. package/dist/deps/ssr.js.map +0 -1
  496. package/dist/errors.d.ts +0 -174
  497. package/dist/errors.d.ts.map +0 -1
  498. package/dist/errors.js +0 -241
  499. package/dist/errors.js.map +0 -1
  500. package/dist/handle.d.ts +0 -78
  501. package/dist/handle.d.ts.map +0 -1
  502. package/dist/handle.js +0 -82
  503. package/dist/handle.js.map +0 -1
  504. package/dist/handles/MetaTags.d.ts +0 -14
  505. package/dist/handles/MetaTags.d.ts.map +0 -1
  506. package/dist/handles/MetaTags.js +0 -136
  507. package/dist/handles/MetaTags.js.map +0 -1
  508. package/dist/handles/index.d.ts +0 -6
  509. package/dist/handles/index.d.ts.map +0 -1
  510. package/dist/handles/index.js +0 -6
  511. package/dist/handles/index.js.map +0 -1
  512. package/dist/handles/meta.d.ts +0 -39
  513. package/dist/handles/meta.d.ts.map +0 -1
  514. package/dist/handles/meta.js +0 -202
  515. package/dist/handles/meta.js.map +0 -1
  516. package/dist/host/__tests__/errors.test.d.ts +0 -2
  517. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  518. package/dist/host/__tests__/errors.test.js +0 -76
  519. package/dist/host/__tests__/errors.test.js.map +0 -1
  520. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  521. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  522. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  523. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  524. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  525. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  526. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  527. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  528. package/dist/host/__tests__/router.test.d.ts +0 -2
  529. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  530. package/dist/host/__tests__/router.test.js +0 -241
  531. package/dist/host/__tests__/router.test.js.map +0 -1
  532. package/dist/host/__tests__/testing.test.d.ts +0 -2
  533. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  534. package/dist/host/__tests__/testing.test.js +0 -64
  535. package/dist/host/__tests__/testing.test.js.map +0 -1
  536. package/dist/host/__tests__/utils.test.d.ts +0 -2
  537. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  538. package/dist/host/__tests__/utils.test.js +0 -29
  539. package/dist/host/__tests__/utils.test.js.map +0 -1
  540. package/dist/host/cookie-handler.d.ts +0 -34
  541. package/dist/host/cookie-handler.d.ts.map +0 -1
  542. package/dist/host/cookie-handler.js +0 -124
  543. package/dist/host/cookie-handler.js.map +0 -1
  544. package/dist/host/errors.d.ts +0 -56
  545. package/dist/host/errors.d.ts.map +0 -1
  546. package/dist/host/errors.js +0 -79
  547. package/dist/host/errors.js.map +0 -1
  548. package/dist/host/index.d.ts +0 -29
  549. package/dist/host/index.d.ts.map +0 -1
  550. package/dist/host/index.js +0 -32
  551. package/dist/host/index.js.map +0 -1
  552. package/dist/host/pattern-matcher.d.ts +0 -36
  553. package/dist/host/pattern-matcher.d.ts.map +0 -1
  554. package/dist/host/pattern-matcher.js +0 -172
  555. package/dist/host/pattern-matcher.js.map +0 -1
  556. package/dist/host/router.d.ts +0 -26
  557. package/dist/host/router.d.ts.map +0 -1
  558. package/dist/host/router.js +0 -218
  559. package/dist/host/router.js.map +0 -1
  560. package/dist/host/testing.d.ts +0 -36
  561. package/dist/host/testing.d.ts.map +0 -1
  562. package/dist/host/testing.js +0 -55
  563. package/dist/host/testing.js.map +0 -1
  564. package/dist/host/types.d.ts +0 -115
  565. package/dist/host/types.d.ts.map +0 -1
  566. package/dist/host/types.js +0 -7
  567. package/dist/host/types.js.map +0 -1
  568. package/dist/host/utils.d.ts +0 -21
  569. package/dist/host/utils.d.ts.map +0 -1
  570. package/dist/host/utils.js +0 -23
  571. package/dist/host/utils.js.map +0 -1
  572. package/dist/href-client.d.ts +0 -131
  573. package/dist/href-client.d.ts.map +0 -1
  574. package/dist/href-client.js +0 -64
  575. package/dist/href-client.js.map +0 -1
  576. package/dist/href-context.d.ts +0 -29
  577. package/dist/href-context.d.ts.map +0 -1
  578. package/dist/href-context.js +0 -21
  579. package/dist/href-context.js.map +0 -1
  580. package/dist/index.d.ts +0 -73
  581. package/dist/index.d.ts.map +0 -1
  582. package/dist/index.js +0 -91
  583. package/dist/index.js.map +0 -1
  584. package/dist/index.rsc.d.ts +0 -32
  585. package/dist/index.rsc.d.ts.map +0 -1
  586. package/dist/index.rsc.js +0 -40
  587. package/dist/index.rsc.js.map +0 -1
  588. package/dist/internal-debug.d.ts +0 -2
  589. package/dist/internal-debug.d.ts.map +0 -1
  590. package/dist/internal-debug.js +0 -5
  591. package/dist/internal-debug.js.map +0 -1
  592. package/dist/loader.d.ts +0 -14
  593. package/dist/loader.d.ts.map +0 -1
  594. package/dist/loader.js +0 -20
  595. package/dist/loader.js.map +0 -1
  596. package/dist/loader.rsc.d.ts +0 -19
  597. package/dist/loader.rsc.d.ts.map +0 -1
  598. package/dist/loader.rsc.js +0 -99
  599. package/dist/loader.rsc.js.map +0 -1
  600. package/dist/network-error-thrower.d.ts +0 -17
  601. package/dist/network-error-thrower.d.ts.map +0 -1
  602. package/dist/network-error-thrower.js +0 -14
  603. package/dist/network-error-thrower.js.map +0 -1
  604. package/dist/outlet-context.d.ts +0 -13
  605. package/dist/outlet-context.d.ts.map +0 -1
  606. package/dist/outlet-context.js +0 -3
  607. package/dist/outlet-context.js.map +0 -1
  608. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  609. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  610. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  611. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  612. package/dist/prerender/param-hash.d.ts +0 -16
  613. package/dist/prerender/param-hash.d.ts.map +0 -1
  614. package/dist/prerender/param-hash.js +0 -36
  615. package/dist/prerender/param-hash.js.map +0 -1
  616. package/dist/prerender/store.d.ts +0 -38
  617. package/dist/prerender/store.d.ts.map +0 -1
  618. package/dist/prerender/store.js +0 -61
  619. package/dist/prerender/store.js.map +0 -1
  620. package/dist/prerender.d.ts +0 -66
  621. package/dist/prerender.d.ts.map +0 -1
  622. package/dist/prerender.js +0 -57
  623. package/dist/prerender.js.map +0 -1
  624. package/dist/reverse.d.ts +0 -196
  625. package/dist/reverse.d.ts.map +0 -1
  626. package/dist/reverse.js +0 -78
  627. package/dist/reverse.js.map +0 -1
  628. package/dist/root-error-boundary.d.ts +0 -33
  629. package/dist/root-error-boundary.d.ts.map +0 -1
  630. package/dist/root-error-boundary.js +0 -165
  631. package/dist/root-error-boundary.js.map +0 -1
  632. package/dist/route-content-wrapper.d.ts +0 -46
  633. package/dist/route-content-wrapper.d.ts.map +0 -1
  634. package/dist/route-content-wrapper.js +0 -77
  635. package/dist/route-content-wrapper.js.map +0 -1
  636. package/dist/route-definition.d.ts +0 -421
  637. package/dist/route-definition.d.ts.map +0 -1
  638. package/dist/route-definition.js +0 -868
  639. package/dist/route-definition.js.map +0 -1
  640. package/dist/route-map-builder.d.ts +0 -155
  641. package/dist/route-map-builder.d.ts.map +0 -1
  642. package/dist/route-map-builder.js +0 -237
  643. package/dist/route-map-builder.js.map +0 -1
  644. package/dist/route-types.d.ts +0 -165
  645. package/dist/route-types.d.ts.map +0 -1
  646. package/dist/route-types.js +0 -7
  647. package/dist/route-types.js.map +0 -1
  648. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  649. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  650. package/dist/router/__tests__/handler-context.test.js +0 -65
  651. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  652. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  653. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  654. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  655. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  656. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  657. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  658. package/dist/router/__tests__/match-context.test.js +0 -92
  659. package/dist/router/__tests__/match-context.test.js.map +0 -1
  660. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  661. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  662. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  663. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  664. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  665. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  666. package/dist/router/__tests__/match-result.test.js +0 -457
  667. package/dist/router/__tests__/match-result.test.js.map +0 -1
  668. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  669. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  670. package/dist/router/__tests__/on-error.test.js +0 -678
  671. package/dist/router/__tests__/on-error.test.js.map +0 -1
  672. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  673. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  674. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  675. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  676. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  677. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  678. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  679. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  680. package/dist/router/error-handling.d.ts +0 -77
  681. package/dist/router/error-handling.d.ts.map +0 -1
  682. package/dist/router/error-handling.js +0 -202
  683. package/dist/router/error-handling.js.map +0 -1
  684. package/dist/router/handler-context.d.ts +0 -20
  685. package/dist/router/handler-context.d.ts.map +0 -1
  686. package/dist/router/handler-context.js +0 -198
  687. package/dist/router/handler-context.js.map +0 -1
  688. package/dist/router/intercept-resolution.d.ts +0 -66
  689. package/dist/router/intercept-resolution.d.ts.map +0 -1
  690. package/dist/router/intercept-resolution.js +0 -246
  691. package/dist/router/intercept-resolution.js.map +0 -1
  692. package/dist/router/loader-resolution.d.ts +0 -64
  693. package/dist/router/loader-resolution.d.ts.map +0 -1
  694. package/dist/router/loader-resolution.js +0 -284
  695. package/dist/router/loader-resolution.js.map +0 -1
  696. package/dist/router/logging.d.ts +0 -15
  697. package/dist/router/logging.d.ts.map +0 -1
  698. package/dist/router/logging.js +0 -99
  699. package/dist/router/logging.js.map +0 -1
  700. package/dist/router/manifest.d.ts +0 -22
  701. package/dist/router/manifest.d.ts.map +0 -1
  702. package/dist/router/manifest.js +0 -181
  703. package/dist/router/manifest.js.map +0 -1
  704. package/dist/router/match-api.d.ts +0 -35
  705. package/dist/router/match-api.d.ts.map +0 -1
  706. package/dist/router/match-api.js +0 -406
  707. package/dist/router/match-api.js.map +0 -1
  708. package/dist/router/match-context.d.ts +0 -206
  709. package/dist/router/match-context.d.ts.map +0 -1
  710. package/dist/router/match-context.js +0 -17
  711. package/dist/router/match-context.js.map +0 -1
  712. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  713. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  714. package/dist/router/match-middleware/background-revalidation.js +0 -75
  715. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  716. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  717. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  718. package/dist/router/match-middleware/cache-lookup.js +0 -257
  719. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  720. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  721. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  722. package/dist/router/match-middleware/cache-store.js +0 -108
  723. package/dist/router/match-middleware/cache-store.js.map +0 -1
  724. package/dist/router/match-middleware/index.d.ts +0 -81
  725. package/dist/router/match-middleware/index.d.ts.map +0 -1
  726. package/dist/router/match-middleware/index.js +0 -80
  727. package/dist/router/match-middleware/index.js.map +0 -1
  728. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  729. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  730. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  731. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  732. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  733. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  734. package/dist/router/match-middleware/segment-resolution.js +0 -53
  735. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  736. package/dist/router/match-pipelines.d.ts +0 -147
  737. package/dist/router/match-pipelines.d.ts.map +0 -1
  738. package/dist/router/match-pipelines.js +0 -82
  739. package/dist/router/match-pipelines.js.map +0 -1
  740. package/dist/router/match-result.d.ts +0 -126
  741. package/dist/router/match-result.d.ts.map +0 -1
  742. package/dist/router/match-result.js +0 -93
  743. package/dist/router/match-result.js.map +0 -1
  744. package/dist/router/metrics.d.ts +0 -20
  745. package/dist/router/metrics.d.ts.map +0 -1
  746. package/dist/router/metrics.js +0 -47
  747. package/dist/router/metrics.js.map +0 -1
  748. package/dist/router/middleware.d.ts +0 -249
  749. package/dist/router/middleware.d.ts.map +0 -1
  750. package/dist/router/middleware.js +0 -434
  751. package/dist/router/middleware.js.map +0 -1
  752. package/dist/router/middleware.test.d.ts +0 -2
  753. package/dist/router/middleware.test.d.ts.map +0 -1
  754. package/dist/router/middleware.test.js +0 -816
  755. package/dist/router/middleware.test.js.map +0 -1
  756. package/dist/router/pattern-matching.d.ts +0 -149
  757. package/dist/router/pattern-matching.d.ts.map +0 -1
  758. package/dist/router/pattern-matching.js +0 -349
  759. package/dist/router/pattern-matching.js.map +0 -1
  760. package/dist/router/revalidation.d.ts +0 -44
  761. package/dist/router/revalidation.d.ts.map +0 -1
  762. package/dist/router/revalidation.js +0 -147
  763. package/dist/router/revalidation.js.map +0 -1
  764. package/dist/router/router-context.d.ts +0 -135
  765. package/dist/router/router-context.d.ts.map +0 -1
  766. package/dist/router/router-context.js +0 -36
  767. package/dist/router/router-context.js.map +0 -1
  768. package/dist/router/segment-resolution.d.ts +0 -127
  769. package/dist/router/segment-resolution.d.ts.map +0 -1
  770. package/dist/router/segment-resolution.js +0 -919
  771. package/dist/router/segment-resolution.js.map +0 -1
  772. package/dist/router/trie-matching.d.ts +0 -40
  773. package/dist/router/trie-matching.d.ts.map +0 -1
  774. package/dist/router/trie-matching.js +0 -127
  775. package/dist/router/trie-matching.js.map +0 -1
  776. package/dist/router/types.d.ts +0 -136
  777. package/dist/router/types.d.ts.map +0 -1
  778. package/dist/router/types.js +0 -7
  779. package/dist/router/types.js.map +0 -1
  780. package/dist/router.d.ts +0 -753
  781. package/dist/router.d.ts.map +0 -1
  782. package/dist/router.gen.d.ts +0 -6
  783. package/dist/router.gen.d.ts.map +0 -1
  784. package/dist/router.gen.js +0 -6
  785. package/dist/router.gen.js.map +0 -1
  786. package/dist/router.js +0 -1304
  787. package/dist/router.js.map +0 -1
  788. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  789. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  790. package/dist/rsc/__tests__/helpers.test.js +0 -140
  791. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  792. package/dist/rsc/handler.d.ts +0 -45
  793. package/dist/rsc/handler.d.ts.map +0 -1
  794. package/dist/rsc/handler.js +0 -1172
  795. package/dist/rsc/handler.js.map +0 -1
  796. package/dist/rsc/helpers.d.ts +0 -16
  797. package/dist/rsc/helpers.d.ts.map +0 -1
  798. package/dist/rsc/helpers.js +0 -55
  799. package/dist/rsc/helpers.js.map +0 -1
  800. package/dist/rsc/index.d.ts +0 -22
  801. package/dist/rsc/index.d.ts.map +0 -1
  802. package/dist/rsc/index.js +0 -23
  803. package/dist/rsc/index.js.map +0 -1
  804. package/dist/rsc/nonce.d.ts +0 -9
  805. package/dist/rsc/nonce.d.ts.map +0 -1
  806. package/dist/rsc/nonce.js +0 -18
  807. package/dist/rsc/nonce.js.map +0 -1
  808. package/dist/rsc/types.d.ts +0 -206
  809. package/dist/rsc/types.d.ts.map +0 -1
  810. package/dist/rsc/types.js +0 -8
  811. package/dist/rsc/types.js.map +0 -1
  812. package/dist/search-params.d.ts +0 -103
  813. package/dist/search-params.d.ts.map +0 -1
  814. package/dist/search-params.js +0 -74
  815. package/dist/search-params.js.map +0 -1
  816. package/dist/segment-system.d.ts +0 -75
  817. package/dist/segment-system.d.ts.map +0 -1
  818. package/dist/segment-system.js +0 -336
  819. package/dist/segment-system.js.map +0 -1
  820. package/dist/server/context.d.ts +0 -245
  821. package/dist/server/context.d.ts.map +0 -1
  822. package/dist/server/context.js +0 -197
  823. package/dist/server/context.js.map +0 -1
  824. package/dist/server/fetchable-loader-store.d.ts +0 -18
  825. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  826. package/dist/server/fetchable-loader-store.js +0 -18
  827. package/dist/server/fetchable-loader-store.js.map +0 -1
  828. package/dist/server/handle-store.d.ts +0 -85
  829. package/dist/server/handle-store.d.ts.map +0 -1
  830. package/dist/server/handle-store.js +0 -142
  831. package/dist/server/handle-store.js.map +0 -1
  832. package/dist/server/loader-registry.d.ts +0 -55
  833. package/dist/server/loader-registry.d.ts.map +0 -1
  834. package/dist/server/loader-registry.js +0 -132
  835. package/dist/server/loader-registry.js.map +0 -1
  836. package/dist/server/request-context.d.ts +0 -226
  837. package/dist/server/request-context.d.ts.map +0 -1
  838. package/dist/server/request-context.js +0 -290
  839. package/dist/server/request-context.js.map +0 -1
  840. package/dist/server/root-layout.d.ts +0 -4
  841. package/dist/server/root-layout.d.ts.map +0 -1
  842. package/dist/server/root-layout.js +0 -5
  843. package/dist/server/root-layout.js.map +0 -1
  844. package/dist/server.d.ts +0 -15
  845. package/dist/server.d.ts.map +0 -1
  846. package/dist/server.js +0 -20
  847. package/dist/server.js.map +0 -1
  848. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  849. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  850. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  851. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  852. package/dist/ssr/index.d.ts +0 -98
  853. package/dist/ssr/index.d.ts.map +0 -1
  854. package/dist/ssr/index.js +0 -158
  855. package/dist/ssr/index.js.map +0 -1
  856. package/dist/static-handler.d.ts +0 -50
  857. package/dist/static-handler.d.ts.map +0 -1
  858. package/dist/static-handler.gen.d.ts +0 -5
  859. package/dist/static-handler.gen.d.ts.map +0 -1
  860. package/dist/static-handler.gen.js +0 -5
  861. package/dist/static-handler.gen.js.map +0 -1
  862. package/dist/static-handler.js +0 -29
  863. package/dist/static-handler.js.map +0 -1
  864. package/dist/theme/ThemeProvider.d.ts +0 -20
  865. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  866. package/dist/theme/ThemeProvider.js +0 -240
  867. package/dist/theme/ThemeProvider.js.map +0 -1
  868. package/dist/theme/ThemeScript.d.ts +0 -48
  869. package/dist/theme/ThemeScript.d.ts.map +0 -1
  870. package/dist/theme/ThemeScript.js +0 -13
  871. package/dist/theme/ThemeScript.js.map +0 -1
  872. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  873. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  874. package/dist/theme/__tests__/theme.test.js +0 -103
  875. package/dist/theme/__tests__/theme.test.js.map +0 -1
  876. package/dist/theme/constants.d.ts +0 -29
  877. package/dist/theme/constants.d.ts.map +0 -1
  878. package/dist/theme/constants.js +0 -48
  879. package/dist/theme/constants.js.map +0 -1
  880. package/dist/theme/index.d.ts +0 -31
  881. package/dist/theme/index.d.ts.map +0 -1
  882. package/dist/theme/index.js +0 -36
  883. package/dist/theme/index.js.map +0 -1
  884. package/dist/theme/theme-context.d.ts +0 -40
  885. package/dist/theme/theme-context.d.ts.map +0 -1
  886. package/dist/theme/theme-context.js +0 -60
  887. package/dist/theme/theme-context.js.map +0 -1
  888. package/dist/theme/theme-script.d.ts +0 -27
  889. package/dist/theme/theme-script.d.ts.map +0 -1
  890. package/dist/theme/theme-script.js +0 -147
  891. package/dist/theme/theme-script.js.map +0 -1
  892. package/dist/theme/types.d.ts +0 -163
  893. package/dist/theme/types.d.ts.map +0 -1
  894. package/dist/theme/types.js +0 -11
  895. package/dist/theme/types.js.map +0 -1
  896. package/dist/theme/use-theme.d.ts +0 -12
  897. package/dist/theme/use-theme.d.ts.map +0 -1
  898. package/dist/theme/use-theme.js +0 -40
  899. package/dist/theme/use-theme.js.map +0 -1
  900. package/dist/types.d.ts +0 -1479
  901. package/dist/types.d.ts.map +0 -1
  902. package/dist/types.js +0 -10
  903. package/dist/types.js.map +0 -1
  904. package/dist/urls.d.ts +0 -441
  905. package/dist/urls.d.ts.map +0 -1
  906. package/dist/urls.gen.d.ts +0 -8
  907. package/dist/urls.gen.d.ts.map +0 -1
  908. package/dist/urls.gen.js +0 -8
  909. package/dist/urls.gen.js.map +0 -1
  910. package/dist/urls.js +0 -443
  911. package/dist/urls.js.map +0 -1
  912. package/dist/use-loader.d.ts +0 -127
  913. package/dist/use-loader.d.ts.map +0 -1
  914. package/dist/use-loader.js +0 -237
  915. package/dist/use-loader.js.map +0 -1
  916. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  917. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  918. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  919. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  920. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  921. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  922. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  923. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  924. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  925. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  926. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  927. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  928. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  929. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  930. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  931. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  932. package/dist/vite/ast-handler-extract.d.ts +0 -49
  933. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  934. package/dist/vite/ast-handler-extract.js +0 -249
  935. package/dist/vite/ast-handler-extract.js.map +0 -1
  936. package/dist/vite/expose-action-id.d.ts +0 -19
  937. package/dist/vite/expose-action-id.d.ts.map +0 -1
  938. package/dist/vite/expose-action-id.js +0 -250
  939. package/dist/vite/expose-action-id.js.map +0 -1
  940. package/dist/vite/expose-id-utils.d.ts +0 -69
  941. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  942. package/dist/vite/expose-id-utils.js +0 -289
  943. package/dist/vite/expose-id-utils.js.map +0 -1
  944. package/dist/vite/expose-internal-ids.d.ts +0 -22
  945. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  946. package/dist/vite/expose-internal-ids.js +0 -886
  947. package/dist/vite/expose-internal-ids.js.map +0 -1
  948. package/dist/vite/index.d.ts +0 -149
  949. package/dist/vite/index.d.ts.map +0 -1
  950. package/dist/vite/index.js.map +0 -1
  951. package/dist/vite/index.named-routes.gen.ts +0 -103
  952. package/dist/vite/package-resolution.d.ts +0 -43
  953. package/dist/vite/package-resolution.d.ts.map +0 -1
  954. package/dist/vite/package-resolution.js +0 -112
  955. package/dist/vite/package-resolution.js.map +0 -1
  956. package/dist/vite/virtual-entries.d.ts +0 -25
  957. package/dist/vite/virtual-entries.d.ts.map +0 -1
  958. package/dist/vite/virtual-entries.js +0 -110
  959. package/dist/vite/virtual-entries.js.map +0 -1
  960. package/skills/testing/SKILL.md +0 -226
  961. package/src/route-definition/route-function.ts +0 -119
@@ -1,22 +0,0 @@
1
- // React exports for browser navigation
2
- // Hook with Zustand-style selectors
3
- export { useNavigation, } from "./use-navigation.js";
4
- // Action state tracking hook
5
- export { useAction } from "./use-action.js";
6
- // Segments state hook
7
- export { useSegments, initSegmentsSync } from "./use-segments.js";
8
- // Handle data hook
9
- export { useHandle, initHandleDataSync } from "./use-handle.js";
10
- // Client cache controls hook
11
- export { useClientCache, } from "./use-client-cache.js";
12
- // Provider
13
- export { NavigationProvider, } from "./NavigationProvider.js";
14
- // Context (for advanced usage)
15
- export { NavigationStoreContext, } from "./context.js";
16
- // Link component
17
- export { Link, } from "./Link.js";
18
- // Link status hook
19
- export { useLinkStatus } from "./use-link-status.js";
20
- // Scroll restoration
21
- export { ScrollRestoration, useScrollRestoration, } from "./ScrollRestoration.js";
22
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/react/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AAEvC,oCAAoC;AACpC,OAAO,EACL,aAAa,GAGd,MAAM,qBAAqB,CAAC;AAE7B,6BAA6B;AAC7B,OAAO,EAAE,SAAS,EAA2B,MAAM,iBAAiB,CAAC;AAErE,sBAAsB;AACtB,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAsB,MAAM,mBAAmB,CAAC;AAEtF,mBAAmB;AACnB,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEhE,6BAA6B;AAC7B,OAAO,EACL,cAAc,GAEf,MAAM,uBAAuB,CAAC;AAE/B,WAAW;AACX,OAAO,EACL,kBAAkB,GAEnB,MAAM,yBAAyB,CAAC;AAEjC,+BAA+B;AAC/B,OAAO,EACL,sBAAsB,GAEvB,MAAM,cAAc,CAAC;AAEtB,iBAAiB;AACjB,OAAO,EACL,IAAI,GAGL,MAAM,WAAW,CAAC;AAEnB,mBAAmB;AACnB,OAAO,EAAE,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AAEtE,qBAAqB;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,GAErB,MAAM,wBAAwB,CAAC"}
@@ -1,63 +0,0 @@
1
- /**
2
- * Shared location state utilities - works in both RSC and client contexts
3
- * No "use client" directive so it can be imported from RSC
4
- */
5
- /**
6
- * Internal entry representing a state value with its unique key
7
- */
8
- export interface LocationStateEntry {
9
- readonly __rsc_ls_key: string;
10
- readonly __rsc_ls_value: unknown;
11
- }
12
- /**
13
- * Type-safe location state definition
14
- *
15
- * Created via createLocationState(), used with Link's state prop
16
- * and useLocationState() hook.
17
- */
18
- export interface LocationStateDefinition<TArgs extends unknown[], TState> {
19
- (...args: TArgs): LocationStateEntry;
20
- readonly __rsc_ls_key: string;
21
- }
22
- /**
23
- * Create a type-safe location state definition
24
- *
25
- * The key is auto-generated by the Vite exposeInternalIds plugin based on
26
- * file path and export name. No manual key required.
27
- *
28
- * @param key Auto-injected by Vite plugin, do not provide manually
29
- * @returns A typed state definition for use with Link and useLocationState
30
- *
31
- * @example
32
- * ```typescript
33
- * // Define typed state (key auto-generated from file + export)
34
- * export const ProductState = createLocationState<{ name: string; price: number }>();
35
- *
36
- * // Use in Link - state is captured at click time
37
- * <Link to="/product/123" state={[ProductState({ name: product.name, price: product.price })]}>
38
- * View Product
39
- * </Link>
40
- *
41
- * // Multiple states
42
- * <Link to="/checkout" state={[ProductState(productData), CartState(cartData)]}>
43
- * Checkout
44
- * </Link>
45
- *
46
- * // For lazy evaluation (click-time), pass a getter
47
- * <Link to="/product" state={[ProductState(() => ({ name: product.name }))]}>
48
- *
49
- * // Read with type safety
50
- * const productState = useLocationState(ProductState);
51
- * // productState: { name: string; price: number } | undefined
52
- * ```
53
- */
54
- export declare function createLocationState<TState>(key?: string): LocationStateDefinition<[TState | (() => TState)], TState>;
55
- /**
56
- * Check if a value is a LocationStateEntry
57
- */
58
- export declare function isLocationStateEntry(value: unknown): value is LocationStateEntry;
59
- /**
60
- * Resolve state entries into a flat object for history.state
61
- */
62
- export declare function resolveLocationStateEntries(entries: LocationStateEntry[]): Record<string, unknown>;
63
- //# sourceMappingURL=location-state-shared.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location-state-shared.d.ts","sourceRoot":"","sources":["../../../src/browser/react/location-state-shared.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,MAAM;IACtE,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,kBAAkB,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAKD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EACxC,GAAG,CAAC,EAAE,MAAM,GACX,uBAAuB,CAAC,CAAC,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAgC5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAQhF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,kBAAkB,EAAE,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB"}
@@ -1,81 +0,0 @@
1
- /**
2
- * Shared location state utilities - works in both RSC and client contexts
3
- * No "use client" directive so it can be imported from RSC
4
- */
5
- // Track used keys to detect duplicates in development
6
- const usedKeys = new Set();
7
- /**
8
- * Create a type-safe location state definition
9
- *
10
- * The key is auto-generated by the Vite exposeInternalIds plugin based on
11
- * file path and export name. No manual key required.
12
- *
13
- * @param key Auto-injected by Vite plugin, do not provide manually
14
- * @returns A typed state definition for use with Link and useLocationState
15
- *
16
- * @example
17
- * ```typescript
18
- * // Define typed state (key auto-generated from file + export)
19
- * export const ProductState = createLocationState<{ name: string; price: number }>();
20
- *
21
- * // Use in Link - state is captured at click time
22
- * <Link to="/product/123" state={[ProductState({ name: product.name, price: product.price })]}>
23
- * View Product
24
- * </Link>
25
- *
26
- * // Multiple states
27
- * <Link to="/checkout" state={[ProductState(productData), CartState(cartData)]}>
28
- * Checkout
29
- * </Link>
30
- *
31
- * // For lazy evaluation (click-time), pass a getter
32
- * <Link to="/product" state={[ProductState(() => ({ name: product.name }))]}>
33
- *
34
- * // Read with type safety
35
- * const productState = useLocationState(ProductState);
36
- * // productState: { name: string; price: number } | undefined
37
- * ```
38
- */
39
- export function createLocationState(key) {
40
- if (!key && process.env.NODE_ENV !== "production") {
41
- throw new Error("[rsc-router] createLocationState is missing a key. " +
42
- "Make sure the exposeInternalIds Vite plugin is enabled and " +
43
- "the state is exported with: export const MyState = createLocationState(...)");
44
- }
45
- const fullKey = `__rsc_ls_${key}`;
46
- // Warn about duplicate keys in development
47
- if (process.env.NODE_ENV !== "production" && usedKeys.has(fullKey)) {
48
- console.warn(`[rsc-router] Duplicate location state key "${key}". ` +
49
- `Each createLocationState call should have a unique key.`);
50
- }
51
- usedKeys.add(fullKey);
52
- const definition = Object.assign((stateOrGetter) => ({
53
- __rsc_ls_key: fullKey,
54
- // Resolve getter immediately - lazy evaluation happens via Link's stateRef pattern
55
- __rsc_ls_value: typeof stateOrGetter === "function"
56
- ? stateOrGetter()
57
- : stateOrGetter,
58
- }), { __rsc_ls_key: fullKey });
59
- return definition;
60
- }
61
- /**
62
- * Check if a value is a LocationStateEntry
63
- */
64
- export function isLocationStateEntry(value) {
65
- return (value !== null &&
66
- typeof value === "object" &&
67
- "__rsc_ls_key" in value &&
68
- "__rsc_ls_value" in value &&
69
- typeof value.__rsc_ls_key === "string");
70
- }
71
- /**
72
- * Resolve state entries into a flat object for history.state
73
- */
74
- export function resolveLocationStateEntries(entries) {
75
- const result = {};
76
- for (const entry of entries) {
77
- result[entry.__rsc_ls_key] = entry.__rsc_ls_value;
78
- }
79
- return result;
80
- }
81
- //# sourceMappingURL=location-state-shared.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location-state-shared.js","sourceRoot":"","sources":["../../../src/browser/react/location-state-shared.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqBH,sDAAsD;AACtD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAY;IAEZ,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,qDAAqD;YACnD,6DAA6D;YAC7D,6EAA6E,CAChF,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAElC,2CAA2C;IAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACnE,OAAO,CAAC,IAAI,CACV,8CAA8C,GAAG,KAAK;YACpD,yDAAyD,CAC5D,CAAC;IACJ,CAAC;IACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEtB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAC9B,CAAC,aAAsC,EAAsB,EAAE,CAAC,CAAC;QAC/D,YAAY,EAAE,OAAO;QACrB,mFAAmF;QACnF,cAAc,EACZ,OAAO,aAAa,KAAK,UAAU;YACjC,CAAC,CAAE,aAA8B,EAAE;YACnC,CAAC,CAAC,aAAa;KACpB,CAAC,EACF,EAAE,YAAY,EAAE,OAAO,EAAE,CAC1B,CAAC;IAEF,OAAO,UAAwE,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,CACL,KAAK,KAAK,IAAI;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,cAAc,IAAI,KAAK;QACvB,gBAAgB,IAAI,KAAK;QACzB,OAAQ,KAA4B,CAAC,YAAY,KAAK,QAAQ,CAC/D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,OAA6B;IAE7B,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,23 +0,0 @@
1
- import type { LocationStateDefinition } from "./location-state-shared.js";
2
- export { createLocationState, isLocationStateEntry, resolveLocationStateEntries, type LocationStateEntry, type LocationStateDefinition, } from "./location-state-shared.js";
3
- /**
4
- * Hook to read location state from history.state
5
- *
6
- * Overloaded:
7
- * - With definition: Returns typed state from the specific key
8
- * - With type param only: Returns legacy state from history.state.state (backwards compat)
9
- *
10
- * @example
11
- * ```typescript
12
- * // Typed access with definition (recommended)
13
- * const ProductState = createLocationState<{ name: string }>("product");
14
- * const state = useLocationState(ProductState);
15
- * // state: { name: string } | undefined
16
- *
17
- * // Legacy typed access (backwards compatible)
18
- * const legacyState = useLocationState<{ from?: string }>();
19
- * ```
20
- */
21
- export declare function useLocationState<TArgs extends unknown[], TState>(definition: LocationStateDefinition<TArgs, TState>): TState | undefined;
22
- export declare function useLocationState<T = unknown>(): T | undefined;
23
- //# sourceMappingURL=location-state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location-state.d.ts","sourceRoot":"","sources":["../../../src/browser/react/location-state.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAG1E,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,MAAM,4BAA4B,CAAC;AAEpC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,MAAM,EAC9D,UAAU,EAAE,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,GACjD,MAAM,GAAG,SAAS,CAAC;AACtB,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,OAAO,KAAK,CAAC,GAAG,SAAS,CAAC"}
@@ -1,29 +0,0 @@
1
- "use client";
2
- import { useState, useEffect } from "react";
3
- // Re-export shared utilities and types
4
- export { createLocationState, isLocationStateEntry, resolveLocationStateEntries, } from "./location-state-shared.js";
5
- export function useLocationState(definition) {
6
- const [state, setState] = useState(() => {
7
- if (typeof window === "undefined")
8
- return undefined;
9
- if (definition) {
10
- return window.history.state?.[definition.__rsc_ls_key];
11
- }
12
- // Legacy: return history.state.state for backwards compatibility
13
- return window.history.state?.state;
14
- });
15
- useEffect(() => {
16
- const handlePopstate = () => {
17
- if (definition) {
18
- setState(window.history.state?.[definition.__rsc_ls_key]);
19
- }
20
- else {
21
- setState(window.history.state?.state);
22
- }
23
- };
24
- window.addEventListener("popstate", handlePopstate);
25
- return () => window.removeEventListener("popstate", handlePopstate);
26
- }, [definition]);
27
- return state;
28
- }
29
- //# sourceMappingURL=location-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location-state.js","sourceRoot":"","sources":["../../../src/browser/react/location-state.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG5C,uCAAuC;AACvC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,GAG5B,MAAM,4BAA4B,CAAC;AAwBpC,MAAM,UAAU,gBAAgB,CAC9B,UAAmD;IAEnD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,GAAG,EAAE;QAC1D,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,SAAS,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAuB,CAAC;QAC/E,CAAC;QACD,iEAAiE;QACjE,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAA2B,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,IAAI,UAAU,EAAE,CAAC;gBACf,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,CAAuB,CAAC,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAA2B,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QACpD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,24 +0,0 @@
1
- import { type Context, type ReactNode } from "react";
2
- /**
3
- * Context for the current include() mount path.
4
- *
5
- * Each include() wraps its subtree with a MountContext.Provider
6
- * carrying the URL prefix. Nested includes override the context,
7
- * so useMount() returns the nearest mount path.
8
- *
9
- * Default value "/" means root-level (no include wrapping).
10
- */
11
- export declare const MountContext: Context<string>;
12
- /**
13
- * Provider wrapper for MountContext.
14
- *
15
- * RSC server components cannot use MountContext.Provider directly because
16
- * .Provider is a property on the context object, not a named export.
17
- * Client reference proxies on the RSC server return undefined for property
18
- * access. This wrapper is a proper "use client" export that RSC can reference.
19
- */
20
- export declare function MountContextProvider({ value, children, }: {
21
- value: string;
22
- children: ReactNode;
23
- }): ReactNode;
24
- //# sourceMappingURL=mount-context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mount-context.d.ts","sourceRoot":"","sources":["../../../src/browser/react/mount-context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,CAA8B,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACrB,GAAG,SAAS,CAEZ"}
@@ -1,24 +0,0 @@
1
- "use client";
2
- import { createContext, createElement } from "react";
3
- /**
4
- * Context for the current include() mount path.
5
- *
6
- * Each include() wraps its subtree with a MountContext.Provider
7
- * carrying the URL prefix. Nested includes override the context,
8
- * so useMount() returns the nearest mount path.
9
- *
10
- * Default value "/" means root-level (no include wrapping).
11
- */
12
- export const MountContext = createContext("/");
13
- /**
14
- * Provider wrapper for MountContext.
15
- *
16
- * RSC server components cannot use MountContext.Provider directly because
17
- * .Provider is a property on the context object, not a named export.
18
- * Client reference proxies on the RSC server return undefined for property
19
- * access. This wrapper is a proper "use client" export that RSC can reference.
20
- */
21
- export function MountContextProvider({ value, children, }) {
22
- return createElement(MountContext, { value }, children);
23
- }
24
- //# sourceMappingURL=mount-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mount-context.js","sourceRoot":"","sources":["../../../src/browser/react/mount-context.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,aAAa,EAAE,aAAa,EAAgC,MAAM,OAAO,CAAC;AAEnF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAoB,aAAa,CAAS,GAAG,CAAC,CAAC;AAExE;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,aAAa,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC1D,CAAC"}
@@ -1,64 +0,0 @@
1
- import type { TrackedActionState } from "../types.js";
2
- /**
3
- * Extract action ID from a server action function or string.
4
- *
5
- * Actions passed as props from server components lose their metadata
6
- * during RSC serialization - use a string action name instead.
7
- */
8
- export declare function getActionId(action: ServerActionFunction | string): string;
9
- /**
10
- * Server action function type
11
- * Server actions have a $$id property added by the RSC compiler
12
- */
13
- export type ServerActionFunction = ((...args: any[]) => Promise<any>) & {
14
- $$id?: string;
15
- };
16
- /**
17
- * Hook to track the lifecycle of a specific server action
18
- *
19
- * Unlike useNavigation which tracks global navigation state, useAction
20
- * tracks the state of individual server action invocations.
21
- *
22
- * Uses the event controller for reactive state management.
23
- * State is derived from the inflight actions tracked by the controller.
24
- *
25
- * Features:
26
- * - Tracks action lifecycle: idle → loading → streaming → idle
27
- * - Captures result/error locally (React handles cleanup)
28
- * - If multiple actions fire, tracks only the last one
29
- * - Supports selector pattern like useNavigation
30
- *
31
- * Matching behavior:
32
- * - **Function reference**: Uses full $$id for exact matching. This is precise
33
- * and distinguishes between actions with the same name in different files.
34
- * - **String**: Matches by suffix (action name after #). This is convenient
35
- * but may be ambiguous if multiple files export the same action name.
36
- *
37
- * @param action - Either a server action function or a string action name.
38
- * - **Function**: Must be directly imported in the client component.
39
- * Actions passed as props from server components will throw an error.
40
- * - **String**: The exported function name from your "use server" file.
41
- * Matches any action ending with "#actionName" (suffix match).
42
- *
43
- * @example
44
- * ```tsx
45
- * // Option 1: Direct import (precise matching)
46
- * import { addToCart } from './actions';
47
- * const actionState = useAction(addToCart);
48
- *
49
- * // Option 2: String-based (suffix matching)
50
- * // Matches "hash#addToCart" or "src/actions.ts#addToCart"
51
- * const actionState = useAction('addToCart');
52
- *
53
- * // With selector for specific values
54
- * const isLoading = useAction(addToCart, state => state.state === 'loading');
55
- * const error = useAction(addToCart, state => state.error);
56
- * ```
57
- *
58
- * @note Actions passed as props from server components lose their metadata
59
- * during RSC serialization. Use a string action name or import directly.
60
- */
61
- export declare function useAction(action: ServerActionFunction | string): TrackedActionState;
62
- export declare function useAction<T>(action: ServerActionFunction | string, selector: (state: TrackedActionState) => T): T;
63
- export type { TrackedActionState };
64
- //# sourceMappingURL=use-action.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-action.d.ts","sourceRoot":"","sources":["../../../src/browser/react/use-action.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAAwB,MAAM,aAAa,CAAC;AA0B5E;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,GAAG,MAAM,CAiCzE;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,oBAAoB,GAAG,MAAM,GACpC,kBAAkB,CAAC;AACtB,wBAAgB,SAAS,CAAC,CAAC,EACzB,MAAM,EAAE,oBAAoB,GAAG,MAAM,EACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,CAAC,GACzC,CAAC,CAAC;AAsGL,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,134 +0,0 @@
1
- "use client";
2
- import { useContext, useState, useEffect, useRef, useOptimistic, startTransition, } from "react";
3
- import { NavigationStoreContext } from "./context.js";
4
- import { invariant } from "../../errors.js";
5
- /**
6
- * Default action state (idle with no payload)
7
- */
8
- const DEFAULT_ACTION_STATE = {
9
- state: "idle",
10
- actionId: null,
11
- payload: null,
12
- error: null,
13
- result: null,
14
- };
15
- /**
16
- * Normalize action ID - returns the ID as-is
17
- *
18
- * Server actions have IDs like "hash#actionName" or "src/actions.ts#actionName".
19
- * When using function references, we use the full ID for exact matching.
20
- * When using strings, the event controller supports suffix matching
21
- * (e.g., "addToCart" matches "hash#addToCart").
22
- */
23
- function normalizeActionId(actionId) {
24
- return actionId;
25
- }
26
- /**
27
- * Extract action ID from a server action function or string.
28
- *
29
- * Actions passed as props from server components lose their metadata
30
- * during RSC serialization - use a string action name instead.
31
- */
32
- export function getActionId(action) {
33
- invariant(typeof action === "function" || typeof action === "string", `useAction: action must be a function or string, got ${typeof action}`);
34
- const actionId = action?.$$id;
35
- if (actionId) {
36
- return normalizeActionId(actionId);
37
- }
38
- // If action is a string, use it directly
39
- if (typeof action === "string") {
40
- return action;
41
- }
42
- // If we get here, this is likely an action passed as prop from a server component
43
- // These lose their metadata during RSC serialization
44
- throw new Error(`useAction: Cannot extract action ID from function reference.
45
-
46
- This typically happens when an action is passed as a prop from a server component.
47
- Actions passed through RSC lose their metadata during serialization.
48
-
49
- Solutions:
50
- 1. Import the action directly in your client component:
51
- import { myAction } from './actions';
52
- const state = useAction(myAction);
53
-
54
- 2. Use the action name as a string:
55
- const state = useAction("myAction");
56
-
57
- The string must match the exported function name from your "use server" file.`);
58
- }
59
- export function useAction(action, selector) {
60
- const ctx = useContext(NavigationStoreContext);
61
- const actionId = typeof window !== "undefined" && typeof document !== "undefined"
62
- ? getActionId(action)
63
- : "";
64
- // Base state for useOptimistic
65
- const [baseState, setBaseState] = useState(() => {
66
- if (!ctx) {
67
- return selector ? selector(DEFAULT_ACTION_STATE) : DEFAULT_ACTION_STATE;
68
- }
69
- const state = ctx.eventController.getActionState(actionId);
70
- return selector ? selector(state) : state;
71
- });
72
- const prevSelected = useRef(baseState);
73
- prevSelected.current = baseState;
74
- // useOptimistic allows immediate updates during transitions/actions
75
- const [optimisticState, setOptimisticState] = useOptimistic(null);
76
- // Memoize the selector to avoid unnecessary re-subscriptions
77
- const selectorRef = useRef(selector);
78
- selectorRef.current = selector;
79
- // Subscribe to action state changes from event controller
80
- useEffect(() => {
81
- if (!ctx)
82
- return;
83
- // Subscribe to action-specific updates
84
- const unsubscribe = ctx.eventController.subscribeToAction(actionId, (state) => {
85
- const selectedState = selectorRef.current
86
- ? selectorRef.current(state)
87
- : state;
88
- if (!isShallowEqual(selectedState, prevSelected.current)) {
89
- prevSelected.current = selectedState;
90
- setBaseState(selectedState);
91
- startTransition(() => {
92
- setOptimisticState(selectedState);
93
- });
94
- }
95
- });
96
- return () => {
97
- unsubscribe();
98
- };
99
- }, [actionId]);
100
- return (optimisticState ?? baseState);
101
- }
102
- function isShallowEqual(selectedState, baseState) {
103
- // If references are equal, they're shallow equal
104
- //@ts-expect-error -- TS doesn't like comparing generics
105
- if (selectedState === baseState) {
106
- return true;
107
- }
108
- // If either is null/undefined and they're not equal, they're not shallow equal
109
- if (selectedState == null || baseState == null) {
110
- return false;
111
- }
112
- // If types are different, they're not shallow equal
113
- if (typeof selectedState !== typeof baseState) {
114
- return false;
115
- }
116
- // For primitives, === comparison is sufficient (already checked above)
117
- if (typeof selectedState !== "object") {
118
- return false;
119
- }
120
- // For objects, compare keys and values shallowly
121
- const keysA = Object.keys(selectedState);
122
- const keysB = Object.keys(baseState);
123
- if (keysA.length !== keysB.length) {
124
- return false;
125
- }
126
- for (const key of keysA) {
127
- if (!Object.prototype.hasOwnProperty.call(baseState, key) ||
128
- selectedState[key] !== baseState[key]) {
129
- return false;
130
- }
131
- }
132
- return true;
133
- }
134
- //# sourceMappingURL=use-action.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-action.js","sourceRoot":"","sources":["../../../src/browser/react/use-action.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EACL,UAAU,EACV,QAAQ,EACR,SAAS,EACT,MAAM,EACN,aAAa,EACb,eAAe,GAChB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,MAAM,oBAAoB,GAAuB;IAC/C,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,QAAgB;IACzC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,MAAqC;IAC/D,SAAS,CACP,OAAO,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,KAAK,QAAQ,EAC1D,uDAAuD,OAAO,MAAM,EAAE,CACvE,CAAC;IACF,MAAM,QAAQ,GAAI,MAAc,EAAE,IAAI,CAAC;IACvC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,yCAAyC;IACzC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kFAAkF;IAClF,qDAAqD;IACrD,MAAM,IAAI,KAAK,CACb;;;;;;;;;;;;;8EAa0E,CAC3E,CAAC;AACJ,CAAC;AA8DD,MAAM,UAAU,SAAS,CACvB,MAAqC,EACrC,QAA2C;IAE3C,MAAM,GAAG,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAC/C,MAAM,QAAQ,GACZ,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW;QAC9D,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;QACrB,CAAC,CAAC,EAAE,CAAC;IAET,+BAA+B;IAC/B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAyB,GAAG,EAAE;QACtE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC;QAC1E,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACjC,oEAAoE;IACpE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,aAAa,CAEzD,IAAK,CAAC,CAAC;IAET,6DAA6D;IAC7D,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAE/B,0DAA0D;IAC1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,uCAAuC;QACvC,MAAM,WAAW,GAAG,GAAG,CAAC,eAAe,CAAC,iBAAiB,CACvD,QAAQ,EACR,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO;gBACvC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5B,CAAC,CAAC,KAAK,CAAC;YAEV,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,YAAY,CAAC,OAAO,GAAG,aAAa,CAAC;gBACrC,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,eAAe,CAAC,GAAG,EAAE;oBACnB,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBACpC,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CACF,CAAC;QAEF,OAAO,GAAG,EAAE;YACV,WAAW,EAAE,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CAAC,eAAe,IAAI,SAAS,CAA2B,CAAC;AAClE,CAAC;AAED,SAAS,cAAc,CAAO,aAAgB,EAAE,SAAY;IAC1D,iDAAiD;IACjD,wDAAwD;IACxD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+EAA+E;IAC/E,IAAI,aAAa,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oDAAoD;IACpD,IAAI,OAAO,aAAa,KAAK,OAAO,SAAS,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uEAAuE;IACvE,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iDAAiD;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,aAAuB,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAmB,CAAC,CAAC;IAE/C,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC;YACpD,aAAqB,CAAC,GAAG,CAAC,KAAM,SAAiB,CAAC,GAAG,CAAC,EACvD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,41 +0,0 @@
1
- /**
2
- * Return type for useClientCache hook
3
- */
4
- export interface ClientCacheControls {
5
- /**
6
- * Clear the client-side navigation cache.
7
- * Call this after data changes that happen outside of server actions
8
- * (e.g., REST API calls, WebSocket updates, etc.)
9
- *
10
- * This will also broadcast to other tabs to clear their caches.
11
- */
12
- clear: () => void;
13
- }
14
- /**
15
- * Hook to access client-side cache controls
16
- *
17
- * Use this when you need to manually invalidate the navigation cache
18
- * after data changes that happen outside of server actions.
19
- *
20
- * Server actions automatically clear the cache, so you only need this for:
21
- * - REST API mutations
22
- * - WebSocket-driven updates
23
- * - Other non-RSC data changes
24
- *
25
- * @example
26
- * ```tsx
27
- * function DataEditor() {
28
- * const { clear } = useClientCache();
29
- *
30
- * async function handleSave() {
31
- * await fetch('/api/data', { method: 'POST', body: JSON.stringify(data) });
32
- * // Clear cache so back/forward navigation shows fresh data
33
- * clear();
34
- * }
35
- *
36
- * return <button onClick={handleSave}>Save</button>;
37
- * }
38
- * ```
39
- */
40
- export declare function useClientCache(): ClientCacheControls;
41
- //# sourceMappingURL=use-client-cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-client-cache.d.ts","sourceRoot":"","sources":["../../../src/browser/react/use-client-cache.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,IAAI,mBAAmB,CAUpD"}
@@ -1,39 +0,0 @@
1
- "use client";
2
- import { useContext, useCallback } from "react";
3
- import { NavigationStoreContext } from "./context.js";
4
- /**
5
- * Hook to access client-side cache controls
6
- *
7
- * Use this when you need to manually invalidate the navigation cache
8
- * after data changes that happen outside of server actions.
9
- *
10
- * Server actions automatically clear the cache, so you only need this for:
11
- * - REST API mutations
12
- * - WebSocket-driven updates
13
- * - Other non-RSC data changes
14
- *
15
- * @example
16
- * ```tsx
17
- * function DataEditor() {
18
- * const { clear } = useClientCache();
19
- *
20
- * async function handleSave() {
21
- * await fetch('/api/data', { method: 'POST', body: JSON.stringify(data) });
22
- * // Clear cache so back/forward navigation shows fresh data
23
- * clear();
24
- * }
25
- *
26
- * return <button onClick={handleSave}>Save</button>;
27
- * }
28
- * ```
29
- */
30
- export function useClientCache() {
31
- const ctx = useContext(NavigationStoreContext);
32
- const clear = useCallback(() => {
33
- if (ctx?.store) {
34
- ctx.store.clearHistoryCache();
35
- }
36
- }, [ctx]);
37
- return { clear };
38
- }
39
- //# sourceMappingURL=use-client-cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-client-cache.js","sourceRoot":"","sources":["../../../src/browser/react/use-client-cache.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAgBtD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAE/C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC"}
@@ -1,31 +0,0 @@
1
- import type { Handle } from "../../handle.js";
2
- import type { HandleData } from "../types.js";
3
- /**
4
- * Initialize handle data synchronously for SSR.
5
- * Called before rendering to populate state for useState initializer.
6
- *
7
- * @param data - Handle data from RSC payload
8
- * @param matched - Segment order for reduction
9
- */
10
- export declare function initHandleDataSync(data: HandleData, matched?: string[]): void;
11
- /**
12
- * Hook to access collected handle data.
13
- *
14
- * Returns the collected value from all route segments that pushed to this handle.
15
- * Re-renders when handle data changes (navigation, actions).
16
- *
17
- * @param handle - The handle to read
18
- * @param selector - Optional selector for performance (only re-render when selected value changes)
19
- *
20
- * @example
21
- * ```tsx
22
- * // Get all breadcrumbs
23
- * const breadcrumbs = useHandle(Breadcrumbs);
24
- *
25
- * // With selector - only re-render when last crumb changes
26
- * const lastCrumb = useHandle(Breadcrumbs, (data) => data.at(-1));
27
- * ```
28
- */
29
- export declare function useHandle<T, A>(handle: Handle<T, A>): A;
30
- export declare function useHandle<T, A, S>(handle: Handle<T, A>, selector: (data: A) => S): S;
31
- //# sourceMappingURL=use-handle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-handle.d.ts","sourceRoot":"","sources":["../../../src/browser/react/use-handle.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAqG9C;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAG7E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACzD,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC/B,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GACvB,CAAC,CAAC"}