diff options
author | Csaba S <csaba.solya@gmail.com> | 2018-02-22 21:55:46 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-22 21:55:46 +0800 |
commit | 2f3463048685759319eb320c916cc7bc23a41649 (patch) | |
tree | e53ac24a1a127f1c684327bca00d23f51b56c542 /ui/app/components/send/gas-fee-display.js | |
parent | 5ec311ba3e01bd9b0a9ff447fd7639d22a7b3d9c (diff) | |
parent | eed75735b8e90d121537249cf147c1ece60f1e47 (diff) | |
download | tangerine-wallet-browser-2f3463048685759319eb320c916cc7bc23a41649.tar.gz tangerine-wallet-browser-2f3463048685759319eb320c916cc7bc23a41649.tar.zst tangerine-wallet-browser-2f3463048685759319eb320c916cc7bc23a41649.zip |
Merge branch 'master' into edge-support
Diffstat (limited to 'ui/app/components/send/gas-fee-display.js')
-rw-r--r-- | ui/app/components/send/gas-fee-display.js | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/ui/app/components/send/gas-fee-display.js b/ui/app/components/send/gas-fee-display.js new file mode 100644 index 000000000..a9a3f3f49 --- /dev/null +++ b/ui/app/components/send/gas-fee-display.js @@ -0,0 +1,62 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits +const USDFeeDisplay = require('./usd-fee-display') +const EthFeeDisplay = require('./eth-fee-display') +const { getTxFeeBn, formatBalance, shortenBalance } = require('../../util') + +module.exports = GasFeeDisplay + +inherits(GasFeeDisplay, Component) +function GasFeeDisplay () { + Component.call(this) +} + +GasFeeDisplay.prototype.getTokenValue = function () { + const { + tokenExchangeRate, + gas, + gasPrice, + blockGasLimit, + } = this.props + + const value = formatBalance(getTxFeeBn(gas, gasPrice, blockGasLimit), 6, true) + const [ethNumber] = value.split(' ') + + return shortenBalance(Number(ethNumber) / tokenExchangeRate, 6) +} + +GasFeeDisplay.prototype.render = function () { + const { + activeCurrency, + conversionRate, + gas, + gasPrice, + blockGasLimit, + } = this.props + + switch (activeCurrency) { + case 'USD': + return h(USDFeeDisplay, { + activeCurrency, + conversionRate, + gas, + gasPrice, + blockGasLimit, + }) + case 'ETH': + return h(EthFeeDisplay, { + activeCurrency, + conversionRate, + gas, + gasPrice, + blockGasLimit, + }) + default: + return h('div.token-gas', [ + h('div.token-gas__amount', this.getTokenValue()), + h('div.token-gas__symbol', activeCurrency), + ]) + } +} + |