sdc-qrf 0.0.1 → 0.0.4
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/LICENSE +21 -0
- package/README.md +9 -0
- package/lib/components.js +46 -46
- package/lib/components.js.map +1 -1
- package/lib/context.js +1 -1
- package/lib/context.js.map +1 -1
- package/lib/hooks.js +2 -2
- package/lib/hooks.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/utils.js +128 -178
- package/lib/utils.js.map +1 -1
- package/package.json +9 -6
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 Ilya Beda
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# sdc-qrf
|
|
2
|
+
|
|
3
|
+
Set of utils packaged in [npm package](https://www.npmjs.com/package/sdc-qrf) to render forms for SDC Questionnaire/Questionnaire Response.
|
|
4
|
+
|
|
5
|
+
Sdc-qrf uses in [fhir-emr](https://github.com/beda-software/fhir-emr) project. Also we're using [aidbox-sdc](https://github.com/beda-software/aidbox-sdc) as backed for fhir-emr.
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
npm i sdc-qrf
|
|
9
|
+
```
|
package/lib/components.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QuestionnaireResponseFormProvider = exports.QuestionItem = exports.QuestionItems = exports.usePreviousValue = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
7
|
+
const fhirpath_1 = tslib_1.__importDefault(require("fhirpath"));
|
|
8
|
+
const lodash_1 = tslib_1.__importDefault(require("lodash"));
|
|
9
|
+
const isEqual_1 = tslib_1.__importDefault(require("lodash/isEqual"));
|
|
10
|
+
const react_1 = require("react");
|
|
11
|
+
const _1 = require(".");
|
|
12
|
+
const context_1 = require("./context");
|
|
13
|
+
const utils_1 = require("./utils");
|
|
14
14
|
function usePreviousValue(value) {
|
|
15
|
-
|
|
16
|
-
(0, react_1.useEffect)(
|
|
15
|
+
const prevValue = (0, react_1.useRef)();
|
|
16
|
+
(0, react_1.useEffect)(() => {
|
|
17
17
|
prevValue.current = value;
|
|
18
|
-
return
|
|
18
|
+
return () => {
|
|
19
19
|
prevValue.current = undefined;
|
|
20
20
|
};
|
|
21
21
|
});
|
|
@@ -23,37 +23,35 @@ function usePreviousValue(value) {
|
|
|
23
23
|
}
|
|
24
24
|
exports.usePreviousValue = usePreviousValue;
|
|
25
25
|
function QuestionItems(props) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, utils_1.getEnabledQuestions)(questionItems, parentPath, cleanValues).map(
|
|
30
|
-
return ((0, jsx_runtime_1.jsx)("div",
|
|
26
|
+
const { questionItems, parentPath, context } = props;
|
|
27
|
+
const { formValues } = (0, _1.useQuestionnaireResponseFormContext)();
|
|
28
|
+
const cleanValues = (0, utils_1.removeDisabledAnswers)(context.questionnaire.item, formValues);
|
|
29
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, utils_1.getEnabledQuestions)(questionItems, parentPath, cleanValues).map((item, index) => {
|
|
30
|
+
return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('questionFormItem', item.linkId) }, { children: (0, jsx_runtime_1.jsx)(QuestionItem, { questionItem: item, context: context, parentPath: parentPath }, index) })));
|
|
31
31
|
}) }));
|
|
32
32
|
}
|
|
33
33
|
exports.QuestionItems = QuestionItems;
|
|
34
34
|
function QuestionItem(props) {
|
|
35
35
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
const { questionItem, context: initialContext, parentPath } = props;
|
|
37
|
+
const { questionItemComponents, customWidgets, groupItemComponent, itemControlQuestionItemComponents, itemControlGroupItemComponents, } = (0, react_1.useContext)(context_1.QRFContext);
|
|
38
|
+
const { formValues, setFormValues } = (0, _1.useQuestionnaireResponseFormContext)();
|
|
39
|
+
const { type, linkId, calculatedExpression, variable, repeats, itemControl } = questionItem;
|
|
40
|
+
const fieldPath = (0, react_1.useMemo)(() => [...parentPath, linkId], [parentPath, linkId]);
|
|
41
41
|
// TODO: how to do when item is not in QR (e.g. default element of repeatable group)
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
? branchItems.qrItems.map(
|
|
45
|
-
return (0, utils_1.calcContext)(initialContext, variable, branchItems.qItem, curQRItem);
|
|
46
|
-
})
|
|
42
|
+
const branchItems = (0, utils_1.getBranchItems)(fieldPath, initialContext.questionnaire, initialContext.resource);
|
|
43
|
+
const context = type === 'group'
|
|
44
|
+
? branchItems.qrItems.map((curQRItem) => (0, utils_1.calcContext)(initialContext, variable, branchItems.qItem, curQRItem))
|
|
47
45
|
: (0, utils_1.calcContext)(initialContext, variable, branchItems.qItem, branchItems.qrItems[0]);
|
|
48
|
-
|
|
49
|
-
(0, react_1.useEffect)(
|
|
46
|
+
const prevAnswers = usePreviousValue(lodash_1.default.get(formValues, fieldPath));
|
|
47
|
+
(0, react_1.useEffect)(() => {
|
|
50
48
|
if (!isGroupItem(questionItem, context) && calculatedExpression) {
|
|
51
49
|
// TODO: Add support for x-fhir-query
|
|
52
50
|
if (calculatedExpression.language === 'text/fhirpath') {
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
const newValues = fhirpath_1.default.evaluate(context.context || {}, calculatedExpression.expression, context);
|
|
52
|
+
const newAnswers = newValues.length
|
|
55
53
|
? repeats
|
|
56
|
-
? newValues.map(
|
|
54
|
+
? newValues.map((answer) => ({ value: (0, utils_1.wrapAnswerValue)(type, answer) }))
|
|
57
55
|
: [{ value: (0, utils_1.wrapAnswerValue)(type, newValues[0]) }]
|
|
58
56
|
: undefined;
|
|
59
57
|
if (!(0, isEqual_1.default)(newAnswers, prevAnswers)) {
|
|
@@ -77,49 +75,51 @@ function QuestionItem(props) {
|
|
|
77
75
|
if (itemControl) {
|
|
78
76
|
if (!itemControlGroupItemComponents ||
|
|
79
77
|
!itemControlGroupItemComponents[(_b = (_a = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.code]) {
|
|
80
|
-
console.warn(
|
|
78
|
+
console.warn(`QRF: Unsupported group itemControl '${(_d = (_c = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.code}'.
|
|
79
|
+
Please define 'itemControlGroupWidgets' for '${(_f = (_e = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.code}'`);
|
|
81
80
|
return null;
|
|
82
81
|
}
|
|
83
|
-
|
|
82
|
+
const Component = itemControlGroupItemComponents[(_h = (_g = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.code];
|
|
84
83
|
return ((0, jsx_runtime_1.jsx)(Component, { context: context, parentPath: parentPath, questionItem: questionItem }));
|
|
85
84
|
}
|
|
86
85
|
if (!groupItemComponent) {
|
|
87
|
-
console.warn(
|
|
86
|
+
console.warn(`QRF: groupWidget is not specified but used in questionnaire.`);
|
|
88
87
|
return null;
|
|
89
88
|
}
|
|
90
|
-
|
|
89
|
+
const GroupWidgetComponent = groupItemComponent;
|
|
91
90
|
return ((0, jsx_runtime_1.jsx)(GroupWidgetComponent, { context: context, parentPath: parentPath, questionItem: questionItem }));
|
|
92
91
|
}
|
|
93
92
|
if (itemControl) {
|
|
94
93
|
if (!itemControlQuestionItemComponents ||
|
|
95
94
|
!itemControlQuestionItemComponents[(_k = (_j = itemControl.coding) === null || _j === void 0 ? void 0 : _j[0]) === null || _k === void 0 ? void 0 : _k.code]) {
|
|
96
|
-
console.warn(
|
|
95
|
+
console.warn(`QRF: Unsupported itemControl '${(_m = (_l = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _l === void 0 ? void 0 : _l[0]) === null || _m === void 0 ? void 0 : _m.code}'.
|
|
96
|
+
Please define 'itemControlWidgets' for '${(_p = (_o = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _o === void 0 ? void 0 : _o[0]) === null || _p === void 0 ? void 0 : _p.code}'`);
|
|
97
97
|
return null;
|
|
98
98
|
}
|
|
99
|
-
|
|
99
|
+
const Component = itemControlQuestionItemComponents[(_r = (_q = itemControl === null || itemControl === void 0 ? void 0 : itemControl.coding) === null || _q === void 0 ? void 0 : _q[0]) === null || _r === void 0 ? void 0 : _r.code];
|
|
100
100
|
return (0, jsx_runtime_1.jsx)(Component, { context: context, parentPath: parentPath, questionItem: questionItem });
|
|
101
101
|
}
|
|
102
102
|
// TODO: deprecate!
|
|
103
103
|
if (customWidgets && linkId && linkId in customWidgets) {
|
|
104
|
-
console.warn(
|
|
104
|
+
console.warn(`QRF: 'customWidgets' are deprecated, use 'Questionnaire.item.itemControl' instead`);
|
|
105
105
|
if (type === 'group') {
|
|
106
|
-
console.error(
|
|
106
|
+
console.error(`QRF: Use 'itemControl' for group custom widgets`);
|
|
107
107
|
return null;
|
|
108
108
|
}
|
|
109
|
-
|
|
109
|
+
const Component = customWidgets[linkId];
|
|
110
110
|
return (0, jsx_runtime_1.jsx)(Component, { context: context, parentPath: parentPath, questionItem: questionItem });
|
|
111
111
|
}
|
|
112
112
|
if (type in questionItemComponents) {
|
|
113
|
-
|
|
113
|
+
const Component = questionItemComponents[type];
|
|
114
114
|
return (0, jsx_runtime_1.jsx)(Component, { context: context, parentPath: parentPath, questionItem: questionItem });
|
|
115
115
|
}
|
|
116
|
-
console.error(
|
|
116
|
+
console.error(`QRF: Unsupported item type '${type}'`);
|
|
117
117
|
return null;
|
|
118
118
|
}
|
|
119
119
|
exports.QuestionItem = QuestionItem;
|
|
120
120
|
function QuestionnaireResponseFormProvider(_a) {
|
|
121
|
-
var children = _a
|
|
122
|
-
return (0, jsx_runtime_1.jsx)(context_1.QRFContext.Provider,
|
|
121
|
+
var { children } = _a, props = tslib_1.__rest(_a, ["children"]);
|
|
122
|
+
return (0, jsx_runtime_1.jsx)(context_1.QRFContext.Provider, Object.assign({ value: props }, { children: children }));
|
|
123
123
|
}
|
|
124
124
|
exports.QuestionnaireResponseFormProvider = QuestionnaireResponseFormProvider;
|
|
125
125
|
/* Helper that resolves right context type */
|
package/lib/components.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.tsx"],"names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.tsx"],"names":[],"mappings":";;;;;AAAA,oEAAoC;AACpC,gEAAgC;AAChC,4DAAuB;AACvB,qEAAqC;AACrC,iCAA2E;AAI3E,wBAAwD;AACxD,uCAAuC;AAEvC,mCAMiB;AAEjB,SAAgB,gBAAgB,CAAU,KAAQ;IAC9C,MAAM,SAAS,GAAG,IAAA,cAAM,GAAK,CAAC;IAE9B,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAE1B,OAAO,GAAG,EAAE;YACR,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;QAClC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,OAAO,CAAC;AAC7B,CAAC;AAZD,4CAYC;AAED,SAAgB,aAAa,CAAC,KAAyB;IACnD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACrD,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAmC,GAAE,CAAC;IAC7D,MAAM,WAAW,GAAG,IAAA,6BAAqB,EAAC,OAAO,CAAC,aAAa,CAAC,IAAK,EAAE,UAAU,CAAC,CAAC;IAEnF,OAAO,CACH,2DACK,IAAA,2BAAmB,EAAC,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC7E,OAAO,CACH,8CAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,gBACvD,uBAAC,YAAY,IAET,YAAY,EAAE,IAAI,EAClB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,IAHjB,KAAK,CAIZ,IACA,CACT,CAAC;QACN,CAAC,CAAC,GACH,CACN,CAAC;AACN,CAAC;AArBD,sCAqBC;AAED,SAAgB,YAAY,CAAC,KAAwB;;IACjD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IACpE,MAAM,EACF,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,iCAAiC,EACjC,8BAA8B,GACjC,GAAG,IAAA,kBAAU,EAAC,oBAAU,CAAC,CAAC;IAC3B,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,IAAA,sCAAmC,GAAE,CAAC;IAE5E,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC;IAC5F,MAAM,SAAS,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,GAAG,UAAU,EAAE,MAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhF,oFAAoF;IACpF,MAAM,WAAW,GAAG,IAAA,sBAAc,EAC9B,SAAS,EACT,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,QAAQ,CAC1B,CAAC;IACF,MAAM,OAAO,GACT,IAAI,KAAK,OAAO;QACZ,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAClC,IAAA,mBAAW,EAAC,cAAc,EAAE,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CACtE;QACH,CAAC,CAAC,IAAA,mBAAW,EAAC,cAAc,EAAE,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAG,gBAAgB,CAAC,gBAAC,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,oBAAoB,EAAE;YAC7D,qCAAqC;YACrC,IAAI,oBAAoB,CAAC,QAAQ,KAAK,eAAe,EAAE;gBACnD,MAAM,SAAS,GAAG,kBAAQ,CAAC,QAAQ,CAC/B,OAAO,CAAC,OAAO,IAAI,EAAE,EACrB,oBAAoB,CAAC,UAAW,EAChC,OAAsB,CACzB,CAAC;gBACF,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM;oBAC/B,CAAC,CAAC,OAAO;wBACL,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAA,uBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;wBAC5E,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAA,uBAAe,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtD,CAAC,CAAC,SAAS,CAAC;gBAEhB,IAAI,CAAC,IAAA,iBAAO,EAAC,UAAU,EAAE,WAAW,CAAC,EAAE;oBACnC,aAAa,CAAC,gBAAC,CAAC,GAAG,CAAC,gBAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;iBACxE;aACJ;SACJ;IACL,CAAC,EAAE;QACC,aAAa;QACb,UAAU;QACV,oBAAoB;QACpB,OAAO;QACP,UAAU;QACV,OAAO;QACP,IAAI;QACJ,YAAY;QACZ,WAAW;QACX,SAAS;KACZ,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE;QACpC,IAAI,WAAW,EAAE;YACb,IACI,CAAC,8BAA8B;gBAC/B,CAAC,8BAA8B,CAAC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,CAAC,EAClE;gBACE,OAAO,CAAC,IAAI,CAAC,uCAAuC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CACtE,IAAK;+DACoC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,GAAG,CAAC,CAAC;gBAEnF,OAAO,IAAI,CAAC;aACf;YAED,MAAM,SAAS,GAAG,8BAA8B,CAAC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,CAAE,CAAC;YAEnF,OAAO,CACH,uBAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,GAAI,CACtF,CAAC;SACL;QACD,IAAI,CAAC,kBAAkB,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;YAE7E,OAAO,IAAI,CAAC;SACf;QAED,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;QAEhD,OAAO,CACH,uBAAC,oBAAoB,IACjB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,GAC5B,CACL,CAAC;KACL;IAED,IAAI,WAAW,EAAE;QACb,IACI,CAAC,iCAAiC;YAClC,CAAC,iCAAiC,CAAC,MAAA,MAAA,WAAW,CAAC,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,CAAC,EACpE;YACE,OAAO,CAAC,IAAI,CACR,iCAAiC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK;0CACtC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,GAAG,CAC/D,CAAC;YAEF,OAAO,IAAI,CAAC;SACf;QAED,MAAM,SAAS,GAAG,iCAAiC,CAAC,MAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,0CAAG,CAAC,CAAC,0CAAE,IAAK,CAAE,CAAC;QAEtF,OAAO,uBAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC;KAC9F;IAED,mBAAmB;IACnB,IAAI,aAAa,IAAI,MAAM,IAAI,MAAM,IAAI,aAAa,EAAE;QACpD,OAAO,CAAC,IAAI,CACR,mFAAmF,CACtF,CAAC;QAEF,IAAI,IAAI,KAAK,OAAO,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAE,CAAC;QAEzC,OAAO,uBAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC;KAC9F;IAED,IAAI,IAAI,IAAI,sBAAsB,EAAE;QAChC,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAE,CAAC;QAEhD,OAAO,uBAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC;KAC9F;IAED,OAAO,CAAC,KAAK,CAAC,+BAA+B,IAAI,GAAG,CAAC,CAAC;IAEtD,OAAO,IAAI,CAAC;AAChB,CAAC;AA5ID,oCA4IC;AAED,SAAgB,iCAAiC,CAAC,EAGN;QAHM,EAC9C,QAAQ,OAEgC,EADrC,KAAK,sBAFsC,YAGjD,CADW;IAER,OAAO,uBAAC,oBAAU,CAAC,QAAQ,kBAAC,KAAK,EAAE,KAAK,gBAAG,QAAQ,IAAuB,CAAC;AAC/E,CAAC;AALD,8EAKC;AAED,6CAA6C;AAC7C,SAAS,WAAW,CAChB,YAA+B,EAC/B,OAAoC;IAEpC,OAAO,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC;AACzC,CAAC"}
|
package/lib/context.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.QRFContext = void 0;
|
|
4
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
5
|
exports.QRFContext = (0, react_1.createContext)({});
|
|
6
6
|
//# sourceMappingURL=context.js.map
|
package/lib/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AAIzB,QAAA,UAAU,GAAG,IAAA,qBAAa,EAAiB,EAAS,CAAC,CAAC"}
|
package/lib/hooks.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useQuestionnaireResponseFormContext = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const context_1 = require("./context");
|
|
6
6
|
function useQuestionnaireResponseFormContext() {
|
|
7
7
|
return (0, react_1.useContext)(context_1.QRFContext);
|
|
8
8
|
}
|
package/lib/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":";;;AAAA,iCAAmC;AAEnC,uCAAuC;AAEvC,SAAgB,mCAAmC;IAC/C,OAAO,IAAA,kBAAU,EAAC,oBAAU,CAAC,CAAC;AAClC,CAAC;AAFD,kFAEC"}
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./types"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./utils"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./hooks"), exports);
|
package/lib/utils.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseFhirQueryExpression = exports.calcInitialContext = exports.getEnabledQuestions = exports.removeDisabledAnswers = exports.getChecker = exports.isValueEqual = exports.findAnswersForQuestion = exports.findAnswersForQuestionsRecursive = exports.mapResponseToForm = exports.mapFormToResponse = exports.compareValue = exports.calcContext = exports.getBranchItems = exports.wrapAnswerValue = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const fhirpath_1 = tslib_1.__importDefault(require("fhirpath"));
|
|
6
|
+
const lodash_1 = tslib_1.__importDefault(require("lodash"));
|
|
7
|
+
const isArray_1 = tslib_1.__importDefault(require("lodash/isArray"));
|
|
8
|
+
const isPlainObject_1 = tslib_1.__importDefault(require("lodash/isPlainObject"));
|
|
9
|
+
const query_string_1 = tslib_1.__importDefault(require("query-string"));
|
|
10
10
|
function wrapAnswerValue(type, answer) {
|
|
11
|
-
var _a;
|
|
12
11
|
if (type === 'choice') {
|
|
13
12
|
if ((0, isPlainObject_1.default)(answer)) {
|
|
14
13
|
return { Coding: answer };
|
|
@@ -37,24 +36,27 @@ function wrapAnswerValue(type, answer) {
|
|
|
37
36
|
if (type === 'quantity') {
|
|
38
37
|
return { Quantity: answer };
|
|
39
38
|
}
|
|
40
|
-
return
|
|
39
|
+
return { [type]: answer };
|
|
41
40
|
}
|
|
42
41
|
exports.wrapAnswerValue = wrapAnswerValue;
|
|
43
42
|
function getBranchItems(fieldPath, questionnaire, questionnaireResponse) {
|
|
44
43
|
var _a, _b;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
let qrItem = questionnaireResponse;
|
|
45
|
+
let qItem = questionnaire;
|
|
46
|
+
// TODO: check for question with sub items
|
|
47
|
+
// TODO: check for root
|
|
48
|
+
for (let i = 0; i < fieldPath.length; i++) {
|
|
49
|
+
qItem = qItem.item.find((curItem) => curItem.linkId === fieldPath[i]);
|
|
49
50
|
if (qrItem) {
|
|
50
|
-
|
|
51
|
+
const qrItems = (_b = (_a = qrItem.item) === null || _a === void 0 ? void 0 : _a.filter((curItem) => curItem.linkId === fieldPath[i])) !== null && _b !== void 0 ? _b : [];
|
|
51
52
|
if (qItem.repeats) {
|
|
52
53
|
if (i + 2 < fieldPath.length) {
|
|
53
54
|
// In the middle
|
|
54
55
|
qrItem = qrItems[parseInt(fieldPath[i + 2], 10)];
|
|
55
56
|
}
|
|
56
57
|
else {
|
|
57
|
-
|
|
58
|
+
// Leaf
|
|
59
|
+
return { qItem, qrItems };
|
|
58
60
|
}
|
|
59
61
|
}
|
|
60
62
|
else {
|
|
@@ -67,31 +69,18 @@ function getBranchItems(fieldPath, questionnaire, questionnaireResponse) {
|
|
|
67
69
|
else {
|
|
68
70
|
i++;
|
|
69
71
|
}
|
|
70
|
-
out_i_1 = i;
|
|
71
|
-
};
|
|
72
|
-
var out_i_1;
|
|
73
|
-
// TODO: check for question with sub items
|
|
74
|
-
// TODO: check for root
|
|
75
|
-
for (var i = 0; i < fieldPath.length; i++) {
|
|
76
|
-
var state_1 = _loop_1(i);
|
|
77
|
-
i = out_i_1;
|
|
78
|
-
if (typeof state_1 === "object")
|
|
79
|
-
return state_1.value;
|
|
80
72
|
}
|
|
81
|
-
return { qItem
|
|
73
|
+
return { qItem, qrItems: [qrItem] };
|
|
82
74
|
}
|
|
83
75
|
exports.getBranchItems = getBranchItems;
|
|
84
76
|
function calcContext(initialContext, variables, qItem, qrItem) {
|
|
85
77
|
// TODO: add root variable support
|
|
86
|
-
return
|
|
87
|
-
var _a;
|
|
88
|
-
return (tslib_1.__assign(tslib_1.__assign({}, acc), (_a = {}, _a[curVariable.name] = fhirpath_1.default.evaluate(qrItem || {}, curVariable.expression, acc), _a)));
|
|
89
|
-
}, tslib_1.__assign(tslib_1.__assign({}, initialContext), { context: qrItem, qitem: qItem })));
|
|
78
|
+
return Object.assign({}, (variables || []).reduce((acc, curVariable) => (Object.assign(Object.assign({}, acc), { [curVariable.name]: fhirpath_1.default.evaluate(qrItem || {}, curVariable.expression, acc) })), Object.assign(Object.assign({}, initialContext), { context: qrItem, qitem: qItem })));
|
|
90
79
|
}
|
|
91
80
|
exports.calcContext = calcContext;
|
|
92
81
|
function compareValue(firstAnswerValue, secondAnswerValue) {
|
|
93
|
-
|
|
94
|
-
|
|
82
|
+
const firstValueType = lodash_1.default.keys(firstAnswerValue)[0];
|
|
83
|
+
const secondValueType = lodash_1.default.keys(secondAnswerValue)[0];
|
|
95
84
|
if (firstValueType !== secondValueType) {
|
|
96
85
|
throw new Error('Enable when must be used for the same type');
|
|
97
86
|
}
|
|
@@ -101,8 +90,8 @@ function compareValue(firstAnswerValue, secondAnswerValue) {
|
|
|
101
90
|
if (firstValueType === 'Quantity') {
|
|
102
91
|
throw new Error('Quantity type is not supported yet');
|
|
103
92
|
}
|
|
104
|
-
|
|
105
|
-
|
|
93
|
+
const firstValue = firstAnswerValue[firstValueType];
|
|
94
|
+
const secondValue = secondAnswerValue[secondValueType];
|
|
106
95
|
if (firstValue < secondValue) {
|
|
107
96
|
return -1;
|
|
108
97
|
}
|
|
@@ -122,37 +111,38 @@ function isRepeatableFormGroupItems(question, answers) {
|
|
|
122
111
|
return !!question.repeats && lodash_1.default.isArray(answers.items);
|
|
123
112
|
}
|
|
124
113
|
function hasSubAnswerItems(items) {
|
|
125
|
-
return !!items && lodash_1.default.some(items,
|
|
114
|
+
return !!items && lodash_1.default.some(items, (x) => !lodash_1.default.some(x, lodash_1.default.isEmpty));
|
|
126
115
|
}
|
|
127
116
|
function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
128
|
-
return Object.entries(answersItems).reduce(
|
|
129
|
-
var linkId = _a[0], answers = _a[1];
|
|
117
|
+
return Object.entries(answersItems).reduce((acc, [linkId, answers]) => {
|
|
130
118
|
if (!linkId) {
|
|
131
119
|
console.warn('The answer item has no linkId');
|
|
132
120
|
return acc;
|
|
133
121
|
}
|
|
134
|
-
|
|
122
|
+
const question = questionnaireItems.filter((qItem) => qItem.linkId === linkId)[0];
|
|
135
123
|
if (!question) {
|
|
136
124
|
return acc;
|
|
137
125
|
}
|
|
138
126
|
if (isFormGroupItems(question, answers)) {
|
|
139
|
-
|
|
127
|
+
const groups = isRepeatableFormGroupItems(question, answers)
|
|
140
128
|
? answers.items || []
|
|
141
129
|
: answers.items
|
|
142
130
|
? [answers.items]
|
|
143
131
|
: [];
|
|
144
|
-
return groups.reduce(
|
|
132
|
+
return groups.reduce((newAcc, group) => {
|
|
145
133
|
var _a;
|
|
146
|
-
|
|
147
|
-
return
|
|
148
|
-
|
|
149
|
-
|
|
134
|
+
const items = mapFormToResponseRecursive(group, (_a = question.item) !== null && _a !== void 0 ? _a : []);
|
|
135
|
+
return [
|
|
136
|
+
...newAcc,
|
|
137
|
+
Object.assign({ linkId }, (items.length ? { item: items } : {})),
|
|
138
|
+
];
|
|
150
139
|
}, acc);
|
|
151
140
|
}
|
|
152
|
-
return
|
|
141
|
+
return [
|
|
142
|
+
...acc,
|
|
153
143
|
{
|
|
154
|
-
linkId
|
|
155
|
-
answer: answers.reduce(
|
|
144
|
+
linkId,
|
|
145
|
+
answer: answers.reduce((answersAcc, answer) => {
|
|
156
146
|
var _a;
|
|
157
147
|
if (typeof answer === 'undefined') {
|
|
158
148
|
return answersAcc;
|
|
@@ -160,15 +150,16 @@ function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
|
160
150
|
if (!answer.value) {
|
|
161
151
|
return answersAcc;
|
|
162
152
|
}
|
|
163
|
-
|
|
153
|
+
const items = hasSubAnswerItems(answer.items)
|
|
164
154
|
? mapFormToResponseRecursive(answer.items, (_a = question.item) !== null && _a !== void 0 ? _a : [])
|
|
165
155
|
: [];
|
|
166
|
-
return
|
|
167
|
-
|
|
168
|
-
|
|
156
|
+
return [
|
|
157
|
+
...answersAcc,
|
|
158
|
+
Object.assign({ value: answer.value }, (items.length ? { item: items } : {})),
|
|
159
|
+
];
|
|
169
160
|
}, []),
|
|
170
161
|
},
|
|
171
|
-
]
|
|
162
|
+
];
|
|
172
163
|
}, []);
|
|
173
164
|
}
|
|
174
165
|
function mapFormToResponse(values, questionnaire, keepDisabledAnswers) {
|
|
@@ -179,46 +170,45 @@ function mapFormToResponse(values, questionnaire, keepDisabledAnswers) {
|
|
|
179
170
|
}
|
|
180
171
|
exports.mapFormToResponse = mapFormToResponse;
|
|
181
172
|
function mapResponseToFormRecursive(questionnaireResponseItems, questionnaireItems) {
|
|
182
|
-
return questionnaireItems.reduce(
|
|
183
|
-
var _a, _b, _c;
|
|
184
|
-
|
|
185
|
-
var linkId = question.linkId, initial = question.initial, repeats = question.repeats, text = question.text;
|
|
173
|
+
return questionnaireItems.reduce((acc, question) => {
|
|
174
|
+
var _a, _b, _c, _d, _e, _f;
|
|
175
|
+
const { linkId, initial, repeats, text } = question;
|
|
186
176
|
if (!linkId) {
|
|
187
177
|
console.warn('The question has no linkId');
|
|
188
178
|
return acc;
|
|
189
179
|
}
|
|
190
|
-
|
|
180
|
+
const qrItems = (_a = questionnaireResponseItems.filter((qrItem) => qrItem.linkId === linkId)) !== null && _a !== void 0 ? _a : [];
|
|
191
181
|
if (qrItems.length && isGroup(question)) {
|
|
192
182
|
if (repeats) {
|
|
193
|
-
return
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
183
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: {
|
|
184
|
+
question: text,
|
|
185
|
+
items: qrItems.map((qrItem) => {
|
|
186
|
+
var _a, _b;
|
|
187
|
+
return mapResponseToFormRecursive((_a = qrItem.item) !== null && _a !== void 0 ? _a : [], (_b = question.item) !== null && _b !== void 0 ? _b : []);
|
|
188
|
+
}),
|
|
189
|
+
} });
|
|
200
190
|
}
|
|
201
191
|
else {
|
|
202
|
-
return
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
192
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: {
|
|
193
|
+
question: text,
|
|
194
|
+
items: mapResponseToFormRecursive((_c = (_b = qrItems[0]) === null || _b === void 0 ? void 0 : _b.item) !== null && _c !== void 0 ? _c : [], (_d = question.item) !== null && _d !== void 0 ? _d : []),
|
|
195
|
+
} });
|
|
206
196
|
}
|
|
207
197
|
}
|
|
208
|
-
|
|
198
|
+
const answers = ((_f = (_e = qrItems === null || qrItems === void 0 ? void 0 : qrItems[0]) === null || _e === void 0 ? void 0 : _e.answer) === null || _f === void 0 ? void 0 : _f.length)
|
|
209
199
|
? qrItems[0].answer
|
|
210
200
|
: initialToQuestionnaireResponseItemAnswer(initial);
|
|
211
201
|
if (!answers.length) {
|
|
212
202
|
return acc;
|
|
213
203
|
}
|
|
214
|
-
return
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
204
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: answers.map((answer) => {
|
|
205
|
+
var _a, _b;
|
|
206
|
+
return ({
|
|
207
|
+
question: text,
|
|
208
|
+
value: answer.value,
|
|
209
|
+
items: mapResponseToFormRecursive((_a = answer.item) !== null && _a !== void 0 ? _a : [], (_b = question.item) !== null && _b !== void 0 ? _b : []),
|
|
210
|
+
});
|
|
211
|
+
}) });
|
|
222
212
|
}, {});
|
|
223
213
|
}
|
|
224
214
|
function mapResponseToForm(resource, questionnaire) {
|
|
@@ -227,21 +217,18 @@ function mapResponseToForm(resource, questionnaire) {
|
|
|
227
217
|
}
|
|
228
218
|
exports.mapResponseToForm = mapResponseToForm;
|
|
229
219
|
function initialToQuestionnaireResponseItemAnswer(initial) {
|
|
230
|
-
return (initial !== null && initial !== void 0 ? initial : []).map(
|
|
231
|
-
var value = _a.value;
|
|
232
|
-
return ({ value: value });
|
|
233
|
-
});
|
|
220
|
+
return (initial !== null && initial !== void 0 ? initial : []).map(({ value }) => ({ value }));
|
|
234
221
|
}
|
|
235
222
|
function findAnswersForQuestionsRecursive(linkId, values) {
|
|
236
223
|
if (values && lodash_1.default.has(values, linkId)) {
|
|
237
224
|
return values[linkId];
|
|
238
225
|
}
|
|
239
|
-
return lodash_1.default.reduce(values,
|
|
226
|
+
return lodash_1.default.reduce(values, (acc, v) => {
|
|
240
227
|
if (acc) {
|
|
241
228
|
return acc;
|
|
242
229
|
}
|
|
243
230
|
if (lodash_1.default.isArray(v)) {
|
|
244
|
-
return lodash_1.default.reduce(v,
|
|
231
|
+
return lodash_1.default.reduce(v, (acc2, v2) => {
|
|
245
232
|
if (acc2) {
|
|
246
233
|
return acc2;
|
|
247
234
|
}
|
|
@@ -249,7 +236,7 @@ function findAnswersForQuestionsRecursive(linkId, values) {
|
|
|
249
236
|
}, null);
|
|
250
237
|
}
|
|
251
238
|
else if (lodash_1.default.isArray(v.items)) {
|
|
252
|
-
return lodash_1.default.reduce(v.items,
|
|
239
|
+
return lodash_1.default.reduce(v.items, (acc2, v2) => {
|
|
253
240
|
if (acc2) {
|
|
254
241
|
return acc2;
|
|
255
242
|
}
|
|
@@ -263,28 +250,28 @@ function findAnswersForQuestionsRecursive(linkId, values) {
|
|
|
263
250
|
}
|
|
264
251
|
exports.findAnswersForQuestionsRecursive = findAnswersForQuestionsRecursive;
|
|
265
252
|
function findAnswersForQuestion(linkId, parentPath, values) {
|
|
266
|
-
|
|
253
|
+
const p = lodash_1.default.cloneDeep(parentPath);
|
|
267
254
|
// Go up
|
|
268
255
|
while (p.length) {
|
|
269
|
-
|
|
256
|
+
const part = p.pop();
|
|
270
257
|
// Find answers in parent groups (including repeatable)
|
|
271
258
|
// They might have either 'items' of the group or number of the repeatable group in path
|
|
272
259
|
if (part === 'items' || !isNaN(part)) {
|
|
273
|
-
|
|
260
|
+
const parentGroup = lodash_1.default.get(values, [...p, part]);
|
|
274
261
|
if (typeof parentGroup === 'object' && linkId in parentGroup) {
|
|
275
262
|
return parentGroup[linkId];
|
|
276
263
|
}
|
|
277
264
|
}
|
|
278
265
|
}
|
|
279
266
|
// Go down
|
|
280
|
-
|
|
267
|
+
const answers = findAnswersForQuestionsRecursive(linkId, values);
|
|
281
268
|
return answers ? answers : [];
|
|
282
269
|
}
|
|
283
270
|
exports.findAnswersForQuestion = findAnswersForQuestion;
|
|
284
271
|
function isValueEqual(firstValue, secondValue) {
|
|
285
272
|
var _a, _b;
|
|
286
|
-
|
|
287
|
-
|
|
273
|
+
const firstValueType = lodash_1.default.keys(firstValue)[0];
|
|
274
|
+
const secondValueType = lodash_1.default.keys(secondValue)[0];
|
|
288
275
|
if (firstValueType !== secondValueType) {
|
|
289
276
|
console.error('Enable when must be used for the same type');
|
|
290
277
|
return false;
|
|
@@ -298,81 +285,50 @@ function isValueEqual(firstValue, secondValue) {
|
|
|
298
285
|
exports.isValueEqual = isValueEqual;
|
|
299
286
|
function getChecker(operator) {
|
|
300
287
|
if (operator === '=') {
|
|
301
|
-
return
|
|
302
|
-
return lodash_1.default.findIndex(values, function (_a) {
|
|
303
|
-
var value = _a.value;
|
|
304
|
-
return isValueEqual(value, answerValue);
|
|
305
|
-
}) !== -1;
|
|
306
|
-
};
|
|
288
|
+
return (values, answerValue) => lodash_1.default.findIndex(values, ({ value }) => isValueEqual(value, answerValue)) !== -1;
|
|
307
289
|
}
|
|
308
290
|
if (operator === '!=') {
|
|
309
|
-
return
|
|
310
|
-
return lodash_1.default.findIndex(values, function (_a) {
|
|
311
|
-
var value = _a.value;
|
|
312
|
-
return isValueEqual(value, answerValue);
|
|
313
|
-
}) === -1;
|
|
314
|
-
};
|
|
291
|
+
return (values, answerValue) => lodash_1.default.findIndex(values, ({ value }) => isValueEqual(value, answerValue)) === -1;
|
|
315
292
|
}
|
|
316
293
|
if (operator === 'exists') {
|
|
317
|
-
return
|
|
294
|
+
return (values, answerValue) => {
|
|
318
295
|
var _a;
|
|
319
|
-
|
|
320
|
-
|
|
296
|
+
const answersLength = lodash_1.default.reject(values, (value) => lodash_1.default.isEmpty(value.value) || lodash_1.default.every(lodash_1.default.mapValues(value.value, lodash_1.default.isEmpty))).length;
|
|
297
|
+
const answer = (_a = answerValue === null || answerValue === void 0 ? void 0 : answerValue.boolean) !== null && _a !== void 0 ? _a : true;
|
|
321
298
|
return answersLength > 0 === answer;
|
|
322
299
|
};
|
|
323
300
|
}
|
|
324
301
|
if (operator === '>=') {
|
|
325
|
-
return
|
|
326
|
-
return lodash_1.default.findIndex(lodash_1.default.reject(values, function (value) { return lodash_1.default.isEmpty(value.value); }), function (_a) {
|
|
327
|
-
var value = _a.value;
|
|
328
|
-
return compareValue(value, answerValue) >= 0;
|
|
329
|
-
}) !== -1;
|
|
330
|
-
};
|
|
302
|
+
return (values, answerValue) => lodash_1.default.findIndex(lodash_1.default.reject(values, (value) => lodash_1.default.isEmpty(value.value)), ({ value }) => compareValue(value, answerValue) >= 0) !== -1;
|
|
331
303
|
}
|
|
332
304
|
if (operator === '>') {
|
|
333
|
-
return
|
|
334
|
-
return lodash_1.default.findIndex(lodash_1.default.reject(values, function (value) { return lodash_1.default.isEmpty(value.value); }), function (_a) {
|
|
335
|
-
var value = _a.value;
|
|
336
|
-
return compareValue(value, answerValue) > 0;
|
|
337
|
-
}) !== -1;
|
|
338
|
-
};
|
|
305
|
+
return (values, answerValue) => lodash_1.default.findIndex(lodash_1.default.reject(values, (value) => lodash_1.default.isEmpty(value.value)), ({ value }) => compareValue(value, answerValue) > 0) !== -1;
|
|
339
306
|
}
|
|
340
307
|
if (operator === '<=') {
|
|
341
|
-
return
|
|
342
|
-
return lodash_1.default.findIndex(lodash_1.default.reject(values, function (value) { return lodash_1.default.isEmpty(value.value); }), function (_a) {
|
|
343
|
-
var value = _a.value;
|
|
344
|
-
return compareValue(value, answerValue) <= 0;
|
|
345
|
-
}) !== -1;
|
|
346
|
-
};
|
|
308
|
+
return (values, answerValue) => lodash_1.default.findIndex(lodash_1.default.reject(values, (value) => lodash_1.default.isEmpty(value.value)), ({ value }) => compareValue(value, answerValue) <= 0) !== -1;
|
|
347
309
|
}
|
|
348
310
|
if (operator === '<') {
|
|
349
|
-
return
|
|
350
|
-
return lodash_1.default.findIndex(lodash_1.default.reject(values, function (value) { return lodash_1.default.isEmpty(value.value); }), function (_a) {
|
|
351
|
-
var value = _a.value;
|
|
352
|
-
return compareValue(value, answerValue) < 0;
|
|
353
|
-
}) !== -1;
|
|
354
|
-
};
|
|
311
|
+
return (values, answerValue) => lodash_1.default.findIndex(lodash_1.default.reject(values, (value) => lodash_1.default.isEmpty(value.value)), ({ value }) => compareValue(value, answerValue) < 0) !== -1;
|
|
355
312
|
}
|
|
356
|
-
console.error(
|
|
313
|
+
console.error(`Unsupported enableWhen.operator ${operator}`);
|
|
357
314
|
return lodash_1.default.constant(true);
|
|
358
315
|
}
|
|
359
316
|
exports.getChecker = getChecker;
|
|
360
317
|
function isQuestionEnabled(qItem, parentPath, values) {
|
|
361
|
-
|
|
318
|
+
const { enableWhen, enableBehavior } = qItem;
|
|
362
319
|
if (!enableWhen) {
|
|
363
320
|
return true;
|
|
364
321
|
}
|
|
365
|
-
|
|
366
|
-
return iterFn(enableWhen,
|
|
367
|
-
|
|
368
|
-
var check = getChecker(operator);
|
|
322
|
+
const iterFn = enableBehavior === 'any' ? lodash_1.default.some : lodash_1.default.every;
|
|
323
|
+
return iterFn(enableWhen, ({ question, answer, operator }) => {
|
|
324
|
+
const check = getChecker(operator);
|
|
369
325
|
if (lodash_1.default.includes(parentPath, question)) {
|
|
370
326
|
// TODO: handle double-nested values
|
|
371
|
-
|
|
372
|
-
|
|
327
|
+
const parentAnswerPath = lodash_1.default.slice(parentPath, 0, parentPath.length - 1);
|
|
328
|
+
const parentAnswer = lodash_1.default.get(values, parentAnswerPath);
|
|
373
329
|
return check(parentAnswer ? [parentAnswer] : [], answer);
|
|
374
330
|
}
|
|
375
|
-
|
|
331
|
+
const answers = findAnswersForQuestion(question, parentPath, values);
|
|
376
332
|
return check(lodash_1.default.compact(answers), answer);
|
|
377
333
|
});
|
|
378
334
|
}
|
|
@@ -381,12 +337,11 @@ function removeDisabledAnswers(questionnaireItems, values) {
|
|
|
381
337
|
}
|
|
382
338
|
exports.removeDisabledAnswers = removeDisabledAnswers;
|
|
383
339
|
function removeDisabledAnswersRecursive(questionnaireItems, parentPath, answersItems, initialValues) {
|
|
384
|
-
return questionnaireItems.reduce(
|
|
385
|
-
var _a
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
var answers = answersItems[linkId];
|
|
340
|
+
return questionnaireItems.reduce((acc, questionnaireItem) => {
|
|
341
|
+
var _a;
|
|
342
|
+
const values = parentPath.length ? lodash_1.default.set(lodash_1.default.cloneDeep(initialValues), parentPath, acc) : acc;
|
|
343
|
+
const { linkId } = questionnaireItem;
|
|
344
|
+
const answers = answersItems[linkId];
|
|
390
345
|
if (!answers) {
|
|
391
346
|
return acc;
|
|
392
347
|
}
|
|
@@ -398,33 +353,33 @@ function removeDisabledAnswersRecursive(questionnaireItems, parentPath, answersI
|
|
|
398
353
|
return acc;
|
|
399
354
|
}
|
|
400
355
|
if (isRepeatableFormGroupItems(questionnaireItem, answers)) {
|
|
401
|
-
return
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
356
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: Object.assign(Object.assign({}, answers), { items: answers.items.map((group, index) => {
|
|
357
|
+
var _a;
|
|
358
|
+
return removeDisabledAnswersRecursive((_a = questionnaireItem.item) !== null && _a !== void 0 ? _a : [], [...parentPath, linkId, 'items', index.toString()], group, values);
|
|
359
|
+
}) }) });
|
|
405
360
|
}
|
|
406
361
|
else {
|
|
407
|
-
return
|
|
362
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: Object.assign(Object.assign({}, answers), { items: removeDisabledAnswersRecursive((_a = questionnaireItem.item) !== null && _a !== void 0 ? _a : [], [...parentPath, linkId, 'items'], answers.items, values) }) });
|
|
408
363
|
}
|
|
409
364
|
}
|
|
410
|
-
return
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
365
|
+
return Object.assign(Object.assign({}, acc), { [linkId]: answers.reduce((answersAcc, answer, index) => {
|
|
366
|
+
var _a;
|
|
367
|
+
if (typeof answer === 'undefined') {
|
|
368
|
+
return answersAcc;
|
|
369
|
+
}
|
|
370
|
+
if (!answer.value) {
|
|
371
|
+
return answersAcc;
|
|
372
|
+
}
|
|
373
|
+
const items = hasSubAnswerItems(answer.items)
|
|
374
|
+
? removeDisabledAnswersRecursive((_a = questionnaireItem.item) !== null && _a !== void 0 ? _a : [], [...parentPath, linkId, index.toString(), 'items'], answer.items, values)
|
|
375
|
+
: {};
|
|
376
|
+
return [...answersAcc, Object.assign(Object.assign({}, answer), { items })];
|
|
377
|
+
}, []) });
|
|
423
378
|
}, {});
|
|
424
379
|
}
|
|
425
380
|
function getEnabledQuestions(questionnaireItems, parentPath, values) {
|
|
426
|
-
return lodash_1.default.filter(questionnaireItems,
|
|
427
|
-
|
|
381
|
+
return lodash_1.default.filter(questionnaireItems, (qItem) => {
|
|
382
|
+
const { linkId } = qItem;
|
|
428
383
|
if (!linkId) {
|
|
429
384
|
return false;
|
|
430
385
|
}
|
|
@@ -433,14 +388,10 @@ function getEnabledQuestions(questionnaireItems, parentPath, values) {
|
|
|
433
388
|
}
|
|
434
389
|
exports.getEnabledQuestions = getEnabledQuestions;
|
|
435
390
|
function calcInitialContext(qrfDataContext, values) {
|
|
436
|
-
|
|
437
|
-
return
|
|
438
|
-
var _b;
|
|
439
|
-
var name = _a.name, value = _a.value, resource = _a.resource;
|
|
440
|
-
return (tslib_1.__assign(tslib_1.__assign({}, acc), (_b = {}, _b[name] = value && (0, isPlainObject_1.default)(value)
|
|
391
|
+
const questionnaireResponse = Object.assign(Object.assign({}, qrfDataContext.questionnaireResponse), mapFormToResponse(values, qrfDataContext.questionnaire));
|
|
392
|
+
return Object.assign(Object.assign({}, qrfDataContext.launchContextParameters.reduce((acc, { name, value, resource }) => (Object.assign(Object.assign({}, acc), { [name]: value && (0, isPlainObject_1.default)(value)
|
|
441
393
|
? value[Object.keys(value)[0]]
|
|
442
|
-
: resource,
|
|
443
|
-
}, {})), {
|
|
394
|
+
: resource })), {})), {
|
|
444
395
|
// Vars defined in IG
|
|
445
396
|
questionnaire: qrfDataContext.questionnaire, resource: questionnaireResponse, context: questionnaireResponse,
|
|
446
397
|
// Vars we use for backward compatibility
|
|
@@ -448,11 +399,11 @@ function calcInitialContext(qrfDataContext, values) {
|
|
|
448
399
|
}
|
|
449
400
|
exports.calcInitialContext = calcInitialContext;
|
|
450
401
|
function resolveTemplateExpr(str, context) {
|
|
451
|
-
|
|
402
|
+
const matches = str.match(/{{[^}]+}}/g);
|
|
452
403
|
if (matches) {
|
|
453
|
-
return matches.reduce(
|
|
454
|
-
|
|
455
|
-
|
|
404
|
+
return matches.reduce((result, match) => {
|
|
405
|
+
const expr = match.replace(/[{}]/g, '');
|
|
406
|
+
const resolvedVar = fhirpath_1.default.evaluate(context.context || {}, expr, context);
|
|
456
407
|
if (resolvedVar === null || resolvedVar === void 0 ? void 0 : resolvedVar.length) {
|
|
457
408
|
return result.replace(match, resolvedVar.join(','));
|
|
458
409
|
}
|
|
@@ -464,16 +415,15 @@ function resolveTemplateExpr(str, context) {
|
|
|
464
415
|
return str;
|
|
465
416
|
}
|
|
466
417
|
function parseFhirQueryExpression(expression, context) {
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
var key = _a[0], value = _a[1];
|
|
418
|
+
const [resourceType, paramsQS] = expression.split('?', 2);
|
|
419
|
+
const searchParams = Object.fromEntries(Object.entries(query_string_1.default.parse(paramsQS !== null && paramsQS !== void 0 ? paramsQS : '')).map(([key, value]) => {
|
|
470
420
|
if (!value) {
|
|
471
421
|
return [key, value];
|
|
472
422
|
}
|
|
473
423
|
return [
|
|
474
424
|
key,
|
|
475
425
|
(0, isArray_1.default)(value)
|
|
476
|
-
? value.map(
|
|
426
|
+
? value.map((arrValue) => resolveTemplateExpr(arrValue, context))
|
|
477
427
|
: resolveTemplateExpr(value, context),
|
|
478
428
|
];
|
|
479
429
|
}));
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sdc-qrf",
|
|
3
|
-
"
|
|
3
|
+
"license": "MIT",
|
|
4
|
+
"version": "0.0.4",
|
|
4
5
|
"scripts": {
|
|
5
6
|
"build": "tsc",
|
|
6
7
|
"coverage": "jest --coverage --coverageReporters=text-lcov | coveralls",
|
|
@@ -19,20 +20,22 @@
|
|
|
19
20
|
"@babel/core": "^7.7.7",
|
|
20
21
|
"@babel/preset-env": "^7.7.7",
|
|
21
22
|
"@babel/preset-typescript": "^7.7.7",
|
|
22
|
-
"@testing-library/react": "^
|
|
23
|
-
"@testing-library/react-hooks": "^
|
|
23
|
+
"@testing-library/react": "^13.3.0",
|
|
24
|
+
"@testing-library/react-hooks": "^8.0.1",
|
|
24
25
|
"@types/jest": "^27.5.1",
|
|
25
26
|
"babel-jest": "^27.5.1",
|
|
26
27
|
"coveralls": "^3.0.9",
|
|
27
28
|
"jest": "^27.5.1",
|
|
28
29
|
"ts-jest": "^27.1.5",
|
|
29
|
-
"react": "^
|
|
30
|
-
"react-test-renderer": "^
|
|
30
|
+
"react": "^18.2.0",
|
|
31
|
+
"react-test-renderer": "^18.2.0",
|
|
31
32
|
"typescript": "^4.1.2"
|
|
32
33
|
},
|
|
33
34
|
"files": [
|
|
34
35
|
"lib/**/*",
|
|
35
|
-
"src/**/*"
|
|
36
|
+
"src/**/*",
|
|
37
|
+
"README.md",
|
|
38
|
+
"LICENSE"
|
|
36
39
|
],
|
|
37
40
|
"main": "./lib/index.js"
|
|
38
41
|
}
|