import React from 'react'; import PropTypes from 'prop-types'; import classnames from 'classnames'; import { ThumbnailList } from '../ThumbnailList'; import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '../Accordion'; const StudyItem = ({ date, description, numInstances, modalities, isActive, onClick, isExpanded, displaySets, activeDisplaySetInstanceUIDs, onClickThumbnail, onDoubleClickThumbnail, onClickUntrack, viewPreset = 'thumbnails', onThumbnailContextMenu, servicesManager, // Tambah servicesManager as a prop studyInstanceUid = '', }: withAppTypes) => { // FETCHING ACCESSION NUMBER DAN EXPERTISE return ( {}} className="flex-shrink-0" role="button" tabIndex={0} defaultValue={isActive ? 'study-item' : undefined} >
{date}
{description}
{modalities}
{numInstances}
{ event.stopPropagation(); }} > {isExpanded && displaySets && ( <> {/* Expertise Button */}
{ // Trigger the expertise panel in the right side panel (segmentation Panel) servicesManager.services.panelService.activatePanel( // '@ohif/extension-cornerstone.panelModule.panelSegmentation-exp', `@ohif/extension-cornerstone.panelModule.panelSegmentation-exp-${studyInstanceUid}`, true ); }} > Expertise
{/* Thumbnails */} )}
); }; StudyItem.propTypes = { date: PropTypes.string.isRequired, description: PropTypes.string, modalities: PropTypes.string.isRequired, numInstances: PropTypes.number.isRequired, trackedSeries: PropTypes.number, isActive: PropTypes.bool, onClick: PropTypes.func.isRequired, isExpanded: PropTypes.bool, displaySets: PropTypes.array, activeDisplaySetInstanceUIDs: PropTypes.array, onClickThumbnail: PropTypes.func, onDoubleClickThumbnail: PropTypes.func, onClickUntrack: PropTypes.func, viewPreset: PropTypes.string, servicesManager: PropTypes.object.isRequired, // Tambah servicesManager prop studyInstanceUid: PropTypes.string.string, }; export { StudyItem };