react-router 7.15.1 → 8.3.0

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 (364) hide show
  1. package/CHANGELOG.md +181 -2
  2. package/dist/development/dom-export.d.ts +6 -172
  3. package/dist/development/dom-export.js +12 -1007
  4. package/dist/development/index-react-server-client.d.ts +7 -4
  5. package/dist/development/index-react-server-client.js +8 -52
  6. package/dist/development/index-react-server.d.ts +1789 -1657
  7. package/dist/development/index-react-server.js +3074 -3674
  8. package/dist/development/index.d.ts +41 -1469
  9. package/dist/development/index.js +36 -2621
  10. package/dist/development/lib/actions.js +50 -0
  11. package/dist/development/lib/components.d.ts +1030 -0
  12. package/dist/development/lib/components.js +841 -0
  13. package/dist/development/lib/context.d.ts +83 -0
  14. package/dist/development/lib/context.js +41 -0
  15. package/dist/development/lib/dom/dom.d.ts +119 -0
  16. package/dist/development/lib/dom/dom.js +143 -0
  17. package/dist/development/lib/dom/lib.d.ts +2054 -0
  18. package/dist/development/lib/dom/lib.js +1272 -0
  19. package/dist/development/lib/dom/server.d.ts +138 -0
  20. package/dist/development/lib/dom/server.js +301 -0
  21. package/dist/development/lib/dom/ssr/components.d.ts +198 -0
  22. package/dist/development/lib/dom/ssr/components.js +589 -0
  23. package/dist/development/lib/dom/ssr/data.js +29 -0
  24. package/dist/development/lib/dom/ssr/entry.d.ts +60 -0
  25. package/dist/development/lib/dom/ssr/errorBoundaries.d.ts +27 -0
  26. package/dist/development/lib/dom/ssr/errorBoundaries.js +87 -0
  27. package/dist/development/lib/dom/ssr/fallback.js +33 -0
  28. package/dist/development/lib/dom/ssr/fog-of-war.d.ts +12 -0
  29. package/dist/development/lib/dom/ssr/fog-of-war.js +185 -0
  30. package/dist/development/lib/dom/ssr/hydration.d.ts +32 -0
  31. package/dist/development/lib/dom/ssr/hydration.js +29 -0
  32. package/dist/development/lib/dom/ssr/invariant.js +16 -0
  33. package/dist/development/lib/dom/ssr/links.js +170 -0
  34. package/dist/development/lib/dom/ssr/markup.js +24 -0
  35. package/dist/development/lib/dom/ssr/routeModules.d.ts +206 -0
  36. package/dist/development/lib/dom/ssr/routeModules.js +31 -0
  37. package/dist/development/lib/dom/ssr/routes-test-stub.d.ts +75 -0
  38. package/dist/development/lib/dom/ssr/routes-test-stub.js +121 -0
  39. package/dist/development/lib/dom/ssr/routes.d.ts +33 -0
  40. package/dist/development/lib/dom/ssr/routes.js +303 -0
  41. package/dist/development/lib/dom/ssr/server.d.ts +48 -0
  42. package/dist/development/lib/dom/ssr/server.js +69 -0
  43. package/dist/development/lib/dom/ssr/single-fetch.d.ts +14 -0
  44. package/dist/development/lib/dom/ssr/single-fetch.js +345 -0
  45. package/dist/development/lib/dom-export/dom-router-provider.d.ts +9 -0
  46. package/dist/development/lib/dom-export/dom-router-provider.js +22 -0
  47. package/dist/development/lib/dom-export/hydrated-router.d.ts +125 -0
  48. package/dist/development/lib/dom-export/hydrated-router.js +150 -0
  49. package/dist/development/lib/errors.js +29 -0
  50. package/dist/development/lib/hooks.d.ts +974 -0
  51. package/dist/development/lib/hooks.js +1415 -0
  52. package/dist/development/lib/href.d.ts +36 -0
  53. package/dist/development/lib/href.js +70 -0
  54. package/dist/development/lib/router/history.d.ts +264 -0
  55. package/dist/development/lib/router/history.js +378 -0
  56. package/dist/development/lib/router/instrumentation.d.ts +111 -0
  57. package/dist/development/lib/router/instrumentation.js +290 -0
  58. package/dist/development/lib/router/links.d.ts +114 -0
  59. package/dist/development/lib/router/router.d.ts +663 -0
  60. package/dist/development/lib/router/router.js +2988 -0
  61. package/dist/development/lib/router/url.js +18 -0
  62. package/dist/development/lib/router/utils.d.ts +960 -0
  63. package/dist/development/lib/router/utils.js +881 -0
  64. package/dist/development/lib/rsc/browser.d.ts +137 -0
  65. package/dist/development/lib/rsc/browser.js +612 -0
  66. package/dist/development/lib/rsc/errorBoundaries.d.ts +11 -0
  67. package/dist/development/lib/rsc/errorBoundaries.js +90 -0
  68. package/dist/development/lib/rsc/html-stream/browser.d.ts +48 -0
  69. package/dist/development/lib/rsc/html-stream/browser.js +74 -0
  70. package/dist/development/lib/rsc/html-stream/server.js +97 -0
  71. package/dist/development/lib/rsc/route-modules.js +27 -0
  72. package/dist/development/lib/rsc/server.rsc.d.ts +224 -0
  73. package/dist/development/lib/rsc/server.ssr.d.ts +152 -0
  74. package/dist/development/lib/rsc/server.ssr.js +419 -0
  75. package/dist/development/lib/server-runtime/build.d.ts +66 -0
  76. package/dist/development/lib/server-runtime/cookies.d.ts +92 -0
  77. package/dist/development/lib/server-runtime/cookies.js +153 -0
  78. package/dist/development/lib/server-runtime/crypto.js +43 -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 +22 -0
  92. package/dist/development/lib/server-runtime/server.js +364 -0
  93. package/dist/development/lib/server-runtime/serverHandoff.js +17 -0
  94. package/dist/development/lib/server-runtime/sessions/cookieStorage.d.ts +33 -0
  95. package/dist/development/lib/server-runtime/sessions/cookieStorage.js +53 -0
  96. package/dist/development/lib/server-runtime/sessions/memoryStorage.d.ts +29 -0
  97. package/dist/development/lib/server-runtime/sessions/memoryStorage.js +58 -0
  98. package/dist/development/lib/server-runtime/sessions.d.ts +174 -0
  99. package/dist/development/lib/server-runtime/sessions.js +115 -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/{production/register-Bsscfj79.d.ts → development/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 -1007
  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 +1789 -1657
  122. package/dist/production/index-react-server.js +3065 -3674
  123. package/dist/production/index.d.ts +41 -1469
  124. package/dist/production/index.js +36 -2621
  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 +2054 -0
  133. package/dist/production/lib/dom/lib.js +1272 -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 +185 -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 +75 -0
  153. package/dist/production/lib/dom/ssr/routes-test-stub.js +121 -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 +974 -0
  166. package/dist/production/lib/hooks.js +1400 -0
  167. package/dist/production/lib/href.d.ts +36 -0
  168. package/dist/production/lib/href.js +70 -0
  169. package/dist/production/lib/router/history.d.ts +264 -0
  170. package/dist/production/lib/router/history.js +378 -0
  171. package/dist/production/lib/router/instrumentation.d.ts +111 -0
  172. package/dist/production/lib/router/instrumentation.js +290 -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 +960 -0
  178. package/dist/production/lib/router/utils.js +872 -0
  179. package/dist/production/lib/rsc/browser.d.ts +137 -0
  180. package/dist/production/lib/rsc/browser.js +612 -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 +97 -0
  186. package/dist/production/lib/rsc/route-modules.js +27 -0
  187. package/dist/production/lib/rsc/server.rsc.d.ts +224 -0
  188. package/dist/production/lib/rsc/server.ssr.d.ts +152 -0
  189. package/dist/production/lib/rsc/server.ssr.js +419 -0
  190. package/dist/production/lib/server-runtime/build.d.ts +66 -0
  191. package/dist/production/lib/server-runtime/cookies.d.ts +92 -0
  192. package/dist/production/lib/server-runtime/cookies.js +153 -0
  193. package/dist/production/lib/server-runtime/crypto.js +43 -0
  194. package/dist/production/lib/server-runtime/data.js +25 -0
  195. package/dist/production/lib/server-runtime/dev.d.ts +9 -0
  196. package/dist/production/lib/server-runtime/dev.js +26 -0
  197. package/dist/production/lib/server-runtime/entry.js +20 -0
  198. package/dist/production/lib/server-runtime/errors.js +75 -0
  199. package/dist/production/lib/server-runtime/headers.js +73 -0
  200. package/dist/production/lib/server-runtime/invariant.js +19 -0
  201. package/dist/production/lib/server-runtime/mode.d.ts +12 -0
  202. package/dist/production/lib/server-runtime/mode.js +25 -0
  203. package/dist/production/lib/server-runtime/routeMatching.js +28 -0
  204. package/dist/production/lib/server-runtime/routes.d.ts +13 -0
  205. package/dist/production/lib/server-runtime/routes.js +74 -0
  206. package/dist/production/lib/server-runtime/server.d.ts +22 -0
  207. package/dist/production/lib/server-runtime/server.js +364 -0
  208. package/dist/production/lib/server-runtime/serverHandoff.js +17 -0
  209. package/dist/production/lib/server-runtime/sessions/cookieStorage.d.ts +33 -0
  210. package/dist/production/lib/server-runtime/sessions/cookieStorage.js +53 -0
  211. package/dist/production/lib/server-runtime/sessions/memoryStorage.d.ts +29 -0
  212. package/dist/production/lib/server-runtime/sessions/memoryStorage.js +58 -0
  213. package/dist/production/lib/server-runtime/sessions.d.ts +174 -0
  214. package/dist/production/lib/server-runtime/sessions.js +115 -0
  215. package/dist/production/lib/server-runtime/single-fetch.d.ts +7 -0
  216. package/dist/production/lib/server-runtime/single-fetch.js +215 -0
  217. package/dist/production/lib/server-runtime/urls.js +28 -0
  218. package/dist/production/lib/server-runtime/warnings.js +20 -0
  219. package/dist/production/lib/types/future.d.ts +9 -0
  220. package/dist/production/lib/types/internal.d.ts +26 -177
  221. package/dist/production/lib/types/internal.js +3 -2
  222. package/dist/{development/register-Bsscfj79.d.ts → production/lib/types/register.d.ts} +9 -15
  223. package/dist/production/lib/types/route-data.d.ts +113 -0
  224. package/dist/production/lib/types/route-module-annotations.d.ts +149 -0
  225. package/dist/production/lib/types/route-module.d.ts +19 -0
  226. package/dist/production/lib/types/serializes-to.d.ts +13 -0
  227. package/dist/production/lib/types/utils.d.ts +11 -0
  228. package/dist/production/vendor/turbo-stream-v2/flatten.js +159 -0
  229. package/dist/production/vendor/turbo-stream-v2/turbo-stream.js +179 -0
  230. package/dist/production/vendor/turbo-stream-v2/unflatten.js +199 -0
  231. package/dist/production/vendor/turbo-stream-v2/utils.js +39 -0
  232. package/docs/explanation/backend-for-frontend.md +50 -0
  233. package/docs/explanation/code-splitting.md +77 -0
  234. package/docs/explanation/concurrency.md +135 -0
  235. package/docs/explanation/form-vs-fetcher.md +292 -0
  236. package/docs/explanation/hot-module-replacement.md +137 -0
  237. package/docs/explanation/hydration.md +14 -0
  238. package/docs/explanation/index-query-param.md +86 -0
  239. package/docs/explanation/index.md +4 -0
  240. package/docs/explanation/lazy-route-discovery.md +78 -0
  241. package/docs/explanation/location.md +6 -0
  242. package/docs/explanation/progressive-enhancement.md +150 -0
  243. package/docs/explanation/race-conditions.md +88 -0
  244. package/docs/explanation/react-transitions.md +160 -0
  245. package/docs/explanation/route-matching.md +7 -0
  246. package/docs/explanation/server-client-execution.md +4 -0
  247. package/docs/explanation/sessions-and-cookies.md +465 -0
  248. package/docs/explanation/special-files.md +16 -0
  249. package/docs/explanation/state-management.md +524 -0
  250. package/docs/explanation/styling.md +87 -0
  251. package/docs/explanation/type-safety.md +82 -0
  252. package/docs/how-to/accessibility.md +44 -0
  253. package/docs/how-to/client-data.md +199 -0
  254. package/docs/how-to/data-strategy.md +317 -0
  255. package/docs/how-to/error-boundary.md +231 -0
  256. package/docs/how-to/error-reporting.md +142 -0
  257. package/docs/how-to/fetchers.md +307 -0
  258. package/docs/how-to/file-route-conventions.md +410 -0
  259. package/docs/how-to/file-uploads.md +217 -0
  260. package/docs/how-to/form-validation.md +120 -0
  261. package/docs/how-to/headers.md +165 -0
  262. package/docs/how-to/index.md +4 -0
  263. package/docs/how-to/instrumentation.md +661 -0
  264. package/docs/how-to/meta.md +40 -0
  265. package/docs/how-to/middleware.md +647 -0
  266. package/docs/how-to/navigation-blocking.md +233 -0
  267. package/docs/how-to/optimize-revalidation.md +12 -0
  268. package/docs/how-to/pre-rendering.md +225 -0
  269. package/docs/how-to/presets.md +103 -0
  270. package/docs/how-to/react-server-components.md +951 -0
  271. package/docs/how-to/resource-routes.md +126 -0
  272. package/docs/how-to/route-module-type-safety.md +85 -0
  273. package/docs/how-to/search-params.md +4 -0
  274. package/docs/how-to/security.md +39 -0
  275. package/docs/how-to/server-bundles.md +66 -0
  276. package/docs/how-to/spa.md +120 -0
  277. package/docs/how-to/status.md +63 -0
  278. package/docs/how-to/suspense.md +132 -0
  279. package/docs/how-to/using-handle.md +117 -0
  280. package/docs/how-to/view-transitions.md +237 -0
  281. package/docs/how-to/webhook.md +50 -0
  282. package/docs/index.md +36 -0
  283. package/docs/start/data/actions.md +138 -0
  284. package/docs/start/data/custom.md +198 -0
  285. package/docs/start/data/data-loading.md +44 -0
  286. package/docs/start/data/index.md +4 -0
  287. package/docs/start/data/installation.md +56 -0
  288. package/docs/start/data/navigating.md +12 -0
  289. package/docs/start/data/pending-ui.md +12 -0
  290. package/docs/start/data/route-object.md +268 -0
  291. package/docs/start/data/routing.md +281 -0
  292. package/docs/start/data/testing.md +8 -0
  293. package/docs/start/declarative/index.md +4 -0
  294. package/docs/start/declarative/installation.md +43 -0
  295. package/docs/start/declarative/navigating.md +133 -0
  296. package/docs/start/declarative/routing.md +237 -0
  297. package/docs/start/declarative/url-values.md +65 -0
  298. package/docs/start/framework/actions.md +174 -0
  299. package/docs/start/framework/data-loading.md +201 -0
  300. package/docs/start/framework/deploying.md +104 -0
  301. package/docs/start/framework/index.md +4 -0
  302. package/docs/start/framework/installation.md +41 -0
  303. package/docs/start/framework/navigating.md +182 -0
  304. package/docs/start/framework/pending-ui.md +142 -0
  305. package/docs/start/framework/rendering.md +59 -0
  306. package/docs/start/framework/route-module.md +527 -0
  307. package/docs/start/framework/routing.md +362 -0
  308. package/docs/start/framework/testing.md +133 -0
  309. package/docs/start/index.md +4 -0
  310. package/docs/start/modes.md +200 -0
  311. package/docs/upgrading/component-routes.md +363 -0
  312. package/docs/upgrading/future.md +111 -0
  313. package/docs/upgrading/index.md +4 -0
  314. package/docs/upgrading/router-provider.md +445 -0
  315. package/docs/upgrading/v7.md +460 -0
  316. package/package.json +44 -87
  317. package/dist/development/browser-3AnU12UI.d.mts +0 -318
  318. package/dist/development/browser-BOdXz9dK.d.ts +0 -318
  319. package/dist/development/chunk-4N6VE7H7.mjs +0 -11528
  320. package/dist/development/chunk-4YRVXM2U.js +0 -188
  321. package/dist/development/chunk-66UKHEGQ.js +0 -1362
  322. package/dist/development/chunk-D6LUOGOQ.js +0 -10229
  323. package/dist/development/chunk-RJYABSBD.mjs +0 -2585
  324. package/dist/development/context-ByvtofY2.d.mts +0 -1771
  325. package/dist/development/data-BVUf681J.d.mts +0 -1732
  326. package/dist/development/data-BqZ2x964.d.ts +0 -1732
  327. package/dist/development/dom-export.d.mts +0 -172
  328. package/dist/development/dom-export.mjs +0 -1008
  329. package/dist/development/index-react-server-client-BS5F89FR.d.ts +0 -3655
  330. package/dist/development/index-react-server-client-DY04-103.d.mts +0 -2600
  331. package/dist/development/index-react-server-client.d.mts +0 -4
  332. package/dist/development/index-react-server-client.mjs +0 -59
  333. package/dist/development/index-react-server.d.mts +0 -2703
  334. package/dist/development/index-react-server.mjs +0 -3780
  335. package/dist/development/index.d.mts +0 -1472
  336. package/dist/development/index.mjs +0 -277
  337. package/dist/development/instrumentation-cRWWLfsU.d.ts +0 -715
  338. package/dist/development/lib/types/internal.d.mts +0 -184
  339. package/dist/development/lib/types/internal.mjs +0 -10
  340. package/dist/development/register-Df8okEea.d.mts +0 -30
  341. package/dist/production/browser-3AnU12UI.d.mts +0 -318
  342. package/dist/production/browser-BOdXz9dK.d.ts +0 -318
  343. package/dist/production/chunk-6S4627ZB.mjs +0 -2585
  344. package/dist/production/chunk-HUBUW7R3.js +0 -10229
  345. package/dist/production/chunk-JAKZPQZC.mjs +0 -11528
  346. package/dist/production/chunk-PNZCCTKT.js +0 -1362
  347. package/dist/production/chunk-Y6IFXO7V.js +0 -188
  348. package/dist/production/context-ByvtofY2.d.mts +0 -1771
  349. package/dist/production/data-BVUf681J.d.mts +0 -1732
  350. package/dist/production/data-BqZ2x964.d.ts +0 -1732
  351. package/dist/production/dom-export.d.mts +0 -172
  352. package/dist/production/dom-export.mjs +0 -1008
  353. package/dist/production/index-react-server-client-BS5F89FR.d.ts +0 -3655
  354. package/dist/production/index-react-server-client-DY04-103.d.mts +0 -2600
  355. package/dist/production/index-react-server-client.d.mts +0 -4
  356. package/dist/production/index-react-server-client.mjs +0 -59
  357. package/dist/production/index-react-server.d.mts +0 -2703
  358. package/dist/production/index-react-server.mjs +0 -3780
  359. package/dist/production/index.d.mts +0 -1472
  360. package/dist/production/index.mjs +0 -277
  361. package/dist/production/instrumentation-cRWWLfsU.d.ts +0 -715
  362. package/dist/production/lib/types/internal.d.mts +0 -184
  363. package/dist/production/lib/types/internal.mjs +0 -10
  364. package/dist/production/register-Df8okEea.d.mts +0 -30
@@ -0,0 +1,460 @@
1
+ ---
2
+ title: Updating from v7
3
+ order: 2
4
+ ---
5
+
6
+ # Upgrading from v7
7
+
8
+ We try our best to keep major version upgrades simple and boring through the use of opt-in APIs and [Future Flags][api-development-strategy]. Future flags are used to gate breaking changes that don't otherwise have a good call-site opt-in strategy. By adopting all opt-in APIs and future flags while still on v7, you should be able to update to React Router v8 with minimal changes.
9
+
10
+ We highly recommend you make a commit after each step and ship it instead of doing everything all at once. Most flags can be adopted in any order, with exceptions noted below.
11
+
12
+ ## Minimum Versions
13
+
14
+ [MODES: framework, data, declarative]
15
+
16
+ <br/>
17
+ <br/>
18
+
19
+ React Router v8 requires the following minimum versions. Update them before updating React Router to v8:
20
+
21
+ - `node@22.22+`
22
+ - `react@19.2.7+`/`react-dom@19.2.7+`
23
+
24
+ Framework mode also requires:
25
+
26
+ - `vite@7+` (requires `future.v8_viteEnvironmentApi`)
27
+ - also make sure any custom Vite plugins or config are compatible with Vite 7
28
+
29
+ ## Update to latest v7.x
30
+
31
+ Before adopting any future flags or call-site opt-in changes, update to the latest minor version of v7.x to make sure you have access to the latest flags. You may see a number of deprecation warnings as you upgrade, which we'll cover below.
32
+
33
+ 👉 Update to latest v7
34
+
35
+ ```sh
36
+ npm install react-router@7 @react-router/{dev,node,etc.}@7
37
+ ```
38
+
39
+ ## Future Flags
40
+
41
+ ### `future.v8_middleware`
42
+
43
+ [MODES: framework, data]
44
+
45
+ <br/>
46
+ <br/>
47
+
48
+ **Background**
49
+
50
+ Middleware allows you to run code before and after the [`Response`][Response] generation for the matched path. This enables common patterns like authentication, logging, error handling, and data preprocessing in a reusable way. Please see the [docs](../how-to/middleware) for more information.
51
+
52
+ 👉 **Enable the Flag**
53
+
54
+ In Framework mode:
55
+
56
+ ```ts filename=react-router.config.ts
57
+ import type { Config } from "@react-router/dev/config";
58
+
59
+ export default {
60
+ future: {
61
+ v8_middleware: true,
62
+ },
63
+ } satisfies Config;
64
+ ```
65
+
66
+ In Data mode:
67
+
68
+ ```ts
69
+ import { createBrowserRouter } from "react-router";
70
+
71
+ const router = createBrowserRouter(routes, {
72
+ future: {
73
+ v8_middleware: true,
74
+ },
75
+ });
76
+ ```
77
+
78
+ **Update your Code**
79
+
80
+ If you're using the `context` parameter in `loader` and `action` functions, you may need to update your code:
81
+
82
+ - In Framework mode, if you're using `react-router-serve`, you should not need to make any updates. Otherwise, this only applies if you have a custom server with a `getLoadContext` function. Please see the docs on the middleware [`getLoadContext` changes](../how-to/middleware#changes-to-getloadcontextapploadcontext) and the instructions to [migrate to the new API](../how-to/middleware#migration-from-apploadcontext).
83
+ - In Data mode, add the `Future` module augmentation described in the [middleware docs](../how-to/middleware#1-typescript-augment-future-for-loaderaction-context) so `context` is typed correctly.
84
+
85
+ ### `future.v8_splitRouteModules`
86
+
87
+ [MODES: framework]
88
+
89
+ <br/>
90
+ <br/>
91
+
92
+ **Background**
93
+
94
+ This feature enables splitting client-side route exports (`clientLoader`, `clientAction`, `clientMiddleware`, `HydrateFallback`) into separate chunks that can be loaded independently from the route component. This allows these exports to be fetched and executed while the component code is still downloading, improving performance for client-side data loading.
95
+
96
+ This can be set to `true` for opt-in behavior, or `"enforce"` to require all routes to be splittable (which will cause build failures for routes that cannot be split due to shared code).
97
+
98
+ 👉 **Enable the Flag**
99
+
100
+ ```ts filename=react-router.config.ts
101
+ import type { Config } from "@react-router/dev/config";
102
+
103
+ export default {
104
+ future: {
105
+ v8_splitRouteModules: true,
106
+ },
107
+ } satisfies Config;
108
+ ```
109
+
110
+ **Update your Code**
111
+
112
+ No code changes are required. This is an optimization feature that works automatically once enabled.
113
+
114
+ ### `future.v8_viteEnvironmentApi`
115
+
116
+ [MODES: framework]
117
+
118
+ <br/>
119
+ <br/>
120
+
121
+ **Background**
122
+
123
+ This enables support for the experimental Vite Environment API, which provides a more flexible and powerful way to configure Vite environments. This is only available when using Vite 6+.
124
+
125
+ 👉 **Enable the Flag**
126
+
127
+ ```ts filename=react-router.config.ts
128
+ import type { Config } from "@react-router/dev/config";
129
+
130
+ export default {
131
+ future: {
132
+ v8_viteEnvironmentApi: true,
133
+ },
134
+ } satisfies Config;
135
+ ```
136
+
137
+ **Update your Code**
138
+
139
+ Most users won't need to make any changes. However, if you have custom Vite configuration that previously relied on the `isSsrBuild` flag — such as a custom server build that sets `build.rollupOptions.input` — you'll need to move that configuration under the per-environment [Environment API][vite-environment] config instead.
140
+
141
+ For example, a custom server build should move its SSR `rollupOptions` from the top-level `build` config into `environments.ssr.build`:
142
+
143
+ ```tsx diff filename=vite.config.ts
144
+ import { reactRouter } from "@react-router/dev/vite";
145
+ import { defineConfig } from "vite";
146
+
147
+ -export default defineConfig(({ isSsrBuild }) => ({
148
+ - build: {
149
+ - rollupOptions: isSsrBuild
150
+ - ? {
151
+ - input: "./server/app.ts",
152
+ - }
153
+ - : undefined,
154
+ - },
155
+ +export default defineConfig({
156
+ + environments: {
157
+ + ssr: {
158
+ + build: {
159
+ + rollupOptions: {
160
+ + input: "./server/app.ts",
161
+ + },
162
+ + },
163
+ + },
164
+ + },
165
+ plugins: [reactRouter()],
166
+ -}));
167
+ +});
168
+ ```
169
+
170
+ See the [`node-custom-server` template][node-custom-server-template] for a complete example.
171
+
172
+ ### `future.v8_passThroughRequests`
173
+
174
+ [MODES: framework]
175
+
176
+ <br/>
177
+ <br/>
178
+
179
+ **Background**
180
+
181
+ By default, React Router normalizes the `request.url` passed to your `loader`, `action`, and `middleware` functions by removing React Router's internal implementation details. Specifically, it removes `.data` suffixes and internal search parameters like `?index` and `?_routes`.
182
+
183
+ This flag eliminates that normalization and passes the raw HTTP `request` instance to your handlers. This provides a few benefits:
184
+
185
+ - Reduces server-side overhead by eliminating multiple `new Request()` calls on the critical path
186
+ - Allows you to distinguish document from data requests in your handlers based on the presence of a `.data` suffix (useful for [observability] purposes)
187
+
188
+ If you were previously relying on the normalization of `request.url`, you can switch to use the new sibling `url` parameter which contains a `URL` instance representing the normalized location.
189
+
190
+ 👉 **Enable the Flag**
191
+
192
+ ```ts filename=react-router.config.ts
193
+ import type { Config } from "@react-router/dev/config";
194
+
195
+ export default {
196
+ future: {
197
+ v8_passThroughRequests: true,
198
+ },
199
+ } satisfies Config;
200
+ ```
201
+
202
+ **Update your Code**
203
+
204
+ If your code relies on inspecting the request URL, you should review it for any assumptions about the URL format:
205
+
206
+ ```tsx
207
+ // ❌ Before: assuming no `.data` suffix in `request.url` pathname
208
+ export async function loader({
209
+ request,
210
+ }: Route.LoaderArgs) {
211
+ let url = new URL(request.url);
212
+ if (url.pathname === "/path") {
213
+ // This check might now behave differently because the request pathname will
214
+ // contain the `.data` suffix on data requests
215
+ }
216
+ }
217
+
218
+ // ✅ After: use `url` for normalized routing logic and `request.url`
219
+ // for raw routing logic
220
+ export async function loader({
221
+ request,
222
+ url,
223
+ }: Route.LoaderArgs) {
224
+ if (url.pathname === "/path") {
225
+ // This will always have the `.data` suffix stripped
226
+ }
227
+
228
+ // And now you can distinguish between document versus data requests
229
+ let isDataRequest = new URL(
230
+ request.url,
231
+ ).pathname.endsWith(".data");
232
+ }
233
+ ```
234
+
235
+ ### `future.v8_trailingSlashAwareDataRequests`
236
+
237
+ [MODES: framework]
238
+
239
+ <br/>
240
+ <br/>
241
+
242
+ **Background**
243
+
244
+ React Router serves Framework mode data requests from `.data` URLs. Previously, data requests for routes with and without trailing slashes could map to the same `.data` URL because trailing slashes were not considered during URL generation. This flag preserves trailing slash semantics for data request URLs to avoid ambiguity when your app distinguishes between trailing-slash and non-trailing-slash URLs.
245
+
246
+ In v7, your HTTP and `request` pathnames are as follows for `/a/b/c` and `/a/b/c/`
247
+
248
+ | URL `/a/b/c` | **HTTP pathname** | **`request` pathname`** |
249
+ | ------------ | ----------------- | ----------------------- |
250
+ | **Document** | `/a/b/c` | `/a/b/c` ✅ |
251
+ | **Data** | `/a/b/c.data` | `/a/b/c` ✅ |
252
+
253
+ | URL `/a/b/c/` | **HTTP pathname** | **`request` pathname`** |
254
+ | ------------- | ----------------- | ----------------------- |
255
+ | **Document** | `/a/b/c/` | `/a/b/c/` ✅ |
256
+ | **Data** | `/a/b/c.data` | `/a/b/c` ⚠️ |
257
+
258
+ With this flag enabled, these pathnames are made consistent through a new `_.data` format for client-side `.data` requests:
259
+
260
+ | URL `/a/b/c` | **HTTP pathname** | **`request` pathname`** |
261
+ | ------------ | ----------------- | ----------------------- |
262
+ | **Document** | `/a/b/c` | `/a/b/c` ✅ |
263
+ | **Data** | `/a/b/c.data` | `/a/b/c` ✅ |
264
+
265
+ | URL `/a/b/c/` | **HTTP pathname** | **`request` pathname`** |
266
+ | ------------- | ------------------ | ----------------------- |
267
+ | **Document** | `/a/b/c/` | `/a/b/c/` ✅ |
268
+ | **Data** | `/a/b/c/_.data` ⬅️ | `/a/b/c/` ✅ |
269
+
270
+ This flag also aligns the root data request to match this behavior by changing it from `/_root.data` to `/_.data`.
271
+
272
+ 👉 **Enable the Flag**
273
+
274
+ ```ts filename=react-router.config.ts
275
+ import type { Config } from "@react-router/dev/config";
276
+
277
+ export default {
278
+ future: {
279
+ v8_trailingSlashAwareDataRequests: true,
280
+ },
281
+ } satisfies Config;
282
+ ```
283
+
284
+ **Update your Code**
285
+
286
+ If you have custom app, CDN, cache, or rewrite logic that matches `.data` request URLs, update it to handle the new trailing-slash-aware `/_.data` format.
287
+
288
+ ## Other Breaking Changes
289
+
290
+ The changes in this section are not controlled by future flags, but you can update your code while still on v7 before moving to v8.
291
+
292
+ ### `meta`/`matches` `data` Values
293
+
294
+ [MODES: framework]
295
+
296
+ <br/>
297
+ <br/>
298
+
299
+ **Background**
300
+
301
+ React Router v8 removed deprecated `data` fields in favor of `loaderData` in a few places:
302
+
303
+ - `meta` function `data` argument
304
+ - `meta` function `matches` argument (`matches[i].data`)
305
+ - `useMatches()` (`matches[i].data`)
306
+
307
+ Use `loaderData` instead on `MetaArgs`, each item in `MetaArgs.matches`, and each match returned from `useMatches()`
308
+
309
+ 👉 **Update your Code**
310
+
311
+ Replace `data` with `loaderData` in your `meta` functions:
312
+
313
+ ```tsx diff
314
+ export function meta({
315
+ - data,
316
+ + loaderData,
317
+ matches,
318
+ }: Route.MetaArgs) {
319
+ return [
320
+ {
321
+ - title: data.title,
322
+ + title: loaderData.title,
323
+ },
324
+ ];
325
+ }
326
+ ```
327
+
328
+ If you read data from parent matches, update those references too:
329
+
330
+ ```tsx diff
331
+ export function meta({ matches }: Route.MetaArgs) {
332
+ let rootMatch = matches.find((match) => match.id === "root");
333
+ - let rootData = rootMatch?.data;
334
+ + let rootData = rootMatch?.loaderData;
335
+
336
+ return [{ title: rootData?.siteTitle }];
337
+ }
338
+ ```
339
+
340
+ Replace `data` with `loaderData` on `useMatches()` calls:
341
+
342
+ ```tsx diff
343
+ export default function Component({ matches, loaderData }: ComponentProps) {
344
+ let matches = useMatches();
345
+ - const rootLoaderData = matches[0].data;
346
+ + const rootLoaderData = matches[0].loaderData;
347
+ // ...
348
+ }
349
+ ```
350
+
351
+ ### `react-router-dom`
352
+
353
+ [MODES: framework, data, declarative]
354
+
355
+ <br/>
356
+ <br/>
357
+
358
+ **Background**
359
+
360
+ React Router v8 removes the `react-router-dom` re-export package. In v8, you should import DOM-specific APIs from `react-router/dom` and everything else from `react-router`.
361
+
362
+ 👉 **Update your Code**
363
+
364
+ Uninstall `react-router-dom`:
365
+
366
+ ```sh
367
+ npm uninstall react-router-dom
368
+ ```
369
+
370
+ Replace `react-router-dom` imports with `react-router` imports:
371
+
372
+ ```tsx diff
373
+ -import { Link, useLocation } from "react-router-dom";
374
+ +import { Link, useLocation } from "react-router";
375
+ ```
376
+
377
+ For DOM-specific APIs, import from `react-router/dom`:
378
+
379
+ ```tsx diff
380
+ -import { RouterProvider } from "react-router-dom";
381
+ +import { RouterProvider } from "react-router/dom";
382
+ ```
383
+
384
+ ### Cloudflare Vite Plugin
385
+
386
+ [MODES: framework]
387
+
388
+ <br/>
389
+ <br/>
390
+
391
+ **Background**
392
+
393
+ React Router v8 removes the React Router Cloudflare dev proxy. Cloudflare projects should use [`@cloudflare/vite-plugin`][cloudflare-vite-plugin] instead.
394
+
395
+ 👉 **Update your Code**
396
+
397
+ Replace `cloudflareDevProxy` with `cloudflare`:
398
+
399
+ ```tsx diff filename=vite.config.ts
400
+ import { reactRouter } from "@react-router/dev/vite";
401
+ -import { cloudflareDevProxy } from "@react-router/dev/vite/cloudflare";
402
+ +import { cloudflare } from "@cloudflare/vite-plugin";
403
+ import { defineConfig } from "vite";
404
+
405
+ export default defineConfig({
406
+ plugins: [
407
+ - cloudflareDevProxy(),
408
+ + cloudflare(),
409
+ reactRouter(),
410
+ ],
411
+ });
412
+ ```
413
+
414
+ ### `@react-router/architect` `useRequestContextDomainName`
415
+
416
+ [MODES: framework]
417
+
418
+ <br/>
419
+ <br/>
420
+
421
+ **Background**
422
+
423
+ In v7, the `@react-router/architect` adapter uses `X-Forwarded-Host` when creating the `request`, falling back to the `Host` header. In React Router v8, the adapter uses `event.requestContext.domainName` by default, falling back to the `Host` header.
424
+
425
+ 👉 **Update your Code**
426
+
427
+ Opt in to the v8 behavior while still on v7 by passing `useRequestContextDomainName: true`:
428
+
429
+ ```ts
430
+ import { createRequestHandler } from "@react-router/architect";
431
+ import * as build from "./build/server";
432
+
433
+ export const handler = createRequestHandler({
434
+ build,
435
+ useRequestContextDomainName: true,
436
+ });
437
+ ```
438
+
439
+ This option is removed in v8 because the `event.requestContext.domainName` behavior is the default.
440
+
441
+ ## Upgrade to v8
442
+
443
+ Now that your app is caught up, update to v8:
444
+
445
+ ```shellscript nonumber
446
+ # data/declarative mode
447
+ npm install react-router@latest
448
+
449
+ # framework mode
450
+ npm install react-router@latest @react-router/{dev,node,etc.}@latest
451
+ ```
452
+
453
+ Congratulations, you're now on v8!
454
+
455
+ [api-development-strategy]: ../community/api-development-strategy
456
+ [observability]: ../how-to/instrumentation
457
+ [Response]: https://developer.mozilla.org/en-US/docs/Web/API/Response
458
+ [vite-environment]: https://vite.dev/guide/api-environment
459
+ [node-custom-server-template]: https://github.com/remix-run/react-router-templates/blob/7c617a435510bc3add3a5395c07bc65328b65e9e/node-custom-server/vite.config.ts
460
+ [cloudflare-vite-plugin]: https://developers.cloudflare.com/workers/vite-plugin/
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "react-router",
3
- "version": "7.15.1",
3
+ "type": "module",
4
+ "version": "8.3.0",
4
5
  "description": "Declarative routing for React",
5
6
  "keywords": [
6
7
  "react",
@@ -18,94 +19,50 @@
18
19
  "license": "MIT",
19
20
  "author": "Remix Software <hello@remix.run>",
20
21
  "sideEffects": false,
21
- "types": "./dist/development/index.d.ts",
22
- "main": "./dist/development/index.js",
23
- "module": "./dist/development/index.mjs",
24
22
  "exports": {
25
23
  ".": {
24
+ "types": "./dist/production/index.d.ts",
26
25
  "react-server": {
27
- "module": "./dist/development/index-react-server.mjs",
28
- "default": "./dist/development/index-react-server.js"
26
+ "module-sync": {
27
+ "development": "./dist/development/index-react-server.js",
28
+ "default": "./dist/production/index-react-server.js"
29
+ },
30
+ "development": "./dist/development/index-react-server.js",
31
+ "default": "./dist/production/index-react-server.js"
29
32
  },
30
- "node": {
31
- "types": "./dist/development/index.d.ts",
32
- "module": "./dist/development/index.mjs",
33
- "module-sync": "./dist/development/index.mjs",
34
- "default": "./dist/development/index.js"
33
+ "module-sync": {
34
+ "development": "./dist/development/index.js",
35
+ "default": "./dist/production/index.js"
35
36
  },
36
- "module": {
37
- "types": "./dist/development/index.d.mts",
38
- "default": "./dist/development/index.mjs"
39
- },
40
- "import": {
41
- "types": "./dist/development/index.d.mts",
42
- "default": "./dist/development/index.mjs"
43
- },
44
- "default": {
45
- "types": "./dist/development/index.d.ts",
46
- "default": "./dist/development/index.js"
47
- }
37
+ "development": "./dist/development/index.js",
38
+ "default": "./dist/production/index.js"
48
39
  },
49
40
  "./dom": {
50
- "node": {
51
- "types": "./dist/development/dom-export.d.ts",
52
- "module": "./dist/development/dom-export.mjs",
53
- "module-sync": "./dist/development/dom-export.mjs",
54
- "default": "./dist/development/dom-export.js"
55
- },
56
- "module": {
57
- "types": "./dist/development/dom-export.d.mts",
58
- "default": "./dist/development/dom-export.mjs"
41
+ "types": "./dist/production/dom-export.d.ts",
42
+ "module-sync": {
43
+ "development": "./dist/development/dom-export.js",
44
+ "default": "./dist/production/dom-export.js"
59
45
  },
60
- "import": {
61
- "types": "./dist/development/dom-export.d.mts",
62
- "default": "./dist/development/dom-export.mjs"
63
- },
64
- "default": {
65
- "types": "./dist/development/dom-export.d.ts",
66
- "default": "./dist/development/dom-export.js"
67
- }
46
+ "development": "./dist/development/dom-export.js",
47
+ "default": "./dist/production/dom-export.js"
68
48
  },
69
49
  "./internal": {
70
- "node": {
71
- "types": "./dist/development/lib/types/internal.d.ts"
72
- },
73
- "import": {
74
- "types": "./dist/development/lib/types/internal.d.mts"
75
- },
76
- "default": {
77
- "types": "./dist/development/lib/types/index.d.ts"
78
- }
50
+ "types": "./dist/development/lib/types/internal.d.ts"
79
51
  },
80
52
  "./internal/react-server-client": {
81
- "react-server": {
82
- "module": "./dist/development/index-react-server-client.mjs",
83
- "default": "./dist/development/index-react-server-client.js"
84
- },
85
- "node": {
86
- "types": "./dist/development/index.d.ts",
87
- "module": "./dist/development/index.mjs",
88
- "module-sync": "./dist/development/index.mjs",
89
- "default": "./dist/development/index.js"
90
- },
91
- "module": {
92
- "types": "./dist/development/index.d.mts",
93
- "default": "./dist/development/index.mjs"
94
- },
95
- "import": {
96
- "types": "./dist/development/index.d.mts",
97
- "default": "./dist/development/index.mjs"
53
+ "types": "./dist/production/index-react-server-client.d.ts",
54
+ "module-sync": {
55
+ "development": "./dist/development/index-react-server-client.js",
56
+ "default": "./dist/production/index-react-server-client.js"
98
57
  },
99
- "default": {
100
- "types": "./dist/development/index.d.ts",
101
- "default": "./dist/development/index.js"
102
- }
58
+ "development": "./dist/development/index-react-server-client.js",
59
+ "default": "./dist/production/index-react-server-client.js"
103
60
  },
104
61
  "./package.json": "./package.json"
105
62
  },
106
63
  "wireit": {
107
64
  "build": {
108
- "command": "premove dist && tsup && tsup --config tsup.config.rsc.ts",
65
+ "command": "premove dist && tsdown && tsdown --config tsdown.config.rsc.ts",
109
66
  "files": [
110
67
  "../../pnpm-workspace.yaml",
111
68
  "lib/**",
@@ -119,27 +76,26 @@
119
76
  }
120
77
  },
121
78
  "dependencies": {
122
- "cookie": "^1.0.1",
123
- "set-cookie-parser": "^2.6.0"
79
+ "cookie-es": "^3.1.1"
124
80
  },
125
81
  "devDependencies": {
126
- "@testing-library/jest-dom": "^6.6.3",
127
- "@testing-library/react": "^16.3.0",
82
+ "@testing-library/jest-dom": "^6.9.1",
83
+ "@testing-library/react": "^16.3.2",
128
84
  "@testing-library/user-event": "^14.6.1",
129
- "@types/set-cookie-parser": "^2.4.1",
130
- "jest-environment-jsdom": "^29.6.2",
85
+ "@types/node": "^22.19.19",
86
+ "jest-environment-jsdom": "^30.4.1",
131
87
  "premove": "^4.0.0",
132
- "react": "^19.2.3",
133
- "react-dom": "^19.2.3",
134
- "react-test-renderer": "^19.1.0",
135
- "tsup": "^8.3.0",
136
- "typescript": "^5.4.5",
88
+ "react": "^19.2.7",
89
+ "react-dom": "^19.2.7",
90
+ "react-test-renderer": "^19.2.7",
91
+ "tsdown": "^0.22.0",
92
+ "typescript": "^6.0.3",
137
93
  "undici": "^6.19.2",
138
- "wireit": "0.14.9"
94
+ "wireit": "0.14.12"
139
95
  },
140
96
  "peerDependencies": {
141
- "react": ">=18",
142
- "react-dom": ">=18"
97
+ "react": ">=19.2.7",
98
+ "react-dom": ">=19.2.7"
143
99
  },
144
100
  "peerDependenciesMeta": {
145
101
  "react-dom": {
@@ -148,16 +104,17 @@
148
104
  },
149
105
  "files": [
150
106
  "dist/",
107
+ "docs/",
151
108
  "CHANGELOG.md",
152
109
  "LICENSE.md",
153
110
  "README.md"
154
111
  ],
155
112
  "engines": {
156
- "node": ">=20.0.0"
113
+ "node": ">=22.22.0"
157
114
  },
158
115
  "scripts": {
159
116
  "build": "wireit",
160
- "watch": "tsup --watch & tsup --config tsup.config.rsc.ts --watch",
117
+ "watch": "tsdown --watch & tsdown --config tsdown.config.rsc.ts --watch",
161
118
  "typecheck": "tsc"
162
119
  }
163
120
  }