feat: meeting members admission dialog #210
@@ -517,7 +517,7 @@ export default class MembersList extends Vue {
|
||||
}
|
||||
|
||||
getMembersForVisibility() {
|
||||
return this.decryptedMembers
|
||||
const membersForVisibility = this.decryptedMembers
|
||||
.filter((member) => {
|
||||
// Exclude the current user
|
||||
if (member.did === this.activeDid) {
|
||||
@@ -539,6 +539,14 @@ export default class MembersList extends Vue {
|
||||
memberId: member.member.memberId.toString(),
|
||||
},
|
||||
}));
|
||||
|
||||
// Deduplicate members by DID to prevent duplicate entries
|
||||
const uniqueMembers = membersForVisibility.filter(
|
||||
(member, index, self) =>
|
||||
index === self.findIndex((m) => m.did === member.did),
|
||||
);
|
||||
|
||||
return uniqueMembers;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -799,12 +807,12 @@ export default class MembersList extends Vue {
|
||||
// Pause auto-refresh when dialog opens
|
||||
this.stopAutoRefresh();
|
||||
|
||||
// Reset manual refresh flag when showing visibility dialog
|
||||
this.isManualRefresh = false;
|
||||
|
||||
// Open the dialog directly
|
||||
this.visibilityDialogMembers = membersForVisibility;
|
||||
this.showSetVisibilityDialog = true;
|
||||
|
||||
// Reset manual refresh flag after dialog is shown
|
||||
this.isManualRefresh = false;
|
||||
}
|
||||
|
||||
startAutoRefresh() {
|
||||
|
||||
Reference in New Issue
Block a user