@rangojs/router 0.0.0-experimental.49 → 0.0.0-experimental.4ffa0f9b

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 (910) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +421 -121
  4. package/package.json +2 -2
  5. package/skills/cache-guide/SKILL.md +32 -0
  6. package/skills/caching/SKILL.md +8 -0
  7. package/skills/links/SKILL.md +3 -1
  8. package/skills/loader/SKILL.md +53 -43
  9. package/skills/middleware/SKILL.md +2 -0
  10. package/skills/prerender/SKILL.md +110 -68
  11. package/skills/route/SKILL.md +31 -0
  12. package/skills/router-setup/SKILL.md +87 -2
  13. package/skills/typesafety/SKILL.md +10 -0
  14. package/src/__internal.ts +1 -1
  15. package/src/browser/app-version.ts +14 -0
  16. package/src/browser/navigation-bridge.ts +16 -3
  17. package/src/browser/navigation-client.ts +64 -40
  18. package/src/browser/navigation-store.ts +43 -8
  19. package/src/browser/partial-update.ts +27 -5
  20. package/src/browser/prefetch/fetch.ts +8 -2
  21. package/src/browser/prefetch/queue.ts +61 -29
  22. package/src/browser/prefetch/resource-ready.ts +77 -0
  23. package/src/browser/react/Link.tsx +44 -8
  24. package/src/browser/react/NavigationProvider.tsx +13 -4
  25. package/src/browser/react/context.ts +7 -2
  26. package/src/browser/react/use-handle.ts +9 -58
  27. package/src/browser/react/use-router.ts +21 -8
  28. package/src/browser/rsc-router.tsx +26 -3
  29. package/src/browser/scroll-restoration.ts +10 -8
  30. package/src/browser/server-action-bridge.ts +8 -6
  31. package/src/browser/types.ts +27 -5
  32. package/src/build/generate-manifest.ts +6 -6
  33. package/src/build/generate-route-types.ts +3 -0
  34. package/src/build/route-types/include-resolution.ts +8 -1
  35. package/src/build/route-types/router-processing.ts +211 -72
  36. package/src/build/route-types/scan-filter.ts +8 -1
  37. package/src/cache/cache-scope.ts +46 -5
  38. package/src/cache/taint.ts +55 -0
  39. package/src/client.tsx +2 -56
  40. package/src/context-var.ts +72 -2
  41. package/src/handle.ts +40 -0
  42. package/src/index.rsc.ts +3 -1
  43. package/src/index.ts +8 -0
  44. package/src/prerender/store.ts +5 -4
  45. package/src/prerender.ts +138 -77
  46. package/src/reverse.ts +22 -1
  47. package/src/route-definition/dsl-helpers.ts +42 -19
  48. package/src/route-definition/helpers-types.ts +10 -6
  49. package/src/route-definition/index.ts +3 -0
  50. package/src/route-definition/redirect.ts +9 -1
  51. package/src/route-definition/resolve-handler-use.ts +149 -0
  52. package/src/route-types.ts +11 -0
  53. package/src/router/content-negotiation.ts +100 -1
  54. package/src/router/handler-context.ts +79 -23
  55. package/src/router/intercept-resolution.ts +9 -4
  56. package/src/router/loader-resolution.ts +121 -10
  57. package/src/router/match-api.ts +124 -189
  58. package/src/router/match-middleware/cache-lookup.ts +22 -7
  59. package/src/router/match-middleware/cache-store.ts +5 -0
  60. package/src/router/match-middleware/segment-resolution.ts +53 -0
  61. package/src/router/middleware-types.ts +6 -8
  62. package/src/router/middleware.ts +2 -5
  63. package/src/router/navigation-snapshot.ts +182 -0
  64. package/src/router/prerender-match.ts +110 -10
  65. package/src/router/preview-match.ts +30 -102
  66. package/src/router/request-classification.ts +310 -0
  67. package/src/router/route-snapshot.ts +245 -0
  68. package/src/router/router-interfaces.ts +36 -4
  69. package/src/router/router-options.ts +37 -11
  70. package/src/router/segment-resolution/fresh.ts +65 -9
  71. package/src/router/segment-resolution/helpers.ts +29 -24
  72. package/src/router/segment-resolution/revalidation.ts +65 -7
  73. package/src/router/types.ts +1 -0
  74. package/src/router.ts +54 -5
  75. package/src/rsc/handler.ts +460 -368
  76. package/src/rsc/manifest-init.ts +5 -1
  77. package/src/rsc/progressive-enhancement.ts +4 -0
  78. package/src/rsc/rsc-rendering.ts +5 -0
  79. package/src/rsc/server-action.ts +2 -0
  80. package/src/rsc/ssr-setup.ts +2 -2
  81. package/src/rsc/types.ts +8 -1
  82. package/src/server/context.ts +50 -1
  83. package/src/server/loader-registry.ts +9 -8
  84. package/src/server/request-context.ts +134 -14
  85. package/src/ssr/index.tsx +3 -0
  86. package/src/static-handler.ts +18 -6
  87. package/src/types/cache-types.ts +4 -4
  88. package/src/types/handler-context.ts +37 -19
  89. package/src/types/loader-types.ts +36 -9
  90. package/src/types/route-entry.ts +1 -1
  91. package/src/urls/path-helper-types.ts +9 -2
  92. package/src/urls/path-helper.ts +47 -12
  93. package/src/urls/pattern-types.ts +12 -0
  94. package/src/urls/response-types.ts +16 -6
  95. package/src/use-loader.tsx +73 -4
  96. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  97. package/src/vite/discovery/discover-routers.ts +5 -1
  98. package/src/vite/discovery/prerender-collection.ts +14 -1
  99. package/src/vite/discovery/state.ts +13 -4
  100. package/src/vite/index.ts +4 -0
  101. package/src/vite/plugin-types.ts +60 -5
  102. package/src/vite/plugins/performance-tracks.ts +88 -0
  103. package/src/vite/plugins/refresh-cmd.ts +88 -26
  104. package/src/vite/rango.ts +19 -2
  105. package/src/vite/router-discovery.ts +153 -34
  106. package/src/vite/utils/prerender-utils.ts +18 -0
  107. package/src/vite/utils/shared-utils.ts +3 -2
  108. package/dist/__internal.d.ts +0 -83
  109. package/dist/__internal.d.ts.map +0 -1
  110. package/dist/__internal.js +0 -19
  111. package/dist/__internal.js.map +0 -1
  112. package/dist/__mocks__/version.d.ts +0 -7
  113. package/dist/__mocks__/version.d.ts.map +0 -1
  114. package/dist/__mocks__/version.js +0 -7
  115. package/dist/__mocks__/version.js.map +0 -1
  116. package/dist/__tests__/client-href.test.d.ts +0 -2
  117. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  118. package/dist/__tests__/client-href.test.js +0 -74
  119. package/dist/__tests__/client-href.test.js.map +0 -1
  120. package/dist/__tests__/component-utils.test.d.ts +0 -2
  121. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  122. package/dist/__tests__/component-utils.test.js +0 -51
  123. package/dist/__tests__/component-utils.test.js.map +0 -1
  124. package/dist/__tests__/event-controller.test.d.ts +0 -2
  125. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  126. package/dist/__tests__/event-controller.test.js +0 -538
  127. package/dist/__tests__/event-controller.test.js.map +0 -1
  128. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  129. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  130. package/dist/__tests__/helpers/route-tree.js +0 -374
  131. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  132. package/dist/__tests__/match-result.test.d.ts +0 -2
  133. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  134. package/dist/__tests__/match-result.test.js +0 -154
  135. package/dist/__tests__/match-result.test.js.map +0 -1
  136. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  137. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  138. package/dist/__tests__/navigation-store.test.js +0 -440
  139. package/dist/__tests__/navigation-store.test.js.map +0 -1
  140. package/dist/__tests__/partial-update.test.d.ts +0 -2
  141. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  142. package/dist/__tests__/partial-update.test.js +0 -1009
  143. package/dist/__tests__/partial-update.test.js.map +0 -1
  144. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  145. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  146. package/dist/__tests__/reverse-types.test.js +0 -656
  147. package/dist/__tests__/reverse-types.test.js.map +0 -1
  148. package/dist/__tests__/route-definition.test.d.ts +0 -2
  149. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  150. package/dist/__tests__/route-definition.test.js +0 -55
  151. package/dist/__tests__/route-definition.test.js.map +0 -1
  152. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  153. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  154. package/dist/__tests__/router-helpers.test.js +0 -377
  155. package/dist/__tests__/router-helpers.test.js.map +0 -1
  156. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  157. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  158. package/dist/__tests__/router-integration-2.test.js +0 -426
  159. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  160. package/dist/__tests__/router-integration.test.d.ts +0 -2
  161. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  162. package/dist/__tests__/router-integration.test.js +0 -1051
  163. package/dist/__tests__/router-integration.test.js.map +0 -1
  164. package/dist/__tests__/search-params.test.d.ts +0 -5
  165. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  166. package/dist/__tests__/search-params.test.js +0 -306
  167. package/dist/__tests__/search-params.test.js.map +0 -1
  168. package/dist/__tests__/segment-system.test.d.ts +0 -2
  169. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  170. package/dist/__tests__/segment-system.test.js +0 -627
  171. package/dist/__tests__/segment-system.test.js.map +0 -1
  172. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  173. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  174. package/dist/__tests__/static-handler-types.test.js +0 -63
  175. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  176. package/dist/__tests__/urls.test.d.ts +0 -2
  177. package/dist/__tests__/urls.test.d.ts.map +0 -1
  178. package/dist/__tests__/urls.test.js +0 -421
  179. package/dist/__tests__/urls.test.js.map +0 -1
  180. package/dist/__tests__/use-mount.test.d.ts +0 -2
  181. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  182. package/dist/__tests__/use-mount.test.js +0 -35
  183. package/dist/__tests__/use-mount.test.js.map +0 -1
  184. package/dist/bin/rango.d.ts +0 -2
  185. package/dist/bin/rango.d.ts.map +0 -1
  186. package/dist/bin/rango.js.map +0 -1
  187. package/dist/browser/event-controller.d.ts +0 -191
  188. package/dist/browser/event-controller.d.ts.map +0 -1
  189. package/dist/browser/event-controller.js +0 -559
  190. package/dist/browser/event-controller.js.map +0 -1
  191. package/dist/browser/index.d.ts +0 -2
  192. package/dist/browser/index.d.ts.map +0 -1
  193. package/dist/browser/index.js +0 -14
  194. package/dist/browser/index.js.map +0 -1
  195. package/dist/browser/link-interceptor.d.ts +0 -38
  196. package/dist/browser/link-interceptor.d.ts.map +0 -1
  197. package/dist/browser/link-interceptor.js +0 -99
  198. package/dist/browser/link-interceptor.js.map +0 -1
  199. package/dist/browser/logging.d.ts +0 -10
  200. package/dist/browser/logging.d.ts.map +0 -1
  201. package/dist/browser/logging.js +0 -29
  202. package/dist/browser/logging.js.map +0 -1
  203. package/dist/browser/lru-cache.d.ts +0 -17
  204. package/dist/browser/lru-cache.d.ts.map +0 -1
  205. package/dist/browser/lru-cache.js +0 -50
  206. package/dist/browser/lru-cache.js.map +0 -1
  207. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  208. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  209. package/dist/browser/merge-segment-loaders.js +0 -102
  210. package/dist/browser/merge-segment-loaders.js.map +0 -1
  211. package/dist/browser/navigation-bridge.d.ts +0 -102
  212. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  213. package/dist/browser/navigation-bridge.js +0 -708
  214. package/dist/browser/navigation-bridge.js.map +0 -1
  215. package/dist/browser/navigation-client.d.ts +0 -25
  216. package/dist/browser/navigation-client.d.ts.map +0 -1
  217. package/dist/browser/navigation-client.js +0 -157
  218. package/dist/browser/navigation-client.js.map +0 -1
  219. package/dist/browser/navigation-store.d.ts +0 -101
  220. package/dist/browser/navigation-store.d.ts.map +0 -1
  221. package/dist/browser/navigation-store.js +0 -625
  222. package/dist/browser/navigation-store.js.map +0 -1
  223. package/dist/browser/partial-update.d.ts +0 -75
  224. package/dist/browser/partial-update.d.ts.map +0 -1
  225. package/dist/browser/partial-update.js +0 -426
  226. package/dist/browser/partial-update.js.map +0 -1
  227. package/dist/browser/react/Link.d.ts +0 -86
  228. package/dist/browser/react/Link.d.ts.map +0 -1
  229. package/dist/browser/react/Link.js +0 -128
  230. package/dist/browser/react/Link.js.map +0 -1
  231. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  232. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  233. package/dist/browser/react/NavigationProvider.js +0 -216
  234. package/dist/browser/react/NavigationProvider.js.map +0 -1
  235. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  236. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  237. package/dist/browser/react/ScrollRestoration.js +0 -57
  238. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  239. package/dist/browser/react/context.d.ts +0 -46
  240. package/dist/browser/react/context.d.ts.map +0 -1
  241. package/dist/browser/react/context.js +0 -10
  242. package/dist/browser/react/context.js.map +0 -1
  243. package/dist/browser/react/index.d.ts +0 -11
  244. package/dist/browser/react/index.d.ts.map +0 -1
  245. package/dist/browser/react/index.js +0 -22
  246. package/dist/browser/react/index.js.map +0 -1
  247. package/dist/browser/react/location-state-shared.d.ts +0 -63
  248. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  249. package/dist/browser/react/location-state-shared.js +0 -81
  250. package/dist/browser/react/location-state-shared.js.map +0 -1
  251. package/dist/browser/react/location-state.d.ts +0 -23
  252. package/dist/browser/react/location-state.d.ts.map +0 -1
  253. package/dist/browser/react/location-state.js +0 -29
  254. package/dist/browser/react/location-state.js.map +0 -1
  255. package/dist/browser/react/mount-context.d.ts +0 -24
  256. package/dist/browser/react/mount-context.d.ts.map +0 -1
  257. package/dist/browser/react/mount-context.js +0 -24
  258. package/dist/browser/react/mount-context.js.map +0 -1
  259. package/dist/browser/react/use-action.d.ts +0 -64
  260. package/dist/browser/react/use-action.d.ts.map +0 -1
  261. package/dist/browser/react/use-action.js +0 -134
  262. package/dist/browser/react/use-action.js.map +0 -1
  263. package/dist/browser/react/use-client-cache.d.ts +0 -41
  264. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  265. package/dist/browser/react/use-client-cache.js +0 -39
  266. package/dist/browser/react/use-client-cache.js.map +0 -1
  267. package/dist/browser/react/use-handle.d.ts +0 -31
  268. package/dist/browser/react/use-handle.d.ts.map +0 -1
  269. package/dist/browser/react/use-handle.js +0 -144
  270. package/dist/browser/react/use-handle.js.map +0 -1
  271. package/dist/browser/react/use-href.d.ts +0 -33
  272. package/dist/browser/react/use-href.d.ts.map +0 -1
  273. package/dist/browser/react/use-href.js +0 -39
  274. package/dist/browser/react/use-href.js.map +0 -1
  275. package/dist/browser/react/use-link-status.d.ts +0 -37
  276. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  277. package/dist/browser/react/use-link-status.js +0 -99
  278. package/dist/browser/react/use-link-status.js.map +0 -1
  279. package/dist/browser/react/use-mount.d.ts +0 -25
  280. package/dist/browser/react/use-mount.d.ts.map +0 -1
  281. package/dist/browser/react/use-mount.js +0 -30
  282. package/dist/browser/react/use-mount.js.map +0 -1
  283. package/dist/browser/react/use-navigation.d.ts +0 -27
  284. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  285. package/dist/browser/react/use-navigation.js +0 -87
  286. package/dist/browser/react/use-navigation.js.map +0 -1
  287. package/dist/browser/react/use-segments.d.ts +0 -38
  288. package/dist/browser/react/use-segments.d.ts.map +0 -1
  289. package/dist/browser/react/use-segments.js +0 -130
  290. package/dist/browser/react/use-segments.js.map +0 -1
  291. package/dist/browser/request-controller.d.ts +0 -26
  292. package/dist/browser/request-controller.d.ts.map +0 -1
  293. package/dist/browser/request-controller.js +0 -147
  294. package/dist/browser/request-controller.js.map +0 -1
  295. package/dist/browser/rsc-router.d.ts +0 -129
  296. package/dist/browser/rsc-router.d.ts.map +0 -1
  297. package/dist/browser/rsc-router.js +0 -195
  298. package/dist/browser/rsc-router.js.map +0 -1
  299. package/dist/browser/scroll-restoration.d.ts +0 -93
  300. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  301. package/dist/browser/scroll-restoration.js +0 -321
  302. package/dist/browser/scroll-restoration.js.map +0 -1
  303. package/dist/browser/segment-structure-assert.d.ts +0 -17
  304. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  305. package/dist/browser/segment-structure-assert.js +0 -59
  306. package/dist/browser/segment-structure-assert.js.map +0 -1
  307. package/dist/browser/server-action-bridge.d.ts +0 -26
  308. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  309. package/dist/browser/server-action-bridge.js +0 -668
  310. package/dist/browser/server-action-bridge.js.map +0 -1
  311. package/dist/browser/shallow.d.ts +0 -12
  312. package/dist/browser/shallow.d.ts.map +0 -1
  313. package/dist/browser/shallow.js +0 -34
  314. package/dist/browser/shallow.js.map +0 -1
  315. package/dist/browser/types.d.ts +0 -369
  316. package/dist/browser/types.d.ts.map +0 -1
  317. package/dist/browser/types.js +0 -2
  318. package/dist/browser/types.js.map +0 -1
  319. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  320. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  321. package/dist/build/__tests__/generate-cli.test.js +0 -237
  322. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  323. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  324. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  325. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  326. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  327. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  328. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  329. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  330. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  331. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  332. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  333. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  334. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  335. package/dist/build/generate-manifest.d.ts +0 -81
  336. package/dist/build/generate-manifest.d.ts.map +0 -1
  337. package/dist/build/generate-manifest.js +0 -276
  338. package/dist/build/generate-manifest.js.map +0 -1
  339. package/dist/build/generate-route-types.d.ts +0 -115
  340. package/dist/build/generate-route-types.d.ts.map +0 -1
  341. package/dist/build/generate-route-types.js +0 -740
  342. package/dist/build/generate-route-types.js.map +0 -1
  343. package/dist/build/index.d.ts +0 -21
  344. package/dist/build/index.d.ts.map +0 -1
  345. package/dist/build/index.js +0 -21
  346. package/dist/build/index.js.map +0 -1
  347. package/dist/build/route-trie.d.ts +0 -71
  348. package/dist/build/route-trie.d.ts.map +0 -1
  349. package/dist/build/route-trie.js +0 -175
  350. package/dist/build/route-trie.js.map +0 -1
  351. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  352. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  353. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  354. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  355. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  356. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  357. package/dist/cache/__tests__/document-cache.test.js +0 -345
  358. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  359. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  360. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  361. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  362. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  363. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  364. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  365. package/dist/cache/__tests__/memory-store.test.js +0 -367
  366. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  367. package/dist/cache/cache-scope.d.ts +0 -102
  368. package/dist/cache/cache-scope.d.ts.map +0 -1
  369. package/dist/cache/cache-scope.js +0 -440
  370. package/dist/cache/cache-scope.js.map +0 -1
  371. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  372. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  373. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  374. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  375. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  376. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  377. package/dist/cache/cf/cf-cache-store.js +0 -242
  378. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  379. package/dist/cache/cf/index.d.ts +0 -14
  380. package/dist/cache/cf/index.d.ts.map +0 -1
  381. package/dist/cache/cf/index.js +0 -17
  382. package/dist/cache/cf/index.js.map +0 -1
  383. package/dist/cache/document-cache.d.ts +0 -64
  384. package/dist/cache/document-cache.d.ts.map +0 -1
  385. package/dist/cache/document-cache.js +0 -228
  386. package/dist/cache/document-cache.js.map +0 -1
  387. package/dist/cache/index.d.ts +0 -19
  388. package/dist/cache/index.d.ts.map +0 -1
  389. package/dist/cache/index.js +0 -21
  390. package/dist/cache/index.js.map +0 -1
  391. package/dist/cache/memory-segment-store.d.ts +0 -110
  392. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  393. package/dist/cache/memory-segment-store.js +0 -117
  394. package/dist/cache/memory-segment-store.js.map +0 -1
  395. package/dist/cache/memory-store.d.ts +0 -41
  396. package/dist/cache/memory-store.d.ts.map +0 -1
  397. package/dist/cache/memory-store.js +0 -191
  398. package/dist/cache/memory-store.js.map +0 -1
  399. package/dist/cache/types.d.ts +0 -317
  400. package/dist/cache/types.d.ts.map +0 -1
  401. package/dist/cache/types.js +0 -12
  402. package/dist/cache/types.js.map +0 -1
  403. package/dist/client.d.ts +0 -248
  404. package/dist/client.d.ts.map +0 -1
  405. package/dist/client.js +0 -367
  406. package/dist/client.js.map +0 -1
  407. package/dist/client.rsc.d.ts +0 -26
  408. package/dist/client.rsc.d.ts.map +0 -1
  409. package/dist/client.rsc.js +0 -46
  410. package/dist/client.rsc.js.map +0 -1
  411. package/dist/component-utils.d.ts +0 -36
  412. package/dist/component-utils.d.ts.map +0 -1
  413. package/dist/component-utils.js +0 -61
  414. package/dist/component-utils.js.map +0 -1
  415. package/dist/components/DefaultDocument.d.ts +0 -13
  416. package/dist/components/DefaultDocument.d.ts.map +0 -1
  417. package/dist/components/DefaultDocument.js +0 -15
  418. package/dist/components/DefaultDocument.js.map +0 -1
  419. package/dist/debug.d.ts +0 -58
  420. package/dist/debug.d.ts.map +0 -1
  421. package/dist/debug.js +0 -157
  422. package/dist/debug.js.map +0 -1
  423. package/dist/default-error-boundary.d.ts +0 -11
  424. package/dist/default-error-boundary.d.ts.map +0 -1
  425. package/dist/default-error-boundary.js +0 -45
  426. package/dist/default-error-boundary.js.map +0 -1
  427. package/dist/deps/browser.d.ts +0 -2
  428. package/dist/deps/browser.d.ts.map +0 -1
  429. package/dist/deps/browser.js +0 -3
  430. package/dist/deps/browser.js.map +0 -1
  431. package/dist/deps/html-stream-client.d.ts +0 -2
  432. package/dist/deps/html-stream-client.d.ts.map +0 -1
  433. package/dist/deps/html-stream-client.js +0 -3
  434. package/dist/deps/html-stream-client.js.map +0 -1
  435. package/dist/deps/html-stream-server.d.ts +0 -2
  436. package/dist/deps/html-stream-server.d.ts.map +0 -1
  437. package/dist/deps/html-stream-server.js +0 -3
  438. package/dist/deps/html-stream-server.js.map +0 -1
  439. package/dist/deps/rsc.d.ts +0 -2
  440. package/dist/deps/rsc.d.ts.map +0 -1
  441. package/dist/deps/rsc.js +0 -4
  442. package/dist/deps/rsc.js.map +0 -1
  443. package/dist/deps/ssr.d.ts +0 -2
  444. package/dist/deps/ssr.d.ts.map +0 -1
  445. package/dist/deps/ssr.js +0 -3
  446. package/dist/deps/ssr.js.map +0 -1
  447. package/dist/errors.d.ts +0 -174
  448. package/dist/errors.d.ts.map +0 -1
  449. package/dist/errors.js +0 -241
  450. package/dist/errors.js.map +0 -1
  451. package/dist/handle.d.ts +0 -78
  452. package/dist/handle.d.ts.map +0 -1
  453. package/dist/handle.js +0 -82
  454. package/dist/handle.js.map +0 -1
  455. package/dist/handles/MetaTags.d.ts +0 -14
  456. package/dist/handles/MetaTags.d.ts.map +0 -1
  457. package/dist/handles/MetaTags.js +0 -136
  458. package/dist/handles/MetaTags.js.map +0 -1
  459. package/dist/handles/index.d.ts +0 -6
  460. package/dist/handles/index.d.ts.map +0 -1
  461. package/dist/handles/index.js +0 -6
  462. package/dist/handles/index.js.map +0 -1
  463. package/dist/handles/meta.d.ts +0 -39
  464. package/dist/handles/meta.d.ts.map +0 -1
  465. package/dist/handles/meta.js +0 -202
  466. package/dist/handles/meta.js.map +0 -1
  467. package/dist/host/__tests__/errors.test.d.ts +0 -2
  468. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  469. package/dist/host/__tests__/errors.test.js +0 -76
  470. package/dist/host/__tests__/errors.test.js.map +0 -1
  471. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  472. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  473. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  474. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  475. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  476. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  477. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  478. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  479. package/dist/host/__tests__/router.test.d.ts +0 -2
  480. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  481. package/dist/host/__tests__/router.test.js +0 -241
  482. package/dist/host/__tests__/router.test.js.map +0 -1
  483. package/dist/host/__tests__/testing.test.d.ts +0 -2
  484. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  485. package/dist/host/__tests__/testing.test.js +0 -64
  486. package/dist/host/__tests__/testing.test.js.map +0 -1
  487. package/dist/host/__tests__/utils.test.d.ts +0 -2
  488. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  489. package/dist/host/__tests__/utils.test.js +0 -29
  490. package/dist/host/__tests__/utils.test.js.map +0 -1
  491. package/dist/host/cookie-handler.d.ts +0 -34
  492. package/dist/host/cookie-handler.d.ts.map +0 -1
  493. package/dist/host/cookie-handler.js +0 -124
  494. package/dist/host/cookie-handler.js.map +0 -1
  495. package/dist/host/errors.d.ts +0 -56
  496. package/dist/host/errors.d.ts.map +0 -1
  497. package/dist/host/errors.js +0 -79
  498. package/dist/host/errors.js.map +0 -1
  499. package/dist/host/index.d.ts +0 -29
  500. package/dist/host/index.d.ts.map +0 -1
  501. package/dist/host/index.js +0 -32
  502. package/dist/host/index.js.map +0 -1
  503. package/dist/host/pattern-matcher.d.ts +0 -36
  504. package/dist/host/pattern-matcher.d.ts.map +0 -1
  505. package/dist/host/pattern-matcher.js +0 -172
  506. package/dist/host/pattern-matcher.js.map +0 -1
  507. package/dist/host/router.d.ts +0 -26
  508. package/dist/host/router.d.ts.map +0 -1
  509. package/dist/host/router.js +0 -218
  510. package/dist/host/router.js.map +0 -1
  511. package/dist/host/testing.d.ts +0 -36
  512. package/dist/host/testing.d.ts.map +0 -1
  513. package/dist/host/testing.js +0 -55
  514. package/dist/host/testing.js.map +0 -1
  515. package/dist/host/types.d.ts +0 -115
  516. package/dist/host/types.d.ts.map +0 -1
  517. package/dist/host/types.js +0 -7
  518. package/dist/host/types.js.map +0 -1
  519. package/dist/host/utils.d.ts +0 -21
  520. package/dist/host/utils.d.ts.map +0 -1
  521. package/dist/host/utils.js +0 -23
  522. package/dist/host/utils.js.map +0 -1
  523. package/dist/href-client.d.ts +0 -131
  524. package/dist/href-client.d.ts.map +0 -1
  525. package/dist/href-client.js +0 -64
  526. package/dist/href-client.js.map +0 -1
  527. package/dist/href-context.d.ts +0 -29
  528. package/dist/href-context.d.ts.map +0 -1
  529. package/dist/href-context.js +0 -21
  530. package/dist/href-context.js.map +0 -1
  531. package/dist/index.d.ts +0 -73
  532. package/dist/index.d.ts.map +0 -1
  533. package/dist/index.js +0 -91
  534. package/dist/index.js.map +0 -1
  535. package/dist/index.rsc.d.ts +0 -32
  536. package/dist/index.rsc.d.ts.map +0 -1
  537. package/dist/index.rsc.js +0 -40
  538. package/dist/index.rsc.js.map +0 -1
  539. package/dist/internal-debug.d.ts +0 -2
  540. package/dist/internal-debug.d.ts.map +0 -1
  541. package/dist/internal-debug.js +0 -5
  542. package/dist/internal-debug.js.map +0 -1
  543. package/dist/loader.d.ts +0 -14
  544. package/dist/loader.d.ts.map +0 -1
  545. package/dist/loader.js +0 -20
  546. package/dist/loader.js.map +0 -1
  547. package/dist/loader.rsc.d.ts +0 -19
  548. package/dist/loader.rsc.d.ts.map +0 -1
  549. package/dist/loader.rsc.js +0 -99
  550. package/dist/loader.rsc.js.map +0 -1
  551. package/dist/network-error-thrower.d.ts +0 -17
  552. package/dist/network-error-thrower.d.ts.map +0 -1
  553. package/dist/network-error-thrower.js +0 -14
  554. package/dist/network-error-thrower.js.map +0 -1
  555. package/dist/outlet-context.d.ts +0 -13
  556. package/dist/outlet-context.d.ts.map +0 -1
  557. package/dist/outlet-context.js +0 -3
  558. package/dist/outlet-context.js.map +0 -1
  559. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  560. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  561. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  562. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  563. package/dist/prerender/param-hash.d.ts +0 -16
  564. package/dist/prerender/param-hash.d.ts.map +0 -1
  565. package/dist/prerender/param-hash.js +0 -36
  566. package/dist/prerender/param-hash.js.map +0 -1
  567. package/dist/prerender/store.d.ts +0 -38
  568. package/dist/prerender/store.d.ts.map +0 -1
  569. package/dist/prerender/store.js +0 -61
  570. package/dist/prerender/store.js.map +0 -1
  571. package/dist/prerender.d.ts +0 -66
  572. package/dist/prerender.d.ts.map +0 -1
  573. package/dist/prerender.js +0 -57
  574. package/dist/prerender.js.map +0 -1
  575. package/dist/reverse.d.ts +0 -196
  576. package/dist/reverse.d.ts.map +0 -1
  577. package/dist/reverse.js +0 -78
  578. package/dist/reverse.js.map +0 -1
  579. package/dist/root-error-boundary.d.ts +0 -33
  580. package/dist/root-error-boundary.d.ts.map +0 -1
  581. package/dist/root-error-boundary.js +0 -165
  582. package/dist/root-error-boundary.js.map +0 -1
  583. package/dist/route-content-wrapper.d.ts +0 -46
  584. package/dist/route-content-wrapper.d.ts.map +0 -1
  585. package/dist/route-content-wrapper.js +0 -77
  586. package/dist/route-content-wrapper.js.map +0 -1
  587. package/dist/route-definition.d.ts +0 -421
  588. package/dist/route-definition.d.ts.map +0 -1
  589. package/dist/route-definition.js +0 -868
  590. package/dist/route-definition.js.map +0 -1
  591. package/dist/route-map-builder.d.ts +0 -155
  592. package/dist/route-map-builder.d.ts.map +0 -1
  593. package/dist/route-map-builder.js +0 -237
  594. package/dist/route-map-builder.js.map +0 -1
  595. package/dist/route-types.d.ts +0 -165
  596. package/dist/route-types.d.ts.map +0 -1
  597. package/dist/route-types.js +0 -7
  598. package/dist/route-types.js.map +0 -1
  599. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  600. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  601. package/dist/router/__tests__/handler-context.test.js +0 -65
  602. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  603. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  604. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  605. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  606. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  607. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  608. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  609. package/dist/router/__tests__/match-context.test.js +0 -92
  610. package/dist/router/__tests__/match-context.test.js.map +0 -1
  611. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  612. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  613. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  614. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  615. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  616. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  617. package/dist/router/__tests__/match-result.test.js +0 -457
  618. package/dist/router/__tests__/match-result.test.js.map +0 -1
  619. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  620. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  621. package/dist/router/__tests__/on-error.test.js +0 -678
  622. package/dist/router/__tests__/on-error.test.js.map +0 -1
  623. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  624. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  625. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  626. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  627. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  628. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  629. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  630. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  631. package/dist/router/error-handling.d.ts +0 -77
  632. package/dist/router/error-handling.d.ts.map +0 -1
  633. package/dist/router/error-handling.js +0 -202
  634. package/dist/router/error-handling.js.map +0 -1
  635. package/dist/router/handler-context.d.ts +0 -20
  636. package/dist/router/handler-context.d.ts.map +0 -1
  637. package/dist/router/handler-context.js +0 -198
  638. package/dist/router/handler-context.js.map +0 -1
  639. package/dist/router/intercept-resolution.d.ts +0 -66
  640. package/dist/router/intercept-resolution.d.ts.map +0 -1
  641. package/dist/router/intercept-resolution.js +0 -246
  642. package/dist/router/intercept-resolution.js.map +0 -1
  643. package/dist/router/loader-resolution.d.ts +0 -64
  644. package/dist/router/loader-resolution.d.ts.map +0 -1
  645. package/dist/router/loader-resolution.js +0 -284
  646. package/dist/router/loader-resolution.js.map +0 -1
  647. package/dist/router/logging.d.ts +0 -15
  648. package/dist/router/logging.d.ts.map +0 -1
  649. package/dist/router/logging.js +0 -99
  650. package/dist/router/logging.js.map +0 -1
  651. package/dist/router/manifest.d.ts +0 -22
  652. package/dist/router/manifest.d.ts.map +0 -1
  653. package/dist/router/manifest.js +0 -181
  654. package/dist/router/manifest.js.map +0 -1
  655. package/dist/router/match-api.d.ts +0 -35
  656. package/dist/router/match-api.d.ts.map +0 -1
  657. package/dist/router/match-api.js +0 -406
  658. package/dist/router/match-api.js.map +0 -1
  659. package/dist/router/match-context.d.ts +0 -206
  660. package/dist/router/match-context.d.ts.map +0 -1
  661. package/dist/router/match-context.js +0 -17
  662. package/dist/router/match-context.js.map +0 -1
  663. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  664. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  665. package/dist/router/match-middleware/background-revalidation.js +0 -75
  666. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  667. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  668. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  669. package/dist/router/match-middleware/cache-lookup.js +0 -257
  670. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  671. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  672. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  673. package/dist/router/match-middleware/cache-store.js +0 -108
  674. package/dist/router/match-middleware/cache-store.js.map +0 -1
  675. package/dist/router/match-middleware/index.d.ts +0 -81
  676. package/dist/router/match-middleware/index.d.ts.map +0 -1
  677. package/dist/router/match-middleware/index.js +0 -80
  678. package/dist/router/match-middleware/index.js.map +0 -1
  679. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  680. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  681. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  682. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  683. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  684. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  685. package/dist/router/match-middleware/segment-resolution.js +0 -53
  686. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  687. package/dist/router/match-pipelines.d.ts +0 -147
  688. package/dist/router/match-pipelines.d.ts.map +0 -1
  689. package/dist/router/match-pipelines.js +0 -82
  690. package/dist/router/match-pipelines.js.map +0 -1
  691. package/dist/router/match-result.d.ts +0 -126
  692. package/dist/router/match-result.d.ts.map +0 -1
  693. package/dist/router/match-result.js +0 -93
  694. package/dist/router/match-result.js.map +0 -1
  695. package/dist/router/metrics.d.ts +0 -20
  696. package/dist/router/metrics.d.ts.map +0 -1
  697. package/dist/router/metrics.js +0 -47
  698. package/dist/router/metrics.js.map +0 -1
  699. package/dist/router/middleware.d.ts +0 -249
  700. package/dist/router/middleware.d.ts.map +0 -1
  701. package/dist/router/middleware.js +0 -434
  702. package/dist/router/middleware.js.map +0 -1
  703. package/dist/router/middleware.test.d.ts +0 -2
  704. package/dist/router/middleware.test.d.ts.map +0 -1
  705. package/dist/router/middleware.test.js +0 -816
  706. package/dist/router/middleware.test.js.map +0 -1
  707. package/dist/router/pattern-matching.d.ts +0 -149
  708. package/dist/router/pattern-matching.d.ts.map +0 -1
  709. package/dist/router/pattern-matching.js +0 -349
  710. package/dist/router/pattern-matching.js.map +0 -1
  711. package/dist/router/revalidation.d.ts +0 -44
  712. package/dist/router/revalidation.d.ts.map +0 -1
  713. package/dist/router/revalidation.js +0 -147
  714. package/dist/router/revalidation.js.map +0 -1
  715. package/dist/router/router-context.d.ts +0 -135
  716. package/dist/router/router-context.d.ts.map +0 -1
  717. package/dist/router/router-context.js +0 -36
  718. package/dist/router/router-context.js.map +0 -1
  719. package/dist/router/segment-resolution.d.ts +0 -127
  720. package/dist/router/segment-resolution.d.ts.map +0 -1
  721. package/dist/router/segment-resolution.js +0 -919
  722. package/dist/router/segment-resolution.js.map +0 -1
  723. package/dist/router/trie-matching.d.ts +0 -40
  724. package/dist/router/trie-matching.d.ts.map +0 -1
  725. package/dist/router/trie-matching.js +0 -127
  726. package/dist/router/trie-matching.js.map +0 -1
  727. package/dist/router/types.d.ts +0 -136
  728. package/dist/router/types.d.ts.map +0 -1
  729. package/dist/router/types.js +0 -7
  730. package/dist/router/types.js.map +0 -1
  731. package/dist/router.d.ts +0 -753
  732. package/dist/router.d.ts.map +0 -1
  733. package/dist/router.gen.d.ts +0 -6
  734. package/dist/router.gen.d.ts.map +0 -1
  735. package/dist/router.gen.js +0 -6
  736. package/dist/router.gen.js.map +0 -1
  737. package/dist/router.js +0 -1304
  738. package/dist/router.js.map +0 -1
  739. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  740. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  741. package/dist/rsc/__tests__/helpers.test.js +0 -140
  742. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  743. package/dist/rsc/handler.d.ts +0 -45
  744. package/dist/rsc/handler.d.ts.map +0 -1
  745. package/dist/rsc/handler.js +0 -1172
  746. package/dist/rsc/handler.js.map +0 -1
  747. package/dist/rsc/helpers.d.ts +0 -16
  748. package/dist/rsc/helpers.d.ts.map +0 -1
  749. package/dist/rsc/helpers.js +0 -55
  750. package/dist/rsc/helpers.js.map +0 -1
  751. package/dist/rsc/index.d.ts +0 -22
  752. package/dist/rsc/index.d.ts.map +0 -1
  753. package/dist/rsc/index.js +0 -23
  754. package/dist/rsc/index.js.map +0 -1
  755. package/dist/rsc/nonce.d.ts +0 -9
  756. package/dist/rsc/nonce.d.ts.map +0 -1
  757. package/dist/rsc/nonce.js +0 -18
  758. package/dist/rsc/nonce.js.map +0 -1
  759. package/dist/rsc/types.d.ts +0 -206
  760. package/dist/rsc/types.d.ts.map +0 -1
  761. package/dist/rsc/types.js +0 -8
  762. package/dist/rsc/types.js.map +0 -1
  763. package/dist/search-params.d.ts +0 -103
  764. package/dist/search-params.d.ts.map +0 -1
  765. package/dist/search-params.js +0 -74
  766. package/dist/search-params.js.map +0 -1
  767. package/dist/segment-system.d.ts +0 -75
  768. package/dist/segment-system.d.ts.map +0 -1
  769. package/dist/segment-system.js +0 -336
  770. package/dist/segment-system.js.map +0 -1
  771. package/dist/server/context.d.ts +0 -245
  772. package/dist/server/context.d.ts.map +0 -1
  773. package/dist/server/context.js +0 -197
  774. package/dist/server/context.js.map +0 -1
  775. package/dist/server/fetchable-loader-store.d.ts +0 -18
  776. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  777. package/dist/server/fetchable-loader-store.js +0 -18
  778. package/dist/server/fetchable-loader-store.js.map +0 -1
  779. package/dist/server/handle-store.d.ts +0 -85
  780. package/dist/server/handle-store.d.ts.map +0 -1
  781. package/dist/server/handle-store.js +0 -142
  782. package/dist/server/handle-store.js.map +0 -1
  783. package/dist/server/loader-registry.d.ts +0 -55
  784. package/dist/server/loader-registry.d.ts.map +0 -1
  785. package/dist/server/loader-registry.js +0 -132
  786. package/dist/server/loader-registry.js.map +0 -1
  787. package/dist/server/request-context.d.ts +0 -226
  788. package/dist/server/request-context.d.ts.map +0 -1
  789. package/dist/server/request-context.js +0 -290
  790. package/dist/server/request-context.js.map +0 -1
  791. package/dist/server/root-layout.d.ts +0 -4
  792. package/dist/server/root-layout.d.ts.map +0 -1
  793. package/dist/server/root-layout.js +0 -5
  794. package/dist/server/root-layout.js.map +0 -1
  795. package/dist/server.d.ts +0 -15
  796. package/dist/server.d.ts.map +0 -1
  797. package/dist/server.js +0 -20
  798. package/dist/server.js.map +0 -1
  799. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  800. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  801. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  802. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  803. package/dist/ssr/index.d.ts +0 -98
  804. package/dist/ssr/index.d.ts.map +0 -1
  805. package/dist/ssr/index.js +0 -158
  806. package/dist/ssr/index.js.map +0 -1
  807. package/dist/static-handler.d.ts +0 -50
  808. package/dist/static-handler.d.ts.map +0 -1
  809. package/dist/static-handler.gen.d.ts +0 -5
  810. package/dist/static-handler.gen.d.ts.map +0 -1
  811. package/dist/static-handler.gen.js +0 -5
  812. package/dist/static-handler.gen.js.map +0 -1
  813. package/dist/static-handler.js +0 -29
  814. package/dist/static-handler.js.map +0 -1
  815. package/dist/theme/ThemeProvider.d.ts +0 -20
  816. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  817. package/dist/theme/ThemeProvider.js +0 -240
  818. package/dist/theme/ThemeProvider.js.map +0 -1
  819. package/dist/theme/ThemeScript.d.ts +0 -48
  820. package/dist/theme/ThemeScript.d.ts.map +0 -1
  821. package/dist/theme/ThemeScript.js +0 -13
  822. package/dist/theme/ThemeScript.js.map +0 -1
  823. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  824. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  825. package/dist/theme/__tests__/theme.test.js +0 -103
  826. package/dist/theme/__tests__/theme.test.js.map +0 -1
  827. package/dist/theme/constants.d.ts +0 -29
  828. package/dist/theme/constants.d.ts.map +0 -1
  829. package/dist/theme/constants.js +0 -48
  830. package/dist/theme/constants.js.map +0 -1
  831. package/dist/theme/index.d.ts +0 -31
  832. package/dist/theme/index.d.ts.map +0 -1
  833. package/dist/theme/index.js +0 -36
  834. package/dist/theme/index.js.map +0 -1
  835. package/dist/theme/theme-context.d.ts +0 -40
  836. package/dist/theme/theme-context.d.ts.map +0 -1
  837. package/dist/theme/theme-context.js +0 -60
  838. package/dist/theme/theme-context.js.map +0 -1
  839. package/dist/theme/theme-script.d.ts +0 -27
  840. package/dist/theme/theme-script.d.ts.map +0 -1
  841. package/dist/theme/theme-script.js +0 -147
  842. package/dist/theme/theme-script.js.map +0 -1
  843. package/dist/theme/types.d.ts +0 -163
  844. package/dist/theme/types.d.ts.map +0 -1
  845. package/dist/theme/types.js +0 -11
  846. package/dist/theme/types.js.map +0 -1
  847. package/dist/theme/use-theme.d.ts +0 -12
  848. package/dist/theme/use-theme.d.ts.map +0 -1
  849. package/dist/theme/use-theme.js +0 -40
  850. package/dist/theme/use-theme.js.map +0 -1
  851. package/dist/types.d.ts +0 -1479
  852. package/dist/types.d.ts.map +0 -1
  853. package/dist/types.js +0 -10
  854. package/dist/types.js.map +0 -1
  855. package/dist/urls.d.ts +0 -441
  856. package/dist/urls.d.ts.map +0 -1
  857. package/dist/urls.gen.d.ts +0 -8
  858. package/dist/urls.gen.d.ts.map +0 -1
  859. package/dist/urls.gen.js +0 -8
  860. package/dist/urls.gen.js.map +0 -1
  861. package/dist/urls.js +0 -443
  862. package/dist/urls.js.map +0 -1
  863. package/dist/use-loader.d.ts +0 -127
  864. package/dist/use-loader.d.ts.map +0 -1
  865. package/dist/use-loader.js +0 -237
  866. package/dist/use-loader.js.map +0 -1
  867. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  868. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  869. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  870. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  871. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  872. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  873. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  874. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  875. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  876. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  877. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  878. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  879. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  880. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  881. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  882. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  883. package/dist/vite/ast-handler-extract.d.ts +0 -49
  884. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  885. package/dist/vite/ast-handler-extract.js +0 -249
  886. package/dist/vite/ast-handler-extract.js.map +0 -1
  887. package/dist/vite/expose-action-id.d.ts +0 -19
  888. package/dist/vite/expose-action-id.d.ts.map +0 -1
  889. package/dist/vite/expose-action-id.js +0 -250
  890. package/dist/vite/expose-action-id.js.map +0 -1
  891. package/dist/vite/expose-id-utils.d.ts +0 -69
  892. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  893. package/dist/vite/expose-id-utils.js +0 -289
  894. package/dist/vite/expose-id-utils.js.map +0 -1
  895. package/dist/vite/expose-internal-ids.d.ts +0 -22
  896. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  897. package/dist/vite/expose-internal-ids.js +0 -886
  898. package/dist/vite/expose-internal-ids.js.map +0 -1
  899. package/dist/vite/index.d.ts +0 -149
  900. package/dist/vite/index.d.ts.map +0 -1
  901. package/dist/vite/index.js.map +0 -1
  902. package/dist/vite/index.named-routes.gen.ts +0 -103
  903. package/dist/vite/package-resolution.d.ts +0 -43
  904. package/dist/vite/package-resolution.d.ts.map +0 -1
  905. package/dist/vite/package-resolution.js +0 -112
  906. package/dist/vite/package-resolution.js.map +0 -1
  907. package/dist/vite/virtual-entries.d.ts +0 -25
  908. package/dist/vite/virtual-entries.d.ts.map +0 -1
  909. package/dist/vite/virtual-entries.js +0 -110
  910. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,625 +0,0 @@
