@openmrs/esm-fast-data-entry-app 1.0.1-pre.21 → 1.0.1-pre.24
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/README.md
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
The Fast Data Entry App is a module for the [OpenMRS](https://openmrs.org/) healthcare platform which allows for a natural workflow when entering many pre-recorded forms at a time. It is not meant for point-of-care workflows, but rather as a way to do retrospective data entry.
|
|
6
6
|
|
|
7
7
|
## Overview
|
|
8
|
-
Currently the app consists of
|
|
8
|
+
Currently the app consists of three main parts, a Forms Page to list available forms, Fast Data Entry which allows the rapid input of forms, and Group Sessions which enable recording information about a group session as well as individual forms for the session participants.
|
|
9
9
|
|
|
10
10
|
### Forms Page
|
|
11
11
|
The Forms page lists all forms able to be seen by a user, filtered by that user's permission to edit the given form. Additionally implementors are able to customize the page by creating form categories and listing the forms inside of each category. These categories can then be shown or hidden using configuration (see more [here](docs/configuring-form-categories.md)). From these lists forms are able to be opened in the Form Workflow using the 'Fill form' button.
|
|
12
12
|
|
|
13
|
-
###
|
|
13
|
+
### Fast Data Entry
|
|
14
14
|
Forms can be entered quickly with the Form Entry Workflow. This workflow depends on a state machine managed by the [FormWorkflowReducer](src/context/FormWorkflowReducer.ts).
|
|
15
15
|
|
|
16
16
|
See the video below of a normal workflow.
|
|
@@ -21,6 +21,25 @@ State diagram for the Form Workflow.
|
|
|
21
21
|
|
|
22
22
|

|
|
23
23
|
|
|
24
|
+
### Group Sessions
|
|
25
|
+
Group Sessions can be recorded with use of the Group Session Workflow. This workflow depends on a state machine managed by the [GroupFormWorkflowReducer](src/context/GroupFormWorkflowReducer.ts).
|
|
26
|
+
|
|
27
|
+
See the video below of a normal workflow
|
|
28
|
+
|
|
29
|
+
https://user-images.githubusercontent.com/5445264/194318314-90bf95a0-cbbc-4ed2-9f83-f8e20d317fbf.mov
|
|
30
|
+
|
|
31
|
+
At the end, data from the group session will be visible on the patient's chart
|
|
32
|
+
|
|
33
|
+

|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### Group Builder
|
|
37
|
+
|
|
38
|
+
This app also contains a Group Builder for quickly putting together a group of patients and storing them as a cohort. While this feature arose to meet the needs of the workflow the concept is valid for the broader platform and could, some day, be moved to a more central location so more apps could make use of it. [AddGroupModal](https://github.com/openmrs/openmrs-esm-fast-data-entry-app/blob/main/src/add-group-modal/AddGroupModal.tsx) was created in a way to reduce external dependencies so this eventual transition would be easier.
|
|
39
|
+
|
|
40
|
+
https://user-images.githubusercontent.com/5445264/190840219-ec032792-0479-4676-8312-24064edb6afc.mov
|
|
41
|
+
|
|
42
|
+
|
|
24
43
|
## Running this code
|
|
25
44
|
|
|
26
45
|
Clone the repo locally, then install and run using
|
package/dist/132.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_openmrs_esm_fast_data_entry_app=self.webpackChunk_openmrs_esm_fast_data_entry_app||[]).push([[132],{8132:(e,r,t)=>{"use strict";t.r(r),t.d(r,{backendDependencies:()=>i,importTranslation:()=>s,setupOpenMRS:()=>m,version:()=>n});var o=t(1132),a={formCategories:{_type:o.Type.Array,_description:"Organize forms into categories. A form can belong to multiple categories.",_elements:{name:{_type:o.Type.String,_description:"Category name"},forms:{_type:o.Type.Array,_description:"List of forms for this category.",_elements:{formUUID:{_type:o.Type.UUID,_description:"UUID of form"},name:{_type:o.Type.String,_description:"Name of form"}}}},_default:[{name:"ICRC Forms",forms:[{formUUID:"0cefb866-110c-4f16-af58-560932a1db1f",name:"Adult Triage"}]},{name:"Distress Scales",forms:[{formUUID:"9f26aad4-244a-46ca-be49-1196df1a8c9a",name:"POC Sample Form 1"}]}]},formCategoriesToShow:{_type:o.Type.Array,_description:"Forms to show by default on the forms app home page.",_elements:{_type:o.Type.String,_description:"Name of category"},_default:["ICRC Forms","Distress Scales"]}},n="1.0.1-pre.
|
|
1
|
+
(self.webpackChunk_openmrs_esm_fast_data_entry_app=self.webpackChunk_openmrs_esm_fast_data_entry_app||[]).push([[132],{8132:(e,r,t)=>{"use strict";t.r(r),t.d(r,{backendDependencies:()=>i,importTranslation:()=>s,setupOpenMRS:()=>m,version:()=>n});var o=t(1132),a={formCategories:{_type:o.Type.Array,_description:"Organize forms into categories. A form can belong to multiple categories.",_elements:{name:{_type:o.Type.String,_description:"Category name"},forms:{_type:o.Type.Array,_description:"List of forms for this category.",_elements:{formUUID:{_type:o.Type.UUID,_description:"UUID of form"},name:{_type:o.Type.String,_description:"Name of form"}}}},_default:[{name:"ICRC Forms",forms:[{formUUID:"0cefb866-110c-4f16-af58-560932a1db1f",name:"Adult Triage"}]},{name:"Distress Scales",forms:[{formUUID:"9f26aad4-244a-46ca-be49-1196df1a8c9a",name:"POC Sample Form 1"}]}]},formCategoriesToShow:{_type:o.Type.Array,_description:"Forms to show by default on the forms app home page.",_elements:{_type:o.Type.String,_description:"Name of category"},_default:["ICRC Forms","Distress Scales"]}},n="1.0.1-pre.24",s=t(3979),i={fhir2:"^1.2.0","webservices.rest":"^2.2.0"};function m(){var e="@openmrs/esm-fast-data-entry-app",r={featureName:"fast-data-entry-app",moduleName:e};return(0,o.defineConfigSchema)(e,a),(0,o.registerBreadcrumbs)([{path:"".concat(window.spaBase,"/forms"),title:"Forms",parent:"".concat(window.spaBase,"/home")}]),{pages:[{load:(0,o.getAsyncLifecycle)((function(){return Promise.all([t.e(672),t.e(804)]).then(t.bind(t,9804))}),r),route:"forms"}],extensions:[{name:"forms-app-link",slot:"app-menu-slot",load:(0,o.getAsyncLifecycle)((function(){return Promise.all([t.e(672),t.e(397),t.e(776)]).then(t.bind(t,5776))}),r),online:!0,offline:!0}]}}},3979:(e,r,t)=>{var o={"./en.json":[3574,574]};function a(e){if(!t.o(o,e))return Promise.resolve().then((()=>{var r=new Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}));var r=o[e],a=r[0];return t.e(r[1]).then((()=>t(a)))}a.keys=()=>Object.keys(o),a.id=3979,e.exports=a}}]);
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"132.js"
|
|
67
67
|
],
|
|
68
68
|
"auxiliaryFiles": [],
|
|
69
|
-
"hash": "
|
|
69
|
+
"hash": "157df4f44d78382b98c9",
|
|
70
70
|
"childrenByOrder": {}
|
|
71
71
|
},
|
|
72
72
|
{
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"main.js"
|
|
93
93
|
],
|
|
94
94
|
"auxiliaryFiles": [],
|
|
95
|
-
"hash": "
|
|
95
|
+
"hash": "91afa958de54db5ea163",
|
|
96
96
|
"childrenByOrder": {}
|
|
97
97
|
},
|
|
98
98
|
{
|