@aehrc/smart-forms-renderer 1.0.0-alpha.21 → 1.0.0-alpha.23

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.
Files changed (126) hide show
  1. package/lib/components/FormComponents/BooleanItem/BooleanField.d.ts +1 -0
  2. package/lib/components/FormComponents/BooleanItem/BooleanField.js +20 -17
  3. package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -1
  4. package/lib/components/FormComponents/BooleanItem/BooleanItem.js +6 -3
  5. package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
  6. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.d.ts +1 -0
  7. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js +15 -7
  8. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js.map +1 -1
  9. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +5 -2
  10. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
  11. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.d.ts +1 -0
  12. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js +3 -3
  13. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js.map +1 -1
  14. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.d.ts +1 -0
  15. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js +14 -7
  16. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js.map +1 -1
  17. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +6 -3
  18. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
  19. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.d.ts +1 -0
  20. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +7 -5
  21. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js.map +1 -1
  22. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +4 -1
  23. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -1
  24. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.d.ts +1 -0
  25. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js +3 -3
  26. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js.map +1 -1
  27. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +1 -1
  28. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -1
  29. package/lib/components/FormComponents/IntegerItem/IntegerItem.js +1 -1
  30. package/lib/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -1
  31. package/lib/components/FormComponents/QuantityItem/QuantityItem.js +1 -1
  32. package/lib/components/FormComponents/QuantityItem/QuantityItem.js.map +1 -1
  33. package/lib/components/FormComponents/StringItem/StringItem.js +1 -1
  34. package/lib/components/FormComponents/StringItem/StringItem.js.map +1 -1
  35. package/lib/components/FormComponents/TextItem/TextItem.js +1 -1
  36. package/lib/components/FormComponents/TextItem/TextItem.js.map +1 -1
  37. package/lib/components/FormComponents/UrlItem/UrlItem.js +1 -1
  38. package/lib/components/FormComponents/UrlItem/UrlItem.js.map +1 -1
  39. package/lib/components/Renderer/BaseRenderer.js +6 -4
  40. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  41. package/lib/components/Renderer/FormBodyTabbed.js +1 -1
  42. package/lib/components/Renderer/FormBodyTabbed.js.map +1 -1
  43. package/lib/hooks/useValidationFeedback.js +33 -2
  44. package/lib/hooks/useValidationFeedback.js.map +1 -1
  45. package/lib/interfaces/questionnaireStore.interface.d.ts +2 -0
  46. package/lib/interfaces/targetConstraint.interface.d.ts +30 -0
  47. package/lib/interfaces/targetConstraint.interface.js +2 -0
  48. package/lib/interfaces/targetConstraint.interface.js.map +1 -0
  49. package/lib/stores/questionnaireResponseStore.d.ts +8 -2
  50. package/lib/stores/questionnaireResponseStore.js +15 -16
  51. package/lib/stores/questionnaireResponseStore.js.map +1 -1
  52. package/lib/stores/questionnaireStore.d.ts +7 -0
  53. package/lib/stores/questionnaireStore.js +22 -8
  54. package/lib/stores/questionnaireStore.js.map +1 -1
  55. package/lib/utils/calculatedExpression.d.ts +3 -2
  56. package/lib/utils/calculatedExpression.js +2 -2
  57. package/lib/utils/calculatedExpression.js.map +1 -1
  58. package/lib/utils/enableWhenExpression.d.ts +4 -3
  59. package/lib/utils/enableWhenExpression.js +4 -4
  60. package/lib/utils/enableWhenExpression.js.map +1 -1
  61. package/lib/utils/fhirpath.d.ts +8 -3
  62. package/lib/utils/fhirpath.js +27 -8
  63. package/lib/utils/fhirpath.js.map +1 -1
  64. package/lib/utils/initialise.d.ts +6 -2
  65. package/lib/utils/initialise.js +16 -4
  66. package/lib/utils/initialise.js.map +1 -1
  67. package/lib/utils/itemControl.d.ts +1 -0
  68. package/lib/utils/itemControl.js +11 -0
  69. package/lib/utils/itemControl.js.map +1 -1
  70. package/lib/utils/manageForm.js +2 -0
  71. package/lib/utils/manageForm.js.map +1 -1
  72. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +4 -0
  73. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
  74. package/lib/utils/questionnaireStoreUtils/extractTargetConstraint.d.ts +4 -0
  75. package/lib/utils/questionnaireStoreUtils/extractTargetConstraint.js +39 -0
  76. package/lib/utils/questionnaireStoreUtils/extractTargetConstraint.js.map +1 -0
  77. package/lib/utils/targetConstraint.d.ts +23 -0
  78. package/lib/utils/targetConstraint.js +179 -0
  79. package/lib/utils/targetConstraint.js.map +1 -0
  80. package/lib/utils/validate.d.ts +73 -0
  81. package/lib/utils/validate.js +742 -0
  82. package/lib/utils/validate.js.map +1 -0
  83. package/lib/utils/validateQuestionnaire.d.ts +40 -40
  84. package/lib/utils/validateQuestionnaire.js +1 -0
  85. package/lib/utils/validateQuestionnaire.js.map +1 -1
  86. package/lib/utils/validateQuestionnaireResponse.d.ts +71 -0
  87. package/lib/utils/validateQuestionnaireResponse.js +710 -0
  88. package/lib/utils/validateQuestionnaireResponse.js.map +1 -0
  89. package/lib/utils/validateTargetConstraint.d.ts +1 -0
  90. package/lib/utils/validateTargetConstraint.js +34 -0
  91. package/lib/utils/validateTargetConstraint.js.map +1 -0
  92. package/package.json +1 -1
  93. package/src/components/FormComponents/BooleanItem/BooleanField.tsx +82 -73
  94. package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +7 -0
  95. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx +43 -18
  96. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +6 -0
  97. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx +4 -0
  98. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx +35 -17
  99. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +8 -2
  100. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +41 -34
  101. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +5 -0
  102. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx +4 -0
  103. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +2 -1
  104. package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +2 -1
  105. package/src/components/FormComponents/QuantityItem/QuantityItem.tsx +2 -1
  106. package/src/components/FormComponents/StringItem/StringItem.tsx +1 -1
  107. package/src/components/FormComponents/TextItem/TextItem.tsx +2 -1
  108. package/src/components/FormComponents/UrlItem/UrlItem.tsx +2 -1
  109. package/src/components/Renderer/BaseRenderer.tsx +6 -4
  110. package/src/components/Renderer/FormBodyTabbed.tsx +1 -1
  111. package/src/hooks/useValidationFeedback.ts +39 -2
  112. package/src/interfaces/questionnaireStore.interface.ts +2 -0
  113. package/src/interfaces/renderProps.interface.ts +1 -0
  114. package/src/interfaces/targetConstraint.interface.ts +36 -0
  115. package/src/stores/questionnaireResponseStore.ts +25 -18
  116. package/src/stores/questionnaireStore.ts +31 -5
  117. package/src/utils/calculatedExpression.ts +4 -4
  118. package/src/utils/enableWhenExpression.ts +8 -7
  119. package/src/utils/fhirpath.ts +57 -9
  120. package/src/utils/initialise.ts +23 -6
  121. package/src/utils/itemControl.ts +15 -0
  122. package/src/utils/manageForm.ts +3 -0
  123. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +6 -0
  124. package/src/utils/questionnaireStoreUtils/extractTargetConstraint.ts +71 -0
  125. package/src/utils/targetConstraint.ts +243 -0
  126. package/src/utils/{validateQuestionnaire.ts → validate.ts} +138 -58
