import Avatar from '@mui/material/Avatar'; import Box from '@mui/material/Box'; import Button from '@mui/material/Button'; import Checkbox from '@mui/material/Checkbox'; import IconButton from '@mui/material/IconButton'; import Link from '@mui/material/Link'; import MenuItem from '@mui/material/MenuItem'; import MenuList from '@mui/material/MenuList'; import Stack from '@mui/material/Stack'; import TableCell from '@mui/material/TableCell'; import TableRow from '@mui/material/TableRow'; import Tooltip from '@mui/material/Tooltip'; import { useBoolean, usePopover } from 'minimal-shared/hooks'; import { useTranslation } from 'react-i18next'; import { ConfirmDialog } from 'src/components/custom-dialog'; import { CustomPopover } from 'src/components/custom-popover'; import { Iconify } from 'src/components/iconify'; import { Label } from 'src/components/label'; import { RouterLink } from 'src/routes/components'; import type { IUserItem } from 'src/types/user'; import { UserQuickEditForm } from './user-quick-edit-form'; import { useState } from 'react'; // ---------------------------------------------------------------------- type Props = { row: IUserItem; selected: boolean; editHref: string; onSelectRow: () => void; onDeleteRow: () => void; }; export function UserTableRow({ row, selected, editHref, onSelectRow, onDeleteRow }: Props) { const menuActions = usePopover(); const confirmDialog = useBoolean(); const quickEditForm = useBoolean(); const { t } = useTranslation(); const renderQuickEditForm = () => ( ); const renderMenuActions = () => (
  • menuActions.onClose()}> {t('Edit')}
  • { confirmDialog.onTrue(); menuActions.onClose(); }} sx={{ color: 'error.main' }} > {t('Delete')}
    ); const [disableDeleteButton, setDisableDeleteButton] = useState(false); const renderConfirmDialog = () => ( { setDisableDeleteButton(true); onDeleteRow(); }} > {t('Delete')} } /> ); return ( <> {row.name} {row.email} {row.phoneNumber} {row.company} {row.role} {renderQuickEditForm()} {renderMenuActions()} {renderConfirmDialog()} ); }