react-router 7.18.0 → 8.0.0-pre.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/dist/development/dom-export.d.ts +6 -172
  2. package/dist/development/dom-export.js +12 -1009
  3. package/dist/development/index-react-server-client.d.ts +7 -4
  4. package/dist/development/index-react-server-client.js +8 -52
  5. package/dist/development/index-react-server.d.ts +1650 -1641
  6. package/dist/development/index-react-server.js +2882 -3664
  7. package/dist/development/index.d.ts +42 -1476
  8. package/dist/development/index.js +36 -2553
  9. package/dist/development/lib/actions.js +50 -0
  10. package/dist/development/lib/components.d.ts +1030 -0
  11. package/dist/development/lib/components.js +841 -0
  12. package/dist/development/lib/context.d.ts +83 -0
  13. package/dist/development/lib/context.js +41 -0
  14. package/dist/development/lib/dom/dom.d.ts +119 -0
  15. package/dist/development/lib/dom/dom.js +143 -0
  16. package/dist/development/lib/dom/lib.d.ts +2053 -0
  17. package/dist/development/lib/dom/lib.js +1271 -0
  18. package/dist/development/lib/dom/server.d.ts +138 -0
  19. package/dist/development/lib/dom/server.js +301 -0
  20. package/dist/development/lib/dom/ssr/components.d.ts +198 -0
  21. package/dist/development/lib/dom/ssr/components.js +589 -0
  22. package/dist/development/lib/dom/ssr/data.js +29 -0
  23. package/dist/development/lib/dom/ssr/entry.d.ts +60 -0
  24. package/dist/development/lib/dom/ssr/errorBoundaries.d.ts +27 -0
  25. package/dist/development/lib/dom/ssr/errorBoundaries.js +87 -0
  26. package/dist/development/lib/dom/ssr/fallback.js +33 -0
  27. package/dist/development/lib/dom/ssr/fog-of-war.d.ts +12 -0
  28. package/dist/development/lib/dom/ssr/fog-of-war.js +180 -0
  29. package/dist/development/lib/dom/ssr/hydration.d.ts +32 -0
  30. package/dist/development/lib/dom/ssr/hydration.js +29 -0
  31. package/dist/development/lib/dom/ssr/invariant.js +16 -0
  32. package/dist/development/lib/dom/ssr/links.js +170 -0
  33. package/dist/development/lib/dom/ssr/markup.js +24 -0
  34. package/dist/development/lib/dom/ssr/routeModules.d.ts +206 -0
  35. package/dist/development/lib/dom/ssr/routeModules.js +31 -0
  36. package/dist/development/lib/dom/ssr/routes-test-stub.d.ts +62 -0
  37. package/dist/development/lib/dom/ssr/routes-test-stub.js +108 -0
  38. package/dist/development/lib/dom/ssr/routes.d.ts +33 -0
  39. package/dist/development/lib/dom/ssr/routes.js +303 -0
  40. package/dist/development/lib/dom/ssr/server.d.ts +48 -0
  41. package/dist/development/lib/dom/ssr/server.js +69 -0
  42. package/dist/development/lib/dom/ssr/single-fetch.d.ts +14 -0
  43. package/dist/development/lib/dom/ssr/single-fetch.js +345 -0
  44. package/dist/development/lib/dom-export/dom-router-provider.d.ts +9 -0
  45. package/dist/development/lib/dom-export/dom-router-provider.js +22 -0
  46. package/dist/development/lib/dom-export/hydrated-router.d.ts +125 -0
  47. package/dist/development/lib/dom-export/hydrated-router.js +150 -0
  48. package/dist/development/lib/errors.js +29 -0
  49. package/dist/development/lib/hooks.d.ts +947 -0
  50. package/dist/development/lib/hooks.js +1388 -0
  51. package/dist/development/lib/href.d.ts +20 -0
  52. package/dist/development/lib/href.js +50 -0
  53. package/dist/development/lib/router/history.d.ts +258 -0
  54. package/dist/development/lib/router/history.js +372 -0
  55. package/dist/development/lib/router/instrumentation.d.ts +86 -0
  56. package/dist/development/lib/router/instrumentation.js +213 -0
  57. package/dist/development/lib/router/links.d.ts +114 -0
  58. package/dist/development/lib/router/router.d.ts +663 -0
  59. package/dist/development/lib/router/router.js +2988 -0
  60. package/dist/development/lib/router/url.js +18 -0
  61. package/dist/development/lib/router/utils.d.ts +948 -0
  62. package/dist/development/lib/router/utils.js +810 -0
  63. package/dist/development/lib/rsc/browser.d.ts +137 -0
  64. package/dist/development/lib/rsc/browser.js +603 -0
  65. package/dist/development/lib/rsc/errorBoundaries.d.ts +11 -0
  66. package/dist/development/lib/rsc/errorBoundaries.js +90 -0
  67. package/dist/development/lib/rsc/html-stream/browser.d.ts +48 -0
  68. package/dist/development/lib/rsc/html-stream/browser.js +74 -0
  69. package/dist/development/lib/rsc/html-stream/server.js +78 -0
  70. package/dist/development/lib/rsc/route-modules.js +27 -0
  71. package/dist/development/lib/rsc/server.rsc.d.ts +219 -0
  72. package/dist/development/lib/rsc/server.ssr.d.ts +129 -0
  73. package/dist/development/lib/rsc/server.ssr.js +404 -0
  74. package/dist/development/lib/server-runtime/build.d.ts +66 -0
  75. package/dist/development/lib/server-runtime/cookies.d.ts +66 -0
  76. package/dist/development/lib/server-runtime/cookies.js +139 -0
  77. package/dist/development/lib/server-runtime/crypto.js +43 -0
  78. package/dist/development/lib/server-runtime/data.d.ts +13 -0
  79. package/dist/development/lib/server-runtime/data.js +25 -0
  80. package/dist/development/lib/server-runtime/dev.d.ts +9 -0
  81. package/dist/development/lib/server-runtime/dev.js +26 -0
  82. package/dist/development/lib/server-runtime/entry.js +20 -0
  83. package/dist/development/lib/server-runtime/errors.js +75 -0
  84. package/dist/development/lib/server-runtime/headers.js +73 -0
  85. package/dist/development/lib/server-runtime/invariant.js +19 -0
  86. package/dist/development/lib/server-runtime/mode.d.ts +12 -0
  87. package/dist/development/lib/server-runtime/mode.js +25 -0
  88. package/dist/development/lib/server-runtime/routeMatching.js +28 -0
  89. package/dist/development/lib/server-runtime/routes.d.ts +13 -0
  90. package/dist/development/lib/server-runtime/routes.js +74 -0
  91. package/dist/development/lib/server-runtime/server.d.ts +10 -0
  92. package/dist/development/lib/server-runtime/server.js +345 -0
  93. package/dist/development/lib/server-runtime/serverHandoff.js +17 -0
  94. package/dist/development/lib/server-runtime/sessions/cookieStorage.d.ts +25 -0
  95. package/dist/development/lib/server-runtime/sessions/cookieStorage.js +45 -0
  96. package/dist/development/lib/server-runtime/sessions/memoryStorage.d.ts +23 -0
  97. package/dist/development/lib/server-runtime/sessions/memoryStorage.js +52 -0
  98. package/dist/development/lib/server-runtime/sessions.d.ts +145 -0
  99. package/dist/development/lib/server-runtime/sessions.js +98 -0
  100. package/dist/development/lib/server-runtime/single-fetch.d.ts +7 -0
  101. package/dist/development/lib/server-runtime/single-fetch.js +215 -0
  102. package/dist/development/lib/server-runtime/urls.js +28 -0
  103. package/dist/development/lib/server-runtime/warnings.js +20 -0
  104. package/dist/development/lib/types/future.d.ts +9 -0
  105. package/dist/development/lib/types/internal.d.ts +26 -177
  106. package/dist/development/lib/types/internal.js +3 -2
  107. package/dist/development/{register-roq_0qYo.d.ts → lib/types/register.d.ts} +9 -15
  108. package/dist/development/lib/types/route-data.d.ts +113 -0
  109. package/dist/development/lib/types/route-module-annotations.d.ts +149 -0
  110. package/dist/development/lib/types/route-module.d.ts +19 -0
  111. package/dist/development/lib/types/serializes-to.d.ts +13 -0
  112. package/dist/development/lib/types/utils.d.ts +11 -0
  113. package/dist/development/vendor/turbo-stream-v2/flatten.js +159 -0
  114. package/dist/development/vendor/turbo-stream-v2/turbo-stream.js +179 -0
  115. package/dist/development/vendor/turbo-stream-v2/unflatten.js +199 -0
  116. package/dist/development/vendor/turbo-stream-v2/utils.js +39 -0
  117. package/dist/production/dom-export.d.ts +6 -172
  118. package/dist/production/dom-export.js +12 -1009
  119. package/dist/production/index-react-server-client.d.ts +7 -4
  120. package/dist/production/index-react-server-client.js +8 -52
  121. package/dist/production/index-react-server.d.ts +1650 -1641
  122. package/dist/production/index-react-server.js +2873 -3664
  123. package/dist/production/index.d.ts +42 -1476
  124. package/dist/production/index.js +36 -2553
  125. package/dist/production/lib/actions.js +50 -0
  126. package/dist/production/lib/components.d.ts +1030 -0
  127. package/dist/production/lib/components.js +841 -0
  128. package/dist/production/lib/context.d.ts +83 -0
  129. package/dist/production/lib/context.js +41 -0
  130. package/dist/production/lib/dom/dom.d.ts +119 -0
  131. package/dist/production/lib/dom/dom.js +143 -0
  132. package/dist/production/lib/dom/lib.d.ts +2053 -0
  133. package/dist/production/lib/dom/lib.js +1271 -0
  134. package/dist/production/lib/dom/server.d.ts +138 -0
  135. package/dist/production/lib/dom/server.js +301 -0
  136. package/dist/production/lib/dom/ssr/components.d.ts +198 -0
  137. package/dist/production/lib/dom/ssr/components.js +589 -0
  138. package/dist/production/lib/dom/ssr/data.js +29 -0
  139. package/dist/production/lib/dom/ssr/entry.d.ts +60 -0
  140. package/dist/production/lib/dom/ssr/errorBoundaries.d.ts +27 -0
  141. package/dist/production/lib/dom/ssr/errorBoundaries.js +87 -0
  142. package/dist/production/lib/dom/ssr/fallback.js +23 -0
  143. package/dist/production/lib/dom/ssr/fog-of-war.d.ts +12 -0
  144. package/dist/production/lib/dom/ssr/fog-of-war.js +180 -0
  145. package/dist/production/lib/dom/ssr/hydration.d.ts +32 -0
  146. package/dist/production/lib/dom/ssr/hydration.js +29 -0
  147. package/dist/production/lib/dom/ssr/invariant.js +16 -0
  148. package/dist/production/lib/dom/ssr/links.js +170 -0
  149. package/dist/production/lib/dom/ssr/markup.js +24 -0
  150. package/dist/production/lib/dom/ssr/routeModules.d.ts +206 -0
  151. package/dist/production/lib/dom/ssr/routeModules.js +31 -0
  152. package/dist/production/lib/dom/ssr/routes-test-stub.d.ts +62 -0
  153. package/dist/production/lib/dom/ssr/routes-test-stub.js +108 -0
  154. package/dist/production/lib/dom/ssr/routes.d.ts +33 -0
  155. package/dist/production/lib/dom/ssr/routes.js +303 -0
  156. package/dist/production/lib/dom/ssr/server.d.ts +48 -0
  157. package/dist/production/lib/dom/ssr/server.js +69 -0
  158. package/dist/production/lib/dom/ssr/single-fetch.d.ts +14 -0
  159. package/dist/production/lib/dom/ssr/single-fetch.js +345 -0
  160. package/dist/production/lib/dom-export/dom-router-provider.d.ts +9 -0
  161. package/dist/production/lib/dom-export/dom-router-provider.js +22 -0
  162. package/dist/production/lib/dom-export/hydrated-router.d.ts +125 -0
  163. package/dist/production/lib/dom-export/hydrated-router.js +150 -0
  164. package/dist/production/lib/errors.js +29 -0
  165. package/dist/production/lib/hooks.d.ts +947 -0
  166. package/dist/production/lib/hooks.js +1373 -0
  167. package/dist/production/lib/href.d.ts +20 -0
  168. package/dist/production/lib/href.js +50 -0
  169. package/dist/production/lib/router/history.d.ts +258 -0
  170. package/dist/production/lib/router/history.js +372 -0
  171. package/dist/production/lib/router/instrumentation.d.ts +86 -0
  172. package/dist/production/lib/router/instrumentation.js +213 -0
  173. package/dist/production/lib/router/links.d.ts +114 -0
  174. package/dist/production/lib/router/router.d.ts +663 -0
  175. package/dist/production/lib/router/router.js +2988 -0
  176. package/dist/production/lib/router/url.js +18 -0
  177. package/dist/production/lib/router/utils.d.ts +948 -0
  178. package/dist/production/lib/router/utils.js +801 -0
  179. package/dist/production/lib/rsc/browser.d.ts +137 -0
  180. package/dist/production/lib/rsc/browser.js +603 -0
  181. package/dist/production/lib/rsc/errorBoundaries.d.ts +11 -0
  182. package/dist/production/lib/rsc/errorBoundaries.js +90 -0
  183. package/dist/production/lib/rsc/html-stream/browser.d.ts +48 -0
  184. package/dist/production/lib/rsc/html-stream/browser.js +74 -0
  185. package/dist/production/lib/rsc/html-stream/server.js +78 -0
  186. package/dist/production/lib/rsc/route-modules.js +27 -0
  187. package/dist/production/lib/rsc/server.rsc.d.ts +219 -0
  188. package/dist/production/lib/rsc/server.ssr.d.ts +129 -0
  189. package/dist/production/lib/rsc/server.ssr.js +404 -0
  190. package/dist/production/lib/server-runtime/build.d.ts +66 -0
  191. package/dist/production/lib/server-runtime/cookies.d.ts +66 -0
  192. package/dist/production/lib/server-runtime/cookies.js +139 -0
  193. package/dist/production/lib/server-runtime/crypto.js +43 -0
  194. package/dist/production/lib/server-runtime/data.d.ts +13 -0
  195. package/dist/production/lib/server-runtime/data.js +25 -0
  196. package/dist/production/lib/server-runtime/dev.d.ts +9 -0
  197. package/dist/production/lib/server-runtime/dev.js +26 -0
  198. package/dist/production/lib/server-runtime/entry.js +20 -0
  199. package/dist/production/lib/server-runtime/errors.js +75 -0
  200. package/dist/production/lib/server-runtime/headers.js +73 -0
  201. package/dist/production/lib/server-runtime/invariant.js +19 -0
  202. package/dist/production/lib/server-runtime/mode.d.ts +12 -0
  203. package/dist/production/lib/server-runtime/mode.js +25 -0
  204. package/dist/production/lib/server-runtime/routeMatching.js +28 -0
  205. package/dist/production/lib/server-runtime/routes.d.ts +13 -0
  206. package/dist/production/lib/server-runtime/routes.js +74 -0
  207. package/dist/production/lib/server-runtime/server.d.ts +10 -0
  208. package/dist/production/lib/server-runtime/server.js +345 -0
  209. package/dist/production/lib/server-runtime/serverHandoff.js +17 -0
  210. package/dist/production/lib/server-runtime/sessions/cookieStorage.d.ts +25 -0
  211. package/dist/production/lib/server-runtime/sessions/cookieStorage.js +45 -0
  212. package/dist/production/lib/server-runtime/sessions/memoryStorage.d.ts +23 -0
  213. package/dist/production/lib/server-runtime/sessions/memoryStorage.js +52 -0
  214. package/dist/production/lib/server-runtime/sessions.d.ts +145 -0
  215. package/dist/production/lib/server-runtime/sessions.js +98 -0
  216. package/dist/production/lib/server-runtime/single-fetch.d.ts +7 -0
  217. package/dist/production/lib/server-runtime/single-fetch.js +215 -0
  218. package/dist/production/lib/server-runtime/urls.js +28 -0
  219. package/dist/production/lib/server-runtime/warnings.js +20 -0
  220. package/dist/production/lib/types/future.d.ts +9 -0
  221. package/dist/production/lib/types/internal.d.ts +26 -177
  222. package/dist/production/lib/types/internal.js +3 -2
  223. package/dist/production/{register-roq_0qYo.d.ts → lib/types/register.d.ts} +9 -15
  224. package/dist/production/lib/types/route-data.d.ts +113 -0
  225. package/dist/production/lib/types/route-module-annotations.d.ts +149 -0
  226. package/dist/production/lib/types/route-module.d.ts +19 -0
  227. package/dist/production/lib/types/serializes-to.d.ts +13 -0
  228. package/dist/production/lib/types/utils.d.ts +11 -0
  229. package/dist/production/vendor/turbo-stream-v2/flatten.js +159 -0
  230. package/dist/production/vendor/turbo-stream-v2/turbo-stream.js +179 -0
  231. package/dist/production/vendor/turbo-stream-v2/unflatten.js +199 -0
  232. package/dist/production/vendor/turbo-stream-v2/utils.js +39 -0
  233. package/docs/explanation/code-splitting.md +16 -0
  234. package/docs/how-to/middleware.md +6 -41
  235. package/docs/how-to/react-server-components.md +1 -1
  236. package/docs/upgrading/future.md +0 -249
  237. package/package.json +43 -87
  238. package/dist/development/browser-B2PdsXXH.d.ts +0 -318
  239. package/dist/development/browser-DBmQ1yAR.d.mts +0 -318
  240. package/dist/development/chunk-4ZMWKKQ3.mjs +0 -11606
  241. package/dist/development/chunk-E4MTK73K.mjs +0 -2517
  242. package/dist/development/chunk-U7ORXROY.js +0 -10307
  243. package/dist/development/chunk-WW7PN6QI.js +0 -188
  244. package/dist/development/chunk-YL5M26XI.js +0 -1366
  245. package/dist/development/context-CeD5LmaF.d.mts +0 -1779
  246. package/dist/development/data-CjO11-hU.d.ts +0 -1740
  247. package/dist/development/data-DEjBmEfD.d.mts +0 -1740
  248. package/dist/development/dom-export.d.mts +0 -172
  249. package/dist/development/dom-export.mjs +0 -1010
  250. package/dist/development/index-react-server-client-3ykjivgQ.d.ts +0 -3677
  251. package/dist/development/index-react-server-client-CACgcj2J.d.mts +0 -2614
  252. package/dist/development/index-react-server-client.d.mts +0 -4
  253. package/dist/development/index-react-server-client.mjs +0 -59
  254. package/dist/development/index-react-server.d.mts +0 -2711
  255. package/dist/development/index-react-server.mjs +0 -3803
  256. package/dist/development/index.d.mts +0 -1479
  257. package/dist/development/index.mjs +0 -275
  258. package/dist/development/instrumentation-Dkmpzd13.d.ts +0 -715
  259. package/dist/development/lib/types/internal.d.mts +0 -184
  260. package/dist/development/lib/types/internal.mjs +0 -10
  261. package/dist/development/register-CmkRspdl.d.mts +0 -30
  262. package/dist/production/browser-B2PdsXXH.d.ts +0 -318
  263. package/dist/production/browser-DBmQ1yAR.d.mts +0 -318
  264. package/dist/production/chunk-3Z6WS2WZ.js +0 -188
  265. package/dist/production/chunk-BIP66BKV.js +0 -1366
  266. package/dist/production/chunk-EGOTSXNH.mjs +0 -2517
  267. package/dist/production/chunk-IUPBOWYO.js +0 -10307
  268. package/dist/production/chunk-M7NGGUU6.mjs +0 -11606
  269. package/dist/production/context-CeD5LmaF.d.mts +0 -1779
  270. package/dist/production/data-CjO11-hU.d.ts +0 -1740
  271. package/dist/production/data-DEjBmEfD.d.mts +0 -1740
  272. package/dist/production/dom-export.d.mts +0 -172
  273. package/dist/production/dom-export.mjs +0 -1010
  274. package/dist/production/index-react-server-client-3ykjivgQ.d.ts +0 -3677
  275. package/dist/production/index-react-server-client-CACgcj2J.d.mts +0 -2614
  276. package/dist/production/index-react-server-client.d.mts +0 -4
  277. package/dist/production/index-react-server-client.mjs +0 -59
  278. package/dist/production/index-react-server.d.mts +0 -2711
  279. package/dist/production/index-react-server.mjs +0 -3803
  280. package/dist/production/index.d.mts +0 -1479
  281. package/dist/production/index.mjs +0 -275
  282. package/dist/production/instrumentation-Dkmpzd13.d.ts +0 -715
  283. package/dist/production/lib/types/internal.d.mts +0 -184
  284. package/dist/production/lib/types/internal.mjs +0 -10
  285. package/dist/production/register-CmkRspdl.d.mts +0 -30
