@rangojs/router 0.0.0-experimental.0da83ed6 → 0.0.0-experimental.0e02cd4e

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 (906) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +689 -361
  4. package/package.json +2 -2
  5. package/skills/links/SKILL.md +3 -1
  6. package/skills/middleware/SKILL.md +2 -0
  7. package/skills/prerender/SKILL.md +110 -68
  8. package/skills/router-setup/SKILL.md +35 -0
  9. package/src/__internal.ts +1 -1
  10. package/src/browser/app-version.ts +14 -0
  11. package/src/browser/navigation-bridge.ts +16 -3
  12. package/src/browser/navigation-client.ts +86 -63
  13. package/src/browser/navigation-store.ts +43 -8
  14. package/src/browser/partial-update.ts +27 -5
  15. package/src/browser/prefetch/cache.ts +21 -6
  16. package/src/browser/prefetch/fetch.ts +46 -6
  17. package/src/browser/react/Link.tsx +58 -8
  18. package/src/browser/react/NavigationProvider.tsx +8 -1
  19. package/src/browser/react/context.ts +7 -2
  20. package/src/browser/react/use-handle.ts +9 -58
  21. package/src/browser/react/use-router.ts +21 -8
  22. package/src/browser/rsc-router.tsx +26 -3
  23. package/src/browser/scroll-restoration.ts +10 -8
  24. package/src/browser/server-action-bridge.ts +8 -17
  25. package/src/browser/types.ts +24 -5
  26. package/src/build/generate-manifest.ts +6 -6
  27. package/src/build/generate-route-types.ts +3 -0
  28. package/src/build/route-types/include-resolution.ts +8 -1
  29. package/src/build/route-types/router-processing.ts +211 -72
  30. package/src/build/route-types/scan-filter.ts +8 -1
  31. package/src/client.tsx +2 -56
  32. package/src/handle.ts +40 -0
  33. package/src/index.rsc.ts +3 -1
  34. package/src/index.ts +12 -0
  35. package/src/prerender/store.ts +5 -4
  36. package/src/prerender.ts +138 -77
  37. package/src/reverse.ts +22 -1
  38. package/src/route-definition/dsl-helpers.ts +42 -19
  39. package/src/route-definition/helpers-types.ts +4 -1
  40. package/src/route-definition/index.ts +3 -0
  41. package/src/route-definition/redirect.ts +9 -1
  42. package/src/route-definition/resolve-handler-use.ts +149 -0
  43. package/src/route-types.ts +11 -0
  44. package/src/router/content-negotiation.ts +100 -1
  45. package/src/router/handler-context.ts +48 -15
  46. package/src/router/intercept-resolution.ts +9 -4
  47. package/src/router/loader-resolution.ts +150 -21
  48. package/src/router/match-api.ts +124 -189
  49. package/src/router/match-middleware/cache-lookup.ts +26 -7
  50. package/src/router/match-middleware/segment-resolution.ts +53 -0
  51. package/src/router/match-result.ts +82 -4
  52. package/src/router/middleware-types.ts +0 -6
  53. package/src/router/middleware.ts +0 -3
  54. package/src/router/navigation-snapshot.ts +182 -0
  55. package/src/router/prerender-match.ts +110 -10
  56. package/src/router/preview-match.ts +30 -102
  57. package/src/router/request-classification.ts +310 -0
  58. package/src/router/route-snapshot.ts +245 -0
  59. package/src/router/router-interfaces.ts +36 -4
  60. package/src/router/router-options.ts +37 -11
  61. package/src/router/segment-resolution/fresh.ts +70 -5
  62. package/src/router/segment-resolution/revalidation.ts +87 -9
  63. package/src/router.ts +53 -5
  64. package/src/rsc/handler.ts +472 -393
  65. package/src/rsc/loader-fetch.ts +18 -3
  66. package/src/rsc/manifest-init.ts +5 -1
  67. package/src/rsc/progressive-enhancement.ts +12 -3
  68. package/src/rsc/rsc-rendering.ts +8 -2
  69. package/src/rsc/server-action.ts +8 -2
  70. package/src/rsc/ssr-setup.ts +2 -2
  71. package/src/rsc/types.ts +6 -4
  72. package/src/server/context.ts +39 -2
  73. package/src/server/handle-store.ts +19 -0
  74. package/src/server/loader-registry.ts +9 -8
  75. package/src/server/request-context.ts +132 -13
  76. package/src/ssr/index.tsx +3 -0
  77. package/src/static-handler.ts +18 -6
  78. package/src/types/cache-types.ts +4 -4
  79. package/src/types/handler-context.ts +17 -11
  80. package/src/types/loader-types.ts +32 -5
  81. package/src/types/route-entry.ts +1 -1
  82. package/src/types/segments.ts +1 -0
  83. package/src/urls/path-helper-types.ts +9 -2
  84. package/src/urls/path-helper.ts +47 -12
  85. package/src/urls/pattern-types.ts +12 -0
  86. package/src/urls/response-types.ts +16 -6
  87. package/src/use-loader.tsx +77 -5
  88. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  89. package/src/vite/discovery/discover-routers.ts +5 -1
  90. package/src/vite/discovery/prerender-collection.ts +128 -74
  91. package/src/vite/discovery/state.ts +13 -4
  92. package/src/vite/index.ts +4 -0
  93. package/src/vite/plugin-types.ts +60 -5
  94. package/src/vite/plugins/expose-id-utils.ts +12 -0
  95. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  96. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  97. package/src/vite/plugins/performance-tracks.ts +66 -198
  98. package/src/vite/plugins/refresh-cmd.ts +88 -26
  99. package/src/vite/rango.ts +18 -5
  100. package/src/vite/router-discovery.ts +178 -37
  101. package/src/vite/utils/prerender-utils.ts +18 -0
  102. package/src/vite/utils/shared-utils.ts +3 -2
  103. package/dist/__internal.d.ts +0 -83
  104. package/dist/__internal.d.ts.map +0 -1
  105. package/dist/__internal.js +0 -19
  106. package/dist/__internal.js.map +0 -1
  107. package/dist/__mocks__/version.d.ts +0 -7
  108. package/dist/__mocks__/version.d.ts.map +0 -1
  109. package/dist/__mocks__/version.js +0 -7
  110. package/dist/__mocks__/version.js.map +0 -1
  111. package/dist/__tests__/client-href.test.d.ts +0 -2
  112. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  113. package/dist/__tests__/client-href.test.js +0 -74
  114. package/dist/__tests__/client-href.test.js.map +0 -1
  115. package/dist/__tests__/component-utils.test.d.ts +0 -2
  116. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  117. package/dist/__tests__/component-utils.test.js +0 -51
  118. package/dist/__tests__/component-utils.test.js.map +0 -1
  119. package/dist/__tests__/event-controller.test.d.ts +0 -2
  120. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  121. package/dist/__tests__/event-controller.test.js +0 -538
  122. package/dist/__tests__/event-controller.test.js.map +0 -1
  123. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  124. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  125. package/dist/__tests__/helpers/route-tree.js +0 -374
  126. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  127. package/dist/__tests__/match-result.test.d.ts +0 -2
  128. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  129. package/dist/__tests__/match-result.test.js +0 -154
  130. package/dist/__tests__/match-result.test.js.map +0 -1
  131. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  132. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  133. package/dist/__tests__/navigation-store.test.js +0 -440
  134. package/dist/__tests__/navigation-store.test.js.map +0 -1
  135. package/dist/__tests__/partial-update.test.d.ts +0 -2
  136. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  137. package/dist/__tests__/partial-update.test.js +0 -1009
  138. package/dist/__tests__/partial-update.test.js.map +0 -1
  139. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  140. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  141. package/dist/__tests__/reverse-types.test.js +0 -656
  142. package/dist/__tests__/reverse-types.test.js.map +0 -1
  143. package/dist/__tests__/route-definition.test.d.ts +0 -2
  144. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  145. package/dist/__tests__/route-definition.test.js +0 -55
  146. package/dist/__tests__/route-definition.test.js.map +0 -1
  147. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  148. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  149. package/dist/__tests__/router-helpers.test.js +0 -377
  150. package/dist/__tests__/router-helpers.test.js.map +0 -1
  151. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  152. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  153. package/dist/__tests__/router-integration-2.test.js +0 -426
  154. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  155. package/dist/__tests__/router-integration.test.d.ts +0 -2
  156. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  157. package/dist/__tests__/router-integration.test.js +0 -1051
  158. package/dist/__tests__/router-integration.test.js.map +0 -1
  159. package/dist/__tests__/search-params.test.d.ts +0 -5
  160. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  161. package/dist/__tests__/search-params.test.js +0 -306
  162. package/dist/__tests__/search-params.test.js.map +0 -1
  163. package/dist/__tests__/segment-system.test.d.ts +0 -2
  164. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  165. package/dist/__tests__/segment-system.test.js +0 -627
  166. package/dist/__tests__/segment-system.test.js.map +0 -1
  167. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  168. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  169. package/dist/__tests__/static-handler-types.test.js +0 -63
  170. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  171. package/dist/__tests__/urls.test.d.ts +0 -2
  172. package/dist/__tests__/urls.test.d.ts.map +0 -1
  173. package/dist/__tests__/urls.test.js +0 -421
  174. package/dist/__tests__/urls.test.js.map +0 -1
  175. package/dist/__tests__/use-mount.test.d.ts +0 -2
  176. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  177. package/dist/__tests__/use-mount.test.js +0 -35
  178. package/dist/__tests__/use-mount.test.js.map +0 -1
  179. package/dist/bin/rango.d.ts +0 -2
  180. package/dist/bin/rango.d.ts.map +0 -1
  181. package/dist/bin/rango.js.map +0 -1
  182. package/dist/browser/event-controller.d.ts +0 -191
  183. package/dist/browser/event-controller.d.ts.map +0 -1
  184. package/dist/browser/event-controller.js +0 -559
  185. package/dist/browser/event-controller.js.map +0 -1
  186. package/dist/browser/index.d.ts +0 -2
  187. package/dist/browser/index.d.ts.map +0 -1
  188. package/dist/browser/index.js +0 -14
  189. package/dist/browser/index.js.map +0 -1
  190. package/dist/browser/link-interceptor.d.ts +0 -38
  191. package/dist/browser/link-interceptor.d.ts.map +0 -1
  192. package/dist/browser/link-interceptor.js +0 -99
  193. package/dist/browser/link-interceptor.js.map +0 -1
  194. package/dist/browser/logging.d.ts +0 -10
  195. package/dist/browser/logging.d.ts.map +0 -1
  196. package/dist/browser/logging.js +0 -29
  197. package/dist/browser/logging.js.map +0 -1
  198. package/dist/browser/lru-cache.d.ts +0 -17
  199. package/dist/browser/lru-cache.d.ts.map +0 -1
  200. package/dist/browser/lru-cache.js +0 -50
  201. package/dist/browser/lru-cache.js.map +0 -1
  202. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  203. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  204. package/dist/browser/merge-segment-loaders.js +0 -102
  205. package/dist/browser/merge-segment-loaders.js.map +0 -1
  206. package/dist/browser/navigation-bridge.d.ts +0 -102
  207. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  208. package/dist/browser/navigation-bridge.js +0 -708
  209. package/dist/browser/navigation-bridge.js.map +0 -1
  210. package/dist/browser/navigation-client.d.ts +0 -25
  211. package/dist/browser/navigation-client.d.ts.map +0 -1
  212. package/dist/browser/navigation-client.js +0 -157
  213. package/dist/browser/navigation-client.js.map +0 -1
  214. package/dist/browser/navigation-store.d.ts +0 -101
  215. package/dist/browser/navigation-store.d.ts.map +0 -1
  216. package/dist/browser/navigation-store.js +0 -625
  217. package/dist/browser/navigation-store.js.map +0 -1
  218. package/dist/browser/partial-update.d.ts +0 -75
  219. package/dist/browser/partial-update.d.ts.map +0 -1
  220. package/dist/browser/partial-update.js +0 -426
  221. package/dist/browser/partial-update.js.map +0 -1
  222. package/dist/browser/react/Link.d.ts +0 -86
  223. package/dist/browser/react/Link.d.ts.map +0 -1
  224. package/dist/browser/react/Link.js +0 -128
  225. package/dist/browser/react/Link.js.map +0 -1
  226. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  227. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  228. package/dist/browser/react/NavigationProvider.js +0 -216
  229. package/dist/browser/react/NavigationProvider.js.map +0 -1
  230. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  231. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  232. package/dist/browser/react/ScrollRestoration.js +0 -57
  233. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  234. package/dist/browser/react/context.d.ts +0 -46
  235. package/dist/browser/react/context.d.ts.map +0 -1
  236. package/dist/browser/react/context.js +0 -10
  237. package/dist/browser/react/context.js.map +0 -1
  238. package/dist/browser/react/index.d.ts +0 -11
  239. package/dist/browser/react/index.d.ts.map +0 -1
  240. package/dist/browser/react/index.js +0 -22
  241. package/dist/browser/react/index.js.map +0 -1
  242. package/dist/browser/react/location-state-shared.d.ts +0 -63
  243. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  244. package/dist/browser/react/location-state-shared.js +0 -81
  245. package/dist/browser/react/location-state-shared.js.map +0 -1
  246. package/dist/browser/react/location-state.d.ts +0 -23
  247. package/dist/browser/react/location-state.d.ts.map +0 -1
  248. package/dist/browser/react/location-state.js +0 -29
  249. package/dist/browser/react/location-state.js.map +0 -1
  250. package/dist/browser/react/mount-context.d.ts +0 -24
  251. package/dist/browser/react/mount-context.d.ts.map +0 -1
  252. package/dist/browser/react/mount-context.js +0 -24
  253. package/dist/browser/react/mount-context.js.map +0 -1
  254. package/dist/browser/react/use-action.d.ts +0 -64
  255. package/dist/browser/react/use-action.d.ts.map +0 -1
  256. package/dist/browser/react/use-action.js +0 -134
  257. package/dist/browser/react/use-action.js.map +0 -1
  258. package/dist/browser/react/use-client-cache.d.ts +0 -41
  259. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  260. package/dist/browser/react/use-client-cache.js +0 -39
  261. package/dist/browser/react/use-client-cache.js.map +0 -1
  262. package/dist/browser/react/use-handle.d.ts +0 -31
  263. package/dist/browser/react/use-handle.d.ts.map +0 -1
  264. package/dist/browser/react/use-handle.js +0 -144
  265. package/dist/browser/react/use-handle.js.map +0 -1
  266. package/dist/browser/react/use-href.d.ts +0 -33
  267. package/dist/browser/react/use-href.d.ts.map +0 -1
  268. package/dist/browser/react/use-href.js +0 -39
  269. package/dist/browser/react/use-href.js.map +0 -1
  270. package/dist/browser/react/use-link-status.d.ts +0 -37
  271. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  272. package/dist/browser/react/use-link-status.js +0 -99
  273. package/dist/browser/react/use-link-status.js.map +0 -1
  274. package/dist/browser/react/use-mount.d.ts +0 -25
  275. package/dist/browser/react/use-mount.d.ts.map +0 -1
  276. package/dist/browser/react/use-mount.js +0 -30
  277. package/dist/browser/react/use-mount.js.map +0 -1
  278. package/dist/browser/react/use-navigation.d.ts +0 -27
  279. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  280. package/dist/browser/react/use-navigation.js +0 -87
  281. package/dist/browser/react/use-navigation.js.map +0 -1
  282. package/dist/browser/react/use-segments.d.ts +0 -38
  283. package/dist/browser/react/use-segments.d.ts.map +0 -1
  284. package/dist/browser/react/use-segments.js +0 -130
  285. package/dist/browser/react/use-segments.js.map +0 -1
  286. package/dist/browser/request-controller.d.ts +0 -26
  287. package/dist/browser/request-controller.d.ts.map +0 -1
  288. package/dist/browser/request-controller.js +0 -147
  289. package/dist/browser/request-controller.js.map +0 -1
  290. package/dist/browser/rsc-router.d.ts +0 -129
  291. package/dist/browser/rsc-router.d.ts.map +0 -1
  292. package/dist/browser/rsc-router.js +0 -195
  293. package/dist/browser/rsc-router.js.map +0 -1
  294. package/dist/browser/scroll-restoration.d.ts +0 -93
  295. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  296. package/dist/browser/scroll-restoration.js +0 -321
  297. package/dist/browser/scroll-restoration.js.map +0 -1
  298. package/dist/browser/segment-structure-assert.d.ts +0 -17
  299. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  300. package/dist/browser/segment-structure-assert.js +0 -59
  301. package/dist/browser/segment-structure-assert.js.map +0 -1
  302. package/dist/browser/server-action-bridge.d.ts +0 -26
  303. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  304. package/dist/browser/server-action-bridge.js +0 -668
  305. package/dist/browser/server-action-bridge.js.map +0 -1
  306. package/dist/browser/shallow.d.ts +0 -12
  307. package/dist/browser/shallow.d.ts.map +0 -1
  308. package/dist/browser/shallow.js +0 -34
  309. package/dist/browser/shallow.js.map +0 -1
  310. package/dist/browser/types.d.ts +0 -369
  311. package/dist/browser/types.d.ts.map +0 -1
  312. package/dist/browser/types.js +0 -2
  313. package/dist/browser/types.js.map +0 -1
  314. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  315. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  316. package/dist/build/__tests__/generate-cli.test.js +0 -237
  317. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  318. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  319. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  320. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  321. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  322. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  323. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  324. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  325. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  326. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  327. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  328. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  329. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  330. package/dist/build/generate-manifest.d.ts +0 -81
  331. package/dist/build/generate-manifest.d.ts.map +0 -1
  332. package/dist/build/generate-manifest.js +0 -276
  333. package/dist/build/generate-manifest.js.map +0 -1
  334. package/dist/build/generate-route-types.d.ts +0 -115
  335. package/dist/build/generate-route-types.d.ts.map +0 -1
  336. package/dist/build/generate-route-types.js +0 -740
  337. package/dist/build/generate-route-types.js.map +0 -1
  338. package/dist/build/index.d.ts +0 -21
  339. package/dist/build/index.d.ts.map +0 -1
  340. package/dist/build/index.js +0 -21
  341. package/dist/build/index.js.map +0 -1
  342. package/dist/build/route-trie.d.ts +0 -71
  343. package/dist/build/route-trie.d.ts.map +0 -1
  344. package/dist/build/route-trie.js +0 -175
  345. package/dist/build/route-trie.js.map +0 -1
  346. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  347. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  348. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  349. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  350. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  351. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  352. package/dist/cache/__tests__/document-cache.test.js +0 -345
  353. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  354. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  355. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  356. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  357. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  358. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  359. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  360. package/dist/cache/__tests__/memory-store.test.js +0 -367
  361. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  362. package/dist/cache/cache-scope.d.ts +0 -102
  363. package/dist/cache/cache-scope.d.ts.map +0 -1
  364. package/dist/cache/cache-scope.js +0 -440
  365. package/dist/cache/cache-scope.js.map +0 -1
  366. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  367. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  368. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  369. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  370. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  371. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  372. package/dist/cache/cf/cf-cache-store.js +0 -242
  373. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  374. package/dist/cache/cf/index.d.ts +0 -14
  375. package/dist/cache/cf/index.d.ts.map +0 -1
  376. package/dist/cache/cf/index.js +0 -17
  377. package/dist/cache/cf/index.js.map +0 -1
  378. package/dist/cache/document-cache.d.ts +0 -64
  379. package/dist/cache/document-cache.d.ts.map +0 -1
  380. package/dist/cache/document-cache.js +0 -228
  381. package/dist/cache/document-cache.js.map +0 -1
  382. package/dist/cache/index.d.ts +0 -19
  383. package/dist/cache/index.d.ts.map +0 -1
  384. package/dist/cache/index.js +0 -21
  385. package/dist/cache/index.js.map +0 -1
  386. package/dist/cache/memory-segment-store.d.ts +0 -110
  387. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  388. package/dist/cache/memory-segment-store.js +0 -117
  389. package/dist/cache/memory-segment-store.js.map +0 -1
  390. package/dist/cache/memory-store.d.ts +0 -41
  391. package/dist/cache/memory-store.d.ts.map +0 -1
  392. package/dist/cache/memory-store.js +0 -191
  393. package/dist/cache/memory-store.js.map +0 -1
  394. package/dist/cache/types.d.ts +0 -317
  395. package/dist/cache/types.d.ts.map +0 -1
  396. package/dist/cache/types.js +0 -12
  397. package/dist/cache/types.js.map +0 -1
  398. package/dist/client.d.ts +0 -248
  399. package/dist/client.d.ts.map +0 -1
  400. package/dist/client.js +0 -367
  401. package/dist/client.js.map +0 -1
  402. package/dist/client.rsc.d.ts +0 -26
  403. package/dist/client.rsc.d.ts.map +0 -1
  404. package/dist/client.rsc.js +0 -46
  405. package/dist/client.rsc.js.map +0 -1
  406. package/dist/component-utils.d.ts +0 -36
  407. package/dist/component-utils.d.ts.map +0 -1
  408. package/dist/component-utils.js +0 -61
  409. package/dist/component-utils.js.map +0 -1
  410. package/dist/components/DefaultDocument.d.ts +0 -13
  411. package/dist/components/DefaultDocument.d.ts.map +0 -1
  412. package/dist/components/DefaultDocument.js +0 -15
  413. package/dist/components/DefaultDocument.js.map +0 -1
  414. package/dist/debug.d.ts +0 -58
  415. package/dist/debug.d.ts.map +0 -1
  416. package/dist/debug.js +0 -157
  417. package/dist/debug.js.map +0 -1
  418. package/dist/default-error-boundary.d.ts +0 -11
  419. package/dist/default-error-boundary.d.ts.map +0 -1
  420. package/dist/default-error-boundary.js +0 -45
  421. package/dist/default-error-boundary.js.map +0 -1
  422. package/dist/deps/browser.d.ts +0 -2
  423. package/dist/deps/browser.d.ts.map +0 -1
  424. package/dist/deps/browser.js +0 -3
  425. package/dist/deps/browser.js.map +0 -1
  426. package/dist/deps/html-stream-client.d.ts +0 -2
  427. package/dist/deps/html-stream-client.d.ts.map +0 -1
  428. package/dist/deps/html-stream-client.js +0 -3
  429. package/dist/deps/html-stream-client.js.map +0 -1
  430. package/dist/deps/html-stream-server.d.ts +0 -2
  431. package/dist/deps/html-stream-server.d.ts.map +0 -1
  432. package/dist/deps/html-stream-server.js +0 -3
  433. package/dist/deps/html-stream-server.js.map +0 -1
  434. package/dist/deps/rsc.d.ts +0 -2
  435. package/dist/deps/rsc.d.ts.map +0 -1
  436. package/dist/deps/rsc.js +0 -4
  437. package/dist/deps/rsc.js.map +0 -1
  438. package/dist/deps/ssr.d.ts +0 -2
  439. package/dist/deps/ssr.d.ts.map +0 -1
  440. package/dist/deps/ssr.js +0 -3
  441. package/dist/deps/ssr.js.map +0 -1
  442. package/dist/errors.d.ts +0 -174
  443. package/dist/errors.d.ts.map +0 -1
  444. package/dist/errors.js +0 -241
  445. package/dist/errors.js.map +0 -1
  446. package/dist/handle.d.ts +0 -78
  447. package/dist/handle.d.ts.map +0 -1
  448. package/dist/handle.js +0 -82
  449. package/dist/handle.js.map +0 -1
  450. package/dist/handles/MetaTags.d.ts +0 -14
  451. package/dist/handles/MetaTags.d.ts.map +0 -1
  452. package/dist/handles/MetaTags.js +0 -136
  453. package/dist/handles/MetaTags.js.map +0 -1
  454. package/dist/handles/index.d.ts +0 -6
  455. package/dist/handles/index.d.ts.map +0 -1
  456. package/dist/handles/index.js +0 -6
  457. package/dist/handles/index.js.map +0 -1
  458. package/dist/handles/meta.d.ts +0 -39
  459. package/dist/handles/meta.d.ts.map +0 -1
  460. package/dist/handles/meta.js +0 -202
  461. package/dist/handles/meta.js.map +0 -1
  462. package/dist/host/__tests__/errors.test.d.ts +0 -2
  463. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  464. package/dist/host/__tests__/errors.test.js +0 -76
  465. package/dist/host/__tests__/errors.test.js.map +0 -1
  466. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  467. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  468. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  469. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  470. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  471. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  472. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  473. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  474. package/dist/host/__tests__/router.test.d.ts +0 -2
  475. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  476. package/dist/host/__tests__/router.test.js +0 -241
  477. package/dist/host/__tests__/router.test.js.map +0 -1
  478. package/dist/host/__tests__/testing.test.d.ts +0 -2
  479. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  480. package/dist/host/__tests__/testing.test.js +0 -64
  481. package/dist/host/__tests__/testing.test.js.map +0 -1
  482. package/dist/host/__tests__/utils.test.d.ts +0 -2
  483. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  484. package/dist/host/__tests__/utils.test.js +0 -29
  485. package/dist/host/__tests__/utils.test.js.map +0 -1
  486. package/dist/host/cookie-handler.d.ts +0 -34
  487. package/dist/host/cookie-handler.d.ts.map +0 -1
  488. package/dist/host/cookie-handler.js +0 -124
  489. package/dist/host/cookie-handler.js.map +0 -1
  490. package/dist/host/errors.d.ts +0 -56
  491. package/dist/host/errors.d.ts.map +0 -1
  492. package/dist/host/errors.js +0 -79
  493. package/dist/host/errors.js.map +0 -1
  494. package/dist/host/index.d.ts +0 -29
  495. package/dist/host/index.d.ts.map +0 -1
  496. package/dist/host/index.js +0 -32
  497. package/dist/host/index.js.map +0 -1
  498. package/dist/host/pattern-matcher.d.ts +0 -36
  499. package/dist/host/pattern-matcher.d.ts.map +0 -1
  500. package/dist/host/pattern-matcher.js +0 -172
  501. package/dist/host/pattern-matcher.js.map +0 -1
  502. package/dist/host/router.d.ts +0 -26
  503. package/dist/host/router.d.ts.map +0 -1
  504. package/dist/host/router.js +0 -218
  505. package/dist/host/router.js.map +0 -1
  506. package/dist/host/testing.d.ts +0 -36
  507. package/dist/host/testing.d.ts.map +0 -1
  508. package/dist/host/testing.js +0 -55
  509. package/dist/host/testing.js.map +0 -1
  510. package/dist/host/types.d.ts +0 -115
  511. package/dist/host/types.d.ts.map +0 -1
  512. package/dist/host/types.js +0 -7
  513. package/dist/host/types.js.map +0 -1
  514. package/dist/host/utils.d.ts +0 -21
  515. package/dist/host/utils.d.ts.map +0 -1
  516. package/dist/host/utils.js +0 -23
  517. package/dist/host/utils.js.map +0 -1
  518. package/dist/href-client.d.ts +0 -131
  519. package/dist/href-client.d.ts.map +0 -1
  520. package/dist/href-client.js +0 -64
  521. package/dist/href-client.js.map +0 -1
  522. package/dist/href-context.d.ts +0 -29
  523. package/dist/href-context.d.ts.map +0 -1
  524. package/dist/href-context.js +0 -21
  525. package/dist/href-context.js.map +0 -1
  526. package/dist/index.d.ts +0 -73
  527. package/dist/index.d.ts.map +0 -1
  528. package/dist/index.js +0 -91
  529. package/dist/index.js.map +0 -1
  530. package/dist/index.rsc.d.ts +0 -32
  531. package/dist/index.rsc.d.ts.map +0 -1
  532. package/dist/index.rsc.js +0 -40
  533. package/dist/index.rsc.js.map +0 -1
  534. package/dist/internal-debug.d.ts +0 -2
  535. package/dist/internal-debug.d.ts.map +0 -1
  536. package/dist/internal-debug.js +0 -5
  537. package/dist/internal-debug.js.map +0 -1
  538. package/dist/loader.d.ts +0 -14
  539. package/dist/loader.d.ts.map +0 -1
  540. package/dist/loader.js +0 -20
  541. package/dist/loader.js.map +0 -1
  542. package/dist/loader.rsc.d.ts +0 -19
  543. package/dist/loader.rsc.d.ts.map +0 -1
  544. package/dist/loader.rsc.js +0 -99
  545. package/dist/loader.rsc.js.map +0 -1
  546. package/dist/network-error-thrower.d.ts +0 -17
  547. package/dist/network-error-thrower.d.ts.map +0 -1
  548. package/dist/network-error-thrower.js +0 -14
  549. package/dist/network-error-thrower.js.map +0 -1
  550. package/dist/outlet-context.d.ts +0 -13
  551. package/dist/outlet-context.d.ts.map +0 -1
  552. package/dist/outlet-context.js +0 -3
  553. package/dist/outlet-context.js.map +0 -1
  554. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  555. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  556. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  557. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  558. package/dist/prerender/param-hash.d.ts +0 -16
  559. package/dist/prerender/param-hash.d.ts.map +0 -1
  560. package/dist/prerender/param-hash.js +0 -36
  561. package/dist/prerender/param-hash.js.map +0 -1
  562. package/dist/prerender/store.d.ts +0 -38
  563. package/dist/prerender/store.d.ts.map +0 -1
  564. package/dist/prerender/store.js +0 -61
  565. package/dist/prerender/store.js.map +0 -1
  566. package/dist/prerender.d.ts +0 -66
  567. package/dist/prerender.d.ts.map +0 -1
  568. package/dist/prerender.js +0 -57
  569. package/dist/prerender.js.map +0 -1
  570. package/dist/reverse.d.ts +0 -196
  571. package/dist/reverse.d.ts.map +0 -1
  572. package/dist/reverse.js +0 -78
  573. package/dist/reverse.js.map +0 -1
  574. package/dist/root-error-boundary.d.ts +0 -33
  575. package/dist/root-error-boundary.d.ts.map +0 -1
  576. package/dist/root-error-boundary.js +0 -165
  577. package/dist/root-error-boundary.js.map +0 -1
  578. package/dist/route-content-wrapper.d.ts +0 -46
  579. package/dist/route-content-wrapper.d.ts.map +0 -1
  580. package/dist/route-content-wrapper.js +0 -77
  581. package/dist/route-content-wrapper.js.map +0 -1
  582. package/dist/route-definition.d.ts +0 -421
  583. package/dist/route-definition.d.ts.map +0 -1
  584. package/dist/route-definition.js +0 -868
  585. package/dist/route-definition.js.map +0 -1
  586. package/dist/route-map-builder.d.ts +0 -155
  587. package/dist/route-map-builder.d.ts.map +0 -1
  588. package/dist/route-map-builder.js +0 -237
  589. package/dist/route-map-builder.js.map +0 -1
  590. package/dist/route-types.d.ts +0 -165
  591. package/dist/route-types.d.ts.map +0 -1
  592. package/dist/route-types.js +0 -7
  593. package/dist/route-types.js.map +0 -1
  594. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  595. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  596. package/dist/router/__tests__/handler-context.test.js +0 -65
  597. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  598. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  599. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  600. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  601. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  602. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  603. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  604. package/dist/router/__tests__/match-context.test.js +0 -92
  605. package/dist/router/__tests__/match-context.test.js.map +0 -1
  606. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  607. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  608. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  609. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  610. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  611. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  612. package/dist/router/__tests__/match-result.test.js +0 -457
  613. package/dist/router/__tests__/match-result.test.js.map +0 -1
  614. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  615. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  616. package/dist/router/__tests__/on-error.test.js +0 -678
  617. package/dist/router/__tests__/on-error.test.js.map +0 -1
  618. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  619. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  620. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  621. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  622. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  623. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  624. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  625. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  626. package/dist/router/error-handling.d.ts +0 -77
  627. package/dist/router/error-handling.d.ts.map +0 -1
  628. package/dist/router/error-handling.js +0 -202
  629. package/dist/router/error-handling.js.map +0 -1
  630. package/dist/router/handler-context.d.ts +0 -20
  631. package/dist/router/handler-context.d.ts.map +0 -1
  632. package/dist/router/handler-context.js +0 -198
  633. package/dist/router/handler-context.js.map +0 -1
  634. package/dist/router/intercept-resolution.d.ts +0 -66
  635. package/dist/router/intercept-resolution.d.ts.map +0 -1
  636. package/dist/router/intercept-resolution.js +0 -246
  637. package/dist/router/intercept-resolution.js.map +0 -1
  638. package/dist/router/loader-resolution.d.ts +0 -64
  639. package/dist/router/loader-resolution.d.ts.map +0 -1
  640. package/dist/router/loader-resolution.js +0 -284
  641. package/dist/router/loader-resolution.js.map +0 -1
  642. package/dist/router/logging.d.ts +0 -15
  643. package/dist/router/logging.d.ts.map +0 -1
  644. package/dist/router/logging.js +0 -99
  645. package/dist/router/logging.js.map +0 -1
  646. package/dist/router/manifest.d.ts +0 -22
  647. package/dist/router/manifest.d.ts.map +0 -1
  648. package/dist/router/manifest.js +0 -181
  649. package/dist/router/manifest.js.map +0 -1
  650. package/dist/router/match-api.d.ts +0 -35
  651. package/dist/router/match-api.d.ts.map +0 -1
  652. package/dist/router/match-api.js +0 -406
  653. package/dist/router/match-api.js.map +0 -1
  654. package/dist/router/match-context.d.ts +0 -206
  655. package/dist/router/match-context.d.ts.map +0 -1
  656. package/dist/router/match-context.js +0 -17
  657. package/dist/router/match-context.js.map +0 -1
  658. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  659. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  660. package/dist/router/match-middleware/background-revalidation.js +0 -75
  661. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  662. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  663. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  664. package/dist/router/match-middleware/cache-lookup.js +0 -257
  665. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  666. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  667. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  668. package/dist/router/match-middleware/cache-store.js +0 -108
  669. package/dist/router/match-middleware/cache-store.js.map +0 -1
  670. package/dist/router/match-middleware/index.d.ts +0 -81
  671. package/dist/router/match-middleware/index.d.ts.map +0 -1
  672. package/dist/router/match-middleware/index.js +0 -80
  673. package/dist/router/match-middleware/index.js.map +0 -1
  674. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  675. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  676. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  677. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  678. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  679. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  680. package/dist/router/match-middleware/segment-resolution.js +0 -53
  681. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  682. package/dist/router/match-pipelines.d.ts +0 -147
  683. package/dist/router/match-pipelines.d.ts.map +0 -1
  684. package/dist/router/match-pipelines.js +0 -82
  685. package/dist/router/match-pipelines.js.map +0 -1
  686. package/dist/router/match-result.d.ts +0 -126
  687. package/dist/router/match-result.d.ts.map +0 -1
  688. package/dist/router/match-result.js +0 -93
  689. package/dist/router/match-result.js.map +0 -1
  690. package/dist/router/metrics.d.ts +0 -20
  691. package/dist/router/metrics.d.ts.map +0 -1
  692. package/dist/router/metrics.js +0 -47
  693. package/dist/router/metrics.js.map +0 -1
  694. package/dist/router/middleware.d.ts +0 -249
  695. package/dist/router/middleware.d.ts.map +0 -1
  696. package/dist/router/middleware.js +0 -434
  697. package/dist/router/middleware.js.map +0 -1
  698. package/dist/router/middleware.test.d.ts +0 -2
  699. package/dist/router/middleware.test.d.ts.map +0 -1
  700. package/dist/router/middleware.test.js +0 -816
  701. package/dist/router/middleware.test.js.map +0 -1
  702. package/dist/router/pattern-matching.d.ts +0 -149
  703. package/dist/router/pattern-matching.d.ts.map +0 -1
  704. package/dist/router/pattern-matching.js +0 -349
  705. package/dist/router/pattern-matching.js.map +0 -1
  706. package/dist/router/revalidation.d.ts +0 -44
  707. package/dist/router/revalidation.d.ts.map +0 -1
  708. package/dist/router/revalidation.js +0 -147
  709. package/dist/router/revalidation.js.map +0 -1
  710. package/dist/router/router-context.d.ts +0 -135
  711. package/dist/router/router-context.d.ts.map +0 -1
  712. package/dist/router/router-context.js +0 -36
  713. package/dist/router/router-context.js.map +0 -1
  714. package/dist/router/segment-resolution.d.ts +0 -127
  715. package/dist/router/segment-resolution.d.ts.map +0 -1
  716. package/dist/router/segment-resolution.js +0 -919
  717. package/dist/router/segment-resolution.js.map +0 -1
  718. package/dist/router/trie-matching.d.ts +0 -40
  719. package/dist/router/trie-matching.d.ts.map +0 -1
  720. package/dist/router/trie-matching.js +0 -127
  721. package/dist/router/trie-matching.js.map +0 -1
  722. package/dist/router/types.d.ts +0 -136
  723. package/dist/router/types.d.ts.map +0 -1
  724. package/dist/router/types.js +0 -7
  725. package/dist/router/types.js.map +0 -1
  726. package/dist/router.d.ts +0 -753
  727. package/dist/router.d.ts.map +0 -1
  728. package/dist/router.gen.d.ts +0 -6
  729. package/dist/router.gen.d.ts.map +0 -1
  730. package/dist/router.gen.js +0 -6
  731. package/dist/router.gen.js.map +0 -1
  732. package/dist/router.js +0 -1304
  733. package/dist/router.js.map +0 -1
  734. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  735. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  736. package/dist/rsc/__tests__/helpers.test.js +0 -140
  737. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  738. package/dist/rsc/handler.d.ts +0 -45
  739. package/dist/rsc/handler.d.ts.map +0 -1
  740. package/dist/rsc/handler.js +0 -1172
  741. package/dist/rsc/handler.js.map +0 -1
  742. package/dist/rsc/helpers.d.ts +0 -16
  743. package/dist/rsc/helpers.d.ts.map +0 -1
  744. package/dist/rsc/helpers.js +0 -55
  745. package/dist/rsc/helpers.js.map +0 -1
  746. package/dist/rsc/index.d.ts +0 -22
  747. package/dist/rsc/index.d.ts.map +0 -1
  748. package/dist/rsc/index.js +0 -23
  749. package/dist/rsc/index.js.map +0 -1
  750. package/dist/rsc/nonce.d.ts +0 -9
  751. package/dist/rsc/nonce.d.ts.map +0 -1
  752. package/dist/rsc/nonce.js +0 -18
  753. package/dist/rsc/nonce.js.map +0 -1
  754. package/dist/rsc/types.d.ts +0 -206
  755. package/dist/rsc/types.d.ts.map +0 -1
  756. package/dist/rsc/types.js +0 -8
  757. package/dist/rsc/types.js.map +0 -1
  758. package/dist/search-params.d.ts +0 -103
  759. package/dist/search-params.d.ts.map +0 -1
  760. package/dist/search-params.js +0 -74
  761. package/dist/search-params.js.map +0 -1
  762. package/dist/segment-system.d.ts +0 -75
  763. package/dist/segment-system.d.ts.map +0 -1
  764. package/dist/segment-system.js +0 -336
  765. package/dist/segment-system.js.map +0 -1
  766. package/dist/server/context.d.ts +0 -245
  767. package/dist/server/context.d.ts.map +0 -1
  768. package/dist/server/context.js +0 -197
  769. package/dist/server/context.js.map +0 -1
  770. package/dist/server/fetchable-loader-store.d.ts +0 -18
  771. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  772. package/dist/server/fetchable-loader-store.js +0 -18
  773. package/dist/server/fetchable-loader-store.js.map +0 -1
  774. package/dist/server/handle-store.d.ts +0 -85
  775. package/dist/server/handle-store.d.ts.map +0 -1
  776. package/dist/server/handle-store.js +0 -142
  777. package/dist/server/handle-store.js.map +0 -1
  778. package/dist/server/loader-registry.d.ts +0 -55
  779. package/dist/server/loader-registry.d.ts.map +0 -1
  780. package/dist/server/loader-registry.js +0 -132
  781. package/dist/server/loader-registry.js.map +0 -1
  782. package/dist/server/request-context.d.ts +0 -226
  783. package/dist/server/request-context.d.ts.map +0 -1
  784. package/dist/server/request-context.js +0 -290
  785. package/dist/server/request-context.js.map +0 -1
  786. package/dist/server/root-layout.d.ts +0 -4
  787. package/dist/server/root-layout.d.ts.map +0 -1
  788. package/dist/server/root-layout.js +0 -5
  789. package/dist/server/root-layout.js.map +0 -1
  790. package/dist/server.d.ts +0 -15
  791. package/dist/server.d.ts.map +0 -1
  792. package/dist/server.js +0 -20
  793. package/dist/server.js.map +0 -1
  794. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  795. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  796. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  797. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  798. package/dist/ssr/index.d.ts +0 -98
  799. package/dist/ssr/index.d.ts.map +0 -1
  800. package/dist/ssr/index.js +0 -158
  801. package/dist/ssr/index.js.map +0 -1
  802. package/dist/static-handler.d.ts +0 -50
  803. package/dist/static-handler.d.ts.map +0 -1
  804. package/dist/static-handler.gen.d.ts +0 -5
  805. package/dist/static-handler.gen.d.ts.map +0 -1
  806. package/dist/static-handler.gen.js +0 -5
  807. package/dist/static-handler.gen.js.map +0 -1
  808. package/dist/static-handler.js +0 -29
  809. package/dist/static-handler.js.map +0 -1
  810. package/dist/theme/ThemeProvider.d.ts +0 -20
  811. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  812. package/dist/theme/ThemeProvider.js +0 -240
  813. package/dist/theme/ThemeProvider.js.map +0 -1
  814. package/dist/theme/ThemeScript.d.ts +0 -48
  815. package/dist/theme/ThemeScript.d.ts.map +0 -1
  816. package/dist/theme/ThemeScript.js +0 -13
  817. package/dist/theme/ThemeScript.js.map +0 -1
  818. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  819. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  820. package/dist/theme/__tests__/theme.test.js +0 -103
  821. package/dist/theme/__tests__/theme.test.js.map +0 -1
  822. package/dist/theme/constants.d.ts +0 -29
  823. package/dist/theme/constants.d.ts.map +0 -1
  824. package/dist/theme/constants.js +0 -48
  825. package/dist/theme/constants.js.map +0 -1
  826. package/dist/theme/index.d.ts +0 -31
  827. package/dist/theme/index.d.ts.map +0 -1
  828. package/dist/theme/index.js +0 -36
  829. package/dist/theme/index.js.map +0 -1
  830. package/dist/theme/theme-context.d.ts +0 -40
  831. package/dist/theme/theme-context.d.ts.map +0 -1
  832. package/dist/theme/theme-context.js +0 -60
  833. package/dist/theme/theme-context.js.map +0 -1
  834. package/dist/theme/theme-script.d.ts +0 -27
  835. package/dist/theme/theme-script.d.ts.map +0 -1
  836. package/dist/theme/theme-script.js +0 -147
  837. package/dist/theme/theme-script.js.map +0 -1
  838. package/dist/theme/types.d.ts +0 -163
  839. package/dist/theme/types.d.ts.map +0 -1
  840. package/dist/theme/types.js +0 -11
  841. package/dist/theme/types.js.map +0 -1
  842. package/dist/theme/use-theme.d.ts +0 -12
  843. package/dist/theme/use-theme.d.ts.map +0 -1
  844. package/dist/theme/use-theme.js +0 -40
  845. package/dist/theme/use-theme.js.map +0 -1
  846. package/dist/types.d.ts +0 -1479
  847. package/dist/types.d.ts.map +0 -1
  848. package/dist/types.js +0 -10
  849. package/dist/types.js.map +0 -1
  850. package/dist/urls.d.ts +0 -441
  851. package/dist/urls.d.ts.map +0 -1
  852. package/dist/urls.gen.d.ts +0 -8
  853. package/dist/urls.gen.d.ts.map +0 -1
  854. package/dist/urls.gen.js +0 -8
  855. package/dist/urls.gen.js.map +0 -1
  856. package/dist/urls.js +0 -443
  857. package/dist/urls.js.map +0 -1
  858. package/dist/use-loader.d.ts +0 -127
  859. package/dist/use-loader.d.ts.map +0 -1
  860. package/dist/use-loader.js +0 -237
  861. package/dist/use-loader.js.map +0 -1
  862. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  863. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  864. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  865. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  866. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  867. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  868. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  869. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  870. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  871. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  872. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  873. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  874. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  875. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  876. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  877. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  878. package/dist/vite/ast-handler-extract.d.ts +0 -49
  879. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  880. package/dist/vite/ast-handler-extract.js +0 -249
  881. package/dist/vite/ast-handler-extract.js.map +0 -1
  882. package/dist/vite/expose-action-id.d.ts +0 -19
  883. package/dist/vite/expose-action-id.d.ts.map +0 -1
  884. package/dist/vite/expose-action-id.js +0 -250
  885. package/dist/vite/expose-action-id.js.map +0 -1
  886. package/dist/vite/expose-id-utils.d.ts +0 -69
  887. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  888. package/dist/vite/expose-id-utils.js +0 -289
  889. package/dist/vite/expose-id-utils.js.map +0 -1
  890. package/dist/vite/expose-internal-ids.d.ts +0 -22
  891. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  892. package/dist/vite/expose-internal-ids.js +0 -886
  893. package/dist/vite/expose-internal-ids.js.map +0 -1
  894. package/dist/vite/index.d.ts +0 -149
  895. package/dist/vite/index.d.ts.map +0 -1
  896. package/dist/vite/index.js.map +0 -1
  897. package/dist/vite/index.named-routes.gen.ts +0 -103
  898. package/dist/vite/package-resolution.d.ts +0 -43
  899. package/dist/vite/package-resolution.d.ts.map +0 -1
  900. package/dist/vite/package-resolution.js +0 -112
  901. package/dist/vite/package-resolution.js.map +0 -1
  902. package/dist/vite/virtual-entries.d.ts +0 -25
  903. package/dist/vite/virtual-entries.d.ts.map +0 -1
  904. package/dist/vite/virtual-entries.js +0 -110
  905. package/dist/vite/virtual-entries.js.map +0 -1
  906. package/src/browser/debug-channel.ts +0 -93
