mirror of
https://github.com/bitwarden/browser
synced 2025-12-17 08:43:33 +00:00
PM-5273 Remove migrated methods and updated references
This commit is contained in:
@@ -612,7 +612,6 @@ export default class MainBackground {
|
|||||||
this.cryptoService,
|
this.cryptoService,
|
||||||
this.i18nService,
|
this.i18nService,
|
||||||
this.cipherService,
|
this.cipherService,
|
||||||
this.stateService,
|
|
||||||
this.stateProvider,
|
this.stateProvider,
|
||||||
);
|
);
|
||||||
this.folderApiService = new FolderApiService(this.folderService, this.apiService);
|
this.folderApiService = new FolderApiService(this.folderService, this.apiService);
|
||||||
|
|||||||
@@ -15,10 +15,6 @@ import {
|
|||||||
I18nServiceInitOptions,
|
I18nServiceInitOptions,
|
||||||
} from "../../../platform/background/service-factories/i18n-service.factory";
|
} from "../../../platform/background/service-factories/i18n-service.factory";
|
||||||
import { stateProviderFactory } from "../../../platform/background/service-factories/state-provider.factory";
|
import { stateProviderFactory } from "../../../platform/background/service-factories/state-provider.factory";
|
||||||
import {
|
|
||||||
stateServiceFactory as stateServiceFactory,
|
|
||||||
StateServiceInitOptions,
|
|
||||||
} from "../../../platform/background/service-factories/state-service.factory";
|
|
||||||
|
|
||||||
import { cipherServiceFactory, CipherServiceInitOptions } from "./cipher-service.factory";
|
import { cipherServiceFactory, CipherServiceInitOptions } from "./cipher-service.factory";
|
||||||
|
|
||||||
@@ -27,8 +23,7 @@ type FolderServiceFactoryOptions = FactoryOptions;
|
|||||||
export type FolderServiceInitOptions = FolderServiceFactoryOptions &
|
export type FolderServiceInitOptions = FolderServiceFactoryOptions &
|
||||||
CryptoServiceInitOptions &
|
CryptoServiceInitOptions &
|
||||||
CipherServiceInitOptions &
|
CipherServiceInitOptions &
|
||||||
I18nServiceInitOptions &
|
I18nServiceInitOptions;
|
||||||
StateServiceInitOptions;
|
|
||||||
|
|
||||||
export function folderServiceFactory(
|
export function folderServiceFactory(
|
||||||
cache: { folderService?: AbstractFolderService } & CachedServices,
|
cache: { folderService?: AbstractFolderService } & CachedServices,
|
||||||
@@ -43,7 +38,6 @@ export function folderServiceFactory(
|
|||||||
await cryptoServiceFactory(cache, opts),
|
await cryptoServiceFactory(cache, opts),
|
||||||
await i18nServiceFactory(cache, opts),
|
await i18nServiceFactory(cache, opts),
|
||||||
await cipherServiceFactory(cache, opts),
|
await cipherServiceFactory(cache, opts),
|
||||||
await stateServiceFactory(cache, opts),
|
|
||||||
await stateProviderFactory(cache, opts),
|
await stateProviderFactory(cache, opts),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -503,7 +503,6 @@ export class Main {
|
|||||||
this.cryptoService,
|
this.cryptoService,
|
||||||
this.i18nService,
|
this.i18nService,
|
||||||
this.cipherService,
|
this.cipherService,
|
||||||
this.stateService,
|
|
||||||
this.stateProvider,
|
this.stateProvider,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ import { StorageOptions } from "@bitwarden/common/platform/models/domain/storage
|
|||||||
import { MigrationRunner } from "@bitwarden/common/platform/services/migration-runner";
|
import { MigrationRunner } from "@bitwarden/common/platform/services/migration-runner";
|
||||||
import { StateService as BaseStateService } from "@bitwarden/common/platform/services/state.service";
|
import { StateService as BaseStateService } from "@bitwarden/common/platform/services/state.service";
|
||||||
import { SendData } from "@bitwarden/common/tools/send/models/data/send.data";
|
import { SendData } from "@bitwarden/common/tools/send/models/data/send.data";
|
||||||
import { CipherData } from "@bitwarden/common/vault/models/data/cipher.data";
|
|
||||||
|
|
||||||
import { Account } from "./account";
|
import { Account } from "./account";
|
||||||
import { GlobalState } from "./global-state";
|
import { GlobalState } from "./global-state";
|
||||||
@@ -55,19 +54,6 @@ export class StateService extends BaseStateService<GlobalState, Account> {
|
|||||||
await super.addAccount(account);
|
await super.addAccount(account);
|
||||||
}
|
}
|
||||||
|
|
||||||
async getEncryptedCiphers(options?: StorageOptions): Promise<{ [id: string]: CipherData }> {
|
|
||||||
options = this.reconcileOptions(options, await this.defaultInMemoryOptions());
|
|
||||||
return await super.getEncryptedCiphers(options);
|
|
||||||
}
|
|
||||||
|
|
||||||
async setEncryptedCiphers(
|
|
||||||
value: { [id: string]: CipherData },
|
|
||||||
options?: StorageOptions,
|
|
||||||
): Promise<void> {
|
|
||||||
options = this.reconcileOptions(options, await this.defaultInMemoryOptions());
|
|
||||||
return await super.setEncryptedCiphers(value, options);
|
|
||||||
}
|
|
||||||
|
|
||||||
async getEncryptedSends(options?: StorageOptions): Promise<{ [id: string]: SendData }> {
|
async getEncryptedSends(options?: StorageOptions): Promise<{ [id: string]: SendData }> {
|
||||||
options = this.reconcileOptions(options, await this.defaultInMemoryOptions());
|
options = this.reconcileOptions(options, await this.defaultInMemoryOptions());
|
||||||
return await super.getEncryptedSends(options);
|
return await super.getEncryptedSends(options);
|
||||||
|
|||||||
@@ -394,7 +394,6 @@ import { ModalService } from "./modal.service";
|
|||||||
CryptoServiceAbstraction,
|
CryptoServiceAbstraction,
|
||||||
I18nServiceAbstraction,
|
I18nServiceAbstraction,
|
||||||
CipherServiceAbstraction,
|
CipherServiceAbstraction,
|
||||||
StateServiceAbstraction,
|
|
||||||
StateProvider,
|
StateProvider,
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -14,9 +14,6 @@ import { SendData } from "../../tools/send/models/data/send.data";
|
|||||||
import { SendView } from "../../tools/send/models/view/send.view";
|
import { SendView } from "../../tools/send/models/view/send.view";
|
||||||
import { UserId } from "../../types/guid";
|
import { UserId } from "../../types/guid";
|
||||||
import { DeviceKey, MasterKey } from "../../types/key";
|
import { DeviceKey, MasterKey } from "../../types/key";
|
||||||
import { CipherData } from "../../vault/models/data/cipher.data";
|
|
||||||
import { LocalData } from "../../vault/models/data/local.data";
|
|
||||||
import { CipherView } from "../../vault/models/view/cipher.view";
|
|
||||||
import { KdfType, ThemeType } from "../enums";
|
import { KdfType, ThemeType } from "../enums";
|
||||||
import { ServerConfigData } from "../models/data/server-config.data";
|
import { ServerConfigData } from "../models/data/server-config.data";
|
||||||
import { Account, AccountDecryptionOptions } from "../models/domain/account";
|
import { Account, AccountDecryptionOptions } from "../models/domain/account";
|
||||||
@@ -154,8 +151,6 @@ export abstract class StateService<T extends Account = Account> {
|
|||||||
* @deprecated For migration purposes only, use setUserKeyBiometric instead
|
* @deprecated For migration purposes only, use setUserKeyBiometric instead
|
||||||
*/
|
*/
|
||||||
setCryptoMasterKeyBiometric: (value: BiometricKey, options?: StorageOptions) => Promise<void>;
|
setCryptoMasterKeyBiometric: (value: BiometricKey, options?: StorageOptions) => Promise<void>;
|
||||||
getDecryptedCiphers: (options?: StorageOptions) => Promise<CipherView[]>;
|
|
||||||
setDecryptedCiphers: (value: CipherView[], options?: StorageOptions) => Promise<void>;
|
|
||||||
getDecryptedPasswordGenerationHistory: (
|
getDecryptedPasswordGenerationHistory: (
|
||||||
options?: StorageOptions,
|
options?: StorageOptions,
|
||||||
) => Promise<GeneratedPasswordHistory[]>;
|
) => Promise<GeneratedPasswordHistory[]>;
|
||||||
@@ -237,11 +232,6 @@ export abstract class StateService<T extends Account = Account> {
|
|||||||
setEnableStartToTray: (value: boolean, options?: StorageOptions) => Promise<void>;
|
setEnableStartToTray: (value: boolean, options?: StorageOptions) => Promise<void>;
|
||||||
getEnableTray: (options?: StorageOptions) => Promise<boolean>;
|
getEnableTray: (options?: StorageOptions) => Promise<boolean>;
|
||||||
setEnableTray: (value: boolean, options?: StorageOptions) => Promise<void>;
|
setEnableTray: (value: boolean, options?: StorageOptions) => Promise<void>;
|
||||||
getEncryptedCiphers: (options?: StorageOptions) => Promise<{ [id: string]: CipherData }>;
|
|
||||||
setEncryptedCiphers: (
|
|
||||||
value: { [id: string]: CipherData },
|
|
||||||
options?: StorageOptions,
|
|
||||||
) => Promise<void>;
|
|
||||||
getEncryptedPasswordGenerationHistory: (
|
getEncryptedPasswordGenerationHistory: (
|
||||||
options?: StorageOptions,
|
options?: StorageOptions,
|
||||||
) => Promise<GeneratedPasswordHistory[]>;
|
) => Promise<GeneratedPasswordHistory[]>;
|
||||||
@@ -287,11 +277,6 @@ export abstract class StateService<T extends Account = Account> {
|
|||||||
setLastActive: (value: number, options?: StorageOptions) => Promise<void>;
|
setLastActive: (value: number, options?: StorageOptions) => Promise<void>;
|
||||||
getLastSync: (options?: StorageOptions) => Promise<string>;
|
getLastSync: (options?: StorageOptions) => Promise<string>;
|
||||||
setLastSync: (value: string, options?: StorageOptions) => Promise<void>;
|
setLastSync: (value: string, options?: StorageOptions) => Promise<void>;
|
||||||
getLocalData: (options?: StorageOptions) => Promise<{ [cipherId: string]: LocalData }>;
|
|
||||||
setLocalData: (
|
|
||||||
value: { [cipherId: string]: LocalData },
|
|
||||||
options?: StorageOptions,
|
|
||||||
) => Promise<void>;
|
|
||||||
getLocale: (options?: StorageOptions) => Promise<string>;
|
getLocale: (options?: StorageOptions) => Promise<string>;
|
||||||
setLocale: (value: string, options?: StorageOptions) => Promise<void>;
|
setLocale: (value: string, options?: StorageOptions) => Promise<void>;
|
||||||
getMainWindowSize: (options?: StorageOptions) => Promise<number>;
|
getMainWindowSize: (options?: StorageOptions) => Promise<number>;
|
||||||
|
|||||||
@@ -18,9 +18,6 @@ import { SendData } from "../../tools/send/models/data/send.data";
|
|||||||
import { SendView } from "../../tools/send/models/view/send.view";
|
import { SendView } from "../../tools/send/models/view/send.view";
|
||||||
import { UserId } from "../../types/guid";
|
import { UserId } from "../../types/guid";
|
||||||
import { DeviceKey, MasterKey } from "../../types/key";
|
import { DeviceKey, MasterKey } from "../../types/key";
|
||||||
import { CipherData } from "../../vault/models/data/cipher.data";
|
|
||||||
import { LocalData } from "../../vault/models/data/local.data";
|
|
||||||
import { CipherView } from "../../vault/models/view/cipher.view";
|
|
||||||
import { EnvironmentService } from "../abstractions/environment.service";
|
import { EnvironmentService } from "../abstractions/environment.service";
|
||||||
import { LogService } from "../abstractions/log.service";
|
import { LogService } from "../abstractions/log.service";
|
||||||
import {
|
import {
|
||||||
@@ -702,24 +699,6 @@ export class StateService<
|
|||||||
await this.saveSecureStorageKey(partialKeys.biometricKey, value, options);
|
await this.saveSecureStorageKey(partialKeys.biometricKey, value, options);
|
||||||
}
|
}
|
||||||
|
|
||||||
@withPrototypeForArrayMembers(CipherView, CipherView.fromJSON)
|
|
||||||
async getDecryptedCiphers(options?: StorageOptions): Promise<CipherView[]> {
|
|
||||||
return (
|
|
||||||
await this.getAccount(this.reconcileOptions(options, await this.defaultInMemoryOptions()))
|
|
||||||
)?.data?.ciphers?.decrypted;
|
|
||||||
}
|
|
||||||
|
|
||||||
async setDecryptedCiphers(value: CipherView[], options?: StorageOptions): Promise<void> {
|
|
||||||
const account = await this.getAccount(
|
|
||||||
this.reconcileOptions(options, await this.defaultInMemoryOptions()),
|
|
||||||
);
|
|
||||||
account.data.ciphers.decrypted = value;
|
|
||||||
await this.saveAccount(
|
|
||||||
account,
|
|
||||||
this.reconcileOptions(options, await this.defaultInMemoryOptions()),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
@withPrototypeForArrayMembers(GeneratedPasswordHistory)
|
@withPrototypeForArrayMembers(GeneratedPasswordHistory)
|
||||||
async getDecryptedPasswordGenerationHistory(
|
async getDecryptedPasswordGenerationHistory(
|
||||||
options?: StorageOptions,
|
options?: StorageOptions,
|
||||||
@@ -1194,27 +1173,6 @@ export class StateService<
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@withPrototypeForObjectValues(CipherData)
|
|
||||||
async getEncryptedCiphers(options?: StorageOptions): Promise<{ [id: string]: CipherData }> {
|
|
||||||
return (
|
|
||||||
await this.getAccount(this.reconcileOptions(options, await this.defaultOnDiskMemoryOptions()))
|
|
||||||
)?.data?.ciphers?.encrypted;
|
|
||||||
}
|
|
||||||
|
|
||||||
async setEncryptedCiphers(
|
|
||||||
value: { [id: string]: CipherData },
|
|
||||||
options?: StorageOptions,
|
|
||||||
): Promise<void> {
|
|
||||||
const account = await this.getAccount(
|
|
||||||
this.reconcileOptions(options, await this.defaultOnDiskMemoryOptions()),
|
|
||||||
);
|
|
||||||
account.data.ciphers.encrypted = value;
|
|
||||||
await this.saveAccount(
|
|
||||||
account,
|
|
||||||
this.reconcileOptions(options, await this.defaultOnDiskMemoryOptions()),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @deprecated Use UserKey instead
|
* @deprecated Use UserKey instead
|
||||||
*/
|
*/
|
||||||
@@ -1472,26 +1430,6 @@ export class StateService<
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
async getLocalData(options?: StorageOptions): Promise<{ [cipherId: string]: LocalData }> {
|
|
||||||
return (
|
|
||||||
await this.getAccount(this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()))
|
|
||||||
)?.data?.localData;
|
|
||||||
}
|
|
||||||
|
|
||||||
async setLocalData(
|
|
||||||
value: { [cipherId: string]: LocalData },
|
|
||||||
options?: StorageOptions,
|
|
||||||
): Promise<void> {
|
|
||||||
const account = await this.getAccount(
|
|
||||||
this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()),
|
|
||||||
);
|
|
||||||
account.data.localData = value;
|
|
||||||
await this.saveAccount(
|
|
||||||
account,
|
|
||||||
this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
async getLocale(options?: StorageOptions): Promise<string> {
|
async getLocale(options?: StorageOptions): Promise<string> {
|
||||||
return (
|
return (
|
||||||
await this.getGlobals(this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()))
|
await this.getGlobals(this.reconcileOptions(options, await this.defaultOnDiskLocalOptions()))
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const CIPHERS_DISK: KeyDefinitionLike = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export class LocalDataMigrator extends Migrator<32, 33> {
|
export class LocalDataMigrator extends Migrator<34, 35> {
|
||||||
async migrate(helper: MigrationHelper): Promise<void> {
|
async migrate(helper: MigrationHelper): Promise<void> {
|
||||||
const accounts = await helper.getAccounts<ExpectedAccountType>();
|
const accounts = await helper.getAccounts<ExpectedAccountType>();
|
||||||
async function migrateAccount(userId: string, account: ExpectedAccountType): Promise<void> {
|
async function migrateAccount(userId: string, account: ExpectedAccountType): Promise<void> {
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ import { FakeStateProvider } from "../../../../spec/fake-state-provider";
|
|||||||
import { CryptoService } from "../../../platform/abstractions/crypto.service";
|
import { CryptoService } from "../../../platform/abstractions/crypto.service";
|
||||||
import { EncryptService } from "../../../platform/abstractions/encrypt.service";
|
import { EncryptService } from "../../../platform/abstractions/encrypt.service";
|
||||||
import { I18nService } from "../../../platform/abstractions/i18n.service";
|
import { I18nService } from "../../../platform/abstractions/i18n.service";
|
||||||
import { StateService } from "../../../platform/abstractions/state.service";
|
|
||||||
import { Utils } from "../../../platform/misc/utils";
|
import { Utils } from "../../../platform/misc/utils";
|
||||||
import { EncString } from "../../../platform/models/domain/enc-string";
|
import { EncString } from "../../../platform/models/domain/enc-string";
|
||||||
import { SymmetricCryptoKey } from "../../../platform/models/domain/symmetric-crypto-key";
|
import { SymmetricCryptoKey } from "../../../platform/models/domain/symmetric-crypto-key";
|
||||||
@@ -27,7 +26,6 @@ describe("Folder Service", () => {
|
|||||||
let encryptService: MockProxy<EncryptService>;
|
let encryptService: MockProxy<EncryptService>;
|
||||||
let i18nService: MockProxy<I18nService>;
|
let i18nService: MockProxy<I18nService>;
|
||||||
let cipherService: MockProxy<CipherService>;
|
let cipherService: MockProxy<CipherService>;
|
||||||
let stateService: MockProxy<StateService>;
|
|
||||||
let stateProvider: FakeStateProvider;
|
let stateProvider: FakeStateProvider;
|
||||||
|
|
||||||
const mockUserId = Utils.newGuid() as UserId;
|
const mockUserId = Utils.newGuid() as UserId;
|
||||||
@@ -39,7 +37,6 @@ describe("Folder Service", () => {
|
|||||||
encryptService = mock<EncryptService>();
|
encryptService = mock<EncryptService>();
|
||||||
i18nService = mock<I18nService>();
|
i18nService = mock<I18nService>();
|
||||||
cipherService = mock<CipherService>();
|
cipherService = mock<CipherService>();
|
||||||
stateService = mock<StateService>();
|
|
||||||
|
|
||||||
accountService = mockAccountServiceWith(mockUserId);
|
accountService = mockAccountServiceWith(mockUserId);
|
||||||
stateProvider = new FakeStateProvider(accountService);
|
stateProvider = new FakeStateProvider(accountService);
|
||||||
@@ -52,13 +49,7 @@ describe("Folder Service", () => {
|
|||||||
);
|
);
|
||||||
encryptService.decryptToUtf8.mockResolvedValue("DEC");
|
encryptService.decryptToUtf8.mockResolvedValue("DEC");
|
||||||
|
|
||||||
folderService = new FolderService(
|
folderService = new FolderService(cryptoService, i18nService, cipherService, stateProvider);
|
||||||
cryptoService,
|
|
||||||
i18nService,
|
|
||||||
cipherService,
|
|
||||||
stateService,
|
|
||||||
stateProvider,
|
|
||||||
);
|
|
||||||
|
|
||||||
folderState = stateProvider.activeUser.getFake(FOLDER_ENCRYPTED_FOLDERS);
|
folderState = stateProvider.activeUser.getFake(FOLDER_ENCRYPTED_FOLDERS);
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,16 @@ import { Observable, firstValueFrom, map } from "rxjs";
|
|||||||
|
|
||||||
import { CryptoService } from "../../../platform/abstractions/crypto.service";
|
import { CryptoService } from "../../../platform/abstractions/crypto.service";
|
||||||
import { I18nService } from "../../../platform/abstractions/i18n.service";
|
import { I18nService } from "../../../platform/abstractions/i18n.service";
|
||||||
import { StateService } from "../../../platform/abstractions/state.service";
|
|
||||||
import { Utils } from "../../../platform/misc/utils";
|
import { Utils } from "../../../platform/misc/utils";
|
||||||
import { SymmetricCryptoKey } from "../../../platform/models/domain/symmetric-crypto-key";
|
import { SymmetricCryptoKey } from "../../../platform/models/domain/symmetric-crypto-key";
|
||||||
import { ActiveUserState, DerivedState, StateProvider } from "../../../platform/state";
|
import { ActiveUserState, DerivedState, StateProvider } from "../../../platform/state";
|
||||||
import { UserId } from "../../../types/guid";
|
import { UserId } from "../../../types/guid";
|
||||||
import { CipherService } from "../../../vault/abstractions/cipher.service";
|
import { CipherService } from "../../../vault/abstractions/cipher.service";
|
||||||
import { InternalFolderService as InternalFolderServiceAbstraction } from "../../../vault/abstractions/folder/folder.service.abstraction";
|
import { InternalFolderService as InternalFolderServiceAbstraction } from "../../../vault/abstractions/folder/folder.service.abstraction";
|
||||||
import { CipherData } from "../../../vault/models/data/cipher.data";
|
|
||||||
import { FolderData } from "../../../vault/models/data/folder.data";
|
import { FolderData } from "../../../vault/models/data/folder.data";
|
||||||
import { Folder } from "../../../vault/models/domain/folder";
|
import { Folder } from "../../../vault/models/domain/folder";
|
||||||
import { FolderView } from "../../../vault/models/view/folder.view";
|
import { FolderView } from "../../../vault/models/view/folder.view";
|
||||||
|
import { Cipher } from "../../models/domain/cipher";
|
||||||
import { FOLDER_DECRYPTED_FOLDERS, FOLDER_ENCRYPTED_FOLDERS } from "../key-state/folder.state";
|
import { FOLDER_DECRYPTED_FOLDERS, FOLDER_ENCRYPTED_FOLDERS } from "../key-state/folder.state";
|
||||||
|
|
||||||
export class FolderService implements InternalFolderServiceAbstraction {
|
export class FolderService implements InternalFolderServiceAbstraction {
|
||||||
@@ -26,7 +25,6 @@ export class FolderService implements InternalFolderServiceAbstraction {
|
|||||||
private cryptoService: CryptoService,
|
private cryptoService: CryptoService,
|
||||||
private i18nService: I18nService,
|
private i18nService: I18nService,
|
||||||
private cipherService: CipherService,
|
private cipherService: CipherService,
|
||||||
private stateService: StateService,
|
|
||||||
private stateProvider: StateProvider,
|
private stateProvider: StateProvider,
|
||||||
) {
|
) {
|
||||||
this.encryptedFoldersState = this.stateProvider.getActive(FOLDER_ENCRYPTED_FOLDERS);
|
this.encryptedFoldersState = this.stateProvider.getActive(FOLDER_ENCRYPTED_FOLDERS);
|
||||||
@@ -144,9 +142,9 @@ export class FolderService implements InternalFolderServiceAbstraction {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Items in a deleted folder are re-assigned to "No Folder"
|
// Items in a deleted folder are re-assigned to "No Folder"
|
||||||
const ciphers = await this.stateService.getEncryptedCiphers();
|
const ciphers = await this.cipherService.getAll();
|
||||||
if (ciphers != null) {
|
if (ciphers != null) {
|
||||||
const updates: CipherData[] = [];
|
const updates: Cipher[] = [];
|
||||||
for (const cId in ciphers) {
|
for (const cId in ciphers) {
|
||||||
if (ciphers[cId].folderId === id) {
|
if (ciphers[cId].folderId === id) {
|
||||||
ciphers[cId].folderId = null;
|
ciphers[cId].folderId = null;
|
||||||
@@ -156,7 +154,7 @@ export class FolderService implements InternalFolderServiceAbstraction {
|
|||||||
if (updates.length > 0) {
|
if (updates.length > 0) {
|
||||||
// FIXME: Verify that this floating promise is intentional. If it is, add an explanatory comment and ensure there is proper error handling.
|
// FIXME: Verify that this floating promise is intentional. If it is, add an explanatory comment and ensure there is proper error handling.
|
||||||
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
||||||
this.cipherService.upsert(updates);
|
this.cipherService.upsert(updates.map((c) => c.toCipherData()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user