@rangojs/router 0.0.0-experimental.ae6e7825 → 0.0.0-experimental.bf2846be

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 (908) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +688 -433
  4. package/package.json +1 -1
  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 +98 -69
  13. package/src/browser/navigation-store.ts +43 -8
  14. package/src/browser/partial-update.ts +32 -5
  15. package/src/browser/prefetch/cache.ts +16 -6
  16. package/src/browser/prefetch/fetch.ts +35 -6
  17. package/src/browser/react/Link.tsx +67 -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 +28 -22
  23. package/src/browser/scroll-restoration.ts +10 -8
  24. package/src/browser/segment-reconciler.ts +26 -0
  25. package/src/browser/server-action-bridge.ts +8 -18
  26. package/src/browser/types.ts +21 -15
  27. package/src/build/generate-manifest.ts +6 -6
  28. package/src/build/generate-route-types.ts +3 -0
  29. package/src/build/route-types/include-resolution.ts +8 -1
  30. package/src/build/route-types/router-processing.ts +211 -72
  31. package/src/build/route-types/scan-filter.ts +8 -1
  32. package/src/client.tsx +2 -56
  33. package/src/deps/browser.ts +0 -1
  34. package/src/handle.ts +40 -0
  35. package/src/index.rsc.ts +3 -1
  36. package/src/index.ts +12 -0
  37. package/src/prerender/store.ts +5 -4
  38. package/src/prerender.ts +138 -77
  39. package/src/reverse.ts +22 -1
  40. package/src/route-definition/dsl-helpers.ts +42 -19
  41. package/src/route-definition/helpers-types.ts +4 -1
  42. package/src/route-definition/index.ts +3 -0
  43. package/src/route-definition/redirect.ts +9 -1
  44. package/src/route-definition/resolve-handler-use.ts +149 -0
  45. package/src/route-types.ts +11 -0
  46. package/src/router/content-negotiation.ts +100 -1
  47. package/src/router/handler-context.ts +48 -15
  48. package/src/router/intercept-resolution.ts +9 -4
  49. package/src/router/loader-resolution.ts +150 -21
  50. package/src/router/match-api.ts +124 -189
  51. package/src/router/match-middleware/cache-lookup.ts +26 -7
  52. package/src/router/match-middleware/segment-resolution.ts +53 -0
  53. package/src/router/match-result.ts +82 -4
  54. package/src/router/middleware-types.ts +0 -6
  55. package/src/router/middleware.ts +0 -3
  56. package/src/router/navigation-snapshot.ts +182 -0
  57. package/src/router/prerender-match.ts +110 -10
  58. package/src/router/preview-match.ts +30 -102
  59. package/src/router/request-classification.ts +310 -0
  60. package/src/router/route-snapshot.ts +245 -0
  61. package/src/router/router-interfaces.ts +36 -4
  62. package/src/router/router-options.ts +37 -11
  63. package/src/router/segment-resolution/fresh.ts +70 -5
  64. package/src/router/segment-resolution/revalidation.ts +87 -9
  65. package/src/router.ts +53 -5
  66. package/src/rsc/handler.ts +472 -398
  67. package/src/rsc/loader-fetch.ts +18 -3
  68. package/src/rsc/manifest-init.ts +5 -1
  69. package/src/rsc/progressive-enhancement.ts +12 -3
  70. package/src/rsc/rsc-rendering.ts +8 -3
  71. package/src/rsc/server-action.ts +8 -2
  72. package/src/rsc/ssr-setup.ts +2 -2
  73. package/src/rsc/types.ts +6 -7
  74. package/src/server/context.ts +39 -2
  75. package/src/server/handle-store.ts +19 -0
  76. package/src/server/loader-registry.ts +9 -8
  77. package/src/server/request-context.ts +131 -16
  78. package/src/ssr/index.tsx +4 -13
  79. package/src/static-handler.ts +18 -6
  80. package/src/types/cache-types.ts +4 -4
  81. package/src/types/handler-context.ts +17 -11
  82. package/src/types/loader-types.ts +32 -5
  83. package/src/types/route-entry.ts +1 -1
  84. package/src/types/segments.ts +1 -0
  85. package/src/urls/path-helper-types.ts +9 -2
  86. package/src/urls/path-helper.ts +47 -12
  87. package/src/urls/pattern-types.ts +12 -0
  88. package/src/urls/response-types.ts +16 -6
  89. package/src/use-loader.tsx +77 -5
  90. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  91. package/src/vite/discovery/discover-routers.ts +5 -1
  92. package/src/vite/discovery/prerender-collection.ts +128 -74
  93. package/src/vite/discovery/state.ts +13 -4
  94. package/src/vite/index.ts +4 -0
  95. package/src/vite/plugin-types.ts +60 -5
  96. package/src/vite/plugins/expose-id-utils.ts +12 -0
  97. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  98. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  99. package/src/vite/plugins/performance-tracks.ts +57 -280
  100. package/src/vite/plugins/refresh-cmd.ts +88 -26
  101. package/src/vite/rango.ts +17 -11
  102. package/src/vite/router-discovery.ts +178 -37
  103. package/src/vite/utils/prerender-utils.ts +18 -0
  104. package/src/vite/utils/shared-utils.ts +3 -2
  105. package/dist/__internal.d.ts +0 -83
  106. package/dist/__internal.d.ts.map +0 -1
  107. package/dist/__internal.js +0 -19
  108. package/dist/__internal.js.map +0 -1
  109. package/dist/__mocks__/version.d.ts +0 -7
  110. package/dist/__mocks__/version.d.ts.map +0 -1
  111. package/dist/__mocks__/version.js +0 -7
  112. package/dist/__mocks__/version.js.map +0 -1
  113. package/dist/__tests__/client-href.test.d.ts +0 -2
  114. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  115. package/dist/__tests__/client-href.test.js +0 -74
  116. package/dist/__tests__/client-href.test.js.map +0 -1
  117. package/dist/__tests__/component-utils.test.d.ts +0 -2
  118. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  119. package/dist/__tests__/component-utils.test.js +0 -51
  120. package/dist/__tests__/component-utils.test.js.map +0 -1
  121. package/dist/__tests__/event-controller.test.d.ts +0 -2
  122. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  123. package/dist/__tests__/event-controller.test.js +0 -538
  124. package/dist/__tests__/event-controller.test.js.map +0 -1
  125. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  126. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  127. package/dist/__tests__/helpers/route-tree.js +0 -374
  128. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  129. package/dist/__tests__/match-result.test.d.ts +0 -2
  130. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  131. package/dist/__tests__/match-result.test.js +0 -154
  132. package/dist/__tests__/match-result.test.js.map +0 -1
  133. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  134. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  135. package/dist/__tests__/navigation-store.test.js +0 -440
  136. package/dist/__tests__/navigation-store.test.js.map +0 -1
  137. package/dist/__tests__/partial-update.test.d.ts +0 -2
  138. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  139. package/dist/__tests__/partial-update.test.js +0 -1009
  140. package/dist/__tests__/partial-update.test.js.map +0 -1
  141. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  142. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  143. package/dist/__tests__/reverse-types.test.js +0 -656
  144. package/dist/__tests__/reverse-types.test.js.map +0 -1
  145. package/dist/__tests__/route-definition.test.d.ts +0 -2
  146. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  147. package/dist/__tests__/route-definition.test.js +0 -55
  148. package/dist/__tests__/route-definition.test.js.map +0 -1
  149. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  150. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  151. package/dist/__tests__/router-helpers.test.js +0 -377
  152. package/dist/__tests__/router-helpers.test.js.map +0 -1
  153. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  154. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  155. package/dist/__tests__/router-integration-2.test.js +0 -426
  156. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  157. package/dist/__tests__/router-integration.test.d.ts +0 -2
  158. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  159. package/dist/__tests__/router-integration.test.js +0 -1051
  160. package/dist/__tests__/router-integration.test.js.map +0 -1
  161. package/dist/__tests__/search-params.test.d.ts +0 -5
  162. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  163. package/dist/__tests__/search-params.test.js +0 -306
  164. package/dist/__tests__/search-params.test.js.map +0 -1
  165. package/dist/__tests__/segment-system.test.d.ts +0 -2
  166. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  167. package/dist/__tests__/segment-system.test.js +0 -627
  168. package/dist/__tests__/segment-system.test.js.map +0 -1
  169. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  170. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  171. package/dist/__tests__/static-handler-types.test.js +0 -63
  172. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  173. package/dist/__tests__/urls.test.d.ts +0 -2
  174. package/dist/__tests__/urls.test.d.ts.map +0 -1
  175. package/dist/__tests__/urls.test.js +0 -421
  176. package/dist/__tests__/urls.test.js.map +0 -1
  177. package/dist/__tests__/use-mount.test.d.ts +0 -2
  178. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  179. package/dist/__tests__/use-mount.test.js +0 -35
  180. package/dist/__tests__/use-mount.test.js.map +0 -1
  181. package/dist/bin/rango.d.ts +0 -2
  182. package/dist/bin/rango.d.ts.map +0 -1
  183. package/dist/bin/rango.js.map +0 -1
  184. package/dist/browser/event-controller.d.ts +0 -191
  185. package/dist/browser/event-controller.d.ts.map +0 -1
  186. package/dist/browser/event-controller.js +0 -559
  187. package/dist/browser/event-controller.js.map +0 -1
  188. package/dist/browser/index.d.ts +0 -2
  189. package/dist/browser/index.d.ts.map +0 -1
  190. package/dist/browser/index.js +0 -14
  191. package/dist/browser/index.js.map +0 -1
  192. package/dist/browser/link-interceptor.d.ts +0 -38
  193. package/dist/browser/link-interceptor.d.ts.map +0 -1
  194. package/dist/browser/link-interceptor.js +0 -99
  195. package/dist/browser/link-interceptor.js.map +0 -1
  196. package/dist/browser/logging.d.ts +0 -10
  197. package/dist/browser/logging.d.ts.map +0 -1
  198. package/dist/browser/logging.js +0 -29
  199. package/dist/browser/logging.js.map +0 -1
  200. package/dist/browser/lru-cache.d.ts +0 -17
  201. package/dist/browser/lru-cache.d.ts.map +0 -1
  202. package/dist/browser/lru-cache.js +0 -50
  203. package/dist/browser/lru-cache.js.map +0 -1
  204. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  205. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  206. package/dist/browser/merge-segment-loaders.js +0 -102
  207. package/dist/browser/merge-segment-loaders.js.map +0 -1
  208. package/dist/browser/navigation-bridge.d.ts +0 -102
  209. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  210. package/dist/browser/navigation-bridge.js +0 -708
  211. package/dist/browser/navigation-bridge.js.map +0 -1
  212. package/dist/browser/navigation-client.d.ts +0 -25
  213. package/dist/browser/navigation-client.d.ts.map +0 -1
  214. package/dist/browser/navigation-client.js +0 -157
  215. package/dist/browser/navigation-client.js.map +0 -1
  216. package/dist/browser/navigation-store.d.ts +0 -101
  217. package/dist/browser/navigation-store.d.ts.map +0 -1
  218. package/dist/browser/navigation-store.js +0 -625
  219. package/dist/browser/navigation-store.js.map +0 -1
  220. package/dist/browser/partial-update.d.ts +0 -75
  221. package/dist/browser/partial-update.d.ts.map +0 -1
  222. package/dist/browser/partial-update.js +0 -426
  223. package/dist/browser/partial-update.js.map +0 -1
  224. package/dist/browser/react/Link.d.ts +0 -86
  225. package/dist/browser/react/Link.d.ts.map +0 -1
  226. package/dist/browser/react/Link.js +0 -128
  227. package/dist/browser/react/Link.js.map +0 -1
  228. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  229. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  230. package/dist/browser/react/NavigationProvider.js +0 -216
  231. package/dist/browser/react/NavigationProvider.js.map +0 -1
  232. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  233. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  234. package/dist/browser/react/ScrollRestoration.js +0 -57
  235. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  236. package/dist/browser/react/context.d.ts +0 -46
  237. package/dist/browser/react/context.d.ts.map +0 -1
  238. package/dist/browser/react/context.js +0 -10
  239. package/dist/browser/react/context.js.map +0 -1
  240. package/dist/browser/react/index.d.ts +0 -11
  241. package/dist/browser/react/index.d.ts.map +0 -1
  242. package/dist/browser/react/index.js +0 -22
  243. package/dist/browser/react/index.js.map +0 -1
  244. package/dist/browser/react/location-state-shared.d.ts +0 -63
  245. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  246. package/dist/browser/react/location-state-shared.js +0 -81
  247. package/dist/browser/react/location-state-shared.js.map +0 -1
  248. package/dist/browser/react/location-state.d.ts +0 -23
  249. package/dist/browser/react/location-state.d.ts.map +0 -1
  250. package/dist/browser/react/location-state.js +0 -29
  251. package/dist/browser/react/location-state.js.map +0 -1
  252. package/dist/browser/react/mount-context.d.ts +0 -24
  253. package/dist/browser/react/mount-context.d.ts.map +0 -1
  254. package/dist/browser/react/mount-context.js +0 -24
  255. package/dist/browser/react/mount-context.js.map +0 -1
  256. package/dist/browser/react/use-action.d.ts +0 -64
  257. package/dist/browser/react/use-action.d.ts.map +0 -1
  258. package/dist/browser/react/use-action.js +0 -134
  259. package/dist/browser/react/use-action.js.map +0 -1
  260. package/dist/browser/react/use-client-cache.d.ts +0 -41
  261. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  262. package/dist/browser/react/use-client-cache.js +0 -39
  263. package/dist/browser/react/use-client-cache.js.map +0 -1
  264. package/dist/browser/react/use-handle.d.ts +0 -31
  265. package/dist/browser/react/use-handle.d.ts.map +0 -1
  266. package/dist/browser/react/use-handle.js +0 -144
  267. package/dist/browser/react/use-handle.js.map +0 -1
  268. package/dist/browser/react/use-href.d.ts +0 -33
  269. package/dist/browser/react/use-href.d.ts.map +0 -1
  270. package/dist/browser/react/use-href.js +0 -39
  271. package/dist/browser/react/use-href.js.map +0 -1
  272. package/dist/browser/react/use-link-status.d.ts +0 -37
  273. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  274. package/dist/browser/react/use-link-status.js +0 -99
  275. package/dist/browser/react/use-link-status.js.map +0 -1
  276. package/dist/browser/react/use-mount.d.ts +0 -25
  277. package/dist/browser/react/use-mount.d.ts.map +0 -1
  278. package/dist/browser/react/use-mount.js +0 -30
  279. package/dist/browser/react/use-mount.js.map +0 -1
  280. package/dist/browser/react/use-navigation.d.ts +0 -27
  281. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  282. package/dist/browser/react/use-navigation.js +0 -87
  283. package/dist/browser/react/use-navigation.js.map +0 -1
  284. package/dist/browser/react/use-segments.d.ts +0 -38
  285. package/dist/browser/react/use-segments.d.ts.map +0 -1
  286. package/dist/browser/react/use-segments.js +0 -130
  287. package/dist/browser/react/use-segments.js.map +0 -1
  288. package/dist/browser/request-controller.d.ts +0 -26
  289. package/dist/browser/request-controller.d.ts.map +0 -1
  290. package/dist/browser/request-controller.js +0 -147
  291. package/dist/browser/request-controller.js.map +0 -1
  292. package/dist/browser/rsc-router.d.ts +0 -129
  293. package/dist/browser/rsc-router.d.ts.map +0 -1
  294. package/dist/browser/rsc-router.js +0 -195
  295. package/dist/browser/rsc-router.js.map +0 -1
  296. package/dist/browser/scroll-restoration.d.ts +0 -93
  297. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  298. package/dist/browser/scroll-restoration.js +0 -321
  299. package/dist/browser/scroll-restoration.js.map +0 -1
  300. package/dist/browser/segment-structure-assert.d.ts +0 -17
  301. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  302. package/dist/browser/segment-structure-assert.js +0 -59
  303. package/dist/browser/segment-structure-assert.js.map +0 -1
  304. package/dist/browser/server-action-bridge.d.ts +0 -26
  305. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  306. package/dist/browser/server-action-bridge.js +0 -668
  307. package/dist/browser/server-action-bridge.js.map +0 -1
  308. package/dist/browser/shallow.d.ts +0 -12
  309. package/dist/browser/shallow.d.ts.map +0 -1
  310. package/dist/browser/shallow.js +0 -34
  311. package/dist/browser/shallow.js.map +0 -1
  312. package/dist/browser/types.d.ts +0 -369
  313. package/dist/browser/types.d.ts.map +0 -1
  314. package/dist/browser/types.js +0 -2
  315. package/dist/browser/types.js.map +0 -1
  316. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  317. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  318. package/dist/build/__tests__/generate-cli.test.js +0 -237
  319. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  320. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  321. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  322. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  323. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  324. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  325. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  326. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  327. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  328. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  329. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  330. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  331. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  332. package/dist/build/generate-manifest.d.ts +0 -81
  333. package/dist/build/generate-manifest.d.ts.map +0 -1
  334. package/dist/build/generate-manifest.js +0 -276
  335. package/dist/build/generate-manifest.js.map +0 -1
  336. package/dist/build/generate-route-types.d.ts +0 -115
  337. package/dist/build/generate-route-types.d.ts.map +0 -1
  338. package/dist/build/generate-route-types.js +0 -740
  339. package/dist/build/generate-route-types.js.map +0 -1
  340. package/dist/build/index.d.ts +0 -21
  341. package/dist/build/index.d.ts.map +0 -1
  342. package/dist/build/index.js +0 -21
  343. package/dist/build/index.js.map +0 -1
  344. package/dist/build/route-trie.d.ts +0 -71
  345. package/dist/build/route-trie.d.ts.map +0 -1
  346. package/dist/build/route-trie.js +0 -175
  347. package/dist/build/route-trie.js.map +0 -1
  348. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  349. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  350. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  351. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  352. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  353. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  354. package/dist/cache/__tests__/document-cache.test.js +0 -345
  355. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  356. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  357. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  358. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  359. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  360. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  361. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  362. package/dist/cache/__tests__/memory-store.test.js +0 -367
  363. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  364. package/dist/cache/cache-scope.d.ts +0 -102
  365. package/dist/cache/cache-scope.d.ts.map +0 -1
  366. package/dist/cache/cache-scope.js +0 -440
  367. package/dist/cache/cache-scope.js.map +0 -1
  368. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  369. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  370. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  371. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  372. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  373. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  374. package/dist/cache/cf/cf-cache-store.js +0 -242
  375. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  376. package/dist/cache/cf/index.d.ts +0 -14
  377. package/dist/cache/cf/index.d.ts.map +0 -1
  378. package/dist/cache/cf/index.js +0 -17
  379. package/dist/cache/cf/index.js.map +0 -1
  380. package/dist/cache/document-cache.d.ts +0 -64
  381. package/dist/cache/document-cache.d.ts.map +0 -1
  382. package/dist/cache/document-cache.js +0 -228
  383. package/dist/cache/document-cache.js.map +0 -1
  384. package/dist/cache/index.d.ts +0 -19
  385. package/dist/cache/index.d.ts.map +0 -1
  386. package/dist/cache/index.js +0 -21
  387. package/dist/cache/index.js.map +0 -1
  388. package/dist/cache/memory-segment-store.d.ts +0 -110
  389. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  390. package/dist/cache/memory-segment-store.js +0 -117
  391. package/dist/cache/memory-segment-store.js.map +0 -1
  392. package/dist/cache/memory-store.d.ts +0 -41
  393. package/dist/cache/memory-store.d.ts.map +0 -1
  394. package/dist/cache/memory-store.js +0 -191
  395. package/dist/cache/memory-store.js.map +0 -1
  396. package/dist/cache/types.d.ts +0 -317
  397. package/dist/cache/types.d.ts.map +0 -1
  398. package/dist/cache/types.js +0 -12
  399. package/dist/cache/types.js.map +0 -1
  400. package/dist/client.d.ts +0 -248
  401. package/dist/client.d.ts.map +0 -1
  402. package/dist/client.js +0 -367
  403. package/dist/client.js.map +0 -1
  404. package/dist/client.rsc.d.ts +0 -26
  405. package/dist/client.rsc.d.ts.map +0 -1
  406. package/dist/client.rsc.js +0 -46
  407. package/dist/client.rsc.js.map +0 -1
  408. package/dist/component-utils.d.ts +0 -36
  409. package/dist/component-utils.d.ts.map +0 -1
  410. package/dist/component-utils.js +0 -61
  411. package/dist/component-utils.js.map +0 -1
  412. package/dist/components/DefaultDocument.d.ts +0 -13
  413. package/dist/components/DefaultDocument.d.ts.map +0 -1
  414. package/dist/components/DefaultDocument.js +0 -15
  415. package/dist/components/DefaultDocument.js.map +0 -1
  416. package/dist/debug.d.ts +0 -58
  417. package/dist/debug.d.ts.map +0 -1
  418. package/dist/debug.js +0 -157
  419. package/dist/debug.js.map +0 -1
  420. package/dist/default-error-boundary.d.ts +0 -11
  421. package/dist/default-error-boundary.d.ts.map +0 -1
  422. package/dist/default-error-boundary.js +0 -45
  423. package/dist/default-error-boundary.js.map +0 -1
  424. package/dist/deps/browser.d.ts +0 -2
  425. package/dist/deps/browser.d.ts.map +0 -1
  426. package/dist/deps/browser.js +0 -3
  427. package/dist/deps/browser.js.map +0 -1
  428. package/dist/deps/html-stream-client.d.ts +0 -2
  429. package/dist/deps/html-stream-client.d.ts.map +0 -1
  430. package/dist/deps/html-stream-client.js +0 -3
  431. package/dist/deps/html-stream-client.js.map +0 -1
  432. package/dist/deps/html-stream-server.d.ts +0 -2
  433. package/dist/deps/html-stream-server.d.ts.map +0 -1
  434. package/dist/deps/html-stream-server.js +0 -3
  435. package/dist/deps/html-stream-server.js.map +0 -1
  436. package/dist/deps/rsc.d.ts +0 -2
  437. package/dist/deps/rsc.d.ts.map +0 -1
  438. package/dist/deps/rsc.js +0 -4
  439. package/dist/deps/rsc.js.map +0 -1
  440. package/dist/deps/ssr.d.ts +0 -2
  441. package/dist/deps/ssr.d.ts.map +0 -1
  442. package/dist/deps/ssr.js +0 -3
  443. package/dist/deps/ssr.js.map +0 -1
  444. package/dist/errors.d.ts +0 -174
  445. package/dist/errors.d.ts.map +0 -1
  446. package/dist/errors.js +0 -241
  447. package/dist/errors.js.map +0 -1
  448. package/dist/handle.d.ts +0 -78
  449. package/dist/handle.d.ts.map +0 -1
  450. package/dist/handle.js +0 -82
  451. package/dist/handle.js.map +0 -1
  452. package/dist/handles/MetaTags.d.ts +0 -14
  453. package/dist/handles/MetaTags.d.ts.map +0 -1
  454. package/dist/handles/MetaTags.js +0 -136
  455. package/dist/handles/MetaTags.js.map +0 -1
  456. package/dist/handles/index.d.ts +0 -6
  457. package/dist/handles/index.d.ts.map +0 -1
  458. package/dist/handles/index.js +0 -6
  459. package/dist/handles/index.js.map +0 -1
  460. package/dist/handles/meta.d.ts +0 -39
  461. package/dist/handles/meta.d.ts.map +0 -1
  462. package/dist/handles/meta.js +0 -202
  463. package/dist/handles/meta.js.map +0 -1
  464. package/dist/host/__tests__/errors.test.d.ts +0 -2
  465. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  466. package/dist/host/__tests__/errors.test.js +0 -76
  467. package/dist/host/__tests__/errors.test.js.map +0 -1
  468. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  469. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  470. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  471. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  472. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  473. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  474. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  475. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  476. package/dist/host/__tests__/router.test.d.ts +0 -2
  477. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  478. package/dist/host/__tests__/router.test.js +0 -241
  479. package/dist/host/__tests__/router.test.js.map +0 -1
  480. package/dist/host/__tests__/testing.test.d.ts +0 -2
  481. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  482. package/dist/host/__tests__/testing.test.js +0 -64
  483. package/dist/host/__tests__/testing.test.js.map +0 -1
  484. package/dist/host/__tests__/utils.test.d.ts +0 -2
  485. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  486. package/dist/host/__tests__/utils.test.js +0 -29
  487. package/dist/host/__tests__/utils.test.js.map +0 -1
  488. package/dist/host/cookie-handler.d.ts +0 -34
  489. package/dist/host/cookie-handler.d.ts.map +0 -1
  490. package/dist/host/cookie-handler.js +0 -124
  491. package/dist/host/cookie-handler.js.map +0 -1
  492. package/dist/host/errors.d.ts +0 -56
  493. package/dist/host/errors.d.ts.map +0 -1
  494. package/dist/host/errors.js +0 -79
  495. package/dist/host/errors.js.map +0 -1
  496. package/dist/host/index.d.ts +0 -29
  497. package/dist/host/index.d.ts.map +0 -1
  498. package/dist/host/index.js +0 -32
  499. package/dist/host/index.js.map +0 -1
  500. package/dist/host/pattern-matcher.d.ts +0 -36
  501. package/dist/host/pattern-matcher.d.ts.map +0 -1
  502. package/dist/host/pattern-matcher.js +0 -172
  503. package/dist/host/pattern-matcher.js.map +0 -1
  504. package/dist/host/router.d.ts +0 -26
  505. package/dist/host/router.d.ts.map +0 -1
  506. package/dist/host/router.js +0 -218
  507. package/dist/host/router.js.map +0 -1
  508. package/dist/host/testing.d.ts +0 -36
  509. package/dist/host/testing.d.ts.map +0 -1
  510. package/dist/host/testing.js +0 -55
  511. package/dist/host/testing.js.map +0 -1
  512. package/dist/host/types.d.ts +0 -115
  513. package/dist/host/types.d.ts.map +0 -1
  514. package/dist/host/types.js +0 -7
  515. package/dist/host/types.js.map +0 -1
  516. package/dist/host/utils.d.ts +0 -21
  517. package/dist/host/utils.d.ts.map +0 -1
  518. package/dist/host/utils.js +0 -23
  519. package/dist/host/utils.js.map +0 -1
  520. package/dist/href-client.d.ts +0 -131
  521. package/dist/href-client.d.ts.map +0 -1
  522. package/dist/href-client.js +0 -64
  523. package/dist/href-client.js.map +0 -1
  524. package/dist/href-context.d.ts +0 -29
  525. package/dist/href-context.d.ts.map +0 -1
  526. package/dist/href-context.js +0 -21
  527. package/dist/href-context.js.map +0 -1
  528. package/dist/index.d.ts +0 -73
  529. package/dist/index.d.ts.map +0 -1
  530. package/dist/index.js +0 -91
  531. package/dist/index.js.map +0 -1
  532. package/dist/index.rsc.d.ts +0 -32
  533. package/dist/index.rsc.d.ts.map +0 -1
  534. package/dist/index.rsc.js +0 -40
  535. package/dist/index.rsc.js.map +0 -1
  536. package/dist/internal-debug.d.ts +0 -2
  537. package/dist/internal-debug.d.ts.map +0 -1
  538. package/dist/internal-debug.js +0 -5
  539. package/dist/internal-debug.js.map +0 -1
  540. package/dist/loader.d.ts +0 -14
  541. package/dist/loader.d.ts.map +0 -1
  542. package/dist/loader.js +0 -20
  543. package/dist/loader.js.map +0 -1
  544. package/dist/loader.rsc.d.ts +0 -19
  545. package/dist/loader.rsc.d.ts.map +0 -1
  546. package/dist/loader.rsc.js +0 -99
  547. package/dist/loader.rsc.js.map +0 -1
  548. package/dist/network-error-thrower.d.ts +0 -17
  549. package/dist/network-error-thrower.d.ts.map +0 -1
  550. package/dist/network-error-thrower.js +0 -14
  551. package/dist/network-error-thrower.js.map +0 -1
  552. package/dist/outlet-context.d.ts +0 -13
  553. package/dist/outlet-context.d.ts.map +0 -1
  554. package/dist/outlet-context.js +0 -3
  555. package/dist/outlet-context.js.map +0 -1
  556. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  557. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  558. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  559. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  560. package/dist/prerender/param-hash.d.ts +0 -16
  561. package/dist/prerender/param-hash.d.ts.map +0 -1
  562. package/dist/prerender/param-hash.js +0 -36
  563. package/dist/prerender/param-hash.js.map +0 -1
  564. package/dist/prerender/store.d.ts +0 -38
  565. package/dist/prerender/store.d.ts.map +0 -1
  566. package/dist/prerender/store.js +0 -61
  567. package/dist/prerender/store.js.map +0 -1
  568. package/dist/prerender.d.ts +0 -66
  569. package/dist/prerender.d.ts.map +0 -1
  570. package/dist/prerender.js +0 -57
  571. package/dist/prerender.js.map +0 -1
  572. package/dist/reverse.d.ts +0 -196
  573. package/dist/reverse.d.ts.map +0 -1
  574. package/dist/reverse.js +0 -78
  575. package/dist/reverse.js.map +0 -1
  576. package/dist/root-error-boundary.d.ts +0 -33
  577. package/dist/root-error-boundary.d.ts.map +0 -1
  578. package/dist/root-error-boundary.js +0 -165
  579. package/dist/root-error-boundary.js.map +0 -1
  580. package/dist/route-content-wrapper.d.ts +0 -46
  581. package/dist/route-content-wrapper.d.ts.map +0 -1
  582. package/dist/route-content-wrapper.js +0 -77
  583. package/dist/route-content-wrapper.js.map +0 -1
  584. package/dist/route-definition.d.ts +0 -421
  585. package/dist/route-definition.d.ts.map +0 -1
  586. package/dist/route-definition.js +0 -868
  587. package/dist/route-definition.js.map +0 -1
  588. package/dist/route-map-builder.d.ts +0 -155
  589. package/dist/route-map-builder.d.ts.map +0 -1
  590. package/dist/route-map-builder.js +0 -237
  591. package/dist/route-map-builder.js.map +0 -1
  592. package/dist/route-types.d.ts +0 -165
  593. package/dist/route-types.d.ts.map +0 -1
  594. package/dist/route-types.js +0 -7
  595. package/dist/route-types.js.map +0 -1
  596. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  597. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  598. package/dist/router/__tests__/handler-context.test.js +0 -65
  599. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  600. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  601. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  602. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  603. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  604. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  605. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  606. package/dist/router/__tests__/match-context.test.js +0 -92
  607. package/dist/router/__tests__/match-context.test.js.map +0 -1
  608. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  609. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  610. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  611. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  612. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  613. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  614. package/dist/router/__tests__/match-result.test.js +0 -457
  615. package/dist/router/__tests__/match-result.test.js.map +0 -1
  616. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  617. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  618. package/dist/router/__tests__/on-error.test.js +0 -678
  619. package/dist/router/__tests__/on-error.test.js.map +0 -1
  620. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  621. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  622. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  623. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  624. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  625. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  626. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  627. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  628. package/dist/router/error-handling.d.ts +0 -77
  629. package/dist/router/error-handling.d.ts.map +0 -1
  630. package/dist/router/error-handling.js +0 -202
  631. package/dist/router/error-handling.js.map +0 -1
  632. package/dist/router/handler-context.d.ts +0 -20
  633. package/dist/router/handler-context.d.ts.map +0 -1
  634. package/dist/router/handler-context.js +0 -198
  635. package/dist/router/handler-context.js.map +0 -1
  636. package/dist/router/intercept-resolution.d.ts +0 -66
  637. package/dist/router/intercept-resolution.d.ts.map +0 -1
  638. package/dist/router/intercept-resolution.js +0 -246
  639. package/dist/router/intercept-resolution.js.map +0 -1
  640. package/dist/router/loader-resolution.d.ts +0 -64
  641. package/dist/router/loader-resolution.d.ts.map +0 -1
  642. package/dist/router/loader-resolution.js +0 -284
  643. package/dist/router/loader-resolution.js.map +0 -1
  644. package/dist/router/logging.d.ts +0 -15
  645. package/dist/router/logging.d.ts.map +0 -1
  646. package/dist/router/logging.js +0 -99
  647. package/dist/router/logging.js.map +0 -1
  648. package/dist/router/manifest.d.ts +0 -22
  649. package/dist/router/manifest.d.ts.map +0 -1
  650. package/dist/router/manifest.js +0 -181
  651. package/dist/router/manifest.js.map +0 -1
  652. package/dist/router/match-api.d.ts +0 -35
  653. package/dist/router/match-api.d.ts.map +0 -1
  654. package/dist/router/match-api.js +0 -406
  655. package/dist/router/match-api.js.map +0 -1
  656. package/dist/router/match-context.d.ts +0 -206
  657. package/dist/router/match-context.d.ts.map +0 -1
  658. package/dist/router/match-context.js +0 -17
  659. package/dist/router/match-context.js.map +0 -1
  660. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  661. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  662. package/dist/router/match-middleware/background-revalidation.js +0 -75
  663. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  664. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  665. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  666. package/dist/router/match-middleware/cache-lookup.js +0 -257
  667. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  668. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  669. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  670. package/dist/router/match-middleware/cache-store.js +0 -108
  671. package/dist/router/match-middleware/cache-store.js.map +0 -1
  672. package/dist/router/match-middleware/index.d.ts +0 -81
  673. package/dist/router/match-middleware/index.d.ts.map +0 -1
  674. package/dist/router/match-middleware/index.js +0 -80
  675. package/dist/router/match-middleware/index.js.map +0 -1
  676. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  677. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  678. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  679. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  680. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  681. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  682. package/dist/router/match-middleware/segment-resolution.js +0 -53
  683. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  684. package/dist/router/match-pipelines.d.ts +0 -147
  685. package/dist/router/match-pipelines.d.ts.map +0 -1
  686. package/dist/router/match-pipelines.js +0 -82
  687. package/dist/router/match-pipelines.js.map +0 -1
  688. package/dist/router/match-result.d.ts +0 -126
  689. package/dist/router/match-result.d.ts.map +0 -1
  690. package/dist/router/match-result.js +0 -93
  691. package/dist/router/match-result.js.map +0 -1
  692. package/dist/router/metrics.d.ts +0 -20
  693. package/dist/router/metrics.d.ts.map +0 -1
  694. package/dist/router/metrics.js +0 -47
  695. package/dist/router/metrics.js.map +0 -1
  696. package/dist/router/middleware.d.ts +0 -249
  697. package/dist/router/middleware.d.ts.map +0 -1
  698. package/dist/router/middleware.js +0 -434
  699. package/dist/router/middleware.js.map +0 -1
  700. package/dist/router/middleware.test.d.ts +0 -2
  701. package/dist/router/middleware.test.d.ts.map +0 -1
  702. package/dist/router/middleware.test.js +0 -816
  703. package/dist/router/middleware.test.js.map +0 -1
  704. package/dist/router/pattern-matching.d.ts +0 -149
  705. package/dist/router/pattern-matching.d.ts.map +0 -1
  706. package/dist/router/pattern-matching.js +0 -349
  707. package/dist/router/pattern-matching.js.map +0 -1
  708. package/dist/router/revalidation.d.ts +0 -44
  709. package/dist/router/revalidation.d.ts.map +0 -1
  710. package/dist/router/revalidation.js +0 -147
  711. package/dist/router/revalidation.js.map +0 -1
  712. package/dist/router/router-context.d.ts +0 -135
  713. package/dist/router/router-context.d.ts.map +0 -1
  714. package/dist/router/router-context.js +0 -36
  715. package/dist/router/router-context.js.map +0 -1
  716. package/dist/router/segment-resolution.d.ts +0 -127
  717. package/dist/router/segment-resolution.d.ts.map +0 -1
  718. package/dist/router/segment-resolution.js +0 -919
  719. package/dist/router/segment-resolution.js.map +0 -1
  720. package/dist/router/trie-matching.d.ts +0 -40
  721. package/dist/router/trie-matching.d.ts.map +0 -1
  722. package/dist/router/trie-matching.js +0 -127
  723. package/dist/router/trie-matching.js.map +0 -1
  724. package/dist/router/types.d.ts +0 -136
  725. package/dist/router/types.d.ts.map +0 -1
  726. package/dist/router/types.js +0 -7
  727. package/dist/router/types.js.map +0 -1
  728. package/dist/router.d.ts +0 -753
  729. package/dist/router.d.ts.map +0 -1
  730. package/dist/router.gen.d.ts +0 -6
  731. package/dist/router.gen.d.ts.map +0 -1
  732. package/dist/router.gen.js +0 -6
  733. package/dist/router.gen.js.map +0 -1
  734. package/dist/router.js +0 -1304
  735. package/dist/router.js.map +0 -1
  736. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  737. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  738. package/dist/rsc/__tests__/helpers.test.js +0 -140
  739. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  740. package/dist/rsc/handler.d.ts +0 -45
  741. package/dist/rsc/handler.d.ts.map +0 -1
  742. package/dist/rsc/handler.js +0 -1172
  743. package/dist/rsc/handler.js.map +0 -1
  744. package/dist/rsc/helpers.d.ts +0 -16
  745. package/dist/rsc/helpers.d.ts.map +0 -1
  746. package/dist/rsc/helpers.js +0 -55
  747. package/dist/rsc/helpers.js.map +0 -1
  748. package/dist/rsc/index.d.ts +0 -22
  749. package/dist/rsc/index.d.ts.map +0 -1
  750. package/dist/rsc/index.js +0 -23
  751. package/dist/rsc/index.js.map +0 -1
  752. package/dist/rsc/nonce.d.ts +0 -9
  753. package/dist/rsc/nonce.d.ts.map +0 -1
  754. package/dist/rsc/nonce.js +0 -18
  755. package/dist/rsc/nonce.js.map +0 -1
  756. package/dist/rsc/types.d.ts +0 -206
  757. package/dist/rsc/types.d.ts.map +0 -1
  758. package/dist/rsc/types.js +0 -8
  759. package/dist/rsc/types.js.map +0 -1
  760. package/dist/search-params.d.ts +0 -103
  761. package/dist/search-params.d.ts.map +0 -1
  762. package/dist/search-params.js +0 -74
  763. package/dist/search-params.js.map +0 -1
  764. package/dist/segment-system.d.ts +0 -75
  765. package/dist/segment-system.d.ts.map +0 -1
  766. package/dist/segment-system.js +0 -336
  767. package/dist/segment-system.js.map +0 -1
  768. package/dist/server/context.d.ts +0 -245
  769. package/dist/server/context.d.ts.map +0 -1
  770. package/dist/server/context.js +0 -197
  771. package/dist/server/context.js.map +0 -1
  772. package/dist/server/fetchable-loader-store.d.ts +0 -18
  773. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  774. package/dist/server/fetchable-loader-store.js +0 -18
  775. package/dist/server/fetchable-loader-store.js.map +0 -1
  776. package/dist/server/handle-store.d.ts +0 -85
  777. package/dist/server/handle-store.d.ts.map +0 -1
  778. package/dist/server/handle-store.js +0 -142
  779. package/dist/server/handle-store.js.map +0 -1
  780. package/dist/server/loader-registry.d.ts +0 -55
  781. package/dist/server/loader-registry.d.ts.map +0 -1
  782. package/dist/server/loader-registry.js +0 -132
  783. package/dist/server/loader-registry.js.map +0 -1
  784. package/dist/server/request-context.d.ts +0 -226
  785. package/dist/server/request-context.d.ts.map +0 -1
  786. package/dist/server/request-context.js +0 -290
  787. package/dist/server/request-context.js.map +0 -1
  788. package/dist/server/root-layout.d.ts +0 -4
  789. package/dist/server/root-layout.d.ts.map +0 -1
  790. package/dist/server/root-layout.js +0 -5
  791. package/dist/server/root-layout.js.map +0 -1
  792. package/dist/server.d.ts +0 -15
  793. package/dist/server.d.ts.map +0 -1
  794. package/dist/server.js +0 -20
  795. package/dist/server.js.map +0 -1
  796. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  797. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  798. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  799. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  800. package/dist/ssr/index.d.ts +0 -98
  801. package/dist/ssr/index.d.ts.map +0 -1
  802. package/dist/ssr/index.js +0 -158
  803. package/dist/ssr/index.js.map +0 -1
  804. package/dist/static-handler.d.ts +0 -50
  805. package/dist/static-handler.d.ts.map +0 -1
  806. package/dist/static-handler.gen.d.ts +0 -5
  807. package/dist/static-handler.gen.d.ts.map +0 -1
  808. package/dist/static-handler.gen.js +0 -5
  809. package/dist/static-handler.gen.js.map +0 -1
  810. package/dist/static-handler.js +0 -29
  811. package/dist/static-handler.js.map +0 -1
  812. package/dist/theme/ThemeProvider.d.ts +0 -20
  813. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  814. package/dist/theme/ThemeProvider.js +0 -240
  815. package/dist/theme/ThemeProvider.js.map +0 -1
  816. package/dist/theme/ThemeScript.d.ts +0 -48
  817. package/dist/theme/ThemeScript.d.ts.map +0 -1
  818. package/dist/theme/ThemeScript.js +0 -13
  819. package/dist/theme/ThemeScript.js.map +0 -1
  820. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  821. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  822. package/dist/theme/__tests__/theme.test.js +0 -103
  823. package/dist/theme/__tests__/theme.test.js.map +0 -1
  824. package/dist/theme/constants.d.ts +0 -29
  825. package/dist/theme/constants.d.ts.map +0 -1
  826. package/dist/theme/constants.js +0 -48
  827. package/dist/theme/constants.js.map +0 -1
  828. package/dist/theme/index.d.ts +0 -31
  829. package/dist/theme/index.d.ts.map +0 -1
  830. package/dist/theme/index.js +0 -36
  831. package/dist/theme/index.js.map +0 -1
  832. package/dist/theme/theme-context.d.ts +0 -40
  833. package/dist/theme/theme-context.d.ts.map +0 -1
  834. package/dist/theme/theme-context.js +0 -60
  835. package/dist/theme/theme-context.js.map +0 -1
  836. package/dist/theme/theme-script.d.ts +0 -27
  837. package/dist/theme/theme-script.d.ts.map +0 -1
  838. package/dist/theme/theme-script.js +0 -147
  839. package/dist/theme/theme-script.js.map +0 -1
  840. package/dist/theme/types.d.ts +0 -163
  841. package/dist/theme/types.d.ts.map +0 -1
  842. package/dist/theme/types.js +0 -11
  843. package/dist/theme/types.js.map +0 -1
  844. package/dist/theme/use-theme.d.ts +0 -12
  845. package/dist/theme/use-theme.d.ts.map +0 -1
  846. package/dist/theme/use-theme.js +0 -40
  847. package/dist/theme/use-theme.js.map +0 -1
  848. package/dist/types.d.ts +0 -1479
  849. package/dist/types.d.ts.map +0 -1
  850. package/dist/types.js +0 -10
  851. package/dist/types.js.map +0 -1
  852. package/dist/urls.d.ts +0 -441
  853. package/dist/urls.d.ts.map +0 -1
  854. package/dist/urls.gen.d.ts +0 -8
  855. package/dist/urls.gen.d.ts.map +0 -1
  856. package/dist/urls.gen.js +0 -8
  857. package/dist/urls.gen.js.map +0 -1
  858. package/dist/urls.js +0 -443
  859. package/dist/urls.js.map +0 -1
  860. package/dist/use-loader.d.ts +0 -127
  861. package/dist/use-loader.d.ts.map +0 -1
  862. package/dist/use-loader.js +0 -237
  863. package/dist/use-loader.js.map +0 -1
  864. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  865. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  866. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  867. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  868. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  869. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  870. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  871. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  872. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  873. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  874. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  875. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  876. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  877. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  878. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  879. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  880. package/dist/vite/ast-handler-extract.d.ts +0 -49
  881. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  882. package/dist/vite/ast-handler-extract.js +0 -249
  883. package/dist/vite/ast-handler-extract.js.map +0 -1
  884. package/dist/vite/expose-action-id.d.ts +0 -19
  885. package/dist/vite/expose-action-id.d.ts.map +0 -1
  886. package/dist/vite/expose-action-id.js +0 -250
  887. package/dist/vite/expose-action-id.js.map +0 -1
  888. package/dist/vite/expose-id-utils.d.ts +0 -69
  889. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  890. package/dist/vite/expose-id-utils.js +0 -289
  891. package/dist/vite/expose-id-utils.js.map +0 -1
  892. package/dist/vite/expose-internal-ids.d.ts +0 -22
  893. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  894. package/dist/vite/expose-internal-ids.js +0 -886
  895. package/dist/vite/expose-internal-ids.js.map +0 -1
  896. package/dist/vite/index.d.ts +0 -149
  897. package/dist/vite/index.d.ts.map +0 -1
  898. package/dist/vite/index.js.map +0 -1
  899. package/dist/vite/index.named-routes.gen.ts +0 -103
  900. package/dist/vite/package-resolution.d.ts +0 -43
  901. package/dist/vite/package-resolution.d.ts.map +0 -1
  902. package/dist/vite/package-resolution.js +0 -112
  903. package/dist/vite/package-resolution.js.map +0 -1
  904. package/dist/vite/virtual-entries.d.ts +0 -25
  905. package/dist/vite/virtual-entries.d.ts.map +0 -1
  906. package/dist/vite/virtual-entries.js +0 -110
  907. package/dist/vite/virtual-entries.js.map +0 -1
  908. package/src/browser/debug-channel.ts +0 -112
