@kenyaemr/esm-billing-app 5.4.1-pre.1818 → 5.4.1-pre.1822

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/routes.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"kenyaemr":"^19.0.0"},"pages":[{"component":"billableServicesHome","route":"billable-services"},{"component":"requirePaymentModal","routeRegex":"^patient/.+/chart","online":true,"offline":false}],"extensions":[{"component":"billingDashboardLink","name":"billing-dashboard-link","slot":"homepage-dashboard-slot","meta":{"name":"billing","title":"billing","slot":"billing-dashboard-slot"}},{"component":"benefitsPackageDashboardLink","name":"benefits-package-dashboard-link","slot":"patient-chart-dashboard-slot","meta":{"name":"benefits-package","slot":"patient-chart-benefits-dashboard-slot","path":"insurance-benefits","columns":1,"columnSpan":1},"featureFlag":"healthInformationExchange"},{"component":"benefitsPackage","name":"benefits-package","slot":"patient-chart-benefits-dashboard-slot"},{"component":"root","name":"billing-dashboard-root","slot":"billing-dashboard-slot"},{"component":"benefitsEligibilyRequestForm","name":"benefits-eligibility-request-form"},{"component":"benefitsPreAuthForm","name":"benefits-pre-auth-form"},{"name":"billing-patient-summary","component":"billingPatientSummary","slot":"patient-chart-billing-dashboard-slot","order":10,"meta":{"columnSpan":4}},{"name":"billing-summary-dashboard-link","component":"billingSummaryDashboardLink","slot":"patient-chart-dashboard-slot","order":11,"meta":{"columns":1,"columnSpan":1,"slot":"patient-chart-billing-dashboard-slot","path":"Billing","layoutMode":"anchored"}},{"name":"billing-check-in-form","slot":"extra-visit-attribute-slot","component":"billingCheckInForm"},{"name":"require-billing-modal","component":"requirePaymentModal"},{"name":"patient-banner-billing-tags","component":"visitAttributeTags","slot":"patient-banner-tags-slot","order":2},{"name":"initiate-payment-modal","component":"initiatePaymentDialog"},{"name":"delete-billableservice-modal","component":"deleteBillableServiceModal"},{"name":"refund-bill-modal","component":"refundBillModal"},{"name":"delete-bill-modal","component":"deleteBillModal"},{"name":"lab-order-billable-item","component":"labOrder","slot":"top-of-lab-order-form-slot"},{"name":"procedure-order-billable-item","component":"procedureOrder","slot":"top-of-procedure-order-form-slot"},{"name":"imaging-order-billable-item","component":"imagingOrder","slot":"top-of-imaging-order-form-slot"},{"name":"price-info-order","component":"priceInfoOrder"},{"name":"drug-order-billable-item","component":"drugOrder","slot":"medication-info-slot"},{"name":"billing-test-order-action","component":"testOrderAction","slot":"tests-ordered-actions-slot","order":0},{"component":"billingOverviewLink","name":"billing-overview-link","order":0,"slot":"billing-dashboard-link-slot"},{"component":"paymentHistoryLink","name":"payment-history-link","slot":"billing-dashboard-link-slot"},{"component":"paymentPointsLink","name":"payment-points-link","slot":"billing-dashboard-link-slot"},{"component":"paymentModesLink","name":"payment-modes-link","slot":"billing-dashboard-link-slot"},{"component":"billManagerLink","name":"bill-manager-link","slot":"billing-dashboard-link-slot"},{"component":"chargeableItemsLink","name":"chargeable-items-link","slot":"billing-dashboard-link-slot"},{"component":"billableExemptionsLink","name":"billable-exemptions-link","slot":"billing-dashboard-link-slot"},{"component":"claimsManagementSideNavGroup","name":"claims-management-dashboard-link","slot":"homepage-dashboard-slot","meta":{"name":"claims-management","title":"Claims management Overview","slot":"case-management-slot"},"featureFlag":"healthInformationExchange"},{"component":"claimsManagementOverviewDashboardLink","name":"claims-management-overview-link","order":0,"slot":"claims-management-dashboard-link-slot"},{"component":"preAuthRequestsDashboardLink","name":"preauthrequest-overview-link","slot":"claims-management-dashboard-link-slot"},{"component":"claimsOverview","name":"claims-overview-dashboard-link","slot":"claims-management-overview-slot"},{"component":"waiveBillActionButton","name":"waive-bill-action-button","slot":"bill-actions-slot"},{"component":"deleteBillActionButton","name":"delete-bill-action-button","slot":"bill-actions-slot"},{"component":"refundLineItem","name":"refund-line-item","slot":"bill-actions-overflow-menu-slot"},{"name":"edit-line-item","component":"editLineItem","slot":"bill-actions-overflow-menu-slot"},{"name":"cancel-line-item","component":"cancelLineItem","slot":"bill-actions-overflow-menu-slot"}],"workspaces":[{"name":"waive-bill-form","component":"waiveBillForm","title":"Waive Bill Form","type":"other-form"},{"name":"edit-bill-form","component":"editBillForm","title":"Edit Bill Form","type":"other-form"},{"name":"billable-service-form","component":"addServiceForm","title":"Create Charge Item Form","type":"other-form"},{"name":"commodity-form","component":"addCommodityForm","title":"Create Charge Item Form","type":"other-form"},{"name":"billing-form","component":"billingForm","title":"Billing Form","type":"other-form","width":"extra-wide"},{"name":"payment-mode-workspace","component":"paymentModeWorkspace","title":"Payment Mode Workspace","type":"other-form"},{"name":"cancel-bill-workspace","component":"cancelBillWorkspace","title":"Cancel Bill Workspace","type":"other-form"}],"modals":[{"name":"create-payment-point","component":"createPaymentPoint"},{"name":"clock-out-modal","component":"clockOut"},{"name":"bulk-import-billable-services-modal","component":"bulkImportBillableServicesModal"},{"name":"delete-payment-mode-modal","component":"deletePaymentModeModal"},{"name":"retry-claim-request-modal","component":"retryClaimRequestModal"},{"name":"paid-bill-receipt-print-preview-modal","component":"paidBillReceiptPrintPreviewModal"},{"name":"clock-in-modal","component":"clockIn"},{"name":"create-bill-item-modal","component":"createBillItemModal"}],"version":"5.4.1-pre.1818"}
1
+ {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"kenyaemr":"^19.0.0"},"pages":[{"component":"billableServicesHome","route":"billable-services"},{"component":"requirePaymentModal","routeRegex":"^patient/.+/chart","online":true,"offline":false}],"extensions":[{"component":"billingDashboardLink","name":"billing-dashboard-link","slot":"homepage-dashboard-slot","meta":{"name":"billing","title":"billing","slot":"billing-dashboard-slot"}},{"component":"benefitsPackageDashboardLink","name":"benefits-package-dashboard-link","slot":"patient-chart-dashboard-slot","meta":{"name":"benefits-package","slot":"patient-chart-benefits-dashboard-slot","path":"insurance-benefits","columns":1,"columnSpan":1},"featureFlag":"healthInformationExchange"},{"component":"benefitsPackage","name":"benefits-package","slot":"patient-chart-benefits-dashboard-slot"},{"component":"root","name":"billing-dashboard-root","slot":"billing-dashboard-slot"},{"component":"benefitsEligibilyRequestForm","name":"benefits-eligibility-request-form"},{"component":"benefitsPreAuthForm","name":"benefits-pre-auth-form"},{"name":"billing-patient-summary","component":"billingPatientSummary","slot":"patient-chart-billing-dashboard-slot","order":10,"meta":{"columnSpan":4}},{"name":"billing-summary-dashboard-link","component":"billingSummaryDashboardLink","slot":"patient-chart-dashboard-slot","order":11,"meta":{"columns":1,"columnSpan":1,"slot":"patient-chart-billing-dashboard-slot","path":"Billing","layoutMode":"anchored"}},{"name":"billing-check-in-form","slot":"extra-visit-attribute-slot","component":"billingCheckInForm"},{"name":"require-billing-modal","component":"requirePaymentModal"},{"name":"patient-banner-billing-tags","component":"visitAttributeTags","slot":"patient-banner-tags-slot","order":2},{"name":"initiate-payment-modal","component":"initiatePaymentDialog"},{"name":"delete-billableservice-modal","component":"deleteBillableServiceModal"},{"name":"refund-bill-modal","component":"refundBillModal"},{"name":"delete-bill-modal","component":"deleteBillModal"},{"name":"lab-order-billable-item","component":"labOrder","slot":"top-of-lab-order-form-slot"},{"name":"procedure-order-billable-item","component":"procedureOrder","slot":"top-of-procedure-order-form-slot"},{"name":"imaging-order-billable-item","component":"imagingOrder","slot":"top-of-imaging-order-form-slot"},{"name":"price-info-order","component":"priceInfoOrder"},{"name":"drug-order-billable-item","component":"drugOrder","slot":"medication-info-slot"},{"name":"billing-test-order-action","component":"testOrderAction","slot":"tests-ordered-actions-slot","order":0},{"component":"billingOverviewLink","name":"billing-overview-link","order":0,"slot":"billing-dashboard-link-slot"},{"component":"paymentHistoryLink","name":"payment-history-link","slot":"billing-dashboard-link-slot"},{"component":"paymentPointsLink","name":"payment-points-link","slot":"billing-dashboard-link-slot"},{"component":"paymentModesLink","name":"payment-modes-link","slot":"billing-dashboard-link-slot"},{"component":"billManagerLink","name":"bill-manager-link","slot":"billing-dashboard-link-slot"},{"component":"chargeableItemsLink","name":"chargeable-items-link","slot":"billing-dashboard-link-slot"},{"component":"billableExemptionsLink","name":"billable-exemptions-link","slot":"billing-dashboard-link-slot"},{"component":"claimsManagementSideNavGroup","name":"claims-management-dashboard-link","slot":"homepage-dashboard-slot","meta":{"name":"claims-management","title":"Claims management Overview","slot":"case-management-slot"},"featureFlag":"healthInformationExchange"},{"component":"claimsManagementOverviewDashboardLink","name":"claims-management-overview-link","order":0,"slot":"claims-management-dashboard-link-slot"},{"component":"preAuthRequestsDashboardLink","name":"preauthrequest-overview-link","slot":"claims-management-dashboard-link-slot"},{"component":"claimsOverview","name":"claims-overview-dashboard-link","slot":"claims-management-overview-slot"},{"component":"waiveBillActionButton","name":"waive-bill-action-button","slot":"bill-actions-slot"},{"component":"deleteBillActionButton","name":"delete-bill-action-button","slot":"bill-actions-slot"},{"component":"refundLineItem","name":"refund-line-item","slot":"bill-actions-overflow-menu-slot"},{"name":"edit-line-item","component":"editLineItem","slot":"bill-actions-overflow-menu-slot"},{"name":"cancel-line-item","component":"cancelLineItem","slot":"bill-actions-overflow-menu-slot"}],"workspaces":[{"name":"waive-bill-form","component":"waiveBillForm","title":"Waive Bill Form","type":"other-form"},{"name":"edit-bill-form","component":"editBillForm","title":"Edit Bill Form","type":"other-form"},{"name":"billable-service-form","component":"addServiceForm","title":"Create Charge Item Form","type":"other-form"},{"name":"commodity-form","component":"addCommodityForm","title":"Create Charge Item Form","type":"other-form"},{"name":"billing-form","component":"billingForm","title":"Billing Form","type":"other-form","width":"extra-wide"},{"name":"payment-mode-workspace","component":"paymentModeWorkspace","title":"Payment Mode Workspace","type":"other-form"},{"name":"cancel-bill-workspace","component":"cancelBillWorkspace","title":"Cancel Bill Workspace","type":"other-form"}],"modals":[{"name":"create-payment-point","component":"createPaymentPoint"},{"name":"clock-out-modal","component":"clockOut"},{"name":"bulk-import-billable-services-modal","component":"bulkImportBillableServicesModal"},{"name":"delete-payment-mode-modal","component":"deletePaymentModeModal"},{"name":"retry-claim-request-modal","component":"retryClaimRequestModal"},{"name":"paid-bill-receipt-print-preview-modal","component":"paidBillReceiptPrintPreviewModal"},{"name":"clock-in-modal","component":"clockIn"},{"name":"create-bill-item-modal","component":"createBillItemModal"}],"version":"5.4.1-pre.1822"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kenyaemr/esm-billing-app",
3
- "version": "5.4.1-pre.1818",
3
+ "version": "5.4.1-pre.1822",
4
4
  "description": "Billing app for KenyaEMR",
