@rangojs/router 0.0.0-experimental.0b3f4e91 → 0.0.0-experimental.0c4f94c2

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 (890) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +2 -1
  3. package/dist/vite/index.js +507 -192
  4. package/package.json +3 -3
  5. package/skills/handler-use/SKILL.md +362 -0
  6. package/skills/intercept/SKILL.md +20 -0
  7. package/skills/layout/SKILL.md +22 -0
  8. package/skills/middleware/SKILL.md +32 -3
  9. package/skills/migrate-nextjs/SKILL.md +560 -0
  10. package/skills/migrate-react-router/SKILL.md +764 -0
  11. package/skills/parallel/SKILL.md +59 -0
  12. package/skills/prerender/SKILL.md +110 -68
  13. package/skills/rango/SKILL.md +24 -22
  14. package/skills/route/SKILL.md +24 -0
  15. package/src/__internal.ts +1 -1
  16. package/src/browser/navigation-bridge.ts +7 -1
  17. package/src/browser/navigation-client.ts +34 -6
  18. package/src/browser/partial-update.ts +5 -0
  19. package/src/browser/prefetch/cache.ts +16 -6
  20. package/src/browser/prefetch/fetch.ts +60 -4
  21. package/src/browser/react/Link.tsx +25 -2
  22. package/src/browser/react/use-handle.ts +9 -58
  23. package/src/browser/scroll-restoration.ts +10 -8
  24. package/src/browser/segment-reconciler.ts +26 -0
  25. package/src/build/generate-manifest.ts +3 -6
  26. package/src/build/route-trie.ts +50 -24
  27. package/src/build/route-types/scan-filter.ts +8 -1
  28. package/src/client.tsx +2 -56
  29. package/src/handle.ts +40 -0
  30. package/src/index.rsc.ts +3 -1
  31. package/src/index.ts +46 -6
  32. package/src/prerender/store.ts +5 -4
  33. package/src/prerender.ts +138 -77
  34. package/src/reverse.ts +25 -1
  35. package/src/route-definition/dsl-helpers.ts +194 -32
  36. package/src/route-definition/helpers-types.ts +61 -14
  37. package/src/route-definition/index.ts +3 -0
  38. package/src/route-definition/resolve-handler-use.ts +149 -0
  39. package/src/route-types.ts +11 -0
  40. package/src/router/content-negotiation.ts +100 -1
  41. package/src/router/handler-context.ts +46 -6
  42. package/src/router/loader-resolution.ts +147 -19
  43. package/src/router/match-api.ts +124 -189
  44. package/src/router/match-middleware/cache-lookup.ts +24 -7
  45. package/src/router/match-middleware/segment-resolution.ts +53 -0
  46. package/src/router/match-result.ts +82 -4
  47. package/src/router/navigation-snapshot.ts +182 -0
  48. package/src/router/prerender-match.ts +108 -8
  49. package/src/router/preview-match.ts +30 -102
  50. package/src/router/request-classification.ts +310 -0
  51. package/src/router/route-snapshot.ts +245 -0
  52. package/src/router/router-interfaces.ts +11 -0
  53. package/src/router/segment-resolution/fresh.ts +59 -2
  54. package/src/router/segment-resolution/revalidation.ts +79 -6
  55. package/src/router.ts +13 -1
  56. package/src/rsc/handler.ts +468 -377
  57. package/src/rsc/loader-fetch.ts +23 -3
  58. package/src/rsc/progressive-enhancement.ts +10 -2
  59. package/src/rsc/rsc-rendering.ts +5 -1
  60. package/src/rsc/server-action.ts +6 -0
  61. package/src/rsc/ssr-setup.ts +1 -1
  62. package/src/rsc/types.ts +1 -0
  63. package/src/segment-system.tsx +45 -11
  64. package/src/server/context.ts +14 -1
  65. package/src/server/handle-store.ts +19 -0
  66. package/src/server/request-context.ts +125 -3
  67. package/src/static-handler.ts +18 -6
  68. package/src/types/handler-context.ts +12 -2
  69. package/src/types/loader-types.ts +32 -4
  70. package/src/types/route-entry.ts +1 -1
  71. package/src/types/segments.ts +4 -0
  72. package/src/urls/path-helper-types.ts +39 -6
  73. package/src/urls/path-helper.ts +47 -12
  74. package/src/urls/response-types.ts +16 -6
  75. package/src/use-loader.tsx +77 -5
  76. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  77. package/src/vite/discovery/prerender-collection.ts +128 -74
  78. package/src/vite/discovery/state.ts +13 -4
  79. package/src/vite/index.ts +4 -0
  80. package/src/vite/plugin-types.ts +60 -5
  81. package/src/vite/plugins/expose-id-utils.ts +12 -0
  82. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  83. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  84. package/src/vite/plugins/refresh-cmd.ts +88 -26
  85. package/src/vite/rango.ts +2 -1
  86. package/src/vite/router-discovery.ts +178 -37
  87. package/src/vite/utils/prerender-utils.ts +37 -5
  88. package/dist/__internal.d.ts +0 -83
  89. package/dist/__internal.d.ts.map +0 -1
  90. package/dist/__internal.js +0 -19
  91. package/dist/__internal.js.map +0 -1
  92. package/dist/__mocks__/version.d.ts +0 -7
  93. package/dist/__mocks__/version.d.ts.map +0 -1
  94. package/dist/__mocks__/version.js +0 -7
  95. package/dist/__mocks__/version.js.map +0 -1
  96. package/dist/__tests__/client-href.test.d.ts +0 -2
  97. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  98. package/dist/__tests__/client-href.test.js +0 -74
  99. package/dist/__tests__/client-href.test.js.map +0 -1
  100. package/dist/__tests__/component-utils.test.d.ts +0 -2
  101. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  102. package/dist/__tests__/component-utils.test.js +0 -51
  103. package/dist/__tests__/component-utils.test.js.map +0 -1
  104. package/dist/__tests__/event-controller.test.d.ts +0 -2
  105. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  106. package/dist/__tests__/event-controller.test.js +0 -538
  107. package/dist/__tests__/event-controller.test.js.map +0 -1
  108. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  109. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  110. package/dist/__tests__/helpers/route-tree.js +0 -374
  111. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  112. package/dist/__tests__/match-result.test.d.ts +0 -2
  113. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  114. package/dist/__tests__/match-result.test.js +0 -154
  115. package/dist/__tests__/match-result.test.js.map +0 -1
  116. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  117. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  118. package/dist/__tests__/navigation-store.test.js +0 -440
  119. package/dist/__tests__/navigation-store.test.js.map +0 -1
  120. package/dist/__tests__/partial-update.test.d.ts +0 -2
  121. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  122. package/dist/__tests__/partial-update.test.js +0 -1009
  123. package/dist/__tests__/partial-update.test.js.map +0 -1
  124. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  125. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  126. package/dist/__tests__/reverse-types.test.js +0 -656
  127. package/dist/__tests__/reverse-types.test.js.map +0 -1
  128. package/dist/__tests__/route-definition.test.d.ts +0 -2
  129. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  130. package/dist/__tests__/route-definition.test.js +0 -55
  131. package/dist/__tests__/route-definition.test.js.map +0 -1
  132. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  133. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  134. package/dist/__tests__/router-helpers.test.js +0 -377
  135. package/dist/__tests__/router-helpers.test.js.map +0 -1
  136. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  137. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  138. package/dist/__tests__/router-integration-2.test.js +0 -426
  139. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  140. package/dist/__tests__/router-integration.test.d.ts +0 -2
  141. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  142. package/dist/__tests__/router-integration.test.js +0 -1051
  143. package/dist/__tests__/router-integration.test.js.map +0 -1
  144. package/dist/__tests__/search-params.test.d.ts +0 -5
  145. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  146. package/dist/__tests__/search-params.test.js +0 -306
  147. package/dist/__tests__/search-params.test.js.map +0 -1
  148. package/dist/__tests__/segment-system.test.d.ts +0 -2
  149. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  150. package/dist/__tests__/segment-system.test.js +0 -627
  151. package/dist/__tests__/segment-system.test.js.map +0 -1
  152. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  153. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  154. package/dist/__tests__/static-handler-types.test.js +0 -63
  155. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  156. package/dist/__tests__/urls.test.d.ts +0 -2
  157. package/dist/__tests__/urls.test.d.ts.map +0 -1
  158. package/dist/__tests__/urls.test.js +0 -421
  159. package/dist/__tests__/urls.test.js.map +0 -1
  160. package/dist/__tests__/use-mount.test.d.ts +0 -2
  161. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  162. package/dist/__tests__/use-mount.test.js +0 -35
  163. package/dist/__tests__/use-mount.test.js.map +0 -1
  164. package/dist/bin/rango.d.ts +0 -2
  165. package/dist/bin/rango.d.ts.map +0 -1
  166. package/dist/bin/rango.js.map +0 -1
  167. package/dist/browser/event-controller.d.ts +0 -191
  168. package/dist/browser/event-controller.d.ts.map +0 -1
  169. package/dist/browser/event-controller.js +0 -559
  170. package/dist/browser/event-controller.js.map +0 -1
  171. package/dist/browser/index.d.ts +0 -2
  172. package/dist/browser/index.d.ts.map +0 -1
  173. package/dist/browser/index.js +0 -14
  174. package/dist/browser/index.js.map +0 -1
  175. package/dist/browser/link-interceptor.d.ts +0 -38
  176. package/dist/browser/link-interceptor.d.ts.map +0 -1
  177. package/dist/browser/link-interceptor.js +0 -99
  178. package/dist/browser/link-interceptor.js.map +0 -1
  179. package/dist/browser/logging.d.ts +0 -10
  180. package/dist/browser/logging.d.ts.map +0 -1
  181. package/dist/browser/logging.js +0 -29
  182. package/dist/browser/logging.js.map +0 -1
  183. package/dist/browser/lru-cache.d.ts +0 -17
  184. package/dist/browser/lru-cache.d.ts.map +0 -1
  185. package/dist/browser/lru-cache.js +0 -50
  186. package/dist/browser/lru-cache.js.map +0 -1
  187. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  188. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  189. package/dist/browser/merge-segment-loaders.js +0 -102
  190. package/dist/browser/merge-segment-loaders.js.map +0 -1
  191. package/dist/browser/navigation-bridge.d.ts +0 -102
  192. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  193. package/dist/browser/navigation-bridge.js +0 -708
  194. package/dist/browser/navigation-bridge.js.map +0 -1
  195. package/dist/browser/navigation-client.d.ts +0 -25
  196. package/dist/browser/navigation-client.d.ts.map +0 -1
  197. package/dist/browser/navigation-client.js +0 -157
  198. package/dist/browser/navigation-client.js.map +0 -1
  199. package/dist/browser/navigation-store.d.ts +0 -101
  200. package/dist/browser/navigation-store.d.ts.map +0 -1
  201. package/dist/browser/navigation-store.js +0 -625
  202. package/dist/browser/navigation-store.js.map +0 -1
  203. package/dist/browser/partial-update.d.ts +0 -75
  204. package/dist/browser/partial-update.d.ts.map +0 -1
  205. package/dist/browser/partial-update.js +0 -426
  206. package/dist/browser/partial-update.js.map +0 -1
  207. package/dist/browser/react/Link.d.ts +0 -86
  208. package/dist/browser/react/Link.d.ts.map +0 -1
  209. package/dist/browser/react/Link.js +0 -128
  210. package/dist/browser/react/Link.js.map +0 -1
  211. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  212. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  213. package/dist/browser/react/NavigationProvider.js +0 -216
  214. package/dist/browser/react/NavigationProvider.js.map +0 -1
  215. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  216. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  217. package/dist/browser/react/ScrollRestoration.js +0 -57
  218. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  219. package/dist/browser/react/context.d.ts +0 -46
  220. package/dist/browser/react/context.d.ts.map +0 -1
  221. package/dist/browser/react/context.js +0 -10
  222. package/dist/browser/react/context.js.map +0 -1
  223. package/dist/browser/react/index.d.ts +0 -11
  224. package/dist/browser/react/index.d.ts.map +0 -1
  225. package/dist/browser/react/index.js +0 -22
  226. package/dist/browser/react/index.js.map +0 -1
  227. package/dist/browser/react/location-state-shared.d.ts +0 -63
  228. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  229. package/dist/browser/react/location-state-shared.js +0 -81
  230. package/dist/browser/react/location-state-shared.js.map +0 -1
  231. package/dist/browser/react/location-state.d.ts +0 -23
  232. package/dist/browser/react/location-state.d.ts.map +0 -1
  233. package/dist/browser/react/location-state.js +0 -29
  234. package/dist/browser/react/location-state.js.map +0 -1
  235. package/dist/browser/react/mount-context.d.ts +0 -24
  236. package/dist/browser/react/mount-context.d.ts.map +0 -1
  237. package/dist/browser/react/mount-context.js +0 -24
  238. package/dist/browser/react/mount-context.js.map +0 -1
  239. package/dist/browser/react/use-action.d.ts +0 -64
  240. package/dist/browser/react/use-action.d.ts.map +0 -1
  241. package/dist/browser/react/use-action.js +0 -134
  242. package/dist/browser/react/use-action.js.map +0 -1
  243. package/dist/browser/react/use-client-cache.d.ts +0 -41
  244. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  245. package/dist/browser/react/use-client-cache.js +0 -39
  246. package/dist/browser/react/use-client-cache.js.map +0 -1
  247. package/dist/browser/react/use-handle.d.ts +0 -31
  248. package/dist/browser/react/use-handle.d.ts.map +0 -1
  249. package/dist/browser/react/use-handle.js +0 -144
  250. package/dist/browser/react/use-handle.js.map +0 -1
  251. package/dist/browser/react/use-href.d.ts +0 -33
  252. package/dist/browser/react/use-href.d.ts.map +0 -1
  253. package/dist/browser/react/use-href.js +0 -39
  254. package/dist/browser/react/use-href.js.map +0 -1
  255. package/dist/browser/react/use-link-status.d.ts +0 -37
  256. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  257. package/dist/browser/react/use-link-status.js +0 -99
  258. package/dist/browser/react/use-link-status.js.map +0 -1
  259. package/dist/browser/react/use-mount.d.ts +0 -25
  260. package/dist/browser/react/use-mount.d.ts.map +0 -1
  261. package/dist/browser/react/use-mount.js +0 -30
  262. package/dist/browser/react/use-mount.js.map +0 -1
  263. package/dist/browser/react/use-navigation.d.ts +0 -27
  264. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  265. package/dist/browser/react/use-navigation.js +0 -87
  266. package/dist/browser/react/use-navigation.js.map +0 -1
  267. package/dist/browser/react/use-segments.d.ts +0 -38
  268. package/dist/browser/react/use-segments.d.ts.map +0 -1
  269. package/dist/browser/react/use-segments.js +0 -130
  270. package/dist/browser/react/use-segments.js.map +0 -1
  271. package/dist/browser/request-controller.d.ts +0 -26
  272. package/dist/browser/request-controller.d.ts.map +0 -1
  273. package/dist/browser/request-controller.js +0 -147
  274. package/dist/browser/request-controller.js.map +0 -1
  275. package/dist/browser/rsc-router.d.ts +0 -129
  276. package/dist/browser/rsc-router.d.ts.map +0 -1
  277. package/dist/browser/rsc-router.js +0 -195
  278. package/dist/browser/rsc-router.js.map +0 -1
  279. package/dist/browser/scroll-restoration.d.ts +0 -93
  280. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  281. package/dist/browser/scroll-restoration.js +0 -321
  282. package/dist/browser/scroll-restoration.js.map +0 -1
  283. package/dist/browser/segment-structure-assert.d.ts +0 -17
  284. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  285. package/dist/browser/segment-structure-assert.js +0 -59
  286. package/dist/browser/segment-structure-assert.js.map +0 -1
  287. package/dist/browser/server-action-bridge.d.ts +0 -26
  288. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  289. package/dist/browser/server-action-bridge.js +0 -668
  290. package/dist/browser/server-action-bridge.js.map +0 -1
  291. package/dist/browser/shallow.d.ts +0 -12
  292. package/dist/browser/shallow.d.ts.map +0 -1
  293. package/dist/browser/shallow.js +0 -34
  294. package/dist/browser/shallow.js.map +0 -1
  295. package/dist/browser/types.d.ts +0 -369
  296. package/dist/browser/types.d.ts.map +0 -1
  297. package/dist/browser/types.js +0 -2
  298. package/dist/browser/types.js.map +0 -1
  299. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  300. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  301. package/dist/build/__tests__/generate-cli.test.js +0 -237
  302. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  303. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  304. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  305. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  306. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  307. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  308. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  309. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  310. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  311. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  312. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  313. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  314. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  315. package/dist/build/generate-manifest.d.ts +0 -81
  316. package/dist/build/generate-manifest.d.ts.map +0 -1
  317. package/dist/build/generate-manifest.js +0 -276
  318. package/dist/build/generate-manifest.js.map +0 -1
  319. package/dist/build/generate-route-types.d.ts +0 -115
  320. package/dist/build/generate-route-types.d.ts.map +0 -1
  321. package/dist/build/generate-route-types.js +0 -740
  322. package/dist/build/generate-route-types.js.map +0 -1
  323. package/dist/build/index.d.ts +0 -21
  324. package/dist/build/index.d.ts.map +0 -1
  325. package/dist/build/index.js +0 -21
  326. package/dist/build/index.js.map +0 -1
  327. package/dist/build/route-trie.d.ts +0 -71
  328. package/dist/build/route-trie.d.ts.map +0 -1
  329. package/dist/build/route-trie.js +0 -175
  330. package/dist/build/route-trie.js.map +0 -1
  331. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  332. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  333. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  334. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  335. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  336. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  337. package/dist/cache/__tests__/document-cache.test.js +0 -345
  338. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  339. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  340. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  341. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  342. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  343. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  344. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  345. package/dist/cache/__tests__/memory-store.test.js +0 -367
  346. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  347. package/dist/cache/cache-scope.d.ts +0 -102
  348. package/dist/cache/cache-scope.d.ts.map +0 -1
  349. package/dist/cache/cache-scope.js +0 -440
  350. package/dist/cache/cache-scope.js.map +0 -1
  351. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  352. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  353. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  354. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  355. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  356. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  357. package/dist/cache/cf/cf-cache-store.js +0 -242
  358. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  359. package/dist/cache/cf/index.d.ts +0 -14
  360. package/dist/cache/cf/index.d.ts.map +0 -1
  361. package/dist/cache/cf/index.js +0 -17
  362. package/dist/cache/cf/index.js.map +0 -1
  363. package/dist/cache/document-cache.d.ts +0 -64
  364. package/dist/cache/document-cache.d.ts.map +0 -1
  365. package/dist/cache/document-cache.js +0 -228
  366. package/dist/cache/document-cache.js.map +0 -1
  367. package/dist/cache/index.d.ts +0 -19
  368. package/dist/cache/index.d.ts.map +0 -1
  369. package/dist/cache/index.js +0 -21
  370. package/dist/cache/index.js.map +0 -1
  371. package/dist/cache/memory-segment-store.d.ts +0 -110
  372. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  373. package/dist/cache/memory-segment-store.js +0 -117
  374. package/dist/cache/memory-segment-store.js.map +0 -1
  375. package/dist/cache/memory-store.d.ts +0 -41
  376. package/dist/cache/memory-store.d.ts.map +0 -1
  377. package/dist/cache/memory-store.js +0 -191
  378. package/dist/cache/memory-store.js.map +0 -1
  379. package/dist/cache/types.d.ts +0 -317
  380. package/dist/cache/types.d.ts.map +0 -1
  381. package/dist/cache/types.js +0 -12
  382. package/dist/cache/types.js.map +0 -1
  383. package/dist/client.d.ts +0 -248
  384. package/dist/client.d.ts.map +0 -1
  385. package/dist/client.js +0 -367
  386. package/dist/client.js.map +0 -1
  387. package/dist/client.rsc.d.ts +0 -26
  388. package/dist/client.rsc.d.ts.map +0 -1
  389. package/dist/client.rsc.js +0 -46
  390. package/dist/client.rsc.js.map +0 -1
  391. package/dist/component-utils.d.ts +0 -36
  392. package/dist/component-utils.d.ts.map +0 -1
  393. package/dist/component-utils.js +0 -61
  394. package/dist/component-utils.js.map +0 -1
  395. package/dist/components/DefaultDocument.d.ts +0 -13
  396. package/dist/components/DefaultDocument.d.ts.map +0 -1
  397. package/dist/components/DefaultDocument.js +0 -15
  398. package/dist/components/DefaultDocument.js.map +0 -1
  399. package/dist/debug.d.ts +0 -58
  400. package/dist/debug.d.ts.map +0 -1
  401. package/dist/debug.js +0 -157
  402. package/dist/debug.js.map +0 -1
  403. package/dist/default-error-boundary.d.ts +0 -11
  404. package/dist/default-error-boundary.d.ts.map +0 -1
  405. package/dist/default-error-boundary.js +0 -45
  406. package/dist/default-error-boundary.js.map +0 -1
  407. package/dist/deps/browser.d.ts +0 -2
  408. package/dist/deps/browser.d.ts.map +0 -1
  409. package/dist/deps/browser.js +0 -3
  410. package/dist/deps/browser.js.map +0 -1
  411. package/dist/deps/html-stream-client.d.ts +0 -2
  412. package/dist/deps/html-stream-client.d.ts.map +0 -1
  413. package/dist/deps/html-stream-client.js +0 -3
  414. package/dist/deps/html-stream-client.js.map +0 -1
  415. package/dist/deps/html-stream-server.d.ts +0 -2
  416. package/dist/deps/html-stream-server.d.ts.map +0 -1
  417. package/dist/deps/html-stream-server.js +0 -3
  418. package/dist/deps/html-stream-server.js.map +0 -1
  419. package/dist/deps/rsc.d.ts +0 -2
  420. package/dist/deps/rsc.d.ts.map +0 -1
  421. package/dist/deps/rsc.js +0 -4
  422. package/dist/deps/rsc.js.map +0 -1
  423. package/dist/deps/ssr.d.ts +0 -2
  424. package/dist/deps/ssr.d.ts.map +0 -1
  425. package/dist/deps/ssr.js +0 -3
  426. package/dist/deps/ssr.js.map +0 -1
  427. package/dist/errors.d.ts +0 -174
  428. package/dist/errors.d.ts.map +0 -1
  429. package/dist/errors.js +0 -241
  430. package/dist/errors.js.map +0 -1
  431. package/dist/handle.d.ts +0 -78
  432. package/dist/handle.d.ts.map +0 -1
  433. package/dist/handle.js +0 -82
  434. package/dist/handle.js.map +0 -1
  435. package/dist/handles/MetaTags.d.ts +0 -14
  436. package/dist/handles/MetaTags.d.ts.map +0 -1
  437. package/dist/handles/MetaTags.js +0 -136
  438. package/dist/handles/MetaTags.js.map +0 -1
  439. package/dist/handles/index.d.ts +0 -6
  440. package/dist/handles/index.d.ts.map +0 -1
  441. package/dist/handles/index.js +0 -6
  442. package/dist/handles/index.js.map +0 -1
  443. package/dist/handles/meta.d.ts +0 -39
  444. package/dist/handles/meta.d.ts.map +0 -1
  445. package/dist/handles/meta.js +0 -202
  446. package/dist/handles/meta.js.map +0 -1
  447. package/dist/host/__tests__/errors.test.d.ts +0 -2
  448. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  449. package/dist/host/__tests__/errors.test.js +0 -76
  450. package/dist/host/__tests__/errors.test.js.map +0 -1
  451. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  452. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  453. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  454. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  455. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  456. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  457. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  458. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  459. package/dist/host/__tests__/router.test.d.ts +0 -2
  460. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  461. package/dist/host/__tests__/router.test.js +0 -241
  462. package/dist/host/__tests__/router.test.js.map +0 -1
  463. package/dist/host/__tests__/testing.test.d.ts +0 -2
  464. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  465. package/dist/host/__tests__/testing.test.js +0 -64
  466. package/dist/host/__tests__/testing.test.js.map +0 -1
  467. package/dist/host/__tests__/utils.test.d.ts +0 -2
  468. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  469. package/dist/host/__tests__/utils.test.js +0 -29
  470. package/dist/host/__tests__/utils.test.js.map +0 -1
  471. package/dist/host/cookie-handler.d.ts +0 -34
  472. package/dist/host/cookie-handler.d.ts.map +0 -1
  473. package/dist/host/cookie-handler.js +0 -124
  474. package/dist/host/cookie-handler.js.map +0 -1
  475. package/dist/host/errors.d.ts +0 -56
  476. package/dist/host/errors.d.ts.map +0 -1
  477. package/dist/host/errors.js +0 -79
  478. package/dist/host/errors.js.map +0 -1
  479. package/dist/host/index.d.ts +0 -29
  480. package/dist/host/index.d.ts.map +0 -1
  481. package/dist/host/index.js +0 -32
  482. package/dist/host/index.js.map +0 -1
  483. package/dist/host/pattern-matcher.d.ts +0 -36
  484. package/dist/host/pattern-matcher.d.ts.map +0 -1
  485. package/dist/host/pattern-matcher.js +0 -172
  486. package/dist/host/pattern-matcher.js.map +0 -1
  487. package/dist/host/router.d.ts +0 -26
  488. package/dist/host/router.d.ts.map +0 -1
  489. package/dist/host/router.js +0 -218
  490. package/dist/host/router.js.map +0 -1
  491. package/dist/host/testing.d.ts +0 -36
  492. package/dist/host/testing.d.ts.map +0 -1
  493. package/dist/host/testing.js +0 -55
  494. package/dist/host/testing.js.map +0 -1
  495. package/dist/host/types.d.ts +0 -115
  496. package/dist/host/types.d.ts.map +0 -1
  497. package/dist/host/types.js +0 -7
  498. package/dist/host/types.js.map +0 -1
  499. package/dist/host/utils.d.ts +0 -21
  500. package/dist/host/utils.d.ts.map +0 -1
  501. package/dist/host/utils.js +0 -23
  502. package/dist/host/utils.js.map +0 -1
  503. package/dist/href-client.d.ts +0 -131
  504. package/dist/href-client.d.ts.map +0 -1
  505. package/dist/href-client.js +0 -64
  506. package/dist/href-client.js.map +0 -1
  507. package/dist/href-context.d.ts +0 -29
  508. package/dist/href-context.d.ts.map +0 -1
  509. package/dist/href-context.js +0 -21
  510. package/dist/href-context.js.map +0 -1
  511. package/dist/index.d.ts +0 -73
  512. package/dist/index.d.ts.map +0 -1
  513. package/dist/index.js +0 -91
  514. package/dist/index.js.map +0 -1
  515. package/dist/index.rsc.d.ts +0 -32
  516. package/dist/index.rsc.d.ts.map +0 -1
  517. package/dist/index.rsc.js +0 -40
  518. package/dist/index.rsc.js.map +0 -1
  519. package/dist/internal-debug.d.ts +0 -2
  520. package/dist/internal-debug.d.ts.map +0 -1
  521. package/dist/internal-debug.js +0 -5
  522. package/dist/internal-debug.js.map +0 -1
  523. package/dist/loader.d.ts +0 -14
  524. package/dist/loader.d.ts.map +0 -1
  525. package/dist/loader.js +0 -20
  526. package/dist/loader.js.map +0 -1
  527. package/dist/loader.rsc.d.ts +0 -19
  528. package/dist/loader.rsc.d.ts.map +0 -1
  529. package/dist/loader.rsc.js +0 -99
  530. package/dist/loader.rsc.js.map +0 -1
  531. package/dist/network-error-thrower.d.ts +0 -17
  532. package/dist/network-error-thrower.d.ts.map +0 -1
  533. package/dist/network-error-thrower.js +0 -14
  534. package/dist/network-error-thrower.js.map +0 -1
  535. package/dist/outlet-context.d.ts +0 -13
  536. package/dist/outlet-context.d.ts.map +0 -1
  537. package/dist/outlet-context.js +0 -3
  538. package/dist/outlet-context.js.map +0 -1
  539. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  540. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  541. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  542. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  543. package/dist/prerender/param-hash.d.ts +0 -16
  544. package/dist/prerender/param-hash.d.ts.map +0 -1
  545. package/dist/prerender/param-hash.js +0 -36
  546. package/dist/prerender/param-hash.js.map +0 -1
  547. package/dist/prerender/store.d.ts +0 -38
  548. package/dist/prerender/store.d.ts.map +0 -1
  549. package/dist/prerender/store.js +0 -61
  550. package/dist/prerender/store.js.map +0 -1
  551. package/dist/prerender.d.ts +0 -66
  552. package/dist/prerender.d.ts.map +0 -1
  553. package/dist/prerender.js +0 -57
  554. package/dist/prerender.js.map +0 -1
  555. package/dist/reverse.d.ts +0 -196
  556. package/dist/reverse.d.ts.map +0 -1
  557. package/dist/reverse.js +0 -78
  558. package/dist/reverse.js.map +0 -1
  559. package/dist/root-error-boundary.d.ts +0 -33
  560. package/dist/root-error-boundary.d.ts.map +0 -1
  561. package/dist/root-error-boundary.js +0 -165
  562. package/dist/root-error-boundary.js.map +0 -1
  563. package/dist/route-content-wrapper.d.ts +0 -46
  564. package/dist/route-content-wrapper.d.ts.map +0 -1
  565. package/dist/route-content-wrapper.js +0 -77
  566. package/dist/route-content-wrapper.js.map +0 -1
  567. package/dist/route-definition.d.ts +0 -421
  568. package/dist/route-definition.d.ts.map +0 -1
  569. package/dist/route-definition.js +0 -868
  570. package/dist/route-definition.js.map +0 -1
  571. package/dist/route-map-builder.d.ts +0 -155
  572. package/dist/route-map-builder.d.ts.map +0 -1
  573. package/dist/route-map-builder.js +0 -237
  574. package/dist/route-map-builder.js.map +0 -1
  575. package/dist/route-types.d.ts +0 -165
  576. package/dist/route-types.d.ts.map +0 -1
  577. package/dist/route-types.js +0 -7
  578. package/dist/route-types.js.map +0 -1
  579. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  580. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  581. package/dist/router/__tests__/handler-context.test.js +0 -65
  582. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  583. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  584. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  585. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  586. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  587. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  588. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  589. package/dist/router/__tests__/match-context.test.js +0 -92
  590. package/dist/router/__tests__/match-context.test.js.map +0 -1
  591. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  592. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  593. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  594. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  595. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  596. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  597. package/dist/router/__tests__/match-result.test.js +0 -457
  598. package/dist/router/__tests__/match-result.test.js.map +0 -1
  599. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  600. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  601. package/dist/router/__tests__/on-error.test.js +0 -678
  602. package/dist/router/__tests__/on-error.test.js.map +0 -1
  603. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  604. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  605. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  606. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  607. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  608. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  609. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  610. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  611. package/dist/router/error-handling.d.ts +0 -77
  612. package/dist/router/error-handling.d.ts.map +0 -1
  613. package/dist/router/error-handling.js +0 -202
  614. package/dist/router/error-handling.js.map +0 -1
  615. package/dist/router/handler-context.d.ts +0 -20
  616. package/dist/router/handler-context.d.ts.map +0 -1
  617. package/dist/router/handler-context.js +0 -198
  618. package/dist/router/handler-context.js.map +0 -1
  619. package/dist/router/intercept-resolution.d.ts +0 -66
  620. package/dist/router/intercept-resolution.d.ts.map +0 -1
  621. package/dist/router/intercept-resolution.js +0 -246
  622. package/dist/router/intercept-resolution.js.map +0 -1
  623. package/dist/router/loader-resolution.d.ts +0 -64
  624. package/dist/router/loader-resolution.d.ts.map +0 -1
  625. package/dist/router/loader-resolution.js +0 -284
  626. package/dist/router/loader-resolution.js.map +0 -1
  627. package/dist/router/logging.d.ts +0 -15
  628. package/dist/router/logging.d.ts.map +0 -1
  629. package/dist/router/logging.js +0 -99
  630. package/dist/router/logging.js.map +0 -1
  631. package/dist/router/manifest.d.ts +0 -22
  632. package/dist/router/manifest.d.ts.map +0 -1
  633. package/dist/router/manifest.js +0 -181
  634. package/dist/router/manifest.js.map +0 -1
  635. package/dist/router/match-api.d.ts +0 -35
  636. package/dist/router/match-api.d.ts.map +0 -1
  637. package/dist/router/match-api.js +0 -406
  638. package/dist/router/match-api.js.map +0 -1
  639. package/dist/router/match-context.d.ts +0 -206
  640. package/dist/router/match-context.d.ts.map +0 -1
  641. package/dist/router/match-context.js +0 -17
  642. package/dist/router/match-context.js.map +0 -1
  643. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  644. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  645. package/dist/router/match-middleware/background-revalidation.js +0 -75
  646. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  647. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  648. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  649. package/dist/router/match-middleware/cache-lookup.js +0 -257
  650. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  651. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  652. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  653. package/dist/router/match-middleware/cache-store.js +0 -108
  654. package/dist/router/match-middleware/cache-store.js.map +0 -1
  655. package/dist/router/match-middleware/index.d.ts +0 -81
  656. package/dist/router/match-middleware/index.d.ts.map +0 -1
  657. package/dist/router/match-middleware/index.js +0 -80
  658. package/dist/router/match-middleware/index.js.map +0 -1
  659. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  660. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  661. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  662. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  663. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  664. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  665. package/dist/router/match-middleware/segment-resolution.js +0 -53
  666. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  667. package/dist/router/match-pipelines.d.ts +0 -147
  668. package/dist/router/match-pipelines.d.ts.map +0 -1
  669. package/dist/router/match-pipelines.js +0 -82
  670. package/dist/router/match-pipelines.js.map +0 -1
  671. package/dist/router/match-result.d.ts +0 -126
  672. package/dist/router/match-result.d.ts.map +0 -1
  673. package/dist/router/match-result.js +0 -93
  674. package/dist/router/match-result.js.map +0 -1
  675. package/dist/router/metrics.d.ts +0 -20
  676. package/dist/router/metrics.d.ts.map +0 -1
  677. package/dist/router/metrics.js +0 -47
  678. package/dist/router/metrics.js.map +0 -1
  679. package/dist/router/middleware.d.ts +0 -249
  680. package/dist/router/middleware.d.ts.map +0 -1
  681. package/dist/router/middleware.js +0 -434
  682. package/dist/router/middleware.js.map +0 -1
  683. package/dist/router/middleware.test.d.ts +0 -2
  684. package/dist/router/middleware.test.d.ts.map +0 -1
  685. package/dist/router/middleware.test.js +0 -816
  686. package/dist/router/middleware.test.js.map +0 -1
  687. package/dist/router/pattern-matching.d.ts +0 -149
  688. package/dist/router/pattern-matching.d.ts.map +0 -1
  689. package/dist/router/pattern-matching.js +0 -349
  690. package/dist/router/pattern-matching.js.map +0 -1
  691. package/dist/router/revalidation.d.ts +0 -44
  692. package/dist/router/revalidation.d.ts.map +0 -1
  693. package/dist/router/revalidation.js +0 -147
  694. package/dist/router/revalidation.js.map +0 -1
  695. package/dist/router/router-context.d.ts +0 -135
  696. package/dist/router/router-context.d.ts.map +0 -1
  697. package/dist/router/router-context.js +0 -36
  698. package/dist/router/router-context.js.map +0 -1
  699. package/dist/router/segment-resolution.d.ts +0 -127
  700. package/dist/router/segment-resolution.d.ts.map +0 -1
  701. package/dist/router/segment-resolution.js +0 -919
  702. package/dist/router/segment-resolution.js.map +0 -1
  703. package/dist/router/trie-matching.d.ts +0 -40
  704. package/dist/router/trie-matching.d.ts.map +0 -1
  705. package/dist/router/trie-matching.js +0 -127
  706. package/dist/router/trie-matching.js.map +0 -1
  707. package/dist/router/types.d.ts +0 -136
  708. package/dist/router/types.d.ts.map +0 -1
  709. package/dist/router/types.js +0 -7
  710. package/dist/router/types.js.map +0 -1
  711. package/dist/router.d.ts +0 -753
  712. package/dist/router.d.ts.map +0 -1
  713. package/dist/router.gen.d.ts +0 -6
  714. package/dist/router.gen.d.ts.map +0 -1
  715. package/dist/router.gen.js +0 -6
  716. package/dist/router.gen.js.map +0 -1
  717. package/dist/router.js +0 -1304
  718. package/dist/router.js.map +0 -1
  719. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  720. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  721. package/dist/rsc/__tests__/helpers.test.js +0 -140
  722. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  723. package/dist/rsc/handler.d.ts +0 -45
  724. package/dist/rsc/handler.d.ts.map +0 -1
  725. package/dist/rsc/handler.js +0 -1172
  726. package/dist/rsc/handler.js.map +0 -1
  727. package/dist/rsc/helpers.d.ts +0 -16
  728. package/dist/rsc/helpers.d.ts.map +0 -1
  729. package/dist/rsc/helpers.js +0 -55
  730. package/dist/rsc/helpers.js.map +0 -1
  731. package/dist/rsc/index.d.ts +0 -22
  732. package/dist/rsc/index.d.ts.map +0 -1
  733. package/dist/rsc/index.js +0 -23
  734. package/dist/rsc/index.js.map +0 -1
  735. package/dist/rsc/nonce.d.ts +0 -9
  736. package/dist/rsc/nonce.d.ts.map +0 -1
  737. package/dist/rsc/nonce.js +0 -18
  738. package/dist/rsc/nonce.js.map +0 -1
  739. package/dist/rsc/types.d.ts +0 -206
  740. package/dist/rsc/types.d.ts.map +0 -1
  741. package/dist/rsc/types.js +0 -8
  742. package/dist/rsc/types.js.map +0 -1
  743. package/dist/search-params.d.ts +0 -103
  744. package/dist/search-params.d.ts.map +0 -1
  745. package/dist/search-params.js +0 -74
  746. package/dist/search-params.js.map +0 -1
  747. package/dist/segment-system.d.ts +0 -75
  748. package/dist/segment-system.d.ts.map +0 -1
  749. package/dist/segment-system.js +0 -336
  750. package/dist/segment-system.js.map +0 -1
  751. package/dist/server/context.d.ts +0 -245
  752. package/dist/server/context.d.ts.map +0 -1
  753. package/dist/server/context.js +0 -197
  754. package/dist/server/context.js.map +0 -1
  755. package/dist/server/fetchable-loader-store.d.ts +0 -18
  756. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  757. package/dist/server/fetchable-loader-store.js +0 -18
  758. package/dist/server/fetchable-loader-store.js.map +0 -1
  759. package/dist/server/handle-store.d.ts +0 -85
  760. package/dist/server/handle-store.d.ts.map +0 -1
  761. package/dist/server/handle-store.js +0 -142
  762. package/dist/server/handle-store.js.map +0 -1
  763. package/dist/server/loader-registry.d.ts +0 -55
  764. package/dist/server/loader-registry.d.ts.map +0 -1
  765. package/dist/server/loader-registry.js +0 -132
  766. package/dist/server/loader-registry.js.map +0 -1
  767. package/dist/server/request-context.d.ts +0 -226
  768. package/dist/server/request-context.d.ts.map +0 -1
  769. package/dist/server/request-context.js +0 -290
  770. package/dist/server/request-context.js.map +0 -1
  771. package/dist/server/root-layout.d.ts +0 -4
  772. package/dist/server/root-layout.d.ts.map +0 -1
  773. package/dist/server/root-layout.js +0 -5
  774. package/dist/server/root-layout.js.map +0 -1
  775. package/dist/server.d.ts +0 -15
  776. package/dist/server.d.ts.map +0 -1
  777. package/dist/server.js +0 -20
  778. package/dist/server.js.map +0 -1
  779. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  780. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  781. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  782. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  783. package/dist/ssr/index.d.ts +0 -98
  784. package/dist/ssr/index.d.ts.map +0 -1
  785. package/dist/ssr/index.js +0 -158
  786. package/dist/ssr/index.js.map +0 -1
  787. package/dist/static-handler.d.ts +0 -50
  788. package/dist/static-handler.d.ts.map +0 -1
  789. package/dist/static-handler.gen.d.ts +0 -5
  790. package/dist/static-handler.gen.d.ts.map +0 -1
  791. package/dist/static-handler.gen.js +0 -5
  792. package/dist/static-handler.gen.js.map +0 -1
  793. package/dist/static-handler.js +0 -29
  794. package/dist/static-handler.js.map +0 -1
  795. package/dist/theme/ThemeProvider.d.ts +0 -20
  796. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  797. package/dist/theme/ThemeProvider.js +0 -240
  798. package/dist/theme/ThemeProvider.js.map +0 -1
  799. package/dist/theme/ThemeScript.d.ts +0 -48
  800. package/dist/theme/ThemeScript.d.ts.map +0 -1
  801. package/dist/theme/ThemeScript.js +0 -13
  802. package/dist/theme/ThemeScript.js.map +0 -1
  803. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  804. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  805. package/dist/theme/__tests__/theme.test.js +0 -103
  806. package/dist/theme/__tests__/theme.test.js.map +0 -1
  807. package/dist/theme/constants.d.ts +0 -29
  808. package/dist/theme/constants.d.ts.map +0 -1
  809. package/dist/theme/constants.js +0 -48
  810. package/dist/theme/constants.js.map +0 -1
  811. package/dist/theme/index.d.ts +0 -31
  812. package/dist/theme/index.d.ts.map +0 -1
  813. package/dist/theme/index.js +0 -36
  814. package/dist/theme/index.js.map +0 -1
  815. package/dist/theme/theme-context.d.ts +0 -40
  816. package/dist/theme/theme-context.d.ts.map +0 -1
  817. package/dist/theme/theme-context.js +0 -60
  818. package/dist/theme/theme-context.js.map +0 -1
  819. package/dist/theme/theme-script.d.ts +0 -27
  820. package/dist/theme/theme-script.d.ts.map +0 -1
  821. package/dist/theme/theme-script.js +0 -147
  822. package/dist/theme/theme-script.js.map +0 -1
  823. package/dist/theme/types.d.ts +0 -163
  824. package/dist/theme/types.d.ts.map +0 -1
  825. package/dist/theme/types.js +0 -11
  826. package/dist/theme/types.js.map +0 -1
  827. package/dist/theme/use-theme.d.ts +0 -12
  828. package/dist/theme/use-theme.d.ts.map +0 -1
  829. package/dist/theme/use-theme.js +0 -40
  830. package/dist/theme/use-theme.js.map +0 -1
  831. package/dist/types.d.ts +0 -1479
  832. package/dist/types.d.ts.map +0 -1
  833. package/dist/types.js +0 -10
  834. package/dist/types.js.map +0 -1
  835. package/dist/urls.d.ts +0 -441
  836. package/dist/urls.d.ts.map +0 -1
  837. package/dist/urls.gen.d.ts +0 -8
  838. package/dist/urls.gen.d.ts.map +0 -1
  839. package/dist/urls.gen.js +0 -8
  840. package/dist/urls.gen.js.map +0 -1
  841. package/dist/urls.js +0 -443
  842. package/dist/urls.js.map +0 -1
  843. package/dist/use-loader.d.ts +0 -127
  844. package/dist/use-loader.d.ts.map +0 -1
  845. package/dist/use-loader.js +0 -237
  846. package/dist/use-loader.js.map +0 -1
  847. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  848. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  849. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  850. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  851. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  852. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  853. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  854. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  855. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  856. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  857. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  858. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  859. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  860. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  861. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  862. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  863. package/dist/vite/ast-handler-extract.d.ts +0 -49
  864. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  865. package/dist/vite/ast-handler-extract.js +0 -249
  866. package/dist/vite/ast-handler-extract.js.map +0 -1
  867. package/dist/vite/expose-action-id.d.ts +0 -19
  868. package/dist/vite/expose-action-id.d.ts.map +0 -1
  869. package/dist/vite/expose-action-id.js +0 -250
  870. package/dist/vite/expose-action-id.js.map +0 -1
  871. package/dist/vite/expose-id-utils.d.ts +0 -69
  872. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  873. package/dist/vite/expose-id-utils.js +0 -289
  874. package/dist/vite/expose-id-utils.js.map +0 -1
  875. package/dist/vite/expose-internal-ids.d.ts +0 -22
  876. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  877. package/dist/vite/expose-internal-ids.js +0 -886
  878. package/dist/vite/expose-internal-ids.js.map +0 -1
  879. package/dist/vite/index.d.ts +0 -149
  880. package/dist/vite/index.d.ts.map +0 -1
  881. package/dist/vite/index.js.map +0 -1
  882. package/dist/vite/index.named-routes.gen.ts +0 -103
  883. package/dist/vite/package-resolution.d.ts +0 -43
  884. package/dist/vite/package-resolution.d.ts.map +0 -1
  885. package/dist/vite/package-resolution.js +0 -112
  886. package/dist/vite/package-resolution.js.map +0 -1
  887. package/dist/vite/virtual-entries.d.ts +0 -25
  888. package/dist/vite/virtual-entries.d.ts.map +0 -1
  889. package/dist/vite/virtual-entries.js +0 -110
  890. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,103 +0,0 @@
