From 39cb39857f456c3a48918e500365192daef6a6c5 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Fri, 29 Nov 2024 08:28:08 +0000
Subject: [PATCH] fix(deps): update react-router monorepo to v7 (major) (#184)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [react-router](https://redirect.github.com/remix-run/react-router) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router)) | [`6.28.0` -> `7.0.1`](https://renovatebot.com/diffs/npm/react-router/6.28.0/7.0.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) |
| [react-router-dom](https://redirect.github.com/remix-run/react-router) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | [`6.28.0` -> `7.0.1`](https://renovatebot.com/diffs/npm/react-router-dom/6.28.0/7.0.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) |
---
### Release Notes
remix-run/react-router (react-router)
### [`v7.0.1`](https://redirect.github.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#701)
[Compare Source](https://redirect.github.com/remix-run/react-router/compare/react-router@7.0.0...react-router@7.0.1)
### [`v7.0.0`](https://redirect.github.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#700)
[Compare Source](https://redirect.github.com/remix-run/react-router/compare/react-router@6.28.0...react-router@7.0.0)
##### Major Changes
- Remove the original `defer` implementation in favor of using raw promises via single fetch and `turbo-stream`. This removes these exports from React Router: ([#11744](https://redirect.github.com/remix-run/react-router/pull/11744))
- `defer`
- `AbortedDeferredError`
- `type TypedDeferredData`
- `UNSAFE_DeferredData`
- `UNSAFE_DEFERRED_SYMBOL`,
- - Collapse `@remix-run/router` into `react-router` ([#11505](https://redirect.github.com/remix-run/react-router/pull/11505))
- Collapse `react-router-dom` into `react-router`
- Collapse `@remix-run/server-runtime` into `react-router`
- Collapse `@remix-run/testing` into `react-router`
- Remove single_fetch future flag. ([#11522](https://redirect.github.com/remix-run/react-router/pull/11522))
- Drop support for Node 16, React Router SSR now requires Node 18 or higher ([#11391](https://redirect.github.com/remix-run/react-router/pull/11391))
- Remove `future.v7_startTransition` flag ([#11696](https://redirect.github.com/remix-run/react-router/pull/11696))
- - Expose the underlying router promises from the following APIs for compsition in React 19 APIs: ([#11521](https://redirect.github.com/remix-run/react-router/pull/11521))
- `useNavigate()`
- `useSubmit`
- `useFetcher().load`
- `useFetcher().submit`
- `useRevalidator.revalidate`
- Remove `future.v7_normalizeFormMethod` future flag ([#11697](https://redirect.github.com/remix-run/react-router/pull/11697))
- For Remix consumers migrating to React Router, the `crypto` global from the [Web Crypto API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API) is now required when using cookie and session APIs. This means that the following APIs are provided from `react-router` rather than platform-specific packages: ([#11837](https://redirect.github.com/remix-run/react-router/pull/11837))
- `createCookie`
- `createCookieSessionStorage`
- `createMemorySessionStorage`
- `createSessionStorage`
For consumers running older versions of Node, the `installGlobals` function from `@remix-run/node` has been updated to define `globalThis.crypto`, using [Node's `require('node:crypto').webcrypto` implementation.](https://nodejs.org/api/webcrypto.html)
Since platform-specific packages no longer need to implement this API, the following low-level APIs have been removed:
- `createCookieFactory`
- `createSessionStorageFactory`
- `createCookieSessionStorageFactory`
- `createMemorySessionStorageFactory`
- Imports/Exports cleanup ([#11840](https://redirect.github.com/remix-run/react-router/pull/11840))
- Removed the following exports that were previously public API from `@remix-run/router`
- types
- `AgnosticDataIndexRouteObject`
- `AgnosticDataNonIndexRouteObject`
- `AgnosticDataRouteMatch`
- `AgnosticDataRouteObject`
- `AgnosticIndexRouteObject`
- `AgnosticNonIndexRouteObject`
- `AgnosticRouteMatch`
- `AgnosticRouteObject`
- `TrackedPromise`
- `unstable_AgnosticPatchRoutesOnMissFunction`
- `Action` -> exported as `NavigationType` via `react-router`
- `Router` exported as `DataRouter` to differentiate from RR's ``
- API
- `getToPathname` (`@private`)
- `joinPaths` (`@private`)
- `normalizePathname` (`@private`)
- `resolveTo` (`@private`)
- `stripBasename` (`@private`)
- `createBrowserHistory` -> in favor of `createBrowserRouter`
- `createHashHistory` -> in favor of `createHashRouter`
- `createMemoryHistory` -> in favor of `createMemoryRouter`
- `createRouter`
- `createStaticHandler` -> in favor of wrapper `createStaticHandler` in RR Dom
- `getStaticContextFromError`
- Removed the following exports that were previously public API from `react-router`
- `Hash`
- `Pathname`
- `Search`
- update minimum node version to 18 ([#11690](https://redirect.github.com/remix-run/react-router/pull/11690))
- Remove `future.v7_prependBasename` from the ionternalized `@remix-run/router` package ([#11726](https://redirect.github.com/remix-run/react-router/pull/11726))
- Migrate Remix type generics to React Router ([#12180](https://redirect.github.com/remix-run/react-router/pull/12180))
- These generics are provided for Remix v2 migration purposes
- These generics and the APIs they exist on should be considered informally deprecated in favor of the new `Route.*` types
- Anyone migrating from React Router v6 should probably not leverage these new generics and should migrate straight to the `Route.*` types
- For React Router v6 users, these generics are new and should not impact your app, with one exception
- `useFetcher` previously had an optional generic (used primarily by Remix v2) that expected the data type
- This has been updated in v7 to expect the type of the function that generates the data (i.e., `typeof loader`/`typeof action`)
- Therefore, you should update your usages:
- ❌ `useFetcher()`
- ✅ `useFetcher()`
- Remove `future.v7_throwAbortReason` from internalized `@remix-run/router` package ([#11728](https://redirect.github.com/remix-run/react-router/pull/11728))
- Add `exports` field to all packages ([#11675](https://redirect.github.com/remix-run/react-router/pull/11675))
- node package no longer re-exports from react-router ([#11702](https://redirect.github.com/remix-run/react-router/pull/11702))
- renamed RemixContext to FrameworkContext ([#11705](https://redirect.github.com/remix-run/react-router/pull/11705))
- updates the minimum React version to 18 ([#11689](https://redirect.github.com/remix-run/react-router/pull/11689))
- PrefetchPageDescriptor replaced by PageLinkDescriptor ([#11960](https://redirect.github.com/remix-run/react-router/pull/11960))
- - Consolidate types previously duplicated across `@remix-run/router`, `@remix-run/server-runtime`, and `@remix-run/react` now that they all live in `react-router` ([#12177](https://redirect.github.com/remix-run/react-router/pull/12177))
- Examples: `LoaderFunction`, `LoaderFunctionArgs`, `ActionFunction`, `ActionFunctionArgs`, `DataFunctionArgs`, `RouteManifest`, `LinksFunction`, `Route`, `EntryRoute`
- The `RouteManifest` type used by the "remix" code is now slightly stricter because it is using the former `@remix-run/router` `RouteManifest`
- `Record -> Record`
- Removed `AppData` type in favor of inlining `unknown` in the few locations it was used
- Removed `ServerRuntimeMeta*` types in favor of the `Meta*` types they were duplicated from
- - Remove the `future.v7_partialHydration` flag ([#11725](https://redirect.github.com/remix-run/react-router/pull/11725))
- This also removes the `` prop
- To migrate, move the `fallbackElement` to a `hydrateFallbackElement`/`HydrateFallback` on your root route
- Also worth nothing there is a related breaking changer with this future flag:
- Without `future.v7_partialHydration` (when using `fallbackElement`), `state.navigation` was populated during the initial load
- With `future.v7_partialHydration`, `state.navigation` remains in an `"idle"` state during the initial load
- Remove `v7_relativeSplatPath` future flag ([#11695](https://redirect.github.com/remix-run/react-router/pull/11695))
- Drop support for Node 18, update minimum Node vestion to 20 ([#12171](https://redirect.github.com/remix-run/react-router/pull/12171))
- Remove `installGlobals()` as this should no longer be necessary
- Remove remaining future flags ([#11820](https://redirect.github.com/remix-run/react-router/pull/11820))
- React Router `v7_skipActionErrorRevalidation`
- Remix `v3_fetcherPersist`, `v3_relativeSplatPath`, `v3_throwAbortReason`
- rename createRemixStub to createRoutesStub ([#11692](https://redirect.github.com/remix-run/react-router/pull/11692))
- Remove `@remix-run/router` deprecated `detectErrorBoundary` option in favor of `mapRouteProperties` ([#11751](https://redirect.github.com/remix-run/react-router/pull/11751))
- Add `react-router/dom` subpath export to properly enable `react-dom` as an optional `peerDependency` ([#11851](https://redirect.github.com/remix-run/react-router/pull/11851))
- This ensures that we don't blindly `import ReactDOM from "react-dom"` in `` in order to access `ReactDOM.flushSync()`, since that would break `createMemoryRouter` use cases in non-DOM environments
- DOM environments should import from `react-router/dom` to get the proper component that makes `ReactDOM.flushSync()` available:
- If you are using the Vite plugin, use this in your `entry.client.tsx`:
- `import { HydratedRouter } from 'react-router/dom'`
- If you are not using the Vite plugin and are manually calling `createBrowserRouter`/`createHashRouter`:
- `import { RouterProvider } from "react-router/dom"`
- Remove `future.v7_fetcherPersist` flag ([#11731](https://redirect.github.com/remix-run/react-router/pull/11731))
- Update `cookie` dependency to `^1.0.1` - please see the [release notes](https://redirect.github.com/jshttp/cookie/releases) for any breaking changes ([#12172](https://redirect.github.com/remix-run/react-router/pull/12172))
##### Minor Changes
- - Add support for `prerender` config in the React Router vite plugin, to support existing SSG use-cases ([#11539](https://redirect.github.com/remix-run/react-router/pull/11539))
- You can use the `prerender` config to pre-render your `.html` and `.data` files at build time and then serve them statically at runtime (either from a running server or a CDN)
- `prerender` can either be an array of string paths, or a function (sync or async) that returns an array of strings so that you can dynamically generate the paths by talking to your CMS, etc.
```ts
// react-router.config.ts
import type { Config } from "@react-router/dev/config";
export default {
async prerender() {
let slugs = await fakeGetSlugsFromCms();
// Prerender these paths into `.html` files at build time, and `.data`
// files if they have loaders
return ["/", "/about", ...slugs.map((slug) => `/product/${slug}`)];
},
} satisfies Config;
async function fakeGetSlugsFromCms() {
await new Promise((r) => setTimeout(r, 1000));
return ["shirt", "hat"];
}
```
- Params, loader data, and action data as props for route component exports ([#11961](https://redirect.github.com/remix-run/react-router/pull/11961))
```tsx
export default function Component({ params, loaderData, actionData }) {}
export function HydrateFallback({ params }) {}
export function ErrorBoundary({ params, loaderData, actionData }) {}
```
- Remove duplicate `RouterProvider` impliementations ([#11679](https://redirect.github.com/remix-run/react-router/pull/11679))
- ### Typesafety improvements ([#12019](https://redirect.github.com/remix-run/react-router/pull/12019))
React Router now generates types for each of your route modules.
You can access those types by importing them from `./+types.`.
For example:
```ts
// app/routes/product.tsx
import type * as Route from "./+types.product";
export function loader({ params }: Route.LoaderArgs) {}
export default function Component({ loaderData }: Route.ComponentProps) {}
```
This initial implementation targets type inference for:
- `Params` : Path parameters from your routing config in `routes.ts` including file-based routing
- `LoaderData` : Loader data from `loader` and/or `clientLoader` within your route module
- `ActionData` : Action data from `action` and/or `clientAction` within your route module
In the future, we plan to add types for the rest of the route module exports: `meta`, `links`, `headers`, `shouldRevalidate`, etc.
We also plan to generate types for typesafe `Link`s:
```tsx
// ^^^^^^^^^^^^^ ^^^^^^^^^
// typesafe `to` and `params` based on the available routes in your app
```
Check out our docs for more:
- [*Explanations > Type Safety*](https://reactrouter.com/dev/guides/explanation/type-safety)
- [*How-To > Setting up type safety*](https://reactrouter.com/dev/guides/how-to/setting-up-type-safety)
- Stabilize `unstable_dataStrategy` ([#11969](https://redirect.github.com/remix-run/react-router/pull/11969))
- Stabilize `unstable_patchRoutesOnNavigation` ([#11970](https://redirect.github.com/remix-run/react-router/pull/11970))
##### Patch Changes
- No changes ([`506329c4e`](https://redirect.github.com/remix-run/react-router/commit/506329c4e2e7aba9837cbfa44df6103b49423745))
- chore: re-enable development warnings through a `development` exports condition. ([#12269](https://redirect.github.com/remix-run/react-router/pull/12269))
- Remove unstable upload handler. ([#12015](https://redirect.github.com/remix-run/react-router/pull/12015))
- Remove unneeded dependency on [@web3-storage/multipart-parser](https://redirect.github.com/web3-storage/multipart-parser) ([#12274](https://redirect.github.com/remix-run/react-router/pull/12274))
- Fix redirects returned from loaders/actions using `data()` ([#12021](https://redirect.github.com/remix-run/react-router/pull/12021))
- fix(react-router): (v7) fix static prerender of non-ascii characters ([#12161](https://redirect.github.com/remix-run/react-router/pull/12161))
- Replace `substr` with `substring` ([#12080](https://redirect.github.com/remix-run/react-router/pull/12080))
- Remove the deprecated `json` utility ([#12146](https://redirect.github.com/remix-run/react-router/pull/12146))
- You can use [`Response.json`](https://developer.mozilla.org/en-US/docs/Web/API/Response/json_static) if you still need to construct JSON responses in your app
- Remove unneeded dependency on source-map ([#12275](https://redirect.github.com/remix-run/react-router/pull/12275))
remix-run/react-router (react-router-dom)
### [`v7.0.1`](https://redirect.github.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#701)
[Compare Source](https://redirect.github.com/remix-run/react-router/compare/react-router-dom@7.0.0...react-router-dom@7.0.1)
##### Patch Changes
- Updated dependencies:
- `react-router@7.0.1`
### [`v7.0.0`](https://redirect.github.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#700)
[Compare Source](https://redirect.github.com/remix-run/react-router/compare/react-router-dom@6.28.0...react-router-dom@7.0.0)
##### Major Changes
- Remove the original `defer` implementation in favor of using raw promises via single fetch and `turbo-stream`. This removes these exports from React Router: ([#11744](https://redirect.github.com/remix-run/react-router/pull/11744))
- `defer`
- `AbortedDeferredError`
- `type TypedDeferredData`
- `UNSAFE_DeferredData`
- `UNSAFE_DEFERRED_SYMBOL`,
- Use `createRemixRouter`/`RouterProvider` in `entry.client` instead of `RemixBrowser` ([#11469](https://redirect.github.com/remix-run/react-router/pull/11469))
- Remove single_fetch future flag. ([#11522](https://redirect.github.com/remix-run/react-router/pull/11522))
- Remove `future.v7_startTransition` flag ([#11696](https://redirect.github.com/remix-run/react-router/pull/11696))
- Remove `future.v7_normalizeFormMethod` future flag ([#11697](https://redirect.github.com/remix-run/react-router/pull/11697))
- Allow returning `undefined` from actions and loaders ([#11680](https://redirect.github.com/remix-run/react-router/pull/11680))
- update minimum node version to 18 ([#11690](https://redirect.github.com/remix-run/react-router/pull/11690))
- Remove `future.v7_prependBasename` from the ionternalized `@remix-run/router` package ([#11726](https://redirect.github.com/remix-run/react-router/pull/11726))
- Remove `future.v7_throwAbortReason` from internalized `@remix-run/router` package ([#11728](https://redirect.github.com/remix-run/react-router/pull/11728))
- Add `exports` field to all packages ([#11675](https://redirect.github.com/remix-run/react-router/pull/11675))
- node package no longer re-exports from react-router ([#11702](https://redirect.github.com/remix-run/react-router/pull/11702))
- updates the minimum React version to 18 ([#11689](https://redirect.github.com/remix-run/react-router/pull/11689))
- - Remove the `future.v7_partialHydration` flag ([#11725](https://redirect.github.com/remix-run/react-router/pull/11725))
- This also removes the `` prop
- To migrate, move the `fallbackElement` to a `hydrateFallbackElement`/`HydrateFallback` on your root route
- Also worth nothing there is a related breaking changer with this future flag:
- Without `future.v7_partialHydration` (when using `fallbackElement`), `state.navigation` was populated during the initial load
- With `future.v7_partialHydration`, `state.navigation` remains in an `"idle"` state during the initial load
- Remove `future.v7_fetcherPersist` flag ([#11731](https://redirect.github.com/remix-run/react-router/pull/11731))
##### Minor Changes
- Add prefetching support to `Link`/`NavLink` when using Remix SSR ([#11402](https://redirect.github.com/remix-run/react-router/pull/11402))
- Enhance `ScrollRestoration` so it can restore properly on an SSR'd document load ([#11401](https://redirect.github.com/remix-run/react-router/pull/11401))
- Add built-in Remix-style hydration support to `RouterProvider`. When running from a Remix-SSR'd HTML payload with the proper `window` variables (`__remixContext`, `__remixManifest`, `__remixRouteModules`), you don't need to pass a `router` prop and `RouterProvider` will create the `router` for you internally. ([#11396](https://redirect.github.com/remix-run/react-router/pull/11396)) ([#11400](https://redirect.github.com/remix-run/react-router/pull/11400))
##### Patch Changes
- Memoize some `RouterProvider` internals to reduce uneccesary re-renders ([#11817](https://redirect.github.com/remix-run/react-router/pull/11817))
- Updated dependencies:
- `react-router@7.0.0`
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/SvenKirschbaum/aws-utils).
---
frontend/character-list/package-lock.json | 76 +++++++++++++++--------
frontend/character-list/package.json | 4 +-
frontend/character-list/src/App.tsx | 4 +-
3 files changed, 54 insertions(+), 30 deletions(-)
diff --git a/frontend/character-list/package-lock.json b/frontend/character-list/package-lock.json
index 9d3754e..f28b668 100644
--- a/frontend/character-list/package-lock.json
+++ b/frontend/character-list/package-lock.json
@@ -18,8 +18,8 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-error-boundary": "4.1.2",
- "react-router": "6.28.0",
- "react-router-dom": "6.28.0"
+ "react-router": "7.0.1",
+ "react-router-dom": "7.0.1"
},
"devDependencies": {
"@types/luxon": "3.4.2",
@@ -1532,15 +1532,6 @@
"url": "https://opencollective.com/popperjs"
}
},
- "node_modules/@remix-run/router": {
- "version": "1.21.0",
- "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.21.0.tgz",
- "integrity": "sha512-xfSkCAchbdG5PnbrKqFWwia4Bi61nH+wm8wLEqfHDyp7Y3dZzgqS2itV8i4gAq9pC2HsTpwyBC6Ds8VHZ96JlA==",
- "license": "MIT",
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/@rollup/rollup-android-arm-eabi": {
"version": "4.27.4",
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.4.tgz",
@@ -1838,6 +1829,12 @@
"@babel/types": "^7.20.7"
}
},
+ "node_modules/@types/cookie": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz",
+ "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==",
+ "license": "MIT"
+ },
"node_modules/@types/estree": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
@@ -2361,6 +2358,15 @@
"integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
"license": "MIT"
},
+ "node_modules/cookie": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz",
+ "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/cosmiconfig": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
@@ -3592,35 +3598,43 @@
}
},
"node_modules/react-router": {
- "version": "6.28.0",
- "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.28.0.tgz",
- "integrity": "sha512-HrYdIFqdrnhDw0PqG/AKjAqEqM7AvxCz0DQ4h2W8k6nqmc5uRBYDag0SBxx9iYz5G8gnuNVLzUe13wl9eAsXXg==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.0.1.tgz",
+ "integrity": "sha512-WVAhv9oWCNsja5AkK6KLpXJDSJCQizOIyOd4vvB/+eHGbYx5vkhcmcmwWjQ9yqkRClogi+xjEg9fNEOd5EX/tw==",
"license": "MIT",
"dependencies": {
- "@remix-run/router": "1.21.0"
+ "@types/cookie": "^0.6.0",
+ "cookie": "^1.0.1",
+ "set-cookie-parser": "^2.6.0",
+ "turbo-stream": "2.4.0"
},
"engines": {
- "node": ">=14.0.0"
+ "node": ">=20.0.0"
},
"peerDependencies": {
- "react": ">=16.8"
+ "react": ">=18",
+ "react-dom": ">=18"
+ },
+ "peerDependenciesMeta": {
+ "react-dom": {
+ "optional": true
+ }
}
},
"node_modules/react-router-dom": {
- "version": "6.28.0",
- "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.28.0.tgz",
- "integrity": "sha512-kQ7Unsl5YdyOltsPGl31zOjLrDv+m2VcIEcIHqYYD3Lp0UppLjrzcfJqDJwXxFw3TH/yvapbnUvPlAj7Kx5nbg==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.0.1.tgz",
+ "integrity": "sha512-duBzwAAiIabhFPZfDjcYpJ+f08TMbPMETgq254GWne2NW1ZwRHhZLj7tpSp8KGb7JvZzlLcjGUnqLxpZQVEPng==",
"license": "MIT",
"dependencies": {
- "@remix-run/router": "1.21.0",
- "react-router": "6.28.0"
+ "react-router": "7.0.1"
},
"engines": {
- "node": ">=14.0.0"
+ "node": ">=20.0.0"
},
"peerDependencies": {
- "react": ">=16.8",
- "react-dom": ">=16.8"
+ "react": ">=18",
+ "react-dom": ">=18"
}
},
"node_modules/react-transition-group": {
@@ -3772,6 +3786,12 @@
"node": ">=10"
}
},
+ "node_modules/set-cookie-parser": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz",
+ "integrity": "sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==",
+ "license": "MIT"
+ },
"node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
@@ -3884,6 +3904,12 @@
"typescript": ">=4.2.0"
}
},
+ "node_modules/turbo-stream": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.4.0.tgz",
+ "integrity": "sha512-FHncC10WpBd2eOmGwpmQsWLDoK4cqsA/UT/GqNoaKOQnT8uzhtCbg3EoUDMvqpOSAI0S26mr0rkjzbOO6S3v1g==",
+ "license": "ISC"
+ },
"node_modules/type-check": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
diff --git a/frontend/character-list/package.json b/frontend/character-list/package.json
index 7947f69..a4bbc94 100644
--- a/frontend/character-list/package.json
+++ b/frontend/character-list/package.json
@@ -14,8 +14,8 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-error-boundary": "4.1.2",
- "react-router": "6.28.0",
- "react-router-dom": "6.28.0",
+ "react-router": "7.0.1",
+ "react-router-dom": "7.0.1",
"@mui/material": "^6.0.0",
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
diff --git a/frontend/character-list/src/App.tsx b/frontend/character-list/src/App.tsx
index 0aea556..53e5416 100644
--- a/frontend/character-list/src/App.tsx
+++ b/frontend/character-list/src/App.tsx
@@ -37,6 +37,7 @@ import {DateTime} from "luxon";
const router = createBrowserRouter([
{
Component: LoadingWrapper,
+ hydrateFallbackElement: ,
children: [
{
path: '/:region?',
@@ -86,9 +87,6 @@ function App() {
}}>
- }
/>