Skip to content

Commit 4a5a3f5

Browse files
committed
fix: fix solana token list render
1 parent e058be1 commit 4a5a3f5

File tree

3 files changed

+15
-15
lines changed

3 files changed

+15
-15
lines changed

app/components/UI/Bridge/hooks/useLatestBalance/index.ts

+8-3
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@ import { abiERC20 } from '@metamask/metamask-eth-abis';
44
import { Web3Provider } from '@ethersproject/providers';
55
import { formatUnits, getAddress, parseUnits } from 'ethers/lib/utils';
66
import { useSelector } from 'react-redux';
7-
import { selectSelectedInternalAccountFormattedAddress } from '../../../../../selectors/accountsController';
7+
import { selectSelectedInternalAccount, selectSelectedInternalAccountFormattedAddress } from '../../../../../selectors/accountsController';
88
import { getProviderByChainId } from '../../../../../util/notifications/methods/common';
99
import { BigNumber, constants, Contract } from 'ethers';
1010
import usePrevious from '../../../../hooks/usePrevious';
1111
///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps)
1212
import { isSolanaChainId } from '@metamask/bridge-controller';
13-
import { selectMultichainTokenList } from '../../../../../selectors/multichain/multichain';
13+
import { selectMultichainTokenListForAccountId } from '../../../../../selectors/multichain/multichain';
14+
import { RootState } from '../../../../../reducers';
1415
///: END:ONLY_INCLUDE_IF
1516

1617
export async function fetchAtomicTokenBalance(
@@ -66,10 +67,14 @@ export const useLatestBalance = (
6667
const selectedAddress = useSelector(selectSelectedInternalAccountFormattedAddress);
6768
const previousToken = usePrevious(token);
6869

70+
const selectedAccount = useSelector(selectSelectedInternalAccount);
71+
6972
///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps)
7073
// Returns native SOL and SPL tokens, contains balance and fiat values
7174
// Balance and fiat values are not truncated
72-
const nonEvmTokens = useSelector(selectMultichainTokenList);
75+
const nonEvmTokens = useSelector((state: RootState) =>
76+
selectMultichainTokenListForAccountId(state, selectedAccount?.id),
77+
);
7378
///: END:ONLY_INCLUDE_IF
7479

7580
const chainId = token.chainId;

app/components/UI/Tokens/index.tsx

+7-3
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import {
3535
selectEvmTokenFiatBalances,
3636
selectEvmTokens,
3737
///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps)
38-
selectMultichainTokenList,
38+
selectMultichainTokenListForAccountId,
3939
///: END:ONLY_INCLUDE_IF
4040
} from '../../../selectors/multichain';
4141
import { TraceName, endTrace, trace } from '../../../util/trace';
@@ -45,6 +45,7 @@ import { selectIsEvmNetworkSelected } from '../../../selectors/multichainNetwork
4545
import { AssetPollingProvider } from '../../hooks/AssetPolling/AssetPollingProvider';
4646
import { TokenListControlBar } from './TokenListControlBar';
4747
import { selectSelectedInternalAccount } from '../../../selectors/accountsController';
48+
import { RootState } from '../../../reducers';
4849

4950
interface TokenListNavigationParamList {
5051
AddAsset: { assetType: string };
@@ -74,12 +75,15 @@ const Tokens = memo(() => {
7475
const [tokenToRemove, setTokenToRemove] = useState<TokenI>();
7576
const [refreshing, setRefreshing] = useState(false);
7677
const [isAddTokenEnabled, setIsAddTokenEnabled] = useState(true);
78+
const selectedAccount = useSelector(selectSelectedInternalAccount);
7779

7880
// non-evm
7981
///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps)
80-
const nonEvmTokens = useSelector(selectMultichainTokenList);
82+
const nonEvmTokens = useSelector((state: RootState) =>
83+
selectMultichainTokenListForAccountId(state, selectedAccount?.id),
84+
);
8185
///: END:ONLY_INCLUDE_IF
82-
const selectedAccount = useSelector(selectSelectedInternalAccount);
86+
8387

8488
const tokenListData = isEvmSelected ? evmTokens : nonEvmTokens;
8589

app/selectors/multichain/multichain.ts

-9
Original file line numberDiff line numberDiff line change
@@ -283,15 +283,6 @@ export const selectMultichainTokenListForAccountId = createDeepEqualSelector(
283283
return tokens;
284284
},
285285
);
286-
287-
export const selectMultichainTokenList = createDeepEqualSelector(
288-
(state: RootState) => state,
289-
selectSelectedInternalAccount,
290-
(state, selectedAccount) => {
291-
return selectMultichainTokenListForAccountId(state, selectedAccount?.id);
292-
},
293-
);
294-
295286
export interface MultichainNetworkAggregatedBalance {
296287
totalNativeTokenBalance: Balance | undefined;
297288
totalBalanceFiat: number | undefined;

0 commit comments

Comments
 (0)