Skip to content

Commit f311d33

Browse files
authored
(fix) Dispensing ESM should not render conditions and diagnoses tab if no extensions are available for slot (#766)
1 parent 8b07098 commit f311d33

File tree

2 files changed

+13
-10
lines changed

2 files changed

+13
-10
lines changed

src/prescriptions/prescription-expanded.component.tsx

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react';
2-
import { ExtensionSlot, type PatientUuid } from '@openmrs/esm-framework';
2+
import { getAssignedExtensions, ExtensionSlot, type PatientUuid } from '@openmrs/esm-framework';
33
import { Tab, Tabs, TabList, TabPanels, TabPanel } from '@carbon/react';
44
import { useTranslation } from 'react-i18next';
55
import 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>

yarn.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8150,9 +8150,9 @@ __metadata:
81508150
linkType: hard
81518151

81528152
"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001646, caniuse-lite@npm:^1.0.30001716":
8153-
version: 1.0.30001718
8154-
resolution: "caniuse-lite@npm:1.0.30001718"
8155-
checksum: 10/e172a4c156f743cc947e659f353ad9edb045725cc109a02cc792dcbf98569356ebfa4bb4356e3febf87427aab0951c34c1ee5630629334f25ae6f76de7d86fd0
8153+
version: 1.0.30001774
8154+
resolution: "caniuse-lite@npm:1.0.30001774"
8155+
checksum: 10/63c87aeac08548847ecd12746144029761707d9eae57750f673543a2b2a6126bca98584dd551818e8dc2a480d11489bebe0027af26de4ee46466e7b216109862
81568156
languageName: node
81578157
linkType: hard
81588158

0 commit comments

Comments
 (0)