1
- import React , { useContext , useMemo } from 'react' ;
1
+ import React , { useContext } from 'react' ;
2
2
import { useSelector } from 'react-redux' ;
3
3
import PropTypes from 'prop-types' ;
4
4
import classNames from 'classnames' ;
@@ -7,9 +7,8 @@ import { useI18nContext } from '../../../hooks/useI18nContext';
7
7
import {
8
8
getCurrentChainId ,
9
9
getDetectedTokensInCurrentNetwork ,
10
+ getAllDetectedTokensForSelectedAddress ,
10
11
getPreferences ,
11
- getSelectedInternalAccount ,
12
- getAllDetectedTokens ,
13
12
getNetworkConfigurationsByChainId ,
14
13
} from '../../../selectors' ;
15
14
import { MetaMetricsContext } from '../../../contexts/metametrics' ;
@@ -27,8 +26,9 @@ export const DetectedTokensBanner = ({
27
26
} ) => {
28
27
const t = useI18nContext ( ) ;
29
28
const trackEvent = useContext ( MetaMetricsContext ) ;
30
- const allNetworks = useSelector ( getNetworkConfigurationsByChainId ) ;
31
29
const { tokenNetworkFilter } = useSelector ( getPreferences ) ;
30
+ const allNetworks = useSelector ( getNetworkConfigurationsByChainId ) ;
31
+
32
32
const allOpts = { } ;
33
33
Object . keys ( allNetworks || { } ) . forEach ( ( chainId ) => {
34
34
allOpts [ chainId ] = true ;
@@ -39,34 +39,18 @@ export const DetectedTokensBanner = ({
39
39
Object . keys ( allOpts || { } ) . length ;
40
40
41
41
const detectedTokens = useSelector ( getDetectedTokensInCurrentNetwork ) ;
42
- const { address : selectedAddress } = useSelector ( getSelectedInternalAccount ) ;
43
- const allDetectedTokens = useSelector ( getAllDetectedTokens ) ;
44
-
45
- const { detectedTokensMultichain } = useMemo ( ( ) => {
46
- const detectedTokensAllChains = Object . entries (
47
- allDetectedTokens || { } ,
48
- ) . reduce ( ( acc , [ chainId , chainTokens ] ) => {
49
- const tokensForAddress = chainTokens [ selectedAddress ] ;
50
- if ( tokensForAddress ) {
51
- acc [ chainId ] = tokensForAddress . map ( ( token ) => ( {
52
- ...token ,
53
- chainId,
54
- } ) ) ;
55
- }
56
- return acc ;
57
- } , { } ) ;
58
-
59
- return { detectedTokensMultichain : detectedTokensAllChains } ;
60
- } , [ selectedAddress , allDetectedTokens ] ) ;
61
42
43
+ const detectedTokensMultichain = useSelector (
44
+ getAllDetectedTokensForSelectedAddress ,
45
+ ) ;
62
46
const chainId = useSelector ( getCurrentChainId ) ;
63
47
64
48
const detectedTokensDetails =
65
49
process . env . PORTFOLIO_VIEW && ! allNetworksFilterShown
66
50
? Object . values ( detectedTokensMultichain )
67
51
. flat ( )
68
52
. map ( ( { address, symbol } ) => `${ symbol } - ${ address } ` )
69
- : detectedTokens ? .map ( ( { address, symbol } ) => `${ symbol } - ${ address } ` ) ;
53
+ : detectedTokens . map ( ( { address, symbol } ) => `${ symbol } - ${ address } ` ) ;
70
54
71
55
const totalTokens =
72
56
process . env . PORTFOLIO_VIEW && ! allNetworksFilterShown
0 commit comments