Merge pull request #412 from MetaMask/ethBalance

Add method to deal with small decimals
feature/default_network_editable
Dan Finlay 8 years ago committed by GitHub
commit 5a99d2a77c
  1. 39
      ui/app/components/eth-balance.js
  2. 12
      ui/app/util.js

@ -2,7 +2,8 @@ const Component = require('react').Component
const h = require('react-hyperscript')
const inherits = require('util').inherits
const formatBalance = require('../util').formatBalance
const generateBalanceObject = require('../util').generateBalanceObject
const Tooltip = require('./tooltip.js')
module.exports = EthBalanceComponent
inherits(EthBalanceComponent, Component)
@ -14,7 +15,6 @@ EthBalanceComponent.prototype.render = function () {
var state = this.props
var style = state.style
var value = formatBalance(state.value)
return (
h('.ether-balance', {
@ -30,28 +30,33 @@ EthBalanceComponent.prototype.render = function () {
)
}
EthBalanceComponent.prototype.renderBalance = function (value) {
if (value === 'None') return value
var balanceObj = generateBalanceObject(value)
var balance = value.split(' ')[0]
var label = value.split(' ')[1]
var balance = balanceObj.balance
var label = balanceObj.label
return (
h('.flex-column', {
style: {
alignItems: 'flex-end',
lineHeight: '13px',
fontFamily: 'Montserrat Thin',
textRendering: 'geometricPrecision',
},
h(Tooltip, {
position: 'bottom',
title: value.split(' ')[0],
}, [
h('div', balance),
h('div', {
h('.flex-column', {
style: {
color: ' #AEAEAE',
fontSize: '12px',
alignItems: 'flex-end',
lineHeight: '13px',
fontFamily: 'Montserrat Light',
textRendering: 'geometricPrecision',
},
}, label),
}, [
h('div', balance),
h('div', {
style: {
color: ' #AEAEAE',
fontSize: '12px',
},
}, label),
]),
])
)
}

@ -26,6 +26,7 @@ module.exports = {
numericBalance: numericBalance,
parseBalance: parseBalance,
formatBalance: formatBalance,
generateBalanceObject: generateBalanceObject,
dataSize: dataSize,
readableDate: readableDate,
ethToWei: ethToWei,
@ -117,6 +118,17 @@ function formatBalance (balance, decimalsToKeep) {
return formatted
}
function generateBalanceObject (formattedBalance) {
var balance = formattedBalance.split(' ')[0]
var label = formattedBalance.split(' ')[1]
var beforeDecimal = balance.split('.')[0]
var afterDecimal = balance.split('.')[1]
if (beforeDecimal === '0' && afterDecimal.substr(0, 5) === '00000') { balance = '< 0.00001' }
return { balance, label }
}
function dataSize (data) {
var size = data ? ethUtil.stripHexPrefix(data).length : 0
return size + ' bytes'

Loading…
Cancel
Save