@rangojs/router 0.0.0-experimental.22 → 0.0.0-experimental.23

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 (814) hide show
  1. package/dist/vite/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/router/loader-resolution.ts +1 -1
  4. package/src/router/metrics.ts +90 -10
  5. package/src/router/middleware-types.ts +12 -0
  6. package/src/router/middleware.ts +55 -9
  7. package/src/router/segment-resolution/fresh.ts +18 -0
  8. package/src/router/segment-resolution/revalidation.ts +21 -6
  9. package/src/router.ts +6 -2
  10. package/src/server/context.ts +8 -2
  11. package/src/server/request-context.ts +5 -1
  12. package/dist/__internal.d.ts +0 -83
  13. package/dist/__internal.d.ts.map +0 -1
  14. package/dist/__internal.js +0 -19
  15. package/dist/__internal.js.map +0 -1
  16. package/dist/__mocks__/version.d.ts +0 -7
  17. package/dist/__mocks__/version.d.ts.map +0 -1
  18. package/dist/__mocks__/version.js +0 -7
  19. package/dist/__mocks__/version.js.map +0 -1
  20. package/dist/__tests__/client-href.test.d.ts +0 -2
  21. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  22. package/dist/__tests__/client-href.test.js +0 -74
  23. package/dist/__tests__/client-href.test.js.map +0 -1
  24. package/dist/__tests__/component-utils.test.d.ts +0 -2
  25. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  26. package/dist/__tests__/component-utils.test.js +0 -51
  27. package/dist/__tests__/component-utils.test.js.map +0 -1
  28. package/dist/__tests__/event-controller.test.d.ts +0 -2
  29. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  30. package/dist/__tests__/event-controller.test.js +0 -538
  31. package/dist/__tests__/event-controller.test.js.map +0 -1
  32. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  33. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  34. package/dist/__tests__/helpers/route-tree.js +0 -374
  35. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  36. package/dist/__tests__/match-result.test.d.ts +0 -2
  37. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  38. package/dist/__tests__/match-result.test.js +0 -154
  39. package/dist/__tests__/match-result.test.js.map +0 -1
  40. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  41. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  42. package/dist/__tests__/navigation-store.test.js +0 -440
  43. package/dist/__tests__/navigation-store.test.js.map +0 -1
  44. package/dist/__tests__/partial-update.test.d.ts +0 -2
  45. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  46. package/dist/__tests__/partial-update.test.js +0 -1009
  47. package/dist/__tests__/partial-update.test.js.map +0 -1
  48. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  49. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  50. package/dist/__tests__/reverse-types.test.js +0 -656
  51. package/dist/__tests__/reverse-types.test.js.map +0 -1
  52. package/dist/__tests__/route-definition.test.d.ts +0 -2
  53. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  54. package/dist/__tests__/route-definition.test.js +0 -55
  55. package/dist/__tests__/route-definition.test.js.map +0 -1
  56. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  57. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  58. package/dist/__tests__/router-helpers.test.js +0 -377
  59. package/dist/__tests__/router-helpers.test.js.map +0 -1
  60. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  61. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  62. package/dist/__tests__/router-integration-2.test.js +0 -426
  63. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  64. package/dist/__tests__/router-integration.test.d.ts +0 -2
  65. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  66. package/dist/__tests__/router-integration.test.js +0 -1051
  67. package/dist/__tests__/router-integration.test.js.map +0 -1
  68. package/dist/__tests__/search-params.test.d.ts +0 -5
  69. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  70. package/dist/__tests__/search-params.test.js +0 -306
  71. package/dist/__tests__/search-params.test.js.map +0 -1
  72. package/dist/__tests__/segment-system.test.d.ts +0 -2
  73. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  74. package/dist/__tests__/segment-system.test.js +0 -627
  75. package/dist/__tests__/segment-system.test.js.map +0 -1
  76. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  77. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  78. package/dist/__tests__/static-handler-types.test.js +0 -63
  79. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  80. package/dist/__tests__/urls.test.d.ts +0 -2
  81. package/dist/__tests__/urls.test.d.ts.map +0 -1
  82. package/dist/__tests__/urls.test.js +0 -421
  83. package/dist/__tests__/urls.test.js.map +0 -1
  84. package/dist/__tests__/use-mount.test.d.ts +0 -2
  85. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  86. package/dist/__tests__/use-mount.test.js +0 -35
  87. package/dist/__tests__/use-mount.test.js.map +0 -1
  88. package/dist/bin/rango.d.ts +0 -2
  89. package/dist/bin/rango.d.ts.map +0 -1
  90. package/dist/bin/rango.js.map +0 -1
  91. package/dist/browser/event-controller.d.ts +0 -191
  92. package/dist/browser/event-controller.d.ts.map +0 -1
  93. package/dist/browser/event-controller.js +0 -559
  94. package/dist/browser/event-controller.js.map +0 -1
  95. package/dist/browser/index.d.ts +0 -2
  96. package/dist/browser/index.d.ts.map +0 -1
  97. package/dist/browser/index.js +0 -14
  98. package/dist/browser/index.js.map +0 -1
  99. package/dist/browser/link-interceptor.d.ts +0 -38
  100. package/dist/browser/link-interceptor.d.ts.map +0 -1
  101. package/dist/browser/link-interceptor.js +0 -99
  102. package/dist/browser/link-interceptor.js.map +0 -1
  103. package/dist/browser/logging.d.ts +0 -10
  104. package/dist/browser/logging.d.ts.map +0 -1
  105. package/dist/browser/logging.js +0 -29
  106. package/dist/browser/logging.js.map +0 -1
  107. package/dist/browser/lru-cache.d.ts +0 -17
  108. package/dist/browser/lru-cache.d.ts.map +0 -1
  109. package/dist/browser/lru-cache.js +0 -50
  110. package/dist/browser/lru-cache.js.map +0 -1
  111. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  112. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  113. package/dist/browser/merge-segment-loaders.js +0 -102
  114. package/dist/browser/merge-segment-loaders.js.map +0 -1
  115. package/dist/browser/navigation-bridge.d.ts +0 -102
  116. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  117. package/dist/browser/navigation-bridge.js +0 -708
  118. package/dist/browser/navigation-bridge.js.map +0 -1
  119. package/dist/browser/navigation-client.d.ts +0 -25
  120. package/dist/browser/navigation-client.d.ts.map +0 -1
  121. package/dist/browser/navigation-client.js +0 -157
  122. package/dist/browser/navigation-client.js.map +0 -1
  123. package/dist/browser/navigation-store.d.ts +0 -101
  124. package/dist/browser/navigation-store.d.ts.map +0 -1
  125. package/dist/browser/navigation-store.js +0 -625
  126. package/dist/browser/navigation-store.js.map +0 -1
  127. package/dist/browser/partial-update.d.ts +0 -75
  128. package/dist/browser/partial-update.d.ts.map +0 -1
  129. package/dist/browser/partial-update.js +0 -426
  130. package/dist/browser/partial-update.js.map +0 -1
  131. package/dist/browser/react/Link.d.ts +0 -86
  132. package/dist/browser/react/Link.d.ts.map +0 -1
  133. package/dist/browser/react/Link.js +0 -128
  134. package/dist/browser/react/Link.js.map +0 -1
  135. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  136. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  137. package/dist/browser/react/NavigationProvider.js +0 -216
  138. package/dist/browser/react/NavigationProvider.js.map +0 -1
  139. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  140. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  141. package/dist/browser/react/ScrollRestoration.js +0 -57
  142. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  143. package/dist/browser/react/context.d.ts +0 -46
  144. package/dist/browser/react/context.d.ts.map +0 -1
  145. package/dist/browser/react/context.js +0 -10
  146. package/dist/browser/react/context.js.map +0 -1
  147. package/dist/browser/react/index.d.ts +0 -11
  148. package/dist/browser/react/index.d.ts.map +0 -1
  149. package/dist/browser/react/index.js +0 -22
  150. package/dist/browser/react/index.js.map +0 -1
  151. package/dist/browser/react/location-state-shared.d.ts +0 -63
  152. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  153. package/dist/browser/react/location-state-shared.js +0 -81
  154. package/dist/browser/react/location-state-shared.js.map +0 -1
  155. package/dist/browser/react/location-state.d.ts +0 -23
  156. package/dist/browser/react/location-state.d.ts.map +0 -1
  157. package/dist/browser/react/location-state.js +0 -29
  158. package/dist/browser/react/location-state.js.map +0 -1
  159. package/dist/browser/react/mount-context.d.ts +0 -24
  160. package/dist/browser/react/mount-context.d.ts.map +0 -1
  161. package/dist/browser/react/mount-context.js +0 -24
  162. package/dist/browser/react/mount-context.js.map +0 -1
  163. package/dist/browser/react/use-action.d.ts +0 -64
  164. package/dist/browser/react/use-action.d.ts.map +0 -1
  165. package/dist/browser/react/use-action.js +0 -134
  166. package/dist/browser/react/use-action.js.map +0 -1
  167. package/dist/browser/react/use-client-cache.d.ts +0 -41
  168. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  169. package/dist/browser/react/use-client-cache.js +0 -39
  170. package/dist/browser/react/use-client-cache.js.map +0 -1
  171. package/dist/browser/react/use-handle.d.ts +0 -31
  172. package/dist/browser/react/use-handle.d.ts.map +0 -1
  173. package/dist/browser/react/use-handle.js +0 -144
  174. package/dist/browser/react/use-handle.js.map +0 -1
  175. package/dist/browser/react/use-href.d.ts +0 -33
  176. package/dist/browser/react/use-href.d.ts.map +0 -1
  177. package/dist/browser/react/use-href.js +0 -39
  178. package/dist/browser/react/use-href.js.map +0 -1
  179. package/dist/browser/react/use-link-status.d.ts +0 -37
  180. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  181. package/dist/browser/react/use-link-status.js +0 -99
  182. package/dist/browser/react/use-link-status.js.map +0 -1
  183. package/dist/browser/react/use-mount.d.ts +0 -25
  184. package/dist/browser/react/use-mount.d.ts.map +0 -1
  185. package/dist/browser/react/use-mount.js +0 -30
  186. package/dist/browser/react/use-mount.js.map +0 -1
  187. package/dist/browser/react/use-navigation.d.ts +0 -27
  188. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  189. package/dist/browser/react/use-navigation.js +0 -87
  190. package/dist/browser/react/use-navigation.js.map +0 -1
  191. package/dist/browser/react/use-segments.d.ts +0 -38
  192. package/dist/browser/react/use-segments.d.ts.map +0 -1
  193. package/dist/browser/react/use-segments.js +0 -130
  194. package/dist/browser/react/use-segments.js.map +0 -1
  195. package/dist/browser/request-controller.d.ts +0 -26
  196. package/dist/browser/request-controller.d.ts.map +0 -1
  197. package/dist/browser/request-controller.js +0 -147
  198. package/dist/browser/request-controller.js.map +0 -1
  199. package/dist/browser/rsc-router.d.ts +0 -129
  200. package/dist/browser/rsc-router.d.ts.map +0 -1
  201. package/dist/browser/rsc-router.js +0 -195
  202. package/dist/browser/rsc-router.js.map +0 -1
  203. package/dist/browser/scroll-restoration.d.ts +0 -93
  204. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  205. package/dist/browser/scroll-restoration.js +0 -321
  206. package/dist/browser/scroll-restoration.js.map +0 -1
  207. package/dist/browser/segment-structure-assert.d.ts +0 -17
  208. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  209. package/dist/browser/segment-structure-assert.js +0 -59
  210. package/dist/browser/segment-structure-assert.js.map +0 -1
  211. package/dist/browser/server-action-bridge.d.ts +0 -26
  212. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  213. package/dist/browser/server-action-bridge.js +0 -668
  214. package/dist/browser/server-action-bridge.js.map +0 -1
  215. package/dist/browser/shallow.d.ts +0 -12
  216. package/dist/browser/shallow.d.ts.map +0 -1
  217. package/dist/browser/shallow.js +0 -34
  218. package/dist/browser/shallow.js.map +0 -1
  219. package/dist/browser/types.d.ts +0 -369
  220. package/dist/browser/types.d.ts.map +0 -1
  221. package/dist/browser/types.js +0 -2
  222. package/dist/browser/types.js.map +0 -1
  223. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  224. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  225. package/dist/build/__tests__/generate-cli.test.js +0 -237
  226. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  227. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  228. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  229. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  230. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  231. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  232. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  233. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  234. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  235. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  236. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  237. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  238. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  239. package/dist/build/generate-manifest.d.ts +0 -81
  240. package/dist/build/generate-manifest.d.ts.map +0 -1
  241. package/dist/build/generate-manifest.js +0 -276
  242. package/dist/build/generate-manifest.js.map +0 -1
  243. package/dist/build/generate-route-types.d.ts +0 -115
  244. package/dist/build/generate-route-types.d.ts.map +0 -1
  245. package/dist/build/generate-route-types.js +0 -740
  246. package/dist/build/generate-route-types.js.map +0 -1
  247. package/dist/build/index.d.ts +0 -21
  248. package/dist/build/index.d.ts.map +0 -1
  249. package/dist/build/index.js +0 -21
  250. package/dist/build/index.js.map +0 -1
  251. package/dist/build/route-trie.d.ts +0 -71
  252. package/dist/build/route-trie.d.ts.map +0 -1
  253. package/dist/build/route-trie.js +0 -175
  254. package/dist/build/route-trie.js.map +0 -1
  255. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  256. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  257. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  258. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  259. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  260. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  261. package/dist/cache/__tests__/document-cache.test.js +0 -345
  262. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  263. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  264. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  265. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  266. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  267. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  268. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  269. package/dist/cache/__tests__/memory-store.test.js +0 -367
  270. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  271. package/dist/cache/cache-scope.d.ts +0 -102
  272. package/dist/cache/cache-scope.d.ts.map +0 -1
  273. package/dist/cache/cache-scope.js +0 -440
  274. package/dist/cache/cache-scope.js.map +0 -1
  275. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  276. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  277. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  278. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  279. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  280. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  281. package/dist/cache/cf/cf-cache-store.js +0 -242
  282. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  283. package/dist/cache/cf/index.d.ts +0 -14
  284. package/dist/cache/cf/index.d.ts.map +0 -1
  285. package/dist/cache/cf/index.js +0 -17
  286. package/dist/cache/cf/index.js.map +0 -1
  287. package/dist/cache/document-cache.d.ts +0 -64
  288. package/dist/cache/document-cache.d.ts.map +0 -1
  289. package/dist/cache/document-cache.js +0 -228
  290. package/dist/cache/document-cache.js.map +0 -1
  291. package/dist/cache/index.d.ts +0 -19
  292. package/dist/cache/index.d.ts.map +0 -1
  293. package/dist/cache/index.js +0 -21
  294. package/dist/cache/index.js.map +0 -1
  295. package/dist/cache/memory-segment-store.d.ts +0 -110
  296. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  297. package/dist/cache/memory-segment-store.js +0 -117
  298. package/dist/cache/memory-segment-store.js.map +0 -1
  299. package/dist/cache/memory-store.d.ts +0 -41
  300. package/dist/cache/memory-store.d.ts.map +0 -1
  301. package/dist/cache/memory-store.js +0 -191
  302. package/dist/cache/memory-store.js.map +0 -1
  303. package/dist/cache/types.d.ts +0 -317
  304. package/dist/cache/types.d.ts.map +0 -1
  305. package/dist/cache/types.js +0 -12
  306. package/dist/cache/types.js.map +0 -1
  307. package/dist/client.d.ts +0 -248
  308. package/dist/client.d.ts.map +0 -1
  309. package/dist/client.js +0 -367
  310. package/dist/client.js.map +0 -1
  311. package/dist/client.rsc.d.ts +0 -26
  312. package/dist/client.rsc.d.ts.map +0 -1
  313. package/dist/client.rsc.js +0 -46
  314. package/dist/client.rsc.js.map +0 -1
  315. package/dist/component-utils.d.ts +0 -36
  316. package/dist/component-utils.d.ts.map +0 -1
  317. package/dist/component-utils.js +0 -61
  318. package/dist/component-utils.js.map +0 -1
  319. package/dist/components/DefaultDocument.d.ts +0 -13
  320. package/dist/components/DefaultDocument.d.ts.map +0 -1
  321. package/dist/components/DefaultDocument.js +0 -15
  322. package/dist/components/DefaultDocument.js.map +0 -1
  323. package/dist/debug.d.ts +0 -58
  324. package/dist/debug.d.ts.map +0 -1
  325. package/dist/debug.js +0 -157
  326. package/dist/debug.js.map +0 -1
  327. package/dist/default-error-boundary.d.ts +0 -11
  328. package/dist/default-error-boundary.d.ts.map +0 -1
  329. package/dist/default-error-boundary.js +0 -45
  330. package/dist/default-error-boundary.js.map +0 -1
  331. package/dist/deps/browser.d.ts +0 -2
  332. package/dist/deps/browser.d.ts.map +0 -1
  333. package/dist/deps/browser.js +0 -3
  334. package/dist/deps/browser.js.map +0 -1
  335. package/dist/deps/html-stream-client.d.ts +0 -2
  336. package/dist/deps/html-stream-client.d.ts.map +0 -1
  337. package/dist/deps/html-stream-client.js +0 -3
  338. package/dist/deps/html-stream-client.js.map +0 -1
  339. package/dist/deps/html-stream-server.d.ts +0 -2
  340. package/dist/deps/html-stream-server.d.ts.map +0 -1
  341. package/dist/deps/html-stream-server.js +0 -3
  342. package/dist/deps/html-stream-server.js.map +0 -1
  343. package/dist/deps/rsc.d.ts +0 -2
  344. package/dist/deps/rsc.d.ts.map +0 -1
  345. package/dist/deps/rsc.js +0 -4
  346. package/dist/deps/rsc.js.map +0 -1
  347. package/dist/deps/ssr.d.ts +0 -2
  348. package/dist/deps/ssr.d.ts.map +0 -1
  349. package/dist/deps/ssr.js +0 -3
  350. package/dist/deps/ssr.js.map +0 -1
  351. package/dist/errors.d.ts +0 -174
  352. package/dist/errors.d.ts.map +0 -1
  353. package/dist/errors.js +0 -241
  354. package/dist/errors.js.map +0 -1
  355. package/dist/handle.d.ts +0 -78
  356. package/dist/handle.d.ts.map +0 -1
  357. package/dist/handle.js +0 -82
  358. package/dist/handle.js.map +0 -1
  359. package/dist/handles/MetaTags.d.ts +0 -14
  360. package/dist/handles/MetaTags.d.ts.map +0 -1
  361. package/dist/handles/MetaTags.js +0 -136
  362. package/dist/handles/MetaTags.js.map +0 -1
  363. package/dist/handles/index.d.ts +0 -6
  364. package/dist/handles/index.d.ts.map +0 -1
  365. package/dist/handles/index.js +0 -6
  366. package/dist/handles/index.js.map +0 -1
  367. package/dist/handles/meta.d.ts +0 -39
  368. package/dist/handles/meta.d.ts.map +0 -1
  369. package/dist/handles/meta.js +0 -202
  370. package/dist/handles/meta.js.map +0 -1
  371. package/dist/host/__tests__/errors.test.d.ts +0 -2
  372. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  373. package/dist/host/__tests__/errors.test.js +0 -76
  374. package/dist/host/__tests__/errors.test.js.map +0 -1
  375. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  376. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  377. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  378. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  379. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  380. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  381. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  382. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  383. package/dist/host/__tests__/router.test.d.ts +0 -2
  384. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  385. package/dist/host/__tests__/router.test.js +0 -241
  386. package/dist/host/__tests__/router.test.js.map +0 -1
  387. package/dist/host/__tests__/testing.test.d.ts +0 -2
  388. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  389. package/dist/host/__tests__/testing.test.js +0 -64
  390. package/dist/host/__tests__/testing.test.js.map +0 -1
  391. package/dist/host/__tests__/utils.test.d.ts +0 -2
  392. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  393. package/dist/host/__tests__/utils.test.js +0 -29
  394. package/dist/host/__tests__/utils.test.js.map +0 -1
  395. package/dist/host/cookie-handler.d.ts +0 -34
  396. package/dist/host/cookie-handler.d.ts.map +0 -1
  397. package/dist/host/cookie-handler.js +0 -124
  398. package/dist/host/cookie-handler.js.map +0 -1
  399. package/dist/host/errors.d.ts +0 -56
  400. package/dist/host/errors.d.ts.map +0 -1
  401. package/dist/host/errors.js +0 -79
  402. package/dist/host/errors.js.map +0 -1
  403. package/dist/host/index.d.ts +0 -29
  404. package/dist/host/index.d.ts.map +0 -1
  405. package/dist/host/index.js +0 -32
  406. package/dist/host/index.js.map +0 -1
  407. package/dist/host/pattern-matcher.d.ts +0 -36
  408. package/dist/host/pattern-matcher.d.ts.map +0 -1
  409. package/dist/host/pattern-matcher.js +0 -172
  410. package/dist/host/pattern-matcher.js.map +0 -1
  411. package/dist/host/router.d.ts +0 -26
  412. package/dist/host/router.d.ts.map +0 -1
  413. package/dist/host/router.js +0 -218
  414. package/dist/host/router.js.map +0 -1
  415. package/dist/host/testing.d.ts +0 -36
  416. package/dist/host/testing.d.ts.map +0 -1
  417. package/dist/host/testing.js +0 -55
  418. package/dist/host/testing.js.map +0 -1
  419. package/dist/host/types.d.ts +0 -115
  420. package/dist/host/types.d.ts.map +0 -1
  421. package/dist/host/types.js +0 -7
  422. package/dist/host/types.js.map +0 -1
  423. package/dist/host/utils.d.ts +0 -21
  424. package/dist/host/utils.d.ts.map +0 -1
  425. package/dist/host/utils.js +0 -23
  426. package/dist/host/utils.js.map +0 -1
  427. package/dist/href-client.d.ts +0 -131
  428. package/dist/href-client.d.ts.map +0 -1
  429. package/dist/href-client.js +0 -64
  430. package/dist/href-client.js.map +0 -1
  431. package/dist/href-context.d.ts +0 -29
  432. package/dist/href-context.d.ts.map +0 -1
  433. package/dist/href-context.js +0 -21
  434. package/dist/href-context.js.map +0 -1
  435. package/dist/index.d.ts +0 -73
  436. package/dist/index.d.ts.map +0 -1
  437. package/dist/index.js +0 -91
  438. package/dist/index.js.map +0 -1
  439. package/dist/index.rsc.d.ts +0 -32
  440. package/dist/index.rsc.d.ts.map +0 -1
  441. package/dist/index.rsc.js +0 -40
  442. package/dist/index.rsc.js.map +0 -1
  443. package/dist/internal-debug.d.ts +0 -2
  444. package/dist/internal-debug.d.ts.map +0 -1
  445. package/dist/internal-debug.js +0 -5
  446. package/dist/internal-debug.js.map +0 -1
  447. package/dist/loader.d.ts +0 -14
  448. package/dist/loader.d.ts.map +0 -1
  449. package/dist/loader.js +0 -20
  450. package/dist/loader.js.map +0 -1
  451. package/dist/loader.rsc.d.ts +0 -19
  452. package/dist/loader.rsc.d.ts.map +0 -1
  453. package/dist/loader.rsc.js +0 -99
  454. package/dist/loader.rsc.js.map +0 -1
  455. package/dist/network-error-thrower.d.ts +0 -17
  456. package/dist/network-error-thrower.d.ts.map +0 -1
  457. package/dist/network-error-thrower.js +0 -14
  458. package/dist/network-error-thrower.js.map +0 -1
  459. package/dist/outlet-context.d.ts +0 -13
  460. package/dist/outlet-context.d.ts.map +0 -1
  461. package/dist/outlet-context.js +0 -3
  462. package/dist/outlet-context.js.map +0 -1
  463. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  464. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  465. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  466. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  467. package/dist/prerender/param-hash.d.ts +0 -16
  468. package/dist/prerender/param-hash.d.ts.map +0 -1
  469. package/dist/prerender/param-hash.js +0 -36
  470. package/dist/prerender/param-hash.js.map +0 -1
  471. package/dist/prerender/store.d.ts +0 -38
  472. package/dist/prerender/store.d.ts.map +0 -1
  473. package/dist/prerender/store.js +0 -61
  474. package/dist/prerender/store.js.map +0 -1
  475. package/dist/prerender.d.ts +0 -66
  476. package/dist/prerender.d.ts.map +0 -1
  477. package/dist/prerender.js +0 -57
  478. package/dist/prerender.js.map +0 -1
  479. package/dist/reverse.d.ts +0 -196
  480. package/dist/reverse.d.ts.map +0 -1
  481. package/dist/reverse.js +0 -78
  482. package/dist/reverse.js.map +0 -1
  483. package/dist/root-error-boundary.d.ts +0 -33
  484. package/dist/root-error-boundary.d.ts.map +0 -1
  485. package/dist/root-error-boundary.js +0 -165
  486. package/dist/root-error-boundary.js.map +0 -1
  487. package/dist/route-content-wrapper.d.ts +0 -46
  488. package/dist/route-content-wrapper.d.ts.map +0 -1
  489. package/dist/route-content-wrapper.js +0 -77
  490. package/dist/route-content-wrapper.js.map +0 -1
  491. package/dist/route-definition.d.ts +0 -421
  492. package/dist/route-definition.d.ts.map +0 -1
  493. package/dist/route-definition.js +0 -868
  494. package/dist/route-definition.js.map +0 -1
  495. package/dist/route-map-builder.d.ts +0 -155
  496. package/dist/route-map-builder.d.ts.map +0 -1
  497. package/dist/route-map-builder.js +0 -237
  498. package/dist/route-map-builder.js.map +0 -1
  499. package/dist/route-types.d.ts +0 -165
  500. package/dist/route-types.d.ts.map +0 -1
  501. package/dist/route-types.js +0 -7
  502. package/dist/route-types.js.map +0 -1
  503. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  504. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  505. package/dist/router/__tests__/handler-context.test.js +0 -65
  506. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  507. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  508. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  509. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  510. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  511. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  512. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  513. package/dist/router/__tests__/match-context.test.js +0 -92
  514. package/dist/router/__tests__/match-context.test.js.map +0 -1
  515. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  516. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  517. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  518. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  519. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  520. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  521. package/dist/router/__tests__/match-result.test.js +0 -457
  522. package/dist/router/__tests__/match-result.test.js.map +0 -1
  523. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  524. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  525. package/dist/router/__tests__/on-error.test.js +0 -678
  526. package/dist/router/__tests__/on-error.test.js.map +0 -1
  527. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  528. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  529. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  530. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  531. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  532. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  533. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  534. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  535. package/dist/router/error-handling.d.ts +0 -77
  536. package/dist/router/error-handling.d.ts.map +0 -1
  537. package/dist/router/error-handling.js +0 -202
  538. package/dist/router/error-handling.js.map +0 -1
  539. package/dist/router/handler-context.d.ts +0 -20
  540. package/dist/router/handler-context.d.ts.map +0 -1
  541. package/dist/router/handler-context.js +0 -198
  542. package/dist/router/handler-context.js.map +0 -1
  543. package/dist/router/intercept-resolution.d.ts +0 -66
  544. package/dist/router/intercept-resolution.d.ts.map +0 -1
  545. package/dist/router/intercept-resolution.js +0 -246
  546. package/dist/router/intercept-resolution.js.map +0 -1
  547. package/dist/router/loader-resolution.d.ts +0 -64
  548. package/dist/router/loader-resolution.d.ts.map +0 -1
  549. package/dist/router/loader-resolution.js +0 -284
  550. package/dist/router/loader-resolution.js.map +0 -1
  551. package/dist/router/logging.d.ts +0 -15
  552. package/dist/router/logging.d.ts.map +0 -1
  553. package/dist/router/logging.js +0 -99
  554. package/dist/router/logging.js.map +0 -1
  555. package/dist/router/manifest.d.ts +0 -22
  556. package/dist/router/manifest.d.ts.map +0 -1
  557. package/dist/router/manifest.js +0 -181
  558. package/dist/router/manifest.js.map +0 -1
  559. package/dist/router/match-api.d.ts +0 -35
  560. package/dist/router/match-api.d.ts.map +0 -1
  561. package/dist/router/match-api.js +0 -406
  562. package/dist/router/match-api.js.map +0 -1
  563. package/dist/router/match-context.d.ts +0 -206
  564. package/dist/router/match-context.d.ts.map +0 -1
  565. package/dist/router/match-context.js +0 -17
  566. package/dist/router/match-context.js.map +0 -1
  567. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  568. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  569. package/dist/router/match-middleware/background-revalidation.js +0 -75
  570. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  571. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  572. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  573. package/dist/router/match-middleware/cache-lookup.js +0 -257
  574. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  575. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  576. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  577. package/dist/router/match-middleware/cache-store.js +0 -108
  578. package/dist/router/match-middleware/cache-store.js.map +0 -1
  579. package/dist/router/match-middleware/index.d.ts +0 -81
  580. package/dist/router/match-middleware/index.d.ts.map +0 -1
  581. package/dist/router/match-middleware/index.js +0 -80
  582. package/dist/router/match-middleware/index.js.map +0 -1
  583. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  584. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  585. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  586. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  587. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  588. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  589. package/dist/router/match-middleware/segment-resolution.js +0 -53
  590. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  591. package/dist/router/match-pipelines.d.ts +0 -147
  592. package/dist/router/match-pipelines.d.ts.map +0 -1
  593. package/dist/router/match-pipelines.js +0 -82
  594. package/dist/router/match-pipelines.js.map +0 -1
  595. package/dist/router/match-result.d.ts +0 -126
  596. package/dist/router/match-result.d.ts.map +0 -1
  597. package/dist/router/match-result.js +0 -93
  598. package/dist/router/match-result.js.map +0 -1
  599. package/dist/router/metrics.d.ts +0 -20
  600. package/dist/router/metrics.d.ts.map +0 -1
  601. package/dist/router/metrics.js +0 -47
  602. package/dist/router/metrics.js.map +0 -1
  603. package/dist/router/middleware.d.ts +0 -249
  604. package/dist/router/middleware.d.ts.map +0 -1
  605. package/dist/router/middleware.js +0 -434
  606. package/dist/router/middleware.js.map +0 -1
  607. package/dist/router/middleware.test.d.ts +0 -2
  608. package/dist/router/middleware.test.d.ts.map +0 -1
  609. package/dist/router/middleware.test.js +0 -816
  610. package/dist/router/middleware.test.js.map +0 -1
  611. package/dist/router/pattern-matching.d.ts +0 -149
  612. package/dist/router/pattern-matching.d.ts.map +0 -1
  613. package/dist/router/pattern-matching.js +0 -349
  614. package/dist/router/pattern-matching.js.map +0 -1
  615. package/dist/router/revalidation.d.ts +0 -44
  616. package/dist/router/revalidation.d.ts.map +0 -1
  617. package/dist/router/revalidation.js +0 -147
  618. package/dist/router/revalidation.js.map +0 -1
  619. package/dist/router/router-context.d.ts +0 -135
  620. package/dist/router/router-context.d.ts.map +0 -1
  621. package/dist/router/router-context.js +0 -36
  622. package/dist/router/router-context.js.map +0 -1
  623. package/dist/router/segment-resolution.d.ts +0 -127
  624. package/dist/router/segment-resolution.d.ts.map +0 -1
  625. package/dist/router/segment-resolution.js +0 -919
  626. package/dist/router/segment-resolution.js.map +0 -1
  627. package/dist/router/trie-matching.d.ts +0 -40
  628. package/dist/router/trie-matching.d.ts.map +0 -1
  629. package/dist/router/trie-matching.js +0 -127
  630. package/dist/router/trie-matching.js.map +0 -1
  631. package/dist/router/types.d.ts +0 -136
  632. package/dist/router/types.d.ts.map +0 -1
  633. package/dist/router/types.js +0 -7
  634. package/dist/router/types.js.map +0 -1
  635. package/dist/router.d.ts +0 -753
  636. package/dist/router.d.ts.map +0 -1
  637. package/dist/router.gen.d.ts +0 -6
  638. package/dist/router.gen.d.ts.map +0 -1
  639. package/dist/router.gen.js +0 -6
  640. package/dist/router.gen.js.map +0 -1
  641. package/dist/router.js +0 -1304
  642. package/dist/router.js.map +0 -1
  643. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  644. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  645. package/dist/rsc/__tests__/helpers.test.js +0 -140
  646. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  647. package/dist/rsc/handler.d.ts +0 -45
  648. package/dist/rsc/handler.d.ts.map +0 -1
  649. package/dist/rsc/handler.js +0 -1172
  650. package/dist/rsc/handler.js.map +0 -1
  651. package/dist/rsc/helpers.d.ts +0 -16
  652. package/dist/rsc/helpers.d.ts.map +0 -1
  653. package/dist/rsc/helpers.js +0 -55
  654. package/dist/rsc/helpers.js.map +0 -1
  655. package/dist/rsc/index.d.ts +0 -22
  656. package/dist/rsc/index.d.ts.map +0 -1
  657. package/dist/rsc/index.js +0 -23
  658. package/dist/rsc/index.js.map +0 -1
  659. package/dist/rsc/nonce.d.ts +0 -9
  660. package/dist/rsc/nonce.d.ts.map +0 -1
  661. package/dist/rsc/nonce.js +0 -18
  662. package/dist/rsc/nonce.js.map +0 -1
  663. package/dist/rsc/types.d.ts +0 -206
  664. package/dist/rsc/types.d.ts.map +0 -1
  665. package/dist/rsc/types.js +0 -8
  666. package/dist/rsc/types.js.map +0 -1
  667. package/dist/search-params.d.ts +0 -103
  668. package/dist/search-params.d.ts.map +0 -1
  669. package/dist/search-params.js +0 -74
  670. package/dist/search-params.js.map +0 -1
  671. package/dist/segment-system.d.ts +0 -75
  672. package/dist/segment-system.d.ts.map +0 -1
  673. package/dist/segment-system.js +0 -336
  674. package/dist/segment-system.js.map +0 -1
  675. package/dist/server/context.d.ts +0 -245
  676. package/dist/server/context.d.ts.map +0 -1
  677. package/dist/server/context.js +0 -197
  678. package/dist/server/context.js.map +0 -1
  679. package/dist/server/fetchable-loader-store.d.ts +0 -18
  680. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  681. package/dist/server/fetchable-loader-store.js +0 -18
  682. package/dist/server/fetchable-loader-store.js.map +0 -1
  683. package/dist/server/handle-store.d.ts +0 -85
  684. package/dist/server/handle-store.d.ts.map +0 -1
  685. package/dist/server/handle-store.js +0 -142
  686. package/dist/server/handle-store.js.map +0 -1
  687. package/dist/server/loader-registry.d.ts +0 -55
  688. package/dist/server/loader-registry.d.ts.map +0 -1
  689. package/dist/server/loader-registry.js +0 -132
  690. package/dist/server/loader-registry.js.map +0 -1
  691. package/dist/server/request-context.d.ts +0 -226
  692. package/dist/server/request-context.d.ts.map +0 -1
  693. package/dist/server/request-context.js +0 -290
  694. package/dist/server/request-context.js.map +0 -1
  695. package/dist/server/root-layout.d.ts +0 -4
  696. package/dist/server/root-layout.d.ts.map +0 -1
  697. package/dist/server/root-layout.js +0 -5
  698. package/dist/server/root-layout.js.map +0 -1
  699. package/dist/server.d.ts +0 -15
  700. package/dist/server.d.ts.map +0 -1
  701. package/dist/server.js +0 -20
  702. package/dist/server.js.map +0 -1
  703. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  704. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  705. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  706. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  707. package/dist/ssr/index.d.ts +0 -98
  708. package/dist/ssr/index.d.ts.map +0 -1
  709. package/dist/ssr/index.js +0 -158
  710. package/dist/ssr/index.js.map +0 -1
  711. package/dist/static-handler.d.ts +0 -50
  712. package/dist/static-handler.d.ts.map +0 -1
  713. package/dist/static-handler.gen.d.ts +0 -5
  714. package/dist/static-handler.gen.d.ts.map +0 -1
  715. package/dist/static-handler.gen.js +0 -5
  716. package/dist/static-handler.gen.js.map +0 -1
  717. package/dist/static-handler.js +0 -29
  718. package/dist/static-handler.js.map +0 -1
  719. package/dist/theme/ThemeProvider.d.ts +0 -20
  720. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  721. package/dist/theme/ThemeProvider.js +0 -240
  722. package/dist/theme/ThemeProvider.js.map +0 -1
  723. package/dist/theme/ThemeScript.d.ts +0 -48
  724. package/dist/theme/ThemeScript.d.ts.map +0 -1
  725. package/dist/theme/ThemeScript.js +0 -13
  726. package/dist/theme/ThemeScript.js.map +0 -1
  727. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  728. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  729. package/dist/theme/__tests__/theme.test.js +0 -103
  730. package/dist/theme/__tests__/theme.test.js.map +0 -1
  731. package/dist/theme/constants.d.ts +0 -29
  732. package/dist/theme/constants.d.ts.map +0 -1
  733. package/dist/theme/constants.js +0 -48
  734. package/dist/theme/constants.js.map +0 -1
  735. package/dist/theme/index.d.ts +0 -31
  736. package/dist/theme/index.d.ts.map +0 -1
  737. package/dist/theme/index.js +0 -36
  738. package/dist/theme/index.js.map +0 -1
  739. package/dist/theme/theme-context.d.ts +0 -40
  740. package/dist/theme/theme-context.d.ts.map +0 -1
  741. package/dist/theme/theme-context.js +0 -60
  742. package/dist/theme/theme-context.js.map +0 -1
  743. package/dist/theme/theme-script.d.ts +0 -27
  744. package/dist/theme/theme-script.d.ts.map +0 -1
  745. package/dist/theme/theme-script.js +0 -147
  746. package/dist/theme/theme-script.js.map +0 -1
  747. package/dist/theme/types.d.ts +0 -163
  748. package/dist/theme/types.d.ts.map +0 -1
  749. package/dist/theme/types.js +0 -11
  750. package/dist/theme/types.js.map +0 -1
  751. package/dist/theme/use-theme.d.ts +0 -12
  752. package/dist/theme/use-theme.d.ts.map +0 -1
  753. package/dist/theme/use-theme.js +0 -40
  754. package/dist/theme/use-theme.js.map +0 -1
  755. package/dist/types.d.ts +0 -1479
  756. package/dist/types.d.ts.map +0 -1
  757. package/dist/types.js +0 -10
  758. package/dist/types.js.map +0 -1
  759. package/dist/urls.d.ts +0 -441
  760. package/dist/urls.d.ts.map +0 -1
  761. package/dist/urls.gen.d.ts +0 -8
  762. package/dist/urls.gen.d.ts.map +0 -1
  763. package/dist/urls.gen.js +0 -8
  764. package/dist/urls.gen.js.map +0 -1
  765. package/dist/urls.js +0 -443
  766. package/dist/urls.js.map +0 -1
  767. package/dist/use-loader.d.ts +0 -127
  768. package/dist/use-loader.d.ts.map +0 -1
  769. package/dist/use-loader.js +0 -237
  770. package/dist/use-loader.js.map +0 -1
  771. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  772. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  773. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  774. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  775. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  776. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  777. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  778. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  779. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  780. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  781. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  782. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  783. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  784. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  785. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  786. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  787. package/dist/vite/ast-handler-extract.d.ts +0 -49
  788. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  789. package/dist/vite/ast-handler-extract.js +0 -249
  790. package/dist/vite/ast-handler-extract.js.map +0 -1
  791. package/dist/vite/expose-action-id.d.ts +0 -19
  792. package/dist/vite/expose-action-id.d.ts.map +0 -1
  793. package/dist/vite/expose-action-id.js +0 -250
  794. package/dist/vite/expose-action-id.js.map +0 -1
  795. package/dist/vite/expose-id-utils.d.ts +0 -69
  796. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  797. package/dist/vite/expose-id-utils.js +0 -289
  798. package/dist/vite/expose-id-utils.js.map +0 -1
  799. package/dist/vite/expose-internal-ids.d.ts +0 -22
  800. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  801. package/dist/vite/expose-internal-ids.js +0 -886
  802. package/dist/vite/expose-internal-ids.js.map +0 -1
  803. package/dist/vite/index.d.ts +0 -149
  804. package/dist/vite/index.d.ts.map +0 -1
  805. package/dist/vite/index.js.map +0 -1
  806. package/dist/vite/index.named-routes.gen.ts +0 -103
  807. package/dist/vite/package-resolution.d.ts +0 -43
  808. package/dist/vite/package-resolution.d.ts.map +0 -1
  809. package/dist/vite/package-resolution.js +0 -112
  810. package/dist/vite/package-resolution.js.map +0 -1
  811. package/dist/vite/virtual-entries.d.ts +0 -25
  812. package/dist/vite/virtual-entries.d.ts.map +0 -1
  813. package/dist/vite/virtual-entries.js +0 -110
  814. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,627 +0,0 @@
