mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-28 05:12:18 +01:00
94 lines
3.3 KiB
JavaScript
94 lines
3.3 KiB
JavaScript
import { connect } from 'react-redux';
|
|
import { withRouter } from 'react-router-dom';
|
|
import { compose } from 'redux';
|
|
import {
|
|
getAllAccountsOnNetworkAreEmpty,
|
|
getIsNetworkUsed,
|
|
getNetworkIdentifier,
|
|
getPreferences,
|
|
isNetworkLoading,
|
|
getTheme,
|
|
getIsTestnet,
|
|
getCurrentChainId,
|
|
isCurrentProviderCustom,
|
|
} from '../../selectors';
|
|
import {
|
|
hideImportTokensModal,
|
|
lockMetamask,
|
|
hideImportNftsModal,
|
|
hideIpfsModal,
|
|
setCurrentCurrency,
|
|
setLastActiveTime,
|
|
setMouseUserState,
|
|
toggleAccountMenu,
|
|
toggleNetworkMenu,
|
|
} from '../../store/actions';
|
|
import { pageChanged } from '../../ducks/history/history';
|
|
import { prepareToLeaveSwaps } from '../../ducks/swaps/swaps';
|
|
import { getSendStage } from '../../ducks/send';
|
|
import { getProviderConfig } from '../../ducks/metamask/metamask';
|
|
import { DEFAULT_AUTO_LOCK_TIME_LIMIT } from '../../../shared/constants/preferences';
|
|
import Routes from './routes.component';
|
|
|
|
function mapStateToProps(state) {
|
|
const { appState } = state;
|
|
const { alertOpen, alertMessage, isLoading, loadingMessage } = appState;
|
|
const { autoLockTimeLimit = DEFAULT_AUTO_LOCK_TIME_LIMIT } =
|
|
getPreferences(state);
|
|
const { completedOnboarding } = state.metamask;
|
|
|
|
return {
|
|
alertOpen,
|
|
alertMessage,
|
|
textDirection: state.metamask.textDirection,
|
|
isLoading,
|
|
loadingMessage,
|
|
isUnlocked: state.metamask.isUnlocked,
|
|
isNetworkLoading: isNetworkLoading(state),
|
|
currentCurrency: state.metamask.currentCurrency,
|
|
isMouseUser: state.appState.isMouseUser,
|
|
autoLockTimeLimit,
|
|
browserEnvironmentOs: state.metamask.browserEnvironment?.os,
|
|
browserEnvironmentContainter: state.metamask.browserEnvironment?.browser,
|
|
providerId: getNetworkIdentifier(state),
|
|
providerType: getProviderConfig(state).type,
|
|
theme: getTheme(state),
|
|
sendStage: getSendStage(state),
|
|
isNetworkUsed: getIsNetworkUsed(state),
|
|
allAccountsOnNetworkAreEmpty: getAllAccountsOnNetworkAreEmpty(state),
|
|
isTestNet: getIsTestnet(state),
|
|
currentChainId: getCurrentChainId(state),
|
|
forgottenPassword: state.metamask.forgottenPassword,
|
|
isCurrentProviderCustom: isCurrentProviderCustom(state),
|
|
completedOnboarding,
|
|
isAccountMenuOpen: state.metamask.isAccountMenuOpen,
|
|
isNetworkMenuOpen: state.metamask.isNetworkMenuOpen,
|
|
isImportTokensModalOpen: state.appState.importTokensModalOpen,
|
|
accountDetailsAddress: state.appState.accountDetailsAddress,
|
|
isImportNftsModalOpen: state.appState.importNftsModalOpen,
|
|
isIpfsModalOpen: state.appState.showIpfsModalOpen,
|
|
};
|
|
}
|
|
|
|
function mapDispatchToProps(dispatch) {
|
|
return {
|
|
lockMetaMask: () => dispatch(lockMetamask(false)),
|
|
setCurrentCurrencyToUSD: () => dispatch(setCurrentCurrency('usd')),
|
|
setMouseUserState: (isMouseUser) =>
|
|
dispatch(setMouseUserState(isMouseUser)),
|
|
setLastActiveTime: () => dispatch(setLastActiveTime()),
|
|
pageChanged: (path) => dispatch(pageChanged(path)),
|
|
prepareToLeaveSwaps: () => dispatch(prepareToLeaveSwaps()),
|
|
toggleAccountMenu: () => dispatch(toggleAccountMenu()),
|
|
toggleNetworkMenu: () => dispatch(toggleNetworkMenu()),
|
|
hideImportNftsModal: () => dispatch(hideImportNftsModal()),
|
|
hideIpfsModal: () => dispatch(hideIpfsModal()),
|
|
hideImportTokensModal: () => dispatch(hideImportTokensModal()),
|
|
};
|
|
}
|
|
|
|
export default compose(
|
|
withRouter,
|
|
connect(mapStateToProps, mapDispatchToProps),
|
|
)(Routes);
|