From c33cc5c51eb058670708d3574853e063b5d907c2 Mon Sep 17 00:00:00 2001 From: Erik Jan de Wit Date: Tue, 8 Apr 2025 15:13:42 +0200 Subject: [PATCH] fixed flatten function (#38530) fixes: #37744 Signed-off-by: Erik Jan de Wit --- .../components/group/GroupPickerDialog.tsx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/js/apps/admin-ui/src/components/group/GroupPickerDialog.tsx b/js/apps/admin-ui/src/components/group/GroupPickerDialog.tsx index 0a8c480c0ce..1836dac8b09 100644 --- a/js/apps/admin-ui/src/components/group/GroupPickerDialog.tsx +++ b/js/apps/admin-ui/src/components/group/GroupPickerDialog.tsx @@ -242,7 +242,8 @@ export const GroupPickerDialog = ({ /> )) : groups - ?.map((g) => deepGroup(g)) + ?.map((g) => deepGroup([g])) + .flat() .map((g) => ( { - let result = group; - if (group.subGroups?.length === 1) { - result = deepGroup(group.subGroups[0]); +function deepGroup(groups: GroupRepresentation[]) { + const flattened: GroupRepresentation[] = []; + for (const group of groups) { + flattened.push(group); + if (group.subGroups && group.subGroups.length > 0) { + flattened.push(...deepGroup(group.subGroups)); + } } - - return result; -}; + return flattened; +} type GroupRowProps = { group: SelectableGroup;