@kenyaemr/esm-patient-registration-app 4.6.0 → 5.2.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.
Files changed (108) hide show
  1. package/dist/130.js +1 -1
  2. package/dist/130.js.LICENSE.txt +0 -2
  3. package/dist/130.js.map +1 -1
  4. package/dist/152.js +1 -0
  5. package/dist/152.js.map +1 -0
  6. package/dist/255.js +2 -0
  7. package/dist/255.js.map +1 -0
  8. package/dist/303.js +1 -0
  9. package/dist/303.js.map +1 -0
  10. package/dist/319.js +1 -1
  11. package/dist/330.js +1 -1
  12. package/dist/388.js +2 -0
  13. package/dist/388.js.LICENSE.txt +34 -0
  14. package/dist/388.js.map +1 -0
  15. package/dist/460.js +1 -1
  16. package/dist/537.js +1 -1
  17. package/dist/537.js.map +1 -1
  18. package/dist/574.js +1 -1
  19. package/dist/59.js +1 -0
  20. package/dist/59.js.map +1 -0
  21. package/dist/598.js +1 -0
  22. package/dist/598.js.map +1 -0
  23. package/dist/62.js +1 -1
  24. package/dist/62.js.map +1 -1
  25. package/dist/729.js +1 -0
  26. package/dist/729.js.map +1 -0
  27. package/dist/735.js +1 -1
  28. package/dist/757.js +1 -1
  29. package/dist/788.js +1 -1
  30. package/dist/807.js +1 -1
  31. package/dist/833.js +1 -1
  32. package/dist/840.js +1 -0
  33. package/dist/840.js.map +1 -0
  34. package/dist/main.js +1 -1
  35. package/dist/main.js.LICENSE.txt +35 -0
  36. package/dist/main.js.map +1 -1
  37. package/dist/openmrs-esm-patient-registration-app.js +1 -1
  38. package/dist/openmrs-esm-patient-registration-app.js.buildmanifest.json +114 -221
  39. package/dist/openmrs-esm-patient-registration-app.js.map +1 -1
  40. package/dist/routes.json +1 -1
  41. package/package.json +4 -3
  42. package/src/declarations.d.ts +2 -0
  43. package/src/index.ts +23 -14
  44. package/src/patient-registration/field/address/address-field.component.tsx +2 -2
  45. package/src/patient-registration/field/address/custom-address-field.component.tsx +3 -2
  46. package/src/patient-registration/field/dob/dob.component.tsx +51 -42
  47. package/src/patient-registration/field/dob/dob.test.tsx +1 -14
  48. package/src/patient-registration/field/field.resource.ts +5 -5
  49. package/src/patient-registration/field/id/id-field.component.tsx +8 -6
  50. package/src/patient-registration/field/id/{identifier-selection-overlay.tsx → identifier-selection-overlay.component.tsx} +27 -23
  51. package/src/patient-registration/field/obs/obs-field.component.tsx +4 -3
  52. package/src/patient-registration/field/person-attributes/coded-attributes.component.tsx +2 -1
  53. package/src/patient-registration/field/person-attributes/coded-person-attribute-field.component.tsx +4 -3
  54. package/src/patient-registration/field/person-attributes/person-attribute-field.component.tsx +8 -2
  55. package/src/patient-registration/field/person-attributes/person-attributes.resource.tsx +1 -1
  56. package/src/patient-registration/field/person-attributes/text-person-attribute-field.component.tsx +3 -2
  57. package/src/patient-registration/input/basic-input/input/input.component.tsx +122 -2
  58. package/src/patient-registration/input/combo-input/combo-input.component.tsx +7 -6
  59. package/src/patient-registration/input/custom-input/autosuggest/autosuggest.component.tsx +109 -6
  60. package/src/patient-registration/input/custom-input/autosuggest/autosuggest.scss +9 -0
  61. package/src/patient-registration/input/custom-input/autosuggest/autosuggest.test.tsx +2 -2
  62. package/src/patient-registration/input/dummy-data/dummy-data-input.component.tsx +2 -1
  63. package/src/patient-registration/patient-registration.component.tsx +49 -44
  64. package/src/patient-registration/patient-registration.resource.tsx +18 -7
  65. package/src/patient-registration/patient-registration.scss +6 -0
  66. package/src/patient-registration/patient-registration.test.tsx +19 -21
  67. package/src/patient-registration/section/death-info/death-info-section.component.tsx +2 -1
  68. package/src/patient-registration/section/demographics/demographics-section.test.tsx +1 -14
  69. package/src/patient-registration/section/patient-relationships/relationships-section.component.tsx +27 -20
  70. package/src/patient-registration/section/patient-relationships/relationships.resource.tsx +1 -1
  71. package/src/patient-registration/validation/patient-registration-validation.tsx +6 -0
  72. package/src/root.component.tsx +3 -2
  73. package/src/routes.json +7 -0
  74. package/translations/am.json +18 -7
  75. package/translations/ar.json +17 -6
  76. package/translations/en.json +16 -5
  77. package/translations/es.json +17 -6
  78. package/translations/fr.json +18 -7
  79. package/translations/he.json +28 -17
  80. package/translations/km.json +30 -19
  81. package/dist/117.js +0 -2
  82. package/dist/117.js.map +0 -1
  83. package/dist/218.js +0 -1
  84. package/dist/218.js.map +0 -1
  85. package/dist/275.js +0 -1
  86. package/dist/275.js.map +0 -1
  87. package/dist/317.js +0 -2
  88. package/dist/317.js.LICENSE.txt +0 -6
  89. package/dist/317.js.map +0 -1
  90. package/dist/348.js +0 -1
  91. package/dist/348.js.map +0 -1
  92. package/dist/520.js +0 -2
  93. package/dist/520.js.LICENSE.txt +0 -14
  94. package/dist/520.js.map +0 -1
  95. package/dist/635.js +0 -1
  96. package/dist/635.js.map +0 -1
  97. package/dist/68.js +0 -1
  98. package/dist/68.js.map +0 -1
  99. package/dist/693.js +0 -1
  100. package/dist/693.js.map +0 -1
  101. package/dist/742.js +0 -1
  102. package/dist/742.js.map +0 -1
  103. package/dist/857.js +0 -1
  104. package/dist/857.js.map +0 -1
  105. package/dist/975.js +0 -1
  106. package/dist/975.js.map +0 -1
  107. /package/dist/{117.js.LICENSE.txt → 255.js.LICENSE.txt} +0 -0
  108. /package/src/patient-registration/ui-components/overlay/{index.tsx → overlay.component.tsx} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"openmrs-esm-patient-registration-app.js","mappings":"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","sources":["webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/load script","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/consumes","webpack://@kenyaemr/esm-patient-registration-app/webpack/container-entry","webpack://@kenyaemr/esm-patient-registration-app/webpack/bootstrap","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/compat get default export","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/define property getters","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/ensure chunk","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/get javascript chunk filename","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/global","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/hasOwnProperty shorthand","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/make namespace object","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/node module decorator","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/sharing","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/publicPath","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/jsonp chunk loading","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/nonce","webpack://@kenyaemr/esm-patient-registration-app/webpack/startup"],"names":["inProgress","dataWebpackPrefix","parseVersion","versionLt","rangeToString","satisfy","findSingletonVersionKey","getInvalidSingletonVersionMessage","getSingletonVersion","warn","get","loadSingletonVersionCheckFallback","installedModules","moduleToHandlerMapping","chunkMapping","moduleMap","Promise","all","__webpack_require__","e","then","module","getScope","R","o","resolve","Error","undefined","init","shareScope","initScope","S","name","oldScope","I","d","exports","__webpack_module_cache__","moduleId","cachedModule","id","loaded","__webpack_modules__","call","m","c","n","getter","__esModule","a","definition","key","Object","defineProperty","enumerable","f","chunkId","keys","reduce","promises","u","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","i","length","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","fn","setTimeout","bind","type","target","head","appendChild","r","Symbol","toStringTag","value","nmd","paths","children","initPromises","initTokens","initToken","indexOf","scope","uniqueName","register","version","factory","eager","versions","activeVersion","from","scriptUrl","importScripts","location","currentScript","replace","p","str","split","map","exec","apply","b","t","range","pop","requiredVersion","scopeName","msg","console","entry","promise","fallback","consumes","onFactory","onError","error","installedChunks","j","installedChunkData","test","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
1
+ {"version":3,"file":"openmrs-esm-patient-registration-app.js","mappings":"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","sources":["webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/load script","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/consumes","webpack://@kenyaemr/esm-patient-registration-app/webpack/container-entry","webpack://@kenyaemr/esm-patient-registration-app/webpack/bootstrap","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/compat get default export","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/define property getters","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/ensure chunk","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/get javascript chunk filename","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/global","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/hasOwnProperty shorthand","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/make namespace object","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/node module decorator","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/sharing","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/publicPath","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/jsonp chunk loading","webpack://@kenyaemr/esm-patient-registration-app/webpack/runtime/nonce","webpack://@kenyaemr/esm-patient-registration-app/webpack/startup"],"names":["inProgress","dataWebpackPrefix","parseVersion","versionLt","rangeToString","satisfy","findSingletonVersionKey","getInvalidSingletonVersionMessage","getSingletonVersion","warn","get","loadSingletonVersionCheckFallback","installedModules","moduleToHandlerMapping","chunkMapping","moduleMap","Promise","all","__webpack_require__","e","then","module","getScope","R","o","resolve","Error","undefined","init","shareScope","initScope","S","name","oldScope","I","d","exports","__webpack_module_cache__","moduleId","cachedModule","id","loaded","__webpack_modules__","call","m","c","n","getter","__esModule","a","definition","key","Object","defineProperty","enumerable","f","chunkId","keys","reduce","promises","u","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","i","length","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","fn","setTimeout","bind","type","target","head","appendChild","r","Symbol","toStringTag","value","nmd","paths","children","initPromises","initTokens","initToken","indexOf","scope","uniqueName","register","version","factory","eager","versions","activeVersion","from","scriptUrl","importScripts","location","currentScript","replace","p","str","split","map","exec","apply","b","t","range","pop","requiredVersion","scopeName","msg","console","entry","promise","fallback","consumes","onFactory","onError","error","installedChunks","j","installedChunkData","test","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
package/dist/routes.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"webservices.rest":"^2.24.0"},"pages":[{"component":"root","route":"patient-registration","online":true,"offline":true},{"component":"editPatient","routeRegex":"patient\\/([a-zA-Z0-9\\-]+)\\/edit","online":true,"offline":true}],"extensions":[{"component":"addPatientLink","name":"add-patient-action","slot":"top-nav-actions-slot","online":true,"offline":true},{"component":"cancelPatientEditModal","name":"cancel-patient-edit-modal","online":true,"offline":true},{"component":"patientPhoto","name":"patient-photo-widget","slot":"patient-photo-slot","online":true,"offline":true},{"component":"editPatientDetailsButton","name":"edit-patient-details-button","slot":"patient-actions-slot","online":true,"offline":true},{"component":"deleteIdentifierConfirmationModal","name":"delete-identifier-confirmation-modal","online":true,"offline":true},{"component":"emptyClientRegistryModal","name":"empty-client-registry-modal","online":true,"offline":true},{"component":"confirmClientRegistryModal","name":"confirm-client-registry-modal","online":true,"offline":true}],"version":"4.6.0"}
1
+ {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"webservices.rest":"^2.24.0"},"pages":[{"component":"root","route":"patient-registration","online":true,"offline":true},{"component":"editPatient","routeRegex":"patient\\/([a-zA-Z0-9\\-]+)\\/edit","online":true,"offline":true}],"extensions":[{"component":"addPatientLink","name":"add-patient-action","slot":"top-nav-actions-slot","online":true,"offline":true},{"component":"cancelPatientEditModal","name":"cancel-patient-edit-modal","online":true,"offline":true},{"component":"patientPhoto","name":"patient-photo-widget","slot":"patient-photo-slot","online":true,"offline":true},{"component":"editPatientDetailsButton","name":"edit-patient-details-button","slot":"patient-actions-slot","online":true,"offline":true},{"component":"editPatientDetailsButton","name":"edit-patient-details-button","slot":"patient-search-actions-slot","online":true,"offline":true},{"component":"deleteIdentifierConfirmationModal","name":"delete-identifier-confirmation-modal","online":true,"offline":true},{"component":"emptyClientRegistryModal","name":"empty-client-registry-modal","online":true,"offline":true},{"component":"confirmClientRegistryModal","name":"confirm-client-registry-modal","online":true,"offline":true}],"version":"5.2.2"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kenyaemr/esm-patient-registration-app",
3
- "version": "4.6.0",
3
+ "version": "5.2.2",
4
4
  "description": "Patient registration microfrontend for the OpenMRS SPA",
5
5
  "browser": "dist/openmrs-esm-patient-registration-app.js",
6
6
  "main": "src/index.ts",
@@ -18,7 +18,7 @@
18
18
  "test:watch": "cross-env TZ=UTC jest --watch --config jest.config.js --color",
19
19
  "coverage": "yarn test --coverage",
20
20
  "typescript": "tsc",
21
- "extract-translations": "i18next 'src/**/*.component.tsx'"
21
+ "extract-translations": "i18next 'src/**/*.component.tsx' 'src/index.ts'"
22
22
  },
