diff --git a/src/components/modals/Send/AmountField.js b/src/components/modals/Send/AmountField.js index 896cb25c..311ac422 100644 --- a/src/components/modals/Send/AmountField.js +++ b/src/components/modals/Send/AmountField.js @@ -30,8 +30,13 @@ class AmountField extends Component<*, { canBeSpent: boolean }> { this.setState({ canBeSpent }) } + onChange = (amount: number) => { + const { bridge, account, transaction, onChangeTransaction } = this.props + onChangeTransaction(bridge.editTransactionAmount(account, transaction, amount)) + } + render() { - const { bridge, account, transaction, onChangeTransaction, t } = this.props + const { bridge, account, transaction, t } = this.props const { canBeSpent } = this.state return ( @@ -40,9 +45,7 @@ class AmountField extends Component<*, { canBeSpent: boolean }> { withMax={false} account={account} canBeSpent={canBeSpent} - onChange={amount => - onChangeTransaction(bridge.editTransactionAmount(account, transaction, amount)) - } + onChange={this.onChange} value={bridge.getTransactionAmount(account, transaction)} /> diff --git a/src/components/modals/Send/RecipientField.js b/src/components/modals/Send/RecipientField.js index 505f8032..b14318c3 100644 --- a/src/components/modals/Send/RecipientField.js +++ b/src/components/modals/Send/RecipientField.js @@ -45,8 +45,21 @@ class RecipientField extends Component, { isVali this.setState({ isValid }) } + onChange = (recipient: string, maybeExtra: ?Object) => { + const { bridge, account, transaction, onChangeTransaction } = this.props + const { amount, currency } = maybeExtra || {} + if (currency && currency.scheme !== account.currency.scheme) return false + let t = transaction + if (amount) { + t = bridge.editTransactionAmount(account, t, amount) + } + t = bridge.editTransactionRecipient(account, t, recipient) + onChangeTransaction(t) + return true + } + render() { - const { bridge, account, transaction, onChangeTransaction, t } = this.props + const { bridge, account, transaction, t } = this.props const { isValid } = this.state const value = bridge.getTransactionRecipient(account, transaction) return ( @@ -59,17 +72,7 @@ class RecipientField extends Component, { isVali withQrCode error={!value || isValid ? null : `This is not a valid ${account.currency.name} address`} value={value} - onChange={(recipient, maybeExtra) => { - const { amount, currency } = maybeExtra || {} - if (currency && currency.scheme !== account.currency.scheme) return false - let t = transaction - if (amount) { - t = bridge.editTransactionAmount(account, t, amount) - } - t = bridge.editTransactionRecipient(account, t, recipient) - onChangeTransaction(t) - return true - }} + onChange={this.onChange} /> )