@@ -1,77 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { Suspense, use, useId } from "react";
4
- import { invariant } from "./errors";
5
- import { OutletProvider } from "./client.js";
6
- import { isLoaderDataResult } from "./types.js";
7
- /**
8
- * Stable async wrapper component for route content
9
- * Using a module-level component ensures React sees the same component reference
10
- * across renders, preventing unnecessary remounts during actions.
11
- *
12
- * When content is a pending promise, React suspends and shows the nearest
13
- * Suspense fallback. When content is already resolved, it renders immediately
14
- * without suspension.
15
- *
16
- * @param segmentId - Stable ID from segment, used for consistent keys across renders
17
- */
18
- export function RouteContentWrapper({ content, fallback, segmentId, }) {
19
- if (!content) {
20
- // Already resolved
21
- return content;
22
- }
23
- return (_jsx(Suspense, { fallback: fallback ?? null, children: _jsx(Suspender, { content: content }, segmentId) }, segmentId ? "route-content-suspense-" + segmentId : undefined));
24
- }
25
- export function RouteContentWrapperCallback({ resolve, fallback, children, }) {
26
- const id = useId();
27
- invariant(children, "RouteContentWrapperCallback requires children");
28
- invariant(typeof children === "function", "RouteContentWrapperCallback requires children to be a function");
29
- invariant(resolve !== undefined, "RouteContentWrapperCallback requires resolve");
30
- return (_jsx(Suspense, { fallback: fallback ?? null, children: _jsx(SuspenderCallback, { resolve: resolve, children: children }, id) }, "route-content-suspense-callback-" + id));
31
- }
32
- const Suspender = ({ content, }) => {
33
- invariant(content instanceof Promise, "Suspender expects a Promise content");
34
- return use(content);
35
- };
36
- const SuspenderCallback = ({ resolve, children, }) => {
37
- return resolve instanceof Promise
38
- ? children(use(resolve))
39
- : children(resolve);
40
- };
41
- export function LoaderBoundary({ loaderDataPromise, loaderIds, fallback, outletKey, outletContent, segment, parallel, children, }) {
42
- return (_jsx(Suspense, { fallback: fallback ?? null, children: _jsx(LoaderResolver, { loaderDataPromise: loaderDataPromise, loaderIds: loaderIds, outletKey: outletKey, outletContent: outletContent, segment: segment, parallel: parallel, children: children }) }, `loader-boundary-${outletKey}`));
43
- }
44
- /**
45
- * Internal component that resolves loader promises and renders OutletProvider
46
- */
47
- function LoaderResolver({ loaderDataPromise, loaderIds, outletKey, outletContent, segment, parallel, children, }) {
48
- // Resolve loader promises using React's use()
49
- const resolvedData = loaderDataPromise instanceof Promise
50
- ? use(loaderDataPromise)
51
- : loaderDataPromise;
52
- // Build loaderData record from resolved values
53
- const loaderData = {};
54
- let loaderErrorFallback = null;
55
- loaderIds.forEach((id, i) => {
56
- const result = resolvedData[i];
57
- if (isLoaderDataResult(result)) {
58
- if (result.ok) {
59
- loaderData[id] = result.data;
60
- }
61
- else {
62
- if (result.fallback) {
63
- loaderErrorFallback = result.fallback;
64
- }
65
- else {
66
- throw new Error(result.error.message);
67
- }
68
- }
69
- }
70
- else {
71
- // Legacy format - direct data
72
- loaderData[id] = result;
73
- }
74
- });
75
- return (_jsx(OutletProvider, { content: outletContent, segment: segment, parallel: parallel, loaderData: Object.keys(loaderData).length > 0 ? loaderData : undefined, children: loaderErrorFallback ?? children }, outletKey));
76
- }
77
- //# sourceMappingURL=route-content-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"route-content-wrapper.js","sourceRoot":"","sources":["../src/route-content-wrapper.tsx"],"names":[],"mappings":"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"}
@@ -1,421 +0,0 @@
1
- import type { ReactNode } from "react";
2
- import type { PartialCacheOptions, DefaultEnv, ErrorBoundaryHandler, ExtractRouteParams, Handler, LoaderDefinition, MiddlewareFn, NotFoundBoundaryHandler, ResolvedRouteMap, RouteDefinition, RouteDefinitionOptions, ShouldRevalidateFn, TrailingSlashMode } from "./types.js";
3
- import { type InterceptWhenFn } from "./server/context";
4
- import type { AllUseItems, LayoutItem, RouteItem, ParallelItem, InterceptItem, MiddlewareItem, RevalidateItem, LoaderItem, LoadingItem, ErrorBoundaryItem, NotFoundBoundaryItem, LayoutUseItem, RouteUseItem, ParallelUseItem, InterceptUseItem, LoaderUseItem, WhenItem, CacheItem } from "./route-types.js";
5
- /**
6
- * Result of route() function with paths and trailing slash config
7
- */
8
- export interface RouteDefinitionResult<T extends RouteDefinition> {
9
- routes: ResolvedRouteMap<T>;
10
- trailingSlash: Record<string, TrailingSlashMode>;
11
- }
12
- /**
13
- * Define routes with optional trailing slash configuration
14
- *
15
- * @example
16
- * ```typescript
17
- * // Simple string paths
18
- * const routes = route({
19
- * blog: "/blog",
20
- * post: "/blog/:id",
21
- * });
22
- *
23
- * // With trailing slash config
24
- * const routes = route({
25
- * blog: "/blog",
26
- * api: { path: "/api", trailingSlash: "ignore" },
27
- * }, { trailingSlash: "never" }); // global default
28
- * ```
29
- */
30
- export declare function route<const T extends RouteDefinition>(input: T, options?: RouteDefinitionOptions): ResolvedRouteMap<T> & {
31
- __trailingSlash?: Record<string, TrailingSlashMode>;
32
- };
33
- export type { AllUseItems, LayoutItem, RouteItem, ParallelItem, InterceptItem, MiddlewareItem, RevalidateItem, LoaderItem, ErrorBoundaryItem, NotFoundBoundaryItem, LayoutUseItem, RouteUseItem, ParallelUseItem, InterceptUseItem, WhenItem, CacheItem, } from "./route-types.js";
34
- export type { InterceptSelectorContext, InterceptSegmentsState, InterceptWhenFn, } from "./server/context";
35
- /**
36
- * Route helpers provided by map()
37
- * These are the only typed helpers users interact with
38
- */
39
- export type RouteHelpers<T extends RouteDefinition, TEnv> = {
40
- /**
41
- * Define a route handler for a specific route pattern
42
- * ```typescript
43
- * route("products.detail", async (ctx) => {
44
- * const product = await getProduct(ctx.params.slug);
45
- * return <ProductPage product={product} />;
46
- * })
47
- *
48
- * // With nested use() for middleware, loaders, etc.
49
- * route("products.detail", ProductHandler, () => [
50
- * loader(ProductLoader),
51
- * loading(<ProductSkeleton />),
52
- * ])
53
- * ```
54
- * @param name - Route name matching a key from route definitions
55
- * @param handler - Async function that returns JSX for the route
56
- * @param use - Optional callback returning middleware, loaders, loading, etc.
57
- */
58
- route: <K extends keyof ResolvedRouteMap<T> & string>(name: K, handler: Handler<ExtractRouteParams<T, K & string>, {}, TEnv>, use?: () => RouteUseItem[]) => RouteItem;
59
- /**
60
- * Define a layout that wraps child routes
61
- * ```typescript
62
- * layout(<RootLayout />, () => [
63
- * route("home", HomePage),
64
- * route("about", AboutPage),
65
- * ])
66
- *
67
- * // With dynamic layout handler
68
- * layout(async (ctx) => {
69
- * const user = ctx.get("user");
70
- * return <DashboardShell user={user} />;
71
- * }, () => [
72
- * middleware(authMiddleware),
73
- * route("dashboard", DashboardPage),
74
- * ])
75
- * ```
76
- * @param component - Static JSX or async handler for the layout
77
- * @param use - Callback returning child routes, middleware, loaders, etc.
78
- */
79
- layout: (component: ReactNode | Handler<any, any, TEnv>, use?: () => LayoutUseItem[]) => LayoutItem;
80
- /**
81
- * Define parallel routes that render simultaneously in named slots
82
- * ```typescript
83
- * parallel({
84
- * "@sidebar": <Sidebar />,
85
- * "@main": async (ctx) => <MainContent data={ctx.use(DataLoader)} />,
86
- * })
87
- *
88
- * // With loaders and loading states
89
- * parallel({
90
- * "@analytics": AnalyticsPanel,
91
- * "@metrics": MetricsPanel,
92
- * }, () => [
93
- * loader(DashboardLoader),
94
- * loading(<DashboardSkeleton />),
95
- * ])
96
- * ```
97
- * @param slots - Object with slot names (prefixed with @) mapped to handlers
98
- * @param use - Optional callback for loaders, loading, revalidate, etc.
99
- */
100
- parallel: <TSlots extends Record<`@${string}`, Handler<any, any, TEnv> | ReactNode>>(slots: TSlots, use?: () => ParallelUseItem[]) => ParallelItem;
101
- /**
102
- * Define an intercepting route for soft navigation
103
- *
104
- * When soft-navigating to the target route from within the current layout,
105
- * the intercept handler renders in the named slot instead of the route's
106
- * default handler. Direct navigation uses the route's handler.
107
- *
108
- * ```typescript
109
- * // In a layout - intercept "card" route as modal
110
- * layout(<KanbanLayout />, () => [
111
- * intercept("@modal", "card", () => <CardModal />),
112
- * ])
113
- *
114
- * // With loaders and revalidation
115
- * intercept("@modal", "card", () => <CardModal />, () => [
116
- * loader(CardModalLoader),
117
- * revalidate(() => false),
118
- * ])
119
- * ```
120
- * @param slotName - Named slot (prefixed with @) where intercept renders
121
- * @param routeName - Route name to intercept
122
- * @param handler - Component or handler for intercepted render
123
- * @param use - Optional callback for loaders, middleware, revalidate, etc.
124
- */
125
- intercept: <K extends keyof ResolvedRouteMap<T> & string>(slotName: `@${string}`, routeName: K, handler: ReactNode | Handler<ExtractRouteParams<T, K>, {}, TEnv>, use?: () => InterceptUseItem[]) => InterceptItem;
126
- /**
127
- * Attach middleware to the current route/layout
128
- * ```typescript
129
- * middleware(async (ctx, next) => {
130
- * const session = await getSession(ctx.request);
131
- * if (!session) return redirect("/login");
132
- * ctx.set("user", session.user);
133
- * next();
134
- * })
135
- *
136
- * // Chain multiple middleware
137
- * middleware(authMiddleware, loggingMiddleware, rateLimitMiddleware)
138
- * ```
139
- * @param fns - One or more middleware functions to execute in order
140
- */
141
- middleware: (...fns: MiddlewareFn<TEnv>[]) => MiddlewareItem;
142
- /**
143
- * Control when a segment should revalidate during navigation
144
- * ```typescript
145
- * // Revalidate when params change
146
- * revalidate(({ currentParams, nextParams }) =>
147
- * currentParams.slug !== nextParams.slug
148
- * )
149
- *
150
- * // Revalidate after specific actions (actionId format: "path/to/file.ts#exportName")
151
- * revalidate(({ actionId }) =>
152
- * actionId?.includes("Cart") ?? false
153
- * )
154
- *
155
- * // Soft decision (suggest but allow override)
156
- * revalidate(({ defaultShouldRevalidate }) =>
157
- * ({ defaultShouldRevalidate: true })
158
- * )
159
- * ```
160
- * @param fn - Function that returns boolean (hard) or { defaultShouldRevalidate } (soft)
161
- */
162
- revalidate: (fn: ShouldRevalidateFn<any, TEnv>) => RevalidateItem;
163
- /**
164
- * Attach a data loader to the current route/layout
165
- * ```typescript
166
- * loader(ProductLoader)
167
- *
168
- * // With loader-specific revalidation (match by file or export name)
169
- * loader(CartLoader, () => [
170
- * revalidate(({ actionId }) => actionId?.includes("Cart") ?? false),
171
- * ])
172
- *
173
- * // Access loader data in handlers via ctx.use()
174
- * route("products.detail", async (ctx) => {
175
- * const product = await ctx.use(ProductLoader);
176
- * return <ProductPage product={product} />;
177
- * })
178
- * ```
179
- * @param loaderDef - Loader created with createLoader()
180
- * @param use - Optional callback for loader-specific revalidation rules
181
- */
182
- loader: <TData>(loaderDef: LoaderDefinition<TData>, use?: () => LoaderUseItem[]) => LoaderItem;
183
- /**
184
- * Attach a loading component to the current route/layout
185
- * ```typescript
186
- * // Show loading on all requests (including SSR)
187
- * loading(<Skeleton />)
188
- *
189
- * // Skip loading on SSR, only show on client navigation
190
- * loading(<Skeleton />, { ssr: false })
191
- * ```
192
- * @param component - The loading UI to show during navigation
193
- * @param options - Configuration options
194
- * @param options.ssr - If false, skip showing loading on document requests (SSR)
195
- */
196
- loading: (component: ReactNode, options?: {
197
- ssr?: boolean;
198
- }) => LoadingItem;
199
- /**
200
- * Attach an error boundary to catch errors in this segment and children
201
- * ```typescript
202
- * errorBoundary(<ErrorFallback />)
203
- *
204
- * // With dynamic error handler
205
- * errorBoundary(({ error, reset }) => (
206
- * <div>
207
- * <h2>Something went wrong</h2>
208
- * <p>{error.message}</p>
209
- * <button onClick={reset}>Try again</button>
210
- * </div>
211
- * ))
212
- * ```
213
- * @param fallback - Static JSX or handler receiving error info and reset function
214
- */
215
- errorBoundary: (fallback: ReactNode | ErrorBoundaryHandler) => ErrorBoundaryItem;
216
- /**
217
- * Attach a not-found boundary to handle notFound() calls in this segment
218
- * ```typescript
219
- * notFoundBoundary(<ProductNotFound />)
220
- *
221
- * // With dynamic handler
222
- * notFoundBoundary(({ notFound }) => (
223
- * <div>
224
- * <h2>{notFound.message}</h2>
225
- * <a href="/products">Browse all products</a>
226
- * </div>
227
- * ))
228
- * ```
229
- * @param fallback - Static JSX or handler receiving not-found info
230
- */
231
- notFoundBoundary: (fallback: ReactNode | NotFoundBoundaryHandler) => NotFoundBoundaryItem;
232
- /**
233
- * Define a condition for when an intercept should activate
234
- *
235
- * Only valid inside intercept() use() callback. When multiple when() calls
236
- * are present, ALL must return true for the intercept to activate.
237
- * If no when() is defined, the intercept always activates on soft navigation.
238
- *
239
- * Context properties:
240
- * - `from` - Source URL (where user is navigating from)
241
- * - `to` - Destination URL (where user is navigating to)
242
- * - `params` - Matched route params
243
- * - `segments` - Client's current segments with `path` and `ids`
244
- *
245
- * ```typescript
246
- * // Only intercept when coming from the board page
247
- * intercept("@modal", "card", <CardModal />, () => [
248
- * when(({ from }) => from.pathname.startsWith("/board")),
249
- * loader(CardDetailLoader),
250
- * ])
251
- *
252
- * // Use segments to check current route context
253
- * intercept("@modal", "card", <CardModal />, () => [
254
- * when(({ segments }) => segments.path[0] === "kanban"),
255
- * ])
256
- *
257
- * // Multiple conditions (AND logic)
258
- * intercept("@modal", "card", <CardModal />, () => [
259
- * when(({ from }) => from.pathname.startsWith("/board")),
260
- * when(({ segments }) => segments.ids.includes("kanban-layout")),
261
- * ])
262
- * ```
263
- * @param fn - Selector function receiving navigation context, returns boolean
264
- */
265
- when: (fn: InterceptWhenFn) => WhenItem;
266
- /**
267
- * Define cache configuration for segments
268
- *
269
- * Creates a cache boundary that applies to all children unless overridden.
270
- * Cache config inherits down the route tree like middleware wrapping.
271
- *
272
- * When ttl is not specified, uses store defaults (explicit store first,
273
- * then app-level store). When store is not specified, uses app-level store.
274
- *
275
- * Note: Loaders are NOT cached by default. Use cache() inside loader()
276
- * to explicitly opt-in to loader caching.
277
- *
278
- * ```typescript
279
- * // Using app-level defaults (ttl inherited from store.defaults)
280
- * cache(() => [
281
- * layout(<BlogLayout />), // cached with default TTL
282
- * route("post/:slug"), // cached with default TTL
283
- * ])
284
- *
285
- * // Cache all segments with explicit 60s TTL
286
- * cache({ ttl: 60 }, () => [
287
- * layout(<BlogLayout />), // cached
288
- * route("post/:slug"), // cached
289
- * ])
290
- *
291
- * // With stale-while-revalidate
292
- * cache({ ttl: 60, swr: 300 }, () => [
293
- * route("product/:id"),
294
- * ])
295
- *
296
- * // Override for specific section
297
- * cache({ ttl: 60 }, () => [
298
- * layout(<RootLayout />),
299
- * cache({ ttl: 300 }, () => [
300
- * route("static-page"), // longer TTL
301
- * ]),
302
- * cache(false, () => [
303
- * route("admin"), // not cached
304
- * ]),
305
- * ])
306
- *
307
- * // Use different store for specific routes
308
- * cache({ store: kvStore, ttl: 3600 }, () => [
309
- * route("archive/:year"), // uses KV store
310
- * ])
311
- *
312
- * // Opt-in loader caching
313
- * route("product/:id", ProductHandler, () => [
314
- * loader(ProductLoader), // NOT cached (default)
315
- * loader(StaticMetadata, () => [
316
- * cache({ ttl: 3600 }), // cached for 1 hour
317
- * ]),
318
- * ])
319
- * ```
320
- * @param optionsOrChildren - Cache options, false to disable, or children callback
321
- * @param children - Optional callback returning child segments (when first arg is options)
322
- */
323
- cache: {
324
- (): CacheItem;
325
- (children: () => AllUseItems[]): CacheItem;
326
- (options: PartialCacheOptions | false, use?: () => AllUseItems[]): CacheItem;
327
- };
328
- };
329
- /**
330
- * Branded type for route handlers that carries the route type info.
331
- * This enables type-safe verification that imported handlers match route definitions.
332
- */
333
- export interface RouteHandlers<T extends RouteDefinition> {
334
- (): Array<AllUseItems>;
335
- /** Brand to carry route type info for type checking */
336
- readonly __routes: T;
337
- }
338
- /**
339
- * Type-safe handler definition helper
340
- *
341
- */
342
- export declare function map<const T extends RouteDefinition, TEnv = DefaultEnv>(builder: (helpers: RouteHelpers<T, TEnv>) => Array<AllUseItems>): RouteHandlers<T>;
343
- /**
344
- * Create RouteHelpers for inline route definitions
345
- * Used internally by router.map() for inline handler syntax
346
- */
347
- export declare function createRouteHelpers<T extends RouteDefinition, TEnv>(): RouteHelpers<T, TEnv>;
348
- /**
349
- * Create a loader definition
350
- *
351
- * Loaders are RSC-compatible data fetchers that:
352
- * - Run after middleware, before handlers
353
- * - Are scoped to where attached (layout/route subtree)
354
- * - Revalidate independently from UI segments
355
- * - Are memoized per request (multiple ctx.use() calls return same value)
356
- *
357
- * Use the `"use server"` directive inside the loader function to ensure
358
- * the function is stripped from client bundles.
359
- *
360
- * Return type is automatically inferred from the callback.
361
- *
362
- * @param fn - Async function that fetches data (should contain "use server" directive)
363
- * @param fetchable - Optional flag to make the loader fetchable via useFetchLoader
364
- *
365
- * @example
366
- * ```typescript
367
- * // loaders/cart.ts - return type inferred from callback
368
- * export const CartLoader = createLoader(async (ctx) => {
369
- * "use server";
370
- * const user = ctx.get("user");
371
- * return await db.cart.get(user.id); // Return type inferred!
372
- * });
373
- *
374
- * // loaders/product.ts - return type inferred
375
- * export const ProductLoader = createLoader(async (ctx) => {
376
- * "use server";
377
- * const { slug } = ctx.params;
378
- * return await db.products.findBySlug(slug); // Return type inferred!
379
- * });
380
- *
381
- * // Usage in handlers
382
- * layout(<ShopLayout />, () => [
383
- * loader(CartLoader),
384
- * loader(CartLoader, () => [
385
- * revalidate(({ actionId }) => actionId?.includes("Cart") ?? false),
386
- * ]),
387
- * ])
388
- *
389
- * // Server-side access
390
- * route("cart", (ctx) => {
391
- * const cart = ctx.use(CartLoader);
392
- * return <CartPage cart={cart} />;
393
- * });
394
- *
395
- * // Client-side access
396
- * const cart = useLoader(CartLoader);
397
- * ```
398
- */
399
- export { createLoader } from "./loader.rsc.js";
400
- /**
401
- * Create a soft redirect Response for middleware short-circuit
402
- *
403
- * Returns a Response that signals a client-side navigation to the target URL.
404
- * Unlike Response.redirect() which causes a full page reload, this redirect
405
- * is handled by the router for SPA-style navigation.
406
- *
407
- * @param url - The URL to redirect to
408
- * @param status - HTTP status code (default: 302)
409
- *
410
- * @example
411
- * ```typescript
412
- * middleware((ctx, next) => {
413
- * if (!ctx.get('user')) {
414
- * return redirect('/login');
415
- * }
416
- * next();
417
- * })
418
- * ```
419
- */
420
- export declare function redirect(url: string, status?: number): Response;
421
- //# sourceMappingURL=route-definition.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"route-definition.d.ts","sourceRoot":"","sources":["../src/route-definition.ts"],"names":[],"mappings":"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"}