@rangojs/router 0.0.0-experimental.d5d3070a → 0.0.0-experimental.d68257e5

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 (1564) hide show
  1. package/AGENTS.md +6 -10
  2. package/README.md +306 -917
  3. package/dist/__internal.d.ts +83 -0
  4. package/dist/__internal.d.ts.map +1 -0
  5. package/dist/__internal.js +19 -0
  6. package/dist/__internal.js.map +1 -0
  7. package/dist/__mocks__/version.d.ts +7 -0
  8. package/dist/__mocks__/version.d.ts.map +1 -0
  9. package/dist/__mocks__/version.js +7 -0
  10. package/dist/__mocks__/version.js.map +1 -0
  11. package/dist/__tests__/client-href.test.d.ts +2 -0
  12. package/dist/__tests__/client-href.test.d.ts.map +1 -0
  13. package/dist/__tests__/client-href.test.js +74 -0
  14. package/dist/__tests__/client-href.test.js.map +1 -0
  15. package/dist/__tests__/component-utils.test.d.ts +2 -0
  16. package/dist/__tests__/component-utils.test.d.ts.map +1 -0
  17. package/dist/__tests__/component-utils.test.js +51 -0
  18. package/dist/__tests__/component-utils.test.js.map +1 -0
  19. package/dist/__tests__/event-controller.test.d.ts +2 -0
  20. package/dist/__tests__/event-controller.test.d.ts.map +1 -0
  21. package/dist/__tests__/event-controller.test.js +538 -0
  22. package/dist/__tests__/event-controller.test.js.map +1 -0
  23. package/dist/__tests__/helpers/route-tree.d.ts +118 -0
  24. package/dist/__tests__/helpers/route-tree.d.ts.map +1 -0
  25. package/dist/__tests__/helpers/route-tree.js +374 -0
  26. package/dist/__tests__/helpers/route-tree.js.map +1 -0
  27. package/dist/__tests__/match-result.test.d.ts +2 -0
  28. package/dist/__tests__/match-result.test.d.ts.map +1 -0
  29. package/dist/__tests__/match-result.test.js +154 -0
  30. package/dist/__tests__/match-result.test.js.map +1 -0
  31. package/dist/__tests__/navigation-store.test.d.ts +2 -0
  32. package/dist/__tests__/navigation-store.test.d.ts.map +1 -0
  33. package/dist/__tests__/navigation-store.test.js +440 -0
  34. package/dist/__tests__/navigation-store.test.js.map +1 -0
  35. package/dist/__tests__/partial-update.test.d.ts +2 -0
  36. package/dist/__tests__/partial-update.test.d.ts.map +1 -0
  37. package/dist/__tests__/partial-update.test.js +1009 -0
  38. package/dist/__tests__/partial-update.test.js.map +1 -0
  39. package/dist/__tests__/reverse-types.test.d.ts +8 -0
  40. package/dist/__tests__/reverse-types.test.d.ts.map +1 -0
  41. package/dist/__tests__/reverse-types.test.js +656 -0
  42. package/dist/__tests__/reverse-types.test.js.map +1 -0
  43. package/dist/__tests__/route-definition.test.d.ts +2 -0
  44. package/dist/__tests__/route-definition.test.d.ts.map +1 -0
  45. package/dist/__tests__/route-definition.test.js +55 -0
  46. package/dist/__tests__/route-definition.test.js.map +1 -0
  47. package/dist/__tests__/router-helpers.test.d.ts +2 -0
  48. package/dist/__tests__/router-helpers.test.d.ts.map +1 -0
  49. package/dist/__tests__/router-helpers.test.js +377 -0
  50. package/dist/__tests__/router-helpers.test.js.map +1 -0
  51. package/dist/__tests__/router-integration-2.test.d.ts +2 -0
  52. package/dist/__tests__/router-integration-2.test.d.ts.map +1 -0
  53. package/dist/__tests__/router-integration-2.test.js +426 -0
  54. package/dist/__tests__/router-integration-2.test.js.map +1 -0
  55. package/dist/__tests__/router-integration.test.d.ts +2 -0
  56. package/dist/__tests__/router-integration.test.d.ts.map +1 -0
  57. package/dist/__tests__/router-integration.test.js +1051 -0
  58. package/dist/__tests__/router-integration.test.js.map +1 -0
  59. package/dist/__tests__/search-params.test.d.ts +5 -0
  60. package/dist/__tests__/search-params.test.d.ts.map +1 -0
  61. package/dist/__tests__/search-params.test.js +306 -0
  62. package/dist/__tests__/search-params.test.js.map +1 -0
  63. package/dist/__tests__/segment-system.test.d.ts +2 -0
  64. package/dist/__tests__/segment-system.test.d.ts.map +1 -0
  65. package/dist/__tests__/segment-system.test.js +627 -0
  66. package/dist/__tests__/segment-system.test.js.map +1 -0
  67. package/dist/__tests__/static-handler-types.test.d.ts +8 -0
  68. package/dist/__tests__/static-handler-types.test.d.ts.map +1 -0
  69. package/dist/__tests__/static-handler-types.test.js +63 -0
  70. package/dist/__tests__/static-handler-types.test.js.map +1 -0
  71. package/dist/__tests__/urls.test.d.ts +2 -0
  72. package/dist/__tests__/urls.test.d.ts.map +1 -0
  73. package/dist/__tests__/urls.test.js +421 -0
  74. package/dist/__tests__/urls.test.js.map +1 -0
  75. package/dist/__tests__/use-mount.test.d.ts +2 -0
  76. package/dist/__tests__/use-mount.test.d.ts.map +1 -0
  77. package/dist/__tests__/use-mount.test.js +35 -0
  78. package/dist/__tests__/use-mount.test.js.map +1 -0
  79. package/dist/bin/rango.d.ts +2 -0
  80. package/dist/bin/rango.d.ts.map +1 -0
  81. package/dist/bin/rango.js +625 -190
  82. package/dist/bin/rango.js.map +1 -0
  83. package/dist/browser/event-controller.d.ts +191 -0
  84. package/dist/browser/event-controller.d.ts.map +1 -0
  85. package/dist/browser/event-controller.js +559 -0
  86. package/dist/browser/event-controller.js.map +1 -0
  87. package/dist/browser/index.d.ts +2 -0
  88. package/dist/browser/index.d.ts.map +1 -0
  89. package/dist/browser/index.js +14 -0
  90. package/dist/browser/index.js.map +1 -0
  91. package/dist/browser/link-interceptor.d.ts +38 -0
  92. package/dist/browser/link-interceptor.d.ts.map +1 -0
  93. package/dist/browser/link-interceptor.js +99 -0
  94. package/dist/browser/link-interceptor.js.map +1 -0
  95. package/dist/browser/logging.d.ts +10 -0
  96. package/dist/browser/logging.d.ts.map +1 -0
  97. package/dist/browser/logging.js +29 -0
  98. package/dist/browser/logging.js.map +1 -0
  99. package/dist/browser/lru-cache.d.ts +17 -0
  100. package/dist/browser/lru-cache.d.ts.map +1 -0
  101. package/dist/browser/lru-cache.js +50 -0
  102. package/dist/browser/lru-cache.js.map +1 -0
  103. package/dist/browser/merge-segment-loaders.d.ts +39 -0
  104. package/dist/browser/merge-segment-loaders.d.ts.map +1 -0
  105. package/dist/browser/merge-segment-loaders.js +102 -0
  106. package/dist/browser/merge-segment-loaders.js.map +1 -0
  107. package/dist/browser/navigation-bridge.d.ts +102 -0
  108. package/dist/browser/navigation-bridge.d.ts.map +1 -0
  109. package/dist/browser/navigation-bridge.js +708 -0
  110. package/dist/browser/navigation-bridge.js.map +1 -0
  111. package/dist/browser/navigation-client.d.ts +25 -0
  112. package/dist/browser/navigation-client.d.ts.map +1 -0
  113. package/dist/browser/navigation-client.js +157 -0
  114. package/dist/browser/navigation-client.js.map +1 -0
  115. package/dist/browser/navigation-store.d.ts +101 -0
  116. package/dist/browser/navigation-store.d.ts.map +1 -0
  117. package/dist/browser/navigation-store.js +625 -0
  118. package/dist/browser/navigation-store.js.map +1 -0
  119. package/dist/browser/partial-update.d.ts +75 -0
  120. package/dist/browser/partial-update.d.ts.map +1 -0
  121. package/dist/browser/partial-update.js +426 -0
  122. package/dist/browser/partial-update.js.map +1 -0
  123. package/dist/browser/react/Link.d.ts +86 -0
  124. package/dist/browser/react/Link.d.ts.map +1 -0
  125. package/dist/browser/react/Link.js +128 -0
  126. package/dist/browser/react/Link.js.map +1 -0
  127. package/dist/browser/react/NavigationProvider.d.ts +63 -0
  128. package/dist/browser/react/NavigationProvider.d.ts.map +1 -0
  129. package/dist/browser/react/NavigationProvider.js +216 -0
  130. package/dist/browser/react/NavigationProvider.js.map +1 -0
  131. package/dist/browser/react/ScrollRestoration.d.ts +75 -0
  132. package/dist/browser/react/ScrollRestoration.d.ts.map +1 -0
  133. package/dist/browser/react/ScrollRestoration.js +57 -0
  134. package/dist/browser/react/ScrollRestoration.js.map +1 -0
  135. package/dist/browser/react/context.d.ts +46 -0
  136. package/dist/browser/react/context.d.ts.map +1 -0
  137. package/dist/browser/react/context.js +10 -0
  138. package/dist/browser/react/context.js.map +1 -0
  139. package/dist/browser/react/index.d.ts +11 -0
  140. package/dist/browser/react/index.d.ts.map +1 -0
  141. package/dist/browser/react/index.js +22 -0
  142. package/dist/browser/react/index.js.map +1 -0
  143. package/dist/browser/react/location-state-shared.d.ts +63 -0
  144. package/dist/browser/react/location-state-shared.d.ts.map +1 -0
  145. package/dist/browser/react/location-state-shared.js +81 -0
  146. package/dist/browser/react/location-state-shared.js.map +1 -0
  147. package/dist/browser/react/location-state.d.ts +23 -0
  148. package/dist/browser/react/location-state.d.ts.map +1 -0
  149. package/dist/browser/react/location-state.js +29 -0
  150. package/dist/browser/react/location-state.js.map +1 -0
  151. package/dist/browser/react/mount-context.d.ts +24 -0
  152. package/dist/browser/react/mount-context.d.ts.map +1 -0
  153. package/dist/browser/react/mount-context.js +24 -0
  154. package/dist/browser/react/mount-context.js.map +1 -0
  155. package/dist/browser/react/use-action.d.ts +64 -0
  156. package/dist/browser/react/use-action.d.ts.map +1 -0
  157. package/dist/browser/react/use-action.js +134 -0
  158. package/dist/browser/react/use-action.js.map +1 -0
  159. package/dist/browser/react/use-client-cache.d.ts +41 -0
  160. package/dist/browser/react/use-client-cache.d.ts.map +1 -0
  161. package/dist/browser/react/use-client-cache.js +39 -0
  162. package/dist/browser/react/use-client-cache.js.map +1 -0
  163. package/dist/browser/react/use-handle.d.ts +31 -0
  164. package/dist/browser/react/use-handle.d.ts.map +1 -0
  165. package/dist/browser/react/use-handle.js +144 -0
  166. package/dist/browser/react/use-handle.js.map +1 -0
  167. package/dist/browser/react/use-href.d.ts +33 -0
  168. package/dist/browser/react/use-href.d.ts.map +1 -0
  169. package/dist/browser/react/use-href.js +39 -0
  170. package/dist/browser/react/use-href.js.map +1 -0
  171. package/dist/browser/react/use-link-status.d.ts +37 -0
  172. package/dist/browser/react/use-link-status.d.ts.map +1 -0
  173. package/dist/browser/react/use-link-status.js +99 -0
  174. package/dist/browser/react/use-link-status.js.map +1 -0
  175. package/dist/browser/react/use-mount.d.ts +25 -0
  176. package/dist/browser/react/use-mount.d.ts.map +1 -0
  177. package/dist/browser/react/use-mount.js +30 -0
  178. package/dist/browser/react/use-mount.js.map +1 -0
  179. package/dist/browser/react/use-navigation.d.ts +27 -0
  180. package/dist/browser/react/use-navigation.d.ts.map +1 -0
  181. package/dist/browser/react/use-navigation.js +87 -0
  182. package/dist/browser/react/use-navigation.js.map +1 -0
  183. package/dist/browser/react/use-segments.d.ts +38 -0
  184. package/dist/browser/react/use-segments.d.ts.map +1 -0
  185. package/dist/browser/react/use-segments.js +130 -0
  186. package/dist/browser/react/use-segments.js.map +1 -0
  187. package/dist/browser/request-controller.d.ts +26 -0
  188. package/dist/browser/request-controller.d.ts.map +1 -0
  189. package/dist/browser/request-controller.js +147 -0
  190. package/dist/browser/request-controller.js.map +1 -0
  191. package/dist/browser/rsc-router.d.ts +129 -0
  192. package/dist/browser/rsc-router.d.ts.map +1 -0
  193. package/dist/browser/rsc-router.js +195 -0
  194. package/dist/browser/rsc-router.js.map +1 -0
  195. package/dist/browser/scroll-restoration.d.ts +93 -0
  196. package/dist/browser/scroll-restoration.d.ts.map +1 -0
  197. package/dist/browser/scroll-restoration.js +321 -0
  198. package/dist/browser/scroll-restoration.js.map +1 -0
  199. package/dist/browser/segment-structure-assert.d.ts +17 -0
  200. package/dist/browser/segment-structure-assert.d.ts.map +1 -0
  201. package/dist/browser/segment-structure-assert.js +59 -0
  202. package/dist/browser/segment-structure-assert.js.map +1 -0
  203. package/dist/browser/server-action-bridge.d.ts +26 -0
  204. package/dist/browser/server-action-bridge.d.ts.map +1 -0
  205. package/dist/browser/server-action-bridge.js +668 -0
  206. package/dist/browser/server-action-bridge.js.map +1 -0
  207. package/dist/browser/shallow.d.ts +12 -0
  208. package/dist/browser/shallow.d.ts.map +1 -0
  209. package/dist/browser/shallow.js +34 -0
  210. package/dist/browser/shallow.js.map +1 -0
  211. package/dist/browser/types.d.ts +369 -0
  212. package/dist/browser/types.d.ts.map +1 -0
  213. package/dist/browser/types.js +2 -0
  214. package/dist/browser/types.js.map +1 -0
  215. package/dist/build/__tests__/generate-cli.test.d.ts +2 -0
  216. package/dist/build/__tests__/generate-cli.test.d.ts.map +1 -0
  217. package/dist/build/__tests__/generate-cli.test.js +237 -0
  218. package/dist/build/__tests__/generate-cli.test.js.map +1 -0
  219. package/dist/build/__tests__/generate-manifest.test.d.ts +2 -0
  220. package/dist/build/__tests__/generate-manifest.test.d.ts.map +1 -0
  221. package/dist/build/__tests__/generate-manifest.test.js +119 -0
  222. package/dist/build/__tests__/generate-manifest.test.js.map +1 -0
  223. package/dist/build/__tests__/generate-route-types.test.d.ts +2 -0
  224. package/dist/build/__tests__/generate-route-types.test.d.ts.map +1 -0
  225. package/dist/build/__tests__/generate-route-types.test.js +620 -0
  226. package/dist/build/__tests__/generate-route-types.test.js.map +1 -0
  227. package/dist/build/__tests__/per-router-manifest.test.d.ts +2 -0
  228. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +1 -0
  229. package/dist/build/__tests__/per-router-manifest.test.js +308 -0
  230. package/dist/build/__tests__/per-router-manifest.test.js.map +1 -0
  231. package/dist/build/generate-manifest.d.ts +81 -0
  232. package/dist/build/generate-manifest.d.ts.map +1 -0
  233. package/dist/build/generate-manifest.js +276 -0
  234. package/dist/build/generate-manifest.js.map +1 -0
  235. package/dist/build/generate-route-types.d.ts +115 -0
  236. package/dist/build/generate-route-types.d.ts.map +1 -0
  237. package/dist/build/generate-route-types.js +740 -0
  238. package/dist/build/generate-route-types.js.map +1 -0
  239. package/dist/build/index.d.ts +21 -0
  240. package/dist/build/index.d.ts.map +1 -0
  241. package/dist/build/index.js +21 -0
  242. package/dist/build/index.js.map +1 -0
  243. package/dist/build/route-trie.d.ts +71 -0
  244. package/dist/build/route-trie.d.ts.map +1 -0
  245. package/dist/build/route-trie.js +175 -0
  246. package/dist/build/route-trie.js.map +1 -0
  247. package/dist/cache/__tests__/cache-scope.test.d.ts +2 -0
  248. package/dist/cache/__tests__/cache-scope.test.d.ts.map +1 -0
  249. package/dist/cache/__tests__/cache-scope.test.js +208 -0
  250. package/dist/cache/__tests__/cache-scope.test.js.map +1 -0
  251. package/dist/cache/__tests__/document-cache.test.d.ts +2 -0
  252. package/dist/cache/__tests__/document-cache.test.d.ts.map +1 -0
  253. package/dist/cache/__tests__/document-cache.test.js +345 -0
  254. package/dist/cache/__tests__/document-cache.test.js.map +1 -0
  255. package/dist/cache/__tests__/memory-segment-store.test.d.ts +2 -0
  256. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +1 -0
  257. package/dist/cache/__tests__/memory-segment-store.test.js +425 -0
  258. package/dist/cache/__tests__/memory-segment-store.test.js.map +1 -0
  259. package/dist/cache/__tests__/memory-store.test.d.ts +2 -0
  260. package/dist/cache/__tests__/memory-store.test.d.ts.map +1 -0
  261. package/dist/cache/__tests__/memory-store.test.js +367 -0
  262. package/dist/cache/__tests__/memory-store.test.js.map +1 -0
  263. package/dist/cache/cache-scope.d.ts +102 -0
  264. package/dist/cache/cache-scope.d.ts.map +1 -0
  265. package/dist/cache/cache-scope.js +440 -0
  266. package/dist/cache/cache-scope.js.map +1 -0
  267. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +2 -0
  268. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +1 -0
  269. package/dist/cache/cf/__tests__/cf-cache-store.test.js +330 -0
  270. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +1 -0
  271. package/dist/cache/cf/cf-cache-store.d.ts +165 -0
  272. package/dist/cache/cf/cf-cache-store.d.ts.map +1 -0
  273. package/dist/cache/cf/cf-cache-store.js +242 -0
  274. package/dist/cache/cf/cf-cache-store.js.map +1 -0
  275. package/dist/cache/cf/index.d.ts +14 -0
  276. package/dist/cache/cf/index.d.ts.map +1 -0
  277. package/dist/cache/cf/index.js +17 -0
  278. package/dist/cache/cf/index.js.map +1 -0
  279. package/dist/cache/document-cache.d.ts +64 -0
  280. package/dist/cache/document-cache.d.ts.map +1 -0
  281. package/dist/cache/document-cache.js +228 -0
  282. package/dist/cache/document-cache.js.map +1 -0
  283. package/dist/cache/index.d.ts +19 -0
  284. package/dist/cache/index.d.ts.map +1 -0
  285. package/dist/cache/index.js +21 -0
  286. package/dist/cache/index.js.map +1 -0
  287. package/dist/cache/memory-segment-store.d.ts +110 -0
  288. package/dist/cache/memory-segment-store.d.ts.map +1 -0
  289. package/dist/cache/memory-segment-store.js +117 -0
  290. package/dist/cache/memory-segment-store.js.map +1 -0
  291. package/dist/cache/memory-store.d.ts +41 -0
  292. package/dist/cache/memory-store.d.ts.map +1 -0
  293. package/dist/cache/memory-store.js +191 -0
  294. package/dist/cache/memory-store.js.map +1 -0
  295. package/dist/cache/types.d.ts +317 -0
  296. package/dist/cache/types.d.ts.map +1 -0
  297. package/dist/cache/types.js +12 -0
  298. package/dist/cache/types.js.map +1 -0
  299. package/dist/client.d.ts +248 -0
  300. package/dist/client.d.ts.map +1 -0
  301. package/dist/client.js +367 -0
  302. package/dist/client.js.map +1 -0
  303. package/dist/client.rsc.d.ts +26 -0
  304. package/dist/client.rsc.d.ts.map +1 -0
  305. package/dist/client.rsc.js +46 -0
  306. package/dist/client.rsc.js.map +1 -0
  307. package/dist/component-utils.d.ts +36 -0
  308. package/dist/component-utils.d.ts.map +1 -0
  309. package/dist/component-utils.js +61 -0
  310. package/dist/component-utils.js.map +1 -0
  311. package/dist/components/DefaultDocument.d.ts +13 -0
  312. package/dist/components/DefaultDocument.d.ts.map +1 -0
  313. package/dist/components/DefaultDocument.js +15 -0
  314. package/dist/components/DefaultDocument.js.map +1 -0
  315. package/dist/debug.d.ts +58 -0
  316. package/dist/debug.d.ts.map +1 -0
  317. package/dist/debug.js +157 -0
  318. package/dist/debug.js.map +1 -0
  319. package/dist/default-error-boundary.d.ts +11 -0
  320. package/dist/default-error-boundary.d.ts.map +1 -0
  321. package/dist/default-error-boundary.js +45 -0
  322. package/dist/default-error-boundary.js.map +1 -0
  323. package/dist/deps/browser.d.ts +2 -0
  324. package/dist/deps/browser.d.ts.map +1 -0
  325. package/dist/deps/browser.js +3 -0
  326. package/dist/deps/browser.js.map +1 -0
  327. package/dist/deps/html-stream-client.d.ts +2 -0
  328. package/dist/deps/html-stream-client.d.ts.map +1 -0
  329. package/dist/deps/html-stream-client.js +3 -0
  330. package/dist/deps/html-stream-client.js.map +1 -0
  331. package/dist/deps/html-stream-server.d.ts +2 -0
  332. package/dist/deps/html-stream-server.d.ts.map +1 -0
  333. package/dist/deps/html-stream-server.js +3 -0
  334. package/dist/deps/html-stream-server.js.map +1 -0
  335. package/dist/deps/rsc.d.ts +2 -0
  336. package/dist/deps/rsc.d.ts.map +1 -0
  337. package/dist/deps/rsc.js +4 -0
  338. package/dist/deps/rsc.js.map +1 -0
  339. package/dist/deps/ssr.d.ts +2 -0
  340. package/dist/deps/ssr.d.ts.map +1 -0
  341. package/dist/deps/ssr.js +3 -0
  342. package/dist/deps/ssr.js.map +1 -0
  343. package/dist/errors.d.ts +174 -0
  344. package/dist/errors.d.ts.map +1 -0
  345. package/dist/errors.js +241 -0
  346. package/dist/errors.js.map +1 -0
  347. package/dist/handle.d.ts +78 -0
  348. package/dist/handle.d.ts.map +1 -0
  349. package/dist/handle.js +82 -0
  350. package/dist/handle.js.map +1 -0
  351. package/dist/handles/MetaTags.d.ts +14 -0
  352. package/dist/handles/MetaTags.d.ts.map +1 -0
  353. package/dist/handles/MetaTags.js +136 -0
  354. package/dist/handles/MetaTags.js.map +1 -0
  355. package/dist/handles/index.d.ts +6 -0
  356. package/dist/handles/index.d.ts.map +1 -0
  357. package/dist/handles/index.js +6 -0
  358. package/dist/handles/index.js.map +1 -0
  359. package/dist/handles/meta.d.ts +39 -0
  360. package/dist/handles/meta.d.ts.map +1 -0
  361. package/dist/handles/meta.js +202 -0
  362. package/dist/handles/meta.js.map +1 -0
  363. package/dist/host/__tests__/errors.test.d.ts +2 -0
  364. package/dist/host/__tests__/errors.test.d.ts.map +1 -0
  365. package/dist/host/__tests__/errors.test.js +76 -0
  366. package/dist/host/__tests__/errors.test.js.map +1 -0
  367. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +2 -0
  368. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +1 -0
  369. package/dist/host/__tests__/pattern-comprehensive.test.js +732 -0
  370. package/dist/host/__tests__/pattern-comprehensive.test.js.map +1 -0
  371. package/dist/host/__tests__/pattern-matcher.test.d.ts +2 -0
  372. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +1 -0
  373. package/dist/host/__tests__/pattern-matcher.test.js +251 -0
  374. package/dist/host/__tests__/pattern-matcher.test.js.map +1 -0
  375. package/dist/host/__tests__/router.test.d.ts +2 -0
  376. package/dist/host/__tests__/router.test.d.ts.map +1 -0
  377. package/dist/host/__tests__/router.test.js +241 -0
  378. package/dist/host/__tests__/router.test.js.map +1 -0
  379. package/dist/host/__tests__/testing.test.d.ts +2 -0
  380. package/dist/host/__tests__/testing.test.d.ts.map +1 -0
  381. package/dist/host/__tests__/testing.test.js +64 -0
  382. package/dist/host/__tests__/testing.test.js.map +1 -0
  383. package/dist/host/__tests__/utils.test.d.ts +2 -0
  384. package/dist/host/__tests__/utils.test.d.ts.map +1 -0
  385. package/dist/host/__tests__/utils.test.js +29 -0
  386. package/dist/host/__tests__/utils.test.js.map +1 -0
  387. package/dist/host/cookie-handler.d.ts +34 -0
  388. package/dist/host/cookie-handler.d.ts.map +1 -0
  389. package/dist/host/cookie-handler.js +124 -0
  390. package/dist/host/cookie-handler.js.map +1 -0
  391. package/dist/host/errors.d.ts +56 -0
  392. package/dist/host/errors.d.ts.map +1 -0
  393. package/dist/host/errors.js +79 -0
  394. package/dist/host/errors.js.map +1 -0
  395. package/dist/host/index.d.ts +29 -0
  396. package/dist/host/index.d.ts.map +1 -0
  397. package/dist/host/index.js +32 -0
  398. package/dist/host/index.js.map +1 -0
  399. package/dist/host/pattern-matcher.d.ts +36 -0
  400. package/dist/host/pattern-matcher.d.ts.map +1 -0
  401. package/dist/host/pattern-matcher.js +172 -0
  402. package/dist/host/pattern-matcher.js.map +1 -0
  403. package/dist/host/router.d.ts +26 -0
  404. package/dist/host/router.d.ts.map +1 -0
  405. package/dist/host/router.js +218 -0
  406. package/dist/host/router.js.map +1 -0
  407. package/dist/host/testing.d.ts +36 -0
  408. package/dist/host/testing.d.ts.map +1 -0
  409. package/dist/host/testing.js +55 -0
  410. package/dist/host/testing.js.map +1 -0
  411. package/dist/host/types.d.ts +115 -0
  412. package/dist/host/types.d.ts.map +1 -0
  413. package/dist/host/types.js +7 -0
  414. package/dist/host/types.js.map +1 -0
  415. package/dist/host/utils.d.ts +21 -0
  416. package/dist/host/utils.d.ts.map +1 -0
  417. package/dist/host/utils.js +23 -0
  418. package/dist/host/utils.js.map +1 -0
  419. package/dist/href-client.d.ts +131 -0
  420. package/dist/href-client.d.ts.map +1 -0
  421. package/dist/href-client.js +64 -0
  422. package/dist/href-client.js.map +1 -0
  423. package/dist/href-context.d.ts +29 -0
  424. package/dist/href-context.d.ts.map +1 -0
  425. package/dist/href-context.js +21 -0
  426. package/dist/href-context.js.map +1 -0
  427. package/dist/index.d.ts +73 -0
  428. package/dist/index.d.ts.map +1 -0
  429. package/dist/index.js +91 -0
  430. package/dist/index.js.map +1 -0
  431. package/dist/index.rsc.d.ts +32 -0
  432. package/dist/index.rsc.d.ts.map +1 -0
  433. package/dist/index.rsc.js +40 -0
  434. package/dist/index.rsc.js.map +1 -0
  435. package/dist/internal-debug.d.ts +2 -0
  436. package/dist/internal-debug.d.ts.map +1 -0
  437. package/dist/internal-debug.js +5 -0
  438. package/dist/internal-debug.js.map +1 -0
  439. package/dist/loader.d.ts +14 -0
  440. package/dist/loader.d.ts.map +1 -0
  441. package/dist/loader.js +20 -0
  442. package/dist/loader.js.map +1 -0
  443. package/dist/loader.rsc.d.ts +19 -0
  444. package/dist/loader.rsc.d.ts.map +1 -0
  445. package/dist/loader.rsc.js +99 -0
  446. package/dist/loader.rsc.js.map +1 -0
  447. package/dist/network-error-thrower.d.ts +17 -0
  448. package/dist/network-error-thrower.d.ts.map +1 -0
  449. package/dist/network-error-thrower.js +14 -0
  450. package/dist/network-error-thrower.js.map +1 -0
  451. package/dist/outlet-context.d.ts +13 -0
  452. package/dist/outlet-context.d.ts.map +1 -0
  453. package/dist/outlet-context.js +3 -0
  454. package/dist/outlet-context.js.map +1 -0
  455. package/dist/prerender/__tests__/param-hash.test.d.ts +2 -0
  456. package/dist/prerender/__tests__/param-hash.test.d.ts.map +1 -0
  457. package/dist/prerender/__tests__/param-hash.test.js +148 -0
  458. package/dist/prerender/__tests__/param-hash.test.js.map +1 -0
  459. package/dist/prerender/param-hash.d.ts +16 -0
  460. package/dist/prerender/param-hash.d.ts.map +1 -0
  461. package/dist/prerender/param-hash.js +36 -0
  462. package/dist/prerender/param-hash.js.map +1 -0
  463. package/dist/prerender/store.d.ts +38 -0
  464. package/dist/prerender/store.d.ts.map +1 -0
  465. package/dist/prerender/store.js +61 -0
  466. package/dist/prerender/store.js.map +1 -0
  467. package/dist/prerender.d.ts +66 -0
  468. package/dist/prerender.d.ts.map +1 -0
  469. package/dist/prerender.js +57 -0
  470. package/dist/prerender.js.map +1 -0
  471. package/dist/reverse.d.ts +196 -0
  472. package/dist/reverse.d.ts.map +1 -0
  473. package/dist/reverse.js +78 -0
  474. package/dist/reverse.js.map +1 -0
  475. package/dist/root-error-boundary.d.ts +33 -0
  476. package/dist/root-error-boundary.d.ts.map +1 -0
  477. package/dist/root-error-boundary.js +165 -0
  478. package/dist/root-error-boundary.js.map +1 -0
  479. package/dist/route-content-wrapper.d.ts +46 -0
  480. package/dist/route-content-wrapper.d.ts.map +1 -0
  481. package/dist/route-content-wrapper.js +77 -0
  482. package/dist/route-content-wrapper.js.map +1 -0
  483. package/dist/route-definition.d.ts +421 -0
  484. package/dist/route-definition.d.ts.map +1 -0
  485. package/dist/route-definition.js +868 -0
  486. package/dist/route-definition.js.map +1 -0
  487. package/dist/route-map-builder.d.ts +155 -0
  488. package/dist/route-map-builder.d.ts.map +1 -0
  489. package/dist/route-map-builder.js +237 -0
  490. package/dist/route-map-builder.js.map +1 -0
  491. package/dist/route-types.d.ts +165 -0
  492. package/dist/route-types.d.ts.map +1 -0
  493. package/dist/route-types.js +7 -0
  494. package/dist/route-types.js.map +1 -0
  495. package/dist/router/__tests__/handler-context.test.d.ts +2 -0
  496. package/dist/router/__tests__/handler-context.test.d.ts.map +1 -0
  497. package/dist/router/__tests__/handler-context.test.js +65 -0
  498. package/dist/router/__tests__/handler-context.test.js.map +1 -0
  499. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +2 -0
  500. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +1 -0
  501. package/dist/router/__tests__/loader-cycle-detection.test.js +221 -0
  502. package/dist/router/__tests__/loader-cycle-detection.test.js.map +1 -0
  503. package/dist/router/__tests__/match-context.test.d.ts +2 -0
  504. package/dist/router/__tests__/match-context.test.d.ts.map +1 -0
  505. package/dist/router/__tests__/match-context.test.js +92 -0
  506. package/dist/router/__tests__/match-context.test.js.map +1 -0
  507. package/dist/router/__tests__/match-pipelines.test.d.ts +2 -0
  508. package/dist/router/__tests__/match-pipelines.test.d.ts.map +1 -0
  509. package/dist/router/__tests__/match-pipelines.test.js +417 -0
  510. package/dist/router/__tests__/match-pipelines.test.js.map +1 -0
  511. package/dist/router/__tests__/match-result.test.d.ts +2 -0
  512. package/dist/router/__tests__/match-result.test.d.ts.map +1 -0
  513. package/dist/router/__tests__/match-result.test.js +457 -0
  514. package/dist/router/__tests__/match-result.test.js.map +1 -0
  515. package/dist/router/__tests__/on-error.test.d.ts +2 -0
  516. package/dist/router/__tests__/on-error.test.d.ts.map +1 -0
  517. package/dist/router/__tests__/on-error.test.js +678 -0
  518. package/dist/router/__tests__/on-error.test.js.map +1 -0
  519. package/dist/router/__tests__/pattern-matching.test.d.ts +2 -0
  520. package/dist/router/__tests__/pattern-matching.test.d.ts.map +1 -0
  521. package/dist/router/__tests__/pattern-matching.test.js +629 -0
  522. package/dist/router/__tests__/pattern-matching.test.js.map +1 -0
  523. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +2 -0
  524. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +1 -0
  525. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +155 -0
  526. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +1 -0
  527. package/dist/router/error-handling.d.ts +77 -0
  528. package/dist/router/error-handling.d.ts.map +1 -0
  529. package/dist/router/error-handling.js +202 -0
  530. package/dist/router/error-handling.js.map +1 -0
  531. package/dist/router/handler-context.d.ts +20 -0
  532. package/dist/router/handler-context.d.ts.map +1 -0
  533. package/dist/router/handler-context.js +198 -0
  534. package/dist/router/handler-context.js.map +1 -0
  535. package/dist/router/intercept-resolution.d.ts +66 -0
  536. package/dist/router/intercept-resolution.d.ts.map +1 -0
  537. package/dist/router/intercept-resolution.js +246 -0
  538. package/dist/router/intercept-resolution.js.map +1 -0
  539. package/dist/router/loader-resolution.d.ts +64 -0
  540. package/dist/router/loader-resolution.d.ts.map +1 -0
  541. package/dist/router/loader-resolution.js +284 -0
  542. package/dist/router/loader-resolution.js.map +1 -0
  543. package/dist/router/logging.d.ts +15 -0
  544. package/dist/router/logging.d.ts.map +1 -0
  545. package/dist/router/logging.js +99 -0
  546. package/dist/router/logging.js.map +1 -0
  547. package/dist/router/manifest.d.ts +22 -0
  548. package/dist/router/manifest.d.ts.map +1 -0
  549. package/dist/router/manifest.js +181 -0
  550. package/dist/router/manifest.js.map +1 -0
  551. package/dist/router/match-api.d.ts +35 -0
  552. package/dist/router/match-api.d.ts.map +1 -0
  553. package/dist/router/match-api.js +406 -0
  554. package/dist/router/match-api.js.map +1 -0
  555. package/dist/router/match-context.d.ts +206 -0
  556. package/dist/router/match-context.d.ts.map +1 -0
  557. package/dist/router/match-context.js +17 -0
  558. package/dist/router/match-context.js.map +1 -0
  559. package/dist/router/match-middleware/background-revalidation.d.ts +127 -0
  560. package/dist/router/match-middleware/background-revalidation.d.ts.map +1 -0
  561. package/dist/router/match-middleware/background-revalidation.js +75 -0
  562. package/dist/router/match-middleware/background-revalidation.js.map +1 -0
  563. package/dist/router/match-middleware/cache-lookup.d.ts +112 -0
  564. package/dist/router/match-middleware/cache-lookup.d.ts.map +1 -0
  565. package/dist/router/match-middleware/cache-lookup.js +257 -0
  566. package/dist/router/match-middleware/cache-lookup.js.map +1 -0
  567. package/dist/router/match-middleware/cache-store.d.ts +113 -0
  568. package/dist/router/match-middleware/cache-store.d.ts.map +1 -0
  569. package/dist/router/match-middleware/cache-store.js +108 -0
  570. package/dist/router/match-middleware/cache-store.js.map +1 -0
  571. package/dist/router/match-middleware/index.d.ts +81 -0
  572. package/dist/router/match-middleware/index.d.ts.map +1 -0
  573. package/dist/router/match-middleware/index.js +80 -0
  574. package/dist/router/match-middleware/index.js.map +1 -0
  575. package/dist/router/match-middleware/intercept-resolution.d.ts +117 -0
  576. package/dist/router/match-middleware/intercept-resolution.d.ts.map +1 -0
  577. package/dist/router/match-middleware/intercept-resolution.js +134 -0
  578. package/dist/router/match-middleware/intercept-resolution.js.map +1 -0
  579. package/dist/router/match-middleware/segment-resolution.d.ts +99 -0
  580. package/dist/router/match-middleware/segment-resolution.d.ts.map +1 -0
  581. package/dist/router/match-middleware/segment-resolution.js +53 -0
  582. package/dist/router/match-middleware/segment-resolution.js.map +1 -0
  583. package/dist/router/match-pipelines.d.ts +147 -0
  584. package/dist/router/match-pipelines.d.ts.map +1 -0
  585. package/dist/router/match-pipelines.js +82 -0
  586. package/dist/router/match-pipelines.js.map +1 -0
  587. package/dist/router/match-result.d.ts +126 -0
  588. package/dist/router/match-result.d.ts.map +1 -0
  589. package/dist/router/match-result.js +93 -0
  590. package/dist/router/match-result.js.map +1 -0
  591. package/dist/router/metrics.d.ts +20 -0
  592. package/dist/router/metrics.d.ts.map +1 -0
  593. package/dist/router/metrics.js +47 -0
  594. package/dist/router/metrics.js.map +1 -0
  595. package/dist/router/middleware.d.ts +249 -0
  596. package/dist/router/middleware.d.ts.map +1 -0
  597. package/dist/router/middleware.js +434 -0
  598. package/dist/router/middleware.js.map +1 -0
  599. package/dist/router/middleware.test.d.ts +2 -0
  600. package/dist/router/middleware.test.d.ts.map +1 -0
  601. package/dist/router/middleware.test.js +816 -0
  602. package/dist/router/middleware.test.js.map +1 -0
  603. package/dist/router/pattern-matching.d.ts +149 -0
  604. package/dist/router/pattern-matching.d.ts.map +1 -0
  605. package/dist/router/pattern-matching.js +349 -0
  606. package/dist/router/pattern-matching.js.map +1 -0
  607. package/dist/router/revalidation.d.ts +44 -0
  608. package/dist/router/revalidation.d.ts.map +1 -0
  609. package/dist/router/revalidation.js +147 -0
  610. package/dist/router/revalidation.js.map +1 -0
  611. package/dist/router/router-context.d.ts +135 -0
  612. package/dist/router/router-context.d.ts.map +1 -0
  613. package/dist/router/router-context.js +36 -0
  614. package/dist/router/router-context.js.map +1 -0
  615. package/dist/router/segment-resolution.d.ts +127 -0
  616. package/dist/router/segment-resolution.d.ts.map +1 -0
  617. package/dist/router/segment-resolution.js +919 -0
  618. package/dist/router/segment-resolution.js.map +1 -0
  619. package/dist/router/trie-matching.d.ts +40 -0
  620. package/dist/router/trie-matching.d.ts.map +1 -0
  621. package/dist/router/trie-matching.js +127 -0
  622. package/dist/router/trie-matching.js.map +1 -0
  623. package/dist/router/types.d.ts +136 -0
  624. package/dist/router/types.d.ts.map +1 -0
  625. package/dist/router/types.js +7 -0
  626. package/dist/router/types.js.map +1 -0
  627. package/dist/router.d.ts +753 -0
  628. package/dist/router.d.ts.map +1 -0
  629. package/dist/router.gen.d.ts +6 -0
  630. package/dist/router.gen.d.ts.map +1 -0
  631. package/dist/router.gen.js +6 -0
  632. package/dist/router.gen.js.map +1 -0
  633. package/dist/router.js +1304 -0
  634. package/dist/router.js.map +1 -0
  635. package/dist/rsc/__tests__/helpers.test.d.ts +2 -0
  636. package/dist/rsc/__tests__/helpers.test.d.ts.map +1 -0
  637. package/dist/rsc/__tests__/helpers.test.js +140 -0
  638. package/dist/rsc/__tests__/helpers.test.js.map +1 -0
  639. package/dist/rsc/handler.d.ts +45 -0
  640. package/dist/rsc/handler.d.ts.map +1 -0
  641. package/dist/rsc/handler.js +1172 -0
  642. package/dist/rsc/handler.js.map +1 -0
  643. package/dist/rsc/helpers.d.ts +16 -0
  644. package/dist/rsc/helpers.d.ts.map +1 -0
  645. package/dist/rsc/helpers.js +55 -0
  646. package/dist/rsc/helpers.js.map +1 -0
  647. package/dist/rsc/index.d.ts +22 -0
  648. package/dist/rsc/index.d.ts.map +1 -0
  649. package/dist/rsc/index.js +23 -0
  650. package/dist/rsc/index.js.map +1 -0
  651. package/dist/rsc/nonce.d.ts +9 -0
  652. package/dist/rsc/nonce.d.ts.map +1 -0
  653. package/dist/rsc/nonce.js +18 -0
  654. package/dist/rsc/nonce.js.map +1 -0
  655. package/dist/rsc/types.d.ts +206 -0
  656. package/dist/rsc/types.d.ts.map +1 -0
  657. package/dist/rsc/types.js +8 -0
  658. package/dist/rsc/types.js.map +1 -0
  659. package/dist/search-params.d.ts +103 -0
  660. package/dist/search-params.d.ts.map +1 -0
  661. package/dist/search-params.js +74 -0
  662. package/dist/search-params.js.map +1 -0
  663. package/dist/segment-system.d.ts +75 -0
  664. package/dist/segment-system.d.ts.map +1 -0
  665. package/dist/segment-system.js +336 -0
  666. package/dist/segment-system.js.map +1 -0
  667. package/dist/server/context.d.ts +245 -0
  668. package/dist/server/context.d.ts.map +1 -0
  669. package/dist/server/context.js +197 -0
  670. package/dist/server/context.js.map +1 -0
  671. package/dist/server/fetchable-loader-store.d.ts +18 -0
  672. package/dist/server/fetchable-loader-store.d.ts.map +1 -0
  673. package/dist/server/fetchable-loader-store.js +18 -0
  674. package/dist/server/fetchable-loader-store.js.map +1 -0
  675. package/dist/server/handle-store.d.ts +85 -0
  676. package/dist/server/handle-store.d.ts.map +1 -0
  677. package/dist/server/handle-store.js +142 -0
  678. package/dist/server/handle-store.js.map +1 -0
  679. package/dist/server/loader-registry.d.ts +55 -0
  680. package/dist/server/loader-registry.d.ts.map +1 -0
  681. package/dist/server/loader-registry.js +132 -0
  682. package/dist/server/loader-registry.js.map +1 -0
  683. package/dist/server/request-context.d.ts +226 -0
  684. package/dist/server/request-context.d.ts.map +1 -0
  685. package/dist/server/request-context.js +290 -0
  686. package/dist/server/request-context.js.map +1 -0
  687. package/dist/server/root-layout.d.ts +4 -0
  688. package/dist/server/root-layout.d.ts.map +1 -0
  689. package/dist/server/root-layout.js +5 -0
  690. package/dist/server/root-layout.js.map +1 -0
  691. package/dist/server.d.ts +15 -0
  692. package/dist/server.d.ts.map +1 -0
  693. package/dist/server.js +20 -0
  694. package/dist/server.js.map +1 -0
  695. package/dist/ssr/__tests__/ssr-handler.test.d.ts +2 -0
  696. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +1 -0
  697. package/dist/ssr/__tests__/ssr-handler.test.js +132 -0
  698. package/dist/ssr/__tests__/ssr-handler.test.js.map +1 -0
  699. package/dist/ssr/index.d.ts +98 -0
  700. package/dist/ssr/index.d.ts.map +1 -0
  701. package/dist/ssr/index.js +158 -0
  702. package/dist/ssr/index.js.map +1 -0
  703. package/dist/static-handler.d.ts +50 -0
  704. package/dist/static-handler.d.ts.map +1 -0
  705. package/dist/static-handler.gen.d.ts +5 -0
  706. package/dist/static-handler.gen.d.ts.map +1 -0
  707. package/dist/static-handler.gen.js +5 -0
  708. package/dist/static-handler.gen.js.map +1 -0
  709. package/dist/static-handler.js +29 -0
  710. package/dist/static-handler.js.map +1 -0
  711. package/dist/theme/ThemeProvider.d.ts +20 -0
  712. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  713. package/dist/theme/ThemeProvider.js +240 -0
  714. package/dist/theme/ThemeProvider.js.map +1 -0
  715. package/dist/theme/ThemeScript.d.ts +48 -0
  716. package/dist/theme/ThemeScript.d.ts.map +1 -0
  717. package/dist/theme/ThemeScript.js +13 -0
  718. package/dist/theme/ThemeScript.js.map +1 -0
  719. package/dist/theme/__tests__/theme.test.d.ts +2 -0
  720. package/dist/theme/__tests__/theme.test.d.ts.map +1 -0
  721. package/dist/theme/__tests__/theme.test.js +103 -0
  722. package/dist/theme/__tests__/theme.test.js.map +1 -0
  723. package/dist/theme/constants.d.ts +29 -0
  724. package/dist/theme/constants.d.ts.map +1 -0
  725. package/dist/theme/constants.js +48 -0
  726. package/dist/theme/constants.js.map +1 -0
  727. package/dist/theme/index.d.ts +31 -0
  728. package/dist/theme/index.d.ts.map +1 -0
  729. package/dist/theme/index.js +36 -0
  730. package/dist/theme/index.js.map +1 -0
  731. package/dist/theme/theme-context.d.ts +40 -0
  732. package/dist/theme/theme-context.d.ts.map +1 -0
  733. package/dist/theme/theme-context.js +60 -0
  734. package/dist/theme/theme-context.js.map +1 -0
  735. package/dist/theme/theme-script.d.ts +27 -0
  736. package/dist/theme/theme-script.d.ts.map +1 -0
  737. package/dist/theme/theme-script.js +147 -0
  738. package/dist/theme/theme-script.js.map +1 -0
  739. package/dist/theme/types.d.ts +163 -0
  740. package/dist/theme/types.d.ts.map +1 -0
  741. package/dist/theme/types.js +11 -0
  742. package/dist/theme/types.js.map +1 -0
  743. package/dist/theme/use-theme.d.ts +12 -0
  744. package/dist/theme/use-theme.d.ts.map +1 -0
  745. package/dist/theme/use-theme.js +40 -0
  746. package/dist/theme/use-theme.js.map +1 -0
  747. package/dist/types/__internal.d.ts +127 -0
  748. package/dist/types/bin/rango.d.ts +1 -0
  749. package/dist/types/browser/action-coordinator.d.ts +57 -0
  750. package/dist/types/browser/action-fence.d.ts +33 -0
  751. package/dist/types/browser/app-shell.d.ts +34 -0
  752. package/dist/types/browser/app-version.d.ts +6 -0
  753. package/dist/types/browser/connection-warmup.d.ts +31 -0
  754. package/dist/types/browser/cookie-name.d.ts +66 -0
  755. package/dist/types/browser/dev-discovery.d.ts +11 -0
  756. package/dist/types/browser/event-controller.d.ts +231 -0
  757. package/dist/types/browser/history-state.d.ts +26 -0
  758. package/dist/types/browser/index.d.ts +1 -0
  759. package/dist/types/browser/intercept-utils.d.ts +30 -0
  760. package/dist/types/browser/invalidate-client-cache.d.ts +17 -0
  761. package/dist/types/browser/link-interceptor.d.ts +53 -0
  762. package/dist/types/browser/logging.d.ts +33 -0
  763. package/dist/types/browser/merge-segment-loaders.d.ts +38 -0
  764. package/dist/types/browser/navigation-bridge.d.ts +39 -0
  765. package/dist/types/browser/navigation-client.d.ts +17 -0
  766. package/dist/types/browser/navigation-store-handle.d.ts +25 -0
  767. package/dist/types/browser/navigation-store.d.ts +85 -0
  768. package/dist/types/browser/navigation-transaction.d.ts +75 -0
  769. package/dist/types/browser/network-error-handler.d.ts +35 -0
  770. package/dist/types/browser/notify-listeners.d.ts +2 -0
  771. package/dist/types/browser/partial-update.d.ts +61 -0
  772. package/dist/types/browser/prefetch/cache.d.ts +224 -0
  773. package/dist/types/browser/prefetch/default-strategy.d.ts +31 -0
  774. package/dist/types/browser/prefetch/fetch.d.ts +52 -0
  775. package/dist/types/browser/prefetch/invalidation.d.ts +6 -0
  776. package/dist/types/browser/prefetch/loader.d.ts +12 -0
  777. package/dist/types/browser/prefetch/observer.d.ts +24 -0
  778. package/dist/types/browser/prefetch/policy.d.ts +13 -0
  779. package/dist/types/browser/prefetch/queue.d.ts +48 -0
  780. package/dist/types/browser/prefetch/resource-ready.d.ts +28 -0
  781. package/dist/types/browser/prefetch/runtime.d.ts +2 -0
  782. package/dist/types/browser/rango-state.d.ts +56 -0
  783. package/dist/types/browser/react/Link.d.ts +132 -0
  784. package/dist/types/browser/react/NavigationProvider.d.ts +88 -0
  785. package/dist/types/browser/react/ScrollRestoration.d.ts +78 -0
  786. package/dist/types/browser/react/context.d.ts +57 -0
  787. package/dist/types/browser/react/filter-segment-order.d.ts +35 -0
  788. package/dist/types/browser/react/index.d.ts +1 -0
  789. package/dist/types/browser/react/location-state-shared.d.ts +162 -0
  790. package/dist/types/browser/react/location-state.d.ts +29 -0
  791. package/dist/types/browser/react/mount-context.d.ts +23 -0
  792. package/dist/types/browser/react/nonce-context.d.ts +14 -0
  793. package/dist/types/browser/react/shallow-equal.d.ts +5 -0
  794. package/dist/types/browser/react/use-action.d.ts +61 -0
  795. package/dist/types/browser/react/use-handle.d.ts +21 -0
  796. package/dist/types/browser/react/use-href.d.ts +32 -0
  797. package/dist/types/browser/react/use-link-status.d.ts +36 -0
  798. package/dist/types/browser/react/use-mount.d.ts +24 -0
  799. package/dist/types/browser/react/use-navigation.d.ts +15 -0
  800. package/dist/types/browser/react/use-params.d.ts +21 -0
  801. package/dist/types/browser/react/use-pathname.d.ts +13 -0
  802. package/dist/types/browser/react/use-reverse.d.ts +40 -0
  803. package/dist/types/browser/react/use-router.d.ts +30 -0
  804. package/dist/types/browser/react/use-search-params.d.ts +66 -0
  805. package/dist/types/browser/react/use-segments.d.ts +29 -0
  806. package/dist/types/browser/response-adapter.d.ts +58 -0
  807. package/dist/types/browser/rsc-router.d.ts +146 -0
  808. package/dist/types/browser/scroll-restoration.d.ts +103 -0
  809. package/dist/types/browser/segment-reconciler.d.ts +74 -0
  810. package/dist/types/browser/segment-structure-assert.d.ts +16 -0
  811. package/dist/types/browser/server-action-bridge.d.ts +29 -0
  812. package/dist/types/browser/types.d.ts +546 -0
  813. package/dist/types/browser/validate-redirect-origin.d.ts +28 -0
  814. package/dist/types/build/collect-fallback-refs.d.ts +5 -0
  815. package/dist/types/build/generate-manifest.d.ts +106 -0
  816. package/dist/types/build/generate-route-types.d.ts +8 -0
  817. package/dist/types/build/index.d.ts +21 -0
  818. package/dist/types/build/merge-full-manifests.d.ts +3 -0
  819. package/dist/types/build/prefix-tree-utils.d.ts +56 -0
  820. package/dist/types/build/route-trie.d.ts +20 -0
  821. package/dist/types/build/route-types/ast-helpers.d.ts +3 -0
  822. package/dist/types/build/route-types/ast-route-extraction.d.ts +13 -0
  823. package/dist/types/build/route-types/codegen.d.ts +16 -0
  824. package/dist/types/build/route-types/include-resolution.d.ts +74 -0
  825. package/dist/types/build/route-types/param-extraction.d.ts +13 -0
  826. package/dist/types/build/route-types/per-module-writer.d.ts +20 -0
  827. package/dist/types/build/route-types/router-processing.d.ts +81 -0
  828. package/dist/types/build/route-types/scan-filter.d.ts +17 -0
  829. package/dist/types/build/route-types/source-scan.d.ts +13 -0
  830. package/dist/types/build/runtime-discovery.d.ts +24 -0
  831. package/dist/types/cache/background-task.d.ts +21 -0
  832. package/dist/types/cache/cache-error.d.ts +71 -0
  833. package/dist/types/cache/cache-exec-scope.d.ts +31 -0
  834. package/dist/types/cache/cache-key-utils.d.ts +43 -0
  835. package/dist/types/cache/cache-policy.d.ts +59 -0
  836. package/dist/types/cache/cache-runtime.d.ts +51 -0
  837. package/dist/types/cache/cache-scope.d.ts +215 -0
  838. package/dist/types/cache/cache-tag.d.ts +79 -0
  839. package/dist/types/cache/cf/cf-base64.d.ts +4 -0
  840. package/dist/types/cache/cf/cf-cache-constants.d.ts +112 -0
  841. package/dist/types/cache/cf/cf-cache-store.d.ts +630 -0
  842. package/dist/types/cache/cf/cf-cache-types.d.ts +365 -0
  843. package/dist/types/cache/cf/cf-kv-utils.d.ts +43 -0
  844. package/dist/types/cache/cf/cf-tag-marker-memo.d.ts +15 -0
  845. package/dist/types/cache/cf/cf-zone-purge.d.ts +31 -0
  846. package/dist/types/cache/cf/index.d.ts +4 -0
  847. package/dist/types/cache/document-cache.d.ts +71 -0
  848. package/dist/types/cache/handle-capture.d.ts +23 -0
  849. package/dist/types/cache/handle-snapshot.d.ts +39 -0
  850. package/dist/types/cache/index.d.ts +9 -0
  851. package/dist/types/cache/memory-segment-store.d.ts +163 -0
  852. package/dist/types/cache/profile-registry.d.ts +40 -0
  853. package/dist/types/cache/read-through-swr.d.ts +61 -0
  854. package/dist/types/cache/search-params-filter.d.ts +64 -0
  855. package/dist/types/cache/segment-codec.d.ts +78 -0
  856. package/dist/types/cache/shell-snapshot.d.ts +186 -0
  857. package/dist/types/cache/tag-invalidation.d.ts +74 -0
  858. package/dist/types/cache/taint.d.ts +77 -0
  859. package/dist/types/cache/types.d.ts +522 -0
  860. package/dist/types/cache/vercel/index.d.ts +1 -0
  861. package/dist/types/cache/vercel/vercel-cache-store.d.ts +268 -0
  862. package/dist/types/client-urls/client-root.d.ts +38 -0
  863. package/dist/types/client-urls/client-urls.d.ts +5 -0
  864. package/dist/types/client-urls/navigation.d.ts +38 -0
  865. package/dist/types/client-urls/revalidation-protocol.d.ts +25 -0
  866. package/dist/types/client-urls/server-projection.d.ts +71 -0
  867. package/dist/types/client-urls/types.d.ts +148 -0
  868. package/dist/types/client.d.ts +192 -0
  869. package/dist/types/client.rsc.d.ts +42 -0
  870. package/dist/types/cloudflare/index.d.ts +7 -0
  871. package/dist/types/cloudflare/tracing.d.ts +57 -0
  872. package/dist/types/component-utils.d.ts +46 -0
  873. package/dist/types/components/DefaultDocument.d.ts +13 -0
  874. package/dist/types/context-var.d.ts +84 -0
  875. package/dist/types/debug.d.ts +57 -0
  876. package/dist/types/decode-loader-results.d.ts +42 -0
  877. package/dist/types/default-error-boundary.d.ts +10 -0
  878. package/dist/types/defer.d.ts +89 -0
  879. package/dist/types/deps/browser.d.ts +1 -0
  880. package/dist/types/deps/html-stream-client.d.ts +1 -0
  881. package/dist/types/deps/html-stream-server.d.ts +1 -0
  882. package/dist/types/deps/rsc.d.ts +1 -0
  883. package/dist/types/deps/ssr.d.ts +1 -0
  884. package/dist/types/dev-discovery-protocol.d.ts +5 -0
  885. package/dist/types/encode-kv.d.ts +35 -0
  886. package/dist/types/errors.d.ts +227 -0
  887. package/dist/types/escape-script.d.ts +44 -0
  888. package/dist/types/handle.d.ts +93 -0
  889. package/dist/types/handles/MetaTags.d.ts +17 -0
  890. package/dist/types/handles/Scripts.d.ts +38 -0
  891. package/dist/types/handles/breadcrumbs.d.ts +43 -0
  892. package/dist/types/handles/deferred-resolution.d.ts +53 -0
  893. package/dist/types/handles/is-thenable.d.ts +10 -0
  894. package/dist/types/handles/meta.d.ts +43 -0
  895. package/dist/types/handles/script.d.ts +139 -0
  896. package/dist/types/host/cookie-handler.d.ts +8 -0
  897. package/dist/types/host/errors.d.ts +40 -0
  898. package/dist/types/host/index.d.ts +33 -0
  899. package/dist/types/host/pattern-matcher.d.ts +30 -0
  900. package/dist/types/host/router.d.ts +12 -0
  901. package/dist/types/host/testing.d.ts +41 -0
  902. package/dist/types/host/types.d.ts +148 -0
  903. package/dist/types/host/utils.d.ts +20 -0
  904. package/dist/types/href-client.d.ts +214 -0
  905. package/dist/types/index.d.ts +113 -0
  906. package/dist/types/index.rsc.d.ts +52 -0
  907. package/dist/types/internal-debug.d.ts +1 -0
  908. package/dist/types/loader-redirect.d.ts +27 -0
  909. package/dist/types/loader-store.d.ts +193 -0
  910. package/dist/types/loader.d.ts +18 -0
  911. package/dist/types/loader.rsc.d.ts +18 -0
  912. package/dist/types/missing-id-error.d.ts +1 -0
  913. package/dist/types/outlet-context.d.ts +32 -0
  914. package/dist/types/outlet-provider.d.ts +15 -0
  915. package/dist/types/prerender/build-shell-capture.d.ts +104 -0
  916. package/dist/types/prerender/param-hash.d.ts +6 -0
  917. package/dist/types/prerender/shell-manifest-key.d.ts +18 -0
  918. package/dist/types/prerender/store.d.ts +63 -0
  919. package/dist/types/prerender.d.ts +292 -0
  920. package/dist/types/redirect-origin.d.ts +71 -0
  921. package/dist/types/regex-escape.d.ts +6 -0
  922. package/dist/types/render-error-thrower.d.ts +13 -0
  923. package/dist/types/response-utils.d.ts +35 -0
  924. package/dist/types/reverse.d.ts +206 -0
  925. package/dist/types/root-error-boundary.d.ts +32 -0
  926. package/dist/types/route-content-wrapper.d.ts +84 -0
  927. package/dist/types/route-definition/dsl-helpers.d.ts +130 -0
  928. package/dist/types/route-definition/helper-factories.d.ts +22 -0
  929. package/dist/types/route-definition/helpers-types.d.ts +405 -0
  930. package/dist/types/route-definition/index.d.ts +7 -0
  931. package/dist/types/route-definition/redirect.d.ts +48 -0
  932. package/dist/types/route-definition/resolve-handler-use.d.ts +19 -0
  933. package/dist/types/route-definition/use-item-types.d.ts +1 -0
  934. package/dist/types/route-definition.d.ts +1 -0
  935. package/dist/types/route-map-builder.d.ts +102 -0
  936. package/dist/types/route-name.d.ts +27 -0
  937. package/dist/types/route-types.d.ts +172 -0
  938. package/dist/types/router/basename.d.ts +10 -0
  939. package/dist/types/router/content-negotiation.d.ts +91 -0
  940. package/dist/types/router/debug-manifest.d.ts +7 -0
  941. package/dist/types/router/error-handling.d.ts +110 -0
  942. package/dist/types/router/find-match.d.ts +19 -0
  943. package/dist/types/router/handler-context.d.ts +41 -0
  944. package/dist/types/router/instrument.d.ts +191 -0
  945. package/dist/types/router/intercept-resolution.d.ts +91 -0
  946. package/dist/types/router/lazy-includes.d.ts +26 -0
  947. package/dist/types/router/loader-resolution.d.ts +85 -0
  948. package/dist/types/router/logging.d.ts +41 -0
  949. package/dist/types/router/manifest.d.ts +8 -0
  950. package/dist/types/router/match-api.d.ts +19 -0
  951. package/dist/types/router/match-context.d.ts +184 -0
  952. package/dist/types/router/match-handlers.d.ts +48 -0
  953. package/dist/types/router/match-middleware/background-revalidation.d.ts +113 -0
  954. package/dist/types/router/match-middleware/cache-lookup.d.ts +126 -0
  955. package/dist/types/router/match-middleware/cache-store.d.ts +112 -0
  956. package/dist/types/router/match-middleware/index.d.ts +80 -0
  957. package/dist/types/router/match-middleware/intercept-resolution.d.ts +116 -0
  958. package/dist/types/router/match-middleware/segment-resolution.d.ts +94 -0
  959. package/dist/types/router/match-pipelines.d.ts +103 -0
  960. package/dist/types/router/match-result.d.ts +114 -0
  961. package/dist/types/router/metrics.d.ts +6 -0
  962. package/dist/types/router/middleware-types.d.ts +74 -0
  963. package/dist/types/router/middleware.d.ts +116 -0
  964. package/dist/types/router/navigation-snapshot.d.ts +51 -0
  965. package/dist/types/router/params-util.d.ts +8 -0
  966. package/dist/types/router/parse-pattern.d.ts +38 -0
  967. package/dist/types/router/pattern-matching.d.ts +169 -0
  968. package/dist/types/router/prefetch-cache-ttl.d.ts +27 -0
  969. package/dist/types/router/prefetch-default.d.ts +28 -0
  970. package/dist/types/router/prefetch-limits.d.ts +20 -0
  971. package/dist/types/router/prerender-match.d.ts +53 -0
  972. package/dist/types/router/preview-match.d.ts +22 -0
  973. package/dist/types/router/request-classification.d.ts +104 -0
  974. package/dist/types/router/revalidation.d.ts +64 -0
  975. package/dist/types/router/route-snapshot.d.ts +112 -0
  976. package/dist/types/router/route-trie-builder.d.ts +77 -0
  977. package/dist/types/router/router-context.d.ts +137 -0
  978. package/dist/types/router/router-interfaces.d.ts +461 -0
  979. package/dist/types/router/router-options.d.ts +792 -0
  980. package/dist/types/router/router-registry.d.ts +15 -0
  981. package/dist/types/router/segment-resolution/fresh.d.ts +55 -0
  982. package/dist/types/router/segment-resolution/helpers.d.ts +93 -0
  983. package/dist/types/router/segment-resolution/loader-cache.d.ts +33 -0
  984. package/dist/types/router/segment-resolution/loader-mask.d.ts +44 -0
  985. package/dist/types/router/segment-resolution/loader-snapshot.d.ts +90 -0
  986. package/dist/types/router/segment-resolution/mask-nested.d.ts +53 -0
  987. package/dist/types/router/segment-resolution/revalidation.d.ts +85 -0
  988. package/dist/types/router/segment-resolution/static-store.d.ts +17 -0
  989. package/dist/types/router/segment-resolution/streamed-handler-telemetry.d.ts +16 -0
  990. package/dist/types/router/segment-resolution/view-transition-default.d.ts +27 -0
  991. package/dist/types/router/segment-resolution.d.ts +3 -0
  992. package/dist/types/router/segment-wrappers.d.ts +53 -0
  993. package/dist/types/router/state-cookie-name.d.ts +1 -0
  994. package/dist/types/router/substitute-pattern-params.d.ts +23 -0
  995. package/dist/types/router/telemetry-otel.d.ts +113 -0
  996. package/dist/types/router/telemetry.d.ts +216 -0
  997. package/dist/types/router/timeout.d.ts +107 -0
  998. package/dist/types/router/tracing.d.ts +139 -0
  999. package/dist/types/router/transition-when.d.ts +13 -0
  1000. package/dist/types/router/trie-matching.d.ts +32 -0
  1001. package/dist/types/router/types.d.ts +98 -0
  1002. package/dist/types/router/url-params.d.ts +26 -0
  1003. package/dist/types/router.d.ts +7 -0
  1004. package/dist/types/rsc/capture-queue.d.ts +49 -0
  1005. package/dist/types/rsc/full-payload.d.ts +22 -0
  1006. package/dist/types/rsc/handler-context.d.ts +32 -0
  1007. package/dist/types/rsc/handler.d.ts +9 -0
  1008. package/dist/types/rsc/helpers.d.ts +127 -0
  1009. package/dist/types/rsc/index.d.ts +17 -0
  1010. package/dist/types/rsc/json-route-result.d.ts +20 -0
  1011. package/dist/types/rsc/loader-fetch.d.ts +14 -0
  1012. package/dist/types/rsc/manifest-init.d.ts +18 -0
  1013. package/dist/types/rsc/nonce.d.ts +38 -0
  1014. package/dist/types/rsc/origin-guard.d.ts +50 -0
  1015. package/dist/types/rsc/progressive-enhancement.d.ts +19 -0
  1016. package/dist/types/rsc/redirect-guard.d.ts +37 -0
  1017. package/dist/types/rsc/render-pipeline.d.ts +148 -0
  1018. package/dist/types/rsc/response-cache-serve.d.ts +46 -0
  1019. package/dist/types/rsc/response-error.d.ts +19 -0
  1020. package/dist/types/rsc/response-route-handler.d.ts +29 -0
  1021. package/dist/types/rsc/routine-plan.d.ts +124 -0
  1022. package/dist/types/rsc/rsc-rendering.d.ts +18 -0
  1023. package/dist/types/rsc/runtime-warnings.d.ts +22 -0
  1024. package/dist/types/rsc/server-action.d.ts +68 -0
  1025. package/dist/types/rsc/shell-build-manifest.d.ts +90 -0
  1026. package/dist/types/rsc/shell-capture-constants.d.ts +44 -0
  1027. package/dist/types/rsc/shell-capture.d.ts +425 -0
  1028. package/dist/types/rsc/shell-serve.d.ts +200 -0
  1029. package/dist/types/rsc/ssr-setup.d.ts +73 -0
  1030. package/dist/types/rsc/stream-idle.d.ts +60 -0
  1031. package/dist/types/rsc/transition-gate.d.ts +23 -0
  1032. package/dist/types/rsc/types.d.ts +353 -0
  1033. package/dist/types/runtime-env.d.ts +1 -0
  1034. package/dist/types/search-params.d.ts +125 -0
  1035. package/dist/types/segment-content-promise.d.ts +13 -0
  1036. package/dist/types/segment-fragments.d.ts +79 -0
  1037. package/dist/types/segment-loader-promise.d.ts +22 -0
  1038. package/dist/types/segment-system.d.ts +86 -0
  1039. package/dist/types/serialize.d.ts +164 -0
  1040. package/dist/types/server/context.d.ts +520 -0
  1041. package/dist/types/server/cookie-parse.d.ts +10 -0
  1042. package/dist/types/server/cookie-store.d.ts +107 -0
  1043. package/dist/types/server/fetchable-loader-store.d.ts +20 -0
  1044. package/dist/types/server/handle-store.d.ts +131 -0
  1045. package/dist/types/server/loader-registry.d.ts +32 -0
  1046. package/dist/types/server/request-context.d.ts +717 -0
  1047. package/dist/types/server/root-layout.d.ts +3 -0
  1048. package/dist/types/server.d.ts +16 -0
  1049. package/dist/types/ssr/index.d.ts +289 -0
  1050. package/dist/types/ssr/inject-rsc-eager.d.ts +3 -0
  1051. package/dist/types/ssr/preinit-client-references.d.ts +71 -0
  1052. package/dist/types/ssr/ssr-root.d.ts +100 -0
  1053. package/dist/types/ssr-suspension-warning.d.ts +19 -0
  1054. package/dist/types/static-handler.d.ts +71 -0
  1055. package/dist/types/testing/cache-status.d.ts +63 -0
  1056. package/dist/types/testing/collect-handle.d.ts +20 -0
  1057. package/dist/types/testing/dispatch.d.ts +127 -0
  1058. package/dist/types/testing/dom.entry.d.ts +15 -0
  1059. package/dist/types/testing/e2e/fixture.d.ts +37 -0
  1060. package/dist/types/testing/e2e/index.d.ts +31 -0
  1061. package/dist/types/testing/e2e/matchers.d.ts +17 -0
  1062. package/dist/types/testing/e2e/page-helpers.d.ts +86 -0
  1063. package/dist/types/testing/e2e/parity.d.ts +111 -0
  1064. package/dist/types/testing/e2e/server.d.ts +35 -0
  1065. package/dist/types/testing/flight-matchers.d.ts +55 -0
  1066. package/dist/types/testing/flight-normalize.d.ts +1 -0
  1067. package/dist/types/testing/flight-tree.d.ts +192 -0
  1068. package/dist/types/testing/flight.d.ts +115 -0
  1069. package/dist/types/testing/flight.entry.d.ts +27 -0
  1070. package/dist/types/testing/generated-routes.d.ts +66 -0
  1071. package/dist/types/testing/index.d.ts +54 -0
  1072. package/dist/types/testing/internal/context.d.ts +225 -0
  1073. package/dist/types/testing/internal/flight-client-globals.d.ts +1 -0
  1074. package/dist/types/testing/internal/seed-vars.d.ts +30 -0
  1075. package/dist/types/testing/render-handler.d.ts +160 -0
  1076. package/dist/types/testing/render-route.d.ts +265 -0
  1077. package/dist/types/testing/run-loader.d.ts +195 -0
  1078. package/dist/types/testing/run-middleware.d.ts +132 -0
  1079. package/dist/types/testing/run-transition-when.d.ts +78 -0
  1080. package/dist/types/testing/shell-status.d.ts +81 -0
  1081. package/dist/types/testing/vitest-stubs/cloudflare-email.d.ts +6 -0
  1082. package/dist/types/testing/vitest-stubs/cloudflare-workers.d.ts +13 -0
  1083. package/dist/types/testing/vitest-stubs/plugin-rsc.d.ts +7 -0
  1084. package/dist/types/testing/vitest-stubs/version.d.ts +1 -0
  1085. package/dist/types/testing/vitest.d.ts +205 -0
  1086. package/dist/types/theme/ThemeProvider.d.ts +13 -0
  1087. package/dist/types/theme/ThemeScript.d.ts +45 -0
  1088. package/dist/types/theme/constants.d.ts +39 -0
  1089. package/dist/types/theme/index.d.ts +29 -0
  1090. package/dist/types/theme/theme-context.d.ts +21 -0
  1091. package/dist/types/theme/theme-script.d.ts +26 -0
  1092. package/dist/types/theme/types.d.ts +162 -0
  1093. package/dist/types/theme/use-theme.d.ts +8 -0
  1094. package/dist/types/types/boundaries.d.ts +115 -0
  1095. package/dist/types/types/cache-types.d.ts +191 -0
  1096. package/dist/types/types/error-types.d.ts +114 -0
  1097. package/dist/types/types/global-namespace.d.ts +90 -0
  1098. package/dist/types/types/handler-context.d.ts +658 -0
  1099. package/dist/types/types/index.d.ts +11 -0
  1100. package/dist/types/types/loader-types.d.ts +240 -0
  1101. package/dist/types/types/request-scope.d.ts +93 -0
  1102. package/dist/types/types/route-config.d.ts +105 -0
  1103. package/dist/types/types/route-entry.d.ts +98 -0
  1104. package/dist/types/types/segments.d.ts +254 -0
  1105. package/dist/types/types.d.ts +1 -0
  1106. package/dist/types/urls/include-helper.d.ts +17 -0
  1107. package/dist/types/urls/include-provider.d.ts +27 -0
  1108. package/dist/types/urls/index.d.ts +6 -0
  1109. package/dist/types/urls/path-helper-types.d.ts +207 -0
  1110. package/dist/types/urls/path-helper.d.ts +12 -0
  1111. package/dist/types/urls/pattern-types.d.ts +166 -0
  1112. package/dist/types/urls/response-types.d.ts +67 -0
  1113. package/dist/types/urls/type-extraction.d.ts +157 -0
  1114. package/dist/types/urls/urls-function.d.ts +24 -0
  1115. package/dist/types/urls.d.ts +1 -0
  1116. package/dist/types/use-loader.d.ts +150 -0
  1117. package/dist/types/vercel/index.d.ts +10 -0
  1118. package/dist/types/vercel/tracing.d.ts +71 -0
  1119. package/dist/types/vite/debug.d.ts +80 -0
  1120. package/dist/types/vite/discovery/bundle-postprocess.d.ts +12 -0
  1121. package/dist/types/vite/discovery/client-urls-projection.d.ts +53 -0
  1122. package/dist/types/vite/discovery/dev-prerender-cache.d.ts +65 -0
  1123. package/dist/types/vite/discovery/discover-routers.d.ts +17 -0
  1124. package/dist/types/vite/discovery/discovery-errors.d.ts +113 -0
  1125. package/dist/types/vite/discovery/gate-state.d.ts +79 -0
  1126. package/dist/types/vite/discovery/prerender-collection.d.ts +24 -0
  1127. package/dist/types/vite/discovery/route-types-writer.d.ts +32 -0
  1128. package/dist/types/vite/discovery/self-gen-tracking.d.ts +22 -0
  1129. package/dist/types/vite/discovery/shell-prerender-phase.d.ts +40 -0
  1130. package/dist/types/vite/discovery/state.d.ts +176 -0
  1131. package/dist/types/vite/discovery/virtual-module-codegen.d.ts +15 -0
  1132. package/dist/types/vite/encryption-key.d.ts +2 -0
  1133. package/dist/types/vite/index.d.ts +11 -0
  1134. package/dist/types/vite/inject-client-debug.d.ts +56 -0
  1135. package/dist/types/vite/plugin-types.d.ts +325 -0
  1136. package/dist/types/vite/plugins/cjs-to-esm.d.ts +6 -0
  1137. package/dist/types/vite/plugins/client-ref-dedup.d.ts +29 -0
  1138. package/dist/types/vite/plugins/client-ref-hashing.d.ts +35 -0
  1139. package/dist/types/vite/plugins/cloudflare-protocol-stub.d.ts +64 -0
  1140. package/dist/types/vite/plugins/expose-action-id.d.ts +18 -0
  1141. package/dist/types/vite/plugins/expose-id-utils.d.ts +37 -0
  1142. package/dist/types/vite/plugins/expose-ids/export-analysis.d.ts +19 -0
  1143. package/dist/types/vite/plugins/expose-ids/handler-transform.d.ts +10 -0
  1144. package/dist/types/vite/plugins/expose-ids/loader-transform.d.ts +8 -0
  1145. package/dist/types/vite/plugins/expose-ids/router-transform.d.ts +13 -0
  1146. package/dist/types/vite/plugins/expose-ids/types.d.ts +29 -0
  1147. package/dist/types/vite/plugins/expose-internal-ids.d.ts +16 -0
  1148. package/dist/types/vite/plugins/performance-tracks.d.ts +25 -0
  1149. package/dist/types/vite/plugins/refresh-cmd.d.ts +20 -0
  1150. package/dist/types/vite/plugins/server-ref-hashing.d.ts +24 -0
  1151. package/dist/types/vite/plugins/server-reference-pattern.d.ts +1 -0
  1152. package/dist/types/vite/plugins/use-cache-transform.d.ts +20 -0
  1153. package/dist/types/vite/plugins/vercel-output.d.ts +85 -0
  1154. package/dist/types/vite/plugins/version-injector.d.ts +21 -0
  1155. package/dist/types/vite/plugins/version-plugin.d.ts +19 -0
  1156. package/dist/types/vite/plugins/virtual-entries.d.ts +36 -0
  1157. package/dist/types/vite/plugins/virtual-stub-plugin.d.ts +7 -0
  1158. package/dist/types/vite/rango.d.ts +29 -0
  1159. package/dist/types/vite/router-discovery.d.ts +23 -0
  1160. package/dist/types/vite/utils/ast-handler-extract.d.ts +64 -0
  1161. package/dist/types/vite/utils/banner.d.ts +2 -0
  1162. package/dist/types/vite/utils/bundle-analysis.d.ts +28 -0
  1163. package/dist/types/vite/utils/client-chunks.d.ts +55 -0
  1164. package/dist/types/vite/utils/directive-prologue.d.ts +16 -0
  1165. package/dist/types/vite/utils/forward-user-plugins.d.ts +37 -0
  1166. package/dist/types/vite/utils/manifest-utils.d.ts +7 -0
  1167. package/dist/types/vite/utils/package-resolution.d.ts +6 -0
  1168. package/dist/types/vite/utils/prerender-utils.d.ts +32 -0
  1169. package/dist/types/vite/utils/shared-utils.d.ts +68 -0
  1170. package/dist/types.d.ts +1479 -0
  1171. package/dist/types.d.ts.map +1 -0
  1172. package/dist/types.js +10 -0
  1173. package/dist/types.js.map +1 -0
  1174. package/dist/urls.d.ts +441 -0
  1175. package/dist/urls.d.ts.map +1 -0
  1176. package/dist/urls.gen.d.ts +8 -0
  1177. package/dist/urls.gen.d.ts.map +1 -0
  1178. package/dist/urls.gen.js +8 -0
  1179. package/dist/urls.gen.js.map +1 -0
  1180. package/dist/urls.js +443 -0
  1181. package/dist/urls.js.map +1 -0
  1182. package/dist/use-loader.d.ts +127 -0
  1183. package/dist/use-loader.d.ts.map +1 -0
  1184. package/dist/use-loader.js +237 -0
  1185. package/dist/use-loader.js.map +1 -0
  1186. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +2 -0
  1187. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +1 -0
  1188. package/dist/vite/__tests__/ast-handler-extract.test.js +294 -0
  1189. package/dist/vite/__tests__/ast-handler-extract.test.js.map +1 -0
  1190. package/dist/vite/__tests__/expose-id-utils.test.d.ts +2 -0
  1191. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +1 -0
  1192. package/dist/vite/__tests__/expose-id-utils.test.js +224 -0
  1193. package/dist/vite/__tests__/expose-id-utils.test.js.map +1 -0
  1194. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +2 -0
  1195. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +1 -0
  1196. package/dist/vite/__tests__/expose-internal-ids.test.js +647 -0
  1197. package/dist/vite/__tests__/expose-internal-ids.test.js.map +1 -0
  1198. package/dist/vite/__tests__/expose-router-id.test.d.ts +2 -0
  1199. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +1 -0
  1200. package/dist/vite/__tests__/expose-router-id.test.js +39 -0
  1201. package/dist/vite/__tests__/expose-router-id.test.js.map +1 -0
  1202. package/dist/vite/ast-handler-extract.d.ts +49 -0
  1203. package/dist/vite/ast-handler-extract.d.ts.map +1 -0
  1204. package/dist/vite/ast-handler-extract.js +249 -0
  1205. package/dist/vite/ast-handler-extract.js.map +1 -0
  1206. package/dist/vite/expose-action-id.d.ts +19 -0
  1207. package/dist/vite/expose-action-id.d.ts.map +1 -0
  1208. package/dist/vite/expose-action-id.js +250 -0
  1209. package/dist/vite/expose-action-id.js.map +1 -0
  1210. package/dist/vite/expose-id-utils.d.ts +69 -0
  1211. package/dist/vite/expose-id-utils.d.ts.map +1 -0
  1212. package/dist/vite/expose-id-utils.js +289 -0
  1213. package/dist/vite/expose-id-utils.js.map +1 -0
  1214. package/dist/vite/expose-internal-ids.d.ts +22 -0
  1215. package/dist/vite/expose-internal-ids.d.ts.map +1 -0
  1216. package/dist/vite/expose-internal-ids.js +886 -0
  1217. package/dist/vite/expose-internal-ids.js.map +1 -0
  1218. package/dist/vite/index.d.ts +149 -0
  1219. package/dist/vite/index.d.ts.map +1 -0
  1220. package/dist/vite/index.js +7541 -2649
  1221. package/dist/vite/index.js.bak +5448 -0
  1222. package/dist/vite/index.js.map +1 -0
  1223. package/dist/vite/index.named-routes.gen.ts +103 -0
  1224. package/dist/vite/package-resolution.d.ts +43 -0
  1225. package/dist/vite/package-resolution.d.ts.map +1 -0
  1226. package/dist/vite/package-resolution.js +112 -0
  1227. package/dist/vite/package-resolution.js.map +1 -0
  1228. package/dist/vite/virtual-entries.d.ts +25 -0
  1229. package/dist/vite/virtual-entries.d.ts.map +1 -0
  1230. package/dist/vite/virtual-entries.js +110 -0
  1231. package/dist/vite/virtual-entries.js.map +1 -0
  1232. package/package.json +73 -44
  1233. package/skills/api-client/SKILL.md +1 -1
  1234. package/skills/breadcrumbs/SKILL.md +66 -19
  1235. package/skills/cache-guide/SKILL.md +11 -5
  1236. package/skills/caching/SKILL.md +100 -6
  1237. package/skills/catalog.json +289 -0
  1238. package/skills/client-urls/SKILL.md +339 -0
  1239. package/skills/cloudflare/SKILL.md +153 -0
  1240. package/skills/cloudflare/agents/openai.yaml +4 -0
  1241. package/skills/cloudflare/references/d1-and-local-dev.md +131 -0
  1242. package/skills/cloudflare/references/streaming-and-deploy.md +107 -0
  1243. package/skills/cloudflare/references/webhooks-and-crypto.md +147 -0
  1244. package/skills/comparison/SKILL.md +50 -0
  1245. package/skills/comparison/agents/openai.yaml +4 -0
  1246. package/skills/comparison/references/framework-comparison.md +858 -0
  1247. package/skills/composability/SKILL.md +97 -2
  1248. package/skills/debug-manifest/SKILL.md +3 -11
  1249. package/skills/defer-hydration/SKILL.md +235 -0
  1250. package/skills/deployment-caching/SKILL.md +176 -0
  1251. package/skills/document-cache/SKILL.md +38 -3
  1252. package/skills/fonts/SKILL.md +1 -1
  1253. package/skills/handler-use/SKILL.md +8 -8
  1254. package/skills/hooks/SKILL.md +55 -893
  1255. package/skills/hooks/data.md +282 -0
  1256. package/skills/hooks/handle-and-actions.md +110 -0
  1257. package/skills/hooks/navigation.md +110 -0
  1258. package/skills/hooks/outlets.md +62 -0
  1259. package/skills/hooks/state.md +228 -0
  1260. package/skills/hooks/urls.md +172 -0
  1261. package/skills/host-router/SKILL.md +46 -4
  1262. package/skills/i18n/SKILL.md +1 -1
  1263. package/skills/intercept/SKILL.md +46 -14
  1264. package/skills/layout/SKILL.md +27 -10
  1265. package/skills/links/SKILL.md +37 -1
  1266. package/skills/loader/SKILL.md +170 -20
  1267. package/skills/middleware/SKILL.md +40 -3
  1268. package/skills/migrate-nextjs/SKILL.md +298 -28
  1269. package/skills/migrate-nextjs/backend-host-swap.md +120 -0
  1270. package/skills/migrate-react-router/SKILL.md +95 -677
  1271. package/skills/migrate-react-router/component-migration.md +201 -0
  1272. package/skills/migrate-react-router/data-and-actions.md +236 -0
  1273. package/skills/migrate-react-router/route-mapping.md +284 -0
  1274. package/skills/mime-routes/SKILL.md +29 -19
  1275. package/skills/observability/SKILL.md +65 -6
  1276. package/skills/parallel/SKILL.md +55 -5
  1277. package/skills/ppr/SKILL.md +918 -0
  1278. package/skills/prerender/SKILL.md +93 -29
  1279. package/skills/rango/SKILL.md +105 -33
  1280. package/skills/react-compiler/SKILL.md +3 -3
  1281. package/skills/response-routes/SKILL.md +60 -7
  1282. package/skills/route/SKILL.md +82 -6
  1283. package/skills/router-setup/SKILL.md +40 -5
  1284. package/skills/scripts/SKILL.md +17 -7
  1285. package/skills/server-actions/SKILL.md +3 -2
  1286. package/skills/shell-manifest/SKILL.md +194 -0
  1287. package/skills/streams-and-websockets/SKILL.md +1 -1
  1288. package/skills/tailwind/SKILL.md +1 -1
  1289. package/skills/testing/SKILL.md +5 -3
  1290. package/skills/testing/cache-prerender.md +47 -2
  1291. package/skills/testing/client-components.md +21 -14
  1292. package/skills/testing/handles.md +34 -10
  1293. package/skills/testing/loader.md +51 -49
  1294. package/skills/testing/middleware.md +1 -1
  1295. package/skills/testing/render-handler.md +15 -14
  1296. package/skills/testing/response-routes.md +2 -2
  1297. package/skills/testing/reverse-and-types.md +8 -7
  1298. package/skills/theme/SKILL.md +9 -6
  1299. package/skills/typesafety/SKILL.md +45 -919
  1300. package/skills/typesafety/env-and-bindings.md +254 -0
  1301. package/skills/typesafety/generated-files-and-cli.md +342 -0
  1302. package/skills/typesafety/params-and-search.md +153 -0
  1303. package/skills/typesafety/route-types.md +213 -0
  1304. package/skills/use-cache/SKILL.md +77 -3
  1305. package/skills/vercel/SKILL.md +149 -0
  1306. package/skills/view-transitions/SKILL.md +48 -1
  1307. package/src/bin/rango.ts +7 -3
  1308. package/src/browser/dev-discovery.ts +66 -0
  1309. package/src/browser/event-controller.ts +221 -31
  1310. package/src/browser/link-interceptor.ts +469 -20
  1311. package/src/browser/logging.ts +28 -0
  1312. package/src/browser/merge-segment-loaders.ts +6 -4
  1313. package/src/browser/navigation-bridge.ts +100 -11
  1314. package/src/browser/navigation-client.ts +105 -28
  1315. package/src/browser/navigation-store.ts +141 -271
  1316. package/src/browser/notify-listeners.ts +22 -0
  1317. package/src/browser/partial-update.ts +124 -23
  1318. package/src/browser/prefetch/cache.ts +141 -33
  1319. package/src/browser/prefetch/default-strategy.ts +74 -0
  1320. package/src/browser/prefetch/fetch.ts +137 -23
  1321. package/src/browser/prefetch/invalidation.ts +30 -0
  1322. package/src/browser/prefetch/loader.ts +111 -0
  1323. package/src/browser/prefetch/observer.ts +50 -22
  1324. package/src/browser/prefetch/queue.ts +19 -4
  1325. package/src/browser/prefetch/runtime.ts +6 -0
  1326. package/src/browser/rango-state.ts +21 -0
  1327. package/src/browser/react/Link.tsx +142 -102
  1328. package/src/browser/react/NavigationProvider.tsx +104 -78
  1329. package/src/browser/react/context.ts +4 -0
  1330. package/src/browser/react/use-router.ts +41 -12
  1331. package/src/browser/react/use-search-params.ts +140 -17
  1332. package/src/browser/response-adapter.ts +24 -8
  1333. package/src/browser/rsc-router.tsx +165 -16
  1334. package/src/browser/scroll-restoration.ts +7 -5
  1335. package/src/browser/segment-reconciler.ts +31 -21
  1336. package/src/browser/server-action-bridge.ts +48 -10
  1337. package/src/browser/types.ts +75 -26
  1338. package/src/build/generate-manifest.ts +165 -161
  1339. package/src/build/generate-route-types.ts +1 -0
  1340. package/src/build/index.ts +3 -1
  1341. package/src/build/merge-full-manifests.ts +161 -0
  1342. package/src/build/route-trie.ts +13 -353
  1343. package/src/build/route-types/include-resolution.ts +404 -49
  1344. package/src/build/route-types/per-module-writer.ts +11 -6
  1345. package/src/build/route-types/router-processing.ts +261 -180
  1346. package/src/build/runtime-discovery.ts +23 -9
  1347. package/src/cache/cache-exec-scope.ts +47 -0
  1348. package/src/cache/cache-key-utils.ts +46 -4
  1349. package/src/cache/cache-runtime.ts +393 -110
  1350. package/src/cache/cache-scope.ts +206 -34
  1351. package/src/cache/cache-tag.ts +60 -14
  1352. package/src/cache/cf/cf-cache-constants.ts +8 -1
  1353. package/src/cache/cf/cf-cache-store.ts +1198 -118
  1354. package/src/cache/cf/cf-cache-types.ts +69 -1
  1355. package/src/cache/cf/cf-kv-utils.ts +38 -0
  1356. package/src/cache/cf/cf-tag-marker-memo.ts +5 -2
  1357. package/src/cache/cf/cf-zone-purge.ts +101 -0
  1358. package/src/cache/cf/index.ts +5 -0
  1359. package/src/cache/document-cache.ts +120 -41
  1360. package/src/cache/handle-snapshot.ts +22 -1
  1361. package/src/cache/index.ts +22 -0
  1362. package/src/cache/memory-segment-store.ts +153 -3
  1363. package/src/cache/profile-registry.ts +15 -0
  1364. package/src/cache/read-through-swr.ts +25 -5
  1365. package/src/cache/search-params-filter.ts +118 -0
  1366. package/src/cache/segment-codec.ts +72 -9
  1367. package/src/cache/shell-snapshot.ts +516 -0
  1368. package/src/cache/taint.ts +28 -9
  1369. package/src/cache/types.ts +308 -2
  1370. package/src/cache/vercel/index.ts +11 -0
  1371. package/src/cache/vercel/vercel-cache-store.ts +1264 -0
  1372. package/src/client-urls/client-root.tsx +168 -0
  1373. package/src/client-urls/client-urls.ts +779 -0
  1374. package/src/client-urls/navigation.ts +237 -0
  1375. package/src/client-urls/revalidation-protocol.ts +56 -0
  1376. package/src/client-urls/server-projection.ts +670 -0
  1377. package/src/client-urls/types.ts +202 -0
  1378. package/src/client.rsc.tsx +12 -3
  1379. package/src/client.tsx +49 -9
  1380. package/src/cloudflare/tracing.ts +23 -20
  1381. package/src/decode-loader-results.ts +113 -0
  1382. package/src/defer.ts +11 -22
  1383. package/src/deps/ssr.ts +4 -1
  1384. package/src/dev-discovery-protocol.ts +11 -0
  1385. package/src/errors.ts +14 -0
  1386. package/src/handle.ts +37 -15
  1387. package/src/handles/MetaTags.tsx +16 -88
  1388. package/src/handles/breadcrumbs.ts +12 -14
  1389. package/src/handles/deferred-resolution.ts +134 -0
  1390. package/src/handles/is-thenable.ts +5 -8
  1391. package/src/handles/meta.ts +7 -44
  1392. package/src/host/errors.ts +15 -0
  1393. package/src/host/index.ts +1 -0
  1394. package/src/index.rsc.ts +19 -2
  1395. package/src/index.ts +27 -13
  1396. package/src/loader-redirect.tsx +64 -0
  1397. package/src/outlet-context.ts +20 -0
  1398. package/src/outlet-provider.tsx +19 -1
  1399. package/src/prerender/build-shell-capture.ts +453 -0
  1400. package/src/prerender/shell-manifest-key.ts +20 -0
  1401. package/src/prerender/store.ts +15 -1
  1402. package/src/prerender.ts +20 -7
  1403. package/src/redirect-origin.ts +77 -5
  1404. package/src/route-content-wrapper.tsx +115 -8
  1405. package/src/route-definition/dsl-helpers.ts +60 -37
  1406. package/src/route-definition/helper-factories.ts +0 -2
  1407. package/src/route-definition/helpers-types.ts +62 -46
  1408. package/src/route-definition/index.ts +1 -2
  1409. package/src/route-definition/redirect.ts +17 -18
  1410. package/src/route-definition/resolve-handler-use.ts +0 -1
  1411. package/src/route-definition/use-item-types.ts +3 -6
  1412. package/src/route-map-builder.ts +102 -58
  1413. package/src/route-types.ts +0 -5
  1414. package/src/router/content-negotiation.ts +47 -5
  1415. package/src/router/error-handling.ts +65 -11
  1416. package/src/router/find-match.ts +86 -8
  1417. package/src/router/handler-context.ts +31 -15
  1418. package/src/router/instrument.ts +70 -19
  1419. package/src/router/intercept-resolution.ts +59 -1
  1420. package/src/router/lazy-includes.ts +73 -12
  1421. package/src/router/loader-resolution.ts +291 -30
  1422. package/src/router/manifest.ts +56 -11
  1423. package/src/router/match-api.ts +90 -35
  1424. package/src/router/match-handlers.ts +238 -141
  1425. package/src/router/match-middleware/background-revalidation.ts +40 -23
  1426. package/src/router/match-middleware/cache-lookup.ts +182 -42
  1427. package/src/router/match-middleware/cache-store.ts +109 -24
  1428. package/src/router/match-result.ts +41 -14
  1429. package/src/router/metrics.ts +17 -2
  1430. package/src/router/middleware-types.ts +17 -0
  1431. package/src/router/middleware.ts +68 -38
  1432. package/src/router/navigation-snapshot.ts +53 -11
  1433. package/src/router/parse-pattern.ts +115 -0
  1434. package/src/router/pattern-matching.ts +53 -64
  1435. package/src/router/prefetch-default.ts +59 -0
  1436. package/src/router/prefetch-limits.ts +37 -0
  1437. package/src/router/prerender-match.ts +58 -7
  1438. package/src/router/preview-match.ts +3 -1
  1439. package/src/router/request-classification.ts +23 -8
  1440. package/src/router/revalidation.ts +24 -11
  1441. package/src/router/route-snapshot.ts +14 -2
  1442. package/src/router/route-trie-builder.ts +334 -0
  1443. package/src/router/router-context.ts +3 -1
  1444. package/src/router/router-interfaces.ts +86 -4
  1445. package/src/router/router-options.ts +102 -9
  1446. package/src/router/segment-resolution/fresh.ts +127 -5
  1447. package/src/router/segment-resolution/helpers.ts +10 -12
  1448. package/src/router/segment-resolution/loader-cache.ts +146 -2
  1449. package/src/router/segment-resolution/loader-mask.ts +60 -0
  1450. package/src/router/segment-resolution/loader-snapshot.ts +259 -0
  1451. package/src/router/segment-resolution/mask-nested.ts +99 -0
  1452. package/src/router/segment-resolution/revalidation.ts +50 -2
  1453. package/src/router/segment-resolution/static-store.ts +36 -10
  1454. package/src/router/segment-resolution/view-transition-default.ts +39 -15
  1455. package/src/router/substitute-pattern-params.ts +54 -35
  1456. package/src/router/telemetry-otel.ts +21 -12
  1457. package/src/router/telemetry.ts +10 -1
  1458. package/src/router/timeout.ts +53 -2
  1459. package/src/router/tracing.ts +50 -21
  1460. package/src/router/transition-when.ts +76 -0
  1461. package/src/router/trie-matching.ts +22 -14
  1462. package/src/router/url-params.ts +13 -0
  1463. package/src/router.ts +138 -23
  1464. package/src/rsc/capture-queue.ts +218 -0
  1465. package/src/rsc/full-payload.ts +77 -0
  1466. package/src/rsc/handler-context.ts +1 -0
  1467. package/src/rsc/handler.ts +417 -182
  1468. package/src/rsc/helpers.ts +80 -4
  1469. package/src/rsc/loader-fetch.ts +4 -4
  1470. package/src/rsc/manifest-init.ts +28 -16
  1471. package/src/rsc/nonce.ts +26 -1
  1472. package/src/rsc/progressive-enhancement.ts +329 -88
  1473. package/src/rsc/redirect-guard.ts +5 -2
  1474. package/src/rsc/render-pipeline.ts +611 -0
  1475. package/src/rsc/response-cache-serve.ts +39 -18
  1476. package/src/rsc/response-route-handler.ts +9 -45
  1477. package/src/rsc/routine-plan.ts +359 -0
  1478. package/src/rsc/rsc-rendering.ts +1610 -151
  1479. package/src/rsc/server-action.ts +227 -87
  1480. package/src/rsc/shell-build-manifest.ts +343 -0
  1481. package/src/rsc/shell-capture-constants.ts +45 -0
  1482. package/src/rsc/shell-capture.ts +2135 -0
  1483. package/src/rsc/shell-serve.ts +350 -0
  1484. package/src/rsc/ssr-setup.ts +115 -23
  1485. package/src/rsc/stream-idle.ts +137 -0
  1486. package/src/rsc/transition-gate.ts +86 -0
  1487. package/src/rsc/types.ts +102 -2
  1488. package/src/segment-fragments.ts +165 -0
  1489. package/src/segment-loader-promise.ts +18 -0
  1490. package/src/segment-system.tsx +263 -19
  1491. package/src/server/context.ts +289 -17
  1492. package/src/server/cookie-store.ts +92 -20
  1493. package/src/server/handle-store.ts +185 -48
  1494. package/src/server/loader-registry.ts +13 -1
  1495. package/src/server/request-context.ts +608 -59
  1496. package/src/server.ts +7 -2
  1497. package/src/ssr/index.tsx +732 -183
  1498. package/src/ssr/inject-rsc-eager.ts +167 -0
  1499. package/src/ssr/preinit-client-references.ts +106 -0
  1500. package/src/ssr/ssr-root.tsx +332 -0
  1501. package/src/ssr-suspension-warning.ts +67 -0
  1502. package/src/static-handler.ts +18 -2
  1503. package/src/testing/collect-handle.ts +14 -8
  1504. package/src/testing/dispatch.ts +355 -105
  1505. package/src/testing/dom.entry.ts +1 -1
  1506. package/src/testing/e2e/index.ts +19 -0
  1507. package/src/testing/e2e/page-helpers.ts +47 -0
  1508. package/src/testing/e2e/parity.ts +13 -0
  1509. package/src/testing/generated-routes.ts +27 -11
  1510. package/src/testing/index.ts +23 -1
  1511. package/src/testing/internal/context.ts +9 -0
  1512. package/src/testing/render-handler.ts +29 -1
  1513. package/src/testing/render-route.tsx +121 -35
  1514. package/src/testing/run-loader.ts +51 -13
  1515. package/src/testing/run-middleware.ts +14 -0
  1516. package/src/testing/run-transition-when.ts +197 -0
  1517. package/src/testing/shell-status.ts +206 -0
  1518. package/src/theme/ThemeProvider.tsx +36 -26
  1519. package/src/types/boundaries.ts +19 -0
  1520. package/src/types/handler-context.ts +14 -3
  1521. package/src/types/index.ts +3 -0
  1522. package/src/types/loader-types.ts +66 -5
  1523. package/src/types/route-config.ts +19 -7
  1524. package/src/types/route-entry.ts +3 -0
  1525. package/src/types/segments.ts +120 -0
  1526. package/src/urls/include-helper.ts +29 -8
  1527. package/src/urls/include-provider.ts +71 -0
  1528. package/src/urls/index.ts +1 -0
  1529. package/src/urls/path-helper-types.ts +69 -20
  1530. package/src/urls/path-helper.ts +13 -4
  1531. package/src/urls/pattern-types.ts +65 -0
  1532. package/src/urls/type-extraction.ts +43 -18
  1533. package/src/urls/urls-function.ts +0 -1
  1534. package/src/use-loader.tsx +91 -7
  1535. package/src/vercel/index.ts +11 -0
  1536. package/src/vercel/tracing.ts +89 -0
  1537. package/src/vite/discovery/bundle-postprocess.ts +10 -7
  1538. package/src/vite/discovery/client-urls-projection.ts +322 -0
  1539. package/src/vite/discovery/dev-prerender-cache.ts +117 -0
  1540. package/src/vite/discovery/discover-routers.ts +81 -95
  1541. package/src/vite/discovery/discovery-errors.ts +61 -0
  1542. package/src/vite/discovery/prerender-collection.ts +29 -2
  1543. package/src/vite/discovery/shell-prerender-phase.ts +402 -0
  1544. package/src/vite/discovery/state.ts +66 -6
  1545. package/src/vite/discovery/virtual-module-codegen.ts +221 -62
  1546. package/src/vite/encryption-key.ts +29 -0
  1547. package/src/vite/index.ts +10 -0
  1548. package/src/vite/inject-client-debug.ts +64 -12
  1549. package/src/vite/plugin-types.ts +145 -2
  1550. package/src/vite/plugins/client-ref-dedup.ts +281 -19
  1551. package/src/vite/plugins/expose-action-id.ts +47 -25
  1552. package/src/vite/plugins/expose-internal-ids.ts +46 -0
  1553. package/src/vite/plugins/server-ref-hashing.ts +74 -0
  1554. package/src/vite/plugins/server-reference-pattern.ts +10 -0
  1555. package/src/vite/plugins/vercel-output.ts +384 -0
  1556. package/src/vite/plugins/version-injector.ts +22 -8
  1557. package/src/vite/plugins/version-plugin.ts +8 -0
  1558. package/src/vite/plugins/virtual-entries.ts +193 -16
  1559. package/src/vite/rango.ts +182 -23
  1560. package/src/vite/router-discovery.ts +912 -85
  1561. package/src/vite/utils/manifest-utils.ts +1 -4
  1562. package/src/vite/utils/package-resolution.ts +1 -0
  1563. package/src/vite/utils/prerender-utils.ts +42 -10
  1564. package/src/vite/utils/shared-utils.ts +74 -4
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: links
3
- description: URL generation with ctx.reverse (server default), href (client), useHref (mounted), useMount, useReverse, and scopedReverse
3
+ description: URL generation with ctx.reverse (server default), href (client), useHref (mounted), useMount, useReverse, and scopedReverse. Use when generating a link to a route by name instead of hardcoding a path, or a link breaks after routes move or get mounted elsewhere.
4
4
  argument-hint: [ctx.reverse|href|useHref|useMount|useReverse|scopedReverse]
