diff --git a/src/App.tsx b/src/App.tsx index adf451f..d028c70 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -20,7 +20,7 @@ function App() { } /> - } /> + } /> }> } /> { const { disconnect, session } = useWalletConnectContext(); const navigate = useNavigate(); + const location = useLocation(); const disconnectHandler = async () => { + const { pathname } = location; + const redirectTo = pathname ? pathname.substring(1) : ""; + await disconnect(); - navigate("/"); + navigate(`/connect-wallet/${redirectTo}`); }; return ( diff --git a/src/pages/ConnectWallet.tsx b/src/pages/ConnectWallet.tsx index aaa90f9..7ef2b11 100644 --- a/src/pages/ConnectWallet.tsx +++ b/src/pages/ConnectWallet.tsx @@ -1,5 +1,5 @@ import React, { useEffect } from "react"; -import {useNavigate } from "react-router-dom"; +import {useLocation, useNavigate, useParams } from "react-router-dom"; import { Button, Box, Container, Typography, colors } from "@mui/material"; @@ -11,13 +11,19 @@ const ConnectWallet = () => { const navigate = useNavigate(); + const {redirectTo} = useParams(); useEffect(() => { if (session) { - navigate("/sign-with-nitro-key"); + if (redirectTo){ + navigate(`/${redirectTo}`); + } + else { + navigate("/sign-with-nitro-key"); + } } - }, [session, navigate,]); + }, [session, navigate, redirectTo]); const handler = async () => { await connect();