@rangojs/router 0.10.0 → 0.10.1

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 (833) hide show
  1. package/AGENTS.md +1 -1
  2. package/LICENSE +21 -0
  3. package/README.md +17 -15
  4. package/dist/types/cache/cf/cf-cache-constants.d.ts +1 -1
  5. package/dist/types/cache/cf/cf-cache-store.d.ts +1 -1
  6. package/dist/types/rsc/shell-capture-constants.d.ts +1 -1
  7. package/dist/vite/index.js +6 -5
  8. package/package.json +6 -5
  9. package/skills/bundle-analysis/SKILL.md +1 -1
  10. package/skills/testing/SKILL.md +1 -1
  11. package/skills/testing/bindings.md +1 -1
  12. package/skills/testing/cache-prerender.md +1 -1
  13. package/skills/testing/client-components.md +1 -1
  14. package/skills/testing/e2e-parity.md +1 -1
  15. package/skills/testing/flight.md +1 -1
  16. package/skills/testing/handles.md +1 -1
  17. package/skills/testing/loader.md +1 -1
  18. package/skills/testing/middleware.md +1 -1
  19. package/skills/testing/render-handler.md +1 -1
  20. package/skills/testing/response-routes.md +1 -1
  21. package/skills/testing/reverse-and-types.md +1 -1
  22. package/skills/testing/server-actions.md +1 -1
  23. package/skills/testing/server-tree.md +1 -1
  24. package/skills/testing/setup.md +1 -1
  25. package/src/cache/cache-runtime.ts +2 -2
  26. package/src/cache/cf/cf-cache-constants.ts +1 -1
  27. package/src/cache/cf/cf-cache-store.ts +1 -1
  28. package/src/rsc/shell-capture-constants.ts +1 -1
  29. package/src/rsc/shell-capture.ts +2 -2
  30. package/dist/__internal.d.ts +0 -83
  31. package/dist/__internal.d.ts.map +0 -1
  32. package/dist/__internal.js +0 -19
  33. package/dist/__internal.js.map +0 -1
  34. package/dist/__mocks__/version.d.ts +0 -7
  35. package/dist/__mocks__/version.d.ts.map +0 -1
  36. package/dist/__mocks__/version.js +0 -7
  37. package/dist/__mocks__/version.js.map +0 -1
  38. package/dist/__tests__/client-href.test.d.ts +0 -2
  39. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  40. package/dist/__tests__/client-href.test.js +0 -74
  41. package/dist/__tests__/client-href.test.js.map +0 -1
  42. package/dist/__tests__/component-utils.test.d.ts +0 -2
  43. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  44. package/dist/__tests__/component-utils.test.js +0 -51
  45. package/dist/__tests__/component-utils.test.js.map +0 -1
  46. package/dist/__tests__/event-controller.test.d.ts +0 -2
  47. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  48. package/dist/__tests__/event-controller.test.js +0 -538
  49. package/dist/__tests__/event-controller.test.js.map +0 -1
  50. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  51. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  52. package/dist/__tests__/helpers/route-tree.js +0 -374
  53. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  54. package/dist/__tests__/match-result.test.d.ts +0 -2
  55. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  56. package/dist/__tests__/match-result.test.js +0 -154
  57. package/dist/__tests__/match-result.test.js.map +0 -1
  58. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  59. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  60. package/dist/__tests__/navigation-store.test.js +0 -440
  61. package/dist/__tests__/navigation-store.test.js.map +0 -1
  62. package/dist/__tests__/partial-update.test.d.ts +0 -2
  63. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  64. package/dist/__tests__/partial-update.test.js +0 -1009
  65. package/dist/__tests__/partial-update.test.js.map +0 -1
  66. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  67. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  68. package/dist/__tests__/reverse-types.test.js +0 -656
  69. package/dist/__tests__/reverse-types.test.js.map +0 -1
  70. package/dist/__tests__/route-definition.test.d.ts +0 -2
  71. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  72. package/dist/__tests__/route-definition.test.js +0 -55
  73. package/dist/__tests__/route-definition.test.js.map +0 -1
  74. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  75. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  76. package/dist/__tests__/router-helpers.test.js +0 -377
  77. package/dist/__tests__/router-helpers.test.js.map +0 -1
  78. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  79. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  80. package/dist/__tests__/router-integration-2.test.js +0 -426
  81. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  82. package/dist/__tests__/router-integration.test.d.ts +0 -2
  83. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  84. package/dist/__tests__/router-integration.test.js +0 -1051
  85. package/dist/__tests__/router-integration.test.js.map +0 -1
  86. package/dist/__tests__/search-params.test.d.ts +0 -5
  87. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  88. package/dist/__tests__/search-params.test.js +0 -306
  89. package/dist/__tests__/search-params.test.js.map +0 -1
  90. package/dist/__tests__/segment-system.test.d.ts +0 -2
  91. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  92. package/dist/__tests__/segment-system.test.js +0 -627
  93. package/dist/__tests__/segment-system.test.js.map +0 -1
  94. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  95. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  96. package/dist/__tests__/static-handler-types.test.js +0 -63
  97. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  98. package/dist/__tests__/urls.test.d.ts +0 -2
  99. package/dist/__tests__/urls.test.d.ts.map +0 -1
  100. package/dist/__tests__/urls.test.js +0 -421
  101. package/dist/__tests__/urls.test.js.map +0 -1
  102. package/dist/__tests__/use-mount.test.d.ts +0 -2
  103. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  104. package/dist/__tests__/use-mount.test.js +0 -35
  105. package/dist/__tests__/use-mount.test.js.map +0 -1
  106. package/dist/bin/rango.d.ts +0 -2
  107. package/dist/bin/rango.d.ts.map +0 -1
  108. package/dist/bin/rango.js.map +0 -1
  109. package/dist/browser/event-controller.d.ts +0 -191
  110. package/dist/browser/event-controller.d.ts.map +0 -1
  111. package/dist/browser/event-controller.js +0 -559
  112. package/dist/browser/event-controller.js.map +0 -1
  113. package/dist/browser/index.d.ts +0 -2
  114. package/dist/browser/index.d.ts.map +0 -1
  115. package/dist/browser/index.js +0 -14
  116. package/dist/browser/index.js.map +0 -1
  117. package/dist/browser/link-interceptor.d.ts +0 -38
  118. package/dist/browser/link-interceptor.d.ts.map +0 -1
  119. package/dist/browser/link-interceptor.js +0 -99
  120. package/dist/browser/link-interceptor.js.map +0 -1
  121. package/dist/browser/logging.d.ts +0 -10
  122. package/dist/browser/logging.d.ts.map +0 -1
  123. package/dist/browser/logging.js +0 -29
  124. package/dist/browser/logging.js.map +0 -1
  125. package/dist/browser/lru-cache.d.ts +0 -17
  126. package/dist/browser/lru-cache.d.ts.map +0 -1
  127. package/dist/browser/lru-cache.js +0 -50
  128. package/dist/browser/lru-cache.js.map +0 -1
  129. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  130. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  131. package/dist/browser/merge-segment-loaders.js +0 -102
  132. package/dist/browser/merge-segment-loaders.js.map +0 -1
  133. package/dist/browser/navigation-bridge.d.ts +0 -102
  134. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  135. package/dist/browser/navigation-bridge.js +0 -708
  136. package/dist/browser/navigation-bridge.js.map +0 -1
  137. package/dist/browser/navigation-client.d.ts +0 -25
  138. package/dist/browser/navigation-client.d.ts.map +0 -1
  139. package/dist/browser/navigation-client.js +0 -157
  140. package/dist/browser/navigation-client.js.map +0 -1
  141. package/dist/browser/navigation-store.d.ts +0 -101
  142. package/dist/browser/navigation-store.d.ts.map +0 -1
  143. package/dist/browser/navigation-store.js +0 -625
  144. package/dist/browser/navigation-store.js.map +0 -1
  145. package/dist/browser/partial-update.d.ts +0 -75
  146. package/dist/browser/partial-update.d.ts.map +0 -1
  147. package/dist/browser/partial-update.js +0 -426
  148. package/dist/browser/partial-update.js.map +0 -1
  149. package/dist/browser/react/Link.d.ts +0 -86
  150. package/dist/browser/react/Link.d.ts.map +0 -1
  151. package/dist/browser/react/Link.js +0 -128
  152. package/dist/browser/react/Link.js.map +0 -1
  153. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  154. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  155. package/dist/browser/react/NavigationProvider.js +0 -216
  156. package/dist/browser/react/NavigationProvider.js.map +0 -1
  157. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  158. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  159. package/dist/browser/react/ScrollRestoration.js +0 -57
  160. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  161. package/dist/browser/react/context.d.ts +0 -46
  162. package/dist/browser/react/context.d.ts.map +0 -1
  163. package/dist/browser/react/context.js +0 -10
  164. package/dist/browser/react/context.js.map +0 -1
  165. package/dist/browser/react/index.d.ts +0 -11
  166. package/dist/browser/react/index.d.ts.map +0 -1
  167. package/dist/browser/react/index.js +0 -22
  168. package/dist/browser/react/index.js.map +0 -1
  169. package/dist/browser/react/location-state-shared.d.ts +0 -63
  170. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  171. package/dist/browser/react/location-state-shared.js +0 -81
  172. package/dist/browser/react/location-state-shared.js.map +0 -1
  173. package/dist/browser/react/location-state.d.ts +0 -23
  174. package/dist/browser/react/location-state.d.ts.map +0 -1
  175. package/dist/browser/react/location-state.js +0 -29
  176. package/dist/browser/react/location-state.js.map +0 -1
  177. package/dist/browser/react/mount-context.d.ts +0 -24
  178. package/dist/browser/react/mount-context.d.ts.map +0 -1
  179. package/dist/browser/react/mount-context.js +0 -24
  180. package/dist/browser/react/mount-context.js.map +0 -1
  181. package/dist/browser/react/use-action.d.ts +0 -64
  182. package/dist/browser/react/use-action.d.ts.map +0 -1
  183. package/dist/browser/react/use-action.js +0 -134
  184. package/dist/browser/react/use-action.js.map +0 -1
  185. package/dist/browser/react/use-client-cache.d.ts +0 -41
  186. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  187. package/dist/browser/react/use-client-cache.js +0 -39
  188. package/dist/browser/react/use-client-cache.js.map +0 -1
  189. package/dist/browser/react/use-handle.d.ts +0 -31
  190. package/dist/browser/react/use-handle.d.ts.map +0 -1
  191. package/dist/browser/react/use-handle.js +0 -144
  192. package/dist/browser/react/use-handle.js.map +0 -1
  193. package/dist/browser/react/use-href.d.ts +0 -33
  194. package/dist/browser/react/use-href.d.ts.map +0 -1
  195. package/dist/browser/react/use-href.js +0 -39
  196. package/dist/browser/react/use-href.js.map +0 -1
  197. package/dist/browser/react/use-link-status.d.ts +0 -37
  198. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  199. package/dist/browser/react/use-link-status.js +0 -99
  200. package/dist/browser/react/use-link-status.js.map +0 -1
  201. package/dist/browser/react/use-mount.d.ts +0 -25
  202. package/dist/browser/react/use-mount.d.ts.map +0 -1
  203. package/dist/browser/react/use-mount.js +0 -30
  204. package/dist/browser/react/use-mount.js.map +0 -1
  205. package/dist/browser/react/use-navigation.d.ts +0 -27
  206. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  207. package/dist/browser/react/use-navigation.js +0 -87
  208. package/dist/browser/react/use-navigation.js.map +0 -1
  209. package/dist/browser/react/use-segments.d.ts +0 -38
  210. package/dist/browser/react/use-segments.d.ts.map +0 -1
  211. package/dist/browser/react/use-segments.js +0 -130
  212. package/dist/browser/react/use-segments.js.map +0 -1
  213. package/dist/browser/request-controller.d.ts +0 -26
  214. package/dist/browser/request-controller.d.ts.map +0 -1
  215. package/dist/browser/request-controller.js +0 -147
  216. package/dist/browser/request-controller.js.map +0 -1
  217. package/dist/browser/rsc-router.d.ts +0 -129
  218. package/dist/browser/rsc-router.d.ts.map +0 -1
  219. package/dist/browser/rsc-router.js +0 -195
  220. package/dist/browser/rsc-router.js.map +0 -1
  221. package/dist/browser/scroll-restoration.d.ts +0 -93
  222. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  223. package/dist/browser/scroll-restoration.js +0 -321
  224. package/dist/browser/scroll-restoration.js.map +0 -1
  225. package/dist/browser/segment-structure-assert.d.ts +0 -17
  226. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  227. package/dist/browser/segment-structure-assert.js +0 -59
  228. package/dist/browser/segment-structure-assert.js.map +0 -1
  229. package/dist/browser/server-action-bridge.d.ts +0 -26
  230. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  231. package/dist/browser/server-action-bridge.js +0 -668
  232. package/dist/browser/server-action-bridge.js.map +0 -1
  233. package/dist/browser/shallow.d.ts +0 -12
  234. package/dist/browser/shallow.d.ts.map +0 -1
  235. package/dist/browser/shallow.js +0 -34
  236. package/dist/browser/shallow.js.map +0 -1
  237. package/dist/browser/types.d.ts +0 -369
  238. package/dist/browser/types.d.ts.map +0 -1
  239. package/dist/browser/types.js +0 -2
  240. package/dist/browser/types.js.map +0 -1
  241. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  242. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  243. package/dist/build/__tests__/generate-cli.test.js +0 -237
  244. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  245. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  246. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  247. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  248. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  249. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  250. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  251. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  252. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  253. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  254. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  255. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  256. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  257. package/dist/build/generate-manifest.d.ts +0 -81
  258. package/dist/build/generate-manifest.d.ts.map +0 -1
  259. package/dist/build/generate-manifest.js +0 -276
  260. package/dist/build/generate-manifest.js.map +0 -1
  261. package/dist/build/generate-route-types.d.ts +0 -115
  262. package/dist/build/generate-route-types.d.ts.map +0 -1
  263. package/dist/build/generate-route-types.js +0 -740
  264. package/dist/build/generate-route-types.js.map +0 -1
  265. package/dist/build/index.d.ts +0 -21
  266. package/dist/build/index.d.ts.map +0 -1
  267. package/dist/build/index.js +0 -21
  268. package/dist/build/index.js.map +0 -1
  269. package/dist/build/route-trie.d.ts +0 -71
  270. package/dist/build/route-trie.d.ts.map +0 -1
  271. package/dist/build/route-trie.js +0 -175
  272. package/dist/build/route-trie.js.map +0 -1
  273. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  274. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  275. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  276. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  277. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  278. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  279. package/dist/cache/__tests__/document-cache.test.js +0 -345
  280. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  281. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  282. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  283. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  284. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  285. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  286. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  287. package/dist/cache/__tests__/memory-store.test.js +0 -367
  288. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  289. package/dist/cache/cache-scope.d.ts +0 -102
  290. package/dist/cache/cache-scope.d.ts.map +0 -1
  291. package/dist/cache/cache-scope.js +0 -440
  292. package/dist/cache/cache-scope.js.map +0 -1
  293. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  294. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  295. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  296. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  297. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  298. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  299. package/dist/cache/cf/cf-cache-store.js +0 -242
  300. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  301. package/dist/cache/cf/index.d.ts +0 -14
  302. package/dist/cache/cf/index.d.ts.map +0 -1
  303. package/dist/cache/cf/index.js +0 -17
  304. package/dist/cache/cf/index.js.map +0 -1
  305. package/dist/cache/document-cache.d.ts +0 -64
  306. package/dist/cache/document-cache.d.ts.map +0 -1
  307. package/dist/cache/document-cache.js +0 -228
  308. package/dist/cache/document-cache.js.map +0 -1
  309. package/dist/cache/index.d.ts +0 -19
  310. package/dist/cache/index.d.ts.map +0 -1
  311. package/dist/cache/index.js +0 -21
  312. package/dist/cache/index.js.map +0 -1
  313. package/dist/cache/memory-segment-store.d.ts +0 -110
  314. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  315. package/dist/cache/memory-segment-store.js +0 -117
  316. package/dist/cache/memory-segment-store.js.map +0 -1
  317. package/dist/cache/memory-store.d.ts +0 -41
  318. package/dist/cache/memory-store.d.ts.map +0 -1
  319. package/dist/cache/memory-store.js +0 -191
  320. package/dist/cache/memory-store.js.map +0 -1
  321. package/dist/cache/types.d.ts +0 -317
  322. package/dist/cache/types.d.ts.map +0 -1
  323. package/dist/cache/types.js +0 -12
  324. package/dist/cache/types.js.map +0 -1
  325. package/dist/client.d.ts +0 -248
  326. package/dist/client.d.ts.map +0 -1
  327. package/dist/client.js +0 -367
  328. package/dist/client.js.map +0 -1
  329. package/dist/client.rsc.d.ts +0 -26
  330. package/dist/client.rsc.d.ts.map +0 -1
  331. package/dist/client.rsc.js +0 -46
  332. package/dist/client.rsc.js.map +0 -1
  333. package/dist/component-utils.d.ts +0 -36
  334. package/dist/component-utils.d.ts.map +0 -1
  335. package/dist/component-utils.js +0 -61
  336. package/dist/component-utils.js.map +0 -1
  337. package/dist/components/DefaultDocument.d.ts +0 -13
  338. package/dist/components/DefaultDocument.d.ts.map +0 -1
  339. package/dist/components/DefaultDocument.js +0 -15
  340. package/dist/components/DefaultDocument.js.map +0 -1
  341. package/dist/debug.d.ts +0 -58
  342. package/dist/debug.d.ts.map +0 -1
  343. package/dist/debug.js +0 -157
  344. package/dist/debug.js.map +0 -1
  345. package/dist/default-error-boundary.d.ts +0 -11
  346. package/dist/default-error-boundary.d.ts.map +0 -1
  347. package/dist/default-error-boundary.js +0 -45
  348. package/dist/default-error-boundary.js.map +0 -1
  349. package/dist/deps/browser.d.ts +0 -2
  350. package/dist/deps/browser.d.ts.map +0 -1
  351. package/dist/deps/browser.js +0 -3
  352. package/dist/deps/browser.js.map +0 -1
  353. package/dist/deps/html-stream-client.d.ts +0 -2
  354. package/dist/deps/html-stream-client.d.ts.map +0 -1
  355. package/dist/deps/html-stream-client.js +0 -3
  356. package/dist/deps/html-stream-client.js.map +0 -1
  357. package/dist/deps/html-stream-server.d.ts +0 -2
  358. package/dist/deps/html-stream-server.d.ts.map +0 -1
  359. package/dist/deps/html-stream-server.js +0 -3
  360. package/dist/deps/html-stream-server.js.map +0 -1
  361. package/dist/deps/rsc.d.ts +0 -2
  362. package/dist/deps/rsc.d.ts.map +0 -1
  363. package/dist/deps/rsc.js +0 -4
  364. package/dist/deps/rsc.js.map +0 -1
  365. package/dist/deps/ssr.d.ts +0 -2
  366. package/dist/deps/ssr.d.ts.map +0 -1
  367. package/dist/deps/ssr.js +0 -3
  368. package/dist/deps/ssr.js.map +0 -1
  369. package/dist/errors.d.ts +0 -174
  370. package/dist/errors.d.ts.map +0 -1
  371. package/dist/errors.js +0 -241
  372. package/dist/errors.js.map +0 -1
  373. package/dist/handle.d.ts +0 -78
  374. package/dist/handle.d.ts.map +0 -1
  375. package/dist/handle.js +0 -82
  376. package/dist/handle.js.map +0 -1
  377. package/dist/handles/MetaTags.d.ts +0 -14
  378. package/dist/handles/MetaTags.d.ts.map +0 -1
  379. package/dist/handles/MetaTags.js +0 -136
  380. package/dist/handles/MetaTags.js.map +0 -1
  381. package/dist/handles/index.d.ts +0 -6
  382. package/dist/handles/index.d.ts.map +0 -1
  383. package/dist/handles/index.js +0 -6
  384. package/dist/handles/index.js.map +0 -1
  385. package/dist/handles/meta.d.ts +0 -39
  386. package/dist/handles/meta.d.ts.map +0 -1
  387. package/dist/handles/meta.js +0 -202
  388. package/dist/handles/meta.js.map +0 -1
  389. package/dist/host/__tests__/errors.test.d.ts +0 -2
  390. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  391. package/dist/host/__tests__/errors.test.js +0 -76
  392. package/dist/host/__tests__/errors.test.js.map +0 -1
  393. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  394. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  395. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  396. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  397. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  398. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  399. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  400. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  401. package/dist/host/__tests__/router.test.d.ts +0 -2
  402. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  403. package/dist/host/__tests__/router.test.js +0 -241
  404. package/dist/host/__tests__/router.test.js.map +0 -1
  405. package/dist/host/__tests__/testing.test.d.ts +0 -2
  406. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  407. package/dist/host/__tests__/testing.test.js +0 -64
  408. package/dist/host/__tests__/testing.test.js.map +0 -1
  409. package/dist/host/__tests__/utils.test.d.ts +0 -2
  410. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  411. package/dist/host/__tests__/utils.test.js +0 -29
  412. package/dist/host/__tests__/utils.test.js.map +0 -1
  413. package/dist/host/cookie-handler.d.ts +0 -34
  414. package/dist/host/cookie-handler.d.ts.map +0 -1
  415. package/dist/host/cookie-handler.js +0 -124
  416. package/dist/host/cookie-handler.js.map +0 -1
  417. package/dist/host/errors.d.ts +0 -56
  418. package/dist/host/errors.d.ts.map +0 -1
  419. package/dist/host/errors.js +0 -79
  420. package/dist/host/errors.js.map +0 -1
  421. package/dist/host/index.d.ts +0 -29
  422. package/dist/host/index.d.ts.map +0 -1
  423. package/dist/host/index.js +0 -32
  424. package/dist/host/index.js.map +0 -1
  425. package/dist/host/pattern-matcher.d.ts +0 -36
  426. package/dist/host/pattern-matcher.d.ts.map +0 -1
  427. package/dist/host/pattern-matcher.js +0 -172
  428. package/dist/host/pattern-matcher.js.map +0 -1
  429. package/dist/host/router.d.ts +0 -26
  430. package/dist/host/router.d.ts.map +0 -1
  431. package/dist/host/router.js +0 -218
  432. package/dist/host/router.js.map +0 -1
  433. package/dist/host/testing.d.ts +0 -36
  434. package/dist/host/testing.d.ts.map +0 -1
  435. package/dist/host/testing.js +0 -55
  436. package/dist/host/testing.js.map +0 -1
  437. package/dist/host/types.d.ts +0 -115
  438. package/dist/host/types.d.ts.map +0 -1
  439. package/dist/host/types.js +0 -7
  440. package/dist/host/types.js.map +0 -1
  441. package/dist/host/utils.d.ts +0 -21
  442. package/dist/host/utils.d.ts.map +0 -1
  443. package/dist/host/utils.js +0 -23
  444. package/dist/host/utils.js.map +0 -1
  445. package/dist/href-client.d.ts +0 -131
  446. package/dist/href-client.d.ts.map +0 -1
  447. package/dist/href-client.js +0 -64
  448. package/dist/href-client.js.map +0 -1
  449. package/dist/href-context.d.ts +0 -29
  450. package/dist/href-context.d.ts.map +0 -1
  451. package/dist/href-context.js +0 -21
  452. package/dist/href-context.js.map +0 -1
  453. package/dist/index.d.ts +0 -73
  454. package/dist/index.d.ts.map +0 -1
  455. package/dist/index.js +0 -91
  456. package/dist/index.js.map +0 -1
  457. package/dist/index.rsc.d.ts +0 -32
  458. package/dist/index.rsc.d.ts.map +0 -1
  459. package/dist/index.rsc.js +0 -40
  460. package/dist/index.rsc.js.map +0 -1
  461. package/dist/internal-debug.d.ts +0 -2
  462. package/dist/internal-debug.d.ts.map +0 -1
  463. package/dist/internal-debug.js +0 -5
  464. package/dist/internal-debug.js.map +0 -1
  465. package/dist/loader.d.ts +0 -14
  466. package/dist/loader.d.ts.map +0 -1
  467. package/dist/loader.js +0 -20
  468. package/dist/loader.js.map +0 -1
  469. package/dist/loader.rsc.d.ts +0 -19
  470. package/dist/loader.rsc.d.ts.map +0 -1
  471. package/dist/loader.rsc.js +0 -99
  472. package/dist/loader.rsc.js.map +0 -1
  473. package/dist/network-error-thrower.d.ts +0 -17
  474. package/dist/network-error-thrower.d.ts.map +0 -1
  475. package/dist/network-error-thrower.js +0 -14
  476. package/dist/network-error-thrower.js.map +0 -1
  477. package/dist/outlet-context.d.ts +0 -13
  478. package/dist/outlet-context.d.ts.map +0 -1
  479. package/dist/outlet-context.js +0 -3
  480. package/dist/outlet-context.js.map +0 -1
  481. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  482. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  483. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  484. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  485. package/dist/prerender/param-hash.d.ts +0 -16
  486. package/dist/prerender/param-hash.d.ts.map +0 -1
  487. package/dist/prerender/param-hash.js +0 -36
  488. package/dist/prerender/param-hash.js.map +0 -1
  489. package/dist/prerender/store.d.ts +0 -38
  490. package/dist/prerender/store.d.ts.map +0 -1
  491. package/dist/prerender/store.js +0 -61
  492. package/dist/prerender/store.js.map +0 -1
  493. package/dist/prerender.d.ts +0 -66
  494. package/dist/prerender.d.ts.map +0 -1
  495. package/dist/prerender.js +0 -57
  496. package/dist/prerender.js.map +0 -1
  497. package/dist/reverse.d.ts +0 -196
  498. package/dist/reverse.d.ts.map +0 -1
  499. package/dist/reverse.js +0 -78
  500. package/dist/reverse.js.map +0 -1
  501. package/dist/root-error-boundary.d.ts +0 -33
  502. package/dist/root-error-boundary.d.ts.map +0 -1
  503. package/dist/root-error-boundary.js +0 -165
  504. package/dist/root-error-boundary.js.map +0 -1
  505. package/dist/route-content-wrapper.d.ts +0 -46
  506. package/dist/route-content-wrapper.d.ts.map +0 -1
  507. package/dist/route-content-wrapper.js +0 -77
  508. package/dist/route-content-wrapper.js.map +0 -1
  509. package/dist/route-definition.d.ts +0 -421
  510. package/dist/route-definition.d.ts.map +0 -1
  511. package/dist/route-definition.js +0 -868
  512. package/dist/route-definition.js.map +0 -1
  513. package/dist/route-map-builder.d.ts +0 -155
  514. package/dist/route-map-builder.d.ts.map +0 -1
  515. package/dist/route-map-builder.js +0 -237
  516. package/dist/route-map-builder.js.map +0 -1
  517. package/dist/route-types.d.ts +0 -165
  518. package/dist/route-types.d.ts.map +0 -1
  519. package/dist/route-types.js +0 -7
  520. package/dist/route-types.js.map +0 -1
  521. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  522. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  523. package/dist/router/__tests__/handler-context.test.js +0 -65
  524. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  525. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  526. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  527. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  528. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  529. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  530. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  531. package/dist/router/__tests__/match-context.test.js +0 -92
  532. package/dist/router/__tests__/match-context.test.js.map +0 -1
  533. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  534. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  535. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  536. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  537. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  538. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  539. package/dist/router/__tests__/match-result.test.js +0 -457
  540. package/dist/router/__tests__/match-result.test.js.map +0 -1
  541. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  542. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  543. package/dist/router/__tests__/on-error.test.js +0 -678
  544. package/dist/router/__tests__/on-error.test.js.map +0 -1
  545. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  546. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  547. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  548. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  549. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  550. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  551. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  552. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  553. package/dist/router/error-handling.d.ts +0 -77
  554. package/dist/router/error-handling.d.ts.map +0 -1
  555. package/dist/router/error-handling.js +0 -202
  556. package/dist/router/error-handling.js.map +0 -1
  557. package/dist/router/handler-context.d.ts +0 -20
  558. package/dist/router/handler-context.d.ts.map +0 -1
  559. package/dist/router/handler-context.js +0 -198
  560. package/dist/router/handler-context.js.map +0 -1
  561. package/dist/router/intercept-resolution.d.ts +0 -66
  562. package/dist/router/intercept-resolution.d.ts.map +0 -1
  563. package/dist/router/intercept-resolution.js +0 -246
  564. package/dist/router/intercept-resolution.js.map +0 -1
  565. package/dist/router/loader-resolution.d.ts +0 -64
  566. package/dist/router/loader-resolution.d.ts.map +0 -1
  567. package/dist/router/loader-resolution.js +0 -284
  568. package/dist/router/loader-resolution.js.map +0 -1
  569. package/dist/router/logging.d.ts +0 -15
  570. package/dist/router/logging.d.ts.map +0 -1
  571. package/dist/router/logging.js +0 -99
  572. package/dist/router/logging.js.map +0 -1
  573. package/dist/router/manifest.d.ts +0 -22
  574. package/dist/router/manifest.d.ts.map +0 -1
  575. package/dist/router/manifest.js +0 -181
  576. package/dist/router/manifest.js.map +0 -1
  577. package/dist/router/match-api.d.ts +0 -35
  578. package/dist/router/match-api.d.ts.map +0 -1
  579. package/dist/router/match-api.js +0 -406
  580. package/dist/router/match-api.js.map +0 -1
  581. package/dist/router/match-context.d.ts +0 -206
  582. package/dist/router/match-context.d.ts.map +0 -1
  583. package/dist/router/match-context.js +0 -17
  584. package/dist/router/match-context.js.map +0 -1
  585. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  586. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  587. package/dist/router/match-middleware/background-revalidation.js +0 -75
  588. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  589. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  590. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  591. package/dist/router/match-middleware/cache-lookup.js +0 -257
  592. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  593. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  594. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  595. package/dist/router/match-middleware/cache-store.js +0 -108
  596. package/dist/router/match-middleware/cache-store.js.map +0 -1
  597. package/dist/router/match-middleware/index.d.ts +0 -81
  598. package/dist/router/match-middleware/index.d.ts.map +0 -1
  599. package/dist/router/match-middleware/index.js +0 -80
  600. package/dist/router/match-middleware/index.js.map +0 -1
  601. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  602. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  603. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  604. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  605. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  606. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  607. package/dist/router/match-middleware/segment-resolution.js +0 -53
  608. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  609. package/dist/router/match-pipelines.d.ts +0 -147
  610. package/dist/router/match-pipelines.d.ts.map +0 -1
  611. package/dist/router/match-pipelines.js +0 -82
  612. package/dist/router/match-pipelines.js.map +0 -1
  613. package/dist/router/match-result.d.ts +0 -126
  614. package/dist/router/match-result.d.ts.map +0 -1
  615. package/dist/router/match-result.js +0 -93
  616. package/dist/router/match-result.js.map +0 -1
  617. package/dist/router/metrics.d.ts +0 -20
  618. package/dist/router/metrics.d.ts.map +0 -1
  619. package/dist/router/metrics.js +0 -47
  620. package/dist/router/metrics.js.map +0 -1
  621. package/dist/router/middleware.d.ts +0 -249
  622. package/dist/router/middleware.d.ts.map +0 -1
  623. package/dist/router/middleware.js +0 -434
  624. package/dist/router/middleware.js.map +0 -1
  625. package/dist/router/middleware.test.d.ts +0 -2
  626. package/dist/router/middleware.test.d.ts.map +0 -1
  627. package/dist/router/middleware.test.js +0 -816
  628. package/dist/router/middleware.test.js.map +0 -1
  629. package/dist/router/pattern-matching.d.ts +0 -149
  630. package/dist/router/pattern-matching.d.ts.map +0 -1
  631. package/dist/router/pattern-matching.js +0 -349
  632. package/dist/router/pattern-matching.js.map +0 -1
  633. package/dist/router/revalidation.d.ts +0 -44
  634. package/dist/router/revalidation.d.ts.map +0 -1
  635. package/dist/router/revalidation.js +0 -147
  636. package/dist/router/revalidation.js.map +0 -1
  637. package/dist/router/router-context.d.ts +0 -135
  638. package/dist/router/router-context.d.ts.map +0 -1
  639. package/dist/router/router-context.js +0 -36
  640. package/dist/router/router-context.js.map +0 -1
  641. package/dist/router/segment-resolution.d.ts +0 -127
  642. package/dist/router/segment-resolution.d.ts.map +0 -1
  643. package/dist/router/segment-resolution.js +0 -919
  644. package/dist/router/segment-resolution.js.map +0 -1
  645. package/dist/router/trie-matching.d.ts +0 -40
  646. package/dist/router/trie-matching.d.ts.map +0 -1
  647. package/dist/router/trie-matching.js +0 -127
  648. package/dist/router/trie-matching.js.map +0 -1
  649. package/dist/router/types.d.ts +0 -136
  650. package/dist/router/types.d.ts.map +0 -1
  651. package/dist/router/types.js +0 -7
  652. package/dist/router/types.js.map +0 -1
  653. package/dist/router.d.ts +0 -753
  654. package/dist/router.d.ts.map +0 -1
  655. package/dist/router.gen.d.ts +0 -6
  656. package/dist/router.gen.d.ts.map +0 -1
  657. package/dist/router.gen.js +0 -6
  658. package/dist/router.gen.js.map +0 -1
  659. package/dist/router.js +0 -1304
  660. package/dist/router.js.map +0 -1
  661. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  662. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  663. package/dist/rsc/__tests__/helpers.test.js +0 -140
  664. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  665. package/dist/rsc/handler.d.ts +0 -45
  666. package/dist/rsc/handler.d.ts.map +0 -1
  667. package/dist/rsc/handler.js +0 -1172
  668. package/dist/rsc/handler.js.map +0 -1
  669. package/dist/rsc/helpers.d.ts +0 -16
  670. package/dist/rsc/helpers.d.ts.map +0 -1
  671. package/dist/rsc/helpers.js +0 -55
  672. package/dist/rsc/helpers.js.map +0 -1
  673. package/dist/rsc/index.d.ts +0 -22
  674. package/dist/rsc/index.d.ts.map +0 -1
  675. package/dist/rsc/index.js +0 -23
  676. package/dist/rsc/index.js.map +0 -1
  677. package/dist/rsc/nonce.d.ts +0 -9
  678. package/dist/rsc/nonce.d.ts.map +0 -1
  679. package/dist/rsc/nonce.js +0 -18
  680. package/dist/rsc/nonce.js.map +0 -1
  681. package/dist/rsc/types.d.ts +0 -206
  682. package/dist/rsc/types.d.ts.map +0 -1
  683. package/dist/rsc/types.js +0 -8
  684. package/dist/rsc/types.js.map +0 -1
  685. package/dist/search-params.d.ts +0 -103
  686. package/dist/search-params.d.ts.map +0 -1
  687. package/dist/search-params.js +0 -74
  688. package/dist/search-params.js.map +0 -1
  689. package/dist/segment-system.d.ts +0 -75
  690. package/dist/segment-system.d.ts.map +0 -1
  691. package/dist/segment-system.js +0 -336
  692. package/dist/segment-system.js.map +0 -1
  693. package/dist/server/context.d.ts +0 -245
  694. package/dist/server/context.d.ts.map +0 -1
  695. package/dist/server/context.js +0 -197
  696. package/dist/server/context.js.map +0 -1
  697. package/dist/server/fetchable-loader-store.d.ts +0 -18
  698. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  699. package/dist/server/fetchable-loader-store.js +0 -18
  700. package/dist/server/fetchable-loader-store.js.map +0 -1
  701. package/dist/server/handle-store.d.ts +0 -85
  702. package/dist/server/handle-store.d.ts.map +0 -1
  703. package/dist/server/handle-store.js +0 -142
  704. package/dist/server/handle-store.js.map +0 -1
  705. package/dist/server/loader-registry.d.ts +0 -55
  706. package/dist/server/loader-registry.d.ts.map +0 -1
  707. package/dist/server/loader-registry.js +0 -132
  708. package/dist/server/loader-registry.js.map +0 -1
  709. package/dist/server/request-context.d.ts +0 -226
  710. package/dist/server/request-context.d.ts.map +0 -1
  711. package/dist/server/request-context.js +0 -290
  712. package/dist/server/request-context.js.map +0 -1
  713. package/dist/server/root-layout.d.ts +0 -4
  714. package/dist/server/root-layout.d.ts.map +0 -1
  715. package/dist/server/root-layout.js +0 -5
  716. package/dist/server/root-layout.js.map +0 -1
  717. package/dist/server.d.ts +0 -15
  718. package/dist/server.d.ts.map +0 -1
  719. package/dist/server.js +0 -20
  720. package/dist/server.js.map +0 -1
  721. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  722. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  723. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  724. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  725. package/dist/ssr/index.d.ts +0 -98
  726. package/dist/ssr/index.d.ts.map +0 -1
  727. package/dist/ssr/index.js +0 -158
  728. package/dist/ssr/index.js.map +0 -1
  729. package/dist/static-handler.d.ts +0 -50
  730. package/dist/static-handler.d.ts.map +0 -1
  731. package/dist/static-handler.gen.d.ts +0 -5
  732. package/dist/static-handler.gen.d.ts.map +0 -1
  733. package/dist/static-handler.gen.js +0 -5
  734. package/dist/static-handler.gen.js.map +0 -1
  735. package/dist/static-handler.js +0 -29
  736. package/dist/static-handler.js.map +0 -1
  737. package/dist/theme/ThemeProvider.d.ts +0 -20
  738. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  739. package/dist/theme/ThemeProvider.js +0 -240
  740. package/dist/theme/ThemeProvider.js.map +0 -1
  741. package/dist/theme/ThemeScript.d.ts +0 -48
  742. package/dist/theme/ThemeScript.d.ts.map +0 -1
  743. package/dist/theme/ThemeScript.js +0 -13
  744. package/dist/theme/ThemeScript.js.map +0 -1
  745. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  746. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  747. package/dist/theme/__tests__/theme.test.js +0 -103
  748. package/dist/theme/__tests__/theme.test.js.map +0 -1
  749. package/dist/theme/constants.d.ts +0 -29
  750. package/dist/theme/constants.d.ts.map +0 -1
  751. package/dist/theme/constants.js +0 -48
  752. package/dist/theme/constants.js.map +0 -1
  753. package/dist/theme/index.d.ts +0 -31
  754. package/dist/theme/index.d.ts.map +0 -1
  755. package/dist/theme/index.js +0 -36
  756. package/dist/theme/index.js.map +0 -1
  757. package/dist/theme/theme-context.d.ts +0 -40
  758. package/dist/theme/theme-context.d.ts.map +0 -1
  759. package/dist/theme/theme-context.js +0 -60
  760. package/dist/theme/theme-context.js.map +0 -1
  761. package/dist/theme/theme-script.d.ts +0 -27
  762. package/dist/theme/theme-script.d.ts.map +0 -1
  763. package/dist/theme/theme-script.js +0 -147
  764. package/dist/theme/theme-script.js.map +0 -1
  765. package/dist/theme/types.d.ts +0 -163
  766. package/dist/theme/types.d.ts.map +0 -1
  767. package/dist/theme/types.js +0 -11
  768. package/dist/theme/types.js.map +0 -1
  769. package/dist/theme/use-theme.d.ts +0 -12
  770. package/dist/theme/use-theme.d.ts.map +0 -1
  771. package/dist/theme/use-theme.js +0 -40
  772. package/dist/theme/use-theme.js.map +0 -1
  773. package/dist/types.d.ts +0 -1479
  774. package/dist/types.d.ts.map +0 -1
  775. package/dist/types.js +0 -10
  776. package/dist/types.js.map +0 -1
  777. package/dist/urls.d.ts +0 -441
  778. package/dist/urls.d.ts.map +0 -1
  779. package/dist/urls.gen.d.ts +0 -8
  780. package/dist/urls.gen.d.ts.map +0 -1
  781. package/dist/urls.gen.js +0 -8
  782. package/dist/urls.gen.js.map +0 -1
  783. package/dist/urls.js +0 -443
  784. package/dist/urls.js.map +0 -1
  785. package/dist/use-loader.d.ts +0 -127
  786. package/dist/use-loader.d.ts.map +0 -1
  787. package/dist/use-loader.js +0 -237
  788. package/dist/use-loader.js.map +0 -1
  789. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  790. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  791. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  792. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  793. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  794. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  795. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  796. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  797. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  798. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  799. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  800. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  801. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  802. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  803. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  804. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  805. package/dist/vite/ast-handler-extract.d.ts +0 -49
  806. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  807. package/dist/vite/ast-handler-extract.js +0 -249
  808. package/dist/vite/ast-handler-extract.js.map +0 -1
  809. package/dist/vite/expose-action-id.d.ts +0 -19
  810. package/dist/vite/expose-action-id.d.ts.map +0 -1
  811. package/dist/vite/expose-action-id.js +0 -250
  812. package/dist/vite/expose-action-id.js.map +0 -1
  813. package/dist/vite/expose-id-utils.d.ts +0 -69
  814. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  815. package/dist/vite/expose-id-utils.js +0 -289
  816. package/dist/vite/expose-id-utils.js.map +0 -1
  817. package/dist/vite/expose-internal-ids.d.ts +0 -22
  818. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  819. package/dist/vite/expose-internal-ids.js +0 -886
  820. package/dist/vite/expose-internal-ids.js.map +0 -1
  821. package/dist/vite/index.d.ts +0 -149
  822. package/dist/vite/index.d.ts.map +0 -1
  823. package/dist/vite/index.js.bak +0 -5448
  824. package/dist/vite/index.js.map +0 -1
  825. package/dist/vite/index.named-routes.gen.ts +0 -103
  826. package/dist/vite/package-resolution.d.ts +0 -43
  827. package/dist/vite/package-resolution.d.ts.map +0 -1
  828. package/dist/vite/package-resolution.js +0 -112
  829. package/dist/vite/package-resolution.js.map +0 -1
  830. package/dist/vite/virtual-entries.d.ts +0 -25
  831. package/dist/vite/virtual-entries.d.ts.map +0 -1
  832. package/dist/vite/virtual-entries.js +0 -110
  833. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,678 +0,0 @@
