@rangojs/router 0.0.0-experimental.a62282ba → 0.0.0-experimental.a6f6907d

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 (940) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +138 -50
  3. package/dist/vite/index.js +839 -429
  4. package/package.json +2 -2
  5. package/skills/cache-guide/SKILL.md +32 -0
  6. package/skills/caching/SKILL.md +45 -4
  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/parallel/SKILL.md +126 -0
  11. package/skills/prerender/SKILL.md +110 -68
  12. package/skills/route/SKILL.md +31 -0
  13. package/skills/router-setup/SKILL.md +87 -2
  14. package/skills/typesafety/SKILL.md +10 -0
  15. package/src/__internal.ts +1 -1
  16. package/src/browser/app-version.ts +14 -0
  17. package/src/browser/event-controller.ts +5 -0
  18. package/src/browser/navigation-bridge.ts +24 -11
  19. package/src/browser/navigation-client.ts +142 -57
  20. package/src/browser/navigation-store.ts +43 -8
  21. package/src/browser/navigation-transaction.ts +11 -9
  22. package/src/browser/partial-update.ts +81 -13
  23. package/src/browser/prefetch/cache.ts +73 -11
  24. package/src/browser/prefetch/fetch.ts +98 -27
  25. package/src/browser/prefetch/queue.ts +92 -20
  26. package/src/browser/prefetch/resource-ready.ts +77 -0
  27. package/src/browser/react/Link.tsx +76 -9
  28. package/src/browser/react/NavigationProvider.tsx +40 -4
  29. package/src/browser/react/context.ts +7 -2
  30. package/src/browser/react/use-handle.ts +9 -58
  31. package/src/browser/react/use-router.ts +21 -8
  32. package/src/browser/rsc-router.tsx +134 -59
  33. package/src/browser/scroll-restoration.ts +21 -18
  34. package/src/browser/segment-reconciler.ts +32 -1
  35. package/src/browser/server-action-bridge.ts +8 -6
  36. package/src/browser/types.ts +36 -5
  37. package/src/build/generate-manifest.ts +6 -6
  38. package/src/build/generate-route-types.ts +3 -0
  39. package/src/build/route-types/include-resolution.ts +8 -1
  40. package/src/build/route-types/router-processing.ts +223 -74
  41. package/src/build/route-types/scan-filter.ts +8 -1
  42. package/src/cache/cache-runtime.ts +15 -11
  43. package/src/cache/cache-scope.ts +48 -7
  44. package/src/cache/cf/cf-cache-store.ts +453 -11
  45. package/src/cache/cf/index.ts +5 -1
  46. package/src/cache/document-cache.ts +17 -7
  47. package/src/cache/index.ts +1 -0
  48. package/src/cache/taint.ts +55 -0
  49. package/src/client.tsx +2 -56
  50. package/src/context-var.ts +72 -2
  51. package/src/debug.ts +2 -2
  52. package/src/handle.ts +40 -0
  53. package/src/index.rsc.ts +3 -1
  54. package/src/index.ts +12 -0
  55. package/src/prerender/store.ts +5 -4
  56. package/src/prerender.ts +138 -77
  57. package/src/reverse.ts +22 -1
  58. package/src/route-definition/dsl-helpers.ts +73 -25
  59. package/src/route-definition/helpers-types.ts +10 -6
  60. package/src/route-definition/index.ts +3 -0
  61. package/src/route-definition/redirect.ts +11 -3
  62. package/src/route-definition/resolve-handler-use.ts +149 -0
  63. package/src/route-types.ts +11 -0
  64. package/src/router/content-negotiation.ts +100 -1
  65. package/src/router/handler-context.ts +79 -23
  66. package/src/router/intercept-resolution.ts +9 -4
  67. package/src/router/lazy-includes.ts +2 -1
  68. package/src/router/loader-resolution.ts +156 -21
  69. package/src/router/logging.ts +1 -1
  70. package/src/router/manifest.ts +6 -2
  71. package/src/router/match-api.ts +124 -189
  72. package/src/router/match-middleware/background-revalidation.ts +30 -2
  73. package/src/router/match-middleware/cache-lookup.ts +94 -17
  74. package/src/router/match-middleware/cache-store.ts +53 -10
  75. package/src/router/match-middleware/intercept-resolution.ts +9 -7
  76. package/src/router/match-middleware/segment-resolution.ts +60 -5
  77. package/src/router/match-result.ts +104 -10
  78. package/src/router/metrics.ts +6 -1
  79. package/src/router/middleware-types.ts +6 -8
  80. package/src/router/middleware.ts +4 -6
  81. package/src/router/navigation-snapshot.ts +182 -0
  82. package/src/router/prerender-match.ts +110 -10
  83. package/src/router/preview-match.ts +30 -102
  84. package/src/router/request-classification.ts +310 -0
  85. package/src/router/route-snapshot.ts +245 -0
  86. package/src/router/router-context.ts +1 -0
  87. package/src/router/router-interfaces.ts +36 -4
  88. package/src/router/router-options.ts +37 -11
  89. package/src/router/segment-resolution/fresh.ts +198 -20
  90. package/src/router/segment-resolution/helpers.ts +29 -24
  91. package/src/router/segment-resolution/loader-cache.ts +1 -0
  92. package/src/router/segment-resolution/revalidation.ts +433 -296
  93. package/src/router/types.ts +1 -0
  94. package/src/router.ts +55 -6
  95. package/src/rsc/handler.ts +472 -372
  96. package/src/rsc/loader-fetch.ts +23 -3
  97. package/src/rsc/manifest-init.ts +5 -1
  98. package/src/rsc/progressive-enhancement.ts +14 -2
  99. package/src/rsc/rsc-rendering.ts +10 -1
  100. package/src/rsc/server-action.ts +8 -0
  101. package/src/rsc/ssr-setup.ts +2 -2
  102. package/src/rsc/types.ts +9 -1
  103. package/src/segment-system.tsx +140 -4
  104. package/src/server/context.ts +140 -14
  105. package/src/server/handle-store.ts +19 -0
  106. package/src/server/loader-registry.ts +9 -8
  107. package/src/server/request-context.ts +185 -19
  108. package/src/ssr/index.tsx +4 -0
  109. package/src/static-handler.ts +18 -6
  110. package/src/types/cache-types.ts +4 -4
  111. package/src/types/handler-context.ts +137 -33
  112. package/src/types/loader-types.ts +36 -9
  113. package/src/types/route-entry.ts +1 -1
  114. package/src/types/segments.ts +3 -0
  115. package/src/urls/path-helper-types.ts +9 -2
  116. package/src/urls/path-helper.ts +48 -13
  117. package/src/urls/pattern-types.ts +12 -0
  118. package/src/urls/response-types.ts +16 -6
  119. package/src/use-loader.tsx +77 -5
  120. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  121. package/src/vite/discovery/discover-routers.ts +5 -1
  122. package/src/vite/discovery/prerender-collection.ts +128 -74
  123. package/src/vite/discovery/state.ts +13 -6
  124. package/src/vite/index.ts +4 -0
  125. package/src/vite/plugin-types.ts +51 -79
  126. package/src/vite/plugins/expose-action-id.ts +1 -3
  127. package/src/vite/plugins/expose-id-utils.ts +12 -0
  128. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  129. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  130. package/src/vite/plugins/performance-tracks.ts +88 -0
  131. package/src/vite/plugins/refresh-cmd.ts +88 -26
  132. package/src/vite/plugins/version-plugin.ts +13 -1
  133. package/src/vite/rango.ts +163 -211
  134. package/src/vite/router-discovery.ts +178 -45
  135. package/src/vite/utils/banner.ts +3 -3
  136. package/src/vite/utils/prerender-utils.ts +18 -0
  137. package/src/vite/utils/shared-utils.ts +3 -2
  138. package/dist/__internal.d.ts +0 -83
  139. package/dist/__internal.d.ts.map +0 -1
  140. package/dist/__internal.js +0 -19
  141. package/dist/__internal.js.map +0 -1
  142. package/dist/__mocks__/version.d.ts +0 -7
  143. package/dist/__mocks__/version.d.ts.map +0 -1
  144. package/dist/__mocks__/version.js +0 -7
  145. package/dist/__mocks__/version.js.map +0 -1
  146. package/dist/__tests__/client-href.test.d.ts +0 -2
  147. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  148. package/dist/__tests__/client-href.test.js +0 -74
  149. package/dist/__tests__/client-href.test.js.map +0 -1
  150. package/dist/__tests__/component-utils.test.d.ts +0 -2
  151. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  152. package/dist/__tests__/component-utils.test.js +0 -51
  153. package/dist/__tests__/component-utils.test.js.map +0 -1
  154. package/dist/__tests__/event-controller.test.d.ts +0 -2
  155. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  156. package/dist/__tests__/event-controller.test.js +0 -538
  157. package/dist/__tests__/event-controller.test.js.map +0 -1
  158. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  159. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  160. package/dist/__tests__/helpers/route-tree.js +0 -374
  161. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  162. package/dist/__tests__/match-result.test.d.ts +0 -2
  163. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  164. package/dist/__tests__/match-result.test.js +0 -154
  165. package/dist/__tests__/match-result.test.js.map +0 -1
  166. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  167. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  168. package/dist/__tests__/navigation-store.test.js +0 -440
  169. package/dist/__tests__/navigation-store.test.js.map +0 -1
  170. package/dist/__tests__/partial-update.test.d.ts +0 -2
  171. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  172. package/dist/__tests__/partial-update.test.js +0 -1009
  173. package/dist/__tests__/partial-update.test.js.map +0 -1
  174. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  175. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  176. package/dist/__tests__/reverse-types.test.js +0 -656
  177. package/dist/__tests__/reverse-types.test.js.map +0 -1
  178. package/dist/__tests__/route-definition.test.d.ts +0 -2
  179. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  180. package/dist/__tests__/route-definition.test.js +0 -55
  181. package/dist/__tests__/route-definition.test.js.map +0 -1
  182. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  183. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  184. package/dist/__tests__/router-helpers.test.js +0 -377
  185. package/dist/__tests__/router-helpers.test.js.map +0 -1
  186. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  187. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  188. package/dist/__tests__/router-integration-2.test.js +0 -426
  189. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  190. package/dist/__tests__/router-integration.test.d.ts +0 -2
  191. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  192. package/dist/__tests__/router-integration.test.js +0 -1051
  193. package/dist/__tests__/router-integration.test.js.map +0 -1
  194. package/dist/__tests__/search-params.test.d.ts +0 -5
  195. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  196. package/dist/__tests__/search-params.test.js +0 -306
  197. package/dist/__tests__/search-params.test.js.map +0 -1
  198. package/dist/__tests__/segment-system.test.d.ts +0 -2
  199. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  200. package/dist/__tests__/segment-system.test.js +0 -627
  201. package/dist/__tests__/segment-system.test.js.map +0 -1
  202. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  203. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  204. package/dist/__tests__/static-handler-types.test.js +0 -63
  205. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  206. package/dist/__tests__/urls.test.d.ts +0 -2
  207. package/dist/__tests__/urls.test.d.ts.map +0 -1
  208. package/dist/__tests__/urls.test.js +0 -421
  209. package/dist/__tests__/urls.test.js.map +0 -1
  210. package/dist/__tests__/use-mount.test.d.ts +0 -2
  211. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  212. package/dist/__tests__/use-mount.test.js +0 -35
  213. package/dist/__tests__/use-mount.test.js.map +0 -1
  214. package/dist/bin/rango.d.ts +0 -2
  215. package/dist/bin/rango.d.ts.map +0 -1
  216. package/dist/bin/rango.js.map +0 -1
  217. package/dist/browser/event-controller.d.ts +0 -191
  218. package/dist/browser/event-controller.d.ts.map +0 -1
  219. package/dist/browser/event-controller.js +0 -559
  220. package/dist/browser/event-controller.js.map +0 -1
  221. package/dist/browser/index.d.ts +0 -2
  222. package/dist/browser/index.d.ts.map +0 -1
  223. package/dist/browser/index.js +0 -14
  224. package/dist/browser/index.js.map +0 -1
  225. package/dist/browser/link-interceptor.d.ts +0 -38
  226. package/dist/browser/link-interceptor.d.ts.map +0 -1
  227. package/dist/browser/link-interceptor.js +0 -99
  228. package/dist/browser/link-interceptor.js.map +0 -1
  229. package/dist/browser/logging.d.ts +0 -10
  230. package/dist/browser/logging.d.ts.map +0 -1
  231. package/dist/browser/logging.js +0 -29
  232. package/dist/browser/logging.js.map +0 -1
  233. package/dist/browser/lru-cache.d.ts +0 -17
  234. package/dist/browser/lru-cache.d.ts.map +0 -1
  235. package/dist/browser/lru-cache.js +0 -50
  236. package/dist/browser/lru-cache.js.map +0 -1
  237. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  238. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  239. package/dist/browser/merge-segment-loaders.js +0 -102
  240. package/dist/browser/merge-segment-loaders.js.map +0 -1
  241. package/dist/browser/navigation-bridge.d.ts +0 -102
  242. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  243. package/dist/browser/navigation-bridge.js +0 -708
  244. package/dist/browser/navigation-bridge.js.map +0 -1
  245. package/dist/browser/navigation-client.d.ts +0 -25
  246. package/dist/browser/navigation-client.d.ts.map +0 -1
  247. package/dist/browser/navigation-client.js +0 -157
  248. package/dist/browser/navigation-client.js.map +0 -1
  249. package/dist/browser/navigation-store.d.ts +0 -101
  250. package/dist/browser/navigation-store.d.ts.map +0 -1
  251. package/dist/browser/navigation-store.js +0 -625
  252. package/dist/browser/navigation-store.js.map +0 -1
  253. package/dist/browser/partial-update.d.ts +0 -75
  254. package/dist/browser/partial-update.d.ts.map +0 -1
  255. package/dist/browser/partial-update.js +0 -426
  256. package/dist/browser/partial-update.js.map +0 -1
  257. package/dist/browser/react/Link.d.ts +0 -86
  258. package/dist/browser/react/Link.d.ts.map +0 -1
  259. package/dist/browser/react/Link.js +0 -128
  260. package/dist/browser/react/Link.js.map +0 -1
  261. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  262. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  263. package/dist/browser/react/NavigationProvider.js +0 -216
  264. package/dist/browser/react/NavigationProvider.js.map +0 -1
  265. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  266. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  267. package/dist/browser/react/ScrollRestoration.js +0 -57
  268. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  269. package/dist/browser/react/context.d.ts +0 -46
  270. package/dist/browser/react/context.d.ts.map +0 -1
  271. package/dist/browser/react/context.js +0 -10
  272. package/dist/browser/react/context.js.map +0 -1
  273. package/dist/browser/react/index.d.ts +0 -11
  274. package/dist/browser/react/index.d.ts.map +0 -1
  275. package/dist/browser/react/index.js +0 -22
  276. package/dist/browser/react/index.js.map +0 -1
  277. package/dist/browser/react/location-state-shared.d.ts +0 -63
  278. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  279. package/dist/browser/react/location-state-shared.js +0 -81
  280. package/dist/browser/react/location-state-shared.js.map +0 -1
  281. package/dist/browser/react/location-state.d.ts +0 -23
  282. package/dist/browser/react/location-state.d.ts.map +0 -1
  283. package/dist/browser/react/location-state.js +0 -29
  284. package/dist/browser/react/location-state.js.map +0 -1
  285. package/dist/browser/react/mount-context.d.ts +0 -24
  286. package/dist/browser/react/mount-context.d.ts.map +0 -1
  287. package/dist/browser/react/mount-context.js +0 -24
  288. package/dist/browser/react/mount-context.js.map +0 -1
  289. package/dist/browser/react/use-action.d.ts +0 -64
  290. package/dist/browser/react/use-action.d.ts.map +0 -1
  291. package/dist/browser/react/use-action.js +0 -134
  292. package/dist/browser/react/use-action.js.map +0 -1
  293. package/dist/browser/react/use-client-cache.d.ts +0 -41
  294. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  295. package/dist/browser/react/use-client-cache.js +0 -39
  296. package/dist/browser/react/use-client-cache.js.map +0 -1
  297. package/dist/browser/react/use-handle.d.ts +0 -31
  298. package/dist/browser/react/use-handle.d.ts.map +0 -1
  299. package/dist/browser/react/use-handle.js +0 -144
  300. package/dist/browser/react/use-handle.js.map +0 -1
  301. package/dist/browser/react/use-href.d.ts +0 -33
  302. package/dist/browser/react/use-href.d.ts.map +0 -1
  303. package/dist/browser/react/use-href.js +0 -39
  304. package/dist/browser/react/use-href.js.map +0 -1
  305. package/dist/browser/react/use-link-status.d.ts +0 -37
  306. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  307. package/dist/browser/react/use-link-status.js +0 -99
  308. package/dist/browser/react/use-link-status.js.map +0 -1
  309. package/dist/browser/react/use-mount.d.ts +0 -25
  310. package/dist/browser/react/use-mount.d.ts.map +0 -1
  311. package/dist/browser/react/use-mount.js +0 -30
  312. package/dist/browser/react/use-mount.js.map +0 -1
  313. package/dist/browser/react/use-navigation.d.ts +0 -27
  314. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  315. package/dist/browser/react/use-navigation.js +0 -87
  316. package/dist/browser/react/use-navigation.js.map +0 -1
  317. package/dist/browser/react/use-segments.d.ts +0 -38
  318. package/dist/browser/react/use-segments.d.ts.map +0 -1
  319. package/dist/browser/react/use-segments.js +0 -130
  320. package/dist/browser/react/use-segments.js.map +0 -1
  321. package/dist/browser/request-controller.d.ts +0 -26
  322. package/dist/browser/request-controller.d.ts.map +0 -1
  323. package/dist/browser/request-controller.js +0 -147
  324. package/dist/browser/request-controller.js.map +0 -1
  325. package/dist/browser/rsc-router.d.ts +0 -129
  326. package/dist/browser/rsc-router.d.ts.map +0 -1
  327. package/dist/browser/rsc-router.js +0 -195
  328. package/dist/browser/rsc-router.js.map +0 -1
  329. package/dist/browser/scroll-restoration.d.ts +0 -93
  330. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  331. package/dist/browser/scroll-restoration.js +0 -321
  332. package/dist/browser/scroll-restoration.js.map +0 -1
  333. package/dist/browser/segment-structure-assert.d.ts +0 -17
  334. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  335. package/dist/browser/segment-structure-assert.js +0 -59
  336. package/dist/browser/segment-structure-assert.js.map +0 -1
  337. package/dist/browser/server-action-bridge.d.ts +0 -26
  338. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  339. package/dist/browser/server-action-bridge.js +0 -668
  340. package/dist/browser/server-action-bridge.js.map +0 -1
  341. package/dist/browser/shallow.d.ts +0 -12
  342. package/dist/browser/shallow.d.ts.map +0 -1
  343. package/dist/browser/shallow.js +0 -34
  344. package/dist/browser/shallow.js.map +0 -1
  345. package/dist/browser/types.d.ts +0 -369
  346. package/dist/browser/types.d.ts.map +0 -1
  347. package/dist/browser/types.js +0 -2
  348. package/dist/browser/types.js.map +0 -1
  349. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  350. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  351. package/dist/build/__tests__/generate-cli.test.js +0 -237
  352. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  353. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  354. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  355. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  356. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  357. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  358. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  359. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  360. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  361. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  362. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  363. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  364. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  365. package/dist/build/generate-manifest.d.ts +0 -81
  366. package/dist/build/generate-manifest.d.ts.map +0 -1
  367. package/dist/build/generate-manifest.js +0 -276
  368. package/dist/build/generate-manifest.js.map +0 -1
  369. package/dist/build/generate-route-types.d.ts +0 -115
  370. package/dist/build/generate-route-types.d.ts.map +0 -1
  371. package/dist/build/generate-route-types.js +0 -740
  372. package/dist/build/generate-route-types.js.map +0 -1
  373. package/dist/build/index.d.ts +0 -21
  374. package/dist/build/index.d.ts.map +0 -1
  375. package/dist/build/index.js +0 -21
  376. package/dist/build/index.js.map +0 -1
  377. package/dist/build/route-trie.d.ts +0 -71
  378. package/dist/build/route-trie.d.ts.map +0 -1
  379. package/dist/build/route-trie.js +0 -175
  380. package/dist/build/route-trie.js.map +0 -1
  381. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  382. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  383. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  384. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  385. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  386. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  387. package/dist/cache/__tests__/document-cache.test.js +0 -345
  388. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  389. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  390. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  391. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  392. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  393. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  394. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  395. package/dist/cache/__tests__/memory-store.test.js +0 -367
  396. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  397. package/dist/cache/cache-scope.d.ts +0 -102
  398. package/dist/cache/cache-scope.d.ts.map +0 -1
  399. package/dist/cache/cache-scope.js +0 -440
  400. package/dist/cache/cache-scope.js.map +0 -1
  401. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  402. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  403. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  404. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  405. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  406. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  407. package/dist/cache/cf/cf-cache-store.js +0 -242
  408. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  409. package/dist/cache/cf/index.d.ts +0 -14
  410. package/dist/cache/cf/index.d.ts.map +0 -1
  411. package/dist/cache/cf/index.js +0 -17
  412. package/dist/cache/cf/index.js.map +0 -1
  413. package/dist/cache/document-cache.d.ts +0 -64
  414. package/dist/cache/document-cache.d.ts.map +0 -1
  415. package/dist/cache/document-cache.js +0 -228
  416. package/dist/cache/document-cache.js.map +0 -1
  417. package/dist/cache/index.d.ts +0 -19
  418. package/dist/cache/index.d.ts.map +0 -1
  419. package/dist/cache/index.js +0 -21
  420. package/dist/cache/index.js.map +0 -1
  421. package/dist/cache/memory-segment-store.d.ts +0 -110
  422. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  423. package/dist/cache/memory-segment-store.js +0 -117
  424. package/dist/cache/memory-segment-store.js.map +0 -1
  425. package/dist/cache/memory-store.d.ts +0 -41
  426. package/dist/cache/memory-store.d.ts.map +0 -1
  427. package/dist/cache/memory-store.js +0 -191
  428. package/dist/cache/memory-store.js.map +0 -1
  429. package/dist/cache/types.d.ts +0 -317
  430. package/dist/cache/types.d.ts.map +0 -1
  431. package/dist/cache/types.js +0 -12
  432. package/dist/cache/types.js.map +0 -1
  433. package/dist/client.d.ts +0 -248
  434. package/dist/client.d.ts.map +0 -1
  435. package/dist/client.js +0 -367
  436. package/dist/client.js.map +0 -1
  437. package/dist/client.rsc.d.ts +0 -26
  438. package/dist/client.rsc.d.ts.map +0 -1
  439. package/dist/client.rsc.js +0 -46
  440. package/dist/client.rsc.js.map +0 -1
  441. package/dist/component-utils.d.ts +0 -36
  442. package/dist/component-utils.d.ts.map +0 -1
  443. package/dist/component-utils.js +0 -61
  444. package/dist/component-utils.js.map +0 -1
  445. package/dist/components/DefaultDocument.d.ts +0 -13
  446. package/dist/components/DefaultDocument.d.ts.map +0 -1
  447. package/dist/components/DefaultDocument.js +0 -15
  448. package/dist/components/DefaultDocument.js.map +0 -1
  449. package/dist/debug.d.ts +0 -58
  450. package/dist/debug.d.ts.map +0 -1
  451. package/dist/debug.js +0 -157
  452. package/dist/debug.js.map +0 -1
  453. package/dist/default-error-boundary.d.ts +0 -11
  454. package/dist/default-error-boundary.d.ts.map +0 -1
  455. package/dist/default-error-boundary.js +0 -45
  456. package/dist/default-error-boundary.js.map +0 -1
  457. package/dist/deps/browser.d.ts +0 -2
  458. package/dist/deps/browser.d.ts.map +0 -1
  459. package/dist/deps/browser.js +0 -3
  460. package/dist/deps/browser.js.map +0 -1
  461. package/dist/deps/html-stream-client.d.ts +0 -2
  462. package/dist/deps/html-stream-client.d.ts.map +0 -1
  463. package/dist/deps/html-stream-client.js +0 -3
  464. package/dist/deps/html-stream-client.js.map +0 -1
  465. package/dist/deps/html-stream-server.d.ts +0 -2
  466. package/dist/deps/html-stream-server.d.ts.map +0 -1
  467. package/dist/deps/html-stream-server.js +0 -3
  468. package/dist/deps/html-stream-server.js.map +0 -1
  469. package/dist/deps/rsc.d.ts +0 -2
  470. package/dist/deps/rsc.d.ts.map +0 -1
  471. package/dist/deps/rsc.js +0 -4
  472. package/dist/deps/rsc.js.map +0 -1
  473. package/dist/deps/ssr.d.ts +0 -2
  474. package/dist/deps/ssr.d.ts.map +0 -1
  475. package/dist/deps/ssr.js +0 -3
  476. package/dist/deps/ssr.js.map +0 -1
  477. package/dist/errors.d.ts +0 -174
  478. package/dist/errors.d.ts.map +0 -1
  479. package/dist/errors.js +0 -241
  480. package/dist/errors.js.map +0 -1
  481. package/dist/handle.d.ts +0 -78
  482. package/dist/handle.d.ts.map +0 -1
  483. package/dist/handle.js +0 -82
  484. package/dist/handle.js.map +0 -1
  485. package/dist/handles/MetaTags.d.ts +0 -14
  486. package/dist/handles/MetaTags.d.ts.map +0 -1
  487. package/dist/handles/MetaTags.js +0 -136
  488. package/dist/handles/MetaTags.js.map +0 -1
  489. package/dist/handles/index.d.ts +0 -6
  490. package/dist/handles/index.d.ts.map +0 -1
  491. package/dist/handles/index.js +0 -6
  492. package/dist/handles/index.js.map +0 -1
  493. package/dist/handles/meta.d.ts +0 -39
  494. package/dist/handles/meta.d.ts.map +0 -1
  495. package/dist/handles/meta.js +0 -202
  496. package/dist/handles/meta.js.map +0 -1
  497. package/dist/host/__tests__/errors.test.d.ts +0 -2
  498. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  499. package/dist/host/__tests__/errors.test.js +0 -76
  500. package/dist/host/__tests__/errors.test.js.map +0 -1
  501. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  502. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  503. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  504. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  505. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  506. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  507. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  508. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  509. package/dist/host/__tests__/router.test.d.ts +0 -2
  510. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  511. package/dist/host/__tests__/router.test.js +0 -241
  512. package/dist/host/__tests__/router.test.js.map +0 -1
  513. package/dist/host/__tests__/testing.test.d.ts +0 -2
  514. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  515. package/dist/host/__tests__/testing.test.js +0 -64
  516. package/dist/host/__tests__/testing.test.js.map +0 -1
  517. package/dist/host/__tests__/utils.test.d.ts +0 -2
  518. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  519. package/dist/host/__tests__/utils.test.js +0 -29
  520. package/dist/host/__tests__/utils.test.js.map +0 -1
  521. package/dist/host/cookie-handler.d.ts +0 -34
  522. package/dist/host/cookie-handler.d.ts.map +0 -1
  523. package/dist/host/cookie-handler.js +0 -124
  524. package/dist/host/cookie-handler.js.map +0 -1
  525. package/dist/host/errors.d.ts +0 -56
  526. package/dist/host/errors.d.ts.map +0 -1
  527. package/dist/host/errors.js +0 -79
  528. package/dist/host/errors.js.map +0 -1
  529. package/dist/host/index.d.ts +0 -29
  530. package/dist/host/index.d.ts.map +0 -1
  531. package/dist/host/index.js +0 -32
  532. package/dist/host/index.js.map +0 -1
  533. package/dist/host/pattern-matcher.d.ts +0 -36
  534. package/dist/host/pattern-matcher.d.ts.map +0 -1
  535. package/dist/host/pattern-matcher.js +0 -172
  536. package/dist/host/pattern-matcher.js.map +0 -1
  537. package/dist/host/router.d.ts +0 -26
  538. package/dist/host/router.d.ts.map +0 -1
  539. package/dist/host/router.js +0 -218
  540. package/dist/host/router.js.map +0 -1
  541. package/dist/host/testing.d.ts +0 -36
  542. package/dist/host/testing.d.ts.map +0 -1
  543. package/dist/host/testing.js +0 -55
  544. package/dist/host/testing.js.map +0 -1
  545. package/dist/host/types.d.ts +0 -115
  546. package/dist/host/types.d.ts.map +0 -1
  547. package/dist/host/types.js +0 -7
  548. package/dist/host/types.js.map +0 -1
  549. package/dist/host/utils.d.ts +0 -21
  550. package/dist/host/utils.d.ts.map +0 -1
  551. package/dist/host/utils.js +0 -23
  552. package/dist/host/utils.js.map +0 -1
  553. package/dist/href-client.d.ts +0 -131
  554. package/dist/href-client.d.ts.map +0 -1
  555. package/dist/href-client.js +0 -64
  556. package/dist/href-client.js.map +0 -1
  557. package/dist/href-context.d.ts +0 -29
  558. package/dist/href-context.d.ts.map +0 -1
  559. package/dist/href-context.js +0 -21
  560. package/dist/href-context.js.map +0 -1
  561. package/dist/index.d.ts +0 -73
  562. package/dist/index.d.ts.map +0 -1
  563. package/dist/index.js +0 -91
  564. package/dist/index.js.map +0 -1
  565. package/dist/index.rsc.d.ts +0 -32
  566. package/dist/index.rsc.d.ts.map +0 -1
  567. package/dist/index.rsc.js +0 -40
  568. package/dist/index.rsc.js.map +0 -1
  569. package/dist/internal-debug.d.ts +0 -2
  570. package/dist/internal-debug.d.ts.map +0 -1
  571. package/dist/internal-debug.js +0 -5
  572. package/dist/internal-debug.js.map +0 -1
  573. package/dist/loader.d.ts +0 -14
  574. package/dist/loader.d.ts.map +0 -1
  575. package/dist/loader.js +0 -20
  576. package/dist/loader.js.map +0 -1
  577. package/dist/loader.rsc.d.ts +0 -19
  578. package/dist/loader.rsc.d.ts.map +0 -1
  579. package/dist/loader.rsc.js +0 -99
  580. package/dist/loader.rsc.js.map +0 -1
  581. package/dist/network-error-thrower.d.ts +0 -17
  582. package/dist/network-error-thrower.d.ts.map +0 -1
  583. package/dist/network-error-thrower.js +0 -14
  584. package/dist/network-error-thrower.js.map +0 -1
  585. package/dist/outlet-context.d.ts +0 -13
  586. package/dist/outlet-context.d.ts.map +0 -1
  587. package/dist/outlet-context.js +0 -3
  588. package/dist/outlet-context.js.map +0 -1
  589. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  590. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  591. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  592. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  593. package/dist/prerender/param-hash.d.ts +0 -16
  594. package/dist/prerender/param-hash.d.ts.map +0 -1
  595. package/dist/prerender/param-hash.js +0 -36
  596. package/dist/prerender/param-hash.js.map +0 -1
  597. package/dist/prerender/store.d.ts +0 -38
  598. package/dist/prerender/store.d.ts.map +0 -1
  599. package/dist/prerender/store.js +0 -61
  600. package/dist/prerender/store.js.map +0 -1
  601. package/dist/prerender.d.ts +0 -66
  602. package/dist/prerender.d.ts.map +0 -1
  603. package/dist/prerender.js +0 -57
  604. package/dist/prerender.js.map +0 -1
  605. package/dist/reverse.d.ts +0 -196
  606. package/dist/reverse.d.ts.map +0 -1
  607. package/dist/reverse.js +0 -78
  608. package/dist/reverse.js.map +0 -1
  609. package/dist/root-error-boundary.d.ts +0 -33
  610. package/dist/root-error-boundary.d.ts.map +0 -1
  611. package/dist/root-error-boundary.js +0 -165
  612. package/dist/root-error-boundary.js.map +0 -1
  613. package/dist/route-content-wrapper.d.ts +0 -46
  614. package/dist/route-content-wrapper.d.ts.map +0 -1
  615. package/dist/route-content-wrapper.js +0 -77
  616. package/dist/route-content-wrapper.js.map +0 -1
  617. package/dist/route-definition.d.ts +0 -421
  618. package/dist/route-definition.d.ts.map +0 -1
  619. package/dist/route-definition.js +0 -868
  620. package/dist/route-definition.js.map +0 -1
  621. package/dist/route-map-builder.d.ts +0 -155
  622. package/dist/route-map-builder.d.ts.map +0 -1
  623. package/dist/route-map-builder.js +0 -237
  624. package/dist/route-map-builder.js.map +0 -1
  625. package/dist/route-types.d.ts +0 -165
  626. package/dist/route-types.d.ts.map +0 -1
  627. package/dist/route-types.js +0 -7
  628. package/dist/route-types.js.map +0 -1
  629. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  630. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  631. package/dist/router/__tests__/handler-context.test.js +0 -65
  632. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  633. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  634. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  635. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  636. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  637. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  638. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  639. package/dist/router/__tests__/match-context.test.js +0 -92
  640. package/dist/router/__tests__/match-context.test.js.map +0 -1
  641. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  642. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  643. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  644. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  645. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  646. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  647. package/dist/router/__tests__/match-result.test.js +0 -457
  648. package/dist/router/__tests__/match-result.test.js.map +0 -1
  649. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  650. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  651. package/dist/router/__tests__/on-error.test.js +0 -678
  652. package/dist/router/__tests__/on-error.test.js.map +0 -1
  653. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  654. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  655. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  656. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  657. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  658. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  659. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  660. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  661. package/dist/router/error-handling.d.ts +0 -77
  662. package/dist/router/error-handling.d.ts.map +0 -1
  663. package/dist/router/error-handling.js +0 -202
  664. package/dist/router/error-handling.js.map +0 -1
  665. package/dist/router/handler-context.d.ts +0 -20
  666. package/dist/router/handler-context.d.ts.map +0 -1
  667. package/dist/router/handler-context.js +0 -198
  668. package/dist/router/handler-context.js.map +0 -1
  669. package/dist/router/intercept-resolution.d.ts +0 -66
  670. package/dist/router/intercept-resolution.d.ts.map +0 -1
  671. package/dist/router/intercept-resolution.js +0 -246
  672. package/dist/router/intercept-resolution.js.map +0 -1
  673. package/dist/router/loader-resolution.d.ts +0 -64
  674. package/dist/router/loader-resolution.d.ts.map +0 -1
  675. package/dist/router/loader-resolution.js +0 -284
  676. package/dist/router/loader-resolution.js.map +0 -1
  677. package/dist/router/logging.d.ts +0 -15
  678. package/dist/router/logging.d.ts.map +0 -1
  679. package/dist/router/logging.js +0 -99
  680. package/dist/router/logging.js.map +0 -1
  681. package/dist/router/manifest.d.ts +0 -22
  682. package/dist/router/manifest.d.ts.map +0 -1
  683. package/dist/router/manifest.js +0 -181
  684. package/dist/router/manifest.js.map +0 -1
  685. package/dist/router/match-api.d.ts +0 -35
  686. package/dist/router/match-api.d.ts.map +0 -1
  687. package/dist/router/match-api.js +0 -406
  688. package/dist/router/match-api.js.map +0 -1
  689. package/dist/router/match-context.d.ts +0 -206
  690. package/dist/router/match-context.d.ts.map +0 -1
  691. package/dist/router/match-context.js +0 -17
  692. package/dist/router/match-context.js.map +0 -1
  693. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  694. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  695. package/dist/router/match-middleware/background-revalidation.js +0 -75
  696. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  697. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  698. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  699. package/dist/router/match-middleware/cache-lookup.js +0 -257
  700. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  701. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  702. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  703. package/dist/router/match-middleware/cache-store.js +0 -108
  704. package/dist/router/match-middleware/cache-store.js.map +0 -1
  705. package/dist/router/match-middleware/index.d.ts +0 -81
  706. package/dist/router/match-middleware/index.d.ts.map +0 -1
  707. package/dist/router/match-middleware/index.js +0 -80
  708. package/dist/router/match-middleware/index.js.map +0 -1
  709. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  710. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  711. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  712. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  713. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  714. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  715. package/dist/router/match-middleware/segment-resolution.js +0 -53
  716. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  717. package/dist/router/match-pipelines.d.ts +0 -147
  718. package/dist/router/match-pipelines.d.ts.map +0 -1
  719. package/dist/router/match-pipelines.js +0 -82
  720. package/dist/router/match-pipelines.js.map +0 -1
  721. package/dist/router/match-result.d.ts +0 -126
  722. package/dist/router/match-result.d.ts.map +0 -1
  723. package/dist/router/match-result.js +0 -93
  724. package/dist/router/match-result.js.map +0 -1
  725. package/dist/router/metrics.d.ts +0 -20
  726. package/dist/router/metrics.d.ts.map +0 -1
  727. package/dist/router/metrics.js +0 -47
  728. package/dist/router/metrics.js.map +0 -1
  729. package/dist/router/middleware.d.ts +0 -249
  730. package/dist/router/middleware.d.ts.map +0 -1
  731. package/dist/router/middleware.js +0 -434
  732. package/dist/router/middleware.js.map +0 -1
  733. package/dist/router/middleware.test.d.ts +0 -2
  734. package/dist/router/middleware.test.d.ts.map +0 -1
  735. package/dist/router/middleware.test.js +0 -816
  736. package/dist/router/middleware.test.js.map +0 -1
  737. package/dist/router/pattern-matching.d.ts +0 -149
  738. package/dist/router/pattern-matching.d.ts.map +0 -1
  739. package/dist/router/pattern-matching.js +0 -349
  740. package/dist/router/pattern-matching.js.map +0 -1
  741. package/dist/router/revalidation.d.ts +0 -44
  742. package/dist/router/revalidation.d.ts.map +0 -1
  743. package/dist/router/revalidation.js +0 -147
  744. package/dist/router/revalidation.js.map +0 -1
  745. package/dist/router/router-context.d.ts +0 -135
  746. package/dist/router/router-context.d.ts.map +0 -1
  747. package/dist/router/router-context.js +0 -36
  748. package/dist/router/router-context.js.map +0 -1
  749. package/dist/router/segment-resolution.d.ts +0 -127
  750. package/dist/router/segment-resolution.d.ts.map +0 -1
  751. package/dist/router/segment-resolution.js +0 -919
  752. package/dist/router/segment-resolution.js.map +0 -1
  753. package/dist/router/trie-matching.d.ts +0 -40
  754. package/dist/router/trie-matching.d.ts.map +0 -1
  755. package/dist/router/trie-matching.js +0 -127
  756. package/dist/router/trie-matching.js.map +0 -1
  757. package/dist/router/types.d.ts +0 -136
  758. package/dist/router/types.d.ts.map +0 -1
  759. package/dist/router/types.js +0 -7
  760. package/dist/router/types.js.map +0 -1
  761. package/dist/router.d.ts +0 -753
  762. package/dist/router.d.ts.map +0 -1
  763. package/dist/router.gen.d.ts +0 -6
  764. package/dist/router.gen.d.ts.map +0 -1
  765. package/dist/router.gen.js +0 -6
  766. package/dist/router.gen.js.map +0 -1
  767. package/dist/router.js +0 -1304
  768. package/dist/router.js.map +0 -1
  769. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  770. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  771. package/dist/rsc/__tests__/helpers.test.js +0 -140
  772. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  773. package/dist/rsc/handler.d.ts +0 -45
  774. package/dist/rsc/handler.d.ts.map +0 -1
  775. package/dist/rsc/handler.js +0 -1172
  776. package/dist/rsc/handler.js.map +0 -1
  777. package/dist/rsc/helpers.d.ts +0 -16
  778. package/dist/rsc/helpers.d.ts.map +0 -1
  779. package/dist/rsc/helpers.js +0 -55
  780. package/dist/rsc/helpers.js.map +0 -1
  781. package/dist/rsc/index.d.ts +0 -22
  782. package/dist/rsc/index.d.ts.map +0 -1
  783. package/dist/rsc/index.js +0 -23
  784. package/dist/rsc/index.js.map +0 -1
  785. package/dist/rsc/nonce.d.ts +0 -9
  786. package/dist/rsc/nonce.d.ts.map +0 -1
  787. package/dist/rsc/nonce.js +0 -18
  788. package/dist/rsc/nonce.js.map +0 -1
  789. package/dist/rsc/types.d.ts +0 -206
  790. package/dist/rsc/types.d.ts.map +0 -1
  791. package/dist/rsc/types.js +0 -8
  792. package/dist/rsc/types.js.map +0 -1
  793. package/dist/search-params.d.ts +0 -103
  794. package/dist/search-params.d.ts.map +0 -1
  795. package/dist/search-params.js +0 -74
  796. package/dist/search-params.js.map +0 -1
  797. package/dist/segment-system.d.ts +0 -75
  798. package/dist/segment-system.d.ts.map +0 -1
  799. package/dist/segment-system.js +0 -336
  800. package/dist/segment-system.js.map +0 -1
  801. package/dist/server/context.d.ts +0 -245
  802. package/dist/server/context.d.ts.map +0 -1
  803. package/dist/server/context.js +0 -197
  804. package/dist/server/context.js.map +0 -1
  805. package/dist/server/fetchable-loader-store.d.ts +0 -18
  806. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  807. package/dist/server/fetchable-loader-store.js +0 -18
  808. package/dist/server/fetchable-loader-store.js.map +0 -1
  809. package/dist/server/handle-store.d.ts +0 -85
  810. package/dist/server/handle-store.d.ts.map +0 -1
  811. package/dist/server/handle-store.js +0 -142
  812. package/dist/server/handle-store.js.map +0 -1
  813. package/dist/server/loader-registry.d.ts +0 -55
  814. package/dist/server/loader-registry.d.ts.map +0 -1
  815. package/dist/server/loader-registry.js +0 -132
  816. package/dist/server/loader-registry.js.map +0 -1
  817. package/dist/server/request-context.d.ts +0 -226
  818. package/dist/server/request-context.d.ts.map +0 -1
  819. package/dist/server/request-context.js +0 -290
  820. package/dist/server/request-context.js.map +0 -1
  821. package/dist/server/root-layout.d.ts +0 -4
  822. package/dist/server/root-layout.d.ts.map +0 -1
  823. package/dist/server/root-layout.js +0 -5
  824. package/dist/server/root-layout.js.map +0 -1
  825. package/dist/server.d.ts +0 -15
  826. package/dist/server.d.ts.map +0 -1
  827. package/dist/server.js +0 -20
  828. package/dist/server.js.map +0 -1
  829. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  830. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  831. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  832. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  833. package/dist/ssr/index.d.ts +0 -98
  834. package/dist/ssr/index.d.ts.map +0 -1
  835. package/dist/ssr/index.js +0 -158
  836. package/dist/ssr/index.js.map +0 -1
  837. package/dist/static-handler.d.ts +0 -50
  838. package/dist/static-handler.d.ts.map +0 -1
  839. package/dist/static-handler.gen.d.ts +0 -5
  840. package/dist/static-handler.gen.d.ts.map +0 -1
  841. package/dist/static-handler.gen.js +0 -5
  842. package/dist/static-handler.gen.js.map +0 -1
  843. package/dist/static-handler.js +0 -29
  844. package/dist/static-handler.js.map +0 -1
  845. package/dist/theme/ThemeProvider.d.ts +0 -20
  846. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  847. package/dist/theme/ThemeProvider.js +0 -240
  848. package/dist/theme/ThemeProvider.js.map +0 -1
  849. package/dist/theme/ThemeScript.d.ts +0 -48
  850. package/dist/theme/ThemeScript.d.ts.map +0 -1
  851. package/dist/theme/ThemeScript.js +0 -13
  852. package/dist/theme/ThemeScript.js.map +0 -1
  853. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  854. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  855. package/dist/theme/__tests__/theme.test.js +0 -103
  856. package/dist/theme/__tests__/theme.test.js.map +0 -1
  857. package/dist/theme/constants.d.ts +0 -29
  858. package/dist/theme/constants.d.ts.map +0 -1
  859. package/dist/theme/constants.js +0 -48
  860. package/dist/theme/constants.js.map +0 -1
  861. package/dist/theme/index.d.ts +0 -31
  862. package/dist/theme/index.d.ts.map +0 -1
  863. package/dist/theme/index.js +0 -36
  864. package/dist/theme/index.js.map +0 -1
  865. package/dist/theme/theme-context.d.ts +0 -40
  866. package/dist/theme/theme-context.d.ts.map +0 -1
  867. package/dist/theme/theme-context.js +0 -60
  868. package/dist/theme/theme-context.js.map +0 -1
  869. package/dist/theme/theme-script.d.ts +0 -27
  870. package/dist/theme/theme-script.d.ts.map +0 -1
  871. package/dist/theme/theme-script.js +0 -147
  872. package/dist/theme/theme-script.js.map +0 -1
  873. package/dist/theme/types.d.ts +0 -163
  874. package/dist/theme/types.d.ts.map +0 -1
  875. package/dist/theme/types.js +0 -11
  876. package/dist/theme/types.js.map +0 -1
  877. package/dist/theme/use-theme.d.ts +0 -12
  878. package/dist/theme/use-theme.d.ts.map +0 -1
  879. package/dist/theme/use-theme.js +0 -40
  880. package/dist/theme/use-theme.js.map +0 -1
  881. package/dist/types.d.ts +0 -1479
  882. package/dist/types.d.ts.map +0 -1
  883. package/dist/types.js +0 -10
  884. package/dist/types.js.map +0 -1
  885. package/dist/urls.d.ts +0 -441
  886. package/dist/urls.d.ts.map +0 -1
  887. package/dist/urls.gen.d.ts +0 -8
  888. package/dist/urls.gen.d.ts.map +0 -1
  889. package/dist/urls.gen.js +0 -8
  890. package/dist/urls.gen.js.map +0 -1
  891. package/dist/urls.js +0 -443
  892. package/dist/urls.js.map +0 -1
  893. package/dist/use-loader.d.ts +0 -127
  894. package/dist/use-loader.d.ts.map +0 -1
  895. package/dist/use-loader.js +0 -237
  896. package/dist/use-loader.js.map +0 -1
  897. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  898. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  899. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  900. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  901. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  902. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  903. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  904. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  905. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  906. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  907. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  908. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  909. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  910. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  911. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  912. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  913. package/dist/vite/ast-handler-extract.d.ts +0 -49
  914. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  915. package/dist/vite/ast-handler-extract.js +0 -249
  916. package/dist/vite/ast-handler-extract.js.map +0 -1
  917. package/dist/vite/expose-action-id.d.ts +0 -19
  918. package/dist/vite/expose-action-id.d.ts.map +0 -1
  919. package/dist/vite/expose-action-id.js +0 -250
  920. package/dist/vite/expose-action-id.js.map +0 -1
  921. package/dist/vite/expose-id-utils.d.ts +0 -69
  922. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  923. package/dist/vite/expose-id-utils.js +0 -289
  924. package/dist/vite/expose-id-utils.js.map +0 -1
  925. package/dist/vite/expose-internal-ids.d.ts +0 -22
  926. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  927. package/dist/vite/expose-internal-ids.js +0 -886
  928. package/dist/vite/expose-internal-ids.js.map +0 -1
  929. package/dist/vite/index.d.ts +0 -149
  930. package/dist/vite/index.d.ts.map +0 -1
  931. package/dist/vite/index.js.map +0 -1
  932. package/dist/vite/index.named-routes.gen.ts +0 -103
  933. package/dist/vite/package-resolution.d.ts +0 -43
  934. package/dist/vite/package-resolution.d.ts.map +0 -1
  935. package/dist/vite/package-resolution.js +0 -112
  936. package/dist/vite/package-resolution.js.map +0 -1
  937. package/dist/vite/virtual-entries.d.ts +0 -25
  938. package/dist/vite/virtual-entries.d.ts.map +0 -1
  939. package/dist/vite/virtual-entries.js +0 -110
  940. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,559 +0,0 @@
