sdc-qrf 0.3.35 → 0.3.36

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.
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1F,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAGhF,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,gBAAgB,GAAG,iBAAiB,CAiGpF"}
1
+ {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1F,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAGhF,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,gBAAgB,GAAG,iBAAiB,CAyGpF"}
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const constants_1 = require("../../constants");
6
6
  function processExtensions(questionnaire) {
7
7
  var _a, _b, _c;
8
- const { launchContext, mapping, sourceQueries, targetStructureMap, assembledFrom, assembleContext } = questionnaire, fhirQuestionnaire = tslib_1.__rest(questionnaire, ["launchContext", "mapping", "sourceQueries", "targetStructureMap", "assembledFrom", "assembleContext"]);
8
+ const { launchContext, mapping, sourceQueries, targetStructureMap, assembledFrom, assembleContext, itemPopulationContext } = questionnaire, fhirQuestionnaire = tslib_1.__rest(questionnaire, ["launchContext", "mapping", "sourceQueries", "targetStructureMap", "assembledFrom", "assembleContext", "itemPopulationContext"]);
9
9
  let extensions = [];
10
10
  if (launchContext) {
11
11
  for (const launchContextItem of launchContext) {
@@ -68,6 +68,12 @@ function processExtensions(questionnaire) {
68
68
  valueString: assembleContextItem,
69
69
  })));
70
70
  }
71
+ if (itemPopulationContext) {
72
+ extensions.push({
73
+ url: 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext',
74
+ valueExpression: itemPopulationContext,
75
+ });
76
+ }
71
77
  if (extensions.length) {
72
78
  fhirQuestionnaire.extension = ((_c = fhirQuestionnaire.extension) !== null && _c !== void 0 ? _c : []).concat(extensions);
73
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fceToFhir/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Questionnaire as FHIRQuestionnaire } from 'fhir/r4b';
1
+ import { Questionnaire as FHIRQuestionnaire, Expression as FHIRExpression } from 'fhir/r4b';
2
2
  export declare function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
3
3
  launchContext?: any[];
4
4
  mapping?: any[];
@@ -6,6 +6,7 @@ export declare function processExtensions(fhirQuestionnaire: FHIRQuestionnaire):
6
6
  targetStructureMap?: any[];
7
7
  assembledFrom?: any;
8
8
  assembleContext?: string[];
9
+ itemPopulationContext?: FHIRExpression;
9
10
  };
10
11
  export declare function processLaunchContext(fhirQuestionnaire: FHIRQuestionnaire): any[] | undefined;
11
12
  //# sourceMappingURL=processExtensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE9D,wBAAgB,iBAAiB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG;IACrE,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAgBA;AAED,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAG,SAAS,CA2C5F"}
