import { ActionIcon, Table, Tooltip } from "@mantine/core"; import { type Contract } from "@/services/resources/contracts"; import { IconDownload, IconX } from "@tabler/icons-react"; import { t } from "@/config/i18n"; import { useGetContractFile } from "@/services/api"; import { useCallback } from "react"; import { useNavigate } from "react-router"; export type ContractRowProps = { contract: Contract; }; export default function ContractRow({ contract }: ContractRowProps) { const getContractMutation = useGetContractFile(); const navigate = useNavigate(); const handleDownload = useCallback(async () => { getContractMutation.mutateAsync(contract.id); }, [useGetContractFile, contract, contract.id]); return ( {contract.form.name} {contract.form.season} {contract.firstname} {contract.lastname} {contract.email} {contract.cheque_quantity > 0 && contract.cheque_quantity} {contract.payment_method} {`${Intl.NumberFormat("fr-FR", { style: "currency", currency: "EUR", }).format(contract.total_price)}`} { e.stopPropagation(); handleDownload(); }} > { e.stopPropagation(); navigate(`/dashboard/contracts/${contract.id}/delete`); }} > ); }