1
- // Polyfill Symbol.dispose for Safari and older browsers
2
- if (typeof Symbol.dispose === "undefined") {
3
- Symbol.dispose = Symbol("Symbol.dispose");
4
- }
5
- if (typeof Symbol.asyncDispose === "undefined") {
6
- Symbol.asyncDispose = Symbol("Symbol.asyncDispose");
7
- }
8
- // ============================================================================
9
- // Default States
10
- // ============================================================================
11
- const DEFAULT_ACTION_STATE = {
12
- state: "idle",
13
- actionId: null,
14
- payload: null,
15
- error: null,
16
- result: null,
17
- };
18
- /**
19
- * Check if a subscription ID matches an action's full ID.
20
- *
21
- * When subscriptionId contains '#', it's a full ID and requires exact match.
22
- * When subscriptionId has no '#', it's just an action name and matches by suffix.
23
- * This allows useAction("addToCart") to match "hash#addToCart" or "src/file.ts#addToCart".
24
- */
25
- function matchesActionId(subscriptionId, entryActionId) {
26
- if (subscriptionId.includes("#")) {
27
- // Full ID: exact match
28
- return subscriptionId === entryActionId;
29
- }
30
- // Action name only: suffix match (matches "anything#actionName")
31
- return entryActionId.endsWith(`#${subscriptionId}`);
32
- }
33
- /**
34
- * Create an event controller for managing navigation and action state
35
- *
36
- * The controller uses a reactive model where:
37
- * - Source of truth: currentNavigation, inflightActions, location
38
- * - Derived state: navState, isStreaming computed from source
39
- *
40
- * Navigation uses switchMap semantics (new nav cancels previous).
41
- * Actions use mergeMap semantics (all run concurrently, consolidate at end).
42
- */
43
- export function createEventController(config) {
44
- // ========================================================================
45
- // Source of Truth
46
- // ========================================================================
47
- // Current navigation in progress (null = idle)
48
- let currentNavigation = null;
49
- // All in-flight actions (keyed by unique instance ID)
50
- const inflightActions = new Map();
51
- // Committed location (updated when navigation completes)
52
- let location = config?.initialLocation ??
53
- (typeof window !== "undefined"
54
- ? new URL(window.location.href)
55
- : new URL("/", "http://localhost"));
56
- // Track if any concurrent actions occurred (for consolidation)
57
- let hadAnyConcurrentActions = false;
58
- // Track segments revalidated by concurrent actions
59
- const concurrentRevalidatedSegments = new Set();
60
- // Active streaming count (independent of navigation/action lifecycle)
61
- let activeStreamCount = 0;
62
- // Handle data from RSC payload
63
- let handleData = {};
64
- let handleSegmentOrder = [];
65
- // ========================================================================
66
- // Listeners
67
- // ========================================================================
68
- const stateListeners = new Set();
69
- const actionListeners = new Map();
70
- const handleListeners = new Set();
71
- // Debounce state notifications to batch rapid updates
72
- let notifyTimeout = null;
73
- function notify() {
74
- if (notifyTimeout !== null) {
75
- clearTimeout(notifyTimeout);
76
- }
77
- notifyTimeout = setTimeout(() => {
78
- notifyTimeout = null;
79
- stateListeners.forEach((listener) => listener());
80
- }, 0);
81
- }
82
- // Debounce per-action notifications
83
- const actionNotifyTimeouts = new Map();
84
- function notifyAction(actionId) {
85
- const existing = actionNotifyTimeouts.get(actionId);
86
- if (existing !== undefined) {
87
- clearTimeout(existing);
88
- }
89
- actionNotifyTimeouts.set(actionId, setTimeout(() => {
90
- actionNotifyTimeouts.delete(actionId);
91
- // Notify all listeners whose subscription ID matches this action
92
- // This includes exact matches and suffix matches (e.g., "addToCart" matches "hash#addToCart")
93
- for (const [subscriptionId, listeners] of actionListeners) {
94
- if (matchesActionId(subscriptionId, actionId)) {
95
- const state = getActionState(subscriptionId);
96
- listeners.forEach((listener) => listener(state));
97
- }
98
- }
99
- }, 0));
100
- }
101
- // Debounce handle notifications
102
- let handleNotifyTimeout = null;
103
- function notifyHandles() {
104
- if (handleNotifyTimeout !== null) {
105
- clearTimeout(handleNotifyTimeout);
106
- }
107
- handleNotifyTimeout = setTimeout(() => {
108
- handleNotifyTimeout = null;
109
- handleListeners.forEach((listener) => listener());
110
- }, 0);
111
- }
112
- // ========================================================================
113
- // Derived State
114
- // ========================================================================
115
- function getState() {
116
- // Build inflight actions list (for compatibility with existing API)
117
- const inflightActionsList = [...inflightActions.values()]
118
- .filter((a) => a.phase !== "settling")
119
- .map((a) => ({
120
- id: a.id,
121
- actionId: a.actionId,
122
- payload: a.payload,
123
- startedAt: a.startedAt,
124
- }));
125
- // State: loading if navigation OR actions are in progress
126
- // Background revalidations (skipLoadingState) don't affect visible state
127
- const hasActiveActions = inflightActionsList.length > 0;
128
- const isVisibleNavigation = currentNavigation !== null &&
129
- !currentNavigation.options?.skipLoadingState;
130
- const state = isVisibleNavigation || hasActiveActions ? "loading" : "idle";
131
- // Streaming: true if any active streams (navigation or action) or loading
132
- const isStreaming = activeStreamCount > 0 || state === "loading";
133
- return {
134
- state,
135
- isStreaming,
136
- location,
137
- // pendingUrl only during fetching phase - once streaming starts (URL changed), not pending
138
- // Background revalidations don't expose a pending URL
139
- pendingUrl: currentNavigation?.phase === "fetching" &&
140
- !currentNavigation.options?.skipLoadingState
141
- ? currentNavigation.url
142
- : null,
143
- inflightActions: inflightActionsList,
144
- };
145
- }
146
- function getActionState(actionId) {
147
- // Find the most recent action with this ID that's not settling
148
- // Uses suffix matching when actionId is just a name (no #)
149
- const activeEntry = [...inflightActions.values()]
150
- .filter((a) => matchesActionId(actionId, a.actionId) && a.phase !== "settling")
151
- .sort((a, b) => b.startedAt - a.startedAt)[0];
152
- // Also check for settling entries to get result/error
153
- const settlingEntry = [...inflightActions.values()]
154
- .filter((a) => matchesActionId(actionId, a.actionId) && a.phase === "settling")
155
- .sort((a, b) => b.startedAt - a.startedAt)[0];
156
- const entry = activeEntry || settlingEntry;
157
- if (!entry) {
158
- return { ...DEFAULT_ACTION_STATE };
159
- }
160
- // Derive state from phase
161
- let state;
162
- switch (entry.phase) {
163
- case "fetching":
164
- state = "loading";
165
- break;
166
- case "streaming":
167
- state = "streaming";
168
- break;
169
- case "settling":
170
- state = "idle";
171
- break;
172
- }
173
- return {
174
- state,
175
- actionId: entry.actionId,
176
- payload: entry.payload,
177
- error: entry.error ?? null,
178
- result: entry.result ?? null,
179
- };
180
- }
181
- // ========================================================================
182
- // Navigation Operations
183
- // ========================================================================
184
- function startNavigation(url, options) {
185
- // Cancel existing navigation (switchMap semantics)
186
- if (currentNavigation) {
187
- currentNavigation.abort.abort();
188
- currentNavigation = null;
189
- }
190
- const abort = new AbortController();
191
- const entry = {
192
- url,
193
- abort,
194
- phase: "fetching",
195
- startedAt: Date.now(),
196
- options,
197
- };
198
- currentNavigation = entry;
199
- notify();
200
- let completed = false;
201
- return {
202
- abort,
203
- signal: abort.signal,
204
- get completed() {
205
- return completed;
206
- },
207
- startStreaming() {
208
- let ended = false;
209
- activeStreamCount++;
210
- notify();
211
- return {
212
- end() {
213
- if (ended)
214
- return;
215
- ended = true;
216
- activeStreamCount = Math.max(0, activeStreamCount - 1);
217
- notify();
218
- },
219
- };
220
- },
221
- complete(newLocation) {
222
- if (currentNavigation === entry) {
223
- completed = true;
224
- location = newLocation;
225
- currentNavigation = null;
226
- notify();
227
- }
228
- },
229
- // Disposable: cleanup if not completed (e.g., error thrown)
230
- [Symbol.dispose]() {
231
- // If aborted by another navigation, don't touch state
232
- if (abort.signal.aborted)
233
- return;
234
- // If not completed, reset to idle
235
- if (!completed && currentNavigation === entry) {
236
- currentNavigation = null;
237
- notify();
238
- }
239
- },
240
- };
241
- }
242
- function abortNavigation() {
243
- if (currentNavigation) {
244
- currentNavigation.abort.abort();
245
- currentNavigation = null;
246
- notify();
247
- }
248
- }
249
- function setLocation(newLocation) {
250
- location = newLocation;
251
- notify();
252
- }
253
- // ========================================================================
254
- // Action Operations
255
- // ========================================================================
256
- function startAction(actionId, args) {
257
- const id = `${actionId}-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
258
- const abort = new AbortController();
259
- // Track if this action started while others were pending (concurrent)
260
- const hadConcurrent = inflightActions.size > 0;
261
- if (hadConcurrent) {
262
- hadAnyConcurrentActions = true;
263
- }
264
- const entry = {
265
- id,
266
- actionId,
267
- abort,
268
- phase: "fetching",
269
- payload: args,
270
- revalidatedSegments: [],
271
- startedAt: Date.now(),
272
- };
273
- inflightActions.set(id, entry);
274
- notify();
275
- notifyAction(actionId);
276
- let settled = false;
277
- let streamingEnded = false;
278
- let actionCompleted = false;
279
- let pendingResult = null;
280
- function doSettle() {
281
- if (settled)
282
- return;
283
- settled = true;
284
- // Cleanup after brief delay (allow useAction to read result)
285
- setTimeout(() => {
286
- inflightActions.delete(id);
287
- // Check for consolidation
288
- if (inflightActions.size === 0) {
289
- // All actions done - reset tracking
290
- hadAnyConcurrentActions = false;
291
- concurrentRevalidatedSegments.clear();
292
- }
293
- notify();
294
- notifyAction(actionId);
295
- }, 100);
296
- }
297
- // Called when both action is done AND streaming has ended
298
- function tryFinalize() {
299
- if (!actionCompleted || !streamingEnded)
300
- return;
301
- if (settled)
302
- return;
303
- // Apply the pending result
304
- if (pendingResult?.type === "error") {
305
- entry.error = pendingResult.value;
306
- }
307
- else if (pendingResult?.type === "success") {
308
- entry.result = pendingResult.value;
309
- }
310
- entry.phase = "settling";
311
- notify();
312
- notifyAction(actionId);
313
- doSettle();
314
- }
315
- return {
316
- id,
317
- abort,
318
- signal: abort.signal,
319
- hadConcurrentActions: hadConcurrent,
320
- get settled() {
321
- return settled;
322
- },
323
- startStreaming() {
324
- let ended = false;
325
- activeStreamCount++;
326
- entry.phase = "streaming";
327
- notify();
328
- notifyAction(actionId);
329
- return {
330
- end() {
331
- if (ended)
332
- return;
333
- ended = true;
334
- streamingEnded = true;
335
- activeStreamCount = Math.max(0, activeStreamCount - 1);
336
- notify();
337
- // Try to finalize if action was already completed
338
- tryFinalize();
339
- },
340
- };
341
- },
342
- recordRevalidatedSegments(segmentIds) {
343
- entry.revalidatedSegments.push(...segmentIds);
344
- segmentIds.forEach((id) => concurrentRevalidatedSegments.add(id));
345
- },
346
- complete(result) {
347
- if (!inflightActions.has(id) || settled)
348
- return;
349
- actionCompleted = true;
350
- entry.completed = true;
351
- pendingResult = { type: "success", value: result };
352
- // If streaming never started or already ended, finalize immediately
353
- // Otherwise wait for streaming to end
354
- if (entry.phase === "fetching" || streamingEnded) {
355
- streamingEnded = true; // Mark as ended if never started
356
- tryFinalize();
357
- }
358
- // If streaming is in progress, tryFinalize() will be called when streaming ends
359
- },
360
- fail(error) {
361
- if (!inflightActions.has(id) || settled)
362
- return;
363
- actionCompleted = true;
364
- entry.completed = true;
365
- pendingResult = { type: "error", value: error };
366
- // If streaming never started or already ended, finalize immediately
367
- // Otherwise wait for streaming to end
368
- if (entry.phase === "fetching" || streamingEnded) {
369
- streamingEnded = true; // Mark as ended if never started
370
- tryFinalize();
371
- }
372
- // If streaming is in progress, tryFinalize() will be called when streaming ends
373
- },
374
- getConsolidationSegments() {
375
- // Only consolidate if all actions have at least received their response
376
- // We don't need to wait for streaming to complete since we're refetching anyway
377
- // Count actions that are still fetching (waiting for server response)
378
- const stillFetchingCount = [...inflightActions.values()].filter((a) => a.phase === "fetching").length;
379
- if (stillFetchingCount > 0) {
380
- return null; // Some actions still waiting for server response
381
- }
382
- if (!hadAnyConcurrentActions) {
383
- return null; // No concurrent actions occurred
384
- }
385
- if (concurrentRevalidatedSegments.size === 0) {
386
- return null; // No segments to consolidate
387
- }
388
- return Array.from(concurrentRevalidatedSegments);
389
- },
390
- clearConsolidation() {
391
- concurrentRevalidatedSegments.clear();
392
- hadAnyConcurrentActions = false;
393
- },
394
- // Disposable: cleanup if not settled (e.g., error thrown without calling fail)
395
- [Symbol.dispose]() {
396
- // If aborted, another navigation/error took over - don't touch state
397
- if (abort.signal.aborted) {
398
- inflightActions.delete(id);
399
- notify();
400
- notifyAction(actionId);
401
- return;
402
- }
403
- // If action was already completed, let the streaming token handle finalization
404
- // The action is legitimately waiting for streaming to end
405
- if (actionCompleted) {
406
- return;
407
- }
408
- // If not settled and not completed, this is an error case - force finalize
409
- if (!settled && inflightActions.has(id)) {
410
- actionCompleted = true;
411
- streamingEnded = true;
412
- tryFinalize();
413
- }
414
- },
415
- };
416
- }
417
- function abortAllActions() {
418
- for (const entry of inflightActions.values()) {
419
- entry.abort.abort();
420
- }
421
- inflightActions.clear();
422
- hadAnyConcurrentActions = false;
423
- concurrentRevalidatedSegments.clear();
424
- notify();
425
- // Notify all action listeners
426
- for (const actionId of actionListeners.keys()) {
427
- notifyAction(actionId);
428
- }
429
- }
430
- // ========================================================================
431
- // Handle Operations
432
- // ========================================================================
433
- /**
434
- * Filter segment IDs to only include routes and layouts.
435
- * Excludes parallels (contain .@) and loaders (contain D followed by digit).
436
- */
437
- function filterSegmentOrder(matched) {
438
- return matched.filter((id) => {
439
- if (id.includes(".@"))
440
- return false;
441
- if (/D\d+\./.test(id))
442
- return false;
443
- return true;
444
- });
445
- }
446
- function setHandleData(data, matched, isPartial) {
447
- const newSegmentOrder = filterSegmentOrder(matched ?? []);
448
- if (isPartial && newSegmentOrder.length > 0) {
449
- // Partial update: merge new data with existing
450
- for (const handleName of Object.keys(data)) {
451
- if (!handleData[handleName]) {
452
- handleData[handleName] = {};
453
- }
454
- for (const segmentId of Object.keys(data[handleName])) {
455
- handleData[handleName][segmentId] = data[handleName][segmentId];
456
- }
457
- }
458
- // Clean up data from segments no longer in the matched list
459
- for (const handleName of Object.keys(handleData)) {
460
- for (const segmentId of Object.keys(handleData[handleName])) {
461
- if (!newSegmentOrder.includes(segmentId)) {
462
- delete handleData[handleName][segmentId];
463
- }
464
- }
465
- }
466
- }
467
- else {
468
- // Full update: replace all data
469
- handleData = data;
470
- }
471
- handleSegmentOrder = newSegmentOrder;
472
- notifyHandles();
473
- }
474
- function getHandleState() {
475
- return {
476
- data: handleData,
477
- segmentOrder: handleSegmentOrder,
478
- };
479
- }
480
- // ========================================================================
481
- // Subscriptions
482
- // ========================================================================
483
- function subscribe(listener) {
484
- stateListeners.add(listener);
485
- return () => stateListeners.delete(listener);
486
- }
487
- function subscribeToAction(actionId, listener) {
488
- let listeners = actionListeners.get(actionId);
489
- if (!listeners) {
490
- listeners = new Set();
491
- actionListeners.set(actionId, listeners);
492
- }
493
- listeners.add(listener);
494
- return () => {
495
- listeners.delete(listener);
496
- if (listeners.size === 0) {
497
- actionListeners.delete(actionId);
498
- }
499
- };
500
- }
501
- function subscribeToHandles(listener) {
502
- handleListeners.add(listener);
503
- return () => handleListeners.delete(listener);
504
- }
505
- // ========================================================================
506
- // Return Controller
507
- // ========================================================================
508
- return {
509
- // Navigation
510
- startNavigation,
511
- abortNavigation,
512
- // Actions
513
- startAction,
514
- abortAllActions,
515
- // State
516
- getState,
517
- getActionState,
518
- setLocation,
519
- // Handles
520
- setHandleData,
521
- getHandleState,
522
- // Subscriptions
523
- subscribe,
524
- subscribeToAction,
525
- subscribeToHandles,
526
- // Direct access
527
- getCurrentNavigation: () => currentNavigation,
528
- getInflightActions: () => inflightActions,
529
- };
530
- }
531
- // ============================================================================
532
- // Singleton
533
- // ============================================================================
534
- let controllerInstance = null;
535
- /**
536
- * Initialize the global event controller
537
- */
538
- export function initEventController(config) {
539
- if (!controllerInstance) {
540
- controllerInstance = createEventController(config);
541
- }
542
- return controllerInstance;
543
- }
544
- /**
545
- * Get the global event controller
546
- */
547
- export function getEventController() {
548
- if (!controllerInstance) {
549
- throw new Error("Event controller not initialized. Call initEventController first.");
550
- }
551
- return controllerInstance;
552
- }
553
- /**
554
- * Reset the controller instance (for testing)
555
- */
556
- export function resetEventController() {
557
- controllerInstance = null;
558
- }
559
- //# sourceMappingURL=event-controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-controller.js","sourceRoot":"","sources":["../../src/browser/event-controller.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export { initBrowserApp, RSCRouter, type InitBrowserAppOptions, } from "./rsc-router.js";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,cAAc,EACd,SAAS,EACT,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC"}
@@ -1,14 +0,0 @@
1
- // ============================================================================
2
- // Browser Module - Browser entry point for RSC Router
3
- // ============================================================================
4
- //
5
- // Usage:
6
- // import { initBrowserApp, RSCRouter } from "rsc-router/browser";
7
- //
8
- // For React components (Link, useNavigation, etc.):
9
- // import { Link, useNavigation, useAction, href } from "rsc-router/client";
10
- //
11
- // ============================================================================
12
- // Browser app initialization
13
- export { initBrowserApp, RSCRouter, } from "./rsc-router.js";
14
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,sDAAsD;AACtD,+EAA+E;AAC/E,EAAE;AACF,SAAS;AACT,oEAAoE;AACpE,EAAE;AACF,oDAAoD;AACpD,8EAA8E;AAC9E,EAAE;AACF,+EAA+E;AAE/E,6BAA6B;AAC7B,OAAO,EACL,cAAc,EACd,SAAS,GAEV,MAAM,iBAAiB,CAAC"}
@@ -1,38 +0,0 @@
1
- import type { LinkInterceptorOptions, NavigateOptions } from "./types.js";
2
- /**
3
- * Default link interception predicate
4
- *
5
- * Returns true if the link should be intercepted for SPA navigation.
6
- * Filters out:
7
- * - Cross-origin links
8
- * - Links with download attribute
9
- * - Links with target other than _self
10
- * - Links with data-no-intercept attribute
11
- *
12
- * @param link - The anchor element to check
13
- * @returns true if the link should be intercepted
14
- */
15
- export declare function defaultShouldIntercept(link: HTMLAnchorElement): boolean;
16
- /**
17
- * Set up link interception for SPA navigation
18
- *
19
- * Attaches a global click handler to intercept clicks on anchor elements
20
- * and call the onNavigate callback instead of performing a full page load.
21
- *
22
- * @param onNavigate - Callback when a link should navigate via SPA
23
- * @param options - Configuration options
24
- * @returns Cleanup function to remove the event listener
25
- *
26
- * @example
27
- * ```typescript
28
- * const cleanup = setupLinkInterception((url) => {
29
- * window.history.pushState({}, "", url);
30
- * fetchPartialUpdate(url);
31
- * });
32
- *
33
- * // Later, to clean up:
34
- * cleanup();
35
- * ```
36
- */
37
- export declare function setupLinkInterception(onNavigate: (url: string, options?: NavigateOptions) => void, options?: LinkInterceptorOptions): () => void;
38
- //# sourceMappingURL=link-interceptor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"link-interceptor.d.ts","sourceRoot":"","sources":["../../src/browser/link-interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE1E;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAgCvE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,IAAI,EAC5D,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,IAAI,CA+CZ"}