aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/controllers/preferences.js
diff options
context:
space:
mode:
authorfrankiebee <frankie.diamond@gmail.com>2017-07-12 03:18:44 +0800
committerfrankiebee <frankie.diamond@gmail.com>2017-07-12 03:18:44 +0800
commita670e54973ed1bae20455507a4b3c44e231ba822 (patch)
tree00300ea3362b7b48be26d6547f89ed4c5bfac597 /app/scripts/controllers/preferences.js
parentc121ac21ec3bed0381e36de7ead1b583a3da148c (diff)
parentf5de16c91174fbbf208e5aef8f542d3bbbb3cb93 (diff)
downloadtangerine-wallet-browser-a670e54973ed1bae20455507a4b3c44e231ba822.tar.gz
tangerine-wallet-browser-a670e54973ed1bae20455507a4b3c44e231ba822.tar.zst
tangerine-wallet-browser-a670e54973ed1bae20455507a4b3c44e231ba822.zip
Merge branch 'nonce-tracker' of https://github.com/MetaMask/metamask-plugin into nonce-tracker
Diffstat (limited to 'app/scripts/controllers/preferences.js')
-rw-r--r--app/scripts/controllers/preferences.js29
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) => {