@aehrc/smart-forms-renderer 0.26.2 → 0.27.0
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/.storybook/main.ts +1 -2
- package/.storybook/preview.ts +1 -1
- package/lib/components/FormComponents/ChoiceItems/CheckboxFields.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxFields.js +41 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxFields.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionFields.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionFields.js +41 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionFields.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionList.d.ts +10 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionList.js +36 -0
- package/lib/components/FormComponents/ChoiceItems/CheckboxOptionList.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetView.d.ts +13 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetView.js +46 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetView.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxFields.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxFields.js +41 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxFields.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxFields.d.ts +16 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxFields.js +32 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxFields.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js.map +1 -1
- package/lib/components/StoryWrappers/BuildFormWrapper.d.ts +7 -0
- package/{src/stories/BaseRenderer.stories.tsx → lib/components/StoryWrappers/BuildFormWrapper.js} +24 -45
- package/lib/components/StoryWrappers/BuildFormWrapper.js.map +1 -0
- package/lib/hooks/useOpenLabel.d.ts +8 -0
- package/lib/hooks/useOpenLabel.js +34 -0
- package/lib/hooks/useOpenLabel.js.map +1 -0
- package/lib/hooks/useValueSetCodings.js +22 -6
- package/lib/hooks/useValueSetCodings.js.map +1 -1
- package/lib/interfaces/lookup.interface.d.ts +6 -0
- package/lib/interfaces/lookup.interface.js +18 -0
- package/lib/interfaces/lookup.interface.js.map +1 -0
- package/lib/utils/buildForm.d.ts +8 -0
- package/lib/utils/buildForm.js +26 -0
- package/lib/utils/buildForm.js.map +1 -0
- package/lib/utils/buildForms.d.ts +0 -0
- package/lib/utils/buildForms.js +2 -0
- package/lib/utils/buildForms.js.map +1 -0
- package/lib/utils/calculatedExpression.js +1 -1
- package/lib/utils/calculatedExpression.js.map +1 -1
- package/lib/utils/enableWhenExpression.d.ts +1 -0
- package/lib/utils/enableWhenExpression.js +4 -4
- package/lib/utils/enableWhenExpression.js.map +1 -1
- package/lib/utils/fhirpath.d.ts +1 -1
- package/lib/utils/fhirpath.js +6 -5
- package/lib/utils/fhirpath.js.map +1 -1
- package/lib/utils/initialise.js +5 -4
- package/lib/utils/initialise.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/addDisplayToCodings.d.ts +14 -0
- package/lib/utils/questionnaireStoreUtils/addDisplayToCodings.js +121 -0
- package/lib/utils/questionnaireStoreUtils/addDisplayToCodings.js.map +1 -0
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +3 -0
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.js +2 -2
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.js.map +1 -1
- package/lib/utils/valueSet.d.ts +1 -1
- package/lib/utils/valueSet.js +1 -1
- package/lib/utils/valueSet.js.map +1 -1
- package/package.json +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +1 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.tsx +3 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.tsx +3 -1
- package/src/hooks/useValueSetCodings.ts +12 -5
- package/src/{stories/assets/QStringItem.ts → interfaces/lookup.interface.ts} +6 -20
- package/src/utils/calculatedExpression.ts +2 -1
- package/src/utils/enableWhenExpression.ts +13 -4
- package/src/utils/fhirpath.ts +12 -6
- package/src/utils/initialise.ts +6 -4
- package/src/utils/questionnaireStoreUtils/addDisplayToCodings.ts +143 -0
- package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +7 -0
- package/src/utils/questionnaireStoreUtils/resolveValueSets.ts +2 -2
- package/src/utils/valueSet.ts +1 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { getOldOpenLabelAnswer } from '../utils/openChoice';
|
|
18
|
+
import { useState } from 'react';
|
|
19
|
+
function useOpenLabel(options, answers) {
|
|
20
|
+
let initialOpenLabelValue = '';
|
|
21
|
+
let initialOpenLabelChecked = false;
|
|
22
|
+
if (options.length > 0) {
|
|
23
|
+
const oldLabelAnswer = getOldOpenLabelAnswer(answers, options);
|
|
24
|
+
if (oldLabelAnswer && oldLabelAnswer.valueString) {
|
|
25
|
+
initialOpenLabelValue = oldLabelAnswer.valueString;
|
|
26
|
+
initialOpenLabelChecked = true;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const [openLabelValue, setOpenLabelValue] = useState(initialOpenLabelValue);
|
|
30
|
+
const [openLabelChecked, setOpenLabelChecked] = useState(initialOpenLabelChecked);
|
|
31
|
+
return { openLabelValue, setOpenLabelValue, openLabelChecked, setOpenLabelChecked };
|
|
32
|
+
}
|
|
33
|
+
export default useOpenLabel;
|
|
34
|
+
//# sourceMappingURL=useOpenLabel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useOpenLabel.js","sourceRoot":"","sources":["../../src/hooks/useOpenLabel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,SAAS,YAAY,CACnB,OAAwC,EACxC,OAA0C;IAE1C,IAAI,qBAAqB,GAAG,EAAE,CAAC;IAC/B,IAAI,uBAAuB,GAAG,KAAK,CAAC;IAEpC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE;YAChD,qBAAqB,GAAG,cAAc,CAAC,WAAW,CAAC;YACnD,uBAAuB,GAAG,IAAI,CAAC;SAChC;KACF;IAED,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAC5E,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAElF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;AACtF,CAAC;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -14,12 +14,22 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
17
26
|
import { useEffect, useMemo, useState } from 'react';
|
|
18
27
|
import { getResourceFromLaunchContext, getTerminologyServerUrl, getValueSetCodings, getValueSetPromise } from '../utils/valueSet';
|
|
19
28
|
import { getAnswerExpression } from '../utils/getExpressionsFromItem';
|
|
20
29
|
import fhirpath from 'fhirpath';
|
|
21
30
|
import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
|
|
22
31
|
import { useQuestionnaireStore, useSmartConfigStore, useTerminologyServerStore } from '../stores';
|
|
32
|
+
import { addDisplayToCodingArray } from '../utils/questionnaireStoreUtils/addDisplayToCodings';
|
|
23
33
|
function useValueSetCodings(qItem) {
|
|
24
34
|
var _a;
|
|
25
35
|
const patient = useSmartConfigStore.use.patient();
|
|
@@ -108,13 +118,19 @@ function useValueSetCodings(qItem) {
|
|
|
108
118
|
const promise = getValueSetPromise(valueSetUrl, terminologyServerUrl);
|
|
109
119
|
if (promise) {
|
|
110
120
|
promise
|
|
111
|
-
.then((valueSet) => {
|
|
121
|
+
.then((valueSet) => __awaiter(this, void 0, void 0, function* () {
|
|
112
122
|
const codings = getValueSetCodings(valueSet);
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
123
|
+
addDisplayToCodingArray(codings, terminologyServerUrl)
|
|
124
|
+
.then((codingsWithDisplay) => {
|
|
125
|
+
if (codingsWithDisplay.length > 0) {
|
|
126
|
+
addCodingToCache(valueSetUrl, codingsWithDisplay);
|
|
127
|
+
setCodings(codings);
|
|
128
|
+
}
|
|
129
|
+
})
|
|
130
|
+
.catch((error) => {
|
|
131
|
+
setServerError(error);
|
|
132
|
+
});
|
|
133
|
+
}))
|
|
118
134
|
.catch((error) => {
|
|
119
135
|
setServerError(error);
|
|
120
136
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useValueSetCodings.js","sourceRoot":"","sources":["../../src/hooks/useValueSetCodings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG
|
|
1
|
+
{"version":3,"file":"useValueSetCodings.js","sourceRoot":"","sources":["../../src/hooks/useValueSetCodings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=lookup.interface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookup.interface.js","sourceRoot":"","sources":["../../src/interfaces/lookup.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Questionnaire, QuestionnaireResponse } from 'fhir/r4';
|
|
2
|
+
/**
|
|
3
|
+
* Build the form with an initial Questionnaire and an optional filled QuestionnaireResponse.
|
|
4
|
+
* If a QuestionnaireResponse is not provided, an empty QuestionnaireResponse is set as the initial QuestionnaireResponse.
|
|
5
|
+
*
|
|
6
|
+
* @author Sean Fong
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildForm(questionnaire: Questionnaire, questionnaireResponse?: QuestionnaireResponse): Promise<void>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { questionnaireResponseStore, questionnaireStore } from '../stores';
|
|
11
|
+
import { initialiseQuestionnaireResponse } from './initialise';
|
|
12
|
+
/**
|
|
13
|
+
* Build the form with an initial Questionnaire and an optional filled QuestionnaireResponse.
|
|
14
|
+
* If a QuestionnaireResponse is not provided, an empty QuestionnaireResponse is set as the initial QuestionnaireResponse.
|
|
15
|
+
*
|
|
16
|
+
* @author Sean Fong
|
|
17
|
+
*/
|
|
18
|
+
export function buildForm(questionnaire, questionnaireResponse) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
yield questionnaireStore.getState().buildSourceQuestionnaire(questionnaire);
|
|
21
|
+
const initialisedQuestionnaireResponse = initialiseQuestionnaireResponse(questionnaire, questionnaireResponse);
|
|
22
|
+
questionnaireResponseStore.getState().buildSourceResponse(initialisedQuestionnaireResponse);
|
|
23
|
+
questionnaireStore.getState().updatePopulatedProperties(initialisedQuestionnaireResponse);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=buildForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildForm.js","sourceRoot":"","sources":["../../src/utils/buildForm.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,UAAgB,SAAS,CAC7B,aAA4B,EAC5B,qBAA6C;;QAE7C,MAAM,kBAAkB,CAAC,QAAQ,EAAE,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;QAE5E,MAAM,gCAAgC,GAAG,+BAA+B,CACtE,aAAa,EACb,qBAAqB,CACtB,CAAC;QACF,0BAA0B,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,gCAAgC,CAAC,CAAC;QAC5F,kBAAkB,CAAC,QAAQ,EAAE,CAAC,yBAAyB,CAAC,gCAAgC,CAAC,CAAC;IAC5F,CAAC;CAAA"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildForms.js","sourceRoot":"","sources":["../../src/utils/buildForms.ts"],"names":[],"mappings":""}
|
|
@@ -34,7 +34,7 @@ export function evaluateInitialCalculatedExpressions(params) {
|
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
const initialCalculatedExpressions = Object.assign({}, calculatedExpressions);
|
|
37
|
-
const updatedFhirPathContext = createFhirPathContext(initialResponse, initialResponseItemMap, variablesFhirPath);
|
|
37
|
+
const updatedFhirPathContext = createFhirPathContext(initialResponse, initialResponseItemMap, variablesFhirPath, existingFhirPathContext);
|
|
38
38
|
for (const linkId in initialCalculatedExpressions) {
|
|
39
39
|
const itemCalcExpressions = calculatedExpressions[linkId];
|
|
40
40
|
for (const calcExpression of itemCalcExpressions) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculatedExpression.js","sourceRoot":"","sources":["../../src/utils/calculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AAUzD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,UAAU,oCAAoC,CAClD,MAAkD;IAKlD,MAAM,EACJ,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACxB,GAAG,MAAM,CAAC;IAEX,8FAA8F;IAC9F,IACE,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC,EAC/C;QACA,OAAO;YACL,4BAA4B,EAAE,qBAAqB;YACnD,sBAAsB,EAAE,uBAAuB;SAChD,CAAC;KACH;IAED,MAAM,4BAA4B,qBAC7B,qBAAqB,CACzB,CAAC;IAEF,MAAM,sBAAsB,GAAG,qBAAqB,CAClD,eAAe,EACf,sBAAsB,EACtB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"calculatedExpression.js","sourceRoot":"","sources":["../../src/utils/calculatedExpression.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ interface EvaluateInitialEnableWhenExpressionsParams {
|
|
|
5
5
|
initialResponseItemMap: Record<string, QuestionnaireResponseItem[]>;
|
|
6
6
|
enableWhenExpressions: EnableWhenExpressions;
|
|
7
7
|
variablesFhirPath: Record<string, Expression[]>;
|
|
8
|
+
existingFhirPathContext: Record<string, any>;
|
|
8
9
|
}
|
|
9
10
|
export declare function evaluateInitialEnableWhenExpressions(params: EvaluateInitialEnableWhenExpressionsParams): {
|
|
10
11
|
initialEnableWhenExpressions: EnableWhenExpressions;
|
|
@@ -18,9 +18,9 @@ import { createFhirPathContext } from './fhirpath';
|
|
|
18
18
|
import fhirpath from 'fhirpath';
|
|
19
19
|
import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
|
|
20
20
|
export function evaluateInitialEnableWhenExpressions(params) {
|
|
21
|
-
const { initialResponse, initialResponseItemMap, enableWhenExpressions, variablesFhirPath } = params;
|
|
21
|
+
const { initialResponse, initialResponseItemMap, enableWhenExpressions, variablesFhirPath, existingFhirPathContext } = params;
|
|
22
22
|
const initialEnableWhenExpressions = Object.assign({}, enableWhenExpressions);
|
|
23
|
-
const updatedFhirPathContext = createFhirPathContext(initialResponse, initialResponseItemMap, variablesFhirPath);
|
|
23
|
+
const updatedFhirPathContext = createFhirPathContext(initialResponse, initialResponseItemMap, variablesFhirPath, existingFhirPathContext);
|
|
24
24
|
const initialEnableWhenSingleExpressions = evaluateEnableWhenSingleExpressions(initialEnableWhenExpressions.singleExpressions, updatedFhirPathContext);
|
|
25
25
|
const initialEnableWhenRepeatExpressions = evaluateEnableWhenRepeatExpressions(initialEnableWhenExpressions.repeatExpressions, updatedFhirPathContext);
|
|
26
26
|
return {
|
|
@@ -137,9 +137,9 @@ export function evaluateEnableWhenExpressions(fhirPathContext, enableWhenExpress
|
|
|
137
137
|
};
|
|
138
138
|
}
|
|
139
139
|
export function mutateRepeatEnableWhenExpressionInstances(params) {
|
|
140
|
-
const { questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath, enableWhenExpressions, parentRepeatGroupLinkId, parentRepeatGroupIndex, actionType } = params;
|
|
140
|
+
const { questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath, existingFhirPathContext, enableWhenExpressions, parentRepeatGroupLinkId, parentRepeatGroupIndex, actionType } = params;
|
|
141
141
|
const { repeatExpressions } = enableWhenExpressions;
|
|
142
|
-
const updatedFhirPathContext = createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath);
|
|
142
|
+
const updatedFhirPathContext = createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath, existingFhirPathContext);
|
|
143
143
|
let isUpdated = false;
|
|
144
144
|
for (const linkId in repeatExpressions) {
|
|
145
145
|
if (repeatExpressions[linkId].parentLinkId !== parentRepeatGroupLinkId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enableWhenExpression.js","sourceRoot":"","sources":["../../src/utils/enableWhenExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"enableWhenExpression.js","sourceRoot":"","sources":["../../src/utils/enableWhenExpression.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/fhirpath.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export declare function evaluateUpdatedExpressions(params: EvaluateUpdatedExpres
|
|
|
15
15
|
updatedCalculatedExpressions: Record<string, CalculatedExpression[]>;
|
|
16
16
|
updatedFhirPathContext: Record<string, any>;
|
|
17
17
|
};
|
|
18
|
-
export declare function createFhirPathContext(questionnaireResponse: QuestionnaireResponse, questionnaireResponseItemMap: Record<string, QuestionnaireResponseItem[]>, variablesFhirPath: Record<string, Expression[]>): Record<string, any>;
|
|
18
|
+
export declare function createFhirPathContext(questionnaireResponse: QuestionnaireResponse, questionnaireResponseItemMap: Record<string, QuestionnaireResponseItem[]>, variablesFhirPath: Record<string, Expression[]>, existingFhirPathContext: Record<string, any>): Record<string, any>;
|
|
19
19
|
export declare function evaluateLinkIdVariables(item: QuestionnaireResponseItem, variablesFhirPath: Record<string, Expression[]>, fhirPathContext: Record<string, any>): Record<string, any>;
|
|
20
20
|
export declare function addEmptyLinkIdVariables(linkId: string, variablesFhirPath: Record<string, Expression[]>, fhirPathContext: Record<string, any>): Record<string, any>;
|
|
21
21
|
export declare function evaluateQuestionnaireLevelVariables(resource: QuestionnaireResponse, variablesFhirPath: Record<string, Expression[]>, fhirPathContext: Record<string, any>): Record<string, any>;
|
package/lib/utils/fhirpath.js
CHANGED
|
@@ -30,7 +30,7 @@ export function evaluateUpdatedExpressions(params) {
|
|
|
30
30
|
updatedFhirPathContext: existingFhirPathContext
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
const updatedFhirPathContext = createFhirPathContext(updatedResponse, updatedResponseItemMap, variablesFhirPath);
|
|
33
|
+
const updatedFhirPathContext = createFhirPathContext(updatedResponse, updatedResponseItemMap, variablesFhirPath, existingFhirPathContext);
|
|
34
34
|
// Update enableWhenExpressions
|
|
35
35
|
const { enableWhenExpsIsUpdated, updatedEnableWhenExpressions } = evaluateEnableWhenExpressions(updatedFhirPathContext, enableWhenExpressions);
|
|
36
36
|
// Update calculatedExpressions
|
|
@@ -43,12 +43,13 @@ export function evaluateUpdatedExpressions(params) {
|
|
|
43
43
|
updatedFhirPathContext
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
|
-
export function createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath) {
|
|
46
|
+
export function createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variablesFhirPath, existingFhirPathContext) {
|
|
47
|
+
// Add latest resource to fhirPathContext
|
|
48
|
+
let fhirPathContext = Object.assign(Object.assign({}, existingFhirPathContext), { resource: questionnaireResponse });
|
|
49
|
+
// Exit early if there are no QR items
|
|
47
50
|
if (!questionnaireResponse.item) {
|
|
48
|
-
return
|
|
51
|
+
return fhirPathContext;
|
|
49
52
|
}
|
|
50
|
-
// Add latest resource to fhirPathContext
|
|
51
|
-
let fhirPathContext = { resource: questionnaireResponse };
|
|
52
53
|
// Evaluate resource-level variables
|
|
53
54
|
fhirPathContext = evaluateQuestionnaireLevelVariables(questionnaireResponse, variablesFhirPath, fhirPathContext);
|
|
54
55
|
// Add variables of items that exist in questionnaireResponseItemMap into fhirPathContext
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhirpath.js","sourceRoot":"","sources":["../../src/utils/fhirpath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AAIzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AAWvE,MAAM,UAAU,0BAA0B,CAAC,MAAwC;IAMjF,MAAM,EACJ,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACxB,GAAG,MAAM,CAAC;IAEX,MAAM,wBAAwB,GAC5B,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAClD,IAAI,wBAAwB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;QACrD,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,4BAA4B,EAAE,qBAAqB;YACnD,4BAA4B,EAAE,qBAAqB;YACnD,sBAAsB,EAAE,uBAAuB;SAChD,CAAC;KACH;IAED,MAAM,sBAAsB,GAAG,qBAAqB,CAClD,eAAe,EACf,sBAAsB,EACtB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"fhirpath.js","sourceRoot":"","sources":["../../src/utils/fhirpath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AAIzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AAWvE,MAAM,UAAU,0BAA0B,CAAC,MAAwC;IAMjF,MAAM,EACJ,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACxB,GAAG,MAAM,CAAC;IAEX,MAAM,wBAAwB,GAC5B,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAClD,IAAI,wBAAwB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;QACrD,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,4BAA4B,EAAE,qBAAqB;YACnD,4BAA4B,EAAE,qBAAqB;YACnD,sBAAsB,EAAE,uBAAuB;SAChD,CAAC;KACH;IAED,MAAM,sBAAsB,GAAG,qBAAqB,CAClD,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,CACxB,CAAC;IAEF,+BAA+B;IAC/B,MAAM,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,GAAG,6BAA6B,CAC7F,sBAAsB,EACtB,qBAAqB,CACtB,CAAC;IAEF,+BAA+B;IAC/B,MAAM,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,GAAG,6BAA6B,CAC7F,sBAAsB,EACtB,qBAAqB,CACtB,CAAC;IAEF,MAAM,SAAS,GAAG,uBAAuB,IAAI,uBAAuB,CAAC;IAErE,OAAO;QACL,SAAS;QACT,4BAA4B;QAC5B,4BAA4B;QAC5B,sBAAsB;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,qBAA4C,EAC5C,4BAAyE,EACzE,iBAA+C,EAC/C,uBAA4C;IAE5C,yCAAyC;IACzC,IAAI,eAAe,mCACd,uBAAuB,KAC1B,QAAQ,EAAE,qBAAqB,GAChC,CAAC;IAEF,sCAAsC;IACtC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE;QAC/B,OAAO,eAAe,CAAC;KACxB;IAED,oCAAoC;IACpC,eAAe,GAAG,mCAAmC,CACnD,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,CAChB,CAAC;IAEF,yFAAyF;IACzF,KAAK,MAAM,MAAM,IAAI,4BAA4B,EAAE;QACjD,iEAAiE;QACjE,8DAA8D;QAC9D,KAAK,MAAM,MAAM,IAAI,4BAA4B,CAAC,MAAM,CAAC,EAAE;YACzD,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;SACvF;KACF;IAED,4HAA4H;IAC5H,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE;QACtC,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;KACvF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,IAA+B,EAC/B,iBAA+C,EAC/C,eAAoC;IAEpC,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QACpD,OAAO,eAAe,CAAC;KACxB;IAED,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE;QACtC,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxC,IAAI;gBACF,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CACrD,IAAI,EACJ;oBACE,IAAI,EAAE,4BAA4B;oBAClC,UAAU,EAAE,QAAQ,CAAC,UAAU;iBAChC,EACD,eAAe,EACf,iBAAiB,CAClB,CAAC;aACH;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,IAAI,CAAC,MAAM,iBAAiB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;aACvF;SACF;KACF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,MAAc,EACd,iBAA+C,EAC/C,eAAoC;IAEpC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QACpD,OAAO,eAAe,CAAC;KACxB;IAED,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE;QACtC,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxC,IAAI,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,EAAE;gBACrD,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;aAC1C;SACF;KACF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,QAA+B,EAC/B,iBAA+C,EAC/C,eAAoC;IAEpC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;IAC5E,IAAI,CAAC,2BAA2B,IAAI,2BAA2B,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5E,OAAO,eAAe,CAAC;KACxB;IAED,KAAK,MAAM,QAAQ,IAAI,2BAA2B,EAAE;QAClD,IAAI,QAAQ,CAAC,UAAU,EAAE;YACvB,IAAI;gBACF,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CACrD,QAAQ,EACR;oBACE,IAAI,EAAE,uBAAuB;oBAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;iBAChC,EACD,eAAe,EACf,iBAAiB,CAClB,CAAC;aACH;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,oCAAoC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;aACpF;SACF;KACF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
package/lib/utils/initialise.js
CHANGED
|
@@ -241,15 +241,16 @@ function createNewRepeatGroupQuestionnaireResponseItem(qItem, initialValueItems)
|
|
|
241
241
|
};
|
|
242
242
|
}
|
|
243
243
|
export function initialiseFormFromResponse(params) {
|
|
244
|
-
const { questionnaireResponse, enableWhenItems, enableWhenExpressions, calculatedExpressions, variablesFhirPath, tabs } = params;
|
|
244
|
+
const { questionnaireResponse, enableWhenItems, enableWhenExpressions, calculatedExpressions, variablesFhirPath, tabs, fhirPathContext } = params;
|
|
245
245
|
const initialResponseItemMap = createQuestionnaireResponseItemMap(questionnaireResponse);
|
|
246
|
-
let updatedFhirPathContext =
|
|
246
|
+
let updatedFhirPathContext = {};
|
|
247
247
|
const { initialisedItems, linkedQuestions } = assignPopulatedAnswersToEnableWhen(enableWhenItems, questionnaireResponse);
|
|
248
248
|
const evaluateInitialEnableWhenExpressionsResult = evaluateInitialEnableWhenExpressions({
|
|
249
249
|
initialResponse: questionnaireResponse,
|
|
250
250
|
initialResponseItemMap: initialResponseItemMap,
|
|
251
251
|
enableWhenExpressions: enableWhenExpressions,
|
|
252
|
-
variablesFhirPath: variablesFhirPath
|
|
252
|
+
variablesFhirPath: variablesFhirPath,
|
|
253
|
+
existingFhirPathContext: fhirPathContext
|
|
253
254
|
});
|
|
254
255
|
const { initialEnableWhenExpressions } = evaluateInitialEnableWhenExpressionsResult;
|
|
255
256
|
updatedFhirPathContext = evaluateInitialEnableWhenExpressionsResult.updatedFhirPathContext;
|
|
@@ -258,7 +259,7 @@ export function initialiseFormFromResponse(params) {
|
|
|
258
259
|
initialResponseItemMap: initialResponseItemMap,
|
|
259
260
|
calculatedExpressions: calculatedExpressions,
|
|
260
261
|
variablesFhirPath: variablesFhirPath,
|
|
261
|
-
existingFhirPathContext:
|
|
262
|
+
existingFhirPathContext: fhirPathContext
|
|
262
263
|
});
|
|
263
264
|
const { initialCalculatedExpressions } = evaluateInitialCalculatedExpressionsResult;
|
|
264
265
|
updatedFhirPathContext = evaluateInitialEnableWhenExpressionsResult.updatedFhirPathContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initialise.js","sourceRoot":"","sources":["../../src/utils/initialise.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"initialise.js","sourceRoot":"","sources":["../../src/utils/initialise.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Coding } from 'fhir/r4';
|
|
2
|
+
import type { CodeSystemLookupPromise } from '../../interfaces/lookup.interface';
|
|
3
|
+
export declare function addDisplayToProcessedCodings(processedCodings: Record<string, Coding[]>, terminologyServerUrl: string): Promise<Record<string, Coding[]>>;
|
|
4
|
+
export declare function addDisplayToCodingArray(codings: Coding[], terminologyServerUrl: string): Promise<Coding[]>;
|
|
5
|
+
export declare function getCodeSystemLookupPromise(query: string, terminologyServerUrl: string): Promise<any>;
|
|
6
|
+
export declare function resolveLookupPromises(codeSystemLookupPromises: Record<string, CodeSystemLookupPromise>): Promise<Record<string, CodeSystemLookupPromise>>;
|
|
7
|
+
export interface LookupResponse {
|
|
8
|
+
parameter: [DisplayParameter];
|
|
9
|
+
}
|
|
10
|
+
export interface DisplayParameter {
|
|
11
|
+
name: 'display';
|
|
12
|
+
valueString: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function lookupResponseIsValid(response: any): response is LookupResponse;
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
import * as FHIR from 'fhirclient';
|
|
27
|
+
// Use this for QuestionnaireStore.ProcessedCodings
|
|
28
|
+
export function addDisplayToProcessedCodings(processedCodings, terminologyServerUrl) {
|
|
29
|
+
var _a;
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
// Store code system lookup promises for codings without displays
|
|
32
|
+
const codeSystemLookupPromises = {};
|
|
33
|
+
for (const key in processedCodings) {
|
|
34
|
+
const codings = processedCodings[key];
|
|
35
|
+
for (const coding of codings) {
|
|
36
|
+
if (!coding.display) {
|
|
37
|
+
const query = `system=${coding.system}&code=${coding.code}`;
|
|
38
|
+
codeSystemLookupPromises[query] = {
|
|
39
|
+
promise: getCodeSystemLookupPromise(query, terminologyServerUrl),
|
|
40
|
+
oldCoding: coding
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
// Resolves lookup promises in one go and assign newCodings to processedCodings
|
|
46
|
+
const resolvedCodeSystemLookupPromises = yield resolveLookupPromises(codeSystemLookupPromises);
|
|
47
|
+
for (const key in processedCodings) {
|
|
48
|
+
const codings = processedCodings[key];
|
|
49
|
+
for (const coding of codings) {
|
|
50
|
+
const lookUpKey = `system=${coding.system}&code=${coding.code}`;
|
|
51
|
+
const resolvedLookup = resolvedCodeSystemLookupPromises[lookUpKey];
|
|
52
|
+
if ((_a = resolvedLookup === null || resolvedLookup === void 0 ? void 0 : resolvedLookup.newCoding) === null || _a === void 0 ? void 0 : _a.display) {
|
|
53
|
+
coding.display = resolvedLookup.newCoding.display;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return processedCodings;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
// Use this for an array of codings
|
|
61
|
+
export function addDisplayToCodingArray(codings, terminologyServerUrl) {
|
|
62
|
+
var _a;
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
// Store code system lookup promises for codings without displays
|
|
65
|
+
const codeSystemLookupPromises = {};
|
|
66
|
+
for (const coding of codings) {
|
|
67
|
+
if (!coding.display) {
|
|
68
|
+
const query = `system=${coding.system}&code=${coding.code}`;
|
|
69
|
+
codeSystemLookupPromises[query] = {
|
|
70
|
+
promise: getCodeSystemLookupPromise(query, terminologyServerUrl),
|
|
71
|
+
oldCoding: coding
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// Resolves lookup promises in one go and assign newCodings to processedCodings
|
|
76
|
+
const resolvedCodeSystemLookupPromises = yield resolveLookupPromises(codeSystemLookupPromises);
|
|
77
|
+
for (const coding of codings) {
|
|
78
|
+
const lookUpKey = `system=${coding.system}&code=${coding.code}`;
|
|
79
|
+
const resolvedLookup = resolvedCodeSystemLookupPromises[lookUpKey];
|
|
80
|
+
if ((_a = resolvedLookup === null || resolvedLookup === void 0 ? void 0 : resolvedLookup.newCoding) === null || _a === void 0 ? void 0 : _a.display) {
|
|
81
|
+
coding.display = resolvedLookup.newCoding.display;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return codings;
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
export function getCodeSystemLookupPromise(query, terminologyServerUrl) {
|
|
88
|
+
return FHIR.client({ serverUrl: terminologyServerUrl }).request({
|
|
89
|
+
url: `CodeSystem/$lookup?${query}`
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
export function resolveLookupPromises(codeSystemLookupPromises) {
|
|
93
|
+
var _a, _b;
|
|
94
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
const newCodeSystemLookupPromises = {};
|
|
96
|
+
const lookupPromiseKeys = Object.keys(codeSystemLookupPromises);
|
|
97
|
+
const lookupPromiseValues = Object.values(codeSystemLookupPromises);
|
|
98
|
+
const promises = lookupPromiseValues.map((lookupPromise) => lookupPromise.promise);
|
|
99
|
+
const lookupResults = yield Promise.all(promises);
|
|
100
|
+
for (const [i, lookupResult] of lookupResults.entries()) {
|
|
101
|
+
if (!lookupResponseIsValid(lookupResult)) {
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
const key = lookupPromiseKeys[i];
|
|
105
|
+
const lookupPromise = lookupPromiseValues[i];
|
|
106
|
+
if (key && lookupPromise) {
|
|
107
|
+
lookupPromise.newCoding = Object.assign(Object.assign({}, lookupPromise.oldCoding), { display: (_b = (_a = lookupResult.parameter.find((p) => p.name === 'display')) === null || _a === void 0 ? void 0 : _a.valueString) !== null && _b !== void 0 ? _b : undefined });
|
|
108
|
+
newCodeSystemLookupPromises[key] = lookupPromise;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return newCodeSystemLookupPromises;
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
export function lookupResponseIsValid(response) {
|
|
115
|
+
return (response &&
|
|
116
|
+
response.resourceType === 'Parameters' &&
|
|
117
|
+
response.parameter &&
|
|
118
|
+
response.parameter.find((p) => p.name === 'display') &&
|
|
119
|
+
response.parameter.find((p) => p.name === 'display').valueString);
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=addDisplayToCodings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addDisplayToCodings.js","sourceRoot":"","sources":["../../../src/utils/questionnaireStoreUtils/addDisplayToCodings.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ import { extractOtherExtensions } from './extractOtherExtensions';
|
|
|
31
31
|
import { resolveValueSets } from './resolveValueSets';
|
|
32
32
|
import { addAdditionalVariables } from './addAdditionalVariables';
|
|
33
33
|
import { getLinkIdTypeTuples } from '../qItem';
|
|
34
|
+
import { addDisplayToProcessedCodings } from './addDisplayToCodings';
|
|
34
35
|
export function createQuestionnaireModel(questionnaire, additionalVariables, terminologyServerUrl) {
|
|
35
36
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
37
|
if (!questionnaire.item) {
|
|
@@ -52,6 +53,8 @@ export function createQuestionnaireModel(questionnaire, additionalVariables, ter
|
|
|
52
53
|
const resolveValueSetsResult = yield resolveValueSets(variables, valueSetPromises, processedValueSetCodings, terminologyServerUrl);
|
|
53
54
|
variables = resolveValueSetsResult.variables;
|
|
54
55
|
processedValueSetCodings = resolveValueSetsResult.processedValueSetCodings;
|
|
56
|
+
// In processedCodings, add display values to codings lacking them
|
|
57
|
+
processedValueSetCodings = yield addDisplayToProcessedCodings(processedValueSetCodings, terminologyServerUrl);
|
|
55
58
|
return {
|
|
56
59
|
itemTypes,
|
|
57
60
|
tabs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createQuestionaireModel.js","sourceRoot":"","sources":["../../../src/utils/questionnaireStoreUtils/createQuestionaireModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;AAMH,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,kCAAkC,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"createQuestionaireModel.js","sourceRoot":"","sources":["../../../src/utils/questionnaireStoreUtils/createQuestionaireModel.ts"],"names":[],"mappings":"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"}
|