@rangojs/router 0.0.0-experimental.760a71d9 → 0.0.0-experimental.78

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 (932) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +716 -237
  4. package/package.json +3 -3
  5. package/skills/cache-guide/SKILL.md +32 -0
  6. package/skills/caching/SKILL.md +8 -0
  7. package/skills/handler-use/SKILL.md +362 -0
  8. package/skills/intercept/SKILL.md +20 -0
  9. package/skills/layout/SKILL.md +22 -0
  10. package/skills/links/SKILL.md +3 -1
  11. package/skills/loader/SKILL.md +53 -43
  12. package/skills/middleware/SKILL.md +34 -3
  13. package/skills/migrate-nextjs/SKILL.md +560 -0
  14. package/skills/migrate-react-router/SKILL.md +764 -0
  15. package/skills/parallel/SKILL.md +126 -0
  16. package/skills/prerender/SKILL.md +110 -68
  17. package/skills/rango/SKILL.md +24 -22
  18. package/skills/route/SKILL.md +55 -0
  19. package/skills/router-setup/SKILL.md +87 -2
  20. package/skills/typesafety/SKILL.md +10 -0
  21. package/src/__internal.ts +1 -1
  22. package/src/browser/app-version.ts +14 -0
  23. package/src/browser/navigation-bridge.ts +37 -5
  24. package/src/browser/navigation-client.ts +98 -46
  25. package/src/browser/navigation-store.ts +43 -8
  26. package/src/browser/partial-update.ts +41 -7
  27. package/src/browser/prefetch/cache.ts +16 -6
  28. package/src/browser/prefetch/fetch.ts +68 -6
  29. package/src/browser/prefetch/queue.ts +61 -29
  30. package/src/browser/prefetch/resource-ready.ts +77 -0
  31. package/src/browser/react/Link.tsx +67 -8
  32. package/src/browser/react/NavigationProvider.tsx +13 -4
  33. package/src/browser/react/context.ts +7 -2
  34. package/src/browser/react/use-handle.ts +9 -58
  35. package/src/browser/react/use-router.ts +21 -8
  36. package/src/browser/rsc-router.tsx +26 -3
  37. package/src/browser/scroll-restoration.ts +10 -8
  38. package/src/browser/segment-reconciler.ts +36 -14
  39. package/src/browser/server-action-bridge.ts +8 -6
  40. package/src/browser/types.ts +27 -5
  41. package/src/build/generate-manifest.ts +6 -6
  42. package/src/build/generate-route-types.ts +3 -0
  43. package/src/build/route-trie.ts +50 -24
  44. package/src/build/route-types/include-resolution.ts +8 -1
  45. package/src/build/route-types/router-processing.ts +211 -72
  46. package/src/build/route-types/scan-filter.ts +8 -1
  47. package/src/cache/cache-scope.ts +46 -5
  48. package/src/cache/taint.ts +55 -0
  49. package/src/client.tsx +84 -230
  50. package/src/context-var.ts +72 -2
  51. package/src/handle.ts +40 -0
  52. package/src/index.rsc.ts +3 -1
  53. package/src/index.ts +46 -6
  54. package/src/prerender/store.ts +5 -4
  55. package/src/prerender.ts +138 -77
  56. package/src/reverse.ts +25 -1
  57. package/src/route-definition/dsl-helpers.ts +194 -32
  58. package/src/route-definition/helpers-types.ts +67 -19
  59. package/src/route-definition/index.ts +3 -0
  60. package/src/route-definition/redirect.ts +9 -1
  61. package/src/route-definition/resolve-handler-use.ts +149 -0
  62. package/src/route-types.ts +11 -0
  63. package/src/router/content-negotiation.ts +100 -1
  64. package/src/router/handler-context.ts +82 -23
  65. package/src/router/intercept-resolution.ts +9 -4
  66. package/src/router/loader-resolution.ts +156 -21
  67. package/src/router/match-api.ts +124 -189
  68. package/src/router/match-middleware/background-revalidation.ts +12 -1
  69. package/src/router/match-middleware/cache-lookup.ts +40 -13
  70. package/src/router/match-middleware/cache-store.ts +21 -4
  71. package/src/router/match-middleware/segment-resolution.ts +53 -0
  72. package/src/router/match-result.ts +82 -4
  73. package/src/router/middleware-types.ts +6 -8
  74. package/src/router/middleware.ts +2 -5
  75. package/src/router/navigation-snapshot.ts +182 -0
  76. package/src/router/prerender-match.ts +110 -10
  77. package/src/router/preview-match.ts +30 -102
  78. package/src/router/request-classification.ts +310 -0
  79. package/src/router/route-snapshot.ts +245 -0
  80. package/src/router/router-context.ts +1 -0
  81. package/src/router/router-interfaces.ts +36 -4
  82. package/src/router/router-options.ts +37 -11
  83. package/src/router/segment-resolution/fresh.ts +80 -9
  84. package/src/router/segment-resolution/helpers.ts +29 -24
  85. package/src/router/segment-resolution/revalidation.ts +91 -8
  86. package/src/router/types.ts +1 -0
  87. package/src/router.ts +54 -5
  88. package/src/rsc/handler.ts +472 -372
  89. package/src/rsc/loader-fetch.ts +23 -3
  90. package/src/rsc/manifest-init.ts +5 -1
  91. package/src/rsc/progressive-enhancement.ts +14 -2
  92. package/src/rsc/rsc-rendering.ts +10 -1
  93. package/src/rsc/server-action.ts +8 -0
  94. package/src/rsc/ssr-setup.ts +2 -2
  95. package/src/rsc/types.ts +9 -1
  96. package/src/segment-content-promise.ts +67 -0
  97. package/src/segment-loader-promise.ts +122 -0
  98. package/src/segment-system.tsx +11 -61
  99. package/src/server/context.ts +50 -1
  100. package/src/server/handle-store.ts +19 -0
  101. package/src/server/loader-registry.ts +9 -8
  102. package/src/server/request-context.ts +175 -15
  103. package/src/ssr/index.tsx +3 -0
  104. package/src/static-handler.ts +18 -6
  105. package/src/types/cache-types.ts +4 -4
  106. package/src/types/handler-context.ts +37 -19
  107. package/src/types/loader-types.ts +36 -9
  108. package/src/types/route-entry.ts +1 -1
  109. package/src/types/segments.ts +1 -1
  110. package/src/urls/path-helper-types.ts +39 -6
  111. package/src/urls/path-helper.ts +47 -12
  112. package/src/urls/pattern-types.ts +12 -0
  113. package/src/urls/response-types.ts +16 -6
  114. package/src/use-loader.tsx +77 -5
  115. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  116. package/src/vite/discovery/discover-routers.ts +5 -1
  117. package/src/vite/discovery/prerender-collection.ts +128 -74
  118. package/src/vite/discovery/state.ts +13 -4
  119. package/src/vite/index.ts +4 -0
  120. package/src/vite/plugin-types.ts +60 -5
  121. package/src/vite/plugins/expose-id-utils.ts +12 -0
  122. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  123. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  124. package/src/vite/plugins/performance-tracks.ts +88 -0
  125. package/src/vite/plugins/refresh-cmd.ts +88 -26
  126. package/src/vite/rango.ts +19 -2
  127. package/src/vite/router-discovery.ts +178 -37
  128. package/src/vite/utils/prerender-utils.ts +37 -5
  129. package/src/vite/utils/shared-utils.ts +3 -2
  130. package/dist/__internal.d.ts +0 -83
  131. package/dist/__internal.d.ts.map +0 -1
  132. package/dist/__internal.js +0 -19
  133. package/dist/__internal.js.map +0 -1
  134. package/dist/__mocks__/version.d.ts +0 -7
  135. package/dist/__mocks__/version.d.ts.map +0 -1
  136. package/dist/__mocks__/version.js +0 -7
  137. package/dist/__mocks__/version.js.map +0 -1
  138. package/dist/__tests__/client-href.test.d.ts +0 -2
  139. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  140. package/dist/__tests__/client-href.test.js +0 -74
  141. package/dist/__tests__/client-href.test.js.map +0 -1
  142. package/dist/__tests__/component-utils.test.d.ts +0 -2
  143. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  144. package/dist/__tests__/component-utils.test.js +0 -51
  145. package/dist/__tests__/component-utils.test.js.map +0 -1
  146. package/dist/__tests__/event-controller.test.d.ts +0 -2
  147. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  148. package/dist/__tests__/event-controller.test.js +0 -538
  149. package/dist/__tests__/event-controller.test.js.map +0 -1
  150. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  151. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  152. package/dist/__tests__/helpers/route-tree.js +0 -374
  153. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  154. package/dist/__tests__/match-result.test.d.ts +0 -2
  155. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  156. package/dist/__tests__/match-result.test.js +0 -154
  157. package/dist/__tests__/match-result.test.js.map +0 -1
  158. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  159. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  160. package/dist/__tests__/navigation-store.test.js +0 -440
  161. package/dist/__tests__/navigation-store.test.js.map +0 -1
  162. package/dist/__tests__/partial-update.test.d.ts +0 -2
  163. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  164. package/dist/__tests__/partial-update.test.js +0 -1009
  165. package/dist/__tests__/partial-update.test.js.map +0 -1
  166. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  167. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  168. package/dist/__tests__/reverse-types.test.js +0 -656
  169. package/dist/__tests__/reverse-types.test.js.map +0 -1
  170. package/dist/__tests__/route-definition.test.d.ts +0 -2
  171. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  172. package/dist/__tests__/route-definition.test.js +0 -55
  173. package/dist/__tests__/route-definition.test.js.map +0 -1
  174. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  175. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  176. package/dist/__tests__/router-helpers.test.js +0 -377
  177. package/dist/__tests__/router-helpers.test.js.map +0 -1
  178. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  179. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  180. package/dist/__tests__/router-integration-2.test.js +0 -426
  181. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  182. package/dist/__tests__/router-integration.test.d.ts +0 -2
  183. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  184. package/dist/__tests__/router-integration.test.js +0 -1051
  185. package/dist/__tests__/router-integration.test.js.map +0 -1
  186. package/dist/__tests__/search-params.test.d.ts +0 -5
  187. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  188. package/dist/__tests__/search-params.test.js +0 -306
  189. package/dist/__tests__/search-params.test.js.map +0 -1
  190. package/dist/__tests__/segment-system.test.d.ts +0 -2
  191. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  192. package/dist/__tests__/segment-system.test.js +0 -627
  193. package/dist/__tests__/segment-system.test.js.map +0 -1
  194. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  195. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  196. package/dist/__tests__/static-handler-types.test.js +0 -63
  197. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  198. package/dist/__tests__/urls.test.d.ts +0 -2
  199. package/dist/__tests__/urls.test.d.ts.map +0 -1
  200. package/dist/__tests__/urls.test.js +0 -421
  201. package/dist/__tests__/urls.test.js.map +0 -1
  202. package/dist/__tests__/use-mount.test.d.ts +0 -2
  203. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  204. package/dist/__tests__/use-mount.test.js +0 -35
  205. package/dist/__tests__/use-mount.test.js.map +0 -1
  206. package/dist/bin/rango.d.ts +0 -2
  207. package/dist/bin/rango.d.ts.map +0 -1
  208. package/dist/bin/rango.js.map +0 -1
  209. package/dist/browser/event-controller.d.ts +0 -191
  210. package/dist/browser/event-controller.d.ts.map +0 -1
  211. package/dist/browser/event-controller.js +0 -559
  212. package/dist/browser/event-controller.js.map +0 -1
  213. package/dist/browser/index.d.ts +0 -2
  214. package/dist/browser/index.d.ts.map +0 -1
  215. package/dist/browser/index.js +0 -14
  216. package/dist/browser/index.js.map +0 -1
  217. package/dist/browser/link-interceptor.d.ts +0 -38
  218. package/dist/browser/link-interceptor.d.ts.map +0 -1
  219. package/dist/browser/link-interceptor.js +0 -99
  220. package/dist/browser/link-interceptor.js.map +0 -1
  221. package/dist/browser/logging.d.ts +0 -10
  222. package/dist/browser/logging.d.ts.map +0 -1
  223. package/dist/browser/logging.js +0 -29
  224. package/dist/browser/logging.js.map +0 -1
  225. package/dist/browser/lru-cache.d.ts +0 -17
  226. package/dist/browser/lru-cache.d.ts.map +0 -1
  227. package/dist/browser/lru-cache.js +0 -50
  228. package/dist/browser/lru-cache.js.map +0 -1
  229. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  230. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  231. package/dist/browser/merge-segment-loaders.js +0 -102
  232. package/dist/browser/merge-segment-loaders.js.map +0 -1
  233. package/dist/browser/navigation-bridge.d.ts +0 -102
  234. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  235. package/dist/browser/navigation-bridge.js +0 -708
  236. package/dist/browser/navigation-bridge.js.map +0 -1
  237. package/dist/browser/navigation-client.d.ts +0 -25
  238. package/dist/browser/navigation-client.d.ts.map +0 -1
  239. package/dist/browser/navigation-client.js +0 -157
  240. package/dist/browser/navigation-client.js.map +0 -1
  241. package/dist/browser/navigation-store.d.ts +0 -101
  242. package/dist/browser/navigation-store.d.ts.map +0 -1
  243. package/dist/browser/navigation-store.js +0 -625
  244. package/dist/browser/navigation-store.js.map +0 -1
  245. package/dist/browser/partial-update.d.ts +0 -75
  246. package/dist/browser/partial-update.d.ts.map +0 -1
  247. package/dist/browser/partial-update.js +0 -426
  248. package/dist/browser/partial-update.js.map +0 -1
  249. package/dist/browser/react/Link.d.ts +0 -86
  250. package/dist/browser/react/Link.d.ts.map +0 -1
  251. package/dist/browser/react/Link.js +0 -128
  252. package/dist/browser/react/Link.js.map +0 -1
  253. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  254. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  255. package/dist/browser/react/NavigationProvider.js +0 -216
  256. package/dist/browser/react/NavigationProvider.js.map +0 -1
  257. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  258. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  259. package/dist/browser/react/ScrollRestoration.js +0 -57
  260. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  261. package/dist/browser/react/context.d.ts +0 -46
  262. package/dist/browser/react/context.d.ts.map +0 -1
  263. package/dist/browser/react/context.js +0 -10
  264. package/dist/browser/react/context.js.map +0 -1
  265. package/dist/browser/react/index.d.ts +0 -11
  266. package/dist/browser/react/index.d.ts.map +0 -1
  267. package/dist/browser/react/index.js +0 -22
  268. package/dist/browser/react/index.js.map +0 -1
  269. package/dist/browser/react/location-state-shared.d.ts +0 -63
  270. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  271. package/dist/browser/react/location-state-shared.js +0 -81
  272. package/dist/browser/react/location-state-shared.js.map +0 -1
  273. package/dist/browser/react/location-state.d.ts +0 -23
  274. package/dist/browser/react/location-state.d.ts.map +0 -1
  275. package/dist/browser/react/location-state.js +0 -29
  276. package/dist/browser/react/location-state.js.map +0 -1
  277. package/dist/browser/react/mount-context.d.ts +0 -24
  278. package/dist/browser/react/mount-context.d.ts.map +0 -1
  279. package/dist/browser/react/mount-context.js +0 -24
  280. package/dist/browser/react/mount-context.js.map +0 -1
  281. package/dist/browser/react/use-action.d.ts +0 -64
  282. package/dist/browser/react/use-action.d.ts.map +0 -1
  283. package/dist/browser/react/use-action.js +0 -134
  284. package/dist/browser/react/use-action.js.map +0 -1
  285. package/dist/browser/react/use-client-cache.d.ts +0 -41
  286. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  287. package/dist/browser/react/use-client-cache.js +0 -39
  288. package/dist/browser/react/use-client-cache.js.map +0 -1
  289. package/dist/browser/react/use-handle.d.ts +0 -31
  290. package/dist/browser/react/use-handle.d.ts.map +0 -1
  291. package/dist/browser/react/use-handle.js +0 -144
  292. package/dist/browser/react/use-handle.js.map +0 -1
  293. package/dist/browser/react/use-href.d.ts +0 -33
  294. package/dist/browser/react/use-href.d.ts.map +0 -1
  295. package/dist/browser/react/use-href.js +0 -39
  296. package/dist/browser/react/use-href.js.map +0 -1
  297. package/dist/browser/react/use-link-status.d.ts +0 -37
  298. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  299. package/dist/browser/react/use-link-status.js +0 -99
  300. package/dist/browser/react/use-link-status.js.map +0 -1
  301. package/dist/browser/react/use-mount.d.ts +0 -25
  302. package/dist/browser/react/use-mount.d.ts.map +0 -1
  303. package/dist/browser/react/use-mount.js +0 -30
  304. package/dist/browser/react/use-mount.js.map +0 -1
  305. package/dist/browser/react/use-navigation.d.ts +0 -27
  306. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  307. package/dist/browser/react/use-navigation.js +0 -87
  308. package/dist/browser/react/use-navigation.js.map +0 -1
  309. package/dist/browser/react/use-segments.d.ts +0 -38
  310. package/dist/browser/react/use-segments.d.ts.map +0 -1
  311. package/dist/browser/react/use-segments.js +0 -130
  312. package/dist/browser/react/use-segments.js.map +0 -1
  313. package/dist/browser/request-controller.d.ts +0 -26
  314. package/dist/browser/request-controller.d.ts.map +0 -1
  315. package/dist/browser/request-controller.js +0 -147
  316. package/dist/browser/request-controller.js.map +0 -1
  317. package/dist/browser/rsc-router.d.ts +0 -129
  318. package/dist/browser/rsc-router.d.ts.map +0 -1
  319. package/dist/browser/rsc-router.js +0 -195
  320. package/dist/browser/rsc-router.js.map +0 -1
  321. package/dist/browser/scroll-restoration.d.ts +0 -93
  322. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  323. package/dist/browser/scroll-restoration.js +0 -321
  324. package/dist/browser/scroll-restoration.js.map +0 -1
  325. package/dist/browser/segment-structure-assert.d.ts +0 -17
  326. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  327. package/dist/browser/segment-structure-assert.js +0 -59
  328. package/dist/browser/segment-structure-assert.js.map +0 -1
  329. package/dist/browser/server-action-bridge.d.ts +0 -26
  330. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  331. package/dist/browser/server-action-bridge.js +0 -668
  332. package/dist/browser/server-action-bridge.js.map +0 -1
  333. package/dist/browser/shallow.d.ts +0 -12
  334. package/dist/browser/shallow.d.ts.map +0 -1
  335. package/dist/browser/shallow.js +0 -34
  336. package/dist/browser/shallow.js.map +0 -1
  337. package/dist/browser/types.d.ts +0 -369
  338. package/dist/browser/types.d.ts.map +0 -1
  339. package/dist/browser/types.js +0 -2
  340. package/dist/browser/types.js.map +0 -1
  341. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  342. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  343. package/dist/build/__tests__/generate-cli.test.js +0 -237
  344. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  345. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  346. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  347. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  348. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  349. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  350. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  351. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  352. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  353. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  354. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  355. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  356. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  357. package/dist/build/generate-manifest.d.ts +0 -81
  358. package/dist/build/generate-manifest.d.ts.map +0 -1
  359. package/dist/build/generate-manifest.js +0 -276
  360. package/dist/build/generate-manifest.js.map +0 -1
  361. package/dist/build/generate-route-types.d.ts +0 -115
  362. package/dist/build/generate-route-types.d.ts.map +0 -1
  363. package/dist/build/generate-route-types.js +0 -740
  364. package/dist/build/generate-route-types.js.map +0 -1
  365. package/dist/build/index.d.ts +0 -21
  366. package/dist/build/index.d.ts.map +0 -1
  367. package/dist/build/index.js +0 -21
  368. package/dist/build/index.js.map +0 -1
  369. package/dist/build/route-trie.d.ts +0 -71
  370. package/dist/build/route-trie.d.ts.map +0 -1
  371. package/dist/build/route-trie.js +0 -175
  372. package/dist/build/route-trie.js.map +0 -1
  373. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  374. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  375. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  376. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  377. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  378. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  379. package/dist/cache/__tests__/document-cache.test.js +0 -345
  380. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  381. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  382. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  383. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  384. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  385. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  386. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  387. package/dist/cache/__tests__/memory-store.test.js +0 -367
  388. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  389. package/dist/cache/cache-scope.d.ts +0 -102
  390. package/dist/cache/cache-scope.d.ts.map +0 -1
  391. package/dist/cache/cache-scope.js +0 -440
  392. package/dist/cache/cache-scope.js.map +0 -1
  393. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  394. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  395. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  396. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  397. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  398. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  399. package/dist/cache/cf/cf-cache-store.js +0 -242
  400. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  401. package/dist/cache/cf/index.d.ts +0 -14
  402. package/dist/cache/cf/index.d.ts.map +0 -1
  403. package/dist/cache/cf/index.js +0 -17
  404. package/dist/cache/cf/index.js.map +0 -1
  405. package/dist/cache/document-cache.d.ts +0 -64
  406. package/dist/cache/document-cache.d.ts.map +0 -1
  407. package/dist/cache/document-cache.js +0 -228
  408. package/dist/cache/document-cache.js.map +0 -1
  409. package/dist/cache/index.d.ts +0 -19
  410. package/dist/cache/index.d.ts.map +0 -1
  411. package/dist/cache/index.js +0 -21
  412. package/dist/cache/index.js.map +0 -1
  413. package/dist/cache/memory-segment-store.d.ts +0 -110
  414. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  415. package/dist/cache/memory-segment-store.js +0 -117
  416. package/dist/cache/memory-segment-store.js.map +0 -1
  417. package/dist/cache/memory-store.d.ts +0 -41
  418. package/dist/cache/memory-store.d.ts.map +0 -1
  419. package/dist/cache/memory-store.js +0 -191
  420. package/dist/cache/memory-store.js.map +0 -1
  421. package/dist/cache/types.d.ts +0 -317
  422. package/dist/cache/types.d.ts.map +0 -1
  423. package/dist/cache/types.js +0 -12
  424. package/dist/cache/types.js.map +0 -1
  425. package/dist/client.d.ts +0 -248
  426. package/dist/client.d.ts.map +0 -1
  427. package/dist/client.js +0 -367
  428. package/dist/client.js.map +0 -1
  429. package/dist/client.rsc.d.ts +0 -26
  430. package/dist/client.rsc.d.ts.map +0 -1
  431. package/dist/client.rsc.js +0 -46
  432. package/dist/client.rsc.js.map +0 -1
  433. package/dist/component-utils.d.ts +0 -36
  434. package/dist/component-utils.d.ts.map +0 -1
  435. package/dist/component-utils.js +0 -61
  436. package/dist/component-utils.js.map +0 -1
  437. package/dist/components/DefaultDocument.d.ts +0 -13
  438. package/dist/components/DefaultDocument.d.ts.map +0 -1
  439. package/dist/components/DefaultDocument.js +0 -15
  440. package/dist/components/DefaultDocument.js.map +0 -1
  441. package/dist/debug.d.ts +0 -58
  442. package/dist/debug.d.ts.map +0 -1
  443. package/dist/debug.js +0 -157
  444. package/dist/debug.js.map +0 -1
  445. package/dist/default-error-boundary.d.ts +0 -11
  446. package/dist/default-error-boundary.d.ts.map +0 -1
  447. package/dist/default-error-boundary.js +0 -45
  448. package/dist/default-error-boundary.js.map +0 -1
  449. package/dist/deps/browser.d.ts +0 -2
  450. package/dist/deps/browser.d.ts.map +0 -1
  451. package/dist/deps/browser.js +0 -3
  452. package/dist/deps/browser.js.map +0 -1
  453. package/dist/deps/html-stream-client.d.ts +0 -2
  454. package/dist/deps/html-stream-client.d.ts.map +0 -1
  455. package/dist/deps/html-stream-client.js +0 -3
  456. package/dist/deps/html-stream-client.js.map +0 -1
  457. package/dist/deps/html-stream-server.d.ts +0 -2
  458. package/dist/deps/html-stream-server.d.ts.map +0 -1
  459. package/dist/deps/html-stream-server.js +0 -3
  460. package/dist/deps/html-stream-server.js.map +0 -1
  461. package/dist/deps/rsc.d.ts +0 -2
  462. package/dist/deps/rsc.d.ts.map +0 -1
  463. package/dist/deps/rsc.js +0 -4
  464. package/dist/deps/rsc.js.map +0 -1
  465. package/dist/deps/ssr.d.ts +0 -2
  466. package/dist/deps/ssr.d.ts.map +0 -1
  467. package/dist/deps/ssr.js +0 -3
  468. package/dist/deps/ssr.js.map +0 -1
  469. package/dist/errors.d.ts +0 -174
  470. package/dist/errors.d.ts.map +0 -1
  471. package/dist/errors.js +0 -241
  472. package/dist/errors.js.map +0 -1
  473. package/dist/handle.d.ts +0 -78
  474. package/dist/handle.d.ts.map +0 -1
  475. package/dist/handle.js +0 -82
  476. package/dist/handle.js.map +0 -1
  477. package/dist/handles/MetaTags.d.ts +0 -14
  478. package/dist/handles/MetaTags.d.ts.map +0 -1
  479. package/dist/handles/MetaTags.js +0 -136
  480. package/dist/handles/MetaTags.js.map +0 -1
  481. package/dist/handles/index.d.ts +0 -6
  482. package/dist/handles/index.d.ts.map +0 -1
  483. package/dist/handles/index.js +0 -6
  484. package/dist/handles/index.js.map +0 -1
  485. package/dist/handles/meta.d.ts +0 -39
  486. package/dist/handles/meta.d.ts.map +0 -1
  487. package/dist/handles/meta.js +0 -202
  488. package/dist/handles/meta.js.map +0 -1
  489. package/dist/host/__tests__/errors.test.d.ts +0 -2
  490. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  491. package/dist/host/__tests__/errors.test.js +0 -76
  492. package/dist/host/__tests__/errors.test.js.map +0 -1
  493. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  494. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  495. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  496. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  497. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  498. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  499. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  500. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  501. package/dist/host/__tests__/router.test.d.ts +0 -2
  502. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  503. package/dist/host/__tests__/router.test.js +0 -241
  504. package/dist/host/__tests__/router.test.js.map +0 -1
  505. package/dist/host/__tests__/testing.test.d.ts +0 -2
  506. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  507. package/dist/host/__tests__/testing.test.js +0 -64
  508. package/dist/host/__tests__/testing.test.js.map +0 -1
  509. package/dist/host/__tests__/utils.test.d.ts +0 -2
  510. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  511. package/dist/host/__tests__/utils.test.js +0 -29
  512. package/dist/host/__tests__/utils.test.js.map +0 -1
  513. package/dist/host/cookie-handler.d.ts +0 -34
  514. package/dist/host/cookie-handler.d.ts.map +0 -1
  515. package/dist/host/cookie-handler.js +0 -124
  516. package/dist/host/cookie-handler.js.map +0 -1
  517. package/dist/host/errors.d.ts +0 -56
  518. package/dist/host/errors.d.ts.map +0 -1
  519. package/dist/host/errors.js +0 -79
  520. package/dist/host/errors.js.map +0 -1
  521. package/dist/host/index.d.ts +0 -29
  522. package/dist/host/index.d.ts.map +0 -1
  523. package/dist/host/index.js +0 -32
  524. package/dist/host/index.js.map +0 -1
  525. package/dist/host/pattern-matcher.d.ts +0 -36
  526. package/dist/host/pattern-matcher.d.ts.map +0 -1
  527. package/dist/host/pattern-matcher.js +0 -172
  528. package/dist/host/pattern-matcher.js.map +0 -1
  529. package/dist/host/router.d.ts +0 -26
  530. package/dist/host/router.d.ts.map +0 -1
  531. package/dist/host/router.js +0 -218
  532. package/dist/host/router.js.map +0 -1
  533. package/dist/host/testing.d.ts +0 -36
  534. package/dist/host/testing.d.ts.map +0 -1
  535. package/dist/host/testing.js +0 -55
  536. package/dist/host/testing.js.map +0 -1
  537. package/dist/host/types.d.ts +0 -115
  538. package/dist/host/types.d.ts.map +0 -1
  539. package/dist/host/types.js +0 -7
  540. package/dist/host/types.js.map +0 -1
  541. package/dist/host/utils.d.ts +0 -21
  542. package/dist/host/utils.d.ts.map +0 -1
  543. package/dist/host/utils.js +0 -23
  544. package/dist/host/utils.js.map +0 -1
  545. package/dist/href-client.d.ts +0 -131
  546. package/dist/href-client.d.ts.map +0 -1
  547. package/dist/href-client.js +0 -64
  548. package/dist/href-client.js.map +0 -1
  549. package/dist/href-context.d.ts +0 -29
  550. package/dist/href-context.d.ts.map +0 -1
  551. package/dist/href-context.js +0 -21
  552. package/dist/href-context.js.map +0 -1
  553. package/dist/index.d.ts +0 -73
  554. package/dist/index.d.ts.map +0 -1
  555. package/dist/index.js +0 -91
  556. package/dist/index.js.map +0 -1
  557. package/dist/index.rsc.d.ts +0 -32
  558. package/dist/index.rsc.d.ts.map +0 -1
  559. package/dist/index.rsc.js +0 -40
  560. package/dist/index.rsc.js.map +0 -1
  561. package/dist/internal-debug.d.ts +0 -2
  562. package/dist/internal-debug.d.ts.map +0 -1
  563. package/dist/internal-debug.js +0 -5
  564. package/dist/internal-debug.js.map +0 -1
  565. package/dist/loader.d.ts +0 -14
  566. package/dist/loader.d.ts.map +0 -1
  567. package/dist/loader.js +0 -20
  568. package/dist/loader.js.map +0 -1
  569. package/dist/loader.rsc.d.ts +0 -19
  570. package/dist/loader.rsc.d.ts.map +0 -1
  571. package/dist/loader.rsc.js +0 -99
  572. package/dist/loader.rsc.js.map +0 -1
  573. package/dist/network-error-thrower.d.ts +0 -17
  574. package/dist/network-error-thrower.d.ts.map +0 -1
  575. package/dist/network-error-thrower.js +0 -14
  576. package/dist/network-error-thrower.js.map +0 -1
  577. package/dist/outlet-context.d.ts +0 -13
  578. package/dist/outlet-context.d.ts.map +0 -1
  579. package/dist/outlet-context.js +0 -3
  580. package/dist/outlet-context.js.map +0 -1
  581. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  582. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  583. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  584. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  585. package/dist/prerender/param-hash.d.ts +0 -16
  586. package/dist/prerender/param-hash.d.ts.map +0 -1
  587. package/dist/prerender/param-hash.js +0 -36
  588. package/dist/prerender/param-hash.js.map +0 -1
  589. package/dist/prerender/store.d.ts +0 -38
  590. package/dist/prerender/store.d.ts.map +0 -1
  591. package/dist/prerender/store.js +0 -61
  592. package/dist/prerender/store.js.map +0 -1
  593. package/dist/prerender.d.ts +0 -66
  594. package/dist/prerender.d.ts.map +0 -1
  595. package/dist/prerender.js +0 -57
  596. package/dist/prerender.js.map +0 -1
  597. package/dist/reverse.d.ts +0 -196
  598. package/dist/reverse.d.ts.map +0 -1
  599. package/dist/reverse.js +0 -78
  600. package/dist/reverse.js.map +0 -1
  601. package/dist/root-error-boundary.d.ts +0 -33
  602. package/dist/root-error-boundary.d.ts.map +0 -1
  603. package/dist/root-error-boundary.js +0 -165
  604. package/dist/root-error-boundary.js.map +0 -1
  605. package/dist/route-content-wrapper.d.ts +0 -46
  606. package/dist/route-content-wrapper.d.ts.map +0 -1
  607. package/dist/route-content-wrapper.js +0 -77
  608. package/dist/route-content-wrapper.js.map +0 -1
  609. package/dist/route-definition.d.ts +0 -421
  610. package/dist/route-definition.d.ts.map +0 -1
  611. package/dist/route-definition.js +0 -868
  612. package/dist/route-definition.js.map +0 -1
  613. package/dist/route-map-builder.d.ts +0 -155
  614. package/dist/route-map-builder.d.ts.map +0 -1
  615. package/dist/route-map-builder.js +0 -237
  616. package/dist/route-map-builder.js.map +0 -1
  617. package/dist/route-types.d.ts +0 -165
  618. package/dist/route-types.d.ts.map +0 -1
  619. package/dist/route-types.js +0 -7
  620. package/dist/route-types.js.map +0 -1
  621. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  622. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  623. package/dist/router/__tests__/handler-context.test.js +0 -65
  624. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  625. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  626. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  627. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  628. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  629. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  630. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  631. package/dist/router/__tests__/match-context.test.js +0 -92
  632. package/dist/router/__tests__/match-context.test.js.map +0 -1
  633. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  634. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  635. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  636. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  637. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  638. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  639. package/dist/router/__tests__/match-result.test.js +0 -457
  640. package/dist/router/__tests__/match-result.test.js.map +0 -1
  641. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  642. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  643. package/dist/router/__tests__/on-error.test.js +0 -678
  644. package/dist/router/__tests__/on-error.test.js.map +0 -1
  645. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  646. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  647. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  648. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  649. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  650. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  651. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  652. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  653. package/dist/router/error-handling.d.ts +0 -77
  654. package/dist/router/error-handling.d.ts.map +0 -1
  655. package/dist/router/error-handling.js +0 -202
  656. package/dist/router/error-handling.js.map +0 -1
  657. package/dist/router/handler-context.d.ts +0 -20
  658. package/dist/router/handler-context.d.ts.map +0 -1
  659. package/dist/router/handler-context.js +0 -198
  660. package/dist/router/handler-context.js.map +0 -1
  661. package/dist/router/intercept-resolution.d.ts +0 -66
  662. package/dist/router/intercept-resolution.d.ts.map +0 -1
  663. package/dist/router/intercept-resolution.js +0 -246
  664. package/dist/router/intercept-resolution.js.map +0 -1
  665. package/dist/router/loader-resolution.d.ts +0 -64
  666. package/dist/router/loader-resolution.d.ts.map +0 -1
  667. package/dist/router/loader-resolution.js +0 -284
  668. package/dist/router/loader-resolution.js.map +0 -1
  669. package/dist/router/logging.d.ts +0 -15
  670. package/dist/router/logging.d.ts.map +0 -1
  671. package/dist/router/logging.js +0 -99
  672. package/dist/router/logging.js.map +0 -1
  673. package/dist/router/manifest.d.ts +0 -22
  674. package/dist/router/manifest.d.ts.map +0 -1
  675. package/dist/router/manifest.js +0 -181
  676. package/dist/router/manifest.js.map +0 -1
  677. package/dist/router/match-api.d.ts +0 -35
  678. package/dist/router/match-api.d.ts.map +0 -1
  679. package/dist/router/match-api.js +0 -406
  680. package/dist/router/match-api.js.map +0 -1
  681. package/dist/router/match-context.d.ts +0 -206
  682. package/dist/router/match-context.d.ts.map +0 -1
  683. package/dist/router/match-context.js +0 -17
  684. package/dist/router/match-context.js.map +0 -1
  685. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  686. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  687. package/dist/router/match-middleware/background-revalidation.js +0 -75
  688. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  689. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  690. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  691. package/dist/router/match-middleware/cache-lookup.js +0 -257
  692. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  693. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  694. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  695. package/dist/router/match-middleware/cache-store.js +0 -108
  696. package/dist/router/match-middleware/cache-store.js.map +0 -1
  697. package/dist/router/match-middleware/index.d.ts +0 -81
  698. package/dist/router/match-middleware/index.d.ts.map +0 -1
  699. package/dist/router/match-middleware/index.js +0 -80
  700. package/dist/router/match-middleware/index.js.map +0 -1
  701. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  702. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  703. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  704. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  705. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  706. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  707. package/dist/router/match-middleware/segment-resolution.js +0 -53
  708. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  709. package/dist/router/match-pipelines.d.ts +0 -147
  710. package/dist/router/match-pipelines.d.ts.map +0 -1
  711. package/dist/router/match-pipelines.js +0 -82
  712. package/dist/router/match-pipelines.js.map +0 -1
  713. package/dist/router/match-result.d.ts +0 -126
  714. package/dist/router/match-result.d.ts.map +0 -1
  715. package/dist/router/match-result.js +0 -93
  716. package/dist/router/match-result.js.map +0 -1
  717. package/dist/router/metrics.d.ts +0 -20
  718. package/dist/router/metrics.d.ts.map +0 -1
  719. package/dist/router/metrics.js +0 -47
  720. package/dist/router/metrics.js.map +0 -1
  721. package/dist/router/middleware.d.ts +0 -249
  722. package/dist/router/middleware.d.ts.map +0 -1
  723. package/dist/router/middleware.js +0 -434
  724. package/dist/router/middleware.js.map +0 -1
  725. package/dist/router/middleware.test.d.ts +0 -2
  726. package/dist/router/middleware.test.d.ts.map +0 -1
  727. package/dist/router/middleware.test.js +0 -816
  728. package/dist/router/middleware.test.js.map +0 -1
  729. package/dist/router/pattern-matching.d.ts +0 -149
  730. package/dist/router/pattern-matching.d.ts.map +0 -1
  731. package/dist/router/pattern-matching.js +0 -349
  732. package/dist/router/pattern-matching.js.map +0 -1
  733. package/dist/router/revalidation.d.ts +0 -44
  734. package/dist/router/revalidation.d.ts.map +0 -1
  735. package/dist/router/revalidation.js +0 -147
  736. package/dist/router/revalidation.js.map +0 -1
  737. package/dist/router/router-context.d.ts +0 -135
  738. package/dist/router/router-context.d.ts.map +0 -1
  739. package/dist/router/router-context.js +0 -36
  740. package/dist/router/router-context.js.map +0 -1
  741. package/dist/router/segment-resolution.d.ts +0 -127
  742. package/dist/router/segment-resolution.d.ts.map +0 -1
  743. package/dist/router/segment-resolution.js +0 -919
  744. package/dist/router/segment-resolution.js.map +0 -1
  745. package/dist/router/trie-matching.d.ts +0 -40
  746. package/dist/router/trie-matching.d.ts.map +0 -1
  747. package/dist/router/trie-matching.js +0 -127
  748. package/dist/router/trie-matching.js.map +0 -1
  749. package/dist/router/types.d.ts +0 -136
  750. package/dist/router/types.d.ts.map +0 -1
  751. package/dist/router/types.js +0 -7
  752. package/dist/router/types.js.map +0 -1
  753. package/dist/router.d.ts +0 -753
  754. package/dist/router.d.ts.map +0 -1
  755. package/dist/router.gen.d.ts +0 -6
  756. package/dist/router.gen.d.ts.map +0 -1
  757. package/dist/router.gen.js +0 -6
  758. package/dist/router.gen.js.map +0 -1
  759. package/dist/router.js +0 -1304
  760. package/dist/router.js.map +0 -1
  761. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  762. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  763. package/dist/rsc/__tests__/helpers.test.js +0 -140
  764. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  765. package/dist/rsc/handler.d.ts +0 -45
  766. package/dist/rsc/handler.d.ts.map +0 -1
  767. package/dist/rsc/handler.js +0 -1172
  768. package/dist/rsc/handler.js.map +0 -1
  769. package/dist/rsc/helpers.d.ts +0 -16
  770. package/dist/rsc/helpers.d.ts.map +0 -1
  771. package/dist/rsc/helpers.js +0 -55
  772. package/dist/rsc/helpers.js.map +0 -1
  773. package/dist/rsc/index.d.ts +0 -22
  774. package/dist/rsc/index.d.ts.map +0 -1
  775. package/dist/rsc/index.js +0 -23
  776. package/dist/rsc/index.js.map +0 -1
  777. package/dist/rsc/nonce.d.ts +0 -9
  778. package/dist/rsc/nonce.d.ts.map +0 -1
  779. package/dist/rsc/nonce.js +0 -18
  780. package/dist/rsc/nonce.js.map +0 -1
  781. package/dist/rsc/types.d.ts +0 -206
  782. package/dist/rsc/types.d.ts.map +0 -1
  783. package/dist/rsc/types.js +0 -8
  784. package/dist/rsc/types.js.map +0 -1
  785. package/dist/search-params.d.ts +0 -103
  786. package/dist/search-params.d.ts.map +0 -1
  787. package/dist/search-params.js +0 -74
  788. package/dist/search-params.js.map +0 -1
  789. package/dist/segment-system.d.ts +0 -75
  790. package/dist/segment-system.d.ts.map +0 -1
  791. package/dist/segment-system.js +0 -336
  792. package/dist/segment-system.js.map +0 -1
  793. package/dist/server/context.d.ts +0 -245
  794. package/dist/server/context.d.ts.map +0 -1
  795. package/dist/server/context.js +0 -197
  796. package/dist/server/context.js.map +0 -1
  797. package/dist/server/fetchable-loader-store.d.ts +0 -18
  798. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  799. package/dist/server/fetchable-loader-store.js +0 -18
  800. package/dist/server/fetchable-loader-store.js.map +0 -1
  801. package/dist/server/handle-store.d.ts +0 -85
  802. package/dist/server/handle-store.d.ts.map +0 -1
  803. package/dist/server/handle-store.js +0 -142
  804. package/dist/server/handle-store.js.map +0 -1
  805. package/dist/server/loader-registry.d.ts +0 -55
  806. package/dist/server/loader-registry.d.ts.map +0 -1
  807. package/dist/server/loader-registry.js +0 -132
  808. package/dist/server/loader-registry.js.map +0 -1
  809. package/dist/server/request-context.d.ts +0 -226
  810. package/dist/server/request-context.d.ts.map +0 -1
  811. package/dist/server/request-context.js +0 -290
  812. package/dist/server/request-context.js.map +0 -1
  813. package/dist/server/root-layout.d.ts +0 -4
  814. package/dist/server/root-layout.d.ts.map +0 -1
  815. package/dist/server/root-layout.js +0 -5
  816. package/dist/server/root-layout.js.map +0 -1
  817. package/dist/server.d.ts +0 -15
  818. package/dist/server.d.ts.map +0 -1
  819. package/dist/server.js +0 -20
  820. package/dist/server.js.map +0 -1
  821. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  822. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  823. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  824. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  825. package/dist/ssr/index.d.ts +0 -98
  826. package/dist/ssr/index.d.ts.map +0 -1
  827. package/dist/ssr/index.js +0 -158
  828. package/dist/ssr/index.js.map +0 -1
  829. package/dist/static-handler.d.ts +0 -50
  830. package/dist/static-handler.d.ts.map +0 -1
  831. package/dist/static-handler.gen.d.ts +0 -5
  832. package/dist/static-handler.gen.d.ts.map +0 -1
  833. package/dist/static-handler.gen.js +0 -5
  834. package/dist/static-handler.gen.js.map +0 -1
  835. package/dist/static-handler.js +0 -29
  836. package/dist/static-handler.js.map +0 -1
  837. package/dist/theme/ThemeProvider.d.ts +0 -20
  838. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  839. package/dist/theme/ThemeProvider.js +0 -240
  840. package/dist/theme/ThemeProvider.js.map +0 -1
  841. package/dist/theme/ThemeScript.d.ts +0 -48
  842. package/dist/theme/ThemeScript.d.ts.map +0 -1
  843. package/dist/theme/ThemeScript.js +0 -13
  844. package/dist/theme/ThemeScript.js.map +0 -1
  845. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  846. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  847. package/dist/theme/__tests__/theme.test.js +0 -103
  848. package/dist/theme/__tests__/theme.test.js.map +0 -1
  849. package/dist/theme/constants.d.ts +0 -29
  850. package/dist/theme/constants.d.ts.map +0 -1
  851. package/dist/theme/constants.js +0 -48
  852. package/dist/theme/constants.js.map +0 -1
  853. package/dist/theme/index.d.ts +0 -31
  854. package/dist/theme/index.d.ts.map +0 -1
  855. package/dist/theme/index.js +0 -36
  856. package/dist/theme/index.js.map +0 -1
  857. package/dist/theme/theme-context.d.ts +0 -40
  858. package/dist/theme/theme-context.d.ts.map +0 -1
  859. package/dist/theme/theme-context.js +0 -60
  860. package/dist/theme/theme-context.js.map +0 -1
  861. package/dist/theme/theme-script.d.ts +0 -27
  862. package/dist/theme/theme-script.d.ts.map +0 -1
  863. package/dist/theme/theme-script.js +0 -147
  864. package/dist/theme/theme-script.js.map +0 -1
  865. package/dist/theme/types.d.ts +0 -163
  866. package/dist/theme/types.d.ts.map +0 -1
  867. package/dist/theme/types.js +0 -11
  868. package/dist/theme/types.js.map +0 -1
  869. package/dist/theme/use-theme.d.ts +0 -12
  870. package/dist/theme/use-theme.d.ts.map +0 -1
  871. package/dist/theme/use-theme.js +0 -40
  872. package/dist/theme/use-theme.js.map +0 -1
  873. package/dist/types.d.ts +0 -1479
  874. package/dist/types.d.ts.map +0 -1
  875. package/dist/types.js +0 -10
  876. package/dist/types.js.map +0 -1
  877. package/dist/urls.d.ts +0 -441
  878. package/dist/urls.d.ts.map +0 -1
  879. package/dist/urls.gen.d.ts +0 -8
  880. package/dist/urls.gen.d.ts.map +0 -1
  881. package/dist/urls.gen.js +0 -8
  882. package/dist/urls.gen.js.map +0 -1
  883. package/dist/urls.js +0 -443
  884. package/dist/urls.js.map +0 -1
  885. package/dist/use-loader.d.ts +0 -127
  886. package/dist/use-loader.d.ts.map +0 -1
  887. package/dist/use-loader.js +0 -237
  888. package/dist/use-loader.js.map +0 -1
  889. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  890. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  891. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  892. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  893. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  894. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  895. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  896. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  897. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  898. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  899. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  900. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  901. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  902. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  903. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  904. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  905. package/dist/vite/ast-handler-extract.d.ts +0 -49
  906. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  907. package/dist/vite/ast-handler-extract.js +0 -249
  908. package/dist/vite/ast-handler-extract.js.map +0 -1
  909. package/dist/vite/expose-action-id.d.ts +0 -19
  910. package/dist/vite/expose-action-id.d.ts.map +0 -1
  911. package/dist/vite/expose-action-id.js +0 -250
  912. package/dist/vite/expose-action-id.js.map +0 -1
  913. package/dist/vite/expose-id-utils.d.ts +0 -69
  914. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  915. package/dist/vite/expose-id-utils.js +0 -289
  916. package/dist/vite/expose-id-utils.js.map +0 -1
  917. package/dist/vite/expose-internal-ids.d.ts +0 -22
  918. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  919. package/dist/vite/expose-internal-ids.js +0 -886
  920. package/dist/vite/expose-internal-ids.js.map +0 -1
  921. package/dist/vite/index.d.ts +0 -149
  922. package/dist/vite/index.d.ts.map +0 -1
  923. package/dist/vite/index.js.map +0 -1
  924. package/dist/vite/index.named-routes.gen.ts +0 -103
  925. package/dist/vite/package-resolution.d.ts +0 -43
  926. package/dist/vite/package-resolution.d.ts.map +0 -1
  927. package/dist/vite/package-resolution.js +0 -112
  928. package/dist/vite/package-resolution.js.map +0 -1
  929. package/dist/vite/virtual-entries.d.ts +0 -25
  930. package/dist/vite/virtual-entries.d.ts.map +0 -1
  931. package/dist/vite/virtual-entries.js +0 -110
  932. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,65 +0,0 @@
