@rangojs/router 0.0.0-experimental.760a71d9 → 0.0.0-experimental.78

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 (932) hide show
  1. package/README.md +76 -18
  2. package/dist/bin/rango.js +130 -47
  3. package/dist/vite/index.js +716 -237
  4. package/package.json +3 -3
  5. package/skills/cache-guide/SKILL.md +32 -0
  6. package/skills/caching/SKILL.md +8 -0
  7. package/skills/handler-use/SKILL.md +362 -0
  8. package/skills/intercept/SKILL.md +20 -0
  9. package/skills/layout/SKILL.md +22 -0
  10. package/skills/links/SKILL.md +3 -1
  11. package/skills/loader/SKILL.md +53 -43
  12. package/skills/middleware/SKILL.md +34 -3
  13. package/skills/migrate-nextjs/SKILL.md +560 -0
  14. package/skills/migrate-react-router/SKILL.md +764 -0
  15. package/skills/parallel/SKILL.md +126 -0
  16. package/skills/prerender/SKILL.md +110 -68
  17. package/skills/rango/SKILL.md +24 -22
  18. package/skills/route/SKILL.md +55 -0
  19. package/skills/router-setup/SKILL.md +87 -2
  20. package/skills/typesafety/SKILL.md +10 -0
  21. package/src/__internal.ts +1 -1
  22. package/src/browser/app-version.ts +14 -0
  23. package/src/browser/navigation-bridge.ts +37 -5
  24. package/src/browser/navigation-client.ts +98 -46
  25. package/src/browser/navigation-store.ts +43 -8
  26. package/src/browser/partial-update.ts +41 -7
  27. package/src/browser/prefetch/cache.ts +16 -6
  28. package/src/browser/prefetch/fetch.ts +68 -6
  29. package/src/browser/prefetch/queue.ts +61 -29
  30. package/src/browser/prefetch/resource-ready.ts +77 -0
  31. package/src/browser/react/Link.tsx +67 -8
  32. package/src/browser/react/NavigationProvider.tsx +13 -4
  33. package/src/browser/react/context.ts +7 -2
  34. package/src/browser/react/use-handle.ts +9 -58
  35. package/src/browser/react/use-router.ts +21 -8
  36. package/src/browser/rsc-router.tsx +26 -3
  37. package/src/browser/scroll-restoration.ts +10 -8
  38. package/src/browser/segment-reconciler.ts +36 -14
  39. package/src/browser/server-action-bridge.ts +8 -6
  40. package/src/browser/types.ts +27 -5
  41. package/src/build/generate-manifest.ts +6 -6
  42. package/src/build/generate-route-types.ts +3 -0
  43. package/src/build/route-trie.ts +50 -24
  44. package/src/build/route-types/include-resolution.ts +8 -1
  45. package/src/build/route-types/router-processing.ts +211 -72
  46. package/src/build/route-types/scan-filter.ts +8 -1
  47. package/src/cache/cache-scope.ts +46 -5
  48. package/src/cache/taint.ts +55 -0
  49. package/src/client.tsx +84 -230
  50. package/src/context-var.ts +72 -2
  51. package/src/handle.ts +40 -0
  52. package/src/index.rsc.ts +3 -1
  53. package/src/index.ts +46 -6
  54. package/src/prerender/store.ts +5 -4
  55. package/src/prerender.ts +138 -77
  56. package/src/reverse.ts +25 -1
  57. package/src/route-definition/dsl-helpers.ts +194 -32
  58. package/src/route-definition/helpers-types.ts +67 -19
  59. package/src/route-definition/index.ts +3 -0
  60. package/src/route-definition/redirect.ts +9 -1
  61. package/src/route-definition/resolve-handler-use.ts +149 -0
  62. package/src/route-types.ts +11 -0
  63. package/src/router/content-negotiation.ts +100 -1
  64. package/src/router/handler-context.ts +82 -23
  65. package/src/router/intercept-resolution.ts +9 -4
  66. package/src/router/loader-resolution.ts +156 -21
  67. package/src/router/match-api.ts +124 -189
  68. package/src/router/match-middleware/background-revalidation.ts +12 -1
  69. package/src/router/match-middleware/cache-lookup.ts +40 -13
  70. package/src/router/match-middleware/cache-store.ts +21 -4
  71. package/src/router/match-middleware/segment-resolution.ts +53 -0
  72. package/src/router/match-result.ts +82 -4
  73. package/src/router/middleware-types.ts +6 -8
  74. package/src/router/middleware.ts +2 -5
  75. package/src/router/navigation-snapshot.ts +182 -0
  76. package/src/router/prerender-match.ts +110 -10
  77. package/src/router/preview-match.ts +30 -102
  78. package/src/router/request-classification.ts +310 -0
  79. package/src/router/route-snapshot.ts +245 -0
  80. package/src/router/router-context.ts +1 -0
  81. package/src/router/router-interfaces.ts +36 -4
  82. package/src/router/router-options.ts +37 -11
  83. package/src/router/segment-resolution/fresh.ts +80 -9
  84. package/src/router/segment-resolution/helpers.ts +29 -24
  85. package/src/router/segment-resolution/revalidation.ts +91 -8
  86. package/src/router/types.ts +1 -0
  87. package/src/router.ts +54 -5
  88. package/src/rsc/handler.ts +472 -372
  89. package/src/rsc/loader-fetch.ts +23 -3
  90. package/src/rsc/manifest-init.ts +5 -1
  91. package/src/rsc/progressive-enhancement.ts +14 -2
  92. package/src/rsc/rsc-rendering.ts +10 -1
  93. package/src/rsc/server-action.ts +8 -0
  94. package/src/rsc/ssr-setup.ts +2 -2
  95. package/src/rsc/types.ts +9 -1
  96. package/src/segment-content-promise.ts +67 -0
  97. package/src/segment-loader-promise.ts +122 -0
  98. package/src/segment-system.tsx +11 -61
  99. package/src/server/context.ts +50 -1
  100. package/src/server/handle-store.ts +19 -0
  101. package/src/server/loader-registry.ts +9 -8
  102. package/src/server/request-context.ts +175 -15
  103. package/src/ssr/index.tsx +3 -0
  104. package/src/static-handler.ts +18 -6
  105. package/src/types/cache-types.ts +4 -4
  106. package/src/types/handler-context.ts +37 -19
  107. package/src/types/loader-types.ts +36 -9
  108. package/src/types/route-entry.ts +1 -1
  109. package/src/types/segments.ts +1 -1
  110. package/src/urls/path-helper-types.ts +39 -6
  111. package/src/urls/path-helper.ts +47 -12
  112. package/src/urls/pattern-types.ts +12 -0
  113. package/src/urls/response-types.ts +16 -6
  114. package/src/use-loader.tsx +77 -5
  115. package/src/vite/discovery/bundle-postprocess.ts +30 -33
  116. package/src/vite/discovery/discover-routers.ts +5 -1
  117. package/src/vite/discovery/prerender-collection.ts +128 -74
  118. package/src/vite/discovery/state.ts +13 -4
  119. package/src/vite/index.ts +4 -0
  120. package/src/vite/plugin-types.ts +60 -5
  121. package/src/vite/plugins/expose-id-utils.ts +12 -0
  122. package/src/vite/plugins/expose-ids/handler-transform.ts +30 -0
  123. package/src/vite/plugins/expose-internal-ids.ts +257 -40
  124. package/src/vite/plugins/performance-tracks.ts +88 -0
  125. package/src/vite/plugins/refresh-cmd.ts +88 -26
  126. package/src/vite/rango.ts +19 -2
  127. package/src/vite/router-discovery.ts +178 -37
  128. package/src/vite/utils/prerender-utils.ts +37 -5
  129. package/src/vite/utils/shared-utils.ts +3 -2
  130. package/dist/__internal.d.ts +0 -83
  131. package/dist/__internal.d.ts.map +0 -1
  132. package/dist/__internal.js +0 -19
  133. package/dist/__internal.js.map +0 -1
  134. package/dist/__mocks__/version.d.ts +0 -7
  135. package/dist/__mocks__/version.d.ts.map +0 -1
  136. package/dist/__mocks__/version.js +0 -7
  137. package/dist/__mocks__/version.js.map +0 -1
  138. package/dist/__tests__/client-href.test.d.ts +0 -2
  139. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  140. package/dist/__tests__/client-href.test.js +0 -74
  141. package/dist/__tests__/client-href.test.js.map +0 -1
  142. package/dist/__tests__/component-utils.test.d.ts +0 -2
  143. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  144. package/dist/__tests__/component-utils.test.js +0 -51
  145. package/dist/__tests__/component-utils.test.js.map +0 -1
  146. package/dist/__tests__/event-controller.test.d.ts +0 -2
  147. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  148. package/dist/__tests__/event-controller.test.js +0 -538
  149. package/dist/__tests__/event-controller.test.js.map +0 -1
  150. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  151. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  152. package/dist/__tests__/helpers/route-tree.js +0 -374
  153. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  154. package/dist/__tests__/match-result.test.d.ts +0 -2
  155. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  156. package/dist/__tests__/match-result.test.js +0 -154
  157. package/dist/__tests__/match-result.test.js.map +0 -1
  158. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  159. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  160. package/dist/__tests__/navigation-store.test.js +0 -440
  161. package/dist/__tests__/navigation-store.test.js.map +0 -1
  162. package/dist/__tests__/partial-update.test.d.ts +0 -2
  163. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  164. package/dist/__tests__/partial-update.test.js +0 -1009
  165. package/dist/__tests__/partial-update.test.js.map +0 -1
  166. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  167. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  168. package/dist/__tests__/reverse-types.test.js +0 -656
  169. package/dist/__tests__/reverse-types.test.js.map +0 -1
  170. package/dist/__tests__/route-definition.test.d.ts +0 -2
  171. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  172. package/dist/__tests__/route-definition.test.js +0 -55
  173. package/dist/__tests__/route-definition.test.js.map +0 -1
  174. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  175. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  176. package/dist/__tests__/router-helpers.test.js +0 -377
  177. package/dist/__tests__/router-helpers.test.js.map +0 -1
  178. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  179. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  180. package/dist/__tests__/router-integration-2.test.js +0 -426
  181. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  182. package/dist/__tests__/router-integration.test.d.ts +0 -2
  183. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  184. package/dist/__tests__/router-integration.test.js +0 -1051
  185. package/dist/__tests__/router-integration.test.js.map +0 -1
  186. package/dist/__tests__/search-params.test.d.ts +0 -5
  187. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  188. package/dist/__tests__/search-params.test.js +0 -306
  189. package/dist/__tests__/search-params.test.js.map +0 -1
  190. package/dist/__tests__/segment-system.test.d.ts +0 -2
  191. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  192. package/dist/__tests__/segment-system.test.js +0 -627
  193. package/dist/__tests__/segment-system.test.js.map +0 -1
  194. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  195. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  196. package/dist/__tests__/static-handler-types.test.js +0 -63
  197. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  198. package/dist/__tests__/urls.test.d.ts +0 -2
  199. package/dist/__tests__/urls.test.d.ts.map +0 -1
  200. package/dist/__tests__/urls.test.js +0 -421
  201. package/dist/__tests__/urls.test.js.map +0 -1
  202. package/dist/__tests__/use-mount.test.d.ts +0 -2
  203. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  204. package/dist/__tests__/use-mount.test.js +0 -35
  205. package/dist/__tests__/use-mount.test.js.map +0 -1
  206. package/dist/bin/rango.d.ts +0 -2
  207. package/dist/bin/rango.d.ts.map +0 -1
  208. package/dist/bin/rango.js.map +0 -1
  209. package/dist/browser/event-controller.d.ts +0 -191
  210. package/dist/browser/event-controller.d.ts.map +0 -1
  211. package/dist/browser/event-controller.js +0 -559
  212. package/dist/browser/event-controller.js.map +0 -1
  213. package/dist/browser/index.d.ts +0 -2
  214. package/dist/browser/index.d.ts.map +0 -1
  215. package/dist/browser/index.js +0 -14
  216. package/dist/browser/index.js.map +0 -1
  217. package/dist/browser/link-interceptor.d.ts +0 -38
  218. package/dist/browser/link-interceptor.d.ts.map +0 -1
  219. package/dist/browser/link-interceptor.js +0 -99
  220. package/dist/browser/link-interceptor.js.map +0 -1
  221. package/dist/browser/logging.d.ts +0 -10
  222. package/dist/browser/logging.d.ts.map +0 -1
  223. package/dist/browser/logging.js +0 -29
  224. package/dist/browser/logging.js.map +0 -1
  225. package/dist/browser/lru-cache.d.ts +0 -17
  226. package/dist/browser/lru-cache.d.ts.map +0 -1
  227. package/dist/browser/lru-cache.js +0 -50
  228. package/dist/browser/lru-cache.js.map +0 -1
  229. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  230. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  231. package/dist/browser/merge-segment-loaders.js +0 -102
  232. package/dist/browser/merge-segment-loaders.js.map +0 -1
  233. package/dist/browser/navigation-bridge.d.ts +0 -102
  234. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  235. package/dist/browser/navigation-bridge.js +0 -708
  236. package/dist/browser/navigation-bridge.js.map +0 -1
  237. package/dist/browser/navigation-client.d.ts +0 -25
  238. package/dist/browser/navigation-client.d.ts.map +0 -1
  239. package/dist/browser/navigation-client.js +0 -157
  240. package/dist/browser/navigation-client.js.map +0 -1
  241. package/dist/browser/navigation-store.d.ts +0 -101
  242. package/dist/browser/navigation-store.d.ts.map +0 -1
  243. package/dist/browser/navigation-store.js +0 -625
  244. package/dist/browser/navigation-store.js.map +0 -1
  245. package/dist/browser/partial-update.d.ts +0 -75
  246. package/dist/browser/partial-update.d.ts.map +0 -1
  247. package/dist/browser/partial-update.js +0 -426
  248. package/dist/browser/partial-update.js.map +0 -1
  249. package/dist/browser/react/Link.d.ts +0 -86
  250. package/dist/browser/react/Link.d.ts.map +0 -1
  251. package/dist/browser/react/Link.js +0 -128
  252. package/dist/browser/react/Link.js.map +0 -1
  253. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  254. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  255. package/dist/browser/react/NavigationProvider.js +0 -216
  256. package/dist/browser/react/NavigationProvider.js.map +0 -1
  257. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  258. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  259. package/dist/browser/react/ScrollRestoration.js +0 -57
  260. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  261. package/dist/browser/react/context.d.ts +0 -46
  262. package/dist/browser/react/context.d.ts.map +0 -1
  263. package/dist/browser/react/context.js +0 -10
  264. package/dist/browser/react/context.js.map +0 -1
  265. package/dist/browser/react/index.d.ts +0 -11
  266. package/dist/browser/react/index.d.ts.map +0 -1
  267. package/dist/browser/react/index.js +0 -22
  268. package/dist/browser/react/index.js.map +0 -1
  269. package/dist/browser/react/location-state-shared.d.ts +0 -63
  270. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  271. package/dist/browser/react/location-state-shared.js +0 -81
  272. package/dist/browser/react/location-state-shared.js.map +0 -1
  273. package/dist/browser/react/location-state.d.ts +0 -23
  274. package/dist/browser/react/location-state.d.ts.map +0 -1
  275. package/dist/browser/react/location-state.js +0 -29
  276. package/dist/browser/react/location-state.js.map +0 -1
  277. package/dist/browser/react/mount-context.d.ts +0 -24
  278. package/dist/browser/react/mount-context.d.ts.map +0 -1
  279. package/dist/browser/react/mount-context.js +0 -24
  280. package/dist/browser/react/mount-context.js.map +0 -1
  281. package/dist/browser/react/use-action.d.ts +0 -64
  282. package/dist/browser/react/use-action.d.ts.map +0 -1
  283. package/dist/browser/react/use-action.js +0 -134
  284. package/dist/browser/react/use-action.js.map +0 -1
  285. package/dist/browser/react/use-client-cache.d.ts +0 -41
  286. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  287. package/dist/browser/react/use-client-cache.js +0 -39
  288. package/dist/browser/react/use-client-cache.js.map +0 -1
  289. package/dist/browser/react/use-handle.d.ts +0 -31
  290. package/dist/browser/react/use-handle.d.ts.map +0 -1
  291. package/dist/browser/react/use-handle.js +0 -144
  292. package/dist/browser/react/use-handle.js.map +0 -1
  293. package/dist/browser/react/use-href.d.ts +0 -33
  294. package/dist/browser/react/use-href.d.ts.map +0 -1
  295. package/dist/browser/react/use-href.js +0 -39
  296. package/dist/browser/react/use-href.js.map +0 -1
  297. package/dist/browser/react/use-link-status.d.ts +0 -37
  298. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  299. package/dist/browser/react/use-link-status.js +0 -99
  300. package/dist/browser/react/use-link-status.js.map +0 -1
  301. package/dist/browser/react/use-mount.d.ts +0 -25
  302. package/dist/browser/react/use-mount.d.ts.map +0 -1
  303. package/dist/browser/react/use-mount.js +0 -30
  304. package/dist/browser/react/use-mount.js.map +0 -1
  305. package/dist/browser/react/use-navigation.d.ts +0 -27
  306. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  307. package/dist/browser/react/use-navigation.js +0 -87
  308. package/dist/browser/react/use-navigation.js.map +0 -1
  309. package/dist/browser/react/use-segments.d.ts +0 -38
  310. package/dist/browser/react/use-segments.d.ts.map +0 -1
  311. package/dist/browser/react/use-segments.js +0 -130
  312. package/dist/browser/react/use-segments.js.map +0 -1
  313. package/dist/browser/request-controller.d.ts +0 -26
  314. package/dist/browser/request-controller.d.ts.map +0 -1
  315. package/dist/browser/request-controller.js +0 -147
  316. package/dist/browser/request-controller.js.map +0 -1
  317. package/dist/browser/rsc-router.d.ts +0 -129
  318. package/dist/browser/rsc-router.d.ts.map +0 -1
  319. package/dist/browser/rsc-router.js +0 -195
  320. package/dist/browser/rsc-router.js.map +0 -1
  321. package/dist/browser/scroll-restoration.d.ts +0 -93
  322. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  323. package/dist/browser/scroll-restoration.js +0 -321
  324. package/dist/browser/scroll-restoration.js.map +0 -1
  325. package/dist/browser/segment-structure-assert.d.ts +0 -17
  326. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  327. package/dist/browser/segment-structure-assert.js +0 -59
  328. package/dist/browser/segment-structure-assert.js.map +0 -1
  329. package/dist/browser/server-action-bridge.d.ts +0 -26
  330. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  331. package/dist/browser/server-action-bridge.js +0 -668
  332. package/dist/browser/server-action-bridge.js.map +0 -1
  333. package/dist/browser/shallow.d.ts +0 -12
  334. package/dist/browser/shallow.d.ts.map +0 -1
  335. package/dist/browser/shallow.js +0 -34
  336. package/dist/browser/shallow.js.map +0 -1
  337. package/dist/browser/types.d.ts +0 -369
  338. package/dist/browser/types.d.ts.map +0 -1
  339. package/dist/browser/types.js +0 -2
  340. package/dist/browser/types.js.map +0 -1
  341. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  342. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  343. package/dist/build/__tests__/generate-cli.test.js +0 -237
  344. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  345. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  346. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  347. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  348. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  349. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  350. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  351. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  352. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  353. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  354. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  355. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  356. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  357. package/dist/build/generate-manifest.d.ts +0 -81
  358. package/dist/build/generate-manifest.d.ts.map +0 -1
  359. package/dist/build/generate-manifest.js +0 -276
  360. package/dist/build/generate-manifest.js.map +0 -1
  361. package/dist/build/generate-route-types.d.ts +0 -115
  362. package/dist/build/generate-route-types.d.ts.map +0 -1
  363. package/dist/build/generate-route-types.js +0 -740
  364. package/dist/build/generate-route-types.js.map +0 -1
  365. package/dist/build/index.d.ts +0 -21
  366. package/dist/build/index.d.ts.map +0 -1
  367. package/dist/build/index.js +0 -21
  368. package/dist/build/index.js.map +0 -1
  369. package/dist/build/route-trie.d.ts +0 -71
  370. package/dist/build/route-trie.d.ts.map +0 -1
  371. package/dist/build/route-trie.js +0 -175
  372. package/dist/build/route-trie.js.map +0 -1
  373. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  374. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  375. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  376. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  377. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  378. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  379. package/dist/cache/__tests__/document-cache.test.js +0 -345
  380. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  381. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  382. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  383. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  384. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  385. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  386. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  387. package/dist/cache/__tests__/memory-store.test.js +0 -367
  388. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  389. package/dist/cache/cache-scope.d.ts +0 -102
  390. package/dist/cache/cache-scope.d.ts.map +0 -1
  391. package/dist/cache/cache-scope.js +0 -440
  392. package/dist/cache/cache-scope.js.map +0 -1
  393. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  394. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  395. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  396. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  397. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  398. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  399. package/dist/cache/cf/cf-cache-store.js +0 -242
  400. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  401. package/dist/cache/cf/index.d.ts +0 -14
  402. package/dist/cache/cf/index.d.ts.map +0 -1
  403. package/dist/cache/cf/index.js +0 -17
  404. package/dist/cache/cf/index.js.map +0 -1
  405. package/dist/cache/document-cache.d.ts +0 -64
  406. package/dist/cache/document-cache.d.ts.map +0 -1
  407. package/dist/cache/document-cache.js +0 -228
  408. package/dist/cache/document-cache.js.map +0 -1
  409. package/dist/cache/index.d.ts +0 -19
  410. package/dist/cache/index.d.ts.map +0 -1
  411. package/dist/cache/index.js +0 -21
  412. package/dist/cache/index.js.map +0 -1
  413. package/dist/cache/memory-segment-store.d.ts +0 -110
  414. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  415. package/dist/cache/memory-segment-store.js +0 -117
  416. package/dist/cache/memory-segment-store.js.map +0 -1
  417. package/dist/cache/memory-store.d.ts +0 -41
  418. package/dist/cache/memory-store.d.ts.map +0 -1
  419. package/dist/cache/memory-store.js +0 -191
  420. package/dist/cache/memory-store.js.map +0 -1
  421. package/dist/cache/types.d.ts +0 -317
  422. package/dist/cache/types.d.ts.map +0 -1
  423. package/dist/cache/types.js +0 -12
  424. package/dist/cache/types.js.map +0 -1
  425. package/dist/client.d.ts +0 -248
  426. package/dist/client.d.ts.map +0 -1
  427. package/dist/client.js +0 -367
  428. package/dist/client.js.map +0 -1
  429. package/dist/client.rsc.d.ts +0 -26
  430. package/dist/client.rsc.d.ts.map +0 -1
  431. package/dist/client.rsc.js +0 -46
  432. package/dist/client.rsc.js.map +0 -1
  433. package/dist/component-utils.d.ts +0 -36
  434. package/dist/component-utils.d.ts.map +0 -1
  435. package/dist/component-utils.js +0 -61
  436. package/dist/component-utils.js.map +0 -1
  437. package/dist/components/DefaultDocument.d.ts +0 -13
  438. package/dist/components/DefaultDocument.d.ts.map +0 -1
  439. package/dist/components/DefaultDocument.js +0 -15
  440. package/dist/components/DefaultDocument.js.map +0 -1
  441. package/dist/debug.d.ts +0 -58
  442. package/dist/debug.d.ts.map +0 -1
  443. package/dist/debug.js +0 -157
  444. package/dist/debug.js.map +0 -1
  445. package/dist/default-error-boundary.d.ts +0 -11
  446. package/dist/default-error-boundary.d.ts.map +0 -1
  447. package/dist/default-error-boundary.js +0 -45
  448. package/dist/default-error-boundary.js.map +0 -1
  449. package/dist/deps/browser.d.ts +0 -2
  450. package/dist/deps/browser.d.ts.map +0 -1
  451. package/dist/deps/browser.js +0 -3
  452. package/dist/deps/browser.js.map +0 -1
  453. package/dist/deps/html-stream-client.d.ts +0 -2
  454. package/dist/deps/html-stream-client.d.ts.map +0 -1
  455. package/dist/deps/html-stream-client.js +0 -3
  456. package/dist/deps/html-stream-client.js.map +0 -1
  457. package/dist/deps/html-stream-server.d.ts +0 -2
  458. package/dist/deps/html-stream-server.d.ts.map +0 -1
  459. package/dist/deps/html-stream-server.js +0 -3
  460. package/dist/deps/html-stream-server.js.map +0 -1
  461. package/dist/deps/rsc.d.ts +0 -2
  462. package/dist/deps/rsc.d.ts.map +0 -1
  463. package/dist/deps/rsc.js +0 -4
  464. package/dist/deps/rsc.js.map +0 -1
  465. package/dist/deps/ssr.d.ts +0 -2
  466. package/dist/deps/ssr.d.ts.map +0 -1
  467. package/dist/deps/ssr.js +0 -3
  468. package/dist/deps/ssr.js.map +0 -1
  469. package/dist/errors.d.ts +0 -174
  470. package/dist/errors.d.ts.map +0 -1
  471. package/dist/errors.js +0 -241
  472. package/dist/errors.js.map +0 -1
  473. package/dist/handle.d.ts +0 -78
  474. package/dist/handle.d.ts.map +0 -1
  475. package/dist/handle.js +0 -82
  476. package/dist/handle.js.map +0 -1
  477. package/dist/handles/MetaTags.d.ts +0 -14
  478. package/dist/handles/MetaTags.d.ts.map +0 -1
  479. package/dist/handles/MetaTags.js +0 -136
  480. package/dist/handles/MetaTags.js.map +0 -1
  481. package/dist/handles/index.d.ts +0 -6
  482. package/dist/handles/index.d.ts.map +0 -1
  483. package/dist/handles/index.js +0 -6
  484. package/dist/handles/index.js.map +0 -1
  485. package/dist/handles/meta.d.ts +0 -39
  486. package/dist/handles/meta.d.ts.map +0 -1
  487. package/dist/handles/meta.js +0 -202
  488. package/dist/handles/meta.js.map +0 -1
  489. package/dist/host/__tests__/errors.test.d.ts +0 -2
  490. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  491. package/dist/host/__tests__/errors.test.js +0 -76
  492. package/dist/host/__tests__/errors.test.js.map +0 -1
  493. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  494. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  495. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  496. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  497. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  498. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  499. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  500. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  501. package/dist/host/__tests__/router.test.d.ts +0 -2
  502. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  503. package/dist/host/__tests__/router.test.js +0 -241
  504. package/dist/host/__tests__/router.test.js.map +0 -1
  505. package/dist/host/__tests__/testing.test.d.ts +0 -2
  506. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  507. package/dist/host/__tests__/testing.test.js +0 -64
  508. package/dist/host/__tests__/testing.test.js.map +0 -1
  509. package/dist/host/__tests__/utils.test.d.ts +0 -2
  510. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  511. package/dist/host/__tests__/utils.test.js +0 -29
  512. package/dist/host/__tests__/utils.test.js.map +0 -1
  513. package/dist/host/cookie-handler.d.ts +0 -34
  514. package/dist/host/cookie-handler.d.ts.map +0 -1
  515. package/dist/host/cookie-handler.js +0 -124
  516. package/dist/host/cookie-handler.js.map +0 -1
  517. package/dist/host/errors.d.ts +0 -56
  518. package/dist/host/errors.d.ts.map +0 -1
  519. package/dist/host/errors.js +0 -79
  520. package/dist/host/errors.js.map +0 -1
  521. package/dist/host/index.d.ts +0 -29
  522. package/dist/host/index.d.ts.map +0 -1
  523. package/dist/host/index.js +0 -32
  524. package/dist/host/index.js.map +0 -1
  525. package/dist/host/pattern-matcher.d.ts +0 -36
  526. package/dist/host/pattern-matcher.d.ts.map +0 -1
  527. package/dist/host/pattern-matcher.js +0 -172
  528. package/dist/host/pattern-matcher.js.map +0 -1
  529. package/dist/host/router.d.ts +0 -26
  530. package/dist/host/router.d.ts.map +0 -1
  531. package/dist/host/router.js +0 -218
  532. package/dist/host/router.js.map +0 -1
  533. package/dist/host/testing.d.ts +0 -36
  534. package/dist/host/testing.d.ts.map +0 -1
  535. package/dist/host/testing.js +0 -55
  536. package/dist/host/testing.js.map +0 -1
  537. package/dist/host/types.d.ts +0 -115
  538. package/dist/host/types.d.ts.map +0 -1
  539. package/dist/host/types.js +0 -7
  540. package/dist/host/types.js.map +0 -1
  541. package/dist/host/utils.d.ts +0 -21
  542. package/dist/host/utils.d.ts.map +0 -1
  543. package/dist/host/utils.js +0 -23
  544. package/dist/host/utils.js.map +0 -1
  545. package/dist/href-client.d.ts +0 -131
  546. package/dist/href-client.d.ts.map +0 -1
  547. package/dist/href-client.js +0 -64
  548. package/dist/href-client.js.map +0 -1
  549. package/dist/href-context.d.ts +0 -29
  550. package/dist/href-context.d.ts.map +0 -1
  551. package/dist/href-context.js +0 -21
  552. package/dist/href-context.js.map +0 -1
  553. package/dist/index.d.ts +0 -73
  554. package/dist/index.d.ts.map +0 -1
  555. package/dist/index.js +0 -91
  556. package/dist/index.js.map +0 -1
  557. package/dist/index.rsc.d.ts +0 -32
  558. package/dist/index.rsc.d.ts.map +0 -1
  559. package/dist/index.rsc.js +0 -40
  560. package/dist/index.rsc.js.map +0 -1
  561. package/dist/internal-debug.d.ts +0 -2
  562. package/dist/internal-debug.d.ts.map +0 -1
  563. package/dist/internal-debug.js +0 -5
  564. package/dist/internal-debug.js.map +0 -1
  565. package/dist/loader.d.ts +0 -14
  566. package/dist/loader.d.ts.map +0 -1
  567. package/dist/loader.js +0 -20
  568. package/dist/loader.js.map +0 -1
  569. package/dist/loader.rsc.d.ts +0 -19
  570. package/dist/loader.rsc.d.ts.map +0 -1
  571. package/dist/loader.rsc.js +0 -99
  572. package/dist/loader.rsc.js.map +0 -1
  573. package/dist/network-error-thrower.d.ts +0 -17
  574. package/dist/network-error-thrower.d.ts.map +0 -1
  575. package/dist/network-error-thrower.js +0 -14
  576. package/dist/network-error-thrower.js.map +0 -1
  577. package/dist/outlet-context.d.ts +0 -13
  578. package/dist/outlet-context.d.ts.map +0 -1
  579. package/dist/outlet-context.js +0 -3
  580. package/dist/outlet-context.js.map +0 -1
  581. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  582. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  583. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  584. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  585. package/dist/prerender/param-hash.d.ts +0 -16
  586. package/dist/prerender/param-hash.d.ts.map +0 -1
  587. package/dist/prerender/param-hash.js +0 -36
  588. package/dist/prerender/param-hash.js.map +0 -1
  589. package/dist/prerender/store.d.ts +0 -38
  590. package/dist/prerender/store.d.ts.map +0 -1
  591. package/dist/prerender/store.js +0 -61
  592. package/dist/prerender/store.js.map +0 -1
  593. package/dist/prerender.d.ts +0 -66
  594. package/dist/prerender.d.ts.map +0 -1
  595. package/dist/prerender.js +0 -57
  596. package/dist/prerender.js.map +0 -1
  597. package/dist/reverse.d.ts +0 -196
  598. package/dist/reverse.d.ts.map +0 -1
  599. package/dist/reverse.js +0 -78
  600. package/dist/reverse.js.map +0 -1
  601. package/dist/root-error-boundary.d.ts +0 -33
  602. package/dist/root-error-boundary.d.ts.map +0 -1
  603. package/dist/root-error-boundary.js +0 -165
  604. package/dist/root-error-boundary.js.map +0 -1
  605. package/dist/route-content-wrapper.d.ts +0 -46
  606. package/dist/route-content-wrapper.d.ts.map +0 -1
  607. package/dist/route-content-wrapper.js +0 -77
  608. package/dist/route-content-wrapper.js.map +0 -1
  609. package/dist/route-definition.d.ts +0 -421
  610. package/dist/route-definition.d.ts.map +0 -1
  611. package/dist/route-definition.js +0 -868
  612. package/dist/route-definition.js.map +0 -1
  613. package/dist/route-map-builder.d.ts +0 -155
  614. package/dist/route-map-builder.d.ts.map +0 -1
  615. package/dist/route-map-builder.js +0 -237
  616. package/dist/route-map-builder.js.map +0 -1
  617. package/dist/route-types.d.ts +0 -165
  618. package/dist/route-types.d.ts.map +0 -1
  619. package/dist/route-types.js +0 -7
  620. package/dist/route-types.js.map +0 -1
  621. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  622. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  623. package/dist/router/__tests__/handler-context.test.js +0 -65
  624. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  625. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  626. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  627. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  628. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  629. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  630. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  631. package/dist/router/__tests__/match-context.test.js +0 -92
  632. package/dist/router/__tests__/match-context.test.js.map +0 -1
  633. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  634. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  635. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  636. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  637. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  638. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  639. package/dist/router/__tests__/match-result.test.js +0 -457
  640. package/dist/router/__tests__/match-result.test.js.map +0 -1
  641. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  642. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  643. package/dist/router/__tests__/on-error.test.js +0 -678
  644. package/dist/router/__tests__/on-error.test.js.map +0 -1
  645. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  646. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  647. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  648. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  649. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  650. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  651. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  652. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  653. package/dist/router/error-handling.d.ts +0 -77
  654. package/dist/router/error-handling.d.ts.map +0 -1
  655. package/dist/router/error-handling.js +0 -202
  656. package/dist/router/error-handling.js.map +0 -1
  657. package/dist/router/handler-context.d.ts +0 -20
  658. package/dist/router/handler-context.d.ts.map +0 -1
  659. package/dist/router/handler-context.js +0 -198
  660. package/dist/router/handler-context.js.map +0 -1
  661. package/dist/router/intercept-resolution.d.ts +0 -66
  662. package/dist/router/intercept-resolution.d.ts.map +0 -1
  663. package/dist/router/intercept-resolution.js +0 -246
  664. package/dist/router/intercept-resolution.js.map +0 -1
  665. package/dist/router/loader-resolution.d.ts +0 -64
  666. package/dist/router/loader-resolution.d.ts.map +0 -1
  667. package/dist/router/loader-resolution.js +0 -284
  668. package/dist/router/loader-resolution.js.map +0 -1
  669. package/dist/router/logging.d.ts +0 -15
  670. package/dist/router/logging.d.ts.map +0 -1
  671. package/dist/router/logging.js +0 -99
  672. package/dist/router/logging.js.map +0 -1
  673. package/dist/router/manifest.d.ts +0 -22
  674. package/dist/router/manifest.d.ts.map +0 -1
  675. package/dist/router/manifest.js +0 -181
  676. package/dist/router/manifest.js.map +0 -1
  677. package/dist/router/match-api.d.ts +0 -35
  678. package/dist/router/match-api.d.ts.map +0 -1
  679. package/dist/router/match-api.js +0 -406
  680. package/dist/router/match-api.js.map +0 -1
  681. package/dist/router/match-context.d.ts +0 -206
  682. package/dist/router/match-context.d.ts.map +0 -1
  683. package/dist/router/match-context.js +0 -17
  684. package/dist/router/match-context.js.map +0 -1
  685. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  686. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  687. package/dist/router/match-middleware/background-revalidation.js +0 -75
  688. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  689. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  690. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  691. package/dist/router/match-middleware/cache-lookup.js +0 -257
  692. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  693. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  694. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  695. package/dist/router/match-middleware/cache-store.js +0 -108
  696. package/dist/router/match-middleware/cache-store.js.map +0 -1
  697. package/dist/router/match-middleware/index.d.ts +0 -81
  698. package/dist/router/match-middleware/index.d.ts.map +0 -1
  699. package/dist/router/match-middleware/index.js +0 -80
  700. package/dist/router/match-middleware/index.js.map +0 -1
  701. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  702. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  703. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  704. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  705. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  706. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  707. package/dist/router/match-middleware/segment-resolution.js +0 -53
  708. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  709. package/dist/router/match-pipelines.d.ts +0 -147
  710. package/dist/router/match-pipelines.d.ts.map +0 -1
  711. package/dist/router/match-pipelines.js +0 -82
  712. package/dist/router/match-pipelines.js.map +0 -1
  713. package/dist/router/match-result.d.ts +0 -126
  714. package/dist/router/match-result.d.ts.map +0 -1
  715. package/dist/router/match-result.js +0 -93
  716. package/dist/router/match-result.js.map +0 -1
  717. package/dist/router/metrics.d.ts +0 -20
  718. package/dist/router/metrics.d.ts.map +0 -1
  719. package/dist/router/metrics.js +0 -47
  720. package/dist/router/metrics.js.map +0 -1
  721. package/dist/router/middleware.d.ts +0 -249
  722. package/dist/router/middleware.d.ts.map +0 -1
  723. package/dist/router/middleware.js +0 -434
  724. package/dist/router/middleware.js.map +0 -1
  725. package/dist/router/middleware.test.d.ts +0 -2
  726. package/dist/router/middleware.test.d.ts.map +0 -1
  727. package/dist/router/middleware.test.js +0 -816
  728. package/dist/router/middleware.test.js.map +0 -1
  729. package/dist/router/pattern-matching.d.ts +0 -149
  730. package/dist/router/pattern-matching.d.ts.map +0 -1
  731. package/dist/router/pattern-matching.js +0 -349
  732. package/dist/router/pattern-matching.js.map +0 -1
  733. package/dist/router/revalidation.d.ts +0 -44
  734. package/dist/router/revalidation.d.ts.map +0 -1
  735. package/dist/router/revalidation.js +0 -147
  736. package/dist/router/revalidation.js.map +0 -1
  737. package/dist/router/router-context.d.ts +0 -135
  738. package/dist/router/router-context.d.ts.map +0 -1
  739. package/dist/router/router-context.js +0 -36
  740. package/dist/router/router-context.js.map +0 -1
  741. package/dist/router/segment-resolution.d.ts +0 -127
  742. package/dist/router/segment-resolution.d.ts.map +0 -1
  743. package/dist/router/segment-resolution.js +0 -919
  744. package/dist/router/segment-resolution.js.map +0 -1
  745. package/dist/router/trie-matching.d.ts +0 -40
  746. package/dist/router/trie-matching.d.ts.map +0 -1
  747. package/dist/router/trie-matching.js +0 -127
  748. package/dist/router/trie-matching.js.map +0 -1
  749. package/dist/router/types.d.ts +0 -136
  750. package/dist/router/types.d.ts.map +0 -1
  751. package/dist/router/types.js +0 -7
  752. package/dist/router/types.js.map +0 -1
  753. package/dist/router.d.ts +0 -753
  754. package/dist/router.d.ts.map +0 -1
  755. package/dist/router.gen.d.ts +0 -6
  756. package/dist/router.gen.d.ts.map +0 -1
  757. package/dist/router.gen.js +0 -6
  758. package/dist/router.gen.js.map +0 -1
  759. package/dist/router.js +0 -1304
  760. package/dist/router.js.map +0 -1
  761. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  762. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  763. package/dist/rsc/__tests__/helpers.test.js +0 -140
  764. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  765. package/dist/rsc/handler.d.ts +0 -45
  766. package/dist/rsc/handler.d.ts.map +0 -1
  767. package/dist/rsc/handler.js +0 -1172
  768. package/dist/rsc/handler.js.map +0 -1
  769. package/dist/rsc/helpers.d.ts +0 -16
  770. package/dist/rsc/helpers.d.ts.map +0 -1
  771. package/dist/rsc/helpers.js +0 -55
  772. package/dist/rsc/helpers.js.map +0 -1
  773. package/dist/rsc/index.d.ts +0 -22
  774. package/dist/rsc/index.d.ts.map +0 -1
  775. package/dist/rsc/index.js +0 -23
  776. package/dist/rsc/index.js.map +0 -1
  777. package/dist/rsc/nonce.d.ts +0 -9
  778. package/dist/rsc/nonce.d.ts.map +0 -1
  779. package/dist/rsc/nonce.js +0 -18
  780. package/dist/rsc/nonce.js.map +0 -1
  781. package/dist/rsc/types.d.ts +0 -206
  782. package/dist/rsc/types.d.ts.map +0 -1
  783. package/dist/rsc/types.js +0 -8
  784. package/dist/rsc/types.js.map +0 -1
  785. package/dist/search-params.d.ts +0 -103
  786. package/dist/search-params.d.ts.map +0 -1
  787. package/dist/search-params.js +0 -74
  788. package/dist/search-params.js.map +0 -1
  789. package/dist/segment-system.d.ts +0 -75
  790. package/dist/segment-system.d.ts.map +0 -1
  791. package/dist/segment-system.js +0 -336
  792. package/dist/segment-system.js.map +0 -1
  793. package/dist/server/context.d.ts +0 -245
  794. package/dist/server/context.d.ts.map +0 -1
  795. package/dist/server/context.js +0 -197
  796. package/dist/server/context.js.map +0 -1
  797. package/dist/server/fetchable-loader-store.d.ts +0 -18
  798. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  799. package/dist/server/fetchable-loader-store.js +0 -18
  800. package/dist/server/fetchable-loader-store.js.map +0 -1
  801. package/dist/server/handle-store.d.ts +0 -85
  802. package/dist/server/handle-store.d.ts.map +0 -1
  803. package/dist/server/handle-store.js +0 -142
  804. package/dist/server/handle-store.js.map +0 -1
  805. package/dist/server/loader-registry.d.ts +0 -55
  806. package/dist/server/loader-registry.d.ts.map +0 -1
  807. package/dist/server/loader-registry.js +0 -132
  808. package/dist/server/loader-registry.js.map +0 -1
  809. package/dist/server/request-context.d.ts +0 -226
  810. package/dist/server/request-context.d.ts.map +0 -1
  811. package/dist/server/request-context.js +0 -290
  812. package/dist/server/request-context.js.map +0 -1
  813. package/dist/server/root-layout.d.ts +0 -4
  814. package/dist/server/root-layout.d.ts.map +0 -1
  815. package/dist/server/root-layout.js +0 -5
  816. package/dist/server/root-layout.js.map +0 -1
  817. package/dist/server.d.ts +0 -15
  818. package/dist/server.d.ts.map +0 -1
  819. package/dist/server.js +0 -20
  820. package/dist/server.js.map +0 -1
  821. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  822. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  823. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  824. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  825. package/dist/ssr/index.d.ts +0 -98
  826. package/dist/ssr/index.d.ts.map +0 -1
  827. package/dist/ssr/index.js +0 -158
  828. package/dist/ssr/index.js.map +0 -1
  829. package/dist/static-handler.d.ts +0 -50
  830. package/dist/static-handler.d.ts.map +0 -1
  831. package/dist/static-handler.gen.d.ts +0 -5
  832. package/dist/static-handler.gen.d.ts.map +0 -1
  833. package/dist/static-handler.gen.js +0 -5
  834. package/dist/static-handler.gen.js.map +0 -1
  835. package/dist/static-handler.js +0 -29
  836. package/dist/static-handler.js.map +0 -1
  837. package/dist/theme/ThemeProvider.d.ts +0 -20
  838. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  839. package/dist/theme/ThemeProvider.js +0 -240
  840. package/dist/theme/ThemeProvider.js.map +0 -1
  841. package/dist/theme/ThemeScript.d.ts +0 -48
  842. package/dist/theme/ThemeScript.d.ts.map +0 -1
  843. package/dist/theme/ThemeScript.js +0 -13
  844. package/dist/theme/ThemeScript.js.map +0 -1
  845. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  846. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  847. package/dist/theme/__tests__/theme.test.js +0 -103
  848. package/dist/theme/__tests__/theme.test.js.map +0 -1
  849. package/dist/theme/constants.d.ts +0 -29
  850. package/dist/theme/constants.d.ts.map +0 -1
  851. package/dist/theme/constants.js +0 -48
  852. package/dist/theme/constants.js.map +0 -1
  853. package/dist/theme/index.d.ts +0 -31
  854. package/dist/theme/index.d.ts.map +0 -1
  855. package/dist/theme/index.js +0 -36
  856. package/dist/theme/index.js.map +0 -1
  857. package/dist/theme/theme-context.d.ts +0 -40
  858. package/dist/theme/theme-context.d.ts.map +0 -1
  859. package/dist/theme/theme-context.js +0 -60
  860. package/dist/theme/theme-context.js.map +0 -1
  861. package/dist/theme/theme-script.d.ts +0 -27
  862. package/dist/theme/theme-script.d.ts.map +0 -1
  863. package/dist/theme/theme-script.js +0 -147
  864. package/dist/theme/theme-script.js.map +0 -1
  865. package/dist/theme/types.d.ts +0 -163
  866. package/dist/theme/types.d.ts.map +0 -1
  867. package/dist/theme/types.js +0 -11
  868. package/dist/theme/types.js.map +0 -1
  869. package/dist/theme/use-theme.d.ts +0 -12
  870. package/dist/theme/use-theme.d.ts.map +0 -1
  871. package/dist/theme/use-theme.js +0 -40
  872. package/dist/theme/use-theme.js.map +0 -1
  873. package/dist/types.d.ts +0 -1479
  874. package/dist/types.d.ts.map +0 -1
  875. package/dist/types.js +0 -10
  876. package/dist/types.js.map +0 -1
  877. package/dist/urls.d.ts +0 -441
  878. package/dist/urls.d.ts.map +0 -1
  879. package/dist/urls.gen.d.ts +0 -8
  880. package/dist/urls.gen.d.ts.map +0 -1
  881. package/dist/urls.gen.js +0 -8
  882. package/dist/urls.gen.js.map +0 -1
  883. package/dist/urls.js +0 -443
  884. package/dist/urls.js.map +0 -1
  885. package/dist/use-loader.d.ts +0 -127
  886. package/dist/use-loader.d.ts.map +0 -1
  887. package/dist/use-loader.js +0 -237
  888. package/dist/use-loader.js.map +0 -1
  889. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  890. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  891. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  892. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  893. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  894. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  895. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  896. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  897. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  898. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  899. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  900. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  901. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  902. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  903. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  904. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  905. package/dist/vite/ast-handler-extract.d.ts +0 -49
  906. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  907. package/dist/vite/ast-handler-extract.js +0 -249
  908. package/dist/vite/ast-handler-extract.js.map +0 -1
  909. package/dist/vite/expose-action-id.d.ts +0 -19
  910. package/dist/vite/expose-action-id.d.ts.map +0 -1
  911. package/dist/vite/expose-action-id.js +0 -250
  912. package/dist/vite/expose-action-id.js.map +0 -1
  913. package/dist/vite/expose-id-utils.d.ts +0 -69
  914. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  915. package/dist/vite/expose-id-utils.js +0 -289
  916. package/dist/vite/expose-id-utils.js.map +0 -1
  917. package/dist/vite/expose-internal-ids.d.ts +0 -22
  918. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  919. package/dist/vite/expose-internal-ids.js +0 -886
  920. package/dist/vite/expose-internal-ids.js.map +0 -1
  921. package/dist/vite/index.d.ts +0 -149
  922. package/dist/vite/index.d.ts.map +0 -1
  923. package/dist/vite/index.js.map +0 -1
  924. package/dist/vite/index.named-routes.gen.ts +0 -103
  925. package/dist/vite/package-resolution.d.ts +0 -43
  926. package/dist/vite/package-resolution.d.ts.map +0 -1
  927. package/dist/vite/package-resolution.js +0 -112
  928. package/dist/vite/package-resolution.js.map +0 -1
  929. package/dist/vite/virtual-entries.d.ts +0 -25
  930. package/dist/vite/virtual-entries.d.ts.map +0 -1
  931. package/dist/vite/virtual-entries.js +0 -110
  932. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,250 +0,0 @@
