import React, { Component } from 'react'; import PropTypes from 'prop-types'; import PageContainerContent from '../../../components/ui/page-container/page-container-content.component'; import Dialog from '../../../components/ui/dialog'; import SendAmountRow from './send-amount-row'; import SendGasRow from './send-gas-row'; import SendHexDataRow from './send-hex-data-row'; import SendAssetRow from './send-asset-row'; export default class SendContent extends Component { static contextTypes = { t: PropTypes.func, }; static propTypes = { updateGas: PropTypes.func, showAddToAddressBookModal: PropTypes.func, showHexData: PropTypes.bool, contact: PropTypes.object, isOwnedAccount: PropTypes.bool, warning: PropTypes.string, error: PropTypes.string, gasIsExcessive: PropTypes.bool.isRequired, }; updateGas = (updateData) => this.props.updateGas(updateData); render() { const { warning, error, gasIsExcessive } = this.props; return (
{gasIsExcessive && this.renderError(true)} {error && this.renderError()} {warning && this.renderWarning()} {this.maybeRenderAddContact()} {this.props.showHexData && ( )}
); } maybeRenderAddContact() { const { t } = this.context; const { isOwnedAccount, showAddToAddressBookModal, contact = {}, } = this.props; if (isOwnedAccount || contact.name) { return null; } return ( {t('newAccountDetectedDialogMessage')} ); } renderWarning() { const { t } = this.context; const { warning } = this.props; return ( {t(warning)} ); } renderError(gasError = false) { const { t } = this.context; const { error } = this.props; return ( {gasError ? t('gasPriceExcessive') : t(error)} ); } }