diff --git a/src/App.tsx b/src/App.tsx index 01e9f06d..d02e68a4 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,8 +1,8 @@ -import { DfxContextProvider, PaymentRoutesContextProvider, SupportChatContextProvider } from '@dfx.swiss/react'; +import { DfxContextProvider, PaymentRoutesContextProvider, SupportChatContextProvider, useSessionContext } from '@dfx.swiss/react'; import { SpinnerSize, StyledLoadingSpinner } from '@dfx.swiss/react-components'; import { Router } from '@remix-run/router'; import { Suspense, lazy } from 'react'; -import { LoaderFunctionArgs, Outlet, RouteObject, RouterProvider, redirect } from 'react-router-dom'; +import { LoaderFunctionArgs, Navigate, Outlet, RouteObject, RouterProvider, redirect, useLocation } from 'react-router-dom'; import { LayoutWrapper } from './components/layout-wrapper'; import { AppHandlingContextProvider, AppParams, CloseMessageData } from './contexts/app-handling.context'; import { BalanceContextProvider } from './contexts/balance.context'; @@ -96,6 +96,21 @@ const SitemapScreen = lazy(() => import('./screens/sitemap.screen')); setupLanguages(); +function IndexRoute(): JSX.Element { + const { isInitialized, isLoggedIn } = useSessionContext(); + const { search } = useLocation(); + + if (!isInitialized) { + return ( +