1
- import { describe, it, expect, vi } from "vitest";
2
- // Mock dependencies before importing the module under test
3
- vi.mock("../../server/request-context.js", () => ({
4
- getRequestContext: () => undefined,
5
- }));
6
- vi.mock("../../route-map-builder.js", () => ({
7
- getSearchSchema: () => undefined,
8
- }));
9
- import { createHandlerContext } from "../handler-context";
10
- /**
11
- * Helper to build a minimal HandlerContext for testing search param behavior.
12
- * Only the searchParams/url fields are relevant; other arguments use defaults.
13
- */
14
- function buildContext(searchParams) {
15
- const url = new URL("http://localhost/test");
16
- url.search = searchParams.toString();
17
- return createHandlerContext({}, // params
18
- new Request(url.href), searchParams, "/test", url);
19
- }
20
- describe("createHandlerContext", () => {
21
- describe("search param cleaning", () => {
22
- it("should preserve multi-valued query params", () => {
23
- const params = new URLSearchParams("tag=a&tag=b&tag=c");
24
- const ctx = buildContext(params);
25
- const result = ctx.searchParams;
26
- expect(result.getAll("tag")).toEqual(["a", "b", "c"]);
27
- });
28
- it("should strip _rsc-prefixed system params", () => {
29
- const params = new URLSearchParams("q=hello&_rscAction=nav&_rscKey=abc");
30
- const ctx = buildContext(params);
31
- const result = ctx.searchParams;
32
- expect(result.get("q")).toBe("hello");
33
- expect(result.has("_rscAction")).toBe(false);
34
- expect(result.has("_rscKey")).toBe(false);
35
- });
36
- it("should strip _rsc params while preserving multi-valued user params", () => {
37
- const params = new URLSearchParams("color=red&color=blue&_rscKey=x&size=L");
38
- const ctx = buildContext(params);
39
- const result = ctx.searchParams;
40
- expect(result.getAll("color")).toEqual(["red", "blue"]);
41
- expect(result.get("size")).toBe("L");
42
- expect(result.has("_rscKey")).toBe(false);
43
- });
44
- it("should produce empty searchParams when all params are system params", () => {
45
- const params = new URLSearchParams("_rscA=1&_rscB=2");
46
- const ctx = buildContext(params);
47
- const result = ctx.searchParams;
48
- expect([...result.entries()]).toEqual([]);
49
- });
50
- it("should pass through params unchanged when no system params exist", () => {
51
- const params = new URLSearchParams("page=2&sort=name");
52
- const ctx = buildContext(params);
53
- const result = ctx.searchParams;
54
- expect(result.get("page")).toBe("2");
55
- expect(result.get("sort")).toBe("name");
56
- });
57
- it("should reflect cleaned params in the context url", () => {
58
- const params = new URLSearchParams("q=test&_rscKey=abc");
59
- const ctx = buildContext(params);
60
- expect(ctx.url.searchParams.get("q")).toBe("test");
61
- expect(ctx.url.searchParams.has("_rscKey")).toBe(false);
62
- });
63
- });
64
- });
65
- //# sourceMappingURL=handler-context.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handler-context.test.js","sourceRoot":"","sources":["../../../src/router/__tests__/handler-context.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=loader-cycle-detection.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader-cycle-detection.test.d.ts","sourceRoot":"","sources":["../../../src/router/__tests__/loader-cycle-detection.test.ts"],"names":[],"mappings":""}
@@ -1,221 +0,0 @@
1
- import { describe, it, expect, vi } from "vitest";
2
- // Mock dependencies before importing the module under test
3
- vi.mock("../../server/context", () => ({
4
- track: () => () => { },
5
- }));
6
- vi.mock("../../server/request-context.js", () => ({
7
- getRequestContext: () => undefined,
8
- }));
9
- vi.mock("../../server/fetchable-loader-store.js", () => ({
10
- getFetchableLoader: () => undefined,
11
- }));
12
- vi.mock("../../handle.js", () => ({
13
- isHandle: () => false,
14
- }));
15
- import { setupLoaderAccess, setupLoaderAccessSilent, } from "../loader-resolution";
16
- /**
17
- * Create a minimal mock HandlerContext for testing loader resolution.
18
- */
19
- function createMockContext() {
20
- const url = new URL("http://localhost/test");
21
- return {
22
- params: {},
23
- request: new Request(url.href),
24
- searchParams: new URLSearchParams(),
25
- pathname: "/test",
26
- url,
27
- env: {},
28
- var: {},
29
- get: () => undefined,
30
- set: () => { },
31
- header: () => { },
32
- status: () => { },
33
- html: () => new Response(""),
34
- json: () => new Response(""),
35
- text: () => new Response(""),
36
- redirect: () => new Response(""),
37
- notFound: () => {
38
- throw new Error("not implemented");
39
- },
40
- use: vi.fn(),
41
- };
42
- }
43
- /**
44
- * Create a mock LoaderDefinition with a given ID and function.
45
- */
46
- function createLoader(id, fn) {
47
- return {
48
- __brand: "loader",
49
- $$id: id,
50
- fn,
51
- };
52
- }
53
- describe("loader cycle detection", () => {
54
- describe("setupLoaderAccess", () => {
55
- it("should detect direct circular dependency (A -> B -> A)", async () => {
56
- const ctx = createMockContext();
57
- const loaderPromises = new Map();
58
- // loaderB depends on loaderA, loaderA depends on loaderB
59
- const loaderA = createLoader("loaderA", async (loaderCtx) => {
60
- const b = await loaderCtx.use(loaderB);
61
- return { a: true, b };
62
- });
63
- const loaderB = createLoader("loaderB", async (loaderCtx) => {
64
- const a = await loaderCtx.use(loaderA);
65
- return { b: true, a };
66
- });
67
- setupLoaderAccess(ctx, loaderPromises);
68
- // Start both loaders - the cycle should be detected and cause rejection
69
- const resultA = ctx.use(loaderA);
70
- const resultB = ctx.use(loaderB);
71
- // At least one of the promises should reject with a cycle error
72
- const results = await Promise.allSettled([resultA, resultB]);
73
- const rejections = results.filter((r) => r.status === "rejected");
74
- expect(rejections.length).toBeGreaterThanOrEqual(1);
75
- const error = rejections[0].reason;
76
- expect(error.message).toContain("Circular loader dependency detected");
77
- expect(error.message).toContain("loaderA");
78
- expect(error.message).toContain("loaderB");
79
- });
80
- it("should detect three-way circular dependency (A -> B -> C -> A)", async () => {
81
- const ctx = createMockContext();
82
- const loaderPromises = new Map();
83
- const loaderA = createLoader("loaderA", async (loaderCtx) => {
84
- return await loaderCtx.use(loaderB);
85
- });
86
- const loaderB = createLoader("loaderB", async (loaderCtx) => {
87
- return await loaderCtx.use(loaderC);
88
- });
89
- const loaderC = createLoader("loaderC", async (loaderCtx) => {
90
- return await loaderCtx.use(loaderA);
91
- });
92
- setupLoaderAccess(ctx, loaderPromises);
93
- const resultA = ctx.use(loaderA);
94
- const results = await Promise.allSettled([resultA]);
95
- const rejection = results[0];
96
- expect(rejection.status).toBe("rejected");
97
- expect(rejection.reason.message).toContain("Circular loader dependency detected");
98
- // The cycle chain should include all three loaders
99
- expect(rejection.reason.message).toContain("loaderA");
100
- expect(rejection.reason.message).toContain("loaderB");
101
- expect(rejection.reason.message).toContain("loaderC");
102
- });
103
- it("should allow diamond dependencies without false positives", async () => {
104
- const ctx = createMockContext();
105
- const loaderPromises = new Map();
106
- // Diamond: A -> B, A -> C, B -> D, C -> D
107
- // D is shared but no cycle exists
108
- const loaderD = createLoader("loaderD", async () => {
109
- return "D-data";
110
- });
111
- const loaderB = createLoader("loaderB", async (loaderCtx) => {
112
- const d = await loaderCtx.use(loaderD);
113
- return { b: true, d };
114
- });
115
- const loaderC = createLoader("loaderC", async (loaderCtx) => {
116
- const d = await loaderCtx.use(loaderD);
117
- return { c: true, d };
118
- });
119
- const loaderA = createLoader("loaderA", async (loaderCtx) => {
120
- const [b, c] = await Promise.all([
121
- loaderCtx.use(loaderB),
122
- loaderCtx.use(loaderC),
123
- ]);
124
- return { a: true, b, c };
125
- });
126
- setupLoaderAccess(ctx, loaderPromises);
127
- const result = await ctx.use(loaderA);
128
- expect(result).toEqual({
129
- a: true,
130
- b: { b: true, d: "D-data" },
131
- c: { c: true, d: "D-data" },
132
- });
133
- });
134
- it("should allow linear dependencies (A -> B -> C)", async () => {
135
- const ctx = createMockContext();
136
- const loaderPromises = new Map();
137
- const loaderC = createLoader("loaderC", async () => {
138
- return "C-data";
139
- });
140
- const loaderB = createLoader("loaderB", async (loaderCtx) => {
141
- const c = await loaderCtx.use(loaderC);
142
- return { b: true, c };
143
- });
144
- const loaderA = createLoader("loaderA", async (loaderCtx) => {
145
- const b = await loaderCtx.use(loaderB);
146
- return { a: true, b };
147
- });
148
- setupLoaderAccess(ctx, loaderPromises);
149
- const result = await ctx.use(loaderA);
150
- expect(result).toEqual({
151
- a: true,
152
- b: { b: true, c: "C-data" },
153
- });
154
- });
155
- it("should still memoize loaders (same loader called twice returns same promise)", async () => {
156
- const ctx = createMockContext();
157
- const loaderPromises = new Map();
158
- let callCount = 0;
159
- const loader = createLoader("memoized", async () => {
160
- callCount++;
161
- return "data";
162
- });
163
- setupLoaderAccess(ctx, loaderPromises);
164
- const p1 = ctx.use(loader);
165
- const p2 = ctx.use(loader);
166
- // Same promise reference
167
- expect(p1).toBe(p2);
168
- const result = await p1;
169
- expect(result).toBe("data");
170
- expect(callCount).toBe(1);
171
- });
172
- it("should include the full cycle path in the error message", async () => {
173
- const ctx = createMockContext();
174
- const loaderPromises = new Map();
175
- const loaderA = createLoader("auth", async (loaderCtx) => {
176
- return await loaderCtx.use(loaderB);
177
- });
178
- const loaderB = createLoader("user", async (loaderCtx) => {
179
- return await loaderCtx.use(loaderA);
180
- });
181
- setupLoaderAccess(ctx, loaderPromises);
182
- const result = await Promise.allSettled([ctx.use(loaderA)]);
183
- const rejection = result[0];
184
- expect(rejection.status).toBe("rejected");
185
- // Should show the cycle chain: auth -> user -> auth
186
- expect(rejection.reason.message).toMatch(/Circular loader dependency detected: .+ -> .+ -> .+/);
187
- });
188
- });
189
- describe("setupLoaderAccessSilent", () => {
190
- it("should detect circular dependency in silent mode", async () => {
191
- const ctx = createMockContext();
192
- const loaderPromises = new Map();
193
- const loaderA = createLoader("silentA", async (loaderCtx) => {
194
- return await loaderCtx.use(loaderB);
195
- });
196
- const loaderB = createLoader("silentB", async (loaderCtx) => {
197
- return await loaderCtx.use(loaderA);
198
- });
199
- setupLoaderAccessSilent(ctx, loaderPromises);
200
- const results = await Promise.allSettled([ctx.use(loaderA)]);
201
- const rejection = results[0];
202
- expect(rejection.status).toBe("rejected");
203
- expect(rejection.reason.message).toContain("Circular loader dependency detected");
204
- expect(rejection.reason.message).toContain("silentA");
205
- expect(rejection.reason.message).toContain("silentB");
206
- });
207
- it("should allow valid dependencies in silent mode", async () => {
208
- const ctx = createMockContext();
209
- const loaderPromises = new Map();
210
- const loaderB = createLoader("silentB", async () => "B-data");
211
- const loaderA = createLoader("silentA", async (loaderCtx) => {
212
- const b = await loaderCtx.use(loaderB);
213
- return { a: true, b };
214
- });
215
- setupLoaderAccessSilent(ctx, loaderPromises);
216
- const result = await ctx.use(loaderA);
217
- expect(result).toEqual({ a: true, b: "B-data" });
218
- });
219
- });
220
- });
221
- //# sourceMappingURL=loader-cycle-detection.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader-cycle-detection.test.js","sourceRoot":"","sources":["../../../src/router/__tests__/loader-cycle-detection.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=match-context.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"match-context.test.d.ts","sourceRoot":"","sources":["../../../src/router/__tests__/match-context.test.ts"],"names":[],"mappings":""}
@@ -1,92 +0,0 @@
1
- import { describe, it, expect } from "vitest";
2
- import { createPipelineState } from "../match-context";
3
- describe("match-context", () => {
4
- describe("createPipelineState()", () => {
5
- it("should create initial state with default values", () => {
6
- const state = createPipelineState();
7
- expect(state.cacheHit).toBe(false);
8
- expect(state.segments).toEqual([]);
9
- expect(state.matchedIds).toEqual([]);
10
- expect(state.interceptSegments).toEqual([]);
11
- expect(state.slots).toEqual({});
12
- });
13
- it("should create state without cached data by default", () => {
14
- const state = createPipelineState();
15
- expect(state.cachedSegments).toBeUndefined();
16
- expect(state.cachedMatchedIds).toBeUndefined();
17
- expect(state.shouldRevalidate).toBeUndefined();
18
- });
19
- it("should allow mutation of state properties", () => {
20
- const state = createPipelineState();
21
- state.cacheHit = true;
22
- state.segments.push({
23
- id: "seg1",
24
- namespace: "seg1",
25
- type: "route",
26
- index: 0,
27
- component: null,
28
- params: {},
29
- });
30
- state.matchedIds.push("seg1");
31
- state.slots["@modal"] = { active: true, segments: [] };
32
- expect(state.cacheHit).toBe(true);
33
- expect(state.segments).toHaveLength(1);
34
- expect(state.matchedIds).toContain("seg1");
35
- expect(state.slots["@modal"]).toBeDefined();
36
- });
37
- it("should create independent state instances", () => {
38
- const state1 = createPipelineState();
39
- const state2 = createPipelineState();
40
- state1.cacheHit = true;
41
- state1.segments.push({
42
- id: "seg1",
43
- namespace: "seg1",
44
- type: "route",
45
- index: 0,
46
- component: null,
47
- params: {},
48
- });
49
- expect(state2.cacheHit).toBe(false);
50
- expect(state2.segments).toHaveLength(0);
51
- });
52
- it("should support setting cache-related properties", () => {
53
- const state = createPipelineState();
54
- state.cacheHit = true;
55
- state.shouldRevalidate = true;
56
- state.cachedSegments = [
57
- { id: "cached1", namespace: "cached1", type: "route", index: 0, component: "CachedComponent", params: {} },
58
- ];
59
- state.cachedMatchedIds = ["cached1"];
60
- expect(state.cacheHit).toBe(true);
61
- expect(state.shouldRevalidate).toBe(true);
62
- expect(state.cachedSegments).toHaveLength(1);
63
- expect(state.cachedMatchedIds).toContain("cached1");
64
- });
65
- it("should support intercept segments", () => {
66
- const state = createPipelineState();
67
- state.interceptSegments.push({
68
- id: "modal-seg",
69
- namespace: "modal-seg",
70
- type: "route",
71
- index: 0,
72
- component: "ModalComponent",
73
- params: {},
74
- });
75
- expect(state.interceptSegments).toHaveLength(1);
76
- expect(state.interceptSegments[0].id).toBe("modal-seg");
77
- });
78
- it("should support slots with nested segments", () => {
79
- const state = createPipelineState();
80
- state.slots["@modal"] = {
81
- active: true,
82
- segments: [
83
- { id: "modal1", namespace: "modal1", type: "route", index: 0, component: "Modal1", params: {} },
84
- { id: "modal2", namespace: "modal2", type: "route", index: 0, component: "Modal2", params: {} },
85
- ],
86
- };
87
- expect(state.slots["@modal"].active).toBe(true);
88
- expect(state.slots["@modal"].segments).toHaveLength(2);
89
- });
90
- });
91
- });
92
- //# sourceMappingURL=match-context.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"match-context.test.js","sourceRoot":"","sources":["../../../src/router/__tests__/match-context.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=match-pipelines.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"match-pipelines.test.d.ts","sourceRoot":"","sources":["../../../src/router/__tests__/match-pipelines.test.ts"],"names":[],"mappings":""}