mirror of
https://github.com/bitwarden/clients.git
synced 2026-07-01 21:10:49 +08:00
Dirt/pm 26487/member access reports icon colors (#19363)
This commit is contained in:
parent
d08d8743be
commit
056a76edb4
@ -44,8 +44,8 @@
|
||||
<div class="tw-flex tw-items-center">
|
||||
<bit-avatar
|
||||
size="small"
|
||||
[text]="row.name"
|
||||
[id]="row.userGuid"
|
||||
[text]="row.name ? row.name : row.email"
|
||||
[id]="row.userIdFromOrgUser"
|
||||
[color]="row.avatarColor"
|
||||
class="tw-mr-3"
|
||||
></bit-avatar>
|
||||
|
||||
@ -65,6 +65,7 @@ function createMockMember(index: number): MemberAccessReportView {
|
||||
groupsCount: ((index * 2) % 5) + 1, // Deterministic: 1-5
|
||||
itemsCount: ((index * 17) % 200) + 1, // Deterministic: 1-200
|
||||
usesKeyConnector: index % 2 === 0, // Deterministic: alternating true/false
|
||||
userIdFromOrgUser: `userIdFromOrgUser${index}`,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@ -106,6 +106,7 @@ describe("MemberAccessReportService", () => {
|
||||
resetPasswordEnrolled: options.resetPasswordEnrolled ?? false,
|
||||
groups: options.groups ?? [],
|
||||
avatarColor: options.avatarColor,
|
||||
userId: "userIdFromOrgUser" + id,
|
||||
});
|
||||
|
||||
const createMockCipher = (id: string, collectionIds: string[]): Partial<CipherView> => ({
|
||||
@ -224,6 +225,7 @@ describe("MemberAccessReportService", () => {
|
||||
itemsCount: 0,
|
||||
userGuid: expect.any(String),
|
||||
usesKeyConnector: expect.any(Boolean),
|
||||
userIdFromOrgUser: "",
|
||||
},
|
||||
{
|
||||
name: "James Lull",
|
||||
@ -234,6 +236,7 @@ describe("MemberAccessReportService", () => {
|
||||
itemsCount: 0,
|
||||
userGuid: expect.any(String),
|
||||
usesKeyConnector: expect.any(Boolean),
|
||||
userIdFromOrgUser: "",
|
||||
},
|
||||
{
|
||||
name: "Beth Williams",
|
||||
@ -244,6 +247,7 @@ describe("MemberAccessReportService", () => {
|
||||
itemsCount: 0,
|
||||
userGuid: expect.any(String),
|
||||
usesKeyConnector: expect.any(Boolean),
|
||||
userIdFromOrgUser: "",
|
||||
},
|
||||
{
|
||||
name: "Ray Williams",
|
||||
@ -254,6 +258,7 @@ describe("MemberAccessReportService", () => {
|
||||
itemsCount: 0,
|
||||
userGuid: expect.any(String),
|
||||
usesKeyConnector: expect.any(Boolean),
|
||||
userIdFromOrgUser: "",
|
||||
},
|
||||
]);
|
||||
});
|
||||
@ -452,6 +457,7 @@ describe("MemberAccessReportService", () => {
|
||||
collectionsCount: 1,
|
||||
groupsCount: 1,
|
||||
itemsCount: 1,
|
||||
userIdFromOrgUser: "userIdFromOrgUser" + userId1,
|
||||
});
|
||||
});
|
||||
|
||||
@ -503,6 +509,7 @@ describe("MemberAccessReportService", () => {
|
||||
collectionsCount: 2, // Distinct collections
|
||||
groupsCount: 0,
|
||||
itemsCount: 3, // Distinct ciphers
|
||||
userIdFromOrgUser: "userIdFromOrgUser" + userId1,
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@ -50,6 +50,7 @@ interface OrganizationUserData {
|
||||
twoFactorEnabled: boolean;
|
||||
usesKeyConnector: boolean;
|
||||
resetPasswordEnrolled: boolean;
|
||||
userIdFromOrgUser: string | null; // userId from organization user endpoint (may be null for some users, e.g. pending invites)
|
||||
}
|
||||
|
||||
interface MemberCipherAccess {
|
||||
@ -128,6 +129,7 @@ export class MemberAccessReportService {
|
||||
groupsCount: groupCount,
|
||||
itemsCount: itemsCount,
|
||||
usesKeyConnector: userDataArray.some((data) => data.usesKeyConnector),
|
||||
userIdFromOrgUser: "", // V1 API doesn't provide userId from OrgUser endpoint
|
||||
};
|
||||
|
||||
memberAccessReportViewCollection.push(aggregatedData);
|
||||
@ -298,6 +300,7 @@ export class MemberAccessReportService {
|
||||
twoFactorEnabled: orgUser.twoFactorEnabled || false,
|
||||
usesKeyConnector: orgUser.usesKeyConnector || false,
|
||||
resetPasswordEnrolled: orgUser.resetPasswordEnrolled || false,
|
||||
userIdFromOrgUser: orgUser.userId || null,
|
||||
});
|
||||
}
|
||||
|
||||
@ -531,6 +534,7 @@ export class MemberAccessReportService {
|
||||
groupsCount: data.groups.size,
|
||||
itemsCount: data.items.size,
|
||||
usesKeyConnector: metadata.usesKeyConnector,
|
||||
userIdFromOrgUser: metadata.userIdFromOrgUser,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -9,4 +9,5 @@ export type MemberAccessReportView = {
|
||||
itemsCount: number;
|
||||
userGuid: Guid;
|
||||
usesKeyConnector: boolean;
|
||||
userIdFromOrgUser: string | null; // maybe null and used for avatar
|
||||
};
|
||||
|
||||
Loading…
Reference in New Issue
Block a user