@rangojs/router 0.0.0-experimental.22 → 0.0.0-experimental.23

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 (814) hide show
  1. package/dist/vite/index.js +1 -1
  2. package/package.json +1 -1
  3. package/src/router/loader-resolution.ts +1 -1
  4. package/src/router/metrics.ts +90 -10
  5. package/src/router/middleware-types.ts +12 -0
  6. package/src/router/middleware.ts +55 -9
  7. package/src/router/segment-resolution/fresh.ts +18 -0
  8. package/src/router/segment-resolution/revalidation.ts +21 -6
  9. package/src/router.ts +6 -2
  10. package/src/server/context.ts +8 -2
  11. package/src/server/request-context.ts +5 -1
  12. package/dist/__internal.d.ts +0 -83
  13. package/dist/__internal.d.ts.map +0 -1
  14. package/dist/__internal.js +0 -19
  15. package/dist/__internal.js.map +0 -1
  16. package/dist/__mocks__/version.d.ts +0 -7
  17. package/dist/__mocks__/version.d.ts.map +0 -1
  18. package/dist/__mocks__/version.js +0 -7
  19. package/dist/__mocks__/version.js.map +0 -1
  20. package/dist/__tests__/client-href.test.d.ts +0 -2
  21. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  22. package/dist/__tests__/client-href.test.js +0 -74
  23. package/dist/__tests__/client-href.test.js.map +0 -1
  24. package/dist/__tests__/component-utils.test.d.ts +0 -2
  25. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  26. package/dist/__tests__/component-utils.test.js +0 -51
  27. package/dist/__tests__/component-utils.test.js.map +0 -1
  28. package/dist/__tests__/event-controller.test.d.ts +0 -2
  29. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  30. package/dist/__tests__/event-controller.test.js +0 -538
  31. package/dist/__tests__/event-controller.test.js.map +0 -1
  32. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  33. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  34. package/dist/__tests__/helpers/route-tree.js +0 -374
  35. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  36. package/dist/__tests__/match-result.test.d.ts +0 -2
  37. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  38. package/dist/__tests__/match-result.test.js +0 -154
  39. package/dist/__tests__/match-result.test.js.map +0 -1
  40. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  41. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  42. package/dist/__tests__/navigation-store.test.js +0 -440
  43. package/dist/__tests__/navigation-store.test.js.map +0 -1
  44. package/dist/__tests__/partial-update.test.d.ts +0 -2
  45. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  46. package/dist/__tests__/partial-update.test.js +0 -1009
  47. package/dist/__tests__/partial-update.test.js.map +0 -1
  48. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  49. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  50. package/dist/__tests__/reverse-types.test.js +0 -656
  51. package/dist/__tests__/reverse-types.test.js.map +0 -1
  52. package/dist/__tests__/route-definition.test.d.ts +0 -2
  53. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  54. package/dist/__tests__/route-definition.test.js +0 -55
  55. package/dist/__tests__/route-definition.test.js.map +0 -1
  56. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  57. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  58. package/dist/__tests__/router-helpers.test.js +0 -377
  59. package/dist/__tests__/router-helpers.test.js.map +0 -1
  60. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  61. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  62. package/dist/__tests__/router-integration-2.test.js +0 -426
  63. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  64. package/dist/__tests__/router-integration.test.d.ts +0 -2
  65. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  66. package/dist/__tests__/router-integration.test.js +0 -1051
  67. package/dist/__tests__/router-integration.test.js.map +0 -1
  68. package/dist/__tests__/search-params.test.d.ts +0 -5
  69. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  70. package/dist/__tests__/search-params.test.js +0 -306
  71. package/dist/__tests__/search-params.test.js.map +0 -1
  72. package/dist/__tests__/segment-system.test.d.ts +0 -2
  73. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  74. package/dist/__tests__/segment-system.test.js +0 -627
  75. package/dist/__tests__/segment-system.test.js.map +0 -1
  76. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  77. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  78. package/dist/__tests__/static-handler-types.test.js +0 -63
  79. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  80. package/dist/__tests__/urls.test.d.ts +0 -2
  81. package/dist/__tests__/urls.test.d.ts.map +0 -1
  82. package/dist/__tests__/urls.test.js +0 -421
  83. package/dist/__tests__/urls.test.js.map +0 -1
  84. package/dist/__tests__/use-mount.test.d.ts +0 -2
  85. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  86. package/dist/__tests__/use-mount.test.js +0 -35
  87. package/dist/__tests__/use-mount.test.js.map +0 -1
  88. package/dist/bin/rango.d.ts +0 -2
  89. package/dist/bin/rango.d.ts.map +0 -1
  90. package/dist/bin/rango.js.map +0 -1
  91. package/dist/browser/event-controller.d.ts +0 -191
  92. package/dist/browser/event-controller.d.ts.map +0 -1
  93. package/dist/browser/event-controller.js +0 -559
  94. package/dist/browser/event-controller.js.map +0 -1
  95. package/dist/browser/index.d.ts +0 -2
  96. package/dist/browser/index.d.ts.map +0 -1
  97. package/dist/browser/index.js +0 -14
  98. package/dist/browser/index.js.map +0 -1
  99. package/dist/browser/link-interceptor.d.ts +0 -38
  100. package/dist/browser/link-interceptor.d.ts.map +0 -1
  101. package/dist/browser/link-interceptor.js +0 -99
  102. package/dist/browser/link-interceptor.js.map +0 -1
  103. package/dist/browser/logging.d.ts +0 -10
  104. package/dist/browser/logging.d.ts.map +0 -1
  105. package/dist/browser/logging.js +0 -29
  106. package/dist/browser/logging.js.map +0 -1
  107. package/dist/browser/lru-cache.d.ts +0 -17
  108. package/dist/browser/lru-cache.d.ts.map +0 -1
  109. package/dist/browser/lru-cache.js +0 -50
  110. package/dist/browser/lru-cache.js.map +0 -1
  111. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  112. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  113. package/dist/browser/merge-segment-loaders.js +0 -102
  114. package/dist/browser/merge-segment-loaders.js.map +0 -1
  115. package/dist/browser/navigation-bridge.d.ts +0 -102
  116. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  117. package/dist/browser/navigation-bridge.js +0 -708
  118. package/dist/browser/navigation-bridge.js.map +0 -1
  119. package/dist/browser/navigation-client.d.ts +0 -25
  120. package/dist/browser/navigation-client.d.ts.map +0 -1
  121. package/dist/browser/navigation-client.js +0 -157
  122. package/dist/browser/navigation-client.js.map +0 -1
  123. package/dist/browser/navigation-store.d.ts +0 -101
  124. package/dist/browser/navigation-store.d.ts.map +0 -1
  125. package/dist/browser/navigation-store.js +0 -625
  126. package/dist/browser/navigation-store.js.map +0 -1
  127. package/dist/browser/partial-update.d.ts +0 -75
  128. package/dist/browser/partial-update.d.ts.map +0 -1
  129. package/dist/browser/partial-update.js +0 -426
  130. package/dist/browser/partial-update.js.map +0 -1
  131. package/dist/browser/react/Link.d.ts +0 -86
  132. package/dist/browser/react/Link.d.ts.map +0 -1
  133. package/dist/browser/react/Link.js +0 -128
  134. package/dist/browser/react/Link.js.map +0 -1
  135. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  136. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  137. package/dist/browser/react/NavigationProvider.js +0 -216
  138. package/dist/browser/react/NavigationProvider.js.map +0 -1
  139. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  140. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  141. package/dist/browser/react/ScrollRestoration.js +0 -57
  142. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  143. package/dist/browser/react/context.d.ts +0 -46
  144. package/dist/browser/react/context.d.ts.map +0 -1
  145. package/dist/browser/react/context.js +0 -10
  146. package/dist/browser/react/context.js.map +0 -1
  147. package/dist/browser/react/index.d.ts +0 -11
  148. package/dist/browser/react/index.d.ts.map +0 -1
  149. package/dist/browser/react/index.js +0 -22
  150. package/dist/browser/react/index.js.map +0 -1
  151. package/dist/browser/react/location-state-shared.d.ts +0 -63
  152. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  153. package/dist/browser/react/location-state-shared.js +0 -81
  154. package/dist/browser/react/location-state-shared.js.map +0 -1
  155. package/dist/browser/react/location-state.d.ts +0 -23
  156. package/dist/browser/react/location-state.d.ts.map +0 -1
  157. package/dist/browser/react/location-state.js +0 -29
  158. package/dist/browser/react/location-state.js.map +0 -1
  159. package/dist/browser/react/mount-context.d.ts +0 -24
  160. package/dist/browser/react/mount-context.d.ts.map +0 -1
  161. package/dist/browser/react/mount-context.js +0 -24
  162. package/dist/browser/react/mount-context.js.map +0 -1
  163. package/dist/browser/react/use-action.d.ts +0 -64
  164. package/dist/browser/react/use-action.d.ts.map +0 -1
  165. package/dist/browser/react/use-action.js +0 -134
  166. package/dist/browser/react/use-action.js.map +0 -1
  167. package/dist/browser/react/use-client-cache.d.ts +0 -41
  168. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  169. package/dist/browser/react/use-client-cache.js +0 -39
  170. package/dist/browser/react/use-client-cache.js.map +0 -1
  171. package/dist/browser/react/use-handle.d.ts +0 -31
  172. package/dist/browser/react/use-handle.d.ts.map +0 -1
  173. package/dist/browser/react/use-handle.js +0 -144
  174. package/dist/browser/react/use-handle.js.map +0 -1
  175. package/dist/browser/react/use-href.d.ts +0 -33
  176. package/dist/browser/react/use-href.d.ts.map +0 -1
  177. package/dist/browser/react/use-href.js +0 -39
  178. package/dist/browser/react/use-href.js.map +0 -1
  179. package/dist/browser/react/use-link-status.d.ts +0 -37
  180. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  181. package/dist/browser/react/use-link-status.js +0 -99
  182. package/dist/browser/react/use-link-status.js.map +0 -1
  183. package/dist/browser/react/use-mount.d.ts +0 -25
  184. package/dist/browser/react/use-mount.d.ts.map +0 -1
  185. package/dist/browser/react/use-mount.js +0 -30
  186. package/dist/browser/react/use-mount.js.map +0 -1
  187. package/dist/browser/react/use-navigation.d.ts +0 -27
  188. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  189. package/dist/browser/react/use-navigation.js +0 -87
  190. package/dist/browser/react/use-navigation.js.map +0 -1
  191. package/dist/browser/react/use-segments.d.ts +0 -38
  192. package/dist/browser/react/use-segments.d.ts.map +0 -1
  193. package/dist/browser/react/use-segments.js +0 -130
  194. package/dist/browser/react/use-segments.js.map +0 -1
  195. package/dist/browser/request-controller.d.ts +0 -26
  196. package/dist/browser/request-controller.d.ts.map +0 -1
  197. package/dist/browser/request-controller.js +0 -147
  198. package/dist/browser/request-controller.js.map +0 -1
  199. package/dist/browser/rsc-router.d.ts +0 -129
  200. package/dist/browser/rsc-router.d.ts.map +0 -1
  201. package/dist/browser/rsc-router.js +0 -195
  202. package/dist/browser/rsc-router.js.map +0 -1
  203. package/dist/browser/scroll-restoration.d.ts +0 -93
  204. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  205. package/dist/browser/scroll-restoration.js +0 -321
  206. package/dist/browser/scroll-restoration.js.map +0 -1
  207. package/dist/browser/segment-structure-assert.d.ts +0 -17
  208. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  209. package/dist/browser/segment-structure-assert.js +0 -59
  210. package/dist/browser/segment-structure-assert.js.map +0 -1
  211. package/dist/browser/server-action-bridge.d.ts +0 -26
  212. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  213. package/dist/browser/server-action-bridge.js +0 -668
  214. package/dist/browser/server-action-bridge.js.map +0 -1
  215. package/dist/browser/shallow.d.ts +0 -12
  216. package/dist/browser/shallow.d.ts.map +0 -1
  217. package/dist/browser/shallow.js +0 -34
  218. package/dist/browser/shallow.js.map +0 -1
  219. package/dist/browser/types.d.ts +0 -369
  220. package/dist/browser/types.d.ts.map +0 -1
  221. package/dist/browser/types.js +0 -2
  222. package/dist/browser/types.js.map +0 -1
  223. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  224. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  225. package/dist/build/__tests__/generate-cli.test.js +0 -237
  226. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  227. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  228. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  229. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  230. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  231. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  232. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  233. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  234. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  235. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  236. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  237. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  238. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  239. package/dist/build/generate-manifest.d.ts +0 -81
  240. package/dist/build/generate-manifest.d.ts.map +0 -1
  241. package/dist/build/generate-manifest.js +0 -276
  242. package/dist/build/generate-manifest.js.map +0 -1
  243. package/dist/build/generate-route-types.d.ts +0 -115
  244. package/dist/build/generate-route-types.d.ts.map +0 -1
  245. package/dist/build/generate-route-types.js +0 -740
  246. package/dist/build/generate-route-types.js.map +0 -1
  247. package/dist/build/index.d.ts +0 -21
  248. package/dist/build/index.d.ts.map +0 -1
  249. package/dist/build/index.js +0 -21
  250. package/dist/build/index.js.map +0 -1
  251. package/dist/build/route-trie.d.ts +0 -71
  252. package/dist/build/route-trie.d.ts.map +0 -1
  253. package/dist/build/route-trie.js +0 -175
  254. package/dist/build/route-trie.js.map +0 -1
  255. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  256. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  257. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  258. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  259. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  260. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  261. package/dist/cache/__tests__/document-cache.test.js +0 -345
  262. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  263. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  264. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  265. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  266. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  267. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  268. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  269. package/dist/cache/__tests__/memory-store.test.js +0 -367
  270. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  271. package/dist/cache/cache-scope.d.ts +0 -102
  272. package/dist/cache/cache-scope.d.ts.map +0 -1
  273. package/dist/cache/cache-scope.js +0 -440
  274. package/dist/cache/cache-scope.js.map +0 -1
  275. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  276. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  277. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  278. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  279. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  280. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  281. package/dist/cache/cf/cf-cache-store.js +0 -242
  282. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  283. package/dist/cache/cf/index.d.ts +0 -14
  284. package/dist/cache/cf/index.d.ts.map +0 -1
  285. package/dist/cache/cf/index.js +0 -17
  286. package/dist/cache/cf/index.js.map +0 -1
  287. package/dist/cache/document-cache.d.ts +0 -64
  288. package/dist/cache/document-cache.d.ts.map +0 -1
  289. package/dist/cache/document-cache.js +0 -228
  290. package/dist/cache/document-cache.js.map +0 -1
  291. package/dist/cache/index.d.ts +0 -19
  292. package/dist/cache/index.d.ts.map +0 -1
  293. package/dist/cache/index.js +0 -21
  294. package/dist/cache/index.js.map +0 -1
  295. package/dist/cache/memory-segment-store.d.ts +0 -110
  296. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  297. package/dist/cache/memory-segment-store.js +0 -117
  298. package/dist/cache/memory-segment-store.js.map +0 -1
  299. package/dist/cache/memory-store.d.ts +0 -41
  300. package/dist/cache/memory-store.d.ts.map +0 -1
  301. package/dist/cache/memory-store.js +0 -191
  302. package/dist/cache/memory-store.js.map +0 -1
  303. package/dist/cache/types.d.ts +0 -317
  304. package/dist/cache/types.d.ts.map +0 -1
  305. package/dist/cache/types.js +0 -12
  306. package/dist/cache/types.js.map +0 -1
  307. package/dist/client.d.ts +0 -248
  308. package/dist/client.d.ts.map +0 -1
  309. package/dist/client.js +0 -367
  310. package/dist/client.js.map +0 -1
  311. package/dist/client.rsc.d.ts +0 -26
  312. package/dist/client.rsc.d.ts.map +0 -1
  313. package/dist/client.rsc.js +0 -46
  314. package/dist/client.rsc.js.map +0 -1
  315. package/dist/component-utils.d.ts +0 -36
  316. package/dist/component-utils.d.ts.map +0 -1
  317. package/dist/component-utils.js +0 -61
  318. package/dist/component-utils.js.map +0 -1
  319. package/dist/components/DefaultDocument.d.ts +0 -13
  320. package/dist/components/DefaultDocument.d.ts.map +0 -1
  321. package/dist/components/DefaultDocument.js +0 -15
  322. package/dist/components/DefaultDocument.js.map +0 -1
  323. package/dist/debug.d.ts +0 -58
  324. package/dist/debug.d.ts.map +0 -1
  325. package/dist/debug.js +0 -157
  326. package/dist/debug.js.map +0 -1
  327. package/dist/default-error-boundary.d.ts +0 -11
  328. package/dist/default-error-boundary.d.ts.map +0 -1
  329. package/dist/default-error-boundary.js +0 -45
  330. package/dist/default-error-boundary.js.map +0 -1
  331. package/dist/deps/browser.d.ts +0 -2
  332. package/dist/deps/browser.d.ts.map +0 -1
  333. package/dist/deps/browser.js +0 -3
  334. package/dist/deps/browser.js.map +0 -1
  335. package/dist/deps/html-stream-client.d.ts +0 -2
  336. package/dist/deps/html-stream-client.d.ts.map +0 -1
  337. package/dist/deps/html-stream-client.js +0 -3
  338. package/dist/deps/html-stream-client.js.map +0 -1
  339. package/dist/deps/html-stream-server.d.ts +0 -2
  340. package/dist/deps/html-stream-server.d.ts.map +0 -1
  341. package/dist/deps/html-stream-server.js +0 -3
  342. package/dist/deps/html-stream-server.js.map +0 -1
  343. package/dist/deps/rsc.d.ts +0 -2
  344. package/dist/deps/rsc.d.ts.map +0 -1
  345. package/dist/deps/rsc.js +0 -4
  346. package/dist/deps/rsc.js.map +0 -1
  347. package/dist/deps/ssr.d.ts +0 -2
  348. package/dist/deps/ssr.d.ts.map +0 -1
  349. package/dist/deps/ssr.js +0 -3
  350. package/dist/deps/ssr.js.map +0 -1
  351. package/dist/errors.d.ts +0 -174
  352. package/dist/errors.d.ts.map +0 -1
  353. package/dist/errors.js +0 -241
  354. package/dist/errors.js.map +0 -1
  355. package/dist/handle.d.ts +0 -78
  356. package/dist/handle.d.ts.map +0 -1
  357. package/dist/handle.js +0 -82
  358. package/dist/handle.js.map +0 -1
  359. package/dist/handles/MetaTags.d.ts +0 -14
  360. package/dist/handles/MetaTags.d.ts.map +0 -1
  361. package/dist/handles/MetaTags.js +0 -136
  362. package/dist/handles/MetaTags.js.map +0 -1
  363. package/dist/handles/index.d.ts +0 -6
  364. package/dist/handles/index.d.ts.map +0 -1
  365. package/dist/handles/index.js +0 -6
  366. package/dist/handles/index.js.map +0 -1
  367. package/dist/handles/meta.d.ts +0 -39
  368. package/dist/handles/meta.d.ts.map +0 -1
  369. package/dist/handles/meta.js +0 -202
  370. package/dist/handles/meta.js.map +0 -1
  371. package/dist/host/__tests__/errors.test.d.ts +0 -2
  372. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  373. package/dist/host/__tests__/errors.test.js +0 -76
  374. package/dist/host/__tests__/errors.test.js.map +0 -1
  375. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  376. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  377. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  378. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  379. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  380. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  381. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  382. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  383. package/dist/host/__tests__/router.test.d.ts +0 -2
  384. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  385. package/dist/host/__tests__/router.test.js +0 -241
  386. package/dist/host/__tests__/router.test.js.map +0 -1
  387. package/dist/host/__tests__/testing.test.d.ts +0 -2
  388. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  389. package/dist/host/__tests__/testing.test.js +0 -64
  390. package/dist/host/__tests__/testing.test.js.map +0 -1
  391. package/dist/host/__tests__/utils.test.d.ts +0 -2
  392. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  393. package/dist/host/__tests__/utils.test.js +0 -29
  394. package/dist/host/__tests__/utils.test.js.map +0 -1
  395. package/dist/host/cookie-handler.d.ts +0 -34
  396. package/dist/host/cookie-handler.d.ts.map +0 -1
  397. package/dist/host/cookie-handler.js +0 -124
  398. package/dist/host/cookie-handler.js.map +0 -1
  399. package/dist/host/errors.d.ts +0 -56
  400. package/dist/host/errors.d.ts.map +0 -1
  401. package/dist/host/errors.js +0 -79
  402. package/dist/host/errors.js.map +0 -1
  403. package/dist/host/index.d.ts +0 -29
  404. package/dist/host/index.d.ts.map +0 -1
  405. package/dist/host/index.js +0 -32
  406. package/dist/host/index.js.map +0 -1
  407. package/dist/host/pattern-matcher.d.ts +0 -36
  408. package/dist/host/pattern-matcher.d.ts.map +0 -1
  409. package/dist/host/pattern-matcher.js +0 -172
  410. package/dist/host/pattern-matcher.js.map +0 -1
  411. package/dist/host/router.d.ts +0 -26
  412. package/dist/host/router.d.ts.map +0 -1
  413. package/dist/host/router.js +0 -218
  414. package/dist/host/router.js.map +0 -1
  415. package/dist/host/testing.d.ts +0 -36
  416. package/dist/host/testing.d.ts.map +0 -1
  417. package/dist/host/testing.js +0 -55
  418. package/dist/host/testing.js.map +0 -1
  419. package/dist/host/types.d.ts +0 -115
  420. package/dist/host/types.d.ts.map +0 -1
  421. package/dist/host/types.js +0 -7
  422. package/dist/host/types.js.map +0 -1
  423. package/dist/host/utils.d.ts +0 -21
  424. package/dist/host/utils.d.ts.map +0 -1
  425. package/dist/host/utils.js +0 -23
  426. package/dist/host/utils.js.map +0 -1
  427. package/dist/href-client.d.ts +0 -131
  428. package/dist/href-client.d.ts.map +0 -1
  429. package/dist/href-client.js +0 -64
  430. package/dist/href-client.js.map +0 -1
  431. package/dist/href-context.d.ts +0 -29
  432. package/dist/href-context.d.ts.map +0 -1
  433. package/dist/href-context.js +0 -21
  434. package/dist/href-context.js.map +0 -1
  435. package/dist/index.d.ts +0 -73
  436. package/dist/index.d.ts.map +0 -1
  437. package/dist/index.js +0 -91
  438. package/dist/index.js.map +0 -1
  439. package/dist/index.rsc.d.ts +0 -32
  440. package/dist/index.rsc.d.ts.map +0 -1
  441. package/dist/index.rsc.js +0 -40
  442. package/dist/index.rsc.js.map +0 -1
  443. package/dist/internal-debug.d.ts +0 -2
  444. package/dist/internal-debug.d.ts.map +0 -1
  445. package/dist/internal-debug.js +0 -5
  446. package/dist/internal-debug.js.map +0 -1
  447. package/dist/loader.d.ts +0 -14
  448. package/dist/loader.d.ts.map +0 -1
  449. package/dist/loader.js +0 -20
  450. package/dist/loader.js.map +0 -1
  451. package/dist/loader.rsc.d.ts +0 -19
  452. package/dist/loader.rsc.d.ts.map +0 -1
  453. package/dist/loader.rsc.js +0 -99
  454. package/dist/loader.rsc.js.map +0 -1
  455. package/dist/network-error-thrower.d.ts +0 -17
  456. package/dist/network-error-thrower.d.ts.map +0 -1
  457. package/dist/network-error-thrower.js +0 -14
  458. package/dist/network-error-thrower.js.map +0 -1
  459. package/dist/outlet-context.d.ts +0 -13
  460. package/dist/outlet-context.d.ts.map +0 -1
  461. package/dist/outlet-context.js +0 -3
  462. package/dist/outlet-context.js.map +0 -1
  463. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  464. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  465. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  466. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  467. package/dist/prerender/param-hash.d.ts +0 -16
  468. package/dist/prerender/param-hash.d.ts.map +0 -1
  469. package/dist/prerender/param-hash.js +0 -36
  470. package/dist/prerender/param-hash.js.map +0 -1
  471. package/dist/prerender/store.d.ts +0 -38
  472. package/dist/prerender/store.d.ts.map +0 -1
  473. package/dist/prerender/store.js +0 -61
  474. package/dist/prerender/store.js.map +0 -1
  475. package/dist/prerender.d.ts +0 -66
  476. package/dist/prerender.d.ts.map +0 -1
  477. package/dist/prerender.js +0 -57
  478. package/dist/prerender.js.map +0 -1
  479. package/dist/reverse.d.ts +0 -196
  480. package/dist/reverse.d.ts.map +0 -1
  481. package/dist/reverse.js +0 -78
  482. package/dist/reverse.js.map +0 -1
  483. package/dist/root-error-boundary.d.ts +0 -33
  484. package/dist/root-error-boundary.d.ts.map +0 -1
  485. package/dist/root-error-boundary.js +0 -165
  486. package/dist/root-error-boundary.js.map +0 -1
  487. package/dist/route-content-wrapper.d.ts +0 -46
  488. package/dist/route-content-wrapper.d.ts.map +0 -1
  489. package/dist/route-content-wrapper.js +0 -77
  490. package/dist/route-content-wrapper.js.map +0 -1
  491. package/dist/route-definition.d.ts +0 -421
  492. package/dist/route-definition.d.ts.map +0 -1
  493. package/dist/route-definition.js +0 -868
  494. package/dist/route-definition.js.map +0 -1
  495. package/dist/route-map-builder.d.ts +0 -155
  496. package/dist/route-map-builder.d.ts.map +0 -1
  497. package/dist/route-map-builder.js +0 -237
  498. package/dist/route-map-builder.js.map +0 -1
  499. package/dist/route-types.d.ts +0 -165
  500. package/dist/route-types.d.ts.map +0 -1
  501. package/dist/route-types.js +0 -7
  502. package/dist/route-types.js.map +0 -1
  503. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  504. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  505. package/dist/router/__tests__/handler-context.test.js +0 -65
  506. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  507. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  508. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  509. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  510. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  511. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  512. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  513. package/dist/router/__tests__/match-context.test.js +0 -92
  514. package/dist/router/__tests__/match-context.test.js.map +0 -1
  515. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  516. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  517. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  518. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  519. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  520. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  521. package/dist/router/__tests__/match-result.test.js +0 -457
  522. package/dist/router/__tests__/match-result.test.js.map +0 -1
  523. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  524. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  525. package/dist/router/__tests__/on-error.test.js +0 -678
  526. package/dist/router/__tests__/on-error.test.js.map +0 -1
  527. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  528. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  529. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  530. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  531. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  532. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  533. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  534. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  535. package/dist/router/error-handling.d.ts +0 -77
  536. package/dist/router/error-handling.d.ts.map +0 -1
  537. package/dist/router/error-handling.js +0 -202
  538. package/dist/router/error-handling.js.map +0 -1
  539. package/dist/router/handler-context.d.ts +0 -20
  540. package/dist/router/handler-context.d.ts.map +0 -1
  541. package/dist/router/handler-context.js +0 -198
  542. package/dist/router/handler-context.js.map +0 -1
  543. package/dist/router/intercept-resolution.d.ts +0 -66
  544. package/dist/router/intercept-resolution.d.ts.map +0 -1
  545. package/dist/router/intercept-resolution.js +0 -246
  546. package/dist/router/intercept-resolution.js.map +0 -1
  547. package/dist/router/loader-resolution.d.ts +0 -64
  548. package/dist/router/loader-resolution.d.ts.map +0 -1
  549. package/dist/router/loader-resolution.js +0 -284
  550. package/dist/router/loader-resolution.js.map +0 -1
  551. package/dist/router/logging.d.ts +0 -15
  552. package/dist/router/logging.d.ts.map +0 -1
  553. package/dist/router/logging.js +0 -99
  554. package/dist/router/logging.js.map +0 -1
  555. package/dist/router/manifest.d.ts +0 -22
  556. package/dist/router/manifest.d.ts.map +0 -1
  557. package/dist/router/manifest.js +0 -181
  558. package/dist/router/manifest.js.map +0 -1
  559. package/dist/router/match-api.d.ts +0 -35
  560. package/dist/router/match-api.d.ts.map +0 -1
  561. package/dist/router/match-api.js +0 -406
  562. package/dist/router/match-api.js.map +0 -1
  563. package/dist/router/match-context.d.ts +0 -206
  564. package/dist/router/match-context.d.ts.map +0 -1
  565. package/dist/router/match-context.js +0 -17
  566. package/dist/router/match-context.js.map +0 -1
  567. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  568. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  569. package/dist/router/match-middleware/background-revalidation.js +0 -75
  570. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  571. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  572. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  573. package/dist/router/match-middleware/cache-lookup.js +0 -257
  574. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  575. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  576. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  577. package/dist/router/match-middleware/cache-store.js +0 -108
  578. package/dist/router/match-middleware/cache-store.js.map +0 -1
  579. package/dist/router/match-middleware/index.d.ts +0 -81
  580. package/dist/router/match-middleware/index.d.ts.map +0 -1
  581. package/dist/router/match-middleware/index.js +0 -80
  582. package/dist/router/match-middleware/index.js.map +0 -1
  583. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  584. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  585. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  586. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  587. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  588. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  589. package/dist/router/match-middleware/segment-resolution.js +0 -53
  590. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  591. package/dist/router/match-pipelines.d.ts +0 -147
  592. package/dist/router/match-pipelines.d.ts.map +0 -1
  593. package/dist/router/match-pipelines.js +0 -82
  594. package/dist/router/match-pipelines.js.map +0 -1
  595. package/dist/router/match-result.d.ts +0 -126
  596. package/dist/router/match-result.d.ts.map +0 -1
  597. package/dist/router/match-result.js +0 -93
  598. package/dist/router/match-result.js.map +0 -1
  599. package/dist/router/metrics.d.ts +0 -20
  600. package/dist/router/metrics.d.ts.map +0 -1
  601. package/dist/router/metrics.js +0 -47
  602. package/dist/router/metrics.js.map +0 -1
  603. package/dist/router/middleware.d.ts +0 -249
  604. package/dist/router/middleware.d.ts.map +0 -1
  605. package/dist/router/middleware.js +0 -434
  606. package/dist/router/middleware.js.map +0 -1
  607. package/dist/router/middleware.test.d.ts +0 -2
  608. package/dist/router/middleware.test.d.ts.map +0 -1
  609. package/dist/router/middleware.test.js +0 -816
  610. package/dist/router/middleware.test.js.map +0 -1
  611. package/dist/router/pattern-matching.d.ts +0 -149
  612. package/dist/router/pattern-matching.d.ts.map +0 -1
  613. package/dist/router/pattern-matching.js +0 -349
  614. package/dist/router/pattern-matching.js.map +0 -1
  615. package/dist/router/revalidation.d.ts +0 -44
  616. package/dist/router/revalidation.d.ts.map +0 -1
  617. package/dist/router/revalidation.js +0 -147
  618. package/dist/router/revalidation.js.map +0 -1
  619. package/dist/router/router-context.d.ts +0 -135
  620. package/dist/router/router-context.d.ts.map +0 -1
  621. package/dist/router/router-context.js +0 -36
  622. package/dist/router/router-context.js.map +0 -1
  623. package/dist/router/segment-resolution.d.ts +0 -127
  624. package/dist/router/segment-resolution.d.ts.map +0 -1
  625. package/dist/router/segment-resolution.js +0 -919
  626. package/dist/router/segment-resolution.js.map +0 -1
  627. package/dist/router/trie-matching.d.ts +0 -40
  628. package/dist/router/trie-matching.d.ts.map +0 -1
  629. package/dist/router/trie-matching.js +0 -127
  630. package/dist/router/trie-matching.js.map +0 -1
  631. package/dist/router/types.d.ts +0 -136
  632. package/dist/router/types.d.ts.map +0 -1
  633. package/dist/router/types.js +0 -7
  634. package/dist/router/types.js.map +0 -1
  635. package/dist/router.d.ts +0 -753
  636. package/dist/router.d.ts.map +0 -1
  637. package/dist/router.gen.d.ts +0 -6
  638. package/dist/router.gen.d.ts.map +0 -1
  639. package/dist/router.gen.js +0 -6
  640. package/dist/router.gen.js.map +0 -1
  641. package/dist/router.js +0 -1304
  642. package/dist/router.js.map +0 -1
  643. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  644. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  645. package/dist/rsc/__tests__/helpers.test.js +0 -140
  646. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  647. package/dist/rsc/handler.d.ts +0 -45
  648. package/dist/rsc/handler.d.ts.map +0 -1
  649. package/dist/rsc/handler.js +0 -1172
  650. package/dist/rsc/handler.js.map +0 -1
  651. package/dist/rsc/helpers.d.ts +0 -16
  652. package/dist/rsc/helpers.d.ts.map +0 -1
  653. package/dist/rsc/helpers.js +0 -55
  654. package/dist/rsc/helpers.js.map +0 -1
  655. package/dist/rsc/index.d.ts +0 -22
  656. package/dist/rsc/index.d.ts.map +0 -1
  657. package/dist/rsc/index.js +0 -23
  658. package/dist/rsc/index.js.map +0 -1
  659. package/dist/rsc/nonce.d.ts +0 -9
  660. package/dist/rsc/nonce.d.ts.map +0 -1
  661. package/dist/rsc/nonce.js +0 -18
  662. package/dist/rsc/nonce.js.map +0 -1
  663. package/dist/rsc/types.d.ts +0 -206
  664. package/dist/rsc/types.d.ts.map +0 -1
  665. package/dist/rsc/types.js +0 -8
  666. package/dist/rsc/types.js.map +0 -1
  667. package/dist/search-params.d.ts +0 -103
  668. package/dist/search-params.d.ts.map +0 -1
  669. package/dist/search-params.js +0 -74
  670. package/dist/search-params.js.map +0 -1
  671. package/dist/segment-system.d.ts +0 -75
  672. package/dist/segment-system.d.ts.map +0 -1
  673. package/dist/segment-system.js +0 -336
  674. package/dist/segment-system.js.map +0 -1
  675. package/dist/server/context.d.ts +0 -245
  676. package/dist/server/context.d.ts.map +0 -1
  677. package/dist/server/context.js +0 -197
  678. package/dist/server/context.js.map +0 -1
  679. package/dist/server/fetchable-loader-store.d.ts +0 -18
  680. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  681. package/dist/server/fetchable-loader-store.js +0 -18
  682. package/dist/server/fetchable-loader-store.js.map +0 -1
  683. package/dist/server/handle-store.d.ts +0 -85
  684. package/dist/server/handle-store.d.ts.map +0 -1
  685. package/dist/server/handle-store.js +0 -142
  686. package/dist/server/handle-store.js.map +0 -1
  687. package/dist/server/loader-registry.d.ts +0 -55
  688. package/dist/server/loader-registry.d.ts.map +0 -1
  689. package/dist/server/loader-registry.js +0 -132
  690. package/dist/server/loader-registry.js.map +0 -1
  691. package/dist/server/request-context.d.ts +0 -226
  692. package/dist/server/request-context.d.ts.map +0 -1
  693. package/dist/server/request-context.js +0 -290
  694. package/dist/server/request-context.js.map +0 -1
  695. package/dist/server/root-layout.d.ts +0 -4
  696. package/dist/server/root-layout.d.ts.map +0 -1
  697. package/dist/server/root-layout.js +0 -5
  698. package/dist/server/root-layout.js.map +0 -1
  699. package/dist/server.d.ts +0 -15
  700. package/dist/server.d.ts.map +0 -1
  701. package/dist/server.js +0 -20
  702. package/dist/server.js.map +0 -1
  703. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  704. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  705. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  706. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  707. package/dist/ssr/index.d.ts +0 -98
  708. package/dist/ssr/index.d.ts.map +0 -1
  709. package/dist/ssr/index.js +0 -158
  710. package/dist/ssr/index.js.map +0 -1
  711. package/dist/static-handler.d.ts +0 -50
  712. package/dist/static-handler.d.ts.map +0 -1
  713. package/dist/static-handler.gen.d.ts +0 -5
  714. package/dist/static-handler.gen.d.ts.map +0 -1
  715. package/dist/static-handler.gen.js +0 -5
  716. package/dist/static-handler.gen.js.map +0 -1
  717. package/dist/static-handler.js +0 -29
  718. package/dist/static-handler.js.map +0 -1
  719. package/dist/theme/ThemeProvider.d.ts +0 -20
  720. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  721. package/dist/theme/ThemeProvider.js +0 -240
  722. package/dist/theme/ThemeProvider.js.map +0 -1
  723. package/dist/theme/ThemeScript.d.ts +0 -48
  724. package/dist/theme/ThemeScript.d.ts.map +0 -1
  725. package/dist/theme/ThemeScript.js +0 -13
  726. package/dist/theme/ThemeScript.js.map +0 -1
  727. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  728. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  729. package/dist/theme/__tests__/theme.test.js +0 -103
  730. package/dist/theme/__tests__/theme.test.js.map +0 -1
  731. package/dist/theme/constants.d.ts +0 -29
  732. package/dist/theme/constants.d.ts.map +0 -1
  733. package/dist/theme/constants.js +0 -48
  734. package/dist/theme/constants.js.map +0 -1
  735. package/dist/theme/index.d.ts +0 -31
  736. package/dist/theme/index.d.ts.map +0 -1
  737. package/dist/theme/index.js +0 -36
  738. package/dist/theme/index.js.map +0 -1
  739. package/dist/theme/theme-context.d.ts +0 -40
  740. package/dist/theme/theme-context.d.ts.map +0 -1
  741. package/dist/theme/theme-context.js +0 -60
  742. package/dist/theme/theme-context.js.map +0 -1
  743. package/dist/theme/theme-script.d.ts +0 -27
  744. package/dist/theme/theme-script.d.ts.map +0 -1
  745. package/dist/theme/theme-script.js +0 -147
  746. package/dist/theme/theme-script.js.map +0 -1
  747. package/dist/theme/types.d.ts +0 -163
  748. package/dist/theme/types.d.ts.map +0 -1
  749. package/dist/theme/types.js +0 -11
  750. package/dist/theme/types.js.map +0 -1
  751. package/dist/theme/use-theme.d.ts +0 -12
  752. package/dist/theme/use-theme.d.ts.map +0 -1
  753. package/dist/theme/use-theme.js +0 -40
  754. package/dist/theme/use-theme.js.map +0 -1
  755. package/dist/types.d.ts +0 -1479
  756. package/dist/types.d.ts.map +0 -1
  757. package/dist/types.js +0 -10
  758. package/dist/types.js.map +0 -1
  759. package/dist/urls.d.ts +0 -441
  760. package/dist/urls.d.ts.map +0 -1
  761. package/dist/urls.gen.d.ts +0 -8
  762. package/dist/urls.gen.d.ts.map +0 -1
  763. package/dist/urls.gen.js +0 -8
  764. package/dist/urls.gen.js.map +0 -1
  765. package/dist/urls.js +0 -443
  766. package/dist/urls.js.map +0 -1
  767. package/dist/use-loader.d.ts +0 -127
  768. package/dist/use-loader.d.ts.map +0 -1
  769. package/dist/use-loader.js +0 -237
  770. package/dist/use-loader.js.map +0 -1
  771. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  772. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  773. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  774. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  775. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  776. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  777. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  778. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  779. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  780. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  781. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  782. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  783. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  784. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  785. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  786. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  787. package/dist/vite/ast-handler-extract.d.ts +0 -49
  788. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  789. package/dist/vite/ast-handler-extract.js +0 -249
  790. package/dist/vite/ast-handler-extract.js.map +0 -1
  791. package/dist/vite/expose-action-id.d.ts +0 -19
  792. package/dist/vite/expose-action-id.d.ts.map +0 -1
  793. package/dist/vite/expose-action-id.js +0 -250
  794. package/dist/vite/expose-action-id.js.map +0 -1
  795. package/dist/vite/expose-id-utils.d.ts +0 -69
  796. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  797. package/dist/vite/expose-id-utils.js +0 -289
  798. package/dist/vite/expose-id-utils.js.map +0 -1
  799. package/dist/vite/expose-internal-ids.d.ts +0 -22
  800. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  801. package/dist/vite/expose-internal-ids.js +0 -886
  802. package/dist/vite/expose-internal-ids.js.map +0 -1
  803. package/dist/vite/index.d.ts +0 -149
  804. package/dist/vite/index.d.ts.map +0 -1
  805. package/dist/vite/index.js.map +0 -1
  806. package/dist/vite/index.named-routes.gen.ts +0 -103
  807. package/dist/vite/package-resolution.d.ts +0 -43
  808. package/dist/vite/package-resolution.d.ts.map +0 -1
  809. package/dist/vite/package-resolution.js +0 -112
  810. package/dist/vite/package-resolution.js.map +0 -1
  811. package/dist/vite/virtual-entries.d.ts +0 -25
  812. package/dist/vite/virtual-entries.d.ts.map +0 -1
  813. package/dist/vite/virtual-entries.js +0 -110
  814. package/dist/vite/virtual-entries.js.map +0 -1
