@rangojs/router 0.0.0-experimental.49 → 0.0.0-experimental.4ffa0f9b

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