1import { RouterProvider } from "@tanstack/react-router";
2
3import { ElectronBrowserHost } from "./browser/ElectronBrowserHost";
4import { QuitHoldOverlay } from "./components/QuitHoldOverlay";
5import { I18nProvider } from "./i18n/I18nProvider";
6import { AppAtomRegistryProvider } from "./rpc/atomRegistry";
7import type { AppRouter } from "./router";
8
9// Keep webviews outside the router but inside its atom registry so route changes preserve them.
10export function AppRoot({ router }: { readonly router: AppRouter }) {
11 return (
12 <I18nProvider>
13 <AppAtomRegistryProvider>
14 <RouterProvider router={router} />
15 <ElectronBrowserHost />
16 <QuitHoldOverlay />
17 </AppAtomRegistryProvider>
18 </I18nProvider>
19 );
20}