import React, { FC, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { IUserGroupHasId } from '~/interfaces/user'; type Props = { selectableUserGroups?: IUserGroupHasId[] onClickAddExistingUserGroupButton?(userGroup: IUserGroupHasId | null): void onClickCreateUserGroupButton?(): void }; const UserGroupDropdown: FC = (props: Props) => { const { t } = useTranslation(); const { selectableUserGroups, onClickAddExistingUserGroupButton, onClickCreateUserGroupButton } = props; const onClickAddExistingUserGroupButtonHandler = useCallback((userGroup: IUserGroupHasId) => { if (onClickAddExistingUserGroupButton != null) { onClickAddExistingUserGroupButton(userGroup); } }, [onClickAddExistingUserGroupButton]); const onClickCreateUserGroupButtonHandler = useCallback(() => { if (onClickCreateUserGroupButton != null) { onClickCreateUserGroupButton(); } }, [onClickCreateUserGroupButton]); return ( <>
{ (selectableUserGroups != null && selectableUserGroups.length > 0) && ( <> { selectableUserGroups.map(userGroup => ( )) }
) }
); }; export default UserGroupDropdown;