1
- import MagicString from "magic-string";
2
- import path from "node:path";
3
- import fs from "node:fs";
4
- import { normalizePath } from "./expose-id-utils.ts";
5
- /**
6
- * Get the RSC plugin's API from Vite config
7
- */
8
- function getRscPluginApi(config) {
9
- // Try by name first
10
- let plugin = config.plugins.find((p) => p.name === "rsc:minimal");
11
- // Fallback: find by API structure if name lookup fails
12
- if (!plugin) {
13
- plugin = config.plugins.find((p) => p.api?.manager?.serverReferenceMetaMap !==
14
- undefined);
15
- if (plugin) {
16
- console.warn(`[rsc-router:expose-action-id] RSC plugin found by API structure (name: "${plugin.name}"). ` +
17
- `Consider updating the name lookup if the plugin was renamed.`);
18
- }
19
- }
20
- return plugin?.api;
21
- }
22
- /**
23
- * Check if a file is a "use server" module (has the directive at the module level).
24
- * This distinguishes module-level server action files from files with inline actions.
25
- *
26
- * Module-level "use server" files should have their hash replaced with file paths
27
- * for revalidation matching. Inline actions (defined in RSC components) should
28
- * keep their hashed IDs for client security.
29
- */
30
- function isUseServerModule(filePath) {
31
- try {
32
- const content = fs.readFileSync(filePath, "utf-8");
33
- // Remove leading comments and whitespace to find the first meaningful content
34
- const trimmed = content
35
- .replace(/^\s*\/\/[^\n]*\n/gm, "") // Remove single-line comments
36
- .replace(/^\s*\/\*[\s\S]*?\*\/\s*/gm, "") // Remove multi-line comments
37
- .trimStart();
38
- // Check if the file starts with "use server" directive
39
- return (trimmed.startsWith('"use server"') || trimmed.startsWith("'use server'"));
40
- }
41
- catch {
42
- return false;
43
- }
44
- }
45
- /**
46
- * Transform code to expose action IDs on createServerReference calls.
47
- * Wraps each call with an IIFE that attaches $id to the returned function.
48
- *
49
- * @param code - The source code to transform
50
- * @param sourceId - The source file identifier (for sourcemap)
51
- * @param hashToFileMap - Optional mapping from hash to file path (for server bundles)
52
- */
53
- function transformServerReferences(code, sourceId, hashToFileMap) {
54
- if (!code.includes("createServerReference(")) {
55
- return null;
56
- }
57
- // Match: createServerReference("hash#actionName", ...) or $$ReactClient.createServerReference(...)
58
- // The RSC plugin uses $$ReactClient namespace in transformed code
59
- const pattern = /((?:\$\$\w+\.)?createServerReference)\(("[^"]+#[^"]+")([^)]*)\)/g;
60
- const s = new MagicString(code);
61
- let hasChanges = false;
62
- let match;
63
- while ((match = pattern.exec(code)) !== null) {
64
- hasChanges = true;
65
- const [fullMatch, fnCall, idArg, rest] = match;
66
- const start = match.index;
67
- const end = start + fullMatch.length;
68
- // Parse the ID to potentially replace hash with file path
69
- let finalIdArg = idArg;
70
- if (hashToFileMap) {
71
- // idArg is like '"hash#actionName"', extract the parts
72
- const idValue = idArg.slice(1, -1); // Remove quotes
73
- const hashMatch = idValue.match(/^([^#]+)#(.+)$/);
74
- if (hashMatch) {
75
- const [, hash, actionName] = hashMatch;
76
- const filePath = hashToFileMap.get(hash);
77
- if (filePath) {
78
- // Replace hash with file path for server-side
79
- finalIdArg = `"${filePath}#${actionName}"`;
80
- }
81
- }
82
- }
83
- // Wrap the createServerReference call to attach $$id to the returned function
84
- const replacement = `(function(fn) { fn.$$id = ${finalIdArg}; return fn; })(${fnCall}(${idArg}${rest}))`;
85
- s.overwrite(start, end, replacement);
86
- }
87
- if (!hasChanges) {
88
- return null;
89
- }
90
- return {
91
- code: s.toString(),
92
- map: s.generateMap({ source: sourceId, includeContent: true }),
93
- };
94
- }
95
- /**
96
- * Transform registerServerReference calls in server bundles to use file paths instead of hashes.
97
- * Pattern: registerServerReference(fn, "hash", "exportName")
98
- * React's registerServerReference sets $$id = hash + "#" + exportName
99
- * By replacing the hash with file path, $$id will contain the file path for revalidation matching.
100
- *
101
- * Only actions from module-level "use server" files are transformed.
102
- * Inline actions (defined in RSC components with "use server" inside a function) are NOT in
103
- * hashToFileMap and keep their hashed IDs. This is intentional for client security:
104
- * - Module-level "use server" files: shared action modules, file path helps revalidation
105
- * - Inline actions: one-off actions in RSC, hash ID prevents file path exposure to client
106
- *
107
- * @param code - The source code to transform
108
- * @param sourceId - The source file identifier (for sourcemap)
109
- * @param hashToFileMap - Mapping from hash to file path (only module-level "use server" files)
110
- */
111
- function transformRegisterServerReference(code, sourceId, hashToFileMap) {
112
- if (!hashToFileMap || !code.includes("registerServerReference(")) {
113
- return null;
114
- }
115
- // Match: registerServerReference(fn, "hash", "exportName")
116
- // The hash is the second argument, exportName is the third
117
- const pattern = /registerServerReference\(([^,]+),\s*"([^"]+)",\s*"([^"]+)"\)/g;
118
- const s = new MagicString(code);
119
- let hasChanges = false;
120
- let match;
121
- while ((match = pattern.exec(code)) !== null) {
122
- const [fullMatch, fnArg, hash, exportName] = match;
123
- const start = match.index;
124
- const end = start + fullMatch.length;
125
- // Look up the file path for this hash
126
- const filePath = hashToFileMap.get(hash);
127
- if (filePath) {
128
- hasChanges = true;
129
- // WRAP the call to add $id property with file path
130
- // Keep the original hash for React's action registry (so loadServerAction works)
131
- // Add $id (single dollar) with file path for revalidation matching
132
- // Note: We use $id instead of $$id because React's registerServerReference
133
- // sets $$id as a non-writable property
134
- const filePathId = `${filePath}#${exportName}`;
135
- const replacement = `(function(fn) { fn.$id = "${filePathId}"; return fn; })(registerServerReference(${fnArg}, "${hash}", "${exportName}"))`;
136
- s.overwrite(start, end, replacement);
137
- }
138
- }
139
- if (!hasChanges) {
140
- return null;
141
- }
142
- return {
143
- code: s.toString(),
144
- map: s.generateMap({ source: sourceId, includeContent: true }),
145
- };
146
- }
147
- /**
148
- * Vite plugin that exposes action IDs on server reference functions.
149
- *
150
- * When React Server Components creates server references via createServerReference(),
151
- * the action ID (format: "hash#actionName") is passed as the first argument but not
152
- * exposed on the returned function. This plugin transforms the output to attach
153
- * the $id property to each server reference function, enabling the router to
154
- * identify which action was called during revalidation.
155
- *
156
- * Server bundles (RSC/SSR) get file paths in $id for filtering (e.g., "src/actions.ts#add").
157
- * Client bundles keep hashed IDs for security (e.g., "ec387bc704d4#add").
158
- *
159
- * Works in:
160
- * - Build mode: uses renderChunk to transform bundled chunks
161
- * - Dev mode: uses transform with enforce:"post" to transform after RSC plugin
162
- */
163
- export function exposeActionId() {
164
- let config;
165
- let isBuild = false;
166
- let hashToFileMap;
167
- let rscPluginApi;
168
- return {
169
- name: "@rangojs/router:expose-action-id",
170
- // Run after all other plugins (including RSC plugin's transforms)
171
- enforce: "post",
172
- configResolved(resolvedConfig) {
173
- config = resolvedConfig;
174
- isBuild = config.command === "build";
175
- // Get RSC plugin API - rsc-router requires @vitejs/plugin-rsc
176
- rscPluginApi = getRscPluginApi(config);
177
- },
178
- buildStart() {
179
- // Verify RSC plugin is present at build start (after all config hooks have run)
180
- // This allows rsc-router:rsc-integration to dynamically add the RSC plugin
181
- if (!rscPluginApi) {
182
- rscPluginApi = getRscPluginApi(config);
183
- }
184
- if (!rscPluginApi) {
185
- throw new Error("[rsc-router] Could not find @vitejs/plugin-rsc. " +
186
- "@rangojs/router requires the Vite RSC plugin.\n" +
187
- "The RSC plugin should be included automatically. If you disabled it with\n" +
188
- "rango({ rsc: false }), add rsc() before rango() in your config.");
189
- }
190
- if (!isBuild)
191
- return;
192
- hashToFileMap = new Map();
193
- const { serverReferenceMetaMap } = rscPluginApi.manager;
194
- for (const [absolutePath, meta] of Object.entries(serverReferenceMetaMap)) {
195
- // Only include module-level "use server" files
196
- // Inline actions (defined in RSC components) should keep hashed IDs for client security
197
- if (!isUseServerModule(absolutePath)) {
198
- continue;
199
- }
200
- const relativePath = normalizePath(path.relative(config.root, absolutePath));
201
- // The referenceKey in build mode is the hash
202
- // Map hash -> relative file path
203
- hashToFileMap.set(meta.referenceKey, relativePath);
204
- }
205
- },
206
- // Dev mode only: transform hook runs after RSC plugin creates server references
207
- // In dev mode, IDs already contain file paths, not hashes
208
- transform(code, id) {
209
- // Skip in build mode - renderChunk handles it
210
- if (isBuild) {
211
- return;
212
- }
213
- // Quick bail-out: only process if code has createServerReference
214
- if (!code.includes("createServerReference(")) {
215
- return;
216
- }
217
- // Skip node_modules
218
- if (id.includes("/node_modules/")) {
219
- return;
220
- }
221
- // Dev mode: no hash-to-file mapping needed (IDs are already file paths)
222
- return transformServerReferences(code, id);
223
- },
224
- // Build mode: renderChunk runs after all transforms and bundling complete
225
- renderChunk(code, chunk) {
226
- // Only RSC bundle should get file paths for revalidation matching
227
- // SSR bundle must NOT use file paths because client components run there
228
- // and need to match the client bundle during hydration (otherwise: error #418)
229
- const isRscEnv = this.environment?.name === "rsc";
230
- // Only use file path mapping for RSC environment
231
- const effectiveMap = isRscEnv ? hashToFileMap : undefined;
232
- // Transform createServerReference calls (client-side)
233
- const result = transformServerReferences(code, chunk.fileName, effectiveMap);
234
- // For RSC bundles, also transform registerServerReference calls
235
- // This replaces hashed IDs with file paths so $id contains the actual path
236
- if (isRscEnv && hashToFileMap) {
237
- const codeToTransform = result ? result.code : code;
238
- const registerResult = transformRegisterServerReference(codeToTransform, chunk.fileName, hashToFileMap);
239
- if (registerResult) {
240
- return { code: registerResult.code, map: registerResult.map };
241
- }
242
- }
243
- if (result) {
244
- return { code: result.code, map: result.map };
245
- }
246
- return null;
247
- },
248
- };
249
- }
250
- //# sourceMappingURL=expose-action-id.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expose-action-id.js","sourceRoot":"","sources":["../../src/vite/expose-action-id.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAqBrD;;GAEG;AACH,SAAS,eAAe,CAAC,MAAsB;IAC7C,oBAAoB;IACpB,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;IAElE,uDAAuD;IACvD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAC1B,CAAC,CAAC,EAAE,EAAE,CACH,CAAC,CAAC,GAAgC,EAAE,OAAO,EAAE,sBAAsB;YACpE,SAAS,CACZ,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CACV,2EAA2E,MAAM,CAAC,IAAI,MAAM;gBAC1F,8DAA8D,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,MAAM,EAAE,GAA+B,CAAC;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,QAAgB;IACzC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,8EAA8E;QAC9E,MAAM,OAAO,GAAG,OAAO;aACpB,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,8BAA8B;aAChE,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,6BAA6B;aACtE,SAAS,EAAE,CAAC;QAEf,uDAAuD;QACvD,OAAO,CACL,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CACzE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CAChC,IAAY,EACZ,QAAiB,EACjB,aAAmC;IAEnC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mGAAmG;IACnG,kEAAkE;IAClE,MAAM,OAAO,GACX,kEAAkE,CAAC;IAErE,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;QAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC;QAErC,0DAA0D;QAC1D,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,aAAa,EAAE,CAAC;YAClB,uDAAuD;YACvD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;YACpD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAClD,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;gBACvC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,QAAQ,EAAE,CAAC;oBACb,8CAA8C;oBAC9C,UAAU,GAAG,IAAI,QAAQ,IAAI,UAAU,GAAG,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QAED,8EAA8E;QAC9E,MAAM,WAAW,GAAG,6BAA6B,UAAU,mBAAmB,MAAM,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC;QACzG,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;QAClB,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,gCAAgC,CACvC,IAAY,EACZ,QAAiB,EACjB,aAAmC;IAEnC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2DAA2D;IAC3D,2DAA2D;IAC3D,MAAM,OAAO,GAAG,+DAA+D,CAAC;IAEhF,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;QACnD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC;QAErC,sCAAsC;QACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,UAAU,GAAG,IAAI,CAAC;YAClB,mDAAmD;YACnD,iFAAiF;YACjF,mEAAmE;YACnE,2EAA2E;YAC3E,uCAAuC;YACvC,MAAM,UAAU,GAAG,GAAG,QAAQ,IAAI,UAAU,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,6BAA6B,UAAU,4CAA4C,KAAK,MAAM,IAAI,OAAO,UAAU,KAAK,CAAC;YAC7I,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;QAClB,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,MAAsB,CAAC;IAC3B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,aAA8C,CAAC;IACnD,IAAI,YAAsC,CAAC;IAE3C,OAAO;QACL,IAAI,EAAE,kCAAkC;QACxC,kEAAkE;QAClE,OAAO,EAAE,MAAM;QAEf,cAAc,CAAC,cAAc;YAC3B,MAAM,GAAG,cAAc,CAAC;YACxB,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC;YAErC,8DAA8D;YAC9D,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;QAED,UAAU;YACR,gFAAgF;YAChF,2EAA2E;YAC3E,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CACb,kDAAkD;oBAChD,iDAAiD;oBACjD,4EAA4E;oBAC5E,iEAAiE,CACpE,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;YAC1B,MAAM,EAAE,sBAAsB,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;YAExD,KAAK,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,sBAAsB,CACvB,EAAE,CAAC;gBACF,+CAA+C;gBAC/C,wFAAwF;gBACxF,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;oBACrC,SAAS;gBACX,CAAC;gBAED,MAAM,YAAY,GAAG,aAAa,CAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CACzC,CAAC;gBAEF,6CAA6C;gBAC7C,iCAAiC;gBACjC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAGD,gFAAgF;QAChF,0DAA0D;QAC1D,SAAS,CAAC,IAAI,EAAE,EAAE;YAChB,8CAA8C;YAC9C,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,iEAAiE;YACjE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACT,CAAC;YAED,oBAAoB;YACpB,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAClC,OAAO;YACT,CAAC;YAED,wEAAwE;YACxE,OAAO,yBAAyB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,0EAA0E;QAC1E,WAAW,CAAC,IAAI,EAAE,KAAK;YACrB,kEAAkE;YAClE,yEAAyE;YACzE,+EAA+E;YAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,KAAK,KAAK,CAAC;YAElD,iDAAiD;YACjD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAE1D,sDAAsD;YACtD,MAAM,MAAM,GAAG,yBAAyB,CACtC,IAAI,EACJ,KAAK,CAAC,QAAQ,EACd,YAAY,CACb,CAAC;YAEF,gEAAgE;YAChE,2EAA2E;YAC3E,IAAI,QAAQ,IAAI,aAAa,EAAE,CAAC;gBAC9B,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBACpD,MAAM,cAAc,GAAG,gCAAgC,CACrD,eAAe,EACf,KAAK,CAAC,QAAQ,EACd,aAAa,CACd,CAAC;gBACF,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC;gBAChE,CAAC;YACH,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;YAChD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,69 +0,0 @@
1
- /**
2
- * Normalize path to forward slashes.
3
- */
4
- export declare function normalizePath(p: string): string;
5
- /**
6
- * Generate a short hash for an ID.
7
- * Uses first 8 chars of SHA-256 hash for uniqueness while keeping IDs short.
8
- * Appends export name for easier debugging in production: "abc123#ExportName"
9
- */
10
- export declare function hashId(filePath: string, exportName: string): string;
11
- /**
12
- * Generate an 8-char hex hash for an inline static handler call site.
13
- * Uses file path and line number (plus optional index for same-line collisions).
14
- */
15
- export declare function hashInlineId(filePath: string, lineNumber: number, index?: number): string;
16
- export interface DetectedImports {
17
- loader: boolean;
18
- handle: boolean;
19
- locationState: boolean;
20
- prerenderHandler: boolean;
21
- staticHandler: boolean;
22
- router: boolean;
23
- any: boolean;
24
- }
25
- /**
26
- * Build a map from local binding name to exported names by walking
27
- * ExportNamedDeclaration nodes. Handles `export const X`, `export { X }`,
28
- * and `export { X as Y }`. Skips re-exports (`export { X } from "..."`).
29
- */
30
- export declare function buildExportMap(program: any): Map<string, string[]>;
31
- /**
32
- * Single-pass detection of all create* imports from @rangojs/router.
33
- * Returns which create functions are imported so we can skip unnecessary transforms.
34
- */
35
- export declare function detectImports(code: string): DetectedImports;
36
- /**
37
- * Skip past a string literal, template literal, or comment starting at pos.
38
- * Returns the index after the closing delimiter, or pos if not at a
39
- * string/comment start. Handles escape sequences and nested ${} in templates.
40
- */
41
- export declare function skipStringOrComment(code: string, pos: number): number;
42
- /**
43
- * Find the matching closing paren starting after an already-opened paren.
44
- * Skips strings, template literals, and comments so parens inside them
45
- * don't affect depth tracking. Returns the index after the closing paren.
46
- */
47
- export declare function findMatchingParen(code: string, startPos: number): number;
48
- /**
49
- * Count the number of top-level arguments in a function call.
50
- * Skips nested parens, brackets, braces, strings, and comments.
51
- */
52
- export declare function countArgs(code: string, startPos: number, endPos: number): number;
53
- /**
54
- * Find the end of a statement: skip whitespace and optional semicolon after
55
- * a closing paren position.
56
- */
57
- export declare function findStatementEnd(code: string, pos: number): number;
58
- /**
59
- * Simple depth-counter paren matching. Does NOT skip strings/comments.
60
- * Used by loader and handle transforms where the simpler approach suffices.
61
- * Returns the index after the closing paren.
62
- */
63
- export declare function findClosingParen(code: string, startPos: number): number;
64
- /**
65
- * Count arguments using simple depth counting (no string/comment awareness).
66
- * Used by the loader transform where the original code used this simpler approach.
67
- */
68
- export declare function countArgsSimple(code: string, startPos: number, endPos: number): number;
69
- //# sourceMappingURL=expose-id-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expose-id-utils.d.ts","sourceRoot":"","sources":["../../src/vite/expose-id-utils.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAInE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CAMR;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAqClE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CA2C3D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAuDrE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAcxE;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,MAAM,CA6BR;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CASlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CASvE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,MAAM,CAoBR"}
@@ -1,289 +0,0 @@
1
- import path from "node:path";
2
- import crypto from "node:crypto";
3
- /**
4
- * Normalize path to forward slashes.
5
- */
6
- export function normalizePath(p) {
7
- return p.split(path.sep).join("/");
8
- }
9
- /**
10
- * Generate a short hash for an ID.
11
- * Uses first 8 chars of SHA-256 hash for uniqueness while keeping IDs short.
12
- * Appends export name for easier debugging in production: "abc123#ExportName"
13
- */
14
- export function hashId(filePath, exportName) {
15
- const input = `${filePath}#${exportName}`;
16
- const hash = crypto.createHash("sha256").update(input).digest("hex");
17
- return `${hash.slice(0, 8)}#${exportName}`;
18
- }
19
- /**
20
- * Generate an 8-char hex hash for an inline static handler call site.
21
- * Uses file path and line number (plus optional index for same-line collisions).
22
- */
23
- export function hashInlineId(filePath, lineNumber, index) {
24
- const input = index !== undefined && index > 0
25
- ? `${filePath}:${lineNumber}:${index}`
26
- : `${filePath}:${lineNumber}`;
27
- return crypto.createHash("sha256").update(input).digest("hex").slice(0, 8);
28
- }
29
- /**
30
- * Build a map from local binding name to exported names by walking
31
- * ExportNamedDeclaration nodes. Handles `export const X`, `export { X }`,
32
- * and `export { X as Y }`. Skips re-exports (`export { X } from "..."`).
33
- */
34
- export function buildExportMap(program) {
35
- const exportMap = new Map();
36
- const pushExport = (local, exported) => {
37
- const list = exportMap.get(local);
38
- if (list) {
39
- if (!list.includes(exported))
40
- list.push(exported);
41
- return;
42
- }
43
- exportMap.set(local, [exported]);
44
- };
45
- for (const node of program.body ?? []) {
46
- if (node?.type !== "ExportNamedDeclaration")
47
- continue;
48
- if (node.declaration?.type === "VariableDeclaration") {
49
- for (const decl of node.declaration.declarations ?? []) {
50
- if (decl?.id?.type === "Identifier") {
51
- pushExport(decl.id.name, decl.id.name);
52
- }
53
- }
54
- }
55
- if (!node.source && Array.isArray(node.specifiers)) {
56
- for (const spec of node.specifiers) {
57
- if (spec?.type === "ExportSpecifier" &&
58
- spec.local?.type === "Identifier" &&
59
- spec.exported?.type === "Identifier") {
60
- pushExport(spec.local.name, spec.exported.name);
61
- }
62
- }
63
- }
64
- }
65
- return exportMap;
66
- }
67
- /**
68
- * Single-pass detection of all create* imports from @rangojs/router.
69
- * Returns which create functions are imported so we can skip unnecessary transforms.
70
- */
71
- export function detectImports(code) {
72
- // Extract all import declarations from @rangojs/router in one scan
73
- const importPattern = /import\s*\{([^}]*)\}\s*from\s*["']@rangojs\/router(?:\/[^"']*)?["']/g;
74
- const result = {
75
- loader: false,
76
- handle: false,
77
- locationState: false,
78
- prerenderHandler: false,
79
- staticHandler: false,
80
- router: false,
81
- any: false,
82
- };
83
- let match;
84
- while ((match = importPattern.exec(code)) !== null) {
85
- const imports = match[1];
86
- if (/\bcreateLoader\b/.test(imports))
87
- result.loader = true;
88
- if (/\bcreateHandle\b/.test(imports))
89
- result.handle = true;
90
- if (/\bcreateLocationState\b/.test(imports))
91
- result.locationState = true;
92
- if (/\bPrerender\b/.test(imports))
93
- result.prerenderHandler = true;
94
- if (/\bStatic\b/.test(imports))
95
- result.staticHandler = true;
96
- if (/\bcreateRouter\b/.test(imports))
97
- result.router = true;
98
- }
99
- // createRouter has a stricter check: only from "@rangojs/router" (not sub-paths)
100
- if (result.router) {
101
- result.router =
102
- /import\s*\{[^}]*\bcreateRouter\b[^}]*\}\s*from\s*["']@rangojs\/router["']/.test(code);
103
- }
104
- result.any =
105
- result.loader ||
106
- result.handle ||
107
- result.locationState ||
108
- result.prerenderHandler ||
109
- result.staticHandler ||
110
- result.router;
111
- return result;
112
- }
113
- /**
114
- * Skip past a string literal, template literal, or comment starting at pos.
115
- * Returns the index after the closing delimiter, or pos if not at a
116
- * string/comment start. Handles escape sequences and nested ${} in templates.
117
- */
118
- export function skipStringOrComment(code, pos) {
119
- const ch = code[pos];
120
- if (ch === '"' || ch === "'") {
121
- for (let j = pos + 1; j < code.length; j++) {
122
- if (code[j] === "\\") {
123
- j++;
124
- continue;
125
- }
126
- if (code[j] === ch)
127
- return j + 1;
128
- }
129
- return code.length;
130
- }
131
- if (ch === "`") {
132
- let j = pos + 1;
133
- while (j < code.length) {
134
- if (code[j] === "\\") {
135
- j += 2;
136
- continue;
137
- }
138
- if (code[j] === "`")
139
- return j + 1;
140
- if (code[j] === "$" && j + 1 < code.length && code[j + 1] === "{") {
141
- j += 2;
142
- let braceDepth = 1;
143
- while (j < code.length && braceDepth > 0) {
144
- const inner = skipStringOrComment(code, j);
145
- if (inner > j) {
146
- j = inner;
147
- continue;
148
- }
149
- if (code[j] === "{")
150
- braceDepth++;
151
- else if (code[j] === "}")
152
- braceDepth--;
153
- if (braceDepth > 0)
154
- j++;
155
- }
156
- if (braceDepth === 0)
157
- j++;
158
- continue;
159
- }
160
- j++;
161
- }
162
- return j;
163
- }
164
- if (ch === "/" && pos + 1 < code.length) {
165
- if (code[pos + 1] === "/") {
166
- const eol = code.indexOf("\n", pos + 2);
167
- return eol === -1 ? code.length : eol + 1;
168
- }
169
- if (code[pos + 1] === "*") {
170
- const end = code.indexOf("*/", pos + 2);
171
- return end === -1 ? code.length : end + 2;
172
- }
173
- }
174
- return pos;
175
- }
176
- /**
177
- * Find the matching closing paren starting after an already-opened paren.
178
- * Skips strings, template literals, and comments so parens inside them
179
- * don't affect depth tracking. Returns the index after the closing paren.
180
- */
181
- export function findMatchingParen(code, startPos) {
182
- let depth = 1;
183
- let i = startPos;
184
- while (i < code.length && depth > 0) {
185
- const skipped = skipStringOrComment(code, i);
186
- if (skipped > i) {
187
- i = skipped;
188
- continue;
189
- }
190
- if (code[i] === "(")
191
- depth++;
192
- if (code[i] === ")")
193
- depth--;
194
- i++;
195
- }
196
- return i;
197
- }
198
- /**
199
- * Count the number of top-level arguments in a function call.
200
- * Skips nested parens, brackets, braces, strings, and comments.
201
- */
202
- export function countArgs(code, startPos, endPos) {
203
- let depth = 0;
204
- let argCount = 0;
205
- let hasContent = false;
206
- let i = startPos;
207
- while (i < endPos) {
208
- const skipped = skipStringOrComment(code, i);
209
- if (skipped > i) {
210
- hasContent = true;
211
- i = skipped;
212
- continue;
213
- }
214
- const char = code[i];
215
- if (char === "(" || char === "[" || char === "{") {
216
- depth++;
217
- hasContent = true;
218
- }
219
- else if (char === ")" || char === "]" || char === "}") {
220
- depth--;
221
- }
222
- else if (char === "," && depth === 0) {
223
- argCount++;
224
- }
225
- else if (!/\s/.test(char)) {
226
- hasContent = true;
227
- }
228
- i++;
229
- }
230
- return hasContent ? argCount + 1 : 0;
231
- }
232
- /**
233
- * Find the end of a statement: skip whitespace and optional semicolon after
234
- * a closing paren position.
235
- */
236
- export function findStatementEnd(code, pos) {
237
- let i = pos;
238
- while (i < code.length && /\s/.test(code[i])) {
239
- i++;
240
- }
241
- if (i < code.length && code[i] === ";") {
242
- i++;
243
- }
244
- return i;
245
- }
246
- /**
247
- * Simple depth-counter paren matching. Does NOT skip strings/comments.
248
- * Used by loader and handle transforms where the simpler approach suffices.
249
- * Returns the index after the closing paren.
250
- */
251
- export function findClosingParen(code, startPos) {
252
- let depth = 1;
253
- let i = startPos;
254
- while (i < code.length && depth > 0) {
255
- if (code[i] === "(")
256
- depth++;
257
- if (code[i] === ")")
258
- depth--;
259
- i++;
260
- }
261
- return i;
262
- }
263
- /**
264
- * Count arguments using simple depth counting (no string/comment awareness).
265
- * Used by the loader transform where the original code used this simpler approach.
266
- */
267
- export function countArgsSimple(code, startPos, endPos) {
268
- let depth = 0;
269
- let argCount = 0;
270
- let hasContent = false;
271
- for (let i = startPos; i < endPos; i++) {
272
- const char = code[i];
273
- if (char === "(" || char === "[" || char === "{") {
274
- depth++;
275
- hasContent = true;
276
- }
277
- else if (char === ")" || char === "]" || char === "}") {
278
- depth--;
279
- }
280
- else if (char === "," && depth === 0) {
281
- argCount++;
282
- }
283
- else if (!/\s/.test(char)) {
284
- hasContent = true;
285
- }
286
- }
287
- return hasContent ? argCount + 1 : 0;
288
- }
289
- //# sourceMappingURL=expose-id-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expose-id-utils.js","sourceRoot":"","sources":["../../src/vite/expose-id-utils.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import type { Plugin } from "vite";
2
- export interface ExposeInternalIdsApi {
3
- /** Tracks absolute module IDs that contain prerender handler exports.
4
- * key: absolute module ID (filesystem path)
5
- * value: array of export names (e.g., ["ArticlesIndex", "ArticleDetail"]) */
6
- prerenderHandlerModules: Map<string, string[]>;
7
- /** Tracks absolute module IDs that contain static handler exports.
8
- * key: absolute module ID (filesystem path)
9
- * value: array of export names (e.g., ["DocsNav", "DocShell"]) */
10
- staticHandlerModules: Map<string, string[]>;
11
- }
12
- /**
13
- * Inject stable $$id into createRouter() calls at compile time.
14
- * This must be a separate plugin without enforce:"post" because running
15
- * at "post" priority changes Vite's dep optimization timing and can cause
16
- * ERR_OUTDATED_OPTIMIZED_DEP / React dual-instance issues.
17
- */
18
- export declare function exposeRouterId(): Plugin;
19
- export declare function exposeInternalIds(options?: {
20
- forceBuild?: boolean;
21
- }): Plugin;
22
- //# sourceMappingURL=expose-internal-ids.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expose-internal-ids.d.ts","sourceRoot":"","sources":["../../src/vite/expose-internal-ids.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,MAAM,CAAC;AA8VnD,MAAM,WAAW,oBAAoB;IACnC;;kFAE8E;IAC9E,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/C;;uEAEmE;IACnE,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAC7C;AA0UD;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAuBvC;AAMD,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,MAAM,CAwbT"}