@@ -4,6 +4,7 @@ interface BooleanFieldProps {
4
4
  qItem: QuestionnaireItem;
5
5
  readOnly: boolean;
6
6
  valueBoolean: boolean | undefined;
7
+ feedback: string;
7
8
  calcExpUpdated: boolean;
8
9
  onCheckedChange: (newValue: string) => void;
9
10
  onClear: () => void;
@@ -27,9 +27,10 @@ import { isSpecificItemControl } from '../../../utils';
27
27
  import ClearInputButton from '../ItemParts/ClearInputButton';
28
28
  import { useRendererStylingStore } from '../../../stores';
29
29
  import { findCalculatedExpressionsInExtensions } from '../../../utils/getExpressionsFromItem';
30
+ import Typography from '@mui/material/Typography';
30
31
  const BooleanField = memo(function BooleanField(props) {
31
32
  var _a, _b;
32
- const { qItem, readOnly, valueBoolean, calcExpUpdated, onCheckedChange, onClear } = props;
33
+ const { qItem, readOnly, valueBoolean, feedback, calcExpUpdated, onCheckedChange, onClear } = props;
33
34
  const inputsFlexGrow = useRendererStylingStore.use.inputsFlexGrow();
34
35
  const reverseBooleanYesNo = useRendererStylingStore.use.reverseBooleanYesNo();
35
36
  const hideClearButton = useRendererStylingStore.use.hideClearButton();
@@ -38,22 +39,24 @@ const BooleanField = memo(function BooleanField(props) {
38
39
  // defaults to horizontal, only set to vertical if explicitly set
39
40
  const orientation = (_b = getChoiceOrientation(qItem)) !== null && _b !== void 0 ? _b : ChoiceItemOrientation.Horizontal;
40
41
  const selection = valueBoolean === undefined ? null : valueBoolean.toString();
41
- return (React.createElement(Box, { display: "flex", alignItems: "center" },
42
- booleanAsCheckbox ? (React.createElement(FormControlLabel, { id: qItem.linkId, disabled: readOnly, control: React.createElement(Checkbox, { size: "small", checked: selection === 'true', onChange: () => {
43
- if (selection === 'true') {
44
- onCheckedChange('false');
45
- }
46
- if (selection === 'false' || selection === null) {
47
- onCheckedChange('true');
48
- }
49
- } }), label: "" })) : (React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: selection }, reverseBooleanYesNo ? (React.createElement(React.Fragment, null,
50
- React.createElement(ChoiceRadioSingle, { value: "false", label: "No", readOnly: readOnly, fullWidth: inputsFlexGrow }),
51
- React.createElement(ChoiceRadioSingle, { value: "true", label: "Yes", readOnly: readOnly, fullWidth: inputsFlexGrow }))) : (React.createElement(React.Fragment, null,
52
- React.createElement(ChoiceRadioSingle, { value: "true", label: "Yes", readOnly: readOnly, fullWidth: inputsFlexGrow }),
53
- React.createElement(ChoiceRadioSingle, { value: "false", label: "No", readOnly: readOnly, fullWidth: inputsFlexGrow }))))),
54
- React.createElement(Box, { flexGrow: 1 }),
55
- calculatedExpressionExist ? (React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly })) : null,
56
- hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: valueBoolean !== undefined, readOnly: readOnly, onClear: onClear }))));
42
+ return (React.createElement(React.Fragment, null,
43
+ React.createElement(Box, { display: "flex", alignItems: "center" },
44
+ booleanAsCheckbox ? (React.createElement(FormControlLabel, { id: qItem.linkId, disabled: readOnly, control: React.createElement(Checkbox, { size: "small", checked: selection === 'true', onChange: () => {
45
+ if (selection === 'true') {
46
+ onCheckedChange('false');
47
+ }
48
+ if (selection === 'false' || selection === null) {
49
+ onCheckedChange('true');
50
+ }
51
+ } }), label: "" })) : (React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: selection }, reverseBooleanYesNo ? (React.createElement(React.Fragment, null,
52
+ React.createElement(ChoiceRadioSingle, { value: "false", label: "No", readOnly: readOnly, fullWidth: inputsFlexGrow }),
53
+ React.createElement(ChoiceRadioSingle, { value: "true", label: "Yes", readOnly: readOnly, fullWidth: inputsFlexGrow }))) : (React.createElement(React.Fragment, null,
54
+ React.createElement(ChoiceRadioSingle, { value: "true", label: "Yes", readOnly: readOnly, fullWidth: inputsFlexGrow }),
55
+ React.createElement(ChoiceRadioSingle, { value: "false", label: "No", readOnly: readOnly, fullWidth: inputsFlexGrow }))))),
56
+ React.createElement(Box, { flexGrow: 1 }),
57
+ calculatedExpressionExist ? (React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly })) : null,
58
+ hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: valueBoolean !== undefined, readOnly: readOnly, onClear: onClear }))),
59
+ feedback ? (React.createElement(Typography, { sx: { color: 'error.main', fontSize: '0.75rem', mt: 1 } }, feedback)) : null));
57
60
  });
