diff options
author | kumavis <aaron@kumavis.me> | 2018-04-04 04:55:20 +0800 |
---|---|---|
committer | kumavis <aaron@kumavis.me> | 2018-04-04 04:55:20 +0800 |
commit | 83df8b58ba470b6446c158789a308e801bf5becb (patch) | |
tree | 96770b63d526fff02ae64fb10ef13a8330b99759 /app/scripts/lib/tx-state-manager.js | |
parent | 3b1e4c74f5c8d503184a75584dca570187a13b8c (diff) | |
download | tangerine-wallet-browser-83df8b58ba470b6446c158789a308e801bf5becb.tar.gz tangerine-wallet-browser-83df8b58ba470b6446c158789a308e801bf5becb.tar.zst tangerine-wallet-browser-83df8b58ba470b6446c158789a308e801bf5becb.zip |
tx-state-manager - validateTxParams - validate chainId is Number
Diffstat (limited to 'app/scripts/lib/tx-state-manager.js')
-rw-r--r-- | app/scripts/lib/tx-state-manager.js | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/app/scripts/lib/tx-state-manager.js b/app/scripts/lib/tx-state-manager.js index 3577d45d0..9e597ef37 100644 --- a/app/scripts/lib/tx-state-manager.js +++ b/app/scripts/lib/tx-state-manager.js @@ -140,8 +140,16 @@ module.exports = class TransactionStateManager extends EventEmitter { validateTxParams(txParams) { Object.keys(txParams).forEach((key) => { const value = txParams[key] - if (typeof value !== 'string' && key !== 'chainId') throw new Error(`${key}: ${value} in txParams is not a string`) - if (!ethUtil.isHexPrefixed(value) && key !== 'chainId') throw new Error('is not hex prefixed, everything on txParams must be hex prefixed') + // validate types + switch (key) { + case 'chainId': + if (typeof value !== 'number') throw new Error(`${key} in txParams is not a Number. got: (${value})`) + break + default: + if (typeof value !== 'string') throw new Error(`${key} in txParams is not a string. got: (${value})`) + if (!ethUtil.isHexPrefixed(value)) throw new Error(`${key} in txParams is not hex prefixed. got: (${value})`) + break + } }) } |