import { Button, ButtonSet, DataTable, ModalBody, ModalFooter, ModalHeader, Stack, Table, TableBody, TableCell, TableContainer, TableHead, TableHeader, TableRow, } from '@carbon/react'; import { formatDate, parseDate } from '@openmrs/esm-framework'; import React from 'react'; import { useTranslation } from 'react-i18next'; import { LabManifestSample } from '../hooks/useLabManifestOrders'; import styles from '../tables/lab-manifest-table.scss'; import PatientCCCNumbercell from '../tables/patient-ccc-no-cell.component'; interface SampleDeleteConfirmDialogProps { onClose: () => void; onDelete: () => void; samples?: Array; } const SampleDeleteConfirmDialog: React.FC = ({ onClose, onDelete, samples = [] }) => { const { t } = useTranslation(); const headers = [ { header: t('patient', 'Patient'), key: 'patient', }, { header: t('cccKDODNumber', 'CCC/KDOD Number'), key: 'cccKDODNumber', }, { header: t('batchNumber', 'Batch Number'), key: 'batchNumber', }, { header: t('sampleType', 'Sample type'), key: 'sampleType', }, { header: t('dateRequested', 'Date Requested'), key: 'dateRequested', }, { header: t('resultDate', 'Result Date'), key: 'resultDate', }, { header: t('result', 'Result'), key: 'result', }, ]; const tableRows = samples.map((sample) => { return { id: `${sample.uuid}`, sampleType: sample.sampleType ?? '--', status: sample.status, batchNumber: sample.batchNumber ?? '--', patient: sample?.order?.patient?.display ?? '--', cccKDODNumber: sample?.order?.patient?.uuid ? ( ) : ( '--' ), dateRequested: sample.dateSent ? formatDate(parseDate(sample.dateSent)) : '--', resultDate: sample.resultDate ? formatDate(parseDate(sample.resultDate)) : '--', result: sample.result ?? '--', }; }) ?? []; return ( {t('removeSampledFromManifest', 'Remove Samples from Manifest')} Are you sure yu would like to remove bellow samples from the manifest?
( <> {headers.map((header, i) => ( {header.header} ))} {rows.map((row, i) => ( {}}> {row.cells.map((cell) => ( {cell.value} ))} ))}
)} />
); }; export default SampleDeleteConfirmDialog;