diff --git a/src/App.tsx b/src/App.tsx index 1fe02cc..b9c00ef 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -26,9 +26,10 @@ const protectedRoutes = [ ]; function AppContent() { + const { isConnected, isConnecting, isDisconnected } = useAccount(); const location = useLocation(); const navigate = useNavigate(); - const { isConnected, isConnecting } = useAccount(); + const [hasConnected, setHasConnected] = useState(false); const [isInitialized, setIsInitialized] = useState(false); const [redirectRoute, setRedirectRoute] = useState(""); @@ -39,6 +40,15 @@ function AppContent() { return () => clearTimeout(timer); }, []); + useEffect(() => { + if (isConnected && !hasConnected) { + setHasConnected(true); + } else if (hasConnected && isDisconnected) { + setHasConnected(false); + window.sessionStorage.removeItem("offline-address"); + } + }, [isConnected, hasConnected, isDisconnected]); + useEffect(() => { if (isConnected && protectedRoutes.includes(redirectRoute)) { setRedirectRoute(""); @@ -65,9 +75,6 @@ function AppContent() { return null; } - const isDashboardNoWallet = - location.pathname === "/dashboard" && !isConnected; - return ( @@ -80,7 +87,8 @@ function AppContent() { - {!isDashboardNoWallet &&