@aehrc/smart-forms-renderer 0.44.0 → 0.44.2

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.
@@ -86,7 +86,7 @@ function OpenChoiceCheckboxAnswerValueSetItem(props) {
86
86
  React.createElement(OpenChoiceCheckboxAnswerValueSetFields, { qItem: qItem, options: options, answers: answers, openLabelText: openLabelText, openLabelValue: openLabelValue, openLabelChecked: openLabelChecked, readOnly: readOnly, terminologyError: terminologyError, onOptionChange: handleOptionChange, onOpenLabelCheckedChange: handleOpenLabelCheckedChange, onOpenLabelInputChange: handleOpenLabelInputChange }),
87
87
  React.createElement(DisplayInstructions, { displayInstructions: displayInstructions, readOnly: readOnly })));
88
88
  }
89
- return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-open-choice-checkbox-answer-option-box", "data-linkid": qItem.linkId, onClick: () => onFocusLinkId(qItem.linkId) },
89
+ return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-open-choice-checkbox-answer-value-set-box", "data-linkid": qItem.linkId, onClick: () => onFocusLinkId(qItem.linkId) },
90
90
  React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly },
91
91
  React.createElement(OpenChoiceCheckboxAnswerValueSetFields, { qItem: qItem, options: options, answers: answers, openLabelText: openLabelText, openLabelValue: openLabelValue, openLabelChecked: openLabelChecked, readOnly: readOnly, terminologyError: terminologyError, onOptionChange: handleOptionChange, onOpenLabelCheckedChange: handleOpenLabelCheckedChange, onOpenLabelInputChange: handleOpenLabelInputChange }))));