5
5
  "browser": "dist/kenyaemr-esm-billing-app.js",
6
6
  "main": "src/index.ts",
@@ -1,9 +1,9 @@
1
+ import React from 'react';
1
2
  import { InlineLoading, InlineNotification, MultiSelect } from '@carbon/react';
2
- import React, { useEffect, useState } from 'react';
3
3
  import { Controller, useFormContext } from 'react-hook-form';
4
4
  import { useTranslation } from 'react-i18next';
5
5
  import { z } from 'zod';
6
- import { InterventionsFilter, toQueryParams, useInterventions } from '../../hooks/useInterventions';
6
+ import { InterventionsFilter, useInterventions } from '../../hooks/useInterventions';
7
7
  import { eligibilityRequestShema } from '../benefits-package.resources';
8
8
  import { usePatient } from '@openmrs/esm-framework';
9
9
 
@@ -14,25 +14,16 @@ type PackageInterventionsProps = {
14
14
  patientUuid: string;
15
15
  };
16
16
  const PackageInterventions: React.FC<PackageInterventionsProps> = ({ category, patientUuid }) => {
17
- const [filters, setFilters] = useState<InterventionsFilter>({ package_code: category });
18
17
  const { error: patientError, isLoading: isPatientLoading, patient } = usePatient(patientUuid);
18
+ const filters: InterventionsFilter = {
19
+ package_code: category,
20
+ applicable_gender: patient?.gender === 'male' ? 'MALE' : 'FEMALE',
21
+ };
19
22
  const { error, interventions, isLoading } = useInterventions(filters);
20
23
 
21
24
  const form = useFormContext<EligibilityRequest>();
22
25
  const { t } = useTranslation();
23
26
 
24
- useEffect(() => {
25
- setFilters((state) => ({
26
- ...state,
27
- package_code: category,
28
- applicable_gender: patient?.gender === 'male' ? 'MALE' : patient?.gender === 'female' ? 'FEMALE' : undefined,
29
- }));
30
- }, [category, patient]);
31
-
32
- useEffect(() => {
33
- form.setValue('interventions', []);
34
- }, [category]);
35
-
36
27
  if (isLoading || isPatientLoading) {
37
28
  return (
38
29
  <InlineLoading
@@ -56,6 +47,10 @@ const PackageInterventions: React.FC<PackageInterventionsProps> = ({ category, p
56
47
  );
57
48
  }
58
49
 
50
+ if (interventions.length === 0) {
51
+ return null;
52
+ }
53
+
59
54
  return (
60
55
  <Controller
61
56
  control={form.control}
@@ -71,7 +66,7 @@ const PackageInterventions: React.FC<PackageInterventionsProps> = ({ category, p
71
66
  field.onChange(e.selectedItems);
72
67
  }}
73
68
  initialSelectedItems={field.value}
74
- label="Choose option"
69
+ label={t('chooseInterventions', 'Choose interventions')}
75
70
  items={interventions.map((r) => r.interventionCode)}
76
71
  itemToString={(item) => interventions.find((r) => r.interventionCode === item)?.interventionName ?? ''}
77
72
  />
@@ -71,7 +71,7 @@ export const RefundBillModal: React.FC<RefundBillModalProps> = ({ onClose, bill,
71
71
  } finally {
72
72
  setIsLoading(false);
73
73
  }
74
- }, [bill, lineItem, onClose, t]);
74
+ }, [bill, lineItem, onClose, t, billableServiceUuid, itemUuid]);
75
75
 
76
76
  return (
77
77
  <>
@@ -60,7 +60,7 @@ export const EditBillForm: React.FC<EditBillFormProps> = ({
60
60
 
61
61
  useEffect(() => {
62
62
  promptBeforeClosing(() => isDirty);
63
- }, [isDirty]);
63
+ }, [isDirty, promptBeforeClosing]);
64
64
 
65
65
  const onSubmit: SubmitHandler<EditBillFormData> = async (formData) => {
66
66
  const updateBill = createEditBillPayload(lineItem, formData, bill, formData.adjustmentReason);
@@ -89,7 +89,7 @@ export const WaiveBillForm: React.FC<BillWaiverFormProps> = ({
89
89
 
90
90
  useEffect(() => {
91
91
  promptBeforeClosing(() => isDirty);
92
- }, [isDirty]);
92
+ }, [isDirty, promptBeforeClosing]);
93
93
 
94
94
  if (lineItems?.length === 0) {
95
95
  return null;
@@ -62,17 +62,20 @@ export const BillableExemptionsViewer = () => {
62
62
  setInvalidJsonErrorMessage(t('invalidJsonError', 'Invalid JSON input.'));
63
63
  }
64
64
  },
65
- [resetErrorMessage],
65
+ [resetErrorMessage, t],
66
66
  );
67
67
 
68
- const updateSchema = useCallback((updatedSchema: Schema) => {
69
- try {
70
- setSchema(updatedSchema);
71
- setStringifiedSchema(JSON.stringify(updatedSchema, null, 2));
72
- } catch (error) {
73
- setInvalidJsonErrorMessage(t('saveError', 'Failed to save schema.'));
74
- }
75
- }, []);
68
+ const updateSchema = useCallback(
69
+ (updatedSchema: Schema) => {
70
+ try {
71
+ setSchema(updatedSchema);
72
+ setStringifiedSchema(JSON.stringify(updatedSchema, null, 2));
73
+ } catch (error) {
74
+ setInvalidJsonErrorMessage(t('saveError', 'Failed to save schema.'));
75
+ }
76
+ },
77
+ [t],
78
+ );
76
79
 
77
80
  useEffect(() => {
78
81
  if (billableExceptionSchema) {
@@ -52,7 +52,7 @@ const CommodityForm: React.FC<CommodityFormProps> = ({
52
52
  if (initialValues) {
53
53
  trigger();
54
54
  }
55
- }, [initialValues]);
55
+ }, [initialValues, trigger]);
56
56
 
57
57
  const onSubmit = async (formValues: BillableFormSchema) => {
58
58
  const payload = formatBillableServicePayloadForSubmission(formValues, initialValues?.['uuid']);
@@ -66,7 +66,7 @@ const AddServiceForm: React.FC<AddServiceFormProps> = ({
66
66
  setConceptToLookup(initialValues.concept?.concept?.display);
67
67
  trigger();
68
68
  }
69
- }, [initialValues]);
69
+ }, [initialValues, trigger]);
70
70
 
71
71
  const {
72
72
  fields: servicePriceFields,
@@ -48,6 +48,12 @@ const VisitAttributesForm: React.FC<VisitAttributesFormProps> = ({ setAttributes
48
48
  }));
49
49
  }, [visitAttributeTypes, getValues]);
