Ensure that 'tokens found in this account' message is only shown when token detection activated (#15823)

feature/default_network_editable
Dan J Miller 2 years ago committed by seaona
parent b2f1c3f53e
commit 99e3721f13
  1. 13
      ui/components/app/asset-list/asset-list.js
  2. 15
      ui/selectors/selectors.js

@ -11,7 +11,7 @@ import {
getShouldShowFiat,
getNativeCurrencyImage,
getDetectedTokensInCurrentNetwork,
getIstokenDetectionInactiveOnNonMainnetSupportedNetwork,
getDisplayDetectedTokensLink,
} from '../../../selectors';
import { getNativeCurrency } from '../../../ducks/metamask/metamask';
import { useCurrencyDisplay } from '../../../hooks/useCurrencyDisplay';
@ -66,9 +66,7 @@ const AssetList = ({ onClickAsset }) => {
const primaryTokenImage = useSelector(getNativeCurrencyImage);
const detectedTokens = useSelector(getDetectedTokensInCurrentNetwork) || [];
const istokenDetectionInactiveOnNonMainnetSupportedNetwork = useSelector(
getIstokenDetectionInactiveOnNonMainnetSupportedNetwork,
);
const displayDetectedTokensLink = useSelector(getDisplayDetectedTokensLink);
return (
<>
@ -96,10 +94,9 @@ const AssetList = ({ onClickAsset }) => {
});
}}
/>
{detectedTokens.length > 0 &&
!istokenDetectionInactiveOnNonMainnetSupportedNetwork && (
<DetectedTokensLink setShowDetectedTokens={setShowDetectedTokens} />
)}
{detectedTokens.length > 0 && displayDetectedTokensLink && (
<DetectedTokensLink setShowDetectedTokens={setShowDetectedTokens} />
)}
<Box marginTop={detectedTokens.length > 0 ? 0 : 4}>
<Box justifyContent={JUSTIFY_CONTENT.CENTER}>
<Typography

@ -1121,6 +1121,21 @@ export function getIstokenDetectionInactiveOnNonMainnetSupportedNetwork(state) {
return isDynamicTokenListAvailable && !useTokenDetection && !isMainnet;
}
/**
* To check if the token detection is ON and either a dynamic list is available
* or the user is on mainnet
*
* @param {*} state
* @returns Boolean
*/
export function getDisplayDetectedTokensLink(state) {
const useTokenDetection = getUseTokenDetection(state);
const isMainnet = getIsMainnet(state);
const isDynamicTokenListAvailable = getIsDynamicTokenListAvailable(state);
return (isDynamicTokenListAvailable || isMainnet) && useTokenDetection;
}
/**
* To get the `customNetworkListEnabled` value which determines whether we use the custom network list
*

Loading…
Cancel
Save