23
23
  "browserslist": [
24
24
  "extends browserslist-config-openmrs"
@@ -50,7 +50,8 @@
50
50
  "dayjs": "1.x",
51
51
  "react": "18.x",
52
52
  "react-i18next": "11.x",
53
- "react-router-dom": "6.x"
53
+ "react-router-dom": "6.x",
54
+ "swr": "2.x"
54
55
  },
55
56
  "devDependencies": {
56
57
  "webpack": "^5.74.0"
@@ -1,4 +1,6 @@
1
+ declare module '@carbon/react';
1
2
  declare module '*.css';
2
3
  declare module '*.scss';
3
4
  declare module '*.png';
4
5
  declare module '*.svg';
6
+ declare type SideNavProps = {};
package/src/index.ts CHANGED
@@ -1,7 +1,11 @@
1
- import { registerBreadcrumbs, defineConfigSchema, getAsyncLifecycle } from '@openmrs/esm-framework';
1
+ import { registerBreadcrumbs, defineConfigSchema, getAsyncLifecycle, getSyncLifecycle } from '@openmrs/esm-framework';
2
2
  import { esmPatientRegistrationSchema } from './config-schema';
3
3
  import { moduleName, patientRegistration } from './constants';
4
4
  import { setupOffline } from './offline';
5
+ import rootComponent from './root.component';
6
+ import addPatientLinkComponent from './add-patient-link';
7
+ import patientPhotoComponent from './widgets/display-photo.component';
8
+ import editPatientDetailsButtonComponent from './widgets/edit-patient-details-button.component';
5
9
 
6
10
  export const importTranslation = require.context('../translations', false, /.json$/, 'lazy');
7
11
 
@@ -16,12 +20,20 @@ export function startupApp() {
16
20
  registerBreadcrumbs([
17
21
  {
18
22
  path: `${window.spaBase}/${patientRegistration}`,
19
- title: 'Patient Registration',
23
+ // t('patientRegistrationBreadcrumb', 'Patient Registration')
24
+ title: () =>
25
+ Promise.resolve(
26
+ window.i18next.t('patientRegistrationBreadcrumb', { defaultValue: 'Patient Registration', ns: moduleName }),
27
+ ),
20
28
  parent: `${window.spaBase}/home`,
21
29
  },
22
30
  {
23
31
  path: `${window.spaBase}/patient/:patientUuid/edit`,
24
- title: 'Edit patient details',
32
+ // t('editPatientDetailsBreadcrumb', 'Edit patient details')
33
+ title: () =>
34
+ Promise.resolve(
35
+ window.i18next.t('editPatientDetailsBreadcrumb', { defaultValue: 'Edit patient details', ns: moduleName }),
36
+ ),
25
37
  parent: `${window.spaBase}/patient/:patientUuid/chart`,
26
38
  },
27
39
  ]);
@@ -29,29 +41,26 @@ export function startupApp() {
29
41
  setupOffline();
30
42
  }
31
43
 
32
- export const root = getAsyncLifecycle(() => import('./root.component'), options);
44
+ export const root = getSyncLifecycle(rootComponent, options);
33
45
 
34
- export const editPatient = getAsyncLifecycle(() => import('./root.component'), {
46
+ export const editPatient = getSyncLifecycle(rootComponent, {
35
47
  featureName: 'edit-patient-details-form',
36
48
  moduleName,
37
49
  });
38
50
 
39
- export const addPatientLink = getAsyncLifecycle(() => import('./add-patient-link'), options);
51
+ export const addPatientLink = getSyncLifecycle(addPatientLinkComponent, options);
40
52
 
41
53
  export const cancelPatientEditModal = getAsyncLifecycle(
42
54
  () => import('./widgets/cancel-patient-edit.component'),
43
55
  options,
44
56
  );
45
57
 
46
- export const patientPhoto = getAsyncLifecycle(() => import('./widgets/display-photo.component'), options);
58
+ export const patientPhoto = getSyncLifecycle(patientPhotoComponent, options);
47
59
 
48
- export const editPatientDetailsButton = getAsyncLifecycle(
49
- () => import('./widgets/edit-patient-details-button.component'),
50
- {
51
- featureName: 'edit-patient-details',
52
- moduleName,
53
- },
54
- );
60
+ export const editPatientDetailsButton = getSyncLifecycle(editPatientDetailsButtonComponent, {
61
+ featureName: 'edit-patient-details',
62
+ moduleName,
63
+ });
55
64
 
56
65
  export const deleteIdentifierConfirmationModal = getAsyncLifecycle(
57
66
  () => import('./widgets/delete-identifier-confirmation-modal'),
@@ -86,7 +86,7 @@ export const AddressComponent: React.FC = () => {
86
86
  name={`address.${attributes.name}`}
87
87
  labelText={t(attributes.label)}
88
88
  id={attributes.name}
89
- selected={selected}
89
+ value={selected}
90
90
  required={attributes.required}
91
91
  />
92
92
  ))}
@@ -127,7 +127,7 @@ export const AddressComponent: React.FC = () => {
127
127
  name={`address.${attributes.name}`}
128
128
  labelText={t(attributes.label)}
129
129
  id={attributes.name}
130
- selected={selected}
130
+ value={selected}
131
131
  required={attributes.required}
132
132
  />
133
133
  ))
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
+ import classNames from 'classnames';
3
+ import { Field } from 'formik';
2
4
  import { useTranslation } from 'react-i18next';
3
5
  import { Input } from '../../input/basic-input/input/input.component';
4
6
  import styles from '../field.scss';
5
7
  import { FieldDefinition } from '../../../config-schema';
6
- import { Field } from 'formik';
7
8
 
8
9
  export interface AddressFieldProps {
9
10
  fieldDefinition: FieldDefinition;
@@ -13,7 +14,7 @@ export const AddressField: React.FC<AddressFieldProps> = ({ fieldDefinition }) =
13
14
  const { t } = useTranslation();
14
15
 
15
16
  return (
16
- <div className={`${styles.customField} ${styles.halfWidthInDesktopView}`}>
17
+ <div className={classNames(styles.customField, styles.halfWidthInDesktopView)}>
17
18
  <Field name={fieldDefinition.id}>
18
19
  {({ field, form: { touched, errors }, meta }) => {
19
20
  return (
@@ -1,10 +1,10 @@
1
- import React, { useContext } from 'react';
2
- import { ContentSwitcher, Layer, Switch, TextInput } from '@carbon/react';
1
+ import React, { ChangeEvent, useCallback, useContext } from 'react';
2
+ import { ContentSwitcher, DatePicker, DatePickerInput, Layer, Switch, TextInput } from '@carbon/react';
3
3
  import { useTranslation } from 'react-i18next';
4
4
  import { useField } from 'formik';
5
5
  import { generateFormatting } from '../../date-util';
6
6
  import { PatientRegistrationContext } from '../../patient-registration-context';
7
- import { OpenmrsDatePicker, useConfig } from '@openmrs/esm-framework';
7
+ import { useConfig } from '@openmrs/esm-framework';
8
8
  import { RegistrationConfig } from '../../../config-schema';
9
9
  import styles from '../field.scss';
10
10
 
@@ -35,42 +35,54 @@ export const DobField: React.FC = () => {
35
35
  const { format, placeHolder, dateFormat } = generateFormatting(['d', 'm', 'Y'], '/');
36
36
  const today = new Date();
37
37
 
38
- const onToggle = (e) => {
39
- setFieldValue('birthdateEstimated', e.name === 'unknown');
40
- setFieldValue('birthdate', '');
41
- setFieldValue('yearsEstimated', 0);
42
- setFieldValue('monthsEstimated', '');
43
- };
38
+ const onToggle = useCallback(
39
+ (e: { name?: string | number }) => {
40
+ setFieldValue('birthdateEstimated', e.name === 'unknown');
41
+ setFieldValue('birthdate', '');
42
+ setFieldValue('yearsEstimated', 0);
43
+ setFieldValue('monthsEstimated', '');
44
+ },
45
+ [setFieldValue],
46
+ );
44
47
 
45
- const onDateChange = (birthdate) => {
46
- setFieldValue('birthdate', birthdate);
47
- };
48
+ const onDateChange = useCallback(
49
+ (birthdate: Date[]) => {
50
+ setFieldValue('birthdate', birthdate[0]);
51
+ },
52
+ [setFieldValue],
53
+ );
48
54
 
49
- const onEstimatedYearsChange = (ev) => {
50
- const years = +ev.target.value;
55
+ const onEstimatedYearsChange = useCallback(
56
+ (ev: ChangeEvent<HTMLInputElement>) => {
57
+ const years = +ev.target.value;
51
58
 
52
- if (!isNaN(years) && years < 140 && years >= 0) {
53
- setFieldValue('yearsEstimated', years);
54
- setFieldValue('birthdate', calcBirthdate(years, monthsEstimateMeta.value, dateOfBirth));
55
- }
56
- };
59
+ if (!isNaN(years) && years < 140 && years >= 0) {
60
+ setFieldValue('yearsEstimated', years);
61
+ setFieldValue('birthdate', calcBirthdate(years, monthsEstimateMeta.value, dateOfBirth));
62
+ }
63
+ },
64
+ [setFieldValue, dateOfBirth, monthsEstimateMeta.value],
65
+ );
57
66
 
58
- const onEstimatedMonthsChange = (e) => {
59
- const months = +e.target.value;
67
+ const onEstimatedMonthsChange = useCallback(
68
+ (ev: ChangeEvent<HTMLInputElement>) => {
69
+ const months = +ev.target.value;
60
70
 
61
- if (!isNaN(months)) {
62
- setFieldValue('monthsEstimated', months);
63
- setFieldValue('birthdate', calcBirthdate(yearsEstimateMeta.value, months, dateOfBirth));
64
- }
65
- };
71
+ if (!isNaN(months)) {
72
+ setFieldValue('monthsEstimated', months);
73
+ setFieldValue('birthdate', calcBirthdate(yearsEstimateMeta.value, months, dateOfBirth));
74
+ }
75
+ },
76
+ [setFieldValue, dateOfBirth, yearsEstimateMeta.value],
77
+ );
66
78
 
67
- const updateBirthdate = () => {
79
+ const updateBirthdate = useCallback(() => {
68
80
  const months = +monthsEstimateMeta.value % 12;
69
81
  const years = +yearsEstimateMeta.value + Math.floor(monthsEstimateMeta.value / 12);
70
82
  setFieldValue('yearsEstimated', years);
71
83
  setFieldValue('monthsEstimated', months > 0 ? months : '');
72
84
  setFieldValue('birthdate', calcBirthdate(years, months, dateOfBirth));
73
- };
85
+ }, [setFieldValue, monthsEstimateMeta, yearsEstimateMeta, dateOfBirth]);
74
86
 
75
87
  return (
76
88
  <div className={styles.halfWidthInDesktopView}>
@@ -89,20 +101,17 @@ export const DobField: React.FC = () => {
89
101
  <Layer>
90
102
  {!dobUnknown ? (
91
103
  <div className={styles.dobField}>
92
- <OpenmrsDatePicker
93
- id="birthdate"
94
- {...birthdate}
95
- dateFormat={dateFormat}
96
- onChange={onDateChange}
97
- maxDate={format(today)}
98
- labelText={t('dateOfBirthLabelText', 'Date of Birth')}
99
- invalid={!!(birthdateMeta.touched && birthdateMeta.error)}
100
- invalidText={birthdateMeta.error && t(birthdateMeta.error)}
101
- value={format(birthdate.value)}
102
- carbonOptions={{
103
- placeholder: placeHolder,
104
- }}
105
- />
104
+ <DatePicker dateFormat={dateFormat} datePickerType="single" onChange={onDateChange} maxDate={format(today)}>
105
+ <DatePickerInput
106
+ id="birthdate"
107
+ {...birthdate}
108
+ placeholder={placeHolder}
109
+ labelText={t('dateOfBirthLabelText', 'Date of Birth')}
110
+ invalid={!!(birthdateMeta.touched && birthdateMeta.error)}
111
+ invalidText={birthdateMeta.error && t(birthdateMeta.error)}
112
+ value={format(birthdate.value)}
113
+ />
114
+ </DatePicker>
106
115
  </div>
107
116
  ) : (
108
117
  <div className={styles.grid}>
@@ -7,8 +7,7 @@ import '@testing-library/jest-dom';
7
7
  import { DobField } from './dob.component';
8
8
  import { PatientRegistrationContext } from '../../patient-registration-context';
9
9
  import { initialFormValues } from '../../patient-registration.component';
10
- import { FormValues } from '../../patient-registration-types';
11
- import { OpenmrsDatePicker } from '@openmrs/esm-styleguide/src/public';
10
+ import { type FormValues } from '../../patient-registration.types';
12
11
 
13
12
  jest.mock('@openmrs/esm-framework', () => {
14
13
  const originalModule = jest.requireActual('@openmrs/esm-framework');
@@ -22,18 +21,6 @@ jest.mock('@openmrs/esm-framework', () => {
22
21
  },
23
22
  },
24
23
  })),
25
- getLocale: jest.fn().mockReturnValue('en'),
26
- OpenmrsDatePicker: (datePickerProps) => (
27
- <OpenmrsDatePicker
28
- id={datePickerProps.id}
29
- dateFormat={datePickerProps.dateFormat}
30
- onChange={datePickerProps.onChange}
31
- maxDate={datePickerProps.maxDate}
32
- labelText={datePickerProps.labelText}
33
- value={datePickerProps.value}
34
- carbonOptions={datePickerProps.carbonOptions}
35
- />
36
- ),
37
24
  };
38
25
  });
39
26
 
@@ -1,4 +1,4 @@
1
- import { FetchResponse, openmrsFetch, showToast } from '@openmrs/esm-framework';
1
+ import { FetchResponse, openmrsFetch, showSnackbar } from '@openmrs/esm-framework';
2
2
  import useSWRImmutable from 'swr/immutable';
3
3
  import { ConceptAnswers, ConceptResponse } from '../patient-registration.types';
4
4
 
@@ -9,9 +9,9 @@ export function useConcept(conceptUuid: string): { data: ConceptResponse; isLoad
9
9
  openmrsFetch,
10
10
  );
11
11
  if (error) {
12
- showToast({
12
+ showSnackbar({
13
13
  title: error.name,
14
- description: error.message,
14
+ subtitle: error.message,
15
15
  kind: 'error',
16
16
  });
17
17
  }
@@ -25,9 +25,9 @@ export function useConceptAnswers(conceptUuid: string): { data: Array<ConceptAns
25
25
  openmrsFetch,
26
26
  );
27
27
  if (error) {
28
- showToast({
28
+ showSnackbar({
29
29
  title: error.name,
30
- description: error.message,
30
+ subtitle: error.message,
31
31
  kind: 'error',
32
32
  });
33
33
  }
@@ -1,9 +1,9 @@
1
- import React, { useContext, useEffect, useState } from 'react';
1
+ import React, { useCallback, useContext, useEffect, useState } from 'react';
2
2
  import { useTranslation } from 'react-i18next';
3
3
  import { Button, SkeletonText } from '@carbon/react';
4
4
  import { ArrowRight } from '@carbon/react/icons';
5
5
  import { useLayoutType, useConfig, isDesktop, UserHasAccess } from '@openmrs/esm-framework';
6
- import IdentifierSelectionOverlay from './identifier-selection-overlay';
6
+ import IdentifierSelectionOverlay from './identifier-selection-overlay.component';
7
7
  import { IdentifierInput } from '../../input/custom-input/identifier/identifier-input.component';
8
8
  import { PatientRegistrationContext } from '../../patient-registration-context';
9
9
  import {
@@ -101,6 +101,11 @@ export const Identifiers: React.FC = () => {
101
101
  // eslint-disable-next-line react-hooks/exhaustive-deps
102
102
  }, [identifierTypes, setFieldValue, defaultPatientIdentifierTypes, values.identifiers, initializeIdentifier]);
103
103
 
104
+ const closeIdentifierSelectionOverlay = useCallback(
105
+ () => setShowIdentifierOverlay(false),
106
+ [setShowIdentifierOverlay],
107
+ );
108
+
104
109
  if (isLoading && !isOffline) {
105
110
  return (
106
111
  <div data-testid="loading-skeleton" className={styles.halfWidthInDesktopView}>
@@ -131,10 +136,7 @@ export const Identifiers: React.FC = () => {
131
136
  <IdentifierInput key={fieldName} fieldName={fieldName} patientIdentifier={identifier} />
132
137
  ))}
133
138
  {showIdentifierOverlay && (
134
- <IdentifierSelectionOverlay
135
- setFieldValue={setFieldValue}
136
- closeOverlay={() => setShowIdentifierOverlay(false)}
137
- />
139
+ <IdentifierSelectionOverlay setFieldValue={setFieldValue} closeOverlay={closeIdentifierSelectionOverlay} />
138
140
  )}
139
141
  </div>
140
142
  </div>
@@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next';
3
3
  import { Button, ButtonSet, Checkbox, Search, RadioButtonGroup, RadioButton } from '@carbon/react';
4
4
  import { isDesktop, useConfig, useLayoutType } from '@openmrs/esm-framework';
5
5
  import { FormValues, PatientIdentifierType, PatientIdentifierValue } from '../../patient-registration.types';
6
- import Overlay from '../../ui-components/overlay';
6
+ import Overlay from '../../ui-components/overlay/overlay.component';
7
7
  import { ResourcesContext } from '../../../offline.resources';
8
8
  import { PatientRegistrationContext } from '../../patient-registration-context';
9
9
  import {
@@ -42,29 +42,32 @@ const PatientIdentifierOverlay: React.FC<PatientIdentifierOverlayProps> = ({ clo
42
42
 
43
43
  const filteredIdentifiers = useMemo(
44
44
  () => identifierTypes?.filter((identifier) => identifier?.name?.toLowerCase().includes(searchString.toLowerCase())),
45
- [unsavedIdentifierTypes, searchString],
45
+ [searchString, identifierTypes],
46
46
  );
47
47
 
48
- const handleCheckingIdentifier = (identifierType: PatientIdentifierType, checked: boolean) =>
49
- setUnsavedIdentifierTypes((unsavedIdentifierTypes) => {
50
- if (checked) {
51
- return {
52
- ...unsavedIdentifierTypes,
53
- [identifierType.fieldName]: initializeIdentifier(
54
- identifierType,
55
- values.identifiers[identifierType.fieldName] ??
56
- initialFormValues.identifiers[identifierType.fieldName] ??
57
- {},
58
- ),
59
- };
60
- }
61
- if (unsavedIdentifierTypes[identifierType.fieldName]) {
62
- return Object.fromEntries(
63
- Object.entries(unsavedIdentifierTypes).filter(([fieldName]) => fieldName !== identifierType.fieldName),
64
- );
65
- }
66
- return unsavedIdentifierTypes;
67
- });
48
+ const handleCheckingIdentifier = useCallback(
49
+ (identifierType: PatientIdentifierType, checked: boolean) =>
50
+ setUnsavedIdentifierTypes((unsavedIdentifierTypes) => {
51
+ if (checked) {
52
+ return {
53
+ ...unsavedIdentifierTypes,
54
+ [identifierType.fieldName]: initializeIdentifier(
55
+ identifierType,
56
+ values.identifiers[identifierType.fieldName] ??
57
+ initialFormValues.identifiers[identifierType.fieldName] ??
58
+ {},
59
+ ),
60
+ };
61
+ }
62
+ if (unsavedIdentifierTypes[identifierType.fieldName]) {
63
+ return Object.fromEntries(
64
+ Object.entries(unsavedIdentifierTypes).filter(([fieldName]) => fieldName !== identifierType.fieldName),
65
+ );
66
+ }
67
+ return unsavedIdentifierTypes;
68
+ }),
69
+ [initialFormValues.identifiers, values.identifiers],
70
+ );
68
71
 
69
72
  const handleSelectingIdentifierSource = (identifierType: PatientIdentifierType, sourceUuid) =>
70
73
  setUnsavedIdentifierTypes((unsavedIdentifierTypes) => ({
@@ -149,13 +152,14 @@ const PatientIdentifierOverlay: React.FC<PatientIdentifierOverlayProps> = ({ clo
149
152
  values.identifiers,
150
153
  isOffline,
151
154
  handleCheckingIdentifier,
155
+ t,
152
156
  ],
153
157
  );
154
158
 
155
159
  const handleConfiguringIdentifiers = useCallback(() => {
156
160
  setFieldValue('identifiers', unsavedIdentifierTypes);
157
161
  closeOverlay();
158
- }, [unsavedIdentifierTypes, setFieldValue]);
162
+ }, [unsavedIdentifierTypes, setFieldValue, closeOverlay]);
159
163
 
160
164
  return (
161
165
  <Overlay
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import classNames from 'classnames';
2
3
  import { Field } from 'formik';
3
4
  import { useTranslation } from 'react-i18next';
4
5
  import { InlineNotification, Layer, Select, SelectItem } from '@carbon/react';
@@ -89,7 +90,7 @@ function TextObsField({ concept, validationRegex, label, required }: TextObsFiel
89
90
 
90
91
  const fieldName = `obs.${concept.uuid}`;
91
92
  return (
92
- <div className={`${styles.customField} ${styles.halfWidthInDesktopView}`}>
93
+ <div className={classNames(styles.customField, styles.halfWidthInDesktopView)}>
93
94
  <Field name={fieldName} validate={validateInput}>
94
95
  {({ field, form: { touched, errors }, meta }) => {
95
96
  return (
@@ -119,7 +120,7 @@ function NumericObsField({ concept, label, required }: NumericObsFieldProps) {
119
120
  const fieldName = `obs.${concept.uuid}`;
120
121
 
121
122
  return (
122
- <div className={`${styles.customField} ${styles.halfWidthInDesktopView}`}>
123
+ <div className={classNames(styles.customField, styles.halfWidthInDesktopView)}>
123
124
  <Field name={fieldName}>
124
125
  {({ field, form: { touched, errors }, meta }) => {
125
126
  return (
@@ -155,7 +156,7 @@ function CodedObsField({ concept, answerConceptSetUuid, label, required }: Coded
155
156
  const fieldDefinition = config?.fieldDefinitions?.filter((def) => def.type === 'obs' && def.uuid === concept.uuid)[0];
156
157
 
157
158
  return (
158
- <div className={`${styles.customField} ${styles.halfWidthInDesktopView}`}>
159
+ <div className={classNames(styles.customField, styles.halfWidthInDesktopView)}>
159
160
  {!isLoadingConceptAnswers ? (
160
161
  <Field name={fieldName}>
161
162
  {({ field, form: { touched, errors }, meta }) => {
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import classNames from 'classnames';
2
3
  import { Layer, Select, SelectItem } from '@carbon/react';
3
4
  import { useConfig } from '@openmrs/esm-framework';
4
5
  import { Input } from '../../input/basic-input/input/input.component';
@@ -35,7 +36,7 @@ const PersonAttributeField: React.FC<PersonAttributeFieldProps> = ({ personAttri
35
36
  const { data: conceptAnswers, isLoading: isLoadingConceptAnswers } = useConceptAnswers(conceptUuid);
36
37
 
37
38
  return !isLoading ? (
38
- <div className={`${styles.attributeField} ${styles.halfWidthInDesktopView}`}>
39
+ <div className={classNames(styles.attributeField, styles.halfWidthInDesktopView)}>
39
40
  {!isLoadingConceptAnswers && conceptAnswers?.length ? (
40
41
  <Layer>
41
42
  <Select
@@ -1,11 +1,12 @@
1
1
  import React from 'react';
2
+ import classNames from 'classnames';
3
+ import { useTranslation } from 'react-i18next';
4
+ import { Field } from 'formik';
2
5
  import { Layer, Select, SelectItem } from '@carbon/react';
3
6
  import { Input } from '../../input/basic-input/input/input.component';
4
7
  import { PersonAttributeTypeResponse } from '../../patient-registration.types';
5
8
  import { useConceptAnswers } from '../field.resource';
6
9
  import styles from './../field.scss';
7
- import { useTranslation } from 'react-i18next';
8
- import { Field } from 'formik';
9
10
 
10
11
  export interface CodedPersonAttributeFieldProps {
11
12
  id: string;
@@ -25,7 +26,7 @@ export function CodedPersonAttributeField({
25
26
  const fieldName = `attributes.${personAttributeType.uuid}`;
26
27
 
27
28
  return (
28
- <div className={`${styles.customField} ${styles.halfWidthInDesktopView}`}>
29
+ <div className={classNames(styles.customField, styles.halfWidthInDesktopView)}>
29
30
  {!isLoadingConceptAnswers && conceptAnswers?.length ? (
30
31
  <Layer>
31
32
  <Field name={fieldName}>