@@ -1,184 +0,0 @@
1
- import { R as RouteModule, e as LinkDescriptor, L as Location, F as Func, f as Pretty, g as MetaDescriptor, G as GetLoaderData, h as ServerDataFunctionArgs, i as MiddlewareNextFunction, j as ClientDataFunctionArgs, D as DataStrategyResult, k as ServerDataFrom, N as Normalize, l as GetActionData } from '../../data-DEjBmEfD.mjs';
2
- import { R as RouteFiles, P as Pages } from '../../register-CmkRspdl.mjs';
3
- import 'react';
4
-
5
- type MaybePromise<T> = T | Promise<T>;
6
- type Props = {
7
- params: unknown;
8
- loaderData: unknown;
9
- actionData: unknown;
10
- };
11
- type RouteInfo = Props & {
12
- module: RouteModule;
13
- matches: Array<MatchInfo>;
14
- };
15
- type MatchInfo = {
16
- id: string;
17
- module: RouteModule;
18
- };
19
- type MetaMatch<T extends MatchInfo> = Pretty<{
20
- id: T["id"];
21
- params: Record<string, string | undefined>;
22
- pathname: string;
23
- meta: MetaDescriptor[];
24
- /** @deprecated Use `MetaMatch.loaderData` instead */
25
- data: GetLoaderData<T["module"]>;
26
- loaderData: GetLoaderData<T["module"]>;
27
- handle?: unknown;
28
- error?: unknown;
29
- }>;
30
- type MetaMatches<T extends Array<MatchInfo>> = T extends [infer F extends MatchInfo, ...infer R extends Array<MatchInfo>] ? [MetaMatch<F>, ...MetaMatches<R>] : Array<MetaMatch<MatchInfo> | undefined>;
31
- type HasErrorBoundary<T extends RouteInfo> = T["module"] extends {
32
- ErrorBoundary: Func;
33
- } ? true : false;
34
- type CreateMetaArgs<T extends RouteInfo> = {
35
- /** This is the current router `Location` object. This is useful for generating tags for routes at specific paths or query parameters. */
36
- location: Location;
37
- /** {@link https://reactrouter.com/start/framework/routing#dynamic-segments Dynamic route params} for the current route. */
38
- params: T["params"];
39
- /**
40
- * The return value for this route's server loader function
41
- *
42
- * @deprecated Use `Route.MetaArgs.loaderData` instead
43
- */
44
- data: T["loaderData"] | (HasErrorBoundary<T> extends true ? undefined : never);
45
- /** The return value for this route's server loader function */
46
- loaderData: T["loaderData"] | (HasErrorBoundary<T> extends true ? undefined : never);
47
- /** Thrown errors that trigger error boundaries will be passed to the meta function. This is useful for generating metadata for error pages. */
48
- error?: unknown;
49
- /** An array of the current {@link https://api.reactrouter.com/v7/interfaces/react-router.UIMatch.html route matches}, including parent route matches. */
50
- matches: MetaMatches<T["matches"]>;
51
- };
52
- type MetaDescriptors = MetaDescriptor[];
53
- type HeadersArgs = {
54
- loaderHeaders: Headers;
55
- parentHeaders: Headers;
56
- actionHeaders: Headers;
57
- errorHeaders: Headers | undefined;
58
- };
59
- type CreateServerMiddlewareFunction<T extends RouteInfo> = (args: ServerDataFunctionArgs<T["params"]>, next: MiddlewareNextFunction<Response>) => MaybePromise<Response | void>;
60
- type CreateClientMiddlewareFunction<T extends RouteInfo> = (args: ClientDataFunctionArgs<T["params"]>, next: MiddlewareNextFunction<Record<string, DataStrategyResult>>) => MaybePromise<Record<string, DataStrategyResult> | void>;
61
- type CreateServerLoaderArgs<T extends RouteInfo> = ServerDataFunctionArgs<T["params"]>;
62
- type CreateClientLoaderArgs<T extends RouteInfo> = ClientDataFunctionArgs<T["params"]> & {
63
- /** This is an asynchronous function to get the data from the server loader for this route. On client-side navigations, this will make a {@link https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API fetch} call to the React Router server loader. If you opt-into running your clientLoader on hydration, then this function will return the data that was already loaded on the server (via Promise.resolve). */
64
- serverLoader: () => Promise<ServerDataFrom<T["module"]["loader"]>>;
65
- };
66
- type CreateServerActionArgs<T extends RouteInfo> = ServerDataFunctionArgs<T["params"]>;
67
- type CreateClientActionArgs<T extends RouteInfo> = ClientDataFunctionArgs<T["params"]> & {
68
- /** This is an asynchronous function that makes the {@link https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API fetch} call to the React Router server action for this route. */
69
- serverAction: () => Promise<ServerDataFrom<T["module"]["action"]>>;
70
- };
71
- type CreateHydrateFallbackProps<T extends RouteInfo, RSCEnabled extends boolean> = {
72
- params: T["params"];
73
- } & (RSCEnabled extends true ? {
74
- /** The data returned from the `loader` */
75
- loaderData?: ServerDataFrom<T["module"]["loader"]>;
76
- /** The data returned from the `action` following an action submission. */
77
- actionData?: ServerDataFrom<T["module"]["action"]>;
78
- } : {
79
- /** The data returned from the `loader` or `clientLoader` */
80
- loaderData?: T["loaderData"];
81
- /** The data returned from the `action` or `clientAction` following an action submission. */
82
- actionData?: T["actionData"];
83
- });
84
- type Match<T extends MatchInfo> = Pretty<{
85
- id: T["id"];
86
- params: Record<string, string | undefined>;
87
- pathname: string;
88
- /** @deprecated Use `Match.loaderData` instead */
89
- data: GetLoaderData<T["module"]>;
90
- loaderData: GetLoaderData<T["module"]>;
91
- handle: unknown;
92
- }>;
93
- type Matches<T extends Array<MatchInfo>> = T extends [infer F extends MatchInfo, ...infer R extends Array<MatchInfo>] ? [Match<F>, ...Matches<R>] : Array<Match<MatchInfo> | undefined>;
94
- type CreateComponentProps<T extends RouteInfo, RSCEnabled extends boolean> = {
95
- /**
96
- * {@link https://reactrouter.com/start/framework/routing#dynamic-segments Dynamic route params} for the current route.
97
- * @example
98
- * // app/routes.ts
99
- * route("teams/:teamId", "./team.tsx"),
100
- *
101
- * // app/team.tsx
102
- * export default function Component({
103
- * params,
104
- * }: Route.ComponentProps) {
105
- * params.teamId;
106
- * // ^ string
107
- * }
108
- **/
109
- params: T["params"];
110
- /** An array of the current {@link https://api.reactrouter.com/v7/interfaces/react-router.UIMatch.html route matches}, including parent route matches. */
111
- matches: Matches<T["matches"]>;
112
- } & (RSCEnabled extends true ? {
113
- /** The data returned from the `loader` */
114
- loaderData: ServerDataFrom<T["module"]["loader"]>;
115
- /** The data returned from the `action` following an action submission. */
116
- actionData?: ServerDataFrom<T["module"]["action"]>;
117
- } : {
118
- /** The data returned from the `loader` or `clientLoader` */
119
- loaderData: T["loaderData"];
120
- /** The data returned from the `action` or `clientAction` following an action submission. */
121
- actionData?: T["actionData"];
122
- });
123
- type CreateErrorBoundaryProps<T extends RouteInfo, RSCEnabled extends boolean> = {
124
- /**
125
- * {@link https://reactrouter.com/start/framework/routing#dynamic-segments Dynamic route params} for the current route.
126
- * @example
127
- * // app/routes.ts
128
- * route("teams/:teamId", "./team.tsx"),
129
- *
130
- * // app/team.tsx
131
- * export function ErrorBoundary({
132
- * params,
133
- * }: Route.ErrorBoundaryProps) {
134
- * params.teamId;
135
- * // ^ string
136
- * }
137
- **/
138
- params: T["params"];
139
- error: unknown;
140
- } & (RSCEnabled extends true ? {
141
- /** The data returned from the `loader` */
142
- loaderData?: ServerDataFrom<T["module"]["loader"]>;
143
- /** The data returned from the `action` following an action submission. */
144
- actionData?: ServerDataFrom<T["module"]["action"]>;
145
- } : {
146
- /** The data returned from the `loader` or `clientLoader` */
147
- loaderData?: T["loaderData"];
148
- /** The data returned from the `action` or `clientAction` following an action submission. */
149
- actionData?: T["actionData"];
150
- });
151
- type GetAnnotations<Info extends RouteInfo> = {
152
- LinkDescriptors: LinkDescriptor[];
153
- LinksFunction: () => LinkDescriptor[];
154
- MetaArgs: CreateMetaArgs<Info>;
155
- MetaDescriptors: MetaDescriptors;
156
- MetaFunction: (args: CreateMetaArgs<Info>) => MetaDescriptors;
157
- HeadersArgs: HeadersArgs;
158
- HeadersFunction: (args: HeadersArgs) => Headers | HeadersInit;
159
- MiddlewareFunction: CreateServerMiddlewareFunction<Info>;
160
- ClientMiddlewareFunction: CreateClientMiddlewareFunction<Info>;
161
- LoaderArgs: CreateServerLoaderArgs<Info>;
162
- ClientLoaderArgs: CreateClientLoaderArgs<Info>;
163
- ActionArgs: CreateServerActionArgs<Info>;
164
- ClientActionArgs: CreateClientActionArgs<Info>;
165
- HydrateFallbackProps: CreateHydrateFallbackProps<Info, false>;
166
- ServerHydrateFallbackProps: CreateHydrateFallbackProps<Info, true>;
167
- ComponentProps: CreateComponentProps<Info, false>;
168
- ServerComponentProps: CreateComponentProps<Info, true>;
169
- ErrorBoundaryProps: CreateErrorBoundaryProps<Info, false>;
170
- ServerErrorBoundaryProps: CreateErrorBoundaryProps<Info, true>;
171
- };
172
-
173
- type Params<RouteFile extends keyof RouteFiles> = Normalize<Pages[RouteFiles[RouteFile]["page"]]["params"]>;
174
-
175
- type GetInfo<T extends {
176
- file: keyof RouteFiles;
177
- module: RouteModule;
178
- }> = {
179
- params: Params<T["file"]>;
180
- loaderData: GetLoaderData<T["module"]>;
181
- actionData: GetActionData<T["module"]>;
182
- };
183
-
184
- export type { GetAnnotations, GetInfo };
@@ -1,10 +0,0 @@
1
- /**
2
- * react-router v7.18.0
3
- *
4
- * Copyright (c) Remix Software Inc.
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
@@ -1,30 +0,0 @@
1
- import { R as RouteModule } from './data-DEjBmEfD.mjs';
2
-
3
- /**
4
- * Apps can use this interface to "register" app-wide types for React Router via interface declaration merging and module augmentation.
5
- * React Router should handle this for you via type generation.
6
- *
7
- * For more on declaration merging and module augmentation, see https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation .
8
- */
9
- interface Register {
10
- }
11
- type AnyParams = Record<string, string | undefined>;
12
- type AnyPages = Record<string, {
13
- params: AnyParams;
14
- }>;
15
- type Pages = Register extends {
16
- pages: infer Registered extends AnyPages;
17
- } ? Registered : AnyPages;
18
- type AnyRouteFiles = Record<string, {
19
- id: string;
20
- page: string;
21
- }>;
22
- type RouteFiles = Register extends {
23
- routeFiles: infer Registered extends AnyRouteFiles;
24
- } ? Registered : AnyRouteFiles;
25
- type AnyRouteModules = Record<string, RouteModule>;
26
- type RouteModules = Register extends {
27
- routeModules: infer Registered extends AnyRouteModules;
28
- } ? Registered : AnyRouteModules;
29
-
30
- export type { Pages as P, RouteFiles as R, RouteModules as a, Register as b };
@@ -1,318 +0,0 @@
1
- import * as React from 'react';
2
- import { R as RouterInit } from './instrumentation-Dkmpzd13.js';
3
- import { L as Location, C as ClientActionFunction, a as ClientLoaderFunction, b as LinksFunction, M as MetaFunction, S as ShouldRevalidateFunction, P as Params, c as RouterContextProvider, A as ActionFunction, H as HeadersFunction, d as LoaderFunction } from './data-CjO11-hU.js';
4
-
5
- declare function getRequest(): Request;
6
- type RSCRouteConfigEntryBase = {
7
- action?: ActionFunction;
8
- clientAction?: ClientActionFunction;
9
- clientLoader?: ClientLoaderFunction;
10
- ErrorBoundary?: React.ComponentType<any>;
11
- handle?: any;
12
- headers?: HeadersFunction;
13
- HydrateFallback?: React.ComponentType<any>;
14
- Layout?: React.ComponentType<any>;
15
- links?: LinksFunction;
16
- loader?: LoaderFunction;
17
- meta?: MetaFunction;
18
- shouldRevalidate?: ShouldRevalidateFunction;
19
- };
20
- type RSCRouteConfigEntry = RSCRouteConfigEntryBase & {
21
- id: string;
22
- path?: string;
23
- Component?: React.ComponentType<any>;
24
- lazy?: () => Promise<RSCRouteConfigEntryBase & ({
25
- default?: React.ComponentType<any>;
26
- Component?: never;
27
- } | {
28
- default?: never;
29
- Component?: React.ComponentType<any>;
30
- })>;
31
- } & ({
32
- index: true;
33
- } | {
34
- children?: RSCRouteConfigEntry[];
35
- });
36
- type RSCRouteConfig = Array<RSCRouteConfigEntry>;
37
- type RSCRouteManifest = {
38
- clientAction?: ClientActionFunction;
39
- clientLoader?: ClientLoaderFunction;
40
- element?: React.ReactElement | false;
41
- errorElement?: React.ReactElement;
42
- handle?: any;
43
- hasAction: boolean;
44
- hasComponent: boolean;
45
- hasErrorBoundary: boolean;
46
- hasLoader: boolean;
47
- hydrateFallbackElement?: React.ReactElement;
48
- id: string;
49
- index?: boolean;
50
- links?: LinksFunction;
51
- meta?: MetaFunction;
52
- parentId?: string;
53
- path?: string;
54
- shouldRevalidate?: ShouldRevalidateFunction;
55
- };
56
- type RSCRouteMatch = RSCRouteManifest & {
57
- params: Params;
58
- pathname: string;
59
- pathnameBase: string;
60
- };
61
- type RSCRenderPayload = {
62
- type: "render";
63
- actionData: Record<string, any> | null;
64
- basename: string | undefined;
65
- errors: Record<string, any> | null;
66
- loaderData: Record<string, any>;
67
- location: Location;
68
- routeDiscovery: RouteDiscovery;
69
- matches: RSCRouteMatch[];
70
- patches?: Promise<RSCRouteManifest[]>;
71
- nonce?: string;
72
- formState?: unknown;
73
- };
74
- type RSCManifestPayload = {
75
- type: "manifest";
76
- patches: Promise<RSCRouteManifest[]>;
77
- };
78
- type RSCActionPayload = {
79
- type: "action";
80
- actionResult: Promise<unknown>;
81
- rerender?: Promise<RSCRenderPayload | RSCRedirectPayload>;
82
- };
83
- type RSCRedirectPayload = {
84
- type: "redirect";
85
- status: number;
86
- location: string;
87
- replace: boolean;
88
- reload: boolean;
89
- actionResult?: Promise<unknown>;
90
- };
91
- type RSCPayload = RSCRenderPayload | RSCManifestPayload | RSCActionPayload | RSCRedirectPayload;
92
- type RSCMatch = {
93
- statusCode: number;
94
- headers: Headers;
95
- payload: RSCPayload;
96
- };
97
- type DecodeActionFunction = (formData: FormData) => Promise<() => Promise<unknown>>;
98
- type DecodeFormStateFunction = (result: unknown, formData: FormData) => unknown;
99
- type DecodeReplyFunction = (reply: FormData | string, options: {
100
- temporaryReferences: unknown;
101
- }) => Promise<unknown[]>;
102
- type LoadServerActionFunction = (id: string) => Promise<Function>;
103
- type RouteDiscovery = {
104
- mode: "lazy";
105
- manifestPath?: string | undefined;
106
- } | {
107
- mode: "initial";
108
- };
109
- /**
110
- * Matches the given routes to a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request)
111
- * and returns an [RSC](https://react.dev/reference/rsc/server-components)
112
- * [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response)
113
- * encoding an {@link unstable_RSCPayload} for consumption by an [RSC](https://react.dev/reference/rsc/server-components)
114
- * enabled client router.
115
- *
116
- * @example
117
- * import {
118
- * createTemporaryReferenceSet,
119
- * decodeAction,
120
- * decodeReply,
121
- * loadServerAction,
122
- * renderToReadableStream,
123
- * } from "@vitejs/plugin-rsc/rsc";
124
- * import { unstable_matchRSCServerRequest as matchRSCServerRequest } from "react-router";
125
- *
126
- * matchRSCServerRequest({
127
- * createTemporaryReferenceSet,
128
- * decodeAction,
129
- * decodeFormState,
130
- * decodeReply,
131
- * loadServerAction,
132
- * request,
133
- * routes: routes(),
134
- * generateResponse(match) {
135
- * return new Response(
136
- * renderToReadableStream(match.payload),
137
- * {
138
- * status: match.statusCode,
139
- * headers: match.headers,
140
- * }
141
- * );
142
- * },
143
- * });
144
- *
145
- * @name unstable_matchRSCServerRequest
146
- * @public
147
- * @category RSC
148
- * @mode data
149
- * @param opts Options
150
- * @param opts.allowedActionOrigins Origin patterns that are allowed to execute actions.
151
- * @param opts.basename The basename to use when matching the request.
152
- * @param opts.createTemporaryReferenceSet A function that returns a temporary
153
- * reference set for the request, used to track temporary references in the [RSC](https://react.dev/reference/rsc/server-components)
154
- * stream.
155
- * @param opts.decodeAction Your `react-server-dom-xyz/server`'s `decodeAction`
156
- * function, responsible for loading a server action.
157
- * @param opts.decodeFormState A function responsible for decoding form state for
158
- * progressively enhanceable forms with React's [`useActionState`](https://react.dev/reference/react/useActionState)
159
- * using your `react-server-dom-xyz/server`'s `decodeFormState`.
160
- * @param opts.decodeReply Your `react-server-dom-xyz/server`'s `decodeReply`
161
- * function, used to decode the server function's arguments and bind them to the
162
- * implementation for invocation by the router.
163
- * @param opts.generateResponse A function responsible for using your
164
- * `renderToReadableStream` to generate a [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response)
165
- * encoding the {@link unstable_RSCPayload}.
166
- * @param opts.loadServerAction Your `react-server-dom-xyz/server`'s
167
- * `loadServerAction` function, used to load a server action by ID.
168
- * @param opts.onError An optional error handler that will be called with any
169
- * errors that occur during the request processing.
170
- * @param opts.request The [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request)
171
- * to match against.
172
- * @param opts.requestContext An instance of {@link RouterContextProvider}
173
- * that should be created per request, to be passed to [`action`](../../start/data/route-object#action)s,
174
- * [`loader`](../../start/data/route-object#loader)s and [middleware](../../how-to/middleware).
175
- * @param opts.routeDiscovery The route discovery configuration, used to determine how the router should discover new routes during navigations.
176
- * @param opts.routes Your {@link unstable_RSCRouteConfigEntry | route definitions}.
177
- * @returns A [`Response`](https://developer.mozilla.org/en-US/docs/Web/API/Response)
178
- * that contains the [RSC](https://react.dev/reference/rsc/server-components)
179
- * data for hydration.
180
- */
181
- declare function matchRSCServerRequest({ allowedActionOrigins, createTemporaryReferenceSet, basename, decodeReply, requestContext, routeDiscovery, loadServerAction, decodeAction, decodeFormState, onError, request, routes, generateResponse, }: {
182
- allowedActionOrigins?: string[];
183
- createTemporaryReferenceSet: () => unknown;
184
- basename?: string;
185
- decodeReply?: DecodeReplyFunction;
186
- decodeAction?: DecodeActionFunction;
187
- decodeFormState?: DecodeFormStateFunction;
188
- requestContext?: RouterContextProvider;
189
- loadServerAction?: LoadServerActionFunction;
190
- onError?: (error: unknown) => void;
191
- request: Request;
192
- routes: RSCRouteConfigEntry[];
193
- routeDiscovery?: RouteDiscovery;
194
- generateResponse: (match: RSCMatch, { onError, temporaryReferences, }: {
195
- onError(error: unknown): string | undefined;
196
- temporaryReferences: unknown;
197
- }) => Response;
198
- }): Promise<Response>;
199
-
200
- type BrowserCreateFromReadableStreamFunction = (body: ReadableStream<Uint8Array>, { temporaryReferences, }: {
201
- temporaryReferences: unknown;
202
- }) => Promise<unknown>;
203
- type EncodeReplyFunction = (args: unknown[], options: {
204
- temporaryReferences: unknown;
205
- }) => Promise<BodyInit>;
206
- /**
207
- * Create a React `callServer` implementation for React Router.
208
- *
209
- * @example
210
- * import {
211
- * createFromReadableStream,
212
- * createTemporaryReferenceSet,
213
- * encodeReply,
214
- * setServerCallback,
215
- * } from "@vitejs/plugin-rsc/browser";
216
- * import { unstable_createCallServer as createCallServer } from "react-router";
217
- *
218
- * setServerCallback(
219
- * createCallServer({
220
- * createFromReadableStream,
221
- * createTemporaryReferenceSet,
222
- * encodeReply,
223
- * })
224
- * );
225
- *
226
- * @name unstable_createCallServer
227
- * @public
228
- * @category RSC
229
- * @mode data
230
- * @param opts Options
231
- * @param opts.createFromReadableStream Your `react-server-dom-xyz/client`'s
232
- * `createFromReadableStream`. Used to decode payloads from the server.
233
- * @param opts.createTemporaryReferenceSet A function that creates a temporary
234
- * reference set for the [RSC](https://react.dev/reference/rsc/server-components)
235
- * payload.
236
- * @param opts.encodeReply Your `react-server-dom-xyz/client`'s `encodeReply`.
237
- * Used when sending payloads to the server.
238
- * @param opts.fetch Optional [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
239
- * implementation. Defaults to global [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/fetch).
240
- * @returns A function that can be used to call server actions.
241
- */
242
- declare function createCallServer({ createFromReadableStream, createTemporaryReferenceSet, encodeReply, fetch: fetchImplementation, }: {
243
- createFromReadableStream: BrowserCreateFromReadableStreamFunction;
244
- createTemporaryReferenceSet: () => unknown;
245
- encodeReply: EncodeReplyFunction;
246
- fetch?: (request: Request) => Promise<Response>;
247
- }): (id: string, args: unknown[]) => Promise<unknown>;
248
- /**
249
- * Props for the {@link unstable_RSCHydratedRouter} component.
250
- *
251
- * @name unstable_RSCHydratedRouterProps
252
- * @category Types
253
- */
254
- interface RSCHydratedRouterProps {
255
- /**
256
- * Your `react-server-dom-xyz/client`'s `createFromReadableStream` function,
257
- * used to decode payloads from the server.
258
- */
259
- createFromReadableStream: BrowserCreateFromReadableStreamFunction;
260
- /**
261
- * Optional fetch implementation. Defaults to global [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/fetch).
262
- */
263
- fetch?: (request: Request) => Promise<Response>;
264
- /**
265
- * The decoded {@link unstable_RSCPayload} to hydrate.
266
- */
267
- payload: RSCPayload;
268
- /**
269
- * A function that returns an {@link RouterContextProvider} instance
270
- * which is provided as the `context` argument to client [`action`](../../start/data/route-object#action)s,
271
- * [`loader`](../../start/data/route-object#loader)s and [middleware](../../how-to/middleware).
272
- * This function is called to generate a fresh `context` instance on each
273
- * navigation or fetcher call.
274
- */
275
- getContext?: RouterInit["getContext"];
276
- }
277
- /**
278
- * Hydrates a server rendered {@link unstable_RSCPayload} in the browser.
279
- *
280
- * @example
281
- * import { startTransition, StrictMode } from "react";
282
- * import { hydrateRoot } from "react-dom/client";
283
- * import {
284
- * unstable_getRSCStream as getRSCStream,
285
- * unstable_RSCHydratedRouter as RSCHydratedRouter,
286
- * } from "react-router";
287
- * import type { unstable_RSCPayload as RSCPayload } from "react-router";
288
- *
289
- * createFromReadableStream(getRSCStream()).then((payload) =>
290
- * startTransition(async () => {
291
- * hydrateRoot(
292
- * document,
293
- * <StrictMode>
294
- * <RSCHydratedRouter
295
- * createFromReadableStream={createFromReadableStream}
296
- * payload={payload}
297
- * />
298
- * </StrictMode>,
299
- * { formState: await getFormState(payload) },
300
- * );
301
- * }),
302
- * );
303
- *
304
- * @name unstable_RSCHydratedRouter
305
- * @public
306
- * @category RSC
307
- * @mode data
308
- * @param props Props
309
- * @param {unstable_RSCHydratedRouterProps.createFromReadableStream} props.createFromReadableStream n/a
310
- * @param {unstable_RSCHydratedRouterProps.fetch} props.fetch n/a
311
- * @param {unstable_RSCHydratedRouterProps.getContext} props.getContext n/a
312
- * @param {unstable_RSCHydratedRouterProps.payload} props.payload n/a
313
- * @returns A hydrated {@link DataRouter} that can be used to navigate and
314
- * render routes.
315
- */
316
- declare function RSCHydratedRouter({ createFromReadableStream, fetch: fetchImplementation, payload, getContext, }: RSCHydratedRouterProps): React.JSX.Element;
317
-
318
- export { type BrowserCreateFromReadableStreamFunction as B, type DecodeActionFunction as D, type EncodeReplyFunction as E, type LoadServerActionFunction as L, RSCHydratedRouter as R, type DecodeFormStateFunction as a, type DecodeReplyFunction as b, createCallServer as c, type RSCManifestPayload as d, type RSCPayload as e, type RSCRenderPayload as f, getRequest as g, type RSCHydratedRouterProps as h, type RSCMatch as i, type RSCRouteManifest as j, type RSCRouteMatch as k, type RSCRouteConfigEntry as l, matchRSCServerRequest as m, type RSCRouteConfig as n };