1
+ {"version":3,"file":"processExtensions.d.ts","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,UAAU,CAAC;AAE5F,wBAAgB,iBAAiB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG;IACrE,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,qBAAqB,CAAC,EAAE,cAAc,CAAC;CAC1C,CAkBA;AAED,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAG,SAAS,CA2C5F"}
@@ -10,6 +10,7 @@ function processExtensions(fhirQuestionnaire) {
10
10
  const targetStructureMap = processTargetStructureMap(fhirQuestionnaire);
11
11
  const assembledFrom = processAssembledFrom(fhirQuestionnaire);
12
12
  const assembleContext = processAssembleContext(fhirQuestionnaire);
13
+ const itemPopulationContext = processItemPopulationContext(fhirQuestionnaire);
13
14
  return {
14
15
  launchContext: (launchContext === null || launchContext === void 0 ? void 0 : launchContext.length) ? launchContext : undefined,
15
16
  mapping: (mapping === null || mapping === void 0 ? void 0 : mapping.length) ? mapping : undefined,
@@ -17,6 +18,7 @@ function processExtensions(fhirQuestionnaire) {
17
18
  targetStructureMap: (targetStructureMap === null || targetStructureMap === void 0 ? void 0 : targetStructureMap.length) ? targetStructureMap : undefined,
18
19
  assembledFrom: assembledFrom ? assembledFrom : undefined,
19
20
  assembleContext: assembleContext.length ? assembleContext : undefined,
21
+ itemPopulationContext: itemPopulationContext ? itemPopulationContext : undefined,
20
22
  };
21
23
  }
22
24
  function processLaunchContext(fhirQuestionnaire) {
@@ -100,4 +102,12 @@ function processAssembleContext(fhirQuestionnaire) {
100
102
  const extensions = (_a = fhirQuestionnaire.extension) === null || _a === void 0 ? void 0 : _a.filter((ext) => ext.url === 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext');
101
103
  return (extensions !== null && extensions !== void 0 ? extensions : []).map((extension) => extension.valueString);
102
104
  }
105
+ function processItemPopulationContext(fhirQuestionnaire) {
106
+ var _a;
107
+ const extension = (_a = fhirQuestionnaire.extension) === null || _a === void 0 ? void 0 : _a.find((ext) => ext.url === 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext');
108
+ if (!extension) {
109
+ return undefined;
110
+ }
111
+ return extension.valueExpression;
112
+ }
103
113
  //# sourceMappingURL=processExtensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processExtensions.js","sourceRoot":"","sources":["../../../../src/converter/fhirToFce/questionnaire/processExtensions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sdc-qrf",
3
3
  "license": "MIT",
4
- "version": "0.3.35",
4
+ "version": "0.3.36",
5
5
  "scripts": {
6
6
  "test": "vitest --watch=false",
7
7
  "test:watch": "vitest --watch",
@@ -7,6 +7,10 @@
7
7
  "status": "active",
8
8
  "assembledFrom": "assemble_context",
9
9
  "assembleContext": ["prefix1", "prefix2"],
10
+ "itemPopulationContext": {
11
+ "language": "text/fhirpath",
12
+ "expression": "%LaunchPatient.name"
13
+ },
10
14
  "item": [
11
15
  {
12
16
  "type": "string",
@@ -24,6 +24,13 @@
24
24
  {
25
25
  "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-assembleContext",
26
26
  "valueString": "prefix2"
27
+ },
28
+ {
29
+ "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext",
30
+ "valueExpression": {
31
+ "language": "text/fhirpath",
32
+ "expression": "%LaunchPatient.name"
33
+ }
27
34
  }
28
35
  ],
29
36
  "status": "active",
@@ -11,6 +11,7 @@ export function processExtensions(questionnaire: FCEQuestionnaire): FHIRQuestion
11
11
  targetStructureMap,
12
12
  assembledFrom,
13
13
  assembleContext,
14
+ itemPopulationContext,
14
15
  ...fhirQuestionnaire
15
16
  } = questionnaire;
16
17
 
@@ -95,6 +96,13 @@ export function processExtensions(questionnaire: FCEQuestionnaire): FHIRQuestion
95
96
  );
96
97
  }
97
98
 
99
+ if (itemPopulationContext) {
100
+ extensions.push({
101
+ url: 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext',
102
+ valueExpression: itemPopulationContext,
103
+ });
104
+ }
105
+
98
106
  if (extensions.length) {
99
107
  fhirQuestionnaire.extension = (fhirQuestionnaire.extension ?? []).concat(extensions);
100
108
  }
@@ -1,6 +1,6 @@
1
1
  import { canonical } from '@beda.software/aidbox-types';
2
2
  import { legacyMappingExtensionUrl, mappingExtensionUrl } from '../../constants';
3
- import { Questionnaire as FHIRQuestionnaire } from 'fhir/r4b';
3
+ import { Questionnaire as FHIRQuestionnaire, Expression as FHIRExpression } from 'fhir/r4b';
4
4
 
5
5
  export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
6
6
  launchContext?: any[];
@@ -9,6 +9,7 @@ export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
9
9
  targetStructureMap?: any[];
10
10
  assembledFrom?: any;
11
11
  assembleContext?: string[];
12
+ itemPopulationContext?: FHIRExpression;
12
13
  } {
13
14
  const launchContext = processLaunchContext(fhirQuestionnaire);
14
15
  const mapping = processMapping(fhirQuestionnaire);
@@ -16,6 +17,7 @@ export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
16
17
  const targetStructureMap = processTargetStructureMap(fhirQuestionnaire);
17
18
  const assembledFrom = processAssembledFrom(fhirQuestionnaire);
18
19
  const assembleContext = processAssembleContext(fhirQuestionnaire);
20
+ const itemPopulationContext = processItemPopulationContext(fhirQuestionnaire);
19
21
 
20
22
  return {
21
23
  launchContext: launchContext?.length ? launchContext : undefined,
@@ -24,6 +26,7 @@ export function processExtensions(fhirQuestionnaire: FHIRQuestionnaire): {
24
26
  targetStructureMap: targetStructureMap?.length ? targetStructureMap : undefined,
25
27
  assembledFrom: assembledFrom ? assembledFrom : undefined,
26
28
  assembleContext: assembleContext.length ? assembleContext : undefined,
29
+ itemPopulationContext: itemPopulationContext ? itemPopulationContext : undefined,
27
30
  };
28
31
  }
29
32
 
@@ -129,3 +132,15 @@ function processAssembleContext(fhirQuestionnaire: FHIRQuestionnaire): string[]
129
132
 
130
133
  return (extensions ?? []).map((extension) => extension.valueString!);
131
134
  }
135
+
136
+ function processItemPopulationContext(fhirQuestionnaire: FHIRQuestionnaire): FHIRExpression | undefined {
137
+ const extension = fhirQuestionnaire.extension?.find(
138
+ (ext) => ext.url === 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-itemPopulationContext',
139
+ );
140
+
141
+ if (!extension) {
142
+ return undefined;
143
+ }
144
+
145
+ return extension.valueExpression;
146
+ }