package/dist/errors.js DELETED
@@ -1,241 +0,0 @@
1
- /**
2
- * Custom error classes for RSC Router
3
- *
4
- * All errors include:
5
- * - Descriptive names for easy identification
6
- * - Cause property for structured debugging data
7
- */
8
- /**
9
- * Thrown when no route matches the requested pathname
10
- */
11
- export class RouteNotFoundError extends Error {
12
- constructor(message, options) {
13
- super(message);
14
- this.name = "RouteNotFoundError";
15
- Object.setPrototypeOf(this, RouteNotFoundError.prototype);
16
- this.cause = options?.cause;
17
- }
18
- }
19
- /**
20
- * Thrown when data is not found (e.g., product with ID doesn't exist)
21
- * Use this in handlers/loaders to trigger the nearest notFoundBoundary
22
- *
23
- * @example
24
- * ```typescript
25
- * route("products.detail", async (ctx) => {
26
- * const product = await db.products.get(ctx.params.slug);
27
- * if (!product) throw new DataNotFoundError("Product not found");
28
- * return <ProductDetail product={product} />;
29
- * });
30
- * ```
31
- */
32
- export class DataNotFoundError extends Error {
33
- constructor(message = "Not found", options) {
34
- super(message);
35
- this.name = "DataNotFoundError";
36
- Object.setPrototypeOf(this, DataNotFoundError.prototype);
37
- this.cause = options?.cause;
38
- }
39
- }
40
- /**
41
- * Convenience function to throw a DataNotFoundError
42
- * Shorter syntax for common not-found scenarios
43
- *
44
- * @example
45
- * ```typescript
46
- * const product = await db.products.get(slug);
47
- * if (!product) throw notFound("Product not found");
48
- * // or simply:
49
- * if (!product) throw notFound();
50
- * ```
51
- */
52
- export function notFound(message) {
53
- throw new DataNotFoundError(message);
54
- }
55
- /**
56
- * Thrown when middleware execution fails
57
- */
58
- export class MiddlewareError extends Error {
59
- constructor(message, options) {
60
- super(message);
61
- this.name = "MiddlewareError";
62
- Object.setPrototypeOf(this, MiddlewareError.prototype);
63
- this.cause = options?.cause;
64
- }
65
- }
66
- /**
67
- * Thrown when a route handler fails
68
- */
69
- export class HandlerError extends Error {
70
- constructor(message, options) {
71
- super(message);
72
- this.name = "HandlerError";
73
- Object.setPrototypeOf(this, HandlerError.prototype);
74
- this.cause = options?.cause;
75
- }
76
- }
77
- /**
78
- * Thrown when segment building fails
79
- */
80
- export class BuildError extends Error {
81
- constructor(message, options) {
82
- super(message);
83
- this.name = "BuildError";
84
- Object.setPrototypeOf(this, BuildError.prototype);
85
- this.cause = options?.cause;
86
- }
87
- }
88
- /**
89
- * Thrown when a network request fails (server unreachable, no internet, etc.)
90
- * This error triggers the root error boundary with retry capability.
91
- *
92
- * @example
93
- * ```typescript
94
- * try {
95
- * await fetch(url);
96
- * } catch (error) {
97
- * if (error instanceof TypeError) {
98
- * throw new NetworkError("Unable to connect to server", { cause: error });
99
- * }
100
- * throw error;
101
- * }
102
- * ```
103
- */
104
- export class NetworkError extends Error {
105
- constructor(message = "Network request failed", options) {
106
- super(message);
107
- this.name = "NetworkError";
108
- Object.setPrototypeOf(this, NetworkError.prototype);
109
- this.cause = options?.cause;
110
- this.url = options?.url;
111
- this.operation = options?.operation;
112
- }
113
- }
114
- /**
115
- * Check if an error is a network-level failure (server unreachable, no internet)
116
- * These are typically TypeError from fetch when the network request itself fails.
117
- */
118
- export function isNetworkError(error) {
119
- // NetworkError we throw ourselves
120
- if (error instanceof NetworkError) {
121
- return true;
122
- }
123
- // TypeError from fetch() when network fails (e.g., "Failed to fetch")
124
- if (error instanceof TypeError) {
125
- const message = error.message.toLowerCase();
126
- return (message.includes("failed to fetch") ||
127
- message.includes("network request failed") ||
128
- message.includes("networkerror") ||
129
- message.includes("load failed"));
130
- }
131
- // DOMException with network-related names
132
- if (error instanceof DOMException) {
133
- return error.name === "NetworkError";
134
- }
135
- return false;
136
- }
137
- /**
138
- * Structured error for JSON response routes.
139
- * Thrown by handlers to return a typed error envelope with a specific HTTP status.
140
- *
141
- * Unlike standard Error, RouterError messages are always exposed to the client
142
- * (the developer intentionally crafted them for consumers).
143
- *
144
- * @example
145
- * ```typescript
146
- * path("/products/:id", (ctx) => {
147
- * const product = products.find(p => p.id === ctx.params.id);
148
- * if (!product) throw new RouterError("NOT_FOUND", "Product not found", { status: 404 });
149
- * return product;
150
- * }, { name: "productDetail" })
151
- * ```
152
- */
153
- export class RouterError extends Error {
154
- constructor(code, message, options) {
155
- super(message);
156
- this.name = "RouterError";
157
- Object.setPrototypeOf(this, RouterError.prototype);
158
- this.code = code;
159
- this.status = options?.status ?? 500;
160
- this.type = options?.type;
161
- this.cause = options?.cause;
162
- }
163
- }
164
- /**
165
- * Thrown when route handler returns invalid type
166
- */
167
- export class InvalidHandlerError extends Error {
168
- constructor(message, options) {
169
- super(message);
170
- this.name = "InvalidHandlerError";
171
- Object.setPrototypeOf(this, InvalidHandlerError.prototype);
172
- this.cause = options?.cause;
173
- }
174
- }
175
- /**
176
- * Internal invariant assertion for development-time checks
177
- *
178
- * @internal
179
- * @param condition - Condition that must be true
180
- * @param message - Error message to throw if condition is false
181
- * @throws {Error} If condition is false
182
- *
183
- * @example
184
- * ```typescript
185
- * invariant(user !== null, 'User must be defined');
186
- * invariant(node.type === 'layout', `Expected layout, got ${node.type}`);
187
- * ```
188
- */
189
- export function invariant(condition, message) {
190
- if (!condition) {
191
- throw new Error(`Invariant: ${message}`);
192
- }
193
- }
194
- /**
195
- * Sanitize errors for production - prevents leaking sensitive information
196
- *
197
- * SECURITY CRITICAL:
198
- * - In production: NEVER send stack traces, file paths, or internal state
199
- * - In development: Show full error details for debugging
200
- * - ALWAYS consume error.stack to prevent memory leaks
201
- *
202
- * @param error - Error to sanitize
203
- * @returns Response suitable for sending to client
204
- */
205
- export function sanitizeError(error) {
206
- // CRITICAL: Consume stack trace to prevent memory leaks
207
- if (error && typeof error === "object" && "stack" in error) {
208
- const _ = error.stack; // Force V8 to generate/consume stack trace
209
- }
210
- // Response objects are safe to return as-is
211
- if (error instanceof Response) {
212
- return error;
213
- }
214
- const isDev = import.meta.env?.DEV ?? true;
215
- if (isDev) {
216
- // Development: Send full error details for debugging
217
- const errorDetails = {
218
- name: error instanceof Error ? error.name : "Error",
219
- message: error instanceof Error ? error.message : String(error),
220
- stack: error instanceof Error ? error.stack : undefined,
221
- cause: error && typeof error === "object" && "cause" in error
222
- ? error.cause
223
- : undefined,
224
- };
225
- return new Response(JSON.stringify(errorDetails, null, 2), {
226
- status: 500,
227
- headers: {
228
- "Content-Type": "application/json",
229
- },
230
- });
231
- }
232
- // Production: Generic error only - NO internal details
233
- // SECURITY: Never leak stack traces, file paths, or application state
234
- return new Response("Internal Server Error", {
235
- status: 500,
236
- headers: {
237
- "Content-Type": "text/plain",
238
- },
239
- });
240
- }
241
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/handle.d.ts DELETED
@@ -1,78 +0,0 @@
1
- /**
2
- * Handle definition for accumulating data across route segments.
3
- *
4
- * Handles allow server-side route handlers to pass accumulated data to client
5
- * components. Unlike loaders (which fetch data for specific routes), handles
6
- * accumulate data across all matched route segments.
7
- *
8
- * @example
9
- * ```ts
10
- * // Define a handle (name auto-generated from file + export)
11
- * export const Breadcrumbs = createHandle<BreadcrumbItem>();
12
- *
13
- * // Use in handler
14
- * const push = ctx.use(Breadcrumbs);
15
- * push({ label: "Home", href: "/" });
16
- *
17
- * // Consume on client
18
- * const crumbs = useHandle(Breadcrumbs);
19
- * ```
20
- */
21
- export interface Handle<TData, TAccumulated = TData[]> {
22
- /**
23
- * Brand to distinguish handles from loaders in ctx.use()
24
- */
25
- readonly __brand: "handle";
26
- /**
27
- * Auto-generated unique ID for this handle (used as key in storage)
28
- * Format: "filePath#ExportName" in dev, "hash#ExportName" in production
29
- */
30
- readonly $$id: string;
31
- }
32
- /**
33
- * Look up a collect function from the registry by handle $$id.
34
- * Returns undefined if not registered (falls back to defaultCollect in useHandle).
35
- */
36
- export declare function getCollectFn(id: string): ((segments: unknown[][]) => unknown) | undefined;
37
- /**
38
- * Create a handle definition for accumulating data across route segments.
39
- *
40
- * The $$id is auto-generated by the Vite exposeInternalIds plugin based on
41
- * file path and export name. No manual naming required.
42
- *
43
- * @param collect - Optional collect function (default: flatten into array)
44
- * @param __injectedId - Auto-injected by Vite plugin, do not provide manually
45
- *
46
- * @example
47
- * ```ts
48
- * // Default: flatten into array
49
- * export const Breadcrumbs = createHandle<BreadcrumbItem>();
50
- * // Result type: BreadcrumbItem[]
51
- *
52
- * // Custom: last value wins
53
- * export const PageTitle = createHandle<string, string>(
54
- * (segments) => segments.flat().at(-1) ?? "Default Title"
55
- * );
56
- * // Result type: string
57
- *
58
- * // Custom: object merge
59
- * export const Meta = createHandle<Partial<MetaTags>, MetaTags>(
60
- * (segments) => Object.assign({ robots: "index,follow" }, ...segments.flat())
61
- * );
62
- * // Result type: MetaTags
63
- *
64
- * // Custom: dedupe by href
65
- * export const Breadcrumbs = createHandle<BreadcrumbItem>(
66
- * (segments) => {
67
- * const all = segments.flat();
68
- * return all.filter((item, i) => all.findIndex(x => x.href === item.href) === i);
69
- * }
70
- * );
71
- * ```
72
- */
73
- export declare function createHandle<TData, TAccumulated = TData[]>(collect?: (segments: TData[][]) => TAccumulated, __injectedId?: string): Handle<TData, TAccumulated>;
74
- /**
75
- * Type guard to check if a value is a Handle.
76
- */
77
- export declare function isHandle(value: unknown): value is Handle<unknown, unknown>;
78
- //# sourceMappingURL=handle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../src/handle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,EAAE;IACnD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CAEvB;AAcD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,OAAO,CAAC,GAAG,SAAS,CAEzF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,EAAE,EACxD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,YAAY,EAC/C,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAwB7B;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAO1E"}
package/dist/handle.js DELETED
@@ -1,82 +0,0 @@
1
- /**
2
- * Default collect function that flattens segment arrays into a single array.
3
- */
4
- function defaultCollect(segments) {
5
- return segments.flat();
6
- }
7
- // Module-level registry mapping $$id to collect functions.
8
- // Populated when createHandle() runs (both server and client).
9
- // Used by useHandle() to recover collect when handle is deserialized from RSC prop.
10
- const collectRegistry = new Map();
11
- /**
12
- * Look up a collect function from the registry by handle $$id.
13
- * Returns undefined if not registered (falls back to defaultCollect in useHandle).
14
- */
15
- export function getCollectFn(id) {
16
- return collectRegistry.get(id);
17
- }
18
- /**
19
- * Create a handle definition for accumulating data across route segments.
20
- *
21
- * The $$id is auto-generated by the Vite exposeInternalIds plugin based on
22
- * file path and export name. No manual naming required.
23
- *
24
- * @param collect - Optional collect function (default: flatten into array)
25
- * @param __injectedId - Auto-injected by Vite plugin, do not provide manually
26
- *
27
- * @example
28
- * ```ts
29
- * // Default: flatten into array
30
- * export const Breadcrumbs = createHandle<BreadcrumbItem>();
31
- * // Result type: BreadcrumbItem[]
32
- *
33
- * // Custom: last value wins
34
- * export const PageTitle = createHandle<string, string>(
35
- * (segments) => segments.flat().at(-1) ?? "Default Title"
36
- * );
37
- * // Result type: string
38
- *
39
- * // Custom: object merge
40
- * export const Meta = createHandle<Partial<MetaTags>, MetaTags>(
41
- * (segments) => Object.assign({ robots: "index,follow" }, ...segments.flat())
42
- * );
43
- * // Result type: MetaTags
44
- *
45
- * // Custom: dedupe by href
46
- * export const Breadcrumbs = createHandle<BreadcrumbItem>(
47
- * (segments) => {
48
- * const all = segments.flat();
49
- * return all.filter((item, i) => all.findIndex(x => x.href === item.href) === i);
50
- * }
51
- * );
52
- * ```
53
- */
54
- export function createHandle(collect, __injectedId) {
55
- const handleId = __injectedId ?? "";
56
- if (!handleId && process.env.NODE_ENV !== "production") {
57
- throw new Error("[rsc-router] Handle is missing $$id. " +
58
- "Make sure the exposeInternalIds Vite plugin is enabled and " +
59
- "the handle is exported with: export const MyHandle = createHandle(...)");
60
- }
61
- const collectFn = collect ??
62
- defaultCollect;
63
- // Register collect in module-level registry so useHandle() can recover it
64
- // when the handle is deserialized from RSC props (toJSON strips collect).
65
- if (handleId) {
66
- collectRegistry.set(handleId, collectFn);
67
- }
68
- return {
69
- __brand: "handle",
70
- $$id: handleId,
71
- };
72
- }
73
- /**
74
- * Type guard to check if a value is a Handle.
75
- */
76
- export function isHandle(value) {
77
- return (typeof value === "object" &&
78
- value !== null &&
79
- "__brand" in value &&
80
- value.__brand === "handle");
81
- }
82
- //# sourceMappingURL=handle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handle.js","sourceRoot":"","sources":["../src/handle.ts"],"names":[],"mappings":"AAkCA;;GAEG;AACH,SAAS,cAAc,CAAI,QAAe;IACxC,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,2DAA2D;AAC3D,+DAA+D;AAC/D,oFAAoF;AACpF,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8C,CAAC;AAE9E;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,EAAU;IACrC,OAAO,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,YAAY,CAC1B,OAA+C,EAC/C,YAAqB;IAErB,MAAM,QAAQ,GAAG,YAAY,IAAI,EAAE,CAAC;IAEpC,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,uCAAuC;YACrC,6DAA6D;YAC7D,wEAAwE,CAC3E,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,OAAO;QACtB,cAAmE,CAAC;IAEvE,0EAA0E;IAC1E,0EAA0E;IAC1E,IAAI,QAAQ,EAAE,CAAC;QACb,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,SAA+C,CAAC,CAAC;IACjF,CAAC;IAED,OAAO;QACL,OAAO,EAAE,QAAiB;QAC1B,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,SAAS,IAAI,KAAK;QACjB,KAA8B,CAAC,OAAO,KAAK,QAAQ,CACrD,CAAC;AACJ,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Renders all collected meta descriptors from route handlers.
3
- *
4
- * Place this component inside the `<head>` element of your document.
5
- * It will automatically update when meta descriptors change during navigation.
6
- *
7
- * When theme is enabled in router config, also renders the theme initialization
8
- * script to prevent FOUC (flash of unstyled content).
9
- *
10
- * Async meta descriptors (Promise<MetaDescriptorBase>) are resolved using
11
- * React's use() hook. RSC streaming handles the Promise resolution.
12
- */
13
- export declare function MetaTags(): React.ReactNode;
14
- //# sourceMappingURL=MetaTags.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MetaTags.d.ts","sourceRoot":"","sources":["../../src/handles/MetaTags.tsx"],"names":[],"mappings":"AAgKA;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,IAAI,KAAK,CAAC,SAAS,CAoB1C"}
@@ -1,136 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
- /**
4
- * Component to render collected meta descriptors in the document head.
5
- *
6
- * Supports both sync and async meta descriptors. Async descriptors
7
- * (Promise<MetaDescriptorBase>) are resolved using React's use() hook.
8
- *
9
- * When theme is enabled in the router config, MetaTags also renders
10
- * the theme initialization script to prevent FOUC (flash of unstyled content).
11
- *
12
- * @example
13
- * ```tsx
14
- * function RootLayout() {
15
- * return (
16
- * <html lang="en" suppressHydrationWarning>
17
- * <head>
18
- * <MetaTags />
19
- * </head>
20
- * <body>...</body>
21
- * </html>
22
- * );
23
- * }
24
- * ```
25
- */
26
- import { use } from "react";
27
- import { useHandle } from "../browser/react/use-handle.js";
28
- import { Meta } from "./meta.js";
29
- import { getSSRThemeConfig } from "../theme/theme-context.js";
30
- import { generateThemeScript } from "../theme/theme-script.js";
31
- // Type guards for MetaDescriptorBase variants
32
- function hasCharSet(d) {
33
- return "charSet" in d && d.charSet === "utf-8";
34
- }
35
- function hasTitle(d) {
36
- return "title" in d && typeof d.title === "string";
37
- }
38
- function hasNameContent(d) {
39
- return "name" in d && "content" in d &&
40
- typeof d.name === "string" &&
41
- typeof d.content === "string";
42
- }
43
- function hasPropertyContent(d) {
44
- return "property" in d && "content" in d &&
45
- typeof d.property === "string" &&
46
- typeof d.content === "string";
47
- }
48
- function hasHttpEquivContent(d) {
49
- return "httpEquiv" in d && "content" in d &&
50
- typeof d.httpEquiv === "string" &&
51
- typeof d.content === "string";
52
- }
53
- function hasScriptLdJson(d) {
54
- return "script:ld+json" in d;
55
- }
56
- function hasTagName(d) {
57
- return "tagName" in d && (d.tagName === "meta" || d.tagName === "link");
58
- }
59
- /**
60
- * Check if a value is a Promise.
61
- */
62
- function isPromise(value) {
63
- return value !== null && typeof value === "object" && "then" in value;
64
- }
65
- /**
66
- * Render a single meta descriptor as a React element.
67
- */
68
- function renderMetaDescriptor(descriptor, index) {
69
- // charset
70
- if (hasCharSet(descriptor)) {
71
- return _jsx("meta", { charSet: descriptor.charSet }, "charSet");
72
- }
73
- // title
74
- if (hasTitle(descriptor)) {
75
- return _jsx("title", { children: descriptor.title }, "title");
76
- }
77
- // name + content (description, viewport, etc.)
78
- if (hasNameContent(descriptor)) {
79
- return (_jsx("meta", { name: descriptor.name, content: descriptor.content }, `name-${descriptor.name}`));
80
- }
81
- // property + content (Open Graph, etc.)
82
- if (hasPropertyContent(descriptor)) {
83
- return (_jsx("meta", { property: descriptor.property, content: descriptor.content }, `property-${descriptor.property}`));
84
- }
85
- // http-equiv + content
86
- if (hasHttpEquivContent(descriptor)) {
87
- return (_jsx("meta", { httpEquiv: descriptor.httpEquiv, content: descriptor.content }, `httpEquiv-${descriptor.httpEquiv}`));
88
- }
89
- // JSON-LD structured data
90
- if (hasScriptLdJson(descriptor)) {
91
- const json = JSON.stringify(descriptor["script:ld+json"]);
92
- return (_jsx("script", { type: "application/ld+json", dangerouslySetInnerHTML: { __html: json } }, `ld-json-${index}`));
93
- }
94
- // Custom tagName (meta or link with arbitrary attributes)
95
- if (hasTagName(descriptor)) {
96
- const { tagName, ...rest } = descriptor;
97
- if (tagName === "link") {
98
- return _jsx("link", { ...rest }, `link-${index}`);
99
- }
100
- if (tagName === "meta") {
101
- return _jsx("meta", { ...rest }, `meta-${index}`);
102
- }
103
- }
104
- // Fallback: treat as meta attributes
105
- return _jsx("meta", { ...descriptor }, `meta-fallback-${index}`);
106
- }
107
- /**
108
- * Wrapper component to resolve a Promise<MetaDescriptorBase> using use().
109
- */
110
- function AsyncMetaTag({ promise, index }) {
111
- const resolved = use(promise);
112
- return renderMetaDescriptor(resolved, index);
113
- }
114
- /**
115
- * Renders all collected meta descriptors from route handlers.
116
- *
117
- * Place this component inside the `<head>` element of your document.
118
- * It will automatically update when meta descriptors change during navigation.
119
- *
120
- * When theme is enabled in router config, also renders the theme initialization
121
- * script to prevent FOUC (flash of unstyled content).
122
- *
123
- * Async meta descriptors (Promise<MetaDescriptorBase>) are resolved using
124
- * React's use() hook. RSC streaming handles the Promise resolution.
125
- */
126
- export function MetaTags() {
127
- const descriptors = useHandle(Meta);
128
- const themeConfig = getSSRThemeConfig();
129
- return (_jsxs(_Fragment, { children: [themeConfig && (_jsx("script", { dangerouslySetInnerHTML: { __html: generateThemeScript(themeConfig) } })), descriptors.map((descriptor, index) => {
130
- if (isPromise(descriptor)) {
131
- return _jsx(AsyncMetaTag, { promise: descriptor, index: index }, `async-${index}`);
132
- }
133
- return renderMetaDescriptor(descriptor, index);
134
- })] }));
135
- }
136
- //# sourceMappingURL=MetaTags.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MetaTags.js","sourceRoot":"","sources":["../../src/handles/MetaTags.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Built-in handles for rsc-router.
3
- */
4
- export { Meta } from "./meta.ts";
5
- export { MetaTags } from "./MetaTags.tsx";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/handles/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Built-in handles for rsc-router.
3
- */
4
- export { Meta } from "./meta.ts";
5
- export { MetaTags } from "./MetaTags.tsx";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handles/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,39 +0,0 @@
1
- /**
2
- * Built-in Meta handle for managing document metadata across route segments.
3
- *
4
- * Provides automatic deduplication: later routes override earlier ones
5
- * for the same meta key (title, name, property, etc.)
6
- *
7
- * @example
8
- * ```tsx
9
- * // In route handler
10
- * route("product/:id", (ctx) => {
11
- * const meta = ctx.use(Meta);
12
- * meta({ title: "Product Details" });
13
- * meta({ name: "description", content: "..." });
14
- * meta({ property: "og:title", content: "..." });
15
- * });
16
- *
17
- * // In layout (renders the collected meta tags)
18
- * function RootLayout() {
19
- * return (
20
- * <html>
21
- * <head>
22
- * <MetaTags />
23
- * </head>
24
- * ...
25
- * </html>
26
- * );
27
- * }
28
- * ```
29
- */
30
- import { type Handle } from "../handle.js";
31
- import type { MetaDescriptor } from "../router/types.js";
32
- /**
33
- * Built-in handle for managing document metadata.
34
- *
35
- * Use `ctx.use(Meta)` in route handlers to push meta descriptors.
36
- * Use `<MetaTags />` component to render them in the document head.
37
- */
38
- export declare const Meta: Handle<MetaDescriptor, MetaDescriptor[]>;
39
- //# sourceMappingURL=meta.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/handles/meta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,oBAAoB,CAAC;AA0M5B;;;;;GAKG;AACH,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,cAAc,EAAE,cAAc,EAAE,CAGzD,CAAC"}