aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts
diff options
context:
space:
mode:
authorEsteban MIno <efmino@uc.cl>2018-08-16 05:34:57 +0800
committerEsteban MIno <efmino@uc.cl>2018-08-16 05:34:57 +0800
commitb766104c8d8fc4d4b1c5660af54b791243836f30 (patch)
tree24d6ae70a7a1790fb663cc1813d84bce96291d1b /app/scripts
parenta4b6b2357a2eee7a4286a8490b8d31aac487120d (diff)
downloadtangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar.gz
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar.bz2
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar.lz
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar.xz
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.tar.zst
tangerine-wallet-browser-b766104c8d8fc4d4b1c5660af54b791243836f30.zip
add suggested tokens objects in metamask state
Diffstat (limited to 'app/scripts')
-rw-r--r--app/scripts/controllers/preferences.js22
1 files changed, 16 insertions, 6 deletions
diff --git a/app/scripts/controllers/preferences.js b/app/scripts/controllers/preferences.js
index 04c9a3254..bda521bdd 100644
--- a/app/scripts/controllers/preferences.js
+++ b/app/scripts/controllers/preferences.js
@@ -15,6 +15,7 @@ class PreferencesController {
* @property {string} store.currentAccountTab Indicates the selected tab in the ui
* @property {array} store.tokens The tokens the user wants display in their token lists
* @property {object} store.accountTokens The tokens stored per account and then per network type
+ * @property {object} store.objects Contains assets objects related to
* @property {boolean} store.useBlockie The users preference for blockie identicons within the UI
* @property {object} store.featureFlags A key-boolean map, where keys refer to features and booleans to whether the
* user wishes to see that feature
@@ -28,6 +29,7 @@ class PreferencesController {
currentAccountTab: 'history',
accountTokens: {},
tokens: [],
+ objects: {},
suggestedTokens: {},
useBlockie: false,
featureFlags: {},
@@ -58,6 +60,10 @@ class PreferencesController {
return this.store.getState().suggestedTokens
}
+ getObjects () {
+ return this.store.getState().objects
+ }
+
addSuggestedToken (tokenOpts) {
this._validateSuggestedTokenParams(tokenOpts)
const suggested = this.getSuggestedTokens()
@@ -286,8 +292,9 @@ class PreferencesController {
*/
async addToken (rawAddress, symbol, decimals, imageUrl) {
const address = normalizeAddress(rawAddress)
- const newEntry = { address, symbol, decimals, imageUrl }
+ const newEntry = { address, symbol, decimals }
const tokens = this.store.getState().tokens
+ const objects = this.getObjects()
const previousEntry = tokens.find((token, index) => {
return token.address === address
})
@@ -298,8 +305,9 @@ class PreferencesController {
} else {
tokens.push(newEntry)
}
- this._updateAccountTokens(tokens)
-
+ objects[address] = imageUrl
+ this._updateAccountTokens(tokens, objects)
+ console.log('OBJECTS OBJET', this.getObjects())
return Promise.resolve(tokens)
}
@@ -312,8 +320,10 @@ class PreferencesController {
*/
removeToken (rawAddress) {
const tokens = this.store.getState().tokens
+ const objects = this.getObjects()
const updatedTokens = tokens.filter(token => token.address !== rawAddress)
- this._updateAccountTokens(updatedTokens)
+ const updatedObjects = Object.keys(objects).filter(key => key !== rawAddress)
+ this._updateAccountTokens(updatedTokens, updatedObjects)
return Promise.resolve(updatedTokens)
}
@@ -477,10 +487,10 @@ class PreferencesController {
* @param {array} tokens Array of tokens to be updated.
*
*/
- _updateAccountTokens (tokens) {
+ _updateAccountTokens (tokens, objects) {
const { accountTokens, providerType, selectedAddress } = this._getTokenRelatedStates()
accountTokens[selectedAddress][providerType] = tokens
- this.store.updateState({ accountTokens, tokens })
+ this.store.updateState({ accountTokens, tokens, objects })
}
/**