@kenyaemr/esm-patient-registration-app 5.2.2 → 5.2.3

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.
Files changed (114) hide show
  1. package/dist/102.js +1 -0
  2. package/dist/102.js.map +1 -0
  3. package/dist/130.js +1 -1
  4. package/dist/130.js.map +1 -1
  5. package/dist/271.js +1 -0
  6. package/dist/319.js +1 -1
  7. package/dist/431.js +2 -0
  8. package/dist/431.js.map +1 -0
  9. package/dist/460.js +1 -1
  10. package/dist/537.js +1 -1
  11. package/dist/537.js.map +1 -1
  12. package/dist/574.js +1 -1
  13. package/dist/644.js +1 -0
  14. package/dist/757.js +1 -1
  15. package/dist/784.js +1 -1
  16. package/dist/788.js +1 -1
  17. package/dist/807.js +1 -1
  18. package/dist/833.js +1 -1
  19. package/dist/kenyaemr-esm-patient-registration-app.js +1 -0
  20. package/dist/{openmrs-esm-patient-registration-app.js.buildmanifest.json → kenyaemr-esm-patient-registration-app.js.buildmanifest.json} +97 -53
  21. package/dist/kenyaemr-esm-patient-registration-app.js.map +1 -0
  22. package/dist/main.js +1 -1
  23. package/dist/main.js.map +1 -1
  24. package/dist/routes.json +1 -1
  25. package/dist.tar.gz +0 -0
  26. package/package.json +4 -3
  27. package/src/add-patient-link.test.tsx +9 -7
  28. package/src/config-schema.ts +31 -38
  29. package/src/constants.ts +1 -1
  30. package/src/offline.resources.ts +2 -9
  31. package/src/offline.ts +2 -2
  32. package/src/patient-registration/before-save-prompt.tsx +2 -1
  33. package/src/patient-registration/field/__mocks__/field.resource.ts +1 -1
  34. package/src/patient-registration/field/address/address-field.component.tsx +5 -4
  35. package/src/patient-registration/field/address/address-hierarchy.resource.tsx +2 -2
  36. package/src/patient-registration/field/address/address-search.component.tsx +1 -14
  37. package/src/patient-registration/field/address/custom-address-field.component.tsx +1 -1
  38. package/src/patient-registration/field/address/tests/address-hierarchy.test.tsx +3 -3
  39. package/src/patient-registration/field/address/tests/address-search-component.test.tsx +14 -7
  40. package/src/patient-registration/field/custom-field.component.tsx +1 -1
  41. package/src/patient-registration/field/dob/dob.component.tsx +2 -2
  42. package/src/patient-registration/field/dob/dob.test.tsx +0 -3
  43. package/src/patient-registration/field/field.component.tsx +4 -1
  44. package/src/patient-registration/field/field.resource.ts +2 -2
  45. package/src/patient-registration/field/field.test.tsx +98 -95
  46. package/src/patient-registration/field/gender/gender-field.component.tsx +4 -4
  47. package/src/patient-registration/field/gender/gender-field.test.tsx +7 -14
  48. package/src/patient-registration/field/id/id-field.component.tsx +6 -6
  49. package/src/patient-registration/field/id/id-field.test.tsx +9 -7
  50. package/src/patient-registration/field/id/identifier-selection-overlay.component.tsx +1 -1
  51. package/src/patient-registration/field/name/name-field.component.tsx +1 -1
  52. package/src/patient-registration/field/obs/obs-field.component.tsx +35 -33
  53. package/src/patient-registration/field/obs/obs-field.test.tsx +106 -28
  54. package/src/patient-registration/field/person-attributes/coded-attributes.component.tsx +1 -1
  55. package/src/patient-registration/field/person-attributes/coded-person-attribute-field.component.tsx +67 -24
  56. package/src/patient-registration/field/person-attributes/coded-person-attribute-field.test.tsx +54 -30
  57. package/src/patient-registration/field/person-attributes/person-attribute-field.component.tsx +4 -3
  58. package/src/patient-registration/field/person-attributes/person-attribute-field.test.tsx +1 -1
  59. package/src/patient-registration/field/person-attributes/{person-attributes.resource.tsx → person-attributes.resource.ts} +2 -2
  60. package/src/patient-registration/field/person-attributes/text-person-attribute-field.component.tsx +1 -1
  61. package/src/patient-registration/field/phone/phone-field.component.tsx +16 -0
  62. package/src/patient-registration/form-manager.test.ts +1 -1
  63. package/src/patient-registration/form-manager.ts +14 -22
  64. package/src/patient-registration/input/basic-input/select/select-input.test.tsx +3 -3
  65. package/src/patient-registration/input/custom-input/autosuggest/autosuggest.component.tsx +5 -5
  66. package/src/patient-registration/input/custom-input/autosuggest/autosuggest.test.tsx +70 -58
  67. package/src/patient-registration/input/custom-input/identifier/identifier-input.component.tsx +1 -1
  68. package/src/patient-registration/input/custom-input/identifier/identifier-input.test.tsx +2 -5
  69. package/src/patient-registration/input/custom-input/identifier/utils.ts +1 -1
  70. package/src/patient-registration/input/dummy-data/dummy-data-input.component.tsx +1 -1
  71. package/src/patient-registration/input/dummy-data/dummy-data-input.test.tsx +6 -6
  72. package/src/patient-registration/patient-registration-context.ts +3 -4
  73. package/src/patient-registration/patient-registration-hooks.ts +12 -12
  74. package/src/patient-registration/patient-registration-utils.ts +7 -7
  75. package/src/patient-registration/patient-registration.component.tsx +19 -9
  76. package/src/patient-registration/{patient-registration.resource.tsx → patient-registration.resource.ts} +1 -1
  77. package/src/patient-registration/patient-registration.test.tsx +270 -251
  78. package/src/patient-registration/{patient-registration.types.tsx → patient-registration.types.ts} +11 -3
  79. package/src/patient-registration/section/death-info/death-info-section.test.tsx +33 -45
  80. package/src/patient-registration/section/demographics/demographics-section.test.tsx +1 -2
  81. package/src/patient-registration/section/generic-section.component.tsx +1 -1
  82. package/src/patient-registration/section/patient-relationships/relationships-section.component.tsx +3 -3
  83. package/src/patient-registration/section/patient-relationships/relationships-section.test.tsx +17 -5
  84. package/src/patient-registration/section/patient-relationships/relationships.resource.tsx +3 -3
  85. package/src/patient-registration/section/section-wrapper.component.tsx +1 -1
  86. package/src/patient-registration/section/section.component.tsx +1 -1
  87. package/src/patient-registration/validation/patient-registration-validation.test.tsx +140 -126
  88. package/src/patient-registration/validation/patient-registration-validation.tsx +54 -46
  89. package/src/routes.json +1 -0
  90. package/src/widgets/cancel-patient-edit.test.tsx +7 -4
  91. package/src/widgets/delete-identifier-confirmation-modal.test.tsx +7 -4
  92. package/src/widgets/display-photo.test.tsx +1 -1
  93. package/src/widgets/edit-patient-details-button.test.tsx +12 -7
  94. package/translations/am.json +22 -2
  95. package/translations/ar.json +22 -2
  96. package/translations/en.json +10 -10
  97. package/translations/es.json +22 -2
  98. package/translations/fr.json +22 -2
  99. package/translations/he.json +22 -2
  100. package/translations/km.json +22 -2
  101. package/translations/zh.json +89 -0
  102. package/translations/zh_CN.json +89 -0
  103. package/tsconfig.json +1 -1
  104. package/__mocks__/autogenerationoptions.mock.ts +0 -34
  105. package/dist/388.js +0 -2
  106. package/dist/388.js.map +0 -1
  107. package/dist/598.js +0 -1
  108. package/dist/598.js.map +0 -1
  109. package/dist/openmrs-esm-patient-registration-app.js +0 -1
  110. package/dist/openmrs-esm-patient-registration-app.js.map +0 -1
  111. package/src/patient-registration/field/__mocks__/identifier-types.mock.ts +0 -76
  112. package/src/patient-registration/field/__mocks__/identifiers.mock.ts +0 -27
  113. package/src/patient-registration/field/address/tests/mocks.ts +0 -98
  114. /package/dist/{388.js.LICENSE.txt → 431.js.LICENSE.txt} +0 -0
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { screen, render, fireEvent } from '@testing-library/react';
2
+ import userEvent from '@testing-library/user-event';
3
+ import { screen, render } from '@testing-library/react';
3
4
  import CancelPatientEdit from './cancel-patient-edit.component';
