1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-25 03:20:23 +01:00
metamask-extension/ui/pages/routes/routes.container.js
Nidhi Kumari 6a17d76efc
UX Multichain: Added Select an action Modal (#20559)
* added select-action-modal skeleton

* added select action modal item

* replaced stake link with constant

* added route for open and close of modal

* updated lint errors

* lint fix

* updated tests

* revert unnecessary changes

* fixed lint errors

* added suggestions

* lint fix

* updated test

* nit fix

* updated select action item to use button

* removed unused fragments

* moved onClose command to bottom

* moved select action modal on footer click

* changed isDisabled to disabled

* added hover and updated test

* nit fix
2023-08-29 22:15:30 +05:30

99 lines
3.7 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,
getShouldShowSeedPhraseReminder,
isCurrentProviderCustom,
} from '../../selectors';
import {
lockMetamask,
hideImportNftsModal,
hideIpfsModal,
setCurrentCurrency,
setLastActiveTime,
setMouseUserState,
toggleAccountMenu,
toggleNetworkMenu,
hideImportTokensModal,
} from '../../store/actions';
import { hideSelectActionModal } from '../../components/multichain/app-footer/app-footer-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),
shouldShowSeedPhraseReminder: getShouldShowSeedPhraseReminder(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,
isSelectActionModalOpen: state.appState.showSelectActionModal,
};
}
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()),
hideSelectActionModal: () => dispatch(hideSelectActionModal()),
};
}
export default compose(
withRouter,
connect(mapStateToProps, mapDispatchToProps),
)(Routes);