1
- /**
2
- * Default action state (idle with no payload)
3
- */
4
- const DEFAULT_ACTION_STATE = {
5
- state: "idle",
6
- actionId: null,
7
- payload: null,
8
- error: null,
9
- result: null,
10
- };
11
- // Maximum number of history entries to cache (URLs visited)
12
- const HISTORY_CACHE_SIZE = 20;
13
- /**
14
- * Shallow clone handleData to avoid reference sharing between cache entries.
15
- * Only clones the structure (objects and arrays), not the data items themselves,
16
- * since mutations happen at the array level, not on individual data objects.
17
- * This preserves any non-serializable types (React elements, functions, etc.)
18
- */
19
- function cloneHandleData(handleData) {
20
- const cloned = {};
21
- for (const [handleKey, segmentMap] of Object.entries(handleData)) {
22
- cloned[handleKey] = {};
23
- for (const [segmentId, dataArray] of Object.entries(segmentMap)) {
24
- cloned[handleKey][segmentId] = [...dataArray];
25
- }
26
- }
27
- return cloned;
28
- }
29
- // BroadcastChannel for cross-tab cache invalidation
30
- const CACHE_INVALIDATION_CHANNEL = "rsc-router-cache-invalidation";
31
- // BroadcastChannel instance (lazily initialized)
32
- let cacheInvalidationChannel = null;
33
- /**
34
- * Get or create the BroadcastChannel for cache invalidation
35
- */
36
- function getCacheInvalidationChannel() {
37
- if (typeof window === "undefined" ||
38
- typeof BroadcastChannel === "undefined") {
39
- return null;
40
- }
41
- if (!cacheInvalidationChannel) {
42
- cacheInvalidationChannel = new BroadcastChannel(CACHE_INVALIDATION_CHANNEL);
43
- }
44
- return cacheInvalidationChannel;
45
- }
46
- /**
47
- * Generate a cache key from a URL.
48
- * Uses pathname + search (query params) directly as the key.
49
- * Hash fragments (#) are excluded since they don't affect server data.
50
- *
51
- * For intercept routes, append `:intercept` suffix to cache them separately
52
- * from non-intercept versions of the same URL.
53
- */
54
- export function generateHistoryKey(url, options) {
55
- if (!url) {
56
- url = typeof window !== "undefined" ? window.location.href : "/";
57
- }
58
- // Parse URL and use only pathname + search (exclude hash fragment)
59
- const parsed = new URL(url, "http://localhost");
60
- let key = parsed.pathname + parsed.search;
61
- // Append intercept suffix for separate caching
62
- if (options?.intercept) {
63
- key += ":intercept";
64
- }
65
- return key;
66
- }
67
- /**
68
- * Create a URL instance from window.location or custom values
69
- */
70
- function createLocation(loc) {
71
- return new URL(loc.href);
72
- }
73
- /**
74
- * Create a navigation store for managing browser-side navigation state
75
- *
76
- * The store manages two types of state:
77
- * - NavigationState: Public state exposed via useNavigation hook
78
- * - SegmentState: Internal segment management for partial RSC updates
79
- *
80
- * @param config - Initial configuration
81
- * @returns NavigationStore instance
82
- *
83
- * @example
84
- * ```typescript
85
- * const store = createNavigationStore({
86
- * initialLocation: window.location,
87
- * initialSegmentIds: [],
88
- * });
89
- *
90
- * // Subscribe to state changes (for useNavigation hook)
91
- * const unsubscribe = store.subscribe(() => {
92
- * const state = store.getState();
93
- * console.log('Navigation state:', state);
94
- * });
95
- *
96
- * // Update state
97
- * store.setState({ state: 'loading' });
98
- *
99
- * // Subscribe to UI updates (for re-rendering)
100
- * store.onUpdate((update) => {
101
- * console.log('New root:', update.root);
102
- * });
103
- * ```
104
- */
105
- export function createNavigationStore(config) {
106
- // Default location from window or config
107
- const defaultLocation = typeof window !== "undefined"
108
- ? createLocation(window.location)
109
- : new URL("/", "http://localhost");
110
- // Public navigation state (for useNavigation hook)
111
- // isStreaming starts false to match SSR and avoid hydration mismatch
112
- // After hydration, entry.browser.tsx sets it to true if stream is still open
113
- let navState = {
114
- state: "idle",
115
- isStreaming: false,
116
- location: config?.initialLocation
117
- ? createLocation(config.initialLocation)
118
- : defaultLocation,
119
- pendingUrl: null,
120
- inflightActions: [],
121
- };
122
- // Resolve the initial location for segment state
123
- const initialLoc = config?.initialLocation
124
- ? createLocation(config.initialLocation)
125
- : defaultLocation;
126
- // Internal segment state (for partial updates)
127
- const segmentState = {
128
- path: initialLoc.pathname,
129
- currentUrl: initialLoc.href,
130
- currentSegmentIds: config?.initialSegmentIds ?? [],
131
- };
132
- // Configuration with defaults
133
- const cacheSize = config?.cacheSize ?? HISTORY_CACHE_SIZE;
134
- const crossTabSync = config?.crossTabSync !== false; // Default: true
135
- const crossTabAutoRefresh = config?.crossTabAutoRefresh !== false; // Default: true
136
- // Cross-tab refresh callback (set by navigation bridge)
137
- let crossTabRefreshCallback = config?.onCrossTabRefresh ?? null;
138
- // Track pending cross-tab refresh to prevent duplicate refreshes
139
- let pendingCrossTabRefresh = false;
140
- // History-based segment cache: array of [url-key, segments] tuples
141
- // Each URL gets its own complete snapshot of segments for back/forward and partial merging
142
- // Oldest entries (at front) are removed when over cacheSize limit
143
- const historyCache = [];
144
- // Current history key (set on navigation, stored in history.state)
145
- let currentHistoryKey = config?.initialHistoryKey || generateHistoryKey();
146
- // Store initial segments if provided (not stale)
147
- if (config?.initialHistoryKey && config?.initialSegments) {
148
- historyCache.push([
149
- config.initialHistoryKey,
150
- config.initialSegments,
151
- false,
152
- ]);
153
- }
154
- // State change listeners (for useNavigation subscriptions)
155
- const stateListeners = new Set();
156
- // UI update subscribers (for re-rendering)
157
- const updateSubscribers = new Set();
158
- // Internal flag to track if a server action is in progress
159
- let actionInProgress = false;
160
- // Intercept source URL - tracks where the intercept was triggered from
161
- // Used to maintain intercept context during action revalidation
162
- let interceptSourceUrl = null;
163
- // Action state tracking (for useAction hook)
164
- // Maps action function ID to its tracked state
165
- const actionStates = new Map();
166
- // Action state listeners (per action ID)
167
- // Maps action function ID to set of listeners
168
- const actionListeners = new Map();
169
- /**
170
- * Create a debounced function that batches rapid calls
171
- */
172
- function createDebouncedNotifier(fn, ms = 20) {
173
- let timeout = null;
174
- return ((...args) => {
175
- if (timeout !== null)
176
- clearTimeout(timeout);
177
- timeout = setTimeout(() => {
178
- timeout = null;
179
- fn(...args);
180
- }, ms);
181
- });
182
- }
183
- /**
184
- * Create a keyed debounced function (separate timers per key)
185
- */
186
- function createKeyedDebouncedNotifier(fn, ms = 20) {
187
- const timeouts = new Map();
188
- return ((key, ...args) => {
189
- const existing = timeouts.get(key);
190
- if (existing !== undefined)
191
- clearTimeout(existing);
192
- timeouts.set(key, setTimeout(() => {
193
- timeouts.delete(key);
194
- fn(key, ...args);
195
- }, ms));
196
- });
197
- }
198
- const notifyStateListeners = createDebouncedNotifier(() => {
199
- stateListeners.forEach((listener) => listener());
200
- });
201
- const notifyActionListeners = createKeyedDebouncedNotifier((actionId, state) => {
202
- const listeners = actionListeners.get(actionId);
203
- if (listeners) {
204
- listeners.forEach((listener) => listener(state));
205
- }
206
- });
207
- /**
208
- * Clear the history cache (internal - does not broadcast)
209
- */
210
- function clearCacheInternal() {
211
- historyCache.length = 0;
212
- }
213
- /**
214
- * Mark all cache entries as stale (internal - does not broadcast)
215
- */
216
- function markCacheAsStaleInternal() {
217
- for (let i = 0; i < historyCache.length; i++) {
218
- historyCache[i][2] = true;
219
- }
220
- }
221
- /**
222
- * Clear the history cache and broadcast to other tabs
223
- */
224
- function clearCacheAndBroadcast() {
225
- console.log("[Browser] Clearing cache and broadcasting to other tabs");
226
- clearCacheInternal();
227
- broadcastInvalidation();
228
- }
229
- /**
230
- * Mark cache as stale and broadcast to other tabs
231
- */
232
- function markStaleAndBroadcast() {
233
- console.log("[Browser] Marking cache as stale and broadcasting to other tabs");
234
- markCacheAsStaleInternal();
235
- broadcastInvalidation();
236
- }
237
- /**
238
- * Broadcast cache invalidation to other tabs without clearing local cache
239
- * Used after consolidation fetch where local cache has fresh data
240
- */
241
- function broadcastInvalidation() {
242
- // Only broadcast if cross-tab sync is enabled
243
- if (!crossTabSync)
244
- return;
245
- const channel = getCacheInvalidationChannel();
246
- if (channel) {
247
- // Broadcast path and segment IDs - receiver checks for shared segments
248
- const currentPath = window.location.pathname;
249
- const currentSegmentIds = segmentState.currentSegmentIds;
250
- channel.postMessage({
251
- type: "invalidate",
252
- path: currentPath,
253
- segmentIds: currentSegmentIds,
254
- });
255
- console.log("[Browser] Broadcast sent for path:", currentPath, "segments:", currentSegmentIds.join(", "));
256
- }
257
- else {
258
- console.warn("[Browser] No BroadcastChannel available");
259
- }
260
- }
261
- // Set up cross-tab cache invalidation listener (only if enabled)
262
- if (crossTabSync) {
263
- const channel = getCacheInvalidationChannel();
264
- if (channel) {
265
- channel.onmessage = (event) => {
266
- if (event.data?.type === "invalidate") {
267
- const mutatedPath = event.data.path;
268
- const mutatedSegmentIds = event.data.segmentIds ?? [];
269
- const currentSegmentIds = segmentState.currentSegmentIds;
270
- // Check for shared segments between tabs
271
- // Routes sharing any segment (layout, loader, etc.) should invalidate together
272
- const hasSharedSegment = mutatedSegmentIds.some((id) => currentSegmentIds.includes(id));
273
- if (!hasSharedSegment) {
274
- // No shared segments - routes are unrelated, ignore invalidation
275
- return;
276
- }
277
- console.log("[Browser] Cache marked stale by another tab, shared segments:", mutatedSegmentIds
278
- .filter((id) => currentSegmentIds.includes(id))
279
- .join(", "));
280
- markCacheAsStaleInternal();
281
- // Auto-refresh if enabled and callback is registered
282
- if (crossTabAutoRefresh && crossTabRefreshCallback) {
283
- // If idle, refresh immediately. If loading, wait for idle then refresh.
284
- if (navState.state === "idle") {
285
- console.log("[Browser] Cross-tab refresh triggered (idle)");
286
- crossTabRefreshCallback();
287
- }
288
- else if (!pendingCrossTabRefresh) {
289
- // Only queue one refresh, ignore subsequent events while loading
290
- pendingCrossTabRefresh = true;
291
- console.log("[Browser] Navigation in progress, deferring cross-tab refresh");
292
- // Subscribe to state changes, refresh when idle
293
- const listener = () => {
294
- if (navState.state === "idle") {
295
- stateListeners.delete(listener);
296
- pendingCrossTabRefresh = false;
297
- console.log("[Browser] Cross-tab refresh triggered (deferred)");
298
- crossTabRefreshCallback?.();
299
- }
300
- };
301
- stateListeners.add(listener);
302
- }
303
- }
304
- }
305
- };
306
- }
307
- }
308
- return {
309
- // ========================================================================
310
- // Public State (for useNavigation hook)
311
- // ========================================================================
312
- /**
313
- * Get current navigation state
314
- */
315
- getState() {
316
- return navState;
317
- },
318
- /**
319
- * Update navigation state and notify listeners
320
- */
321
- setState(partial) {
322
- navState = { ...navState, ...partial };
323
- notifyStateListeners();
324
- },
325
- /**
326
- * Subscribe to state changes
327
- * Returns unsubscribe function
328
- */
329
- subscribe(listener) {
330
- stateListeners.add(listener);
331
- return () => {
332
- stateListeners.delete(listener);
333
- };
334
- },
335
- // ========================================================================
336
- // Inflight Action Management
337
- // ========================================================================
338
- /**
339
- * Add an inflight action to the list
340
- */
341
- addInflightAction(action) {
342
- navState = {
343
- ...navState,
344
- inflightActions: [...navState.inflightActions, action],
345
- };
346
- notifyStateListeners();
347
- },
348
- /**
349
- * Remove an inflight action by ID
350
- */
351
- removeInflightAction(id) {
352
- navState = {
353
- ...navState,
354
- inflightActions: navState.inflightActions.filter((a) => a.id !== id),
355
- };
356
- notifyStateListeners();
357
- },
358
- // ========================================================================
359
- // Action State (for controlling update behavior during server actions)
360
- // ========================================================================
361
- /**
362
- * Check if a server action is currently in progress
363
- */
364
- isActionInProgress() {
365
- return actionInProgress;
366
- },
367
- /**
368
- * Set the action in progress flag
369
- */
370
- setActionInProgress(value) {
371
- actionInProgress = value;
372
- },
373
- // ========================================================================
374
- // Internal Segment State (for bridges)
375
- // ========================================================================
376
- /**
377
- * Get internal segment state
378
- */
379
- getSegmentState() {
380
- return segmentState;
381
- },
382
- /**
383
- * Set current path
384
- */
385
- setPath(path) {
386
- segmentState.path = path;
387
- },
388
- /**
389
- * Set current URL
390
- */
391
- setCurrentUrl(url) {
392
- segmentState.currentUrl = url;
393
- },
394
- /**
395
- * Set current segment IDs
396
- */
397
- setSegmentIds(ids) {
398
- segmentState.currentSegmentIds = ids;
399
- },
400
- // ========================================================================
401
- // History-based Segment Cache (for back/forward navigation and partial merging)
402
- // ========================================================================
403
- /**
404
- * Get the current history key
405
- */
406
- getHistoryKey() {
407
- return currentHistoryKey;
408
- },
409
- /**
410
- * Set the current history key (called when navigating to a new entry)
411
- */
412
- setHistoryKey(key) {
413
- currentHistoryKey = key;
414
- },
415
- /**
416
- * Store segments for a history entry
417
- * Updates existing entry if key exists, otherwise adds new entry
418
- * Removes oldest entries (from front) when over configured cacheSize
419
- * Fresh data is always stored as not stale (stale=false)
420
- */
421
- cacheSegmentsForHistory(historyKey, segments, handleData) {
422
- // Shallow clone handleData arrays to avoid reference sharing between cache entries
423
- // We only clone the structure (objects and arrays), not the data items themselves,
424
- // since mutations happen at the array level, not on individual data objects
425
- const clonedHandleData = handleData
426
- ? cloneHandleData(handleData)
427
- : undefined;
428
- // Check if entry already exists and update it
429
- const existingIndex = historyCache.findIndex(([key]) => key === historyKey);
430
- if (existingIndex !== -1) {
431
- historyCache[existingIndex] = [historyKey, segments, false, clonedHandleData];
432
- }
433
- else {
434
- // Add new entry at the end (not stale)
435
- historyCache.push([historyKey, segments, false, clonedHandleData]);
436
- // Remove oldest entries if over limit
437
- while (historyCache.length > cacheSize) {
438
- historyCache.shift();
439
- }
440
- }
441
- },
442
- /**
443
- * Get cached segments for a history entry
444
- * Returns { segments, stale, handleData } or undefined if not cached
445
- */
446
- getCachedSegments(historyKey) {
447
- const entry = historyCache.find(([key]) => key === historyKey);
448
- if (!entry)
449
- return undefined;
450
- return { segments: entry[1], stale: entry[2], handleData: entry[3] };
451
- },
452
- /**
453
- * Check if segments are cached for a history entry
454
- */
455
- hasHistoryCache(historyKey) {
456
- return historyCache.some(([key]) => key === historyKey);
457
- },
458
- /**
459
- * Update only the handleData for an existing cache entry
460
- * Does nothing if the cache entry doesn't exist
461
- * This is used to fix stale handleData after async handles processing
462
- */
463
- updateCacheHandleData(historyKey, handleData) {
464
- const existingIndex = historyCache.findIndex(([key]) => key === historyKey);
465
- if (existingIndex !== -1) {
466
- const entry = historyCache[existingIndex];
467
- // Shallow clone handleData arrays to avoid reference sharing
468
- const clonedHandleData = cloneHandleData(handleData);
469
- historyCache[existingIndex] = [entry[0], entry[1], entry[2], clonedHandleData];
470
- }
471
- },
472
- /**
473
- * Mark all cache entries as stale
474
- * Called after server actions to indicate data may be outdated
475
- */
476
- markCacheAsStale() {
477
- for (let i = 0; i < historyCache.length; i++) {
478
- historyCache[i][2] = true;
479
- }
480
- console.log("[Browser] Marked", historyCache.length, "cache entries as stale");
481
- },
482
- /**
483
- * Clear the history cache and broadcast to other tabs
484
- * Use this for hard invalidation when data is definitely stale
485
- */
486
- clearHistoryCache() {
487
- clearCacheAndBroadcast();
488
- },
489
- /**
490
- * Mark cache as stale and broadcast to other tabs
491
- * Called after server actions - allows SWR pattern for popstate
492
- */
493
- markCacheAsStaleAndBroadcast() {
494
- markStaleAndBroadcast();
495
- },
496
- /**
497
- * Broadcast cache invalidation to other tabs without clearing local cache
498
- * Used after consolidation fetch where local cache has fresh data
499
- */
500
- broadcastCacheInvalidation() {
501
- broadcastInvalidation();
502
- },
503
- /**
504
- * Set the callback to invoke when cross-tab refresh is triggered
505
- * Called by navigation bridge during initialization
506
- */
507
- setCrossTabRefreshCallback(callback) {
508
- crossTabRefreshCallback = callback;
509
- },
510
- // ========================================================================
511
- // Intercept Context Tracking
512
- // ========================================================================
513
- /**
514
- * Get the intercept source URL
515
- * This is the URL where the intercept was triggered from (e.g., /shop)
516
- * Used to maintain intercept context during action revalidation
517
- */
518
- getInterceptSourceUrl() {
519
- return interceptSourceUrl;
520
- },
521
- /**
522
- * Set the intercept source URL
523
- * Called when an intercept navigation is detected
524
- * Set to null when leaving intercept context (e.g., closing modal)
525
- */
526
- setInterceptSourceUrl(url) {
527
- interceptSourceUrl = url;
528
- },
529
- // ========================================================================
530
- // UI Update Notifications
531
- // ========================================================================
532
- /**
533
- * Subscribe to UI updates (when root needs to re-render)
534
- */
535
- onUpdate(callback) {
536
- updateSubscribers.add(callback);
537
- return () => {
538
- updateSubscribers.delete(callback);
539
- };
540
- },
541
- /**
542
- * Emit a UI update to all subscribers
543
- */
544
- emitUpdate(update) {
545
- updateSubscribers.forEach((callback) => {
546
- callback(update);
547
- });
548
- },
549
- // ========================================================================
550
- // Action State Tracking (for useAction hook)
551
- // ========================================================================
552
- /**
553
- * Get the current state for a tracked action
554
- * Returns default idle state if action hasn't been tracked
555
- */
556
- getActionState(actionId) {
557
- return actionStates.get(actionId) ?? { ...DEFAULT_ACTION_STATE };
558
- },
559
- /**
560
- * Update the state for a tracked action
561
- * Merges partial state with existing state and notifies listeners
562
- */
563
- setActionState(actionId, partial) {
564
- const current = actionStates.get(actionId) ?? { ...DEFAULT_ACTION_STATE };
565
- const updated = {
566
- ...current,
567
- ...partial,
568
- actionId, // Always set the actionId
569
- };
570
- actionStates.set(actionId, updated);
571
- notifyActionListeners(actionId, updated);
572
- },
573
- /**
574
- * Subscribe to state changes for a specific action
575
- * Returns unsubscribe function
576
- */
577
- subscribeToAction(actionId, listener) {
578
- let listeners = actionListeners.get(actionId);
579
- if (!listeners) {
580
- listeners = new Set();
581
- actionListeners.set(actionId, listeners);
582
- }
583
- listeners.add(listener);
584
- return () => {
585
- listeners.delete(listener);
586
- // Clean up empty listener sets
587
- if (listeners.size === 0) {
588
- actionListeners.delete(actionId);
589
- }
590
- };
591
- },
592
- };
593
- }
594
- // Singleton store instance
595
- let storeInstance = null;
596
- /**
597
- * Initialize the global navigation store
598
- *
599
- * Should be called once during app initialization.
600
- * Subsequent calls return the existing instance.
601
- */
602
- export function initNavigationStore(config) {
603
- if (!storeInstance) {
604
- storeInstance = createNavigationStore(config);
605
- }
606
- return storeInstance;
607
- }
608
- /**
609
- * Get the global navigation store
610
- *
611
- * Throws if store hasn't been initialized.
612
- */
613
- export function getNavigationStore() {
614
- if (!storeInstance) {
615
- throw new Error("Navigation store not initialized. Call initNavigationStore first.");
616
- }
617
- return storeInstance;
618
- }
619
- /**
620
- * Reset the store instance (for testing)
621
- */
622
- export function resetNavigationStore() {
623
- storeInstance = null;
624
- }
625
- //# sourceMappingURL=navigation-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navigation-store.js","sourceRoot":"","sources":["../../src/browser/navigation-store.ts"],"names":[],"mappings":"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"}