diff options
author | kumavis <kumavis@users.noreply.github.com> | 2016-10-17 03:54:23 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-17 03:54:23 +0800 |
commit | 11c114599c75c6188703c619135ce41877f83b66 (patch) | |
tree | 115ed3828722fc0a60b83d19bb34b0a198e153b6 /ui/app/components | |
parent | 8d5b2478e3aa939cb4b0a58b20b199cded62769e (diff) | |
parent | 35232c5e293b30da90049b094d87336bb22dc59e (diff) | |
download | tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar.gz tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar.bz2 tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar.lz tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar.xz tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.tar.zst tangerine-wallet-browser-11c114599c75c6188703c619135ce41877f83b66.zip |
Merge pull request #720 from MetaMask/i#495CustomGasField
add a gasPrice field
Diffstat (limited to 'ui/app/components')
-rw-r--r-- | ui/app/components/pending-tx-details.js | 2 | ||||
-rw-r--r-- | ui/app/components/range-slider.js | 58 |
2 files changed, 60 insertions, 0 deletions
diff --git a/ui/app/components/pending-tx-details.js b/ui/app/components/pending-tx-details.js index d8e8524bf..545302098 100644 --- a/ui/app/components/pending-tx-details.js +++ b/ui/app/components/pending-tx-details.js @@ -29,8 +29,10 @@ PTXP.render = function () { var account = props.accounts[address] var balance = account ? account.balance : '0x0' + var gasMultiplier = txData.gasMultiplier var gasCost = new BN(ethUtil.stripHexPrefix(txParams.gas || txData.estimatedGas), 16) var gasPrice = new BN(ethUtil.stripHexPrefix(txParams.gasPrice || '0x4a817c800'), 16) + gasPrice = gasPrice.mul(new BN(gasMultiplier * 100), 10).div(new BN(100, 10)) var txFee = gasCost.mul(gasPrice) var txValue = new BN(ethUtil.stripHexPrefix(txParams.value || '0x0'), 16) var maxCost = txValue.add(txFee) diff --git a/ui/app/components/range-slider.js b/ui/app/components/range-slider.js new file mode 100644 index 000000000..823f5eb01 --- /dev/null +++ b/ui/app/components/range-slider.js @@ -0,0 +1,58 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits + +module.exports = RangeSlider + +inherits(RangeSlider, Component) +function RangeSlider () { + Component.call(this) +} + +RangeSlider.prototype.render = function () { + const state = this.state || {} + const props = this.props + const onInput = props.onInput || function () {} + const name = props.name + const { + min = 0, + max = 100, + increment = 1, + defaultValue = 50, + mirrorInput = false, + } = this.props.options + const {container, input, range} = props.style + + return ( + h('.flex-row', { + style: container, + }, [ + h('input', { + type: 'range', + name: name, + min: min, + max: max, + step: increment, + style: range, + value: state.value || defaultValue, + onChange: mirrorInput ? this.mirrorInputs.bind(this, event) : onInput, + }), + + // Mirrored input for range + mirrorInput ? h('input.large-input', { + type: 'number', + name: `${name}Mirror`, + min: min, + max: max, + value: state.value || defaultValue, + step: increment, + style: input, + onChange: this.mirrorInputs.bind(this, event), + }) : null, + ]) + ) +} + +RangeSlider.prototype.mirrorInputs = function (event) { + this.setState({value: event.target.value}) +} |