@rangojs/router 0.0.0-experimental.ce770c9a → 0.0.0-experimental.dc0369d7

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 (915) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +421 -121
  4. package/package.json +2 -2
  5. package/skills/cache-guide/SKILL.md +32 -0
  6. package/skills/caching/SKILL.md +8 -0
  7. package/skills/links/SKILL.md +3 -1
  8. package/skills/loader/SKILL.md +53 -43
  9. package/skills/middleware/SKILL.md +2 -0
  10. package/skills/parallel/SKILL.md +67 -0
  11. package/skills/prerender/SKILL.md +110 -68
  12. package/skills/route/SKILL.md +31 -0
  13. package/skills/router-setup/SKILL.md +87 -2
  14. package/skills/typesafety/SKILL.md +10 -0
  15. package/src/__internal.ts +1 -1
  16. package/src/browser/app-version.ts +14 -0
  17. package/src/browser/navigation-bridge.ts +16 -3
  18. package/src/browser/navigation-client.ts +64 -40
  19. package/src/browser/navigation-store.ts +43 -8
  20. package/src/browser/partial-update.ts +37 -4
  21. package/src/browser/prefetch/fetch.ts +8 -2
  22. package/src/browser/prefetch/queue.ts +61 -29
  23. package/src/browser/prefetch/resource-ready.ts +77 -0
  24. package/src/browser/react/Link.tsx +44 -8
  25. package/src/browser/react/NavigationProvider.tsx +13 -4
  26. package/src/browser/react/context.ts +7 -2
  27. package/src/browser/react/use-handle.ts +9 -58
  28. package/src/browser/react/use-router.ts +21 -8
  29. package/src/browser/rsc-router.tsx +26 -3
  30. package/src/browser/scroll-restoration.ts +10 -8
  31. package/src/browser/server-action-bridge.ts +8 -6
  32. package/src/browser/types.ts +27 -5
  33. package/src/build/generate-manifest.ts +6 -6
  34. package/src/build/generate-route-types.ts +3 -0
  35. package/src/build/route-types/include-resolution.ts +8 -1
  36. package/src/build/route-types/router-processing.ts +211 -72
  37. package/src/build/route-types/scan-filter.ts +8 -1
  38. package/src/cache/cache-runtime.ts +15 -11
  39. package/src/cache/cache-scope.ts +46 -5
  40. package/src/cache/taint.ts +55 -0
  41. package/src/client.tsx +2 -56
  42. package/src/context-var.ts +72 -2
  43. package/src/handle.ts +40 -0
  44. package/src/index.rsc.ts +3 -1
  45. package/src/index.ts +8 -0
  46. package/src/prerender/store.ts +5 -4
  47. package/src/prerender.ts +138 -77
  48. package/src/reverse.ts +22 -1
  49. package/src/route-definition/dsl-helpers.ts +42 -19
  50. package/src/route-definition/helpers-types.ts +10 -6
  51. package/src/route-definition/index.ts +3 -0
  52. package/src/route-definition/redirect.ts +9 -1
  53. package/src/route-definition/resolve-handler-use.ts +149 -0
  54. package/src/route-types.ts +11 -0
  55. package/src/router/content-negotiation.ts +100 -1
  56. package/src/router/handler-context.ts +79 -23
  57. package/src/router/intercept-resolution.ts +9 -4
  58. package/src/router/loader-resolution.ts +122 -10
  59. package/src/router/match-api.ts +124 -189
  60. package/src/router/match-middleware/background-revalidation.ts +12 -1
  61. package/src/router/match-middleware/cache-lookup.ts +64 -9
  62. package/src/router/match-middleware/cache-store.ts +21 -4
  63. package/src/router/match-middleware/segment-resolution.ts +53 -0
  64. package/src/router/match-result.ts +11 -5
  65. package/src/router/middleware-types.ts +6 -8
  66. package/src/router/middleware.ts +2 -5
  67. package/src/router/navigation-snapshot.ts +182 -0
  68. package/src/router/prerender-match.ts +110 -10
  69. package/src/router/preview-match.ts +30 -102
  70. package/src/router/request-classification.ts +310 -0
  71. package/src/router/route-snapshot.ts +245 -0
  72. package/src/router/router-context.ts +1 -0
  73. package/src/router/router-interfaces.ts +36 -4
  74. package/src/router/router-options.ts +37 -11
  75. package/src/router/segment-resolution/fresh.ts +88 -21
  76. package/src/router/segment-resolution/helpers.ts +29 -24
  77. package/src/router/segment-resolution/revalidation.ts +100 -29
  78. package/src/router/types.ts +1 -0
  79. package/src/router.ts +54 -5
  80. package/src/rsc/handler.ts +460 -368
  81. package/src/rsc/manifest-init.ts +5 -1
  82. package/src/rsc/progressive-enhancement.ts +4 -0
  83. package/src/rsc/rsc-rendering.ts +5 -0
  84. package/src/rsc/server-action.ts +2 -0
  85. package/src/rsc/ssr-setup.ts +2 -2
  86. package/src/rsc/types.ts +8 -1
  87. package/src/server/context.ts +50 -1
  88. package/src/server/loader-registry.ts +9 -8
  89. package/src/server/request-context.ts +145 -14
  90. package/src/ssr/index.tsx +3 -0
  91. package/src/static-handler.ts +18 -6
  92. package/src/types/cache-types.ts +4 -4
  93. package/src/types/handler-context.ts +137 -33
  94. package/src/types/loader-types.ts +36 -9
  95. package/src/types/route-entry.ts +1 -1
  96. package/src/urls/path-helper-types.ts +9 -2
  97. package/src/urls/path-helper.ts +47 -12
  98. package/src/urls/pattern-types.ts +12 -0
  99. package/src/urls/response-types.ts +16 -6
  100. package/src/use-loader.tsx +73 -4
  101. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  102. package/src/vite/discovery/discover-routers.ts +5 -1
  103. package/src/vite/discovery/prerender-collection.ts +14 -1
  104. package/src/vite/discovery/state.ts +13 -4
  105. package/src/vite/index.ts +4 -0
  106. package/src/vite/plugin-types.ts +60 -5
  107. package/src/vite/plugins/performance-tracks.ts +88 -0
  108. package/src/vite/plugins/refresh-cmd.ts +88 -26
  109. package/src/vite/rango.ts +19 -2
  110. package/src/vite/router-discovery.ts +153 -34
  111. package/src/vite/utils/prerender-utils.ts +18 -0
  112. package/src/vite/utils/shared-utils.ts +3 -2
  113. package/dist/__internal.d.ts +0 -83
  114. package/dist/__internal.d.ts.map +0 -1
  115. package/dist/__internal.js +0 -19
  116. package/dist/__internal.js.map +0 -1
  117. package/dist/__mocks__/version.d.ts +0 -7
  118. package/dist/__mocks__/version.d.ts.map +0 -1
  119. package/dist/__mocks__/version.js +0 -7
  120. package/dist/__mocks__/version.js.map +0 -1
  121. package/dist/__tests__/client-href.test.d.ts +0 -2
  122. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  123. package/dist/__tests__/client-href.test.js +0 -74
  124. package/dist/__tests__/client-href.test.js.map +0 -1
  125. package/dist/__tests__/component-utils.test.d.ts +0 -2
  126. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  127. package/dist/__tests__/component-utils.test.js +0 -51
  128. package/dist/__tests__/component-utils.test.js.map +0 -1
  129. package/dist/__tests__/event-controller.test.d.ts +0 -2
  130. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  131. package/dist/__tests__/event-controller.test.js +0 -538
  132. package/dist/__tests__/event-controller.test.js.map +0 -1
  133. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  134. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  135. package/dist/__tests__/helpers/route-tree.js +0 -374
  136. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  137. package/dist/__tests__/match-result.test.d.ts +0 -2
  138. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  139. package/dist/__tests__/match-result.test.js +0 -154
  140. package/dist/__tests__/match-result.test.js.map +0 -1
  141. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  142. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  143. package/dist/__tests__/navigation-store.test.js +0 -440
  144. package/dist/__tests__/navigation-store.test.js.map +0 -1
  145. package/dist/__tests__/partial-update.test.d.ts +0 -2
  146. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  147. package/dist/__tests__/partial-update.test.js +0 -1009
  148. package/dist/__tests__/partial-update.test.js.map +0 -1
  149. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  150. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  151. package/dist/__tests__/reverse-types.test.js +0 -656
  152. package/dist/__tests__/reverse-types.test.js.map +0 -1
  153. package/dist/__tests__/route-definition.test.d.ts +0 -2
  154. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  155. package/dist/__tests__/route-definition.test.js +0 -55
  156. package/dist/__tests__/route-definition.test.js.map +0 -1
  157. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  158. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  159. package/dist/__tests__/router-helpers.test.js +0 -377
  160. package/dist/__tests__/router-helpers.test.js.map +0 -1
  161. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  162. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  163. package/dist/__tests__/router-integration-2.test.js +0 -426
  164. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  165. package/dist/__tests__/router-integration.test.d.ts +0 -2
  166. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  167. package/dist/__tests__/router-integration.test.js +0 -1051
  168. package/dist/__tests__/router-integration.test.js.map +0 -1
  169. package/dist/__tests__/search-params.test.d.ts +0 -5
  170. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  171. package/dist/__tests__/search-params.test.js +0 -306
  172. package/dist/__tests__/search-params.test.js.map +0 -1
  173. package/dist/__tests__/segment-system.test.d.ts +0 -2
  174. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  175. package/dist/__tests__/segment-system.test.js +0 -627
  176. package/dist/__tests__/segment-system.test.js.map +0 -1
  177. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  178. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  179. package/dist/__tests__/static-handler-types.test.js +0 -63
  180. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  181. package/dist/__tests__/urls.test.d.ts +0 -2
  182. package/dist/__tests__/urls.test.d.ts.map +0 -1
  183. package/dist/__tests__/urls.test.js +0 -421
  184. package/dist/__tests__/urls.test.js.map +0 -1
  185. package/dist/__tests__/use-mount.test.d.ts +0 -2
  186. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  187. package/dist/__tests__/use-mount.test.js +0 -35
  188. package/dist/__tests__/use-mount.test.js.map +0 -1
  189. package/dist/bin/rango.d.ts +0 -2
  190. package/dist/bin/rango.d.ts.map +0 -1
  191. package/dist/bin/rango.js.map +0 -1
  192. package/dist/browser/event-controller.d.ts +0 -191
  193. package/dist/browser/event-controller.d.ts.map +0 -1
  194. package/dist/browser/event-controller.js +0 -559
  195. package/dist/browser/event-controller.js.map +0 -1
  196. package/dist/browser/index.d.ts +0 -2
  197. package/dist/browser/index.d.ts.map +0 -1
  198. package/dist/browser/index.js +0 -14
  199. package/dist/browser/index.js.map +0 -1
  200. package/dist/browser/link-interceptor.d.ts +0 -38
  201. package/dist/browser/link-interceptor.d.ts.map +0 -1
  202. package/dist/browser/link-interceptor.js +0 -99
  203. package/dist/browser/link-interceptor.js.map +0 -1
  204. package/dist/browser/logging.d.ts +0 -10
  205. package/dist/browser/logging.d.ts.map +0 -1
  206. package/dist/browser/logging.js +0 -29
  207. package/dist/browser/logging.js.map +0 -1
  208. package/dist/browser/lru-cache.d.ts +0 -17
  209. package/dist/browser/lru-cache.d.ts.map +0 -1
  210. package/dist/browser/lru-cache.js +0 -50
  211. package/dist/browser/lru-cache.js.map +0 -1
  212. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  213. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  214. package/dist/browser/merge-segment-loaders.js +0 -102
  215. package/dist/browser/merge-segment-loaders.js.map +0 -1
  216. package/dist/browser/navigation-bridge.d.ts +0 -102
  217. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  218. package/dist/browser/navigation-bridge.js +0 -708
  219. package/dist/browser/navigation-bridge.js.map +0 -1
  220. package/dist/browser/navigation-client.d.ts +0 -25
  221. package/dist/browser/navigation-client.d.ts.map +0 -1
  222. package/dist/browser/navigation-client.js +0 -157
  223. package/dist/browser/navigation-client.js.map +0 -1
  224. package/dist/browser/navigation-store.d.ts +0 -101
  225. package/dist/browser/navigation-store.d.ts.map +0 -1
  226. package/dist/browser/navigation-store.js +0 -625
  227. package/dist/browser/navigation-store.js.map +0 -1
  228. package/dist/browser/partial-update.d.ts +0 -75
  229. package/dist/browser/partial-update.d.ts.map +0 -1
  230. package/dist/browser/partial-update.js +0 -426
  231. package/dist/browser/partial-update.js.map +0 -1
  232. package/dist/browser/react/Link.d.ts +0 -86
  233. package/dist/browser/react/Link.d.ts.map +0 -1
  234. package/dist/browser/react/Link.js +0 -128
  235. package/dist/browser/react/Link.js.map +0 -1
  236. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  237. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  238. package/dist/browser/react/NavigationProvider.js +0 -216
  239. package/dist/browser/react/NavigationProvider.js.map +0 -1
  240. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  241. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  242. package/dist/browser/react/ScrollRestoration.js +0 -57
  243. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  244. package/dist/browser/react/context.d.ts +0 -46
  245. package/dist/browser/react/context.d.ts.map +0 -1
  246. package/dist/browser/react/context.js +0 -10
  247. package/dist/browser/react/context.js.map +0 -1
  248. package/dist/browser/react/index.d.ts +0 -11
  249. package/dist/browser/react/index.d.ts.map +0 -1
  250. package/dist/browser/react/index.js +0 -22
  251. package/dist/browser/react/index.js.map +0 -1
  252. package/dist/browser/react/location-state-shared.d.ts +0 -63
  253. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  254. package/dist/browser/react/location-state-shared.js +0 -81
  255. package/dist/browser/react/location-state-shared.js.map +0 -1
  256. package/dist/browser/react/location-state.d.ts +0 -23
  257. package/dist/browser/react/location-state.d.ts.map +0 -1
  258. package/dist/browser/react/location-state.js +0 -29
  259. package/dist/browser/react/location-state.js.map +0 -1
  260. package/dist/browser/react/mount-context.d.ts +0 -24
  261. package/dist/browser/react/mount-context.d.ts.map +0 -1
  262. package/dist/browser/react/mount-context.js +0 -24
  263. package/dist/browser/react/mount-context.js.map +0 -1
  264. package/dist/browser/react/use-action.d.ts +0 -64
  265. package/dist/browser/react/use-action.d.ts.map +0 -1
  266. package/dist/browser/react/use-action.js +0 -134
  267. package/dist/browser/react/use-action.js.map +0 -1
  268. package/dist/browser/react/use-client-cache.d.ts +0 -41
  269. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  270. package/dist/browser/react/use-client-cache.js +0 -39
  271. package/dist/browser/react/use-client-cache.js.map +0 -1
  272. package/dist/browser/react/use-handle.d.ts +0 -31
  273. package/dist/browser/react/use-handle.d.ts.map +0 -1
  274. package/dist/browser/react/use-handle.js +0 -144
  275. package/dist/browser/react/use-handle.js.map +0 -1
  276. package/dist/browser/react/use-href.d.ts +0 -33
  277. package/dist/browser/react/use-href.d.ts.map +0 -1
  278. package/dist/browser/react/use-href.js +0 -39
  279. package/dist/browser/react/use-href.js.map +0 -1
  280. package/dist/browser/react/use-link-status.d.ts +0 -37
  281. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  282. package/dist/browser/react/use-link-status.js +0 -99
  283. package/dist/browser/react/use-link-status.js.map +0 -1
  284. package/dist/browser/react/use-mount.d.ts +0 -25
  285. package/dist/browser/react/use-mount.d.ts.map +0 -1
  286. package/dist/browser/react/use-mount.js +0 -30
  287. package/dist/browser/react/use-mount.js.map +0 -1
  288. package/dist/browser/react/use-navigation.d.ts +0 -27
  289. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  290. package/dist/browser/react/use-navigation.js +0 -87
  291. package/dist/browser/react/use-navigation.js.map +0 -1
  292. package/dist/browser/react/use-segments.d.ts +0 -38
  293. package/dist/browser/react/use-segments.d.ts.map +0 -1
  294. package/dist/browser/react/use-segments.js +0 -130
  295. package/dist/browser/react/use-segments.js.map +0 -1
  296. package/dist/browser/request-controller.d.ts +0 -26
  297. package/dist/browser/request-controller.d.ts.map +0 -1
  298. package/dist/browser/request-controller.js +0 -147
  299. package/dist/browser/request-controller.js.map +0 -1
  300. package/dist/browser/rsc-router.d.ts +0 -129
  301. package/dist/browser/rsc-router.d.ts.map +0 -1
  302. package/dist/browser/rsc-router.js +0 -195
  303. package/dist/browser/rsc-router.js.map +0 -1
  304. package/dist/browser/scroll-restoration.d.ts +0 -93
  305. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  306. package/dist/browser/scroll-restoration.js +0 -321
  307. package/dist/browser/scroll-restoration.js.map +0 -1
  308. package/dist/browser/segment-structure-assert.d.ts +0 -17
  309. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  310. package/dist/browser/segment-structure-assert.js +0 -59
  311. package/dist/browser/segment-structure-assert.js.map +0 -1
  312. package/dist/browser/server-action-bridge.d.ts +0 -26
  313. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  314. package/dist/browser/server-action-bridge.js +0 -668
  315. package/dist/browser/server-action-bridge.js.map +0 -1
  316. package/dist/browser/shallow.d.ts +0 -12
  317. package/dist/browser/shallow.d.ts.map +0 -1
  318. package/dist/browser/shallow.js +0 -34
  319. package/dist/browser/shallow.js.map +0 -1
  320. package/dist/browser/types.d.ts +0 -369
  321. package/dist/browser/types.d.ts.map +0 -1
  322. package/dist/browser/types.js +0 -2
  323. package/dist/browser/types.js.map +0 -1
  324. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  325. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  326. package/dist/build/__tests__/generate-cli.test.js +0 -237
  327. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  328. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  329. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  330. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  331. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  332. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  333. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  334. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  335. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  336. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  337. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  338. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  339. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  340. package/dist/build/generate-manifest.d.ts +0 -81
  341. package/dist/build/generate-manifest.d.ts.map +0 -1
  342. package/dist/build/generate-manifest.js +0 -276
  343. package/dist/build/generate-manifest.js.map +0 -1
  344. package/dist/build/generate-route-types.d.ts +0 -115
  345. package/dist/build/generate-route-types.d.ts.map +0 -1
  346. package/dist/build/generate-route-types.js +0 -740
  347. package/dist/build/generate-route-types.js.map +0 -1
  348. package/dist/build/index.d.ts +0 -21
  349. package/dist/build/index.d.ts.map +0 -1
  350. package/dist/build/index.js +0 -21
  351. package/dist/build/index.js.map +0 -1
  352. package/dist/build/route-trie.d.ts +0 -71
  353. package/dist/build/route-trie.d.ts.map +0 -1
  354. package/dist/build/route-trie.js +0 -175
  355. package/dist/build/route-trie.js.map +0 -1
  356. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  357. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  358. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  359. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  360. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  361. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  362. package/dist/cache/__tests__/document-cache.test.js +0 -345
  363. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  364. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  365. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  366. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  367. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  368. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  369. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  370. package/dist/cache/__tests__/memory-store.test.js +0 -367
  371. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  372. package/dist/cache/cache-scope.d.ts +0 -102
  373. package/dist/cache/cache-scope.d.ts.map +0 -1
  374. package/dist/cache/cache-scope.js +0 -440
  375. package/dist/cache/cache-scope.js.map +0 -1
  376. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  377. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  378. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  379. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  380. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  381. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  382. package/dist/cache/cf/cf-cache-store.js +0 -242
  383. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  384. package/dist/cache/cf/index.d.ts +0 -14
  385. package/dist/cache/cf/index.d.ts.map +0 -1
  386. package/dist/cache/cf/index.js +0 -17
  387. package/dist/cache/cf/index.js.map +0 -1
  388. package/dist/cache/document-cache.d.ts +0 -64
  389. package/dist/cache/document-cache.d.ts.map +0 -1
  390. package/dist/cache/document-cache.js +0 -228
  391. package/dist/cache/document-cache.js.map +0 -1
  392. package/dist/cache/index.d.ts +0 -19
  393. package/dist/cache/index.d.ts.map +0 -1
  394. package/dist/cache/index.js +0 -21
  395. package/dist/cache/index.js.map +0 -1
  396. package/dist/cache/memory-segment-store.d.ts +0 -110
  397. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  398. package/dist/cache/memory-segment-store.js +0 -117
  399. package/dist/cache/memory-segment-store.js.map +0 -1
  400. package/dist/cache/memory-store.d.ts +0 -41
  401. package/dist/cache/memory-store.d.ts.map +0 -1
  402. package/dist/cache/memory-store.js +0 -191
  403. package/dist/cache/memory-store.js.map +0 -1
  404. package/dist/cache/types.d.ts +0 -317
  405. package/dist/cache/types.d.ts.map +0 -1
  406. package/dist/cache/types.js +0 -12
  407. package/dist/cache/types.js.map +0 -1
  408. package/dist/client.d.ts +0 -248
  409. package/dist/client.d.ts.map +0 -1
  410. package/dist/client.js +0 -367
  411. package/dist/client.js.map +0 -1
  412. package/dist/client.rsc.d.ts +0 -26
  413. package/dist/client.rsc.d.ts.map +0 -1
  414. package/dist/client.rsc.js +0 -46
  415. package/dist/client.rsc.js.map +0 -1
  416. package/dist/component-utils.d.ts +0 -36
  417. package/dist/component-utils.d.ts.map +0 -1
  418. package/dist/component-utils.js +0 -61
  419. package/dist/component-utils.js.map +0 -1
  420. package/dist/components/DefaultDocument.d.ts +0 -13
  421. package/dist/components/DefaultDocument.d.ts.map +0 -1
  422. package/dist/components/DefaultDocument.js +0 -15
  423. package/dist/components/DefaultDocument.js.map +0 -1
  424. package/dist/debug.d.ts +0 -58
  425. package/dist/debug.d.ts.map +0 -1
  426. package/dist/debug.js +0 -157
  427. package/dist/debug.js.map +0 -1
  428. package/dist/default-error-boundary.d.ts +0 -11
  429. package/dist/default-error-boundary.d.ts.map +0 -1
  430. package/dist/default-error-boundary.js +0 -45
  431. package/dist/default-error-boundary.js.map +0 -1
  432. package/dist/deps/browser.d.ts +0 -2
  433. package/dist/deps/browser.d.ts.map +0 -1
  434. package/dist/deps/browser.js +0 -3
  435. package/dist/deps/browser.js.map +0 -1
  436. package/dist/deps/html-stream-client.d.ts +0 -2
  437. package/dist/deps/html-stream-client.d.ts.map +0 -1
  438. package/dist/deps/html-stream-client.js +0 -3
  439. package/dist/deps/html-stream-client.js.map +0 -1
  440. package/dist/deps/html-stream-server.d.ts +0 -2
  441. package/dist/deps/html-stream-server.d.ts.map +0 -1
  442. package/dist/deps/html-stream-server.js +0 -3
  443. package/dist/deps/html-stream-server.js.map +0 -1
  444. package/dist/deps/rsc.d.ts +0 -2
  445. package/dist/deps/rsc.d.ts.map +0 -1
  446. package/dist/deps/rsc.js +0 -4
  447. package/dist/deps/rsc.js.map +0 -1
  448. package/dist/deps/ssr.d.ts +0 -2
  449. package/dist/deps/ssr.d.ts.map +0 -1
  450. package/dist/deps/ssr.js +0 -3
  451. package/dist/deps/ssr.js.map +0 -1
  452. package/dist/errors.d.ts +0 -174
  453. package/dist/errors.d.ts.map +0 -1
  454. package/dist/errors.js +0 -241
  455. package/dist/errors.js.map +0 -1
  456. package/dist/handle.d.ts +0 -78
  457. package/dist/handle.d.ts.map +0 -1
  458. package/dist/handle.js +0 -82
  459. package/dist/handle.js.map +0 -1
  460. package/dist/handles/MetaTags.d.ts +0 -14
  461. package/dist/handles/MetaTags.d.ts.map +0 -1
  462. package/dist/handles/MetaTags.js +0 -136
  463. package/dist/handles/MetaTags.js.map +0 -1
  464. package/dist/handles/index.d.ts +0 -6
  465. package/dist/handles/index.d.ts.map +0 -1
  466. package/dist/handles/index.js +0 -6
  467. package/dist/handles/index.js.map +0 -1
  468. package/dist/handles/meta.d.ts +0 -39
  469. package/dist/handles/meta.d.ts.map +0 -1
  470. package/dist/handles/meta.js +0 -202
  471. package/dist/handles/meta.js.map +0 -1
  472. package/dist/host/__tests__/errors.test.d.ts +0 -2
  473. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  474. package/dist/host/__tests__/errors.test.js +0 -76
  475. package/dist/host/__tests__/errors.test.js.map +0 -1
  476. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  477. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  478. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  479. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  480. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  481. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  482. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  483. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  484. package/dist/host/__tests__/router.test.d.ts +0 -2
  485. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  486. package/dist/host/__tests__/router.test.js +0 -241
  487. package/dist/host/__tests__/router.test.js.map +0 -1
  488. package/dist/host/__tests__/testing.test.d.ts +0 -2
  489. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  490. package/dist/host/__tests__/testing.test.js +0 -64
  491. package/dist/host/__tests__/testing.test.js.map +0 -1
  492. package/dist/host/__tests__/utils.test.d.ts +0 -2
  493. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  494. package/dist/host/__tests__/utils.test.js +0 -29
  495. package/dist/host/__tests__/utils.test.js.map +0 -1
  496. package/dist/host/cookie-handler.d.ts +0 -34
  497. package/dist/host/cookie-handler.d.ts.map +0 -1
  498. package/dist/host/cookie-handler.js +0 -124
  499. package/dist/host/cookie-handler.js.map +0 -1
  500. package/dist/host/errors.d.ts +0 -56
  501. package/dist/host/errors.d.ts.map +0 -1
  502. package/dist/host/errors.js +0 -79
  503. package/dist/host/errors.js.map +0 -1
  504. package/dist/host/index.d.ts +0 -29
  505. package/dist/host/index.d.ts.map +0 -1
  506. package/dist/host/index.js +0 -32
  507. package/dist/host/index.js.map +0 -1
  508. package/dist/host/pattern-matcher.d.ts +0 -36
  509. package/dist/host/pattern-matcher.d.ts.map +0 -1
  510. package/dist/host/pattern-matcher.js +0 -172
  511. package/dist/host/pattern-matcher.js.map +0 -1
  512. package/dist/host/router.d.ts +0 -26
  513. package/dist/host/router.d.ts.map +0 -1
  514. package/dist/host/router.js +0 -218
  515. package/dist/host/router.js.map +0 -1
  516. package/dist/host/testing.d.ts +0 -36
  517. package/dist/host/testing.d.ts.map +0 -1
  518. package/dist/host/testing.js +0 -55
  519. package/dist/host/testing.js.map +0 -1
  520. package/dist/host/types.d.ts +0 -115
  521. package/dist/host/types.d.ts.map +0 -1
  522. package/dist/host/types.js +0 -7
  523. package/dist/host/types.js.map +0 -1
  524. package/dist/host/utils.d.ts +0 -21
  525. package/dist/host/utils.d.ts.map +0 -1
  526. package/dist/host/utils.js +0 -23
  527. package/dist/host/utils.js.map +0 -1
  528. package/dist/href-client.d.ts +0 -131
  529. package/dist/href-client.d.ts.map +0 -1
  530. package/dist/href-client.js +0 -64
  531. package/dist/href-client.js.map +0 -1
  532. package/dist/href-context.d.ts +0 -29
  533. package/dist/href-context.d.ts.map +0 -1
  534. package/dist/href-context.js +0 -21
  535. package/dist/href-context.js.map +0 -1
  536. package/dist/index.d.ts +0 -73
  537. package/dist/index.d.ts.map +0 -1
  538. package/dist/index.js +0 -91
  539. package/dist/index.js.map +0 -1
  540. package/dist/index.rsc.d.ts +0 -32
  541. package/dist/index.rsc.d.ts.map +0 -1
  542. package/dist/index.rsc.js +0 -40
  543. package/dist/index.rsc.js.map +0 -1
  544. package/dist/internal-debug.d.ts +0 -2
  545. package/dist/internal-debug.d.ts.map +0 -1
  546. package/dist/internal-debug.js +0 -5
  547. package/dist/internal-debug.js.map +0 -1
  548. package/dist/loader.d.ts +0 -14
  549. package/dist/loader.d.ts.map +0 -1
  550. package/dist/loader.js +0 -20
  551. package/dist/loader.js.map +0 -1
  552. package/dist/loader.rsc.d.ts +0 -19
  553. package/dist/loader.rsc.d.ts.map +0 -1
  554. package/dist/loader.rsc.js +0 -99
  555. package/dist/loader.rsc.js.map +0 -1
  556. package/dist/network-error-thrower.d.ts +0 -17
  557. package/dist/network-error-thrower.d.ts.map +0 -1
  558. package/dist/network-error-thrower.js +0 -14
  559. package/dist/network-error-thrower.js.map +0 -1
  560. package/dist/outlet-context.d.ts +0 -13
  561. package/dist/outlet-context.d.ts.map +0 -1
  562. package/dist/outlet-context.js +0 -3
  563. package/dist/outlet-context.js.map +0 -1
  564. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  565. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  566. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  567. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  568. package/dist/prerender/param-hash.d.ts +0 -16
  569. package/dist/prerender/param-hash.d.ts.map +0 -1
  570. package/dist/prerender/param-hash.js +0 -36
  571. package/dist/prerender/param-hash.js.map +0 -1
  572. package/dist/prerender/store.d.ts +0 -38
  573. package/dist/prerender/store.d.ts.map +0 -1
  574. package/dist/prerender/store.js +0 -61
  575. package/dist/prerender/store.js.map +0 -1
  576. package/dist/prerender.d.ts +0 -66
  577. package/dist/prerender.d.ts.map +0 -1
  578. package/dist/prerender.js +0 -57
  579. package/dist/prerender.js.map +0 -1
  580. package/dist/reverse.d.ts +0 -196
  581. package/dist/reverse.d.ts.map +0 -1
  582. package/dist/reverse.js +0 -78
  583. package/dist/reverse.js.map +0 -1
  584. package/dist/root-error-boundary.d.ts +0 -33
  585. package/dist/root-error-boundary.d.ts.map +0 -1
  586. package/dist/root-error-boundary.js +0 -165
  587. package/dist/root-error-boundary.js.map +0 -1
  588. package/dist/route-content-wrapper.d.ts +0 -46
  589. package/dist/route-content-wrapper.d.ts.map +0 -1
  590. package/dist/route-content-wrapper.js +0 -77
  591. package/dist/route-content-wrapper.js.map +0 -1
  592. package/dist/route-definition.d.ts +0 -421
  593. package/dist/route-definition.d.ts.map +0 -1
  594. package/dist/route-definition.js +0 -868
  595. package/dist/route-definition.js.map +0 -1
  596. package/dist/route-map-builder.d.ts +0 -155
  597. package/dist/route-map-builder.d.ts.map +0 -1
  598. package/dist/route-map-builder.js +0 -237
  599. package/dist/route-map-builder.js.map +0 -1
  600. package/dist/route-types.d.ts +0 -165
  601. package/dist/route-types.d.ts.map +0 -1
  602. package/dist/route-types.js +0 -7
  603. package/dist/route-types.js.map +0 -1
  604. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  605. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  606. package/dist/router/__tests__/handler-context.test.js +0 -65
  607. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  608. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  609. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  610. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  611. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  612. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  613. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  614. package/dist/router/__tests__/match-context.test.js +0 -92
  615. package/dist/router/__tests__/match-context.test.js.map +0 -1
  616. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  617. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  618. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  619. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  620. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  621. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  622. package/dist/router/__tests__/match-result.test.js +0 -457
  623. package/dist/router/__tests__/match-result.test.js.map +0 -1
  624. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  625. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  626. package/dist/router/__tests__/on-error.test.js +0 -678
  627. package/dist/router/__tests__/on-error.test.js.map +0 -1
  628. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  629. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  630. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  631. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  632. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  633. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  634. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  635. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  636. package/dist/router/error-handling.d.ts +0 -77
  637. package/dist/router/error-handling.d.ts.map +0 -1
  638. package/dist/router/error-handling.js +0 -202
  639. package/dist/router/error-handling.js.map +0 -1
  640. package/dist/router/handler-context.d.ts +0 -20
  641. package/dist/router/handler-context.d.ts.map +0 -1
  642. package/dist/router/handler-context.js +0 -198
  643. package/dist/router/handler-context.js.map +0 -1
  644. package/dist/router/intercept-resolution.d.ts +0 -66
  645. package/dist/router/intercept-resolution.d.ts.map +0 -1
  646. package/dist/router/intercept-resolution.js +0 -246
  647. package/dist/router/intercept-resolution.js.map +0 -1
  648. package/dist/router/loader-resolution.d.ts +0 -64
  649. package/dist/router/loader-resolution.d.ts.map +0 -1
  650. package/dist/router/loader-resolution.js +0 -284
  651. package/dist/router/loader-resolution.js.map +0 -1
  652. package/dist/router/logging.d.ts +0 -15
  653. package/dist/router/logging.d.ts.map +0 -1
  654. package/dist/router/logging.js +0 -99
  655. package/dist/router/logging.js.map +0 -1
  656. package/dist/router/manifest.d.ts +0 -22
  657. package/dist/router/manifest.d.ts.map +0 -1
  658. package/dist/router/manifest.js +0 -181
  659. package/dist/router/manifest.js.map +0 -1
  660. package/dist/router/match-api.d.ts +0 -35
  661. package/dist/router/match-api.d.ts.map +0 -1
  662. package/dist/router/match-api.js +0 -406
  663. package/dist/router/match-api.js.map +0 -1
  664. package/dist/router/match-context.d.ts +0 -206
  665. package/dist/router/match-context.d.ts.map +0 -1
  666. package/dist/router/match-context.js +0 -17
  667. package/dist/router/match-context.js.map +0 -1
  668. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  669. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  670. package/dist/router/match-middleware/background-revalidation.js +0 -75
  671. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  672. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  673. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  674. package/dist/router/match-middleware/cache-lookup.js +0 -257
  675. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  676. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  677. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  678. package/dist/router/match-middleware/cache-store.js +0 -108
  679. package/dist/router/match-middleware/cache-store.js.map +0 -1
  680. package/dist/router/match-middleware/index.d.ts +0 -81
  681. package/dist/router/match-middleware/index.d.ts.map +0 -1
  682. package/dist/router/match-middleware/index.js +0 -80
  683. package/dist/router/match-middleware/index.js.map +0 -1
  684. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  685. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  686. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  687. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  688. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  689. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  690. package/dist/router/match-middleware/segment-resolution.js +0 -53
  691. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  692. package/dist/router/match-pipelines.d.ts +0 -147
  693. package/dist/router/match-pipelines.d.ts.map +0 -1
  694. package/dist/router/match-pipelines.js +0 -82
  695. package/dist/router/match-pipelines.js.map +0 -1
  696. package/dist/router/match-result.d.ts +0 -126
  697. package/dist/router/match-result.d.ts.map +0 -1
  698. package/dist/router/match-result.js +0 -93
  699. package/dist/router/match-result.js.map +0 -1
  700. package/dist/router/metrics.d.ts +0 -20
  701. package/dist/router/metrics.d.ts.map +0 -1
  702. package/dist/router/metrics.js +0 -47
  703. package/dist/router/metrics.js.map +0 -1
  704. package/dist/router/middleware.d.ts +0 -249
  705. package/dist/router/middleware.d.ts.map +0 -1
  706. package/dist/router/middleware.js +0 -434
  707. package/dist/router/middleware.js.map +0 -1
  708. package/dist/router/middleware.test.d.ts +0 -2
  709. package/dist/router/middleware.test.d.ts.map +0 -1
  710. package/dist/router/middleware.test.js +0 -816
  711. package/dist/router/middleware.test.js.map +0 -1
  712. package/dist/router/pattern-matching.d.ts +0 -149
  713. package/dist/router/pattern-matching.d.ts.map +0 -1
  714. package/dist/router/pattern-matching.js +0 -349
  715. package/dist/router/pattern-matching.js.map +0 -1
  716. package/dist/router/revalidation.d.ts +0 -44
  717. package/dist/router/revalidation.d.ts.map +0 -1
  718. package/dist/router/revalidation.js +0 -147
  719. package/dist/router/revalidation.js.map +0 -1
  720. package/dist/router/router-context.d.ts +0 -135
  721. package/dist/router/router-context.d.ts.map +0 -1
  722. package/dist/router/router-context.js +0 -36
  723. package/dist/router/router-context.js.map +0 -1
  724. package/dist/router/segment-resolution.d.ts +0 -127
  725. package/dist/router/segment-resolution.d.ts.map +0 -1
  726. package/dist/router/segment-resolution.js +0 -919
  727. package/dist/router/segment-resolution.js.map +0 -1
  728. package/dist/router/trie-matching.d.ts +0 -40
  729. package/dist/router/trie-matching.d.ts.map +0 -1
  730. package/dist/router/trie-matching.js +0 -127
  731. package/dist/router/trie-matching.js.map +0 -1
  732. package/dist/router/types.d.ts +0 -136
  733. package/dist/router/types.d.ts.map +0 -1
  734. package/dist/router/types.js +0 -7
  735. package/dist/router/types.js.map +0 -1
  736. package/dist/router.d.ts +0 -753
  737. package/dist/router.d.ts.map +0 -1
  738. package/dist/router.gen.d.ts +0 -6
  739. package/dist/router.gen.d.ts.map +0 -1
  740. package/dist/router.gen.js +0 -6
  741. package/dist/router.gen.js.map +0 -1
  742. package/dist/router.js +0 -1304
  743. package/dist/router.js.map +0 -1
  744. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  745. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  746. package/dist/rsc/__tests__/helpers.test.js +0 -140
  747. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  748. package/dist/rsc/handler.d.ts +0 -45
  749. package/dist/rsc/handler.d.ts.map +0 -1
  750. package/dist/rsc/handler.js +0 -1172
  751. package/dist/rsc/handler.js.map +0 -1
  752. package/dist/rsc/helpers.d.ts +0 -16
  753. package/dist/rsc/helpers.d.ts.map +0 -1
  754. package/dist/rsc/helpers.js +0 -55
  755. package/dist/rsc/helpers.js.map +0 -1
  756. package/dist/rsc/index.d.ts +0 -22
  757. package/dist/rsc/index.d.ts.map +0 -1
  758. package/dist/rsc/index.js +0 -23
  759. package/dist/rsc/index.js.map +0 -1
  760. package/dist/rsc/nonce.d.ts +0 -9
  761. package/dist/rsc/nonce.d.ts.map +0 -1
  762. package/dist/rsc/nonce.js +0 -18
  763. package/dist/rsc/nonce.js.map +0 -1
  764. package/dist/rsc/types.d.ts +0 -206
  765. package/dist/rsc/types.d.ts.map +0 -1
  766. package/dist/rsc/types.js +0 -8
  767. package/dist/rsc/types.js.map +0 -1
  768. package/dist/search-params.d.ts +0 -103
  769. package/dist/search-params.d.ts.map +0 -1
  770. package/dist/search-params.js +0 -74
  771. package/dist/search-params.js.map +0 -1
  772. package/dist/segment-system.d.ts +0 -75
  773. package/dist/segment-system.d.ts.map +0 -1
  774. package/dist/segment-system.js +0 -336
  775. package/dist/segment-system.js.map +0 -1
  776. package/dist/server/context.d.ts +0 -245
  777. package/dist/server/context.d.ts.map +0 -1
  778. package/dist/server/context.js +0 -197
  779. package/dist/server/context.js.map +0 -1
  780. package/dist/server/fetchable-loader-store.d.ts +0 -18
  781. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  782. package/dist/server/fetchable-loader-store.js +0 -18
  783. package/dist/server/fetchable-loader-store.js.map +0 -1
  784. package/dist/server/handle-store.d.ts +0 -85
  785. package/dist/server/handle-store.d.ts.map +0 -1
  786. package/dist/server/handle-store.js +0 -142
  787. package/dist/server/handle-store.js.map +0 -1
  788. package/dist/server/loader-registry.d.ts +0 -55
  789. package/dist/server/loader-registry.d.ts.map +0 -1
  790. package/dist/server/loader-registry.js +0 -132
  791. package/dist/server/loader-registry.js.map +0 -1
  792. package/dist/server/request-context.d.ts +0 -226
  793. package/dist/server/request-context.d.ts.map +0 -1
  794. package/dist/server/request-context.js +0 -290
  795. package/dist/server/request-context.js.map +0 -1
  796. package/dist/server/root-layout.d.ts +0 -4
  797. package/dist/server/root-layout.d.ts.map +0 -1
  798. package/dist/server/root-layout.js +0 -5
  799. package/dist/server/root-layout.js.map +0 -1
  800. package/dist/server.d.ts +0 -15
  801. package/dist/server.d.ts.map +0 -1
  802. package/dist/server.js +0 -20
  803. package/dist/server.js.map +0 -1
  804. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  805. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  806. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  807. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  808. package/dist/ssr/index.d.ts +0 -98
  809. package/dist/ssr/index.d.ts.map +0 -1
  810. package/dist/ssr/index.js +0 -158
  811. package/dist/ssr/index.js.map +0 -1
  812. package/dist/static-handler.d.ts +0 -50
  813. package/dist/static-handler.d.ts.map +0 -1
  814. package/dist/static-handler.gen.d.ts +0 -5
  815. package/dist/static-handler.gen.d.ts.map +0 -1
  816. package/dist/static-handler.gen.js +0 -5
  817. package/dist/static-handler.gen.js.map +0 -1
  818. package/dist/static-handler.js +0 -29
  819. package/dist/static-handler.js.map +0 -1
  820. package/dist/theme/ThemeProvider.d.ts +0 -20
  821. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  822. package/dist/theme/ThemeProvider.js +0 -240
  823. package/dist/theme/ThemeProvider.js.map +0 -1
  824. package/dist/theme/ThemeScript.d.ts +0 -48
  825. package/dist/theme/ThemeScript.d.ts.map +0 -1
  826. package/dist/theme/ThemeScript.js +0 -13
  827. package/dist/theme/ThemeScript.js.map +0 -1
  828. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  829. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  830. package/dist/theme/__tests__/theme.test.js +0 -103
  831. package/dist/theme/__tests__/theme.test.js.map +0 -1
  832. package/dist/theme/constants.d.ts +0 -29
  833. package/dist/theme/constants.d.ts.map +0 -1
  834. package/dist/theme/constants.js +0 -48
  835. package/dist/theme/constants.js.map +0 -1
  836. package/dist/theme/index.d.ts +0 -31
  837. package/dist/theme/index.d.ts.map +0 -1
  838. package/dist/theme/index.js +0 -36
  839. package/dist/theme/index.js.map +0 -1
  840. package/dist/theme/theme-context.d.ts +0 -40
  841. package/dist/theme/theme-context.d.ts.map +0 -1
  842. package/dist/theme/theme-context.js +0 -60
  843. package/dist/theme/theme-context.js.map +0 -1
  844. package/dist/theme/theme-script.d.ts +0 -27
  845. package/dist/theme/theme-script.d.ts.map +0 -1
  846. package/dist/theme/theme-script.js +0 -147
  847. package/dist/theme/theme-script.js.map +0 -1
  848. package/dist/theme/types.d.ts +0 -163
  849. package/dist/theme/types.d.ts.map +0 -1
  850. package/dist/theme/types.js +0 -11
  851. package/dist/theme/types.js.map +0 -1
  852. package/dist/theme/use-theme.d.ts +0 -12
  853. package/dist/theme/use-theme.d.ts.map +0 -1
  854. package/dist/theme/use-theme.js +0 -40
  855. package/dist/theme/use-theme.js.map +0 -1
  856. package/dist/types.d.ts +0 -1479
  857. package/dist/types.d.ts.map +0 -1
  858. package/dist/types.js +0 -10
  859. package/dist/types.js.map +0 -1
  860. package/dist/urls.d.ts +0 -441
  861. package/dist/urls.d.ts.map +0 -1
  862. package/dist/urls.gen.d.ts +0 -8
  863. package/dist/urls.gen.d.ts.map +0 -1
  864. package/dist/urls.gen.js +0 -8
  865. package/dist/urls.gen.js.map +0 -1
  866. package/dist/urls.js +0 -443
  867. package/dist/urls.js.map +0 -1
  868. package/dist/use-loader.d.ts +0 -127
  869. package/dist/use-loader.d.ts.map +0 -1
  870. package/dist/use-loader.js +0 -237
  871. package/dist/use-loader.js.map +0 -1
  872. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  873. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  874. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  875. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  876. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  877. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  878. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  879. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  880. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  881. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  882. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  883. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  884. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  885. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  886. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  887. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  888. package/dist/vite/ast-handler-extract.d.ts +0 -49
  889. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  890. package/dist/vite/ast-handler-extract.js +0 -249
  891. package/dist/vite/ast-handler-extract.js.map +0 -1
  892. package/dist/vite/expose-action-id.d.ts +0 -19
  893. package/dist/vite/expose-action-id.d.ts.map +0 -1
  894. package/dist/vite/expose-action-id.js +0 -250
  895. package/dist/vite/expose-action-id.js.map +0 -1
  896. package/dist/vite/expose-id-utils.d.ts +0 -69
  897. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  898. package/dist/vite/expose-id-utils.js +0 -289
  899. package/dist/vite/expose-id-utils.js.map +0 -1
  900. package/dist/vite/expose-internal-ids.d.ts +0 -22
  901. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  902. package/dist/vite/expose-internal-ids.js +0 -886
  903. package/dist/vite/expose-internal-ids.js.map +0 -1
  904. package/dist/vite/index.d.ts +0 -149
  905. package/dist/vite/index.d.ts.map +0 -1
  906. package/dist/vite/index.js.map +0 -1
  907. package/dist/vite/index.named-routes.gen.ts +0 -103
  908. package/dist/vite/package-resolution.d.ts +0 -43
  909. package/dist/vite/package-resolution.d.ts.map +0 -1
  910. package/dist/vite/package-resolution.js +0 -112
  911. package/dist/vite/package-resolution.js.map +0 -1
  912. package/dist/vite/virtual-entries.d.ts +0 -25
  913. package/dist/vite/virtual-entries.d.ts.map +0 -1
  914. package/dist/vite/virtual-entries.js +0 -110
  915. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,198 +0,0 @@