58
61
  export default BooleanField;
59
62
  //# sourceMappingURL=BooleanField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/BooleanItem/BooleanField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/BooleanItem/BooleanField.tsx"],"names":[],"mappings":"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"}
@@ -24,11 +24,14 @@ import useReadOnly from '../../../hooks/useReadOnly';
24
24
  import { useQuestionnaireStore } from '../../../stores';
25
25
  import useBooleanCalculatedExpression from '../../../hooks/useBooleanCalculatedExpression';
26
26
  import { ItemLabelWrapper } from '../ItemParts';
27
+ import useValidationFeedback from '../../../hooks/useValidationFeedback';
27
28
  function BooleanItem(props) {
28
29
  var _a, _b, _c;
29
30
  const { qItem, qrItem, isRepeated, isTabled, parentIsReadOnly, onQrItemChange } = props;
30
31
  const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
31
32
  const readOnly = useReadOnly(qItem, parentIsReadOnly);
33
+ // Perform validation checks - there's no string-based input here
34
+ const feedback = useValidationFeedback(qItem, '');
32
35
  // Init input value
33
36
  const answerKey = (_a = qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer) === null || _a === void 0 ? void 0 : _a[0].id;
34
37
  let valueBoolean = undefined;
@@ -65,13 +68,13 @@ function BooleanItem(props) {
65
68
  }
66
69
  if (isTabled) {
67
70
  return (React.createElement(Box, { display: "flex", justifyContent: "center" },
68
- React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear })));
71
+ React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, feedback: feedback, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear })));
69
72
  }
70
73
  if (isRepeated) {
71
- return (React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear }));
74
+ return (React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, feedback: feedback, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear }));
72
75
  }
73
76
  return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-boolean-box", "data-linkid": qItem.linkId, onClick: () => onFocusLinkId(qItem.linkId) },
74
- React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear }) })));
77
+ React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(BooleanField, { qItem: qItem, readOnly: readOnly, valueBoolean: valueBoolean, feedback: feedback, calcExpUpdated: calcExpUpdated, onCheckedChange: handleValueChange, onClear: handleClear }) })));
75
78
  }
76
79
  export default BooleanItem;
77
80
  //# sourceMappingURL=BooleanItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/BooleanItem/BooleanItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BooleanItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/BooleanItem/BooleanItem.tsx"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ interface ChoiceRadioAnswerOptionFieldsProps {
4
4
  qItem: QuestionnaireItem;
5
5
  options: QuestionnaireItemAnswerOption[];
6
6
  valueRadio: string | null;
7
+ feedback: string;
7
8
  readOnly: boolean;
8
9
  calcExpUpdated: boolean;
9
10
  onCheckedChange: (newValue: string) => void;
@@ -23,18 +23,26 @@ import Box from '@mui/material/Box';
23
23
  import FadingCheckIcon from '../ItemParts/FadingCheckIcon';
24
24
  import ClearInputButton from '../ItemParts/ClearInputButton';
25
25
  import { useRendererStylingStore } from '../../../stores';
26
+ import Typography from '@mui/material/Typography';
26
27
  function ChoiceRadioAnswerOptionFields(props) {
27
28
  var _a;
28
- const { qItem, options, valueRadio, readOnly, calcExpUpdated, onCheckedChange, onClear } = props;
29
+ const { qItem, options, valueRadio, feedback, readOnly, calcExpUpdated, onCheckedChange, onClear } = props;
29
30
  const inputsFlexGrow = useRendererStylingStore.use.inputsFlexGrow();
30
31
  const hideClearButton = useRendererStylingStore.use.hideClearButton();
31
32
  const orientation = (_a = getChoiceOrientation(qItem)) !== null && _a !== void 0 ? _a : ChoiceItemOrientation.Vertical;
32
- return (React.createElement(Box, { display: "flex", alignItems: "center" },
33
- React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: valueRadio, "data-test": "q-item-radio-group" },
34
- React.createElement(RadioOptionList, { options: options, readOnly: readOnly, fullWidth: inputsFlexGrow })),
35
- React.createElement(Box, { flexGrow: 1 }),
36
- React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly }),
37
- hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: !!valueRadio, readOnly: readOnly, onClear: onClear }))));
33
+ return (React.createElement(React.Fragment, null,
34
+ React.createElement(Box, { display: "flex", sx: {
35
+ justifyContent: 'space-between',
36
+ alignItems: { xs: 'start', sm: 'center' },
37
+ flexDirection: { xs: 'column', sm: 'row' }
38
+ } },
39
+ React.createElement(Box, { display: "flex", sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {} },
40
+ React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: valueRadio, "data-test": "q-item-radio-group" },
41
+ React.createElement(RadioOptionList, { options: options, readOnly: readOnly, fullWidth: inputsFlexGrow })),
42
+ React.createElement(Box, { flexGrow: 1 }),
43
+ React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly })),
44
+ hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: !!valueRadio, readOnly: readOnly, onClear: onClear }))),
45
+ feedback ? (React.createElement(Typography, { sx: { color: 'error.main', fontSize: '0.75rem', mt: 1 } }, feedback)) : null));
38
46
  }
39
47
  export default ChoiceRadioAnswerOptionFields;
40
48
  //# sourceMappingURL=ChoiceRadioAnswerOptionFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceRadioAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAY1D,SAAS,6BAA6B,CAAC,KAAyC;;IAC9E,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEjG,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IACpE,MAAM,eAAe,GAAG,uBAAuB,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;IAEtE,MAAM,WAAW,GAAG,MAAA,oBAAoB,CAAC,KAAK,CAAC,mCAAI,qBAAqB,CAAC,QAAQ,CAAC;IAElF,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ;QACrC,oBAAC,gBAAgB,IACf,EAAE,EAAE,KAAK,CAAC,MAAM,EAChB,GAAG,EAAE,WAAW,KAAK,qBAAqB,CAAC,UAAU,EACrD,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAC/D,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAChD,KAAK,EAAE,UAAU,eACP,oBAAoB;YAC9B,oBAAC,eAAe,IAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,GAAI,CACnE;QAEnB,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI;QAEpB,oBAAC,eAAe,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI;QAC9D,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxB,oBAAC,gBAAgB,IAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAI,CACtF,CACG,CACP,CAAC;AACJ,CAAC;AAED,eAAe,6BAA6B,CAAC"}
