From 93ad48319e3b4e18e5d95f0b7256d00db394d8f8 Mon Sep 17 00:00:00 2001 From: Matt Brophy Date: Wed, 30 Apr 2025 17:10:55 -0400 Subject: [PATCH] Remove `Navigator` TS declaration override --- .changeset/odd-tools-work.md | 5 +++++ packages/react-router/lib/dom/ssr/fog-of-war.ts | 9 ++------- 2 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 .changeset/odd-tools-work.md diff --git a/.changeset/odd-tools-work.md b/.changeset/odd-tools-work.md new file mode 100644 index 0000000000..1ecfdba7e8 --- /dev/null +++ b/.changeset/odd-tools-work.md @@ -0,0 +1,5 @@ +--- +"react-router": patch +--- + +Remove `Navigator` declaration for `navigator.connection.saveData` to avoid messing with any other types beyond `saveData` in userland diff --git a/packages/react-router/lib/dom/ssr/fog-of-war.ts b/packages/react-router/lib/dom/ssr/fog-of-war.ts index 741c280792..87a3ff3246 100644 --- a/packages/react-router/lib/dom/ssr/fog-of-war.ts +++ b/packages/react-router/lib/dom/ssr/fog-of-war.ts @@ -9,12 +9,6 @@ import type { EntryRoute } from "./routes"; import { createClientRoutes } from "./routes"; import type { ServerBuild } from "../../server-runtime/build"; -declare global { - interface Navigator { - connection?: { saveData: boolean }; - } -} - // Currently rendered links that may need prefetching const nextPaths = new Set(); @@ -115,7 +109,8 @@ export function useFogOFWarDiscovery( // Don't prefetch if not enabled or if the user has `saveData` enabled if ( !isFogOfWarEnabled(routeDiscovery, ssr) || - navigator.connection?.saveData === true + // @ts-expect-error - TS doesn't know about this yet + window.navigator?.connection?.saveData === true ) { return; }