From 8b04536f903f0c64fd84baea7470604ced124039 Mon Sep 17 00:00:00 2001 From: Adw8 Date: Wed, 7 Aug 2024 11:57:23 +0530 Subject: [PATCH] Redirect to previous page on connecting wallet --- src/App.tsx | 2 +- src/layout/SignPageLayout.tsx | 8 ++++++-- src/pages/ConnectWallet.tsx | 12 +++++++++--- 3 files changed, 16 insertions(+), 6 deletions(-) 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();