diff --git a/angular/src/components/folder-add-edit.component.ts b/angular/src/components/folder-add-edit.component.ts index 99a6ee44..fac07d84 100644 --- a/angular/src/components/folder-add-edit.component.ts +++ b/angular/src/components/folder-add-edit.component.ts @@ -42,7 +42,7 @@ export class FolderAddEditComponent implements OnInit { } try { - const folder = await this.folderService.encrypt(this.folder); + const folder = await this.folder.encrypt(this.cryptoService); this.formPromise = this.folderService.saveWithServer(folder); await this.formPromise; this.platformUtilsService.showToast( diff --git a/common/src/abstractions/folder.service.ts b/common/src/abstractions/folder.service.ts index 738305ad..4e7c95bb 100644 --- a/common/src/abstractions/folder.service.ts +++ b/common/src/abstractions/folder.service.ts @@ -6,7 +6,6 @@ import { FolderView } from "../models/view/folderView"; export abstract class FolderService { clearCache: (userId?: string) => Promise; - encrypt: (model: FolderView, key?: SymmetricCryptoKey) => Promise; get: (id: string) => Promise; getAll: () => Promise; getAllDecrypted: () => Promise; diff --git a/common/src/models/view/folderView.ts b/common/src/models/view/folderView.ts index a55819e1..6df56e44 100644 --- a/common/src/models/view/folderView.ts +++ b/common/src/models/view/folderView.ts @@ -1,7 +1,6 @@ import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { Folder } from "../domain/folder"; -import { SymmetricCryptoKey } from "../domain/symmetricCryptoKey"; import { ITreeNodeObject } from "../domain/treeNode"; export class FolderView implements ITreeNodeObject { @@ -9,6 +8,14 @@ export class FolderView implements ITreeNodeObject { name: string = null; revisionDate: Date = null; + async encrypt(cryptoService: CryptoService): Promise { + return { + id: this.id, + name: await cryptoService.encrypt(this.name), + revisionDate: null, + }; + } + static async fromFolder(cryptoService: CryptoService, folder: Folder): Promise { const view = new FolderView(); view.id = folder.id; diff --git a/common/src/services/folder.service.ts b/common/src/services/folder.service.ts index 90ee124d..952dd4c9 100644 --- a/common/src/services/folder.service.ts +++ b/common/src/services/folder.service.ts @@ -30,14 +30,6 @@ export class FolderService implements FolderServiceAbstraction { await this.stateService.setDecryptedFolders(null, { userId: userId }); } - async encrypt(model: FolderView, key?: SymmetricCryptoKey): Promise { - return { - id: model.id, - name: await this.cryptoService.encrypt(model.name, key), - revisionDate: null, - }; - } - async decrypt(model: Folder, key?: SymmetricCryptoKey): Promise { const view = new FolderView(); view.id = model.id; diff --git a/common/src/services/import.service.ts b/common/src/services/import.service.ts index 618fbda9..eeb559ce 100644 --- a/common/src/services/import.service.ts +++ b/common/src/services/import.service.ts @@ -296,7 +296,7 @@ export class ImportService implements ImportServiceAbstraction { } if (importResult.folders != null) { for (let i = 0; i < importResult.folders.length; i++) { - const f = await this.folderService.encrypt(importResult.folders[i]); + const f = await importResult.folders[i].encrypt(this.cryptoService); request.folders.push(new FolderRequest(f)); } }