user_group_edit: Fix live update of checkmark in left panel.

This commit adds code to live update the checkmark in left panel
on updating the user's membership even for groups whose membership
is not updated directly but has updated group as its subgroup.
This commit is contained in:
Sahil Batra
2024-12-10 16:54:56 +05:30
committed by Tim Abbott
parent a7fe3c822a
commit ab67b87db3
2 changed files with 50 additions and 29 deletions

View File

@@ -332,6 +332,12 @@ export function is_subgroup_of_target_group(target_group_id: number, subgroup_id
return recursive_subgroup_ids.has(subgroup_id);
}
export function get_supergroups_of_user_group(group_id: number): UserGroup[] {
return get_realm_user_groups().filter((user_group) =>
is_subgroup_of_target_group(user_group.id, group_id),
);
}
export function get_recursive_group_members(target_user_group: UserGroup): Set<number> {
const members = new Set(target_user_group.members);
const subgroup_ids = get_recursive_subgroups(target_user_group);