5
5
  ---
6
6
 
@@ -38,6 +38,18 @@ export const shopPatterns = urls(({ path, layout }) => [
38
38
  - **`.name`** — local route, resolved within the current `include()` scope
39
39
  - **`name`** — global route, from the named-routes definition
40
40
 
41
+ The include site decides which global names exist:
42
+
43
+ | Include site | App-wide names |
44
+ | -------------------------------------------------- | -------------------------------------------------- |
45
+ | `include("/shop", shopPatterns)` | none from the child; use `.name` inside the module |
46
+ | `include("/shop", shopPatterns, { name: "shop" })` | `shop.index`, `shop.product`, ... |
47
+ | `include("/shop", shopPatterns, { name: "" })` | `index`, `product`, ... at the parent scope |
48
+
49
+ Flatten only when those names are intentionally unique across the whole parent
50
+ map. Private includes are useful for reusable modules and still support
51
+ mount-aware dot-local reversal.
52
+
41
53
  ```typescript
42
54
  // Inside a handler within shopPatterns (mounted at /shop)
43
55
  path("/product/:slug", (ctx) => {
@@ -411,6 +423,30 @@ Don't edit the file by hand — re-run codegen when patterns change.
411
423
  }
412
424
  ```
413
425
 
426
+ ## Prefetch boundaries
427
+
428
+ `Link` follows its `prefetch` prop or the router's `defaultPrefetch`; eligible
429
+ plain anchors follow the router default. When a whole DOM section must never
430
+ speculate, mark its container instead of repeating per-link opt-outs:
431
+
432
+ ```tsx
433
+ <section data-prefetch-scope="none">
434
+ <Link to="/activity" prefetch="viewport">
435
+ Activity
436
+ </Link>
437
+ <a href="/export">Export</a>
438
+ </section>
439
+ ```
440
+
441
+ The scope is a hard opt-out for every descendant Link and plain anchor; `"false"`
442
+ and `"none"` are equivalent. An explicit `prefetch` prop or
443
+ `data-prefetch="true"` cannot override it, and navigation still works normally.
444
+ Use `data-prefetch="false"` or `"none"` directly on a plain anchor when only that
445
+ anchor is unsafe. Dynamic scope changes re-evaluate only descendant anchors and
446
+ mounted viewport/render Links. Links share one document-level scope observer,
447
+ not one observer per Link or container. Adding a scope cannot recall work already
448
+ queued or in flight; removing it re-arms both Link types.
449
+
414
450
  ## When to use what
415
451
 
416
452
  | Context | API | Resolves | Use for |
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: loader
3
- description: Define data loaders for fetching data in routes with createLoader
4
- argument-hint: [loader]
3
+ description: Define data loaders for fetching data in routes with createLoader. Use when pages need per-request data that stays fresh, data should stream while the page renders, client components need reactive server data, a loader should throw notFound()/redirect(), set page meta/breadcrumbs from loader data (handle writes), or loader data must be guaranteed in the SSR'd document (ssr:false).
4
+ argument-hint: "[loader]"
5
5
  ---
6
6
 
7
7
  # Data Loaders with loader()
@@ -11,6 +11,13 @@ Loaders fetch data on the server and stream it to the client. For mutations
11
11
  `/server-actions`. Loaders re-resolve after an action runs, so the typical
12
12
  flow is _action mutates → loader re-reads → UI updates_.
13
13
 
14
+ ## Not this skill if…
15
+
16
+ - You want to mutate state — mutations are `"use server"` actions: see
17
+ `/server-actions`. Loaders read per-request live data.
18
+ - You want to cache a function's return value — loaders are fresh every request
19
+ by default; caching one function is `"use cache"`: see `/use-cache`.
20
+
14
21
  ## Creating a Loader
15
22
 
16
23
  ```typescript
@@ -140,6 +147,11 @@ same memoized result — loaders never run twice per request.
140
147
  - The handler output depends on the loader data. If the route is inside
141
148
  `cache()`, the handler is cached with the loader result baked in —
142
149
  defeating the live data guarantee.
150
+ - The same holds under a PPR shell capture (`/ppr`): handler consumption is
151
+ the BAKED lane — the loader executes at capture (identity reads permitted)
152
+ and the rendered value is a capture-time copy; `useLoader` client-side is
153
+ the live lane. One rule across `cache()`, `"use cache"`, and PPR: the
154
+ consumption-lane rule (`/rango` → Invariants).
143
155
  - Non-cacheable variable reads (`createVar({ cache: false })`) inside the
144
156
  handler still throw, even if the data came from a loader.
145
157
  - Prefer DSL `loader()` + client `useLoader()` for data that depends on
@@ -160,23 +172,23 @@ Loaders receive the same context shape as route handlers.
160
172
 
161
173
  ### Full field surface
162
174
 
163
- | Field | Type | Notes |
164
- | -------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
165
- | `params` | `TParams` | Merged route + explicit loader params; overridable by fetchable `load({ params })`. |
166
- | `routeParams` | `Record<string, string>` | Server-trusted route params from URL pattern matching; cannot be overridden. |
167
- | `request` | `Request` | The incoming `Request` (headers, method, body, `signal` for abort). |
168
- | `url` | `URL` | Parsed request URL. |
169
- | `pathname` | `string` | URL pathname (shortcut for `ctx.url.pathname`). |
170
- | `searchParams` | `URLSearchParams` | Shortcut for `ctx.url.searchParams`. |
171
- | `search` | `ResolveSearchSchema<TSearch>` | Typed query params when a search schema is declared on the route; `{}` otherwise. |
172
- | `env` | `TEnv` | Plain bindings from `createRouter<TEnv>()` (DB, KV, secrets, etc.). |
173
- | `get` | `(key \| ContextVar) => value` | Reads variables/context-vars set by middleware. |
174
- | `use` | `(loader \| handle) => T` | Access another loader's data (Promise) or a handle's collected data (after `await ctx.rendered()`). |
175
- | `rendered` | `() => Promise<void>` | **Experimental.** DSL loaders only — waits for all non-loader segments (including `loading()` streaming handlers) to settle before reading handle data. |
176
- | `method` | `string` | HTTP method. `"GET"` for SSR loader runs; reflects real method for fetchable loaders. |
177
- | `body` | `TBody \| undefined` | Parsed request body for fetchable POST/PUT/PATCH/DELETE calls. |
178
- | `formData` | `FormData \| undefined` | Present when a fetchable loader is invoked via form submission. |
179
- | `reverse` | `ScopedReverseFunction` | Generate type-checked URLs from route names (same scoped semantics as route handlers). |
175
+ | Field | Type | Notes |
176
+ | -------------- | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
177
+ | `params` | `TParams` | Merged route + explicit loader params; overridable by fetchable `load({ params })`. |
178
+ | `routeParams` | `Record<string, string>` | Server-trusted route params from URL pattern matching; cannot be overridden. |
179
+ | `request` | `Request` | The incoming `Request` (headers, method, body, `signal` for abort). |
180
+ | `url` | `URL` | Parsed request URL. |
181
+ | `pathname` | `string` | URL pathname (shortcut for `ctx.url.pathname`). |
182
+ | `searchParams` | `URLSearchParams` | Shortcut for `ctx.url.searchParams`. |
183
+ | `search` | `ResolveSearchSchema<TSearch>` | Typed query params when a search schema is declared on the route; `{}` otherwise. |
184
+ | `env` | `TEnv` | Plain bindings from `createRouter<TEnv>()` (DB, KV, secrets, etc.). |
185
+ | `get` | `(key \| ContextVar \| handle)` | Reads middleware variables/context-vars — or READS a handle's collected data, after `await ctx.rendered()`. |
186
+ | `use` | `(loader \| handle) => T` | Access another loader's data (Promise), or WRITE a handle: `ctx.use(Meta)({ title })` returns the push function — handler parity. Reads moved to `get`. |
187
+ | `rendered` | `() => Promise<void>` | **Experimental.** DSL loaders only — waits for all non-loader segments (including `loading()` streaming handlers) to settle before reading handle data. Not with `ssr: false` (cycle; throws). |
188
+ | `method` | `string` | HTTP method. `"GET"` for SSR loader runs; reflects real method for fetchable loaders. |
189
+ | `body` | `TBody \| undefined` | Parsed request body for fetchable POST/PUT/PATCH/DELETE calls. |
190
+ | `formData` | `FormData \| undefined` | Present when a fetchable loader is invoked via form submission. |
191
+ | `reverse` | `ScopedReverseFunction` | Generate type-checked URLs from route names (same scoped semantics as route handlers). |
180
192
 
181
193
  ### Example
182
194
 
@@ -430,7 +442,10 @@ boundary a parallel loader blocks its parent, so add one to keep the overlap.)
430
442
 
431
443
  If you come from a framework where the loader is a blocking step that runs
432
444
  before the response is built, this is the shift to internalize: here the
433
- response starts streaming first and loader data fills in.
445
+ response starts streaming first and loader data fills in. (The one deliberate
446
+ exception is per-loader: `loader(Def, { ssr: false })` awaits that
447
+ loader before first flush on document renders — see "`ssr: false`"
448
+ below.)
434
449
 
435
450
  ### See it: `debugPerformance`
436
451
 
@@ -648,6 +663,131 @@ function ProductPage() {
648
663
  }
649
664
  ```
650
665
 
666
+ ## Loader Authority: notFound() and redirect()
667
+
668
+ A loader may **throw** `notFound()` and `redirect()` — data-dependent
669
+ authority lives with the data, so every consumer of the loader inherits the
670
+ signal instead of re-checking existence at each read site:
671
+
672
+ ```typescript
673
+ import { createLoader, notFound, redirect } from "@rangojs/router";
674
+
675
+ export const ProductLoader = createLoader(async (ctx) => {
676
+ "use server";
677
+ const moved = LEGACY_SLUGS[ctx.params.slug];
678
+ if (moved) throw redirect(`/shop/product/${moved}`);
679
+
680
+ // Existence check BEFORE the expensive fetch: a near-instant rejection
681
+ // usually wins the race to first flush (see the semantics below).
682
+ if (!(await exists(ctx.params.slug))) notFound(`No "${ctx.params.slug}"`);
683
+
684
+ return getProduct(ctx.params.slug);
685
+ });
686
+ ```
687
+
688
+ Semantics by lane:
689
+
690
+ | Signal | Document load | Client navigation |
691
+ | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
692
+ | `notFound()` | Not-found UI resolves server-side (nearest `notFoundBoundary` → router option → default) and rides the envelope; the 404 STATUS is **opportunistic** — real only if the rejection beats Response construction. `ssr: false` (below) makes it deterministic. | 404 UI swaps in, URL preserved, payload stays 200 |
693
+ | `redirect()` | 200 document, then a client-side replace to the target — **no document-lane 302 from loaders**; pre-stream redirect authority belongs to middleware | Redirect envelope navigates to the target |
694
+
695
+ Session/auth gates belong in middleware (they are request-shaped, not
696
+ data-shaped, and middleware CAN emit a real pre-stream 302). Data-dependent
697
+ "this slug moved / does not exist" belongs in the loader.
698
+
699
+ ## Writing Handles from Loaders (meta, breadcrumbs)
700
+
701
+ Loader bodies can WRITE handles with handler parity — `ctx.use(Handle)`
702
+ returns the push function, legal for the whole body, streaming loaders
703
+ included. This is how data-derived page titles and breadcrumb trails live
704
+ where the data lives:
705
+
706
+ ```typescript
707
+ import { Meta, Breadcrumbs } from "./handles";
708
+
709
+ export const ProductLoader = createLoader(async (ctx) => {
710
+ "use server";
711
+ const product = await getProduct(ctx.params.slug);
712
+
713
+ ctx.use(Meta)({ title: `${product.name} — Shop` });
714
+ const pushCrumb = ctx.use(Breadcrumbs);
715
+ pushCrumb({ label: "Shop", href: "/shop" });
716
+ pushCrumb({ label: product.name, href: `/shop/product/${product.slug}` });
717
+
718
+ return product;
719
+ });
720
+ ```
721
+
722
+ Delivery is async **by the race model**: pushes that settle before the handler
723
+ barrier ride the SSR handle snapshot (in the SSR'd document — `<MetaTags />`,
724
+ `useHandle` reads); later pushes stream to the client and apply post-hydration
725
+ on document loads (`metadata.handlesLate`) or progressively on navigations.
726
+ A push before your slow fetch usually beats the barrier; a push derived from
727
+ the fetched data usually does not. When it MUST be in the document, use
728
+ `ssr: false` below.
729
+
730
+ Reads are the other direction and gated: `ctx.get(handle)` throws unless the
731
+ loader first does `await ctx.rendered()` (DSL-registered loaders only —
732
+ handler-invoked loaders cannot use `rendered()`, and a handler already
733
+ awaiting the loader via `ctx.use()` makes it a detected deadlock).
734
+
735
+ ## `ssr: false` — Guarantee a Loader in the Document
736
+
737
+ Streaming means nothing a slow loader produces is _guaranteed_ in the SSR'd
738
+ HTML: its section SSRs as the fallback, a late handle push applies
739
+ post-hydration, a late `notFound()` loses the status race. When the loader
740
+ feeds something that must exist in the document — `<head>` meta via a handle,
741
+ or a real 404 status — pass delivery options between the definition and the
742
+ use callback:
743
+
744
+ ```typescript
745
+ path("/product/:slug", ProductPage, { name: "product" }, () => [
746
+ loader(ProductLoader, { ssr: false }, () => [cache({ ttl: 60 })]),
747
+ loader(RelatedLoader), // untouched: still streams behind its boundary
748
+ ]),
749
+ ```
750
+
751
+ The knob mirrors `loading(fallback, { ssr: false })` — SSR delivery is off
752
+ for this loader, so nothing of it is left to stream in the document:
753
+ document renders await this loader before first flush — data is settled
754
+ (`useLoader` reads it synchronously, no fallback paints), handle pushes beat
755
+ the barrier snapshot, and a thrown `notFound()` deterministically precedes
756
+ Response construction (real 404, no warm-up race). Client navigations stream
757
+ exactly as before. Scoped per LOADER: the flagged loader awaits only itself;
758
+ siblings keep streaming.
759
+
760
+ Delivery is in-place, not merely in-document. React's Fizz outlines any
761
+ COMPLETED Suspense boundary over ~500 bytes to an end-of-stream
762
+ `<div hidden>` + `$RC()` reveal once the shell saturates its 12800-byte
763
+ `progressiveChunkSize` budget — the bytes are in the HTML, but not at their
764
+ document position, and a consumer that doesn't execute scripts never sees
765
+ them revealed. When the matched chain has a flagged loader, the document
766
+ render raises the budget to `MAX_SAFE_INTEGER` automatically, so the awaited
767
+ content renders where it belongs. Pin the budget yourself (in either
768
+ direction) with `rango({ progressiveChunkSize })` in the Vite config — an
769
+ explicit value disables the auto-raise. Boundaries hoisting stylesheets
770
+ still outline; their reveal must wait for the CSS.
771
+
772
+ The costs and constraints:
773
+
774
+ - Every document load pays the flagged loader's latency before first byte.
775
+ That is the point — but keep flagged loaders fast, and flag loaders, not
776
+ routes.
777
+ - A flagged loader must not `await ctx.rendered()` / `ctx.get(handle)` — the
778
+ document render awaits the loader before the render barrier resolves, so
779
+ that wait is a cycle by construction; it throws a deadlock error naming the
780
+ fix.
781
+ - PPR capture is the BAKE lane for flagged loaders (`/ppr`): the capture
782
+ render awaits them too, and the settled result — handle pushes included —
783
+ freezes into the stored shell. Unflagged loaders stay masked as live
784
+ holes. The `progressiveChunkSize` auto-raise is live-document only;
785
+ captured shells outline per the explicit option or React's default.
786
+
787
+ Also available in `clientUrls()` route groups (`/client-urls`), where the
788
+ loader-heavy shape makes it most useful. `LoaderOptions` is exported from the
789
+ package root.
790
+
651
791
  ## Fetchable Loaders
652
792
 
653
793
  By default, loaders only run during SSR and navigation. Pass `true` as the second
@@ -671,6 +811,16 @@ export const SearchLoader = createLoader(async (ctx) => {
671
811
  }, true); // true = fetchable
672
812
  ```
673
813
 
814
+ > **No registration needed — and no worker-entry import.** A fetchable loader
815
+ > does not have to be registered with `loader()` in the route DSL, and it does
816
+ > not have to be imported by any server module. Importing it into the client
817
+ > component that calls `useFetchLoader()` / `load()` is enough. Rango discovers
818
+ > every `createLoader(fn, true)` at build time and registers it for the
819
+ > `_rsc_loader` endpoint, so a loader reachable only through a client component
820
+ > still resolves in production — on both the generated entry and a hand-written
821
+ > worker entry (e.g. a Cloudflare `worker.rsc.tsx`). You do **not** need to
822
+ > force-import the loader in your worker entry to make it resolve.
823
+
674
824
  ### Fetchable Loader with Middleware
675
825
 
676
826
  Pass an options object instead of `true` to attach per-loader middleware.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: middleware
3
- description: Define middleware for authentication, logging, and request processing in @rangojs/router
3
+ description: Define middleware for authentication, logging, and request processing in @rangojs/router. Use when gating routes behind auth checks, logging requests, or running shared logic before a handler runs.
4
4
  argument-hint: [middleware-name]
5
5
  ---
6
6
 
@@ -60,8 +60,12 @@ data itself.
60
60
  ### Revalidation Contracts with Middleware-Backed Trees
61
61
 
62
62
  Middleware can establish request-level context (`ctx.set`) for segments that
63
- execute in the current render pass. It does not change partial revalidation
64
- boundaries between handler/layout/parallel segments.
63
+ execute in the current render pass. Because route middleware wraps **every**
64
+ render pass — normal renders, post-action revalidation, PE re-renders — its
65
+ variables are never stale: middleware is the safest `ctx.set` rung on the
66
+ data-passing ladder (`/rango` → "Passing data down the tree"). But it does
67
+ not change partial revalidation boundaries between handler/layout/parallel
68
+ segments.
65
69
 
66
70
  For shared segment data, use named revalidation contracts on both the producer
67
71
  and consumer segments, even when middleware is present in the chain.
@@ -193,6 +197,7 @@ export const myMiddleware: Middleware = async (ctx, next) => {
193
197
  ctx.request; // Request object
194
198
  ctx.url; // Parsed URL
195
199
  ctx.params; // Route parameters
200
+ ctx.build; // in middleware: true only during Prerender + ppr build-shell capture (plain Prerender does not run middleware)
196
201
 
197
202
  // Access platform bindings (plain bindings from createRouter<TEnv>())
198
203
  ctx.env.DB; // D1Database
@@ -201,6 +206,9 @@ export const myMiddleware: Middleware = async (ctx, next) => {
201
206
  // Set variables for downstream handlers (typed via Rango.Vars)
202
207
  ctx.set("user", { id: "123", name: "John" });
203
208
 
209
+ // Opt the current request out of PPR shell lookup/capture.
210
+ ctx.dynamic();
211
+
204
212
  // Continue to next middleware/handler
205
213
  await next();
206
214
 
@@ -242,6 +250,35 @@ This works alongside `ctx.get("key")` / `ctx.set("key", value)` (global typing
242
250
  via Rango.Vars augmentation). Use `createVar` for route-local or feature-scoped
243
251
  data; use Rango.Vars for app-wide middleware state.
244
252
 
253
+ ## Build-Time PPR Middleware
254
+
255
+ Normal `Prerender` Flight payload collection does not run middleware: there is
256
+ no request to wrap. The exception is `Prerender` + `ppr` build-shell capture.
257
+ After the Flight payload exists, the shell producer replays global and route
258
+ middleware for each generated URL before it captures HTML.
259
+
260
+ In that build-shell pass:
261
+
262
+ - `ctx.build === true`;
263
+ - `ctx.waitUntil()` is inert;
264
+ - `ctx.dynamic()` skips the baked shell for that URL;
265
+ - context variables set by middleware are visible to the shell render.
266
+
267
+ Use this to keep side effects predictable:
268
+
269
+ ```typescript
270
+ export const commerceMiddleware: Middleware = async (ctx, next) => {
271
+ if (ctx.build) {
272
+ ctx.dynamic(); // leave this shell to runtime PPR
273
+ return next();
274
+ }
275
+
276
+ const session = await commerce.auth(ctx.request);
277
+ ctx.set("session", session);
278
+ return next();
279
+ };
280
+ ```
281
+
245
282
  ## Redirect with State in Middleware
246
283
 
247
284
  ```typescript