From 1712ed53be1244d01308b4d7fbd18d47d8d59941 Mon Sep 17 00:00:00 2001 From: Addison Beck Date: Fri, 11 Feb 2022 03:21:51 -0500 Subject: [PATCH] [bug] Store vault data in memory (#1470) --- src/services/state.service.ts | 59 +++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/src/services/state.service.ts b/src/services/state.service.ts index ca0858ba4b..1f41b4d3e4 100644 --- a/src/services/state.service.ts +++ b/src/services/state.service.ts @@ -7,6 +7,11 @@ import { StateService as StateServiceAbstraction } from "../abstractions/state.s import { StorageOptions } from "jslib-common/models/domain/storageOptions"; +import { CipherData } from "jslib-common/models/data/cipherData"; +import { CollectionData } from "jslib-common/models/data/collectionData"; +import { FolderData } from "jslib-common/models/data/folderData"; +import { SendData } from "jslib-common/models/data/sendData"; + export class StateService extends BaseStateService implements StateServiceAbstraction @@ -33,4 +38,58 @@ export class StateService this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()) ); } + + async getEncryptedCiphers(options?: StorageOptions): Promise<{ [id: string]: CipherData }> { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.getEncryptedCiphers(options); + } + + async setEncryptedCiphers( + value: { [id: string]: CipherData }, + options?: StorageOptions + ): Promise { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.setEncryptedCiphers(value, options); + } + + async getEncryptedCollections( + options?: StorageOptions + ): Promise<{ [id: string]: CollectionData }> { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.getEncryptedCollections(options); + } + + async setEncryptedCollections( + value: { [id: string]: CollectionData }, + options?: StorageOptions + ): Promise { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.setEncryptedCollections(value, options); + } + + async getEncryptedFolders(options?: StorageOptions): Promise<{ [id: string]: FolderData }> { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.getEncryptedFolders(options); + } + + async setEncryptedFolders( + value: { [id: string]: FolderData }, + options?: StorageOptions + ): Promise { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.setEncryptedFolders(value, options); + } + + async getEncryptedSends(options?: StorageOptions): Promise<{ [id: string]: SendData }> { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.getEncryptedSends(options); + } + + async setEncryptedSends( + value: { [id: string]: SendData }, + options?: StorageOptions + ): Promise { + options = this.reconcileOptions(options, this.defaultInMemoryOptions); + return await super.setEncryptedSends(value, options); + } }