From 2d282c511b4644b873d2bed4d79b089fe038222f Mon Sep 17 00:00:00 2001 From: Agustin Pane Date: Tue, 17 Dec 2019 05:09:09 -0300 Subject: [PATCH] Bug #348: Safelist entries get removed (#358) * Fix balances saved to localStorage not in format [tokenAdd, balance] but [balance] * Updates localStorage version value --- .../store/actions/activateTokensByBalance.js | 15 +++++++++++---- src/utils/storage/index.js | 2 +- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/logic/tokens/store/actions/activateTokensByBalance.js b/src/logic/tokens/store/actions/activateTokensByBalance.js index a946535f..5cf8cc75 100644 --- a/src/logic/tokens/store/actions/activateTokensByBalance.js +++ b/src/logic/tokens/store/actions/activateTokensByBalance.js @@ -25,17 +25,24 @@ const activateTokensByBalance = (safeAddress: string) => async ( // balances: tokens' balance returned by the backend const { addresses, balances } = result.data.reduce((acc, { tokenAddress, balance }) => ({ addresses: [...acc.addresses, tokenAddress], - balances: [...acc.balances, balance], - }), { addresses: [], balances: [] }) + balances: [[tokenAddress, balance]], + }), { + addresses: [], + balances: [], + }) // update balance list for the safe - dispatch(updateSafe({ address: safeAddress, balances: Set(balances) })) + dispatch(updateSafe({ + address: safeAddress, + balances: Set(balances), + })) // active tokens by balance, excluding those already blacklisted and the `null` address const activeByBalance = addresses.filter((address) => address !== null && !blacklistedTokens.includes(address)) // need to persist those already active tokens, despite its balances - const activeTokens = alreadyActiveTokens.toSet().union(activeByBalance) + const activeTokens = alreadyActiveTokens.toSet() + .union(activeByBalance) // update list of active tokens dispatch(updateActiveTokens(safeAddress, activeTokens)) diff --git a/src/utils/storage/index.js b/src/utils/storage/index.js index 01c3d3aa..448b22aa 100644 --- a/src/utils/storage/index.js +++ b/src/utils/storage/index.js @@ -8,7 +8,7 @@ import { getNetwork } from '~/config' const stores = [IndexedDbStore, LocalStorageStore] export const storage = new ImmortalStorage(stores) -const PREFIX = `v1_${getNetwork()}` +const PREFIX = `v2_${getNetwork()}` export const loadFromStorage = async (key: string): Promise<*> => { try {