Commit 0bac2572 authored by Vignesh Mohankumar's avatar Vignesh Mohankumar Committed by GitHub

fix: handle invalid chainId on position page (#6338)

* fix: handle invalid chainId on position page

* fix

* add test

* Revert "add test"

This reverts commit d18742aa506b210a6600d6ec2e8b5166d514f988.

* pr comments

* rename

* fix
parent a77752ab
...@@ -36,7 +36,7 @@ import MigrateV2 from './MigrateV2' ...@@ -36,7 +36,7 @@ import MigrateV2 from './MigrateV2'
import MigrateV2Pair from './MigrateV2/MigrateV2Pair' import MigrateV2Pair from './MigrateV2/MigrateV2Pair'
import NotFound from './NotFound' import NotFound from './NotFound'
import Pool from './Pool' import Pool from './Pool'
import { PositionPage } from './Pool/PositionPage' import PositionPage from './Pool/PositionPage'
import PoolV2 from './Pool/v2' import PoolV2 from './Pool/v2'
import PoolFinder from './PoolFinder' import PoolFinder from './PoolFinder'
import RemoveLiquidity from './RemoveLiquidity' import RemoveLiquidity from './RemoveLiquidity'
......
...@@ -20,7 +20,7 @@ import { RowBetween, RowFixed } from 'components/Row' ...@@ -20,7 +20,7 @@ import { RowBetween, RowFixed } from 'components/Row'
import { Dots } from 'components/swap/styleds' import { Dots } from 'components/swap/styleds'
import Toggle from 'components/Toggle' import Toggle from 'components/Toggle'
import TransactionConfirmationModal, { ConfirmationModalContent } from 'components/TransactionConfirmationModal' import TransactionConfirmationModal, { ConfirmationModalContent } from 'components/TransactionConfirmationModal'
import { CHAIN_IDS_TO_NAMES } from 'constants/chains' import { CHAIN_IDS_TO_NAMES, isSupportedChain } from 'constants/chains'
import { isGqlSupportedChain } from 'graphql/data/util' import { isGqlSupportedChain } from 'graphql/data/util'
import { useToken } from 'hooks/Tokens' import { useToken } from 'hooks/Tokens'
import { useV3NFTPositionManagerContract } from 'hooks/useContract' import { useV3NFTPositionManagerContract } from 'hooks/useContract'
...@@ -346,7 +346,34 @@ const useInverter = ({ ...@@ -346,7 +346,34 @@ const useInverter = ({
} }
} }
export function PositionPage() { function PositionPageUnsupportedContent() {
return (
<PageWrapper>
<div style={{ display: 'flex', alignItems: 'center', flexDirection: 'column' }}>
<ThemedText.HeadlineLarge style={{ marginBottom: '8px' }}>
<Trans>Position unavailable</Trans>
</ThemedText.HeadlineLarge>
<ThemedText.BodyPrimary style={{ marginBottom: '32px' }}>
<Trans>To view a position, you must be connected to the network it belongs to.</Trans>
</ThemedText.BodyPrimary>
<PositionPageButtonPrimary as={Link} to="/pools" width="fit-content">
<Trans>Back to Pools</Trans>
</PositionPageButtonPrimary>
</div>
</PageWrapper>
)
}
export default function PositionPage() {
const { chainId } = useWeb3React()
if (isSupportedChain(chainId)) {
return <PositionPageContent />
} else {
return <PositionPageUnsupportedContent />
}
}
function PositionPageContent() {
const { tokenId: tokenIdFromUrl } = useParams<{ tokenId?: string }>() const { tokenId: tokenIdFromUrl } = useParams<{ tokenId?: string }>()
const { chainId, account, provider } = useWeb3React() const { chainId, account, provider } = useWeb3React()
const theme = useTheme() const theme = useTheme()
...@@ -588,21 +615,7 @@ export function PositionPage() { ...@@ -588,21 +615,7 @@ export function PositionPage() {
) )
if (!positionDetails && !loading) { if (!positionDetails && !loading) {
return ( return <PositionPageUnsupportedContent />
<PageWrapper>
<div style={{ display: 'flex', alignItems: 'center', flexDirection: 'column' }}>
<ThemedText.HeadlineLarge style={{ marginBottom: '8px' }}>
<Trans>Position unavailable</Trans>
</ThemedText.HeadlineLarge>
<ThemedText.BodyPrimary style={{ marginBottom: '32px' }}>
<Trans>To view a position, you must be connected to the network it belongs to.</Trans>
</ThemedText.BodyPrimary>
<PositionPageButtonPrimary as={Link} to="/pools" width="fit-content">
<Trans>Back to Pools</Trans>
</PositionPageButtonPrimary>
</div>
</PageWrapper>
)
} }
return loading || poolState === PoolState.LOADING || !feeAmount ? ( return loading || poolState === PoolState.LOADING || !feeAmount ? (
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment