@aehrc/smart-forms-renderer 0.8.0 → 0.9.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 (477) hide show
  1. package/lib/components/Alert.styles.d.ts +2 -7
  2. package/lib/components/Box.styles.d.ts +6 -21
  3. package/lib/components/FormComponents/BooleanItem/BooleanItem.d.ts +3 -3
  4. package/lib/components/FormComponents/BooleanItem/BooleanItem.js +5 -4
  5. package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
  6. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.d.ts +3 -3
  7. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +6 -5
  8. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js.map +1 -1
  9. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.d.ts +3 -3
  10. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js +15 -14
  11. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js.map +1 -1
  12. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.d.ts +3 -3
  13. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js +15 -14
  14. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js.map +1 -1
  15. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.d.ts +3 -3
  16. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js +8 -8
  17. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js.map +1 -1
  18. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.d.ts +3 -3
  19. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +6 -6
  20. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
  21. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.d.ts +3 -3
  22. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +6 -5
  23. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
  24. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.d.ts +1 -0
  25. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +2 -2
  26. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js.map +1 -1
  27. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.d.ts +3 -3
  28. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +8 -7
  29. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -1
  30. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.d.ts +1 -0
  31. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +2 -2
  32. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js.map +1 -1
  33. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.d.ts +3 -3
  34. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js +8 -7
  35. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js.map +1 -1
  36. package/lib/components/FormComponents/CustomDateItem/CustomDateField2.d.ts +18 -0
  37. package/lib/components/FormComponents/CustomDateItem/CustomDateField2.js +31 -0
  38. package/lib/components/FormComponents/CustomDateItem/CustomDateField2.js.map +1 -0
  39. package/lib/components/FormComponents/CustomDateItem/CustomDateItem.d.ts +9 -0
  40. package/lib/components/FormComponents/CustomDateItem/CustomDateItem.js +68 -0
  41. package/lib/components/FormComponents/CustomDateItem/CustomDateItem.js.map +1 -0
  42. package/lib/components/FormComponents/CustomDateItem/CustomDateTimeField.d.ts +9 -0
  43. package/lib/components/FormComponents/CustomDateItem/CustomDateTimeField.js +75 -0
  44. package/lib/components/FormComponents/CustomDateItem/CustomDateTimeField.js.map +1 -0
  45. package/lib/components/FormComponents/CustomDateItem/CustomDateTimePickerText2.d.ts +9 -0
  46. package/lib/components/FormComponents/CustomDateItem/CustomDateTimePickerText2.js +75 -0
  47. package/lib/components/FormComponents/CustomDateItem/CustomDateTimePickerText2.js.map +1 -0
  48. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/CustomDateField.d.ts +18 -0
  49. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/CustomDateField.js +33 -0
  50. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/CustomDateField.js.map +1 -0
  51. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePicker.d.ts +11 -0
  52. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePicker.js +55 -0
  53. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePicker.js.map +1 -0
  54. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.d.ts +9 -0
  55. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.js +13 -0
  56. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.js.map +1 -0
  57. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/MuiDatePicker.d.ts +5 -0
  58. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/MuiDatePicker.js +20 -0
  59. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/MuiDatePicker.js.map +1 -0
  60. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/hooks/useParseDates.d.ts +5 -0
  61. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/hooks/useParseDates.js +27 -0
  62. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/hooks/useParseDates.js.map +1 -0
  63. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/index.d.ts +1 -0
  64. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/index.js +18 -0
  65. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/index.js.map +1 -0
  66. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.d.ts +1 -0
  67. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.js +18 -0
  68. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.js.map +1 -0
  69. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/parseDates.d.ts +9 -0
  70. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/parseDates.js +121 -0
  71. package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/parseDates.js.map +1 -0
  72. package/lib/components/FormComponents/CustomDateItem/customDateTimePickerText.d.ts +9 -0
  73. package/lib/components/FormComponents/CustomDateItem/customDateTimePickerText.js +71 -0
  74. package/lib/components/FormComponents/CustomDateItem/customDateTimePickerText.js.map +1 -0
  75. package/lib/components/FormComponents/CustomDateItem/index.d.ts +1 -0
  76. package/lib/components/FormComponents/CustomDateItem/index.js +18 -0
  77. package/lib/components/FormComponents/CustomDateItem/index.js.map +1 -0
  78. package/lib/components/FormComponents/DateItem/DateItem.d.ts +3 -3
  79. package/lib/components/FormComponents/DateItem/DateItem.js +5 -4
  80. package/lib/components/FormComponents/DateItem/DateItem.js.map +1 -1
  81. package/lib/components/FormComponents/DateItem/DatePicker.d.ts +2 -0
  82. package/lib/components/FormComponents/DateItem/DatePicker.js +42 -0
  83. package/lib/components/FormComponents/DateItem/DatePicker.js.map +1 -0
  84. package/lib/components/FormComponents/DateItem/DatePickerField.d.ts +8 -0
  85. package/lib/components/FormComponents/DateItem/DatePickerField.js +24 -0
  86. package/lib/components/FormComponents/DateItem/DatePickerField.js.map +1 -0
  87. package/lib/components/FormComponents/DateTimeItem/DateTimeItem.d.ts +3 -3
  88. package/lib/components/FormComponents/DateTimeItem/DateTimeItem.js +5 -4
  89. package/lib/components/FormComponents/DateTimeItem/DateTimeItem.js.map +1 -1
  90. package/lib/components/FormComponents/DecimalItem/DecimalItem.d.ts +3 -3
  91. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +7 -7
  92. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -1
  93. package/lib/components/FormComponents/DisplayItem/DisplayBox.d.ts +0 -0
  94. package/lib/components/FormComponents/DisplayItem/DisplayBox.js +2 -0
  95. package/lib/components/FormComponents/DisplayItem/DisplayBox.js.map +1 -0
  96. package/lib/components/FormComponents/DisplayItem/DisplayBox.styles.d.ts +4 -0
  97. package/lib/components/FormComponents/DisplayItem/DisplayBox.styles.js +35 -0
  98. package/lib/components/FormComponents/DisplayItem/DisplayBox.styles.js.map +1 -0
  99. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.d.ts +3 -1
  100. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js +2 -2
  101. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js.map +1 -1
  102. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.d.ts +2 -7
  103. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js +0 -1
  104. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +1 -1
  105. package/lib/components/FormComponents/DisplayItem/DisplayItem.js +2 -2
  106. package/lib/components/FormComponents/DisplayItem/DisplayItem.js.map +1 -1
  107. package/lib/components/FormComponents/GridGroup/GridGroup.d.ts +3 -3
  108. package/lib/components/FormComponents/GridGroup/GridGroup.js +16 -9
  109. package/lib/components/FormComponents/GridGroup/GridGroup.js.map +1 -1
  110. package/lib/components/FormComponents/GridGroup/GridRow.d.ts +3 -3
  111. package/lib/components/FormComponents/GridGroup/GridRow.js +4 -4
  112. package/lib/components/FormComponents/GridGroup/GridRow.js.map +1 -1
  113. package/lib/components/FormComponents/GridGroup/GridTable.d.ts +3 -2
  114. package/lib/components/FormComponents/GridGroup/GridTable.js +9 -4
  115. package/lib/components/FormComponents/GridGroup/GridTable.js.map +1 -1
  116. package/lib/components/FormComponents/GridGroup/index.d.ts +1 -0
  117. package/lib/components/FormComponents/GridGroup/index.js +18 -0
  118. package/lib/components/FormComponents/GridGroup/index.js.map +1 -0
  119. package/lib/components/FormComponents/GroupItem/GroupHeading.d.ts +1 -0
  120. package/lib/components/FormComponents/GroupItem/GroupHeading.js +6 -5
  121. package/lib/components/FormComponents/GroupItem/GroupHeading.js.map +1 -1
  122. package/lib/components/FormComponents/GroupItem/GroupItem.d.ts +3 -4
  123. package/lib/components/FormComponents/GroupItem/GroupItem.js +7 -5
  124. package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -1
  125. package/lib/components/FormComponents/GroupItem/GroupItem.styles.d.ts +2 -6
  126. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.d.ts +3 -3
  127. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js +11 -12
  128. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -1
  129. package/lib/components/FormComponents/IntegerItem/IntegerItem.d.ts +3 -3
  130. package/lib/components/FormComponents/IntegerItem/IntegerItem.js +7 -7
  131. package/lib/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -1
  132. package/lib/components/FormComponents/IntegerItem/SliderItem.d.ts +9 -0
  133. package/lib/components/FormComponents/IntegerItem/SliderItem.js +75 -0
  134. package/lib/components/FormComponents/IntegerItem/SliderItem.js.map +1 -0
  135. package/lib/components/FormComponents/Item.styles.d.ts +0 -4
  136. package/lib/components/FormComponents/Item.styles.js +0 -4
  137. package/lib/components/FormComponents/Item.styles.js.map +1 -1
  138. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js +2 -2
  139. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js.map +1 -1
  140. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.d.ts +3 -2
  141. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +3 -3
  142. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -1
  143. package/lib/components/FormComponents/ItemParts/ItemLabelText.d.ts +1 -0
  144. package/lib/components/FormComponents/ItemParts/ItemLabelText.js +4 -6
  145. package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -1
  146. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.d.ts +1 -0
  147. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +2 -2
  148. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -1
  149. package/lib/components/FormComponents/Lists.styles.d.ts +2 -9
  150. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.d.ts +3 -2
  151. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js +2 -3
  152. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js.map +1 -1
  153. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.d.ts +3 -3
  154. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +8 -7
  155. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js.map +1 -1
  156. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.d.ts +3 -3
  157. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js +16 -15
  158. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js.map +1 -1
  159. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.d.ts +3 -3
  160. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js +6 -6
  161. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js.map +1 -1
  162. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.d.ts +3 -3
  163. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js +7 -6
  164. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js.map +1 -1
  165. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.d.ts +3 -2
  166. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js +2 -2
  167. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js.map +1 -1
  168. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.d.ts +3 -3
  169. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js +7 -6
  170. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js.map +1 -1
  171. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.d.ts +3 -2
  172. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js +2 -2
  173. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js.map +1 -1
  174. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.d.ts +3 -3
  175. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js +8 -7
  176. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js.map +1 -1
  177. package/lib/components/FormComponents/RepeatGroup/AddItemButton.d.ts +1 -0
  178. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +2 -2
  179. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -1
  180. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.d.ts +1 -0
  181. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +2 -2
  182. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +1 -1
  183. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.d.ts +2 -2
  184. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js +20 -7
  185. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -1
  186. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.d.ts +2 -2
  187. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +5 -3
  188. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -1
  189. package/lib/components/FormComponents/RepeatItem/AddItemButton.d.ts +1 -0
  190. package/lib/components/FormComponents/RepeatItem/AddItemButton.js +2 -2
  191. package/lib/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -1
  192. package/lib/components/FormComponents/RepeatItem/DeleteItemButton.d.ts +1 -0
  193. package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js +2 -2
  194. package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js.map +1 -1
  195. package/lib/components/FormComponents/RepeatItem/RepeatField.d.ts +3 -3
  196. package/lib/components/FormComponents/RepeatItem/RepeatField.js +5 -3
  197. package/lib/components/FormComponents/RepeatItem/RepeatField.js.map +1 -1
  198. package/lib/components/FormComponents/RepeatItem/RepeatItem.d.ts +4 -3
  199. package/lib/components/FormComponents/RepeatItem/RepeatItem.js +15 -5
  200. package/lib/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -1
  201. package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.d.ts +4 -18
  202. package/lib/components/FormComponents/RepeatItem/index.d.ts +1 -0
  203. package/lib/components/FormComponents/RepeatItem/index.js +18 -0
  204. package/lib/components/FormComponents/RepeatItem/index.js.map +1 -0
  205. package/lib/components/FormComponents/SingleItem/SingleItem.d.ts +3 -3
  206. package/lib/components/FormComponents/SingleItem/SingleItem.js +4 -2
  207. package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -1
  208. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.d.ts +3 -3
  209. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +20 -15
  210. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
  211. package/lib/components/FormComponents/SliderItem/DisplayBox.styles.d.ts +4 -0
  212. package/lib/components/FormComponents/SliderItem/DisplayBox.styles.js +35 -0
  213. package/lib/components/FormComponents/SliderItem/DisplayBox.styles.js.map +1 -0
  214. package/lib/components/FormComponents/SliderItem/Slider.styles.d.ts +6 -0
  215. package/lib/components/FormComponents/SliderItem/Slider.styles.js +33 -0
  216. package/lib/components/FormComponents/SliderItem/Slider.styles.js.map +1 -0
  217. package/lib/components/FormComponents/SliderItem/SliderDisplayValue.d.ts +8 -0
  218. package/lib/components/FormComponents/SliderItem/SliderDisplayValue.js +28 -0
  219. package/lib/components/FormComponents/SliderItem/SliderDisplayValue.js.map +1 -0
  220. package/lib/components/FormComponents/SliderItem/SliderField.d.ts +16 -0
  221. package/lib/components/FormComponents/SliderItem/SliderField.js +41 -0
  222. package/lib/components/FormComponents/SliderItem/SliderField.js.map +1 -0
  223. package/lib/components/FormComponents/SliderItem/SliderItem.d.ts +9 -0
  224. package/lib/components/FormComponents/SliderItem/SliderItem.js +56 -0
  225. package/lib/components/FormComponents/SliderItem/SliderItem.js.map +1 -0
  226. package/lib/components/FormComponents/SliderItem/SliderLabels.d.ts +7 -0
  227. package/lib/components/FormComponents/SliderItem/SliderLabels.js +32 -0
  228. package/lib/components/FormComponents/SliderItem/SliderLabels.js.map +1 -0
  229. package/lib/components/FormComponents/StringItem/StringItem.d.ts +3 -3
  230. package/lib/components/FormComponents/StringItem/StringItem.js +5 -4
  231. package/lib/components/FormComponents/StringItem/StringItem.js.map +1 -1
  232. package/lib/components/FormComponents/Tables/AddRowButton.d.ts +1 -0
  233. package/lib/components/FormComponents/Tables/AddRowButton.js +2 -2
  234. package/lib/components/FormComponents/Tables/AddRowButton.js.map +1 -1
  235. package/lib/components/FormComponents/Tables/DeleteRowButton.d.ts +1 -0
  236. package/lib/components/FormComponents/Tables/DeleteRowButton.js +2 -2
  237. package/lib/components/FormComponents/Tables/DeleteRowButton.js.map +1 -1
  238. package/lib/components/FormComponents/Tables/GroupTable.d.ts +4 -3
  239. package/lib/components/FormComponents/Tables/GroupTable.js +25 -6
  240. package/lib/components/FormComponents/Tables/GroupTable.js.map +1 -1
  241. package/lib/components/FormComponents/Tables/GroupTableRow.d.ts +3 -3
  242. package/lib/components/FormComponents/Tables/GroupTableRow.js +4 -4
  243. package/lib/components/FormComponents/Tables/GroupTableRow.js.map +1 -1
  244. package/lib/components/FormComponents/Tables/QItemGroupTable.js +5 -7
  245. package/lib/components/FormComponents/Tables/QItemGroupTable.js.map +1 -1
  246. package/lib/components/FormComponents/Tables/QItemGroupTableRow.js +2 -2
  247. package/lib/components/FormComponents/Tables/QItemGroupTableRow.js.map +1 -1
  248. package/lib/components/FormComponents/TextItem/TextItem.d.ts +3 -3
  249. package/lib/components/FormComponents/TextItem/TextItem.js +5 -4
  250. package/lib/components/FormComponents/TextItem/TextItem.js.map +1 -1
  251. package/lib/components/FormComponents/TimeItem/TimeItem.d.ts +3 -3
  252. package/lib/components/FormComponents/TimeItem/TimeItem.js +5 -4
  253. package/lib/components/FormComponents/TimeItem/TimeItem.js.map +1 -1
  254. package/lib/components/FormComponents/UrlItem/UrlItem.d.ts +3 -3
  255. package/lib/components/FormComponents/UrlItem/UrlItem.js +5 -4
  256. package/lib/components/FormComponents/UrlItem/UrlItem.js.map +1 -1
  257. package/lib/components/FormComponents/index.d.ts +3 -0
  258. package/lib/components/FormComponents/index.js +3 -0
  259. package/lib/components/FormComponents/index.js.map +1 -1
  260. package/lib/components/Lists.styles.d.ts +2 -9
  261. package/lib/components/Renderer/BaseRenderer.js +3 -5
  262. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  263. package/lib/components/Renderer/FormBodyCollapsible.d.ts +2 -2
  264. package/lib/components/Renderer/FormBodyCollapsible.js +6 -5
  265. package/lib/components/Renderer/FormBodyCollapsible.js.map +1 -1
  266. package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.d.ts +2 -2
  267. package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.js.map +1 -1
  268. package/lib/components/Renderer/FormBodyTabbed.d.ts +2 -2
  269. package/lib/components/Renderer/FormBodyTabbed.js +6 -5
  270. package/lib/components/Renderer/FormBodyTabbed.js.map +1 -1
  271. package/lib/components/Renderer/FormTopLevelItem.d.ts +2 -2
  272. package/lib/components/Renderer/FormTopLevelItem.js +9 -5
  273. package/lib/components/Renderer/FormTopLevelItem.js.map +1 -1
  274. package/lib/components/Tabs/FormBodySingleTab.js +1 -1
  275. package/lib/components/Tabs/FormBodySingleTab.js.map +1 -1
  276. package/lib/components/Tabs/ShowCompletedTabsSection.js +1 -1
  277. package/lib/components/Tabs/ShowCompletedTabsSection.js.map +1 -1
  278. package/lib/hooks/useDateSeparatorValidation.d.ts +2 -0
  279. package/lib/hooks/useDateSeparatorValidation.js +25 -0
  280. package/lib/hooks/useDateSeparatorValidation.js.map +1 -0
  281. package/lib/hooks/useDateValidation.d.ts +2 -0
  282. package/lib/hooks/useDateValidation.js +61 -0
  283. package/lib/hooks/useDateValidation.js.map +1 -0
  284. package/lib/hooks/useDecimalCalculatedExpression.d.ts +0 -1
  285. package/lib/hooks/useDecimalCalculatedExpression.js +3 -3
  286. package/lib/hooks/useDecimalCalculatedExpression.js.map +1 -1
  287. package/lib/hooks/useInitialiseRepeatAnswers.d.ts +1 -1
  288. package/lib/hooks/useInitialiseRepeatAnswers.js.map +1 -1
  289. package/lib/hooks/useIntegerCalculatedExpression.d.ts +0 -1
  290. package/lib/hooks/useIntegerCalculatedExpression.js +3 -3
  291. package/lib/hooks/useIntegerCalculatedExpression.js.map +1 -1
  292. package/lib/hooks/useMinimalStringCalculatedExpression.d.ts +11 -0
  293. package/lib/hooks/useMinimalStringCalculatedExpression.js +37 -0
  294. package/lib/hooks/useMinimalStringCalculatedExpression.js.map +1 -0
  295. package/lib/hooks/useReadOnly.d.ts +3 -0
  296. package/lib/hooks/useReadOnly.js +26 -0
  297. package/lib/hooks/useReadOnly.js.map +1 -0
  298. package/lib/hooks/useSliderExtensions.d.ts +10 -0
  299. package/lib/hooks/useSliderExtensions.js +37 -0
  300. package/lib/hooks/useSliderExtensions.js.map +1 -0
  301. package/lib/hooks/useTerminologyServerQuery.js +0 -1
  302. package/lib/hooks/useTerminologyServerQuery.js.map +1 -1
  303. package/lib/index.d.ts +3 -3
  304. package/lib/index.js +15 -6
  305. package/lib/index.js.map +1 -1
  306. package/lib/interfaces/calculatedExpression.interface.d.ts +1 -1
  307. package/lib/interfaces/index.d.ts +2 -0
  308. package/lib/interfaces/index.js +18 -0
  309. package/lib/interfaces/index.js.map +1 -0
  310. package/lib/interfaces/questionnaireStore.interface.d.ts +1 -0
  311. package/lib/interfaces/renderProps.interface.d.ts +7 -3
  312. package/lib/stores/useQuestionnaireStore.d.ts +1 -0
  313. package/lib/stores/useQuestionnaireStore.js +28 -12
  314. package/lib/stores/useQuestionnaireStore.js.map +1 -1
  315. package/lib/test.d.ts +4 -0
  316. package/lib/test.js +18 -0
  317. package/lib/test.js.map +1 -0
  318. package/lib/theme/customGlobalStyles.js +0 -4
  319. package/lib/theme/customGlobalStyles.js.map +1 -1
  320. package/lib/theme/overrides/Typography.d.ts +13 -0
  321. package/lib/theme/overrides/Typography.js +31 -0
  322. package/lib/theme/overrides/Typography.js.map +1 -0
  323. package/lib/theme/typography.d.ts +0 -2
  324. package/lib/theme/typography.js +3 -5
  325. package/lib/theme/typography.js.map +1 -1
  326. package/lib/utils/calculatedExpression.d.ts +17 -1
  327. package/lib/utils/calculatedExpression.js +71 -20
  328. package/lib/utils/calculatedExpression.js.map +1 -1
  329. package/lib/utils/dayjsExtend.d.ts +1 -0
  330. package/lib/utils/dayjsExtend.js +22 -0
  331. package/lib/utils/dayjsExtend.js.map +1 -0
  332. package/lib/utils/enableWhenExpression.d.ts +5 -1
  333. package/lib/utils/enableWhenExpression.js +26 -21
  334. package/lib/utils/enableWhenExpression.js.map +1 -1
  335. package/lib/utils/fhirpath.d.ts +3 -1
  336. package/lib/utils/fhirpath.js +25 -15
  337. package/lib/utils/fhirpath.js.map +1 -1
  338. package/lib/utils/index.d.ts +1 -0
  339. package/lib/utils/index.js +1 -0
  340. package/lib/utils/index.js.map +1 -1
  341. package/lib/utils/initialiseForm.d.ts +2 -0
  342. package/lib/utils/initialiseForm.js +13 -5
  343. package/lib/utils/initialiseForm.js.map +1 -1
  344. package/lib/utils/itemControl.d.ts +12 -0
  345. package/lib/utils/itemControl.js +30 -0
  346. package/lib/utils/itemControl.js.map +1 -1
  347. package/lib/utils/launchContext.d.ts +0 -0
  348. package/lib/utils/launchContext.js +2 -0
  349. package/lib/utils/launchContext.js.map +1 -0
  350. package/lib/utils/mapItem.d.ts +1 -1
  351. package/lib/utils/qrItem.d.ts +1 -7
  352. package/lib/utils/qrItem.js +1 -12
  353. package/lib/utils/qrItem.js.map +1 -1
  354. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +4 -2
  355. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
  356. package/lib/utils/removeHidden.js +2 -1
  357. package/lib/utils/removeHidden.js.map +1 -1
  358. package/lib/utils/repopulateIntoResponse.js +90 -29
  359. package/lib/utils/repopulateIntoResponse.js.map +1 -1
  360. package/lib/utils/repopulateItems.d.ts +14 -1
  361. package/lib/utils/repopulateItems.js +251 -70
  362. package/lib/utils/repopulateItems.js.map +1 -1
  363. package/lib/utils/repopulateRepeatGroup.js +9 -1
  364. package/lib/utils/repopulateRepeatGroup.js.map +1 -1
  365. package/lib/utils/slider.d.ts +28 -0
  366. package/lib/utils/slider.js +89 -0
  367. package/lib/utils/slider.js.map +1 -0
  368. package/package.json +20 -18
  369. package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +10 -7
  370. package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.tsx +11 -8
  371. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.tsx +46 -35
  372. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.tsx +48 -37
  373. package/src/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.tsx +21 -11
  374. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +11 -10
  375. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +12 -9
  376. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +3 -2
  377. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +16 -11
  378. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +3 -2
  379. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.tsx +14 -9
  380. package/src/components/FormComponents/CustomDateItem/CustomDateItem.tsx +140 -0
  381. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/CustomDateField.tsx +96 -0
  382. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/DatePicker.tsx +81 -0
  383. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.tsx +33 -0
  384. package/src/components/FormComponents/{Typography.styles.ts → CustomDateItem/customDateTimePicker/MuiDatePicker.ts} +4 -7
  385. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/index.ts +18 -0
  386. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.ts +18 -0
  387. package/src/components/FormComponents/CustomDateItem/customDateTimePicker/utils/parseDates.ts +154 -0
  388. package/src/components/FormComponents/CustomDateItem/index.ts +18 -0
  389. package/src/components/FormComponents/DateItem/DateItem.tsx +10 -8
  390. package/src/components/FormComponents/DateTimeItem/DateTimeItem.tsx +10 -8
  391. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +11 -10
  392. package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.ts +0 -1
  393. package/src/components/FormComponents/DisplayItem/DisplayInstructions.tsx +8 -3
  394. package/src/components/FormComponents/DisplayItem/DisplayItem.tsx +2 -2
  395. package/src/components/FormComponents/GridGroup/GridGroup.tsx +49 -15
  396. package/src/components/FormComponents/GridGroup/GridRow.tsx +12 -7
  397. package/src/components/FormComponents/GridGroup/GridTable.tsx +32 -8
  398. package/src/components/FormComponents/GridGroup/index.ts +18 -0
  399. package/src/components/FormComponents/GroupItem/GroupHeading.tsx +12 -6
  400. package/src/components/FormComponents/GroupItem/GroupItem.tsx +13 -8
  401. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx +33 -11
  402. package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +11 -10
  403. package/src/components/FormComponents/Item.styles.ts +0 -5
  404. package/src/components/FormComponents/ItemParts/FadingCheckIcon.tsx +2 -2
  405. package/src/components/FormComponents/ItemParts/ItemFieldGrid.tsx +6 -5
  406. package/src/components/FormComponents/ItemParts/ItemLabelText.tsx +10 -5
  407. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx +3 -2
  408. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.tsx +10 -4
  409. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.tsx +15 -9
  410. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.tsx +58 -47
  411. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.tsx +15 -6
  412. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.tsx +13 -10
  413. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.tsx +10 -4
  414. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.tsx +12 -7
  415. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.tsx +10 -4
  416. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.tsx +14 -9
  417. package/src/components/FormComponents/RepeatGroup/AddItemButton.tsx +3 -2
  418. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.tsx +3 -2
  419. package/src/components/FormComponents/RepeatGroup/RepeatGroup.tsx +61 -10
  420. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +23 -7
  421. package/src/components/FormComponents/RepeatItem/AddItemButton.tsx +3 -2
  422. package/src/components/FormComponents/RepeatItem/DeleteItemButton.tsx +3 -2
  423. package/src/components/FormComponents/RepeatItem/RepeatField.tsx +33 -9
  424. package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +44 -7
  425. package/src/components/FormComponents/RepeatItem/index.ts +18 -0
  426. package/src/components/FormComponents/SingleItem/SingleItem.tsx +12 -6
  427. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +41 -11
  428. package/src/components/FormComponents/SliderItem/Slider.styles.ts +34 -0
  429. package/src/components/FormComponents/SliderItem/SliderDisplayValue.tsx +43 -0
  430. package/src/components/FormComponents/SliderItem/SliderField.tsx +88 -0
  431. package/src/components/FormComponents/SliderItem/SliderItem.tsx +115 -0
  432. package/src/components/FormComponents/SliderItem/SliderLabels.tsx +53 -0
  433. package/src/components/FormComponents/StringItem/StringItem.tsx +9 -7
  434. package/src/components/FormComponents/Tables/AddRowButton.tsx +3 -2
  435. package/src/components/FormComponents/Tables/DeleteRowButton.tsx +3 -2
  436. package/src/components/FormComponents/Tables/GroupTable.tsx +70 -7
  437. package/src/components/FormComponents/Tables/GroupTableRow.tsx +12 -7
  438. package/src/components/FormComponents/TextItem/TextItem.tsx +9 -7
  439. package/src/components/FormComponents/TimeItem/TimeItem.tsx +10 -8
  440. package/src/components/FormComponents/UrlItem/UrlItem.tsx +9 -7
  441. package/src/components/FormComponents/index.ts +3 -0
  442. package/src/components/Renderer/BaseRenderer.tsx +5 -12
  443. package/src/components/Renderer/FormBodyCollapsible.tsx +9 -7
  444. package/src/components/Renderer/FormBodySingleCollapsibleWrapper.tsx +2 -3
  445. package/src/components/Renderer/FormBodyTabbed.tsx +9 -7
  446. package/src/components/Renderer/FormTopLevelItem.tsx +21 -13
  447. package/src/components/Tabs/FormBodySingleTab.tsx +1 -1
  448. package/src/components/Tabs/ShowCompletedTabsSection.tsx +1 -1
  449. package/src/hooks/useDateValidation.tsx +79 -0
  450. package/src/hooks/useDecimalCalculatedExpression.ts +3 -4
  451. package/src/hooks/useInitialiseRepeatAnswers.ts +1 -1
  452. package/src/hooks/useIntegerCalculatedExpression.ts +3 -4
  453. package/src/hooks/useReadOnly.ts +30 -0
  454. package/src/hooks/useSliderExtensions.ts +50 -0
  455. package/src/hooks/useTerminologyServerQuery.ts +0 -2
  456. package/src/index.ts +12 -9
  457. package/src/interfaces/calculatedExpression.interface.ts +1 -1
  458. package/src/interfaces/questionnaireStore.interface.ts +1 -0
  459. package/src/interfaces/renderProps.interface.ts +8 -3
  460. package/src/stores/useQuestionnaireStore.ts +39 -16
  461. package/src/theme/customGlobalStyles.tsx +0 -4
  462. package/src/theme/typography.ts +3 -5
  463. package/src/utils/calculatedExpression.ts +104 -35
  464. package/src/utils/dayjsExtend.ts +23 -0
  465. package/src/utils/enableWhenExpression.ts +49 -34
  466. package/src/utils/fhirpath.ts +50 -31
  467. package/src/utils/index.ts +1 -0
  468. package/src/utils/initialiseForm.ts +15 -5
  469. package/src/utils/itemControl.ts +32 -0
  470. package/src/utils/mapItem.ts +1 -1
  471. package/src/utils/qrItem.ts +1 -16
  472. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +4 -2
  473. package/src/utils/removeHidden.ts +2 -1
  474. package/src/utils/repopulateIntoResponse.ts +134 -43
  475. package/src/utils/repopulateItems.ts +379 -101
  476. package/src/utils/slider.ts +112 -0
  477. package/src/utils/repopulateRepeatGroup.ts +0 -68
