import { connect } from 'react-redux'; import { getConversionRate, getGasTotal, getPrimaryCurrency, getSendToken, getSendAmount, getSendFromBalance, getTokenBalance, getSendMaxModeState, sendAmountIsInError, } from '../../../../selectors'; import { getAmountErrorObject, getGasFeeErrorObject } from '../../send.utils'; import { setMaxModeTo, updateSendAmount } from '../../../../store/actions'; import { updateSendErrors } from '../../../../ducks/send/send.duck'; import SendAmountRow from './send-amount-row.component'; export default connect(mapStateToProps, mapDispatchToProps)(SendAmountRow); function mapStateToProps(state) { return { amount: getSendAmount(state), balance: getSendFromBalance(state), conversionRate: getConversionRate(state), gasTotal: getGasTotal(state), inError: sendAmountIsInError(state), primaryCurrency: getPrimaryCurrency(state), sendToken: getSendToken(state), tokenBalance: getTokenBalance(state), maxModeOn: getSendMaxModeState(state), }; } function mapDispatchToProps(dispatch) { return { setMaxModeTo: (bool) => dispatch(setMaxModeTo(bool)), updateSendAmount: (newAmount) => dispatch(updateSendAmount(newAmount)), updateGasFeeError: (amountDataObject) => { dispatch(updateSendErrors(getGasFeeErrorObject(amountDataObject))); }, updateSendAmountError: (amountDataObject) => { dispatch(updateSendErrors(getAmountErrorObject(amountDataObject))); }, }; }