1
+ {"version":3,"file":"ChoiceRadioAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAalD,SAAS,6BAA6B,CAAC,KAAyC;;IAC9E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,eAAe,EACf,OAAO,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IACpE,MAAM,eAAe,GAAG,uBAAuB,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;IAEtE,MAAM,WAAW,GAAG,MAAA,oBAAoB,CAAC,KAAK,CAAC,mCAAI,qBAAqB,CAAC,QAAQ,CAAC;IAElF,OAAO,CACL;QACE,oBAAC,GAAG,IACF,OAAO,EAAC,MAAM,EACd,EAAE,EAAE;gBACF,cAAc,EAAE,eAAe;gBAC/B,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE;gBACzC,aAAa,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE;aAC3C;YACD,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE;gBACjF,oBAAC,gBAAgB,IACf,EAAE,EAAE,KAAK,CAAC,MAAM,EAChB,GAAG,EAAE,WAAW,KAAK,qBAAqB,CAAC,UAAU,EACrD,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAC/D,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAChD,KAAK,EAAE,UAAU,eACP,oBAAoB;oBAC9B,oBAAC,eAAe,IAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,GAAI,CACnE;gBAEnB,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI;gBAEpB,oBAAC,eAAe,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAC3D;YAEL,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxB,oBAAC,gBAAgB,IAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAI,CACtF,CACG;QACL,QAAQ,CAAC,CAAC,CAAC,CACV,oBAAC,UAAU,IAAC,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAG,QAAQ,CAAc,CAC7F,CAAC,CAAC,CAAC,IAAI,CACP,CACJ,CAAC;AACJ,CAAC;AAED,eAAe,6BAA6B,CAAC"}
@@ -24,6 +24,7 @@ import Typography from '@mui/material/Typography';
24
24
  import useCodingCalculatedExpression from '../../../hooks/useCodingCalculatedExpression';
25
25
  import ChoiceRadioAnswerOptionView from './ChoiceRadioAnswerOptionView';
26
26
  import ChoiceSelectAnswerOptionView from './ChoiceSelectAnswerOptionView';
27
+ import useValidationFeedback from '../../../hooks/useValidationFeedback';
27
28
  function ChoiceRadioAnswerOptionItem(props) {
28
29
  var _a, _b;
29
30
  const { qItem, qrItem, isRepeated, isTabled, renderingExtensions, parentIsReadOnly, onQrItemChange } = props;
@@ -33,6 +34,8 @@ function ChoiceRadioAnswerOptionItem(props) {
33
34
  const qrChoice = qrItem !== null && qrItem !== void 0 ? qrItem : createEmptyQrItem(qItem, answerKey);
34
35
  const valueChoice = getQrChoiceValue(qrChoice);
35
36
  const readOnly = useReadOnly(qItem, parentIsReadOnly);
37
+ // Perform validation checks - there's no string-based input here
38
+ const feedback = useValidationFeedback(qItem, '');
36
39
  const options = (_b = qItem.answerOption) !== null && _b !== void 0 ? _b : [];
37
40
  // Process calculated expressions
38
41
  const { calcExpUpdated } = useCodingCalculatedExpression({
@@ -71,10 +74,10 @@ function ChoiceRadioAnswerOptionItem(props) {
71
74
  switch (choiceControlType) {
72
75
  // TODO At the moment only this case will be executed because this switch statement was already in the parent components
73
76
  case ChoiceItemControl.Radio: {
74
- return (React.createElement(ChoiceRadioAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, isRepeated: isRepeated, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onCheckedChange: handleChange, onClear: handleClear }));
77
+ return (React.createElement(ChoiceRadioAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, feedback: feedback, isRepeated: isRepeated, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onCheckedChange: handleChange, onClear: handleClear }));
75
78
  }
76
79
  case ChoiceItemControl.Select: {
77
- return (React.createElement(ChoiceSelectAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, isRepeated: isRepeated, isTabled: isTabled, readOnly: readOnly, calcExpUpdated: calcExpUpdated, renderingExtensions: renderingExtensions, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onSelectChange: handleChange }));
80
+ return (React.createElement(ChoiceSelectAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, feedback: feedback, isRepeated: isRepeated, isTabled: isTabled, readOnly: readOnly, calcExpUpdated: calcExpUpdated, renderingExtensions: renderingExtensions, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onSelectChange: handleChange }));
78
81
  }
79
82
  default: {
80
83
  return (React.createElement(Typography, null,
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceRadioAnswerOptionItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChoiceRadioAnswerOptionItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ interface ChoiceRadioAnswerOptionViewProps extends PropsWithIsRepeatedAttribute
5
5
  qItem: QuestionnaireItem;
6
6
  options: QuestionnaireItemAnswerOption[];
7
7
  valueChoice: string | null;
8
+ feedback: string;
8
9
  readOnly: boolean;
9
10
  calcExpUpdated: boolean;
10
11
  onCheckedChange: (linkId: string) => void;
@@ -20,12 +20,12 @@ import { FullWidthFormComponentBox } from '../../Box.styles';
20
20
  import ItemFieldGrid from '../ItemParts/ItemFieldGrid';
21
21
  import { ItemLabelWrapper } from '../ItemParts';
22
22
  function ChoiceRadioAnswerOptionView(props) {
23
- const { qItem, options, valueChoice, isRepeated, readOnly, calcExpUpdated, onFocusLinkId, onCheckedChange, onClear } = props;
23
+ const { qItem, options, valueChoice, feedback, isRepeated, readOnly, calcExpUpdated, onFocusLinkId, onCheckedChange, onClear } = props;
24
24
  if (isRepeated) {
25
- return (React.createElement(ChoiceRadioAnswerOptionFields, { qItem: qItem, options: options, valueRadio: valueChoice, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onCheckedChange: onCheckedChange, onClear: onClear }));
25
+ return (React.createElement(ChoiceRadioAnswerOptionFields, { qItem: qItem, options: options, valueRadio: valueChoice, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onCheckedChange: onCheckedChange, onClear: onClear }));
26
26
  }
27
27
  return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-choice-radio-answer-option-box", "data-linkid": qItem.linkId, onClick: onFocusLinkId },
28
- React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceRadioAnswerOptionFields, { qItem: qItem, options: options, valueRadio: valueChoice, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onCheckedChange: onCheckedChange, onClear: onClear }) })));
28
+ React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceRadioAnswerOptionFields, { qItem: qItem, options: options, valueRadio: valueChoice, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, onCheckedChange: onCheckedChange, onClear: onClear }) })));
29
29
  }
