diff options
author | Kevin Serrano <kevgagser@gmail.com> | 2016-08-17 01:34:29 +0800 |
---|---|---|
committer | Kevin Serrano <kevgagser@gmail.com> | 2016-08-17 01:34:29 +0800 |
commit | 009784c79b5c0ebfd9dbe9536870c55e906e914d (patch) | |
tree | 9e005395428047e33bf20e462d50ccd2007115a0 /ui/app/components/account-eth-balance.js | |
parent | 6895d330ffdf0f071e4df3fb9da47f2ea6fc7491 (diff) | |
download | tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar.gz tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar.bz2 tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar.lz tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar.xz tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.tar.zst tangerine-wallet-browser-009784c79b5c0ebfd9dbe9536870c55e906e914d.zip |
Divided eth components for tx and account detail.
Diffstat (limited to 'ui/app/components/account-eth-balance.js')
-rw-r--r-- | ui/app/components/account-eth-balance.js | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/ui/app/components/account-eth-balance.js b/ui/app/components/account-eth-balance.js new file mode 100644 index 000000000..b748ea2ea --- /dev/null +++ b/ui/app/components/account-eth-balance.js @@ -0,0 +1,124 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits +const connect = require('react-redux').connect +const formatBalance = require('../util').formatBalance +const generateBalanceObject = require('../util').generateBalanceObject +const Tooltip = require('./tooltip.js') + +module.exports = connect(mapStateToProps)(EthBalanceComponent) + +function mapStateToProps (state) { + return { + conversionRate: state.metamask.conversionRate, + conversionDate: state.metamask.conversionDate, + currentFiat: state.metamask.currentFiat, + } +} + +inherits(EthBalanceComponent, Component) +function EthBalanceComponent () { + Component.call(this) +} + +EthBalanceComponent.prototype.render = function () { + var state = this.props + var style = state.style + + const value = formatBalance(state.value, 6) + var width = state.width + + return ( + + h('.ether-balance', { + style: style, + }, [ + h('.ether-balance-amount', { + style: { + display: 'inline', + width: width, + }, + }, this.renderBalance(value, state)), + ]) + + ) +} +EthBalanceComponent.prototype.renderBalance = function (value, state) { + if (value === 'None') return value + var balanceObj = generateBalanceObject(value, state.shorten ? 1 : 3) + var balance + var splitBalance = value.split(' ') + var ethNumber = splitBalance[0] + var ethSuffix = splitBalance[1] + var fiatNumber = Number(splitBalance[0]) * state.conversionRate + var fiatSuffix = state.currentFiat + + if (state.shorten) { + balance = balanceObj.shortBalance + } else { + balance = balanceObj.balance + } + + var label = balanceObj.label + + return ( + h('.flex-column', [ + h(Tooltip, { + position: 'bottom', + title: `${balance} ${label}`, + }, [ + h('.flex-row', { + style: { + alignItems: 'flex-end', + lineHeight: '13px', + fontFamily: 'Montserrat Light', + textRendering: 'geometricPrecision', + marginBottom: '5px', + }, + }, [ + h('div', { + style: { + width: '100%', + textAlign: 'right', + }, + }, balance), + h('div', { + style: { + color: '#AEAEAE', + marginLeft: '5px', + }, + }, label), + ]), + ]), + h(Tooltip, { + position: 'bottom', + title: `${fiatNumber} ${fiatSuffix}`, + }, [ + h('.flex-row', { + style: { + alignItems: 'flex-end', + lineHeight: '13px', + fontFamily: 'Montserrat Light', + textRendering: 'geometricPrecision', + }, + }, [ + h('div', { + style: { + width: '100%', + textAlign: 'right', + fontSize: '12px', + color: '#333333', + }, + }, `= ${fiatNumber.toFixed(2)}`), + h('div', { + style: { + color: '#AEAEAE', + marginLeft: '5px', + fontSize: '12px', + }, + }, fiatSuffix), + ]), + ]), + ]) + ) +} |