diff options
author | Dan Finlay <dan@danfinlay.com> | 2017-06-16 07:22:53 +0800 |
---|---|---|
committer | Dan Finlay <dan@danfinlay.com> | 2017-06-16 07:22:53 +0800 |
commit | 48789f2a3df2c820b61902fb49057f9f7b6cbd8c (patch) | |
tree | 944ddfc812be289c1e7d50f08032e46242776152 /app/scripts/controllers | |
parent | 711a4def86d9e8c626ee554a976d9eab6abdcbee (diff) | |
download | tangerine-wallet-browser-48789f2a3df2c820b61902fb49057f9f7b6cbd8c.tar.gz tangerine-wallet-browser-48789f2a3df2c820b61902fb49057f9f7b6cbd8c.tar.zst tangerine-wallet-browser-48789f2a3df2c820b61902fb49057f9f7b6cbd8c.zip |
Add ability to add tokens to token list
Fiex #1616
Diffstat (limited to 'app/scripts/controllers')
-rw-r--r-- | app/scripts/controllers/preferences.js | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/app/scripts/controllers/preferences.js b/app/scripts/controllers/preferences.js index aa8e05fcc..e45224593 100644 --- a/app/scripts/controllers/preferences.js +++ b/app/scripts/controllers/preferences.js @@ -8,13 +8,11 @@ class PreferencesController { const initState = extend({ frequentRpcList: [], currentAccountTab: 'history', + tokens: [], }, opts.initState) this.store = new ObservableStore(initState) } - - // - // PUBLIC METHODS - // +// PUBLIC METHODS setSelectedAddress (_address) { return new Promise((resolve, reject) => { @@ -28,6 +26,29 @@ class PreferencesController { return this.store.getState().selectedAddress } + addToken (rawAddress, symbol, decimals) { + const address = normalizeAddress(rawAddress) + const newEntry = { address, symbol, decimals } + + const tokens = this.store.getState().tokens + const previousIndex = tokens.find((token, index) => { + return token.address === address + }) + + if (previousIndex) { + tokens[previousIndex] = newEntry + } else { + tokens.push(newEntry) + } + + this.store.updateState({ tokens }) + return Promise.resolve() + } + + getTokens () { + return this.store.getState().tokens + } + updateFrequentRpcList (_url) { return this.addToFrequentRpcList(_url) .then((rpcList) => { |