aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/local_storage/tracked_token_storage.ts
diff options
context:
space:
mode:
authorHsuan Lee <hsuan@cobinhood.com>2019-01-19 18:42:04 +0800
committerHsuan Lee <hsuan@cobinhood.com>2019-01-19 18:42:04 +0800
commit7ae38906926dc09bc10670c361af0d2bf0050426 (patch)
tree5fb10ae366b987db09e4ddb4bc3ba0f75404ad08 /packages/website/ts/local_storage/tracked_token_storage.ts
parentb5fd3c72a08aaa6957917d74c333387a16edf66b (diff)
downloaddexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar.gz
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar.bz2
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar.lz
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar.xz
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.tar.zst
dexon-sol-tools-7ae38906926dc09bc10670c361af0d2bf0050426.zip
Update dependency packages
Diffstat (limited to 'packages/website/ts/local_storage/tracked_token_storage.ts')
-rw-r--r--packages/website/ts/local_storage/tracked_token_storage.ts71
1 files changed, 0 insertions, 71 deletions
diff --git a/packages/website/ts/local_storage/tracked_token_storage.ts b/packages/website/ts/local_storage/tracked_token_storage.ts
deleted file mode 100644
index b1b579aef..000000000
--- a/packages/website/ts/local_storage/tracked_token_storage.ts
+++ /dev/null
@@ -1,71 +0,0 @@
-import * as _ from 'lodash';
-import { localStorage } from 'ts/local_storage/local_storage';
-import { Token, TokenByAddress, TrackedTokensByUserAddress } from 'ts/types';
-import { configs } from 'ts/utils/configs';
-
-const TRACKED_TOKENS_KEY = 'trackedTokens';
-const TRACKED_TOKENS_CLEAR_KEY = 'lastClearTrackedTokensDate';
-
-export const trackedTokenStorage = {
- // Clear trackedTokens localStorage if we've updated the config variable in an update
- // that introduced a backward incompatible change requiring the tracked tokens to be re-set
- clearIfRequired(): void {
- const lastClearFillDate = localStorage.getItemIfExists(TRACKED_TOKENS_CLEAR_KEY);
- if (lastClearFillDate !== configs.LAST_LOCAL_STORAGE_TRACKED_TOKEN_CLEARANCE_DATE) {
- localStorage.removeItem(TRACKED_TOKENS_KEY);
- }
- localStorage.setItem(TRACKED_TOKENS_CLEAR_KEY, configs.LAST_LOCAL_STORAGE_TRACKED_TOKEN_CLEARANCE_DATE);
- },
- addTrackedTokenToUser(userAddress: string, networkId: number, token: Token): void {
- const trackedTokensByUserAddress = trackedTokenStorage.getTrackedTokensByUserAddress();
- let trackedTokensByNetworkId = trackedTokensByUserAddress[userAddress];
- if (_.isUndefined(trackedTokensByNetworkId)) {
- trackedTokensByNetworkId = {};
- }
- const trackedTokens = !_.isUndefined(trackedTokensByNetworkId[networkId])
- ? trackedTokensByNetworkId[networkId]
- : [];
- trackedTokens.push(token);
- trackedTokensByNetworkId[networkId] = trackedTokens;
- trackedTokensByUserAddress[userAddress] = trackedTokensByNetworkId;
- const trackedTokensByUserAddressJSONString = JSON.stringify(trackedTokensByUserAddress);
- localStorage.setItem(TRACKED_TOKENS_KEY, trackedTokensByUserAddressJSONString);
- },
- getTrackedTokensByUserAddress(): TrackedTokensByUserAddress {
- const trackedTokensJSONString = localStorage.getItemIfExists(TRACKED_TOKENS_KEY);
- if (_.isEmpty(trackedTokensJSONString)) {
- return {};
- }
- const trackedTokensByUserAddress = JSON.parse(trackedTokensJSONString);
- return trackedTokensByUserAddress;
- },
- getTrackedTokensByAddress(userAddress: string, networkId: number): TokenByAddress {
- const trackedTokensByAddress: TokenByAddress = {};
- const trackedTokensJSONString = localStorage.getItemIfExists(TRACKED_TOKENS_KEY);
- if (_.isEmpty(trackedTokensJSONString)) {
- return trackedTokensByAddress;
- }
- const trackedTokensByUserAddress = JSON.parse(trackedTokensJSONString);
- const trackedTokensByNetworkId = trackedTokensByUserAddress[userAddress];
- if (_.isUndefined(trackedTokensByNetworkId)) {
- return trackedTokensByAddress;
- }
- const trackedTokens = trackedTokensByNetworkId[networkId];
- _.each(trackedTokens, (trackedToken: Token) => {
- trackedTokensByAddress[trackedToken.address] = trackedToken;
- });
- return trackedTokensByAddress;
- },
- removeTrackedToken(userAddress: string, networkId: number, tokenAddress: string): void {
- const trackedTokensByUserAddress = trackedTokenStorage.getTrackedTokensByUserAddress();
- const trackedTokensByNetworkId = trackedTokensByUserAddress[userAddress];
- const trackedTokens = trackedTokensByNetworkId[networkId];
- const remainingTrackedTokens = _.filter(trackedTokens, (token: Token) => {
- return token.address !== tokenAddress;
- });
- trackedTokensByNetworkId[networkId] = remainingTrackedTokens;
- trackedTokensByUserAddress[userAddress] = trackedTokensByNetworkId;
- const trackedTokensByUserAddressJSONString = JSON.stringify(trackedTokensByUserAddress);
- localStorage.setItem(TRACKED_TOKENS_KEY, trackedTokensByUserAddressJSONString);
- },
-};