@rangojs/router 0.0.0-experimental.112 → 0.0.0-experimental.113

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 (830) hide show
  1. package/dist/bin/rango.js +1 -1
  2. package/dist/vite/index.js +4 -4
  3. package/package.json +17 -18
  4. package/skills/cache-guide/SKILL.md +35 -24
  5. package/skills/caching/SKILL.md +115 -7
  6. package/skills/document-cache/SKILL.md +78 -55
  7. package/skills/hooks/SKILL.md +37 -19
  8. package/skills/loader/SKILL.md +3 -3
  9. package/skills/rango/SKILL.md +15 -10
  10. package/skills/use-cache/SKILL.md +34 -5
  11. package/src/browser/react/location-state-shared.ts +93 -3
  12. package/src/build/route-types/per-module-writer.ts +4 -1
  13. package/src/cache/cache-scope.ts +28 -42
  14. package/src/cache/cf/cf-cache-store.ts +49 -6
  15. package/src/loader-store.ts +62 -25
  16. package/src/loader.ts +1 -5
  17. package/src/route-definition/helpers-types.ts +13 -4
  18. package/src/router/loader-resolution.ts +16 -2
  19. package/src/router/match-middleware/cache-lookup.ts +44 -91
  20. package/src/router/match-middleware/cache-store.ts +3 -2
  21. package/src/segment-system.tsx +41 -8
  22. package/src/server/context.ts +26 -0
  23. package/src/server/cookie-store.ts +28 -4
  24. package/src/types/handler-context.ts +5 -2
  25. package/src/use-loader.tsx +89 -42
  26. package/src/vite/plugins/use-cache-transform.ts +12 -10
  27. package/dist/__internal.d.ts +0 -83
  28. package/dist/__internal.d.ts.map +0 -1
  29. package/dist/__internal.js +0 -19
  30. package/dist/__internal.js.map +0 -1
  31. package/dist/__mocks__/version.d.ts +0 -7
  32. package/dist/__mocks__/version.d.ts.map +0 -1
  33. package/dist/__mocks__/version.js +0 -7
  34. package/dist/__mocks__/version.js.map +0 -1
  35. package/dist/__tests__/client-href.test.d.ts +0 -2
  36. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  37. package/dist/__tests__/client-href.test.js +0 -74
  38. package/dist/__tests__/client-href.test.js.map +0 -1
  39. package/dist/__tests__/component-utils.test.d.ts +0 -2
  40. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  41. package/dist/__tests__/component-utils.test.js +0 -51
  42. package/dist/__tests__/component-utils.test.js.map +0 -1
  43. package/dist/__tests__/event-controller.test.d.ts +0 -2
  44. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  45. package/dist/__tests__/event-controller.test.js +0 -538
  46. package/dist/__tests__/event-controller.test.js.map +0 -1
  47. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  48. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  49. package/dist/__tests__/helpers/route-tree.js +0 -374
  50. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  51. package/dist/__tests__/match-result.test.d.ts +0 -2
  52. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  53. package/dist/__tests__/match-result.test.js +0 -154
  54. package/dist/__tests__/match-result.test.js.map +0 -1
  55. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  56. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  57. package/dist/__tests__/navigation-store.test.js +0 -440
  58. package/dist/__tests__/navigation-store.test.js.map +0 -1
  59. package/dist/__tests__/partial-update.test.d.ts +0 -2
  60. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  61. package/dist/__tests__/partial-update.test.js +0 -1009
  62. package/dist/__tests__/partial-update.test.js.map +0 -1
  63. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  64. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  65. package/dist/__tests__/reverse-types.test.js +0 -656
  66. package/dist/__tests__/reverse-types.test.js.map +0 -1
  67. package/dist/__tests__/route-definition.test.d.ts +0 -2
  68. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  69. package/dist/__tests__/route-definition.test.js +0 -55
  70. package/dist/__tests__/route-definition.test.js.map +0 -1
  71. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  72. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  73. package/dist/__tests__/router-helpers.test.js +0 -377
  74. package/dist/__tests__/router-helpers.test.js.map +0 -1
  75. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  76. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  77. package/dist/__tests__/router-integration-2.test.js +0 -426
  78. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  79. package/dist/__tests__/router-integration.test.d.ts +0 -2
  80. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  81. package/dist/__tests__/router-integration.test.js +0 -1051
  82. package/dist/__tests__/router-integration.test.js.map +0 -1
  83. package/dist/__tests__/search-params.test.d.ts +0 -5
  84. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  85. package/dist/__tests__/search-params.test.js +0 -306
  86. package/dist/__tests__/search-params.test.js.map +0 -1
  87. package/dist/__tests__/segment-system.test.d.ts +0 -2
  88. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  89. package/dist/__tests__/segment-system.test.js +0 -627
  90. package/dist/__tests__/segment-system.test.js.map +0 -1
  91. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  92. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  93. package/dist/__tests__/static-handler-types.test.js +0 -63
  94. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  95. package/dist/__tests__/urls.test.d.ts +0 -2
  96. package/dist/__tests__/urls.test.d.ts.map +0 -1
  97. package/dist/__tests__/urls.test.js +0 -421
  98. package/dist/__tests__/urls.test.js.map +0 -1
  99. package/dist/__tests__/use-mount.test.d.ts +0 -2
  100. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  101. package/dist/__tests__/use-mount.test.js +0 -35
  102. package/dist/__tests__/use-mount.test.js.map +0 -1
  103. package/dist/bin/rango.d.ts +0 -2
  104. package/dist/bin/rango.d.ts.map +0 -1
  105. package/dist/bin/rango.js.map +0 -1
  106. package/dist/browser/event-controller.d.ts +0 -191
  107. package/dist/browser/event-controller.d.ts.map +0 -1
  108. package/dist/browser/event-controller.js +0 -559
  109. package/dist/browser/event-controller.js.map +0 -1
  110. package/dist/browser/index.d.ts +0 -2
  111. package/dist/browser/index.d.ts.map +0 -1
  112. package/dist/browser/index.js +0 -14
  113. package/dist/browser/index.js.map +0 -1
  114. package/dist/browser/link-interceptor.d.ts +0 -38
  115. package/dist/browser/link-interceptor.d.ts.map +0 -1
  116. package/dist/browser/link-interceptor.js +0 -99
  117. package/dist/browser/link-interceptor.js.map +0 -1
  118. package/dist/browser/logging.d.ts +0 -10
  119. package/dist/browser/logging.d.ts.map +0 -1
  120. package/dist/browser/logging.js +0 -29
  121. package/dist/browser/logging.js.map +0 -1
  122. package/dist/browser/lru-cache.d.ts +0 -17
  123. package/dist/browser/lru-cache.d.ts.map +0 -1
  124. package/dist/browser/lru-cache.js +0 -50
  125. package/dist/browser/lru-cache.js.map +0 -1
  126. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  127. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  128. package/dist/browser/merge-segment-loaders.js +0 -102
  129. package/dist/browser/merge-segment-loaders.js.map +0 -1
  130. package/dist/browser/navigation-bridge.d.ts +0 -102
  131. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  132. package/dist/browser/navigation-bridge.js +0 -708
  133. package/dist/browser/navigation-bridge.js.map +0 -1
  134. package/dist/browser/navigation-client.d.ts +0 -25
  135. package/dist/browser/navigation-client.d.ts.map +0 -1
  136. package/dist/browser/navigation-client.js +0 -157
  137. package/dist/browser/navigation-client.js.map +0 -1
  138. package/dist/browser/navigation-store.d.ts +0 -101
  139. package/dist/browser/navigation-store.d.ts.map +0 -1
  140. package/dist/browser/navigation-store.js +0 -625
  141. package/dist/browser/navigation-store.js.map +0 -1
  142. package/dist/browser/partial-update.d.ts +0 -75
  143. package/dist/browser/partial-update.d.ts.map +0 -1
  144. package/dist/browser/partial-update.js +0 -426
  145. package/dist/browser/partial-update.js.map +0 -1
  146. package/dist/browser/react/Link.d.ts +0 -86
  147. package/dist/browser/react/Link.d.ts.map +0 -1
  148. package/dist/browser/react/Link.js +0 -128
  149. package/dist/browser/react/Link.js.map +0 -1
  150. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  151. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  152. package/dist/browser/react/NavigationProvider.js +0 -216
  153. package/dist/browser/react/NavigationProvider.js.map +0 -1
  154. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  155. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  156. package/dist/browser/react/ScrollRestoration.js +0 -57
  157. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  158. package/dist/browser/react/context.d.ts +0 -46
  159. package/dist/browser/react/context.d.ts.map +0 -1
  160. package/dist/browser/react/context.js +0 -10
  161. package/dist/browser/react/context.js.map +0 -1
  162. package/dist/browser/react/index.d.ts +0 -11
  163. package/dist/browser/react/index.d.ts.map +0 -1
  164. package/dist/browser/react/index.js +0 -22
  165. package/dist/browser/react/index.js.map +0 -1
  166. package/dist/browser/react/location-state-shared.d.ts +0 -63
  167. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  168. package/dist/browser/react/location-state-shared.js +0 -81
  169. package/dist/browser/react/location-state-shared.js.map +0 -1
  170. package/dist/browser/react/location-state.d.ts +0 -23
  171. package/dist/browser/react/location-state.d.ts.map +0 -1
  172. package/dist/browser/react/location-state.js +0 -29
  173. package/dist/browser/react/location-state.js.map +0 -1
  174. package/dist/browser/react/mount-context.d.ts +0 -24
  175. package/dist/browser/react/mount-context.d.ts.map +0 -1
  176. package/dist/browser/react/mount-context.js +0 -24
  177. package/dist/browser/react/mount-context.js.map +0 -1
  178. package/dist/browser/react/use-action.d.ts +0 -64
  179. package/dist/browser/react/use-action.d.ts.map +0 -1
  180. package/dist/browser/react/use-action.js +0 -134
  181. package/dist/browser/react/use-action.js.map +0 -1
  182. package/dist/browser/react/use-client-cache.d.ts +0 -41
  183. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  184. package/dist/browser/react/use-client-cache.js +0 -39
  185. package/dist/browser/react/use-client-cache.js.map +0 -1
  186. package/dist/browser/react/use-handle.d.ts +0 -31
  187. package/dist/browser/react/use-handle.d.ts.map +0 -1
  188. package/dist/browser/react/use-handle.js +0 -144
  189. package/dist/browser/react/use-handle.js.map +0 -1
  190. package/dist/browser/react/use-href.d.ts +0 -33
  191. package/dist/browser/react/use-href.d.ts.map +0 -1
  192. package/dist/browser/react/use-href.js +0 -39
  193. package/dist/browser/react/use-href.js.map +0 -1
  194. package/dist/browser/react/use-link-status.d.ts +0 -37
  195. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  196. package/dist/browser/react/use-link-status.js +0 -99
  197. package/dist/browser/react/use-link-status.js.map +0 -1
  198. package/dist/browser/react/use-mount.d.ts +0 -25
  199. package/dist/browser/react/use-mount.d.ts.map +0 -1
  200. package/dist/browser/react/use-mount.js +0 -30
  201. package/dist/browser/react/use-mount.js.map +0 -1
  202. package/dist/browser/react/use-navigation.d.ts +0 -27
  203. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  204. package/dist/browser/react/use-navigation.js +0 -87
  205. package/dist/browser/react/use-navigation.js.map +0 -1
  206. package/dist/browser/react/use-segments.d.ts +0 -38
  207. package/dist/browser/react/use-segments.d.ts.map +0 -1
  208. package/dist/browser/react/use-segments.js +0 -130
  209. package/dist/browser/react/use-segments.js.map +0 -1
  210. package/dist/browser/request-controller.d.ts +0 -26
  211. package/dist/browser/request-controller.d.ts.map +0 -1
  212. package/dist/browser/request-controller.js +0 -147
  213. package/dist/browser/request-controller.js.map +0 -1
  214. package/dist/browser/rsc-router.d.ts +0 -129
  215. package/dist/browser/rsc-router.d.ts.map +0 -1
  216. package/dist/browser/rsc-router.js +0 -195
  217. package/dist/browser/rsc-router.js.map +0 -1
  218. package/dist/browser/scroll-restoration.d.ts +0 -93
  219. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  220. package/dist/browser/scroll-restoration.js +0 -321
  221. package/dist/browser/scroll-restoration.js.map +0 -1
  222. package/dist/browser/segment-structure-assert.d.ts +0 -17
  223. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  224. package/dist/browser/segment-structure-assert.js +0 -59
  225. package/dist/browser/segment-structure-assert.js.map +0 -1
  226. package/dist/browser/server-action-bridge.d.ts +0 -26
  227. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  228. package/dist/browser/server-action-bridge.js +0 -668
  229. package/dist/browser/server-action-bridge.js.map +0 -1
  230. package/dist/browser/shallow.d.ts +0 -12
  231. package/dist/browser/shallow.d.ts.map +0 -1
  232. package/dist/browser/shallow.js +0 -34
  233. package/dist/browser/shallow.js.map +0 -1
  234. package/dist/browser/types.d.ts +0 -369
  235. package/dist/browser/types.d.ts.map +0 -1
  236. package/dist/browser/types.js +0 -2
  237. package/dist/browser/types.js.map +0 -1
  238. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  239. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  240. package/dist/build/__tests__/generate-cli.test.js +0 -237
  241. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  242. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  243. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  244. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  245. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  246. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  247. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  248. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  249. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  250. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  251. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  252. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  253. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  254. package/dist/build/generate-manifest.d.ts +0 -81
  255. package/dist/build/generate-manifest.d.ts.map +0 -1
  256. package/dist/build/generate-manifest.js +0 -276
  257. package/dist/build/generate-manifest.js.map +0 -1
  258. package/dist/build/generate-route-types.d.ts +0 -115
  259. package/dist/build/generate-route-types.d.ts.map +0 -1
  260. package/dist/build/generate-route-types.js +0 -740
  261. package/dist/build/generate-route-types.js.map +0 -1
  262. package/dist/build/index.d.ts +0 -21
  263. package/dist/build/index.d.ts.map +0 -1
  264. package/dist/build/index.js +0 -21
  265. package/dist/build/index.js.map +0 -1
  266. package/dist/build/route-trie.d.ts +0 -71
  267. package/dist/build/route-trie.d.ts.map +0 -1
  268. package/dist/build/route-trie.js +0 -175
  269. package/dist/build/route-trie.js.map +0 -1
  270. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  271. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  272. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  273. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  274. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  275. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  276. package/dist/cache/__tests__/document-cache.test.js +0 -345
  277. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  278. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  279. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  280. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  281. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  282. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  283. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  284. package/dist/cache/__tests__/memory-store.test.js +0 -367
  285. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  286. package/dist/cache/cache-scope.d.ts +0 -102
  287. package/dist/cache/cache-scope.d.ts.map +0 -1
  288. package/dist/cache/cache-scope.js +0 -440
  289. package/dist/cache/cache-scope.js.map +0 -1
  290. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  291. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  292. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  293. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  294. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  295. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  296. package/dist/cache/cf/cf-cache-store.js +0 -242
  297. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  298. package/dist/cache/cf/index.d.ts +0 -14
  299. package/dist/cache/cf/index.d.ts.map +0 -1
  300. package/dist/cache/cf/index.js +0 -17
  301. package/dist/cache/cf/index.js.map +0 -1
  302. package/dist/cache/document-cache.d.ts +0 -64
  303. package/dist/cache/document-cache.d.ts.map +0 -1
  304. package/dist/cache/document-cache.js +0 -228
  305. package/dist/cache/document-cache.js.map +0 -1
  306. package/dist/cache/index.d.ts +0 -19
  307. package/dist/cache/index.d.ts.map +0 -1
  308. package/dist/cache/index.js +0 -21
  309. package/dist/cache/index.js.map +0 -1
  310. package/dist/cache/memory-segment-store.d.ts +0 -110
  311. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  312. package/dist/cache/memory-segment-store.js +0 -117
  313. package/dist/cache/memory-segment-store.js.map +0 -1
  314. package/dist/cache/memory-store.d.ts +0 -41
  315. package/dist/cache/memory-store.d.ts.map +0 -1
  316. package/dist/cache/memory-store.js +0 -191
  317. package/dist/cache/memory-store.js.map +0 -1
  318. package/dist/cache/types.d.ts +0 -317
  319. package/dist/cache/types.d.ts.map +0 -1
  320. package/dist/cache/types.js +0 -12
  321. package/dist/cache/types.js.map +0 -1
  322. package/dist/client.d.ts +0 -248
  323. package/dist/client.d.ts.map +0 -1
  324. package/dist/client.js +0 -367
  325. package/dist/client.js.map +0 -1
  326. package/dist/client.rsc.d.ts +0 -26
  327. package/dist/client.rsc.d.ts.map +0 -1
  328. package/dist/client.rsc.js +0 -46
  329. package/dist/client.rsc.js.map +0 -1
  330. package/dist/component-utils.d.ts +0 -36
  331. package/dist/component-utils.d.ts.map +0 -1
  332. package/dist/component-utils.js +0 -61
  333. package/dist/component-utils.js.map +0 -1
  334. package/dist/components/DefaultDocument.d.ts +0 -13
  335. package/dist/components/DefaultDocument.d.ts.map +0 -1
  336. package/dist/components/DefaultDocument.js +0 -15
  337. package/dist/components/DefaultDocument.js.map +0 -1
  338. package/dist/debug.d.ts +0 -58
  339. package/dist/debug.d.ts.map +0 -1
  340. package/dist/debug.js +0 -157
  341. package/dist/debug.js.map +0 -1
  342. package/dist/default-error-boundary.d.ts +0 -11
  343. package/dist/default-error-boundary.d.ts.map +0 -1
  344. package/dist/default-error-boundary.js +0 -45
  345. package/dist/default-error-boundary.js.map +0 -1
  346. package/dist/deps/browser.d.ts +0 -2
  347. package/dist/deps/browser.d.ts.map +0 -1
  348. package/dist/deps/browser.js +0 -3
  349. package/dist/deps/browser.js.map +0 -1
  350. package/dist/deps/html-stream-client.d.ts +0 -2
  351. package/dist/deps/html-stream-client.d.ts.map +0 -1
  352. package/dist/deps/html-stream-client.js +0 -3
  353. package/dist/deps/html-stream-client.js.map +0 -1
  354. package/dist/deps/html-stream-server.d.ts +0 -2
  355. package/dist/deps/html-stream-server.d.ts.map +0 -1
  356. package/dist/deps/html-stream-server.js +0 -3
  357. package/dist/deps/html-stream-server.js.map +0 -1
  358. package/dist/deps/rsc.d.ts +0 -2
  359. package/dist/deps/rsc.d.ts.map +0 -1
  360. package/dist/deps/rsc.js +0 -4
  361. package/dist/deps/rsc.js.map +0 -1
  362. package/dist/deps/ssr.d.ts +0 -2
  363. package/dist/deps/ssr.d.ts.map +0 -1
  364. package/dist/deps/ssr.js +0 -3
  365. package/dist/deps/ssr.js.map +0 -1
  366. package/dist/errors.d.ts +0 -174
  367. package/dist/errors.d.ts.map +0 -1
  368. package/dist/errors.js +0 -241
  369. package/dist/errors.js.map +0 -1
  370. package/dist/handle.d.ts +0 -78
  371. package/dist/handle.d.ts.map +0 -1
  372. package/dist/handle.js +0 -82
  373. package/dist/handle.js.map +0 -1
  374. package/dist/handles/MetaTags.d.ts +0 -14
  375. package/dist/handles/MetaTags.d.ts.map +0 -1
  376. package/dist/handles/MetaTags.js +0 -136
  377. package/dist/handles/MetaTags.js.map +0 -1
  378. package/dist/handles/index.d.ts +0 -6
  379. package/dist/handles/index.d.ts.map +0 -1
  380. package/dist/handles/index.js +0 -6
  381. package/dist/handles/index.js.map +0 -1
  382. package/dist/handles/meta.d.ts +0 -39
  383. package/dist/handles/meta.d.ts.map +0 -1
  384. package/dist/handles/meta.js +0 -202
  385. package/dist/handles/meta.js.map +0 -1
  386. package/dist/host/__tests__/errors.test.d.ts +0 -2
  387. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  388. package/dist/host/__tests__/errors.test.js +0 -76
  389. package/dist/host/__tests__/errors.test.js.map +0 -1
  390. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  391. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  392. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  393. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  394. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  395. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  396. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  397. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  398. package/dist/host/__tests__/router.test.d.ts +0 -2
  399. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  400. package/dist/host/__tests__/router.test.js +0 -241
  401. package/dist/host/__tests__/router.test.js.map +0 -1
  402. package/dist/host/__tests__/testing.test.d.ts +0 -2
  403. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  404. package/dist/host/__tests__/testing.test.js +0 -64
  405. package/dist/host/__tests__/testing.test.js.map +0 -1
  406. package/dist/host/__tests__/utils.test.d.ts +0 -2
  407. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  408. package/dist/host/__tests__/utils.test.js +0 -29
  409. package/dist/host/__tests__/utils.test.js.map +0 -1
  410. package/dist/host/cookie-handler.d.ts +0 -34
  411. package/dist/host/cookie-handler.d.ts.map +0 -1
  412. package/dist/host/cookie-handler.js +0 -124
  413. package/dist/host/cookie-handler.js.map +0 -1
  414. package/dist/host/errors.d.ts +0 -56
  415. package/dist/host/errors.d.ts.map +0 -1
  416. package/dist/host/errors.js +0 -79
  417. package/dist/host/errors.js.map +0 -1
  418. package/dist/host/index.d.ts +0 -29
  419. package/dist/host/index.d.ts.map +0 -1
  420. package/dist/host/index.js +0 -32
  421. package/dist/host/index.js.map +0 -1
  422. package/dist/host/pattern-matcher.d.ts +0 -36
  423. package/dist/host/pattern-matcher.d.ts.map +0 -1
  424. package/dist/host/pattern-matcher.js +0 -172
  425. package/dist/host/pattern-matcher.js.map +0 -1
  426. package/dist/host/router.d.ts +0 -26
  427. package/dist/host/router.d.ts.map +0 -1
  428. package/dist/host/router.js +0 -218
  429. package/dist/host/router.js.map +0 -1
  430. package/dist/host/testing.d.ts +0 -36
  431. package/dist/host/testing.d.ts.map +0 -1
  432. package/dist/host/testing.js +0 -55
  433. package/dist/host/testing.js.map +0 -1
  434. package/dist/host/types.d.ts +0 -115
  435. package/dist/host/types.d.ts.map +0 -1
  436. package/dist/host/types.js +0 -7
  437. package/dist/host/types.js.map +0 -1
  438. package/dist/host/utils.d.ts +0 -21
  439. package/dist/host/utils.d.ts.map +0 -1
  440. package/dist/host/utils.js +0 -23
  441. package/dist/host/utils.js.map +0 -1
  442. package/dist/href-client.d.ts +0 -131
  443. package/dist/href-client.d.ts.map +0 -1
  444. package/dist/href-client.js +0 -64
  445. package/dist/href-client.js.map +0 -1
  446. package/dist/href-context.d.ts +0 -29
  447. package/dist/href-context.d.ts.map +0 -1
  448. package/dist/href-context.js +0 -21
  449. package/dist/href-context.js.map +0 -1
  450. package/dist/index.d.ts +0 -73
  451. package/dist/index.d.ts.map +0 -1
  452. package/dist/index.js +0 -91
  453. package/dist/index.js.map +0 -1
  454. package/dist/index.rsc.d.ts +0 -32
  455. package/dist/index.rsc.d.ts.map +0 -1
  456. package/dist/index.rsc.js +0 -40
  457. package/dist/index.rsc.js.map +0 -1
  458. package/dist/internal-debug.d.ts +0 -2
  459. package/dist/internal-debug.d.ts.map +0 -1
  460. package/dist/internal-debug.js +0 -5
  461. package/dist/internal-debug.js.map +0 -1
  462. package/dist/loader.d.ts +0 -14
  463. package/dist/loader.d.ts.map +0 -1
  464. package/dist/loader.js +0 -20
  465. package/dist/loader.js.map +0 -1
  466. package/dist/loader.rsc.d.ts +0 -19
  467. package/dist/loader.rsc.d.ts.map +0 -1
  468. package/dist/loader.rsc.js +0 -99
  469. package/dist/loader.rsc.js.map +0 -1
  470. package/dist/network-error-thrower.d.ts +0 -17
  471. package/dist/network-error-thrower.d.ts.map +0 -1
  472. package/dist/network-error-thrower.js +0 -14
  473. package/dist/network-error-thrower.js.map +0 -1
  474. package/dist/outlet-context.d.ts +0 -13
  475. package/dist/outlet-context.d.ts.map +0 -1
  476. package/dist/outlet-context.js +0 -3
  477. package/dist/outlet-context.js.map +0 -1
  478. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  479. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  480. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  481. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  482. package/dist/prerender/param-hash.d.ts +0 -16
  483. package/dist/prerender/param-hash.d.ts.map +0 -1
  484. package/dist/prerender/param-hash.js +0 -36
  485. package/dist/prerender/param-hash.js.map +0 -1
  486. package/dist/prerender/store.d.ts +0 -38
  487. package/dist/prerender/store.d.ts.map +0 -1
  488. package/dist/prerender/store.js +0 -61
  489. package/dist/prerender/store.js.map +0 -1
  490. package/dist/prerender.d.ts +0 -66
  491. package/dist/prerender.d.ts.map +0 -1
  492. package/dist/prerender.js +0 -57
  493. package/dist/prerender.js.map +0 -1
  494. package/dist/reverse.d.ts +0 -196
  495. package/dist/reverse.d.ts.map +0 -1
  496. package/dist/reverse.js +0 -78
  497. package/dist/reverse.js.map +0 -1
  498. package/dist/root-error-boundary.d.ts +0 -33
  499. package/dist/root-error-boundary.d.ts.map +0 -1
  500. package/dist/root-error-boundary.js +0 -165
  501. package/dist/root-error-boundary.js.map +0 -1
  502. package/dist/route-content-wrapper.d.ts +0 -46
  503. package/dist/route-content-wrapper.d.ts.map +0 -1
  504. package/dist/route-content-wrapper.js +0 -77
  505. package/dist/route-content-wrapper.js.map +0 -1
  506. package/dist/route-definition.d.ts +0 -421
  507. package/dist/route-definition.d.ts.map +0 -1
  508. package/dist/route-definition.js +0 -868
  509. package/dist/route-definition.js.map +0 -1
  510. package/dist/route-map-builder.d.ts +0 -155
  511. package/dist/route-map-builder.d.ts.map +0 -1
  512. package/dist/route-map-builder.js +0 -237
  513. package/dist/route-map-builder.js.map +0 -1
  514. package/dist/route-types.d.ts +0 -165
  515. package/dist/route-types.d.ts.map +0 -1
  516. package/dist/route-types.js +0 -7
  517. package/dist/route-types.js.map +0 -1
  518. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  519. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  520. package/dist/router/__tests__/handler-context.test.js +0 -65
  521. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  522. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  523. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  524. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  525. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  526. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  527. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  528. package/dist/router/__tests__/match-context.test.js +0 -92
  529. package/dist/router/__tests__/match-context.test.js.map +0 -1
  530. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  531. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  532. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  533. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  534. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  535. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  536. package/dist/router/__tests__/match-result.test.js +0 -457
  537. package/dist/router/__tests__/match-result.test.js.map +0 -1
  538. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  539. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  540. package/dist/router/__tests__/on-error.test.js +0 -678
  541. package/dist/router/__tests__/on-error.test.js.map +0 -1
  542. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  543. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  544. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  545. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  546. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  547. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  548. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  549. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  550. package/dist/router/error-handling.d.ts +0 -77
  551. package/dist/router/error-handling.d.ts.map +0 -1
  552. package/dist/router/error-handling.js +0 -202
  553. package/dist/router/error-handling.js.map +0 -1
  554. package/dist/router/handler-context.d.ts +0 -20
  555. package/dist/router/handler-context.d.ts.map +0 -1
  556. package/dist/router/handler-context.js +0 -198
  557. package/dist/router/handler-context.js.map +0 -1
  558. package/dist/router/intercept-resolution.d.ts +0 -66
  559. package/dist/router/intercept-resolution.d.ts.map +0 -1
  560. package/dist/router/intercept-resolution.js +0 -246
  561. package/dist/router/intercept-resolution.js.map +0 -1
  562. package/dist/router/loader-resolution.d.ts +0 -64
  563. package/dist/router/loader-resolution.d.ts.map +0 -1
  564. package/dist/router/loader-resolution.js +0 -284
  565. package/dist/router/loader-resolution.js.map +0 -1
  566. package/dist/router/logging.d.ts +0 -15
  567. package/dist/router/logging.d.ts.map +0 -1
  568. package/dist/router/logging.js +0 -99
  569. package/dist/router/logging.js.map +0 -1
  570. package/dist/router/manifest.d.ts +0 -22
  571. package/dist/router/manifest.d.ts.map +0 -1
  572. package/dist/router/manifest.js +0 -181
  573. package/dist/router/manifest.js.map +0 -1
  574. package/dist/router/match-api.d.ts +0 -35
  575. package/dist/router/match-api.d.ts.map +0 -1
  576. package/dist/router/match-api.js +0 -406
  577. package/dist/router/match-api.js.map +0 -1
  578. package/dist/router/match-context.d.ts +0 -206
  579. package/dist/router/match-context.d.ts.map +0 -1
  580. package/dist/router/match-context.js +0 -17
  581. package/dist/router/match-context.js.map +0 -1
  582. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  583. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  584. package/dist/router/match-middleware/background-revalidation.js +0 -75
  585. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  586. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  587. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  588. package/dist/router/match-middleware/cache-lookup.js +0 -257
  589. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  590. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  591. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  592. package/dist/router/match-middleware/cache-store.js +0 -108
  593. package/dist/router/match-middleware/cache-store.js.map +0 -1
  594. package/dist/router/match-middleware/index.d.ts +0 -81
  595. package/dist/router/match-middleware/index.d.ts.map +0 -1
  596. package/dist/router/match-middleware/index.js +0 -80
  597. package/dist/router/match-middleware/index.js.map +0 -1
  598. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  599. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  600. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  601. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  602. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  603. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  604. package/dist/router/match-middleware/segment-resolution.js +0 -53
  605. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  606. package/dist/router/match-pipelines.d.ts +0 -147
  607. package/dist/router/match-pipelines.d.ts.map +0 -1
  608. package/dist/router/match-pipelines.js +0 -82
  609. package/dist/router/match-pipelines.js.map +0 -1
  610. package/dist/router/match-result.d.ts +0 -126
  611. package/dist/router/match-result.d.ts.map +0 -1
  612. package/dist/router/match-result.js +0 -93
  613. package/dist/router/match-result.js.map +0 -1
  614. package/dist/router/metrics.d.ts +0 -20
  615. package/dist/router/metrics.d.ts.map +0 -1
  616. package/dist/router/metrics.js +0 -47
  617. package/dist/router/metrics.js.map +0 -1
  618. package/dist/router/middleware.d.ts +0 -249
  619. package/dist/router/middleware.d.ts.map +0 -1
  620. package/dist/router/middleware.js +0 -434
  621. package/dist/router/middleware.js.map +0 -1
  622. package/dist/router/middleware.test.d.ts +0 -2
  623. package/dist/router/middleware.test.d.ts.map +0 -1
  624. package/dist/router/middleware.test.js +0 -816
  625. package/dist/router/middleware.test.js.map +0 -1
  626. package/dist/router/pattern-matching.d.ts +0 -149
  627. package/dist/router/pattern-matching.d.ts.map +0 -1
  628. package/dist/router/pattern-matching.js +0 -349
  629. package/dist/router/pattern-matching.js.map +0 -1
  630. package/dist/router/revalidation.d.ts +0 -44
  631. package/dist/router/revalidation.d.ts.map +0 -1
  632. package/dist/router/revalidation.js +0 -147
  633. package/dist/router/revalidation.js.map +0 -1
  634. package/dist/router/router-context.d.ts +0 -135
  635. package/dist/router/router-context.d.ts.map +0 -1
  636. package/dist/router/router-context.js +0 -36
  637. package/dist/router/router-context.js.map +0 -1
  638. package/dist/router/segment-resolution.d.ts +0 -127
  639. package/dist/router/segment-resolution.d.ts.map +0 -1
  640. package/dist/router/segment-resolution.js +0 -919
  641. package/dist/router/segment-resolution.js.map +0 -1
  642. package/dist/router/trie-matching.d.ts +0 -40
  643. package/dist/router/trie-matching.d.ts.map +0 -1
  644. package/dist/router/trie-matching.js +0 -127
  645. package/dist/router/trie-matching.js.map +0 -1
  646. package/dist/router/types.d.ts +0 -136
  647. package/dist/router/types.d.ts.map +0 -1
  648. package/dist/router/types.js +0 -7
  649. package/dist/router/types.js.map +0 -1
  650. package/dist/router.d.ts +0 -753
  651. package/dist/router.d.ts.map +0 -1
  652. package/dist/router.gen.d.ts +0 -6
  653. package/dist/router.gen.d.ts.map +0 -1
  654. package/dist/router.gen.js +0 -6
  655. package/dist/router.gen.js.map +0 -1
  656. package/dist/router.js +0 -1304
  657. package/dist/router.js.map +0 -1
  658. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  659. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  660. package/dist/rsc/__tests__/helpers.test.js +0 -140
  661. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  662. package/dist/rsc/handler.d.ts +0 -45
  663. package/dist/rsc/handler.d.ts.map +0 -1
  664. package/dist/rsc/handler.js +0 -1172
  665. package/dist/rsc/handler.js.map +0 -1
  666. package/dist/rsc/helpers.d.ts +0 -16
  667. package/dist/rsc/helpers.d.ts.map +0 -1
  668. package/dist/rsc/helpers.js +0 -55
  669. package/dist/rsc/helpers.js.map +0 -1
  670. package/dist/rsc/index.d.ts +0 -22
  671. package/dist/rsc/index.d.ts.map +0 -1
  672. package/dist/rsc/index.js +0 -23
  673. package/dist/rsc/index.js.map +0 -1
  674. package/dist/rsc/nonce.d.ts +0 -9
  675. package/dist/rsc/nonce.d.ts.map +0 -1
  676. package/dist/rsc/nonce.js +0 -18
  677. package/dist/rsc/nonce.js.map +0 -1
  678. package/dist/rsc/types.d.ts +0 -206
  679. package/dist/rsc/types.d.ts.map +0 -1
  680. package/dist/rsc/types.js +0 -8
  681. package/dist/rsc/types.js.map +0 -1
  682. package/dist/search-params.d.ts +0 -103
  683. package/dist/search-params.d.ts.map +0 -1
  684. package/dist/search-params.js +0 -74
  685. package/dist/search-params.js.map +0 -1
  686. package/dist/segment-system.d.ts +0 -75
  687. package/dist/segment-system.d.ts.map +0 -1
  688. package/dist/segment-system.js +0 -336
  689. package/dist/segment-system.js.map +0 -1
  690. package/dist/server/context.d.ts +0 -245
  691. package/dist/server/context.d.ts.map +0 -1
  692. package/dist/server/context.js +0 -197
  693. package/dist/server/context.js.map +0 -1
  694. package/dist/server/fetchable-loader-store.d.ts +0 -18
  695. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  696. package/dist/server/fetchable-loader-store.js +0 -18
  697. package/dist/server/fetchable-loader-store.js.map +0 -1
  698. package/dist/server/handle-store.d.ts +0 -85
  699. package/dist/server/handle-store.d.ts.map +0 -1
  700. package/dist/server/handle-store.js +0 -142
  701. package/dist/server/handle-store.js.map +0 -1
  702. package/dist/server/loader-registry.d.ts +0 -55
  703. package/dist/server/loader-registry.d.ts.map +0 -1
  704. package/dist/server/loader-registry.js +0 -132
  705. package/dist/server/loader-registry.js.map +0 -1
  706. package/dist/server/request-context.d.ts +0 -226
  707. package/dist/server/request-context.d.ts.map +0 -1
  708. package/dist/server/request-context.js +0 -290
  709. package/dist/server/request-context.js.map +0 -1
  710. package/dist/server/root-layout.d.ts +0 -4
  711. package/dist/server/root-layout.d.ts.map +0 -1
  712. package/dist/server/root-layout.js +0 -5
  713. package/dist/server/root-layout.js.map +0 -1
  714. package/dist/server.d.ts +0 -15
  715. package/dist/server.d.ts.map +0 -1
  716. package/dist/server.js +0 -20
  717. package/dist/server.js.map +0 -1
  718. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  719. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  720. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  721. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  722. package/dist/ssr/index.d.ts +0 -98
  723. package/dist/ssr/index.d.ts.map +0 -1
  724. package/dist/ssr/index.js +0 -158
  725. package/dist/ssr/index.js.map +0 -1
  726. package/dist/static-handler.d.ts +0 -50
  727. package/dist/static-handler.d.ts.map +0 -1
  728. package/dist/static-handler.gen.d.ts +0 -5
  729. package/dist/static-handler.gen.d.ts.map +0 -1
  730. package/dist/static-handler.gen.js +0 -5
  731. package/dist/static-handler.gen.js.map +0 -1
  732. package/dist/static-handler.js +0 -29
  733. package/dist/static-handler.js.map +0 -1
  734. package/dist/theme/ThemeProvider.d.ts +0 -20
  735. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  736. package/dist/theme/ThemeProvider.js +0 -240
  737. package/dist/theme/ThemeProvider.js.map +0 -1
  738. package/dist/theme/ThemeScript.d.ts +0 -48
  739. package/dist/theme/ThemeScript.d.ts.map +0 -1
  740. package/dist/theme/ThemeScript.js +0 -13
  741. package/dist/theme/ThemeScript.js.map +0 -1
  742. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  743. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  744. package/dist/theme/__tests__/theme.test.js +0 -103
  745. package/dist/theme/__tests__/theme.test.js.map +0 -1
  746. package/dist/theme/constants.d.ts +0 -29
  747. package/dist/theme/constants.d.ts.map +0 -1
  748. package/dist/theme/constants.js +0 -48
  749. package/dist/theme/constants.js.map +0 -1
  750. package/dist/theme/index.d.ts +0 -31
  751. package/dist/theme/index.d.ts.map +0 -1
  752. package/dist/theme/index.js +0 -36
  753. package/dist/theme/index.js.map +0 -1
  754. package/dist/theme/theme-context.d.ts +0 -40
  755. package/dist/theme/theme-context.d.ts.map +0 -1
  756. package/dist/theme/theme-context.js +0 -60
  757. package/dist/theme/theme-context.js.map +0 -1
  758. package/dist/theme/theme-script.d.ts +0 -27
  759. package/dist/theme/theme-script.d.ts.map +0 -1
  760. package/dist/theme/theme-script.js +0 -147
  761. package/dist/theme/theme-script.js.map +0 -1
  762. package/dist/theme/types.d.ts +0 -163
  763. package/dist/theme/types.d.ts.map +0 -1
  764. package/dist/theme/types.js +0 -11
  765. package/dist/theme/types.js.map +0 -1
  766. package/dist/theme/use-theme.d.ts +0 -12
  767. package/dist/theme/use-theme.d.ts.map +0 -1
  768. package/dist/theme/use-theme.js +0 -40
  769. package/dist/theme/use-theme.js.map +0 -1
  770. package/dist/types.d.ts +0 -1479
  771. package/dist/types.d.ts.map +0 -1
  772. package/dist/types.js +0 -10
  773. package/dist/types.js.map +0 -1
  774. package/dist/urls.d.ts +0 -441
  775. package/dist/urls.d.ts.map +0 -1
  776. package/dist/urls.gen.d.ts +0 -8
  777. package/dist/urls.gen.d.ts.map +0 -1
  778. package/dist/urls.gen.js +0 -8
  779. package/dist/urls.gen.js.map +0 -1
  780. package/dist/urls.js +0 -443
  781. package/dist/urls.js.map +0 -1
  782. package/dist/use-loader.d.ts +0 -127
  783. package/dist/use-loader.d.ts.map +0 -1
  784. package/dist/use-loader.js +0 -237
  785. package/dist/use-loader.js.map +0 -1
  786. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  787. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  788. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  789. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  790. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  791. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  792. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  793. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  794. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  795. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  796. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  797. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  798. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  799. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  800. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  801. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  802. package/dist/vite/ast-handler-extract.d.ts +0 -49
  803. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  804. package/dist/vite/ast-handler-extract.js +0 -249
  805. package/dist/vite/ast-handler-extract.js.map +0 -1
  806. package/dist/vite/expose-action-id.d.ts +0 -19
  807. package/dist/vite/expose-action-id.d.ts.map +0 -1
  808. package/dist/vite/expose-action-id.js +0 -250
  809. package/dist/vite/expose-action-id.js.map +0 -1
  810. package/dist/vite/expose-id-utils.d.ts +0 -69
  811. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  812. package/dist/vite/expose-id-utils.js +0 -289
  813. package/dist/vite/expose-id-utils.js.map +0 -1
  814. package/dist/vite/expose-internal-ids.d.ts +0 -22
  815. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  816. package/dist/vite/expose-internal-ids.js +0 -886
  817. package/dist/vite/expose-internal-ids.js.map +0 -1
  818. package/dist/vite/index.d.ts +0 -149
  819. package/dist/vite/index.d.ts.map +0 -1
  820. package/dist/vite/index.js.bak +0 -5448
  821. package/dist/vite/index.js.map +0 -1
  822. package/dist/vite/index.named-routes.gen.ts +0 -103
  823. package/dist/vite/package-resolution.d.ts +0 -43
  824. package/dist/vite/package-resolution.d.ts.map +0 -1
  825. package/dist/vite/package-resolution.js +0 -112
  826. package/dist/vite/package-resolution.js.map +0 -1
  827. package/dist/vite/virtual-entries.d.ts +0 -25
  828. package/dist/vite/virtual-entries.d.ts.map +0 -1
  829. package/dist/vite/virtual-entries.js +0 -110
  830. package/dist/vite/virtual-entries.js.map +0 -1
