|
|
|
import { connect } from 'react-redux';
|
|
|
|
|
|
|
|
import {
|
|
|
|
setPendingTokens,
|
|
|
|
clearPendingTokens,
|
|
|
|
getTokenStandardAndDetails,
|
|
|
|
} from '../../store/actions';
|
|
|
|
import { getMostRecentOverviewPage } from '../../ducks/history/history';
|
|
|
|
import {
|
|
|
|
getRpcPrefsForCurrentProvider,
|
|
|
|
getIsTokenDetectionSupported,
|
|
|
|
getTokenDetectionSupportNetworkByChainId,
|
|
|
|
getIsMainnet,
|
|
|
|
} from '../../selectors/selectors';
|
|
|
|
import ImportToken from './import-token.component';
|
|
|
|
|
|
|
|
const mapStateToProps = (state) => {
|
|
|
|
const {
|
|
|
|
metamask: {
|
|
|
|
identities,
|
|
|
|
tokens,
|
|
|
|
pendingTokens,
|
|
|
|
provider: { chainId },
|
|
|
|
useTokenDetection,
|
|
|
|
tokenList,
|
|
|
|
selectedAddress,
|
|
|
|
},
|
|
|
|
} = state;
|
|
|
|
|
|
|
|
const tokenDetectionV2Supported =
|
|
|
|
process.env.TOKEN_DETECTION_V2 && getIsTokenDetectionSupported(state);
|
|
|
|
const showSearchTab =
|
|
|
|
getIsMainnet(state) ||
|
|
|
|
tokenDetectionV2Supported ||
|
|
|
|
Boolean(process.env.IN_TEST);
|
|
|
|
|
|
|
|
return {
|
|
|
|
identities,
|
|
|
|
mostRecentOverviewPage: getMostRecentOverviewPage(state),
|
|
|
|
tokens,
|
|
|
|
pendingTokens,
|
|
|
|
showSearchTab,
|
|
|
|
chainId,
|
|
|
|
rpcPrefs: getRpcPrefsForCurrentProvider(state),
|
|
|
|
tokenList,
|
|
|
|
useTokenDetection,
|
|
|
|
selectedAddress,
|
|
|
|
isTokenDetectionSupported: getIsTokenDetectionSupported(state),
|
|
|
|
networkName: getTokenDetectionSupportNetworkByChainId(state),
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const mapDispatchToProps = (dispatch) => {
|
|
|
|
return {
|
|
|
|
setPendingTokens: (tokens) => dispatch(setPendingTokens(tokens)),
|
|
|
|
clearPendingTokens: () => dispatch(clearPendingTokens()),
|
|
|
|
getTokenStandardAndDetails: (address, selectedAddress) =>
|
|
|
|
getTokenStandardAndDetails(address, selectedAddress, null),
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
export default connect(mapStateToProps, mapDispatchToProps)(ImportToken);
|