// Multi-select component for groups import { useMemo } from 'react' import useGroups from '@/hooks/useGroups' interface GroupMultiSelectProps { workspaceId: string selectedGroups: string[] onChange: (groups: string[]) => void disabled?: boolean includeSystem?: boolean } export function GroupMultiSelect({ workspaceId, selectedGroups, onChange, disabled = false, includeSystem = true, }: GroupMultiSelectProps) { const { groups, isLoading } = useGroups({ workspaceId, includeSystem, }) const handleToggle = (groupId: string) => { if (selectedGroups.includes(groupId)) { onChange(selectedGroups.filter((id) => id !== groupId)) } else { onChange([...selectedGroups, groupId]) } } const handleClear = () => { onChange([]) } const selectedGroupNames = useMemo(() => { return selectedGroups .map((id) => groups.find((g) => g.id === id)?.name) .filter(Boolean) as string[] }, [selectedGroups, groups]) if (isLoading) { return (