From 16a3555cd4fc315231a7136c034633a3c7156cfe Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Tue, 9 Jan 2018 22:47:53 -0500 Subject: [PATCH] move settings service to jslib --- src/background/main.background.ts | 5 +- src/popup/app/services/background.service.ts | 3 +- src/services/cipher.service.ts | 3 +- src/services/settings.service.ts | 63 -------------------- src/services/sync.service.ts | 2 +- 5 files changed, 7 insertions(+), 69 deletions(-) delete mode 100644 src/services/settings.service.ts diff --git a/src/background/main.background.ts b/src/background/main.background.ts index 6321b34ffa2..39033718b7c 100644 --- a/src/background/main.background.ts +++ b/src/background/main.background.ts @@ -9,6 +9,7 @@ import { EnvironmentService, FolderService, PasswordGenerationService, + SettingsService, TokenService, TotpService, UserService, @@ -24,6 +25,7 @@ import { MessagingService as MessagingServiceAbstraction, PasswordGenerationService as PasswordGenerationServiceAbstraction, PlatformUtilsService as PlatformUtilsServiceAbstraction, + SettingsService as SettingsServiceAbstraction, StorageService as StorageServiceAbstraction, TokenService as TokenServiceAbstraction, TotpService as TotpServiceAbstraction, @@ -49,7 +51,6 @@ import CipherService from '../services/cipher.service'; import CollectionService from '../services/collection.service'; import i18nService from '../services/i18n.service'; import LockService from '../services/lock.service'; -import SettingsService from '../services/settings.service'; import SyncService from '../services/sync.service'; export default class MainBackground { @@ -65,7 +66,7 @@ export default class MainBackground { apiService: ApiServiceAbstraction; environmentService: EnvironmentServiceAbstraction; userService: UserServiceAbstraction; - settingsService: SettingsService; + settingsService: SettingsServiceAbstraction; cipherService: CipherService; folderService: FolderServiceAbstraction; collectionService: CollectionService; diff --git a/src/popup/app/services/background.service.ts b/src/popup/app/services/background.service.ts index 0f2f9de3ef7..b9b730ad2a9 100644 --- a/src/popup/app/services/background.service.ts +++ b/src/popup/app/services/background.service.ts @@ -6,6 +6,7 @@ import { CryptoService } from 'jslib/abstractions/crypto.service'; import { EnvironmentService } from 'jslib/abstractions/environment.service'; import { FolderService } from 'jslib/abstractions/folder.service'; import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service'; +import { SettingsService } from 'jslib/abstractions/settings.service'; import { StorageService } from 'jslib/abstractions/storage.service'; import { TokenService } from 'jslib/abstractions/token.service'; import { TotpService } from 'jslib/abstractions/totp.service'; @@ -34,7 +35,7 @@ export const utilsService = getBackgroundService('utilsService'); export const appIdService = getBackgroundService('appIdService'); export const i18nService = getBackgroundService('i18nService'); export const constantsService = getBackgroundService('constantsService'); -export const settingsService = getBackgroundService('settingsService'); +export const settingsService = getBackgroundService('settingsService'); export const lockService = getBackgroundService('lockService'); export const totpService = getBackgroundService('totpService'); export const environmentService = getBackgroundService('environmentService'); diff --git a/src/services/cipher.service.ts b/src/services/cipher.service.ts index 3e250262635..441db77bd0a 100644 --- a/src/services/cipher.service.ts +++ b/src/services/cipher.service.ts @@ -21,12 +21,11 @@ import { ConstantsService } from 'jslib/services'; import { ApiService, CryptoService, + SettingsService, StorageService, UserService, } from 'jslib/abstractions'; -import SettingsService from './settings.service'; - const Keys = { ciphersPrefix: 'ciphers_', localData: 'sitesLocalData', diff --git a/src/services/settings.service.ts b/src/services/settings.service.ts deleted file mode 100644 index f757ed62d17..00000000000 --- a/src/services/settings.service.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { - StorageService, - UserService, -} from 'jslib/abstractions'; - -const Keys = { - settingsPrefix: 'settings_', - equivalentDomains: 'equivalentDomains', -}; - -export default class SettingsService { - private settingsCache: any; - - constructor(private userService: UserService, private storageService: StorageService) { - } - - clearCache(): void { - this.settingsCache = null; - } - - getEquivalentDomains(): Promise { - return this.getSettingsKey(Keys.equivalentDomains); - } - - async setEquivalentDomains(equivalentDomains: string[][]) { - await this.setSettingsKey(Keys.equivalentDomains, equivalentDomains); - } - - async clear(userId: string): Promise { - await this.storageService.remove(Keys.settingsPrefix + userId); - this.settingsCache = null; - } - - // Helpers - - private async getSettings(): Promise { - if (this.settingsCache == null) { - const userId = await this.userService.getUserId(); - this.settingsCache = this.storageService.get(Keys.settingsPrefix + userId); - } - return this.settingsCache; - } - - private async getSettingsKey(key: string): Promise { - const settings = await this.getSettings(); - if (settings != null && settings[key]) { - return settings[key]; - } - return null; - } - - private async setSettingsKey(key: string, value: any): Promise { - const userId = await this.userService.getUserId(); - let settings = await this.getSettings(); - if (!settings) { - settings = {}; - } - - settings[key] = value; - await this.storageService.save(Keys.settingsPrefix + userId, settings); - this.settingsCache = settings; - } -} diff --git a/src/services/sync.service.ts b/src/services/sync.service.ts index 7134239d6ac..72876aa2cda 100644 --- a/src/services/sync.service.ts +++ b/src/services/sync.service.ts @@ -1,12 +1,12 @@ import CipherService from './cipher.service'; import CollectionService from './collection.service'; -import SettingsService from './settings.service'; import { ApiService, CryptoService, FolderService, MessagingService, + SettingsService, StorageService, UserService, } from 'jslib/abstractions';