'use client'; import { AlertModal } from '@/components/modal/alert-modal'; import { useDeleteTraining } from '@/feactures/training/hooks/use-training'; import { TrainingSchema } from '@/feactures/training/schemas/training'; import { Button } from '@repo/shadcn/button'; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from '@repo/shadcn/tooltip'; import { Edit, Eye, Trash, FileDown } from 'lucide-react'; import { useRouter } from 'next/navigation'; import { useState } from 'react'; import { TrainingViewModal } from '../training-view-modal'; interface CellActionProps { data: TrainingSchema; apiUrl: string; } export const CellAction: React.FC = ({ data, apiUrl }) => { const [loading, setLoading] = useState(false); const [open, setOpen] = useState(false); const [viewOpen, setViewOpen] = useState(false); const { mutate: deleteTraining } = useDeleteTraining(); const router = useRouter(); const onConfirm = async () => { try { setLoading(true); deleteTraining(data.id!); setOpen(false); } catch (error) { console.error('Error:', error); } finally { setLoading(false); } }; const handleExport = (id?: number | undefined) => { window.open(`${apiUrl}/training/export/${id}`, '_blank'); }; return ( <> setOpen(false)} onConfirm={onConfirm} loading={loading} title="¿Estás seguro que desea eliminar este registro?" description="Esta acción no se puede deshacer." /> setViewOpen(false)} data={data} />

Ver detalle

Exportar Excel

Editar

Eliminar

); };