From b08995cc3ccddf8db359ea3d5ea6c574acbc945a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABtan=20Renaudeau?= Date: Thu, 7 Jun 2018 13:25:11 +0200 Subject: [PATCH] make onChange methods --- src/components/modals/Send/AmountField.js | 11 +++++--- src/components/modals/Send/RecipientField.js | 27 +++++++++++--------- 2 files changed, 22 insertions(+), 16 deletions(-) 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} /> )