@kenyaemr/esm-service-queues-app 8.0.1-pre.99 → 8.0.2
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/.turbo/turbo-build.log +21 -22
- package/dist/130.js +1 -1
- package/dist/130.js.LICENSE.txt +2 -0
- package/dist/130.js.map +1 -1
- package/dist/199.js +1 -1
- package/dist/199.js.map +1 -1
- package/dist/2.js +1 -0
- package/dist/2.js.map +1 -0
- package/dist/271.js +1 -1
- package/dist/319.js +1 -1
- package/dist/325.js +1 -0
- package/dist/325.js.map +1 -0
- package/dist/372.js +2 -0
- package/dist/372.js.map +1 -0
- package/dist/392.js +1 -1
- package/dist/460.js +1 -1
- package/dist/574.js +1 -1
- package/dist/60.js +1 -0
- package/dist/60.js.map +1 -0
- package/dist/644.js +1 -1
- package/dist/660.js +2 -0
- package/dist/{484.js.LICENSE.txt → 660.js.LICENSE.txt} +10 -0
- package/dist/660.js.map +1 -0
- package/dist/670.js +1 -1
- package/dist/670.js.map +1 -1
- package/dist/727.js +1 -1
- package/dist/748.js +1 -0
- package/dist/748.js.map +1 -0
- package/dist/757.js +1 -1
- package/dist/760.js +1 -1
- package/dist/760.js.map +1 -1
- package/dist/788.js +1 -1
- package/dist/807.js +1 -1
- package/dist/818.js +1 -1
- package/dist/833.js +1 -1
- package/dist/911.js +1 -1
- package/dist/kenyaemr-esm-service-queues-app.js +1 -1
- package/dist/kenyaemr-esm-service-queues-app.js.buildmanifest.json +171 -174
- package/dist/kenyaemr-esm-service-queues-app.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/routes.json +1 -1
- package/package-lock.json +5892 -0
- package/package.json +2 -3
- package/src/active-visits/change-status-dialog.component.tsx +141 -138
- package/src/active-visits/change-status-dialog.test.tsx +5 -5
- package/src/config-schema.ts +4 -10
- package/src/index.ts +7 -0
- package/src/patient-queue-header/patient-queue-header.component.tsx +25 -38
- package/src/patient-queue-header/patient-queue-header.scss +3 -41
- package/src/patient-queue-metrics/clinic-metrics.component.tsx +4 -4
- package/src/patient-queue-metrics/metrics-header.component.tsx +16 -15
- package/src/patient-search/patient-scheduled-visits.component.tsx +43 -52
- package/src/patient-search/visit-form/visit-form.component.tsx +43 -50
- package/src/queue-screen/queue-screen.component.tsx +67 -11
- package/src/queue-screen/queue-screen.test.tsx +1 -1
- package/src/queue-screen/useActiveTickets.tsx +1 -1
- package/src/queue-table/cells/columns.resource.ts +2 -2
- package/src/queue-table/default-queue-table.component.tsx +17 -15
- package/src/queue-table/queue-entry-actions/transition-queue-entry.modal.tsx +7 -2
- package/src/queue-table/queue-table-by-status-menu.component.tsx +1 -1
- package/src/queue-table/queue-table-metrics.component.tsx +6 -1
- package/src/queue-table/queue-table.component.tsx +11 -8
- package/src/queue-table/queue-table.scss +5 -0
- package/src/remove-queue-entry-dialog/remove-queue-entry.component.tsx +16 -15
- package/src/remove-queue-entry-dialog/remove-queue-entry.resource.ts +20 -26
- package/src/routes.json +34 -27
- package/src/transition-latest-queue-entry/transition-latest-queue-entry.component.tsx +33 -0
- package/src/transition-latest-queue-entry/transition-latest-queue-entry.resource.ts +30 -0
- package/translations/am.json +4 -3
- package/translations/ar.json +5 -4
- package/translations/en.json +9 -6
- package/translations/es.json +81 -80
- package/translations/fr.json +255 -254
- package/translations/he.json +5 -4
- package/translations/km.json +5 -4
- package/translations/zh.json +5 -4
- package/translations/zh_CN.json +5 -4
- package/dist/152.js +0 -1
- package/dist/152.js.map +0 -1
- package/dist/255.js +0 -2
- package/dist/255.js.map +0 -1
- package/dist/265.js +0 -1
- package/dist/265.js.map +0 -1
- package/dist/303.js +0 -1
- package/dist/303.js.map +0 -1
- package/dist/484.js +0 -2
- package/dist/484.js.map +0 -1
- package/dist/729.js +0 -1
- package/dist/729.js.map +0 -1
- package/src/patient-queue-header/patient-queue-illustration.component.tsx +0 -22
- /package/dist/{255.js.LICENSE.txt → 372.js.LICENSE.txt} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useCallback } from 'react';
|
|
2
2
|
import { useTranslation } from 'react-i18next';
|
|
3
3
|
import { Button, ModalBody, ModalFooter, ModalHeader } from '@carbon/react';
|
|
4
4
|
import { parseDate, showSnackbar, useVisit } from '@openmrs/esm-framework';
|
|
@@ -20,7 +20,7 @@ const RemoveQueueEntryDialog: React.FC<RemoveQueueEntryDialogProps> = ({ queueEn
|
|
|
20
20
|
|
|
21
21
|
const { data: appointments } = useCheckedInAppointments(queueEntry.patientUuid, startOfDay);
|
|
22
22
|
|
|
23
|
-
const removeQueueEntry = () => {
|
|
23
|
+
const removeQueueEntry = useCallback(() => {
|
|
24
24
|
const endCurrentVisitPayload = {
|
|
25
25
|
location: currentVisit?.location?.uuid,
|
|
26
26
|
startDatetime: parseDate(currentVisit?.startDatetime),
|
|
@@ -37,25 +37,26 @@ const RemoveQueueEntryDialog: React.FC<RemoveQueueEntryDialogProps> = ({ queueEn
|
|
|
37
37
|
endCurrentVisitPayload,
|
|
38
38
|
queueEntry.visitUuid,
|
|
39
39
|
appointments,
|
|
40
|
-
)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
40
|
+
)
|
|
41
|
+
.then(() => {
|
|
42
|
+
closeModal();
|
|
43
|
+
mutateQueueEntries();
|
|
44
|
+
showSnackbar({
|
|
45
|
+
isLowContrast: true,
|
|
46
|
+
kind: 'success',
|
|
47
|
+
subtitle: t('queueEntryRemovedSuccessfully', `Queue entry removed successfully`),
|
|
48
|
+
title: t('queueEntryRemoved', 'Queue entry removed'),
|
|
49
|
+
});
|
|
50
|
+
})
|
|
51
|
+
.catch((error) => {
|
|
50
52
|
showSnackbar({
|
|
51
53
|
title: t('removeQueueEntryError', 'Error removing queue entry'),
|
|
52
54
|
kind: 'error',
|
|
53
55
|
isLowContrast: false,
|
|
54
56
|
subtitle: error?.message,
|
|
55
57
|
});
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
};
|
|
58
|
+
});
|
|
59
|
+
}, [appointments, currentVisit, queueEntry]);
|
|
59
60
|
|
|
60
61
|
return (
|
|
61
62
|
<div>
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
import { openmrsFetch, restBaseUrl, updateVisit } from '@openmrs/esm-framework';
|
|
2
1
|
import dayjs from 'dayjs';
|
|
3
|
-
import { endPatientStatus } from '../active-visits/active-visits-table.resource';
|
|
4
|
-
import { type AppointmentsFetchResponse, type EndVisitPayload } from '../types';
|
|
5
2
|
import useSWR from 'swr';
|
|
3
|
+
import { openmrsFetch, restBaseUrl, updateVisit } from '@openmrs/esm-framework';
|
|
4
|
+
import { type AppointmentsFetchResponse, type EndVisitPayload } from '../types';
|
|
5
|
+
import { endPatientStatus } from '../active-visits/active-visits-table.resource';
|
|
6
6
|
import { omrsDateFormat, timeZone } from '../constants';
|
|
7
|
-
import { first } from 'rxjs/operators';
|
|
8
7
|
|
|
9
8
|
const statusChangeTime = dayjs(new Date()).format(omrsDateFormat);
|
|
10
9
|
|
|
11
10
|
export async function endQueueEntry(
|
|
12
11
|
queueUuid: string,
|
|
13
|
-
|
|
14
12
|
queueEntryUuid: string,
|
|
15
13
|
endedAt: Date,
|
|
16
14
|
endCurrentVisitPayload: EndVisitPayload,
|
|
@@ -21,31 +19,27 @@ export async function endQueueEntry(
|
|
|
21
19
|
|
|
22
20
|
if (endCurrentVisitPayload) {
|
|
23
21
|
if (appointments?.length) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
await Promise.all(
|
|
23
|
+
appointments.map(async (appointment) => {
|
|
24
|
+
await changeAppointmentStatus('Completed', appointment.uuid);
|
|
25
|
+
}),
|
|
26
|
+
);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
await
|
|
29
|
+
await endPatientStatus(queueUuid, queueEntryUuid, endedAt);
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
(error) => {
|
|
38
|
-
return error;
|
|
39
|
-
},
|
|
40
|
-
);
|
|
31
|
+
try {
|
|
32
|
+
const response = await updateVisit(visitUuid, endCurrentVisitPayload, abortController);
|
|
33
|
+
return response.status;
|
|
34
|
+
} catch (error) {
|
|
35
|
+
return error;
|
|
36
|
+
}
|
|
41
37
|
} else {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return error;
|
|
48
|
-
});
|
|
38
|
+
try {
|
|
39
|
+
return await endPatientStatus(queueUuid, queueEntryUuid, endedAt);
|
|
40
|
+
} catch (error) {
|
|
41
|
+
return error;
|
|
42
|
+
}
|
|
49
43
|
}
|
|
50
44
|
}
|
|
51
45
|
|
package/src/routes.json
CHANGED
|
@@ -40,10 +40,6 @@
|
|
|
40
40
|
"name": "service-queues-dashboard",
|
|
41
41
|
"slot": "service-queues-dashboard-slot"
|
|
42
42
|
},
|
|
43
|
-
{
|
|
44
|
-
"name": "edit-queue-entry-status-modal",
|
|
45
|
-
"component": "editQueueEntryStatusModal"
|
|
46
|
-
},
|
|
47
43
|
{
|
|
48
44
|
"name": "patient-info-banner-slot",
|
|
49
45
|
"component": "patientInfoBannerSlot"
|
|
@@ -57,51 +53,62 @@
|
|
|
57
53
|
"component": "clearAllQueueEntries"
|
|
58
54
|
},
|
|
59
55
|
{
|
|
60
|
-
"name": "
|
|
61
|
-
"component": "
|
|
56
|
+
"name": "previous-visit-summary-widget",
|
|
57
|
+
"component": "pastVisitSummary",
|
|
58
|
+
"slot": "previous-visit-summary-slot"
|
|
62
59
|
},
|
|
60
|
+
|
|
63
61
|
{
|
|
64
|
-
"name": "
|
|
65
|
-
"component": "
|
|
62
|
+
"name": "active-visits-row-actions",
|
|
63
|
+
"component": "activeVisitsRowActions",
|
|
64
|
+
"slot": "queue-table-serve-patient-slot"
|
|
66
65
|
},
|
|
67
66
|
{
|
|
68
|
-
"name": "
|
|
69
|
-
"component": "
|
|
70
|
-
"slot":
|
|
67
|
+
"name": "visit-form-queue-fields",
|
|
68
|
+
"component": "visitFormQueueFields",
|
|
69
|
+
"slot":"visit-form-queue-slot"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"modals": [
|
|
73
|
+
{
|
|
74
|
+
"name": "add-visit-to-queue-modal",
|
|
75
|
+
"component": "addVisitToQueueModal"
|
|
71
76
|
},
|
|
72
77
|
{
|
|
73
78
|
"name": "add-provider-to-room-modal",
|
|
74
79
|
"component": "addProviderToRoomModal"
|
|
75
80
|
},
|
|
76
|
-
{
|
|
77
|
-
"name": "transition-queue-entry-modal",
|
|
78
|
-
"component": "transitionQueueEntryModal"
|
|
79
|
-
},
|
|
80
81
|
{
|
|
81
82
|
"name": "edit-queue-entry-modal",
|
|
82
83
|
"component": "editQueueEntryModal"
|
|
83
84
|
},
|
|
84
85
|
{
|
|
85
|
-
"name": "
|
|
86
|
-
"component": "
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
"name": "void-queue-entry-modal",
|
|
90
|
-
"component": "voidQueueEntryModal"
|
|
86
|
+
"name": "edit-queue-entry-status-modal",
|
|
87
|
+
"component": "editQueueEntryStatusModal"
|
|
91
88
|
},
|
|
92
89
|
{
|
|
93
90
|
"name": "end-queue-entry-modal",
|
|
94
91
|
"component": "endQueueEntryModal"
|
|
95
92
|
},
|
|
96
93
|
{
|
|
97
|
-
"name": "
|
|
98
|
-
"component": "
|
|
99
|
-
"slot": "queue-table-serve-patient-slot"
|
|
94
|
+
"name": "transition-patient-to-latest-queue-modal",
|
|
95
|
+
"component": "transitionPatientToLatestQueue"
|
|
100
96
|
},
|
|
101
97
|
{
|
|
102
|
-
"name": "
|
|
103
|
-
"component": "
|
|
104
|
-
|
|
98
|
+
"name": "transition-queue-entry-modal",
|
|
99
|
+
"component": "transitionQueueEntryModal"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name": "transition-queue-entry-status-modal",
|
|
103
|
+
"component": "transitionQueueEntryStatusModal"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"name": "undo-transition-queue-entry-modal",
|
|
107
|
+
"component": "undoTransitionQueueEntryModal"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "void-queue-entry-modal",
|
|
111
|
+
"component": "voidQueueEntryModal"
|
|
105
112
|
}
|
|
106
113
|
],
|
|
107
114
|
"workspaces": [
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React, { useEffect } from 'react';
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
import { useLatestQueueEntry } from './transition-latest-queue-entry.resource';
|
|
4
|
+
import TransitionQueueEntryModal from '../queue-table/queue-entry-actions/transition-queue-entry.modal';
|
|
5
|
+
|
|
6
|
+
interface TransitionLatestQueueEntryProps {
|
|
7
|
+
patientUuid: string;
|
|
8
|
+
closeModal: () => void;
|
|
9
|
+
modalTitle?: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const TransitionLatestQueueEntry: React.FC<TransitionLatestQueueEntryProps> = ({
|
|
13
|
+
closeModal,
|
|
14
|
+
patientUuid,
|
|
15
|
+
modalTitle,
|
|
16
|
+
}) => {
|
|
17
|
+
const { t } = useTranslation();
|
|
18
|
+
const { data: queueEntry, error, isLoading } = useLatestQueueEntry(patientUuid);
|
|
19
|
+
|
|
20
|
+
if (error || !queueEntry) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return (
|
|
25
|
+
<TransitionQueueEntryModal
|
|
26
|
+
queueEntry={queueEntry}
|
|
27
|
+
closeModal={closeModal}
|
|
28
|
+
modalTitle={t('TransitionLatestQueueEntry', "Transition patient's latest queue")}
|
|
29
|
+
/>
|
|
30
|
+
);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export default TransitionLatestQueueEntry;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type FetchResponse,
|
|
3
|
+
openmrsFetch,
|
|
4
|
+
type OpenmrsResource,
|
|
5
|
+
type Patient,
|
|
6
|
+
type Visit,
|
|
7
|
+
} from '@openmrs/esm-framework';
|
|
8
|
+
import useSWR from 'swr';
|
|
9
|
+
import useSWRImmutable from 'swr/immutable';
|
|
10
|
+
import { type QueueEntry } from '../types';
|
|
11
|
+
import { FetcherResponse } from 'swr/_internal';
|
|
12
|
+
|
|
13
|
+
export function useLatestQueueEntry(patientUuid: string) {
|
|
14
|
+
const customRepresentation =
|
|
15
|
+
'custom:(uuid,display,queue:(uuid,display,name,location:(uuid,display),service:(uuid,display),allowedPriorities:(uuid,display),allowedStatuses:(uuid,display)),status,patient:(uuid,display),visit:(uuid,display,startDatetime),priority,priorityComment,sortWeight,startedAt,endedAt,locationWaitingFor,queueComingFrom,providerWaitingFor,previousQueueEntry)';
|
|
16
|
+
|
|
17
|
+
const encodedRepresentation = encodeURIComponent(customRepresentation);
|
|
18
|
+
const url = `/ws/rest/v1/queue-entry?v=${encodedRepresentation}&patient=${patientUuid}&isEnded=false`;
|
|
19
|
+
const { data, error, isLoading, mutate } = useSWR<FetchResponse<{ results: QueueEntry[] }>>(url, openmrsFetch);
|
|
20
|
+
|
|
21
|
+
const queueEntry =
|
|
22
|
+
data?.data?.results?.reduce((latestEntry, currentEntry) => {
|
|
23
|
+
if (!latestEntry || new Date(currentEntry.startedAt) > new Date(latestEntry.startedAt)) {
|
|
24
|
+
return currentEntry;
|
|
25
|
+
}
|
|
26
|
+
return latestEntry;
|
|
27
|
+
}, null) || null;
|
|
28
|
+
|
|
29
|
+
return { data: queueEntry, error, isLoading, mutate };
|
|
30
|
+
}
|
package/translations/am.json
CHANGED
|
@@ -93,7 +93,6 @@
|
|
|
93
93
|
"gender": "Gender",
|
|
94
94
|
"heartRate": "Heart rate",
|
|
95
95
|
"height": "Height",
|
|
96
|
-
"home": "Home",
|
|
97
96
|
"hourAndMinuteFormatted": "{{hours}} hour(s) and {{minutes}} minute(s)",
|
|
98
97
|
"idNumber": "ID Number",
|
|
99
98
|
"indication": "Indication",
|
|
@@ -162,6 +161,7 @@
|
|
|
162
161
|
"patientAlreadyInQueue": "Patient is already in the queue",
|
|
163
162
|
"patientAttendingService": "Patient attending service",
|
|
164
163
|
"patientHasActiveVisit": "The patient already has an active visit",
|
|
164
|
+
"patientInfo": "{{name}}{{sexInfo}}{{ageInfo}}",
|
|
165
165
|
"patientList": "Patient list",
|
|
166
166
|
"patientName": "Patient name",
|
|
167
167
|
"patientNotInQueue": "The patient is not in the queue",
|
|
@@ -204,7 +204,7 @@
|
|
|
204
204
|
"queueEntryTransitionUndoSuccessful": "Queue entry transition undo success",
|
|
205
205
|
"queueEntryUpdateFailed": "Error updating queue entry",
|
|
206
206
|
"queueEntryUpdateSuccessfully": "Queue Entry Updated Successfully",
|
|
207
|
-
"queueLocation": "Queue
|
|
207
|
+
"queueLocation": "Queue location",
|
|
208
208
|
"queueLocationRequired": "Queue location is required",
|
|
209
209
|
"queueName": "Queue name",
|
|
210
210
|
"queuePriority": "Queue priority",
|
|
@@ -255,7 +255,7 @@
|
|
|
255
255
|
"serve": "Serve",
|
|
256
256
|
"servePatient": "Serve patient",
|
|
257
257
|
"service": "Service",
|
|
258
|
-
"serviceIsRequired": "
|
|
258
|
+
"serviceIsRequired": "Service is required",
|
|
259
259
|
"serviceQueue": "Service queue",
|
|
260
260
|
"serviceQueues": "Service queues",
|
|
261
261
|
"sex": "Sex",
|
|
@@ -281,6 +281,7 @@
|
|
|
281
281
|
"today": "Today",
|
|
282
282
|
"totalPatients": "Total Patients",
|
|
283
283
|
"transition": "Transition",
|
|
284
|
+
"TransitionLatestQueueEntry": "Transition patient to latest queue",
|
|
284
285
|
"transitionPatient": "Transition patient",
|
|
285
286
|
"transitionPatientStatusOrQueue": "Select a new status or queue for patient to transition to.",
|
|
286
287
|
"triageForm": "Triage form",
|
package/translations/ar.json
CHANGED
|
@@ -93,7 +93,6 @@
|
|
|
93
93
|
"gender": "الجنس",
|
|
94
94
|
"heartRate": "معدل ضربات القلب",
|
|
95
95
|
"height": "الطول",
|
|
96
|
-
"home": "المنزل",
|
|
97
96
|
"hourAndMinuteFormatted": "{{hours}} hour(s) and {{minutes}} minute(s)",
|
|
98
97
|
"idNumber": "رقم الهوية",
|
|
99
98
|
"indication": "الدلالة",
|
|
@@ -162,6 +161,7 @@
|
|
|
162
161
|
"patientAlreadyInQueue": "Patient is already in the queue",
|
|
163
162
|
"patientAttendingService": "المريض الذي يحضر الخدمة",
|
|
164
163
|
"patientHasActiveVisit": "لدى المريض زيارة نشطة بالفعل",
|
|
164
|
+
"patientInfo": "{{name}}{{sexInfo}}{{ageInfo}}",
|
|
165
165
|
"patientList": "قائمة المرضى",
|
|
166
166
|
"patientName": "اسم المريض",
|
|
167
167
|
"patientNotInQueue": "المريض ليس في الطابور",
|
|
@@ -204,7 +204,7 @@
|
|
|
204
204
|
"queueEntryTransitionUndoSuccessful": "Queue entry transition undo success",
|
|
205
205
|
"queueEntryUpdateFailed": "خطأ في تحديث دخول الطابور",
|
|
206
206
|
"queueEntryUpdateSuccessfully": "تم تحديث دخول الطابور بنجاح",
|
|
207
|
-
"queueLocation": "
|
|
207
|
+
"queueLocation": "Queue location",
|
|
208
208
|
"queueLocationRequired": "Queue location is required",
|
|
209
209
|
"queueName": "اسم الطابور",
|
|
210
210
|
"queuePriority": "أولوية الطابور",
|
|
@@ -213,7 +213,7 @@
|
|
|
213
213
|
"queueRoomAddFailed": "خطأ في إضافة غرفة الانتظار",
|
|
214
214
|
"queueRoomName": "اسم غرفة الانتظار",
|
|
215
215
|
"queueRoomUpdatedSuccessfully": "تم تحديث غرفة الانتظار بنجاح",
|
|
216
|
-
"queuesClearedSuccessfully": "
|
|
216
|
+
"queuesClearedSuccessfully": "Queues cleared successfully",
|
|
217
217
|
"queueScreen": "شاشة الطابور",
|
|
218
218
|
"queueService": "خدمة الطابور",
|
|
219
219
|
"queueStatus": "حالة الطابور",
|
|
@@ -255,7 +255,7 @@
|
|
|
255
255
|
"serve": "خدمة",
|
|
256
256
|
"servePatient": "خدمة المريض",
|
|
257
257
|
"service": "خدمة",
|
|
258
|
-
"serviceIsRequired": "
|
|
258
|
+
"serviceIsRequired": "Service is required",
|
|
259
259
|
"serviceQueue": "طابور الخدمة",
|
|
260
260
|
"serviceQueues": "طوابير الخدمة",
|
|
261
261
|
"sex": "الجنس",
|
|
@@ -281,6 +281,7 @@
|
|
|
281
281
|
"today": "اليوم",
|
|
282
282
|
"totalPatients": "Total Patients",
|
|
283
283
|
"transition": "Transition",
|
|
284
|
+
"TransitionLatestQueueEntry": "Transition patient to latest queue",
|
|
284
285
|
"transitionPatient": "Transition patient",
|
|
285
286
|
"transitionPatientStatusOrQueue": "Select a new status or queue for patient to transition to.",
|
|
286
287
|
"triageForm": "نموذج الترياج",
|
package/translations/en.json
CHANGED
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"femaleLabelText": "Female",
|
|
84
84
|
"fields": "of the following fields",
|
|
85
85
|
"filter": "Filter",
|
|
86
|
-
"filterByService": "Filter by service
|
|
87
|
-
"filterByStatus": "Filter by status
|
|
86
|
+
"filterByService": "Filter by service:",
|
|
87
|
+
"filterByStatus": "Filter by status:",
|
|
88
88
|
"filterTable": "Filter table",
|
|
89
89
|
"firstName": "First name",
|
|
90
90
|
"firstNameSort": "First name (a-z)",
|
|
@@ -93,7 +93,6 @@
|
|
|
93
93
|
"gender": "Gender",
|
|
94
94
|
"heartRate": "Heart rate",
|
|
95
95
|
"height": "Height",
|
|
96
|
-
"home": "Home",
|
|
97
96
|
"hourAndMinuteFormatted": "{{hours}} hour(s) and {{minutes}} minute(s)",
|
|
98
97
|
"idNumber": "ID Number",
|
|
99
98
|
"indication": "Indication",
|
|
@@ -162,6 +161,7 @@
|
|
|
162
161
|
"patientAlreadyInQueue": "Patient is already in the queue",
|
|
163
162
|
"patientAttendingService": "Patient attending service",
|
|
164
163
|
"patientHasActiveVisit": "The patient already has an active visit",
|
|
164
|
+
"patientInfo": "{{name}}{{sexInfo}}{{ageInfo}}",
|
|
165
165
|
"patientList": "Patient list",
|
|
166
166
|
"patientName": "Patient name",
|
|
167
167
|
"patientNotInQueue": "The patient is not in the queue",
|
|
@@ -204,7 +204,7 @@
|
|
|
204
204
|
"queueEntryTransitionUndoSuccessful": "Queue entry transition undo success",
|
|
205
205
|
"queueEntryUpdateFailed": "Error updating queue entry status",
|
|
206
206
|
"queueEntryUpdateSuccessfully": "Queue Entry Updated Successfully",
|
|
207
|
-
"queueLocation": "Queue
|
|
207
|
+
"queueLocation": "Queue location",
|
|
208
208
|
"queueLocationRequired": "Queue location is required",
|
|
209
209
|
"queueName": "Queue name",
|
|
210
210
|
"queuePriority": "Queue priority",
|
|
@@ -213,8 +213,9 @@
|
|
|
213
213
|
"queueRoomAddFailed": "Error adding queue room",
|
|
214
214
|
"queueRoomName": "Queue room name",
|
|
215
215
|
"queueRoomUpdatedSuccessfully": "Queue room updated successfully",
|
|
216
|
-
"queuesClearedSuccessfully": "Queues
|
|
216
|
+
"queuesClearedSuccessfully": "Queues cleared successfully",
|
|
217
217
|
"queueScreen": "Queue screen",
|
|
218
|
+
"queueScreenError": "Queue screen error",
|
|
218
219
|
"queueService": "Queue service",
|
|
219
220
|
"queueStatus": "Queue status",
|
|
220
221
|
"recentScheduledVisits_one": "{{count}} visit scheduled for +/- 7 days",
|
|
@@ -255,7 +256,7 @@
|
|
|
255
256
|
"serve": "Serve",
|
|
256
257
|
"servePatient": "Serve patient",
|
|
257
258
|
"service": "Service",
|
|
258
|
-
"serviceIsRequired": "
|
|
259
|
+
"serviceIsRequired": "Service is required",
|
|
259
260
|
"serviceQueue": "Service queue",
|
|
260
261
|
"serviceQueues": "Service queues",
|
|
261
262
|
"sex": "Sex",
|
|
@@ -272,6 +273,7 @@
|
|
|
272
273
|
"submitting": "Submitting...",
|
|
273
274
|
"success": "Success",
|
|
274
275
|
"temperature": "Temperature",
|
|
276
|
+
"ticketAnnouncement": "Ticket number: {{prefix}}, - {{suffix}}, please proceed to room {{room}}",
|
|
275
277
|
"ticketNumber": "Ticket Number",
|
|
276
278
|
"time": "Time",
|
|
277
279
|
"timeCannotBeInFuture": "Time cannot be in the future",
|
|
@@ -281,6 +283,7 @@
|
|
|
281
283
|
"today": "Today",
|
|
282
284
|
"totalPatients": "Total Patients",
|
|
283
285
|
"transition": "Transition",
|
|
286
|
+
"TransitionLatestQueueEntry": "Transition patient to latest queue",
|
|
284
287
|
"transitionPatient": "Transition patient",
|
|
285
288
|
"transitionPatientStatusOrQueue": "Select a new status or queue for patient to transition to.",
|
|
286
289
|
"triageForm": "Triage form",
|