From 9bc2c69d27a0462cd59c87f61bfe06cf2a46dd8a Mon Sep 17 00:00:00 2001 From: katspaugh Date: Wed, 29 May 2024 15:26:27 +0200 Subject: [PATCH] Fix: improve chain switch redirect --- src/components/common/NetworkSelector/index.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/components/common/NetworkSelector/index.tsx b/src/components/common/NetworkSelector/index.tsx index 960ddc4e79..296dabd33b 100644 --- a/src/components/common/NetworkSelector/index.tsx +++ b/src/components/common/NetworkSelector/index.tsx @@ -15,6 +15,7 @@ import { type ReactElement, useMemo } from 'react' import { useCallback } from 'react' import { AppRoutes } from '@/config/routes' import { trackEvent, OVERVIEW_EVENTS } from '@/services/analytics' +import useWallet from '@/hooks/wallets/useWallet' const NetworkSelector = (props: { onChainSelect?: () => void }): ReactElement => { const isDarkMode = useDarkMode() @@ -22,6 +23,7 @@ const NetworkSelector = (props: { onChainSelect?: () => void }): ReactElement => const { configs } = useChains() const chainId = useChainId() const router = useRouter() + const isWalletConnected = !!useWallet() const [testNets, prodNets] = useMemo(() => partition(configs, (config) => config.isTestnet), [configs]) @@ -30,7 +32,11 @@ const NetworkSelector = (props: { onChainSelect?: () => void }): ReactElement => const shouldKeepPath = !router.query.safe const route = { - pathname: shouldKeepPath ? router.pathname : AppRoutes.index, + pathname: shouldKeepPath + ? router.pathname + : isWalletConnected + ? AppRoutes.welcome.accounts + : AppRoutes.welcome.index, query: { chain: shortName, } as { @@ -45,7 +51,7 @@ const NetworkSelector = (props: { onChainSelect?: () => void }): ReactElement => return route }, - [router], + [router, isWalletConnected], ) const onChange = (event: SelectChangeEvent) => {