1
- import { describe, it, expect, vi } from "vitest";
2
- import { createElement } from "react";
3
- // Sentinel components for identification in the element tree
4
- function MockOutletProvider(props) {
5
- return props.children;
6
- }
7
- function MockLoaderBoundary(props) {
8
- return props.children;
9
- }
10
- function MockRouteContentWrapper(props) {
11
- return null;
12
- }
13
- function MockMountContextProvider(props) {
14
- return props.children;
15
- }
16
- function MockRootErrorBoundary(props) {
17
- return props.children;
18
- }
19
- vi.mock("../client.js", () => ({
20
- OutletProvider: MockOutletProvider,
21
- }));
22
- vi.mock("../browser/react/mount-context.js", () => ({
23
- MountContextProvider: MockMountContextProvider,
24
- }));
25
- vi.mock("../route-content-wrapper.js", () => ({
26
- RouteContentWrapper: MockRouteContentWrapper,
27
- LoaderBoundary: MockLoaderBoundary,
28
- }));
29
- vi.mock("../root-error-boundary.js", () => ({
30
- RootErrorBoundary: MockRootErrorBoundary,
31
- }));
32
- import { renderSegments } from "../segment-system";
33
- // Helper to create a minimal segment
34
- function seg(overrides) {
35
- return {
36
- namespace: "",
37
- index: 0,
38
- component: createElement("div", null, `component-${overrides.id}`),
39
- ...overrides,
40
- };
41
- }
42
- function toTreeNode(node) {
43
- if (!node || typeof node !== "object")
44
- return null;
45
- const el = node;
46
- if (!el.type)
47
- return null;
48
- const typeName = typeof el.type === "string"
49
- ? el.type
50
- : el.type.name || "Anonymous";
51
- const children = [];
52
- // Walk both `children` and `content` props since layouts pass inner
53
- // content via the `content` prop to OutletProvider
54
- for (const prop of ["children", "content"]) {
55
- const val = el.props?.[prop];
56
- if (!val)
57
- continue;
58
- if (Array.isArray(val)) {
59
- for (const child of val) {
60
- const n = toTreeNode(child);
61
- if (n)
62
- children.push(n);
63
- }
64
- }
65
- else {
66
- const n = toTreeNode(val);
67
- if (n)
68
- children.push(n);
69
- }
70
- }
71
- return { type: el.type, typeName, props: el.props || {}, children };
72
- }
73
- // Find all nodes matching a component type in the tree
74
- function findAll(tree, fn) {
75
- if (!tree)
76
- return [];
77
- const results = [];
78
- if (tree.type === fn)
79
- results.push(tree);
80
- for (const child of tree.children) {
81
- results.push(...findAll(child, fn));
82
- }
83
- return results;
84
- }
85
- // Find first node matching a component type
86
- function findFirst(tree, fn) {
87
- if (!tree)
88
- return null;
89
- if (tree.type === fn)
90
- return tree;
91
- for (const child of tree.children) {
92
- const found = findFirst(child, fn);
93
- if (found)
94
- return found;
95
- }
96
- return null;
97
- }
98
- // Collect all nodes of a type in order (depth-first)
99
- function collectByType(tree, fn) {
100
- return findAll(tree, fn);
101
- }
102
- describe("segment-system", () => {
103
- describe("renderSegments", () => {
104
- describe("basic tree structure", () => {
105
- it("renders a single route segment with OutletProvider", async () => {
106
- const segments = [
107
- seg({ id: "R0", type: "route" }),
108
- ];
109
- const result = await renderSegments(segments);
110
- const tree = toTreeNode(result);
111
- // Root is RootErrorBoundary
112
- expect(tree.type).toBe(MockRootErrorBoundary);
113
- // Inside is an OutletProvider for the route
114
- const outlets = collectByType(tree, MockOutletProvider);
115
- expect(outlets).toHaveLength(1);
116
- expect(outlets[0].props.segment.id).toBe("R0");
117
- expect(outlets[0].props.content).toBeNull(); // route has no outlet content
118
- });
119
- it("nests layout around route (layout receives route as outlet content)", async () => {
120
- const segments = [
121
- seg({ id: "L0", type: "layout" }),
122
- seg({ id: "L0R0", type: "route" }),
123
- ];
124
- const result = await renderSegments(segments);
125
- const tree = toTreeNode(result);
126
- const outlets = collectByType(tree, MockOutletProvider);
127
- // Two OutletProviders
128
- expect(outlets).toHaveLength(2);
129
- // Outer (layout) wraps inner (route)
130
- // The outermost outlet should be the layout
131
- const outerOutlet = outlets[0];
132
- expect(outerOutlet.props.segment.id).toBe("L0");
133
- // Layout's content prop is the route's OutletProvider
134
- expect(outerOutlet.props.content).not.toBeNull();
135
- });
136
- it("nests multiple layouts (root -> inner -> route)", async () => {
137
- const segments = [
138
- seg({ id: "L0", type: "layout" }),
139
- seg({ id: "L0L0", type: "layout" }),
140
- seg({ id: "L0L0R0", type: "route" }),
141
- ];
142
- const result = await renderSegments(segments);
143
- const tree = toTreeNode(result);
144
- const outlets = collectByType(tree, MockOutletProvider);
145
- expect(outlets).toHaveLength(3);
146
- // Outermost is root layout L0
147
- expect(outlets[0].props.segment.id).toBe("L0");
148
- });
149
- it("always wraps with RootErrorBoundary", async () => {
150
- const segments = [
151
- seg({ id: "R0", type: "route" }),
152
- ];
153
- const result = await renderSegments(segments);
154
- const tree = toTreeNode(result);
155
- expect(tree.type).toBe(MockRootErrorBoundary);
156
- });
157
- });
158
- describe("tree structure based on loading property", () => {
159
- it("uses OutletProvider directly when loading is undefined", async () => {
160
- const segments = [
161
- seg({ id: "R0", type: "route", loading: undefined }),
162
- ];
163
- const result = await renderSegments(segments);
164
- const tree = toTreeNode(result);
165
- expect(collectByType(tree, MockOutletProvider)).toHaveLength(1);
166
- expect(collectByType(tree, MockLoaderBoundary)).toHaveLength(0);
167
- expect(collectByType(tree, MockRouteContentWrapper)).toHaveLength(0);
168
- });
169
- it("uses OutletProvider directly when loading is null", async () => {
170
- const segments = [
171
- seg({ id: "R0", type: "route", loading: null }),
172
- ];
173
- const result = await renderSegments(segments);
174
- const tree = toTreeNode(result);
175
- expect(collectByType(tree, MockOutletProvider)).toHaveLength(1);
176
- expect(collectByType(tree, MockLoaderBoundary)).toHaveLength(0);
177
- });
178
- it("uses LoaderBoundary when loading is false (defined but falsy)", async () => {
179
- const segments = [
180
- seg({ id: "R0", type: "route", loading: false }),
181
- ];
182
- const result = await renderSegments(segments);
183
- const tree = toTreeNode(result);
184
- // loading is false: not null, not undefined, so enters LoaderBoundary path
185
- expect(collectByType(tree, MockLoaderBoundary)).toHaveLength(1);
186
- });
187
- it("uses LoaderBoundary + RouteContentWrapper when loading is a ReactNode", async () => {
188
- const loadingSkeleton = createElement("div", null, "Loading...");
189
- const segments = [
190
- seg({ id: "R0", type: "route", loading: loadingSkeleton }),
191
- ];
192
- const result = await renderSegments(segments);
193
- const tree = toTreeNode(result);
194
- expect(collectByType(tree, MockLoaderBoundary)).toHaveLength(1);
195
- // RouteContentWrapper used as the children of LoaderBoundary
196
- expect(collectByType(tree, MockRouteContentWrapper)).toHaveLength(1);
197
- });
198
- it("uses OutletProvider with awaited data when loaders exist but no loading", async () => {
199
- const segments = [
200
- seg({ id: "R0", type: "route" }),
201
- seg({
202
- id: "R0D0.data",
203
- type: "loader",
204
- loaderId: "my-loader",
205
- loaderData: { value: 42 },
206
- }),
207
- ];
208
- const result = await renderSegments(segments);
209
- const tree = toTreeNode(result);
210
- // No LoaderBoundary because loading is undefined
211
- expect(collectByType(tree, MockLoaderBoundary)).toHaveLength(0);
212
- // Uses OutletProvider with loaderData injected
213
- const outlets = collectByType(tree, MockOutletProvider);
214
- expect(outlets).toHaveLength(1);
215
- expect(outlets[0].props.loaderData).toEqual({ "my-loader": { value: 42 } });
216
- });
217
- });
218
- describe("key generation", () => {
219
- it("uses segment ID as key when no params", async () => {
220
- const segments = [
221
- seg({ id: "R0", type: "route" }),
222
- ];
223
- const result = await renderSegments(segments);
224
- const tree = toTreeNode(result);
225
- const outlet = findFirst(tree, MockOutletProvider);
226
- // Key for route without params is just the ID
227
- expect(result.props.children.key).toBeDefined();
228
- });
229
- it("includes sorted params in key for route segments", async () => {
230
- const segments = [
231
- seg({
232
- id: "R0",
233
- type: "route",
234
- params: { slug: "hello", category: "tech" },
235
- }),
236
- ];
237
- const result = await renderSegments(segments);
238
- const tree = toTreeNode(result);
239
- const outlets = collectByType(tree, MockOutletProvider);
240
- // Params are sorted alphabetically in key
241
- expect(outlets[0].props.segment.params).toEqual({
242
- slug: "hello",
243
- category: "tech",
244
- });
245
- });
246
- it("excludes params from key for non-belongsToRoute layouts", async () => {
247
- // Layout that is shared (not belongsToRoute) should use just ID as key
248
- const segments = [
249
- seg({
250
- id: "L0",
251
- type: "layout",
252
- belongsToRoute: false,
253
- params: { slug: "hello" },
254
- }),
255
- seg({ id: "L0R0", type: "route" }),
256
- ];
257
- // Should not throw - params are excluded from key for shared layouts
258
- await renderSegments(segments);
259
- });
260
- });
261
- describe("parallel segment grouping", () => {
262
- it("attaches parallel segments to correct parent by ID prefix", async () => {
263
- const segments = [
264
- seg({ id: "L0", type: "layout" }),
265
- seg({ id: "L0R0", type: "route" }),
266
- seg({
267
- id: "L0.@sidebar",
268
- type: "parallel",
269
- slot: "@sidebar",
270
- }),
271
- ];
272
- const result = await renderSegments(segments);
273
- const tree = toTreeNode(result);
274
- const outlets = collectByType(tree, MockOutletProvider);
275
- // Layout L0 should have the parallel segment
276
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
277
- expect(layoutOutlet.props.parallel).toHaveLength(1);
278
- expect(layoutOutlet.props.parallel[0].slot).toBe("@sidebar");
279
- // Route should NOT have parallels
280
- const routeOutlet = outlets.find((o) => o.props.segment.id === "L0R0");
281
- expect(routeOutlet.props.parallel).toEqual([]);
282
- });
283
- it("groups multiple parallels under same parent", async () => {
284
- const segments = [
285
- seg({ id: "L0", type: "layout" }),
286
- seg({ id: "L0R0", type: "route" }),
287
- seg({ id: "L0.@sidebar", type: "parallel", slot: "@sidebar" }),
288
- seg({ id: "L0.@modal", type: "parallel", slot: "@modal" }),
289
- ];
290
- const result = await renderSegments(segments);
291
- const tree = toTreeNode(result);
292
- const outlets = collectByType(tree, MockOutletProvider);
293
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
294
- expect(layoutOutlet.props.parallel).toHaveLength(2);
295
- expect(layoutOutlet.props.parallel.map((p) => p.slot).sort()).toEqual(["@modal", "@sidebar"]);
296
- });
297
- });
298
- describe("loader segment grouping", () => {
299
- it("groups loader segments by parent ID and passes data to OutletProvider", async () => {
300
- const segments = [
301
- seg({ id: "L0", type: "layout" }),
302
- seg({ id: "L0R0", type: "route" }),
303
- seg({
304
- id: "L0D0.products",
305
- type: "loader",
306
- loaderId: "products-loader",
307
- loaderData: { products: ["a", "b"] },
308
- }),
309
- ];
310
- const result = await renderSegments(segments);
311
- const tree = toTreeNode(result);
312
- const outlets = collectByType(tree, MockOutletProvider);
313
- // Layout L0 gets the loader data (parent of "L0D0.products" is "L0")
314
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
315
- expect(layoutOutlet.props.loaderData).toEqual({
316
- "products-loader": { products: ["a", "b"] },
317
- });
318
- });
319
- it("resolves LoaderDataResult success wrapper", async () => {
320
- const segments = [
321
- seg({ id: "R0", type: "route" }),
322
- seg({
323
- id: "R0D0.data",
324
- type: "loader",
325
- loaderId: "my-loader",
326
- loaderData: {
327
- __loaderResult: true,
328
- ok: true,
329
- data: { value: 42 },
330
- },
331
- }),
332
- ];
333
- const result = await renderSegments(segments);
334
- const tree = toTreeNode(result);
335
- const outlets = collectByType(tree, MockOutletProvider);
336
- // Should unwrap LoaderDataResult to get the inner data
337
- expect(outlets[0].props.loaderData).toEqual({ "my-loader": { value: 42 } });
338
- });
339
- it("renders error fallback for LoaderDataResult with error+fallback", async () => {
340
- const errorFallback = createElement("div", null, "Error occurred");
341
- const segments = [
342
- seg({ id: "R0", type: "route" }),
343
- seg({
344
- id: "R0D0.data",
345
- type: "loader",
346
- loaderId: "my-loader",
347
- loaderData: {
348
- __loaderResult: true,
349
- ok: false,
350
- error: { message: "Failed" },
351
- fallback: errorFallback,
352
- },
353
- }),
354
- ];
355
- const result = await renderSegments(segments);
356
- const tree = toTreeNode(result);
357
- const outlets = collectByType(tree, MockOutletProvider);
358
- // The OutletProvider children should be the error fallback
359
- expect(outlets[0].props.children).toBe(errorFallback);
360
- });
361
- it("throws for LoaderDataResult with error but no fallback", async () => {
362
- const segments = [
363
- seg({ id: "R0", type: "route" }),
364
- seg({
365
- id: "R0D0.data",
366
- type: "loader",
367
- loaderId: "my-loader",
368
- loaderData: {
369
- __loaderResult: true,
370
- ok: false,
371
- error: { message: "Loader failed" },
372
- },
373
- }),
374
- ];
375
- await expect(renderSegments(segments)).rejects.toThrow("Loader failed");
376
- });
377
- });
378
- describe("segment ordering", () => {
379
- it("sorts segments by ID length regardless of input order", async () => {
380
- // Provide in wrong order
381
- const segments = [
382
- seg({ id: "L0L0R0", type: "route" }),
383
- seg({ id: "L0", type: "layout" }),
384
- seg({ id: "L0L0", type: "layout" }),
385
- ];
386
- const result = await renderSegments(segments);
387
- const tree = toTreeNode(result);
388
- const outlets = collectByType(tree, MockOutletProvider);
389
- expect(outlets).toHaveLength(3);
390
- // Outermost is root layout (L0)
391
- expect(outlets[0].props.segment.id).toBe("L0");
392
- });
393
- });
394
- describe("isAction behavior", () => {
395
- it("awaits component promises when isAction is true", async () => {
396
- const resolvedComponent = createElement("div", null, "resolved");
397
- const componentPromise = Promise.resolve(resolvedComponent);
398
- const segments = [
399
- seg({ id: "R0", type: "route", component: componentPromise }),
400
- ];
401
- const result = await renderSegments(segments, { isAction: true });
402
- const tree = toTreeNode(result);
403
- const outlets = collectByType(tree, MockOutletProvider);
404
- // Component should be resolved, not wrapped in RouteContentWrapper
405
- expect(outlets).toHaveLength(1);
406
- expect(collectByType(tree, MockRouteContentWrapper)).toHaveLength(0);
407
- });
408
- it("pre-resolves loader promises when isAction is true", async () => {
409
- const loadingSkeleton = createElement("div", null, "Loading...");
410
- const segments = [
411
- seg({ id: "R0", type: "route", loading: loadingSkeleton }),
412
- seg({
413
- id: "R0D0.data",
414
- type: "loader",
415
- loaderId: "test",
416
- loaderData: Promise.resolve({ count: 5 }),
417
- }),
418
- ];
419
- const result = await renderSegments(segments, { isAction: true });
420
- const tree = toTreeNode(result);
421
- const boundaries = collectByType(tree, MockLoaderBoundary);
422
- expect(boundaries).toHaveLength(1);
423
- // When isAction, the promise should be pre-resolved to an array
424
- expect(Array.isArray(boundaries[0].props.loaderDataPromise)).toBe(true);
425
- });
426
- });
427
- describe("forceAwait behavior", () => {
428
- it("pre-resolves loader promises when forceAwait is true", async () => {
429
- const loadingSkeleton = createElement("div", null, "Loading...");
430
- const segments = [
431
- seg({ id: "R0", type: "route", loading: loadingSkeleton }),
432
- seg({
433
- id: "R0D0.data",
434
- type: "loader",
435
- loaderId: "test",
436
- loaderData: Promise.resolve({ count: 5 }),
437
- }),
438
- ];
439
- const result = await renderSegments(segments, { forceAwait: true });
440
- const tree = toTreeNode(result);
441
- const boundaries = collectByType(tree, MockLoaderBoundary);
442
- expect(boundaries).toHaveLength(1);
443
- expect(Array.isArray(boundaries[0].props.loaderDataPromise)).toBe(true);
444
- });
445
- });
446
- describe("intercept segments", () => {
447
- it("injects intercept parallel segments into parent parallel group", async () => {
448
- const segments = [
449
- seg({ id: "L0", type: "layout" }),
450
- seg({ id: "L0R0", type: "route" }),
451
- ];
452
- const interceptSegments = [
453
- seg({
454
- id: "L0.@modal",
455
- type: "parallel",
456
- slot: "@modal",
457
- }),
458
- ];
459
- const result = await renderSegments(segments, { interceptSegments });
460
- const tree = toTreeNode(result);
461
- const outlets = collectByType(tree, MockOutletProvider);
462
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
463
- expect(layoutOutlet.props.parallel).toHaveLength(1);
464
- expect(layoutOutlet.props.parallel[0].slot).toBe("@modal");
465
- });
466
- it("injects intercept loader segments into parent loader group", async () => {
467
- const segments = [
468
- seg({ id: "L0", type: "layout" }),
469
- seg({ id: "L0R0", type: "route" }),
470
- ];
471
- const interceptSegments = [
472
- seg({
473
- id: "L0D0.modal-data",
474
- type: "loader",
475
- loaderId: "modal-loader",
476
- loaderData: { modal: true },
477
- }),
478
- ];
479
- const result = await renderSegments(segments, { interceptSegments });
480
- const tree = toTreeNode(result);
481
- const outlets = collectByType(tree, MockOutletProvider);
482
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
483
- expect(layoutOutlet.props.loaderData).toEqual({
484
- "modal-loader": { modal: true },
485
- });
486
- });
487
- });
488
- describe("rootLayout wrapping", () => {
489
- it("wraps tree with rootLayout when provided", async () => {
490
- const RootLayout = ({ children }) => createElement("div", null, children);
491
- const segments = [
492
- seg({ id: "R0", type: "route" }),
493
- ];
494
- const result = await renderSegments(segments, {
495
- rootLayout: RootLayout,
496
- });
497
- const tree = toTreeNode(result);
498
- // Root should be the RootLayout, not RootErrorBoundary
499
- expect(tree.type).toBe(RootLayout);
500
- // RootErrorBoundary should be inside
501
- const errorBoundary = findFirst(tree, MockRootErrorBoundary);
502
- expect(errorBoundary).not.toBeNull();
503
- });
504
- it("does not wrap with rootLayout when not provided", async () => {
505
- const segments = [
506
- seg({ id: "R0", type: "route" }),
507
- ];
508
- const result = await renderSegments(segments);
509
- const tree = toTreeNode(result);
510
- expect(tree.type).toBe(MockRootErrorBoundary);
511
- });
512
- });
513
- describe("MountContextProvider wrapping", () => {
514
- it("wraps segment with MountContextProvider when mountPath is set", async () => {
515
- const segments = [
516
- seg({ id: "R0", type: "route", mountPath: "/shop" }),
517
- ];
518
- const result = await renderSegments(segments);
519
- const tree = toTreeNode(result);
520
- const mounts = collectByType(tree, MockMountContextProvider);
521
- expect(mounts).toHaveLength(1);
522
- expect(mounts[0].props.value).toBe("/shop");
523
- });
524
- it("does not wrap when mountPath is undefined", async () => {
525
- const segments = [
526
- seg({ id: "R0", type: "route" }),
527
- ];
528
- const result = await renderSegments(segments);
529
- const tree = toTreeNode(result);
530
- const mounts = collectByType(tree, MockMountContextProvider);
531
- expect(mounts).toHaveLength(0);
532
- });
533
- it("wraps all segment types with MountContextProvider", async () => {
534
- const segments = [
535
- seg({ id: "L0", type: "layout", mountPath: "/shop" }),
536
- seg({ id: "L0R0", type: "route", mountPath: "/shop" }),
537
- ];
538
- const result = await renderSegments(segments);
539
- const tree = toTreeNode(result);
540
- const mounts = collectByType(tree, MockMountContextProvider);
541
- expect(mounts).toHaveLength(2);
542
- });
543
- });
544
- describe("error and notFound segments", () => {
545
- it("renders error segments in the tree", async () => {
546
- const segments = [
547
- seg({ id: "L0", type: "layout" }),
548
- seg({
549
- id: "L0E0",
550
- type: "error",
551
- component: createElement("div", null, "Error fallback"),
552
- error: {
553
- name: "Error",
554
- message: "Something broke",
555
- segmentId: "R0",
556
- segmentType: "route",
557
- },
558
- }),
559
- ];
560
- const result = await renderSegments(segments);
561
- const tree = toTreeNode(result);
562
- const outlets = collectByType(tree, MockOutletProvider);
563
- // Should have outlets for both layout and error segment
564
- expect(outlets).toHaveLength(2);
565
- const errorOutlet = outlets.find((o) => o.props.segment.type === "error");
566
- expect(errorOutlet).toBeDefined();
567
- });
568
- it("renders notFound segments in the tree", async () => {
569
- const segments = [
570
- seg({ id: "L0", type: "layout" }),
571
- seg({
572
- id: "L0NF0",
573
- type: "notFound",
574
- component: createElement("div", null, "Not found"),
575
- notFoundInfo: {
576
- message: "Page not found",
577
- segmentId: "R0",
578
- segmentType: "route",
579
- },
580
- }),
581
- ];
582
- const result = await renderSegments(segments);
583
- const tree = toTreeNode(result);
584
- const outlets = collectByType(tree, MockOutletProvider);
585
- expect(outlets).toHaveLength(2);
586
- const notFoundOutlet = outlets.find((o) => o.props.segment.type === "notFound");
587
- expect(notFoundOutlet).toBeDefined();
588
- });
589
- });
590
- describe("empty segments", () => {
591
- it("returns RootErrorBoundary wrapping null for empty segments", async () => {
592
- const result = await renderSegments([]);
593
- const tree = toTreeNode(result);
594
- expect(tree.type).toBe(MockRootErrorBoundary);
595
- });
596
- });
597
- describe("parallel segment loaders", () => {
598
- it("includes loaders from parallel segments in parent loader list", async () => {
599
- const segments = [
600
- seg({ id: "L0", type: "layout" }),
601
- seg({ id: "L0R0", type: "route" }),
602
- seg({
603
- id: "L0.@sidebar",
604
- type: "parallel",
605
- slot: "@sidebar",
606
- }),
607
- seg({
608
- id: "L0.@sidebarD0.data",
609
- type: "loader",
610
- loaderId: "sidebar-loader",
611
- loaderData: { sidebar: true },
612
- }),
613
- ];
614
- const result = await renderSegments(segments);
615
- const tree = toTreeNode(result);
616
- const outlets = collectByType(tree, MockOutletProvider);
617
- // The layout should have sidebar loader data accessible
618
- // (loaders from parallels are merged into parent's loaders)
619
- const layoutOutlet = outlets.find((o) => o.props.segment.id === "L0");
620
- // The sidebar loader is grouped under the parallel "L0.@sidebar"
621
- // which is a child of L0, so it gets included in L0's loaders
622
- expect(layoutOutlet.props.loaderData).toBeDefined();
623
- });
624
- });
625
- });
626
- });
627
- //# sourceMappingURL=segment-system.test.js.map