react-router 7.8.0-pre.0 → 7.8.0-pre.2

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 +12 -0
  2. package/dist/development/{chunk-HSC5IU24.mjs → chunk-3D24XHV2.mjs} +19 -4
  3. package/dist/development/{chunk-IW6UADHO.js → chunk-74TFO7SN.js} +65 -32
  4. package/dist/{production/chunk-BCLZG6QW.js → development/chunk-HQ37R3FK.js} +130 -130
  5. package/dist/development/{chunk-SC4OUYO4.mjs → chunk-WSV33ENW.mjs} +45 -12
  6. package/dist/development/{components-uUh0svuC.d.mts → components-CuPfnyiZ.d.mts} +1 -1
  7. package/dist/{production/context-DZWGFcKX.d.mts → development/context-DohQKLID.d.mts} +6 -7
  8. package/dist/development/dom-export.d.mts +2 -2
  9. package/dist/development/dom-export.js +3 -3
  10. package/dist/development/dom-export.mjs +3 -3
  11. package/dist/{production/index-react-server-client-DSU6bZil.d.ts → development/index-react-server-client-CMphySRb.d.ts} +19 -2
  12. package/dist/{production/index-react-server-client-BUK-oRcG.d.mts → development/index-react-server-client-DXb0OgpJ.d.mts} +21 -4
  13. package/dist/development/index-react-server-client.d.mts +4 -4
  14. package/dist/development/index-react-server-client.d.ts +2 -2
  15. package/dist/development/index-react-server-client.js +4 -4
  16. package/dist/development/index-react-server-client.mjs +2 -2
  17. package/dist/development/index-react-server.d.mts +6 -7
  18. package/dist/development/index-react-server.d.ts +6 -7
  19. package/dist/development/index-react-server.js +82 -35
  20. package/dist/development/index-react-server.mjs +82 -35
  21. package/dist/development/index.d.mts +8 -8
  22. package/dist/development/index.d.ts +4 -4
  23. package/dist/development/index.js +117 -102
  24. package/dist/development/index.mjs +3 -3
  25. package/dist/development/lib/types/internal.d.mts +2 -2
  26. package/dist/development/lib/types/internal.d.ts +1 -1
  27. package/dist/development/lib/types/internal.js +1 -1
  28. package/dist/development/lib/types/internal.mjs +1 -1
  29. package/dist/development/{route-data-UTmTa8an.d.mts → route-data-CpB5xtMm.d.mts} +1 -1
  30. package/dist/development/{routeModules-D5bppTB2.d.ts → routeModules-qBivMBjd.d.ts} +6 -7
  31. package/dist/production/{chunk-YC2ENCM3.js → chunk-DDK3XFL6.js} +65 -32
  32. package/dist/{development/chunk-Z4NNCWGU.js → production/chunk-GSF7DANI.js} +130 -130
  33. package/dist/production/{chunk-X2NPJMV2.mjs → chunk-IEIDJVF4.mjs} +45 -12
  34. package/dist/production/{chunk-KQ5567DT.mjs → chunk-Q6IGLNPQ.mjs} +19 -4
  35. package/dist/production/{components-uUh0svuC.d.mts → components-CuPfnyiZ.d.mts} +1 -1
  36. package/dist/{development/context-DZWGFcKX.d.mts → production/context-DohQKLID.d.mts} +6 -7
  37. package/dist/production/dom-export.d.mts +2 -2
  38. package/dist/production/dom-export.js +3 -3
  39. package/dist/production/dom-export.mjs +3 -3
  40. package/dist/{development/index-react-server-client-DSU6bZil.d.ts → production/index-react-server-client-CMphySRb.d.ts} +19 -2
  41. package/dist/{development/index-react-server-client-BUK-oRcG.d.mts → production/index-react-server-client-DXb0OgpJ.d.mts} +21 -4
  42. package/dist/production/index-react-server-client.d.mts +4 -4
  43. package/dist/production/index-react-server-client.d.ts +2 -2
  44. package/dist/production/index-react-server-client.js +4 -4
  45. package/dist/production/index-react-server-client.mjs +2 -2
  46. package/dist/production/index-react-server.d.mts +6 -7
  47. package/dist/production/index-react-server.d.ts +6 -7
  48. package/dist/production/index-react-server.js +82 -35
  49. package/dist/production/index-react-server.mjs +82 -35
  50. package/dist/production/index.d.mts +8 -8
  51. package/dist/production/index.d.ts +4 -4
  52. package/dist/production/index.js +117 -102
  53. package/dist/production/index.mjs +3 -3
  54. package/dist/production/lib/types/internal.d.mts +2 -2
  55. package/dist/production/lib/types/internal.d.ts +1 -1
  56. package/dist/production/lib/types/internal.js +1 -1
  57. package/dist/production/lib/types/internal.mjs +1 -1
  58. package/dist/production/{route-data-UTmTa8an.d.mts → route-data-CpB5xtMm.d.mts} +1 -1
  59. package/dist/production/{routeModules-D5bppTB2.d.ts → routeModules-qBivMBjd.d.ts} +6 -7
  60. package/package.json +1 -1
