From efd3a5bccb91799a34a3fe7e8fb3250552d169e7 Mon Sep 17 00:00:00 2001
From: Amos Machora <amosmachora13@gmail.com>
Date: Tue, 21 Jan 2025 17:48:47 +0300
Subject: [PATCH 1/3] refactor: use sha status to check if user is registered
 (#560)

* refactor: use sha status to check if user is registered

* refactor: code review changes from @donaldkibet
---
 .../sha-number-validity.component.tsx                        | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx b/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
index 0dd6311c..689a9d24 100644
--- a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
+++ b/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
@@ -26,8 +26,7 @@ const SHANumberValidity: React.FC<SHANumberValidityProps> = ({ paymentMethod, pa
 
   const { data, isLoading: isLoadingHIEEligibility, error } = useSHAEligibility(patientUuid, shaIdentificationNumber);
 
-  const isRegisteredOnSHA = Boolean(data?.coverageEndDate) && Boolean(data?.coverageStartDate);
-  const isNotRegisteredOnSHA = data?.status === 0;
+  const isRegisteredOnSHA = data?.status === 1;
 
   const isActive = isRegisteredOnSHA
     ? isWithinInterval(new Date(), {
@@ -76,7 +75,7 @@ const SHANumberValidity: React.FC<SHANumberValidityProps> = ({ paymentMethod, pa
     );
   }
 
-  if (isNotRegisteredOnSHA) {
+  if (!isRegisteredOnSHA) {
     return (
       <InlineNotification
         title={t('HIEVerificationFailure', 'HIE verification failure')}

From b5241040ffdb1c53e8b7d6431e41debdfe21846f Mon Sep 17 00:00:00 2001
From: Fredrick Kioko <67967749+its-kios09@users.noreply.github.com>
Date: Tue, 21 Jan 2025 17:49:46 +0300
Subject: [PATCH 2/3] (feat) KHP3-7315: Follow up changes on HIE enhancement on
 the syncing of the providers attributes (#557)

* (feat) enhancement on the sync for providers

* (refactor) reverting the disable functionality

* (refactor) updated as PR suggestion
---
 .../modal/provider-sync-modal.component.tsx   | 114 +++++++++---------
 .../src/table/provider-details.component.tsx  |  43 +++++--
 .../src/workspace/provider-form.workspace.tsx |   5 +-
 3 files changed, 98 insertions(+), 64 deletions(-)

diff --git a/packages/esm-providers-app/src/modal/provider-sync-modal.component.tsx b/packages/esm-providers-app/src/modal/provider-sync-modal.component.tsx
index 60c30ebb..633215f3 100644
--- a/packages/esm-providers-app/src/modal/provider-sync-modal.component.tsx
+++ b/packages/esm-providers-app/src/modal/provider-sync-modal.component.tsx
@@ -21,6 +21,7 @@ const HWRSyncModal: React.FC<HWRSyncModalProps> = ({ close, provider }) => {
   const { t } = useTranslation();
   const [syncLoading, setSyncLoading] = useState(false);
 
+  const config = useConfig<ConfigObject>();
   const {
     providerNationalIdUuid,
     licenseBodyUuid,
@@ -28,98 +29,101 @@ const HWRSyncModal: React.FC<HWRSyncModalProps> = ({ close, provider }) => {
     passportNumberUuid,
     licenseNumberUuid,
     identifierTypes,
-  } = useConfig<ConfigObject>();
+    phoneNumberUuid,
+    qualificationUuid,
+    providerAddressUuid,
+    providerHieFhirReference,
+  } = config;
 
-  const providerNationalId = provider.attributes.find((attr) => attr.attributeType.uuid === providerNationalIdUuid);
-  const registrationNumber = provider.attributes.find((attr) => attr.attributeType.uuid === licenseBodyUuid);
-  const passPortNumber = provider.attributes.find((attr) => attr.attributeType.uuid === passportNumberUuid);
+  const attributeMapping = {
+    [identifierTypes[0]?.key]:
+      provider.attributes.find((attr) => attr.attributeType.uuid === providerNationalIdUuid)?.value || '--',
+    [identifierTypes[1]?.key]:
+      provider.attributes.find((attr) => attr.attributeType.uuid === licenseBodyUuid)?.value || '--',
+    [identifierTypes[2]?.key]:
+      provider.attributes.find((attr) => attr.attributeType.uuid === passportNumberUuid)?.value || '--',
+  };
 
   const [searchHWR, setSearchHWR] = useState({
     identifierType: identifierTypes[0]?.key,
-    identifier: providerNationalId?.value,
+    identifier: attributeMapping[identifierTypes[0]?.key],
   });
 
   const handleIdentifierTypeChange = (selectedItem: { key: string; name: string } | null) => {
     const selectedKey = selectedItem?.key ?? '';
-    const identifierValue =
-      selectedKey === identifierTypes[0]?.key
-        ? providerNationalId?.value || '--'
-        : selectedKey === identifierTypes[1]?.key
-        ? registrationNumber?.value || '--'
-        : selectedKey === identifierTypes[2]?.key
-        ? passPortNumber?.value || '--'
-        : '';
-
     setSearchHWR((prev) => ({
       ...prev,
       identifierType: selectedKey,
-      identifier: identifierValue,
+      identifier: attributeMapping[selectedKey] || '',
     }));
   };
 
-  const isSearchDisabled = () => {
-    const { identifierType } = searchHWR;
-    return (
-      (identifierType === identifierTypes[0]?.key && !providerNationalId?.value) ||
-      (identifierType === identifierTypes[1]?.key && !registrationNumber?.value) ||
-      (identifierType === identifierTypes[2]?.key && !passPortNumber?.value)
-    );
-  };
+  const isSearchDisabled = () => !searchHWR.identifier;
 
   const handleSync = async () => {
     try {
       setSyncLoading(true);
 
       const healthWorker: Practitioner = await searchHealthCareWork(searchHWR.identifierType, searchHWR.identifier);
-      const licenseNumber = healthWorker.entry[0]?.resource.identifier?.find((id) =>
-        id.type?.coding?.some((code) => code.code === 'license-number'),
-      )?.value;
-      const regNumber = healthWorker?.entry[0]?.resource.identifier?.find((id) =>
-        id.type?.coding?.some((code) => code.code === 'board-registration-number'),
-      )?.value;
-      const licenseDate = formatDate(
-        new Date(
-          healthWorker?.entry[0]?.resource.identifier?.find((id) =>
-            id.type?.coding?.some((code) => code.code === 'license-number'),
-          )?.period?.end,
+      const resource = healthWorker.entry[0]?.resource;
+
+      const extractedAttributes = {
+        licenseNumber: resource?.identifier?.find((id) =>
+          id.type?.coding?.some((code) => code.code === 'license-number'),
+        )?.value,
+        regNumber: resource?.identifier?.find((id) =>
+          id.type?.coding?.some((code) => code.code === 'board-registration-number'),
+        )?.value,
+        licenseDate: formatDate(
+          new Date(
+            resource?.identifier?.find((id) =>
+              id.type?.coding?.some((code) => code.code === 'license-number'),
+            )?.period?.end,
+          ),
         ),
-      );
+        phoneNumber: resource?.telecom?.find((contact) => contact.system === 'phone')?.value,
+        email: resource?.telecom?.find((contact) => contact.system === 'email')?.value,
+        qualification:
+          resource?.qualification?.[0]?.code?.coding?.[0]?.display ||
+          resource?.extension?.find((ext) => ext.url === 'https://ts.kenya-hie.health/Codesystem/specialty')
+            ?.valueCodeableConcept?.coding?.[0]?.display,
+      };
+
       const updatableAttributes = [
-        {
-          attributeType: licenseNumberUuid,
-          value: licenseNumber,
-        },
-        {
-          attributeType: licenseBodyUuid,
-          value: regNumber,
-        },
-        {
-          attributeType: licenseExpiryDateUuid,
-          value: parseDate(licenseDate),
-        },
-      ];
+        { attributeType: licenseNumberUuid, value: extractedAttributes.licenseNumber },
+        { attributeType: licenseBodyUuid, value: extractedAttributes.regNumber },
+        { attributeType: licenseExpiryDateUuid, value: parseDate(extractedAttributes.licenseDate) },
+        { attributeType: phoneNumberUuid, value: extractedAttributes.phoneNumber },
+        { attributeType: qualificationUuid, value: extractedAttributes.qualification },
+        { attributeType: providerHieFhirReference, value: JSON.stringify(healthWorker) },
+        { attributeType: providerAddressUuid, value: extractedAttributes.email },
+      ].filter((attr) => attr.value !== undefined && attr.value !== null && attr.value !== '');
 
       await Promise.all(
         updatableAttributes.map((attr) => {
-          const _attribute = provider.attributes.find((at) => at.attributeType.uuid === attr.attributeType)?.uuid;
-          if (!_attribute) {
+          const existingAttribute = provider.attributes.find(
+            (at) => at.attributeType.uuid === attr.attributeType,
+          )?.uuid;
+          if (!existingAttribute) {
             return createProviderAttribute(attr, provider.uuid);
           }
-          return updateProviderAttributes({ value: attr.value }, provider.uuid, _attribute);
+          return updateProviderAttributes({ value: attr.value }, provider.uuid, existingAttribute);
         }),
       );
 
       mutate((key) => typeof key === 'string' && key.startsWith('/ws/rest/v1/provider'));
-      showSnackbar({ title: 'Success', kind: 'success', subtitle: t('syncmsg', 'Account synced successfully!') });
+      showSnackbar({
+        title: 'Success',
+        kind: 'success',
+        subtitle: t('syncmsg', 'Account synced successfully!'),
+      });
       close();
     } catch (err) {
-      const { identifierType, identifier } = searchHWR;
       showToast({
         critical: false,
         kind: 'error',
-        description: t('errorSyncMsg', `Failed to sync the account with ${identifier}. and ${err}`),
+        description: t('errorSyncMsg', `Failed to sync the account with ${searchHWR.identifier}. ${err}`),
         title: t('hwrERROR', 'Sync Failed'),
-        onActionButtonClick: () => close,
       });
     } finally {
       setSyncLoading(false);
diff --git a/packages/esm-providers-app/src/table/provider-details.component.tsx b/packages/esm-providers-app/src/table/provider-details.component.tsx
index e7e3e8ae..3a998278 100644
--- a/packages/esm-providers-app/src/table/provider-details.component.tsx
+++ b/packages/esm-providers-app/src/table/provider-details.component.tsx
@@ -12,19 +12,46 @@ interface ProviderDetailsProps {
   providerUuid: string;
 }
 
+interface ProviderAttribute {
+  value: string;
+}
+
+interface ProviderAttributes {
+  licenseAttr?: ProviderAttribute;
+  nationalID?: ProviderAttribute;
+  dateAttr?: ProviderAttribute;
+  phoneNumber?: ProviderAttribute;
+  qualification?: ProviderAttribute;
+  registrationNumber?: ProviderAttribute;
+  emailAddress?: ProviderAttribute;
+}
+
 const ProviderDetails: React.FC<ProviderDetailsProps> = ({ providerUuid }) => {
   const { t } = useTranslation();
   const patientBannerRef = useRef(null);
   const { provider } = useProviderDetails(providerUuid);
   const { user, isLoading, error } = useProviderUser(providerUuid);
 
-  const licenseAttr = provider?.attributes?.find((attr) => attr.attributeType.display === 'Practising License Number');
-  const nationalID = provider?.attributes?.find((attr) => attr.attributeType.display === 'Provider National Id Number');
-  const dateAttr = provider?.attributes?.find((attr) => attr.attributeType.display === 'License Expiry Date');
-  const phoneNumber = provider?.attributes?.find((attr) => attr.attributeType.display === 'Phone number');
-  const qualification = provider?.attributes?.find((attr) => attr.attributeType.display === 'Provider qualification');
-  const registrationNumber = provider?.attributes?.find((attr) => attr.attributeType.display === 'License Body');
-  const emailAddress = provider?.attributes?.find((attr) => attr.attributeType.display === 'Provider address');
+  const attributeMap = {
+    licenseAttr: 'Practising License Number',
+    nationalID: 'Provider National Id Number',
+    dateAttr: 'License Expiry Date',
+    phoneNumber: 'Provider Telephone',
+    qualification: 'Provider Qualification',
+    registrationNumber: 'License Body',
+    emailAddress: 'Provider Address',
+  };
+
+  const attributes: ProviderAttributes = Object.entries(attributeMap).reduce((acc, [key, display]) => {
+    const attr = provider?.attributes?.find((attr) => attr.attributeType.display === display);
+    if (attr) {
+      acc[key as keyof ProviderAttributes] = { value: attr.value };
+    }
+    return acc;
+  }, {} as ProviderAttributes);
+
+  const { licenseAttr, nationalID, dateAttr, phoneNumber, qualification, registrationNumber, emailAddress } =
+    attributes;
 
   const formattedExpiryDate = dateAttr?.value ? dayjs(dateAttr.value).format('YYYY-MM-DD') : null;
   const today = dayjs();
@@ -73,7 +100,7 @@ const ProviderDetails: React.FC<ProviderDetailsProps> = ({ providerUuid }) => {
                 </span>
                 <span className={styles.statusTag}>{getLicenseStatusTag()}</span>
                 <span className={styles.statusTag}>
-                  {qualification?.value && <Tag type="cyan">{capitalize(qualification.value)}</Tag>}
+                  {qualification?.value && <Tag type="cyan">{capitalize(qualification?.value)}</Tag>}
                 </span>
               </div>
             </div>
diff --git a/packages/esm-providers-app/src/workspace/provider-form.workspace.tsx b/packages/esm-providers-app/src/workspace/provider-form.workspace.tsx
index a4053c6d..46b063e1 100644
--- a/packages/esm-providers-app/src/workspace/provider-form.workspace.tsx
+++ b/packages/esm-providers-app/src/workspace/provider-form.workspace.tsx
@@ -50,7 +50,10 @@ const providerFormSchema = z
     gender: z.enum(['M', 'F'], { required_error: 'Gender is required' }),
     licenseNumber: z.string().nonempty('License number is required'),
     registrationNumber: z.string().nonempty('License number is required'),
-    phoneNumber: z.string().optional(),
+    phoneNumber: z
+      .string()
+      .regex(/^\d{10}$/, 'Phone number must be exactly 10 digits')
+      .optional(),
     qualification: z.string().optional(),
     providerAddress: z.string().optional(),
     passportNumber: z.string().optional(),

From 2a96b0e84b27b8e5a0b79ad980310217b6820a61 Mon Sep 17 00:00:00 2001
From: Donald Kibet <chelashawdonald@yahoo.com>
Date: Tue, 21 Jan 2025 19:33:23 +0300
Subject: [PATCH 3/3] (chore) : use framework `@carbon/react` version (#562)

* (chore) : use framework version for carbon dependencies

* (fix) : follow convention on translations
---
 package.json                                  |   1 -
 packages/esm-admin-app/package.json           |   2 +-
 packages/esm-billing-app/package.json         |   2 +-
 .../sha-number-validity.component.tsx         |   2 +-
 packages/esm-billing-app/translations/en.json |   2 +-
 packages/esm-care-panel-app/package.json      |   2 +-
 packages/esm-cross-border-app/package.json    |   2 +-
 packages/esm-lab-manifest-app/package.json    |   2 +-
 packages/esm-morgue-app/package.json          |   2 +-
 .../package.json                              |   2 +-
 packages/esm-patient-flags-app/package.json   |   2 +-
 packages/esm-pharmacy-app/package.json        |   2 +-
 packages/esm-providers-app/package.json       |   2 +-
 packages/esm-shr-app/package.json             |   2 +-
 packages/esm-version-app/package.json         |   2 +-
 yarn.lock                                     | 271 +-----------------
 16 files changed, 28 insertions(+), 272 deletions(-)

diff --git a/package.json b/package.json
index 24f0acf6..48295e7a 100644
--- a/package.json
+++ b/package.json
@@ -24,7 +24,6 @@
     "*.{js,jsx,ts,tsx}": "eslint --cache --fix"
   },
   "dependencies": {
-    "@carbon/charts-react": "^1.13.33",
     "@hookform/resolvers": "^3.1.1",
     "ace-builds": "^1.36.5",
     "classnames": "^2.3.2",
diff --git a/packages/esm-admin-app/package.json b/packages/esm-admin-app/package.json
index 1d2de709..1422f39e 100644
--- a/packages/esm-admin-app/package.json
+++ b/packages/esm-admin-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-3.x/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-billing-app/package.json b/packages/esm-billing-app/package.json
index e2c2ce35..29084f7e 100644
--- a/packages/esm-billing-app/package.json
+++ b/packages/esm-billing-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx b/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
index 689a9d24..f076c7c6 100644
--- a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
+++ b/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx
@@ -78,7 +78,7 @@ const SHANumberValidity: React.FC<SHANumberValidityProps> = ({ paymentMethod, pa
   if (!isRegisteredOnSHA) {
     return (
       <InlineNotification
-        title={t('HIEVerificationFailure', 'HIE verification failure')}
+        title={t('hieVerificationFailure', 'HIE verification failure')}
         subtitle={`${data?.message ?? ''}.${data?.possibleSolution ?? ''}`}
         className={styles.missingSHANumber}
       />
diff --git a/packages/esm-billing-app/translations/en.json b/packages/esm-billing-app/translations/en.json
index 9ac8559b..cce89af3 100644
--- a/packages/esm-billing-app/translations/en.json
+++ b/packages/esm-billing-app/translations/en.json
@@ -125,6 +125,7 @@
   "finalDiagnosis": "Final Diagnosis",
   "formTitle": "Fill in the form details",
   "generatedMessage": "The invoice has been electronically generated and is a valid document. It was created by {{userName}} on {{date}} at {{time}}",
+  "hieVerificationFailure": "HIE verification failure",
   "home": "Home",
   "identifier": "Identifier",
   "inactive": "Inactive",
@@ -200,7 +201,6 @@
   "paymentPoints": "Payment Points",
   "payments": "Payments",
   "paymentType": "Payment Type",
-  "pendingHIEVerification": "Pending HIE verification",
   "Phone Number": "Phone Number",
   "pickLabRequest": "Pick Lab Request",
   "policyNumber": "Policy number",
diff --git a/packages/esm-care-panel-app/package.json b/packages/esm-care-panel-app/package.json
index 6baf09f0..b57240ef 100644
--- a/packages/esm-care-panel-app/package.json
+++ b/packages/esm-care-panel-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-cross-border-app/package.json b/packages/esm-cross-border-app/package.json
index 3cbb8760..9aa6030f 100644
--- a/packages/esm-cross-border-app/package.json
+++ b/packages/esm-cross-border-app/package.json
@@ -37,10 +37,10 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-lab-manifest-app/package.json b/packages/esm-lab-manifest-app/package.json
index ee2bcc91..47b55fce 100644
--- a/packages/esm-lab-manifest-app/package.json
+++ b/packages/esm-lab-manifest-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-morgue-app/package.json b/packages/esm-morgue-app/package.json
index 2d5c384a..9915d4c0 100644
--- a/packages/esm-morgue-app/package.json
+++ b/packages/esm-morgue-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-patient-clinical-view-app/package.json b/packages/esm-patient-clinical-view-app/package.json
index 26e4ce81..7d4f472c 100644
--- a/packages/esm-patient-clinical-view-app/package.json
+++ b/packages/esm-patient-clinical-view-app/package.json
@@ -38,11 +38,11 @@
   },
   "dependencies": {
     "@carbon/charts-react": "^1.5.2",
-    "@carbon/react": "^1.72.0",
     "d3": "^7.6.1",
     "lodash-es": "^4.17.21"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-patient-flags-app/package.json b/packages/esm-patient-flags-app/package.json
index 82a9963e..9113a70d 100644
--- a/packages/esm-patient-flags-app/package.json
+++ b/packages/esm-patient-flags-app/package.json
@@ -37,10 +37,10 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-pharmacy-app/package.json b/packages/esm-pharmacy-app/package.json
index ac3c1aec..98da4dcf 100644
--- a/packages/esm-pharmacy-app/package.json
+++ b/packages/esm-pharmacy-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-providers-app/package.json b/packages/esm-providers-app/package.json
index 346f4b61..d4f71c02 100644
--- a/packages/esm-providers-app/package.json
+++ b/packages/esm-providers-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-3.x/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-shr-app/package.json b/packages/esm-shr-app/package.json
index 8c33eb49..4d6dafac 100644
--- a/packages/esm-shr-app/package.json
+++ b/packages/esm-shr-app/package.json
@@ -37,11 +37,11 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15",
     "react-to-print": "^2.14.13"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "7.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/packages/esm-version-app/package.json b/packages/esm-version-app/package.json
index fb433a5b..1e89e7a6 100644
--- a/packages/esm-version-app/package.json
+++ b/packages/esm-version-app/package.json
@@ -37,10 +37,10 @@
     "url": "https://github.com/palladiumkenya/kenyaemr-esm-core/issues"
   },
   "dependencies": {
-    "@carbon/react": "^1.72.0",
     "lodash-es": "^4.17.15"
   },
   "peerDependencies": {
+    "@carbon/react": "1.x",
     "@openmrs/esm-framework": "5.x",
     "react": "^18.1.0",
     "react-i18next": "11.x",
diff --git a/yarn.lock b/yarn.lock
index c6451de0..4711f2ad 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1338,15 +1338,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@babel/runtime@npm:^7.24.5":
-  version: 7.26.0
-  resolution: "@babel/runtime@npm:7.26.0"
-  dependencies:
-    regenerator-runtime: "npm:^0.14.0"
-  checksum: 10/9f4ea1c1d566c497c052d505587554e782e021e6ccd302c2ad7ae8291c8e16e3f19d4a7726fb64469e057779ea2081c28b7dbefec6d813a22f08a35712c0f699
-  languageName: node
-  linkType: hard
-
 "@babel/template@npm:^7.25.7, @babel/template@npm:^7.3.3":
   version: 7.25.7
   resolution: "@babel/template@npm:7.25.7"
@@ -1391,7 +1382,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/charts-react@npm:^1.13.33, @carbon/charts-react@npm:^1.5.2":
+"@carbon/charts-react@npm:^1.5.2":
   version: 1.22.0
   resolution: "@carbon/charts-react@npm:1.22.0"
   dependencies:
@@ -1437,15 +1428,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/colors@npm:^11.28.0":
-  version: 11.28.0
-  resolution: "@carbon/colors@npm:11.28.0"
-  dependencies:
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/557419fe3a6bda7ba8e8936662ffd7599003dc05d849811ffd19fd0d52762f9f3100e5ae2193486b5bcaed46e1cd65c6683c4bee48a1a9bc80c330c7c6d691ca
-  languageName: node
-  linkType: hard
-
 "@carbon/feature-flags@npm:^0.16.0":
   version: 0.16.0
   resolution: "@carbon/feature-flags@npm:0.16.0"
@@ -1462,15 +1444,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/feature-flags@npm:^0.24.0":
-  version: 0.24.0
-  resolution: "@carbon/feature-flags@npm:0.24.0"
-  dependencies:
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/abfe35e02d45208e64ead6e22c76c1f97c3099013bb0f0bbca46893c33f4571c9c6f0a2cacc6e8b5cd78aa90696beef89145b7bfc06fcab06c8ca3ff7cd11e02
-  languageName: node
-  linkType: hard
-
 "@carbon/grid@npm:^11.28.1":
   version: 11.28.1
   resolution: "@carbon/grid@npm:11.28.1"
@@ -1481,16 +1454,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/grid@npm:^11.29.0":
-  version: 11.29.0
-  resolution: "@carbon/grid@npm:11.29.0"
-  dependencies:
-    "@carbon/layout": "npm:^11.28.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/27dfde60051e5db01d7f0c7f76adfa7f9c4df3e9fdff9bf3ed3e999221b9110959db162aaa06ac054474af79c6c8a47dcfd0e1112f5171342938fb9c4c02657d
-  languageName: node
-  linkType: hard
-
 "@carbon/icon-helpers@npm:^10.53.1":
   version: 10.53.1
   resolution: "@carbon/icon-helpers@npm:10.53.1"
@@ -1500,15 +1463,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/icon-helpers@npm:^10.54.0":
-  version: 10.54.0
-  resolution: "@carbon/icon-helpers@npm:10.54.0"
-  dependencies:
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/558988f429fd42e2a03fcf5fbf97cb3fee3a75a41cce9d93a1eefa1978498bd4445b8de622ede66e60e48dc46459f1af83dfe767ba5bd8eb6f436e8307618f27
-  languageName: node
-  linkType: hard
-
 "@carbon/icons-react@npm:^11.26.0, @carbon/icons-react@npm:^11.49.0, @carbon/icons-react@npm:^11.50.1":
   version: 11.50.1
   resolution: "@carbon/icons-react@npm:11.50.1"
@@ -1522,19 +1476,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/icons-react@npm:^11.53.0":
-  version: 11.53.0
-  resolution: "@carbon/icons-react@npm:11.53.0"
-  dependencies:
-    "@carbon/icon-helpers": "npm:^10.54.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-    prop-types: "npm:^15.7.2"
-  peerDependencies:
-    react: ">=16"
-  checksum: 10/32eafc698024b3228e8d42c151f22384fdd82206e7259023a92994b19d268c171a0ed8ff85a00718d2ef7bc1fbaccce584e3ea4c7a766ef1b464eccd8fb4537b
-  languageName: node
-  linkType: hard
-
 "@carbon/layout@npm:^11.19.0, @carbon/layout@npm:^11.27.1":
   version: 11.27.1
   resolution: "@carbon/layout@npm:11.27.1"
@@ -1544,15 +1485,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/layout@npm:^11.28.0":
-  version: 11.28.0
-  resolution: "@carbon/layout@npm:11.28.0"
-  dependencies:
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/4ce8fbe84aa869121e0c83ae81c6beeeee87162165fd452fc51012715a3bf3ebb4e096dd4fb9a6f64ef45855d680e0953f13a79978cad855c0c64450a884e554
-  languageName: node
-  linkType: hard
-
 "@carbon/motion@npm:^11.23.1":
   version: 11.23.1
   resolution: "@carbon/motion@npm:11.23.1"
@@ -1562,15 +1494,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/motion@npm:^11.24.0":
-  version: 11.24.0
-  resolution: "@carbon/motion@npm:11.24.0"
-  dependencies:
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/ac358bf2a09ea7d77aae5dbe92abafaef817012abd0bb25a5ef33a77e7d88d32c33d796511f7e36a443ce32b7441eacea40869e2552042143fe3262cb8c4ea3d
-  languageName: node
-  linkType: hard
-
 "@carbon/pictograms-react@npm:^11.66.0":
   version: 11.67.1
   resolution: "@carbon/pictograms-react@npm:11.67.1"
@@ -1618,39 +1541,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/react@npm:^1.72.0":
-  version: 1.72.0
-  resolution: "@carbon/react@npm:1.72.0"
-  dependencies:
-    "@babel/runtime": "npm:^7.24.7"
-    "@carbon/feature-flags": "npm:^0.24.0"
-    "@carbon/icons-react": "npm:^11.53.0"
-    "@carbon/layout": "npm:^11.28.0"
-    "@carbon/styles": "npm:^1.71.0"
-    "@floating-ui/react": "npm:^0.26.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-    classnames: "npm:2.5.1"
-    copy-to-clipboard: "npm:^3.3.1"
-    downshift: "npm:9.0.8"
-    flatpickr: "npm:4.6.13"
-    invariant: "npm:^2.2.3"
-    lodash.debounce: "npm:^4.0.8"
-    lodash.omit: "npm:^4.5.0"
-    lodash.throttle: "npm:^4.1.1"
-    prop-types: "npm:^15.7.2"
-    react-fast-compare: "npm:^3.2.2"
-    react-is: "npm:^18.2.0"
-    tabbable: "npm:^6.2.0"
-    use-resize-observer: "npm:^6.0.0"
-    window-or-global: "npm:^1.0.1"
-  peerDependencies:
-    react: ^16.8.6 || ^17.0.1 || ^18.2.0
-    react-dom: ^16.8.6 || ^17.0.1 || ^18.2.0
-    sass: ^1.33.0
-  checksum: 10/aa10615630798ec67a7598acf4cc09712d0bbd771d5a147564736ce88716d5468a4173035c758f4aee758b7635eb39de20556fa22425823e08fd85ab1185b451
-  languageName: node
-  linkType: hard
-
 "@carbon/react@npm:~1.37.0":
   version: 1.37.0
   resolution: "@carbon/react@npm:1.37.0"
@@ -1706,36 +1596,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/styles@npm:^1.71.0":
-  version: 1.71.0
-  resolution: "@carbon/styles@npm:1.71.0"
-  dependencies:
-    "@carbon/colors": "npm:^11.28.0"
-    "@carbon/feature-flags": "npm:^0.24.0"
-    "@carbon/grid": "npm:^11.29.0"
-    "@carbon/layout": "npm:^11.28.0"
-    "@carbon/motion": "npm:^11.24.0"
-    "@carbon/themes": "npm:^11.43.0"
-    "@carbon/type": "npm:^11.33.0"
-    "@ibm/plex": "npm:6.0.0-next.6"
-    "@ibm/plex-mono": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans-arabic": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans-devanagari": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans-hebrew": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans-thai": "npm:0.0.3-alpha.0"
-    "@ibm/plex-sans-thai-looped": "npm:0.0.3-alpha.0"
-    "@ibm/plex-serif": "npm:0.0.3-alpha.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  peerDependencies:
-    sass: ^1.33.0
-  peerDependenciesMeta:
-    sass:
-      optional: true
-  checksum: 10/927e6037d98c9927baf3452a808e75cfea9a5434e2031fdddf1af8dc52360bbdd4dfe1feadcfbb66c8529d20e132ce925111331b02db00514d78e8bb4dcc3e4d
-  languageName: node
-  linkType: hard
-
 "@carbon/telemetry@npm:0.1.0":
   version: 0.1.0
   resolution: "@carbon/telemetry@npm:0.1.0"
@@ -1758,19 +1618,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/themes@npm:^11.43.0":
-  version: 11.43.0
-  resolution: "@carbon/themes@npm:11.43.0"
-  dependencies:
-    "@carbon/colors": "npm:^11.28.0"
-    "@carbon/layout": "npm:^11.28.0"
-    "@carbon/type": "npm:^11.33.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-    color: "npm:^4.0.0"
-  checksum: 10/ffbe3316dcdd3920a2e5139e550a1195734f591b3de1d79b41f8ca606c85ae0365660d9cc79b1562e82730c860fb7b001da1e3101ca49ca9e99867bfa8d7e50f
-  languageName: node
-  linkType: hard
-
 "@carbon/type@npm:^11.32.1":
   version: 11.32.1
   resolution: "@carbon/type@npm:11.32.1"
@@ -1782,17 +1629,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@carbon/type@npm:^11.33.0":
-  version: 11.33.0
-  resolution: "@carbon/type@npm:11.33.0"
-  dependencies:
-    "@carbon/grid": "npm:^11.29.0"
-    "@carbon/layout": "npm:^11.28.0"
-    "@ibm/telemetry-js": "npm:^1.5.0"
-  checksum: 10/bbaa5f9bafd6b47e2b65fe03333e4c70999bdca5a227365a2ff39cafc0b9a0dca4df41b85ea53c36ecb355090cdb43ec8c6aa43a398b9089162938b5c6b35167
-  languageName: node
-  linkType: hard
-
 "@carbon/utils-position@npm:^1.3.0":
   version: 1.3.0
   resolution: "@carbon/utils-position@npm:1.3.0"
@@ -1972,62 +1808,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@ibm/plex-mono@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-mono@npm:0.0.3-alpha.0"
-  checksum: 10/fbdfb70762dead35bd12fd69344133f3290bd4ede4fd3607f6949e80e3c516190e772afc5f8ba060426911bf1b89744f02e7b0fdd25cca818086f3ce312fcad4
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans-arabic@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans-arabic@npm:0.0.3-alpha.0"
-  checksum: 10/c390dd9788a36f4cb2abb2fcf63deb2a3c8b9e7aa8a7e6263ff6484b2fe99044258e2daeb36e7c0b0eeaea17e4128a8ce567208458f851ee6b05ec8c54f84edb
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans-devanagari@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans-devanagari@npm:0.0.3-alpha.0"
-  checksum: 10/ef3cd967100210a822bea7b36c5ac54f915a319d5e23fa1175ea63d0405c826023f241d54b4f7beb5928603fbe01a5bae22839dad6922330bb84921eb289d193
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans-hebrew@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans-hebrew@npm:0.0.3-alpha.0"
-  checksum: 10/e67ed6e081dbf9a522eca8e35471a329c788e6a03042df89649b034eaa2e66898bc44b72c0c0f57d93d24b37796cfc92729cee7754eb83ec2cd27f1fa9bdeea6
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans-thai-looped@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans-thai-looped@npm:0.0.3-alpha.0"
-  checksum: 10/11272b1353611fed07788a870793ca6f45c644f47faa99880d5278552a7acd85b0696ca02336b7aa8e29bf5d6353538d322149cb8b6b2e65985c38f0af6359fe
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans-thai@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans-thai@npm:0.0.3-alpha.0"
-  checksum: 10/baac49d77d2075ee6ecbd5ed22d938b1afca898e5d8d9948f079613d2be011216acf52a6ae555e3cf732d8aa60b7b89b1eaef4380590a66270d7b166067a271a
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-sans@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-sans@npm:0.0.3-alpha.0"
-  checksum: 10/5b0b0521dbeb7c32eb13a932b53baef0013b96d5d39547b35c69a991707a3f75cec37383c9f239229fdedfb91fda8c8005f25fdddcb900937d6de7dbd456175a
-  languageName: node
-  linkType: hard
-
-"@ibm/plex-serif@npm:0.0.3-alpha.0":
-  version: 0.0.3-alpha.0
-  resolution: "@ibm/plex-serif@npm:0.0.3-alpha.0"
-  checksum: 10/462dcf33937f50f5a0ecf320f1d930c612e92293aa40dda08c05f6630d8795e4233023bb4f8ed3d340d2dbbd82a4b7ec5ae5e511f4260b16ff9ade6f481e48e8
-  languageName: node
-  linkType: hard
-
 "@ibm/plex@npm:6.0.0-next.6":
   version: 6.0.0-next.6
   resolution: "@ibm/plex@npm:6.0.0-next.6"
@@ -2888,7 +2668,6 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-3.x-apps@workspace:."
   dependencies:
-    "@carbon/charts-react": "npm:^1.13.33"
     "@carbon/pictograms-react": "npm:^11.66.0"
     "@hookform/resolvers": "npm:^3.1.1"
     "@openmrs/esm-framework": "npm:next"
@@ -2966,11 +2745,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-admin-app@workspace:packages/esm-admin-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -2983,11 +2762,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-billing-app@workspace:packages/esm-billing-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3000,11 +2779,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-care-panel-app@workspace:packages/esm-care-panel-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3017,10 +2796,10 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-cross-border-app@workspace:packages/esm-cross-border-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3032,11 +2811,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-lab-manifest-app@workspace:packages/esm-lab-manifest-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3049,11 +2828,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-morgue-app@workspace:packages/esm-morgue-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3067,11 +2846,11 @@ __metadata:
   resolution: "@kenyaemr/esm-patient-clinical-view-app@workspace:packages/esm-patient-clinical-view-app"
   dependencies:
     "@carbon/charts-react": "npm:^1.5.2"
-    "@carbon/react": "npm:^1.72.0"
     d3: "npm:^7.6.1"
     lodash-es: "npm:^4.17.21"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3083,10 +2862,10 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-patient-flags-app@workspace:packages/esm-patient-flags-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3098,11 +2877,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-pharmacy-app@workspace:packages/esm-pharmacy-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3115,11 +2894,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-providers-app@workspace:packages/esm-providers-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3132,11 +2911,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-shr-app@workspace:packages/esm-shr-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     lodash-es: "npm:^4.17.15"
     react-to-print: "npm:^2.14.13"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 7.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -3148,11 +2927,11 @@ __metadata:
   version: 0.0.0-use.local
   resolution: "@kenyaemr/esm-version-app@workspace:packages/esm-version-app"
   dependencies:
-    "@carbon/react": "npm:^1.72.0"
     git-describe: "npm:^4.1.1"
     lodash-es: "npm:^4.17.15"
     webpack: "npm:^5.74.0"
   peerDependencies:
+    "@carbon/react": 1.x
     "@openmrs/esm-framework": 5.x
     react: ^18.1.0
     react-i18next: 11.x
@@ -8835,7 +8614,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"compute-scroll-into-view@npm:^3.0.3, compute-scroll-into-view@npm:^3.1.0":
+"compute-scroll-into-view@npm:^3.0.3":
   version: 3.1.0
   resolution: "compute-scroll-into-view@npm:3.1.0"
   checksum: 10/cc5211d49bced5ad23385da5c2eaf69b6045628581b0dcb9f4dd407bfee51bbd26d2bce426be26edf2feaf8c243706f5a7c3759827d89cc5a01a5cf7d299a5eb
@@ -10229,21 +10008,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"downshift@npm:9.0.8":
-  version: 9.0.8
-  resolution: "downshift@npm:9.0.8"
-  dependencies:
-    "@babel/runtime": "npm:^7.24.5"
-    compute-scroll-into-view: "npm:^3.1.0"
-    prop-types: "npm:^15.8.1"
-    react-is: "npm:18.2.0"
-    tslib: "npm:^2.6.2"
-  peerDependencies:
-    react: ">=16.12.0"
-  checksum: 10/9dc4577e780c54742ba4dde11f481f0d839f001b309200fbe4db112385b227ccd9cd2ef97d9e995379fa70249f0664a562240e415b9966f18c8a5cb7ce435f2c
-  languageName: node
-  linkType: hard
-
 "duplexer@npm:^0.1.2":
   version: 0.1.2
   resolution: "duplexer@npm:0.1.2"
@@ -16754,13 +16518,6 @@ __metadata:
   languageName: node
   linkType: hard
 
-"react-is@npm:18.2.0":
-  version: 18.2.0
-  resolution: "react-is@npm:18.2.0"
-  checksum: 10/200cd65bf2e0be7ba6055f647091b725a45dd2a6abef03bf2380ce701fd5edccee40b49b9d15edab7ac08a762bf83cb4081e31ec2673a5bfb549a36ba21570df
-  languageName: node
-  linkType: hard
-
 "react-is@npm:^16.13.1":
   version: 16.13.1
   resolution: "react-is@npm:16.13.1"