50
50
 
51
+ const [policyNumber, exemptionCategory, insuranceScheme] = watch([
52
+ 'policyNumber',
53
+ 'exemptionCategory',
54
+ 'insuranceScheme',
55
+ ]);
56
+
51
57
  useEffect(() => {
52
58
  setAttributes(createVisitAttributesPayload());
53
59
  }, [
@@ -55,9 +61,9 @@ const VisitAttributesForm: React.FC<VisitAttributesFormProps> = ({ setAttributes
55
61
  paymentMethods,
56
62
  setAttributes,
57
63
  createVisitAttributesPayload,
58
- watch('policyNumber'),
59
- watch('exemptionCategory'),
60
- watch('insuranceScheme'),
64
+ policyNumber,
65
+ exemptionCategory,
66
+ insuranceScheme,
61
67
  ]);
62
68
 
63
69
  if (isLoadingPaymentModes) {
@@ -20,7 +20,7 @@ const ClaimsManagementPreAuthRequest = () => {
20
20
  { value: 'cancelled', label: t('cancelled', 'Cancelled') },
21
21
  { value: 'entered-in-error', label: t('enteredInError', 'Entered in error') },
22
22
  ],
23
- [],
23
+ [t],
24
24
  );
25
25
 
26
26
  return (
@@ -37,7 +37,7 @@ const ClaimsManagementTable: React.FC = () => {
37
37
  { value: 'CHECKED', label: t('checked', 'Checked') },
38
38
  { value: 'VALUATED', label: t('valuated', 'Valuated') },
39
39
  ],
40
- [],
40
+ [t],
41
41
  );
42
42
  const [pageSize, setPageSize] = useState(5);
43
43
  const filterClaims = (claim) => {
@@ -45,7 +45,9 @@ const ClaimsFormSchema = z.object({
45
45
  treatmentStart: z.string().nonempty({ message: 'Treatment start date is required' }),
46
46
  treatmentEnd: z.string().nonempty({ message: 'Treatment end date is required' }),
47
47
  package: z.string().min(1, 'Package Required'),
48
- interventions: z.array(z.string()).nonempty({ message: 'At least one intervention is required' }),
48
+ interventions: z.array(z.string()).min(1, {
49
+ message: 'At least one intervention is required',
50
+ }),
49
51
  provider: z.string().nonempty({ message: 'provider is provider' }),
50
52
  });
51
53
 
@@ -97,6 +99,11 @@ const ClaimsForm: React.FC<ClaimsFormProps> = ({ bill, selectedLineItems }) => {
97
99
  reset,
98
100
  } = form;
99
101
 
102
+ const handleInterventionsChange = (e: { selectedItem: string }) => {
103
+ form.setValue('interventions', []);
104
+ setValue('package', e.selectedItem);
105
+ };
106
+
100
107
  const onSubmit = async (data: z.infer<typeof ClaimsFormSchema>) => {
101
108
  setLoading(true);
102
109
  const providedItems = selectedLineItems.reduce((acc, item) => {
@@ -163,7 +170,7 @@ const ClaimsForm: React.FC<ClaimsFormProps> = ({ bill, selectedLineItems }) => {
163
170
  setLoading(false);
164
171
  }
165
172
  };
166
- const selectedPackageObservable = form.watch('package');
173
+ const selectedPackage = packages.find((package_) => package_.uuid === form.watch('package'))?.packageCode ?? '';
167
174
 
168
175
  useEffect(() => {
169
176
  setValue('diagnoses', diagnoses?.map((d) => d.id) ?? ([] as any));
@@ -297,9 +304,7 @@ const ClaimsForm: React.FC<ClaimsFormProps> = ({ bill, selectedLineItems }) => {
297
304
  invalidText={form.formState.errors[field.name]?.message}
298
305
  id="package"
299
306
  titleText={t('package', 'Package')}
300
- onChange={(e) => {
301
- field.onChange(e.selectedItem);
302
- }}
307
+ onChange={handleInterventionsChange}
303
308
  initialSelectedItem={field.value}
304
309
  label="Choose package"
305
310
  items={packages.map((r) => r.uuid)}
@@ -311,16 +316,12 @@ const ClaimsForm: React.FC<ClaimsFormProps> = ({ bill, selectedLineItems }) => {
311
316
  />
312
317
  </Layer>
313
318
  </Column>
314
- {selectedPackageObservable && (
315
- <Column>
316
- <Layer className={styles.input}>
317
- <PackageInterventions
318
- category={packages.find((package_) => package_.uuid === selectedPackageObservable)?.packageCode ?? ''}
319
- patientUuid={patientUuid}
320
- />
321
- </Layer>
322
- </Column>
323
- )}
319
+
320
+ <Column>
321
+ <Layer className={styles.input}>
322
+ <PackageInterventions key={selectedPackage} category={selectedPackage} patientUuid={patientUuid} />
323
+ </Layer>
324
+ </Column>
324
325
 
325
326
  <Column>
326
327
  <Layer className={styles.input}>
@@ -85,7 +85,7 @@ const Invoice: React.FC = () => {
85
85
  useEffect(() => {
86
86
  const paidLineItems = bill?.lineItems?.filter((item) => item.paymentStatus === 'PAID') ?? [];
87
87
  setSelectedLineItems(paidLineItems);
88
- }, [bill?.lineItems?.length]);
88
+ }, [bill?.lineItems]);
89
89
 
90
90
  const invoiceDetails = {
91
91
  'Total Amount': convertToCurrency(bill?.totalAmount),
@@ -32,11 +32,9 @@ const PaymentForm: React.FC<PaymentFormProps> = ({ disablePayment, amountDue, ap
32
32
  };
33
33
 
34
34
  const handleAppendPaymentMode = useCallback(() => {
35
- {
36
- append({ method: null, amount: 0, referenceCode: '' });
37
- setFocus(`payment.${fields.length}.method`);
38
- }
39
- }, [append]);
35
+ append({ method: null, amount: 0, referenceCode: '' });
36
+ setFocus(`payment.${fields.length}.method`);
37
+ }, [append, fields.length, setFocus]);
40
38
 
41
39
  const handleRemovePaymentMode = useCallback((index) => remove(index), [remove]);
42
40
 
@@ -56,6 +56,7 @@
56
56
  "chargeItemsDescription": "Charge Items and Services Dashboard",
57
57
  "checked": "Checked",
58
58
  "checkFilters": "Check the filters above",
59
+ "chooseInterventions": "Choose interventions",
59
60
  "claim": "Process claims",
60
61
  "claimCode": "Claim Code",
61
62
  "claimedAmount": "Claimed Amount",