mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-06 21:27:10 +00:00
Merge pull request #2432 from Infisical/fix/addressed-group-view-issue-in-approval-creation
fix: address group view issue encountered during policy creation
This commit is contained in:
@@ -152,7 +152,7 @@ export const groupProjectDALFactory = (db: TDbClient) => {
|
|||||||
`${TableName.ProjectRoles}.id`
|
`${TableName.ProjectRoles}.id`
|
||||||
)
|
)
|
||||||
.select(
|
.select(
|
||||||
db.ref("id").withSchema(TableName.GroupProjectMembership),
|
db.ref("id").withSchema(TableName.UserGroupMembership),
|
||||||
db.ref("isGhost").withSchema(TableName.Users),
|
db.ref("isGhost").withSchema(TableName.Users),
|
||||||
db.ref("username").withSchema(TableName.Users),
|
db.ref("username").withSchema(TableName.Users),
|
||||||
db.ref("email").withSchema(TableName.Users),
|
db.ref("email").withSchema(TableName.Users),
|
||||||
|
|||||||
@@ -90,15 +90,20 @@ export const projectMembershipServiceFactory = ({
|
|||||||
// projectMembers[0].project
|
// projectMembers[0].project
|
||||||
if (includeGroupMembers) {
|
if (includeGroupMembers) {
|
||||||
const groupMembers = await groupProjectDAL.findAllProjectGroupMembers(projectId);
|
const groupMembers = await groupProjectDAL.findAllProjectGroupMembers(projectId);
|
||||||
|
|
||||||
const allMembers = [
|
const allMembers = [
|
||||||
...projectMembers.map((m) => ({ ...m, isGroupMember: false })),
|
...projectMembers.map((m) => ({ ...m, isGroupMember: false })),
|
||||||
...groupMembers.map((m) => ({ ...m, isGroupMember: true }))
|
...groupMembers.map((m) => ({ ...m, isGroupMember: true }))
|
||||||
];
|
];
|
||||||
|
|
||||||
// Ensure the userId is unique
|
// Ensure the userId is unique
|
||||||
const membersIds = new Set(allMembers.map((entity) => entity.user.id));
|
const uniqueMembers: typeof allMembers = [];
|
||||||
const uniqueMembers = allMembers.filter((entity) => membersIds.has(entity.user.id));
|
const addedUserIds = new Set<string>();
|
||||||
|
allMembers.forEach((member) => {
|
||||||
|
if (!addedUserIds.has(member.user.id)) {
|
||||||
|
uniqueMembers.push(member);
|
||||||
|
addedUserIds.add(member.user.id);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
return uniqueMembers;
|
return uniqueMembers;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user