4
5
 
5
6
  describe('CancelPatientEdit component', () => {
@@ -10,15 +11,17 @@ describe('CancelPatientEdit component', () => {
10
11
  jest.clearAllMocks();
11
12
  });
12
13
 
13
- it('renders the modal and triggers close and onConfirm functions', () => {
14
+ it('renders the modal and triggers close and onConfirm functions', async () => {
15
+ const user = userEvent.setup();
16
+
14
17
  render(<CancelPatientEdit close={mockClose} onConfirm={mockOnConfirm} />);
15
18
 
16
19
  const cancelButton = screen.getByRole('button', { name: /Cancel/i });
17
- fireEvent.click(cancelButton);
20
+ await user.click(cancelButton);
18
21
  expect(mockClose).toHaveBeenCalledTimes(1);
19
22
 
20
23
  const discardButton = screen.getByRole('button', { name: /discard/i });
21
- fireEvent.click(discardButton);
24
+ await user.click(discardButton);
22
25
  expect(mockOnConfirm).toHaveBeenCalledTimes(1);
23
26
  });
24
27
  });
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { render, fireEvent, screen } from '@testing-library/react';
2
+ import userEvent from '@testing-library/user-event';
3
+ import { render, screen } from '@testing-library/react';
3
4
  import DeleteIdentifierConfirmationModal from './delete-identifier-confirmation-modal';
4
5
 
5
6
  describe('DeleteIdentifierConfirmationModal component', () => {
@@ -11,7 +12,9 @@ describe('DeleteIdentifierConfirmationModal component', () => {
11
12
  jest.clearAllMocks();
12
13
  });
13
14
 
14
- it('renders the modal and triggers deleteIdentifier function', () => {
15
+ it('renders the modal and triggers deleteIdentifier function', async () => {
16
+ const user = userEvent.setup();
17
+
15
18
  render(
16
19
  <DeleteIdentifierConfirmationModal
17
20
  deleteIdentifier={mockDeleteIdentifier}
@@ -21,11 +24,11 @@ describe('DeleteIdentifierConfirmationModal component', () => {
21
24
  );
22
25
 
23
26
  const cancelButton = screen.getByRole('button', { name: /cancel/i });
24
- fireEvent.click(cancelButton);
27
+ await user.click(cancelButton);
25
28
  expect(mockDeleteIdentifier).toHaveBeenCalledWith(false);
26
29
 
27
30
  const removeButton = screen.getByRole('button', { name: /remove identifier/i });
28
- fireEvent.click(removeButton);
31
+ await user.click(removeButton);
29
32
  expect(mockDeleteIdentifier).toHaveBeenCalledWith(true);
30
33
  });
31
34
  });
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { render, screen } from '@testing-library/react';
3
+ import { mockPatient } from '__mocks__';
3
4
  import DisplayPatientPhoto from './display-photo.component';
4
- import { mockPatient } from '../../../../__mocks__/appointments.mock';
5
5
 
6
6
  jest.mock('../patient-registration/patient-registration.resource', () => ({
7
7
  usePatientPhoto: jest.fn().mockReturnValue({ data: { imageSrc: 'test-image-src' } }),
@@ -1,12 +1,15 @@
1
1
  import React from 'react';
2
- import { render, fireEvent, screen } from '@testing-library/react';
3
- import EditPatientDetailsButton from './edit-patient-details-button.component';
2
+ import userEvent from '@testing-library/user-event';
3
+ import { render, screen } from '@testing-library/react';
4
4
  import { navigate } from '@openmrs/esm-framework';
5
- import { mockPatient } from '../../../../__mocks__/appointments.mock';
5
+ import { mockPatient } from '__mocks__';
6
+ import EditPatientDetailsButton from './edit-patient-details-button.component';
6
7
 
7
8
  describe('EditPatientDetailsButton', () => {
8
9
  const patientUuid = mockPatient.uuid;
9
- it('should navigate to the edit page when clicked', () => {
10
+
11
+ it('should navigate to the edit page when clicked', async () => {
12
+ const user = userEvent.setup();
10
13
  const mockNavigate = navigate as jest.Mock;
11
14
 
12
15
  jest.mock('@openmrs/esm-framework', () => {
@@ -19,17 +22,19 @@ describe('EditPatientDetailsButton', () => {
19
22
  render(<EditPatientDetailsButton patientUuid={patientUuid} />);
20
23
 
21
24
  const button = screen.getByRole('menuitem');
22
- fireEvent.click(button);
25
+ await user.click(button);
23
26
 
24
27
  expect(mockNavigate).toHaveBeenCalledWith({ to: expect.stringContaining(`/patient/${patientUuid}/edit`) });
25
28
  });
26
29
 
27
- it('should call the onTransition function when provided', () => {
30
+ it('should call the onTransition function when provided', async () => {
31
+ const user = userEvent.setup();
32
+
28
33
  const onTransitionMock = jest.fn();
29
34
  render(<EditPatientDetailsButton patientUuid={patientUuid} onTransition={onTransitionMock} />);
30
35
 
31
36
  const button = screen.getByRole('menuitem');
32
- fireEvent.click(button);
37
+ await user.click(button);
33
38
 
34
39
  expect(onTransitionMock).toHaveBeenCalled();
35
40
  });
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "addRelationshipButtonText": "Add Relationship",
3
3
  "addressHeader": "Address",
4
+ "age": "Age",
4
5
  "allFieldsRequiredText": "All fields are required unless marked optional",
5
6
  "autoGeneratedPlaceholderText": "Auto-generated",
6
7
  "birthdayNotInTheFuture": "",
@@ -8,11 +9,18 @@
8
9
  "birthFieldLabelText": "Birth",
9
10
  "cancel": "Cancel",
10
11
  "causeOfDeathInputLabel": "Cause of Death",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
11
14
  "closeOverlay": "Close overlay",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
12
18
  "configure": "Configure",
13
19
  "configureIdentifiers": "Configure identifiers",
14
20
  "contactSection": "Contact Details",
21
+ "continue": "Continue to registration",
15
22
  "createNew": "Create New",
23
+ "dateOfBirth": "Date of birth",
16
24
  "dateOfBirthLabelText": "Date of Birth",
17
25
  "deathDateInputLabel": "Date of Death",
18
26
  "deathdayNotInTheFuture": "",
@@ -36,6 +44,7 @@
36
44
  "familyNameRequired": "",
37
45
  "female": "Female",
38
46
  "fullNameLabelText": "Full Name",
47
+ "gender": "Gender",
39
48
  "genderLabelText": "Sex",
40
49
  "genderRequired": "",
41
50
  "genderUnspecified": "",
@@ -49,19 +58,26 @@
49
58
  "invalidInput": "Invalid Input",
50
59
  "isDeadInputLabel": "Is Dead",
51
60
  "jumpTo": "Jump to",
52
- "loadingResults": "Loading results",
53
61
  "male": "Male",
54
62
  "middleNameLabelText": "Middle Name",
63
+ "nascopNumber": "Nascop facility no",
64
+ "nationalId": "National ID",
55
65
  "negativeMonths": "",
56
66
  "negativeYears": "",
57
67
  "no": "No",
58
- "noResultsFound": "No results found",
59
68
  "numberInNameDubious": "",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
60
70
  "optional": "optional",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
61
73
  "other": "Other",
62
74
  "patient": "Patient",
75
+ "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
76
+ "patientName": "Patient name",
63
77
  "patientNameKnown": "Patient's Name is Known?",
78
+ "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
64
79
  "patientRegistrationBreadcrumb": "Patient Registration",
80
+ "postToRegistry": "Post to registry",
65
81
  "registerPatient": "Register Patient",
66
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
67
83
  "registerPatientSuccessSnackbarTitle": "New Patient Created",
@@ -79,6 +95,8 @@
79
95
  "searchAddress": "Search address",
80
96
  "searchIdentifierPlaceholder": "Search identifier",
81
97
  "selectAnOption": "Select an option",
98
+ "selectCountry": "Select country",
99
+ "selectIdentifierType": "Select identifier type",
82
100
  "sexFieldLabelText": "Sex",
83
101
  "source": "Source",
84
102
  "stroke": "Stroke",
@@ -90,6 +108,8 @@
90
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
91
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
92
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
111
+ "useValues": "Use values",
112
+ "validate": "Validate",
93
113
  "yearsEstimateRequired": "",
94
114
  "yes": "Yes"
95
115
  }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "addRelationshipButtonText": "أضف علاقة",
3
3
  "addressHeader": "العنوان",
4
+ "age": "Age",
4
5
  "allFieldsRequiredText": "جميع الحقول مطلوبة ما لم يتم التأشير عليها بأنها اختيارية",
5
6
  "autoGeneratedPlaceholderText": "تم إنشاؤه تلقائيًا",
6
7
  "birthdayNotInTheFuture": "",
@@ -8,11 +9,18 @@
8
9
  "birthFieldLabelText": "الميلاد",
9
10
  "cancel": "إلغاء",
10
11
  "causeOfDeathInputLabel": "سبب الوفاة",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
11
14
  "closeOverlay": "Close overlay",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
12
18
  "configure": "تكوين",
13
19
  "configureIdentifiers": "Configure identifiers",
14
20
  "contactSection": "تفاصيل الاتصال",
21
+ "continue": "Continue to registration",
15
22
  "createNew": "أنشئ جديد",
23
+ "dateOfBirth": "Date of birth",
16
24
  "dateOfBirthLabelText": "تاريخ الميلاد",
17
25
  "deathDateInputLabel": "تاريخ الوفاة",
18
26
  "deathdayNotInTheFuture": "",
@@ -36,6 +44,7 @@
36
44
  "familyNameRequired": "",
37
45
  "female": "أنثى",
38
46
  "fullNameLabelText": "الاسم الكامل",
47
+ "gender": "Gender",
39
48
  "genderLabelText": "الجنس",
40
49
  "genderRequired": "",
41
50
  "genderUnspecified": "",
@@ -49,19 +58,26 @@
49
58
  "invalidInput": "إدخال غير صالح",
50
59
  "isDeadInputLabel": "هل المريض متوفى؟",
51
60
  "jumpTo": "اذهب إلى",
52
- "loadingResults": "جارٍ تحميل النتائج",
53
61
  "male": "ذكر",
54
62
  "middleNameLabelText": "الاسم الأوسط",
63
+ "nascopNumber": "Nascop facility no",
64
+ "nationalId": "National ID",
55
65
  "negativeMonths": "",
56
66
  "negativeYears": "",
57
67
  "no": "لا",
58
- "noResultsFound": "لم يتم العثور على نتائج",
59
68
  "numberInNameDubious": "",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
60
70
  "optional": "اختياري",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
61
73
  "other": "آخر",
62
74
  "patient": "المريض",
75
+ "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
76
+ "patientName": "Patient name",
63
77
  "patientNameKnown": "هل اسم المريض معروف؟",
78
+ "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
64
79
  "patientRegistrationBreadcrumb": "Patient Registration",
80
+ "postToRegistry": "Post to registry",
65
81
  "registerPatient": "تسجيل المريض",
66
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
67
83
  "registerPatientSuccessSnackbarTitle": "New Patient Created",
@@ -79,6 +95,8 @@
79
95
  "searchAddress": "ابحث عن العنوان",
80
96
  "searchIdentifierPlaceholder": "Search identifier",
81
97
  "selectAnOption": "اختر خيارًا",
98
+ "selectCountry": "Select country",
99
+ "selectIdentifierType": "Select identifier type",
82
100
  "sexFieldLabelText": "الجنس",
83
101
  "source": "Source",
84
102
  "stroke": "جلطة",
@@ -90,6 +108,8 @@
90
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
91
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
92
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
111
+ "useValues": "Use values",
112
+ "validate": "Validate",
93
113
  "yearsEstimateRequired": "",
94
114
  "yes": "نعم"
95
115
  }
@@ -9,16 +9,16 @@
9
9
  "birthFieldLabelText": "Birth",
10
10
  "cancel": "Cancel",
11
11
  "causeOfDeathInputLabel": "Cause of Death",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
12
14
  "closeOverlay": "Close overlay",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
13
18
  "configure": "Configure",
14
19
  "configureIdentifiers": "Configure identifiers",
15
20
  "contactSection": "Contact Details",
16
- "cityVillage": "City",
17
- "clientRegistryEmpty": "Create & Post Patient",
18
- "clientVerificationWithClientRegistry": "Client verification with client registry",
19
21
  "continue": "Continue",
20
- "country": "Country",
21
- "countyDistrict": "District",
22
22
  "createNew": "Create New",
23
23
  "dateOfBirth": "Date of birth",
24
24
  "dateOfBirthLabelText": "Date of Birth",
@@ -58,7 +58,6 @@
58
58
  "invalidInput": "Invalid Input",
59
59
  "isDeadInputLabel": "Is Dead",
60
60
  "jumpTo": "Jump to",
61
- "loadingResults": "Loading results",
62
61
  "male": "Male",
63
62
  "middleNameLabelText": "Middle Name",
64
63
  "nascopNumber": "Nascop facility no",
@@ -66,16 +65,18 @@
66
65
  "negativeMonths": "Negative months",
67
66
  "negativeYears": "Negative years",
68
67
  "no": "No",
69
- "noResultsFound": "No results found",
70
68
  "numberInNameDubious": "Number in name is dubious",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
71
70
  "optional": "optional",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
72
73
  "other": "Other",
73
74
  "patient": "Patient",
74
75
  "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
75
76
  "patientName": "Patient name",
76
77
  "patientNameKnown": "Patient's Name is Known?",
77
78
  "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
78
- "postalCode": "Postcode",
79
+ "patientRegistrationBreadcrumb": "Patient Registration",
79
80
  "postToRegistry": "Post to registry",
80
81
  "registerPatient": "Register Patient",
81
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
@@ -92,6 +93,7 @@
92
93
  "resetIdentifierTooltip": "Reset",
93
94
  "restoreRelationshipActionButton": "Undo",
94
95
  "searchAddress": "Search address",
96
+ "searchIdentifierPlaceholder": "Search identifier",
95
97
  "selectAnOption": "Select an option",
96
98
  "selectCountry": "Select country",
97
99
  "selectIdentifierType": "Select identifier type",
@@ -106,8 +108,6 @@
106
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
107
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
108
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
109
- "updationSuccessToastDescription": "The patient's information has been successfully updated",
110
- "updationSuccessToastTitle": "Patient Details Updated",
111
111
  "useValues": "Use values",
112
112
  "validate": "Validate",
113
113
  "yearsEstimateRequired": "Years estimate required",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "addRelationshipButtonText": "Agregar relación",
3
3
  "addressHeader": "Dirección",
4
+ "age": "Age",
4
5
  "allFieldsRequiredText": "Todos los campos son obligatorios a menos que se indique como opcionales",
5
6
  "autoGeneratedPlaceholderText": "Autogenerado",
6
7
  "birthdayNotInTheFuture": "Cumpleaños no puede ser en el futuro",
@@ -8,11 +9,18 @@
8
9
  "birthFieldLabelText": "Nacimiento",
9
10
  "cancel": "Cancelar",
10
11
  "causeOfDeathInputLabel": "Causa de defunción",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
11
14
  "closeOverlay": "Close overlay",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
12
18
  "configure": "Configurar",
13
19
  "configureIdentifiers": "Configure identifiers",
14
20
  "contactSection": "Detalles de Contacto",
21
+ "continue": "Continue to registration",
15
22
  "createNew": "Crear Nuevo/a",
23
+ "dateOfBirth": "Date of birth",
16
24
  "dateOfBirthLabelText": "Fecha de Nacimiento",
17
25
  "deathDateInputLabel": "Fecha de fallecimiento",
18
26
  "deathdayNotInTheFuture": "El día de la muerte no puede ser en el futuro",
@@ -36,6 +44,7 @@
36
44
  "familyNameRequired": "Apellidos es obligatorio",
37
45
  "female": "Femenino",
38
46
  "fullNameLabelText": "Nombre y Apellidos",
47
+ "gender": "Gender",
39
48
  "genderLabelText": "Sexo",
40
49
  "genderRequired": "El sexo es obligatorio",
41
50
  "genderUnspecified": "Género no especificado",
@@ -49,19 +58,26 @@
49
58
  "invalidInput": "Entrada no válida",
50
59
  "isDeadInputLabel": "Está muerto",
51
60
  "jumpTo": "Ir a",
52
- "loadingResults": "Cargando resultados",
53
61
  "male": "Masculino",
54
62
  "middleNameLabelText": "Segundo Nombre",
63
+ "nascopNumber": "Nascop facility no",
64
+ "nationalId": "National ID",
55
65
  "negativeMonths": "Meses negativos",
56
66
  "negativeYears": "Años negativos",
57
67
  "no": "No",
58
- "noResultsFound": "No se encuentran resultados",
59
68
  "numberInNameDubious": "Número en nombre es dudoso",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
60
70
  "optional": "opcional",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
61
73
  "other": "Otro",
62
74
  "patient": "Paciente",
75
+ "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
76
+ "patientName": "Patient name",
63
77
  "patientNameKnown": "¿Se sabe el nombre del paciente?",
78
+ "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
64
79
  "patientRegistrationBreadcrumb": "Patient Registration",
80
+ "postToRegistry": "Post to registry",
65
81
  "registerPatient": "Registrar paciente",
66
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
67
83
  "registerPatientSuccessSnackbarTitle": "New Patient Created",
@@ -79,6 +95,8 @@
79
95
  "searchAddress": "Buscar dirección",
80
96
  "searchIdentifierPlaceholder": "Search identifier",
81
97
  "selectAnOption": "Seleccionar una opción",
98
+ "selectCountry": "Select country",
99
+ "selectIdentifierType": "Select identifier type",
82
100
  "sexFieldLabelText": "Sexo",
83
101
  "source": "Source",
84
102
  "stroke": "Ictus",
@@ -90,6 +108,8 @@
90
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
91
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
92
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
111
+ "useValues": "Use values",
112
+ "validate": "Validate",
93
113
  "yearsEstimateRequired": "Estimación de años obligatoria",
94
114
  "yes": "Sí"
95
115
  }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "addRelationshipButtonText": "Ajouter un lien de parenté",
3
3
  "addressHeader": "Adresse",
4
+ "age": "Age",
4
5
  "allFieldsRequiredText": "Tous les champs sont requis sauf si explicitement indiqués facultatifs",
5
6
  "autoGeneratedPlaceholderText": "Auto-generé",
6
7
  "birthdayNotInTheFuture": "La date de naissance ne peut pas être dans le futur",
@@ -8,11 +9,18 @@
8
9
  "birthFieldLabelText": "Naissance",
9
10
  "cancel": "Annuller",
10
11
  "causeOfDeathInputLabel": "Cause de décès",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
11
14
  "closeOverlay": "Close overlay",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
12
18
  "configure": "Configurer",
13
19
  "configureIdentifiers": "Configure identifiers",
14
20
  "contactSection": "Contact Details",
21
+ "continue": "Continue to registration",
15
22
  "createNew": "Créer un nouveau",
23
+ "dateOfBirth": "Date of birth",
16
24
  "dateOfBirthLabelText": "Date de naissance",
17
25
  "deathDateInputLabel": "Date de décès",
18
26
  "deathdayNotInTheFuture": "Le décès ne peut pas être dans le futur",
@@ -36,6 +44,7 @@
36
44
  "familyNameRequired": "Le nom de famille est requis",
37
45
  "female": "Femme",
38
46
  "fullNameLabelText": "Nom et Prénom",
47
+ "gender": "Gender",
39
48
  "genderLabelText": "Sexe",
40
49
  "genderRequired": "Le genre est requis",
41
50
  "genderUnspecified": "Le genre n'est pas spécifié",
@@ -49,19 +58,26 @@
49
58
  "invalidInput": "Entrée invalide",
50
59
  "isDeadInputLabel": "Est décédé",
51
60
  "jumpTo": "Passer à",
52
- "loadingResults": "Résultats de chargement",
53
61
  "male": "Homme",
54
62
  "middleNameLabelText": "Deuxième nom",
63
+ "nascopNumber": "Nascop facility no",
64
+ "nationalId": "National ID",
55
65
  "negativeMonths": "Mois négatifs",
56
66
  "negativeYears": "Années négatives",
57
67
  "no": "Non",
58
- "noResultsFound": "Aucun résultat trouvé",
59
68
  "numberInNameDubious": "Le chiffre dans le nom est suspect",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
60
70
  "optional": "Optionnel",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
61
73
  "other": "Autre",
62
74
  "patient": "Patient",
75
+ "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
76
+ "patientName": "Patient name",
63
77
  "patientNameKnown": "Le nom du patient est connu?",
78
+ "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
64
79
  "patientRegistrationBreadcrumb": "Patient Registration",
80
+ "postToRegistry": "Post to registry",
65
81
  "registerPatient": "Enregistrer un patient",
66
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
67
83
  "registerPatientSuccessSnackbarTitle": "New Patient Created",
@@ -79,6 +95,8 @@
79
95
  "searchAddress": "Chercher l'adresse",
80
96
  "searchIdentifierPlaceholder": "Search identifier",
81
97
  "selectAnOption": "Select an option",
98
+ "selectCountry": "Select country",
99
+ "selectIdentifierType": "Select identifier type",
82
100
  "sexFieldLabelText": "Sexe",
83
101
  "source": "Source",
84
102
  "stroke": "Accident",
@@ -90,6 +108,8 @@
90
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
91
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
92
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
111
+ "useValues": "Use values",
112
+ "validate": "Validate",
93
113
  "yearsEstimateRequired": "Estimation du nombre d'années requise",
94
114
  "yes": "Oui"
95
115
  }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "addRelationshipButtonText": "הוסף יחס",
3
3
  "addressHeader": "כתובת",
4
+ "age": "Age",
4
5
  "allFieldsRequiredText": "כל השדות נדרשים אלא אם צוין אחרת",
5
6
  "autoGeneratedPlaceholderText": "נוצר אוטומטית",
6
7
  "birthdayNotInTheFuture": "תאריך הלידה לא יכול להיות בעתיד",
@@ -8,11 +9,18 @@
8
9
  "birthFieldLabelText": "לידה",
9
10
  "cancel": "ביטול",
10
11
  "causeOfDeathInputLabel": "סיבת המוות",
12
+ "clientRegistryEmpty": "Create & Post Patient",
13
+ "clientVerificationWithClientRegistry": "Client verification with client registry",
11
14
  "closeOverlay": "סגור חיפוש",
15
+ "codedPersonAttributeAnswerSetEmpty": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an answer concept set UUID '{{answerConceptSetUuid}}' that does not have any concept answers.",
16
+ "codedPersonAttributeAnswerSetInvalid": "The coded person attribute field '{{codedPersonAttributeFieldId}}' has been defined with an invalid answer concept set UUID '{{answerConceptSetUuid}}'.",
17
+ "codedPersonAttributeNoAnswerSet": "The person attribute field '{{codedPersonAttributeFieldId}}' is of type 'coded' but has been defined without an answer concept set UUID. The 'answerConceptSetUuid' key is required.",
12
18
  "configure": "הגדר",
13
19
  "configureIdentifiers": "הגדר זיהויים",
14
20
  "contactSection": "פרטי יצירת קשר",
21
+ "continue": "Continue to registration",
15
22
  "createNew": "צור חדש",
23
+ "dateOfBirth": "Date of birth",
16
24
  "dateOfBirthLabelText": "תאריך לידה",
17
25
  "deathDateInputLabel": "תאריך המוות",
18
26
  "deathdayNotInTheFuture": "תאריך המוות לא יכול להיות בעתיד",
@@ -36,6 +44,7 @@
36
44
  "familyNameRequired": "שם משפחה נדרש",
37
45
  "female": "נקבה",
38
46
  "fullNameLabelText": "שם מלא",
47
+ "gender": "Gender",
39
48
  "genderLabelText": "מין",
40
49
  "genderRequired": "מין נדרש",
41
50
  "genderUnspecified": "מין לא מוגדר",
@@ -49,19 +58,26 @@
49
58
  "invalidInput": "קלט לא חוקי",
50
59
  "isDeadInputLabel": "מת?",
51
60
  "jumpTo": "קפיצה ל",
52
- "loadingResults": "טוען תוצאות",
53
61
  "male": "זכר",
54
62
  "middleNameLabelText": "שם תוכני",
63
+ "nascopNumber": "Nascop facility no",
64
+ "nationalId": "National ID",
55
65
  "negativeMonths": "חודשים שליליים",
56
66
  "negativeYears": "שנים שליליות",
57
67
  "no": "לא",
58
- "noResultsFound": "לא נמצאו תוצאות",
59
68
  "numberInNameDubious": "מספר בשם חשוד",
69
+ "obsFieldUnknownDatatype": "Concept for obs field '{{fieldDefinitionId}}' has unknown datatype '{{datatypeName}}'",
60
70
  "optional": "אופציונלי",
71
+ "originFacilityCode": "Origin facility code",
72
+ "originFacilityName": "Origin facility name",
61
73
  "other": "אחר",
62
74
  "patient": "מטופל",
75
+ "patientDetailsFound": "Patient information found in the registry, do you want to use the information to continue with registration?",
76
+ "patientName": "Patient name",
63
77
  "patientNameKnown": "שם המטופל ידוע?",
78
+ "patientNotFound": "The patient records could not be found in Client registry, do you want to continue to create and post patient to registry",
64
79
  "patientRegistrationBreadcrumb": "רישום מטופל",
80
+ "postToRegistry": "Post to registry",
65
81
  "registerPatient": "רשום מטופל",
66
82
  "registerPatientSuccessSnackbarSubtitle": "The patient can now be found by searching for them using their name or ID number",
67
83
  "registerPatientSuccessSnackbarTitle": "New Patient Created",
@@ -79,6 +95,8 @@
79
95
  "searchAddress": "חיפוש כתובת",
80
96
  "searchIdentifierPlaceholder": "חיפוש זיהוי",
81
97
  "selectAnOption": "בחר אפשרות",
98
+ "selectCountry": "Select country",
99
+ "selectIdentifierType": "Select identifier type",
82
100
  "sexFieldLabelText": "מין",
83
101
  "source": "מקור",
84
102
  "stroke": "שבץ",
@@ -90,6 +108,8 @@
90
108
  "updatePatientErrorSnackbarTitle": "Patient Details Update Failed",
91
109
  "updatePatientSuccessSnackbarSubtitle": "The patient's information has been successfully updated",
92
110
  "updatePatientSuccessSnackbarTitle": "Patient Details Updated",
111
+ "useValues": "Use values",
112
+ "validate": "Validate",
93
113
  "yearsEstimateRequired": "נדרש חיזוי שנים",
94
114
  "yes": "כן"
95
115
  }