@@ -27,7 +27,7 @@ function _interopNamespace(e) {
27
27
  var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
28
28
 
29
29
  /**
30
- * react-router v7.8.0-pre.0
30
+ * react-router v7.8.0-pre.2
31
31
  *
32
32
  * Copyright (c) Remix Software Inc.
33
33
  *
@@ -901,6 +901,9 @@ function createStaticHandler(routes, opts) {
901
901
  return res;
902
902
  },
903
903
  (error) => {
904
+ if (isRouteErrorResponse(error)) {
905
+ return Promise.resolve(errorResponseToResponse(error));
906
+ }
904
907
  if (isResponse(error)) {
905
908
  return Promise.resolve(error);
906
909
  }
@@ -1494,12 +1497,6 @@ async function runServerMiddlewarePipeline(args, handler, errorHandler) {
1494
1497
  handler,
1495
1498
  errorHandler
1496
1499
  );
1497
- if (isDataWithResponseInit(result)) {
1498
- return new Response(
1499
- typeof result.data === "string" ? result.data : JSON.stringify(result.data),
1500
- { ...result.init }
1501
- );
1502
- }
1503
1500
  if (isResponse(result)) {
1504
1501
  return result;
1505
1502
  }
@@ -1536,10 +1533,17 @@ async function callServerRouteMiddleware(args, middlewares, handler, errorHandle
1536
1533
  errorHandler,
1537
1534
  idx + 1
1538
1535
  );
1536
+ if (isDataWithResponseInit(result)) {
1537
+ result = dataWithResponseInitToResponse(result);
1538
+ }
1539
1539
  nextResult = result;
1540
1540
  return nextResult;
1541
1541
  } catch (e) {
1542
- nextResult = await errorHandler(e, routeId);
1542
+ nextResult = await errorHandler(
1543
+ // Convert thrown data() values to ErrorResponses
1544
+ isDataWithResponseInit(e) ? dataWithResponseInitToErrorResponse(e) : e,
1545
+ routeId
1546
+ );
1543
1547
  return nextResult;
1544
1548
  }
1545
1549
  };
@@ -1552,16 +1556,23 @@ async function callServerRouteMiddleware(args, middlewares, handler, errorHandle
1552
1556
  },
1553
1557
  next
1554
1558
  );
1559
+ if (isDataWithResponseInit(result)) {
1560
+ result = dataWithResponseInitToResponse(result);
1561
+ }
1555
1562
  if (nextCalled) {
1556
1563
  return typeof result === "undefined" ? nextResult : result;
1557
- } else if (isResponse(result) || isDataWithResponseInit(result)) {
1564
+ } else if (isResponse(result)) {
1558
1565
  return result;
1559
1566
  } else {
1560
1567
  nextResult = await next();
1561
1568
  return nextResult;
1562
1569
  }
1563
- } catch (error) {
1564
- let response = await errorHandler(error, routeId);
1570
+ } catch (e) {
1571
+ let response = await errorHandler(
1572
+ // Convert thrown data() values to ErrorResponses
1573
+ isDataWithResponseInit(e) ? dataWithResponseInitToErrorResponse(e) : e,
1574
+ routeId
1575
+ );
1565
1576
  return response;
1566
1577
  }
1567
1578
  }
@@ -2000,6 +2011,28 @@ function getInternalRouterError(status, {
2000
2011
  true
2001
2012
  );
2002
2013
  }
2014
+ function dataWithResponseInitToResponse(data2) {
2015
+ return new Response(
2016
+ typeof data2.data === "string" ? data2.data : JSON.stringify(data2.data),
2017
+ data2.init || void 0
2018
+ );
2019
+ }
2020
+ function dataWithResponseInitToErrorResponse(data2) {
2021
+ return new ErrorResponseImpl(
2022
+ data2.init?.status ?? 500,
2023
+ data2.init?.statusText ?? "Internal Server Error",
2024
+ data2.data
2025
+ );
2026
+ }
2027
+ function errorResponseToResponse(error) {
2028
+ return new Response(
2029
+ typeof error.data === "string" ? error.data : JSON.stringify(error.data),
2030
+ {
2031
+ status: error.status,
2032
+ statusText: error.statusText
2033
+ }
2034
+ );
2035
+ }
2003
2036
  function isDataStrategyResult(result) {
2004
2037
  return result != null && typeof result === "object" && "type" in result && "result" in result && (result.type === "data" /* data */ || result.type === "error" /* error */);
2005
2038
  }
@@ -2053,7 +2086,7 @@ function invariant2(value, message) {
2053
2086
  }
2054
2087
 
2055
2088
  // lib/server-runtime/headers.ts
2056
- function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2089
+ function getDocumentHeadersImpl(context, getRouteHeadersFn, _defaultHeaders) {
2057
2090
  let boundaryIdx = context.errors ? context.matches.findIndex((m) => context.errors[m.route.id]) : -1;
2058
2091
  let matches = boundaryIdx >= 0 ? context.matches.slice(0, boundaryIdx + 1) : context.matches;
2059
2092
  let errorHeaders;
@@ -2069,6 +2102,7 @@ function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2069
2102
  return errorHeaders != null;
2070
2103
  });
2071
2104
  }
2105
+ const defaultHeaders = new Headers(_defaultHeaders);
2072
2106
  return matches.reduce((parentHeaders, match, idx) => {
2073
2107
  let { id } = match.route;
2074
2108
  let loaderHeaders = context.loaderHeaders[id] || new Headers();
@@ -2100,7 +2134,7 @@ function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2100
2134
  prependCookies(loaderHeaders, headers);
2101
2135
  prependCookies(parentHeaders, headers);
2102
2136
  return headers;
2103
- }, new Headers());
2137
+ }, new Headers(defaultHeaders));
2104
2138
  }