30
30
  export default ChoiceRadioAnswerOptionView;
31
31
  //# sourceMappingURL=ChoiceRadioAnswerOptionView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceRadioAnswerOptionView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,6BAA6B,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,aAAa,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAahD,SAAS,2BAA2B,CAAC,KAAuC;IAC1E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,OAAO,EACR,GAAG,KAAK,CAAC;IAEV,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,oBAAC,6BAA6B,IAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,GAChB,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,yBAAyB,iBACd,uCAAuC,iBACpC,KAAK,CAAC,MAAM,EACzB,OAAO,EAAE,aAAa;QACtB,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,oBAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI,EACrE,aAAa,EACX,oBAAC,6BAA6B,IAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,GAChB,GAEJ,CACwB,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"ChoiceRadioAnswerOptionView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,6BAA6B,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,aAAa,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAchD,SAAS,2BAA2B,CAAC,KAAuC;IAC1E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,cAAc,EACd,aAAa,EACb,eAAe,EACf,OAAO,EACR,GAAG,KAAK,CAAC;IAEV,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,oBAAC,6BAA6B,IAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,GAChB,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,yBAAyB,iBACd,uCAAuC,iBACpC,KAAK,CAAC,MAAM,EACzB,OAAO,EAAE,aAAa;QACtB,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,oBAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI,EACrE,aAAa,EACX,oBAAC,6BAA6B,IAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,GAChB,GAEJ,CACwB,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,2BAA2B,CAAC"}
@@ -5,6 +5,7 @@ interface ChoiceRadioAnswerValueSetFieldsProps {
5
5
  qItem: QuestionnaireItem;
6
6
  options: QuestionnaireItemAnswerOption[];
7
7
  valueRadio: string | null;
8
+ feedback: string;
8
9
  readOnly: boolean;
9
10
  calcExpUpdated: boolean;
10
11
  terminologyError: TerminologyError;
@@ -28,17 +28,24 @@ import ClearInputButton from '../ItemParts/ClearInputButton';
28
28
  import { useRendererStylingStore } from '../../../stores';
29
29
  function ChoiceRadioAnswerValueSetFields(props) {
30
30
  var _a;
31
- const { qItem, options, valueRadio, readOnly, calcExpUpdated, terminologyError, onCheckedChange, onClear } = props;
31
+ const { qItem, options, valueRadio, feedback, readOnly, calcExpUpdated, terminologyError, onCheckedChange, onClear } = props;
32
32
  const inputsFlexGrow = useRendererStylingStore.use.inputsFlexGrow();
33
33
  const hideClearButton = useRendererStylingStore.use.hideClearButton();
34
34
  const orientation = (_a = getChoiceOrientation(qItem)) !== null && _a !== void 0 ? _a : ChoiceItemOrientation.Vertical;
35
35
  if (options.length > 0) {
36
- return (React.createElement(Box, { display: "flex", alignItems: "center" },
37
- React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: valueRadio, "data-test": "q-item-radio-group" },
38
- React.createElement(RadioOptionList, { options: options, readOnly: readOnly, fullWidth: inputsFlexGrow })),
39
- React.createElement(Box, { flexGrow: 1 }),
40
- React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly }),
41
- hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: !!valueRadio, readOnly: readOnly, onClear: onClear }))));
36
+ return (React.createElement(React.Fragment, null,
37
+ React.createElement(Box, { display: "flex", sx: {
38
+ justifyContent: 'space-between',
39
+ alignItems: { xs: 'start', sm: 'center' },
40
+ flexDirection: { xs: 'column', sm: 'row' }
41
+ } },
42
+ React.createElement(Box, { display: "flex", sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {} },
43
+ React.createElement(StyledRadioGroup, { id: qItem.linkId, row: orientation === ChoiceItemOrientation.Horizontal, name: qItem.text, sx: inputsFlexGrow ? { width: '100%', flexWrap: 'nowrap' } : {}, onChange: (e) => onCheckedChange(e.target.value), value: valueRadio, "data-test": "q-item-radio-group" },
44
+ React.createElement(RadioOptionList, { options: options, readOnly: readOnly, fullWidth: inputsFlexGrow })),
45
+ React.createElement(Box, { flexGrow: 1 }),
46
+ React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly })),
47
+ hideClearButton ? null : (React.createElement(ClearInputButton, { buttonShown: !!valueRadio, readOnly: readOnly, onClear: onClear }))),
48
+ feedback ? (React.createElement(Typography, { sx: { color: 'error.main', fontSize: '0.75rem', mt: 1 } }, feedback)) : null));
42
49
  }