@@ -1,919 +0,0 @@
1
- /**
2
- * Segment Resolution
3
- *
4
- * Extracted from createRouter closure. Contains all segment resolution functions
5
- * for both fresh (full match) and revalidation (partial match) paths.
6
- *
7
- * Functions receive a `deps` parameter for closure-bound helpers from createRouter.
8
- */
9
- import { DataNotFoundError, invariant, } from "../errors";
10
- import { createErrorInfo, createErrorSegment, createNotFoundInfo, createNotFoundSegment, } from "./error-handling.js";
11
- import { revalidate, } from "./loader-resolution.js";
12
- import { evaluateRevalidation } from "./revalidation.js";
13
- import { getRequestContext } from "../server/request-context.js";
14
- import { DefaultErrorFallback } from "../default-error-boundary.js";
15
- import { debugLog } from "./logging.js";
16
- /**
17
- * Handle Response returns from handlers.
18
- * When a handler returns a Response (e.g., redirect), throw it to trigger
19
- * the short-circuit mechanism. Otherwise return the ReactNode.
20
- */
21
- export function handleHandlerResult(result) {
22
- if (result instanceof Response) {
23
- throw result;
24
- }
25
- if (result instanceof Promise) {
26
- return result.then((resolved) => {
27
- if (resolved instanceof Response) {
28
- throw resolved;
29
- }
30
- return resolved;
31
- });
32
- }
33
- return result;
34
- }
35
- // ---------------------------------------------------------------------------
36
- // Fresh path (full match, no revalidation)
37
- // ---------------------------------------------------------------------------
38
- /**
39
- * Resolve loaders for an entry and emit segments.
40
- * Loaders are run lazily via ctx.use() and memoized for parallel execution.
41
- */
42
- export async function resolveLoaders(entry, ctx, belongsToRoute, deps, shortCodeOverride) {
43
- const loaderEntries = entry.loader ?? [];
44
- if (loaderEntries.length === 0)
45
- return [];
46
- const shortCode = shortCodeOverride ?? entry.shortCode;
47
- const hasLoading = "loading" in entry && entry.loading !== undefined;
48
- const loadingDisabled = hasLoading && entry.loading === false;
49
- return Promise.all(loaderEntries.map(async ({ loader }, i) => {
50
- const segmentId = `${shortCode}D${i}.${loader.$$id}`;
51
- return {
52
- id: segmentId,
53
- namespace: entry.id,
54
- type: "loader",
55
- index: i,
56
- component: null,
57
- params: ctx.params,
58
- loaderId: loader.$$id,
59
- loaderData: deps.wrapLoaderPromise(loadingDisabled ? await ctx.use(loader) : ctx.use(loader), entry, segmentId, ctx.pathname),
60
- belongsToRoute,
61
- };
62
- }));
63
- }
64
- /**
65
- * Resolve segments from EntryData.
66
- * Executes middlewares, loaders, parallels, and handlers in correct order.
67
- * Returns array: [main segment, ...orphan layout segments]
68
- */
69
- export async function resolveSegment(entry, routeKey, params, context, loaderPromises, deps, isRouteEntry = false, options) {
70
- const segments = [];
71
- if (entry.type === "layout" || entry.type === "cache") {
72
- if (!options?.skipLoaders) {
73
- const loaderSegments = await resolveLoaders(entry, context, false, deps);
74
- segments.push(...loaderSegments);
75
- }
76
- for (const parallelEntry of entry.parallel) {
77
- const parallelSegments = await resolveParallelEntry(parallelEntry, params, context, false, entry.shortCode, deps);
78
- segments.push(...parallelSegments);
79
- }
80
- context._currentSegmentId = entry.shortCode;
81
- const component = typeof entry.handler === "function"
82
- ? handleHandlerResult(await entry.handler(context))
83
- : entry.handler;
84
- segments.push({
85
- id: entry.shortCode,
86
- namespace: entry.id,
87
- type: "layout",
88
- index: 0,
89
- component,
90
- loading: entry.loading === false ? null : entry.loading,
91
- params,
92
- belongsToRoute: false,
93
- layoutName: entry.id,
94
- ...(entry.mountPath ? { mountPath: entry.mountPath } : {}),
95
- });
96
- for (const orphan of entry.layout) {
97
- const orphanSegments = await resolveOrphanLayout(orphan, params, context, loaderPromises, false, deps);
98
- segments.push(...orphanSegments);
99
- }
100
- }
101
- else if (entry.type === "route") {
102
- if (!options?.skipLoaders) {
103
- const loaderSegments = await resolveLoaders(entry, context, true, deps);
104
- segments.push(...loaderSegments);
105
- }
106
- for (const orphan of entry.layout) {
107
- const orphanSegments = await resolveOrphanLayout(orphan, params, context, loaderPromises, true, deps);
108
- segments.push(...orphanSegments);
109
- }
110
- for (const parallelEntry of entry.parallel) {
111
- const parallelSegments = await resolveParallelEntry(parallelEntry, params, context, true, entry.shortCode, deps);
112
- segments.push(...parallelSegments);
113
- }
114
- context._currentSegmentId = entry.shortCode;
115
- let component;
116
- if (entry.loading) {
117
- const result = handleHandlerResult(entry.handler(context));
118
- component = result instanceof Promise ? deps.trackHandler(result) : result;
119
- }
120
- else {
121
- component = handleHandlerResult(await entry.handler(context));
122
- }
123
- segments.push({
124
- id: entry.shortCode,
125
- namespace: entry.id,
126
- type: "route",
127
- index: 0,
128
- component,
129
- loading: entry.loading === false ? null : entry.loading,
130
- params,
131
- belongsToRoute: true,
132
- ...(entry.mountPath ? { mountPath: entry.mountPath } : {}),
133
- });
134
- }
135
- else {
136
- throw new Error(`Unknown entry type: ${entry.type}`);
137
- }
138
- return segments;
139
- }
140
- /**
141
- * Resolve orphan layout with its middlewares, loaders, and parallels.
142
- */
143
- export async function resolveOrphanLayout(orphan, params, context, loaderPromises, belongsToRoute, deps) {
144
- invariant(orphan.type === "layout" || orphan.type === "cache", `Expected orphan to be a layout or cache, got: ${orphan.type}`);
145
- const loaderSegments = await resolveLoaders(orphan, context, belongsToRoute, deps);
146
- const segments = [...loaderSegments];
147
- for (const parallelEntry of orphan.parallel) {
148
- const parallelSegments = await resolveParallelEntry(parallelEntry, params, context, belongsToRoute, orphan.shortCode, deps);
149
- segments.push(...parallelSegments);
150
- }
151
- const component = typeof orphan.handler === "function"
152
- ? handleHandlerResult(await orphan.handler(context))
153
- : orphan.handler;
154
- segments.push({
155
- id: orphan.shortCode,
156
- namespace: orphan.id,
157
- type: "layout",
158
- index: 0,
159
- component,
160
- params,
161
- belongsToRoute,
162
- layoutName: orphan.id,
163
- loading: orphan.loading === false ? null : orphan.loading,
164
- ...(orphan.mountPath ? { mountPath: orphan.mountPath } : {}),
165
- });
166
- return segments;
167
- }
168
- /**
169
- * Resolve parallel EntryData with its loaders and slot handlers.
170
- */
171
- export async function resolveParallelEntry(parallelEntry, params, context, belongsToRoute, parentShortCode, deps) {
172
- invariant(parallelEntry.type === "parallel", `Expected parallel entry, got: ${parallelEntry.type}`);
173
- const segments = [];
174
- const slots = parallelEntry.handler;
175
- for (const [slot, handler] of Object.entries(slots)) {
176
- let component;
177
- const hasLoadingFallback = parallelEntry.loading !== undefined && parallelEntry.loading !== false;
178
- if (hasLoadingFallback) {
179
- const result = typeof handler === "function" ? handler(context) : handler;
180
- component = result;
181
- }
182
- else {
183
- component =
184
- typeof handler === "function" ? await handler(context) : handler;
185
- }
186
- segments.push({
187
- id: `${parentShortCode}.${slot}`,
188
- namespace: parallelEntry.id,
189
- type: "parallel",
190
- index: 0,
191
- component,
192
- loading: parallelEntry.loading === false ? null : parallelEntry.loading,
193
- params,
194
- slot,
195
- belongsToRoute,
196
- parallelName: `${parallelEntry.id}.${slot}`,
197
- ...(parallelEntry.mountPath
198
- ? { mountPath: parallelEntry.mountPath }
199
- : {}),
200
- });
201
- }
202
- if (!parallelEntry.loading) {
203
- const loaderSegments = await resolveLoaders(parallelEntry, context, belongsToRoute, deps, parentShortCode);
204
- segments.push(...loaderSegments);
205
- }
206
- return segments;
207
- }
208
- /**
209
- * Wrapper that adds error boundary handling to segment resolution.
210
- */
211
- export async function resolveWithErrorHandling(entry, routeKey, params, context, loaderPromises, resolveFn, deps, errorContext) {
212
- try {
213
- return await resolveFn();
214
- }
215
- catch (error) {
216
- if (error instanceof Response) {
217
- throw error;
218
- }
219
- if (error instanceof DataNotFoundError) {
220
- const notFoundFallback = deps.findNearestNotFoundBoundary(entry);
221
- if (notFoundFallback) {
222
- const notFoundInfo = createNotFoundInfo(error, entry.shortCode, entry.type, context.pathname);
223
- deps.callOnError(error, "handler", {
224
- request: context.request,
225
- url: context.url,
226
- routeKey,
227
- params,
228
- segmentId: entry.shortCode,
229
- segmentType: entry.type,
230
- env: errorContext?.env,
231
- isPartial: errorContext?.isPartial,
232
- handledByBoundary: true,
233
- metadata: { notFound: true, message: notFoundInfo.message },
234
- requestStartTime: errorContext?.requestStartTime,
235
- });
236
- debugLog("segment", "notFound boundary handled error", {
237
- segmentId: entry.shortCode,
238
- message: notFoundInfo.message,
239
- });
240
- const reqCtx = getRequestContext();
241
- if (reqCtx) {
242
- reqCtx.res = new Response(null, {
243
- status: 404,
244
- headers: reqCtx.res.headers,
245
- });
246
- }
247
- const notFoundSegment = createNotFoundSegment(notFoundInfo, notFoundFallback, entry, params);
248
- return [notFoundSegment];
249
- }
250
- }
251
- const fallback = deps.findNearestErrorBoundary(entry);
252
- const segmentType = entry.type;
253
- const errorInfo = createErrorInfo(error, entry.shortCode, segmentType);
254
- const effectiveFallback = fallback ?? DefaultErrorFallback;
255
- deps.callOnError(error, "handler", {
256
- request: context.request,
257
- url: context.url,
258
- routeKey,
259
- params,
260
- segmentId: entry.shortCode,
261
- segmentType: entry.type,
262
- env: errorContext?.env,
263
- isPartial: errorContext?.isPartial,
264
- handledByBoundary: !!fallback,
265
- requestStartTime: errorContext?.requestStartTime,
266
- });
267
- debugLog("segment", "error boundary handled error", {
268
- segmentId: entry.shortCode,
269
- boundary: fallback ? "custom" : "default",
270
- message: errorInfo.message,
271
- });
272
- {
273
- const reqCtx = getRequestContext();
274
- if (reqCtx) {
275
- reqCtx.res = new Response(null, {
276
- status: 500,
277
- headers: reqCtx.res.headers,
278
- });
279
- }
280
- }
281
- const errorSegment = createErrorSegment(errorInfo, effectiveFallback, entry, params);
282
- return [errorSegment];
283
- }
284
- }
285
- /**
286
- * Resolve all segments for a route (used for single-cache-per-request pattern).
287
- */
288
- export async function resolveAllSegments(entries, routeKey, params, context, loaderPromises, deps, options) {
289
- const allSegments = [];
290
- const seenIds = new Set();
291
- for (const entry of entries) {
292
- const resolvedSegments = await resolveWithErrorHandling(entry, routeKey, params, context, loaderPromises, () => resolveSegment(entry, routeKey, params, context, loaderPromises, deps, false, options), deps);
293
- // Deduplicate by segment ID. include() scopes can produce entries that
294
- // resolve the same shared layout/loader segment. Duplicates in the segment
295
- // array propagate to the client's matched[] and change the React tree depth.
296
- for (const seg of resolvedSegments) {
297
- if (!seenIds.has(seg.id)) {
298
- seenIds.add(seg.id);
299
- allSegments.push(seg);
300
- }
301
- }
302
- }
303
- return allSegments;
304
- }
305
- /**
306
- * Resolve only loader segments for all entries (used when serving cached non-loader segments).
307
- */
308
- export async function resolveLoadersOnly(entries, context, deps) {
309
- const loaderSegments = [];
310
- for (const entry of entries) {
311
- const belongsToRoute = entry.type === "route";
312
- const segments = await resolveLoaders(entry, context, belongsToRoute, deps);
313
- loaderSegments.push(...segments);
314
- }
315
- return loaderSegments;
316
- }
317
- // ---------------------------------------------------------------------------
318
- // Revalidation path (partial match)
319
- // ---------------------------------------------------------------------------
320
- /**
321
- * Resolve loaders with revalidation awareness (for partial rendering).
322
- * Returns both segments to render AND all matched segment IDs.
323
- */
324
- export async function resolveLoadersWithRevalidation(entry, ctx, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, shortCodeOverride, stale) {
325
- const loaderEntries = entry.loader ?? [];
326
- if (loaderEntries.length === 0)
327
- return { segments: [], matchedIds: [] };
328
- const shortCode = shortCodeOverride ?? entry.shortCode;
329
- const loaderMeta = loaderEntries.map(({ loader, revalidate: loaderRevalidateFns }, i) => ({
330
- loader,
331
- loaderRevalidateFns,
332
- segmentId: `${shortCode}D${i}.${loader.$$id}`,
333
- index: i,
334
- }));
335
- const matchedIds = loaderMeta.map((m) => m.segmentId);
336
- const revalidationChecks = await Promise.all(loaderMeta.map(async ({ loader, loaderRevalidateFns, segmentId, index }) => {
337
- const shouldRun = await revalidate(async () => {
338
- if (!clientSegmentIds.has(segmentId))
339
- return true;
340
- const dummySegment = {
341
- id: segmentId,
342
- namespace: entry.id,
343
- type: "loader",
344
- index,
345
- component: null,
346
- params: ctx.params,
347
- loaderId: loader.$$id,
348
- belongsToRoute,
349
- };
350
- return await evaluateRevalidation({
351
- segment: dummySegment,
352
- prevParams,
353
- getPrevSegment: null,
354
- request,
355
- prevUrl,
356
- nextUrl,
357
- revalidations: loaderRevalidateFns.map((fn, j) => ({
358
- name: `loader-revalidate${j}`,
359
- fn,
360
- })),
361
- routeKey,
362
- context: ctx,
363
- actionContext,
364
- stale,
365
- });
366
- }, async () => true, () => false);
367
- return { shouldRun, loader, segmentId, index };
368
- }));
369
- const loadersToRun = revalidationChecks.filter((c) => c.shouldRun);
370
- const segments = loadersToRun.map(({ loader, segmentId, index }) => ({
371
- id: segmentId,
372
- namespace: entry.id,
373
- type: "loader",
374
- index,
375
- component: null,
376
- params: ctx.params,
377
- loaderId: loader.$$id,
378
- loaderData: deps.wrapLoaderPromise(ctx.use(loader), entry, segmentId, ctx.pathname),
379
- belongsToRoute,
380
- }));
381
- return { segments, matchedIds };
382
- }
383
- /**
384
- * Resolve only loader segments for all entries with revalidation logic.
385
- */
386
- export async function resolveLoadersOnlyWithRevalidation(entries, context, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext) {
387
- const allLoaderSegments = [];
388
- const allMatchedIds = [];
389
- for (const entry of entries) {
390
- const belongsToRoute = entry.type === "route";
391
- const { segments, matchedIds } = await resolveLoadersWithRevalidation(entry, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext);
392
- allLoaderSegments.push(...segments);
393
- allMatchedIds.push(...matchedIds);
394
- }
395
- return { segments: allLoaderSegments, matchedIds: allMatchedIds };
396
- }
397
- /**
398
- * Build a map of segment shortCode -> entry with revalidate functions.
399
- */
400
- export function buildEntryRevalidateMap(entries) {
401
- const map = new Map();
402
- function processEntry(entry, parentShortCode) {
403
- map.set(entry.shortCode, { entry, revalidate: entry.revalidate });
404
- if (entry.type !== "parallel") {
405
- for (const parallelEntry of entry.parallel) {
406
- if (parallelEntry.type === "parallel") {
407
- const slots = Object.keys(parallelEntry.handler);
408
- for (const slot of slots) {
409
- const parallelId = `${parallelEntry.shortCode}.${slot}`;
410
- map.set(parallelId, {
411
- entry: parallelEntry,
412
- revalidate: parallelEntry.revalidate,
413
- });
414
- }
415
- }
416
- }
417
- }
418
- for (const layoutEntry of entry.layout) {
419
- processEntry(layoutEntry);
420
- }
421
- }
422
- for (const entry of entries) {
423
- processEntry(entry);
424
- }
425
- return map;
426
- }
427
- /**
428
- * Resolve parallel segments with revalidation.
429
- */
430
- export async function resolveParallelSegmentsWithRevalidation(entry, params, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, stale) {
431
- const segments = [];
432
- const matchedIds = [];
433
- for (const parallelEntry of entry.parallel) {
434
- invariant(parallelEntry.type === "parallel", `Expected parallel entry, got: ${parallelEntry.type}`);
435
- const slots = parallelEntry.handler;
436
- for (const [slot, handler] of Object.entries(slots)) {
437
- const parallelId = `${entry.shortCode}.${slot}`;
438
- const isFullRefetch = clientSegmentIds.size === 0;
439
- // When the parent layout is new (not in client's segment set),
440
- // all its parallel children must be resolved and tracked.
441
- // Without this, navigating to a new layout with parallels
442
- // (e.g., BlogLayout with @sidebar) from a different route
443
- // would silently drop those parallel segments.
444
- const isNewParent = !clientSegmentIds.has(entry.shortCode);
445
- if (isFullRefetch ||
446
- clientSegmentIds.has(parallelId) ||
447
- belongsToRoute ||
448
- isNewParent) {
449
- matchedIds.push(parallelId);
450
- }
451
- const shouldResolve = await (async () => {
452
- if (isFullRefetch)
453
- return true;
454
- if (!clientSegmentIds.has(parallelId))
455
- return belongsToRoute || isNewParent;
456
- const dummySegment = {
457
- id: parallelId,
458
- namespace: parallelEntry.id,
459
- type: "parallel",
460
- index: 0,
461
- component: null,
462
- params,
463
- slot,
464
- belongsToRoute,
465
- parallelName: `${parallelEntry.id}.${slot}`,
466
- ...(parallelEntry.mountPath
467
- ? { mountPath: parallelEntry.mountPath }
468
- : {}),
469
- };
470
- return await evaluateRevalidation({
471
- segment: dummySegment,
472
- prevParams,
473
- getPrevSegment: null,
474
- request,
475
- prevUrl,
476
- nextUrl,
477
- revalidations: parallelEntry.revalidate.map((fn, i) => ({
478
- name: `revalidate${i}`,
479
- fn,
480
- })),
481
- routeKey,
482
- context,
483
- actionContext,
484
- stale,
485
- });
486
- })();
487
- let component;
488
- const hasLoadingFallback = parallelEntry.loading !== undefined && parallelEntry.loading !== false;
489
- if (!shouldResolve) {
490
- component = null;
491
- }
492
- else if (hasLoadingFallback) {
493
- component =
494
- (typeof handler === "function"
495
- ? handler(context)
496
- : handler);
497
- }
498
- else {
499
- component =
500
- typeof handler === "function"
501
- ? await handler(context)
502
- : handler;
503
- }
504
- segments.push({
505
- id: parallelId,
506
- namespace: parallelEntry.id,
507
- type: "parallel",
508
- index: 0,
509
- component,
510
- loading: parallelEntry.loading === false ? null : parallelEntry.loading,
511
- params,
512
- slot,
513
- belongsToRoute,
514
- parallelName: `${parallelEntry.id}.${slot}`,
515
- ...(parallelEntry.mountPath
516
- ? { mountPath: parallelEntry.mountPath }
517
- : {}),
518
- });
519
- }
520
- if (!parallelEntry.loading) {
521
- const loaderResult = await resolveLoadersWithRevalidation(parallelEntry, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, entry.shortCode, stale);
522
- segments.push(...loaderResult.segments);
523
- matchedIds.push(...loaderResult.matchedIds);
524
- }
525
- }
526
- return { segments, matchedIds };
527
- }
528
- /**
529
- * Resolve entry handler (layout, cache, or route) with revalidation.
530
- */
531
- export async function resolveEntryHandlerWithRevalidation(entry, params, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, stale) {
532
- const matchedId = entry.shortCode;
533
- const component = await revalidate(async () => {
534
- const hasSegment = clientSegmentIds.has(entry.shortCode);
535
- debugLog("segment.revalidate", "entry presence check", {
536
- segmentId: entry.shortCode,
537
- entryType: entry.type,
538
- clientHasSegment: hasSegment,
539
- belongsToRoute,
540
- });
541
- if (!hasSegment)
542
- return true;
543
- const dummySegment = {
544
- id: entry.shortCode,
545
- namespace: entry.id,
546
- type: entry.type === "cache"
547
- ? "layout"
548
- : entry.type,
549
- index: 0,
550
- component: null,
551
- params,
552
- belongsToRoute,
553
- ...(entry.type === "layout" || entry.type === "cache"
554
- ? { layoutName: entry.id }
555
- : {}),
556
- ...(entry.mountPath ? { mountPath: entry.mountPath } : {}),
557
- };
558
- const shouldRevalidate = await evaluateRevalidation({
559
- segment: dummySegment,
560
- prevParams,
561
- getPrevSegment: null,
562
- request,
563
- prevUrl,
564
- nextUrl,
565
- revalidations: entry.revalidate.map((fn, i) => ({
566
- name: `revalidate${i}`,
567
- fn,
568
- })),
569
- routeKey,
570
- context,
571
- actionContext,
572
- stale,
573
- });
574
- debugLog("segment.revalidate", "entry revalidation decision", {
575
- segmentId: entry.shortCode,
576
- shouldRevalidate,
577
- });
578
- return shouldRevalidate;
579
- }, async () => {
580
- context._currentSegmentId = entry.shortCode;
581
- if (entry.type === "layout" || entry.type === "cache") {
582
- return typeof entry.handler === "function"
583
- ? handleHandlerResult(await entry.handler(context))
584
- : entry.handler;
585
- }
586
- const routeEntry = entry;
587
- if (!routeEntry.loading) {
588
- return handleHandlerResult(await routeEntry.handler(context));
589
- }
590
- if (!actionContext) {
591
- const result = handleHandlerResult(routeEntry.handler(context));
592
- return {
593
- content: result instanceof Promise ? deps.trackHandler(result) : result,
594
- };
595
- }
596
- debugLog("segment.action", "resolving action route with awaited value", {
597
- entryId: entry.id,
598
- });
599
- return {
600
- content: Promise.resolve(handleHandlerResult(await routeEntry.handler(context))),
601
- };
602
- }, () => null);
603
- const resolvedComponent = component && typeof component === "object" && "content" in component
604
- ? component.content
605
- : component;
606
- const segment = {
607
- id: entry.shortCode,
608
- namespace: entry.id,
609
- type: entry.type === "cache" ? "layout" : entry.type,
610
- index: 0,
611
- component: resolvedComponent,
612
- loading: entry.loading === false ? null : entry.loading,
613
- params,
614
- belongsToRoute,
615
- ...(entry.type === "layout" || entry.type === "cache"
616
- ? { layoutName: entry.id }
617
- : {}),
618
- ...(entry.mountPath ? { mountPath: entry.mountPath } : {}),
619
- };
620
- return { segment, matchedId };
621
- }
622
- /**
623
- * Resolve segments with revalidation awareness (for partial rendering).
624
- */
625
- export async function resolveSegmentWithRevalidation(entry, routeKey, params, context, clientSegmentIds, prevParams, request, prevUrl, nextUrl, loaderPromises, deps, actionContext, stale) {
626
- const segments = [];
627
- const matchedIds = [];
628
- const belongsToRoute = entry.type === "route";
629
- const loaderResult = await resolveLoadersWithRevalidation(entry, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, undefined, stale);
630
- segments.push(...loaderResult.segments);
631
- matchedIds.push(...loaderResult.matchedIds);
632
- if (entry.type === "route") {
633
- for (const orphan of entry.layout) {
634
- const orphanResult = await resolveOrphanLayoutWithRevalidation(orphan, params, context, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, loaderPromises, true, deps, actionContext, stale);
635
- segments.push(...orphanResult.segments);
636
- matchedIds.push(...orphanResult.matchedIds);
637
- }
638
- }
639
- const parallelResult = await resolveParallelSegmentsWithRevalidation(entry, params, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, stale);
640
- segments.push(...parallelResult.segments);
641
- matchedIds.push(...parallelResult.matchedIds);
642
- if (entry.type === "layout" || entry.type === "cache") {
643
- for (const orphan of entry.layout) {
644
- const orphanResult = await resolveOrphanLayoutWithRevalidation(orphan, params, context, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, loaderPromises, false, deps, actionContext, stale);
645
- segments.push(...orphanResult.segments);
646
- matchedIds.push(...orphanResult.matchedIds);
647
- }
648
- }
649
- const handlerResult = await resolveEntryHandlerWithRevalidation(entry, params, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, stale);
650
- segments.push(handlerResult.segment);
651
- matchedIds.push(handlerResult.matchedId);
652
- return { segments, matchedIds };
653
- }
654
- /**
655
- * Resolve orphan layout with revalidation.
656
- */
657
- export async function resolveOrphanLayoutWithRevalidation(orphan, params, context, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, loaderPromises, belongsToRoute, deps, actionContext, stale) {
658
- invariant(orphan.type === "layout" || orphan.type === "cache", `Expected orphan to be a layout or cache, got: ${orphan.type}`);
659
- const segments = [];
660
- const matchedIds = [];
661
- const loaderResult = await resolveLoadersWithRevalidation(orphan, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, undefined, stale);
662
- segments.push(...loaderResult.segments);
663
- matchedIds.push(...loaderResult.matchedIds);
664
- for (const parallelEntry of orphan.parallel) {
665
- invariant(parallelEntry.type === "parallel", `Expected parallel entry, got: ${parallelEntry.type}`);
666
- const loaderResult = await resolveLoadersWithRevalidation(parallelEntry, context, belongsToRoute, clientSegmentIds, prevParams, request, prevUrl, nextUrl, routeKey, deps, actionContext, undefined, stale);
667
- segments.push(...loaderResult.segments);
668
- matchedIds.push(...loaderResult.matchedIds);
669
- const slots = parallelEntry.handler;
670
- for (const [slot, handler] of Object.entries(slots)) {
671
- // Use orphan.shortCode (the parent layout) to match the SSR path
672
- // (resolveParallelEntry receives parentShortCode = orphan.shortCode).
673
- // Using parallelEntry.shortCode would generate IDs the client doesn't know about.
674
- const parallelId = `${orphan.shortCode}.${slot}`;
675
- matchedIds.push(parallelId);
676
- const shouldResolve = await (async () => {
677
- if (!clientSegmentIds.has(parallelId))
678
- return true;
679
- const dummySegment = {
680
- id: parallelId,
681
- namespace: parallelEntry.id,
682
- type: "parallel",
683
- index: 0,
684
- component: null,
685
- params,
686
- slot,
687
- belongsToRoute,
688
- parallelName: `${parallelEntry.id}.${slot}`,
689
- ...(parallelEntry.mountPath
690
- ? { mountPath: parallelEntry.mountPath }
691
- : {}),
692
- };
693
- return await evaluateRevalidation({
694
- segment: dummySegment,
695
- prevParams,
696
- getPrevSegment: null,
697
- request,
698
- prevUrl,
699
- nextUrl,
700
- revalidations: parallelEntry.revalidate.map((fn, i) => ({
701
- name: `revalidate${i}`,
702
- fn,
703
- })),
704
- routeKey,
705
- context,
706
- actionContext,
707
- stale,
708
- });
709
- })();
710
- let component;
711
- const hasLoadingFallback = parallelEntry.loading !== undefined && parallelEntry.loading !== false;
712
- if (!shouldResolve) {
713
- component = null;
714
- }
715
- else if (hasLoadingFallback) {
716
- component =
717
- (typeof handler === "function"
718
- ? handler(context)
719
- : handler);
720
- }
721
- else {
722
- component =
723
- typeof handler === "function"
724
- ? await handler(context)
725
- : handler;
726
- }
727
- segments.push({
728
- id: parallelId,
729
- namespace: parallelEntry.id,
730
- type: "parallel",
731
- index: 0,
732
- component,
733
- loading: parallelEntry.loading === false ? null : parallelEntry.loading,
734
- params,
735
- slot,
736
- belongsToRoute,
737
- parallelName: `${parallelEntry.id}.${slot}`,
738
- ...(parallelEntry.mountPath
739
- ? { mountPath: parallelEntry.mountPath }
740
- : {}),
741
- });
742
- }
743
- }
744
- matchedIds.push(orphan.shortCode);
745
- const component = await revalidate(async () => {
746
- if (!clientSegmentIds.has(orphan.shortCode))
747
- return true;
748
- const dummySegment = {
749
- id: orphan.shortCode,
750
- namespace: orphan.id,
751
- type: "layout",
752
- index: 0,
753
- component: null,
754
- params,
755
- belongsToRoute,
756
- layoutName: orphan.id,
757
- ...(orphan.mountPath ? { mountPath: orphan.mountPath } : {}),
758
- };
759
- return await evaluateRevalidation({
760
- segment: dummySegment,
761
- prevParams,
762
- getPrevSegment: null,
763
- request,
764
- prevUrl,
765
- nextUrl,
766
- revalidations: orphan.revalidate.map((fn, i) => ({
767
- name: `revalidate${i}`,
768
- fn,
769
- })),
770
- routeKey,
771
- context,
772
- actionContext,
773
- stale,
774
- });
775
- }, async () => typeof orphan.handler === "function"
776
- ? handleHandlerResult(await orphan.handler(context))
777
- : orphan.handler, () => null);
778
- segments.push({
779
- id: orphan.shortCode,
780
- namespace: orphan.id,
781
- type: "layout",
782
- index: 0,
783
- component,
784
- params,
785
- belongsToRoute,
786
- layoutName: orphan.id,
787
- loading: orphan.loading === false ? null : orphan.loading,
788
- ...(orphan.mountPath ? { mountPath: orphan.mountPath } : {}),
789
- });
790
- return { segments, matchedIds };
791
- }
792
- /**
793
- * Wrapper for segment resolution with revalidation that adds error boundary handling.
794
- */
795
- export async function resolveWithRevalidationErrorHandling(entry, params, resolveFn, deps, pathname, errorContext) {
796
- try {
797
- return await resolveFn();
798
- }
799
- catch (error) {
800
- if (error instanceof Response) {
801
- throw error;
802
- }
803
- if (error instanceof DataNotFoundError) {
804
- const notFoundFallback = deps.findNearestNotFoundBoundary(entry);
805
- if (notFoundFallback) {
806
- const notFoundInfo = createNotFoundInfo(error, entry.shortCode, entry.type, pathname);
807
- if (errorContext) {
808
- deps.callOnError(error, "handler", {
809
- request: errorContext.request,
810
- url: errorContext.url,
811
- routeKey: errorContext.routeKey,
812
- params,
813
- segmentId: entry.shortCode,
814
- segmentType: entry.type,
815
- env: errorContext.env,
816
- isPartial: errorContext.isPartial,
817
- handledByBoundary: true,
818
- metadata: { notFound: true, message: notFoundInfo.message },
819
- requestStartTime: errorContext.requestStartTime,
820
- });
821
- }
822
- debugLog("segment", "notFound boundary handled error", {
823
- segmentId: entry.shortCode,
824
- message: notFoundInfo.message,
825
- });
826
- const reqCtx = getRequestContext();
827
- if (reqCtx) {
828
- reqCtx.res = new Response(null, {
829
- status: 404,
830
- headers: reqCtx.res.headers,
831
- });
832
- }
833
- const notFoundSegment = createNotFoundSegment(notFoundInfo, notFoundFallback, entry, params);
834
- return {
835
- segments: [notFoundSegment],
836
- matchedIds: [notFoundSegment.id],
837
- };
838
- }
839
- }
840
- const fallback = deps.findNearestErrorBoundary(entry);
841
- const segmentType = entry.type;
842
- const errorInfo = createErrorInfo(error, entry.shortCode, segmentType);
843
- const effectiveFallback = fallback ?? DefaultErrorFallback;
844
- if (errorContext) {
845
- deps.callOnError(error, "handler", {
846
- request: errorContext.request,
847
- url: errorContext.url,
848
- routeKey: errorContext.routeKey,
849
- params,
850
- segmentId: entry.shortCode,
851
- segmentType: entry.type,
852
- env: errorContext.env,
853
- isPartial: errorContext.isPartial,
854
- handledByBoundary: !!fallback,
855
- requestStartTime: errorContext.requestStartTime,
856
- });
857
- }
858
- debugLog("segment", "error boundary handled error", {
859
- segmentId: entry.shortCode,
860
- boundary: fallback ? "custom" : "default",
861
- message: errorInfo.message,
862
- });
863
- {
864
- const reqCtx = getRequestContext();
865
- if (reqCtx) {
866
- reqCtx.res = new Response(null, {
867
- status: 500,
868
- headers: reqCtx.res.headers,
869
- });
870
- }
871
- }
872
- const errorSegment = createErrorSegment(errorInfo, effectiveFallback, entry, params);
873
- return {
874
- segments: [errorSegment],
875
- matchedIds: [errorSegment.id],
876
- };
877
- }
878
- }
879
- /**
880
- * Resolve all segments for a route with revalidation logic (for matchPartial).
881
- */
882
- export async function resolveAllSegmentsWithRevalidation(entries, routeKey, params, context, clientSegmentSet, prevParams, request, prevUrl, nextUrl, loaderPromises, actionContext, interceptResult, localRouteName, pathname, deps) {
883
- const allSegments = [];
884
- const matchedIds = [];
885
- const seenSegIds = new Set();
886
- const seenMatchIds = new Set();
887
- for (const entry of entries) {
888
- if (entry.type === "route" && interceptResult) {
889
- debugLog("matchPartial.intercept", "skipping route handler during intercept", {
890
- localRouteName,
891
- segmentId: entry.shortCode,
892
- });
893
- if (!seenMatchIds.has(entry.shortCode)) {
894
- seenMatchIds.add(entry.shortCode);
895
- matchedIds.push(entry.shortCode);
896
- }
897
- continue;
898
- }
899
- const nonParallelEntry = entry;
900
- const resolved = await resolveWithRevalidationErrorHandling(nonParallelEntry, params, () => resolveSegmentWithRevalidation(nonParallelEntry, routeKey, params, context, clientSegmentSet, prevParams, request, prevUrl, nextUrl, loaderPromises, deps, actionContext, false), deps, pathname);
901
- // Deduplicate segments and matchedIds by ID, matching resolveAllSegments.
902
- // include() scopes can produce entries that resolve the same shared
903
- // layout/loader segment. Duplicates cause React tree depth changes.
904
- for (const seg of resolved.segments) {
905
- if (!seenSegIds.has(seg.id)) {
906
- seenSegIds.add(seg.id);
907
- allSegments.push(seg);
908
- }
909
- }
910
- for (const id of resolved.matchedIds) {
911
- if (!seenMatchIds.has(id)) {
912
- seenMatchIds.add(id);
913
- matchedIds.push(id);
914
- }
915
- }
916
- }
917
- return { segments: allSegments, matchedIds };
918
- }
919
- //# sourceMappingURL=segment-resolution.js.map