@aehrc/smart-forms-renderer 0.27.4 → 0.28.0

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 (66) hide show
  1. package/.swcrc +2 -2
  2. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.d.ts +1 -0
  3. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js +12 -2
  4. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js.map +1 -1
  5. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +5 -2
  6. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
  7. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.d.ts +1 -0
  8. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js +3 -3
  9. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js.map +1 -1
  10. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.d.ts +1 -0
  11. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js +12 -2
  12. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js.map +1 -1
  13. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +5 -2
  14. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
  15. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +4 -1
  16. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -1
  17. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.d.ts +1 -0
  18. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js +1 -1
  19. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js.map +1 -1
  20. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.d.ts +2 -1
  21. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.js.map +1 -1
  22. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +3 -1
  23. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -1
  24. package/lib/hooks/useValidationFeedback.js +1 -1
  25. package/lib/utils/validateQuestionnaire.js.map +1 -1
  26. package/package.json +6 -3
  27. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx +28 -1
  28. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +6 -0
  29. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx +5 -1
  30. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx +20 -1
  31. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +6 -0
  32. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +5 -0
  33. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx +3 -1
  34. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.tsx +2 -1
  35. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +15 -12
  36. package/src/hooks/useValidationFeedback.ts +1 -1
  37. package/src/stories/assets/questionnaires/QAdvancedAdditionalDisplayContent.ts +30 -0
  38. package/src/stories/assets/questionnaires/QAdvancedOther.ts +1 -2
  39. package/src/stories/assets/questionnaires/QAdvancedTextApperance.ts +28 -0
  40. package/src/stories/assets/questionnaires/QBehaviorValueConstraints.ts +1 -1
  41. package/src/stories/assets/questionnaires/QBoolean.ts +1 -1
  42. package/src/stories/assets/questionnaires/QChoice.ts +357 -1
  43. package/src/stories/assets/questionnaires/QDate.ts +1 -1
  44. package/src/stories/assets/questionnaires/QDateTime.ts +1 -1
  45. package/src/stories/assets/questionnaires/QDecimal.ts +1 -1
  46. package/src/stories/assets/questionnaires/QInteger.ts +1 -1
  47. package/src/stories/assets/questionnaires/QItemControlDisplay.ts +460 -17
  48. package/src/stories/assets/questionnaires/QItemControlGroup.ts +220 -6
  49. package/src/stories/assets/questionnaires/QOpenChoice.ts +1 -1
  50. package/src/stories/assets/questionnaires/QQuantity.ts +6 -0
  51. package/src/stories/assets/questionnaires/QString.ts +1 -1
  52. package/src/stories/assets/questionnaires/QText.ts +2 -2
  53. package/src/stories/itemTypes/Boolean.stories.tsx +0 -17
  54. package/src/stories/itemTypes/Choice.stories.tsx +15 -0
  55. package/src/stories/itemTypes/Url.stories.tsx +2 -2
  56. package/src/stories/sdc/AdvancedAdditionalDisplayContent.stories.tsx +7 -1
  57. package/src/stories/sdc/AdvancedTextAppearance.stories.tsx +7 -0
  58. package/src/stories/sdc/BehaviorChoiceRestriction.stories.tsx +1 -1
  59. package/src/stories/sdc/ItemControlDisplay.stories.tsx +31 -1
  60. package/src/stories/sdc/ItemControlGroup.stories.tsx +10 -3
  61. package/src/tests/enableWhen.test.ts +112 -0
  62. package/src/tests/test-data/enable-when-items-sample.json +3848 -0
  63. package/src/tests/test-data/initial-answers-sample.json +16 -0
  64. package/src/tests/test-data/linked-questions-map.json +217 -0
  65. package/src/tests/test-data/questionnaire-response-sample.json +650 -0
  66. package/src/utils/validateQuestionnaire.ts +18 -6
@@ -607,7 +607,9 @@ function createValidationOperationOutcomeIssue(
607
607
  }
608
608
 
609
609
  case ValidationResult.regex: {
610
- detailsText = `${fieldDisplayText}: The value '${getInputInString(qrItem.answer?.[answerIndex])}' does not match the defined format.`;
610
+ detailsText = `${fieldDisplayText}: The value '${getInputInString(
611
+ qrItem.answer?.[answerIndex]
612
+ )}' does not match the defined format.`;
611
613
  if (structuredDataCapture.getEntryFormat(qItem)) {
612
614
  detailsText += ` ${structuredDataCapture.getEntryFormat(qItem)}`;
613
615
  }
@@ -631,7 +633,9 @@ function createValidationOperationOutcomeIssue(
631
633
  }
632
634
 
633
635
  case ValidationResult.minLength: {
634
- detailsText = `${fieldDisplayText}: Expected the minimum value ${structuredDataCapture.getMinLength(qItem)} characters, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
636
+ detailsText = `${fieldDisplayText}: Expected the minimum value ${structuredDataCapture.getMinLength(
637
+ qItem
638
+ )} characters, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
635
639
  return {
636
640
  severity: 'error',
637
641
  code: 'business-rule',
@@ -650,7 +654,9 @@ function createValidationOperationOutcomeIssue(
650
654
  }
651
655
 
652
656
  case ValidationResult.maxLength: {
653
- detailsText = `${fieldDisplayText}: Exceeded maximum of ${qItem.maxLength} characters, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
657
+ detailsText = `${fieldDisplayText}: Exceeded maximum of ${
658
+ qItem.maxLength
659
+ } characters, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
654
660
  return {
655
661
  severity: 'error',
656
662
  code: 'business-rule',
@@ -669,7 +675,9 @@ function createValidationOperationOutcomeIssue(
669
675
  }
670
676
 
671
677
  case ValidationResult.maxDecimalPlaces: {
672
- detailsText = `${fieldDisplayText}: Exceeded maximum decimal places ${structuredDataCapture.getMaxDecimalPlaces(qItem)}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
678
+ detailsText = `${fieldDisplayText}: Exceeded maximum decimal places ${structuredDataCapture.getMaxDecimalPlaces(
679
+ qItem
680
+ )}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
673
681
  return {
674
682
  severity: 'error',
675
683
  code: 'business-rule',
@@ -688,7 +696,9 @@ function createValidationOperationOutcomeIssue(
688
696
  }
689
697
 
690
698
  case ValidationResult.minValue: {
691
- detailsText = `${fieldDisplayText}: Expected the minimum value ${getMinValue(qItem)}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
699
+ detailsText = `${fieldDisplayText}: Expected the minimum value ${getMinValue(
700
+ qItem
701
+ )}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
692
702
  return {
693
703
  severity: 'error',
694
704
  code: 'business-rule',
@@ -707,7 +717,9 @@ function createValidationOperationOutcomeIssue(
707
717
  }
708
718
 
709
719
  case ValidationResult.maxValue: {
710
- detailsText = `${fieldDisplayText}: Exceeded the maximum value ${getMaxValue(qItem)}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
720
+ detailsText = `${fieldDisplayText}: Exceeded the maximum value ${getMaxValue(
721
+ qItem
722
+ )}, received '${getInputInString(qrItem.answer?.[answerIndex])}'`;
711
723
  return {
712
724
  severity: 'error',
713
725
  code: 'business-rule',