43
50
  if (terminologyError.error) {
44
51
  return (React.createElement(StyledAlert, { color: "error" },
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceRadioAnswerValueSetFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAa1D,SAAS,+BAA+B,CAAC,KAA2C;;IAClF,MAAM,EACJ,KAAK,EACL,OAAO,EACP,UAAU,EACV,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,OAAO,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IACpE,MAAM,eAAe,GAAG,uBAAuB,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;IAEtE,MAAM,WAAW,GAAG,MAAA,oBAAoB,CAAC,KAAK,CAAC,mCAAI,qBAAqB,CAAC,QAAQ,CAAC;IAElF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ;YACrC,oBAAC,gBAAgB,IACf,EAAE,EAAE,KAAK,CAAC,MAAM,EAChB,GAAG,EAAE,WAAW,KAAK,qBAAqB,CAAC,UAAU,EACrD,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAC/D,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAChD,KAAK,EAAE,UAAU,eACP,oBAAoB;gBAC9B,oBAAC,eAAe,IAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,GAAI,CACnE;YAEnB,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,GAAI;YAEpB,oBAAC,eAAe,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI;YAE9D,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxB,oBAAC,gBAAgB,IAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAI,CACtF,CACG,CACP,CAAC;IACJ,CAAC;IAED,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO,CACL,oBAAC,WAAW,IAAC,KAAK,EAAC,OAAO;YACxB,oBAAC,gBAAgB,IAAC,KAAK,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAI;YACpD,oBAAC,UAAU,IAAC,OAAO,EAAC,WAAW;;gBACuC,GAAG;gBACtE,gBAAgB,CAAC,cAAc,CACrB,CACD,CACf,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,WAAW,IAAC,KAAK,EAAC,OAAO;QACxB,oBAAC,gBAAgB,IAAC,KAAK,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,GAAI;QACpD,oBAAC,UAAU,IAAC,OAAO,EAAC,WAAW,uEAElB,CACD,CACf,CAAC;AACJ,CAAC;AAED,eAAe,+BAA+B,CAAC"}
1
+ {"version":3,"file":"ChoiceRadioAnswerValueSetFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx"],"names":[],"mappings":"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"}
@@ -25,11 +25,11 @@ import ItemFieldGrid from '../ItemParts/ItemFieldGrid';
25
25
  import { useQuestionnaireStore } from '../../../stores';
26
26
  import useCodingCalculatedExpression from '../../../hooks/useCodingCalculatedExpression';
27
27
  import { ItemLabelWrapper } from '../ItemParts';
28
+ import useValidationFeedback from '../../../hooks/useValidationFeedback';
28
29
  function ChoiceRadioAnswerValueSetItem(props) {
29
30
  var _a, _b, _c, _d, _e;
30
31
  const { qItem, qrItem, isRepeated, parentIsReadOnly, onQrItemChange } = props;
31
32
  const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
32
- const readOnly = useReadOnly(qItem, parentIsReadOnly);
33
33
  // Init input value
34
34
  const answerKey = (_a = qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer) === null || _a === void 0 ? void 0 : _a[0].id;
35
35
  const qrChoiceRadio = qrItem !== null && qrItem !== void 0 ? qrItem : createEmptyQrItem(qItem, answerKey);
@@ -40,6 +40,9 @@ function ChoiceRadioAnswerValueSetItem(props) {
40
40
  }
41
41
  // Get codings/options from valueSet
42
42
  const { codings, terminologyError } = useValueSetCodings(qItem);
43
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
44
+ // Perform validation checks - there's no string-based input here
45
+ const feedback = useValidationFeedback(qItem, '');
43
46
  const options = useMemo(() => convertCodingsToAnswerOptions(codings), [codings]);
44
47
  const { calcExpUpdated } = useCodingCalculatedExpression({
45
48
  qItem: qItem,
@@ -62,10 +65,10 @@ function ChoiceRadioAnswerValueSetItem(props) {
62
65
  onQrItemChange(createEmptyQrItem(qItem, answerKey));
63
66
  }
64
67
  if (isRepeated) {
65
- return (React.createElement(ChoiceRadioAnswerValueSetFields, { qItem: qItem, options: options, valueRadio: valueRadio, readOnly: readOnly, calcExpUpdated: calcExpUpdated, terminologyError: terminologyError, onCheckedChange: handleChange, onClear: handleClear }));
68
+ return (React.createElement(ChoiceRadioAnswerValueSetFields, { qItem: qItem, options: options, valueRadio: valueRadio, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, terminologyError: terminologyError, onCheckedChange: handleChange, onClear: handleClear }));
66
69
  }
67
70
  return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-choice-radio-answer-value-set-box", "data-linkid": qItem.linkId, onClick: () => onFocusLinkId(qItem.linkId) },
68
- React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceRadioAnswerValueSetFields, { qItem: qItem, options: options, valueRadio: valueRadio, readOnly: readOnly, calcExpUpdated: calcExpUpdated, terminologyError: terminologyError, onCheckedChange: handleChange, onClear: handleClear }) })));
71
+ React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceRadioAnswerValueSetFields, { qItem: qItem, options: options, valueRadio: valueRadio, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, terminologyError: terminologyError, onCheckedChange: handleChange, onClear: handleClear }) })));
69
72
  }
70
73
  export default ChoiceRadioAnswerValueSetItem;
71
74
  //# sourceMappingURL=ChoiceRadioAnswerValueSetItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceRadioAnswerValueSetItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChoiceRadioAnswerValueSetItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ interface ChoiceSelectAnswerOptionFieldsProps extends PropsWithIsTabledAttribute
5
5
  qItem: QuestionnaireItem;
6
6
  options: QuestionnaireItemAnswerOption[];
7
7
  valueSelect: QuestionnaireItemAnswerOption | null;
8
+ feedback: string;
8
9
  readOnly: boolean;
9
10
  calcExpUpdated: boolean;
10
11
  onSelectChange: (newValue: QuestionnaireItemAnswerOption | null) => void;
@@ -23,13 +23,15 @@ import { compareAnswerOptionValue } from '../../../utils/choice';
23
23
  import { useRendererStylingStore } from '../../../stores';
24
24
  import Typography from '@mui/material/Typography';
