react-router 7.18.2 → 7.18.4

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 (60) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/development/{browser-DBmQ1yAR.d.mts → browser-BR5QG7ZC.d.mts} +1 -1
  3. package/dist/development/{browser-B2PdsXXH.d.ts → browser-eq4RgLsD.d.ts} +1 -1
  4. package/dist/development/{chunk-HHGH3NKS.js → chunk-GR4NQCSD.js} +122 -19
  5. package/dist/development/{chunk-ZA36QIGN.mjs → chunk-H4DAEOV7.mjs} +16 -8
  6. package/dist/development/{chunk-7XGYIT3M.js → chunk-HQO5H5CC.js} +103 -103
  7. package/dist/{production/chunk-VJZ67BZE.js → development/chunk-LVPI3KDG.js} +7 -7
  8. package/dist/development/{chunk-62JRHF6Z.mjs → chunk-OB3PAWPO.mjs} +117 -14
  9. package/dist/{production/context-CeD5LmaF.d.mts → development/context-nqAapj74.d.mts} +9 -0
  10. package/dist/development/dom-export.d.mts +2 -2
  11. package/dist/development/dom-export.d.ts +2 -2
  12. package/dist/development/dom-export.js +45 -32
  13. package/dist/development/dom-export.mjs +17 -4
  14. package/dist/{production/index-react-server-client-3ykjivgQ.d.ts → development/index-react-server-client-BjY-eKuf.d.ts} +2 -1
  15. package/dist/{production/index-react-server-client-CACgcj2J.d.mts → development/index-react-server-client-K63fpMH4.d.mts} +1 -1
  16. package/dist/development/index-react-server-client.d.mts +2 -2
  17. package/dist/development/index-react-server-client.d.ts +2 -2
  18. package/dist/development/index-react-server-client.js +4 -4
  19. package/dist/development/index-react-server-client.mjs +2 -2
  20. package/dist/development/index-react-server.d.mts +8 -0
  21. package/dist/development/index-react-server.d.ts +8 -0
  22. package/dist/development/index-react-server.js +25 -9
  23. package/dist/development/index-react-server.mjs +25 -9
  24. package/dist/development/index.d.mts +6 -6
  25. package/dist/development/index.d.ts +6 -6
  26. package/dist/development/index.js +102 -94
  27. package/dist/development/index.mjs +3 -3
  28. package/dist/{production/instrumentation-Dkmpzd13.d.ts → development/instrumentation-B7w3_Eo9.d.ts} +8 -0
  29. package/dist/development/lib/types/internal.js +1 -1
  30. package/dist/development/lib/types/internal.mjs +1 -1
  31. package/dist/production/{browser-DBmQ1yAR.d.mts → browser-BR5QG7ZC.d.mts} +1 -1
  32. package/dist/production/{browser-B2PdsXXH.d.ts → browser-eq4RgLsD.d.ts} +1 -1
  33. package/dist/production/{chunk-FDTIF24W.js → chunk-AOOKMWND.js} +103 -103
  34. package/dist/production/{chunk-SJTG3J2Q.mjs → chunk-G2MPF4YY.mjs} +16 -8
  35. package/dist/production/{chunk-YBLPXYCV.mjs → chunk-Q34X6AWR.mjs} +117 -14
  36. package/dist/{development/chunk-3UVS743K.js → production/chunk-QURBR4FZ.js} +7 -7
  37. package/dist/production/{chunk-TP6EHSSF.js → chunk-YNGRUB6F.js} +122 -19
  38. package/dist/{development/context-CeD5LmaF.d.mts → production/context-nqAapj74.d.mts} +9 -0
  39. package/dist/production/dom-export.d.mts +2 -2
  40. package/dist/production/dom-export.d.ts +2 -2
  41. package/dist/production/dom-export.js +45 -32
  42. package/dist/production/dom-export.mjs +17 -4
  43. package/dist/{development/index-react-server-client-3ykjivgQ.d.ts → production/index-react-server-client-BjY-eKuf.d.ts} +2 -1
  44. package/dist/{development/index-react-server-client-CACgcj2J.d.mts → production/index-react-server-client-K63fpMH4.d.mts} +1 -1
  45. package/dist/production/index-react-server-client.d.mts +2 -2
  46. package/dist/production/index-react-server-client.d.ts +2 -2
  47. package/dist/production/index-react-server-client.js +4 -4
  48. package/dist/production/index-react-server-client.mjs +2 -2
  49. package/dist/production/index-react-server.d.mts +8 -0
  50. package/dist/production/index-react-server.d.ts +8 -0
  51. package/dist/production/index-react-server.js +25 -9
  52. package/dist/production/index-react-server.mjs +25 -9
  53. package/dist/production/index.d.mts +6 -6
  54. package/dist/production/index.d.ts +6 -6
  55. package/dist/production/index.js +102 -94
  56. package/dist/production/index.mjs +3 -3
  57. package/dist/{development/instrumentation-Dkmpzd13.d.ts → production/instrumentation-B7w3_Eo9.d.ts} +8 -0
  58. package/dist/production/lib/types/internal.js +1 -1
  59. package/dist/production/lib/types/internal.mjs +1 -1
  60. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { l as ServerInstrumentation, H as HydrationState, e as StaticHandlerContext, c as RelativeRoutingType, a as Router$1, g as RouterState, R as RouterInit, t as FutureConfig$1, C as ClientInstrumentation, d as GetScrollRestorationKeyFunction, F as Fetcher, B as BlockerFunction, u as CreateStaticHandlerOptions$1, S as StaticHandler } from './instrumentation-Dkmpzd13.js';
1
+ import { l as ServerInstrumentation, H as HydrationState, e as StaticHandlerContext, c as RelativeRoutingType, a as Router$1, g as RouterState, R as RouterInit, t as FutureConfig$1, C as ClientInstrumentation, d as GetScrollRestorationKeyFunction, F as Fetcher, B as BlockerFunction, u as CreateStaticHandlerOptions$1, S as StaticHandler } from './instrumentation-B7w3_Eo9.js';
2
2
  import * as React from 'react';
3
3
  import { p as RouteManifest, aE as ServerRouteModule, t as MiddlewareEnabled, c as RouterContextProvider, u as AppLoadContext, s as LoaderFunctionArgs, a0 as ActionFunctionArgs, O as RouteModules, n as DataRouteObject, a as ClientLoaderFunction, o as RouteBranch, aF as TrackedPromise, f as History, T as To, L as Location, i as Action, ac as RouteMatch, Y as InitialEntry, _ as NonIndexRouteObject, a7 as LazyRouteFunction, Z as IndexRouteObject, P as Params, l as DataStrategyFunction, m as PatchRoutesOnNavigationFunction, e as RouteObject, U as UIMatch, q as HTMLFormMethod, F as FormEncType, av as PageLinkDescriptor, Q as SerializeFrom } from './data-CjO11-hU.js';
