import { IconArchiveOff, IconDotsVertical, IconEye, IconPencil, IconTrash, LightIconButton, } from 'twenty-ui'; import { Dropdown } from '@/ui/layout/dropdown/components/Dropdown'; import { DropdownMenu } from '@/ui/layout/dropdown/components/DropdownMenu'; import { DropdownMenuItemsContainer } from '@/ui/layout/dropdown/components/DropdownMenuItemsContainer'; import { useDropdown } from '@/ui/layout/dropdown/hooks/useDropdown'; import { MenuItem } from '@/ui/navigation/menu-item/components/MenuItem'; import { FieldMetadataType } from '~/generated-metadata/graphql'; type SettingsObjectFieldInactiveActionDropdownProps = { isCustomField?: boolean; fieldType?: FieldMetadataType; onActivate: () => void; onEdit: () => void; onDelete: () => void; scopeKey: string; }; export const SettingsObjectFieldInactiveActionDropdown = ({ onActivate, scopeKey, onDelete, onEdit, isCustomField, }: SettingsObjectFieldInactiveActionDropdownProps) => { const dropdownId = `${scopeKey}-settings-field-disabled-action-dropdown`; const { closeDropdown } = useDropdown(dropdownId); const handleActivate = () => { onActivate(); closeDropdown(); }; const handleDelete = () => { onDelete(); closeDropdown(); }; const handleEdit = () => { onEdit(); closeDropdown(); }; const isDeletable = isCustomField; return ( } dropdownComponents={ {isDeletable && ( )} } dropdownHotkeyScope={{ scope: dropdownId, }} /> ); };