Adding one or more tokens sets the selected token before returning the user to the main screen. (#2995)

feature/default_network_editable
Dan J Miller 7 years ago committed by Alexander Tseung
parent 77eb7b2db6
commit d7a1019a2c
  1. 3
      ui/app/actions.js
  2. 5
      ui/app/util.js

@ -1,5 +1,6 @@
const abi = require('human-standard-token-abi')
const getBuyEthUrl = require('../../app/scripts/lib/buy-eth-url')
const { getTokenAddressFromTokenObject } = require('./util')
const ethUtil = require('ethereumjs-util')
var actions = {
@ -1094,10 +1095,12 @@ function removeToken (address) {
function addTokens (tokens) {
return dispatch => {
if (Array.isArray(tokens)) {
dispatch(actions.setSelectedToken(getTokenAddressFromTokenObject(tokens[0])))
return Promise.all(tokens.map(({ address, symbol, decimals }) => (
dispatch(addToken(address, symbol, decimals))
)))
} else {
dispatch(actions.setSelectedToken(getTokenAddressFromTokenObject(tokens)))
return Promise.all(
Object
.entries(tokens)

@ -56,6 +56,7 @@ module.exports = {
exportAsFile: exportAsFile,
isInvalidChecksumAddress,
allNull,
getTokenAddressFromTokenObject,
}
function valuesFor (obj) {
@ -281,3 +282,7 @@ function exportAsFile (filename, data) {
function allNull (obj) {
return Object.entries(obj).every(([key, value]) => value === null)
}
function getTokenAddressFromTokenObject (token) {
return Object.values(token)[0].address.toLowerCase()
}

Loading…
Cancel
Save