1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-10-22 19:26:13 +02:00

Persisting token address via URL (Token Details page) (#13807)

This commit is contained in:
ryanml 2022-03-02 09:01:53 -07:00
parent eb5dc7d8b0
commit 47661fc58d
5 changed files with 8 additions and 13 deletions

View File

@ -125,7 +125,7 @@ const PATH_NAME_MAP = {
[IMPORT_ACCOUNT_ROUTE]: 'Import Account Page',
[CONNECT_HARDWARE_ROUTE]: 'Connect Hardware Wallet Page',
[SEND_ROUTE]: 'Send Page',
[TOKEN_DETAILS]: 'Token Details Page',
[`${TOKEN_DETAILS}/:address`]: 'Token Details Page',
[`${CONNECT_ROUTE}/:id`]: 'Connect To Site Confirmation Page',
[`${CONNECT_ROUTE}/:id${CONNECT_CONFIRM_PERMISSIONS_ROUTE}`]: 'Grant Connected Site Permissions Confirmation Page',
[CONNECTED_ROUTE]: 'Sites Connected To This Account Page',

View File

@ -68,10 +68,7 @@ export default function TokenAsset({ token }) {
dispatch(showModal({ name: 'ACCOUNT_DETAILS' }));
}}
onViewTokenDetails={() => {
history.push({
pathname: TOKEN_DETAILS,
state: { tokenAddress: token.address },
});
history.push(`${TOKEN_DETAILS}/${token.address}`);
}}
tokenSymbol={token.symbol}
/>

View File

@ -155,7 +155,7 @@ export default class Routes extends Component {
exact
/>
<Authenticated
path={TOKEN_DETAILS}
path={`${TOKEN_DETAILS}/:address/`}
component={TokenDetailsPage}
exact
/>

View File

@ -1,6 +1,6 @@
import React, { useContext } from 'react';
import { useDispatch, useSelector } from 'react-redux';
import { Redirect, useHistory } from 'react-router-dom';
import { Redirect, useHistory, useParams } from 'react-router-dom';
import { getTokens } from '../../ducks/metamask/metamask';
import { getUseTokenDetection, getTokenList } from '../../selectors';
import { useCopyToClipboard } from '../../hooks/useCopyToClipboard';
@ -34,7 +34,7 @@ export default function TokenDetailsPage() {
const tokenList = useSelector(getTokenList);
const useTokenDetection = useSelector(getUseTokenDetection);
const tokenAddress = history?.location?.state?.tokenAddress;
const { address: tokenAddress } = useParams();
const tokenMetadata = Object.values(tokenList).find((token) =>
isEqualCaseInsensitive(token.address, tokenAddress),
);

View File

@ -111,11 +111,9 @@ jest.mock('react-router-dom', () => {
...original,
useHistory: () => ({
push: jest.fn(),
location: {
state: {
tokenAddress: testTokenAddress,
},
},
}),
useParams: () => ({
address: testTokenAddress,
}),
};
});