package/dist/router.d.ts DELETED
@@ -1,753 +0,0 @@
1
- import type { ComponentType } from "react";
2
- import { type ReactNode } from "react";
3
- import type { SegmentCacheStore } from "./cache/types.js";
4
- import { type SerializedManifest } from "./debug.js";
5
- import { type ReverseFunction, type PrefixRoutePatterns } from "./reverse.js";
6
- import { type RouteHandlers } from "./route-definition.js";
7
- import type { AllUseItems } from "./route-types.js";
8
- import type { UrlPatterns } from "./urls.js";
9
- import type { ErrorBoundaryHandler, ErrorInfo, HandlerContext, MatchResult, NotFoundBoundaryHandler, OnErrorCallback, RouteDefinition } from "./types";
10
- import type { NonceProvider } from "./rsc/types.js";
11
- import { type ExecutionContext } from "./server/request-context.js";
12
- import type { SerializedSegmentData, SegmentHandleData } from "./cache/types.js";
13
- import { type MiddlewareEntry, type MiddlewareFn } from "./router/middleware.js";
14
- /**
15
- * Props passed to the root layout component
16
- */
17
- export interface RootLayoutProps {
18
- children: ReactNode;
19
- }
20
- /**
21
- * Router configuration options
22
- */
23
- /**
24
- * Brand marker for identifying router instances at build time.
25
- * Used by the Vite plugin to auto-discover routers from module exports.
26
- */
27
- export declare const RSC_ROUTER_BRAND: "__rsc_router__";
28
- /**
29
- * Global registry of all router instances created via createRouter().
30
- * Each router is keyed by its id (auto-generated or user-provided).
31
- * Used by the Vite plugin at build time to discover routers and extract
32
- * manifests, prefix trees, and pre-render candidates.
33
- */
34
- export declare const RouterRegistry: Map<string, RSCRouter<any, any>>;
35
- export interface RSCRouterOptions<TEnv = any> {
36
- /**
37
- * Unique identifier for this router instance.
38
- * Used to namespace static output files and route maps.
39
- * Auto-generated if not provided.
40
- */
41
- id?: string;
42
- /**
43
- * Injected by the Vite transform at compile time.
44
- * Hash of filename + line number for stable cross-environment ID.
45
- * @internal
46
- */
47
- $$id?: string;
48
- /**
49
- * Enable performance metrics collection
50
- * When enabled, metrics are output to console and available via Server-Timing header
51
- */
52
- debugPerformance?: boolean;
53
- /**
54
- * Allow the `?__debug_manifest` query parameter to return route manifest data as JSON.
55
- * In development mode this is always enabled regardless of this setting.
56
- * Defaults to true. Set to false to disable in production.
57
- * @internal
58
- */
59
- allowDebugManifest?: boolean;
60
- /**
61
- * Document component that wraps the entire application.
62
- *
63
- * This component provides the HTML structure for your app and wraps
64
- * both normal route content AND error states, preventing the app shell
65
- * from unmounting during errors (avoids FOUC).
66
- *
67
- * Must be a client component ("use client") that accepts { children }.
68
- *
69
- * If not provided, a default document with basic HTML structure is used:
70
- * `<html><head><meta charset/viewport></head><body>{children}</body></html>`
71
- *
72
- * @example
73
- * ```typescript
74
- * // components/Document.tsx
75
- * "use client";
76
- * export function Document({ children }: { children: ReactNode }) {
77
- * return (
78
- * <html lang="en">
79
- * <head>
80
- * <link rel="stylesheet" href="/styles.css" />
81
- * </head>
82
- * <body>
83
- * <nav>...</nav>
84
- * {children}
85
- * </body>
86
- * </html>
87
- * );
88
- * }
89
- *
90
- * // router.tsx
91
- * const router = createRouter<AppEnv>({
92
- * document: Document,
93
- * });
94
- * ```
95
- */
96
- document?: ComponentType<RootLayoutProps>;
97
- /**
98
- * Default error boundary fallback used when no error boundary is defined in the route tree
99
- * If not provided, errors will propagate and crash the request
100
- */
101
- defaultErrorBoundary?: ReactNode | ErrorBoundaryHandler;
102
- /**
103
- * Default not-found boundary fallback used when no notFoundBoundary is defined in the route tree
104
- * If not provided, DataNotFoundError will be treated as a regular error
105
- */
106
- defaultNotFoundBoundary?: ReactNode | NotFoundBoundaryHandler;
107
- /**
108
- * Component to render when no route matches the requested URL.
109
- *
110
- * This is rendered within your document/app shell with a 404 status code.
111
- * Use this for a custom 404 page that maintains your app's look and feel.
112
- *
113
- * If not provided, a default "Page not found" component is rendered.
114
- *
115
- * Can be a static ReactNode or a function receiving the pathname.
116
- *
117
- * @example
118
- * ```typescript
119
- * // Simple static component
120
- * const router = createRouter<AppEnv>({
121
- * document: Document,
122
- * notFound: <NotFound404 />,
123
- * });
124
- *
125
- * // Dynamic component with pathname
126
- * const router = createRouter<AppEnv>({
127
- * document: Document,
128
- * notFound: ({ pathname }) => (
129
- * <div>
130
- * <h1>404 - Not Found</h1>
131
- * <p>No page exists at {pathname}</p>
132
- * <a href="/">Go home</a>
133
- * </div>
134
- * ),
135
- * });
136
- * ```
137
- */
138
- notFound?: ReactNode | ((props: {
139
- pathname: string;
140
- }) => ReactNode);
141
- /**
142
- * Callback invoked when an error occurs during request handling.
143
- *
144
- * This callback is for notification/logging purposes - it cannot modify
145
- * the error handling flow. Use errorBoundary() in route definitions to
146
- * customize error UI.
147
- *
148
- * The callback receives comprehensive context about the error including:
149
- * - The error itself
150
- * - Phase where it occurred (routing, middleware, loader, handler, etc.)
151
- * - Request info (URL, method, params)
152
- * - Route info (routeKey, segmentId)
153
- * - Environment/bindings
154
- * - Duration from request start
155
- *
156
- * @example
157
- * ```typescript
158
- * const router = createRouter<AppEnv>({
159
- * onError: (context) => {
160
- * // Send to error tracking service
161
- * Sentry.captureException(context.error, {
162
- * tags: {
163
- * phase: context.phase,
164
- * route: context.routeKey,
165
- * },
166
- * extra: {
167
- * url: context.url.toString(),
168
- * params: context.params,
169
- * duration: context.duration,
170
- * },
171
- * });
172
- * },
173
- * });
174
- * ```
175
- */
176
- onError?: OnErrorCallback<TEnv>;
177
- /**
178
- * Cache store for segment caching.
179
- *
180
- * When provided, enables route-level caching via cache() boundaries.
181
- * The store handles persistence (memory, KV, Redis, etc.).
182
- *
183
- * Can be a static config or a function receiving env for runtime bindings.
184
- *
185
- * @example Static config
186
- * ```typescript
187
- * import { MemorySegmentCacheStore } from "rsc-router/rsc";
188
- *
189
- * const router = createRouter({
190
- * cache: {
191
- * store: new MemorySegmentCacheStore({ defaults: { ttl: 60 } }),
192
- * },
193
- * });
194
- * ```
195
- *
196
- * @example Dynamic config with env (e.g., Cloudflare Workers with ExecutionContext)
197
- * ```typescript
198
- * const router = createRouter<AppEnv>({
199
- * cache: (env) => ({
200
- * store: new CFCacheStore({
201
- * defaults: { ttl: 60 },
202
- * ctx: env.ctx, // ExecutionContext for non-blocking writes
203
- * }),
204
- * }),
205
- * });
206
- * ```
207
- */
208
- cache?: {
209
- store: SegmentCacheStore;
210
- enabled?: boolean;
211
- } | ((env: TEnv & {
212
- ctx?: ExecutionContext;
213
- }) => {
214
- store: SegmentCacheStore;
215
- enabled?: boolean;
216
- });
217
- /**
218
- * Theme configuration for automatic theme management.
219
- *
220
- * When provided, enables:
221
- * - ctx.theme and ctx.setTheme() in route handlers
222
- * - useTheme() hook for client components
223
- * - FOUC prevention via inline script in MetaTags
224
- * - Automatic ThemeProvider wrapping in NavigationProvider
225
- *
226
- * @example
227
- * ```typescript
228
- * const router = createRouter<AppEnv>({
229
- * theme: {
230
- * defaultTheme: "system",
231
- * themes: ["light", "dark"],
232
- * }
233
- * });
234
- *
235
- * // In route handler:
236
- * route("settings", (ctx) => {
237
- * const theme = ctx.theme; // "light" | "dark" | "system"
238
- * ctx.setTheme("dark"); // Sets cookie
239
- * return <SettingsPage />;
240
- * });
241
- *
242
- * // In client component:
243
- * import { useTheme } from "@rangojs/router/theme";
244
- *
245
- * function ThemeToggle() {
246
- * const { theme, setTheme, themes } = useTheme();
247
- * return <select value={theme} onChange={e => setTheme(e.target.value)}>
248
- * {themes.map(t => <option key={t}>{t}</option>)}
249
- * </select>;
250
- * }
251
- * ```
252
- *
253
- * Use `theme: true` to enable with all defaults.
254
- */
255
- theme?: import("./theme/types.js").ThemeConfig | true;
256
- /**
257
- * URL patterns to register with the router.
258
- *
259
- * Alternative to calling `.routes()` method - allows passing patterns
260
- * directly in the config for a more concise setup.
261
- *
262
- * @example
263
- * ```typescript
264
- * import { urls } from "@rangojs/router/server";
265
- *
266
- * const urlpatterns = urls(({ path, layout }) => [
267
- * path("/", HomePage, { name: "home" }),
268
- * path("/about", AboutPage, { name: "about" }),
269
- * ]);
270
- *
271
- * const router = createRouter<AppEnv>({
272
- * document: Document,
273
- * urls: urlpatterns,
274
- * });
275
- * ```
276
- */
277
- urls?: UrlPatterns<TEnv, any>;
278
- /**
279
- * Injected by the Vite transform at compile time.
280
- * Static import of NamedRoutes from the generated named-routes file.
281
- * Provides O(1) reverse() fallback when lazy includes haven't resolved.
282
- * @internal
283
- */
284
- $$routeNames?: Record<string, string>;
285
- /**
286
- * Nonce provider for Content Security Policy (CSP).
287
- *
288
- * Can be:
289
- * - A function that returns a nonce string
290
- * - A function that returns `true` to auto-generate a nonce
291
- * - Undefined to disable nonce (default)
292
- *
293
- * The nonce will be applied to inline scripts injected by the RSC payload.
294
- * It's also available to middleware via `ctx.get('nonce')`.
295
- *
296
- * @example Auto-generate nonce
297
- * ```tsx
298
- * createRouter({
299
- * nonce: () => true,
300
- * });
301
- * ```
302
- *
303
- * @example Custom nonce from request context
304
- * ```tsx
305
- * createRouter({
306
- * nonce: (request, env) => env.nonce,
307
- * });
308
- * ```
309
- */
310
- nonce?: NonceProvider<TEnv>;
311
- /**
312
- * RSC version string included in metadata.
313
- * The browser sends this back on partial requests to detect version mismatches.
314
- *
315
- * Defaults to the auto-generated VERSION from `@rangojs/router:version` virtual module.
316
- * Only set this if you need a custom versioning strategy.
317
- *
318
- * @default VERSION from @rangojs/router:version
319
- */
320
- version?: string;
321
- /**
322
- * Enable connection warmup to keep TCP+TLS alive after idle periods.
323
- *
324
- * When enabled, the client sends a HEAD request after the user returns
325
- * from an idle period (60s+), prewarming the TLS connection before
326
- * the next navigation.
327
- *
328
- * @default true
329
- */
330
- warmup?: boolean;
331
- }
332
- /**
333
- * Merge route patterns with response types into a single route map.
334
- * Routes with response types get { path, response } objects; others stay as strings.
335
- * Handles both plain string routes and { path, search } object routes.
336
- */
337
- type MergeRoutesWithResponses<TRoutes extends Record<string, unknown>, TResponses> = {
338
- [K in keyof TRoutes]: K extends keyof NonNullable<TResponses> ? unknown extends NonNullable<TResponses>[K] ? TRoutes[K] : TRoutes[K] extends {
339
- readonly path: infer P extends string;
340
- } ? TRoutes[K] & {
341
- readonly response: NonNullable<TResponses>[K];
342
- } : {
343
- readonly path: TRoutes[K] & string;
344
- readonly response: NonNullable<TResponses>[K];
345
- } : TRoutes[K];
346
- };
347
- /**
348
- * Extract the URL pattern from a route entry (string or { path, response } object)
349
- */
350
- type PatternOfEntry<V> = V extends string ? V : V extends {
351
- readonly path: infer P extends string;
352
- } ? P : never;
353
- /**
354
- * Type-level detection of conflicting route keys.
355
- * Extracts keys that exist in both TExisting and TNew but with different URL patterns.
356
- * Returns `never` if no conflicts exist.
357
- * Compares patterns (not full entries) to handle both string and { path, response } values.
358
- *
359
- * @example
360
- * ```typescript
361
- * ConflictingKeys<{ a: "/a" }, { a: "/b" }> // "a" (conflict - same key, different URLs)
362
- * ConflictingKeys<{ a: "/a" }, { a: "/a" }> // never (no conflict - same key and URL)
363
- * ConflictingKeys<{ a: "/a" }, { b: "/b" }> // never (no conflict - different keys)
364
- * ```
365
- */
366
- type ConflictingKeys<TExisting extends Record<string, unknown>, TNew extends Record<string, unknown>> = {
367
- [K in keyof TExisting & keyof TNew]: PatternOfEntry<TExisting[K]> extends PatternOfEntry<TNew[K]> ? PatternOfEntry<TNew[K]> extends PatternOfEntry<TExisting[K]> ? never : K : K;
368
- }[keyof TExisting & keyof TNew];
369
- /**
370
- * Error type returned when route keys conflict.
371
- * Methods require an impossible `never` parameter so TypeScript errors at the call site.
372
- */
373
- type RouteConflictError<TConflicts extends string> = {
374
- __error: `Route key conflict! Key "${TConflicts}" already exists with a different URL pattern.`;
375
- hint: "Route keys must be globally unique. Use prefixed names like 'blog.index' instead of 'index'.";
376
- conflictingKeys: TConflicts;
377
- routes: (__conflict: `Fix route key conflict: "${TConflicts}" is already defined with a different URL pattern`) => never;
378
- map: (__conflict: `Fix route key conflict: "${TConflicts}" is already defined with a different URL pattern`) => never;
379
- };
380
- /**
381
- * Simplified route helpers for inline route definitions.
382
- * Uses TRoutes (Record<string, string>) instead of RouteDefinition.
383
- *
384
- * Note: Some helpers use `any` for context types as a trade-off for simpler usage.
385
- * The main type safety is in the `route` helper which enforces valid route names.
386
- * For full type safety, use the standard map() API with separate handler files.
387
- */
388
- type InlineRouteHelpers<TRoutes extends Record<string, string>, TEnv> = {
389
- /**
390
- * Define a route handler for a specific route pattern
391
- */
392
- route: <K extends keyof TRoutes & string>(name: K, handler: ((ctx: HandlerContext<{}, TEnv>) => ReactNode | Promise<ReactNode>) | ReactNode) => AllUseItems;
393
- /**
394
- * Define a layout that wraps child routes
395
- */
396
- layout: (component: ReactNode | ((ctx: HandlerContext<any, TEnv>) => ReactNode | Promise<ReactNode>), use?: () => AllUseItems[]) => AllUseItems;
397
- /**
398
- * Define parallel routes
399
- */
400
- parallel: (slots: Record<`@${string}`, ReactNode | ((ctx: HandlerContext<any, TEnv>) => ReactNode | Promise<ReactNode>)>, use?: () => AllUseItems[]) => AllUseItems;
401
- /**
402
- * Define route middleware
403
- */
404
- middleware: (fn: (ctx: any, next: () => Promise<void>) => Promise<void>) => AllUseItems;
405
- /**
406
- * Define revalidation handlers
407
- */
408
- revalidate: (fn: (ctx: any) => boolean | Promise<boolean>) => AllUseItems;
409
- /**
410
- * Define data loaders
411
- */
412
- loader: (loader: any, use?: () => AllUseItems[]) => AllUseItems;
413
- /**
414
- * Define loading states
415
- */
416
- loading: (component: ReactNode) => AllUseItems;
417
- /**
418
- * Define error boundaries
419
- */
420
- errorBoundary: (handler: ReactNode | ((props: {
421
- error: Error;
422
- }) => ReactNode)) => AllUseItems;
423
- /**
424
- * Define not found boundaries
425
- */
426
- notFoundBoundary: (handler: ReactNode | ((props: {
427
- pathname: string;
428
- }) => ReactNode)) => AllUseItems;
429
- /**
430
- * Define intercept routes
431
- */
432
- intercept: (name: string, handler: ReactNode | ((ctx: HandlerContext<any, TEnv>) => ReactNode | Promise<ReactNode>), use?: () => AllUseItems[]) => AllUseItems;
433
- /**
434
- * Define when conditions for intercepts
435
- */
436
- when: (condition: (ctx: any) => boolean | Promise<boolean>) => AllUseItems;
437
- /**
438
- * Define cache configuration
439
- */
440
- cache: (config: {
441
- ttl?: number;
442
- swr?: number;
443
- } | false, use?: () => AllUseItems[]) => AllUseItems;
444
- };
445
- /**
446
- * Router builder for chaining .use() and .map()
447
- * TRoutes accumulates all registered route types through the chain
448
- * TLocalRoutes contains the routes for the current .routes() call (for inline handler typing)
449
- */
450
- interface RouteBuilder<T extends RouteDefinition, TEnv, TRoutes extends Record<string, unknown>, TLocalRoutes extends Record<string, string> = Record<string, string>> {
451
- /**
452
- * Add middleware scoped to this mount
453
- * Called between .routes() and .map()
454
- *
455
- * @example
456
- * ```typescript
457
- * .routes("/admin", adminRoutes)
458
- * .use(authMiddleware) // All of /admin/*
459
- * .use("/danger/*", superAuth) // Only /admin/danger/*
460
- * .map(() => import("./admin"))
461
- * ```
462
- */
463
- use(patternOrMiddleware: string | MiddlewareFn<TEnv>, middleware?: MiddlewareFn<TEnv>): RouteBuilder<T, TEnv, TRoutes, TLocalRoutes>;
464
- /**
465
- * Map routes to handlers
466
- *
467
- * Supports two patterns:
468
- *
469
- * 1. Lazy loading (code-split):
470
- * ```typescript
471
- * .routes(homeRoutes)
472
- * .map(() => import("./handlers/home"))
473
- * ```
474
- *
475
- * 2. Inline definition:
476
- * ```typescript
477
- * .routes({ index: "/", about: "/about" })
478
- * .map(({ route }) => [
479
- * route("index", () => <HomePage />),
480
- * route("about", () => <AboutPage />),
481
- * ])
482
- * ```
483
- */
484
- map<H extends (helpers: InlineRouteHelpers<TLocalRoutes, TEnv>) => Array<AllUseItems>>(handler: H): RSCRouter<TEnv, TRoutes>;
485
- map(handler: () => Array<AllUseItems> | Promise<{
486
- default: RouteHandlers<TLocalRoutes>;
487
- }> | Promise<RouteHandlers<TLocalRoutes>>): RSCRouter<TEnv, TRoutes>;
488
- /**
489
- * Accumulated route map for typeof extraction
490
- * Used for module augmentation: `type AppRoutes = typeof _router.routeMap`
491
- */
492
- readonly routeMap: TRoutes;
493
- }
494
- /**
495
- * RSC Router interface
496
- * TRoutes accumulates all registered route types through the builder chain
497
- */
498
- export interface RSCRouter<TEnv = any, TRoutes extends Record<string, unknown> = Record<string, string>> {
499
- /**
500
- * Brand marker for build-time discovery.
501
- * The Vite plugin uses this to identify router instances in module exports.
502
- */
503
- readonly __brand: typeof RSC_ROUTER_BRAND;
504
- /**
505
- * Unique identifier for this router instance.
506
- * Used to namespace static output and isolate route maps between routers.
507
- */
508
- readonly id: string;
509
- /**
510
- * Register routes with a prefix
511
- * Route keys stay unchanged, only URL patterns get the prefix applied.
512
- * This enables composable route modules that work regardless of mount point.
513
- *
514
- * @throws Compile-time error if route keys conflict with previously registered routes
515
- */
516
- routes<const TPrefix extends string, const T extends Record<string, string>>(prefix: TPrefix, routes: T): ConflictingKeys<TRoutes, PrefixRoutePatterns<T, TPrefix>> extends never ? RouteBuilder<RouteDefinition, TEnv, TRoutes & PrefixRoutePatterns<T, TPrefix>, T> : RouteConflictError<ConflictingKeys<TRoutes, PrefixRoutePatterns<T, TPrefix>> & string>;
517
- /**
518
- * Register routes without a prefix
519
- * Route types are accumulated through the chain
520
- *
521
- * @throws Compile-time error if route keys conflict with previously registered routes
522
- */
523
- routes<const T extends Record<string, string>>(routes: T): ConflictingKeys<TRoutes, T> extends never ? RouteBuilder<RouteDefinition, TEnv, TRoutes & T, T> : RouteConflictError<ConflictingKeys<TRoutes, T> & string>;
524
- /**
525
- * Register routes using Django-style URL patterns
526
- * This is the new API for @rangojs/router - call once with urls() result
527
- *
528
- * @example
529
- * ```typescript
530
- * createRouter({})
531
- * .routes(urlpatterns) // Single call with urls() result
532
- * ```
533
- */
534
- routes<T extends UrlPatterns<TEnv, any>>(patterns: T): RSCRouter<TEnv, TRoutes & (NonNullable<T["_routes"]> extends Record<string, unknown> ? MergeRoutesWithResponses<NonNullable<T["_routes"]>, T["_responses"]> : Record<string, string>)>;
535
- /**
536
- * Add global middleware that runs on all routes
537
- * Position matters: middleware before any .routes() is global
538
- *
539
- * @example
540
- * ```typescript
541
- * createRouter({ document: RootLayout })
542
- * .use(loggerMiddleware) // All routes
543
- * .use("/api/*", rateLimiter) // Pattern match
544
- * .routes(homeRoutes)
545
- * .map(() => import("./home"))
546
- * ```
547
- */
548
- use(patternOrMiddleware: string | MiddlewareFn<TEnv>, middleware?: MiddlewareFn<TEnv>): RSCRouter<TEnv, TRoutes>;
549
- /**
550
- * Type-safe URL builder for registered routes
551
- * Types are inferred from the accumulated route registrations
552
- * Route keys stay unchanged regardless of mount prefix.
553
- *
554
- * @example
555
- * ```typescript
556
- * // Given: .routes("/shop", { cart: "/cart", detail: "/product/:slug" })
557
- * router.reverse("cart"); // "/shop/cart"
558
- * router.reverse("detail", { slug: "widget" }); // "/shop/product/widget"
559
- * ```
560
- */
561
- reverse: ReverseFunction<TRoutes>;
562
- /**
563
- * Accumulated route map for typeof extraction
564
- * Used for module augmentation: `type AppRoutes = typeof _router.routeMap`
565
- *
566
- * @example
567
- * ```typescript
568
- * const _router = createRouter<AppEnv>()
569
- * .routes(homeRoutes).map(() => import('./home'))
570
- * .routes('/shop', shopRoutes).map(() => import('./shop'));
571
- *
572
- * type AppRoutes = typeof _router.routeMap;
573
- *
574
- * declare global {
575
- * namespace RSCRouter {
576
- * interface RegisteredRoutes extends AppRoutes {}
577
- * }
578
- * }
579
- * ```
580
- */
581
- readonly routeMap: TRoutes;
582
- /**
583
- * Root layout component that wraps the entire application
584
- * Access this to pass to renderSegments
585
- */
586
- readonly rootLayout?: ComponentType<RootLayoutProps>;
587
- /**
588
- * Error callback for monitoring/alerting
589
- * Called when errors occur in loaders, actions, or routes
590
- */
591
- readonly onError?: RSCRouterOptions<TEnv>["onError"];
592
- /**
593
- * Cache configuration (for internal use by RSC handler)
594
- */
595
- readonly cache?: RSCRouterOptions<TEnv>["cache"];
596
- /**
597
- * Not found component to render when no route matches (for internal use by RSC handler)
598
- */
599
- readonly notFound?: RSCRouterOptions<TEnv>["notFound"];
600
- /**
601
- * Resolved theme configuration (null if theme not enabled)
602
- * Used by NavigationProvider to include ThemeProvider and by MetaTags to render theme script
603
- */
604
- readonly themeConfig: import("./theme/types.js").ResolvedThemeConfig | null;
605
- /**
606
- * Whether connection warmup is enabled.
607
- * When true, the client sends HEAD /?_rsc_warmup after idle periods
608
- * and the server responds with 204 No Content.
609
- */
610
- readonly warmupEnabled: boolean;
611
- /**
612
- * Whether ?__debug_manifest is allowed in production.
613
- * Always enabled in development.
614
- * @internal
615
- */
616
- readonly allowDebugManifest: boolean;
617
- /**
618
- * App-level middleware entries (for internal use by RSC handler)
619
- * These wrap the entire request/response cycle
620
- */
621
- readonly middleware: MiddlewareEntry<TEnv>[];
622
- /**
623
- * Nonce provider for CSP (for internal use by createHandler)
624
- */
625
- readonly nonce?: NonceProvider<TEnv>;
626
- /**
627
- * RSC version string (for internal use by createHandler)
628
- */
629
- readonly version?: string;
630
- /**
631
- * URL patterns reference for build-time manifest generation
632
- * @internal
633
- */
634
- readonly urlpatterns?: UrlPatterns<TEnv, any>;
635
- /**
636
- * Source file path where createRouter() was called.
637
- * Set via Error.stack parsing at construction time.
638
- * Used by the Vite plugin to write per-router named-routes.gen.ts files.
639
- * @internal
640
- */
641
- readonly __sourceFile?: string;
642
- match(request: Request, context: TEnv): Promise<MatchResult>;
643
- /**
644
- * Build-time pre-render match. Resolves segments with a BuildContext
645
- * (no request/env/headers/cookies), skipping middleware and loaders.
646
- * Used by the Vite plugin to collect pre-render data at build time.
647
- * @internal
648
- */
649
- matchForPrerender(pathname: string, params: Record<string, string>): Promise<{
650
- segments: SerializedSegmentData[];
651
- handles: Record<string, SegmentHandleData>;
652
- routeName: string;
653
- params: Record<string, string>;
654
- } | null>;
655
- /**
656
- * Preview match - returns route middleware without segment resolution.
657
- * Also returns responseType and handler for response routes (non-RSC short-circuit).
658
- */
659
- previewMatch(request: Request, context: TEnv): Promise<{
660
- routeMiddleware?: Array<{
661
- handler: import("./router/middleware.js").MiddlewareFn;
662
- params: Record<string, string>;
663
- }>;
664
- responseType?: string;
665
- handler?: Function;
666
- params?: Record<string, string>;
667
- negotiated?: boolean;
668
- } | null>;
669
- matchPartial(request: Request, context: TEnv, actionContext?: {
670
- actionId?: string;
671
- actionUrl?: URL;
672
- actionResult?: any;
673
- formData?: FormData;
674
- }): Promise<MatchResult | null>;
675
- /**
676
- * Match an error to the nearest error boundary and return error segments
677
- *
678
- * Used when an action or other operation fails and we need to render
679
- * the error boundary UI. Finds the nearest errorBoundary in the route tree
680
- * for the current URL and renders it with the error info.
681
- *
682
- * @param request - The current request (used to match the route)
683
- * @param context - Environment context
684
- * @param error - The error that occurred
685
- * @param segmentType - Type of segment where error occurred (default: "route")
686
- * @returns MatchResult with error segment, or null if no error boundary found
687
- */
688
- matchError(request: Request, context: TEnv, error: unknown, segmentType?: ErrorInfo["segmentType"]): Promise<MatchResult | null>;
689
- /**
690
- * @internal
691
- * Debug utility to serialize the manifest for inspection
692
- * Returns a JSON-friendly representation of all routes and layouts
693
- */
694
- debugManifest(): Promise<SerializedManifest>;
695
- /**
696
- * Handle an RSC request.
697
- *
698
- * Uses the router's configuration (nonce, version, cache) automatically.
699
- * The handler is lazily created on first call.
700
- *
701
- * @example Cloudflare Workers
702
- * ```tsx
703
- * import { router } from "./router";
704
- *
705
- * export default { fetch: router.fetch };
706
- * ```
707
- *
708
- * @example Direct export
709
- * ```tsx
710
- * const router = createRouter({
711
- * document: Document,
712
- * urls: urlpatterns,
713
- * nonce: () => true,
714
- * });
715
- *
716
- * export const fetch = router.fetch;
717
- * ```
718
- */
719
- fetch(request: Request, env: TEnv & {
720
- ctx?: ExecutionContext;
721
- }): Promise<Response>;
722
- }
723
- /**
724
- * Create an RSC router with generic context type
725
- * Route types are accumulated automatically through the builder chain
726
- *
727
- * @example
728
- * ```typescript
729
- * interface AppContext {
730
- * db: Database;
731
- * user?: User;
732
- * }
733
- *
734
- * const router = createRouter<AppContext>({
735
- * debugPerformance: true // Enable metrics
736
- * });
737
- *
738
- * // Route types accumulate through the chain - no module augmentation needed!
739
- * // Keys stay unchanged, only URL patterns get the prefix
740
- * router
741
- * .routes(homeRoutes) // accumulates homeRoutes
742
- * .map(() => import('./home'))
743
- * .routes('/shop', shopRoutes) // accumulates shopRoutes with prefixed URLs
744
- * .map(() => import('./shop'));
745
- *
746
- * // router.reverse now has type-safe autocomplete for all registered routes
747
- * // Given shopRoutes = { cart: "/cart" }, reverse uses original key:
748
- * router.reverse("cart"); // "/shop/cart"
749
- * ```
750
- */
751
- export declare function createRouter<TEnv = any>(options?: RSCRouterOptions<TEnv>): RSCRouter<TEnv, {}>;
752
- export {};
753
- //# sourceMappingURL=router.d.ts.map