1
- import { describe, it, expect, vi } from "vitest";
2
- import { wrapLoaderWithErrorHandling } from "../loader-resolution";
3
- import { invokeOnError } from "../error-handling";
4
- describe("OnError Types", () => {
5
- describe("OnErrorContext", () => {
6
- it("should have all required properties", () => {
7
- const context = {
8
- error: new Error("Test error"),
9
- phase: "routing",
10
- request: new Request("https://example.com/test"),
11
- url: new URL("https://example.com/test"),
12
- pathname: "/test",
13
- method: "GET",
14
- };
15
- expect(context.error).toBeInstanceOf(Error);
16
- expect(context.phase).toBe("routing");
17
- expect(context.request).toBeInstanceOf(Request);
18
- expect(context.url).toBeInstanceOf(URL);
19
- expect(context.pathname).toBe("/test");
20
- expect(context.method).toBe("GET");
21
- });
22
- it("should support optional properties", () => {
23
- const context = {
24
- error: new Error("Test error"),
25
- phase: "loader",
26
- request: new Request("https://example.com/products/123"),
27
- url: new URL("https://example.com/products/123"),
28
- pathname: "/products/123",
29
- method: "GET",
30
- routeKey: "products.detail",
31
- params: { id: "123" },
32
- segmentId: "M1L0R0",
33
- segmentType: "loader",
34
- loaderName: "ProductLoader",
35
- duration: 150.5,
36
- isPartial: true,
37
- handledByBoundary: true,
38
- stack: "Error: Test error\n at ...",
39
- metadata: { custom: "data" },
40
- };
41
- expect(context.routeKey).toBe("products.detail");
42
- expect(context.params).toEqual({ id: "123" });
43
- expect(context.segmentId).toBe("M1L0R0");
44
- expect(context.segmentType).toBe("loader");
45
- expect(context.loaderName).toBe("ProductLoader");
46
- expect(context.duration).toBe(150.5);
47
- expect(context.isPartial).toBe(true);
48
- expect(context.handledByBoundary).toBe(true);
49
- expect(context.stack).toBeDefined();
50
- expect(context.metadata).toEqual({ custom: "data" });
51
- });
52
- it("should support action-specific properties", () => {
53
- const context = {
54
- error: new Error("Action failed"),
55
- phase: "action",
56
- request: new Request("https://example.com/api", { method: "POST" }),
57
- url: new URL("https://example.com/api"),
58
- pathname: "/api",
59
- method: "POST",
60
- actionId: "src/actions.ts#addToCart",
61
- };
62
- expect(context.phase).toBe("action");
63
- expect(context.actionId).toBe("src/actions.ts#addToCart");
64
- expect(context.method).toBe("POST");
65
- });
66
- it("should support middleware-specific properties", () => {
67
- const context = {
68
- error: new Error("Auth failed"),
69
- phase: "middleware",
70
- request: new Request("https://example.com/admin"),
71
- url: new URL("https://example.com/admin"),
72
- pathname: "/admin",
73
- method: "GET",
74
- middlewareId: "auth",
75
- segmentType: "middleware",
76
- };
77
- expect(context.phase).toBe("middleware");
78
- expect(context.middlewareId).toBe("auth");
79
- expect(context.segmentType).toBe("middleware");
80
- });
81
- it("should support typed env", () => {
82
- const context = {
83
- error: new Error("DB error"),
84
- phase: "loader",
85
- request: new Request("https://example.com"),
86
- url: new URL("https://example.com"),
87
- pathname: "/",
88
- method: "GET",
89
- env: {
90
- DB: { query: () => { } },
91
- USER_ID: "user-123",
92
- },
93
- };
94
- expect(context.env?.DB).toBeDefined();
95
- expect(context.env?.USER_ID).toBe("user-123");
96
- });
97
- });
98
- describe("ErrorPhase", () => {
99
- it("should include all valid phases", () => {
100
- const phases = [
101
- "routing",
102
- "manifest",
103
- "middleware",
104
- "loader",
105
- "handler",
106
- "rendering",
107
- "action",
108
- "revalidation",
109
- "unknown",
110
- ];
111
- expect(phases).toHaveLength(9);
112
- phases.forEach((phase) => {
113
- expect(typeof phase).toBe("string");
114
- });
115
- });
116
- });
117
- describe("OnErrorCallback", () => {
118
- it("should accept sync callback", () => {
119
- const errors = [];
120
- const callback = (context) => {
121
- errors.push(context);
122
- };
123
- const context = {
124
- error: new Error("Test"),
125
- phase: "routing",
126
- request: new Request("https://example.com"),
127
- url: new URL("https://example.com"),
128
- pathname: "/",
129
- method: "GET",
130
- };
131
- callback(context);
132
- expect(errors).toHaveLength(1);
133
- });
134
- it("should accept async callback", async () => {
135
- const errors = [];
136
- const callback = async (context) => {
137
- await Promise.resolve();
138
- errors.push(context);
139
- };
140
- const context = {
141
- error: new Error("Test"),
142
- phase: "action",
143
- request: new Request("https://example.com"),
144
- url: new URL("https://example.com"),
145
- pathname: "/",
146
- method: "POST",
147
- };
148
- await callback(context);
149
- expect(errors).toHaveLength(1);
150
- });
151
- it("should work with typed env", () => {
152
- const callback = (context) => {
153
- // Type-safe access to env
154
- const secret = context.env?.secret;
155
- expect(typeof secret).toBe("string");
156
- };
157
- callback({
158
- error: new Error("Test"),
159
- phase: "routing",
160
- request: new Request("https://example.com"),
161
- url: new URL("https://example.com"),
162
- pathname: "/",
163
- method: "GET",
164
- env: { secret: "test-secret" },
165
- });
166
- });
167
- });
168
- });
169
- describe("OnError Callback Integration", () => {
170
- it("should capture error details from context", () => {
171
- const capturedErrors = [];
172
- const onError = (context) => {
173
- capturedErrors.push({
174
- message: context.error.message,
175
- phase: context.phase,
176
- route: context.routeKey,
177
- duration: context.duration,
178
- });
179
- };
180
- // Simulate errors from different phases
181
- onError({
182
- error: new Error("Route not found"),
183
- phase: "routing",
184
- request: new Request("https://example.com/unknown"),
185
- url: new URL("https://example.com/unknown"),
186
- pathname: "/unknown",
187
- method: "GET",
188
- });
189
- onError({
190
- error: new Error("Loader failed"),
191
- phase: "loader",
192
- request: new Request("https://example.com/products"),
193
- url: new URL("https://example.com/products"),
194
- pathname: "/products",
195
- method: "GET",
196
- routeKey: "products.list",
197
- loaderName: "ProductsLoader",
198
- duration: 100,
199
- });
200
- onError({
201
- error: new Error("Action failed"),
202
- phase: "action",
203
- request: new Request("https://example.com/cart", { method: "POST" }),
204
- url: new URL("https://example.com/cart"),
205
- pathname: "/cart",
206
- method: "POST",
207
- actionId: "addToCart",
208
- duration: 50,
209
- });
210
- expect(capturedErrors).toHaveLength(3);
211
- expect(capturedErrors[0]).toEqual({
212
- message: "Route not found",
213
- phase: "routing",
214
- route: undefined,
215
- duration: undefined,
216
- });
217
- expect(capturedErrors[1]).toEqual({
218
- message: "Loader failed",
219
- phase: "loader",
220
- route: "products.list",
221
- duration: 100,
222
- });
223
- expect(capturedErrors[2]).toEqual({
224
- message: "Action failed",
225
- phase: "action",
226
- route: undefined,
227
- duration: 50,
228
- });
229
- });
230
- it("should handle errors thrown in callback gracefully", () => {
231
- const consoleErrorSpy = vi.spyOn(console, "error").mockImplementation(() => { });
232
- const badCallback = () => {
233
- throw new Error("Callback error");
234
- };
235
- // The callback throws, but it shouldn't propagate
236
- // In real implementation, this is caught by invokeOnError
237
- expect(() => {
238
- try {
239
- badCallback({
240
- error: new Error("Original error"),
241
- phase: "routing",
242
- request: new Request("https://example.com"),
243
- url: new URL("https://example.com"),
244
- pathname: "/",
245
- method: "GET",
246
- });
247
- }
248
- catch (e) {
249
- // In real code, invokeOnError catches this
250
- console.error("[Router.onError] Callback error:", e);
251
- }
252
- }).not.toThrow();
253
- consoleErrorSpy.mockRestore();
254
- });
255
- it("should handle async callback rejection gracefully", async () => {
256
- const consoleErrorSpy = vi.spyOn(console, "error").mockImplementation(() => { });
257
- const badAsyncCallback = async () => {
258
- await Promise.reject(new Error("Async callback error"));
259
- };
260
- const context = {
261
- error: new Error("Original error"),
262
- phase: "action",
263
- request: new Request("https://example.com"),
264
- url: new URL("https://example.com"),
265
- pathname: "/",
266
- method: "POST",
267
- };
268
- // In real implementation, the promise rejection is caught
269
- const result = badAsyncCallback(context);
270
- if (result instanceof Promise) {
271
- await result.catch((e) => {
272
- console.error("[Router.onError] Callback error:", e);
273
- });
274
- }
275
- consoleErrorSpy.mockRestore();
276
- });
277
- });
278
- describe("wrapLoaderWithErrorHandling", () => {
279
- const mockEntry = { id: "test-entry" };
280
- const mockPathname = "/test";
281
- const createMockErrorInfo = (error, segmentId, segmentType) => ({
282
- message: error instanceof Error ? error.message : String(error),
283
- name: error instanceof Error ? error.name : "Error",
284
- segmentId,
285
- segmentType,
286
- });
287
- describe("successful resolution", () => {
288
- it("should return ok: true with data on success", async () => {
289
- const promise = Promise.resolve({ name: "Test Product" });
290
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.ProductLoader", mockPathname, () => null, createMockErrorInfo);
291
- expect(result).toEqual({
292
- __loaderResult: true,
293
- ok: true,
294
- data: { name: "Test Product" },
295
- });
296
- });
297
- it("should not invoke onError on success", async () => {
298
- const onError = vi.fn();
299
- const promise = Promise.resolve("success");
300
- await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.TestLoader", mockPathname, () => null, createMockErrorInfo, onError);
301
- expect(onError).not.toHaveBeenCalled();
302
- });
303
- });
304
- describe("error handling without boundary", () => {
305
- it("should return ok: false with error info when no boundary", async () => {
306
- const promise = Promise.reject(new Error("Loader failed"));
307
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.FailingLoader", mockPathname, () => null, // No error boundary
308
- createMockErrorInfo);
309
- expect(result).toEqual({
310
- __loaderResult: true,
311
- ok: false,
312
- error: {
313
- message: "Loader failed",
314
- name: "Error",
315
- segmentId: "M1L0.FailingLoader",
316
- segmentType: "loader",
317
- },
318
- fallback: null,
319
- });
320
- });
321
- it("should invoke onError with handledByBoundary: false", async () => {
322
- const onError = vi.fn();
323
- const testError = new Error("Test error");
324
- const promise = Promise.reject(testError);
325
- await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.TestLoader", mockPathname, () => null, // No boundary
326
- createMockErrorInfo, onError);
327
- expect(onError).toHaveBeenCalledWith(testError, {
328
- segmentId: "M1L0.TestLoader",
329
- loaderName: "TestLoader",
330
- handledByBoundary: false,
331
- });
332
- });
333
- });
334
- describe("error handling with boundary", () => {
335
- it("should return fallback when error boundary exists", async () => {
336
- const consoleSpy = vi.spyOn(console, "log").mockImplementation(() => { });
337
- const promise = Promise.reject(new Error("Handled error"));
338
- const fallbackElement = "Error Fallback UI";
339
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.HandledLoader", mockPathname, () => fallbackElement, // Has error boundary
340
- createMockErrorInfo);
341
- expect(result).toEqual({
342
- __loaderResult: true,
343
- ok: false,
344
- error: {
345
- message: "Handled error",
346
- name: "Error",
347
- segmentId: "M1L0.HandledLoader",
348
- segmentType: "loader",
349
- },
350
- fallback: fallbackElement,
351
- });
352
- consoleSpy.mockRestore();
353
- });
354
- it("should invoke onError with handledByBoundary: true", async () => {
355
- const consoleSpy = vi.spyOn(console, "log").mockImplementation(() => { });
356
- const onError = vi.fn();
357
- const testError = new Error("Boundary handled");
358
- const promise = Promise.reject(testError);
359
- await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.BoundaryLoader", mockPathname, () => "Fallback", // Has boundary
360
- createMockErrorInfo, onError);
361
- expect(onError).toHaveBeenCalledWith(testError, {
362
- segmentId: "M1L0.BoundaryLoader",
363
- loaderName: "BoundaryLoader",
364
- handledByBoundary: true,
365
- });
366
- consoleSpy.mockRestore();
367
- });
368
- it("should call ErrorBoundaryHandler function with error props", async () => {
369
- const consoleSpy = vi.spyOn(console, "log").mockImplementation(() => { });
370
- const promise = Promise.reject(new Error("Handler error"));
371
- const boundaryHandler = vi.fn().mockReturnValue("Rendered Fallback");
372
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.HandlerLoader", mockPathname, () => boundaryHandler, createMockErrorInfo);
373
- expect(boundaryHandler).toHaveBeenCalledWith({
374
- error: {
375
- message: "Handler error",
376
- name: "Error",
377
- segmentId: "M1L0.HandlerLoader",
378
- segmentType: "loader",
379
- },
380
- });
381
- if (!result.ok) {
382
- expect(result.fallback).toBe("Rendered Fallback");
383
- }
384
- consoleSpy.mockRestore();
385
- });
386
- });
387
- describe("loaderName extraction", () => {
388
- it("should extract loader name from segmentId with dot notation", async () => {
389
- const onError = vi.fn();
390
- const promise = Promise.reject(new Error("test"));
391
- await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0D0.ProductLoader", mockPathname, () => null, createMockErrorInfo, onError);
392
- expect(onError).toHaveBeenCalledWith(expect.any(Error), expect.objectContaining({ loaderName: "ProductLoader" }));
393
- });
394
- it("should handle segmentId without dots", async () => {
395
- const onError = vi.fn();
396
- const promise = Promise.reject(new Error("test"));
397
- await wrapLoaderWithErrorHandling(promise, mockEntry, "SimpleLoader", mockPathname, () => null, createMockErrorInfo, onError);
398
- expect(onError).toHaveBeenCalledWith(expect.any(Error), expect.objectContaining({ loaderName: "SimpleLoader" }));
399
- });
400
- it("should return 'unknown' for empty segmentId", async () => {
401
- const onError = vi.fn();
402
- const promise = Promise.reject(new Error("test"));
403
- await wrapLoaderWithErrorHandling(promise, mockEntry, "", mockPathname, () => null, createMockErrorInfo, onError);
404
- expect(onError).toHaveBeenCalledWith(expect.any(Error), expect.objectContaining({ loaderName: "unknown" }));
405
- });
406
- });
407
- describe("non-Error objects", () => {
408
- it("should handle string errors", async () => {
409
- const promise = Promise.reject("String error message");
410
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.StringErrorLoader", mockPathname, () => null, createMockErrorInfo);
411
- expect(result.ok).toBe(false);
412
- if (!result.ok) {
413
- expect(result.error?.message).toBe("String error message");
414
- }
415
- });
416
- it("should handle object errors", async () => {
417
- const promise = Promise.reject({ code: "ERR_001", detail: "Failed" });
418
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.ObjectErrorLoader", mockPathname, () => null, (error) => ({
419
- message: String(error),
420
- name: "Error",
421
- segmentId: "test",
422
- segmentType: "loader",
423
- }));
424
- expect(result.ok).toBe(false);
425
- });
426
- it("should handle null/undefined errors", async () => {
427
- const promise = Promise.reject(null);
428
- const result = await wrapLoaderWithErrorHandling(promise, mockEntry, "M1L0.NullErrorLoader", mockPathname, () => null, (error) => ({
429
- message: String(error),
430
- name: "Error",
431
- segmentId: "test",
432
- segmentType: "loader",
433
- }));
434
- expect(result.ok).toBe(false);
435
- if (!result.ok) {
436
- expect(result.error?.message).toBe("null");
437
- }
438
- });
439
- });
440
- });
441
- describe("Error Context Edge Cases", () => {
442
- it("should handle errors with circular references in metadata", () => {
443
- const circular = { name: "test" };
444
- circular.self = circular;
445
- const context = {
446
- error: new Error("Circular test"),
447
- phase: "loader",
448
- request: new Request("https://example.com"),
449
- url: new URL("https://example.com"),
450
- pathname: "/",
451
- method: "GET",
452
- metadata: { circular }, // This shouldn't crash serialization
453
- };
454
- expect(context.metadata?.circular).toBe(circular);
455
- });
456
- it("should handle errors without stack traces", () => {
457
- const errorWithoutStack = new Error("No stack");
458
- delete errorWithoutStack.stack;
459
- const context = {
460
- error: errorWithoutStack,
461
- phase: "routing",
462
- request: new Request("https://example.com"),
463
- url: new URL("https://example.com"),
464
- pathname: "/",
465
- method: "GET",
466
- stack: errorWithoutStack.stack,
467
- };
468
- expect(context.stack).toBeUndefined();
469
- });
470
- it("should handle very long error messages", () => {
471
- const longMessage = "x".repeat(10000);
472
- const context = {
473
- error: new Error(longMessage),
474
- phase: "handler",
475
- request: new Request("https://example.com"),
476
- url: new URL("https://example.com"),
477
- pathname: "/",
478
- method: "GET",
479
- };
480
- expect(context.error.message.length).toBe(10000);
481
- });
482
- it("should preserve error cause chain", () => {
483
- const rootCause = new Error("Root cause");
484
- const wrappedError = new Error("Wrapped error", { cause: rootCause });
485
- const context = {
486
- error: wrappedError,
487
- phase: "loader",
488
- request: new Request("https://example.com"),
489
- url: new URL("https://example.com"),
490
- pathname: "/",
491
- method: "GET",
492
- };
493
- expect(context.error.cause).toBe(rootCause);
494
- });
495
- });
496
- describe("invokeOnError Shared Utility", () => {
497
- const createMockContext = () => ({
498
- request: new Request("https://example.com/test"),
499
- url: new URL("https://example.com/test"),
500
- });
501
- describe("callback invocation", () => {
502
- it("should not call callback if undefined", () => {
503
- const context = createMockContext();
504
- expect(() => {
505
- invokeOnError(undefined, new Error("test"), "routing", context);
506
- }).not.toThrow();
507
- });
508
- it("should invoke callback with full context", () => {
509
- const callback = vi.fn();
510
- const error = new Error("Test error");
511
- const context = {
512
- request: new Request("https://example.com/products/123"),
513
- url: new URL("https://example.com/products/123"),
514
- routeKey: "products.detail",
515
- params: { id: "123" },
516
- segmentId: "M1R0",
517
- segmentType: "route",
518
- env: { DB: "test" },
519
- isPartial: true,
520
- handledByBoundary: false,
521
- };
522
- invokeOnError(callback, error, "handler", context);
523
- expect(callback).toHaveBeenCalledTimes(1);
524
- const receivedContext = callback.mock.calls[0][0];
525
- expect(receivedContext.error).toBe(error);
526
- expect(receivedContext.phase).toBe("handler");
527
- expect(receivedContext.pathname).toBe("/products/123");
528
- expect(receivedContext.method).toBe("GET");
529
- expect(receivedContext.routeKey).toBe("products.detail");
530
- expect(receivedContext.params).toEqual({ id: "123" });
531
- expect(receivedContext.segmentId).toBe("M1R0");
532
- expect(receivedContext.segmentType).toBe("route");
533
- expect(receivedContext.env).toEqual({ DB: "test" });
534
- expect(receivedContext.isPartial).toBe(true);
535
- expect(receivedContext.handledByBoundary).toBe(false);
536
- expect(receivedContext.stack).toBeDefined();
537
- });
538
- it("should convert non-Error objects to Error", () => {
539
- const callback = vi.fn();
540
- const context = createMockContext();
541
- invokeOnError(callback, "string error", "routing", context);
542
- const receivedContext = callback.mock.calls[0][0];
543
- expect(receivedContext.error).toBeInstanceOf(Error);
544
- expect(receivedContext.error.message).toBe("string error");
545
- });
546
- it("should calculate duration from requestStartTime", () => {
547
- const callback = vi.fn();
548
- const context = {
549
- ...createMockContext(),
550
- requestStartTime: performance.now() - 100, // 100ms ago
551
- };
552
- invokeOnError(callback, new Error("test"), "loader", context);
553
- const receivedContext = callback.mock.calls[0][0];
554
- expect(receivedContext.duration).toBeGreaterThanOrEqual(100);
555
- expect(receivedContext.duration).toBeLessThan(200);
556
- });
557
- it("should not set duration if requestStartTime is not provided", () => {
558
- const callback = vi.fn();
559
- const context = createMockContext();
560
- invokeOnError(callback, new Error("test"), "loader", context);
561
- const receivedContext = callback.mock.calls[0][0];
562
- expect(receivedContext.duration).toBeUndefined();
563
- });
564
- });
565
- describe("error handling in callback", () => {
566
- it("should catch sync callback errors and log them", () => {
567
- const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => { });
568
- const callback = () => {
569
- throw new Error("Callback sync error");
570
- };
571
- const context = createMockContext();
572
- expect(() => {
573
- invokeOnError(callback, new Error("original"), "routing", context);
574
- }).not.toThrow();
575
- expect(consoleSpy).toHaveBeenCalledWith("[Router.onError] Callback error:", expect.any(Error));
576
- consoleSpy.mockRestore();
577
- });
578
- it("should catch async callback rejections and log them", async () => {
579
- const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => { });
580
- const callback = async () => {
581
- throw new Error("Callback async error");
582
- };
583
- const context = createMockContext();
584
- invokeOnError(callback, new Error("original"), "routing", context);
585
- // Wait for the async rejection to be caught
586
- await new Promise((resolve) => setTimeout(resolve, 10));
587
- expect(consoleSpy).toHaveBeenCalledWith("[Router.onError] Callback error:", expect.any(Error));
588
- consoleSpy.mockRestore();
589
- });
590
- it("should use custom log prefix", () => {
591
- const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => { });
592
- const callback = () => {
593
- throw new Error("Callback error");
594
- };
595
- const context = createMockContext();
596
- invokeOnError(callback, new Error("original"), "rendering", context, "RSC");
597
- expect(consoleSpy).toHaveBeenCalledWith("[RSC.onError] Callback error:", expect.any(Error));
598
- consoleSpy.mockRestore();
599
- });
600
- });
601
- describe("all phases", () => {
602
- const phases = [
603
- "routing",
604
- "manifest",
605
- "middleware",
606
- "loader",
607
- "handler",
608
- "rendering",
609
- "action",
610
- "revalidation",
611
- "unknown",
612
- ];
613
- phases.forEach((phase) => {
614
- it(`should accept phase: ${phase}`, () => {
615
- const callback = vi.fn();
616
- const context = createMockContext();
617
- invokeOnError(callback, new Error("test"), phase, context);
618
- expect(callback).toHaveBeenCalledWith(expect.objectContaining({ phase }));
619
- });
620
- });
621
- });
622
- describe("optional context fields", () => {
623
- it("should pass through all optional fields", () => {
624
- const callback = vi.fn();
625
- const context = {
626
- request: new Request("https://example.com/api", { method: "POST" }),
627
- url: new URL("https://example.com/api"),
628
- routeKey: "api.action",
629
- params: { id: "1" },
630
- segmentId: "M1A0",
631
- segmentType: "middleware",
632
- loaderName: "TestLoader",
633
- middlewareId: "auth",
634
- actionId: "createItem",
635
- env: { secret: "123" },
636
- isPartial: false,
637
- handledByBoundary: true,
638
- metadata: { custom: "data" },
639
- requestStartTime: performance.now() - 50,
640
- };
641
- invokeOnError(callback, new Error("test"), "action", context);
642
- const received = callback.mock.calls[0][0];
643
- expect(received.method).toBe("POST");
644
- expect(received.loaderName).toBe("TestLoader");
645
- expect(received.middlewareId).toBe("auth");
646
- expect(received.actionId).toBe("createItem");
647
- expect(received.metadata).toEqual({ custom: "data" });
648
- });
649
- it("should handle minimal context", () => {
650
- const callback = vi.fn();
651
- const context = {
652
- request: new Request("https://example.com"),
653
- url: new URL("https://example.com"),
654
- };
655
- invokeOnError(callback, new Error("test"), "unknown", context);
656
- const received = callback.mock.calls[0][0];
657
- expect(received.routeKey).toBeUndefined();
658
- expect(received.params).toBeUndefined();
659
- expect(received.segmentId).toBeUndefined();
660
- expect(received.duration).toBeUndefined();
661
- });
662
- });
663
- });
664
- describe("LoaderErrorCallback Type", () => {
665
- it("should accept valid callback signature", () => {
666
- const callback = (error, context) => {
667
- expect(typeof context.segmentId).toBe("string");
668
- expect(typeof context.loaderName).toBe("string");
669
- expect(typeof context.handledByBoundary).toBe("boolean");
670
- };
671
- callback(new Error("test"), {
672
- segmentId: "M1L0.TestLoader",
673
- loaderName: "TestLoader",
674
- handledByBoundary: false,
675
- });
676
- });
677
- });
678
- //# sourceMappingURL=on-error.test.js.map