@aehrc/smart-forms-renderer 0.6.7 → 0.7.1
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 +12 -9
- package/lib/components/Box.styles.d.ts +1 -0
- package/lib/components/Box.styles.js +5 -1
- package/lib/components/Box.styles.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +3 -5
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js +2 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/CheckboxSingle.js +2 -2
- package/lib/components/FormComponents/ItemParts/CheckboxSingle.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +3 -5
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/AddItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -1
- package/lib/components/Renderer/FormBodyTabbed.js +2 -2
- package/lib/components/Renderer/FormBodyTabbed.js.map +1 -1
- package/lib/components/Renderer/SmartFormsRenderer.d.ts +1 -0
- package/lib/components/Renderer/SmartFormsRenderer.js +2 -3
- package/lib/components/Renderer/SmartFormsRenderer.js.map +1 -1
- package/lib/components/Tabs/FormBodySingleTab.d.ts +1 -1
- package/lib/components/Tabs/FormBodySingleTab.js +2 -4
- package/lib/components/Tabs/FormBodySingleTab.js.map +1 -1
- package/lib/components/Tabs/FormBodyTabList.d.ts +2 -1
- package/lib/components/Tabs/FormBodyTabList.js +24 -26
- package/lib/components/Tabs/FormBodyTabList.js.map +1 -1
- package/lib/components/Tabs/FormBodyTabListWrapper.d.ts +10 -0
- package/lib/components/Tabs/FormBodyTabListWrapper.js +44 -0
- package/lib/components/Tabs/FormBodyTabListWrapper.js.map +1 -0
- package/lib/hooks/useInitialiseRenderer.d.ts +1 -1
- package/lib/hooks/useInitialiseRenderer.js +17 -3
- package/lib/hooks/useInitialiseRenderer.js.map +1 -1
- package/lib/hooks/useTerminologyServerQuery.d.ts +2 -2
- package/lib/hooks/useTerminologyServerQuery.js +8 -4
- package/lib/hooks/useTerminologyServerQuery.js.map +1 -1
- package/lib/hooks/useValueSetCodings.js +5 -2
- package/lib/hooks/useValueSetCodings.js.map +1 -1
- package/lib/stores/useQuestionnaireStore.d.ts +1 -1
- package/lib/stores/useQuestionnaireStore.js +3 -2
- package/lib/stores/useQuestionnaireStore.js.map +1 -1
- package/lib/stores/useTerminologyServerStore.d.ts +7 -0
- package/lib/{theme/overrides/Typography.js → stores/useTerminologyServerStore.js} +9 -15
- package/lib/stores/useTerminologyServerStore.js.map +1 -0
- package/lib/theme/overrides/Overrides.js +1 -2
- package/lib/theme/overrides/Overrides.js.map +1 -1
- package/lib/utils/qItem.d.ts +1 -1
- package/lib/utils/qItem.js +1 -1
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.d.ts +1 -1
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +4 -4
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.d.ts +1 -1
- package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js +2 -2
- package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.d.ts +1 -1
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js +6 -4
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.d.ts +1 -1
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.js +2 -2
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.js.map +1 -1
- package/lib/utils/tabs.d.ts +10 -0
- package/lib/utils/tabs.js +26 -1
- package/lib/utils/tabs.js.map +1 -1
- package/lib/utils/valueSet.d.ts +1 -1
- package/lib/utils/valueSet.js +3 -4
- package/lib/utils/valueSet.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Box.styles.ts +6 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.tsx +5 -7
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioSingle.tsx +2 -2
- package/src/components/FormComponents/ItemParts/CheckboxSingle.tsx +2 -2
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.tsx +5 -7
- package/src/components/FormComponents/RepeatGroup/AddItemButton.tsx +1 -0
- package/src/components/FormComponents/RepeatItem/AddItemButton.tsx +1 -0
- package/src/components/Renderer/FormBodyTabbed.tsx +2 -2
- package/src/components/Renderer/SmartFormsRenderer.tsx +9 -2
- package/src/components/Tabs/FormBodySingleTab.tsx +3 -6
- package/src/components/Tabs/FormBodyTabList.tsx +41 -41
- package/src/components/Tabs/FormBodyTabListWrapper.tsx +80 -0
- package/src/hooks/useInitialiseRenderer.ts +22 -2
- package/src/hooks/useTerminologyServerQuery.ts +8 -6
- package/src/hooks/useValueSetCodings.ts +5 -2
- package/src/stores/useQuestionnaireStore.ts +10 -3
- package/src/{theme/overrides/Typography.ts → stores/useTerminologyServerStore.ts} +15 -14
- package/src/theme/overrides/Overrides.ts +0 -2
- package/src/utils/qItem.ts +1 -1
- package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +10 -4
- package/src/utils/questionnaireStoreUtils/extractContainedValueSets.ts +5 -2
- package/src/utils/questionnaireStoreUtils/extractOtherExtensions.ts +8 -4
- package/src/utils/questionnaireStoreUtils/resolveValueSets.ts +3 -2
- package/src/utils/tabs.ts +54 -1
- package/src/utils/valueSet.ts +3 -4
- package/lib/hooks/index.d.ts +0 -1
- package/lib/hooks/index.js +0 -2
- package/lib/hooks/index.js.map +0 -1
- package/lib/theme/overrides/Typography.d.ts +0 -13
- package/lib/theme/overrides/Typography.js.map +0 -1
|
@@ -38,6 +38,7 @@ import { createQuestionnaireModel } from '../utils/questionnaireStoreUtils/creat
|
|
|
38
38
|
import { initialiseFormFromResponse } from '../utils/initialiseForm';
|
|
39
39
|
import { emptyQuestionnaire, emptyResponse } from '../utils/emptyResource';
|
|
40
40
|
import cloneDeep from 'lodash.clonedeep';
|
|
41
|
+
import useTerminologyServerStore from './useTerminologyServerStore';
|
|
41
42
|
|
|
42
43
|
export interface UseQuestionnaireStoreType {
|
|
43
44
|
sourceQuestionnaire: Questionnaire;
|
|
@@ -57,7 +58,8 @@ export interface UseQuestionnaireStoreType {
|
|
|
57
58
|
buildSourceQuestionnaire: (
|
|
58
59
|
questionnaire: Questionnaire,
|
|
59
60
|
questionnaireResponse?: QuestionnaireResponse,
|
|
60
|
-
additionalVariables?: Record<string, object
|
|
61
|
+
additionalVariables?: Record<string, object>,
|
|
62
|
+
terminologyServerUrl?: string
|
|
61
63
|
) => Promise<void>;
|
|
62
64
|
destroySourceQuestionnaire: () => void;
|
|
63
65
|
switchTab: (newTabIndex: number) => void;
|
|
@@ -87,9 +89,14 @@ const useQuestionnaireStore = create<UseQuestionnaireStoreType>()((set, get) =>
|
|
|
87
89
|
buildSourceQuestionnaire: async (
|
|
88
90
|
questionnaire,
|
|
89
91
|
questionnaireResponse = cloneDeep(emptyResponse),
|
|
90
|
-
additionalVariables = {}
|
|
92
|
+
additionalVariables = {},
|
|
93
|
+
terminologyServerUrl = useTerminologyServerStore.getState().url
|
|
91
94
|
) => {
|
|
92
|
-
const questionnaireModel = await createQuestionnaireModel(
|
|
95
|
+
const questionnaireModel = await createQuestionnaireModel(
|
|
96
|
+
questionnaire,
|
|
97
|
+
additionalVariables,
|
|
98
|
+
terminologyServerUrl
|
|
99
|
+
);
|
|
93
100
|
|
|
94
101
|
const {
|
|
95
102
|
initialEnableWhenItems,
|
|
@@ -15,19 +15,20 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
import
|
|
18
|
+
import { create } from 'zustand';
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
},
|
|
27
|
-
gutterBottom: {
|
|
28
|
-
marginBottom: theme.spacing(1)
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
};
|
|
20
|
+
const ONTOSERVER_R4 = 'https://r4.ontoserver.csiro.au/fhir';
|
|
21
|
+
|
|
22
|
+
export interface UseTerminologyServerStoreType {
|
|
23
|
+
url: string;
|
|
24
|
+
setUrl: (newUrl: string) => void;
|
|
25
|
+
resetUrl: () => void;
|
|
33
26
|
}
|
|
27
|
+
|
|
28
|
+
const useTerminologyServerStore = create<UseTerminologyServerStoreType>()((set) => ({
|
|
29
|
+
url: ONTOSERVER_R4,
|
|
30
|
+
setUrl: (newUrl: string) => set(() => ({ url: newUrl })),
|
|
31
|
+
resetUrl: () => set(() => ({ url: ONTOSERVER_R4 }))
|
|
32
|
+
}));
|
|
33
|
+
|
|
34
|
+
export default useTerminologyServerStore;
|
|
@@ -21,7 +21,6 @@ import Input from './Input';
|
|
|
21
21
|
import Table from './Table';
|
|
22
22
|
import Button from './Button';
|
|
23
23
|
import Backdrop from './Backdrop';
|
|
24
|
-
import Typography from './Typography';
|
|
25
24
|
import Autocomplete from './Autocomplete';
|
|
26
25
|
import Accordion from './Accordion';
|
|
27
26
|
import SpeedDial from './SpeedDial';
|
|
@@ -36,7 +35,6 @@ function ComponentsOverrides(theme: Theme) {
|
|
|
36
35
|
Paper(),
|
|
37
36
|
Button(theme),
|
|
38
37
|
Backdrop(theme),
|
|
39
|
-
Typography(theme),
|
|
40
38
|
Autocomplete(theme),
|
|
41
39
|
SpeedDial(theme)
|
|
42
40
|
);
|
package/src/utils/qItem.ts
CHANGED
|
@@ -32,7 +32,7 @@ interface isHiddenParams {
|
|
|
32
32
|
/**
|
|
33
33
|
* Test the given QItem on a series of checks to verify if the item should be displayed
|
|
34
34
|
* Check if qItem has hidden attribute
|
|
35
|
-
* Check if qItem
|
|
35
|
+
* Check if qItem fulfilled its enableWhen criteria
|
|
36
36
|
*
|
|
37
37
|
* @author Sean Fong
|
|
38
38
|
*/
|
|
@@ -30,7 +30,8 @@ import { addAdditionalVariables } from './addAdditionalVariables';
|
|
|
30
30
|
|
|
31
31
|
export async function createQuestionnaireModel(
|
|
32
32
|
questionnaire: Questionnaire,
|
|
33
|
-
additionalVariables: Record<string, object
|
|
33
|
+
additionalVariables: Record<string, object>,
|
|
34
|
+
terminologyServerUrl: string
|
|
34
35
|
): Promise<QuestionnaireModel> {
|
|
35
36
|
if (!questionnaire.item) {
|
|
36
37
|
return createEmptyModel();
|
|
@@ -43,7 +44,10 @@ export async function createQuestionnaireModel(
|
|
|
43
44
|
let variables: Variables = extractQuestionnaireLevelVariables(questionnaire);
|
|
44
45
|
variables = addAdditionalVariables(variables, additionalVariables);
|
|
45
46
|
|
|
46
|
-
const extractContainedValueSetsResult = extractContainedValueSets(
|
|
47
|
+
const extractContainedValueSetsResult = extractContainedValueSets(
|
|
48
|
+
questionnaire,
|
|
49
|
+
terminologyServerUrl
|
|
50
|
+
);
|
|
47
51
|
let valueSetPromises = extractContainedValueSetsResult.valueSetPromises;
|
|
48
52
|
let processedValueSetCodings = extractContainedValueSetsResult.processedValueSetCodings;
|
|
49
53
|
const processedValueSetUrls = extractContainedValueSetsResult.processedValueSetUrls;
|
|
@@ -51,7 +55,8 @@ export async function createQuestionnaireModel(
|
|
|
51
55
|
const extractOtherExtensionsResult = extractOtherExtensions(
|
|
52
56
|
questionnaire,
|
|
53
57
|
variables,
|
|
54
|
-
valueSetPromises
|
|
58
|
+
valueSetPromises,
|
|
59
|
+
terminologyServerUrl
|
|
55
60
|
);
|
|
56
61
|
|
|
57
62
|
const { enableWhenItems, enableWhenExpressions, calculatedExpressions, answerExpressions } =
|
|
@@ -62,7 +67,8 @@ export async function createQuestionnaireModel(
|
|
|
62
67
|
const resolveValueSetsResult = await resolveValueSets(
|
|
63
68
|
variables,
|
|
64
69
|
valueSetPromises,
|
|
65
|
-
processedValueSetCodings
|
|
70
|
+
processedValueSetCodings,
|
|
71
|
+
terminologyServerUrl
|
|
66
72
|
);
|
|
67
73
|
|
|
68
74
|
variables = resolveValueSetsResult.variables;
|
|
@@ -19,7 +19,10 @@ import type { ValueSetPromise } from '../../interfaces/valueSet.interface';
|
|
|
19
19
|
import { getValueSetCodings, getValueSetPromise } from '../valueSet';
|
|
20
20
|
import type { Coding, Questionnaire, ValueSet } from 'fhir/r4';
|
|
21
21
|
|
|
22
|
-
export function extractContainedValueSets(
|
|
22
|
+
export function extractContainedValueSets(
|
|
23
|
+
questionnaire: Questionnaire,
|
|
24
|
+
terminologyServerUrl: string
|
|
25
|
+
): {
|
|
23
26
|
processedValueSetCodings: Record<string, Coding[]>;
|
|
24
27
|
processedValueSetUrls: Record<string, string>;
|
|
25
28
|
valueSetPromises: Record<string, ValueSetPromise>;
|
|
@@ -47,7 +50,7 @@ export function extractContainedValueSets(questionnaire: Questionnaire): {
|
|
|
47
50
|
const valueSetUrl = getValueSetUrlFromContained(entry);
|
|
48
51
|
if (valueSetUrl) {
|
|
49
52
|
valueSetPromises[entry.id] = {
|
|
50
|
-
promise: getValueSetPromise(valueSetUrl)
|
|
53
|
+
promise: getValueSetPromise(valueSetUrl, terminologyServerUrl)
|
|
51
54
|
};
|
|
52
55
|
continue;
|
|
53
56
|
}
|
|
@@ -41,7 +41,8 @@ interface ReturnParamsRecursive {
|
|
|
41
41
|
export function extractOtherExtensions(
|
|
42
42
|
questionnaire: Questionnaire,
|
|
43
43
|
variables: Variables,
|
|
44
|
-
valueSetPromises: Record<string, ValueSetPromise
|
|
44
|
+
valueSetPromises: Record<string, ValueSetPromise>,
|
|
45
|
+
terminologyServerUrl: string
|
|
45
46
|
): ReturnParamsRecursive {
|
|
46
47
|
const enableWhenItems: Record<string, EnableWhenItemProperties> = {};
|
|
47
48
|
const enableWhenExpressions: Record<string, EnableWhenExpression> = {};
|
|
@@ -67,7 +68,8 @@ export function extractOtherExtensions(
|
|
|
67
68
|
enableWhenExpressions,
|
|
68
69
|
calculatedExpressions,
|
|
69
70
|
answerExpressions,
|
|
70
|
-
valueSetPromises
|
|
71
|
+
valueSetPromises,
|
|
72
|
+
defaultTerminologyServerUrl: terminologyServerUrl
|
|
71
73
|
});
|
|
72
74
|
}
|
|
73
75
|
|
|
@@ -89,6 +91,7 @@ interface extractExtensionsFromItemRecursiveParams {
|
|
|
89
91
|
calculatedExpressions: Record<string, CalculatedExpression>;
|
|
90
92
|
answerExpressions: Record<string, AnswerExpression>;
|
|
91
93
|
valueSetPromises: Record<string, ValueSetPromise>;
|
|
94
|
+
defaultTerminologyServerUrl: string;
|
|
92
95
|
}
|
|
93
96
|
|
|
94
97
|
function extractExtensionsFromItemRecursive(
|
|
@@ -101,7 +104,8 @@ function extractExtensionsFromItemRecursive(
|
|
|
101
104
|
enableWhenExpressions,
|
|
102
105
|
calculatedExpressions,
|
|
103
106
|
answerExpressions,
|
|
104
|
-
valueSetPromises
|
|
107
|
+
valueSetPromises,
|
|
108
|
+
defaultTerminologyServerUrl
|
|
105
109
|
} = params;
|
|
106
110
|
|
|
107
111
|
const items = item.item;
|
|
@@ -145,7 +149,7 @@ function extractExtensionsFromItemRecursive(
|
|
|
145
149
|
const valueSetUrl = item.answerValueSet;
|
|
146
150
|
if (valueSetUrl) {
|
|
147
151
|
if (!valueSetPromises[valueSetUrl] && !valueSetUrl.startsWith('#')) {
|
|
148
|
-
const terminologyServerUrl = getTerminologyServerUrl(item);
|
|
152
|
+
const terminologyServerUrl = getTerminologyServerUrl(item) ?? defaultTerminologyServerUrl;
|
|
149
153
|
valueSetPromises[valueSetUrl] = {
|
|
150
154
|
promise: getValueSetPromise(valueSetUrl, terminologyServerUrl)
|
|
151
155
|
};
|
|
@@ -28,7 +28,8 @@ import type { ValueSetPromise } from '../../interfaces/valueSet.interface';
|
|
|
28
28
|
export async function resolveValueSets(
|
|
29
29
|
variables: Variables,
|
|
30
30
|
valueSetPromises: Record<string, ValueSetPromise>,
|
|
31
|
-
processedValueSetCodings: Record<string, Coding[]
|
|
31
|
+
processedValueSetCodings: Record<string, Coding[]>,
|
|
32
|
+
terminologyServerUrl: string
|
|
32
33
|
): Promise<{ variables: Variables; processedValueSetCodings: Record<string, Coding[]> }> {
|
|
33
34
|
// Create a <valueSetUrl, XFhirQueryVariableName> map
|
|
34
35
|
const valueSetToXFhirQueryVariableNameMap: Record<string, string> =
|
|
@@ -37,7 +38,7 @@ export async function resolveValueSets(
|
|
|
37
38
|
if (Object.keys(valueSetToXFhirQueryVariableNameMap).length > 0) {
|
|
38
39
|
for (const valueSetUrl in valueSetToXFhirQueryVariableNameMap) {
|
|
39
40
|
valueSetPromises[valueSetUrl] = {
|
|
40
|
-
promise: getValueSetPromise(valueSetUrl)
|
|
41
|
+
promise: getValueSetPromise(valueSetUrl, terminologyServerUrl)
|
|
41
42
|
};
|
|
42
43
|
}
|
|
43
44
|
}
|
package/src/utils/tabs.ts
CHANGED
|
@@ -19,7 +19,7 @@ import type { Tabs } from '../interfaces/tab.interface';
|
|
|
19
19
|
import type { EnableWhenExpression, EnableWhenItems } from '../interfaces/enableWhen.interface';
|
|
20
20
|
import type { Coding, QuestionnaireItem } from 'fhir/r4';
|
|
21
21
|
import { hasHiddenExtension, isSpecificItemControl } from './itemControl';
|
|
22
|
-
import { isHiddenByEnableWhens } from './qItem';
|
|
22
|
+
import { isHidden, isHiddenByEnableWhens } from './qItem';
|
|
23
23
|
|
|
24
24
|
export function getFirstVisibleTab(
|
|
25
25
|
tabs: Tabs,
|
|
@@ -253,3 +253,56 @@ export function getContextDisplays(item: QuestionnaireItem): QuestionnaireItem[]
|
|
|
253
253
|
isSpecificItemControl(childItem, 'context-display') && childItem.type === 'display'
|
|
254
254
|
);
|
|
255
255
|
}
|
|
256
|
+
|
|
257
|
+
interface IsTabHiddenParams {
|
|
258
|
+
qItem: QuestionnaireItem;
|
|
259
|
+
contextDisplayItems: QuestionnaireItem[];
|
|
260
|
+
isTab: boolean;
|
|
261
|
+
enableWhenIsActivated: boolean;
|
|
262
|
+
enableWhenItems: EnableWhenItems;
|
|
263
|
+
enableWhenExpressions: Record<string, EnableWhenExpression>;
|
|
264
|
+
completedTabsCollapsed: boolean;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export function isTabHidden(params: IsTabHiddenParams): boolean {
|
|
268
|
+
const {
|
|
269
|
+
qItem,
|
|
270
|
+
contextDisplayItems,
|
|
271
|
+
isTab,
|
|
272
|
+
enableWhenIsActivated,
|
|
273
|
+
enableWhenItems,
|
|
274
|
+
enableWhenExpressions,
|
|
275
|
+
completedTabsCollapsed
|
|
276
|
+
} = params;
|
|
277
|
+
|
|
278
|
+
if (
|
|
279
|
+
!isTab ||
|
|
280
|
+
isHidden({
|
|
281
|
+
questionnaireItem: qItem,
|
|
282
|
+
enableWhenIsActivated,
|
|
283
|
+
enableWhenItems,
|
|
284
|
+
enableWhenExpressions
|
|
285
|
+
})
|
|
286
|
+
) {
|
|
287
|
+
return true;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
if (completedTabsCollapsed) {
|
|
291
|
+
const completedDisplayItem = contextDisplayItems.find(
|
|
292
|
+
(contextDisplayItem) => contextDisplayItem.text === 'Complete'
|
|
293
|
+
);
|
|
294
|
+
if (
|
|
295
|
+
completedDisplayItem &&
|
|
296
|
+
!isHidden({
|
|
297
|
+
questionnaireItem: completedDisplayItem,
|
|
298
|
+
enableWhenIsActivated,
|
|
299
|
+
enableWhenItems,
|
|
300
|
+
enableWhenExpressions
|
|
301
|
+
})
|
|
302
|
+
) {
|
|
303
|
+
return true;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
return false;
|
|
308
|
+
}
|
package/src/utils/valueSet.ts
CHANGED
|
@@ -35,7 +35,6 @@ const VALID_VALUE_SET_URL_REGEX =
|
|
|
35
35
|
/https?:\/\/(www\.)?[-\w@:%.+~#=]{2,256}\.[a-z]{2,4}\b([-@\w:%+.~#?&/=]*ValueSet[-@\w:%+.~#?&/=]*)/;
|
|
36
36
|
|
|
37
37
|
const VALID_FHIRPATH_VARIABLE_REGEX = /%(.*?)\./;
|
|
38
|
-
const ONTOSERVER_ENDPOINT = 'https://r4.ontoserver.csiro.au/fhir/';
|
|
39
38
|
|
|
40
39
|
export function getTerminologyServerUrl(qItem: QuestionnaireItem): string | undefined {
|
|
41
40
|
const itemControl = qItem.extension?.find(
|
|
@@ -48,18 +47,18 @@ export function getTerminologyServerUrl(qItem: QuestionnaireItem): string | unde
|
|
|
48
47
|
return undefined;
|
|
49
48
|
}
|
|
50
49
|
|
|
51
|
-
export function getValueSetPromise(url: string,
|
|
50
|
+
export function getValueSetPromise(url: string, terminologyServerUrl: string): Promise<ValueSet> {
|
|
52
51
|
let valueSetUrl = url;
|
|
53
52
|
|
|
54
53
|
if (url.includes('ValueSet/$expand?url=')) {
|
|
55
54
|
const splitUrl = url.split('ValueSet/$expand?url=');
|
|
56
|
-
|
|
55
|
+
terminologyServerUrl = splitUrl[0];
|
|
57
56
|
valueSetUrl = splitUrl[1];
|
|
58
57
|
}
|
|
59
58
|
|
|
60
59
|
valueSetUrl = valueSetUrl.replace('|', '&version=');
|
|
61
60
|
|
|
62
|
-
return FHIR.client({ serverUrl:
|
|
61
|
+
return FHIR.client({ serverUrl: terminologyServerUrl }).request({
|
|
63
62
|
url: 'ValueSet/$expand?url=' + valueSetUrl
|
|
64
63
|
});
|
|
65
64
|
}
|
package/lib/hooks/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as useHidden } from './useHidden';
|
package/lib/hooks/index.js
DELETED
package/lib/hooks/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Typography.js","sourceRoot":"","sources":["../../../src/theme/overrides/Typography.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAY;IAC7C,OAAO;QACL,aAAa,EAAE;YACb,cAAc,EAAE;gBACd,SAAS,EAAE;oBACT,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC/B;gBACD,YAAY,EAAE;oBACZ,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC/B;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
|