From 00762a1bd71ab2808cc8cd8ee87637ff55806bee Mon Sep 17 00:00:00 2001 From: Esteban Mino Date: Thu, 29 Aug 2019 16:22:37 -0400 Subject: [PATCH 1/5] handle ens --- app/components/Views/Send/index.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/components/Views/Send/index.js b/app/components/Views/Send/index.js index bde9d14d044..0cbcebb6139 100644 --- a/app/components/Views/Send/index.js +++ b/app/components/Views/Send/index.js @@ -205,7 +205,12 @@ class Send extends PureComponent { type: 'INDIVIDUAL_TOKEN_TRANSACTION', selectedAsset }; - newTxMeta.to = toChecksumAddress(parameters.address); + if (parameters.address.toLowerCase().substr(0, 2) === '0x') { + newTxMeta.to = toChecksumAddress(parameters.address); + } else { + // ENS Name + newTxMeta.ensRecipient = parameters.address; + } if (parameters && parameters.uint256) { newTxMeta.value = toTokenMinimalUnit(parameters.uint256, selectedAsset.decimals); newTxMeta.readableValue = String( From 3c1e6ced685bcf6a5af8d31a4272127642bd3f83 Mon Sep 17 00:00:00 2001 From: Esteban Mino Date: Thu, 29 Aug 2019 16:27:16 -0400 Subject: [PATCH 2/5] handle undefined --- app/components/Views/Send/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/components/Views/Send/index.js b/app/components/Views/Send/index.js index 0cbcebb6139..0141c54b45d 100644 --- a/app/components/Views/Send/index.js +++ b/app/components/Views/Send/index.js @@ -205,7 +205,7 @@ class Send extends PureComponent { type: 'INDIVIDUAL_TOKEN_TRANSACTION', selectedAsset }; - if (parameters.address.toLowerCase().substr(0, 2) === '0x') { + if (parameters.address && parameters.address.toLowerCase().substr(0, 2) === '0x') { newTxMeta.to = toChecksumAddress(parameters.address); } else { // ENS Name From 54fb427b1a4f622ba1f9ec34aafc040d206af93d Mon Sep 17 00:00:00 2001 From: Esteban Mino Date: Thu, 29 Aug 2019 18:10:47 -0400 Subject: [PATCH 3/5] handleNewTxMetaRecipient --- app/components/Views/Send/index.js | 34 ++++++++++++++++++------------ 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/app/components/Views/Send/index.js b/app/components/Views/Send/index.js index 0141c54b45d..f0502839f69 100644 --- a/app/components/Views/Send/index.js +++ b/app/components/Views/Send/index.js @@ -18,6 +18,7 @@ import Analytics from '../../../core/Analytics'; import ANALYTICS_EVENT_OPTS from '../../../util/analytics'; import { getTransactionReviewActionKey, decodeTransferData } from '../../../util/transactions'; import Logger from '../../../util/Logger'; +import { isENS } from '../../../util/address'; const REVIEW = 'review'; const EDIT = 'edit'; @@ -166,6 +167,21 @@ class Send extends PureComponent { } } + /** + * Handle deeplink txMeta recipient + */ + handleNewTxMetaRecipient = recipient => { + let ensRecipient, to; + if (isENS(recipient)) { + ensRecipient = recipient; + } else if (recipient && recipient.toLowerCase().substr(0, 2) === '0x') { + to = toChecksumAddress(recipient); + } else { + to = recipient; + } + return { ensRecipient, to }; + }; + /** * Handle txMeta object, setting neccesary state to make a transaction */ @@ -185,14 +201,9 @@ class Send extends PureComponent { newTxMeta = { symbol: 'ETH', assetType: 'ETH', - type: 'ETHER_TRANSACTION' + type: 'ETHER_TRANSACTION', + ...this.handleNewTxMetaRecipient(target_address) }; - if (target_address.toLowerCase().substr(0, 2) === '0x') { - newTxMeta.to = toChecksumAddress(target_address); - } else { - // ENS Name - newTxMeta.ensRecipient = target_address; - } if (parameters && parameters.value) { newTxMeta.value = toBN(parameters.value); newTxMeta.readableValue = fromWei(newTxMeta.value); @@ -203,14 +214,9 @@ class Send extends PureComponent { newTxMeta = { assetType: 'ERC20', type: 'INDIVIDUAL_TOKEN_TRANSACTION', - selectedAsset + selectedAsset, + ...this.handleNewTxMetaRecipient(parameters.address) }; - if (parameters.address && parameters.address.toLowerCase().substr(0, 2) === '0x') { - newTxMeta.to = toChecksumAddress(parameters.address); - } else { - // ENS Name - newTxMeta.ensRecipient = parameters.address; - } if (parameters && parameters.uint256) { newTxMeta.value = toTokenMinimalUnit(parameters.uint256, selectedAsset.decimals); newTxMeta.readableValue = String( From 996ffaf58a7b9e7960acb15be6fff3a0889ae154 Mon Sep 17 00:00:00 2001 From: Esteban Mino Date: Thu, 29 Aug 2019 18:36:23 -0400 Subject: [PATCH 4/5] fail to undefined --- app/components/Views/Send/index.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/components/Views/Send/index.js b/app/components/Views/Send/index.js index f0502839f69..fdcb41bcadc 100644 --- a/app/components/Views/Send/index.js +++ b/app/components/Views/Send/index.js @@ -176,8 +176,6 @@ class Send extends PureComponent { ensRecipient = recipient; } else if (recipient && recipient.toLowerCase().substr(0, 2) === '0x') { to = toChecksumAddress(recipient); - } else { - to = recipient; } return { ensRecipient, to }; }; From a4cd4862743880b36a3a263caae8953b4d2dca85 Mon Sep 17 00:00:00 2001 From: Esteban Mino Date: Fri, 30 Aug 2019 11:42:44 -0400 Subject: [PATCH 5/5] update data --- app/components/UI/TransactionEdit/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/components/UI/TransactionEdit/index.js b/app/components/UI/TransactionEdit/index.js index 3c17f1929e8..7fed7ec539e 100644 --- a/app/components/UI/TransactionEdit/index.js +++ b/app/components/UI/TransactionEdit/index.js @@ -226,7 +226,7 @@ class TransactionEdit extends PureComponent { componentDidUpdate = prevProps => { if (this.props.transaction.data !== prevProps.transaction.data) { - this.setState({ data: this.props.transaction.data }); + this.updateData(this.props.transaction.data); } };