From cfbd67060a1dedaf12c327a560fa82709a7586d2 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Tue, 9 Jan 2018 17:37:40 -0500 Subject: [PATCH] convert user service to jslib --- src/background/main.background.ts | 5 +- src/services/cipher.service.ts | 2 +- src/services/collection.service.ts | 3 +- src/services/folder.service.ts | 3 +- src/services/settings.service.ts | 7 +-- src/services/sync.service.ts | 2 +- src/services/user.service.ts | 78 ------------------------------ 7 files changed, 11 insertions(+), 89 deletions(-) delete mode 100644 src/services/user.service.ts diff --git a/src/background/main.background.ts b/src/background/main.background.ts index 6b336572df..07c8cb0fc5 100644 --- a/src/background/main.background.ts +++ b/src/background/main.background.ts @@ -5,6 +5,7 @@ import { AppIdService, CryptoService, TokenService, + UserService, UtilsService, } from 'jslib/services'; @@ -16,6 +17,7 @@ import { PlatformUtilsService as PlatformUtilsServiceAbstraction, StorageService as StorageServiceAbstraction, TokenService as TokenServiceAbstraction, + UserService as UserServiceAbstraction, UtilsService as UtilsServiceAbstraction, } from 'jslib/abstractions'; @@ -45,7 +47,6 @@ import PasswordGenerationService from '../services/passwordGeneration.service'; import SettingsService from '../services/settings.service'; import SyncService from '../services/sync.service'; import TotpService from '../services/totp.service'; -import UserService from '../services/user.service'; export default class MainBackground { messagingService: MessagingServiceAbstraction; @@ -59,7 +60,7 @@ export default class MainBackground { appIdService: AppIdServiceAbstraction; apiService: ApiServiceAbstraction; environmentService: EnvironmentService; - userService: UserService; + userService: UserServiceAbstraction; settingsService: SettingsService; cipherService: CipherService; folderService: FolderService; diff --git a/src/services/cipher.service.ts b/src/services/cipher.service.ts index fedf79f890..bc8756a805 100644 --- a/src/services/cipher.service.ts +++ b/src/services/cipher.service.ts @@ -20,11 +20,11 @@ import { ApiService, CryptoService, StorageService, + UserService, } from 'jslib/abstractions'; import ConstantsService from './constants.service'; import SettingsService from './settings.service'; -import UserService from './user.service'; const Keys = { ciphersPrefix: 'ciphers_', diff --git a/src/services/collection.service.ts b/src/services/collection.service.ts index 7eb8cb7596..76bd128969 100644 --- a/src/services/collection.service.ts +++ b/src/services/collection.service.ts @@ -1,8 +1,7 @@ -import UserService from './user.service'; - import { CryptoService, StorageService, + UserService, } from 'jslib/abstractions'; import { CollectionData } from 'jslib/models/data'; diff --git a/src/services/folder.service.ts b/src/services/folder.service.ts index b2a843aa04..d2eab378eb 100644 --- a/src/services/folder.service.ts +++ b/src/services/folder.service.ts @@ -1,5 +1,3 @@ -import UserService from './user.service'; - import { FolderData } from 'jslib/models/data'; import { Folder } from 'jslib/models/domain'; @@ -12,6 +10,7 @@ import { ApiService, CryptoService, StorageService, + UserService, } from 'jslib/abstractions'; const Keys = { diff --git a/src/services/settings.service.ts b/src/services/settings.service.ts index 5030a786be..f757ed62d1 100644 --- a/src/services/settings.service.ts +++ b/src/services/settings.service.ts @@ -1,6 +1,7 @@ -import UserService from './user.service'; - -import { StorageService } from 'jslib/abstractions'; +import { + StorageService, + UserService, +} from 'jslib/abstractions'; const Keys = { settingsPrefix: 'settings_', diff --git a/src/services/sync.service.ts b/src/services/sync.service.ts index 943d19021b..5781980c3d 100644 --- a/src/services/sync.service.ts +++ b/src/services/sync.service.ts @@ -2,13 +2,13 @@ import CipherService from './cipher.service'; import CollectionService from './collection.service'; import FolderService from './folder.service'; import SettingsService from './settings.service'; -import UserService from './user.service'; import { ApiService, CryptoService, MessagingService, StorageService, + UserService, } from 'jslib/abstractions'; import { diff --git a/src/services/user.service.ts b/src/services/user.service.ts deleted file mode 100644 index 4610174e48..0000000000 --- a/src/services/user.service.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { StorageService, TokenService } from 'jslib/abstractions'; - -const Keys = { - userId: 'userId', - userEmail: 'userEmail', - stamp: 'securityStamp', -}; - -export default class UserService { - userId: string; - email: string; - stamp: string; - - constructor(private tokenService: TokenService, private storageService: StorageService) { - } - - setUserIdAndEmail(userId: string, email: string): Promise { - this.email = email; - this.userId = userId; - - return Promise.all([ - this.storageService.save(Keys.userEmail, email), - this.storageService.save(Keys.userId, userId), - ]); - } - - setSecurityStamp(stamp: string): Promise { - this.stamp = stamp; - return this.storageService.save(Keys.stamp, stamp); - } - - async getUserId(): Promise { - if (this.userId != null) { - return this.userId; - } - - this.userId = await this.storageService.get(Keys.userId); - return this.userId; - } - - async getEmail(): Promise { - if (this.email != null) { - return this.email; - } - - this.email = await this.storageService.get(Keys.userEmail); - return this.email; - } - - async getSecurityStamp(): Promise { - if (this.stamp != null) { - return this.stamp; - } - - this.stamp = await this.storageService.get(Keys.stamp); - return this.stamp; - } - - async clear(): Promise { - await Promise.all([ - this.storageService.remove(Keys.userId), - this.storageService.remove(Keys.userEmail), - this.storageService.remove(Keys.stamp), - ]); - - this.userId = this.email = this.stamp = null; - } - - async isAuthenticated(): Promise { - const token = await this.tokenService.getToken(); - if (token == null) { - return false; - } - - const userId = await this.getUserId(); - return userId != null; - } -}