11import React from 'react' ;
2- import { ExtensionSlot , type PatientUuid } from '@openmrs/esm-framework' ;
2+ import { getAssignedExtensions , ExtensionSlot , type PatientUuid } from '@openmrs/esm-framework' ;
33import { Tab , Tabs , TabList , TabPanels , TabPanel } from '@carbon/react' ;
44import { useTranslation } from 'react-i18next' ;
55import HistoryAndComments from '../history/history-and-comments.component' ;
@@ -16,16 +16,19 @@ const PrescriptionExpanded: React.FC<{
1616 patientUuid : PatientUuid ;
1717} > = ( { encounterUuid, patientUuid } ) => {
1818 const { t } = useTranslation ( ) ;
19+ const conditionsAndDiagnosisExtensions = getAssignedExtensions ( 'dispensing-condition-and-diagnoses' ) ;
1920
2021 const tabs : TabItem [ ] = [
2122 {
2223 name : t ( 'prescriptionDetails' , 'Prescription details' ) ,
2324 component : < PrescriptionDetails encounterUuid = { encounterUuid } patientUuid = { patientUuid } /> ,
2425 } ,
25- {
26- name : t ( 'conditionsAndDiagnoses' , 'Conditions and diagnoses' ) ,
27- component : < ExtensionSlot name = "dispensing-condition-and-diagnoses" state = { { patientUuid, encounterUuid } } /> ,
28- } ,
26+ conditionsAndDiagnosisExtensions && conditionsAndDiagnosisExtensions . length > 0
27+ ? {
28+ name : t ( 'conditionsAndDiagnoses' , 'Conditions and diagnoses' ) ,
29+ component : < ExtensionSlot name = "dispensing-condition-and-diagnoses" state = { { patientUuid, encounterUuid } } /> ,
30+ }
31+ : null ,
2932 {
3033 name : t ( 'historyComments' , 'History and comments' ) ,
3134 component : < HistoryAndComments encounterUuid = { encounterUuid } patientUuid = { patientUuid } /> ,
@@ -37,12 +40,12 @@ const PrescriptionExpanded: React.FC<{
3740 < div className = { styles . verticalTabs } >
3841 < Tabs >
3942 < TabList aria-label = { t ( 'tabList' , 'Tab List' ) } >
40- { tabs . map ( ( tab : TabItem , index : number ) => (
43+ { tabs . filter ( Boolean ) . map ( ( tab : TabItem , index : number ) => (
4144 < Tab key = { index } > { tab . name } </ Tab >
4245 ) ) }
4346 </ TabList >
4447 < TabPanels >
45- { tabs . map ( ( tab : TabItem , index ) => (
48+ { tabs . filter ( Boolean ) . map ( ( tab : TabItem , index ) => (
4649 < TabPanel key = { index } > { tab . component } </ TabPanel >
4750 ) ) }
4851 </ TabPanels >
0 commit comments