@kenyaemr/esm-admin-app 5.4.3 → 5.4.4-pre.100
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 +5 -12
- package/dist/1074.js +1 -0
- package/dist/1074.js.map +1 -0
- package/dist/12.js +17 -0
- package/dist/12.js.map +1 -0
- package/dist/1201.js +1 -0
- package/dist/1201.js.map +1 -0
- package/dist/1242.js +1 -0
- package/dist/1242.js.map +1 -0
- package/dist/1311.js +1 -0
- package/dist/1311.js.map +1 -0
- package/dist/1462.js +1 -0
- package/dist/1462.js.map +1 -0
- package/dist/1469.js +1 -0
- package/dist/1469.js.map +1 -0
- package/dist/1506.js +13 -0
- package/dist/1506.js.map +1 -0
- package/dist/1718.js +1 -0
- package/dist/1718.js.map +1 -0
- package/dist/1722.js +1 -0
- package/dist/1722.js.map +1 -0
- package/dist/1772.js +1 -0
- package/dist/1772.js.map +1 -0
- package/dist/1889.js +1 -0
- package/dist/1889.js.map +1 -0
- package/dist/1972.js +1 -0
- package/dist/1972.js.map +1 -0
- package/dist/1990.js +1 -0
- package/dist/1990.js.map +1 -0
- package/dist/2016.js +1 -0
- package/dist/2016.js.map +1 -0
- package/dist/2080.js +1 -0
- package/dist/2080.js.map +1 -0
- package/dist/2096.js +1 -0
- package/dist/2096.js.map +1 -0
- package/dist/2153.js +1 -0
- package/dist/2153.js.map +1 -0
- package/dist/216.js +1 -0
- package/dist/216.js.map +1 -0
- package/dist/2270.js +1 -0
- package/dist/2270.js.map +1 -0
- package/dist/2294.js +1 -0
- package/dist/2294.js.map +1 -0
- package/dist/2345.js +1 -0
- package/dist/2345.js.map +1 -0
- package/dist/2402.js +1 -0
- package/dist/2402.js.map +1 -0
- package/dist/2500.js +1 -0
- package/dist/2500.js.map +1 -0
- package/dist/251.js +1 -0
- package/dist/251.js.map +1 -0
- package/dist/257.js +1 -0
- package/dist/257.js.map +1 -0
- package/dist/2586.js +1 -0
- package/dist/2586.js.map +1 -0
- package/dist/2625.js +1 -0
- package/dist/2625.js.map +1 -0
- package/dist/2652.js +1 -0
- package/dist/2652.js.map +1 -0
- package/dist/2685.js +1 -0
- package/dist/2685.js.map +1 -0
- package/dist/2948.js +1 -0
- package/dist/2948.js.map +1 -0
- package/dist/3089.js +1 -0
- package/dist/3089.js.map +1 -0
- package/dist/3190.js +1 -0
- package/dist/3190.js.map +1 -0
- package/dist/3224.js +1 -0
- package/dist/3224.js.map +1 -0
- package/dist/3366.js +1 -0
- package/dist/3366.js.map +1 -0
- package/dist/349.js +1 -0
- package/dist/349.js.map +1 -0
- package/dist/3548.js +1 -0
- package/dist/3548.js.map +1 -0
- package/dist/3571.js +1 -0
- package/dist/3571.js.map +1 -0
- package/dist/3691.js +1 -0
- package/dist/3691.js.map +1 -0
- package/dist/3775.js +1 -0
- package/dist/3775.js.map +1 -0
- package/dist/3816.js +1 -0
- package/dist/3816.js.map +1 -0
- package/dist/3852.js +1 -0
- package/dist/3852.js.map +1 -0
- package/dist/3906.js +1 -0
- package/dist/3906.js.map +1 -0
- package/dist/3963.js +1 -0
- package/dist/3963.js.map +1 -0
- package/dist/405.js +1 -0
- package/dist/405.js.map +1 -0
- package/dist/4296.js +1 -0
- package/dist/4296.js.map +1 -0
- package/dist/4337.js +1 -0
- package/dist/4337.js.map +1 -0
- package/dist/4735.js +1 -0
- package/dist/4735.js.map +1 -0
- package/dist/4744.js +1 -0
- package/dist/4744.js.map +1 -0
- package/dist/4813.js +2 -0
- package/dist/4813.js.map +1 -0
- package/dist/4858.js +1 -0
- package/dist/4858.js.map +1 -0
- package/dist/487.js +1 -0
- package/dist/487.js.map +1 -0
- package/dist/4970.js +1 -0
- package/dist/4970.js.map +1 -0
- package/dist/5202.js +1 -0
- package/dist/5202.js.map +1 -0
- package/dist/5294.js +1 -0
- package/dist/5294.js.map +1 -0
- package/dist/545.js +1 -0
- package/dist/545.js.map +1 -0
- package/dist/552.js +1 -0
- package/dist/552.js.map +1 -0
- package/dist/5592.js +1 -0
- package/dist/5592.js.map +1 -0
- package/dist/5669.js +1 -0
- package/dist/5669.js.map +1 -0
- package/dist/5884.js +1 -0
- package/dist/5884.js.map +1 -0
- package/dist/5940.js +1 -0
- package/dist/5940.js.map +1 -0
- package/dist/6092.js +1 -0
- package/dist/6092.js.map +1 -0
- package/dist/6155.js +1 -0
- package/dist/6155.js.map +1 -0
- package/dist/6178.js +1 -0
- package/dist/6178.js.map +1 -0
- package/dist/6399.js +1 -0
- package/dist/6399.js.map +1 -0
- package/dist/6456.js +1 -0
- package/dist/6466.js +3 -0
- package/dist/6466.js.map +1 -0
- package/dist/6492.js +1 -0
- package/dist/6492.js.map +1 -0
- package/dist/6676.js +1 -0
- package/dist/6676.js.map +1 -0
- package/dist/6800.js +1 -0
- package/dist/6800.js.map +1 -0
- package/dist/6976.js +1 -0
- package/dist/6976.js.map +1 -0
- package/dist/7005.js +1 -0
- package/dist/7005.js.map +1 -0
- package/dist/7201.js +1 -0
- package/dist/7201.js.map +1 -0
- package/dist/7210.js +1 -0
- package/dist/7210.js.map +1 -0
- package/dist/7234.js +1 -0
- package/dist/7234.js.map +1 -0
- package/dist/7261.js +1 -0
- package/dist/7261.js.map +1 -0
- package/dist/7326.js +1 -0
- package/dist/7463.js +1 -0
- package/dist/7463.js.map +1 -0
- package/dist/7528.js +1 -0
- package/dist/7528.js.map +1 -0
- package/dist/7584.js +1 -0
- package/dist/7584.js.map +1 -0
- package/dist/7607.js +1 -0
- package/dist/7717.js +1 -0
- package/dist/7717.js.map +1 -0
- package/dist/7737.js +1 -0
- package/dist/7737.js.map +1 -0
- package/dist/7739.js +1 -0
- package/dist/7739.js.map +1 -0
- package/dist/7765.js +1 -0
- package/dist/7765.js.map +1 -0
- package/dist/7820.js +1 -0
- package/dist/7820.js.map +1 -0
- package/dist/7844.js +1 -0
- package/dist/7844.js.map +1 -0
- package/dist/7866.js +1 -0
- package/dist/7866.js.map +1 -0
- package/dist/7916.js +1 -0
- package/dist/7916.js.map +1 -0
- package/dist/7971.js +1 -0
- package/dist/7971.js.map +1 -0
- package/dist/8159.js +7 -0
- package/dist/8159.js.map +1 -0
- package/dist/8244.js +1 -0
- package/dist/8244.js.map +1 -0
- package/dist/8262.js +1 -0
- package/dist/8262.js.map +1 -0
- package/dist/834.js +1 -0
- package/dist/834.js.map +1 -0
- package/dist/8376.js +1 -0
- package/dist/8376.js.map +1 -0
- package/dist/845.js +1 -0
- package/dist/845.js.map +1 -0
- package/dist/8546.js +1 -0
- package/dist/8546.js.map +1 -0
- package/dist/8570.js +1 -0
- package/dist/8570.js.map +1 -0
- package/dist/87.js +1 -0
- package/dist/87.js.map +1 -0
- package/dist/8727.js +1 -0
- package/dist/8828.js +1 -0
- package/dist/8828.js.map +1 -0
- package/dist/8860.js +1 -0
- package/dist/8860.js.map +1 -0
- package/dist/9036.js +1 -0
- package/dist/9036.js.map +1 -0
- package/dist/9124.js +1 -0
- package/dist/9124.js.map +1 -0
- package/dist/9182.js +1 -0
- package/dist/921.js +1 -0
- package/dist/921.js.map +1 -0
- package/dist/9404.js +1 -0
- package/dist/9404.js.map +1 -0
- package/dist/9406.js +1 -0
- package/dist/9406.js.map +1 -0
- package/dist/9446.js +1 -0
- package/dist/9446.js.map +1 -0
- package/dist/9449.js +1 -0
- package/dist/9449.js.map +1 -0
- package/dist/9566.js +5 -0
- package/dist/9566.js.map +1 -0
- package/dist/9641.js +1 -0
- package/dist/9641.js.map +1 -0
- package/dist/9711.js +1 -0
- package/dist/9711.js.map +1 -0
- package/dist/9801.js +1 -0
- package/dist/9801.js.map +1 -0
- package/dist/9835.js +11 -0
- package/dist/9835.js.map +1 -0
- package/dist/kenyaemr-esm-admin-app.js +5 -5
- package/dist/kenyaemr-esm-admin-app.js.buildmanifest.json +2704 -155
- package/dist/kenyaemr-esm-admin-app.js.map +1 -1
- package/dist/main.js +5 -31
- package/dist/main.js.map +1 -1
- package/dist/routes.json +1 -1
- package/package.json +6 -7
- package/rspack.config.js +1 -1
- package/src/components/facility-setup/facility-info.component.tsx +163 -94
- package/src/components/facility-setup/facility-info.scss +98 -55
- package/src/components/facility-setup/header/header.component.tsx +4 -10
- package/src/components/facility-setup/header/header.scss +3 -9
- package/src/components/facility-setup/shared/custom-info.component.tsx +9 -0
- package/src/components/facility-setup/shared/custom-section-card.component.tsx +10 -0
- package/src/components/facility-setup/shared/custom-status-tag.component.tsx +22 -0
- package/src/components/locations/forms/add-location/add-location.workspace.tsx +96 -95
- package/src/components/locations/forms/search-location/search-location.workspace.tsx +90 -85
- package/src/components/locations/tables/locations-table.component.tsx +117 -121
- package/src/components/users/manage-users/manage-user-role-scope/user-role-scope-workspace/user-role-scope.workspace.tsx +15 -15
- package/src/components/users/manage-users/user-list/user-list.component.tsx +22 -9
- package/src/components/users/manage-users/user-management.workspace.tsx +538 -531
- package/src/index.ts +51 -28
- package/src/root.component.tsx +11 -13
- package/src/routes.json +40 -40
- package/src/types/index.ts +29 -1
- package/src/user-management.resources.ts +5 -11
- package/translations/am.json +26 -8
- package/translations/en.json +26 -8
- package/translations/sw.json +26 -8
- package/tsconfig.json +1 -1
- package/dist/127.js +0 -1
- package/dist/267.js +0 -1
- package/dist/267.js.map +0 -1
- package/dist/281.js +0 -15
- package/dist/281.js.map +0 -1
- package/dist/329.js +0 -1
- package/dist/329.js.map +0 -1
- package/dist/40.js +0 -1
- package/dist/466.js +0 -1
- package/dist/466.js.map +0 -1
- package/dist/472.js +0 -1
- package/dist/472.js.map +0 -1
- package/dist/478.js +0 -1
- package/dist/478.js.map +0 -1
- package/dist/585.js +0 -1
- package/dist/585.js.map +0 -1
- package/dist/630.js +0 -1
- package/dist/630.js.map +0 -1
- package/dist/675.js +0 -1
- package/dist/675.js.map +0 -1
- package/dist/689.js +0 -1
- package/dist/689.js.map +0 -1
- package/dist/706.js +0 -27
- package/dist/706.js.map +0 -1
- package/dist/729.js +0 -17
- package/dist/729.js.map +0 -1
- package/dist/774.js +0 -1
- package/dist/774.js.map +0 -1
- package/dist/847.js +0 -1
- package/dist/847.js.map +0 -1
- package/dist/85.js +0 -1
- package/dist/85.js.map +0 -1
- package/dist/882.js +0 -1
- package/dist/91.js +0 -1
- package/dist/91.js.map +0 -1
- package/dist/916.js +0 -1
- package/dist/998.js +0 -1
- package/dist/998.js.map +0 -1
- package/jest.config.js +0 -8
- package/src/components/facility-setup/card.component.tsx +0 -16
package/src/index.ts
CHANGED
|
@@ -1,17 +1,7 @@
|
|
|
1
|
-
import { defineConfigSchema, getSyncLifecycle } from '@openmrs/esm-framework';
|
|
1
|
+
import { defineConfigSchema, getSyncLifecycle, getAsyncLifecycle } from '@openmrs/esm-framework';
|
|
2
2
|
import { configSchema } from './config-schema';
|
|
3
3
|
import { moduleName } from './constants';
|
|
4
4
|
import OperationConfirmation from './components/confirm-modal/confirmation-operation-modal.component';
|
|
5
|
-
import Root from './root.component';
|
|
6
|
-
import ManageUserWorkspace from './components/users/manage-users/user-management.workspace';
|
|
7
|
-
import { createLeftPanelLink } from './left-pannel-link.component';
|
|
8
|
-
import HWRConfirmModal from './components/modal/hwr-confirmation.modal';
|
|
9
|
-
import HWREmptyModal from './components/modal/hwr-empty.modal.component';
|
|
10
|
-
import UserRoleScopeWorkspace from './components/users/manage-users/manage-user-role-scope/user-role-scope-workspace/user-role-scope.workspace';
|
|
11
|
-
import HWRSyncModal from './components/modal/hwr-sync.modal';
|
|
12
|
-
import AddLocationWorkspace from './components/locations/forms/add-location/add-location.workspace';
|
|
13
|
-
import SearchLocationWorkspace from './components/locations/forms/search-location/search-location.workspace';
|
|
14
|
-
import ProviderBannerTag from './components/provider-banner/provider-banner.component';
|
|
15
5
|
|
|
16
6
|
const options = {
|
|
17
7
|
featureName: 'esm-admin-app',
|
|
@@ -20,40 +10,73 @@ const options = {
|
|
|
20
10
|
|
|
21
11
|
export const importTranslation = require.context('../translations', false, /.json$/, 'lazy');
|
|
22
12
|
|
|
23
|
-
export const root =
|
|
13
|
+
export const root = getAsyncLifecycle(() => import('./root.component'), options);
|
|
24
14
|
|
|
25
15
|
export function startupApp() {
|
|
26
16
|
defineConfigSchema(moduleName, configSchema);
|
|
27
17
|
}
|
|
28
18
|
|
|
29
19
|
export const operationConfirmationModal = getSyncLifecycle(OperationConfirmation, options);
|
|
30
|
-
export const manageUserWorkspace =
|
|
31
|
-
|
|
20
|
+
export const manageUserWorkspace = getAsyncLifecycle(
|
|
21
|
+
() => import('./components/users/manage-users/user-management.workspace'),
|
|
22
|
+
options,
|
|
23
|
+
);
|
|
24
|
+
export const userRoleScopeWorkspace = getAsyncLifecycle(
|
|
25
|
+
() =>
|
|
26
|
+
import(
|
|
27
|
+
'./components/users/manage-users/manage-user-role-scope/user-role-scope-workspace/user-role-scope.workspace'
|
|
28
|
+
),
|
|
29
|
+
options,
|
|
30
|
+
);
|
|
32
31
|
|
|
33
|
-
export const userManagementLeftPannelLink =
|
|
34
|
-
|
|
32
|
+
export const userManagementLeftPannelLink = getAsyncLifecycle(
|
|
33
|
+
() =>
|
|
34
|
+
import('./left-pannel-link.component').then((m) => ({
|
|
35
|
+
default: m.createLeftPanelLink({ title: 'Manage Users', name: 'user-management' }),
|
|
36
|
+
})),
|
|
35
37
|
options,
|
|
36
38
|
);
|
|
37
39
|
|
|
38
|
-
export const etlAdministrationLeftPannelLink =
|
|
39
|
-
|
|
40
|
+
export const etlAdministrationLeftPannelLink = getAsyncLifecycle(
|
|
41
|
+
() =>
|
|
42
|
+
import('./left-pannel-link.component').then((m) => ({
|
|
43
|
+
default: m.createLeftPanelLink({ title: 'ETL Administration', name: 'etl-administration' }),
|
|
44
|
+
})),
|
|
40
45
|
options,
|
|
41
46
|
);
|
|
42
|
-
export const locationsLeftPanelLink =
|
|
43
|
-
|
|
47
|
+
export const locationsLeftPanelLink = getAsyncLifecycle(
|
|
48
|
+
() =>
|
|
49
|
+
import('./left-pannel-link.component').then((m) => ({
|
|
50
|
+
default: m.createLeftPanelLink({ title: 'Locations', name: 'locations' }),
|
|
51
|
+
})),
|
|
44
52
|
options,
|
|
45
53
|
);
|
|
46
|
-
export const facilitySetupLeftPanelLink =
|
|
47
|
-
|
|
54
|
+
export const facilitySetupLeftPanelLink = getAsyncLifecycle(
|
|
55
|
+
() =>
|
|
56
|
+
import('./left-pannel-link.component').then((m) => ({
|
|
57
|
+
default: m.createLeftPanelLink({ title: 'Facility Details', name: 'facility-setup' }),
|
|
58
|
+
})),
|
|
48
59
|
options,
|
|
49
60
|
);
|
|
50
61
|
|
|
51
|
-
export const hwrConfirmationModal =
|
|
52
|
-
|
|
53
|
-
|
|
62
|
+
export const hwrConfirmationModal = getAsyncLifecycle(
|
|
63
|
+
() => import('./components/modal/hwr-confirmation.modal'),
|
|
64
|
+
options,
|
|
65
|
+
);
|
|
66
|
+
export const hwrEmptyModal = getAsyncLifecycle(() => import('./components/modal/hwr-empty.modal.component'), options);
|
|
67
|
+
export const hwrSyncModal = getAsyncLifecycle(() => import('./components/modal/hwr-sync.modal'), options);
|
|
54
68
|
|
|
55
|
-
export const addLocation =
|
|
56
|
-
|
|
69
|
+
export const addLocation = getAsyncLifecycle(
|
|
70
|
+
() => import('./components/locations/forms/add-location/add-location.workspace'),
|
|
71
|
+
options,
|
|
72
|
+
);
|
|
73
|
+
export const searchLocationWorkspace = getAsyncLifecycle(
|
|
74
|
+
() => import('./components/locations/forms/search-location/search-location.workspace'),
|
|
75
|
+
options,
|
|
76
|
+
);
|
|
57
77
|
|
|
58
78
|
// t('providerBanner', 'Provider banner')
|
|
59
|
-
export const providerBanner =
|
|
79
|
+
export const providerBanner = getAsyncLifecycle(
|
|
80
|
+
() => import('./components/provider-banner/provider-banner.component'),
|
|
81
|
+
options,
|
|
82
|
+
);
|
package/src/root.component.tsx
CHANGED
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useLeftNav } from '@openmrs/esm-framework';
|
|
2
3
|
import { BrowserRouter, Route, Routes } from 'react-router-dom';
|
|
3
|
-
|
|
4
|
-
import styles from './root.scss';
|
|
4
|
+
|
|
5
5
|
import LeftPanel from './components/side-menu/left-pannel.component';
|
|
6
6
|
import UserManagentLandingPage from './components/users/manage-users/manage-user.component';
|
|
7
7
|
import EtlAdminDashboard from './components/dashboard/etl-dashboard.component';
|
|
8
8
|
import FacilitySetup from './components/facility-setup/facility-setup.component';
|
|
9
9
|
import HomeComponent from './components/locations/home/home-locations.component';
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
const spaBasePath = window.spaBase;
|
|
13
|
-
const adminBasename = window.getOpenmrsSpaBase() + 'admin';
|
|
11
|
+
import styles from './root.scss';
|
|
14
12
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
13
|
+
const Root: React.FC = () => {
|
|
14
|
+
const spaBasePath = globalThis.spaBase;
|
|
15
|
+
const adminBasename = globalThis.getOpenmrsSpaBase() + 'admin';
|
|
16
|
+
useLeftNav({
|
|
17
|
+
name: 'admin-left-panel-slot',
|
|
18
|
+
basePath: spaBasePath,
|
|
19
|
+
});
|
|
22
20
|
|
|
23
21
|
return (
|
|
24
22
|
<BrowserRouter basename={adminBasename}>
|
package/src/routes.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"component": "userManagementLeftPannelLink",
|
|
14
14
|
"name": "user-management-left-panel-link",
|
|
15
15
|
"slot": "admin-left-panel-slot"
|
|
16
|
-
},
|
|
16
|
+
},
|
|
17
17
|
{
|
|
18
18
|
"component": "etlAdministrationLeftPannelLink",
|
|
19
19
|
"name": "etl-administration-left-panel-link",
|
|
@@ -33,67 +33,67 @@
|
|
|
33
33
|
"component": "providerBanner",
|
|
34
34
|
"name": "provider-banner",
|
|
35
35
|
"slot": "provider-banner-info-slot",
|
|
36
|
-
"order":1
|
|
36
|
+
"order": 1
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
|
+
"modals": [
|
|
40
|
+
{
|
|
41
|
+
"component": "operationConfirmationModal",
|
|
42
|
+
"name": "operation-confirmation-modal"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"component": "hwrConfirmationModal",
|
|
46
|
+
"name": "hwr-confirmation-modal"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"component": "hwrEmptyModal",
|
|
50
|
+
"name": "hwr-empty-modal"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"component": "hwrSyncModal",
|
|
54
|
+
"name": "hwr-syncing-modal"
|
|
37
55
|
}
|
|
38
56
|
],
|
|
39
|
-
"
|
|
57
|
+
"workspaces2": [
|
|
40
58
|
{
|
|
41
59
|
"name": "manage-user-workspace",
|
|
42
60
|
"component": "manageUserWorkspace",
|
|
43
|
-
"
|
|
44
|
-
"type": "other-form",
|
|
45
|
-
"canMaximize": true,
|
|
46
|
-
"width": "extra-wide"
|
|
61
|
+
"window": "esm-admin-extra-wide-workspace-window"
|
|
47
62
|
},
|
|
48
63
|
{
|
|
49
64
|
"name": "user-role-scope-workspace",
|
|
50
65
|
"component": "userRoleScopeWorkspace",
|
|
51
|
-
"
|
|
52
|
-
"type": "other-form",
|
|
53
|
-
"canMaximize": true,
|
|
54
|
-
"width": "extra-wide"
|
|
66
|
+
"window": "esm-admin-workspace-window"
|
|
55
67
|
},
|
|
56
68
|
{
|
|
57
69
|
"name": "add-location-workspace",
|
|
58
|
-
"title": "Add Location",
|
|
59
70
|
"component": "addLocation",
|
|
60
|
-
"
|
|
71
|
+
"window": "esm-admin-workspace-window"
|
|
61
72
|
},
|
|
62
73
|
{
|
|
63
74
|
"name": "search-location-workspace",
|
|
64
|
-
"title": "Search Location",
|
|
65
75
|
"component": "searchLocationWorkspace",
|
|
66
|
-
"
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"name": "hwr-sync-workspace",
|
|
70
|
-
"title": "HWR Sync Workspace",
|
|
71
|
-
"component": "hwrSyncWorkspace",
|
|
72
|
-
"type": "other-form"
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
"name": "hwr-sync-modal",
|
|
76
|
-
"title": "HWR Sync Modal",
|
|
77
|
-
"component": "hwrSyncModal",
|
|
78
|
-
"type": "modal"
|
|
76
|
+
"window": "esm-admin-workspace-window"
|
|
79
77
|
}
|
|
80
78
|
],
|
|
81
|
-
"
|
|
79
|
+
"workspaceWindows2": [
|
|
82
80
|
{
|
|
83
|
-
"
|
|
84
|
-
"
|
|
81
|
+
"name": "esm-admin-workspace-window",
|
|
82
|
+
"canMaximize": true,
|
|
83
|
+
"group": "esm-admin-workspace-group"
|
|
85
84
|
},
|
|
86
85
|
{
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
|
|
86
|
+
"name": "esm-admin-extra-wide-workspace-window",
|
|
87
|
+
"canMaximize": true,
|
|
88
|
+
"group": "esm-admin-workspace-group",
|
|
89
|
+
"width": "extra-wide"
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"workspaceGroups2": [
|
|
90
93
|
{
|
|
91
|
-
"
|
|
92
|
-
"
|
|
93
|
-
|
|
94
|
-
{
|
|
95
|
-
"component": "hwrSyncModal",
|
|
96
|
-
"name": "hwr-syncing-modal"
|
|
94
|
+
"name": "esm-admin-workspace-group",
|
|
95
|
+
"scopePattern": "/admin",
|
|
96
|
+
"closeable": true
|
|
97
97
|
}
|
|
98
98
|
],
|
|
99
99
|
"pages": [
|
|
@@ -102,4 +102,4 @@
|
|
|
102
102
|
"route": "admin"
|
|
103
103
|
}
|
|
104
104
|
]
|
|
105
|
-
}
|
|
105
|
+
}
|
package/src/types/index.ts
CHANGED
|
@@ -27,8 +27,36 @@ export interface SHAFacility {
|
|
|
27
27
|
shaFacilityLicenseNumber: string;
|
|
28
28
|
facilityRegistryCode: string;
|
|
29
29
|
source: string;
|
|
30
|
+
officialName: string;
|
|
31
|
+
facilityType: string;
|
|
32
|
+
facilityOwnership: string;
|
|
33
|
+
fidCode: string;
|
|
34
|
+
isHub: string;
|
|
35
|
+
facilityLicenseStatus: string;
|
|
36
|
+
facilityLicenseStartDate: string;
|
|
37
|
+
regulatoryBody: string;
|
|
38
|
+
shaContractStatus: string;
|
|
39
|
+
shaContractStartDate: string;
|
|
40
|
+
shaContractEndDate: string;
|
|
41
|
+
facilityPhoneNumber: string;
|
|
42
|
+
facilityEmail: string;
|
|
43
|
+
facilityAdministratorName: string;
|
|
44
|
+
facilityAdministratorPhone: string;
|
|
45
|
+
facilityAdministratorEmail: string;
|
|
46
|
+
county: string;
|
|
47
|
+
subCounty: string;
|
|
48
|
+
town: string;
|
|
49
|
+
physicalLocation: string;
|
|
50
|
+
postalAddress: string;
|
|
51
|
+
latitude: string;
|
|
52
|
+
longitude: string;
|
|
53
|
+
totalBeds: string;
|
|
54
|
+
normalBeds: string;
|
|
55
|
+
icuBeds: string;
|
|
56
|
+
hduBeds: string;
|
|
57
|
+
dialysisBeds: string;
|
|
58
|
+
shaContractedServices: string;
|
|
30
59
|
}
|
|
31
|
-
|
|
32
60
|
export interface DefaultFacility {
|
|
33
61
|
locationId: number;
|
|
34
62
|
uuid: string;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { fhirBaseUrl, openmrsFetch, restBaseUrl } from '@openmrs/esm-framework';
|
|
1
|
+
import { fhirBaseUrl, openmrsFetch, restBaseUrl, useFhirFetchAll } from '@openmrs/esm-framework';
|
|
2
|
+
import uniqBy from 'lodash-es/uniqBy';
|
|
2
3
|
import useSWR, { mutate } from 'swr';
|
|
3
4
|
import {
|
|
4
5
|
AttributeType,
|
|
5
|
-
FHIRResponse,
|
|
6
6
|
PageableResult,
|
|
7
7
|
Provider,
|
|
8
|
-
ProviderAttributes,
|
|
9
8
|
ProviderLocation,
|
|
10
9
|
ProviderResponse,
|
|
11
10
|
Role,
|
|
@@ -13,8 +12,6 @@ import {
|
|
|
13
12
|
User,
|
|
14
13
|
UserRoleScope,
|
|
15
14
|
} from './types';
|
|
16
|
-
import uniqBy from 'lodash-es/uniqBy';
|
|
17
|
-
import { useMemo } from 'react';
|
|
18
15
|
|
|
19
16
|
export const useUser = () => {
|
|
20
17
|
const url = `${restBaseUrl}/user?v=custom:(uuid,username,display,systemId,retired,person:(uuid,display,gender,names:(givenName,familyName,middleName),attributes:(uuid,display)),roles:(uuid,description,display,name))`;
|
|
@@ -169,13 +166,10 @@ export function useStockOperationTypes() {
|
|
|
169
166
|
|
|
170
167
|
export function useStockTagLocations() {
|
|
171
168
|
const apiUrl = `${fhirBaseUrl}/Location?_summary=data&_tag=main store,main pharmacy,dispensary,sub store `;
|
|
172
|
-
const { data, error, isLoading } =
|
|
173
|
-
|
|
174
|
-
() => data?.data?.entry?.map((response) => response.resource) ?? [],
|
|
175
|
-
[data?.data?.entry],
|
|
176
|
-
);
|
|
169
|
+
const { data, error, isLoading } = useFhirFetchAll<fhir.Location>(apiUrl);
|
|
170
|
+
|
|
177
171
|
return {
|
|
178
|
-
stockLocations: uniqBy(
|
|
172
|
+
stockLocations: uniqBy(data, 'id') ?? [],
|
|
179
173
|
isLoading,
|
|
180
174
|
error,
|
|
181
175
|
};
|
package/translations/am.json
CHANGED
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
"chooseAStockRole": "የክምችት ሚና ይምረጡ",
|
|
14
14
|
"completionStatus": "የማጠናቀቂያ ሁኔታ",
|
|
15
15
|
"confirmation": "ማረጋገጫ",
|
|
16
|
+
"contactAndAdministrator": "Contact & administrator",
|
|
16
17
|
"continue": "ወደ ምዝገባ ይቀጥሉ",
|
|
18
|
+
"county": "County",
|
|
17
19
|
"delete": "ሰርዝ",
|
|
18
20
|
"deletingstockUserScope": "የክምችት ተጠቃሚ ስፋትን ሰርዝ",
|
|
19
21
|
"description": "መግለጫ",
|
|
@@ -30,38 +32,49 @@
|
|
|
30
32
|
"Expired Licensed": "ያለፈበት ፈቃድ ያለው",
|
|
31
33
|
"expiresIn3Months": "በ3 ወራት ውስጥ ያልቃል",
|
|
32
34
|
"expiresSoon": "በቅርቡ ያልቃል",
|
|
33
|
-
"facilityCode": "የተቋሙ KMHFR ኮድ",
|
|
34
35
|
"facilityDetails": "የተቋሙ ዝርዝሮች",
|
|
36
|
+
"facilityEmail": "Email",
|
|
35
37
|
"facilityInfo": "የተቋሙ መረጃ",
|
|
36
|
-
"facilityInformation": "የተቋሙ መረጃ",
|
|
37
38
|
"facilityName": "የተቋሙ ስም",
|
|
39
|
+
"facilityOwnership": "Ownership",
|
|
40
|
+
"facilityPhone": "Phone",
|
|
38
41
|
"facilityRegistryCode": "የተቋሙ መመዝገቢያ ኮድ",
|
|
42
|
+
"facilityType": "Facility type",
|
|
43
|
+
"fidCode": "FID code",
|
|
39
44
|
"filter": "አጣራ",
|
|
40
45
|
"filterBy": "በዚህ አጣራ:",
|
|
41
46
|
"generalInformation": "አጠቃላይ መረጃ",
|
|
42
47
|
"HealthworkerNotFound": "የጤና ሰራተኛ መዝገቦች በጤና ሰራተኛ መመዝገቢያ ውስጥ ሊገኙ አልቻሉም፣ አካውንት መፍጠር መቀጠል ይፈልጋሉ",
|
|
43
48
|
"healthWorkerRegistryEmpty": "አካውንት ይፍጠሩ",
|
|
49
|
+
"hieSyncFailed": "HIE sync failed. Pulling local info.",
|
|
44
50
|
"hieSynchronizationError": "ከHIE ጋር ሲመሳሰል ስህተት ተፈጥሯል",
|
|
45
51
|
"home": "መነሻ",
|
|
52
|
+
"hubFacility": "Hub facility",
|
|
46
53
|
"identifierProvider": "መለያ:",
|
|
47
54
|
"kephLevel": "የ Keph ደረጃ",
|
|
55
|
+
"licenseAndShaStatus": "License & SHA status",
|
|
48
56
|
"Licensed expiring soon": "በቅርቡ የሚያልፍ ፈቃድ ያለው",
|
|
49
57
|
"licenseExpired": "ፈቃድ ጊዜው አልፏል",
|
|
50
58
|
"licenseExpiringSoon": "ፈቃድ በቅርቡ ያልቃል",
|
|
59
|
+
"licenseExpiry": "License expiry",
|
|
51
60
|
"licenseExpiryDate": "የፈቃድ ማብቂያ ቀን",
|
|
52
61
|
"licenseNumber": "የፈቃድ ቁጥር",
|
|
53
62
|
"licenseProvider": "ፈቃድ:",
|
|
63
|
+
"licenseStart": "License start",
|
|
64
|
+
"licenseStatus": "License status",
|
|
54
65
|
"loading": "",
|
|
55
66
|
"loadingState": "",
|
|
56
67
|
"location": "ቦታ(ዎች)",
|
|
57
68
|
"locationName": "የቦታ ስም",
|
|
58
69
|
"locations": "ቦታዎች",
|
|
59
70
|
"manageUserRoleScope": "የተጠቃሚ ሚና ስፋትን አስተዳድር",
|
|
71
|
+
"mflCode": "MFL code",
|
|
60
72
|
"nameProvider": "ስም:",
|
|
61
73
|
"names": "ስሞች",
|
|
62
74
|
"nationalId": "ብሔራዊ መታወቂያ",
|
|
63
75
|
"nextPage": "ቀጣይ ገጽ",
|
|
64
76
|
"no": "አይ",
|
|
77
|
+
"noContractedServices": "No contracted services on record for this facility.",
|
|
65
78
|
"noData": "የሚታይ መረጃ የለም",
|
|
66
79
|
"noDescriptionAvailable": "ምንም መግለጫ አይገኝም",
|
|
67
80
|
"noHwrApi": "የጤና እንክብካቤ ሰራተኛ መመዝገቢያ API መረጃዎች አልተዋቀሩም፣ እባክዎ የስርዓት አስተዳዳሪን ያግኙ። አካውንት መፍጠር መቀጠል ይፈልጋሉ",
|
|
@@ -71,6 +84,7 @@
|
|
|
71
84
|
"noSearchResults": "",
|
|
72
85
|
"noUserRoleScope": "ምንም የተጠቃሚ ሚና ስፋት የለም",
|
|
73
86
|
"noUsersAvailable": "ምንም ተጠቃሚዎች አይገኙም",
|
|
87
|
+
"operationalStatus": "Operational status",
|
|
74
88
|
"operationError": "{{operationName}} አልተሳካም",
|
|
75
89
|
"operationErrorSubtitle": "በክንውኑ ጊዜ ስህተት ተፈጥሯል።",
|
|
76
90
|
"operationsConfirmationMessages": "{{operationTypeOrName}} ይፈልጋሉ?",
|
|
@@ -79,6 +93,8 @@
|
|
|
79
93
|
"passportNumber": "ፓስፖርት ቁጥር",
|
|
80
94
|
"permanent": "ቋሚ?",
|
|
81
95
|
"phoneNumber": "ስልክ ቁጥር",
|
|
96
|
+
"physicalLocation": "Physical location",
|
|
97
|
+
"postalAddress": "Postal address",
|
|
82
98
|
"previousPage": "የቀድሞ ገጽ",
|
|
83
99
|
"procedure": "ሥነ-ሥርዓት",
|
|
84
100
|
"providerBanner": "የአቅራቢ ባነር",
|
|
@@ -92,6 +108,7 @@
|
|
|
92
108
|
"refreshingUserScopes": "የተጠቃሚ ስፋቶችን በማደስ ላይ...",
|
|
93
109
|
"refreshTables": "ሰንጠረዦችን አድስ",
|
|
94
110
|
"registrationNumber": "የምዝገባ ቁጥር",
|
|
111
|
+
"regulatoryBody": "Regulatory body",
|
|
95
112
|
"remove": "አስወግድ",
|
|
96
113
|
"ResourceNotFound": "የጤና ሰራተኛ መመዝገቢያ ሊደረስበት አልቻለም፣ እባክዎ የበይነመረብ ግንኙነትዎን ያረጋግጡ እና እንደገና ይሞክሩ። አካውንት መፍጠር መቀጠል ይፈልጋሉ",
|
|
97
114
|
"role": "ሚና",
|
|
@@ -99,24 +116,25 @@
|
|
|
99
116
|
"searchForUsers": "ተጠቃሚ ፈልግ",
|
|
100
117
|
"searchNoResults": "ምንም ተዛማጅ ውጤቶች አልተገኙም",
|
|
101
118
|
"searchNoResultsHelper": "የተለየ ቃል ለመፈለግ ይሞክሩ",
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
"shalicenceNumber": "የ SHA ፈቃድ ቁጥር",
|
|
105
|
-
"shaStatus": "የ SHA ሁኔታ",
|
|
119
|
+
"shaContractedServices": "SHA contracted services",
|
|
120
|
+
"shaContractStatus": "SHA contract",
|
|
106
121
|
"startTime": "የመጀመሪያ ሰዓት",
|
|
107
122
|
"stockLocation": "የክምችት ቦታ",
|
|
108
123
|
"stockOperation": "የክምችት ክንውን",
|
|
109
124
|
"stockRole": "የክምችት ሚና",
|
|
110
125
|
"stockRoleAccess": "የክምችት ሚና መዳረሻ",
|
|
111
126
|
"stockUserScopeDeletedSuccessfully": "የክምችት ተጠቃሚ ስፋት በተሳካ ሁኔታ ተሰርዟል",
|
|
127
|
+
"subCounty": "Sub-county",
|
|
112
128
|
"sync": "አመሳክር",
|
|
113
|
-
"
|
|
114
|
-
"synchronizingFacilityData": "እባክዎ ይጠብቁ፣ መረጃ በመመሳሰል ላይ ነው።",
|
|
129
|
+
"synchronizing": "Synchronizing...",
|
|
115
130
|
"syncingHieError": "ከHIE ጋር ማመሳሰል አልተሳካም",
|
|
116
131
|
"syncingHieSuccess": "ማመሳሰል ተጠናቋል",
|
|
132
|
+
"syncWithHie": "Sync with HIE",
|
|
117
133
|
"systemId": "የስርዓት መታወቂያ",
|
|
118
134
|
"tagLocation": "ቦታን ምልክት አድርግ",
|
|
119
135
|
"tags": "መለያዎች",
|
|
136
|
+
"totalBeds": "Total beds",
|
|
137
|
+
"town": "Town",
|
|
120
138
|
"tryDifferentSearch": "የተለየ የፍለጋ ቃል ይሞክሩ",
|
|
121
139
|
"unknownError": "የጤና ሰራተኛ መመዝገቢያን በሚፈልጉበት ጊዜ ያልታወቀ ስህተት ተከስቷል፣ እባክዎ የስርዓት አስተዳዳሪን ያግኙ። አካውንት መፍጠር መቀጠል ይፈልጋሉ",
|
|
122
140
|
"unlicensed": "ፈቃድ የሌለው",
|
package/translations/en.json
CHANGED
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
"chooseAStockRole": "Choose a stock role",
|
|
14
14
|
"completionStatus": "Completion status",
|
|
15
15
|
"confirmation": "Confirmation",
|
|
16
|
+
"contactAndAdministrator": "Contact & administrator",
|
|
16
17
|
"continue": "Continue to registration",
|
|
18
|
+
"county": "County",
|
|
17
19
|
"delete": "Delete",
|
|
18
20
|
"deletingstockUserScope": "Delete Stock User Scope",
|
|
19
21
|
"description": "Description",
|
|
@@ -30,38 +32,49 @@
|
|
|
30
32
|
"Expired Licensed": "Expired Licensed",
|
|
31
33
|
"expiresIn3Months": "Expires in 3 months",
|
|
32
34
|
"expiresSoon": "Expires Soon",
|
|
33
|
-
"facilityCode": "Facility KMHFR Code",
|
|
34
35
|
"facilityDetails": "Facility Details",
|
|
36
|
+
"facilityEmail": "Email",
|
|
35
37
|
"facilityInfo": "Facility Info",
|
|
36
|
-
"facilityInformation": "Facility Information",
|
|
37
38
|
"facilityName": "Facility Name",
|
|
39
|
+
"facilityOwnership": "Ownership",
|
|
40
|
+
"facilityPhone": "Phone",
|
|
38
41
|
"facilityRegistryCode": "Facility Registry Code",
|
|
42
|
+
"facilityType": "Facility type",
|
|
43
|
+
"fidCode": "FID code",
|
|
39
44
|
"filter": "Filter",
|
|
40
45
|
"filterBy": "Filter by:",
|
|
41
46
|
"generalInformation": "General Information",
|
|
42
47
|
"HealthworkerNotFound": "The health worker records could not be found in Health Worker registry, do you want to continue to create an account",
|
|
43
48
|
"healthWorkerRegistryEmpty": "Create an Account",
|
|
49
|
+
"hieSyncFailed": "HIE sync failed. Pulling local info.",
|
|
44
50
|
"hieSynchronizationError": "An error occurred while synchronizing with HIE",
|
|
45
51
|
"home": "Home",
|
|
52
|
+
"hubFacility": "Hub facility",
|
|
46
53
|
"identifierProvider": "Identifier:",
|
|
47
54
|
"kephLevel": "Keph Level",
|
|
55
|
+
"licenseAndShaStatus": "License & SHA status",
|
|
48
56
|
"Licensed expiring soon": "Licensed expiring soon",
|
|
49
57
|
"licenseExpired": "License has expired",
|
|
50
58
|
"licenseExpiringSoon": "License is expiring soon",
|
|
59
|
+
"licenseExpiry": "License expiry",
|
|
51
60
|
"licenseExpiryDate": "License Expiry Date",
|
|
52
61
|
"licenseNumber": "License Number",
|
|
53
62
|
"licenseProvider": "License:",
|
|
63
|
+
"licenseStart": "License start",
|
|
64
|
+
"licenseStatus": "License status",
|
|
54
65
|
"loading": "",
|
|
55
66
|
"loadingState": "",
|
|
56
67
|
"location": "Location(s)",
|
|
57
68
|
"locationName": "Location Name",
|
|
58
69
|
"locations": "Locations",
|
|
59
70
|
"manageUserRoleScope": "Manage user role scope",
|
|
71
|
+
"mflCode": "MFL code",
|
|
60
72
|
"nameProvider": "Name:",
|
|
61
73
|
"names": "Names",
|
|
62
74
|
"nationalId": "National ID",
|
|
63
75
|
"nextPage": "Next page",
|
|
64
76
|
"no": "No",
|
|
77
|
+
"noContractedServices": "No contracted services on record for this facility.",
|
|
65
78
|
"noData": "No data to display",
|
|
66
79
|
"noDescriptionAvailable": "No description available",
|
|
67
80
|
"noHwrApi": "Health Care Worker Registry API credentials not configured, Kindly contact system admin. Do you want to continue to create an account",
|
|
@@ -71,6 +84,7 @@
|
|
|
71
84
|
"noSearchResults": "",
|
|
72
85
|
"noUserRoleScope": "No user role scope",
|
|
73
86
|
"noUsersAvailable": "No users available",
|
|
87
|
+
"operationalStatus": "Operational status",
|
|
74
88
|
"operationError": "{{operationName}} failed",
|
|
75
89
|
"operationErrorSubtitle": "An error occurred during the operation.",
|
|
76
90
|
"operationsConfirmationMessages": "Do you want to {{operationTypeOrName}}?",
|
|
@@ -79,6 +93,8 @@
|
|
|
79
93
|
"passportNumber": "Passport number",
|
|
80
94
|
"permanent": "Permanent?",
|
|
81
95
|
"phoneNumber": "Phone number",
|
|
96
|
+
"physicalLocation": "Physical location",
|
|
97
|
+
"postalAddress": "Postal address",
|
|
82
98
|
"previousPage": "Previous page",
|
|
83
99
|
"procedure": "Procedure",
|
|
84
100
|
"providerBanner": "Provider banner",
|
|
@@ -92,6 +108,7 @@
|
|
|
92
108
|
"refreshingUserScopes": "Refreshing user scopes...",
|
|
93
109
|
"refreshTables": "Refresh tables",
|
|
94
110
|
"registrationNumber": "Registration number",
|
|
111
|
+
"regulatoryBody": "Regulatory body",
|
|
95
112
|
"remove": "Remove",
|
|
96
113
|
"ResourceNotFound": "The Health Work Registry is not reachable, kindly confirm your internet connectivity and try again. Do you want to continue to create an account",
|
|
97
114
|
"role": "Role",
|
|
@@ -99,24 +116,25 @@
|
|
|
99
116
|
"searchForUsers": "Search for user",
|
|
100
117
|
"searchNoResults": "Found no matching results",
|
|
101
118
|
"searchNoResultsHelper": "Try searching for a different term",
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
"shalicenceNumber": "SHA License Number",
|
|
105
|
-
"shaStatus": "SHA Status",
|
|
119
|
+
"shaContractedServices": "SHA contracted services",
|
|
120
|
+
"shaContractStatus": "SHA contract",
|
|
106
121
|
"startTime": "Start time",
|
|
107
122
|
"stockLocation": "Stock Location",
|
|
108
123
|
"stockOperation": "Stock Operation",
|
|
109
124
|
"stockRole": "Stock Role",
|
|
110
125
|
"stockRoleAccess": "Stock Role Access",
|
|
111
126
|
"stockUserScopeDeletedSuccessfully": "Stock User Scope Deleted Successfully",
|
|
127
|
+
"subCounty": "Sub-county",
|
|
112
128
|
"sync": "Sync",
|
|
113
|
-
"
|
|
114
|
-
"synchronizingFacilityData": "Please wait, Synchronizing Info.",
|
|
129
|
+
"synchronizing": "Synchronizing...",
|
|
115
130
|
"syncingHieError": "Syncing with HIE Failed",
|
|
116
131
|
"syncingHieSuccess": "Synchronization Complete",
|
|
132
|
+
"syncWithHie": "Sync with HIE",
|
|
117
133
|
"systemId": "System ID",
|
|
118
134
|
"tagLocation": "Tag Location",
|
|
119
135
|
"tags": "Tags",
|
|
136
|
+
"totalBeds": "Total beds",
|
|
137
|
+
"town": "Town",
|
|
120
138
|
"tryDifferentSearch": "Try a different search term",
|
|
121
139
|
"unknownError": "An error occurred while searching Health Worker Registry, kindly contact system admin. Do you want to continue to create an account",
|
|
122
140
|
"unlicensed": "Unlicensed",
|