sdc-qrf 0.3.19 → 0.3.20

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/dist/utils.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Extension, Questionnaire, QuestionnaireItem, QuestionnaireResponse, QuestionnaireResponseItem } from '@beda.software/aidbox-types';
2
- import { AnswerValue, FormAnswerItems, FormItems, ItemContext, QuestionnaireResponseFormData } from './types';
2
+ import { AnswerValue, FormAnswerItems, FormGroupItems, FormItems, ItemContext, QuestionnaireResponseFormData } from './types';
3
3
  export declare function wrapAnswerValue(type: QuestionnaireItem['type'], answer: any): {
4
4
  Coding: any;
5
5
  string?: undefined;
@@ -45,6 +45,8 @@ export declare function getBranchItems(fieldPath: string[], questionnaire: Quest
45
45
  export declare function calcContext(initialContext: ItemContext, variables: QuestionnaireItem['variable'], qItem: QuestionnaireItem, qrItem: QuestionnaireResponseItem): ItemContext;
46
46
  export declare function compareValue(firstAnswerValue: AnswerValue, secondAnswerValue: AnswerValue): 0 | 1 | -1;
47
47
  export declare function mapFormToResponse(values: FormItems, questionnaire: Questionnaire): Pick<QuestionnaireResponse, 'item'>;
48
+ export declare function getItemKey(items: FormGroupItems | FormAnswerItems): any;
49
+ export declare function populateItemKey(items: FormGroupItems | FormAnswerItems): any;
48
50
  export declare function mapResponseToForm(resource: QuestionnaireResponse, questionnaire: Questionnaire): FormItems;
49
51
  export declare function findAnswersForQuestionsRecursive(linkId: string, values?: FormItems): any | null;
50
52
  export declare function findAnswersForQuestion<T = any>(linkId: string, parentPath: string[], values: FormItems): Array<FormAnswerItems<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,SAAS,EACT,aAAa,EACb,iBAAiB,EAEjB,qBAAqB,EACrB,yBAAyB,EAE5B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACH,WAAW,EACX,eAAe,EAEf,SAAS,EACT,WAAW,EACX,6BAA6B,EAEhC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiC/D,CAAC,IAAI,CAAC,MAAQ;;;;;;EAC1B;AAED,wBAAgB,cAAc,CAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB,GAC7C;IAAE,KAAK,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,yBAAyB,EAAE,CAAA;CAAE,CAqCpE;AAED,wBAAgB,WAAW,CACvB,cAAc,EAAE,WAAW,EAC3B,SAAS,EAAE,iBAAiB,CAAC,UAAU,CAAC,EACxC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,yBAAyB,GAClC,WAAW,CAiBb;AAED,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,cAwBzF;AA6FD,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,GAC7B,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAIrC;AAyDD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,aAE9F;AAMD,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,GAAG,GAAG,IAAI,CA8C/F;AAED,wBAAgB,sBAAsB,CAAC,CAAC,GAAG,GAAG,EAC1C,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,GAClB,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAsB3B;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,WAgB7E;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,GAAG,CAAA;CAAE,CAAC,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAuDzG;AAgED,wBAAgB,qBAAqB,CACjC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,GACrB,SAAS,CAQX;AAgGD,wBAAgB,mBAAmB,CAC/B,kBAAkB,EAAE,iBAAiB,EAAE,EACvC,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,uBAWvB;AAED,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,6BAA6B,CAAC,SAAS,CAAC,EACxD,MAAM,EAAE,SAAS,GAClB,WAAW,CAwBb;AAsBD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;;iBAkBhF;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,WAQtC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,oBAE1E"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,SAAS,EACT,aAAa,EACb,iBAAiB,EAEjB,qBAAqB,EACrB,yBAAyB,EAE5B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACH,WAAW,EACX,eAAe,EACf,cAAc,EACd,SAAS,EACT,WAAW,EACX,6BAA6B,EAEhC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiC/D,CAAC,IAAI,CAAC,MAAQ;;;;;;EAC1B;AAED,wBAAgB,cAAc,CAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB,GAC7C;IAAE,KAAK,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,yBAAyB,EAAE,CAAA;CAAE,CAqCpE;AAED,wBAAgB,WAAW,CACvB,cAAc,EAAE,WAAW,EAC3B,SAAS,EAAE,iBAAiB,CAAC,UAAU,CAAC,EACxC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,yBAAyB,GAClC,WAAW,CAiBb;AAED,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,cAwBzF;AA6FD,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,GAC7B,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAIrC;AAGD,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,OAEjE;AACD,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,OAStE;AA2DD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,aAE9F;AAMD,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,GAAG,GAAG,IAAI,CA8C/F;AAED,wBAAgB,sBAAsB,CAAC,CAAC,GAAG,GAAG,EAC1C,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,GAClB,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAsB3B;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,WAgB7E;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,GAAG,CAAA;CAAE,CAAC,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAuDzG;AAgED,wBAAgB,qBAAqB,CACjC,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,GACrB,SAAS,CAQX;AAgGD,wBAAgB,mBAAmB,CAC/B,kBAAkB,EAAE,iBAAiB,EAAE,EACvC,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,uBAWvB;AAED,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,6BAA6B,CAAC,SAAS,CAAC,EACxD,MAAM,EAAE,SAAS,GAClB,WAAW,CAwBb;AAsBD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;;iBAkBhF;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,WAQtC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,oBAE1E"}
package/dist/utils.js CHANGED
@@ -5,6 +5,8 @@ exports.getBranchItems = getBranchItems;
5
5
  exports.calcContext = calcContext;
6
6
  exports.compareValue = compareValue;
7
7
  exports.mapFormToResponse = mapFormToResponse;
8
+ exports.getItemKey = getItemKey;
9
+ exports.populateItemKey = populateItemKey;
8
10
  exports.mapResponseToForm = mapResponseToForm;
9
11
  exports.findAnswersForQuestionsRecursive = findAnswersForQuestionsRecursive;
10
12
  exports.findAnswersForQuestion = findAnswersForQuestion;
@@ -22,6 +24,7 @@ const lodash_1 = tslib_1.__importDefault(require("lodash"));
22
24
  const isArray_1 = tslib_1.__importDefault(require("lodash/isArray"));
23
25
  const isPlainObject_1 = tslib_1.__importDefault(require("lodash/isPlainObject"));
24
26
  const query_string_1 = tslib_1.__importDefault(require("query-string"));
27
+ const uuid_1 = require("uuid");
25
28
  function wrapAnswerValue(type, answer) {
26
29
  if (type === 'choice') {
27
30
  if ((0, isPlainObject_1.default)(answer)) {
@@ -189,6 +192,16 @@ function mapFormToResponse(values, questionnaire) {
189
192
  item: mapFormToResponseRecursive(values, (_a = questionnaire.item) !== null && _a !== void 0 ? _a : []),
190
193
  };
191
194
  }
195
+ const ITEM_KEY = '_itemKey';
196
+ function getItemKey(items) {
197
+ return items[ITEM_KEY];
198
+ }
199
+ function populateItemKey(items) {
200
+ if (items[ITEM_KEY]) {
201
+ return items;
202
+ }
203
+ return Object.assign(Object.assign({}, items), { [ITEM_KEY]: (0, uuid_1.v4)() });
204
+ }
192
205
  function mapResponseToFormRecursive(questionnaireResponseItems, questionnaireItems) {
193
206
  return questionnaireItems.reduce((acc, question) => {
194
207
  var _a, _b, _c, _d, _e, _f;
@@ -200,19 +213,19 @@ function mapResponseToFormRecursive(questionnaireResponseItems, questionnaireIte
200
213
  const qrItems = (_a = questionnaireResponseItems.filter((qrItem) => qrItem.linkId === linkId)) !== null && _a !== void 0 ? _a : [];
201
214
  if (qrItems.length && isGroup(question)) {
202
215
  if (repeats) {
203
- return Object.assign(Object.assign({}, acc), { [linkId]: {
216
+ return Object.assign(Object.assign({}, acc), { [linkId]: populateItemKey({
204
217
  question: text,
205
218
  items: qrItems.map((qrItem) => {
206
219
  var _a, _b;
207
220
  return mapResponseToFormRecursive((_a = qrItem.item) !== null && _a !== void 0 ? _a : [], (_b = question.item) !== null && _b !== void 0 ? _b : []);
208
221
  }),
209
- } });
222
+ }) });
210
223
  }
211
224
  else {
212
- return Object.assign(Object.assign({}, acc), { [linkId]: {
225
+ return Object.assign(Object.assign({}, acc), { [linkId]: populateItemKey({
213
226
  question: text,
214
227
  items: mapResponseToFormRecursive((_c = (_b = qrItems[0]) === null || _b === void 0 ? void 0 : _b.item) !== null && _c !== void 0 ? _c : [], (_d = question.item) !== null && _d !== void 0 ? _d : []),
215
- } });
228
+ }) });
216
229
  }
217
230
  }
218
231
  const answers = ((_f = (_e = qrItems === null || qrItems === void 0 ? void 0 : qrItems[0]) === null || _e === void 0 ? void 0 : _e.answer) === null || _f === void 0 ? void 0 : _f.length)
@@ -223,7 +236,7 @@ function mapResponseToFormRecursive(questionnaireResponseItems, questionnaireIte
223
236
  }
224
237
  return Object.assign(Object.assign({}, acc), { [linkId]: answers.map((answer) => {
225
238
  var _a, _b;
226
- return ({
239
+ return populateItemKey({
227
240
  question: text,
228
241
  value: answer.value,
229
242
  items: mapResponseToFormRecursive((_a = answer.item) !== null && _a !== void 0 ? _a : [], (_b = question.item) !== null && _b !== void 0 ? _b : []),
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "sdc-qrf",
3
3
  "license": "MIT",
4
- "version": "0.3.19",
4
+ "version": "0.3.20",
5
5
  "scripts": {
6
6
  "test": "vitest --watch=false",
7
7
  "test:watch": "vitest --watch",
@@ -14,7 +14,8 @@
14
14
  "classnames": "^2.5.1",
15
15
  "fhirpath": "^3.18.0",
16
16
  "lodash": "^4.17.21",
17
- "query-string": "^7.1.1"
17
+ "query-string": "^7.1.1",
18
+ "uuid": "^11.1.0"
18
19
  },
19
20
  "devDependencies": {
20
21
  "@babel/core": "^7.26.10",
@@ -45,5 +46,6 @@
45
46
  "README.md",
46
47
  "LICENSE"
47
48
  ],
48
- "main": "./dist/index.js"
49
+ "main": "./dist/index.js",
50
+ "types": "./dist/index.d.ts"
49
51
  }
package/src/utils.ts CHANGED
@@ -3,6 +3,7 @@ import _ from 'lodash';
3
3
  import isArray from 'lodash/isArray';
4
4
  import isPlainObject from 'lodash/isPlainObject';
5
5
  import queryString from 'query-string';
6
+ import { v4 as uuidv4 } from 'uuid';
6
7
 
7
8
  import {
8
9
  Extension,
@@ -253,6 +254,21 @@ export function mapFormToResponse(
253
254
  };
254
255
  }
255
256
 
257
+ const ITEM_KEY = '_itemKey';
258
+ export function getItemKey(items: FormGroupItems | FormAnswerItems) {
259
+ return (items as any)[ITEM_KEY];
260
+ }
261
+ export function populateItemKey(items: FormGroupItems | FormAnswerItems) {
262
+ if ((items as any)[ITEM_KEY]) {
263
+ return items;
264
+ }
265
+
266
+ return {
267
+ ...(items as any),
268
+ [ITEM_KEY]: uuidv4(),
269
+ };
270
+ }
271
+
256
272
  function mapResponseToFormRecursive(
257
273
  questionnaireResponseItems: QuestionnaireResponseItem[],
258
274
  questionnaireItems: QuestionnaireItem[],
@@ -271,20 +287,20 @@ function mapResponseToFormRecursive(
271
287
  if (repeats) {
272
288
  return {
273
289
  ...acc,
274
- [linkId]: {
290
+ [linkId]: populateItemKey({
275
291
  question: text,
276
292
  items: qrItems.map((qrItem) => {
277
293
  return mapResponseToFormRecursive(qrItem.item ?? [], question.item ?? []);
278
294
  }),
279
- },
295
+ }),
280
296
  };
281
297
  } else {
282
298
  return {
283
299
  ...acc,
284
- [linkId]: {
300
+ [linkId]: populateItemKey({
285
301
  question: text,
286
302
  items: mapResponseToFormRecursive(qrItems[0]?.item ?? [], question.item ?? []),
287
- },
303
+ }),
288
304
  };
289
305
  }
290
306
  }
@@ -299,11 +315,13 @@ function mapResponseToFormRecursive(
299
315
 
300
316
  return {
301
317
  ...acc,
302
- [linkId]: answers.map((answer) => ({
303
- question: text,
304
- value: answer.value,
305
- items: mapResponseToFormRecursive(answer.item ?? [], question.item ?? []),
306
- })),
318
+ [linkId]: answers.map((answer) =>
319
+ populateItemKey({
320
+ question: text,
321
+ value: answer.value,
322
+ items: mapResponseToFormRecursive(answer.item ?? [], question.item ?? []),
323
+ }),
324
+ ),
307
325
  };
308
326
  }, {});
309
327
  }