import React from 'react'; import { useSystem, utils } from '@ohif/core'; import { AccordionTrigger, MeasurementTable, ScrollArea, useViewportGrid } from '@ohif/ui-next'; import { PanelMeasurement, StudyMeasurements, StudySummaryFromMetadata, AccordionGroup, StudyMeasurementsActions, MeasurementsOrAdditionalFindings, } from '@ohif/extension-cornerstone'; import { useTrackedMeasurements } from '../getContextModule'; import { UntrackSeriesModal } from './PanelStudyBrowserTracking/untrackSeriesModal'; const { filterMeasurementsBySeriesUID, filterAny } = utils.MeasurementFilters; function PanelMeasurementTableTracking(props) { const [viewportGrid] = useViewportGrid(); const { servicesManager } = useSystem(); const { measurementService, uiModalService } = servicesManager.services; const [trackedMeasurements, sendTrackedMeasurementsEvent] = useTrackedMeasurements(); const { trackedStudy, trackedSeries } = trackedMeasurements.context; const measurementFilter = trackedStudy ? filterMeasurementsBySeriesUID(trackedSeries) : filterAny; const onUntrackConfirm = () => { sendTrackedMeasurementsEvent('UNTRACK_ALL', { trackedStudy, trackedSeries }); }; const onDelete = () => { const hasMeasurements = measurementService.getMeasurements().length > 0; if (hasMeasurements) { uiModalService.show({ title: 'Untrack Study', content: UntrackSeriesModal, contentProps: { onConfirm: onUntrackConfirm, message: 'Are you sure you want to untrack study and delete all measurements?', }, }); } else { onUntrackConfirm(); } }; const EmptyComponent = () => (
); const actions = { createSR: ({ StudyInstanceUID }) => { sendTrackedMeasurementsEvent('SAVE_REPORT', { viewportId: viewportGrid.activeViewportId, isBackupSave: true, StudyInstanceUID, measurementFilter, }); }, onDelete, }; const Header = props => (
); return (
); } export default PanelMeasurementTableTracking;