92
92
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChoiceCheckboxAnswerValueSetItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenChoiceCheckboxAnswerValueSetItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.tsx"],"names":[],"mappings":"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"}
@@ -225,15 +225,22 @@ export function updateEnableWhenItemAnswer(items, linkedQuestions, linkId, newAn
225
225
  */
226
226
  export function checkItemIsEnabledSingle(enableWhenItemProperties) {
227
227
  const checkedIsEnabledItems = [];
228
+ // Check if linked item satisfies enableWhen condition
228
229
  for (const linkedItem of enableWhenItemProperties.linked) {
230
+ let isEnabledForThisLinkedItem = false;
231
+ // Linked item has answers
229
232
  if (linkedItem.answer && linkedItem.answer.length > 0) {
233
+ // Check if linked answer within item satisfies enableWhen condition
234
+ // Exit early once a linked answer is found to satisfy the condition
230
235
  for (const answer of linkedItem.answer) {
231
- const isEnabledForThisLinkedItem = isEnabledAnswerTypeSwitcher(linkedItem.enableWhen, answer);
232
- // In a repeat item, if at least one answer satisfies the condition, the item is enabled
233
- // FIXME need to look further at this
234
- checkedIsEnabledItems.push(isEnabledForThisLinkedItem);
235
- break;
236
+ const isEnabledForThisLinkedAnswer = isEnabledAnswerTypeSwitcher(linkedItem.enableWhen, answer);
237
+ if (isEnabledForThisLinkedAnswer) {
238
+ isEnabledForThisLinkedItem = true;
239
+ break;
240
+ }
236
241
  }
242
+ // Push result of the linked item to the checkedIsEnabledItems array
243
+ checkedIsEnabledItems.push(isEnabledForThisLinkedItem);
237
244
  continue;
238
245
  }
239
246
  // Linked item doesn't have any answers, but we still have to check for unanswered booleans
@@ -1 +1 @@
1
- {"version":3,"file":"enableWhen.js","sourceRoot":"","sources":["../../src/utils/enableWhen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enableWhen.js","sourceRoot":"","sources":["../../src/utils/enableWhen.ts"],"names":[],"mappings":"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"}
@@ -14,15 +14,28 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
+ var __rest = (this && this.__rest) || function (s, e) {
18
+ var t = {};
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
20
+ t[p] = s[p];
21
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
22
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
24
+ t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
17
28
  import { OpenChoiceItemControl } from '../interfaces/choice.enum';
18
29
  import { isSpecificItemControl } from './itemControl';
19
30
  import isEqual from 'lodash.isequal';
31
+ import differenceWith from 'lodash.differencewith';
20
32
  /**
21
33
  * Update open choice answer based on open label value
22
34
  *
23
35
  * @author Sean Fong
24
36
  */
25
37
  export function updateOpenLabelAnswer(openLabelChecked, changedOpenLabelValue, answers, options, oldQrItem, isMultiSelection, answerKey) {
38
+ var _a;
26
39
  // Open label is unchecked, search for open label value and remove it
27
40
  if (!openLabelChecked) {
28
41
  // In single-selection, return empty array because there can only be one answer
@@ -64,8 +77,15 @@ export function updateOpenLabelAnswer(openLabelChecked, changedOpenLabelValue, a
64
77
  return oldQrItem;
65
78
  }
66
79
  // New open label answer is different from old open label answer, update it
67
- oldOpenLabelAnswer.valueString = changedOpenLabelValue;
68
- return Object.assign(Object.assign({}, oldQrItem), { answer: oldQrItem.answer });
80
+ const updatedAnswers = (_a = oldQrItem.answer) === null || _a === void 0 ? void 0 : _a.map((answer) => {
81
+ const { valueString } = answer;
82
+ if (valueString === oldOpenLabelAnswer.valueString) {
83
+ return Object.assign(Object.assign({}, answer), { valueString: changedOpenLabelValue // Update the valueString
84
+ });
85
+ }
86
+ return answer; // Keep the other answers unchanged
87
+ });
88
+ return Object.assign(Object.assign({}, oldQrItem), { answer: updatedAnswers });
69
89
  }
70
90
  /**
71
91
  * Get the old open label answer from the list of answers
@@ -73,8 +93,14 @@ export function updateOpenLabelAnswer(openLabelChecked, changedOpenLabelValue, a
73
93
  * @author Sean Fong
74
94
  */
75
95
  export function getOldOpenLabelAnswer(answers, options) {
76
- const openLabelAnswer = answers.find((answer) => !options.some((option) => isEqual(option, answer)));
77
- return openLabelAnswer !== null && openLabelAnswer !== void 0 ? openLabelAnswer : null;
96
+ var _a;
97
+ const answersWithoutId = answers.map((answer) => {
98
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
99
+ const { id } = answer, rest = __rest(answer, ["id"]);
100
+ return rest;
101
+ });
102
+ const outliers = differenceWith(answersWithoutId, options, isEqual);
103
+ return (_a = outliers === null || outliers === void 0 ? void 0 : outliers[0]) !== null && _a !== void 0 ? _a : null;
78
104
  }
79
105
  /**
80
106
  * Get openChoice control type from qItem
@@ -1 +1 @@
1
- {"version":3,"file":"openChoice.js","sourceRoot":"","sources":["../../src/utils/openChoice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openChoice.js","sourceRoot":"","sources":["../../src/utils/openChoice.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aehrc/smart-forms-renderer",
3
- "version": "0.44.0",
3
+ "version": "0.44.2",
4
4
  "description": "FHIR Structured Data Captured (SDC) rendering engine for Smart Forms",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -38,6 +38,7 @@
38
38
  "lodash.clonedeep": "^4.5.0",
39
39
  "lodash.debounce": "^4.0.8",
40
40
  "lodash.difference": "^4.5.0",
41
+ "lodash.differencewith": "^4.5.0",
41
42
  "lodash.intersection": "^4.4.0",
42
43
  "lodash.isequal": "^4.5.0",
43
44
  "nanoid": "^5.0.7",
@@ -82,6 +83,7 @@
82
83
  "@types/lodash.clonedeep": "^4.5.9",
83
84
  "@types/lodash.debounce": "^4.0.9",
84
85
  "@types/lodash.difference": "^4.5.9",
86
+ "@types/lodash.differencewith": "^4.5.9",
85
87
  "@types/lodash.intersection": "^4.4.9",
86
88
  "@types/lodash.isequal": "^4.5.8",
87
89
  "@types/react": ">=17.0.0",
@@ -166,7 +166,7 @@ function OpenChoiceCheckboxAnswerValueSetItem(props: OpenChoiceCheckboxAnswerVal
166
166
 
167
167
  return (
168
168
  <FullWidthFormComponentBox
169
- data-test="q-item-open-choice-checkbox-answer-option-box"
169
+ data-test="q-item-open-choice-checkbox-answer-value-set-box"
170
170
  data-linkid={qItem.linkId}
171
171
  onClick={() => onFocusLinkId(qItem.linkId)}>
172
172
  <ItemFieldGrid qItem={qItem} readOnly={readOnly}>
@@ -315,6 +315,98 @@ export const qEnableWhen: Questionnaire = {
315
315
  ]
316
316
  };
317
317
 
318
+ export const qEnableWhenMultiCheckbox: Questionnaire = {
319
+ resourceType: 'Questionnaire',
320
+ id: 'EnableWhenMultiCheckbox',
321
+ name: 'EnableWhenMultiCheckbox',
322
+ title: 'EnableWhen Multi-select Checkbox',
323
+ version: '0.1.0',
324
+ status: 'draft',
325
+ date: '2024-05-01',
326
+ url: 'https://smartforms.csiro.au/docs/behavior/other/enable-when-multi-checkbox',
327
+ item: [
328
+ {
329
+ extension: [
330
+ {
331
+ url: 'http://hl7.org/fhir/StructureDefinition/questionnaire-itemControl',
332
+ valueCodeableConcept: {
333
+ coding: [
334
+ {
335
+ system: 'http://hl7.org/fhir/questionnaire-item-control',
336
+ code: 'check-box'
337
+ }
338
+ ]
339
+ }
340
+ },
341
+ {
342
+ url: 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-openLabel',
343
+ valueString: 'Other, please specify'
344
+ }
345
+ ],
346
+ linkId: 'select-conditions-list',
347
+ text: 'Select one or more conditions',
348
+ type: 'open-choice',
349
+ repeats: true,
350
+ answerOption: [
351
+ {
352
+ valueString: 'Condition A (Displays Clinical guidance: Condition A question)'
353
+ },
354
+ {
355
+ valueString: 'Condition B (Displays Clinical guidance: Condition B question)'
356
+ },
357
+ {
358
+ valueString: 'Condition C (Displays Clinical guidance: Condition C question)'
359
+ },
360
+ {
361
+ valueString: 'Condition D'
362
+ },
363
+ {
364
+ valueString: 'Condition E'
365
+ },
366
+ {
367
+ valueString: 'Condition F'
368
+ }
369
+ ]
370
+ },
371
+ {
372
+ linkId: 'clinical-guidance-a',
373
+ text: 'Clinical guidance: Condition A',
374
+ type: 'display',
375
+ enableWhen: [
376
+ {
377
+ question: 'select-conditions-list',
378
+ operator: '=',
379
+ answerString: 'Condition A (Displays Clinical guidance: Condition A question)'
380
+ }
381
+ ]
382
+ },
383
+ {
384
+ linkId: 'clinical-guidance-b',
385
+ text: 'Clinical guidance: Condition B',
386
+ type: 'display',
387
+ enableWhen: [
388
+ {
389
+ question: 'select-conditions-list',
390
+ operator: '=',
391
+ answerString: 'Condition B (Displays Clinical guidance: Condition B question)'
392
+ }
393
+ ]
394
+ },
395
+ {
396
+ linkId: 'clinical-guidance-c',
397
+ text: 'Clinical guidance: Condition C',
398
+ type: 'display',
399
+ enableWhen: [
400
+ {
401
+ question: 'select-conditions-list',
402
+ operator: '=',
403
+ answerString: 'Condition C (Displays Clinical guidance: Condition C question)'
404
+ }
405
+ ]
406
+ }
407
+ ]
408
+ };
409
+
318
410
  export const qEnableBehaviorAll: Questionnaire = {
319
411
  resourceType: 'Questionnaire',
320
412
  id: 'EnableBehaviorAll',
@@ -23,6 +23,7 @@ import {
23
23
  qEnableWhen,
24
24
  qEnableWhenExpressionSimple,
25
25
  qEnableWhenExpressionTabs,
26
+ qEnableWhenMultiCheckbox,
26
27
  qInitialRepeats,
27
28
  qInitialSingle,
28
29
  qText
@@ -59,6 +60,12 @@ export const EnableWhen: Story = {
59
60
  }
60
61
  };
61
62
 
63
+ export const EnableWhenMultiCheckbox: Story = {
64
+ args: {
65
+ questionnaire: qEnableWhenMultiCheckbox
66
+ }
67
+ };
68
+
62
69
  export const EnableBehaviorAll: Story = {
63
70
  args: {
64
71
  questionnaire: qEnableBehaviorAll
@@ -339,19 +339,29 @@ export function checkItemIsEnabledSingle(
339
339
  ): boolean {
340
340
  const checkedIsEnabledItems: boolean[] = [];
341
341
 
342
+ // Check if linked item satisfies enableWhen condition
342
343
  for (const linkedItem of enableWhenItemProperties.linked) {
344
+ let isEnabledForThisLinkedItem = false;
345
+
346
+ // Linked item has answers
343
347
  if (linkedItem.answer && linkedItem.answer.length > 0) {
348
+ // Check if linked answer within item satisfies enableWhen condition
349
+ // Exit early once a linked answer is found to satisfy the condition
344
350
  for (const answer of linkedItem.answer) {
345
- const isEnabledForThisLinkedItem = isEnabledAnswerTypeSwitcher(
351
+ const isEnabledForThisLinkedAnswer = isEnabledAnswerTypeSwitcher(
346
352
  linkedItem.enableWhen,
347
353
  answer
348
354
  );
349
355
 
350
- // In a repeat item, if at least one answer satisfies the condition, the item is enabled
351
- // FIXME need to look further at this
352
- checkedIsEnabledItems.push(isEnabledForThisLinkedItem);
353
- break;
356
+ if (isEnabledForThisLinkedAnswer) {
357
+ isEnabledForThisLinkedItem = true;
358
+ break;
359
+ }
354
360
  }
361
+
362
+ // Push result of the linked item to the checkedIsEnabledItems array
363
+ checkedIsEnabledItems.push(isEnabledForThisLinkedItem);
364
+
355
365
  continue;
356
366
  }
357
367
 
@@ -24,6 +24,7 @@ import type {
24
24
  import { OpenChoiceItemControl } from '../interfaces/choice.enum';
25
25
  import { isSpecificItemControl } from './itemControl';
26
26
  import isEqual from 'lodash.isequal';
27
+ import differenceWith from 'lodash.differencewith';
27
28
 
28
29
  /**
29
30
  * Update open choice answer based on open label value
@@ -105,10 +106,21 @@ export function updateOpenLabelAnswer(
105
106
  }
106
107
 
107
108
  // New open label answer is different from old open label answer, update it
108
- oldOpenLabelAnswer.valueString = changedOpenLabelValue;
109
+ const updatedAnswers = oldQrItem.answer?.map((answer) => {
110
+ const { valueString } = answer;
111
+ if (valueString === oldOpenLabelAnswer.valueString) {
112
+ return {
113
+ ...answer,
114
+ valueString: changedOpenLabelValue // Update the valueString
115
+ };
116
+ }
117
+
118
+ return answer; // Keep the other answers unchanged
119
+ });
120
+
109
121
  return {
110
122
  ...oldQrItem,
111
- answer: oldQrItem.answer
123
+ answer: updatedAnswers
112
124
  };
113
125
  }
114
126
 
@@ -121,10 +133,15 @@ export function getOldOpenLabelAnswer(
121
133
  answers: QuestionnaireResponseItemAnswer[],
122
134
  options: QuestionnaireItemAnswerOption[]
123
135
  ): QuestionnaireResponseItemAnswer | null {
124
- const openLabelAnswer = answers.find(
125
- (answer) => !options.some((option) => isEqual(option, answer))
126
- );
127
- return openLabelAnswer ?? null;
136
+ const answersWithoutId = answers.map((answer) => {
137
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
138
+ const { id, ...rest } = answer;
139
+ return rest as QuestionnaireResponseItemAnswer;
140
+ });
141
+
142
+ const outliers = differenceWith(answersWithoutId, options, isEqual);
143
+
144
+ return outliers?.[0] ?? null;
128
145
  }
129
146
 
130
147
  /**
@@ -1 +0,0 @@
1
- export function id(x: any): any;