4
4
 
@@ -197,6 +197,7 @@ interface NavigateOptions {
197
197
  */
198
198
  interface Navigator {
199
199
  createHref: History["createHref"];
200
+ createURL?: History["createURL"];
200
201
  encodeLocation?: History["encodeLocation"];
201
202
  go: History["go"];
202
203
  push(to: To, state?: any, opts?: NavigateOptions): void;
@@ -1,4 +1,4 @@
1
- import { o as ServerInstrumentation, H as HydrationState, h as StaticHandlerContext, f as RelativeRoutingType, g as GetScrollRestorationKeyFunction, R as RouterInit, ah as FutureConfig$1, C as ClientInstrumentation, N as NavigateOptions, F as Fetcher, c as Router, B as BlockerFunction, ai as CreateStaticHandlerOptions$1, S as StaticHandler } from './context-CeD5LmaF.mjs';
1
+ import { o as ServerInstrumentation, H as HydrationState, h as StaticHandlerContext, f as RelativeRoutingType, g as GetScrollRestorationKeyFunction, R as RouterInit, ah as FutureConfig$1, C as ClientInstrumentation, N as NavigateOptions, F as Fetcher, c as Router, B as BlockerFunction, ai as CreateStaticHandlerOptions$1, S as StaticHandler } from './context-nqAapj74.mjs';
2
2
  import * as React from 'react';
3
3
  import { J as RouteManifest, aF as ServerRouteModule, p as MiddlewareEnabled, c as RouterContextProvider, q as AppLoadContext, o as LoaderFunctionArgs, a3 as ActionFunctionArgs, Z as RouteModules, E as DataRouteObject, a as ClientLoaderFunction, I as RouteBranch, m as HTMLFormMethod, n as FormEncType, aw as PageLinkDescriptor, T as To, s as History, z as DataStrategyFunction, B as PatchRoutesOnNavigationFunction, r as RouteObject, _ as SerializeFrom, L as Location } from './data-DEjBmEfD.mjs';
4
4
 
@@ -1,4 +1,4 @@
1
- export { Q as MemoryRouter, T as Navigate, U as Outlet, V as Route, W as Router, X as RouterProvider, Y as Routes, A as UNSAFE_AwaitContextProvider, ab as UNSAFE_WithComponentProps, af as UNSAFE_WithErrorBoundaryProps, ad as UNSAFE_WithHydrateFallbackProps } from './context-CeD5LmaF.mjs';
2
- export { l as BrowserRouter, q as Form, m as HashRouter, n as Link, X as Links, W as Meta, p as NavLink, r as ScrollRestoration, T as StaticRouter, V as StaticRouterProvider, o as unstable_HistoryRouter } from './index-react-server-client-CACgcj2J.mjs';
1
+ export { Q as MemoryRouter, T as Navigate, U as Outlet, V as Route, W as Router, X as RouterProvider, Y as Routes, A as UNSAFE_AwaitContextProvider, ab as UNSAFE_WithComponentProps, af as UNSAFE_WithErrorBoundaryProps, ad as UNSAFE_WithHydrateFallbackProps } from './context-nqAapj74.mjs';
2
+ export { l as BrowserRouter, q as Form, m as HashRouter, n as Link, X as Links, W as Meta, p as NavLink, r as ScrollRestoration, T as StaticRouter, V as StaticRouterProvider, o as unstable_HistoryRouter } from './index-react-server-client-K63fpMH4.mjs';
3
3
  import './data-DEjBmEfD.mjs';
4
4
  import 'react';
@@ -1,4 +1,4 @@
1
- export { W as BrowserRouter, $ as Form, X as HashRouter, Y as Link, an as Links, j as MemoryRouter, am as Meta, _ as NavLink, k as Navigate, l as Outlet, m as Route, n as Router, o as RouterProvider, p as Routes, a0 as ScrollRestoration, ak as StaticRouter, al as StaticRouterProvider, b as UNSAFE_AwaitContextProvider, aH as UNSAFE_WithComponentProps, aL as UNSAFE_WithErrorBoundaryProps, aJ as UNSAFE_WithHydrateFallbackProps, Z as unstable_HistoryRouter } from './index-react-server-client-3ykjivgQ.js';
2
- import './instrumentation-Dkmpzd13.js';
1
+ export { W as BrowserRouter, $ as Form, X as HashRouter, Y as Link, an as Links, j as MemoryRouter, am as Meta, _ as NavLink, k as Navigate, l as Outlet, m as Route, n as Router, o as RouterProvider, p as Routes, a0 as ScrollRestoration, ak as StaticRouter, al as StaticRouterProvider, b as UNSAFE_AwaitContextProvider, aH as UNSAFE_WithComponentProps, aL as UNSAFE_WithErrorBoundaryProps, aJ as UNSAFE_WithHydrateFallbackProps, Z as unstable_HistoryRouter } from './index-react-server-client-BjY-eKuf.js';
2
+ import './instrumentation-B7w3_Eo9.js';
3
3
  import './data-CjO11-hU.js';
4
4
  import 'react';
@@ -1,5 +1,5 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});/**
2
- * react-router v7.18.2
2
+ * react-router v7.18.4
3
3
  *
4
4
  * Copyright (c) Remix Software Inc.
5
5
  *
@@ -19,7 +19,7 @@
19
19
 
20
20
 
21
21
 
22
- var _chunkFDTIF24Wjs = require('./chunk-FDTIF24W.js');
22
+ var _chunkAOOKMWNDjs = require('./chunk-AOOKMWND.js');
23
23
 
24
24
 
25
25
 
@@ -34,7 +34,7 @@ var _chunkFDTIF24Wjs = require('./chunk-FDTIF24W.js');
34
34
 
35
35
 
36
36
 
37
- var _chunkTP6EHSSFjs = require('./chunk-TP6EHSSF.js');
37
+ var _chunkYNGRUB6Fjs = require('./chunk-YNGRUB6F.js');
38
38
 
39
39
 
40
40
 
@@ -58,4 +58,4 @@ var _chunkTP6EHSSFjs = require('./chunk-TP6EHSSF.js');
58
58
 
59
59
 
60
60
 
61
- exports.BrowserRouter = _chunkFDTIF24Wjs.BrowserRouter; exports.Form = _chunkFDTIF24Wjs.Form; exports.HashRouter = _chunkFDTIF24Wjs.HashRouter; exports.Link = _chunkFDTIF24Wjs.Link; exports.Links = _chunkTP6EHSSFjs.Links; exports.MemoryRouter = _chunkTP6EHSSFjs.MemoryRouter; exports.Meta = _chunkTP6EHSSFjs.Meta; exports.NavLink = _chunkFDTIF24Wjs.NavLink; exports.Navigate = _chunkTP6EHSSFjs.Navigate; exports.Outlet = _chunkTP6EHSSFjs.Outlet; exports.Route = _chunkTP6EHSSFjs.Route; exports.Router = _chunkTP6EHSSFjs.Router; exports.RouterProvider = _chunkTP6EHSSFjs.RouterProvider; exports.Routes = _chunkTP6EHSSFjs.Routes; exports.ScrollRestoration = _chunkFDTIF24Wjs.ScrollRestoration; exports.StaticRouter = _chunkFDTIF24Wjs.StaticRouter; exports.StaticRouterProvider = _chunkFDTIF24Wjs.StaticRouterProvider; exports.UNSAFE_AwaitContextProvider = _chunkTP6EHSSFjs.AwaitContextProvider; exports.UNSAFE_WithComponentProps = _chunkTP6EHSSFjs.WithComponentProps; exports.UNSAFE_WithErrorBoundaryProps = _chunkTP6EHSSFjs.WithErrorBoundaryProps; exports.UNSAFE_WithHydrateFallbackProps = _chunkTP6EHSSFjs.WithHydrateFallbackProps; exports.unstable_HistoryRouter = _chunkFDTIF24Wjs.HistoryRouter;
61
+ exports.BrowserRouter = _chunkAOOKMWNDjs.BrowserRouter; exports.Form = _chunkAOOKMWNDjs.Form; exports.HashRouter = _chunkAOOKMWNDjs.HashRouter; exports.Link = _chunkAOOKMWNDjs.Link; exports.Links = _chunkYNGRUB6Fjs.Links; exports.MemoryRouter = _chunkYNGRUB6Fjs.MemoryRouter; exports.Meta = _chunkYNGRUB6Fjs.Meta; exports.NavLink = _chunkAOOKMWNDjs.NavLink; exports.Navigate = _chunkYNGRUB6Fjs.Navigate; exports.Outlet = _chunkYNGRUB6Fjs.Outlet; exports.Route = _chunkYNGRUB6Fjs.Route; exports.Router = _chunkYNGRUB6Fjs.Router; exports.RouterProvider = _chunkYNGRUB6Fjs.RouterProvider; exports.Routes = _chunkYNGRUB6Fjs.Routes; exports.ScrollRestoration = _chunkAOOKMWNDjs.ScrollRestoration; exports.StaticRouter = _chunkAOOKMWNDjs.StaticRouter; exports.StaticRouterProvider = _chunkAOOKMWNDjs.StaticRouterProvider; exports.UNSAFE_AwaitContextProvider = _chunkYNGRUB6Fjs.AwaitContextProvider; exports.UNSAFE_WithComponentProps = _chunkYNGRUB6Fjs.WithComponentProps; exports.UNSAFE_WithErrorBoundaryProps = _chunkYNGRUB6Fjs.WithErrorBoundaryProps; exports.UNSAFE_WithHydrateFallbackProps = _chunkYNGRUB6Fjs.WithHydrateFallbackProps; exports.unstable_HistoryRouter = _chunkAOOKMWNDjs.HistoryRouter;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * react-router v7.18.2
2
+ * react-router v7.18.4
3
3
  *
4
4
  * Copyright (c) Remix Software Inc.
5
5
  *
@@ -32,7 +32,7 @@ import {
32
32
  WithComponentProps,
33
33
  WithErrorBoundaryProps,
34
34
  WithHydrateFallbackProps
35
- } from "./chunk-YBLPXYCV.mjs";
35
+ } from "./chunk-Q34X6AWR.mjs";
36
36
  export {
37
37
  BrowserRouter,
38
38
  Form,
@@ -1243,6 +1243,14 @@ interface Router {
1243
1243
  * @param location
1244
1244
  */
