sdc-qrf 0.3.16 → 0.3.17
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 +2 -0
- package/{lib → dist}/components.d.ts +3 -4
- package/dist/components.d.ts.map +1 -0
- package/{lib → dist}/components.js +84 -44
- package/dist/components.js.map +1 -0
- package/{lib → dist}/context.d.ts +1 -0
- package/dist/context.d.ts.map +1 -0
- package/{lib → dist}/converter/extensions.d.ts +2 -1
- package/dist/converter/extensions.d.ts.map +1 -0
- package/{lib → dist}/converter/extensions.js +9 -13
- package/dist/converter/extensions.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/index.d.ts +2 -1
- package/dist/converter/fceToFhir/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/index.js +2 -3
- package/dist/converter/fceToFhir/index.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/index.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaire/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/index.js +6 -6
- package/dist/converter/fceToFhir/questionnaire/index.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processExtensions.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaire/processExtensions.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processExtensions.js +4 -7
- package/dist/converter/fceToFhir/questionnaire/processExtensions.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processItems.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaire/processItems.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processItems.js +19 -18
- package/dist/converter/fceToFhir/questionnaire/processItems.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processMeta.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaire/processMeta.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaire/processMeta.js +3 -6
- package/dist/converter/fceToFhir/questionnaire/processMeta.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/index.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaireResponse/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/index.js +5 -4
- package/dist/converter/fceToFhir/questionnaireResponse/index.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/processAnswers.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaireResponse/processAnswers.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/processAnswers.js +8 -7
- package/dist/converter/fceToFhir/questionnaireResponse/processAnswers.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/processMeta.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaireResponse/processMeta.d.ts.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/processMeta.js +2 -4
- package/dist/converter/fceToFhir/questionnaireResponse/processMeta.js.map +1 -0
- package/{lib → dist}/converter/fceToFhir/questionnaireResponse/processReference.d.ts +2 -1
- package/dist/converter/fceToFhir/questionnaireResponse/processReference.d.ts.map +1 -0
- package/dist/converter/fceToFhir/questionnaireResponse/processReference.js +30 -0
- package/dist/converter/fceToFhir/questionnaireResponse/processReference.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/index.d.ts +2 -1
- package/dist/converter/fhirToFce/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/index.js +2 -3
- package/dist/converter/fhirToFce/index.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/index.d.ts +2 -1
- package/dist/converter/fhirToFce/questionnaire/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/index.js +12 -6
- package/dist/converter/fhirToFce/questionnaire/index.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/processExtensions.d.ts +1 -0
- package/dist/converter/fhirToFce/questionnaire/processExtensions.d.ts.map +1 -0
- package/dist/converter/fhirToFce/questionnaire/processExtensions.js +79 -0
- package/dist/converter/fhirToFce/questionnaire/processExtensions.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/processItems.d.ts +2 -1
- package/dist/converter/fhirToFce/questionnaire/processItems.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/processItems.js +21 -17
- package/dist/converter/fhirToFce/questionnaire/processItems.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaire/processMeta.d.ts +1 -0
- package/dist/converter/fhirToFce/questionnaire/processMeta.d.ts.map +1 -0
- package/dist/converter/fhirToFce/questionnaire/processMeta.js +16 -0
- package/dist/converter/fhirToFce/questionnaire/processMeta.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/index.d.ts +2 -1
- package/dist/converter/fhirToFce/questionnaireResponse/index.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/index.js +5 -4
- package/dist/converter/fhirToFce/questionnaireResponse/index.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processAnswers.d.ts +1 -0
- package/dist/converter/fhirToFce/questionnaireResponse/processAnswers.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processAnswers.js +10 -10
- package/dist/converter/fhirToFce/questionnaireResponse/processAnswers.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processMeta.d.ts +2 -1
- package/dist/converter/fhirToFce/questionnaireResponse/processMeta.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processMeta.js +4 -6
- package/dist/converter/fhirToFce/questionnaireResponse/processMeta.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processReference.d.ts +2 -1
- package/dist/converter/fhirToFce/questionnaireResponse/processReference.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/questionnaireResponse/processReference.js +5 -7
- package/dist/converter/fhirToFce/questionnaireResponse/processReference.js.map +1 -0
- package/{lib → dist}/converter/fhirToFce/utils.d.ts +1 -0
- package/dist/converter/fhirToFce/utils.d.ts.map +1 -0
- package/{lib → dist}/converter/fhirToFce/utils.js +5 -7
- package/dist/converter/fhirToFce/utils.js.map +1 -0
- package/{lib → dist}/converter/index.d.ts +2 -1
- package/dist/converter/index.d.ts.map +1 -0
- package/{lib → dist}/converter/index.js +40 -18
- package/dist/converter/index.js.map +1 -0
- package/{lib → dist}/converter/utils.d.ts +1 -0
- package/dist/converter/utils.d.ts.map +1 -0
- package/{lib → dist}/converter/utils.js +5 -4
- package/dist/converter/utils.js.map +1 -0
- package/{lib → dist}/hooks.d.ts +1 -0
- package/dist/hooks.d.ts.map +1 -0
- package/{lib → dist}/hooks.js +1 -2
- package/dist/hooks.js.map +1 -0
- package/{lib → dist}/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/{lib → dist}/types.d.ts +2 -1
- package/dist/types.d.ts.map +1 -0
- package/{lib → dist}/utils.d.ts +3 -2
- package/dist/utils.d.ts.map +1 -0
- package/{lib → dist}/utils.js +121 -100
- package/dist/utils.js.map +1 -0
- package/package.json +47 -38
- package/src/components.tsx +27 -98
- package/src/converter/__tests__/fce.test.ts +2 -1
- package/src/converter/extensions.ts +10 -19
- package/src/converter/fceToFhir/index.ts +1 -1
- package/src/converter/fceToFhir/questionnaire/index.ts +1 -1
- package/src/converter/fceToFhir/questionnaire/processExtensions.ts +1 -1
- package/src/converter/fceToFhir/questionnaire/processItems.ts +9 -24
- package/src/converter/fceToFhir/questionnaire/processMeta.ts +1 -1
- package/src/converter/fceToFhir/questionnaireResponse/index.ts +1 -1
- package/src/converter/fceToFhir/questionnaireResponse/processAnswers.ts +4 -6
- package/src/converter/fceToFhir/questionnaireResponse/processMeta.ts +1 -1
- package/src/converter/fceToFhir/questionnaireResponse/processReference.ts +1 -1
- package/src/converter/fhirToFce/index.ts +1 -1
- package/src/converter/fhirToFce/questionnaire/index.ts +1 -1
- package/src/converter/fhirToFce/questionnaire/processItems.ts +1 -1
- package/src/converter/fhirToFce/questionnaireResponse/index.ts +1 -1
- package/src/converter/fhirToFce/questionnaireResponse/processAnswers.ts +5 -7
- package/src/converter/fhirToFce/questionnaireResponse/processMeta.ts +1 -1
- package/src/converter/fhirToFce/questionnaireResponse/processReference.ts +1 -1
- package/src/converter/index.ts +1 -1
- package/src/setupTests.ts +1 -1
- package/src/types.ts +1 -1
- package/src/utils.ts +23 -55
- package/lib/components.js.map +0 -1
- package/lib/converter/extensions.js.map +0 -1
- package/lib/converter/fceToFhir/index.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaire/index.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaire/processExtensions.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaire/processItems.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaire/processMeta.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaireResponse/index.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaireResponse/processAnswers.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaireResponse/processMeta.js.map +0 -1
- package/lib/converter/fceToFhir/questionnaireResponse/processReference.js +0 -23
- package/lib/converter/fceToFhir/questionnaireResponse/processReference.js.map +0 -1
- package/lib/converter/fhirToFce/index.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaire/index.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaire/processExtensions.js +0 -90
- package/lib/converter/fhirToFce/questionnaire/processExtensions.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaire/processItems.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaire/processMeta.js +0 -14
- package/lib/converter/fhirToFce/questionnaire/processMeta.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaireResponse/index.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaireResponse/processAnswers.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaireResponse/processMeta.js.map +0 -1
- package/lib/converter/fhirToFce/questionnaireResponse/processReference.js.map +0 -1
- package/lib/converter/fhirToFce/utils.js.map +0 -1
- package/lib/converter/index.js.map +0 -1
- package/lib/converter/utils.js.map +0 -1
- package/lib/hooks.js.map +0 -1
- package/lib/index.js +0 -9
- package/lib/index.js.map +0 -1
- package/lib/setupTests.d.ts +0 -1
- package/lib/setupTests.js +0 -4
- package/lib/setupTests.js.map +0 -1
- package/lib/utils.js.map +0 -1
- /package/{lib → dist}/context.js +0 -0
- /package/{lib → dist}/context.js.map +0 -0
- /package/{lib → dist}/types.js +0 -0
- /package/{lib → dist}/types.js.map +0 -0
package/{lib → dist}/utils.js
RENAMED
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
exports.wrapAnswerValue = wrapAnswerValue;
|
|
7
|
+
exports.getBranchItems = getBranchItems;
|
|
8
|
+
exports.calcContext = calcContext;
|
|
9
|
+
exports.compareValue = compareValue;
|
|
10
|
+
exports.mapFormToResponse = mapFormToResponse;
|
|
11
|
+
exports.mapResponseToForm = mapResponseToForm;
|
|
12
|
+
exports.findAnswersForQuestionsRecursive = findAnswersForQuestionsRecursive;
|
|
13
|
+
exports.findAnswersForQuestion = findAnswersForQuestion;
|
|
14
|
+
exports.isValueEqual = isValueEqual;
|
|
15
|
+
exports.getChecker = getChecker;
|
|
16
|
+
exports.removeDisabledAnswers = removeDisabledAnswers;
|
|
17
|
+
exports.getEnabledQuestions = getEnabledQuestions;
|
|
18
|
+
exports.calcInitialContext = calcInitialContext;
|
|
19
|
+
exports.parseFhirQueryExpression = parseFhirQueryExpression;
|
|
20
|
+
exports.isValueEmpty = isValueEmpty;
|
|
21
|
+
exports.findExtensionByUrl = findExtensionByUrl;
|
|
22
|
+
const fhirpath_1 = __importDefault(require("fhirpath"));
|
|
23
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
24
|
+
const isArray_1 = __importDefault(require("lodash/isArray"));
|
|
25
|
+
const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
|
|
26
|
+
const query_string_1 = __importDefault(require("query-string"));
|
|
10
27
|
function wrapAnswerValue(type, answer) {
|
|
11
28
|
if (type === 'choice') {
|
|
12
29
|
if ((0, isPlainObject_1.default)(answer)) {
|
|
@@ -38,9 +55,7 @@ function wrapAnswerValue(type, answer) {
|
|
|
38
55
|
}
|
|
39
56
|
return { [type]: answer };
|
|
40
57
|
}
|
|
41
|
-
exports.wrapAnswerValue = wrapAnswerValue;
|
|
42
58
|
function getBranchItems(fieldPath, questionnaire, questionnaireResponse) {
|
|
43
|
-
var _a, _b;
|
|
44
59
|
let qrItem = questionnaireResponse;
|
|
45
60
|
let qItem = questionnaire;
|
|
46
61
|
// TODO: check for question with sub items
|
|
@@ -48,7 +63,7 @@ function getBranchItems(fieldPath, questionnaire, questionnaireResponse) {
|
|
|
48
63
|
for (let i = 0; i < fieldPath.length; i++) {
|
|
49
64
|
qItem = qItem.item.find((curItem) => curItem.linkId === fieldPath[i]);
|
|
50
65
|
if (qrItem) {
|
|
51
|
-
const qrItems =
|
|
66
|
+
const qrItems = qrItem.item?.filter((curItem) => curItem.linkId === fieldPath[i]) ?? [];
|
|
52
67
|
if (qItem.repeats) {
|
|
53
68
|
if (i + 2 < fieldPath.length) {
|
|
54
69
|
// In the middle
|
|
@@ -72,17 +87,22 @@ function getBranchItems(fieldPath, questionnaire, questionnaireResponse) {
|
|
|
72
87
|
}
|
|
73
88
|
return { qItem, qrItems: [qrItem] };
|
|
74
89
|
}
|
|
75
|
-
exports.getBranchItems = getBranchItems;
|
|
76
90
|
function calcContext(initialContext, variables, qItem, qrItem) {
|
|
77
91
|
// TODO: add root variable support
|
|
78
92
|
try {
|
|
79
|
-
return
|
|
93
|
+
return {
|
|
94
|
+
...(variables || []).reduce((acc, curVariable) => ({
|
|
95
|
+
...acc,
|
|
96
|
+
[curVariable.name]: fhirpath_1.default.evaluate(qrItem || {}, curVariable.expression, acc, undefined, {
|
|
97
|
+
async: false,
|
|
98
|
+
}),
|
|
99
|
+
}), { ...initialContext, context: qrItem, qitem: qItem }),
|
|
100
|
+
};
|
|
80
101
|
}
|
|
81
102
|
catch (err) {
|
|
82
103
|
throw Error(`FHIRPath expression evaluation failure for "variable" in ${qItem.linkId}: ${err}`);
|
|
83
104
|
}
|
|
84
105
|
}
|
|
85
|
-
exports.calcContext = calcContext;
|
|
86
106
|
function compareValue(firstAnswerValue, secondAnswerValue) {
|
|
87
107
|
const firstValueType = lodash_1.default.keys(firstAnswerValue)[0];
|
|
88
108
|
const secondValueType = lodash_1.default.keys(secondAnswerValue)[0];
|
|
@@ -105,7 +125,6 @@ function compareValue(firstAnswerValue, secondAnswerValue) {
|
|
|
105
125
|
}
|
|
106
126
|
return 0;
|
|
107
127
|
}
|
|
108
|
-
exports.compareValue = compareValue;
|
|
109
128
|
function isGroup(question) {
|
|
110
129
|
return question.type === 'group';
|
|
111
130
|
}
|
|
@@ -138,11 +157,13 @@ function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
|
138
157
|
? [answers.items]
|
|
139
158
|
: [];
|
|
140
159
|
return groups.reduce((newAcc, group) => {
|
|
141
|
-
|
|
142
|
-
const items = mapFormToResponseRecursive(group, (_a = question.item) !== null && _a !== void 0 ? _a : []);
|
|
160
|
+
const items = mapFormToResponseRecursive(group, question.item ?? []);
|
|
143
161
|
return [
|
|
144
162
|
...newAcc,
|
|
145
|
-
|
|
163
|
+
{
|
|
164
|
+
linkId,
|
|
165
|
+
...(items.length ? { item: items } : {}),
|
|
166
|
+
},
|
|
146
167
|
];
|
|
147
168
|
}, acc);
|
|
148
169
|
}
|
|
@@ -151,7 +172,6 @@ function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
|
151
172
|
{
|
|
152
173
|
linkId,
|
|
153
174
|
answer: answers.reduce((answersAcc, answer) => {
|
|
154
|
-
var _a;
|
|
155
175
|
if (typeof answer === 'undefined') {
|
|
156
176
|
return answersAcc;
|
|
157
177
|
}
|
|
@@ -159,11 +179,14 @@ function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
|
159
179
|
return answersAcc;
|
|
160
180
|
}
|
|
161
181
|
const items = hasSubAnswerItems(answer.items)
|
|
162
|
-
? mapFormToResponseRecursive(answer.items,
|
|
182
|
+
? mapFormToResponseRecursive(answer.items, question.item ?? [])
|
|
163
183
|
: [];
|
|
164
184
|
return [
|
|
165
185
|
...answersAcc,
|
|
166
|
-
|
|
186
|
+
{
|
|
187
|
+
value: answer.value,
|
|
188
|
+
...(items.length ? { item: items } : {}),
|
|
189
|
+
},
|
|
167
190
|
];
|
|
168
191
|
}, []),
|
|
169
192
|
},
|
|
@@ -171,61 +194,61 @@ function mapFormToResponseRecursive(answersItems, questionnaireItems) {
|
|
|
171
194
|
}, []);
|
|
172
195
|
}
|
|
173
196
|
function mapFormToResponse(values, questionnaire) {
|
|
174
|
-
var _a;
|
|
175
197
|
return {
|
|
176
|
-
item: mapFormToResponseRecursive(values,
|
|
198
|
+
item: mapFormToResponseRecursive(values, questionnaire.item ?? []),
|
|
177
199
|
};
|
|
178
200
|
}
|
|
179
|
-
exports.mapFormToResponse = mapFormToResponse;
|
|
180
201
|
function mapResponseToFormRecursive(questionnaireResponseItems, questionnaireItems) {
|
|
181
202
|
return questionnaireItems.reduce((acc, question) => {
|
|
182
|
-
var _a, _b, _c, _d, _e, _f;
|
|
183
203
|
const { linkId, initial, repeats, text } = question;
|
|
184
204
|
if (!linkId) {
|
|
185
205
|
console.warn('The question has no linkId');
|
|
186
206
|
return acc;
|
|
187
207
|
}
|
|
188
|
-
const qrItems =
|
|
208
|
+
const qrItems = questionnaireResponseItems.filter((qrItem) => qrItem.linkId === linkId) ?? [];
|
|
189
209
|
if (qrItems.length && isGroup(question)) {
|
|
190
210
|
if (repeats) {
|
|
191
|
-
return
|
|
211
|
+
return {
|
|
212
|
+
...acc,
|
|
213
|
+
[linkId]: {
|
|
192
214
|
question: text,
|
|
193
215
|
items: qrItems.map((qrItem) => {
|
|
194
|
-
|
|
195
|
-
return mapResponseToFormRecursive((_a = qrItem.item) !== null && _a !== void 0 ? _a : [], (_b = question.item) !== null && _b !== void 0 ? _b : []);
|
|
216
|
+
return mapResponseToFormRecursive(qrItem.item ?? [], question.item ?? []);
|
|
196
217
|
}),
|
|
197
|
-
}
|
|
218
|
+
},
|
|
219
|
+
};
|
|
198
220
|
}
|
|
199
221
|
else {
|
|
200
|
-
return
|
|
222
|
+
return {
|
|
223
|
+
...acc,
|
|
224
|
+
[linkId]: {
|
|
201
225
|
question: text,
|
|
202
|
-
items: mapResponseToFormRecursive(
|
|
203
|
-
}
|
|
226
|
+
items: mapResponseToFormRecursive(qrItems[0]?.item ?? [], question.item ?? []),
|
|
227
|
+
},
|
|
228
|
+
};
|
|
204
229
|
}
|
|
205
230
|
}
|
|
206
|
-
const answers =
|
|
231
|
+
const answers = qrItems?.[0]?.answer?.length
|
|
207
232
|
? qrItems[0].answer
|
|
208
233
|
: initialToQuestionnaireResponseItemAnswer(initial);
|
|
209
234
|
if (!answers.length) {
|
|
210
235
|
return acc;
|
|
211
236
|
}
|
|
212
|
-
return
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
237
|
+
return {
|
|
238
|
+
...acc,
|
|
239
|
+
[linkId]: answers.map((answer) => ({
|
|
240
|
+
question: text,
|
|
241
|
+
value: answer.value,
|
|
242
|
+
items: mapResponseToFormRecursive(answer.item ?? [], question.item ?? []),
|
|
243
|
+
})),
|
|
244
|
+
};
|
|
220
245
|
}, {});
|
|
221
246
|
}
|
|
222
247
|
function mapResponseToForm(resource, questionnaire) {
|
|
223
|
-
|
|
224
|
-
return mapResponseToFormRecursive((_a = resource.item) !== null && _a !== void 0 ? _a : [], (_b = questionnaire.item) !== null && _b !== void 0 ? _b : []);
|
|
248
|
+
return mapResponseToFormRecursive(resource.item ?? [], questionnaire.item ?? []);
|
|
225
249
|
}
|
|
226
|
-
exports.mapResponseToForm = mapResponseToForm;
|
|
227
250
|
function initialToQuestionnaireResponseItemAnswer(initial) {
|
|
228
|
-
return (initial
|
|
251
|
+
return (initial ?? []).map(({ value }) => ({ value }));
|
|
229
252
|
}
|
|
230
253
|
function findAnswersForQuestionsRecursive(linkId, values) {
|
|
231
254
|
if (values && lodash_1.default.has(values, linkId)) {
|
|
@@ -259,7 +282,6 @@ function findAnswersForQuestionsRecursive(linkId, values) {
|
|
|
259
282
|
}
|
|
260
283
|
}, null);
|
|
261
284
|
}
|
|
262
|
-
exports.findAnswersForQuestionsRecursive = findAnswersForQuestionsRecursive;
|
|
263
285
|
function findAnswersForQuestion(linkId, parentPath, values) {
|
|
264
286
|
const p = lodash_1.default.cloneDeep(parentPath);
|
|
265
287
|
// Go up
|
|
@@ -278,9 +300,7 @@ function findAnswersForQuestion(linkId, parentPath, values) {
|
|
|
278
300
|
const answers = findAnswersForQuestionsRecursive(linkId, values);
|
|
279
301
|
return answers ? answers : [];
|
|
280
302
|
}
|
|
281
|
-
exports.findAnswersForQuestion = findAnswersForQuestion;
|
|
282
303
|
function isValueEqual(firstValue, secondValue) {
|
|
283
|
-
var _a, _b;
|
|
284
304
|
const firstValueType = lodash_1.default.keys(firstValue)[0];
|
|
285
305
|
const secondValueType = lodash_1.default.keys(secondValue)[0];
|
|
286
306
|
if (firstValueType !== secondValueType) {
|
|
@@ -289,11 +309,10 @@ function isValueEqual(firstValue, secondValue) {
|
|
|
289
309
|
}
|
|
290
310
|
if (firstValueType === 'Coding') {
|
|
291
311
|
// NOTE: what if undefined === undefined
|
|
292
|
-
return
|
|
312
|
+
return firstValue.Coding?.code === secondValue.Coding?.code;
|
|
293
313
|
}
|
|
294
314
|
return lodash_1.default.isEqual(firstValue, secondValue);
|
|
295
315
|
}
|
|
296
|
-
exports.isValueEqual = isValueEqual;
|
|
297
316
|
function getChecker(operator) {
|
|
298
317
|
if (operator === '=') {
|
|
299
318
|
return (values, answerValue) => lodash_1.default.findIndex(values, ({ value }) => isValueEqual(value, answerValue)) !== -1;
|
|
@@ -303,9 +322,8 @@ function getChecker(operator) {
|
|
|
303
322
|
}
|
|
304
323
|
if (operator === 'exists') {
|
|
305
324
|
return (values, answerValue) => {
|
|
306
|
-
var _a;
|
|
307
325
|
const answersLength = lodash_1.default.reject(values, (value) => isValueEmpty(value.value) || lodash_1.default.every(lodash_1.default.mapValues(value.value, isValueEmpty))).length;
|
|
308
|
-
const answer =
|
|
326
|
+
const answer = answerValue?.boolean ?? true;
|
|
309
327
|
return answersLength > 0 === answer;
|
|
310
328
|
};
|
|
311
329
|
}
|
|
@@ -324,9 +342,7 @@ function getChecker(operator) {
|
|
|
324
342
|
console.error(`Unsupported enableWhen.operator ${operator}`);
|
|
325
343
|
return lodash_1.default.constant(true);
|
|
326
344
|
}
|
|
327
|
-
exports.getChecker = getChecker;
|
|
328
345
|
function isQuestionEnabled(args) {
|
|
329
|
-
var _a;
|
|
330
346
|
const { enableWhen, enableBehavior, enableWhenExpression } = args.qItem;
|
|
331
347
|
if (enableWhen && enableWhenExpression) {
|
|
332
348
|
console.warn(`
|
|
@@ -341,7 +357,7 @@ function isQuestionEnabled(args) {
|
|
|
341
357
|
}
|
|
342
358
|
if (enableWhenExpression && enableWhenExpression.language === 'text/fhirpath') {
|
|
343
359
|
try {
|
|
344
|
-
const expressionResult = fhirpath_1.default.evaluate(args.context.resource, enableWhenExpression.expression,
|
|
360
|
+
const expressionResult = fhirpath_1.default.evaluate(args.context.resource, enableWhenExpression.expression, args.context ?? {}, undefined, { async: false })[0];
|
|
345
361
|
if (typeof expressionResult !== 'boolean') {
|
|
346
362
|
throw Error(`The result of enableWhenExpression is not a boolean value. Expression result: ${expressionResult}`);
|
|
347
363
|
}
|
|
@@ -365,22 +381,17 @@ function isQuestionEnabled(args) {
|
|
|
365
381
|
});
|
|
366
382
|
}
|
|
367
383
|
function removeDisabledAnswers(questionnaire, values, context) {
|
|
368
|
-
var _a;
|
|
369
384
|
return removeDisabledAnswersRecursive({
|
|
370
|
-
questionnaireItems:
|
|
385
|
+
questionnaireItems: questionnaire.item ?? [],
|
|
371
386
|
parentPath: [],
|
|
372
387
|
answersItems: values,
|
|
373
388
|
initialValues: {},
|
|
374
389
|
context,
|
|
375
390
|
});
|
|
376
391
|
}
|
|
377
|
-
exports.removeDisabledAnswers = removeDisabledAnswers;
|
|
378
392
|
function removeDisabledAnswersRecursive(args) {
|
|
379
393
|
return args.questionnaireItems.reduce((acc, questionnaireItem) => {
|
|
380
|
-
|
|
381
|
-
const values = args.parentPath.length
|
|
382
|
-
? lodash_1.default.set(lodash_1.default.cloneDeep(args.initialValues), args.parentPath, acc)
|
|
383
|
-
: acc;
|
|
394
|
+
const values = args.parentPath.length ? lodash_1.default.set(lodash_1.default.cloneDeep(args.initialValues), args.parentPath, acc) : acc;
|
|
384
395
|
const { linkId } = questionnaireItem;
|
|
385
396
|
const answers = args.answersItems[linkId];
|
|
386
397
|
if (!answers) {
|
|
@@ -399,34 +410,39 @@ function removeDisabledAnswersRecursive(args) {
|
|
|
399
410
|
return acc;
|
|
400
411
|
}
|
|
401
412
|
if (isRepeatableFormGroupItems(questionnaireItem, answers)) {
|
|
402
|
-
return
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
});
|
|
416
|
-
}) }) });
|
|
413
|
+
return {
|
|
414
|
+
...acc,
|
|
415
|
+
[linkId]: {
|
|
416
|
+
...answers,
|
|
417
|
+
items: answers.items.map((group, index) => removeDisabledAnswersRecursive({
|
|
418
|
+
questionnaireItems: questionnaireItem.item ?? [],
|
|
419
|
+
parentPath: [...args.parentPath, linkId, 'items', index.toString()],
|
|
420
|
+
answersItems: group,
|
|
421
|
+
initialValues: values,
|
|
422
|
+
context: args.context,
|
|
423
|
+
})),
|
|
424
|
+
},
|
|
425
|
+
};
|
|
417
426
|
}
|
|
418
427
|
else {
|
|
419
|
-
return
|
|
420
|
-
|
|
428
|
+
return {
|
|
429
|
+
...acc,
|
|
430
|
+
[linkId]: {
|
|
431
|
+
...answers,
|
|
432
|
+
items: removeDisabledAnswersRecursive({
|
|
433
|
+
questionnaireItems: questionnaireItem.item ?? [],
|
|
421
434
|
parentPath: [...args.parentPath, linkId, 'items'],
|
|
422
435
|
answersItems: answers.items,
|
|
423
436
|
initialValues: values,
|
|
424
437
|
context: args.context,
|
|
425
|
-
})
|
|
438
|
+
}),
|
|
439
|
+
},
|
|
440
|
+
};
|
|
426
441
|
}
|
|
427
442
|
}
|
|
428
|
-
return
|
|
429
|
-
|
|
443
|
+
return {
|
|
444
|
+
...acc,
|
|
445
|
+
[linkId]: answers.reduce((answersAcc, answer, index) => {
|
|
430
446
|
if (typeof answer === 'undefined') {
|
|
431
447
|
return answersAcc;
|
|
432
448
|
}
|
|
@@ -435,15 +451,16 @@ function removeDisabledAnswersRecursive(args) {
|
|
|
435
451
|
}
|
|
436
452
|
const items = hasSubAnswerItems(answer.items)
|
|
437
453
|
? removeDisabledAnswersRecursive({
|
|
438
|
-
questionnaireItems:
|
|
454
|
+
questionnaireItems: questionnaireItem.item ?? [],
|
|
439
455
|
parentPath: [...args.parentPath, linkId, index.toString(), 'items'],
|
|
440
456
|
answersItems: answer.items,
|
|
441
457
|
initialValues: values,
|
|
442
458
|
context: args.context,
|
|
443
459
|
})
|
|
444
460
|
: {};
|
|
445
|
-
return [...answersAcc,
|
|
446
|
-
}, [])
|
|
461
|
+
return [...answersAcc, { ...answer, items }];
|
|
462
|
+
}, []),
|
|
463
|
+
};
|
|
447
464
|
}, {});
|
|
448
465
|
}
|
|
449
466
|
function getEnabledQuestions(questionnaireItems, parentPath, values, context) {
|
|
@@ -455,25 +472,32 @@ function getEnabledQuestions(questionnaireItems, parentPath, values, context) {
|
|
|
455
472
|
return isQuestionEnabled({ qItem, parentPath, values, context });
|
|
456
473
|
});
|
|
457
474
|
}
|
|
458
|
-
exports.getEnabledQuestions = getEnabledQuestions;
|
|
459
475
|
function calcInitialContext(qrfDataContext, values) {
|
|
460
|
-
const questionnaireResponse =
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
476
|
+
const questionnaireResponse = {
|
|
477
|
+
...qrfDataContext.questionnaireResponse,
|
|
478
|
+
...mapFormToResponse(values, qrfDataContext.questionnaire),
|
|
479
|
+
};
|
|
480
|
+
return {
|
|
481
|
+
...qrfDataContext.launchContextParameters.reduce((acc, { name, value, resource }) => ({
|
|
482
|
+
...acc,
|
|
483
|
+
[name]: value && (0, isPlainObject_1.default)(value) ? value[Object.keys(value)[0]] : resource,
|
|
484
|
+
}), {}),
|
|
464
485
|
// Vars defined in IG
|
|
465
|
-
questionnaire: qrfDataContext.questionnaire,
|
|
486
|
+
questionnaire: qrfDataContext.questionnaire,
|
|
487
|
+
resource: questionnaireResponse,
|
|
488
|
+
context: questionnaireResponse,
|
|
466
489
|
// Vars we use for backward compatibility
|
|
467
|
-
Questionnaire: qrfDataContext.questionnaire,
|
|
490
|
+
Questionnaire: qrfDataContext.questionnaire,
|
|
491
|
+
QuestionnaireResponse: questionnaireResponse,
|
|
492
|
+
};
|
|
468
493
|
}
|
|
469
|
-
exports.calcInitialContext = calcInitialContext;
|
|
470
494
|
function resolveTemplateExpr(str, context) {
|
|
471
495
|
const matches = str.match(/{{[^}]+}}/g);
|
|
472
496
|
if (matches) {
|
|
473
497
|
return matches.reduce((result, match) => {
|
|
474
498
|
const expr = match.replace(/[{}]/g, '');
|
|
475
|
-
const resolvedVar = fhirpath_1.default.evaluate(context.context || {}, expr, context);
|
|
476
|
-
if (resolvedVar
|
|
499
|
+
const resolvedVar = fhirpath_1.default.evaluate(context.context || {}, expr, context, undefined, { async: false });
|
|
500
|
+
if (resolvedVar?.length) {
|
|
477
501
|
return result.replace(match, resolvedVar.join(','));
|
|
478
502
|
}
|
|
479
503
|
else {
|
|
@@ -485,7 +509,7 @@ function resolveTemplateExpr(str, context) {
|
|
|
485
509
|
}
|
|
486
510
|
function parseFhirQueryExpression(expression, context) {
|
|
487
511
|
const [resourceType, paramsQS] = expression.split('?', 2);
|
|
488
|
-
const searchParams = Object.fromEntries(Object.entries(query_string_1.default.parse(paramsQS
|
|
512
|
+
const searchParams = Object.fromEntries(Object.entries(query_string_1.default.parse(paramsQS ?? '')).map(([key, value]) => {
|
|
489
513
|
if (!value) {
|
|
490
514
|
return [key, value];
|
|
491
515
|
}
|
|
@@ -498,16 +522,13 @@ function parseFhirQueryExpression(expression, context) {
|
|
|
498
522
|
}));
|
|
499
523
|
return [resourceType, searchParams];
|
|
500
524
|
}
|
|
501
|
-
exports.parseFhirQueryExpression = parseFhirQueryExpression;
|
|
502
525
|
function isValueEmpty(value) {
|
|
503
526
|
if (lodash_1.default.isNaN(value)) {
|
|
504
527
|
console.warn('Please be aware that a NaN value has been detected. In the context of an "exist" operator, a NaN value is interpreted as a non-existent value. This may lead to unexpected behavior in your code. Ensure to handle or correct this to maintain the integrity of your application.');
|
|
505
528
|
}
|
|
506
529
|
return lodash_1.default.isFinite(value) || lodash_1.default.isBoolean(value) ? false : lodash_1.default.isEmpty(value);
|
|
507
530
|
}
|
|
508
|
-
exports.isValueEmpty = isValueEmpty;
|
|
509
531
|
function findExtensionByUrl(url, extensionList) {
|
|
510
|
-
return
|
|
532
|
+
return extensionList?.find((extension) => extension.url === url) || null;
|
|
511
533
|
}
|
|
512
|
-
exports.findExtensionByUrl = findExtensionByUrl;
|
|
513
534
|
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,40 +1,49 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
2
|
+
"name": "sdc-qrf",
|
|
3
|
+
"license": "MIT",
|
|
4
|
+
"version": "0.3.17",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"test": "vitest --watch=false",
|
|
7
|
+
"test:watch": "vitest --watch",
|
|
8
|
+
"test:coverage": "vitest --coverage",
|
|
9
|
+
"typecheck": "tsc --noEmit",
|
|
10
|
+
"build": "tsc",
|
|
11
|
+
"prepare": "husky || true"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"classnames": "^2.5.1",
|
|
15
|
+
"fhirpath": "^3.18.0",
|
|
16
|
+
"lodash": "^4.17.21",
|
|
17
|
+
"query-string": "^9.1.1"
|
|
18
|
+
},
|
|
19
|
+
"devDependencies": {
|
|
20
|
+
"@babel/core": "^7.26.10",
|
|
21
|
+
"@babel/preset-env": "^7.26.9",
|
|
22
|
+
"@babel/preset-typescript": "^7.26.0",
|
|
23
|
+
"@beda.software/aidbox-types": "file:contrib/aidbox-types",
|
|
24
|
+
"@eslint/js": "^9.23.0",
|
|
25
|
+
"@types/fhir": "^0.0.41",
|
|
26
|
+
"@types/lodash": "^4.17.16",
|
|
27
|
+
"@types/react": "^18",
|
|
28
|
+
"@vitest/coverage-v8": "^3.0.9",
|
|
29
|
+
"eslint": "^9.23.0",
|
|
30
|
+
"eslint-config-prettier": "^10.1.1",
|
|
31
|
+
"husky": "^9.1.7",
|
|
32
|
+
"lint-staged": "^15.5.0",
|
|
33
|
+
"prettier": "3.5.3",
|
|
34
|
+
"tslib": "^2.8.0",
|
|
35
|
+
"typescript": "^5.8.2",
|
|
36
|
+
"typescript-eslint": "^8.28.0",
|
|
37
|
+
"vitest": "^3.0.9"
|
|
38
|
+
},
|
|
39
|
+
"peerDependencies": {
|
|
40
|
+
"react": "18.x"
|
|
41
|
+
},
|
|
42
|
+
"files": [
|
|
43
|
+
"dist/**/*",
|
|
44
|
+
"src/**/*",
|
|
45
|
+
"README.md",
|
|
46
|
+
"LICENSE"
|
|
47
|
+
],
|
|
48
|
+
"main": "./dist/index.js"
|
|
40
49
|
}
|