diff options
author | Alexander Tseung <alextsg@gmail.com> | 2018-06-29 02:23:31 +0800 |
---|---|---|
committer | Alexander Tseung <alextsg@gmail.com> | 2018-07-07 07:27:08 +0800 |
commit | 9cde5ab11b0670eed7baeb2f31486cb3e253bdcb (patch) | |
tree | f31a0b631c19227cbf7a62a3be0f92a1b7b1a586 /ui/app/components/pages/confirm-transaction-switch | |
parent | 7732cd4100f3c40f35eeaec669094f63292cbe3d (diff) | |
download | tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar.gz tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar.bz2 tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar.lz tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar.xz tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.tar.zst tangerine-wallet-browser-9cde5ab11b0670eed7baeb2f31486cb3e253bdcb.zip |
Use eth-method-registry to get method data
Diffstat (limited to 'ui/app/components/pages/confirm-transaction-switch')
-rw-r--r-- | ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.component.js | 26 | ||||
-rw-r--r-- | ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.util.js | 8 |
2 files changed, 18 insertions, 16 deletions
diff --git a/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.component.js b/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.component.js index 9ec0fc623..db28d0bad 100644 --- a/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.component.js +++ b/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.component.js @@ -11,7 +11,7 @@ import { CONFIRM_TOKEN_METHOD_PATH, SIGNATURE_REQUEST_PATH, } from '../../../routes' -import { isConfirmDeployContract, getTokenData } from './confirm-transaction-switch.util' +import { isConfirmDeployContract } from './confirm-transaction-switch.util' import { TOKEN_METHOD_TRANSFER, TOKEN_METHOD_APPROVE } from './confirm-transaction-switch.constants' export default class ConfirmTransactionSwitch extends Component { @@ -19,19 +19,29 @@ export default class ConfirmTransactionSwitch extends Component { confirmTransaction: PropTypes.object, } - redirectToTransaction (txData) { - const { id, txParams: { data } } = txData + redirectToTransaction () { + const { + confirmTransaction: { + txData, + methodData: { name }, + fetchingMethodData, + }, + } = this.props + const { id } = txData if (isConfirmDeployContract(txData)) { const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_DEPLOY_CONTRACT_PATH}` return <Redirect to={{ pathname }} /> } - if (data) { - const tokenData = getTokenData(data) - const { name: tokenMethodName } = tokenData || {} + if (fetchingMethodData) { + return <Loading /> + } + + if (name) { + const methodName = name.toLowerCase() - switch (tokenMethodName) { + switch (methodName.toLowerCase()) { case TOKEN_METHOD_TRANSFER: { const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_SEND_TOKEN_PATH}` return <Redirect to={{ pathname }} /> @@ -55,7 +65,7 @@ export default class ConfirmTransactionSwitch extends Component { const { confirmTransaction: { txData } } = this.props if (txData.txParams) { - return this.redirectToTransaction(txData) + return this.redirectToTransaction() } else if (txData.msgParams) { const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${txData.id}${SIGNATURE_REQUEST_PATH}` return <Redirect to={{ pathname }} /> diff --git a/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.util.js b/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.util.js index dd1dec6ae..536aa5212 100644 --- a/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.util.js +++ b/ui/app/components/pages/confirm-transaction-switch/confirm-transaction-switch.util.js @@ -1,12 +1,4 @@ -import abi from 'human-standard-token-abi' -import abiDecoder from 'abi-decoder' -abiDecoder.addABI(abi) - export function isConfirmDeployContract (txData = {}) { const { txParams = {} } = txData return !txParams.to } - -export function getTokenData (data = {}) { - return abiDecoder.decodeMethod(data) -} |