1245
1245
  createHref(location: Location | URL): string;
1246
+ /**
1247
+ * @private
1248
+ * PRIVATE - DO NOT USE
1249
+ *
1250
+ * Utility function to create a URL for the given location
1251
+ * @param location
1252
+ */
1253
+ createURL?(to: To): URL;
1246
1254
  /**
1247
1255
  * @private
1248
1256
  * PRIVATE - DO NOT USE
@@ -1243,6 +1243,14 @@ interface Router {
1243
1243
  * @param location
1244
1244
  */
1245
1245
  createHref(location: Location | URL): string;
1246
+ /**
1247
+ * @private
1248
+ * PRIVATE - DO NOT USE
1249
+ *
1250
+ * Utility function to create a URL for the given location
1251
+ * @param location
1252
+ */
1253
+ createURL?(to: To): URL;
1246
1254
  /**
1247
1255
  * @private
1248
1256
  * PRIVATE - DO NOT USE
@@ -27,7 +27,7 @@ function _interopNamespace(e) {
27
27
  var React3__namespace = /*#__PURE__*/_interopNamespace(React3);
28
28
 
29
29
  /**
30
- * react-router v7.18.2
30
+ * react-router v7.18.4
31
31
  *
32
32
  * Copyright (c) Remix Software Inc.
33
33
  *
@@ -664,13 +664,16 @@ function matchPathImpl(pattern, pathname, matcher, compiledParams) {
664
664
  let match = pathname.match(matcher);
665
665
  if (!match) return null;
666
666
  let matchedPathname = match[0];
667
- let pathnameBase = matchedPathname.replace(/(.)\/+$/, "$1");
667
+ let pathnameBase = removeTrailingSlash(matchedPathname, 1);
668
668
  let captureGroups = match.slice(1);
669
669
  let params = compiledParams.reduce(
670
670
  (memo, { paramName, isOptional }, index) => {
671
671
  if (paramName === "*") {
672
672
  let splatValue = captureGroups[index] || "";
673
- pathnameBase = matchedPathname.slice(0, matchedPathname.length - splatValue.length).replace(/(.)\/+$/, "$1");
673
+ pathnameBase = removeTrailingSlash(
674
+ matchedPathname.slice(0, matchedPathname.length - splatValue.length),
675
+ 1
676
+ );
674
677
  }
675
678
  const value = captureGroups[index];
676
679
  if (isOptional && !value) {
@@ -759,7 +762,7 @@ function resolvePath(to, fromPathname = "/") {
759
762
  let pathname;
760
763
  if (toPathname) {
761
764
  toPathname = removeDoubleSlashes(toPathname);
762
- if (toPathname.startsWith("/")) {
765
+ if (toPathname.startsWith("/") || toPathname.startsWith("\\")) {
763
766
  pathname = resolvePathname(toPathname.substring(1), "/");
764
767
  } else {
765
768
  pathname = resolvePathname(toPathname, fromPathname);
@@ -847,7 +850,13 @@ function resolveTo(toArg, routePathnames, locationPathname, isPathRelative = fal
847
850
  }
848
851
  var removeDoubleSlashes = (path) => path.replace(/[\\/]{2,}/g, "/");
849
852
  var joinPaths = (paths) => removeDoubleSlashes(paths.join("/"));
850
- var removeTrailingSlash = (path) => path.replace(/\/+$/, "");
853
+ function removeTrailingSlash(path, minLength = 0) {
854
+ let end = path.length;
855
+ while (end > minLength && path.charCodeAt(end - 1) === 47) {
856
+ end--;
857
+ }
858
+ return end === path.length ? path : path.slice(0, end);
859
+ }
851
860
  var normalizePathname = (pathname) => removeTrailingSlash(pathname).replace(/^\/*/, "/");