1
- import { describe, it, expect } from "vitest";
2
- import { resolveThemeConfig, THEME_DEFAULTS, THEME_COOKIE } from "../constants.js";
3
- import { generateThemeScript } from "../theme-script.js";
4
- describe("Theme Configuration", () => {
5
- describe("resolveThemeConfig", () => {
6
- it("should apply defaults when no config provided", () => {
7
- const config = {};
8
- const resolved = resolveThemeConfig(config);
9
- expect(resolved.defaultTheme).toBe(THEME_DEFAULTS.defaultTheme);
10
- expect(resolved.themes).toEqual(THEME_DEFAULTS.themes);
11
- expect(resolved.attribute).toBe(THEME_DEFAULTS.attribute);
12
- expect(resolved.storageKey).toBe(THEME_DEFAULTS.storageKey);
13
- expect(resolved.enableSystem).toBe(THEME_DEFAULTS.enableSystem);
14
- expect(resolved.enableColorScheme).toBe(THEME_DEFAULTS.enableColorScheme);
15
- });
16
- it("should preserve custom config values", () => {
17
- const config = {
18
- defaultTheme: "dark",
19
- themes: ["light", "dark", "sepia"],
20
- attribute: "data-theme",
21
- storageKey: "app-theme",
22
- enableSystem: false,
23
- enableColorScheme: false,
24
- };
25
- const resolved = resolveThemeConfig(config);
26
- expect(resolved.defaultTheme).toBe("dark");
27
- expect(resolved.themes).toEqual(["light", "dark", "sepia"]);
28
- expect(resolved.attribute).toBe("data-theme");
29
- expect(resolved.storageKey).toBe("app-theme");
30
- expect(resolved.enableSystem).toBe(false);
31
- expect(resolved.enableColorScheme).toBe(false);
32
- });
33
- it("should generate value mapping for themes", () => {
34
- const config = {
35
- themes: ["light", "dark"],
36
- };
37
- const resolved = resolveThemeConfig(config);
38
- expect(resolved.value).toEqual({
39
- light: "light",
40
- dark: "dark",
41
- });
42
- });
43
- it("should use custom value mapping when provided", () => {
44
- const config = {
45
- themes: ["light", "dark"],
46
- value: {
47
- light: "light-mode",
48
- dark: "dark-mode",
49
- },
50
- };
51
- const resolved = resolveThemeConfig(config);
52
- expect(resolved.value).toEqual({
53
- light: "light-mode",
54
- dark: "dark-mode",
55
- });
56
- });
57
- });
58
- describe("THEME_COOKIE", () => {
59
- it("should have correct defaults", () => {
60
- expect(THEME_COOKIE.maxAge).toBe(60 * 60 * 24 * 365);
61
- expect(THEME_COOKIE.path).toBe("/");
62
- expect(THEME_COOKIE.sameSite).toBe("lax");
63
- });
64
- });
65
- });
66
- describe("Theme Script", () => {
67
- describe("generateThemeScript", () => {
68
- it("should generate a minified script", () => {
69
- const config = {
70
- defaultTheme: "system",
71
- themes: ["light", "dark"],
72
- attribute: "class",
73
- storageKey: "theme",
74
- enableSystem: true,
75
- enableColorScheme: true,
76
- value: { light: "light", dark: "dark" },
77
- };
78
- const script = generateThemeScript(config);
79
- // Should be a string
80
- expect(typeof script).toBe("string");
81
- // Should not have multi-line formatting (minified)
82
- expect(script.includes("\n ")).toBe(false);
83
- // Should contain key configuration values
84
- expect(script.includes('"theme"')).toBe(true);
85
- expect(script.includes('"system"')).toBe(true);
86
- expect(script.includes('"class"')).toBe(true);
87
- });
88
- it("should handle data-* attributes", () => {
89
- const config = {
90
- defaultTheme: "light",
91
- themes: ["light", "dark"],
92
- attribute: "data-theme",
93
- storageKey: "theme",
94
- enableSystem: true,
95
- enableColorScheme: true,
96
- value: { light: "light", dark: "dark" },
97
- };
98
- const script = generateThemeScript(config);
99
- expect(script.includes('"data-theme"')).toBe(true);
100
- });
101
- });
102
- });
103
- //# sourceMappingURL=theme.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme.test.js","sourceRoot":"","sources":["../../../src/theme/__tests__/theme.test.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Default values for theme configuration
3
- */
4
- import type { ResolvedThemeConfig, ThemeConfig } from "./types.js";
5
- /**
6
- * Default theme configuration values
7
- */
8
- export declare const THEME_DEFAULTS: {
9
- readonly defaultTheme: "system";
10
- readonly themes: readonly ["light", "dark"];
11
- readonly attribute: "class";
12
- readonly storageKey: "theme";
13
- readonly enableSystem: true;
14
- readonly enableColorScheme: true;
15
- };
16
- /**
17
- * Cookie configuration for theme persistence
18
- */
19
- export declare const THEME_COOKIE: {
20
- readonly maxAge: number;
21
- readonly path: string;
22
- readonly sameSite: "lax";
23
- };
24
- /**
25
- * Resolve theme config by applying defaults.
26
- * Accepts `true` to enable with all defaults, or a config object.
27
- */
28
- export declare function resolveThemeConfig(config: ThemeConfig | true): ResolvedThemeConfig;
29
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/theme/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;CAK1B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,mBAAmB,CAuBlF"}
@@ -1,48 +0,0 @@
1
- /**
2
- * Default values for theme configuration
3
- */
4
- /**
5
- * Default theme configuration values
6
- */
7
- export const THEME_DEFAULTS = {
8
- defaultTheme: "system",
9
- themes: ["light", "dark"],
10
- attribute: "class",
11
- storageKey: "theme",
12
- enableSystem: true,
13
- enableColorScheme: true,
14
- };
15
- /**
16
- * Cookie configuration for theme persistence
17
- */
18
- export const THEME_COOKIE = {
19
- maxAge: 60 * 60 * 24 * 365, // 1 year
20
- path: "/",
21
- sameSite: "lax",
22
- };
23
- /**
24
- * Resolve theme config by applying defaults.
25
- * Accepts `true` to enable with all defaults, or a config object.
26
- */
27
- export function resolveThemeConfig(config) {
28
- // Handle `theme: true` shorthand
29
- if (config === true) {
30
- config = {};
31
- }
32
- const themes = config.themes ?? [...THEME_DEFAULTS.themes];
33
- // Build value mapping - default to identity mapping
34
- const value = {};
35
- for (const theme of themes) {
36
- value[theme] = config.value?.[theme] ?? theme;
37
- }
38
- return {
39
- defaultTheme: config.defaultTheme ?? THEME_DEFAULTS.defaultTheme,
40
- themes,
41
- attribute: config.attribute ?? THEME_DEFAULTS.attribute,
42
- storageKey: config.storageKey ?? THEME_DEFAULTS.storageKey,
43
- enableSystem: config.enableSystem ?? THEME_DEFAULTS.enableSystem,
44
- enableColorScheme: config.enableColorScheme ?? THEME_DEFAULTS.enableColorScheme,
45
- value,
46
- };
47
- }
48
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/theme/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY,EAAE,QAAQ;IACtB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO;IAClB,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE,IAAI;IAClB,iBAAiB,EAAE,IAAI;CACf,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAIrB;IACF,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,SAAS;IACrC,IAAI,EAAE,GAAG;IACT,QAAQ,EAAE,KAAK;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAA0B;IAC3D,iCAAiC;IACjC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAE3D,oDAAoD;IACpD,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;IAChD,CAAC;IAED,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,cAAc,CAAC,YAAY;QAChE,MAAM;QACN,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS;QACvD,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,cAAc,CAAC,UAAU;QAC1D,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,cAAc,CAAC,YAAY;QAChE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,cAAc,CAAC,iBAAiB;QAC/E,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -1,31 +0,0 @@
1
- /**
2
- * Theme module exports for @rangojs/router/theme
3
- *
4
- * This module provides theme management for rsc-router:
5
- * - useTheme: Hook for accessing theme state in client components
6
- * - ThemeProvider: Component for manual theme provider setup (typically not needed)
7
- * - Types for theme configuration
8
- *
9
- * @example
10
- * ```tsx
11
- * // In a client component
12
- * import { useTheme } from "@rangojs/router/theme";
13
- *
14
- * function ThemeToggle() {
15
- * const { theme, setTheme, themes } = useTheme();
16
- * return (
17
- * <select value={theme} onChange={e => setTheme(e.target.value)}>
18
- * {themes.map(t => <option key={t}>{t}</option>)}
19
- * </select>
20
- * );
21
- * }
22
- * ```
23
- */
24
- export { useTheme } from "./use-theme.js";
25
- export { ThemeProvider } from "./ThemeProvider.js";
26
- export { ThemeScript, type ThemeScriptProps } from "./ThemeScript.js";
27
- export type { Theme, ResolvedTheme, ThemeAttribute, ThemeConfig, ResolvedThemeConfig, UseThemeReturn, ThemeProviderProps, ThemeContextValue, } from "./types.js";
28
- export { THEME_DEFAULTS, THEME_COOKIE, resolveThemeConfig } from "./constants.js";
29
- export { generateThemeScript, getNonceAttribute } from "./theme-script.js";
30
- export { ThemeContext, useThemeContext, initThemeConfigSync, getSSRThemeConfig, } from "./theme-context.js";
31
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,YAAY,EACV,KAAK,EACL,aAAa,EACb,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGlF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EACL,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC"}
@@ -1,36 +0,0 @@
1
- /**
2
- * Theme module exports for @rangojs/router/theme
3
- *
4
- * This module provides theme management for rsc-router:
5
- * - useTheme: Hook for accessing theme state in client components
6
- * - ThemeProvider: Component for manual theme provider setup (typically not needed)
7
- * - Types for theme configuration
8
- *
9
- * @example
10
- * ```tsx
11
- * // In a client component
12
- * import { useTheme } from "@rangojs/router/theme";
13
- *
14
- * function ThemeToggle() {
15
- * const { theme, setTheme, themes } = useTheme();
16
- * return (
17
- * <select value={theme} onChange={e => setTheme(e.target.value)}>
18
- * {themes.map(t => <option key={t}>{t}</option>)}
19
- * </select>
20
- * );
21
- * }
22
- * ```
23
- */
24
- // Main hook for accessing theme
25
- export { useTheme } from "./use-theme.js";
26
- // Provider (typically auto-included via NavigationProvider when theme is enabled)
27
- export { ThemeProvider } from "./ThemeProvider.js";
28
- // Script component for FOUC prevention (use in document head)
29
- export { ThemeScript } from "./ThemeScript.js";
30
- // Constants (for advanced use cases)
31
- export { THEME_DEFAULTS, THEME_COOKIE, resolveThemeConfig } from "./constants.js";
32
- // Script generation (for advanced SSR use cases)
33
- export { generateThemeScript, getNonceAttribute } from "./theme-script.js";
34
- // Context (for advanced use cases)
35
- export { ThemeContext, useThemeContext, initThemeConfigSync, getSSRThemeConfig, } from "./theme-context.js";
36
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,gCAAgC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,kFAAkF;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,8DAA8D;AAC9D,OAAO,EAAE,WAAW,EAAyB,MAAM,kBAAkB,CAAC;AActE,qCAAqC;AACrC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAElF,iDAAiD;AACjD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3E,mCAAmC;AACnC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC"}
@@ -1,40 +0,0 @@
1
- /**
2
- * Theme context for sharing theme state and configuration.
3
- *
4
- * Used by:
5
- * - ThemeProvider to provide theme state
6
- * - useTheme hook to access theme state
7
- * - MetaTags to check if theme is enabled and render script
8
- */
9
- import { type Context } from "react";
10
- import type { ResolvedThemeConfig, ThemeContextValue } from "./types.js";
11
- /**
12
- * React context for theme state
13
- * null when theme is not enabled in router config
14
- */
15
- export declare const ThemeContext: Context<ThemeContextValue | null>;
16
- /**
17
- * Initialize theme config synchronously for SSR.
18
- * Called before rendering to populate state for MetaTags.
19
- *
20
- * @param config - Theme config from router, or null if theme is disabled
21
- */
22
- export declare function initThemeConfigSync(config: ResolvedThemeConfig | null): void;
23
- /**
24
- * Get theme config for SSR/hydration.
25
- * Used by MetaTags to render the theme script.
26
- *
27
- * @returns Theme config if available, null otherwise
28
- */
29
- export declare function getSSRThemeConfig(): ResolvedThemeConfig | null;
30
- /**
31
- * Get theme context (internal use)
32
- * Returns null if theme is not enabled
33
- */
34
- export declare function useThemeContext(): ThemeContextValue | null;
35
- /**
36
- * Get theme context, throwing if not available
37
- * Use this in useTheme hook
38
- */
39
- export declare function requireThemeContext(): ThemeContextValue;
40
- //# sourceMappingURL=theme-context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-context.d.ts","sourceRoot":"","sources":["../../src/theme/theme-context.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEzE;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAiD,CAAC;AAS7G;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,mBAAmB,GAAG,IAAI,CAE9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,iBAAiB,GAAG,IAAI,CAE1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,iBAAiB,CAUvD"}
@@ -1,60 +0,0 @@
1
- "use client";
2
- /**
3
- * Theme context for sharing theme state and configuration.
4
- *
5
- * Used by:
6
- * - ThemeProvider to provide theme state
7
- * - useTheme hook to access theme state
8
- * - MetaTags to check if theme is enabled and render script
9
- */
10
- import { createContext, useContext } from "react";
11
- /**
12
- * React context for theme state
13
- * null when theme is not enabled in router config
14
- */
15
- export const ThemeContext = createContext(null);
16
- /**
17
- * SSR module-level state for theme config.
18
- * Populated by initThemeConfigSync before React renders.
19
- * Used by MetaTags during SSR to render the theme script.
20
- */
21
- let ssrThemeConfig = null;
22
- /**
23
- * Initialize theme config synchronously for SSR.
24
- * Called before rendering to populate state for MetaTags.
25
- *
26
- * @param config - Theme config from router, or null if theme is disabled
27
- */
28
- export function initThemeConfigSync(config) {
29
- ssrThemeConfig = config;
30
- }
31
- /**
32
- * Get theme config for SSR/hydration.
33
- * Used by MetaTags to render the theme script.
34
- *
35
- * @returns Theme config if available, null otherwise
36
- */
37
- export function getSSRThemeConfig() {
38
- return ssrThemeConfig;
39
- }
40
- /**
41
- * Get theme context (internal use)
42
- * Returns null if theme is not enabled
43
- */
44
- export function useThemeContext() {
45
- return useContext(ThemeContext);
46
- }
47
- /**
48
- * Get theme context, throwing if not available
49
- * Use this in useTheme hook
50
- */
51
- export function requireThemeContext() {
52
- const ctx = useContext(ThemeContext);
53
- if (!ctx) {
54
- throw new Error("useTheme must be used within a ThemeProvider. " +
55
- "Make sure theme is enabled in your router config: " +
56
- "createRouter({ theme: { ... } })");
57
- }
58
- return ctx;
59
- }
60
- //# sourceMappingURL=theme-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-context.js","sourceRoot":"","sources":["../../src/theme/theme-context.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,UAAU,EAAgB,MAAM,OAAO,CAAC;AAGhE;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAsC,aAAa,CAA2B,IAAI,CAAC,CAAC;AAE7G;;;;GAIG;AACH,IAAI,cAAc,GAA+B,IAAI,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAkC;IACpE,cAAc,GAAG,MAAM,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,gDAAgD;YAC9C,oDAAoD;YACpD,kCAAkC,CACrC,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,27 +0,0 @@
1
- /**
2
- * Generates an inline script for FOUC prevention.
3
- *
4
- * This script runs synchronously before page paint to:
5
- * 1. Read theme from cookie or localStorage
6
- * 2. Detect system preference if theme is "system"
7
- * 3. Apply theme to HTML element via class or data attribute
8
- * 4. Optionally set color-scheme CSS property
9
- *
10
- * The script is minified and inlined in <head> before any other content.
11
- */
12
- import type { ResolvedThemeConfig } from "./types.js";
13
- /**
14
- * Generate the inline script for theme initialization
15
- *
16
- * The script is designed to:
17
- * - Run synchronously before paint (blocking)
18
- * - Be as small as possible to minimize blocking time
19
- * - Work without any external dependencies
20
- * - Handle all edge cases (no localStorage, no cookie, etc.)
21
- */
22
- export declare function generateThemeScript(config: ResolvedThemeConfig): string;
23
- /**
24
- * Generate nonce attribute string if nonce is provided
25
- */
26
- export declare function getNonceAttribute(nonce?: string): string;
27
- //# sourceMappingURL=theme-script.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-script.d.ts","sourceRoot":"","sources":["../../src/theme/theme-script.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAiGvE;AA0BD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAExD"}
@@ -1,147 +0,0 @@
1
- /**
2
- * Generates an inline script for FOUC prevention.
3
- *
4
- * This script runs synchronously before page paint to:
5
- * 1. Read theme from cookie or localStorage
6
- * 2. Detect system preference if theme is "system"
7
- * 3. Apply theme to HTML element via class or data attribute
8
- * 4. Optionally set color-scheme CSS property
9
- *
10
- * The script is minified and inlined in <head> before any other content.
11
- */
12
- /**
13
- * Generate the inline script for theme initialization
14
- *
15
- * The script is designed to:
16
- * - Run synchronously before paint (blocking)
17
- * - Be as small as possible to minimize blocking time
18
- * - Work without any external dependencies
19
- * - Handle all edge cases (no localStorage, no cookie, etc.)
20
- */
21
- export function generateThemeScript(config) {
22
- // Build the script as a string, then minify
23
- const script = `
24
- (function() {
25
- var storageKey = ${JSON.stringify(config.storageKey)};
26
- var defaultTheme = ${JSON.stringify(config.defaultTheme)};
27
- var attribute = ${JSON.stringify(config.attribute)};
28
- var enableSystem = ${config.enableSystem};
29
- var enableColorScheme = ${config.enableColorScheme};
30
- var valueMap = ${JSON.stringify(config.value)};
31
- var themes = ${JSON.stringify(config.themes)};
32
-
33
- // Read theme from cookie or localStorage
34
- function getStoredTheme() {
35
- // Try cookie first (for SSR consistency)
36
- var cookies = document.cookie.split(';');
37
- for (var i = 0; i < cookies.length; i++) {
38
- var cookie = cookies[i].trim();
39
- if (cookie.indexOf(storageKey + '=') === 0) {
40
- return decodeURIComponent(cookie.substring(storageKey.length + 1));
41
- }
42
- }
43
- // Fall back to localStorage
44
- try {
45
- return localStorage.getItem(storageKey);
46
- } catch (e) {
47
- return null;
48
- }
49
- }
50
-
51
- // Get system preference
52
- function getSystemTheme() {
53
- if (typeof window !== 'undefined' && window.matchMedia) {
54
- return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
55
- }
56
- return 'light';
57
- }
58
-
59
- // Resolve "system" to actual theme
60
- function resolveTheme(theme) {
61
- if (theme === 'system' && enableSystem) {
62
- return getSystemTheme();
63
- }
64
- return theme;
65
- }
66
-
67
- // Apply theme to HTML element
68
- function applyTheme(theme) {
69
- var resolved = resolveTheme(theme);
70
- var value = valueMap[resolved] || resolved;
71
- var el = document.documentElement;
72
-
73
- // Apply attribute
74
- if (attribute === 'class') {
75
- // Remove all theme classes, then add current
76
- for (var i = 0; i < themes.length; i++) {
77
- var v = valueMap[themes[i]] || themes[i];
78
- el.classList.remove(v);
79
- }
80
- el.classList.add(value);
81
- } else {
82
- el.setAttribute(attribute, value);
83
- }
84
-
85
- // Set color-scheme for native dark mode support
86
- if (enableColorScheme) {
87
- el.style.colorScheme = resolved;
88
- }
89
- }
90
-
91
- // Get stored theme or use default
92
- var stored = getStoredTheme();
93
- var theme = stored && (stored === 'system' || themes.indexOf(stored) !== -1)
94
- ? stored
95
- : defaultTheme;
96
-
97
- // Apply immediately
98
- applyTheme(theme);
99
-
100
- // Listen for system preference changes (for "system" theme)
101
- if (enableSystem && typeof window !== 'undefined' && window.matchMedia) {
102
- try {
103
- window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function() {
104
- var current = getStoredTheme() || defaultTheme;
105
- if (current === 'system') {
106
- applyTheme('system');
107
- }
108
- });
109
- } catch (e) {
110
- // Older browsers may not support addEventListener on MediaQueryList
111
- }
112
- }
113
- })();
114
- `;
115
- // Minify by removing comments, extra whitespace, and newlines
116
- return minifyScript(script);
117
- }
118
- /**
119
- * Basic script minification
120
- * Removes comments, extra whitespace, and unnecessary newlines
121
- */
122
- function minifyScript(script) {
123
- return script
124
- // Remove single-line comments
125
- .replace(/\/\/.*$/gm, "")
126
- // Remove multi-line comments
127
- .replace(/\/\*[\s\S]*?\*\//g, "")
128
- // Remove leading/trailing whitespace from lines
129
- .split("\n")
130
- .map((line) => line.trim())
131
- .filter((line) => line.length > 0)
132
- .join("")
133
- // Collapse multiple spaces to single space
134
- .replace(/\s+/g, " ")
135
- // Remove spaces around operators and punctuation
136
- .replace(/\s*([{};,=!<>()[\]+\-*/&|?:])\s*/g, "$1")
137
- // Add back necessary spaces (e.g., "var x")
138
- .replace(/(var|function|return|if|for|try|catch|typeof|else)\(/g, "$1 (")
139
- .replace(/\)([a-zA-Z])/g, ") $1");
140
- }
141
- /**
142
- * Generate nonce attribute string if nonce is provided
143
- */
144
- export function getNonceAttribute(nonce) {
145
- return nonce ? ` nonce="${nonce}"` : "";
146
- }
147
- //# sourceMappingURL=theme-script.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-script.js","sourceRoot":"","sources":["../../src/theme/theme-script.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAA2B;IAC7D,4CAA4C;IAC5C,MAAM,MAAM,GAAG;;qBAEI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC;uBAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC;oBACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;uBAC7B,MAAM,CAAC,YAAY;4BACd,MAAM,CAAC,iBAAiB;mBACjC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmF7C,CAAC;IAEA,8DAA8D;IAC9D,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,MAAM;QACX,8BAA8B;SAC7B,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;QACzB,6BAA6B;SAC5B,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;QACjC,gDAAgD;SAC/C,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACjC,IAAI,CAAC,EAAE,CAAC;QACT,2CAA2C;SAC1C,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;QACrB,iDAAiD;SAChD,OAAO,CAAC,mCAAmC,EAAE,IAAI,CAAC;QACnD,4CAA4C;SAC3C,OAAO,CAAC,uDAAuD,EAAE,MAAM,CAAC;SACxE,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1C,CAAC"}