25
25
  function ChoiceSelectAnswerOptionFields(props) {
26
- const { qItem, options, valueSelect, readOnly, calcExpUpdated, isTabled, renderingExtensions, onSelectChange } = props;
26
+ const { qItem, options, valueSelect, feedback, readOnly, calcExpUpdated, isTabled, renderingExtensions, onSelectChange } = props;
27
27
  const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
28
28
  const { displayUnit, displayPrompt, entryFormat } = renderingExtensions;
29
- return (React.createElement(Autocomplete, { id: qItem.linkId, value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, getOptionLabel: (option) => getAnswerOptionLabel(option), isOptionEqualToValue: (option, value) => compareAnswerOptionValue(option, value), onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }, size: "small", disabled: readOnly, renderInput: (params) => (React.createElement(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled, label: displayPrompt, placeholder: entryFormat }, params, { InputProps: Object.assign(Object.assign({}, params.InputProps), { endAdornment: (React.createElement(React.Fragment, null,
30
- params.InputProps.endAdornment,
31
- React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly }),
32
- React.createElement(Typography, { color: readOnly ? 'text.disabled' : 'text.secondary' }, displayUnit))) }) }))) }));
29
+ return (React.createElement(React.Fragment, null,
30
+ React.createElement(Autocomplete, { id: qItem.linkId, value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, getOptionLabel: (option) => getAnswerOptionLabel(option), isOptionEqualToValue: (option, value) => compareAnswerOptionValue(option, value), onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }, size: "small", disabled: readOnly, renderInput: (params) => (React.createElement(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled, label: displayPrompt, placeholder: entryFormat }, params, { InputProps: Object.assign(Object.assign({}, params.InputProps), { endAdornment: (React.createElement(React.Fragment, null,
31
+ params.InputProps.endAdornment,
32
+ React.createElement(FadingCheckIcon, { fadeIn: calcExpUpdated, disabled: readOnly }),
33
+ React.createElement(Typography, { color: readOnly ? 'text.disabled' : 'text.secondary' }, displayUnit))) }) }))) }),
34
+ feedback ? (React.createElement(Typography, { sx: { color: 'error.main', fontSize: '0.75rem', mt: 1 } }, feedback)) : null));
33
35
  }
34
36
  export default ChoiceSelectAnswerOptionFields;
35
37
  //# sourceMappingURL=ChoiceSelectAnswerOptionFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceSelectAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAMxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAalD,SAAS,8BAA8B,CAAC,KAA0C;IAChF,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,mBAAmB,EACnB,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC;IAExE,OAAO,CACL,oBAAC,YAAY,IACX,EAAE,EAAE,KAAK,CAAC,MAAM,EAChB,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI,EAC1B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EACxD,oBAAoB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,EAChF,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,EACnD,WAAW,QACX,aAAa,QACb,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,EAC/E,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,oBAAC,iBAAiB,kBAChB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,WAAW,IACpB,MAAM,IACV,UAAU,kCACL,MAAM,CAAC,UAAU,KACpB,YAAY,EAAE,CACZ;oBACG,MAAM,CAAC,UAAU,CAAC,YAAY;oBAC/B,oBAAC,eAAe,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI;oBAC/D,oBAAC,UAAU,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,IAC7D,WAAW,CACD,CACZ,CACJ,OAEH,CACH,GACD,CACH,CAAC;AACJ,CAAC;AAED,eAAe,8BAA8B,CAAC"}
1
+ {"version":3,"file":"ChoiceSelectAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAMxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAclD,SAAS,8BAA8B,CAAC,KAA0C;IAChF,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,mBAAmB,EACnB,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC;IAExE,OAAO,CACL;QACE,oBAAC,YAAY,IACX,EAAE,EAAE,KAAK,CAAC,MAAM,EAChB,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI,EAC1B,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EACxD,oBAAoB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,EAChF,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,EACnD,WAAW,QACX,aAAa,QACb,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,EAC/E,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,oBAAC,iBAAiB,kBAChB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,WAAW,IACpB,MAAM,IACV,UAAU,kCACL,MAAM,CAAC,UAAU,KACpB,YAAY,EAAE,CACZ;wBACG,MAAM,CAAC,UAAU,CAAC,YAAY;wBAC/B,oBAAC,eAAe,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI;wBAC/D,oBAAC,UAAU,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,IAC7D,WAAW,CACD,CACZ,CACJ,OAEH,CACH,GACD;QACD,QAAQ,CAAC,CAAC,CAAC,CACV,oBAAC,UAAU,IAAC,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,IAAG,QAAQ,CAAc,CAC7F,CAAC,CAAC,CAAC,IAAI,CACP,CACJ,CAAC;AACJ,CAAC;AAED,eAAe,8BAA8B,CAAC"}
@@ -21,11 +21,14 @@ import useReadOnly from '../../../hooks/useReadOnly';
21
21
  import { useQuestionnaireStore } from '../../../stores';
22
22
  import useCodingCalculatedExpression from '../../../hooks/useCodingCalculatedExpression';
23
23
  import ChoiceSelectAnswerOptionView from './ChoiceSelectAnswerOptionView';
24
+ import useValidationFeedback from '../../../hooks/useValidationFeedback';
24
25
  function ChoiceSelectAnswerOptionItem(props) {
25
26
  var _a, _b;
26
27
  const { qItem, qrItem, isRepeated, isTabled, renderingExtensions, parentIsReadOnly, onQrItemChange } = props;
27
28
  const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
28
29
  const readOnly = useReadOnly(qItem, parentIsReadOnly);
30
+ // Perform validation checks - there's no string-based input here
31
+ const feedback = useValidationFeedback(qItem, '');
29
32
  // Init input value
30
33
  const answerKey = (_a = qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer) === null || _a === void 0 ? void 0 : _a[0].id;
31
34
  const qrChoice = qrItem !== null && qrItem !== void 0 ? qrItem : createEmptyQrItem(qItem, answerKey);
@@ -59,7 +62,7 @@ function ChoiceSelectAnswerOptionItem(props) {
59
62
  onQrItemChange(newValue
60
63
  ? Object.assign(Object.assign({}, createEmptyQrItem(qItem, answerKey)), { answer: [Object.assign(Object.assign({}, newValue), { id: answerKey })] }) : createEmptyQrItem(qItem, answerKey));
61
64
  }
62
- return (React.createElement(ChoiceSelectAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isRepeated: isRepeated, isTabled: isTabled, renderingExtensions: renderingExtensions, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onSelectChange: handleChange }));
65
+ return (React.createElement(ChoiceSelectAnswerOptionView, { qItem: qItem, options: options, valueChoice: valueChoice, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isRepeated: isRepeated, isTabled: isTabled, renderingExtensions: renderingExtensions, onFocusLinkId: () => onFocusLinkId(qItem.linkId), onSelectChange: handleChange }));
63
66
  }
64
67
  export default ChoiceSelectAnswerOptionItem;
65
68
  //# sourceMappingURL=ChoiceSelectAnswerOptionItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceSelectAnswerOptionItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChoiceSelectAnswerOptionItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ interface ChoiceSelectAnswerOptionViewProps extends PropsWithIsRepeatedAttribute
5
5
  qItem: QuestionnaireItem;
6
6
  options: QuestionnaireItemAnswerOption[];