852
861
  var normalizeSearch = (search) => !search || search === "?" ? "" : search.startsWith("?") ? search : "?" + search;
853
862
  var normalizeHash = (hash) => !hash || hash === "#" ? "" : hash.startsWith("#") ? hash : "#" + hash;
@@ -2561,18 +2570,25 @@ function getPathsWithAncestors(paths) {
2561
2570
  function throwIfPotentialCSRFAttack(request, allowedActionOrigins) {
2562
2571
  let originHeader = request.headers.get("origin");
2563
2572
  let originDomain = null;
2573
+ let originUrl = null;
2564
2574
  try {
2565
- originDomain = typeof originHeader === "string" && originHeader !== "null" ? new URL(originHeader).host : originHeader;
2575
+ if (typeof originHeader === "string" && originHeader !== "null") {
2576
+ originUrl = new URL(originHeader);
2577
+ originDomain = originUrl.host;
2578
+ } else {
2579
+ originDomain = originHeader;
2580
+ }
2566
2581
  } catch {
2567
2582
  throw new Error(
2568
2583
  `\`origin\` header is not a valid URL. Aborting the action.`
2569
2584
  );
2570
2585
  }
2571
- let host = new URL(request.url).host;
2572
- if (originDomain && originDomain !== host) {
2586
+ let requestUrl = new URL(request.url);
2587
+ let originMatchesRequest = originUrl ? originUrl.origin === requestUrl.origin : originDomain === requestUrl.host;
2588
+ if (originDomain && !originMatchesRequest) {
2573
2589
  if (!isAllowedOrigin(originDomain, allowedActionOrigins)) {
2574
2590
  throw new Error(
2575
- "The `request.url` host does not match `origin` header from a forwarded action request. Aborting the action."
2591
+ "The `request.url` origin does not match `origin` header from a forwarded action request. Aborting the action."
2576
2592
  );
2577
2593
  }
2578
2594
  }
@@ -6,7 +6,7 @@ export { BrowserRouter, Form, HashRouter, Link, Links, MemoryRouter, Meta, NavLi
6
6
  import { serialize, parse } from 'cookie';
7
7
 
8
8
  /**
9
- * react-router v7.18.2
9
+ * react-router v7.18.4
10
10
  *
11
11
  * Copyright (c) Remix Software Inc.
12
12
  *
@@ -643,13 +643,16 @@ function matchPathImpl(pattern, pathname, matcher, compiledParams) {
643
643
  let match = pathname.match(matcher);
644
644
  if (!match) return null;
645
645
  let matchedPathname = match[0];
646
- let pathnameBase = matchedPathname.replace(/(.)\/+$/, "$1");
646
+ let pathnameBase = removeTrailingSlash(matchedPathname, 1);
647
647
  let captureGroups = match.slice(1);
648
648
  let params = compiledParams.reduce(
649
649
  (memo, { paramName, isOptional }, index) => {
650
650
  if (paramName === "*") {
651
651
  let splatValue = captureGroups[index] || "";
652
- pathnameBase = matchedPathname.slice(0, matchedPathname.length - splatValue.length).replace(/(.)\/+$/, "$1");
652
+ pathnameBase = removeTrailingSlash(
653
+ matchedPathname.slice(0, matchedPathname.length - splatValue.length),
654
+ 1
655
+ );
653
656
  }
654
657
  const value = captureGroups[index];
655
658
  if (isOptional && !value) {
@@ -738,7 +741,7 @@ function resolvePath(to, fromPathname = "/") {
738
741
  let pathname;
739
742
  if (toPathname) {
740
743
  toPathname = removeDoubleSlashes(toPathname);
741
- if (toPathname.startsWith("/")) {
744
+ if (toPathname.startsWith("/") || toPathname.startsWith("\\")) {
742
745
  pathname = resolvePathname(toPathname.substring(1), "/");
743
746
  } else {
744
747
  pathname = resolvePathname(toPathname, fromPathname);
@@ -826,7 +829,13 @@ function resolveTo(toArg, routePathnames, locationPathname, isPathRelative = fal
826
829
  }
827
830
  var removeDoubleSlashes = (path) => path.replace(/[\\/]{2,}/g, "/");
828
831
  var joinPaths = (paths) => removeDoubleSlashes(paths.join("/"));
829
- var removeTrailingSlash = (path) => path.replace(/\/+$/, "");
832
+ function removeTrailingSlash(path, minLength = 0) {
833
+ let end = path.length;
834
+ while (end > minLength && path.charCodeAt(end - 1) === 47) {
835
+ end--;
836
+ }
837
+ return end === path.length ? path : path.slice(0, end);
838
+ }
830
839
  var normalizePathname = (pathname) => removeTrailingSlash(pathname).replace(/^\/*/, "/");
831
840
  var normalizeSearch = (search) => !search || search === "?" ? "" : search.startsWith("?") ? search : "?" + search;
832
841
  var normalizeHash = (hash) => !hash || hash === "#" ? "" : hash.startsWith("#") ? hash : "#" + hash;
@@ -2540,18 +2549,25 @@ function getPathsWithAncestors(paths) {
2540
2549
  function throwIfPotentialCSRFAttack(request, allowedActionOrigins) {
2541
2550
  let originHeader = request.headers.get("origin");
2542
2551
  let originDomain = null;
2552
+ let originUrl = null;
2543
2553
  try {
2544
- originDomain = typeof originHeader === "string" && originHeader !== "null" ? new URL(originHeader).host : originHeader;
2554
+ if (typeof originHeader === "string" && originHeader !== "null") {
2555
+ originUrl = new URL(originHeader);
2556
+ originDomain = originUrl.host;
2557
+ } else {
2558
+ originDomain = originHeader;
2559
+ }
2545
2560
  } catch {
2546
2561
  throw new Error(
2547
2562
  `\`origin\` header is not a valid URL. Aborting the action.`
2548
2563
  );
2549
2564
  }
2550
- let host = new URL(request.url).host;
2551
- if (originDomain && originDomain !== host) {
2565
+ let requestUrl = new URL(request.url);
2566
+ let originMatchesRequest = originUrl ? originUrl.origin === requestUrl.origin : originDomain === requestUrl.host;
2567
+ if (originDomain && !originMatchesRequest) {
2552
2568
  if (!isAllowedOrigin(originDomain, allowedActionOrigins)) {
2553
2569
  throw new Error(
2554
- "The `request.url` host does not match `origin` header from a forwarded action request. Aborting the action."
2570
+ "The `request.url` origin does not match `origin` header from a forwarded action request. Aborting the action."
2555
2571
  );
2556
2572
  }
2557
2573
  }
@@ -1,17 +1,17 @@
1
1
  import { Z as RouteModules, z as DataStrategyFunction, p as MiddlewareEnabled, c as RouterContextProvider, q as AppLoadContext, T as To, L as Location, P as Params, U as UIMatch, v as Action, _ as SerializeFrom, $ as PathPattern, a0 as PathMatch, a1 as ParamParseKey, K as Path, r as RouteObject, G as GetLoaderData, l as GetActionData, O as InitialEntry, W as IndexRouteObject, d as LoaderFunction, A as ActionFunction, M as MetaFunction, b as LinksFunction, Q as NonIndexRouteObject, a2 as Equal, B as PatchRoutesOnNavigationFunction, E as DataRouteObject, a as ClientLoaderFunction } from './data-DEjBmEfD.mjs';
2
2
  export { a3 as ActionFunctionArgs, a4 as BaseRouteObject, C as ClientActionFunction, as as ClientActionFunctionArgs, at as ClientLoaderFunctionArgs, w as DataRouteMatch, a5 as DataStrategyFunctionArgs, a6 as DataStrategyMatch, D as DataStrategyResult, a8 as ErrorResponse, n as FormEncType, a9 as FormMethod, ay as Future, m as HTMLFormMethod, au as HeadersArgs, H as HeadersFunction, ax as HtmlLinkDescriptor, V as LazyRouteFunction, e as LinkDescriptor, o as LoaderFunctionArgs, av as MetaArgs, g as MetaDescriptor, aa as MiddlewareFunction, aw as PageLinkDescriptor, ab as PatchRoutesOnNavigationFunctionArgs, ac as PathParam, ad as RedirectFunction, X as RouteMatch, ae as RouterContext, S as ShouldRevalidateFunction, af as ShouldRevalidateFunctionArgs, a7 as UNSAFE_DataWithResponseInit, aE as UNSAFE_ErrorResponseImpl, aB as UNSAFE_createBrowserHistory, aC as UNSAFE_createHashHistory, aA as UNSAFE_createMemoryHistory, aD as UNSAFE_invariant, ag as createContext, ah as createPath, aj as data, ak as generatePath, al as isRouteErrorResponse, am as matchPath, an as matchRoutes, ai as parsePath, ao as redirect, ap as redirectDocument, aq as replace, ar as resolvePath, az as unstable_SerializesTo } from './data-DEjBmEfD.mjs';
3
- import { c as Router, N as NavigateOptions, d as NavigationStates, B as BlockerFunction, e as Blocker, f as RelativeRoutingType, H as HydrationState } from './context-CeD5LmaF.mjs';
4
- export { K as Await, w as AwaitProps, C as ClientInstrumentation, b as ClientOnErrorFunction, F as Fetcher, G as GetScrollPositionFunction, g as GetScrollRestorationKeyFunction, u as IDLE_BLOCKER, t as IDLE_FETCHER, s as IDLE_NAVIGATION, x as IndexRouteProps, I as InstrumentRequestHandlerFunction, q as InstrumentRouteFunction, p as InstrumentRouterFunction, r as InstrumentationHandlerResult, L as LayoutRouteProps, Q as MemoryRouter, M as MemoryRouterOpts, y as MemoryRouterProps, T as Navigate, z as NavigateProps, i as Navigation, v as Navigator, U as Outlet, O as OutletProps, P as PathRouteProps, n as RevalidationState, V as Route, D as RouteProps, W as Router, m as RouterFetchOptions, R as RouterInit, l as RouterNavigateOptions, E as RouterProps, X as RouterProvider, a as RouterProviderProps, j as RouterState, k as RouterSubscriber, Y as Routes, J as RoutesProps, o as ServerInstrumentation, S as StaticHandler, h as StaticHandlerContext, A as UNSAFE_AwaitContextProvider, a2 as UNSAFE_DataRouterContext, a3 as UNSAFE_DataRouterStateContext, a4 as UNSAFE_FetchersContext, a5 as UNSAFE_LocationContext, a6 as UNSAFE_NavigationContext, a7 as UNSAFE_RouteContext, a8 as UNSAFE_ViewTransitionContext, ab as UNSAFE_WithComponentProps, af as UNSAFE_WithErrorBoundaryProps, ad as UNSAFE_WithHydrateFallbackProps, a1 as UNSAFE_createRouter, a9 as UNSAFE_hydrationRouteProperties, aa as UNSAFE_mapRouteProperties, ac as UNSAFE_withComponentProps, ag as UNSAFE_withErrorBoundaryProps, ae as UNSAFE_withHydrateFallbackProps, Z as createMemoryRouter, _ as createRoutesFromChildren, $ as createRoutesFromElements, a0 as renderMatches } from './context-CeD5LmaF.mjs';
3
+ import { c as Router, N as NavigateOptions, d as NavigationStates, B as BlockerFunction, e as Blocker, f as RelativeRoutingType, H as HydrationState } from './context-nqAapj74.mjs';
4
+ export { K as Await, w as AwaitProps, C as ClientInstrumentation, b as ClientOnErrorFunction, F as Fetcher, G as GetScrollPositionFunction, g as GetScrollRestorationKeyFunction, u as IDLE_BLOCKER, t as IDLE_FETCHER, s as IDLE_NAVIGATION, x as IndexRouteProps, I as InstrumentRequestHandlerFunction, q as InstrumentRouteFunction, p as InstrumentRouterFunction, r as InstrumentationHandlerResult, L as LayoutRouteProps, Q as MemoryRouter, M as MemoryRouterOpts, y as MemoryRouterProps, T as Navigate, z as NavigateProps, i as Navigation, v as Navigator, U as Outlet, O as OutletProps, P as PathRouteProps, n as RevalidationState, V as Route, D as RouteProps, W as Router, m as RouterFetchOptions, R as RouterInit, l as RouterNavigateOptions, E as RouterProps, X as RouterProvider, a as RouterProviderProps, j as RouterState, k as RouterSubscriber, Y as Routes, J as RoutesProps, o as ServerInstrumentation, S as StaticHandler, h as StaticHandlerContext, A as UNSAFE_AwaitContextProvider, a2 as UNSAFE_DataRouterContext, a3 as UNSAFE_DataRouterStateContext, a4 as UNSAFE_FetchersContext, a5 as UNSAFE_LocationContext, a6 as UNSAFE_NavigationContext, a7 as UNSAFE_RouteContext, a8 as UNSAFE_ViewTransitionContext, ab as UNSAFE_WithComponentProps, af as UNSAFE_WithErrorBoundaryProps, ad as UNSAFE_WithHydrateFallbackProps, a1 as UNSAFE_createRouter, a9 as UNSAFE_hydrationRouteProperties, aa as UNSAFE_mapRouteProperties, ac as UNSAFE_withComponentProps, ag as UNSAFE_withErrorBoundaryProps, ae as UNSAFE_withHydrateFallbackProps, Z as createMemoryRouter, _ as createRoutesFromChildren, $ as createRoutesFromElements, a0 as renderMatches } from './context-nqAapj74.mjs';
5
5
  import * as React from 'react';
6
6
  import React__default, { ReactElement } from 'react';
7
7
  import { a as RouteModules$1, P as Pages } from './register-CmkRspdl.mjs';
8
8
  export { b as Register } from './register-CmkRspdl.mjs';
9
- import { A as AssetsManifest, S as ServerBuild, E as EntryContext, F as FutureConfig } from './index-react-server-client-CACgcj2J.mjs';
10
- export { l as BrowserRouter, B as BrowserRouterProps, D as DOMRouterOpts, a1 as DiscoverBehavior, c as FetcherFormProps, h as FetcherSubmitFunction, G as FetcherSubmitOptions, i as FetcherWithComponents, q as Form, d as FormProps, a2 as HandleDataRequestFunction, a3 as HandleDocumentRequestFunction, a4 as HandleErrorFunction, m as HashRouter, H as HashRouterProps, a as HistoryRouterProps, n as Link, L as LinkProps, X as Links, _ as LinksProps, W as Meta, p as NavLink, N as NavLinkProps, b as NavLinkRenderProps, P as ParamKeyValuePair, a0 as PrefetchBehavior, Z as PrefetchPageLinks, Y as Scripts, $ as ScriptsProps, r as ScrollRestoration, e as ScrollRestorationProps, a5 as ServerEntryModule, f as SetURLSearchParams, T as StaticRouter, M as StaticRouterProps, V as StaticRouterProvider, O as StaticRouterProviderProps, g as SubmitFunction, I as SubmitOptions, J as SubmitTarget, a6 as UNSAFE_FrameworkContext, a7 as UNSAFE_createClientRoutes, a8 as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, a9 as UNSAFE_shouldHydrateRouteLoader, aa as UNSAFE_useScrollRestoration, U as URLSearchParamsInit, j as createBrowserRouter, k as createHashRouter, K as createSearchParams, Q as createStaticHandler, R as createStaticRouter, o as unstable_HistoryRouter, z as unstable_usePrompt, y as useBeforeUnload, w as useFetcher, x as useFetchers, v as useFormAction, u as useLinkClickHandler, s as useSearchParams, t as useSubmit, C as useViewTransitionState } from './index-react-server-client-CACgcj2J.mjs';
9
+ import { A as AssetsManifest, S as ServerBuild, E as EntryContext, F as FutureConfig } from './index-react-server-client-K63fpMH4.mjs';
10
+ export { l as BrowserRouter, B as BrowserRouterProps, D as DOMRouterOpts, a1 as DiscoverBehavior, c as FetcherFormProps, h as FetcherSubmitFunction, G as FetcherSubmitOptions, i as FetcherWithComponents, q as Form, d as FormProps, a2 as HandleDataRequestFunction, a3 as HandleDocumentRequestFunction, a4 as HandleErrorFunction, m as HashRouter, H as HashRouterProps, a as HistoryRouterProps, n as Link, L as LinkProps, X as Links, _ as LinksProps, W as Meta, p as NavLink, N as NavLinkProps, b as NavLinkRenderProps, P as ParamKeyValuePair, a0 as PrefetchBehavior, Z as PrefetchPageLinks, Y as Scripts, $ as ScriptsProps, r as ScrollRestoration, e as ScrollRestorationProps, a5 as ServerEntryModule, f as SetURLSearchParams, T as StaticRouter, M as StaticRouterProps, V as StaticRouterProvider, O as StaticRouterProviderProps, g as SubmitFunction, I as SubmitOptions, J as SubmitTarget, a6 as UNSAFE_FrameworkContext, a7 as UNSAFE_createClientRoutes, a8 as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, a9 as UNSAFE_shouldHydrateRouteLoader, aa as UNSAFE_useScrollRestoration, U as URLSearchParamsInit, j as createBrowserRouter, k as createHashRouter, K as createSearchParams, Q as createStaticHandler, R as createStaticRouter, o as unstable_HistoryRouter, z as unstable_usePrompt, y as useBeforeUnload, w as useFetcher, x as useFetchers, v as useFormAction, u as useLinkClickHandler, s as useSearchParams, t as useSubmit, C as useViewTransitionState } from './index-react-server-client-K63fpMH4.mjs';
11
11
  import { ParseOptions, SerializeOptions } from 'cookie';
12
12
  export { ParseOptions as CookieParseOptions, SerializeOptions as CookieSerializeOptions } from 'cookie';
13
- import { e as RSCPayload, g as getRequest, m as matchRSCServerRequest } from './browser-DBmQ1yAR.mjs';
14
- export { B as unstable_BrowserCreateFromReadableStreamFunction, D as unstable_DecodeActionFunction, a as unstable_DecodeFormStateFunction, b as unstable_DecodeReplyFunction, E as unstable_EncodeReplyFunction, L as unstable_LoadServerActionFunction, h as unstable_RSCHydratedRouterProps, d as unstable_RSCManifestPayload, i as unstable_RSCMatch, f as unstable_RSCRenderPayload, n as unstable_RSCRouteConfig, l as unstable_RSCRouteConfigEntry, j as unstable_RSCRouteManifest, k as unstable_RSCRouteMatch } from './browser-DBmQ1yAR.mjs';
13
+ import { e as RSCPayload, g as getRequest, m as matchRSCServerRequest } from './browser-BR5QG7ZC.mjs';
14
+ export { B as unstable_BrowserCreateFromReadableStreamFunction, D as unstable_DecodeActionFunction, a as unstable_DecodeFormStateFunction, b as unstable_DecodeReplyFunction, E as unstable_EncodeReplyFunction, L as unstable_LoadServerActionFunction, h as unstable_RSCHydratedRouterProps, d as unstable_RSCManifestPayload, i as unstable_RSCMatch, f as unstable_RSCRenderPayload, n as unstable_RSCRouteConfig, l as unstable_RSCRouteConfigEntry, j as unstable_RSCRouteManifest, k as unstable_RSCRouteMatch } from './browser-BR5QG7ZC.mjs';
15
15
 
16
16
  declare const SingleFetchRedirectSymbol: unique symbol;
17
17
  declare function getTurboStreamSingleFetchDataStrategy(getRouter: () => Router, manifest: AssetsManifest, routeModules: RouteModules, ssr: boolean, basename: string | undefined, trailingSlashAware: boolean): DataStrategyFunction;
@@ -1,17 +1,17 @@
1
1
  import { O as RouteModules, l as DataStrategyFunction, t as MiddlewareEnabled, c as RouterContextProvider, u as AppLoadContext, T as To, L as Location, P as Params, U as UIMatch, i as Action, Q as SerializeFrom, V as PathPattern, W as PathMatch, X as ParamParseKey, r as Path, e as RouteObject, G as GetLoaderData, K as GetActionData, Y as InitialEntry, Z as IndexRouteObject, d as LoaderFunction, A as ActionFunction, M as MetaFunction, b as LinksFunction, _ as NonIndexRouteObject, $ as Equal, m as PatchRoutesOnNavigationFunction, n as DataRouteObject, a as ClientLoaderFunction } from './data-CjO11-hU.js';
2
2
  export { a0 as ActionFunctionArgs, a1 as BaseRouteObject, C as ClientActionFunction, ar as ClientActionFunctionArgs, as as ClientLoaderFunctionArgs, D as DataRouteMatch, a2 as DataStrategyFunctionArgs, a3 as DataStrategyMatch, I as DataStrategyResult, a5 as ErrorResponse, F as FormEncType, a6 as FormMethod, ax as Future, q as HTMLFormMethod, at as HeadersArgs, H as HeadersFunction, aw as HtmlLinkDescriptor, a7 as LazyRouteFunction, v as LinkDescriptor, s as LoaderFunctionArgs, au as MetaArgs, y as MetaDescriptor, a8 as MiddlewareFunction, av as PageLinkDescriptor, a9 as PatchRoutesOnNavigationFunctionArgs, aa as PathParam, ab as RedirectFunction, ac as RouteMatch, ad as RouterContext, S as ShouldRevalidateFunction, ae as ShouldRevalidateFunctionArgs, a4 as UNSAFE_DataWithResponseInit, aD as UNSAFE_ErrorResponseImpl, aA as UNSAFE_createBrowserHistory, aB as UNSAFE_createHashHistory, az as UNSAFE_createMemoryHistory, aC as UNSAFE_invariant, af as createContext, ag as createPath, ai as data, aj as generatePath, ak as isRouteErrorResponse, al as matchPath, am as matchRoutes, ah as parsePath, an as redirect, ao as redirectDocument, ap as replace, aq as resolvePath, ay as unstable_SerializesTo } from './data-CjO11-hU.js';
3
- import { a as Router, N as NavigationStates, B as BlockerFunction, b as Blocker, c as RelativeRoutingType, H as HydrationState } from './instrumentation-Dkmpzd13.js';
4
- export { C as ClientInstrumentation, F as Fetcher, G as GetScrollPositionFunction, d as GetScrollRestorationKeyFunction, r as IDLE_BLOCKER, q as IDLE_FETCHER, p as IDLE_NAVIGATION, I as InstrumentRequestHandlerFunction, n as InstrumentRouteFunction, m as InstrumentRouterFunction, o as InstrumentationHandlerResult, f as Navigation, k as RevalidationState, j as RouterFetchOptions, R as RouterInit, i as RouterNavigateOptions, g as RouterState, h as RouterSubscriber, l as ServerInstrumentation, S as StaticHandler, e as StaticHandlerContext, s as UNSAFE_createRouter } from './instrumentation-Dkmpzd13.js';
5
- import { A as AssetsManifest, S as ServerBuild, N as NavigateOptions, E as EntryContext, F as FutureConfig } from './index-react-server-client-3ykjivgQ.js';
6
- export { i as Await, c as AwaitProps, W as BrowserRouter, B as BrowserRouterProps, C as ClientOnErrorFunction, D as DOMRouterOpts, at as DiscoverBehavior, y as FetcherFormProps, Q as FetcherSubmitFunction, aa as FetcherSubmitOptions, T as FetcherWithComponents, $ as Form, z as FormProps, au as HandleDataRequestFunction, av as HandleDocumentRequestFunction, aw as HandleErrorFunction, X as HashRouter, H as HashRouterProps, u as HistoryRouterProps, I as IndexRouteProps, L as LayoutRouteProps, Y as Link, v as LinkProps, an as Links, aq as LinksProps, j as MemoryRouter, M as MemoryRouterOpts, d as MemoryRouterProps, am as Meta, _ as NavLink, w as NavLinkProps, x as NavLinkRenderProps, k as Navigate, e as NavigateProps, a as Navigator, l as Outlet, O as OutletProps, ab as ParamKeyValuePair, P as PathRouteProps, as as PrefetchBehavior, ap as PrefetchPageLinks, m as Route, R as RouteProps, n as Router, f as RouterProps, o as RouterProvider, g as RouterProviderProps, p as Routes, h as RoutesProps, ao as Scripts, ar as ScriptsProps, a0 as ScrollRestoration, G as ScrollRestorationProps, ax as ServerEntryModule, J as SetURLSearchParams, ak as StaticRouter, ag as StaticRouterProps, al as StaticRouterProvider, ah as StaticRouterProviderProps, K as SubmitFunction, ac as SubmitOptions, ae as SubmitTarget, b as UNSAFE_AwaitContextProvider, ay as UNSAFE_DataRouterContext, az as UNSAFE_DataRouterStateContext, aA as UNSAFE_FetchersContext, aN as UNSAFE_FrameworkContext, aB as UNSAFE_LocationContext, aC as UNSAFE_NavigationContext, aD as UNSAFE_RouteContext, aE as UNSAFE_ViewTransitionContext, aH as UNSAFE_WithComponentProps, aL as UNSAFE_WithErrorBoundaryProps, aJ as UNSAFE_WithHydrateFallbackProps, aO as UNSAFE_createClientRoutes, aP as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, aF as UNSAFE_hydrationRouteProperties, aG as UNSAFE_mapRouteProperties, aQ as UNSAFE_shouldHydrateRouteLoader, aR as UNSAFE_useScrollRestoration, aI as UNSAFE_withComponentProps, aM as UNSAFE_withErrorBoundaryProps, aK as UNSAFE_withHydrateFallbackProps, ad as URLSearchParamsInit, U as createBrowserRouter, V as createHashRouter, q as createMemoryRouter, r as createRoutesFromChildren, s as createRoutesFromElements, af as createSearchParams, ai as createStaticHandler, aj as createStaticRouter, t as renderMatches, Z as unstable_HistoryRouter, a8 as unstable_usePrompt, a7 as useBeforeUnload, a5 as useFetcher, a6 as useFetchers, a4 as useFormAction, a1 as useLinkClickHandler, a2 as useSearchParams, a3 as useSubmit, a9 as useViewTransitionState } from './index-react-server-client-3ykjivgQ.js';
3
+ import { a as Router, N as NavigationStates, B as BlockerFunction, b as Blocker, c as RelativeRoutingType, H as HydrationState } from './instrumentation-B7w3_Eo9.js';
4
+ export { C as ClientInstrumentation, F as Fetcher, G as GetScrollPositionFunction, d as GetScrollRestorationKeyFunction, r as IDLE_BLOCKER, q as IDLE_FETCHER, p as IDLE_NAVIGATION, I as InstrumentRequestHandlerFunction, n as InstrumentRouteFunction, m as InstrumentRouterFunction, o as InstrumentationHandlerResult, f as Navigation, k as RevalidationState, j as RouterFetchOptions, R as RouterInit, i as RouterNavigateOptions, g as RouterState, h as RouterSubscriber, l as ServerInstrumentation, S as StaticHandler, e as StaticHandlerContext, s as UNSAFE_createRouter } from './instrumentation-B7w3_Eo9.js';
5
+ import { A as AssetsManifest, S as ServerBuild, N as NavigateOptions, E as EntryContext, F as FutureConfig } from './index-react-server-client-BjY-eKuf.js';
6
+ export { i as Await, c as AwaitProps, W as BrowserRouter, B as BrowserRouterProps, C as ClientOnErrorFunction, D as DOMRouterOpts, at as DiscoverBehavior, y as FetcherFormProps, Q as FetcherSubmitFunction, aa as FetcherSubmitOptions, T as FetcherWithComponents, $ as Form, z as FormProps, au as HandleDataRequestFunction, av as HandleDocumentRequestFunction, aw as HandleErrorFunction, X as HashRouter, H as HashRouterProps, u as HistoryRouterProps, I as IndexRouteProps, L as LayoutRouteProps, Y as Link, v as LinkProps, an as Links, aq as LinksProps, j as MemoryRouter, M as MemoryRouterOpts, d as MemoryRouterProps, am as Meta, _ as NavLink, w as NavLinkProps, x as NavLinkRenderProps, k as Navigate, e as NavigateProps, a as Navigator, l as Outlet, O as OutletProps, ab as ParamKeyValuePair, P as PathRouteProps, as as PrefetchBehavior, ap as PrefetchPageLinks, m as Route, R as RouteProps, n as Router, f as RouterProps, o as RouterProvider, g as RouterProviderProps, p as Routes, h as RoutesProps, ao as Scripts, ar as ScriptsProps, a0 as ScrollRestoration, G as ScrollRestorationProps, ax as ServerEntryModule, J as SetURLSearchParams, ak as StaticRouter, ag as StaticRouterProps, al as StaticRouterProvider, ah as StaticRouterProviderProps, K as SubmitFunction, ac as SubmitOptions, ae as SubmitTarget, b as UNSAFE_AwaitContextProvider, ay as UNSAFE_DataRouterContext, az as UNSAFE_DataRouterStateContext, aA as UNSAFE_FetchersContext, aN as UNSAFE_FrameworkContext, aB as UNSAFE_LocationContext, aC as UNSAFE_NavigationContext, aD as UNSAFE_RouteContext, aE as UNSAFE_ViewTransitionContext, aH as UNSAFE_WithComponentProps, aL as UNSAFE_WithErrorBoundaryProps, aJ as UNSAFE_WithHydrateFallbackProps, aO as UNSAFE_createClientRoutes, aP as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, aF as UNSAFE_hydrationRouteProperties, aG as UNSAFE_mapRouteProperties, aQ as UNSAFE_shouldHydrateRouteLoader, aR as UNSAFE_useScrollRestoration, aI as UNSAFE_withComponentProps, aM as UNSAFE_withErrorBoundaryProps, aK as UNSAFE_withHydrateFallbackProps, ad as URLSearchParamsInit, U as createBrowserRouter, V as createHashRouter, q as createMemoryRouter, r as createRoutesFromChildren, s as createRoutesFromElements, af as createSearchParams, ai as createStaticHandler, aj as createStaticRouter, t as renderMatches, Z as unstable_HistoryRouter, a8 as unstable_usePrompt, a7 as useBeforeUnload, a5 as useFetcher, a6 as useFetchers, a4 as useFormAction, a1 as useLinkClickHandler, a2 as useSearchParams, a3 as useSubmit, a9 as useViewTransitionState } from './index-react-server-client-BjY-eKuf.js';
7
7
  import * as React from 'react';
8
8
  import React__default, { ReactElement } from 'react';
9
9
  import { a as RouteModules$1, P as Pages } from './register-roq_0qYo.js';
10
10
  export { b as Register } from './register-roq_0qYo.js';
11
11
  import { ParseOptions, SerializeOptions } from 'cookie';
12
12
  export { ParseOptions as CookieParseOptions, SerializeOptions as CookieSerializeOptions } from 'cookie';
13
- import { e as RSCPayload, g as getRequest, m as matchRSCServerRequest } from './browser-B2PdsXXH.js';
14
- export { B as unstable_BrowserCreateFromReadableStreamFunction, D as unstable_DecodeActionFunction, a as unstable_DecodeFormStateFunction, b as unstable_DecodeReplyFunction, E as unstable_EncodeReplyFunction, L as unstable_LoadServerActionFunction, h as unstable_RSCHydratedRouterProps, d as unstable_RSCManifestPayload, i as unstable_RSCMatch, f as unstable_RSCRenderPayload, n as unstable_RSCRouteConfig, l as unstable_RSCRouteConfigEntry, j as unstable_RSCRouteManifest, k as unstable_RSCRouteMatch } from './browser-B2PdsXXH.js';
13
+ import { e as RSCPayload, g as getRequest, m as matchRSCServerRequest } from './browser-eq4RgLsD.js';
14
+ export { B as unstable_BrowserCreateFromReadableStreamFunction, D as unstable_DecodeActionFunction, a as unstable_DecodeFormStateFunction, b as unstable_DecodeReplyFunction, E as unstable_EncodeReplyFunction, L as unstable_LoadServerActionFunction, h as unstable_RSCHydratedRouterProps, d as unstable_RSCManifestPayload, i as unstable_RSCMatch, f as unstable_RSCRenderPayload, n as unstable_RSCRouteConfig, l as unstable_RSCRouteConfigEntry, j as unstable_RSCRouteManifest, k as unstable_RSCRouteMatch } from './browser-eq4RgLsD.js';
15
15
 
16
16
  declare const SingleFetchRedirectSymbol: unique symbol;
17
17
  declare function getTurboStreamSingleFetchDataStrategy(getRouter: () => Router, manifest: AssetsManifest, routeModules: RouteModules, ssr: boolean, basename: string | undefined, trailingSlashAware: boolean): DataStrategyFunction;