1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-10 05:13:29 +00:00

Adding include my items to the services and reports (#16987)

This commit is contained in:
Tom
2025-10-23 12:54:52 -04:00
committed by GitHub
parent 2c13236550
commit 81e9015b5b
8 changed files with 29 additions and 16 deletions

View File

@@ -194,7 +194,10 @@ export abstract class ApiService {
cipherId: string,
attachmentId: string,
): Promise<AttachmentResponse>;
abstract getCiphersOrganization(organizationId: string): Promise<ListResponse<CipherResponse>>;
abstract getCiphersOrganization(
organizationId: string,
includeMemberItems?: boolean,
): Promise<ListResponse<CipherResponse>>;
abstract postCipher(request: CipherRequest): Promise<CipherResponse>;
abstract postCipherCreate(request: CipherCreateRequest): Promise<CipherResponse>;
abstract postCipherAdmin(request: CipherCreateRequest): Promise<CipherResponse>;

View File

@@ -408,14 +408,15 @@ export class ApiService implements ApiServiceAbstraction {
return new CipherResponse(r);
}
async getCiphersOrganization(organizationId: string): Promise<ListResponse<CipherResponse>> {
const r = await this.send(
"GET",
"/ciphers/organization-details?organizationId=" + organizationId,
null,
true,
true,
);
async getCiphersOrganization(
organizationId: string,
includeMemberItems?: boolean,
): Promise<ListResponse<CipherResponse>> {
let url = "/ciphers/organization-details?organizationId=" + organizationId;
if (includeMemberItems) {
url += `&includeMemberItems=${includeMemberItems}`;
}
const r = await this.send("GET", url, null, true, true);
return new ListResponse(r, CipherResponse);
}

View File

@@ -76,7 +76,10 @@ export abstract class CipherService implements UserKeyRotationDataProvider<Ciphe
/** When true, will override the match strategy for the cipher if it is Never. */
overrideNeverMatchStrategy?: true,
): Promise<C[]>;
abstract getAllFromApiForOrganization(organizationId: string): Promise<CipherView[]>;
abstract getAllFromApiForOrganization(
organizationId: string,
includeMemberItems?: boolean,
): Promise<CipherView[]>;
/**
* Gets ciphers belonging to the specified organization that the user has explicit collection level access to.
* Ciphers that are not assigned to any collections are only included for users with admin access.

View File

@@ -691,8 +691,14 @@ export class CipherService implements CipherServiceAbstraction {
.sort((a, b) => this.sortCiphersByLastUsedThenName(a, b));
}
async getAllFromApiForOrganization(organizationId: string): Promise<CipherView[]> {
const response = await this.apiService.getCiphersOrganization(organizationId);
async getAllFromApiForOrganization(
organizationId: string,
includeMemberItems?: boolean,
): Promise<CipherView[]> {
const response = await this.apiService.getCiphersOrganization(
organizationId,
includeMemberItems,
);
return await this.decryptOrganizationCiphersResponse(response, organizationId);
}