@@ -27,22 +27,29 @@ import { findInAnswerOptions, getQrChoiceValue } from '../../../utils/choice';
27
27
  import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
28
28
  import type {
29
29
  PropsWithIsRepeatedAttribute,
30
+ PropsWithParentIsReadOnlyAttribute,
30
31
  PropsWithQrItemChangeHandler
31
32
  } from '../../../interfaces/renderProps.interface';
32
33
  import DisplayInstructions from '../DisplayItem/DisplayInstructions';
33
34
  import LabelWrapper from '../ItemParts/ItemLabelWrapper';
34
35
  import OpenChoiceRadioAnswerOptionFields from './OpenChoiceRadioAnswerOptionFields';
36
+ import useReadOnly from '../../../hooks/useReadOnly';
35
37
 
36
38
  interface OpenChoiceRadioAnswerOptionItemProps
37
- extends PropsWithQrItemChangeHandler<QuestionnaireResponseItem>,
38
- PropsWithIsRepeatedAttribute {
39
+ extends PropsWithQrItemChangeHandler,
40
+ PropsWithIsRepeatedAttribute,
41
+ PropsWithParentIsReadOnlyAttribute {
39
42
  qItem: QuestionnaireItem;
40
- qrItem: QuestionnaireResponseItem;
43
+ qrItem: QuestionnaireResponseItem | null;
41
44
  orientation: ChoiceItemOrientation;
42
45
  }
43
46
 
44
47
  function OpenChoiceRadioAnswerOptionItem(props: OpenChoiceRadioAnswerOptionItemProps) {
45
- const { qItem, qrItem, onQrItemChange, orientation } = props;
48
+ const { qItem, qrItem, orientation, parentIsReadOnly, onQrItemChange } = props;
49
+
50
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
51
+ const openLabelText = getOpenLabelText(qItem);
52
+ const { displayInstructions } = useRenderingExtensions(qItem);
46
53
 
47
54
  // Init answers
48
55
  const qrOpenChoiceRadio = qrItem ?? createEmptyQrItem(qItem);
@@ -70,10 +77,6 @@ function OpenChoiceRadioAnswerOptionItem(props: OpenChoiceRadioAnswerOptionItemP
70
77
  valueRadio = '';
71
78
  }
72
79
 
73
- // Get additional rendering extensions
74
- const openLabelText = getOpenLabelText(qItem);
75
- const { displayInstructions, readOnly } = useRenderingExtensions(qItem);
76
-
77
80
  // Event handlers
78
81
  function handleValueChange(
79
82
  changedOptionValue: string | null,
@@ -120,7 +123,7 @@ function OpenChoiceRadioAnswerOptionItem(props: OpenChoiceRadioAnswerOptionItemP
120
123
  <FullWidthFormComponentBox data-test="q-item-open-choice-radio-answer-option-box">
121
124
  <Grid container columnSpacing={6}>
122
125
  <Grid item xs={5}>
123
- <LabelWrapper qItem={qItem} />
126
+ <LabelWrapper qItem={qItem} readOnly={readOnly} />
124
127
  </Grid>
125
128
  <Grid item xs={7}>
126
129
  <OpenChoiceRadioAnswerOptionFields
@@ -133,7 +136,7 @@ function OpenChoiceRadioAnswerOptionItem(props: OpenChoiceRadioAnswerOptionItemP
133
136
  readOnly={readOnly}
134
137
  onValueChange={handleValueChange}
135
138
  />
136
- <DisplayInstructions displayInstructions={displayInstructions} />
139
+ <DisplayInstructions displayInstructions={displayInstructions} readOnly={readOnly} />
137
140
  </Grid>
138
141
  </Grid>
139
142
  </FullWidthFormComponentBox>
@@ -3,20 +3,26 @@ import { getAnswerOptionLabel } from '../../../utils/openChoice';
3
3
  import { StandardTextField } from '../Textfield.styles';
4
4
  import Autocomplete from '@mui/material/Autocomplete';
5
5
  import type { QuestionnaireItem, QuestionnaireItemAnswerOption } from 'fhir/r4';
6
- import type { PropsWithIsTabledAttribute } from '../../../interfaces/renderProps.interface';
6
+ import type {
7
+ PropsWithIsTabledAttribute,
8
+ PropsWithParentIsReadOnlyAttribute
9
+ } from '../../../interfaces/renderProps.interface';
7
10
  import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
8
11
 
9
- interface OpenChoiceSelectAnswerOptionFieldProps extends PropsWithIsTabledAttribute {
12
+ interface OpenChoiceSelectAnswerOptionFieldProps
13
+ extends PropsWithIsTabledAttribute,
14
+ PropsWithParentIsReadOnlyAttribute {
10
15
  qItem: QuestionnaireItem;
11
16
  options: QuestionnaireItemAnswerOption[];
12
17
  valueSelect: QuestionnaireItemAnswerOption | null;
18
+ readOnly: boolean;
13
19
  onChange: (newValue: QuestionnaireItemAnswerOption | string | null) => void;
14
20
  }
15
21
 
16
22
  function OpenChoiceSelectAnswerOptionField(props: OpenChoiceSelectAnswerOptionFieldProps) {
17
- const { qItem, options, valueSelect, isTabled, onChange } = props;
23
+ const { qItem, options, valueSelect, readOnly, isTabled, onChange } = props;
18
24
 
19
- const { displayUnit, displayPrompt, readOnly, entryFormat } = useRenderingExtensions(qItem);
25
+ const { displayUnit, displayPrompt, entryFormat } = useRenderingExtensions(qItem);
20
26
 
21
27
  return (
22
28
  <Autocomplete
@@ -28,24 +28,27 @@ import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
28
28
  import type {
29
29
  PropsWithIsRepeatedAttribute,
30
30
  PropsWithIsTabledAttribute,
31
+ PropsWithParentIsReadOnlyAttribute,
31
32
  PropsWithQrItemChangeHandler
32
33
  } from '../../../interfaces/renderProps.interface';
33
34
  import DisplayInstructions from '../DisplayItem/DisplayInstructions';
34
35
  import LabelWrapper from '../ItemParts/ItemLabelWrapper';
35
36
  import OpenChoiceSelectAnswerOptionField from './OpenChoiceSelectAnswerOptionField';
37
+ import useReadOnly from '../../../hooks/useReadOnly';
36
38
 
37
39
  interface OpenChoiceSelectAnswerOptionItemProps
38
- extends PropsWithQrItemChangeHandler<QuestionnaireResponseItem>,
40
+ extends PropsWithQrItemChangeHandler,
39
41
  PropsWithIsRepeatedAttribute,
40
- PropsWithIsTabledAttribute {
42
+ PropsWithIsTabledAttribute,
43
+ PropsWithParentIsReadOnlyAttribute {
41
44
  qItem: QuestionnaireItem;
42
- qrItem: QuestionnaireResponseItem;
45
+ qrItem: QuestionnaireResponseItem | null;
43
46
  }
44
47
 
45
48
  function OpenChoiceSelectAnswerOptionItem(props: OpenChoiceSelectAnswerOptionItemProps) {
46
- const { qItem, qrItem, isRepeated, isTabled, onQrItemChange } = props;
49
+ const { qItem, qrItem, isRepeated, isTabled, parentIsReadOnly, onQrItemChange } = props;
47
50
 
48
- // Get additional rendering extensions
51
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
49
52
  const { displayInstructions } = useRenderingExtensions(qItem);
50
53
 
51
54
  // Init input value
@@ -97,6 +100,7 @@ function OpenChoiceSelectAnswerOptionItem(props: OpenChoiceSelectAnswerOptionIte
97
100
  qItem={qItem}
98
101
  options={answerOptions}
99
102
  valueSelect={valueSelect}
103
+ readOnly={readOnly}
100
104
  isTabled={isTabled}
101
105
  onChange={handleChange}
102
106
  />
@@ -107,17 +111,18 @@ function OpenChoiceSelectAnswerOptionItem(props: OpenChoiceSelectAnswerOptionIte
107
111
  <FullWidthFormComponentBox data-test="q-item-open-choice-select-answer-option-box">
108
112
  <Grid container columnSpacing={6}>
109
113
  <Grid item xs={5}>
110
- <LabelWrapper qItem={qItem} />
114
+ <LabelWrapper qItem={qItem} readOnly={readOnly} />
111
115
  </Grid>
112
116
  <Grid item xs={7}>
113
117
  <OpenChoiceSelectAnswerOptionField
114
118
  qItem={qItem}
115
119
  options={answerOptions}
116
120
  valueSelect={valueSelect}
121
+ readOnly={readOnly}
117
122
  isTabled={isTabled}
118
123
  onChange={handleChange}
119
124
  />
120
- <DisplayInstructions displayInstructions={displayInstructions} />
125
+ <DisplayInstructions displayInstructions={displayInstructions} readOnly={readOnly} />
121
126
  </Grid>
122
127
  </Grid>
123
128
  </FullWidthFormComponentBox>
@@ -2,22 +2,28 @@ import React from 'react';
2
2
  import Autocomplete from '@mui/material/Autocomplete';
3
3
  import { StandardTextField } from '../Textfield.styles';
4
4
  import Typography from '@mui/material/Typography';
5
- import type { PropsWithIsTabledAttribute } from '../../../interfaces/renderProps.interface';
5
+ import type {
6
+ PropsWithIsTabledAttribute,
7
+ PropsWithParentIsReadOnlyAttribute
8
+ } from '../../../interfaces/renderProps.interface';
6
9
  import type { Coding, QuestionnaireItem } from 'fhir/r4';
7
10
  import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
8
11
 
9
- interface OpenChoiceSelectAnswerValueSetFieldProps extends PropsWithIsTabledAttribute {
12
+ interface OpenChoiceSelectAnswerValueSetFieldProps
13
+ extends PropsWithIsTabledAttribute,
14
+ PropsWithParentIsReadOnlyAttribute {
10
15
  qItem: QuestionnaireItem;
11
16
  options: Coding[];
12
17
  valueSelect: Coding | null;
13
18
  serverError: Error | null;
19
+ readOnly: boolean;
14
20
  onValueChange: (newValue: Coding | string | null) => void;
15
21
  }
16
22
 
17
23
  function OpenChoiceSelectAnswerValueSetField(props: OpenChoiceSelectAnswerValueSetFieldProps) {
18
- const { qItem, options, valueSelect, serverError, isTabled, onValueChange } = props;
24
+ const { qItem, options, valueSelect, serverError, readOnly, isTabled, onValueChange } = props;
19
25
 
20
- const { displayUnit, displayPrompt, readOnly, entryFormat } = useRenderingExtensions(qItem);
26
+ const { displayUnit, displayPrompt, entryFormat } = useRenderingExtensions(qItem);
21
27
 
22
28
  return (
23
29
  <>
@@ -25,22 +25,28 @@ import useRenderingExtensions from '../../../hooks/useRenderingExtensions';
25
25
  import type {
26
26
  PropsWithIsRepeatedAttribute,
27
27
  PropsWithIsTabledAttribute,
28
+ PropsWithParentIsReadOnlyAttribute,
28
29
  PropsWithQrItemChangeHandler
29
30
  } from '../../../interfaces/renderProps.interface';
30
31
  import DisplayInstructions from '../DisplayItem/DisplayInstructions';
31
32
  import LabelWrapper from '../ItemParts/ItemLabelWrapper';
32
33
  import OpenChoiceSelectAnswerValueSetField from './OpenChoiceSelectAnswerValueSetField';
34
+ import useReadOnly from '../../../hooks/useReadOnly';
33
35
 
34
36
  interface OpenChoiceSelectAnswerValueSetItemProps
35
- extends PropsWithQrItemChangeHandler<QuestionnaireResponseItem>,
37
+ extends PropsWithQrItemChangeHandler,
36
38
  PropsWithIsRepeatedAttribute,
37
- PropsWithIsTabledAttribute {
39
+ PropsWithIsTabledAttribute,
40
+ PropsWithParentIsReadOnlyAttribute {
38
41
  qItem: QuestionnaireItem;
39
- qrItem: QuestionnaireResponseItem;
42
+ qrItem: QuestionnaireResponseItem | null;
40
43
  }
41
44
 
42
45
  function OpenChoiceSelectAnswerValueSetItem(props: OpenChoiceSelectAnswerValueSetItemProps) {
43
- const { qItem, qrItem, isRepeated, isTabled, onQrItemChange } = props;
46
+ const { qItem, qrItem, isRepeated, isTabled, parentIsReadOnly, onQrItemChange } = props;
47
+
48
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
49
+ const { displayInstructions } = useRenderingExtensions(qItem);
44
50
 
45
51
  // Init input value
46
52
  const qrOpenChoice = qrItem ?? createEmptyQrItem(qItem);
@@ -52,9 +58,6 @@ function OpenChoiceSelectAnswerValueSetItem(props: OpenChoiceSelectAnswerValueSe
52
58
  // Get codings/options from valueSet
53
59
  const { codings, serverError } = useValueSetCodings(qItem);
54
60
 
55
- // Get additional rendering extensions
56
- const { displayInstructions } = useRenderingExtensions(qItem);
57
-
58
61
  // Event handlers
59
62
  function handleValueChange(newValue: Coding | string | null) {
60
63
  if (newValue) {
@@ -82,6 +85,7 @@ function OpenChoiceSelectAnswerValueSetItem(props: OpenChoiceSelectAnswerValueSe
82
85
  valueSelect={valueSelect}
83
86
  serverError={serverError}
84
87
  isTabled={isTabled}
88
+ readOnly={readOnly}
85
89
  onValueChange={handleValueChange}
86
90
  />
87
91
  );
@@ -91,7 +95,7 @@ function OpenChoiceSelectAnswerValueSetItem(props: OpenChoiceSelectAnswerValueSe
91
95
  <FullWidthFormComponentBox>
92
96
  <Grid container columnSpacing={6}>
93
97
  <Grid item xs={5}>
94
- <LabelWrapper qItem={qItem} />
98
+ <LabelWrapper qItem={qItem} readOnly={readOnly} />
95
99
  </Grid>
96
100
  <Grid item xs={7}>
97
101
  <OpenChoiceSelectAnswerValueSetField
@@ -100,9 +104,10 @@ function OpenChoiceSelectAnswerValueSetItem(props: OpenChoiceSelectAnswerValueSe
100
104
  valueSelect={valueSelect}
101
105
  serverError={serverError}
102
106
  isTabled={isTabled}
107
+ readOnly={readOnly}
103
108
  onValueChange={handleValueChange}
104
109
  />
105
- <DisplayInstructions displayInstructions={displayInstructions} />
110
+ <DisplayInstructions displayInstructions={displayInstructions} readOnly={readOnly} />
106
111
  </Grid>
107
112
  </Grid>
108
113
  </FullWidthFormComponentBox>
@@ -23,13 +23,14 @@ import type { RepeatGroupSingle } from '../../../interfaces/repeatGroup.interfac
23
23
 
24
24
  interface AddItemButtonProps {
25
25
  repeatGroups: RepeatGroupSingle[];
26
+ readOnly: boolean;
26
27
  onAddItem: () => void;
27
28
  }
28
29
 
29
30
  function AddItemButton(props: AddItemButtonProps) {
30
- const { repeatGroups, onAddItem } = props;
31
+ const { repeatGroups, readOnly, onAddItem } = props;
31
32
 
32
- const isDisabled = repeatGroups[repeatGroups.length - 1].qrItem === null;
33
+ const isDisabled = repeatGroups[repeatGroups.length - 1].qrItem === null || readOnly;
33
34
 
34
35
  return (
35
36
  <Box display="flex" flexDirection="row-reverse">
@@ -24,13 +24,14 @@ import type { QuestionnaireResponseItem } from 'fhir/r4';
24
24
  interface DeleteItemButtonProps {
25
25
  nullableQrItem: QuestionnaireResponseItem | null;
26
26
  numOfRepeatGroups: number;
27
+ readOnly: boolean;
27
28
  onDeleteItem: () => void;
28
29
  }
29
30
 
30
31
  function DeleteItemButton(props: DeleteItemButtonProps) {
31
- const { nullableQrItem, numOfRepeatGroups, onDeleteItem } = props;
32
+ const { nullableQrItem, numOfRepeatGroups, readOnly, onDeleteItem } = props;
32
33
 
33
- const isDisabled = nullableQrItem === null || numOfRepeatGroups === 1;
34
+ const isDisabled = nullableQrItem === null || numOfRepeatGroups === 1 || readOnly;
34
35
 
35
36
  return (
36
37
  <RepeatDeleteTooltip className="repeat-group-delete" title="Delete item">
@@ -16,15 +16,17 @@
16
16
  */
17
17
 
18
18
  import React, { useState } from 'react';
19
- import type { PropsWithQrRepeatGroupChangeHandler } from '../../../interfaces/renderProps.interface';
19
+ import type {
20
+ PropsWithParentIsReadOnlyAttribute,
21
+ PropsWithQrRepeatGroupChangeHandler,
22
+ PropsWithShowMinimalViewAttribute
23
+ } from '../../../interfaces/renderProps.interface';
20
24
  import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
21
25
  import useInitialiseRepeatGroups from '../../../hooks/useInitialiseRepeatGroups';
22
26
  import { QGroupContainerBox } from '../../Box.styles';
23
27
  import Card from '@mui/material/Card';
24
28
  import Collapse from '@mui/material/Collapse';
25
29
  import Divider from '@mui/material/Divider';
26
-
27
- import { QGroupHeadingTypography } from '../Typography.styles';
28
30
  import { TransitionGroup } from 'react-transition-group';
29
31
  import { createEmptyQrItem } from '../../../utils/qrItem';
30
32
  import { nanoid } from 'nanoid';
@@ -32,15 +34,29 @@ import RepeatGroupItem from './RepeatGroupItem';
32
34
  import AddItemButton from './AddItemButton';
33
35
  import LabelWrapper from '../ItemParts/ItemLabelWrapper';
34
36
  import cloneDeep from 'lodash.clonedeep';
37
+ import useReadOnly from '../../../hooks/useReadOnly';
38
+ import Typography from '@mui/material/Typography';
35
39
 
36
- interface RepeatGroupProps extends PropsWithQrRepeatGroupChangeHandler {
40
+ interface RepeatGroupProps
41
+ extends PropsWithQrRepeatGroupChangeHandler,
42
+ PropsWithShowMinimalViewAttribute,
43
+ PropsWithParentIsReadOnlyAttribute {
37
44
  qItem: QuestionnaireItem;
38
45
  qrItems: QuestionnaireResponseItem[];
39
46
  groupCardElevation: number;
40
47
  }
41
48
 
42
49
  function RepeatGroup(props: RepeatGroupProps) {
43
- const { qItem, qrItems, groupCardElevation, onQrRepeatGroupChange } = props;
50
+ const {
51
+ qItem,
52
+ qrItems,
53
+ groupCardElevation,
54
+ showMinimalView,
55
+ parentIsReadOnly,
56
+ onQrRepeatGroupChange
57
+ } = props;
58
+
59
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
44
60
 
45
61
  const initialRepeatGroups = useInitialiseRepeatGroups(qItem, qrItems);
46
62
 
@@ -90,13 +106,47 @@ function RepeatGroup(props: RepeatGroupProps) {
90
106
  ]);
91
107
  }
92
108
 
109
+ if (showMinimalView) {
110
+ return (
111
+ <QGroupContainerBox key={qItem.linkId} cardElevation={groupCardElevation} isRepeated={true}>
112
+ <Card elevation={groupCardElevation} sx={{ p: 2 }}>
113
+ {repeatGroups.map(({ nanoId, qrItem: nullableQrItem }, index) => {
114
+ const answeredQrItem = createEmptyQrItem(qItem);
115
+ if (nullableQrItem) {
116
+ answeredQrItem.item = nullableQrItem.item;
117
+ }
118
+
119
+ return (
120
+ <RepeatGroupItem
121
+ key={nanoId}
122
+ qItem={qItem}
123
+ answeredQrItem={answeredQrItem}
124
+ nullableQrItem={nullableQrItem}
125
+ numOfRepeatGroups={repeatGroups.length}
126
+ groupCardElevation={groupCardElevation + 1}
127
+ showMinimalView={showMinimalView}
128
+ parentIsReadOnly={parentIsReadOnly}
129
+ onDeleteItem={() => handleDeleteItem(index)}
130
+ onQrItemChange={(newQrItem) => handleAnswerChange(newQrItem, index)}
131
+ />
132
+ );
133
+ })}
134
+ </Card>
135
+ </QGroupContainerBox>
136
+ );
137
+ }
138
+
93
139
  return (
94
140
  <QGroupContainerBox key={qItem.linkId} cardElevation={groupCardElevation} isRepeated={true}>
95
141
  <Card elevation={groupCardElevation} sx={{ p: 3, py: 2.5, mb: 3.5 }}>
96
- <QGroupHeadingTypography variant="h6">
97
- <LabelWrapper qItem={qItem} />
98
- </QGroupHeadingTypography>
99
- <Divider sx={{ mt: 1, mb: 1.5 }} light />
142
+ {qItem.text ? (
143
+ <>
144
+ <Typography variant="h6" color={readOnly ? 'text.secondary' : 'text.primary'}>
145
+ <LabelWrapper qItem={qItem} readOnly={readOnly} />
146
+ </Typography>
147
+ <Divider sx={{ mt: 1, mb: 1.5 }} light />
148
+ </>
149
+ ) : null}
100
150
  <TransitionGroup>
101
151
  {repeatGroups.map(({ nanoId, qrItem: nullableQrItem }, index) => {
102
152
  const answeredQrItem = createEmptyQrItem(qItem);
@@ -112,6 +162,7 @@ function RepeatGroup(props: RepeatGroupProps) {
112
162
  nullableQrItem={nullableQrItem}
113
163
  numOfRepeatGroups={repeatGroups.length}
114
164
  groupCardElevation={groupCardElevation + 1}
165
+ parentIsReadOnly={parentIsReadOnly}
115
166
  onDeleteItem={() => handleDeleteItem(index)}
116
167
  onQrItemChange={(newQrItem) => handleAnswerChange(newQrItem, index)}
117
168
  />
@@ -120,7 +171,7 @@ function RepeatGroup(props: RepeatGroupProps) {
120
171
  })}
121
172
  </TransitionGroup>
122
173
 
123
- <AddItemButton repeatGroups={repeatGroups} onAddItem={handleAddItem} />
174
+ <AddItemButton repeatGroups={repeatGroups} readOnly={readOnly} onAddItem={handleAddItem} />
124
175
  </Card>
125
176
  </QGroupContainerBox>
126
177
  );
@@ -19,11 +19,19 @@ import React from 'react';
19
19
  import { RepeatGroupContainerStack } from '../RepeatItem/RepeatItem.styles';
20
20
  import Box from '@mui/material/Box';
21
21
  import GroupItem from '../GroupItem/GroupItem';
22
- import type { PropsWithQrItemChangeHandler } from '../../../interfaces/renderProps.interface';
22
+ import type {
23
+ PropsWithParentIsReadOnlyAttribute,
24
+ PropsWithQrItemChangeHandler,
25
+ PropsWithShowMinimalViewAttribute
26
+ } from '../../../interfaces/renderProps.interface';
23
27
  import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
24
28
  import DeleteItemButton from './DeleteItemButton';
29
+ import useReadOnly from '../../../hooks/useReadOnly';
25
30
 
26
- interface RepeatGroupItemProps extends PropsWithQrItemChangeHandler<QuestionnaireResponseItem> {
31
+ interface RepeatGroupItemProps
32
+ extends PropsWithQrItemChangeHandler,
33
+ PropsWithShowMinimalViewAttribute,
34
+ PropsWithParentIsReadOnlyAttribute {
27
35
  qItem: QuestionnaireItem;
28
36
  answeredQrItem: QuestionnaireResponseItem;
29
37
  nullableQrItem: QuestionnaireResponseItem | null;
@@ -39,10 +47,14 @@ function RepeatGroupItem(props: RepeatGroupItemProps) {
39
47
  nullableQrItem,
40
48
  numOfRepeatGroups,
41
49
  groupCardElevation,
50
+ showMinimalView,
51
+ parentIsReadOnly,
42
52
  onDeleteItem,
43
53
  onQrItemChange
44
54
  } = props;
45
55
 
56
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
57
+
46
58
  return (
47
59
  <RepeatGroupContainerStack direction="row" justifyContent="end">
48
60
  <Box sx={{ flexGrow: 1 }}>
@@ -50,15 +62,19 @@ function RepeatGroupItem(props: RepeatGroupItemProps) {
50
62
  qItem={qItem}
51
63
  qrItem={answeredQrItem}
52
64
  isRepeated={true}
65
+ parentIsReadOnly={parentIsReadOnly}
53
66
  groupCardElevation={groupCardElevation + 1}
54
67
  onQrItemChange={onQrItemChange}
55
68
  />
56
69
  </Box>
57
- <DeleteItemButton
58
- nullableQrItem={nullableQrItem}
59
- numOfRepeatGroups={numOfRepeatGroups}
60
- onDeleteItem={onDeleteItem}
61
- />
70
+ {showMinimalView ? null : (
71
+ <DeleteItemButton
72
+ nullableQrItem={nullableQrItem}
73
+ numOfRepeatGroups={numOfRepeatGroups}
74
+ readOnly={readOnly}
75
+ onDeleteItem={onDeleteItem}
76
+ />
77
+ )}
62
78
  </RepeatGroupContainerStack>
63
79
  );
64
80
  }
@@ -23,13 +23,14 @@ import type { RepeatAnswer } from '../../../interfaces/repeatItem.interface';
23
23
 
24
24
  interface AddItemButtonProps {
25
25
  repeatAnswers: RepeatAnswer[];
26
+ readOnly: boolean;
26
27
  onAddItem: () => void;
27
28
  }
28
29
 
29
30
  function AddItemButton(props: AddItemButtonProps) {
30
- const { repeatAnswers, onAddItem } = props;
31
+ const { repeatAnswers, readOnly, onAddItem } = props;
31
32
 
32
- const isDisabled = repeatAnswers[repeatAnswers.length - 1].answer === null;
33
+ const isDisabled = repeatAnswers[repeatAnswers.length - 1].answer === null || readOnly;
33
34
 
34
35
  return (
35
36
  <Box display="flex" flexDirection="row-reverse">
@@ -24,13 +24,14 @@ import type { QuestionnaireResponseItemAnswer } from 'fhir/r4';
24
24
  interface DeleteItemButtonProps {
25
25
  answer: QuestionnaireResponseItemAnswer | null;
26
26
  numOfRepeatAnswers: number;
27
+ readOnly: boolean;
27
28
  onDeleteAnswer: () => void;
28
29
  }
29
30
 
30
31
  function DeleteItemButton(props: DeleteItemButtonProps) {
31
- const { answer, numOfRepeatAnswers, onDeleteAnswer } = props;
32
+ const { answer, numOfRepeatAnswers, readOnly, onDeleteAnswer } = props;
32
33
 
33
- const isDisabled = answer === null || numOfRepeatAnswers === 1;
34
+ const isDisabled = answer === null || numOfRepeatAnswers === 1 || readOnly;
34
35
 
35
36
  return (
36
37
  <RepeatDeleteTooltip className="repeat-item-delete" title="Delete item">
@@ -24,19 +24,38 @@ import type {
24
24
  QuestionnaireResponseItem,
25
25
  QuestionnaireResponseItemAnswer
26
26
  } from 'fhir/r4';
27
- import type { PropsWithQrItemChangeHandler } from '../../../interfaces/renderProps.interface';
27
+ import type {
28
+ PropsWithParentIsReadOnlyAttribute,
29
+ PropsWithQrItemChangeHandler,
30
+ PropsWithShowMinimalViewAttribute
31
+ } from '../../../interfaces/renderProps.interface';
28
32
  import DeleteItemButton from './DeleteItemButton';
33
+ import useReadOnly from '../../../hooks/useReadOnly';
29
34
 
30
- interface RepeatFieldProps extends PropsWithQrItemChangeHandler<QuestionnaireResponseItem> {
35
+ interface RepeatFieldProps
36
+ extends PropsWithQrItemChangeHandler,
37
+ PropsWithShowMinimalViewAttribute,
38
+ PropsWithParentIsReadOnlyAttribute {
31
39
  qItem: QuestionnaireItem;
32
- qrItem: QuestionnaireResponseItem;
40
+ qrItem: QuestionnaireResponseItem | null;
33
41
  answer: QuestionnaireResponseItemAnswer | null;
34
42
  numOfRepeatAnswers: number;
35
43
  onDeleteAnswer: () => void;
36
44
  }
37
45
 
38
46
  function RepeatField(props: RepeatFieldProps) {
39
- const { qItem, qrItem, answer, numOfRepeatAnswers, onDeleteAnswer, onQrItemChange } = props;
47
+ const {
48
+ qItem,
49
+ qrItem,
50
+ answer,
51
+ numOfRepeatAnswers,
52
+ parentIsReadOnly,
53
+ showMinimalView,
54
+ onDeleteAnswer,
55
+ onQrItemChange
56
+ } = props;
57
+
58
+ const readOnly = useReadOnly(qItem, parentIsReadOnly);
40
59
 
41
60
  return (
42
61
  <RepeatItemContainerStack direction="row">
@@ -46,14 +65,19 @@ function RepeatField(props: RepeatFieldProps) {
46
65
  qrItem={qrItem}
47
66
  isRepeated={qItem.repeats ?? false}
48
67
  isTabled={false}
68
+ showMinimalView={showMinimalView}
69
+ parentIsReadOnly={parentIsReadOnly}
49
70
  onQrItemChange={onQrItemChange}
50
71
  />
51
72
  </Box>
52
- <DeleteItemButton
53
- answer={answer}
54
- numOfRepeatAnswers={numOfRepeatAnswers}
55
- onDeleteAnswer={onDeleteAnswer}
56
- />
73
+ {showMinimalView ? null : (
74
+ <DeleteItemButton
75
+ answer={answer}
76
+ numOfRepeatAnswers={numOfRepeatAnswers}
77
+ readOnly={readOnly}
78
+ onDeleteAnswer={onDeleteAnswer}
79
+ />
80
+ )}
57
81
  </RepeatItemContainerStack>
58
82
  );
59
83
  }