1
- /**
2
- * Router Handler Context
3
- *
4
- * Creates the handler context object passed to route handlers, middleware, and loaders.
5
- */
6
- import { getRequestContext } from "../server/request-context.js";
7
- import { getSearchSchema } from "../route-map-builder.js";
8
- import { parseSearchParams, serializeSearchParams } from "../search-params.js";
9
- /**
10
- * Resolve route name with namespace prefix support.
11
- * Supports local names, absolute names (dot notation), and path-based URLs.
12
- */
13
- function resolveRouteName(name, routeMap, currentRoutePrefix) {
14
- // 1. Path-based - starts with /
15
- if (name.startsWith("/")) {
16
- return name;
17
- }
18
- // 2. Absolute name - already has a dot (e.g., "shop.cart")
19
- if (name.includes(".")) {
20
- return routeMap[name];
21
- }
22
- // 3. Local name - try with current prefix first, then fall back to direct lookup
23
- if (currentRoutePrefix) {
24
- // Extract the prefix from current route name
25
- // e.g., "blog.posts.detail" → prefix is "blog.posts"
26
- const lastDot = currentRoutePrefix.lastIndexOf(".");
27
- const prefix = lastDot > 0 ? currentRoutePrefix.substring(0, lastDot) : currentRoutePrefix;
28
- // Try prefixed name
29
- const prefixedName = `${prefix}.${name}`;
30
- if (routeMap[prefixedName] !== undefined) {
31
- return routeMap[prefixedName];
32
- }
33
- // If current route is a nested include, try parent prefixes
34
- // e.g., for "blog.posts.detail", try "blog.posts.index", then "blog.index"
35
- let currentPrefix = prefix;
36
- while (currentPrefix.includes(".")) {
37
- const parentDot = currentPrefix.lastIndexOf(".");
38
- currentPrefix = currentPrefix.substring(0, parentDot);
39
- const parentPrefixedName = `${currentPrefix}.${name}`;
40
- if (routeMap[parentPrefixedName] !== undefined) {
41
- return routeMap[parentPrefixedName];
42
- }
43
- }
44
- }
45
- // Fall back to direct lookup (route without prefix)
46
- return routeMap[name];
47
- }
48
- /**
49
- * Create HandlerContext with typed env/var/get/set
50
- */
51
- export function createHandlerContext(params, request, searchParams, pathname, url, bindings = {}, routeMap = {}, routeName) {
52
- // Get variables from request context - this is the unified context
53
- // shared between middleware and route handlers
54
- const requestContext = getRequestContext();
55
- const variables = requestContext?.var ?? {};
56
- // Filter system parameters (starting with _rsc) from searchParams
57
- // This ensures handlers only see user-facing query params
58
- const cleanSearchParams = new URLSearchParams();
59
- searchParams.forEach((value, key) => {
60
- if (!key.startsWith("_rsc")) {
61
- cleanSearchParams.append(key, value);
62
- }
63
- });
64
- // Create clean URL without system params
65
- const cleanUrl = new URL(url);
66
- cleanUrl.search = cleanSearchParams.toString();
67
- // If route has a search schema, parse URLSearchParams into typed object
68
- const searchSchema = routeName ? getSearchSchema(routeName) : undefined;
69
- const resolvedSearchParams = searchSchema
70
- ? parseSearchParams(cleanSearchParams, searchSchema)
71
- : cleanSearchParams;
72
- // Get stub response from request context for setting headers
73
- const stubResponse = requestContext?.res ?? new Response(null, { status: 200 });
74
- return {
75
- params,
76
- request,
77
- searchParams: resolvedSearchParams, // Filtered params (typed object or URLSearchParams)
78
- pathname,
79
- url: cleanUrl, // Clean URL
80
- env: bindings,
81
- var: variables,
82
- get: ((key) => variables[key]),
83
- set: ((key, value) => {
84
- variables[key] = value;
85
- }),
86
- _originalRequest: request, // Raw request for advanced use
87
- res: stubResponse, // Stub response for setting headers
88
- headers: stubResponse.headers, // Shorthand for res.headers
89
- // Placeholder use() - will be replaced with actual implementation during request
90
- use: () => {
91
- throw new Error("ctx.use() called before loaders were initialized");
92
- },
93
- // Theme support (when enabled via router config)
94
- theme: requestContext?.theme,
95
- setTheme: requestContext?.setTheme,
96
- // Scoped reverse for URL generation
97
- reverse: (name, hrefParams, search) => {
98
- // Path-based - return directly (optionally with param substitution)
99
- if (name.startsWith("/")) {
100
- let result = name;
101
- if (hrefParams) {
102
- result = result.replace(/:([^/]+)/g, (_, key) => {
103
- const value = hrefParams[key];
104
- if (value === undefined) {
105
- throw new Error(`Missing param "${key}" for path "${name}"`);
106
- }
107
- return encodeURIComponent(value);
108
- });
109
- }
110
- if (search) {
111
- const qs = serializeSearchParams(search);
112
- if (qs)
113
- result += `?${qs}`;
114
- }
115
- return result;
116
- }
117
- // Resolve route name with namespace support
118
- const pattern = resolveRouteName(name, routeMap, routeName);
119
- if (pattern === undefined) {
120
- throw new Error(`Unknown route: "${name}"${routeName ? ` (current route: ${routeName})` : ""}`);
121
- }
122
- let result = pattern;
123
- // Substitute params
124
- if (hrefParams) {
125
- result = result.replace(/:([^/]+)/g, (_, key) => {
126
- const value = hrefParams[key];
127
- if (value === undefined) {
128
- throw new Error(`Missing param "${key}" for route "${name}"`);
129
- }
130
- return encodeURIComponent(value);
131
- });
132
- }
133
- // Append search params as query string
134
- if (search) {
135
- const qs = serializeSearchParams(search);
136
- if (qs)
137
- result += `?${qs}`;
138
- }
139
- return result;
140
- },
141
- };
142
- }
143
- /**
144
- * Create a BuildContext for pre-rendering.
145
- *
146
- * Returns a HandlerContext-compatible object where params, pathname, url,
147
- * and use(handle) work, but request/env/headers/cookies/var/searchParams
148
- * throw with a clear error. Loaders are not available during pre-rendering.
149
- */
150
- export function createBuildContext(params, pathname, handleStore) {
151
- const syntheticUrl = new URL(`http://prerender${pathname}`);
152
- function throwUnavailable(prop) {
153
- throw new Error(`Property "${prop}" is not available during pre-rendering. ` +
154
- `Fetch data directly in the handler or use a passthrough prerender handler.`);
155
- }
156
- return {
157
- params,
158
- get request() {
159
- return throwUnavailable("request");
160
- },
161
- get searchParams() {
162
- return throwUnavailable("searchParams");
163
- },
164
- pathname,
165
- url: syntheticUrl,
166
- get env() {
167
- return throwUnavailable("env");
168
- },
169
- get var() {
170
- return throwUnavailable("var");
171
- },
172
- get: (() => {
173
- throwUnavailable("get");
174
- }),
175
- set: (() => {
176
- throwUnavailable("set");
177
- }),
178
- get _originalRequest() {
179
- return throwUnavailable("request");
180
- },
181
- get res() {
182
- return throwUnavailable("res");
183
- },
184
- get headers() {
185
- return throwUnavailable("headers");
186
- },
187
- // Placeholder use() - replaced by setupBuildUse
188
- use: () => {
189
- throw new Error("ctx.use() called before build context was initialized");
190
- },
191
- theme: undefined,
192
- setTheme: undefined,
193
- reverse: () => {
194
- throwUnavailable("reverse");
195
- },
196
- };
197
- }
198
- //# sourceMappingURL=handler-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handler-context.js","sourceRoot":"","sources":["../../src/router/handler-context.ts"],"names":[],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- /**
2
- * Intercept Resolution
3
- *
4
- * Extracted from createRouter closure. Contains intercept detection and resolution
5
- * functions for soft navigation (modals).
6
- */
7
- import type { EntryData, InterceptEntry, InterceptSelectorContext } from "../server/context";
8
- import type { HandlerContext, ResolvedSegment } from "../types";
9
- import type { SegmentResolutionDeps } from "./types.js";
10
- /**
11
- * Check if an intercept's when conditions are satisfied.
12
- * All when() functions must return true for the intercept to activate.
13
- * If no when() conditions are defined, the intercept always activates.
14
- *
15
- * During action revalidation, when() is NOT evaluated.
16
- */
17
- export declare function evaluateInterceptWhen(intercept: InterceptEntry, selectorContext: InterceptSelectorContext | null, isAction: boolean): boolean;
18
- /**
19
- * Find an intercept for the target route by walking up the entry chain.
20
- * Returns the first (innermost) matching intercept along with the entry that defines it.
21
- */
22
- export declare function findInterceptForRoute(targetRouteKey: string, fromEntry: EntryData | null, selectorContext?: InterceptSelectorContext | null, isAction?: boolean): {
23
- intercept: InterceptEntry;
24
- entry: EntryData;
25
- } | null;
26
- /**
27
- * Resolve an intercept entry and emit segment with the slot name.
28
- */
29
- export declare function resolveInterceptEntry<TEnv>(interceptEntry: InterceptEntry, parentEntry: EntryData, params: Record<string, string>, context: HandlerContext<any, TEnv>, belongsToRoute: boolean, deps: SegmentResolutionDeps<TEnv>, revalidationContext?: {
30
- clientSegmentIds: Set<string>;
31
- prevParams: Record<string, string>;
32
- request: Request;
33
- prevUrl: URL;
34
- nextUrl: URL;
35
- routeKey: string;
36
- actionContext?: {
37
- actionId?: string;
38
- actionUrl?: URL;
39
- actionResult?: any;
40
- formData?: FormData;
41
- };
42
- stale?: boolean;
43
- }): Promise<ResolvedSegment[]>;
44
- /**
45
- * Resolve only the loaders for a cached intercept segment.
46
- * Used on intercept cache hit to get fresh loader data while keeping cached component/layout.
47
- */
48
- export declare function resolveInterceptLoadersOnly<TEnv>(interceptEntry: InterceptEntry, parentEntry: EntryData, params: Record<string, string>, context: HandlerContext<any, TEnv>, belongsToRoute: boolean, deps: SegmentResolutionDeps<TEnv>, revalidationContext: {
49
- clientSegmentIds: Set<string>;
50
- prevParams: Record<string, string>;
51
- request: Request;
52
- prevUrl: URL;
53
- nextUrl: URL;
54
- routeKey: string;
55
- actionContext?: {
56
- actionId?: string;
57
- actionUrl?: URL;
58
- actionResult?: any;
59
- formData?: FormData;
60
- };
61
- stale?: boolean;
62
- }): Promise<{
63
- loaderDataPromise: Promise<any[]> | any[];
64
- loaderIds: string[];
65
- } | null>;
66
- //# sourceMappingURL=intercept-resolution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intercept-resolution.d.ts","sourceRoot":"","sources":["../../src/router/intercept-resolution.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAKhE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGxD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,cAAc,EACzB,eAAe,EAAE,wBAAwB,GAAG,IAAI,EAChD,QAAQ,EAAE,OAAO,GAChB,OAAO,CAcT;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,SAAS,GAAG,IAAI,EAC3B,eAAe,GAAE,wBAAwB,GAAG,IAAW,EACvD,QAAQ,GAAE,OAAe,GACxB;IAAE,SAAS,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAAG,IAAI,CAkCxD;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAC9C,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EAClC,cAAc,EAAE,OAAO,EACvB,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,EACjC,mBAAmB,CAAC,EAAE;IACpB,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GACA,OAAO,CAAC,eAAe,EAAE,CAAC,CAyJ5B;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,IAAI,EACpD,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EAClC,cAAc,EAAE,OAAO,EACvB,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,EACjC,mBAAmB,EAAE;IACnB,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GACA,OAAO,CAAC;IACT,iBAAiB,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;IAC1C,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,GAAG,IAAI,CAAC,CAuFR"}
@@ -1,246 +0,0 @@
1
- /**
2
- * Intercept Resolution
3
- *
4
- * Extracted from createRouter closure. Contains intercept detection and resolution
5
- * functions for soft navigation (modals).
6
- */
7
- import { evaluateRevalidation } from "./revalidation.js";
8
- import { getRequestContext } from "../server/request-context.js";
9
- import { executeInterceptMiddleware } from "./middleware.js";
10
- import { handleHandlerResult } from "./segment-resolution.js";
11
- import { debugLog } from "./logging.js";
12
- /**
13
- * Check if an intercept's when conditions are satisfied.
14
- * All when() functions must return true for the intercept to activate.
15
- * If no when() conditions are defined, the intercept always activates.
16
- *
17
- * During action revalidation, when() is NOT evaluated.
18
- */
19
- export function evaluateInterceptWhen(intercept, selectorContext, isAction) {
20
- if (isAction) {
21
- return true;
22
- }
23
- if (!intercept.when || intercept.when.length === 0) {
24
- return true;
25
- }
26
- if (!selectorContext) {
27
- return false;
28
- }
29
- return intercept.when.every((fn) => fn(selectorContext));
30
- }
31
- /**
32
- * Find an intercept for the target route by walking up the entry chain.
33
- * Returns the first (innermost) matching intercept along with the entry that defines it.
34
- */
35
- export function findInterceptForRoute(targetRouteKey, fromEntry, selectorContext = null, isAction = false) {
36
- let current = fromEntry;
37
- while (current) {
38
- if (current.intercept && current.intercept.length > 0) {
39
- for (const intercept of current.intercept) {
40
- if (intercept.routeName === targetRouteKey &&
41
- evaluateInterceptWhen(intercept, selectorContext, isAction)) {
42
- return { intercept, entry: current };
43
- }
44
- }
45
- }
46
- if (current.layout && current.layout.length > 0) {
47
- for (const siblingLayout of current.layout) {
48
- if (siblingLayout.intercept && siblingLayout.intercept.length > 0) {
49
- for (const intercept of siblingLayout.intercept) {
50
- if (intercept.routeName === targetRouteKey &&
51
- evaluateInterceptWhen(intercept, selectorContext, isAction)) {
52
- return { intercept, entry: siblingLayout };
53
- }
54
- }
55
- }
56
- }
57
- }
58
- current = current.parent;
59
- }
60
- return null;
61
- }
62
- /**
63
- * Resolve an intercept entry and emit segment with the slot name.
64
- */
65
- export async function resolveInterceptEntry(interceptEntry, parentEntry, params, context, belongsToRoute, deps, revalidationContext) {
66
- const segments = [];
67
- if (interceptEntry.middleware.length > 0) {
68
- const requestCtx = getRequestContext();
69
- if (!requestCtx?.res) {
70
- throw new Error("Request context with stubResponse is required for intercept middleware");
71
- }
72
- const middlewareResponse = await executeInterceptMiddleware(interceptEntry.middleware, context.request, context.env, params, context.var, requestCtx.res);
73
- if (middlewareResponse)
74
- throw middlewareResponse;
75
- }
76
- const loaderPromises = [];
77
- const loaderIds = [];
78
- for (let i = 0; i < interceptEntry.loader.length; i++) {
79
- const { loader, revalidate: loaderRevalidateFns } = interceptEntry.loader[i];
80
- const segmentId = `${parentEntry.shortCode}.${interceptEntry.slotName}D${i}.${loader.$$id}`;
81
- if (revalidationContext) {
82
- const { clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, actionContext, stale, } = revalidationContext;
83
- const interceptSegmentId = `${parentEntry.shortCode}.${interceptEntry.slotName}`;
84
- if (clientSegmentIds.has(interceptSegmentId)) {
85
- const dummySegment = {
86
- id: segmentId,
87
- namespace: `intercept:${interceptEntry.routeName}`,
88
- type: "loader",
89
- index: i,
90
- component: null,
91
- params,
92
- loaderId: loader.$$id,
93
- belongsToRoute,
94
- };
95
- const shouldRevalidate = await evaluateRevalidation({
96
- segment: dummySegment,
97
- prevParams,
98
- getPrevSegment: null,
99
- request,
100
- prevUrl,
101
- nextUrl,
102
- revalidations: loaderRevalidateFns.map((fn, j) => ({
103
- name: `intercept-loader-revalidate${j}`,
104
- fn,
105
- })),
106
- routeKey,
107
- context,
108
- actionContext,
109
- stale,
110
- });
111
- if (!shouldRevalidate) {
112
- debugLog("intercept.loader", "skipped revalidation", {
113
- loaderId: loader.$$id,
114
- });
115
- continue;
116
- }
117
- debugLog("intercept.loader", "revalidating", {
118
- loaderId: loader.$$id,
119
- stale,
120
- });
121
- }
122
- }
123
- loaderIds.push(loader.$$id);
124
- loaderPromises.push(deps.wrapLoaderPromise(context.use(loader), parentEntry, segmentId, context.pathname));
125
- }
126
- const handlerResult = typeof interceptEntry.handler === "function"
127
- ? handleHandlerResult(interceptEntry.handler(context))
128
- : interceptEntry.handler;
129
- let layoutElement;
130
- if (interceptEntry.layout) {
131
- if (typeof interceptEntry.layout === "function") {
132
- const layoutResult = await interceptEntry.layout(context);
133
- if (layoutResult instanceof Response) {
134
- throw layoutResult;
135
- }
136
- layoutElement = layoutResult;
137
- }
138
- else {
139
- layoutElement = interceptEntry.layout;
140
- }
141
- }
142
- let component;
143
- let loaderDataPromise;
144
- if (interceptEntry.loading && loaderPromises.length > 0) {
145
- component =
146
- handlerResult instanceof Promise
147
- ? handlerResult
148
- : Promise.resolve(handlerResult);
149
- loaderDataPromise = Promise.all(loaderPromises);
150
- }
151
- else if (loaderPromises.length > 0) {
152
- loaderDataPromise = await Promise.all(loaderPromises);
153
- component =
154
- handlerResult instanceof Promise ? await handlerResult : handlerResult;
155
- }
156
- else {
157
- component =
158
- interceptEntry.loading && handlerResult instanceof Promise
159
- ? handlerResult
160
- : handlerResult instanceof Promise
161
- ? await handlerResult
162
- : handlerResult;
163
- }
164
- const interceptSegment = {
165
- id: `${parentEntry.shortCode}.${interceptEntry.slotName}`,
166
- namespace: `intercept:${interceptEntry.routeName}`,
167
- type: "parallel",
168
- index: 0,
169
- component,
170
- loading: interceptEntry.loading === false ? null : interceptEntry.loading,
171
- layout: layoutElement,
172
- params,
173
- slot: interceptEntry.slotName,
174
- belongsToRoute,
175
- parallelName: `intercept:${interceptEntry.routeName}.${interceptEntry.slotName}`,
176
- loaderDataPromise,
177
- loaderIds: loaderIds.length > 0 ? loaderIds : undefined,
178
- };
179
- segments.push(interceptSegment);
180
- return segments;
181
- }
182
- /**
183
- * Resolve only the loaders for a cached intercept segment.
184
- * Used on intercept cache hit to get fresh loader data while keeping cached component/layout.
185
- */
186
- export async function resolveInterceptLoadersOnly(interceptEntry, parentEntry, params, context, belongsToRoute, deps, revalidationContext) {
187
- if (interceptEntry.loader.length === 0) {
188
- return null;
189
- }
190
- const loaderPromises = [];
191
- const loaderIds = [];
192
- const { clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, actionContext, stale, } = revalidationContext;
193
- for (let i = 0; i < interceptEntry.loader.length; i++) {
194
- const { loader, revalidate: loaderRevalidateFns } = interceptEntry.loader[i];
195
- const segmentId = `${parentEntry.shortCode}.${interceptEntry.slotName}D${i}.${loader.$$id}`;
196
- const interceptSegmentId = `${parentEntry.shortCode}.${interceptEntry.slotName}`;
197
- if (clientSegmentIds.has(interceptSegmentId)) {
198
- const dummySegment = {
199
- id: segmentId,
200
- namespace: `intercept:${interceptEntry.routeName}`,
201
- type: "loader",
202
- index: i,
203
- component: null,
204
- params,
205
- loaderId: loader.$$id,
206
- belongsToRoute,
207
- };
208
- const shouldRevalidate = await evaluateRevalidation({
209
- segment: dummySegment,
210
- prevParams,
211
- getPrevSegment: null,
212
- request,
213
- prevUrl,
214
- nextUrl,
215
- revalidations: loaderRevalidateFns.map((fn, j) => ({
216
- name: `intercept-loader-revalidate${j}`,
217
- fn,
218
- })),
219
- routeKey,
220
- context,
221
- actionContext,
222
- stale,
223
- });
224
- if (!shouldRevalidate) {
225
- debugLog("intercept.loader", "skipped on cache hit", {
226
- loaderId: loader.$$id,
227
- });
228
- continue;
229
- }
230
- debugLog("intercept.loader", "revalidating on cache hit", {
231
- loaderId: loader.$$id,
232
- stale,
233
- });
234
- }
235
- loaderIds.push(loader.$$id);
236
- loaderPromises.push(deps.wrapLoaderPromise(context.use(loader), parentEntry, segmentId, context.pathname));
237
- }
238
- if (loaderPromises.length === 0) {
239
- return null;
240
- }
241
- const loaderDataPromise = interceptEntry.loading !== undefined
242
- ? Promise.all(loaderPromises)
243
- : await Promise.all(loaderPromises);
244
- return { loaderDataPromise, loaderIds };
245
- }
246
- //# sourceMappingURL=intercept-resolution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intercept-resolution.js","sourceRoot":"","sources":["../../src/router/intercept-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,64 +0,0 @@
1
- /**
2
- * Router Loader Resolution
3
- *
4
- * Loader execution, memoization, and error handling utilities.
5
- */
6
- import type { ReactNode } from "react";
7
- import type { EntryData } from "../server/context";
8
- import type { HandlerContext, LoaderDataResult, ErrorBoundaryHandler, ErrorInfo } from "../types";
9
- /**
10
- * Internal callback signature for loader error notifications.
11
- * This is a simplified callback for internal use in wrapLoaderWithErrorHandling.
12
- * The caller (wrapLoaderPromise in router.ts) bridges this to the full OnErrorCallback.
13
- */
14
- export type LoaderErrorCallback = (error: unknown, context: {
15
- segmentId: string;
16
- loaderName: string;
17
- handledByBoundary: boolean;
18
- }) => void;
19
- /**
20
- * Wrap a loader promise with error handling for deferred client-side resolution.
21
- * Catches errors and converts them to LoaderDataResult objects that include
22
- * error info and pre-rendered fallback UI when an error boundary is available.
23
- *
24
- * @param onError - Optional callback invoked when loader errors occur.
25
- * This has a simplified signature for internal use - the caller (typically
26
- * wrapLoaderPromise in router.ts) is responsible for bridging to the full
27
- * OnErrorCallback with complete request context (request, url, env, etc.).
28
- */
29
- export declare function wrapLoaderWithErrorHandling<T>(promise: Promise<T>, entry: EntryData, segmentId: string, pathname: string, findNearestErrorBoundary: (entry: EntryData | null) => ReactNode | ErrorBoundaryHandler | null, createErrorInfo: (error: unknown, segmentId: string, segmentType: ErrorInfo["segmentType"]) => ErrorInfo, onError?: LoaderErrorCallback): Promise<LoaderDataResult<T>>;
30
- /**
31
- * Set up the use() method on handler context to access loaders and handles.
32
- *
33
- * For loaders: Lazily runs loaders, memoizes results per request.
34
- * For handles: Returns a push function bound to the current segment.
35
- *
36
- * Includes cycle detection: tracks dependency edges between loaders and
37
- * throws on circular dependencies to prevent deadlocks.
38
- */
39
- export declare function setupLoaderAccess<TEnv>(ctx: HandlerContext<any, TEnv>, loaderPromises: Map<string, Promise<any>>): void;
40
- /**
41
- * Set up ctx.use() for pre-rendering (build-time).
42
- * Handles push to HandleStore; loaders throw with a clear error.
43
- */
44
- export declare function setupBuildUse<TEnv>(ctx: HandlerContext<any, TEnv>): void;
45
- /**
46
- * Set up ctx.use() for proactive caching (silent mode).
47
- * Handles are silently ignored (no push to HandleStore).
48
- * Loaders work normally but with fresh memoization and cycle detection.
49
- *
50
- * This prevents duplicate handle data (breadcrumbs, meta) from being
51
- * pushed to the response stream during background proactive caching.
52
- */
53
- export declare function setupLoaderAccessSilent<TEnv>(ctx: HandlerContext<any, TEnv>, loaderPromises: Map<string, Promise<any>>): void;
54
- /**
55
- * Conditional execution based on revalidation
56
- * Evaluates revalidation logic lazily, then executes appropriate callback
57
- *
58
- * @param shouldRevalidate - Async function that determines if revalidation is needed
59
- * @param onRevalidate - Callback executed if revalidation returns true
60
- * @param onSkip - Callback executed if revalidation returns false
61
- * @returns Result from either onRevalidate or onSkip
62
- */
63
- export declare function revalidate<T>(shouldRevalidate: () => Promise<boolean>, onRevalidate: () => Promise<T>, onSkip: () => T): Promise<T>;
64
- //# sourceMappingURL=loader-resolution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"loader-resolution.d.ts","sourceRoot":"","sources":["../../src/router/loader-resolution.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAEV,cAAc,EAId,gBAAgB,EAChB,oBAAoB,EAEpB,SAAS,EACV,MAAM,UAAU,CAAC;AAQlB;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAChC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;IACP,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,KACE,IAAI,CAAC;AAEV;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAC3C,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,wBAAwB,EAAE,CACxB,KAAK,EAAE,SAAS,GAAG,IAAI,KACpB,SAAS,GAAG,oBAAoB,GAAG,IAAI,EAC5C,eAAe,EAAE,CACf,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,SAAS,CAAC,aAAa,CAAC,KAClC,SAAS,EACd,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CA6D9B;AAgJD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EACpC,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EAC9B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GACxC,IAAI,CAiCN;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAChC,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,GAC7B,IAAI,CAsCN;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAC1C,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EAC9B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GACxC,IAAI,CAWN;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EACxC,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC9B,MAAM,EAAE,MAAM,CAAC,GACd,OAAO,CAAC,CAAC,CAAC,CAGZ"}