@rangojs/router 0.0.0-experimental.0da83ed6 → 0.0.0-experimental.0e02cd4e

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 (906) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +689 -361
  4. package/package.json +2 -2
  5. package/skills/links/SKILL.md +3 -1
  6. package/skills/middleware/SKILL.md +2 -0
  7. package/skills/prerender/SKILL.md +110 -68
  8. package/skills/router-setup/SKILL.md +35 -0
  9. package/src/__internal.ts +1 -1
  10. package/src/browser/app-version.ts +14 -0
  11. package/src/browser/navigation-bridge.ts +16 -3
  12. package/src/browser/navigation-client.ts +86 -63
  13. package/src/browser/navigation-store.ts +43 -8
  14. package/src/browser/partial-update.ts +27 -5
  15. package/src/browser/prefetch/cache.ts +21 -6
  16. package/src/browser/prefetch/fetch.ts +46 -6
  17. package/src/browser/react/Link.tsx +58 -8
  18. package/src/browser/react/NavigationProvider.tsx +8 -1
  19. package/src/browser/react/context.ts +7 -2
  20. package/src/browser/react/use-handle.ts +9 -58
  21. package/src/browser/react/use-router.ts +21 -8
  22. package/src/browser/rsc-router.tsx +26 -3
  23. package/src/browser/scroll-restoration.ts +10 -8
  24. package/src/browser/server-action-bridge.ts +8 -17
  25. package/src/browser/types.ts +24 -5
  26. package/src/build/generate-manifest.ts +6 -6
  27. package/src/build/generate-route-types.ts +3 -0
  28. package/src/build/route-types/include-resolution.ts +8 -1
  29. package/src/build/route-types/router-processing.ts +211 -72
  30. package/src/build/route-types/scan-filter.ts +8 -1
  31. package/src/client.tsx +2 -56
  32. package/src/handle.ts +40 -0
  33. package/src/index.rsc.ts +3 -1
  34. package/src/index.ts +12 -0
  35. package/src/prerender/store.ts +5 -4
  36. package/src/prerender.ts +138 -77
  37. package/src/reverse.ts +22 -1
  38. package/src/route-definition/dsl-helpers.ts +42 -19
  39. package/src/route-definition/helpers-types.ts +4 -1
  40. package/src/route-definition/index.ts +3 -0
  41. package/src/route-definition/redirect.ts +9 -1
  42. package/src/route-definition/resolve-handler-use.ts +149 -0
  43. package/src/route-types.ts +11 -0
  44. package/src/router/content-negotiation.ts +100 -1
  45. package/src/router/handler-context.ts +48 -15
  46. package/src/router/intercept-resolution.ts +9 -4
  47. package/src/router/loader-resolution.ts +150 -21
  48. package/src/router/match-api.ts +124 -189
  49. package/src/router/match-middleware/cache-lookup.ts +26 -7
  50. package/src/router/match-middleware/segment-resolution.ts +53 -0
  51. package/src/router/match-result.ts +82 -4
  52. package/src/router/middleware-types.ts +0 -6
  53. package/src/router/middleware.ts +0 -3
  54. package/src/router/navigation-snapshot.ts +182 -0
  55. package/src/router/prerender-match.ts +110 -10
  56. package/src/router/preview-match.ts +30 -102
  57. package/src/router/request-classification.ts +310 -0
  58. package/src/router/route-snapshot.ts +245 -0
  59. package/src/router/router-interfaces.ts +36 -4
  60. package/src/router/router-options.ts +37 -11
  61. package/src/router/segment-resolution/fresh.ts +70 -5
  62. package/src/router/segment-resolution/revalidation.ts +87 -9
  63. package/src/router.ts +53 -5
  64. package/src/rsc/handler.ts +472 -393
  65. package/src/rsc/loader-fetch.ts +18 -3
  66. package/src/rsc/manifest-init.ts +5 -1
  67. package/src/rsc/progressive-enhancement.ts +12 -3
  68. package/src/rsc/rsc-rendering.ts +8 -2
  69. package/src/rsc/server-action.ts +8 -2
  70. package/src/rsc/ssr-setup.ts +2 -2
  71. package/src/rsc/types.ts +6 -4
  72. package/src/server/context.ts +39 -2
  73. package/src/server/handle-store.ts +19 -0
  74. package/src/server/loader-registry.ts +9 -8
  75. package/src/server/request-context.ts +132 -13
  76. package/src/ssr/index.tsx +3 -0
  77. package/src/static-handler.ts +18 -6
  78. package/src/types/cache-types.ts +4 -4
  79. package/src/types/handler-context.ts +17 -11
  80. package/src/types/loader-types.ts +32 -5
  81. package/src/types/route-entry.ts +1 -1
  82. package/src/types/segments.ts +1 -0
  83. package/src/urls/path-helper-types.ts +9 -2
  84. package/src/urls/path-helper.ts +47 -12
  85. package/src/urls/pattern-types.ts +12 -0
  86. package/src/urls/response-types.ts +16 -6
  87. package/src/use-loader.tsx +77 -5
  88. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  89. package/src/vite/discovery/discover-routers.ts +5 -1
  90. package/src/vite/discovery/prerender-collection.ts +128 -74
  91. package/src/vite/discovery/state.ts +13 -4
  92. package/src/vite/index.ts +4 -0
  93. package/src/vite/plugin-types.ts +60 -5
  94. package/src/vite/plugins/expose-id-utils.ts +12 -0
  95. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  96. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  97. package/src/vite/plugins/performance-tracks.ts +66 -198
  98. package/src/vite/plugins/refresh-cmd.ts +88 -26
  99. package/src/vite/rango.ts +18 -5
  100. package/src/vite/router-discovery.ts +178 -37
  101. package/src/vite/utils/prerender-utils.ts +18 -0
  102. package/src/vite/utils/shared-utils.ts +3 -2
  103. package/dist/__internal.d.ts +0 -83
  104. package/dist/__internal.d.ts.map +0 -1
  105. package/dist/__internal.js +0 -19
  106. package/dist/__internal.js.map +0 -1
  107. package/dist/__mocks__/version.d.ts +0 -7
  108. package/dist/__mocks__/version.d.ts.map +0 -1
  109. package/dist/__mocks__/version.js +0 -7
  110. package/dist/__mocks__/version.js.map +0 -1
  111. package/dist/__tests__/client-href.test.d.ts +0 -2
  112. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  113. package/dist/__tests__/client-href.test.js +0 -74
  114. package/dist/__tests__/client-href.test.js.map +0 -1
  115. package/dist/__tests__/component-utils.test.d.ts +0 -2
  116. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  117. package/dist/__tests__/component-utils.test.js +0 -51
  118. package/dist/__tests__/component-utils.test.js.map +0 -1
  119. package/dist/__tests__/event-controller.test.d.ts +0 -2
  120. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  121. package/dist/__tests__/event-controller.test.js +0 -538
  122. package/dist/__tests__/event-controller.test.js.map +0 -1
  123. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  124. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  125. package/dist/__tests__/helpers/route-tree.js +0 -374
  126. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  127. package/dist/__tests__/match-result.test.d.ts +0 -2
  128. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  129. package/dist/__tests__/match-result.test.js +0 -154
  130. package/dist/__tests__/match-result.test.js.map +0 -1
  131. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  132. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  133. package/dist/__tests__/navigation-store.test.js +0 -440
  134. package/dist/__tests__/navigation-store.test.js.map +0 -1
  135. package/dist/__tests__/partial-update.test.d.ts +0 -2
  136. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  137. package/dist/__tests__/partial-update.test.js +0 -1009
  138. package/dist/__tests__/partial-update.test.js.map +0 -1
  139. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  140. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  141. package/dist/__tests__/reverse-types.test.js +0 -656
  142. package/dist/__tests__/reverse-types.test.js.map +0 -1
  143. package/dist/__tests__/route-definition.test.d.ts +0 -2
  144. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  145. package/dist/__tests__/route-definition.test.js +0 -55
  146. package/dist/__tests__/route-definition.test.js.map +0 -1
  147. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  148. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  149. package/dist/__tests__/router-helpers.test.js +0 -377
  150. package/dist/__tests__/router-helpers.test.js.map +0 -1
  151. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  152. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  153. package/dist/__tests__/router-integration-2.test.js +0 -426
  154. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  155. package/dist/__tests__/router-integration.test.d.ts +0 -2
  156. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  157. package/dist/__tests__/router-integration.test.js +0 -1051
  158. package/dist/__tests__/router-integration.test.js.map +0 -1
  159. package/dist/__tests__/search-params.test.d.ts +0 -5
  160. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  161. package/dist/__tests__/search-params.test.js +0 -306
  162. package/dist/__tests__/search-params.test.js.map +0 -1
  163. package/dist/__tests__/segment-system.test.d.ts +0 -2
  164. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  165. package/dist/__tests__/segment-system.test.js +0 -627
  166. package/dist/__tests__/segment-system.test.js.map +0 -1
  167. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  168. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  169. package/dist/__tests__/static-handler-types.test.js +0 -63
  170. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  171. package/dist/__tests__/urls.test.d.ts +0 -2
  172. package/dist/__tests__/urls.test.d.ts.map +0 -1
  173. package/dist/__tests__/urls.test.js +0 -421
  174. package/dist/__tests__/urls.test.js.map +0 -1
  175. package/dist/__tests__/use-mount.test.d.ts +0 -2
  176. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  177. package/dist/__tests__/use-mount.test.js +0 -35
  178. package/dist/__tests__/use-mount.test.js.map +0 -1
  179. package/dist/bin/rango.d.ts +0 -2
  180. package/dist/bin/rango.d.ts.map +0 -1
  181. package/dist/bin/rango.js.map +0 -1
  182. package/dist/browser/event-controller.d.ts +0 -191
  183. package/dist/browser/event-controller.d.ts.map +0 -1
  184. package/dist/browser/event-controller.js +0 -559
  185. package/dist/browser/event-controller.js.map +0 -1
  186. package/dist/browser/index.d.ts +0 -2
  187. package/dist/browser/index.d.ts.map +0 -1
  188. package/dist/browser/index.js +0 -14
  189. package/dist/browser/index.js.map +0 -1
  190. package/dist/browser/link-interceptor.d.ts +0 -38
  191. package/dist/browser/link-interceptor.d.ts.map +0 -1
  192. package/dist/browser/link-interceptor.js +0 -99
  193. package/dist/browser/link-interceptor.js.map +0 -1
  194. package/dist/browser/logging.d.ts +0 -10
  195. package/dist/browser/logging.d.ts.map +0 -1
  196. package/dist/browser/logging.js +0 -29
  197. package/dist/browser/logging.js.map +0 -1
  198. package/dist/browser/lru-cache.d.ts +0 -17
  199. package/dist/browser/lru-cache.d.ts.map +0 -1
  200. package/dist/browser/lru-cache.js +0 -50
  201. package/dist/browser/lru-cache.js.map +0 -1
  202. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  203. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  204. package/dist/browser/merge-segment-loaders.js +0 -102
  205. package/dist/browser/merge-segment-loaders.js.map +0 -1
  206. package/dist/browser/navigation-bridge.d.ts +0 -102
  207. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  208. package/dist/browser/navigation-bridge.js +0 -708
  209. package/dist/browser/navigation-bridge.js.map +0 -1
  210. package/dist/browser/navigation-client.d.ts +0 -25
  211. package/dist/browser/navigation-client.d.ts.map +0 -1
  212. package/dist/browser/navigation-client.js +0 -157
  213. package/dist/browser/navigation-client.js.map +0 -1
  214. package/dist/browser/navigation-store.d.ts +0 -101
  215. package/dist/browser/navigation-store.d.ts.map +0 -1
  216. package/dist/browser/navigation-store.js +0 -625
  217. package/dist/browser/navigation-store.js.map +0 -1
  218. package/dist/browser/partial-update.d.ts +0 -75
  219. package/dist/browser/partial-update.d.ts.map +0 -1
  220. package/dist/browser/partial-update.js +0 -426
  221. package/dist/browser/partial-update.js.map +0 -1
  222. package/dist/browser/react/Link.d.ts +0 -86
  223. package/dist/browser/react/Link.d.ts.map +0 -1
  224. package/dist/browser/react/Link.js +0 -128
  225. package/dist/browser/react/Link.js.map +0 -1
  226. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  227. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  228. package/dist/browser/react/NavigationProvider.js +0 -216
  229. package/dist/browser/react/NavigationProvider.js.map +0 -1
  230. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  231. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  232. package/dist/browser/react/ScrollRestoration.js +0 -57
  233. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  234. package/dist/browser/react/context.d.ts +0 -46
  235. package/dist/browser/react/context.d.ts.map +0 -1
  236. package/dist/browser/react/context.js +0 -10
  237. package/dist/browser/react/context.js.map +0 -1
  238. package/dist/browser/react/index.d.ts +0 -11
  239. package/dist/browser/react/index.d.ts.map +0 -1
  240. package/dist/browser/react/index.js +0 -22
  241. package/dist/browser/react/index.js.map +0 -1
  242. package/dist/browser/react/location-state-shared.d.ts +0 -63
  243. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  244. package/dist/browser/react/location-state-shared.js +0 -81
  245. package/dist/browser/react/location-state-shared.js.map +0 -1
  246. package/dist/browser/react/location-state.d.ts +0 -23
  247. package/dist/browser/react/location-state.d.ts.map +0 -1
  248. package/dist/browser/react/location-state.js +0 -29
  249. package/dist/browser/react/location-state.js.map +0 -1
  250. package/dist/browser/react/mount-context.d.ts +0 -24
  251. package/dist/browser/react/mount-context.d.ts.map +0 -1
  252. package/dist/browser/react/mount-context.js +0 -24
  253. package/dist/browser/react/mount-context.js.map +0 -1
  254. package/dist/browser/react/use-action.d.ts +0 -64
  255. package/dist/browser/react/use-action.d.ts.map +0 -1
  256. package/dist/browser/react/use-action.js +0 -134
  257. package/dist/browser/react/use-action.js.map +0 -1
  258. package/dist/browser/react/use-client-cache.d.ts +0 -41
  259. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  260. package/dist/browser/react/use-client-cache.js +0 -39
  261. package/dist/browser/react/use-client-cache.js.map +0 -1
  262. package/dist/browser/react/use-handle.d.ts +0 -31
  263. package/dist/browser/react/use-handle.d.ts.map +0 -1
  264. package/dist/browser/react/use-handle.js +0 -144
  265. package/dist/browser/react/use-handle.js.map +0 -1
  266. package/dist/browser/react/use-href.d.ts +0 -33
  267. package/dist/browser/react/use-href.d.ts.map +0 -1
  268. package/dist/browser/react/use-href.js +0 -39
  269. package/dist/browser/react/use-href.js.map +0 -1
  270. package/dist/browser/react/use-link-status.d.ts +0 -37
  271. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  272. package/dist/browser/react/use-link-status.js +0 -99
  273. package/dist/browser/react/use-link-status.js.map +0 -1
  274. package/dist/browser/react/use-mount.d.ts +0 -25
  275. package/dist/browser/react/use-mount.d.ts.map +0 -1
  276. package/dist/browser/react/use-mount.js +0 -30
  277. package/dist/browser/react/use-mount.js.map +0 -1
  278. package/dist/browser/react/use-navigation.d.ts +0 -27
  279. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  280. package/dist/browser/react/use-navigation.js +0 -87
  281. package/dist/browser/react/use-navigation.js.map +0 -1
  282. package/dist/browser/react/use-segments.d.ts +0 -38
  283. package/dist/browser/react/use-segments.d.ts.map +0 -1
  284. package/dist/browser/react/use-segments.js +0 -130
  285. package/dist/browser/react/use-segments.js.map +0 -1
  286. package/dist/browser/request-controller.d.ts +0 -26
  287. package/dist/browser/request-controller.d.ts.map +0 -1
  288. package/dist/browser/request-controller.js +0 -147
  289. package/dist/browser/request-controller.js.map +0 -1
  290. package/dist/browser/rsc-router.d.ts +0 -129
  291. package/dist/browser/rsc-router.d.ts.map +0 -1
  292. package/dist/browser/rsc-router.js +0 -195
  293. package/dist/browser/rsc-router.js.map +0 -1
  294. package/dist/browser/scroll-restoration.d.ts +0 -93
  295. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  296. package/dist/browser/scroll-restoration.js +0 -321
  297. package/dist/browser/scroll-restoration.js.map +0 -1
  298. package/dist/browser/segment-structure-assert.d.ts +0 -17
  299. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  300. package/dist/browser/segment-structure-assert.js +0 -59
  301. package/dist/browser/segment-structure-assert.js.map +0 -1
  302. package/dist/browser/server-action-bridge.d.ts +0 -26
  303. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  304. package/dist/browser/server-action-bridge.js +0 -668
  305. package/dist/browser/server-action-bridge.js.map +0 -1
  306. package/dist/browser/shallow.d.ts +0 -12
  307. package/dist/browser/shallow.d.ts.map +0 -1
  308. package/dist/browser/shallow.js +0 -34
  309. package/dist/browser/shallow.js.map +0 -1
  310. package/dist/browser/types.d.ts +0 -369
  311. package/dist/browser/types.d.ts.map +0 -1
  312. package/dist/browser/types.js +0 -2
  313. package/dist/browser/types.js.map +0 -1
  314. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  315. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  316. package/dist/build/__tests__/generate-cli.test.js +0 -237
  317. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  318. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  319. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  320. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  321. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  322. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  323. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  324. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  325. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  326. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  327. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  328. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  329. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  330. package/dist/build/generate-manifest.d.ts +0 -81
  331. package/dist/build/generate-manifest.d.ts.map +0 -1
  332. package/dist/build/generate-manifest.js +0 -276
  333. package/dist/build/generate-manifest.js.map +0 -1
  334. package/dist/build/generate-route-types.d.ts +0 -115
  335. package/dist/build/generate-route-types.d.ts.map +0 -1
  336. package/dist/build/generate-route-types.js +0 -740
  337. package/dist/build/generate-route-types.js.map +0 -1
  338. package/dist/build/index.d.ts +0 -21
  339. package/dist/build/index.d.ts.map +0 -1
  340. package/dist/build/index.js +0 -21
  341. package/dist/build/index.js.map +0 -1
  342. package/dist/build/route-trie.d.ts +0 -71
  343. package/dist/build/route-trie.d.ts.map +0 -1
  344. package/dist/build/route-trie.js +0 -175
  345. package/dist/build/route-trie.js.map +0 -1
  346. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  347. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  348. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  349. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  350. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  351. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  352. package/dist/cache/__tests__/document-cache.test.js +0 -345
  353. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  354. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  355. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  356. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  357. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  358. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  359. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  360. package/dist/cache/__tests__/memory-store.test.js +0 -367
  361. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  362. package/dist/cache/cache-scope.d.ts +0 -102
  363. package/dist/cache/cache-scope.d.ts.map +0 -1
  364. package/dist/cache/cache-scope.js +0 -440
  365. package/dist/cache/cache-scope.js.map +0 -1
  366. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  367. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  368. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  369. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  370. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  371. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  372. package/dist/cache/cf/cf-cache-store.js +0 -242
  373. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  374. package/dist/cache/cf/index.d.ts +0 -14
  375. package/dist/cache/cf/index.d.ts.map +0 -1
  376. package/dist/cache/cf/index.js +0 -17
  377. package/dist/cache/cf/index.js.map +0 -1
  378. package/dist/cache/document-cache.d.ts +0 -64
  379. package/dist/cache/document-cache.d.ts.map +0 -1
  380. package/dist/cache/document-cache.js +0 -228
  381. package/dist/cache/document-cache.js.map +0 -1
  382. package/dist/cache/index.d.ts +0 -19
  383. package/dist/cache/index.d.ts.map +0 -1
  384. package/dist/cache/index.js +0 -21
  385. package/dist/cache/index.js.map +0 -1
  386. package/dist/cache/memory-segment-store.d.ts +0 -110
  387. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  388. package/dist/cache/memory-segment-store.js +0 -117
  389. package/dist/cache/memory-segment-store.js.map +0 -1
  390. package/dist/cache/memory-store.d.ts +0 -41
  391. package/dist/cache/memory-store.d.ts.map +0 -1
  392. package/dist/cache/memory-store.js +0 -191
  393. package/dist/cache/memory-store.js.map +0 -1
  394. package/dist/cache/types.d.ts +0 -317
  395. package/dist/cache/types.d.ts.map +0 -1
  396. package/dist/cache/types.js +0 -12
  397. package/dist/cache/types.js.map +0 -1
  398. package/dist/client.d.ts +0 -248
  399. package/dist/client.d.ts.map +0 -1
  400. package/dist/client.js +0 -367
  401. package/dist/client.js.map +0 -1
  402. package/dist/client.rsc.d.ts +0 -26
  403. package/dist/client.rsc.d.ts.map +0 -1
  404. package/dist/client.rsc.js +0 -46
  405. package/dist/client.rsc.js.map +0 -1
  406. package/dist/component-utils.d.ts +0 -36
  407. package/dist/component-utils.d.ts.map +0 -1
  408. package/dist/component-utils.js +0 -61
  409. package/dist/component-utils.js.map +0 -1
  410. package/dist/components/DefaultDocument.d.ts +0 -13
  411. package/dist/components/DefaultDocument.d.ts.map +0 -1
  412. package/dist/components/DefaultDocument.js +0 -15
  413. package/dist/components/DefaultDocument.js.map +0 -1
  414. package/dist/debug.d.ts +0 -58
  415. package/dist/debug.d.ts.map +0 -1
  416. package/dist/debug.js +0 -157
  417. package/dist/debug.js.map +0 -1
  418. package/dist/default-error-boundary.d.ts +0 -11
  419. package/dist/default-error-boundary.d.ts.map +0 -1
  420. package/dist/default-error-boundary.js +0 -45
  421. package/dist/default-error-boundary.js.map +0 -1
  422. package/dist/deps/browser.d.ts +0 -2
  423. package/dist/deps/browser.d.ts.map +0 -1
  424. package/dist/deps/browser.js +0 -3
  425. package/dist/deps/browser.js.map +0 -1
  426. package/dist/deps/html-stream-client.d.ts +0 -2
  427. package/dist/deps/html-stream-client.d.ts.map +0 -1
  428. package/dist/deps/html-stream-client.js +0 -3
  429. package/dist/deps/html-stream-client.js.map +0 -1
  430. package/dist/deps/html-stream-server.d.ts +0 -2
  431. package/dist/deps/html-stream-server.d.ts.map +0 -1
  432. package/dist/deps/html-stream-server.js +0 -3
  433. package/dist/deps/html-stream-server.js.map +0 -1
  434. package/dist/deps/rsc.d.ts +0 -2
  435. package/dist/deps/rsc.d.ts.map +0 -1
  436. package/dist/deps/rsc.js +0 -4
  437. package/dist/deps/rsc.js.map +0 -1
  438. package/dist/deps/ssr.d.ts +0 -2
  439. package/dist/deps/ssr.d.ts.map +0 -1
  440. package/dist/deps/ssr.js +0 -3
  441. package/dist/deps/ssr.js.map +0 -1
  442. package/dist/errors.d.ts +0 -174
  443. package/dist/errors.d.ts.map +0 -1
  444. package/dist/errors.js +0 -241
  445. package/dist/errors.js.map +0 -1
  446. package/dist/handle.d.ts +0 -78
  447. package/dist/handle.d.ts.map +0 -1
  448. package/dist/handle.js +0 -82
  449. package/dist/handle.js.map +0 -1
  450. package/dist/handles/MetaTags.d.ts +0 -14
  451. package/dist/handles/MetaTags.d.ts.map +0 -1
  452. package/dist/handles/MetaTags.js +0 -136
  453. package/dist/handles/MetaTags.js.map +0 -1
  454. package/dist/handles/index.d.ts +0 -6
  455. package/dist/handles/index.d.ts.map +0 -1
  456. package/dist/handles/index.js +0 -6
  457. package/dist/handles/index.js.map +0 -1
  458. package/dist/handles/meta.d.ts +0 -39
  459. package/dist/handles/meta.d.ts.map +0 -1
  460. package/dist/handles/meta.js +0 -202
  461. package/dist/handles/meta.js.map +0 -1
  462. package/dist/host/__tests__/errors.test.d.ts +0 -2
  463. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  464. package/dist/host/__tests__/errors.test.js +0 -76
  465. package/dist/host/__tests__/errors.test.js.map +0 -1
  466. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  467. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  468. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  469. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  470. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  471. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  472. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  473. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  474. package/dist/host/__tests__/router.test.d.ts +0 -2
  475. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  476. package/dist/host/__tests__/router.test.js +0 -241
  477. package/dist/host/__tests__/router.test.js.map +0 -1
  478. package/dist/host/__tests__/testing.test.d.ts +0 -2
  479. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  480. package/dist/host/__tests__/testing.test.js +0 -64
  481. package/dist/host/__tests__/testing.test.js.map +0 -1
  482. package/dist/host/__tests__/utils.test.d.ts +0 -2
  483. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  484. package/dist/host/__tests__/utils.test.js +0 -29
  485. package/dist/host/__tests__/utils.test.js.map +0 -1
  486. package/dist/host/cookie-handler.d.ts +0 -34
  487. package/dist/host/cookie-handler.d.ts.map +0 -1
  488. package/dist/host/cookie-handler.js +0 -124
  489. package/dist/host/cookie-handler.js.map +0 -1
  490. package/dist/host/errors.d.ts +0 -56
  491. package/dist/host/errors.d.ts.map +0 -1
  492. package/dist/host/errors.js +0 -79
  493. package/dist/host/errors.js.map +0 -1
  494. package/dist/host/index.d.ts +0 -29
  495. package/dist/host/index.d.ts.map +0 -1
  496. package/dist/host/index.js +0 -32
  497. package/dist/host/index.js.map +0 -1
  498. package/dist/host/pattern-matcher.d.ts +0 -36
  499. package/dist/host/pattern-matcher.d.ts.map +0 -1
  500. package/dist/host/pattern-matcher.js +0 -172
  501. package/dist/host/pattern-matcher.js.map +0 -1
  502. package/dist/host/router.d.ts +0 -26
  503. package/dist/host/router.d.ts.map +0 -1
  504. package/dist/host/router.js +0 -218
  505. package/dist/host/router.js.map +0 -1
  506. package/dist/host/testing.d.ts +0 -36
  507. package/dist/host/testing.d.ts.map +0 -1
  508. package/dist/host/testing.js +0 -55
  509. package/dist/host/testing.js.map +0 -1
  510. package/dist/host/types.d.ts +0 -115
  511. package/dist/host/types.d.ts.map +0 -1
  512. package/dist/host/types.js +0 -7
  513. package/dist/host/types.js.map +0 -1
  514. package/dist/host/utils.d.ts +0 -21
  515. package/dist/host/utils.d.ts.map +0 -1
  516. package/dist/host/utils.js +0 -23
  517. package/dist/host/utils.js.map +0 -1
  518. package/dist/href-client.d.ts +0 -131
  519. package/dist/href-client.d.ts.map +0 -1
  520. package/dist/href-client.js +0 -64
  521. package/dist/href-client.js.map +0 -1
  522. package/dist/href-context.d.ts +0 -29
  523. package/dist/href-context.d.ts.map +0 -1
  524. package/dist/href-context.js +0 -21
  525. package/dist/href-context.js.map +0 -1
  526. package/dist/index.d.ts +0 -73
  527. package/dist/index.d.ts.map +0 -1
  528. package/dist/index.js +0 -91
  529. package/dist/index.js.map +0 -1
  530. package/dist/index.rsc.d.ts +0 -32
  531. package/dist/index.rsc.d.ts.map +0 -1
  532. package/dist/index.rsc.js +0 -40
  533. package/dist/index.rsc.js.map +0 -1
  534. package/dist/internal-debug.d.ts +0 -2
  535. package/dist/internal-debug.d.ts.map +0 -1
  536. package/dist/internal-debug.js +0 -5
  537. package/dist/internal-debug.js.map +0 -1
  538. package/dist/loader.d.ts +0 -14
  539. package/dist/loader.d.ts.map +0 -1
  540. package/dist/loader.js +0 -20
  541. package/dist/loader.js.map +0 -1
  542. package/dist/loader.rsc.d.ts +0 -19
  543. package/dist/loader.rsc.d.ts.map +0 -1
  544. package/dist/loader.rsc.js +0 -99
  545. package/dist/loader.rsc.js.map +0 -1
  546. package/dist/network-error-thrower.d.ts +0 -17
  547. package/dist/network-error-thrower.d.ts.map +0 -1
  548. package/dist/network-error-thrower.js +0 -14
  549. package/dist/network-error-thrower.js.map +0 -1
  550. package/dist/outlet-context.d.ts +0 -13
  551. package/dist/outlet-context.d.ts.map +0 -1
  552. package/dist/outlet-context.js +0 -3
  553. package/dist/outlet-context.js.map +0 -1
  554. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  555. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  556. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  557. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  558. package/dist/prerender/param-hash.d.ts +0 -16
  559. package/dist/prerender/param-hash.d.ts.map +0 -1
  560. package/dist/prerender/param-hash.js +0 -36
  561. package/dist/prerender/param-hash.js.map +0 -1
  562. package/dist/prerender/store.d.ts +0 -38
  563. package/dist/prerender/store.d.ts.map +0 -1
  564. package/dist/prerender/store.js +0 -61
  565. package/dist/prerender/store.js.map +0 -1
  566. package/dist/prerender.d.ts +0 -66
  567. package/dist/prerender.d.ts.map +0 -1
  568. package/dist/prerender.js +0 -57
  569. package/dist/prerender.js.map +0 -1
  570. package/dist/reverse.d.ts +0 -196
  571. package/dist/reverse.d.ts.map +0 -1
  572. package/dist/reverse.js +0 -78
  573. package/dist/reverse.js.map +0 -1
  574. package/dist/root-error-boundary.d.ts +0 -33
  575. package/dist/root-error-boundary.d.ts.map +0 -1
  576. package/dist/root-error-boundary.js +0 -165
  577. package/dist/root-error-boundary.js.map +0 -1
  578. package/dist/route-content-wrapper.d.ts +0 -46
  579. package/dist/route-content-wrapper.d.ts.map +0 -1
  580. package/dist/route-content-wrapper.js +0 -77
  581. package/dist/route-content-wrapper.js.map +0 -1
  582. package/dist/route-definition.d.ts +0 -421
  583. package/dist/route-definition.d.ts.map +0 -1
  584. package/dist/route-definition.js +0 -868
  585. package/dist/route-definition.js.map +0 -1
  586. package/dist/route-map-builder.d.ts +0 -155
  587. package/dist/route-map-builder.d.ts.map +0 -1
  588. package/dist/route-map-builder.js +0 -237
  589. package/dist/route-map-builder.js.map +0 -1
  590. package/dist/route-types.d.ts +0 -165
  591. package/dist/route-types.d.ts.map +0 -1
  592. package/dist/route-types.js +0 -7
  593. package/dist/route-types.js.map +0 -1
  594. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  595. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  596. package/dist/router/__tests__/handler-context.test.js +0 -65
  597. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  598. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  599. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  600. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  601. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  602. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  603. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  604. package/dist/router/__tests__/match-context.test.js +0 -92
  605. package/dist/router/__tests__/match-context.test.js.map +0 -1
  606. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  607. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  608. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  609. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  610. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  611. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  612. package/dist/router/__tests__/match-result.test.js +0 -457
  613. package/dist/router/__tests__/match-result.test.js.map +0 -1
  614. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  615. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  616. package/dist/router/__tests__/on-error.test.js +0 -678
  617. package/dist/router/__tests__/on-error.test.js.map +0 -1
  618. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  619. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  620. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  621. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  622. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  623. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  624. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  625. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  626. package/dist/router/error-handling.d.ts +0 -77
  627. package/dist/router/error-handling.d.ts.map +0 -1
  628. package/dist/router/error-handling.js +0 -202
  629. package/dist/router/error-handling.js.map +0 -1
  630. package/dist/router/handler-context.d.ts +0 -20
  631. package/dist/router/handler-context.d.ts.map +0 -1
  632. package/dist/router/handler-context.js +0 -198
  633. package/dist/router/handler-context.js.map +0 -1
  634. package/dist/router/intercept-resolution.d.ts +0 -66
  635. package/dist/router/intercept-resolution.d.ts.map +0 -1
  636. package/dist/router/intercept-resolution.js +0 -246
  637. package/dist/router/intercept-resolution.js.map +0 -1
  638. package/dist/router/loader-resolution.d.ts +0 -64
  639. package/dist/router/loader-resolution.d.ts.map +0 -1
  640. package/dist/router/loader-resolution.js +0 -284
  641. package/dist/router/loader-resolution.js.map +0 -1
  642. package/dist/router/logging.d.ts +0 -15
  643. package/dist/router/logging.d.ts.map +0 -1
  644. package/dist/router/logging.js +0 -99
  645. package/dist/router/logging.js.map +0 -1
  646. package/dist/router/manifest.d.ts +0 -22
  647. package/dist/router/manifest.d.ts.map +0 -1
  648. package/dist/router/manifest.js +0 -181
  649. package/dist/router/manifest.js.map +0 -1
  650. package/dist/router/match-api.d.ts +0 -35
  651. package/dist/router/match-api.d.ts.map +0 -1
  652. package/dist/router/match-api.js +0 -406
  653. package/dist/router/match-api.js.map +0 -1
  654. package/dist/router/match-context.d.ts +0 -206
  655. package/dist/router/match-context.d.ts.map +0 -1
  656. package/dist/router/match-context.js +0 -17
  657. package/dist/router/match-context.js.map +0 -1
  658. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  659. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  660. package/dist/router/match-middleware/background-revalidation.js +0 -75
  661. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  662. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  663. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  664. package/dist/router/match-middleware/cache-lookup.js +0 -257
  665. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  666. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  667. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  668. package/dist/router/match-middleware/cache-store.js +0 -108
  669. package/dist/router/match-middleware/cache-store.js.map +0 -1
  670. package/dist/router/match-middleware/index.d.ts +0 -81
  671. package/dist/router/match-middleware/index.d.ts.map +0 -1
  672. package/dist/router/match-middleware/index.js +0 -80
  673. package/dist/router/match-middleware/index.js.map +0 -1
  674. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  675. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  676. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  677. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  678. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  679. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  680. package/dist/router/match-middleware/segment-resolution.js +0 -53
  681. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  682. package/dist/router/match-pipelines.d.ts +0 -147
  683. package/dist/router/match-pipelines.d.ts.map +0 -1
  684. package/dist/router/match-pipelines.js +0 -82
  685. package/dist/router/match-pipelines.js.map +0 -1
  686. package/dist/router/match-result.d.ts +0 -126
  687. package/dist/router/match-result.d.ts.map +0 -1
  688. package/dist/router/match-result.js +0 -93
  689. package/dist/router/match-result.js.map +0 -1
  690. package/dist/router/metrics.d.ts +0 -20
  691. package/dist/router/metrics.d.ts.map +0 -1
  692. package/dist/router/metrics.js +0 -47
  693. package/dist/router/metrics.js.map +0 -1
  694. package/dist/router/middleware.d.ts +0 -249
  695. package/dist/router/middleware.d.ts.map +0 -1
  696. package/dist/router/middleware.js +0 -434
  697. package/dist/router/middleware.js.map +0 -1
  698. package/dist/router/middleware.test.d.ts +0 -2
  699. package/dist/router/middleware.test.d.ts.map +0 -1
  700. package/dist/router/middleware.test.js +0 -816
  701. package/dist/router/middleware.test.js.map +0 -1
  702. package/dist/router/pattern-matching.d.ts +0 -149
  703. package/dist/router/pattern-matching.d.ts.map +0 -1
  704. package/dist/router/pattern-matching.js +0 -349
  705. package/dist/router/pattern-matching.js.map +0 -1
  706. package/dist/router/revalidation.d.ts +0 -44
  707. package/dist/router/revalidation.d.ts.map +0 -1
  708. package/dist/router/revalidation.js +0 -147
  709. package/dist/router/revalidation.js.map +0 -1
  710. package/dist/router/router-context.d.ts +0 -135
  711. package/dist/router/router-context.d.ts.map +0 -1
  712. package/dist/router/router-context.js +0 -36
  713. package/dist/router/router-context.js.map +0 -1
  714. package/dist/router/segment-resolution.d.ts +0 -127
  715. package/dist/router/segment-resolution.d.ts.map +0 -1
  716. package/dist/router/segment-resolution.js +0 -919
  717. package/dist/router/segment-resolution.js.map +0 -1
  718. package/dist/router/trie-matching.d.ts +0 -40
  719. package/dist/router/trie-matching.d.ts.map +0 -1
  720. package/dist/router/trie-matching.js +0 -127
  721. package/dist/router/trie-matching.js.map +0 -1
  722. package/dist/router/types.d.ts +0 -136
  723. package/dist/router/types.d.ts.map +0 -1
  724. package/dist/router/types.js +0 -7
  725. package/dist/router/types.js.map +0 -1
  726. package/dist/router.d.ts +0 -753
  727. package/dist/router.d.ts.map +0 -1
  728. package/dist/router.gen.d.ts +0 -6
  729. package/dist/router.gen.d.ts.map +0 -1
  730. package/dist/router.gen.js +0 -6
  731. package/dist/router.gen.js.map +0 -1
  732. package/dist/router.js +0 -1304
  733. package/dist/router.js.map +0 -1
  734. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  735. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  736. package/dist/rsc/__tests__/helpers.test.js +0 -140
  737. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  738. package/dist/rsc/handler.d.ts +0 -45
  739. package/dist/rsc/handler.d.ts.map +0 -1
  740. package/dist/rsc/handler.js +0 -1172
  741. package/dist/rsc/handler.js.map +0 -1
  742. package/dist/rsc/helpers.d.ts +0 -16
  743. package/dist/rsc/helpers.d.ts.map +0 -1
  744. package/dist/rsc/helpers.js +0 -55
  745. package/dist/rsc/helpers.js.map +0 -1
  746. package/dist/rsc/index.d.ts +0 -22
  747. package/dist/rsc/index.d.ts.map +0 -1
  748. package/dist/rsc/index.js +0 -23
  749. package/dist/rsc/index.js.map +0 -1
  750. package/dist/rsc/nonce.d.ts +0 -9
  751. package/dist/rsc/nonce.d.ts.map +0 -1
  752. package/dist/rsc/nonce.js +0 -18
  753. package/dist/rsc/nonce.js.map +0 -1
  754. package/dist/rsc/types.d.ts +0 -206
  755. package/dist/rsc/types.d.ts.map +0 -1
  756. package/dist/rsc/types.js +0 -8
  757. package/dist/rsc/types.js.map +0 -1
  758. package/dist/search-params.d.ts +0 -103
  759. package/dist/search-params.d.ts.map +0 -1
  760. package/dist/search-params.js +0 -74
  761. package/dist/search-params.js.map +0 -1
  762. package/dist/segment-system.d.ts +0 -75
  763. package/dist/segment-system.d.ts.map +0 -1
  764. package/dist/segment-system.js +0 -336
  765. package/dist/segment-system.js.map +0 -1
  766. package/dist/server/context.d.ts +0 -245
  767. package/dist/server/context.d.ts.map +0 -1
  768. package/dist/server/context.js +0 -197
  769. package/dist/server/context.js.map +0 -1
  770. package/dist/server/fetchable-loader-store.d.ts +0 -18
  771. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  772. package/dist/server/fetchable-loader-store.js +0 -18
  773. package/dist/server/fetchable-loader-store.js.map +0 -1
  774. package/dist/server/handle-store.d.ts +0 -85
  775. package/dist/server/handle-store.d.ts.map +0 -1
  776. package/dist/server/handle-store.js +0 -142
  777. package/dist/server/handle-store.js.map +0 -1
  778. package/dist/server/loader-registry.d.ts +0 -55
  779. package/dist/server/loader-registry.d.ts.map +0 -1
  780. package/dist/server/loader-registry.js +0 -132
  781. package/dist/server/loader-registry.js.map +0 -1
  782. package/dist/server/request-context.d.ts +0 -226
  783. package/dist/server/request-context.d.ts.map +0 -1
  784. package/dist/server/request-context.js +0 -290
  785. package/dist/server/request-context.js.map +0 -1
  786. package/dist/server/root-layout.d.ts +0 -4
  787. package/dist/server/root-layout.d.ts.map +0 -1
  788. package/dist/server/root-layout.js +0 -5
  789. package/dist/server/root-layout.js.map +0 -1
  790. package/dist/server.d.ts +0 -15
  791. package/dist/server.d.ts.map +0 -1
  792. package/dist/server.js +0 -20
  793. package/dist/server.js.map +0 -1
  794. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  795. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  796. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  797. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  798. package/dist/ssr/index.d.ts +0 -98
  799. package/dist/ssr/index.d.ts.map +0 -1
  800. package/dist/ssr/index.js +0 -158
  801. package/dist/ssr/index.js.map +0 -1
  802. package/dist/static-handler.d.ts +0 -50
  803. package/dist/static-handler.d.ts.map +0 -1
  804. package/dist/static-handler.gen.d.ts +0 -5
  805. package/dist/static-handler.gen.d.ts.map +0 -1
  806. package/dist/static-handler.gen.js +0 -5
  807. package/dist/static-handler.gen.js.map +0 -1
  808. package/dist/static-handler.js +0 -29
  809. package/dist/static-handler.js.map +0 -1
  810. package/dist/theme/ThemeProvider.d.ts +0 -20
  811. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  812. package/dist/theme/ThemeProvider.js +0 -240
  813. package/dist/theme/ThemeProvider.js.map +0 -1
  814. package/dist/theme/ThemeScript.d.ts +0 -48
  815. package/dist/theme/ThemeScript.d.ts.map +0 -1
  816. package/dist/theme/ThemeScript.js +0 -13
  817. package/dist/theme/ThemeScript.js.map +0 -1
  818. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  819. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  820. package/dist/theme/__tests__/theme.test.js +0 -103
  821. package/dist/theme/__tests__/theme.test.js.map +0 -1
  822. package/dist/theme/constants.d.ts +0 -29
  823. package/dist/theme/constants.d.ts.map +0 -1
  824. package/dist/theme/constants.js +0 -48
  825. package/dist/theme/constants.js.map +0 -1
  826. package/dist/theme/index.d.ts +0 -31
  827. package/dist/theme/index.d.ts.map +0 -1
  828. package/dist/theme/index.js +0 -36
  829. package/dist/theme/index.js.map +0 -1
  830. package/dist/theme/theme-context.d.ts +0 -40
  831. package/dist/theme/theme-context.d.ts.map +0 -1
  832. package/dist/theme/theme-context.js +0 -60
  833. package/dist/theme/theme-context.js.map +0 -1
  834. package/dist/theme/theme-script.d.ts +0 -27
  835. package/dist/theme/theme-script.d.ts.map +0 -1
  836. package/dist/theme/theme-script.js +0 -147
  837. package/dist/theme/theme-script.js.map +0 -1
  838. package/dist/theme/types.d.ts +0 -163
  839. package/dist/theme/types.d.ts.map +0 -1
  840. package/dist/theme/types.js +0 -11
  841. package/dist/theme/types.js.map +0 -1
  842. package/dist/theme/use-theme.d.ts +0 -12
  843. package/dist/theme/use-theme.d.ts.map +0 -1
  844. package/dist/theme/use-theme.js +0 -40
  845. package/dist/theme/use-theme.js.map +0 -1
  846. package/dist/types.d.ts +0 -1479
  847. package/dist/types.d.ts.map +0 -1
  848. package/dist/types.js +0 -10
  849. package/dist/types.js.map +0 -1
  850. package/dist/urls.d.ts +0 -441
  851. package/dist/urls.d.ts.map +0 -1
  852. package/dist/urls.gen.d.ts +0 -8
  853. package/dist/urls.gen.d.ts.map +0 -1
  854. package/dist/urls.gen.js +0 -8
  855. package/dist/urls.gen.js.map +0 -1
  856. package/dist/urls.js +0 -443
  857. package/dist/urls.js.map +0 -1
  858. package/dist/use-loader.d.ts +0 -127
  859. package/dist/use-loader.d.ts.map +0 -1
  860. package/dist/use-loader.js +0 -237
  861. package/dist/use-loader.js.map +0 -1
  862. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  863. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  864. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  865. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  866. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  867. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  868. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  869. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  870. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  871. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  872. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  873. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  874. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  875. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  876. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  877. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  878. package/dist/vite/ast-handler-extract.d.ts +0 -49
  879. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  880. package/dist/vite/ast-handler-extract.js +0 -249
  881. package/dist/vite/ast-handler-extract.js.map +0 -1
  882. package/dist/vite/expose-action-id.d.ts +0 -19
  883. package/dist/vite/expose-action-id.d.ts.map +0 -1
  884. package/dist/vite/expose-action-id.js +0 -250
  885. package/dist/vite/expose-action-id.js.map +0 -1
  886. package/dist/vite/expose-id-utils.d.ts +0 -69
  887. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  888. package/dist/vite/expose-id-utils.js +0 -289
  889. package/dist/vite/expose-id-utils.js.map +0 -1
  890. package/dist/vite/expose-internal-ids.d.ts +0 -22
  891. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  892. package/dist/vite/expose-internal-ids.js +0 -886
  893. package/dist/vite/expose-internal-ids.js.map +0 -1
  894. package/dist/vite/index.d.ts +0 -149
  895. package/dist/vite/index.d.ts.map +0 -1
  896. package/dist/vite/index.js.map +0 -1
  897. package/dist/vite/index.named-routes.gen.ts +0 -103
  898. package/dist/vite/package-resolution.d.ts +0 -43
  899. package/dist/vite/package-resolution.d.ts.map +0 -1
  900. package/dist/vite/package-resolution.js +0 -112
  901. package/dist/vite/package-resolution.js.map +0 -1
  902. package/dist/vite/virtual-entries.d.ts +0 -25
  903. package/dist/vite/virtual-entries.d.ts.map +0 -1
  904. package/dist/vite/virtual-entries.js +0 -110
  905. package/dist/vite/virtual-entries.js.map +0 -1
  906. package/src/browser/debug-channel.ts +0 -93
@@ -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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"}