2105
2139
  function prependCookies(parentHeaders, childHeaders) {
2106
2140
  let parentSetCookieString = parentHeaders.get("Set-Cookie");
@@ -2124,7 +2158,7 @@ var ServerStorage = globalVar.___reactRouterServerStorage___ ?? (globalVar.___re
2124
2158
  var redirect2 = (...args) => {
2125
2159
  const response = redirect(...args);
2126
2160
  const ctx = ServerStorage.getStore();
2127
- if (ctx) {
2161
+ if (ctx && ctx.runningAction) {
2128
2162
  ctx.redirect = response;
2129
2163
  }
2130
2164
  return response;
@@ -2132,7 +2166,7 @@ var redirect2 = (...args) => {
2132
2166
  var redirectDocument2 = (...args) => {
2133
2167
  const response = redirectDocument(...args);
2134
2168
  const ctx = ServerStorage.getStore();
2135
- if (ctx) {
2169
+ if (ctx && ctx.runningAction) {
2136
2170
  ctx.redirect = response;
2137
2171
  }
2138
2172
  return response;
@@ -2140,7 +2174,7 @@ var redirectDocument2 = (...args) => {
2140
2174
  var replace2 = (...args) => {
2141
2175
  const response = replace(...args);
2142
2176
  const ctx = ServerStorage.getStore();
2143
- if (ctx) {
2177
+ if (ctx && ctx.runningAction) {
2144
2178
  ctx.redirect = response;
2145
2179
  }
2146
2180
  return response;
@@ -2396,7 +2430,9 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2396
2430
  })
2397
2431
  });
2398
2432
  let actionResult;
2399
- const ctx = {};
2433
+ const ctx = {
2434
+ runningAction: false
2435
+ };
2400
2436
  const result = await ServerStorage.run(
2401
2437
  ctx,
2402
2438
  () => staticHandler.query(request, {
@@ -2407,6 +2443,7 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2407
2443
  async unstable_generateMiddlewareResponse(query) {
2408
2444
  let formState;
2409
2445
  if (request.method === "POST") {
2446
+ ctx.runningAction = true;
2410
2447
  let result2 = await processServerAction(
2411
2448
  request,
2412
2449
  basename,
@@ -2417,6 +2454,7 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2417
2454
  onError,
2418
2455
  temporaryReferences
2419
2456
  );
2457
+ ctx.runningAction = false;
2420
2458
  if (isResponse(result2)) {
2421
2459
  return generateRedirectResponse(
2422
2460
  result2,
@@ -2424,22 +2462,24 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2424
2462
  basename,
2425
2463
  isDataRequest,
2426
2464
  generateResponse,
2427
- temporaryReferences
2465
+ temporaryReferences,
2466
+ ctx.redirect?.headers
2428
2467
  );
2429
2468
  }
2430
2469
  actionResult = result2?.actionResult;
2431
2470
  formState = result2?.formState;
2432
2471
  request = result2?.revalidationRequest ?? request;
2433
- }
2434
- if (ctx.redirect) {
2435
- return generateRedirectResponse(
2436
- ctx.redirect,
2437
- actionResult,
2438
- basename,
2439
- isDataRequest,
2440
- generateResponse,
2441
- temporaryReferences
2442
- );
2472
+ if (ctx.redirect) {
2473
+ return generateRedirectResponse(
2474
+ ctx.redirect,
2475
+ actionResult,
2476
+ basename,
2477
+ isDataRequest,
2478
+ generateResponse,
2479
+ temporaryReferences,
2480
+ void 0
2481
+ );
2482
+ }
2443
2483
  }
2444
2484
  let staticContext = await query(request);
2445
2485
  if (isResponse(staticContext)) {
@@ -2449,7 +2489,8 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2449
2489
  basename,
2450
2490
  isDataRequest,
2451
2491
  generateResponse,
2452
- temporaryReferences
2492
+ temporaryReferences,
2493
+ ctx.redirect?.headers
2453
2494
  );
2454
2495
  }
2455
2496
  return generateStaticContextResponse(
@@ -2463,7 +2504,8 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2463
2504
  actionResult,
2464
2505
  formState,
2465
2506
  staticContext,
2466
- temporaryReferences
2507
+ temporaryReferences,
2508
+ ctx.redirect?.headers
2467
2509
  );
2468
2510
  }
2469
2511
  })
@@ -2475,13 +2517,14 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2475
2517
  basename,
2476
2518
  isDataRequest,
2477
2519
  generateResponse,
2478
- temporaryReferences
2520
+ temporaryReferences,
2521
+ ctx.redirect?.headers
2479
2522
  );
2480
2523
  }
2481
2524
  invariant2(isResponse(result), "Expected a response from query");
2482
2525
  return result;
2483
2526
  }
2484
- function generateRedirectResponse(response, actionResult, basename, isDataRequest, generateResponse, temporaryReferences) {
2527
+ function generateRedirectResponse(response, actionResult, basename, isDataRequest, generateResponse, temporaryReferences, sideEffectRedirectHeaders) {
2485
2528
  let redirect3 = response.headers.get("Location");
2486
2529
  if (isDataRequest && basename) {
2487
2530
  redirect3 = stripBasename(redirect3, basename) || redirect3;
@@ -2494,7 +2537,10 @@ function generateRedirectResponse(response, actionResult, basename, isDataReques
2494
2537
  status: response.status,
2495
2538
  actionResult
2496
2539
  };
2497
- let headers = new Headers(response.headers);
2540
+ let headers = new Headers(sideEffectRedirectHeaders);
2541
+ for (const [key, value] of response.headers.entries()) {
2542
+ headers.append(key, value);
2543
+ }
2498
2544
  headers.delete("Location");
2499
2545
  headers.delete("X-Remix-Reload-Document");
2500
2546
  headers.delete("X-Remix-Replace");
@@ -2510,7 +2556,7 @@ function generateRedirectResponse(response, actionResult, basename, isDataReques
2510
2556
  { temporaryReferences }
2511
2557
  );
2512
2558
  }
2513
- async function generateStaticContextResponse(routes, basename, generateResponse, statusCode, routeIdsToLoad, isDataRequest, isSubmission, actionResult, formState, staticContext, temporaryReferences) {
2559
+ async function generateStaticContextResponse(routes, basename, generateResponse, statusCode, routeIdsToLoad, isDataRequest, isSubmission, actionResult, formState, staticContext, temporaryReferences, sideEffectRedirectHeaders) {
2514
2560
  statusCode = staticContext.statusCode ?? statusCode;
2515
2561
  if (staticContext.errors) {
2516
2562
  staticContext.errors = Object.fromEntries(
@@ -2531,7 +2577,8 @@ async function generateStaticContextResponse(routes, basename, generateResponse,
2531
2577
  });
2532
2578
  let headers = getDocumentHeadersImpl(
2533
2579
  staticContext,
2534
- (match) => match.route.headers
2580
+ (match) => match.route.headers,
2581
+ sideEffectRedirectHeaders
2535
2582
  );
2536
2583
  headers.delete("Content-Length");
2537
2584
  const baseRenderPayload = {
@@ -6,7 +6,7 @@ export { Await, BrowserRouter, Form, HashRouter, Link, Links, MemoryRouter, Meta
6
6
  import { serialize, parse } from 'cookie';
7
7
 
8
8
  /**
9
- * react-router v7.8.0-pre.0
9
+ * react-router v7.8.0-pre.2
10
10
  *
11
11
  * Copyright (c) Remix Software Inc.
12
12
  *
@@ -880,6 +880,9 @@ function createStaticHandler(routes, opts) {
880
880
  return res;
881
881
  },
882
882
  (error) => {
883
+ if (isRouteErrorResponse(error)) {
884
+ return Promise.resolve(errorResponseToResponse(error));
885
+ }
883
886
  if (isResponse(error)) {
884
887
  return Promise.resolve(error);
885
888
  }
@@ -1473,12 +1476,6 @@ async function runServerMiddlewarePipeline(args, handler, errorHandler) {
1473
1476
  handler,
1474
1477
  errorHandler
1475
1478
  );
1476
- if (isDataWithResponseInit(result)) {
1477
- return new Response(
1478
- typeof result.data === "string" ? result.data : JSON.stringify(result.data),
1479
- { ...result.init }
1480
- );
1481
- }
1482
1479
  if (isResponse(result)) {
1483
1480
  return result;
1484
1481
  }
@@ -1515,10 +1512,17 @@ async function callServerRouteMiddleware(args, middlewares, handler, errorHandle
1515
1512
  errorHandler,
1516
1513
  idx + 1
1517
1514
  );
1515
+ if (isDataWithResponseInit(result)) {
1516
+ result = dataWithResponseInitToResponse(result);
1517
+ }
1518
1518
  nextResult = result;
1519
1519
  return nextResult;
1520
1520
  } catch (e) {
1521
- nextResult = await errorHandler(e, routeId);
1521
+ nextResult = await errorHandler(
1522
+ // Convert thrown data() values to ErrorResponses
1523
+ isDataWithResponseInit(e) ? dataWithResponseInitToErrorResponse(e) : e,
1524
+ routeId
1525
+ );
1522
1526
  return nextResult;
1523
1527
  }
1524
1528
  };
@@ -1531,16 +1535,23 @@ async function callServerRouteMiddleware(args, middlewares, handler, errorHandle
1531
1535
  },
1532
1536
  next
1533
1537
  );
1538
+ if (isDataWithResponseInit(result)) {
1539
+ result = dataWithResponseInitToResponse(result);
1540
+ }
1534
1541
  if (nextCalled) {
1535
1542
  return typeof result === "undefined" ? nextResult : result;
1536
- } else if (isResponse(result) || isDataWithResponseInit(result)) {
1543
+ } else if (isResponse(result)) {
1537
1544
  return result;
1538
1545
  } else {
1539
1546
  nextResult = await next();
1540
1547
  return nextResult;
1541
1548
  }
1542
- } catch (error) {
1543
- let response = await errorHandler(error, routeId);
1549
+ } catch (e) {
1550
+ let response = await errorHandler(
1551
+ // Convert thrown data() values to ErrorResponses
1552
+ isDataWithResponseInit(e) ? dataWithResponseInitToErrorResponse(e) : e,
1553
+ routeId
1554
+ );
1544
1555
  return response;
1545
1556
  }
1546
1557
  }
@@ -1979,6 +1990,28 @@ function getInternalRouterError(status, {
1979
1990
  true
1980
1991
  );
1981
1992
  }
1993
+ function dataWithResponseInitToResponse(data2) {
1994
+ return new Response(
1995
+ typeof data2.data === "string" ? data2.data : JSON.stringify(data2.data),
1996
+ data2.init || void 0
1997
+ );
1998
+ }
1999
+ function dataWithResponseInitToErrorResponse(data2) {
2000
+ return new ErrorResponseImpl(
2001
+ data2.init?.status ?? 500,
2002
+ data2.init?.statusText ?? "Internal Server Error",
2003
+ data2.data
2004
+ );
2005
+ }
2006
+ function errorResponseToResponse(error) {
2007
+ return new Response(
2008
+ typeof error.data === "string" ? error.data : JSON.stringify(error.data),
2009
+ {
2010
+ status: error.status,
2011
+ statusText: error.statusText
2012
+ }
2013
+ );
2014
+ }
1982
2015
  function isDataStrategyResult(result) {
1983
2016
  return result != null && typeof result === "object" && "type" in result && "result" in result && (result.type === "data" /* data */ || result.type === "error" /* error */);
1984
2017
  }
@@ -2032,7 +2065,7 @@ function invariant2(value, message) {
2032
2065
  }
2033
2066
 
2034
2067
  // lib/server-runtime/headers.ts
2035
- function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2068
+ function getDocumentHeadersImpl(context, getRouteHeadersFn, _defaultHeaders) {
2036
2069
  let boundaryIdx = context.errors ? context.matches.findIndex((m) => context.errors[m.route.id]) : -1;
2037
2070
  let matches = boundaryIdx >= 0 ? context.matches.slice(0, boundaryIdx + 1) : context.matches;
2038
2071
  let errorHeaders;
@@ -2048,6 +2081,7 @@ function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2048
2081
  return errorHeaders != null;
2049
2082
  });
2050
2083
  }
2084
+ const defaultHeaders = new Headers(_defaultHeaders);
2051
2085
  return matches.reduce((parentHeaders, match, idx) => {
2052
2086
  let { id } = match.route;
2053
2087
  let loaderHeaders = context.loaderHeaders[id] || new Headers();
@@ -2079,7 +2113,7 @@ function getDocumentHeadersImpl(context, getRouteHeadersFn) {
2079
2113
  prependCookies(loaderHeaders, headers);
2080
2114
  prependCookies(parentHeaders, headers);
2081
2115
  return headers;
2082
- }, new Headers());
2116
+ }, new Headers(defaultHeaders));
2083
2117
  }
2084
2118
  function prependCookies(parentHeaders, childHeaders) {
2085
2119
  let parentSetCookieString = parentHeaders.get("Set-Cookie");
@@ -2103,7 +2137,7 @@ var ServerStorage = globalVar.___reactRouterServerStorage___ ?? (globalVar.___re
2103
2137
  var redirect2 = (...args) => {
2104
2138
  const response = redirect(...args);
2105
2139
  const ctx = ServerStorage.getStore();
2106
- if (ctx) {
2140
+ if (ctx && ctx.runningAction) {
2107
2141
  ctx.redirect = response;
2108
2142
  }
2109
2143
  return response;
@@ -2111,7 +2145,7 @@ var redirect2 = (...args) => {
2111
2145
  var redirectDocument2 = (...args) => {
2112
2146
  const response = redirectDocument(...args);
2113
2147
  const ctx = ServerStorage.getStore();
2114
- if (ctx) {
2148
+ if (ctx && ctx.runningAction) {
2115
2149
  ctx.redirect = response;
2116
2150
  }
2117
2151
  return response;
@@ -2119,7 +2153,7 @@ var redirectDocument2 = (...args) => {
2119
2153
  var replace2 = (...args) => {
2120
2154
  const response = replace(...args);
2121
2155
  const ctx = ServerStorage.getStore();
2122
- if (ctx) {
2156
+ if (ctx && ctx.runningAction) {
2123
2157
  ctx.redirect = response;
2124
2158
  }
2125
2159
  return response;
@@ -2375,7 +2409,9 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2375
2409
  })
2376
2410
  });
2377
2411
  let actionResult;
2378
- const ctx = {};
2412
+ const ctx = {
2413
+ runningAction: false
2414
+ };
2379
2415
  const result = await ServerStorage.run(
2380
2416
  ctx,
2381
2417
  () => staticHandler.query(request, {
@@ -2386,6 +2422,7 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2386
2422
  async unstable_generateMiddlewareResponse(query) {
2387
2423
  let formState;
2388
2424
  if (request.method === "POST") {
2425
+ ctx.runningAction = true;
2389
2426
  let result2 = await processServerAction(
2390
2427
  request,
2391
2428
  basename,
@@ -2396,6 +2433,7 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2396
2433
  onError,
2397
2434
  temporaryReferences
2398
2435
  );
2436
+ ctx.runningAction = false;
2399
2437
  if (isResponse(result2)) {
2400
2438
  return generateRedirectResponse(
2401
2439
  result2,
@@ -2403,22 +2441,24 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2403
2441
  basename,
2404
2442
  isDataRequest,
2405
2443
  generateResponse,
2406
- temporaryReferences
2444
+ temporaryReferences,
2445
+ ctx.redirect?.headers
2407
2446
  );
2408
2447
  }
2409
2448
  actionResult = result2?.actionResult;
2410
2449
  formState = result2?.formState;
2411
2450
  request = result2?.revalidationRequest ?? request;
2412
- }
2413
- if (ctx.redirect) {
2414
- return generateRedirectResponse(
2415
- ctx.redirect,
2416
- actionResult,
2417
- basename,
2418
- isDataRequest,
2419
- generateResponse,
2420
- temporaryReferences
2421
- );
2451
+ if (ctx.redirect) {
2452
+ return generateRedirectResponse(
2453
+ ctx.redirect,
2454
+ actionResult,
2455
+ basename,
2456
+ isDataRequest,
2457
+ generateResponse,
2458
+ temporaryReferences,
2459
+ void 0
2460
+ );
2461
+ }
2422
2462
  }
2423
2463
  let staticContext = await query(request);
2424
2464
  if (isResponse(staticContext)) {
@@ -2428,7 +2468,8 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2428
2468
  basename,
2429
2469
  isDataRequest,
2430
2470
  generateResponse,
2431
- temporaryReferences
2471
+ temporaryReferences,
2472
+ ctx.redirect?.headers
2432
2473
  );
2433
2474
  }
2434
2475
  return generateStaticContextResponse(
@@ -2442,7 +2483,8 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2442
2483
  actionResult,
2443
2484
  formState,
2444
2485
  staticContext,
2445
- temporaryReferences
2486
+ temporaryReferences,
2487
+ ctx.redirect?.headers
2446
2488
  );
2447
2489
  }
2448
2490
  })
@@ -2454,13 +2496,14 @@ async function generateRenderResponse(request, routes, basename, isDataRequest,
2454
2496
  basename,
2455
2497
  isDataRequest,
2456
2498
  generateResponse,
2457
- temporaryReferences
2499
+ temporaryReferences,
2500
+ ctx.redirect?.headers
2458
2501
  );
2459
2502
  }
2460
2503
  invariant2(isResponse(result), "Expected a response from query");
2461
2504
  return result;
2462
2505
  }
2463
- function generateRedirectResponse(response, actionResult, basename, isDataRequest, generateResponse, temporaryReferences) {
2506
+ function generateRedirectResponse(response, actionResult, basename, isDataRequest, generateResponse, temporaryReferences, sideEffectRedirectHeaders) {
2464
2507
  let redirect3 = response.headers.get("Location");
2465
2508
  if (isDataRequest && basename) {
2466
2509
  redirect3 = stripBasename(redirect3, basename) || redirect3;
@@ -2473,7 +2516,10 @@ function generateRedirectResponse(response, actionResult, basename, isDataReques
2473
2516
  status: response.status,
2474
2517
  actionResult
2475
2518
  };
2476
- let headers = new Headers(response.headers);
2519
+ let headers = new Headers(sideEffectRedirectHeaders);
2520
+ for (const [key, value] of response.headers.entries()) {
2521
+ headers.append(key, value);
2522
+ }
2477
2523
  headers.delete("Location");
2478
2524
  headers.delete("X-Remix-Reload-Document");
2479
2525
  headers.delete("X-Remix-Replace");
@@ -2489,7 +2535,7 @@ function generateRedirectResponse(response, actionResult, basename, isDataReques
2489
2535
  { temporaryReferences }
2490
2536
  );
2491
2537
  }
2492
- async function generateStaticContextResponse(routes, basename, generateResponse, statusCode, routeIdsToLoad, isDataRequest, isSubmission, actionResult, formState, staticContext, temporaryReferences) {
2538
+ async function generateStaticContextResponse(routes, basename, generateResponse, statusCode, routeIdsToLoad, isDataRequest, isSubmission, actionResult, formState, staticContext, temporaryReferences, sideEffectRedirectHeaders) {
2493
2539
  statusCode = staticContext.statusCode ?? statusCode;
2494
2540
  if (staticContext.errors) {
2495
2541
  staticContext.errors = Object.fromEntries(
@@ -2510,7 +2556,8 @@ async function generateStaticContextResponse(routes, basename, generateResponse,
2510
2556
  });
2511
2557
  let headers = getDocumentHeadersImpl(
2512
2558
  staticContext,
2513
- (match) => match.route.headers
2559
+ (match) => match.route.headers,
2560
+ sideEffectRedirectHeaders
2514
2561
  );
2515
2562
  headers.delete("Content-Length");
2516
2563
  const baseRenderPayload = {
@@ -1,13 +1,13 @@
1
- import { R as Router, D as DataStrategyFunction, T as To, q as NavigateOptions, B as BlockerFunction, r as Blocker, a as RelativeRoutingType, c as Location, s as ParamParseKey, t as Path, v as PathPattern, w as PathMatch, U as UIMatch, x as Navigation, A as Action, h as Params, f as RouteObject, I as InitialEntry, H as HydrationState, b as IndexRouteObject, l as LoaderFunction, k as ActionFunction, N as NonIndexRouteObject, o as unstable_RouterContextProvider, M as MiddlewareEnabled, S as ShouldRevalidateFunction, e as RouterInit, y as RouterState, P as PatchRoutesOnNavigationFunction, z as DataRouteObject } from './context-DZWGFcKX.mjs';
2
- export { i as ActionFunctionArgs, m as DataRouteMatch, Y as DataStrategyFunctionArgs, Z as DataStrategyMatch, _ as DataStrategyResult, $ as ErrorResponse, K as Fetcher, a0 as FormEncType, a1 as FormMethod, an as Future, G as GetScrollPositionFunction, E as GetScrollRestorationKeyFunction, a2 as HTMLFormMethod, ac as IDLE_BLOCKER, ab as IDLE_FETCHER, aa as IDLE_NAVIGATION, L as LazyRouteFunction, j as LoaderFunctionArgs, O as NavigationStates, d as Navigator, am as PatchRoutesOnNavigationFunctionArgs, a3 as PathParam, a4 as RedirectFunction, X as RevalidationState, g as RouteMatch, W as RouterFetchOptions, V as RouterNavigateOptions, Q as RouterSubscriber, a6 as ShouldRevalidateFunctionArgs, C as StaticHandler, J as StaticHandlerContext, as as UNSAFE_DataRouterContext, at as UNSAFE_DataRouterStateContext, p as UNSAFE_DataWithResponseInit, ar as UNSAFE_ErrorResponseImpl, au as UNSAFE_FetchersContext, av as UNSAFE_LocationContext, aw as UNSAFE_NavigationContext, ax as UNSAFE_RouteContext, ay as UNSAFE_ViewTransitionContext, ao as UNSAFE_createBrowserHistory, aq as UNSAFE_createRouter, ap as UNSAFE_invariant, a8 as createPath, ad as data, ae as generatePath, af as isRouteErrorResponse, ag as matchPath, ah as matchRoutes, a9 as parsePath, ai as redirect, aj as redirectDocument, ak as replace, al as resolvePath, n as unstable_MiddlewareFunction, a5 as unstable_RouterContext, a7 as unstable_createContext } from './context-DZWGFcKX.mjs';
3
- import { a as RouteComponentType, H as HydrateFallbackType, E as ErrorBoundaryType } from './components-uUh0svuC.mjs';
4
- export { f as Await, A as AwaitProps, I as IndexRouteProps, L as LayoutRouteProps, g as MemoryRouter, M as MemoryRouterOpts, b as MemoryRouterProps, h as Navigate, N as NavigateProps, i as Outlet, O as OutletProps, P as PathRouteProps, j as Route, c as RouteProps, k as Router, d as RouterProps, l as RouterProvider, R as RouterProviderProps, m as Routes, e as RoutesProps, W as UNSAFE_WithComponentProps, v as UNSAFE_WithErrorBoundaryProps, t as UNSAFE_WithHydrateFallbackProps, q as UNSAFE_hydrationRouteProperties, s as UNSAFE_mapRouteProperties, w as UNSAFE_withComponentProps, x as UNSAFE_withErrorBoundaryProps, u as UNSAFE_withHydrateFallbackProps, n as createMemoryRouter, o as createRoutesFromChildren, p as createRoutesFromElements, r as renderMatches } from './components-uUh0svuC.mjs';
1
+ import { R as Router, D as DataStrategyFunction, T as To, q as NavigateOptions, B as BlockerFunction, r as Blocker, a as RelativeRoutingType, c as Location, s as ParamParseKey, t as Path, v as PathPattern, w as PathMatch, U as UIMatch, x as Navigation, A as Action, h as Params, f as RouteObject, I as InitialEntry, H as HydrationState, b as IndexRouteObject, l as LoaderFunction, k as ActionFunction, N as NonIndexRouteObject, o as unstable_RouterContextProvider, M as MiddlewareEnabled, S as ShouldRevalidateFunction, e as RouterInit, y as RouterState, P as PatchRoutesOnNavigationFunction, z as DataRouteObject } from './context-DohQKLID.mjs';
2
+ export { i as ActionFunctionArgs, m as DataRouteMatch, Y as DataStrategyFunctionArgs, Z as DataStrategyMatch, _ as DataStrategyResult, $ as ErrorResponse, K as Fetcher, a0 as FormEncType, a1 as FormMethod, an as Future, G as GetScrollPositionFunction, E as GetScrollRestorationKeyFunction, a2 as HTMLFormMethod, ac as IDLE_BLOCKER, ab as IDLE_FETCHER, aa as IDLE_NAVIGATION, L as LazyRouteFunction, j as LoaderFunctionArgs, O as NavigationStates, d as Navigator, am as PatchRoutesOnNavigationFunctionArgs, a3 as PathParam, a4 as RedirectFunction, X as RevalidationState, g as RouteMatch, W as RouterFetchOptions, V as RouterNavigateOptions, Q as RouterSubscriber, a6 as ShouldRevalidateFunctionArgs, C as StaticHandler, J as StaticHandlerContext, as as UNSAFE_DataRouterContext, at as UNSAFE_DataRouterStateContext, p as UNSAFE_DataWithResponseInit, ar as UNSAFE_ErrorResponseImpl, au as UNSAFE_FetchersContext, av as UNSAFE_LocationContext, aw as UNSAFE_NavigationContext, ax as UNSAFE_RouteContext, ay as UNSAFE_ViewTransitionContext, ao as UNSAFE_createBrowserHistory, aq as UNSAFE_createRouter, ap as UNSAFE_invariant, a8 as createPath, ad as data, ae as generatePath, af as isRouteErrorResponse, ag as matchPath, ah as matchRoutes, a9 as parsePath, ai as redirect, aj as redirectDocument, ak as replace, al as resolvePath, n as unstable_MiddlewareFunction, a5 as unstable_RouterContext, a7 as unstable_createContext } from './context-DohQKLID.mjs';
3
+ import { a as RouteComponentType, H as HydrateFallbackType, E as ErrorBoundaryType } from './components-CuPfnyiZ.mjs';
4
+ export { f as Await, A as AwaitProps, I as IndexRouteProps, L as LayoutRouteProps, g as MemoryRouter, M as MemoryRouterOpts, b as MemoryRouterProps, h as Navigate, N as NavigateProps, i as Outlet, O as OutletProps, P as PathRouteProps, j as Route, c as RouteProps, k as Router, d as RouterProps, l as RouterProvider, R as RouterProviderProps, m as Routes, e as RoutesProps, W as UNSAFE_WithComponentProps, v as UNSAFE_WithErrorBoundaryProps, t as UNSAFE_WithHydrateFallbackProps, q as UNSAFE_hydrationRouteProperties, s as UNSAFE_mapRouteProperties, w as UNSAFE_withComponentProps, x as UNSAFE_withErrorBoundaryProps, u as UNSAFE_withHydrateFallbackProps, n as createMemoryRouter, o as createRoutesFromChildren, p as createRoutesFromElements, r as renderMatches } from './components-CuPfnyiZ.mjs';
5
5
  import * as React from 'react';
6
6
  import React__default, { ReactElement } from 'react';
7
- import { c as RouteModules, d as SerializeFrom, e as MetaFunction, f as LinksFunction, A as AppLoadContext, E as Equal, g as ClientActionFunction, h as ClientLoaderFunction, H as HeadersFunction } from './route-data-UTmTa8an.mjs';
8
- export { i as ClientActionFunctionArgs, j as ClientLoaderFunctionArgs, k as HeadersArgs, n as HtmlLinkDescriptor, L as LinkDescriptor, l as MetaArgs, M as MetaDescriptor, m as PageLinkDescriptor, u as unstable_SerializesTo } from './route-data-UTmTa8an.mjs';
9
- import { A as AssetsManifest, E as EntryContext, F as FutureConfig, S as ServerBuild } from './index-react-server-client-BUK-oRcG.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-BUK-oRcG.mjs';
7
+ import { c as RouteModules, d as SerializeFrom, e as MetaFunction, f as LinksFunction, A as AppLoadContext, E as Equal, g as ClientActionFunction, h as ClientLoaderFunction, H as HeadersFunction } from './route-data-CpB5xtMm.mjs';
8
+ export { i as ClientActionFunctionArgs, j as ClientLoaderFunctionArgs, k as HeadersArgs, n as HtmlLinkDescriptor, L as LinkDescriptor, l as MetaArgs, M as MetaDescriptor, m as PageLinkDescriptor, u as unstable_SerializesTo } from './route-data-CpB5xtMm.mjs';
9
+ import { A as AssetsManifest, E as EntryContext, F as FutureConfig, S as ServerBuild } from './index-react-server-client-DXb0OgpJ.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-DXb0OgpJ.mjs';
11
11
  import { ParseOptions, SerializeOptions } from 'cookie';
12
12
  export { ParseOptions as CookieParseOptions, SerializeOptions as CookieSerializeOptions } from 'cookie';
13
13
  import { P as Pages } from './register-DiOIlEq5.mjs';
@@ -1,7 +1,7 @@
1
- import { d as Router, e as RouteModules, D as DataStrategyFunction, T as To, f as NavigateOptions, B as BlockerFunction, g as Blocker, h as SerializeFrom, i as RelativeRoutingType, a as Location, j as ParamParseKey, k as Path, l as PathPattern, m as PathMatch, U as UIMatch, n as Navigation, A as Action, o as Params, p as RouteObject, I as InitialEntry, H as HydrationState, q as IndexRouteObject, r as LoaderFunction, s as ActionFunction, t as MetaFunction, v as LinksFunction, w as NonIndexRouteObject, x as AppLoadContext, y as unstable_RouterContextProvider, z as MiddlewareEnabled, E as Equal, F as ClientActionFunction, J as ClientLoaderFunction, K as HeadersFunction, O as ShouldRevalidateFunction, Q as RouterInit, V as RouterState, W as PatchRoutesOnNavigationFunction, X as DataRouteObject } from './routeModules-D5bppTB2.js';
2
- export { a6 as ActionFunctionArgs, aF as ClientActionFunctionArgs, aG as ClientLoaderFunctionArgs, aB as DataRouteMatch, a7 as DataStrategyFunctionArgs, a8 as DataStrategyMatch, a9 as DataStrategyResult, ab as ErrorResponse, a0 as Fetcher, ac as FormEncType, ad as FormMethod, aL as Future, Z as GetScrollPositionFunction, _ as GetScrollRestorationKeyFunction, ae as HTMLFormMethod, aH as HeadersArgs, aK as HtmlLinkDescriptor, ar as IDLE_BLOCKER, aq as IDLE_FETCHER, ap as IDLE_NAVIGATION, af as LazyRouteFunction, L as LinkDescriptor, ag as LoaderFunctionArgs, aI as MetaArgs, M as MetaDescriptor, a1 as NavigationStates, aC as Navigator, aJ as PageLinkDescriptor, aD as PatchRoutesOnNavigationFunctionArgs, ai as PathParam, aj as RedirectFunction, a5 as RevalidationState, aE as RouteMatch, a4 as RouterFetchOptions, a3 as RouterNavigateOptions, a2 as RouterSubscriber, al as ShouldRevalidateFunctionArgs, Y as StaticHandler, $ as StaticHandlerContext, aR as UNSAFE_DataRouterContext, aS as UNSAFE_DataRouterStateContext, aa as UNSAFE_DataWithResponseInit, aQ as UNSAFE_ErrorResponseImpl, aT as UNSAFE_FetchersContext, aU as UNSAFE_LocationContext, aV as UNSAFE_NavigationContext, aW as UNSAFE_RouteContext, aX as UNSAFE_ViewTransitionContext, aN as UNSAFE_createBrowserHistory, aP as UNSAFE_createRouter, aO as UNSAFE_invariant, an as createPath, as as data, at as generatePath, au as isRouteErrorResponse, av as matchPath, aw as matchRoutes, ao as parsePath, ax as redirect, ay as redirectDocument, az as replace, aA as resolvePath, ah as unstable_MiddlewareFunction, ak as unstable_RouterContext, aM as unstable_SerializesTo, am as unstable_createContext } from './routeModules-D5bppTB2.js';
3
- import { A as AssetsManifest, E as EntryContext, F as FutureConfig, R as RouteComponentType, H as HydrateFallbackType, a as ErrorBoundaryType, S as ServerBuild } from './index-react-server-client-DSU6bZil.js';
4
- export { h as Await, b as AwaitProps, V as BrowserRouter, B as BrowserRouterProps, D as DOMRouterOpts, as as DiscoverBehavior, y as FetcherFormProps, K as FetcherSubmitFunction, a9 as FetcherSubmitOptions, Q as FetcherWithComponents, _ as Form, z as FormProps, at as HandleDataRequestFunction, au as HandleDocumentRequestFunction, av as HandleErrorFunction, W as HashRouter, t as HashRouterProps, u as HistoryRouterProps, I as IndexRouteProps, L as LayoutRouteProps, X as Link, v as LinkProps, am as Links, ap as LinksProps, i as MemoryRouter, M as MemoryRouterOpts, c as MemoryRouterProps, al as Meta, Z as NavLink, w as NavLinkProps, x as NavLinkRenderProps, j as Navigate, N as NavigateProps, k as Outlet, O as OutletProps, aa as ParamKeyValuePair, P as PathRouteProps, ar as PrefetchBehavior, ao as PrefetchPageLinks, l as Route, d as RouteProps, m as Router, e as RouterProps, n as RouterProvider, f as RouterProviderProps, o as Routes, g as RoutesProps, an as Scripts, aq as ScriptsProps, $ as ScrollRestoration, C as ScrollRestorationProps, aw as ServerEntryModule, G as SetURLSearchParams, aj as StaticRouter, af as StaticRouterProps, ak as StaticRouterProvider, ag as StaticRouterProviderProps, J as SubmitFunction, ab as SubmitOptions, ad as SubmitTarget, aF as UNSAFE_FrameworkContext, az as UNSAFE_WithComponentProps, aD as UNSAFE_WithErrorBoundaryProps, aB as UNSAFE_WithHydrateFallbackProps, aG as UNSAFE_createClientRoutes, aH as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, ax as UNSAFE_hydrationRouteProperties, ay as UNSAFE_mapRouteProperties, aI as UNSAFE_shouldHydrateRouteLoader, aJ as UNSAFE_useScrollRestoration, aA as UNSAFE_withComponentProps, aE as UNSAFE_withErrorBoundaryProps, aC as UNSAFE_withHydrateFallbackProps, ac as URLSearchParamsInit, T as createBrowserRouter, U as createHashRouter, p as createMemoryRouter, q as createRoutesFromChildren, r as createRoutesFromElements, ae as createSearchParams, ah as createStaticHandler, ai as createStaticRouter, s as renderMatches, Y as unstable_HistoryRouter, a7 as unstable_usePrompt, a6 as useBeforeUnload, a4 as useFetcher, a5 as useFetchers, a3 as useFormAction, a0 as useLinkClickHandler, a1 as useSearchParams, a2 as useSubmit, a8 as useViewTransitionState } from './index-react-server-client-DSU6bZil.js';
1
+ import { d as Router, e as RouteModules, D as DataStrategyFunction, T as To, f as NavigateOptions, B as BlockerFunction, g as Blocker, h as SerializeFrom, i as RelativeRoutingType, a as Location, j as ParamParseKey, k as Path, l as PathPattern, m as PathMatch, U as UIMatch, n as Navigation, A as Action, o as Params, p as RouteObject, I as InitialEntry, H as HydrationState, q as IndexRouteObject, r as LoaderFunction, s as ActionFunction, t as MetaFunction, v as LinksFunction, w as NonIndexRouteObject, x as AppLoadContext, y as unstable_RouterContextProvider, z as MiddlewareEnabled, E as Equal, F as ClientActionFunction, J as ClientLoaderFunction, K as HeadersFunction, O as ShouldRevalidateFunction, Q as RouterInit, V as RouterState, W as PatchRoutesOnNavigationFunction, X as DataRouteObject } from './routeModules-qBivMBjd.js';
2
+ export { a6 as ActionFunctionArgs, aF as ClientActionFunctionArgs, aG as ClientLoaderFunctionArgs, aB as DataRouteMatch, a7 as DataStrategyFunctionArgs, a8 as DataStrategyMatch, a9 as DataStrategyResult, ab as ErrorResponse, a0 as Fetcher, ac as FormEncType, ad as FormMethod, aL as Future, Z as GetScrollPositionFunction, _ as GetScrollRestorationKeyFunction, ae as HTMLFormMethod, aH as HeadersArgs, aK as HtmlLinkDescriptor, ar as IDLE_BLOCKER, aq as IDLE_FETCHER, ap as IDLE_NAVIGATION, af as LazyRouteFunction, L as LinkDescriptor, ag as LoaderFunctionArgs, aI as MetaArgs, M as MetaDescriptor, a1 as NavigationStates, aC as Navigator, aJ as PageLinkDescriptor, aD as PatchRoutesOnNavigationFunctionArgs, ai as PathParam, aj as RedirectFunction, a5 as RevalidationState, aE as RouteMatch, a4 as RouterFetchOptions, a3 as RouterNavigateOptions, a2 as RouterSubscriber, al as ShouldRevalidateFunctionArgs, Y as StaticHandler, $ as StaticHandlerContext, aR as UNSAFE_DataRouterContext, aS as UNSAFE_DataRouterStateContext, aa as UNSAFE_DataWithResponseInit, aQ as UNSAFE_ErrorResponseImpl, aT as UNSAFE_FetchersContext, aU as UNSAFE_LocationContext, aV as UNSAFE_NavigationContext, aW as UNSAFE_RouteContext, aX as UNSAFE_ViewTransitionContext, aN as UNSAFE_createBrowserHistory, aP as UNSAFE_createRouter, aO as UNSAFE_invariant, an as createPath, as as data, at as generatePath, au as isRouteErrorResponse, av as matchPath, aw as matchRoutes, ao as parsePath, ax as redirect, ay as redirectDocument, az as replace, aA as resolvePath, ah as unstable_MiddlewareFunction, ak as unstable_RouterContext, aM as unstable_SerializesTo, am as unstable_createContext } from './routeModules-qBivMBjd.js';
3
+ import { A as AssetsManifest, E as EntryContext, F as FutureConfig, R as RouteComponentType, H as HydrateFallbackType, a as ErrorBoundaryType, S as ServerBuild } from './index-react-server-client-CMphySRb.js';
4
+ export { h as Await, b as AwaitProps, V as BrowserRouter, B as BrowserRouterProps, D as DOMRouterOpts, as as DiscoverBehavior, y as FetcherFormProps, K as FetcherSubmitFunction, a9 as FetcherSubmitOptions, Q as FetcherWithComponents, _ as Form, z as FormProps, at as HandleDataRequestFunction, au as HandleDocumentRequestFunction, av as HandleErrorFunction, W as HashRouter, t as HashRouterProps, u as HistoryRouterProps, I as IndexRouteProps, L as LayoutRouteProps, X as Link, v as LinkProps, am as Links, ap as LinksProps, i as MemoryRouter, M as MemoryRouterOpts, c as MemoryRouterProps, al as Meta, Z as NavLink, w as NavLinkProps, x as NavLinkRenderProps, j as Navigate, N as NavigateProps, k as Outlet, O as OutletProps, aa as ParamKeyValuePair, P as PathRouteProps, ar as PrefetchBehavior, ao as PrefetchPageLinks, l as Route, d as RouteProps, m as Router, e as RouterProps, n as RouterProvider, f as RouterProviderProps, o as Routes, g as RoutesProps, an as Scripts, aq as ScriptsProps, $ as ScrollRestoration, C as ScrollRestorationProps, aw as ServerEntryModule, G as SetURLSearchParams, aj as StaticRouter, af as StaticRouterProps, ak as StaticRouterProvider, ag as StaticRouterProviderProps, J as SubmitFunction, ab as SubmitOptions, ad as SubmitTarget, aF as UNSAFE_FrameworkContext, az as UNSAFE_WithComponentProps, aD as UNSAFE_WithErrorBoundaryProps, aB as UNSAFE_WithHydrateFallbackProps, aG as UNSAFE_createClientRoutes, aH as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, ax as UNSAFE_hydrationRouteProperties, ay as UNSAFE_mapRouteProperties, aI as UNSAFE_shouldHydrateRouteLoader, aJ as UNSAFE_useScrollRestoration, aA as UNSAFE_withComponentProps, aE as UNSAFE_withErrorBoundaryProps, aC as UNSAFE_withHydrateFallbackProps, ac as URLSearchParamsInit, T as createBrowserRouter, U as createHashRouter, p as createMemoryRouter, q as createRoutesFromChildren, r as createRoutesFromElements, ae as createSearchParams, ah as createStaticHandler, ai as createStaticRouter, s as renderMatches, Y as unstable_HistoryRouter, a7 as unstable_usePrompt, a6 as useBeforeUnload, a4 as useFetcher, a5 as useFetchers, a3 as useFormAction, a0 as useLinkClickHandler, a1 as useSearchParams, a2 as useSubmit, a8 as useViewTransitionState } from './index-react-server-client-CMphySRb.js';
5
5
  import * as React from 'react';
6
6
  import React__default, { ReactElement } from 'react';
7
7
  import { ParseOptions, SerializeOptions } from 'cookie';