mirror of
https://github.com/bitwarden/browser
synced 2025-12-10 13:23:34 +00:00
return updated folder when saving a folder (#12894)
This commit is contained in:
@@ -14,6 +14,7 @@ import { Utils } from "@bitwarden/common/platform/misc/utils";
|
|||||||
import { CipherService } from "@bitwarden/common/vault/abstractions/cipher.service";
|
import { CipherService } from "@bitwarden/common/vault/abstractions/cipher.service";
|
||||||
import { FolderApiServiceAbstraction } from "@bitwarden/common/vault/abstractions/folder/folder-api.service.abstraction";
|
import { FolderApiServiceAbstraction } from "@bitwarden/common/vault/abstractions/folder/folder-api.service.abstraction";
|
||||||
import { FolderService } from "@bitwarden/common/vault/abstractions/folder/folder.service.abstraction";
|
import { FolderService } from "@bitwarden/common/vault/abstractions/folder/folder.service.abstraction";
|
||||||
|
import { Folder } from "@bitwarden/common/vault/models/domain/folder";
|
||||||
import { KeyService } from "@bitwarden/key-management";
|
import { KeyService } from "@bitwarden/key-management";
|
||||||
|
|
||||||
import { OrganizationCollectionRequest } from "../admin-console/models/request/organization-collection.request";
|
import { OrganizationCollectionRequest } from "../admin-console/models/request/organization-collection.request";
|
||||||
@@ -152,8 +153,8 @@ export class EditCommand {
|
|||||||
const userKey = await this.keyService.getUserKeyWithLegacySupport(activeUserId);
|
const userKey = await this.keyService.getUserKeyWithLegacySupport(activeUserId);
|
||||||
const encFolder = await this.folderService.encrypt(folderView, userKey);
|
const encFolder = await this.folderService.encrypt(folderView, userKey);
|
||||||
try {
|
try {
|
||||||
await this.folderApiService.save(encFolder, activeUserId);
|
const folder = await this.folderApiService.save(encFolder, activeUserId);
|
||||||
const updatedFolder = await this.folderService.get(folder.id, activeUserId);
|
const updatedFolder = new Folder(folder);
|
||||||
const decFolder = await updatedFolder.decrypt();
|
const decFolder = await updatedFolder.decrypt();
|
||||||
const res = new FolderResponse(decFolder);
|
const res = new FolderResponse(decFolder);
|
||||||
return Response.success(res);
|
return Response.success(res);
|
||||||
|
|||||||
@@ -2,11 +2,12 @@
|
|||||||
// @ts-strict-ignore
|
// @ts-strict-ignore
|
||||||
|
|
||||||
import { UserId } from "../../../types/guid";
|
import { UserId } from "../../../types/guid";
|
||||||
|
import { FolderData } from "../../models/data/folder.data";
|
||||||
import { Folder } from "../../models/domain/folder";
|
import { Folder } from "../../models/domain/folder";
|
||||||
import { FolderResponse } from "../../models/response/folder.response";
|
import { FolderResponse } from "../../models/response/folder.response";
|
||||||
|
|
||||||
export class FolderApiServiceAbstraction {
|
export class FolderApiServiceAbstraction {
|
||||||
save: (folder: Folder, userId: UserId) => Promise<any>;
|
save: (folder: Folder, userId: UserId) => Promise<FolderData>;
|
||||||
delete: (id: string, userId: UserId) => Promise<any>;
|
delete: (id: string, userId: UserId) => Promise<any>;
|
||||||
get: (id: string) => Promise<FolderResponse>;
|
get: (id: string) => Promise<FolderResponse>;
|
||||||
deleteAll: (userId: UserId) => Promise<void>;
|
deleteAll: (userId: UserId) => Promise<void>;
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ export class FolderApiService implements FolderApiServiceAbstraction {
|
|||||||
private apiService: ApiService,
|
private apiService: ApiService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
async save(folder: Folder, userId: UserId): Promise<any> {
|
async save(folder: Folder, userId: UserId): Promise<FolderData> {
|
||||||
const request = new FolderRequest(folder);
|
const request = new FolderRequest(folder);
|
||||||
|
|
||||||
let response: FolderResponse;
|
let response: FolderResponse;
|
||||||
@@ -26,6 +26,7 @@ export class FolderApiService implements FolderApiServiceAbstraction {
|
|||||||
|
|
||||||
const data = new FolderData(response);
|
const data = new FolderData(response);
|
||||||
await this.folderService.upsert(data, userId);
|
await this.folderService.upsert(data, userId);
|
||||||
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
async delete(id: string, userId: UserId): Promise<any> {
|
async delete(id: string, userId: UserId): Promise<any> {
|
||||||
|
|||||||
Reference in New Issue
Block a user