7
7
  valueChoice: string | null;
8
+ feedback: string;
8
9
  readOnly: boolean;
9
10
  calcExpUpdated: boolean;
10
11
  onSelectChange: (newValue: QuestionnaireItemAnswerOption | null) => void;
@@ -21,13 +21,13 @@ import { findInAnswerOptions } from '../../../utils/choice';
21
21
  import ChoiceSelectAnswerOptionFields from './ChoiceSelectAnswerOptionFields';
22
22
  import { ItemLabelWrapper } from '../ItemParts';
23
23
  function ChoiceSelectAnswerOptionView(props) {
24
- const { qItem, options, valueChoice, isRepeated, isTabled, renderingExtensions, readOnly, calcExpUpdated, onFocusLinkId, onSelectChange } = props;
24
+ const { qItem, options, valueChoice, feedback, isRepeated, isTabled, renderingExtensions, readOnly, calcExpUpdated, onFocusLinkId, onSelectChange } = props;
25
25
  const valueSelect = useMemo(() => { var _a; return (_a = findInAnswerOptions(options, valueChoice !== null && valueChoice !== void 0 ? valueChoice : '')) !== null && _a !== void 0 ? _a : null; }, [options, valueChoice]);
26
26
  if (isRepeated) {
27
- return (React.createElement(ChoiceSelectAnswerOptionFields, { qItem: qItem, options: options, valueSelect: valueSelect, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isTabled: isTabled, renderingExtensions: renderingExtensions, onSelectChange: onSelectChange }));
27
+ return (React.createElement(ChoiceSelectAnswerOptionFields, { qItem: qItem, options: options, valueSelect: valueSelect, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isTabled: isTabled, renderingExtensions: renderingExtensions, onSelectChange: onSelectChange }));
28
28
  }
29
29
  return (React.createElement(FullWidthFormComponentBox, { "data-test": "q-item-choice-select-answer-option-box", "data-linkid": qItem.linkId, onClick: onFocusLinkId },
30
- React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceSelectAnswerOptionFields, { qItem: qItem, options: options, valueSelect: valueSelect, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isTabled: isTabled, renderingExtensions: renderingExtensions, onSelectChange: onSelectChange }) })));
30
+ React.createElement(ItemFieldGrid, { qItem: qItem, readOnly: readOnly, labelChildren: React.createElement(ItemLabelWrapper, { qItem: qItem, readOnly: readOnly }), fieldChildren: React.createElement(ChoiceSelectAnswerOptionFields, { qItem: qItem, options: options, valueSelect: valueSelect, feedback: feedback, readOnly: readOnly, calcExpUpdated: calcExpUpdated, isTabled: isTabled, renderingExtensions: renderingExtensions, onSelectChange: onSelectChange }) })));
31
31
  }
32
32
  export default ChoiceSelectAnswerOptionView;
33
33
  //# sourceMappingURL=ChoiceSelectAnswerOptionView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoiceSelectAnswerOptionView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,aAAa,MAAM,4BAA4B,CAAC;AAOvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAehD,SAAS,4BAA4B,CAAC,KAAwC;IAC5E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,UAAU,EACV,QAAQ,EACR,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAyC,OAAO,CAC/D,GAAG,EAAE,WAAC,OAAA,MAAA,mBAAmB,CAAC,OAAO,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,CAAC,mCAAI,IAAI,CAAA,EAAA,EAC7D,CAAC,OAAO,EAAE,WAAW,CAAC,CACvB,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,oBAAC,8BAA8B,IAC7B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,mBAAmB,EACxC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,yBAAyB,iBACd,wCAAwC,iBACrC,KAAK,CAAC,MAAM,EACzB,OAAO,EAAE,aAAa;QACtB,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,oBAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI,EACrE,aAAa,EACX,oBAAC,8BAA8B,IAC7B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,mBAAmB,EACxC,cAAc,EAAE,cAAc,GAC9B,GAEJ,CACwB,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,4BAA4B,CAAC"}
1
+ {"version":3,"file":"ChoiceSelectAnswerOptionView.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,aAAa,MAAM,4BAA4B,CAAC;AAOvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAgBhD,SAAS,4BAA4B,CAAC,KAAwC;IAC5E,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAyC,OAAO,CAC/D,GAAG,EAAE,WAAC,OAAA,MAAA,mBAAmB,CAAC,OAAO,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,CAAC,mCAAI,IAAI,CAAA,EAAA,EAC7D,CAAC,OAAO,EAAE,WAAW,CAAC,CACvB,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,oBAAC,8BAA8B,IAC7B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,mBAAmB,EACxC,cAAc,EAAE,cAAc,GAC9B,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,yBAAyB,iBACd,wCAAwC,iBACrC,KAAK,CAAC,MAAM,EACzB,OAAO,EAAE,aAAa;QACtB,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,oBAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAI,EACrE,aAAa,EACX,oBAAC,8BAA8B,IAC7B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,mBAAmB,EACxC,cAAc,EAAE,cAAc,GAC9B,GAEJ,CACwB,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,4BAA4B,CAAC"}
@@ -33,7 +33,6 @@ function DecimalItem(props) {
33
33
  var _a;
34
34
  const { qItem, qrItem, isRepeated, isTabled, renderingExtensions, parentIsReadOnly, onQrItemChange } = props;
35
35
  const onFocusLinkId = useQuestionnaireStore.use.onFocusLinkId();
36
- const readOnly = useReadOnly(qItem, parentIsReadOnly);
37
36
  const precision = getDecimalPrecision(qItem);
38
37
  const { displayUnit, displayPrompt, entryFormat } = renderingExtensions;
39
38
  // Init input value
@@ -50,6 +49,7 @@ function DecimalItem(props) {
50
49
  initialInput = precision ? valueDecimal.toFixed(precision) : valueDecimal.toString();
51
50
  }
52
51
  const [input, setInput] = useState(initialInput);
52
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
53
53
  // Perform validation checks
54
54
  const feedback = useValidationFeedback(qItem, input);
55
55
  // Process calculated expressions
@@ -1 +1 @@
1
- {"version":3,"file":"DecimalItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/DecimalItem/DecimalItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecimalItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/DecimalItem/DecimalItem.tsx"],"names":[],"mappings":"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"}