@aehrc/smart-forms-renderer 1.0.0-alpha.98 → 1.0.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 (928) hide show
  1. package/README.md +5 -1
  2. package/lib/api/callback.js +6 -15
  3. package/lib/api/callback.js.map +1 -1
  4. package/lib/api/smartClient.js +6 -21
  5. package/lib/api/smartClient.js.map +1 -1
  6. package/lib/components/Checkbox.styles.js +21 -19
  7. package/lib/components/Checkbox.styles.js.map +1 -1
  8. package/lib/components/ExpressionUpdateFadingGlow.styles.d.ts +2 -2
  9. package/lib/components/ExpressionUpdateFadingGlow.styles.js +12 -9
  10. package/lib/components/ExpressionUpdateFadingGlow.styles.js.map +1 -1
  11. package/lib/components/FormComponents/AttachmentItem/AttachmentField.d.ts +2 -2
  12. package/lib/components/FormComponents/AttachmentItem/AttachmentField.js +3 -3
  13. package/lib/components/FormComponents/AttachmentItem/AttachmentField.js.map +1 -1
  14. package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.d.ts +2 -2
  15. package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.js +1 -1
  16. package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.js.map +1 -1
  17. package/lib/components/FormComponents/AttachmentItem/AttachmentFileCollector.d.ts +2 -2
  18. package/lib/components/FormComponents/AttachmentItem/AttachmentFileCollector.js +1 -2
  19. package/lib/components/FormComponents/AttachmentItem/AttachmentFileCollector.js.map +1 -1
  20. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.d.ts +2 -2
  21. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.js +4 -5
  22. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.js.map +1 -1
  23. package/lib/components/FormComponents/AttachmentItem/AttachmentItem.js +27 -37
  24. package/lib/components/FormComponents/AttachmentItem/AttachmentItem.js.map +1 -1
  25. package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.d.ts +2 -2
  26. package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.js +3 -3
  27. package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.js.map +1 -1
  28. package/lib/components/FormComponents/BooleanItem/BooleanField.js +6 -7
  29. package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -1
  30. package/lib/components/FormComponents/BooleanItem/BooleanItem.js +33 -24
  31. package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
  32. package/lib/components/FormComponents/ChoiceItems/CheckboxOptionList.js +1 -2
  33. package/lib/components/FormComponents/ChoiceItems/CheckboxOptionList.js.map +1 -1
  34. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.d.ts +2 -2
  35. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js +12 -7
  36. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js.map +1 -1
  37. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.d.ts +2 -7
  38. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +17 -28
  39. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js.map +1 -1
  40. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.js.map +1 -1
  41. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.d.ts +2 -7
  42. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js +29 -14
  43. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js.map +1 -1
  44. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.js +17 -1
  45. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.js.map +1 -1
  46. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.d.ts +2 -8
  47. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js +12 -13
  48. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js.map +1 -1
  49. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.d.ts +2 -7
  50. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js +30 -15
  51. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js.map +1 -1
  52. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js.map +1 -1
  53. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.d.ts +2 -7
  54. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +32 -29
  55. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
  56. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.d.ts +1 -1
  57. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js +2 -2
  58. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js.map +1 -1
  59. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js +17 -1
  60. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js.map +1 -1
  61. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.d.ts +2 -7
  62. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +15 -27
  63. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
  64. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js +9 -6
  65. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js.map +1 -1
  66. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.d.ts +2 -2
  67. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +28 -8
  68. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js.map +1 -1
  69. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.d.ts +2 -7
  70. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +14 -28
  71. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -1
  72. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.d.ts +2 -2
  73. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js +4 -20
  74. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js.map +1 -1
  75. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.d.ts +2 -2
  76. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +19 -14
  77. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js.map +1 -1
  78. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.d.ts +2 -7
  79. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js +16 -32
  80. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js.map +1 -1
  81. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.d.ts +2 -3
  82. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js +9 -10
  83. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js.map +1 -1
  84. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.js +17 -38
  85. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.js.map +1 -1
  86. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePicker.js +1 -1
  87. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePicker.js.map +1 -1
  88. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePickerButton.js +3 -3
  89. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePickerButton.js.map +1 -1
  90. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js +19 -56
  91. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js.map +1 -1
  92. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.d.ts +2 -3
  93. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js +25 -9
  94. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js.map +1 -1
  95. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.d.ts +2 -5
  96. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.js +19 -3
  97. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.js.map +1 -1
  98. package/lib/components/FormComponents/DecimalItem/DecimalField.d.ts +2 -3
  99. package/lib/components/FormComponents/DecimalItem/DecimalField.js +6 -6
  100. package/lib/components/FormComponents/DecimalItem/DecimalField.js.map +1 -1
  101. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +22 -45
  102. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -1
  103. package/lib/components/FormComponents/DisplayItem/DisplayItem.js +1 -1
  104. package/lib/components/FormComponents/DisplayItem/DisplayItem.js.map +1 -1
  105. package/lib/components/FormComponents/GridGroup/GridGroup.d.ts +2 -2
  106. package/lib/components/FormComponents/GridGroup/GridGroup.js +29 -20
  107. package/lib/components/FormComponents/GridGroup/GridGroup.js.map +1 -1
  108. package/lib/components/FormComponents/GridGroup/GridRow.d.ts +6 -2
  109. package/lib/components/FormComponents/GridGroup/GridRow.js +7 -9
  110. package/lib/components/FormComponents/GridGroup/GridRow.js.map +1 -1
  111. package/lib/components/FormComponents/GridGroup/GridTable.d.ts +6 -2
  112. package/lib/components/FormComponents/GridGroup/GridTable.js +7 -4
  113. package/lib/components/FormComponents/GridGroup/GridTable.js.map +1 -1
  114. package/lib/components/FormComponents/GroupItem/GroupHeading.js +4 -4
  115. package/lib/components/FormComponents/GroupItem/GroupHeading.js.map +1 -1
  116. package/lib/components/FormComponents/GroupItem/GroupItem.d.ts +2 -2
  117. package/lib/components/FormComponents/GroupItem/GroupItem.js +8 -8
  118. package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -1
  119. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.d.ts +2 -2
  120. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js +11 -11
  121. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -1
  122. package/lib/components/FormComponents/GroupItem/GroupItemView.d.ts +2 -2
  123. package/lib/components/FormComponents/GroupItem/GroupItemView.js +8 -10
  124. package/lib/components/FormComponents/GroupItem/GroupItemView.js.map +1 -1
  125. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js +2 -2
  126. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js.map +1 -1
  127. package/lib/components/FormComponents/GroupItem/TabButtonsWrapper.js +2 -2
  128. package/lib/components/FormComponents/GroupItem/TabButtonsWrapper.js.map +1 -1
  129. package/lib/components/FormComponents/IntegerItem/IntegerField.d.ts +2 -3
  130. package/lib/components/FormComponents/IntegerItem/IntegerField.js +6 -6
  131. package/lib/components/FormComponents/IntegerItem/IntegerField.js.map +1 -1
  132. package/lib/components/FormComponents/IntegerItem/IntegerItem.js +20 -40
  133. package/lib/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -1
  134. package/lib/components/FormComponents/ItemParts/CheckboxFormGroup.d.ts +1 -1
  135. package/lib/components/FormComponents/ItemParts/CheckboxFormGroup.js +10 -11
  136. package/lib/components/FormComponents/ItemParts/CheckboxFormGroup.js.map +1 -1
  137. package/lib/components/FormComponents/ItemParts/CheckboxSingle.js +10 -7
  138. package/lib/components/FormComponents/ItemParts/CheckboxSingle.js.map +1 -1
  139. package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js +9 -7
  140. package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js.map +1 -1
  141. package/lib/components/FormComponents/ItemParts/ClearButtonAdornment.js +1 -2
  142. package/lib/components/FormComponents/ItemParts/ClearButtonAdornment.js.map +1 -1
  143. package/lib/components/FormComponents/ItemParts/ClearInputButton.d.ts +1 -1
  144. package/lib/components/FormComponents/ItemParts/ClearInputButton.js +9 -7
  145. package/lib/components/FormComponents/ItemParts/ClearInputButton.js.map +1 -1
  146. package/lib/components/FormComponents/ItemParts/DisplayUnitText.js +2 -2
  147. package/lib/components/FormComponents/ItemParts/DisplayUnitText.js.map +1 -1
  148. package/lib/components/FormComponents/ItemParts/ExpressionUpdateFadingIcon.js +6 -2
  149. package/lib/components/FormComponents/ItemParts/ExpressionUpdateFadingIcon.js.map +1 -1
  150. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +3 -3
  151. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -1
  152. package/lib/components/FormComponents/ItemParts/ItemLabel.js +10 -9
  153. package/lib/components/FormComponents/ItemParts/ItemLabel.js.map +1 -1
  154. package/lib/components/FormComponents/ItemParts/ItemRepopulateButton.js +30 -48
  155. package/lib/components/FormComponents/ItemParts/ItemRepopulateButton.js.map +1 -1
  156. package/lib/components/FormComponents/ItemParts/ItemTextSwitcher.js +6 -5
  157. package/lib/components/FormComponents/ItemParts/ItemTextSwitcher.js.map +1 -1
  158. package/lib/components/FormComponents/ItemParts/OpenLabelField.js +4 -4
  159. package/lib/components/FormComponents/ItemParts/OpenLabelField.js.map +1 -1
  160. package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js +1 -1
  161. package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js.map +1 -1
  162. package/lib/components/FormComponents/ItemParts/RadioFormGroup.d.ts +1 -1
  163. package/lib/components/FormComponents/ItemParts/RadioFormGroup.js +12 -13
  164. package/lib/components/FormComponents/ItemParts/RadioFormGroup.js.map +1 -1
  165. package/lib/components/FormComponents/ItemParts/RadioOptionList.js +1 -2
  166. package/lib/components/FormComponents/ItemParts/RadioOptionList.js.map +1 -1
  167. package/lib/components/FormComponents/ItemParts/RequiredAsterisk.js +4 -15
  168. package/lib/components/FormComponents/ItemParts/RequiredAsterisk.js.map +1 -1
  169. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.d.ts +2 -2
  170. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js +21 -16
  171. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js.map +1 -1
  172. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.d.ts +2 -7
  173. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +41 -18
  174. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js.map +1 -1
  175. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js +1 -1
  176. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js.map +1 -1
  177. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.d.ts +2 -7
  178. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js +18 -18
  179. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js.map +1 -1
  180. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetFields.js +18 -2
  181. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetFields.js.map +1 -1
  182. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.d.ts +2 -7
  183. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.js +18 -18
  184. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.js.map +1 -1
  185. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.d.ts +2 -7
  186. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js +28 -13
  187. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js.map +1 -1
  188. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.js.map +1 -1
  189. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.d.ts +2 -7
  190. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js +26 -17
  191. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js.map +1 -1
  192. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.js +18 -2
  193. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.js.map +1 -1
  194. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.d.ts +2 -7
  195. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.js +26 -17
  196. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.js.map +1 -1
  197. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.d.ts +2 -2
  198. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js +10 -6
  199. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js.map +1 -1
  200. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.d.ts +2 -7
  201. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js +25 -13
  202. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js.map +1 -1
  203. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.d.ts +2 -2
  204. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js +10 -6
  205. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js.map +1 -1
  206. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.d.ts +2 -7
  207. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js +21 -12
  208. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js.map +1 -1
  209. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.d.ts +2 -2
  210. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js +5 -5
  211. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js.map +1 -1
  212. package/lib/components/FormComponents/QuantityItem/QuantityField.d.ts +2 -3
  213. package/lib/components/FormComponents/QuantityItem/QuantityField.js +6 -6
  214. package/lib/components/FormComponents/QuantityItem/QuantityField.js.map +1 -1
  215. package/lib/components/FormComponents/QuantityItem/QuantityItem.js +31 -89
  216. package/lib/components/FormComponents/QuantityItem/QuantityItem.js.map +1 -1
  217. package/lib/components/FormComponents/QuantityItem/QuantityUnitField.d.ts +2 -2
  218. package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js +4 -4
  219. package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js.map +1 -1
  220. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +1 -2
  221. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -1
  222. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.d.ts +2 -2
  223. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js +4 -6
  224. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -1
  225. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.d.ts +2 -2
  226. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +2 -2
  227. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -1
  228. package/lib/components/FormComponents/RepeatGroup/RepeatGroupView.d.ts +3 -4
  229. package/lib/components/FormComponents/RepeatGroup/RepeatGroupView.js +3 -4
  230. package/lib/components/FormComponents/RepeatGroup/RepeatGroupView.js.map +1 -1
  231. package/lib/components/FormComponents/RepeatItem/AddItemButton.js +1 -1
  232. package/lib/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -1
  233. package/lib/components/FormComponents/RepeatItem/RepeatField.d.ts +2 -2
  234. package/lib/components/FormComponents/RepeatItem/RepeatField.js +2 -3
  235. package/lib/components/FormComponents/RepeatItem/RepeatField.js.map +1 -1
  236. package/lib/components/FormComponents/RepeatItem/RepeatItem.d.ts +2 -2
  237. package/lib/components/FormComponents/RepeatItem/RepeatItem.js +17 -13
  238. package/lib/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -1
  239. package/lib/components/FormComponents/SingleItem/SingleItem.d.ts +2 -2
  240. package/lib/components/FormComponents/SingleItem/SingleItem.js +9 -9
  241. package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -1
  242. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.d.ts +2 -2
  243. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +54 -31
  244. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
  245. package/lib/components/FormComponents/SingleItem/SingleItemView.d.ts +3 -4
  246. package/lib/components/FormComponents/SingleItem/SingleItemView.js +4 -5
  247. package/lib/components/FormComponents/SingleItem/SingleItemView.js.map +1 -1
  248. package/lib/components/FormComponents/SingleItem/SingleNestedItems.d.ts +2 -2
  249. package/lib/components/FormComponents/SingleItem/SingleNestedItems.js +8 -9
  250. package/lib/components/FormComponents/SingleItem/SingleNestedItems.js.map +1 -1
  251. package/lib/components/FormComponents/SliderItem/Slider.styles.js +23 -21
  252. package/lib/components/FormComponents/SliderItem/Slider.styles.js.map +1 -1
  253. package/lib/components/FormComponents/SliderItem/SliderField.d.ts +2 -2
  254. package/lib/components/FormComponents/SliderItem/SliderField.js +4 -4
  255. package/lib/components/FormComponents/SliderItem/SliderField.js.map +1 -1
  256. package/lib/components/FormComponents/SliderItem/SliderItem.js +10 -8
  257. package/lib/components/FormComponents/SliderItem/SliderItem.js.map +1 -1
  258. package/lib/components/FormComponents/StringItem/StringField.d.ts +2 -3
  259. package/lib/components/FormComponents/StringItem/StringField.js +22 -6
  260. package/lib/components/FormComponents/StringItem/StringField.js.map +1 -1
  261. package/lib/components/FormComponents/StringItem/StringItem.d.ts +2 -7
  262. package/lib/components/FormComponents/StringItem/StringItem.js +19 -55
  263. package/lib/components/FormComponents/StringItem/StringItem.js.map +1 -1
  264. package/lib/components/FormComponents/Tables/GroupTable.d.ts +2 -2
  265. package/lib/components/FormComponents/Tables/GroupTable.js +33 -37
  266. package/lib/components/FormComponents/Tables/GroupTable.js.map +1 -1
  267. package/lib/components/FormComponents/Tables/GroupTableBody.d.ts +7 -4
  268. package/lib/components/FormComponents/Tables/GroupTableBody.js +4 -5
  269. package/lib/components/FormComponents/Tables/GroupTableBody.js.map +1 -1
  270. package/lib/components/FormComponents/Tables/GroupTableRow.d.ts +7 -4
  271. package/lib/components/FormComponents/Tables/GroupTableRow.js +3 -3
  272. package/lib/components/FormComponents/Tables/GroupTableRow.js.map +1 -1
  273. package/lib/components/FormComponents/Tables/GroupTableRowCells.d.ts +6 -2
  274. package/lib/components/FormComponents/Tables/GroupTableRowCells.js +5 -6
  275. package/lib/components/FormComponents/Tables/GroupTableRowCells.js.map +1 -1
  276. package/lib/components/FormComponents/Tables/GroupTableView.d.ts +7 -4
  277. package/lib/components/FormComponents/Tables/GroupTableView.js +8 -9
  278. package/lib/components/FormComponents/Tables/GroupTableView.js.map +1 -1
  279. package/lib/components/FormComponents/Tables/SelectRowButton.js +3 -4
  280. package/lib/components/FormComponents/Tables/SelectRowButton.js.map +1 -1
  281. package/lib/components/FormComponents/Tables/Table.styles.d.ts +2 -2
  282. package/lib/components/FormComponents/Tables/Table.styles.js +25 -20
  283. package/lib/components/FormComponents/Tables/Table.styles.js.map +1 -1
  284. package/lib/components/FormComponents/TextItem/TextField.d.ts +0 -1
  285. package/lib/components/FormComponents/TextItem/TextField.js +4 -4
  286. package/lib/components/FormComponents/TextItem/TextField.js.map +1 -1
  287. package/lib/components/FormComponents/TextItem/TextItem.js +14 -34
  288. package/lib/components/FormComponents/TextItem/TextItem.js.map +1 -1
  289. package/lib/components/FormComponents/Textfield.styles.js +1 -1
  290. package/lib/components/FormComponents/Textfield.styles.js.map +1 -1
  291. package/lib/components/FormComponents/TimeItem/TimeField.d.ts +2 -2
  292. package/lib/components/FormComponents/TimeItem/TimeField.js +3 -2
  293. package/lib/components/FormComponents/TimeItem/TimeField.js.map +1 -1
  294. package/lib/components/FormComponents/TimeItem/TimeItem.js +8 -6
  295. package/lib/components/FormComponents/TimeItem/TimeItem.js.map +1 -1
  296. package/lib/components/FormComponents/UrlItem/UrlField.d.ts +2 -3
  297. package/lib/components/FormComponents/UrlItem/UrlField.js +5 -5
  298. package/lib/components/FormComponents/UrlItem/UrlField.js.map +1 -1
  299. package/lib/components/FormComponents/UrlItem/UrlItem.js +8 -17
  300. package/lib/components/FormComponents/UrlItem/UrlItem.js.map +1 -1
  301. package/lib/components/Radio.styles.js +21 -19
  302. package/lib/components/Radio.styles.js.map +1 -1
  303. package/lib/components/Renderer/BaseRenderer.js +11 -15
  304. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  305. package/lib/components/Renderer/FormBodyCollapsible.d.ts +2 -2
  306. package/lib/components/Renderer/FormBodyCollapsible.js +5 -6
  307. package/lib/components/Renderer/FormBodyCollapsible.js.map +1 -1
  308. package/lib/components/Renderer/FormBodyPageContainer.d.ts +2 -2
  309. package/lib/components/Renderer/FormBodyPageContainer.js +7 -9
  310. package/lib/components/Renderer/FormBodyPageContainer.js.map +1 -1
  311. package/lib/components/Renderer/FormBodyPaginated.d.ts +2 -2
  312. package/lib/components/Renderer/FormBodyPaginated.js +11 -15
  313. package/lib/components/Renderer/FormBodyPaginated.js.map +1 -1
  314. package/lib/components/Renderer/FormBodySingleCollapsible.js +1 -2
  315. package/lib/components/Renderer/FormBodySingleCollapsible.js.map +1 -1
  316. package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.d.ts +2 -2
  317. package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.js +2 -2
  318. package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.js.map +1 -1
  319. package/lib/components/Renderer/FormBodyTabbed.d.ts +2 -2
  320. package/lib/components/Renderer/FormBodyTabbed.js +13 -15
  321. package/lib/components/Renderer/FormBodyTabbed.js.map +1 -1
  322. package/lib/components/Renderer/FormTopLevelItem.d.ts +2 -2
  323. package/lib/components/Renderer/FormTopLevelItem.js +12 -12
  324. package/lib/components/Renderer/FormTopLevelItem.js.map +1 -1
  325. package/lib/components/Renderer/SmartFormsRenderer.d.ts +4 -2
  326. package/lib/components/Renderer/SmartFormsRenderer.js +4 -2
  327. package/lib/components/Renderer/SmartFormsRenderer.js.map +1 -1
  328. package/lib/components/Tabs/FormBodySingleTab.d.ts +1 -0
  329. package/lib/components/Tabs/FormBodySingleTab.js +5 -2
  330. package/lib/components/Tabs/FormBodySingleTab.js.map +1 -1
  331. package/lib/components/Tabs/FormBodyTabList.js +2 -3
  332. package/lib/components/Tabs/FormBodyTabList.js.map +1 -1
  333. package/lib/hooks/index.d.ts +0 -2
  334. package/lib/hooks/index.js +1 -3
  335. package/lib/hooks/index.js.map +1 -1
  336. package/lib/hooks/useAnswerOptionsToggleExpressions.js +6 -8
  337. package/lib/hooks/useAnswerOptionsToggleExpressions.js.map +1 -1
  338. package/lib/hooks/useAttachmentUrlValidation.js +1 -1
  339. package/lib/hooks/useAttachmentUrlValidation.js.map +1 -1
  340. package/lib/hooks/useBuildForm.d.ts +13 -15
  341. package/lib/hooks/useBuildForm.js +26 -22
  342. package/lib/hooks/useBuildForm.js.map +1 -1
  343. package/lib/hooks/useCalculatedExpressionUpdated.d.ts +7 -0
  344. package/lib/hooks/useCalculatedExpressionUpdated.js +31 -0
  345. package/lib/hooks/useCalculatedExpressionUpdated.js.map +1 -0
  346. package/lib/hooks/useCodingCalculatedExpression.d.ts +0 -13
  347. package/lib/hooks/useCodingCalculatedExpression.js +1 -74
  348. package/lib/hooks/useCodingCalculatedExpression.js.map +1 -1
  349. package/lib/hooks/useDateCalculatedExpression.d.ts +0 -12
  350. package/lib/hooks/useDateCalculatedExpression.js +1 -58
  351. package/lib/hooks/useDateCalculatedExpression.js.map +1 -1
  352. package/lib/hooks/useDateTimeCalculatedExpression.d.ts +0 -12
  353. package/lib/hooks/useDateTimeCalculatedExpression.js +1 -58
  354. package/lib/hooks/useDateTimeCalculatedExpression.js.map +1 -1
  355. package/lib/hooks/useDisplayCqfAndCalculatedExpression.d.ts +13 -1
  356. package/lib/hooks/useDisplayCqfAndCalculatedExpression.js +14 -4
  357. package/lib/hooks/useDisplayCqfAndCalculatedExpression.js.map +1 -1
  358. package/lib/hooks/useDynamicValueSetEffect.js +6 -16
  359. package/lib/hooks/useDynamicValueSetEffect.js.map +1 -1
  360. package/lib/hooks/useHidden.js +2 -2
  361. package/lib/hooks/useHidden.js.map +1 -1
  362. package/lib/hooks/useInitialiseForm.d.ts +3 -2
  363. package/lib/hooks/useInitialiseForm.js +10 -3
  364. package/lib/hooks/useInitialiseForm.js.map +1 -1
  365. package/lib/hooks/useInitialiseRepeatAnswers.js +5 -5
  366. package/lib/hooks/useInitialiseRepeatAnswers.js.map +1 -1
  367. package/lib/hooks/useParseXhtml.js +2 -2
  368. package/lib/hooks/useParseXhtml.js.map +1 -1
  369. package/lib/hooks/useReadOnly.js +2 -2
  370. package/lib/hooks/useReadOnly.js.map +1 -1
  371. package/lib/hooks/useRenderingExtensions.js +11 -14
  372. package/lib/hooks/useRenderingExtensions.js.map +1 -1
  373. package/lib/hooks/useResizeColumns.d.ts +8 -0
  374. package/lib/hooks/useResizeColumns.js +46 -0
  375. package/lib/hooks/useResizeColumns.js.map +1 -0
  376. package/lib/hooks/useSliderExtensions.js +5 -6
  377. package/lib/hooks/useSliderExtensions.js.map +1 -1
  378. package/lib/hooks/useTerminologyServerQuery.js +2 -3
  379. package/lib/hooks/useTerminologyServerQuery.js.map +1 -1
  380. package/lib/hooks/useValidationFeedback.js +2 -3
  381. package/lib/hooks/useValidationFeedback.js.map +1 -1
  382. package/lib/hooks/useValueSetCodings.js +6 -39
  383. package/lib/hooks/useValueSetCodings.js.map +1 -1
  384. package/lib/index.d.ts +5 -7
  385. package/lib/index.js +3 -4
  386. package/lib/index.js.map +1 -1
  387. package/lib/interfaces/calculatedExpression.interface.d.ts +1 -1
  388. package/lib/interfaces/overrideComponent.interface.d.ts +2 -4
  389. package/lib/interfaces/renderProps.interface.d.ts +6 -31
  390. package/lib/interfaces/valueSet.interface.d.ts +2 -2
  391. package/lib/stores/formUpdateQueueStore.d.ts +6 -13
  392. package/lib/stores/formUpdateQueueStore.js +9 -24
  393. package/lib/stores/formUpdateQueueStore.js.map +1 -1
  394. package/lib/stores/index.d.ts +3 -3
  395. package/lib/stores/index.js +2 -2
  396. package/lib/stores/index.js.map +1 -1
  397. package/lib/stores/questionnaireResponseStore.d.ts +6 -9
  398. package/lib/stores/questionnaireResponseStore.js +22 -28
  399. package/lib/stores/questionnaireResponseStore.js.map +1 -1
  400. package/lib/stores/questionnaireStore.d.ts +39 -35
  401. package/lib/stores/questionnaireStore.js +136 -141
  402. package/lib/stores/questionnaireStore.js.map +1 -1
  403. package/lib/stores/{rendererStylingStore.d.ts → rendererConfigStore.d.ts} +8 -8
  404. package/lib/stores/rendererConfigStore.js +65 -0
  405. package/lib/stores/rendererConfigStore.js.map +1 -0
  406. package/lib/stores/smartConfigStore.d.ts +3 -3
  407. package/lib/stores/smartConfigStore.js +3 -3
  408. package/lib/stores/terminologyServerStore.d.ts +2 -2
  409. package/lib/stores/terminologyServerStore.js +2 -2
  410. package/lib/stories/storybookWrappers/InitialiseFormWrapperForStorybook.d.ts +1 -1
  411. package/lib/stories/storybookWrappers/InitialiseFormWrapperForStorybook.js +2 -2
  412. package/lib/stories/storybookWrappers/InitialiseFormWrapperForStorybook.js.map +1 -1
  413. package/lib/stories/testUtils.d.ts +23 -0
  414. package/lib/stories/testUtils.js +249 -0
  415. package/lib/stories/testUtils.js.map +1 -0
  416. package/lib/theme/rendererThemeOptions.js +1 -1
  417. package/lib/theme/rendererThemeOptions.js.map +1 -1
  418. package/lib/utils/answerOptionsToggleExpressions.d.ts +1 -1
  419. package/lib/utils/answerOptionsToggleExpressions.js +94 -111
  420. package/lib/utils/answerOptionsToggleExpressions.js.map +1 -1
  421. package/lib/utils/calculatedExpression.d.ts +39 -3
  422. package/lib/utils/calculatedExpression.js +426 -191
  423. package/lib/utils/calculatedExpression.js.map +1 -1
  424. package/lib/utils/choice.js +14 -11
  425. package/lib/utils/choice.js.map +1 -1
  426. package/lib/utils/columnWidth.d.ts +28 -0
  427. package/lib/utils/columnWidth.js +103 -0
  428. package/lib/utils/columnWidth.js.map +1 -0
  429. package/lib/utils/computedUpdates.js +14 -12
  430. package/lib/utils/computedUpdates.js.map +1 -1
  431. package/lib/utils/enableWhen.js +6 -8
  432. package/lib/utils/enableWhen.js.map +1 -1
  433. package/lib/utils/enableWhenExpression.d.ts +1 -1
  434. package/lib/utils/enableWhenExpression.js +143 -163
  435. package/lib/utils/enableWhenExpression.js.map +1 -1
  436. package/lib/utils/extensions.d.ts +9 -0
  437. package/lib/utils/extensions.js +77 -74
  438. package/lib/utils/extensions.js.map +1 -1
  439. package/lib/utils/extractObservation.js +37 -28
  440. package/lib/utils/extractObservation.js.map +1 -1
  441. package/lib/utils/fhirpath.d.ts +27 -21
  442. package/lib/utils/fhirpath.js +191 -171
  443. package/lib/utils/fhirpath.js.map +1 -1
  444. package/lib/utils/fileUtils.js +21 -32
  445. package/lib/utils/fileUtils.js.map +1 -1
  446. package/lib/utils/genericRecursive.js +4 -6
  447. package/lib/utils/genericRecursive.js.map +1 -1
  448. package/lib/utils/getExpressionsFromItem.js +59 -66
  449. package/lib/utils/getExpressionsFromItem.js.map +1 -1
  450. package/lib/utils/index.d.ts +2 -1
  451. package/lib/utils/index.js +1 -1
  452. package/lib/utils/index.js.map +1 -1
  453. package/lib/utils/initialise.js +88 -101
  454. package/lib/utils/initialise.js.map +1 -1
  455. package/lib/utils/inputSanitization.js +6 -6
  456. package/lib/utils/inputSanitization.js.map +1 -1
  457. package/lib/utils/itemPath.d.ts +2 -2
  458. package/lib/utils/manageForm.d.ts +87 -9
  459. package/lib/utils/manageForm.js +79 -54
  460. package/lib/utils/manageForm.js.map +1 -1
  461. package/lib/utils/misc.js +9 -9
  462. package/lib/utils/misc.js.map +1 -1
  463. package/lib/utils/openChoice.js +25 -23
  464. package/lib/utils/openChoice.js.map +1 -1
  465. package/lib/utils/page.js +3 -4
  466. package/lib/utils/page.js.map +1 -1
  467. package/lib/utils/parameterisedValueSets.d.ts +1 -1
  468. package/lib/utils/parameterisedValueSets.js +110 -124
  469. package/lib/utils/parameterisedValueSets.js.map +1 -1
  470. package/lib/utils/populateContexts.js +4 -5
  471. package/lib/utils/populateContexts.js.map +1 -1
  472. package/lib/utils/qItem.js +9 -21
  473. package/lib/utils/qItem.js.map +1 -1
  474. package/lib/utils/qrItem.js +2 -3
  475. package/lib/utils/qrItem.js.map +1 -1
  476. package/lib/utils/quantity.js +8 -9
  477. package/lib/utils/quantity.js.map +1 -1
  478. package/lib/utils/questionnaireStoreUtils/addDisplayToCodings.js +93 -111
  479. package/lib/utils/questionnaireStoreUtils/addDisplayToCodings.js.map +1 -1
  480. package/lib/utils/questionnaireStoreUtils/createQuestionnaireModel.js +53 -64
  481. package/lib/utils/questionnaireStoreUtils/createQuestionnaireModel.js.map +1 -1
  482. package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js +3 -5
  483. package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +1 -1
  484. package/lib/utils/questionnaireStoreUtils/extractLaunchContext.js +1 -2
  485. package/lib/utils/questionnaireStoreUtils/extractLaunchContext.js.map +1 -1
  486. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js +200 -212
  487. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -1
  488. package/lib/utils/questionnaireStoreUtils/extractTabs.js +1 -1
  489. package/lib/utils/questionnaireStoreUtils/extractTabs.js.map +1 -1
  490. package/lib/utils/questionnaireStoreUtils/extractTargetConstraint.js +8 -9
  491. package/lib/utils/questionnaireStoreUtils/extractTargetConstraint.js.map +1 -1
  492. package/lib/utils/questionnaireStoreUtils/extractVariables.js +4 -10
  493. package/lib/utils/questionnaireStoreUtils/extractVariables.js.map +1 -1
  494. package/lib/utils/questionnaireStoreUtils/resolveValueSets.js +28 -37
  495. package/lib/utils/questionnaireStoreUtils/resolveValueSets.js.map +1 -1
  496. package/lib/utils/readValues.js +7 -7
  497. package/lib/utils/readValues.js.map +1 -1
  498. package/lib/utils/removeEmptyAnswers.js +11 -9
  499. package/lib/utils/removeEmptyAnswers.js.map +1 -1
  500. package/lib/utils/removeRepeatId.js +17 -22
  501. package/lib/utils/removeRepeatId.js.map +1 -1
  502. package/lib/utils/repopulateIntoResponse.js +7 -5
  503. package/lib/utils/repopulateIntoResponse.js.map +1 -1
  504. package/lib/utils/repopulateItems.js +6 -11
  505. package/lib/utils/repopulateItems.js.map +1 -1
  506. package/lib/utils/slider.js +3 -6
  507. package/lib/utils/slider.js.map +1 -1
  508. package/lib/utils/tabs.js +3 -5
  509. package/lib/utils/tabs.js.map +1 -1
  510. package/lib/utils/targetConstraint.d.ts +1 -1
  511. package/lib/utils/targetConstraint.js +85 -102
  512. package/lib/utils/targetConstraint.js.map +1 -1
  513. package/lib/utils/ucumQuantityConversion.d.ts +44 -0
  514. package/lib/utils/ucumQuantityConversion.js +132 -0
  515. package/lib/utils/ucumQuantityConversion.js.map +1 -0
  516. package/lib/utils/validate.js +35 -35
  517. package/lib/utils/validate.js.map +1 -1
  518. package/lib/utils/valueSet.d.ts +10 -1
  519. package/lib/utils/valueSet.js +67 -55
  520. package/lib/utils/valueSet.js.map +1 -1
  521. package/package.json +19 -19
  522. package/src/components/ExpressionUpdateFadingGlow.styles.ts +3 -3
  523. package/src/components/FormComponents/AttachmentItem/AttachmentField.tsx +5 -5
  524. package/src/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.tsx +3 -2
  525. package/src/components/FormComponents/AttachmentItem/AttachmentFileCollector.tsx +2 -2
  526. package/src/components/FormComponents/AttachmentItem/AttachmentFileDropBox.tsx +5 -5
  527. package/src/components/FormComponents/AttachmentItem/AttachmentUrlField.tsx +5 -5
  528. package/src/components/FormComponents/BooleanItem/BooleanField.tsx +4 -4
  529. package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +7 -26
  530. package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.tsx +5 -5
  531. package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.tsx +15 -31
  532. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.tsx +0 -1
  533. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.tsx +12 -32
  534. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.tsx +3 -4
  535. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.tsx +14 -34
  536. package/src/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.tsx +19 -43
  537. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx +0 -1
  538. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +14 -59
  539. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx +4 -4
  540. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx +2 -3
  541. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +14 -52
  542. package/src/components/FormComponents/ChoiceItems/ChoiceRadioSingle.tsx +2 -2
  543. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +8 -8
  544. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +12 -59
  545. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx +8 -7
  546. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +12 -11
  547. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.tsx +11 -55
  548. package/src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.tsx +6 -11
  549. package/src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.tsx +11 -44
  550. package/src/components/FormComponents/DateTimeItems/CustomDateItem/DatePickerButton.tsx +2 -2
  551. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.tsx +21 -76
  552. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx +11 -15
  553. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.tsx +6 -14
  554. package/src/components/FormComponents/DecimalItem/DecimalField.tsx +7 -10
  555. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +20 -65
  556. package/src/components/FormComponents/DisplayItem/DisplayItem.tsx +1 -0
  557. package/src/components/FormComponents/GridGroup/GridGroup.tsx +45 -29
  558. package/src/components/FormComponents/GridGroup/GridRow.tsx +13 -15
  559. package/src/components/FormComponents/GridGroup/GridTable.tsx +6 -7
  560. package/src/components/FormComponents/GroupItem/GroupHeading.tsx +2 -2
  561. package/src/components/FormComponents/GroupItem/GroupItem.tsx +4 -9
  562. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx +0 -13
  563. package/src/components/FormComponents/GroupItem/GroupItemView.tsx +1 -7
  564. package/src/components/FormComponents/GroupItem/PageButtonWrapper.tsx +2 -2
  565. package/src/components/FormComponents/GroupItem/TabButtonsWrapper.tsx +2 -2
  566. package/src/components/FormComponents/IntegerItem/IntegerField.tsx +7 -10
  567. package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +18 -57
  568. package/src/components/FormComponents/ItemParts/CheckboxFormGroup.tsx +8 -8
  569. package/src/components/FormComponents/ItemParts/CheckboxSingle.tsx +2 -2
  570. package/src/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.tsx +2 -2
  571. package/src/components/FormComponents/ItemParts/ClearInputButton.tsx +17 -16
  572. package/src/components/FormComponents/ItemParts/DisplayUnitText.tsx +2 -2
  573. package/src/components/FormComponents/ItemParts/ItemFieldGrid.tsx +2 -2
  574. package/src/components/FormComponents/ItemParts/ItemLabel.tsx +3 -6
  575. package/src/components/FormComponents/ItemParts/ItemRepopulateButton.tsx +1 -8
  576. package/src/components/FormComponents/ItemParts/ItemTextSwitcher.tsx +9 -4
  577. package/src/components/FormComponents/ItemParts/OpenLabelField.tsx +3 -3
  578. package/src/components/FormComponents/ItemParts/RadioFormGroup.tsx +9 -9
  579. package/src/components/FormComponents/ItemParts/RequiredAsterisk.tsx +3 -3
  580. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.tsx +5 -5
  581. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.tsx +40 -40
  582. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.tsx +1 -2
  583. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.tsx +19 -37
  584. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetFields.tsx +4 -5
  585. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.tsx +24 -38
  586. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.tsx +22 -46
  587. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.tsx +0 -1
  588. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.tsx +22 -33
  589. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.tsx +3 -4
  590. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.tsx +27 -36
  591. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.tsx +5 -5
  592. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.tsx +10 -33
  593. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.tsx +5 -5
  594. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.tsx +11 -30
  595. package/src/components/FormComponents/QuantityItem/QuantityComparatorField.tsx +6 -6
  596. package/src/components/FormComponents/QuantityItem/QuantityField.tsx +7 -10
  597. package/src/components/FormComponents/QuantityItem/QuantityItem.tsx +15 -105
  598. package/src/components/FormComponents/QuantityItem/QuantityUnitField.tsx +11 -6
  599. package/src/components/FormComponents/RepeatGroup/RepeatGroup.tsx +8 -21
  600. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +0 -4
  601. package/src/components/FormComponents/RepeatGroup/RepeatGroupView.tsx +5 -19
  602. package/src/components/FormComponents/RepeatItem/RepeatField.tsx +0 -4
  603. package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +9 -27
  604. package/src/components/FormComponents/SingleItem/SingleItem.tsx +7 -12
  605. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +56 -36
  606. package/src/components/FormComponents/SingleItem/SingleItemView.tsx +3 -15
  607. package/src/components/FormComponents/SingleItem/SingleNestedItems.tsx +5 -10
  608. package/src/components/FormComponents/SliderItem/SliderField.tsx +5 -5
  609. package/src/components/FormComponents/SliderItem/SliderItem.tsx +1 -0
  610. package/src/components/FormComponents/StringItem/StringField.tsx +7 -10
  611. package/src/components/FormComponents/StringItem/StringItem.tsx +19 -79
  612. package/src/components/FormComponents/Tables/GroupTable.tsx +69 -45
  613. package/src/components/FormComponents/Tables/GroupTableBody.tsx +7 -16
  614. package/src/components/FormComponents/Tables/GroupTableRow.tsx +7 -17
  615. package/src/components/FormComponents/Tables/GroupTableRowCells.tsx +5 -12
  616. package/src/components/FormComponents/Tables/GroupTableView.tsx +9 -13
  617. package/src/components/FormComponents/Tables/SelectRowButton.tsx +2 -2
  618. package/src/components/FormComponents/Tables/Table.styles.tsx +13 -8
  619. package/src/components/FormComponents/TextItem/TextField.tsx +3 -6
  620. package/src/components/FormComponents/TextItem/TextItem.tsx +11 -50
  621. package/src/components/FormComponents/Textfield.styles.ts +1 -1
  622. package/src/components/FormComponents/TimeItem/TimeField.tsx +5 -4
  623. package/src/components/FormComponents/TimeItem/TimeItem.tsx +6 -2
  624. package/src/components/FormComponents/UrlItem/UrlField.tsx +6 -9
  625. package/src/components/FormComponents/UrlItem/UrlItem.tsx +4 -19
  626. package/src/components/Renderer/BaseRenderer.tsx +18 -26
  627. package/src/components/Renderer/FormBodyCollapsible.tsx +3 -8
  628. package/src/components/Renderer/FormBodyPageContainer.tsx +3 -8
  629. package/src/components/Renderer/FormBodyPaginated.tsx +3 -11
  630. package/src/components/Renderer/FormBodySingleCollapsibleWrapper.tsx +2 -13
  631. package/src/components/Renderer/FormBodyTabbed.tsx +5 -10
  632. package/src/components/Renderer/FormTopLevelItem.tsx +3 -14
  633. package/src/components/Renderer/SmartFormsRenderer.tsx +4 -2
  634. package/src/components/Tabs/FormBodySingleTab.tsx +9 -2
  635. package/src/components/Tabs/FormBodyTabList.tsx +1 -0
  636. package/src/hooks/index.ts +1 -6
  637. package/src/hooks/useBuildForm.ts +31 -39
  638. package/src/hooks/useCalculatedExpressionUpdated.ts +39 -0
  639. package/src/hooks/useCodingCalculatedExpression.ts +0 -110
  640. package/src/hooks/useDateCalculatedExpression.ts +0 -90
  641. package/src/hooks/useDateTimeCalculatedExpression.ts +0 -90
  642. package/src/hooks/useDisplayCqfAndCalculatedExpression.ts +18 -2
  643. package/src/hooks/useHidden.ts +2 -2
  644. package/src/hooks/useInitialiseForm.ts +6 -5
  645. package/src/hooks/useReadOnly.ts +2 -2
  646. package/src/hooks/useResizeColumns.ts +53 -0
  647. package/src/hooks/useValueSetCodings.ts +5 -27
  648. package/src/index.ts +6 -12
  649. package/src/interfaces/calculatedExpression.interface.ts +1 -1
  650. package/src/interfaces/overrideComponent.interface.ts +2 -4
  651. package/src/interfaces/renderProps.interface.ts +8 -34
  652. package/src/interfaces/valueSet.interface.ts +2 -2
  653. package/src/stores/formUpdateQueueStore.ts +13 -29
  654. package/src/stores/index.ts +3 -3
  655. package/src/stores/questionnaireResponseStore.ts +28 -37
  656. package/src/stores/questionnaireStore.ts +230 -199
  657. package/src/stores/{rendererStylingStore.ts → rendererConfigStore.ts} +8 -8
  658. package/src/stores/smartConfigStore.ts +3 -3
  659. package/src/stores/terminologyServerStore.ts +2 -2
  660. package/src/theme/rendererThemeOptions.ts +1 -1
  661. package/src/utils/answerOptionsToggleExpressions.ts +12 -9
  662. package/src/utils/calculatedExpression.ts +466 -97
  663. package/src/utils/columnWidth.test.ts +75 -0
  664. package/src/utils/columnWidth.ts +110 -0
  665. package/src/utils/enableWhenExpression.ts +10 -6
  666. package/src/utils/extensions.ts +30 -0
  667. package/src/utils/extractObservation.ts +2 -1
  668. package/src/utils/fhirpath.ts +140 -115
  669. package/src/utils/getExpressionsFromItem.ts +33 -2
  670. package/src/utils/index.ts +2 -0
  671. package/src/utils/inputSanitization.ts +6 -6
  672. package/src/utils/manageForm.ts +148 -24
  673. package/src/utils/parameterisedValueSets.ts +20 -9
  674. package/src/utils/targetConstraint.ts +12 -9
  675. package/src/utils/ucumQuantityConversion.ts +195 -0
  676. package/src/utils/validate.ts +8 -3
  677. package/src/utils/valueSet.ts +44 -1
  678. package/src/vite-env.d.ts +2 -1
  679. package/tsconfig.json +2 -2
  680. package/vite.config.ts +5 -1
  681. package/lib/api/callbacks.d.ts +0 -8
  682. package/lib/api/callbacks.js +0 -52
  683. package/lib/api/callbacks.js.map +0 -1
  684. package/lib/api/xFhirQuerySync.d.ts +0 -1
  685. package/lib/api/xFhirQuerySync.js +0 -61
  686. package/lib/api/xFhirQuerySync.js.map +0 -1
  687. package/lib/components/ExpressionUpdateFadingGlow.d.ts +0 -0
  688. package/lib/components/ExpressionUpdateFadingGlow.js +0 -2
  689. package/lib/components/ExpressionUpdateFadingGlow.js.map +0 -1
  690. package/lib/components/FormComponents/ItemParts/ExpressionUpdateFadingGlow.d.ts +0 -0
  691. package/lib/components/FormComponents/ItemParts/ExpressionUpdateFadingGlow.js +0 -2
  692. package/lib/components/FormComponents/ItemParts/ExpressionUpdateFadingGlow.js.map +0 -1
  693. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.d.ts +0 -7
  694. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js +0 -26
  695. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js.map +0 -1
  696. package/lib/components/FormComponents/ItemParts/FadingGlowExpressionUpdate.d.ts +0 -0
  697. package/lib/components/FormComponents/ItemParts/FadingGlowExpressionUpdate.js +0 -2
  698. package/lib/components/FormComponents/ItemParts/FadingGlowExpressionUpdate.js.map +0 -1
  699. package/lib/components/FormComponents/ItemParts/GranularRepopulateButton.d.ts +0 -8
  700. package/lib/components/FormComponents/ItemParts/GranularRepopulateButton.js +0 -130
  701. package/lib/components/FormComponents/ItemParts/GranularRepopulateButton.js.map +0 -1
  702. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButton.d.ts +0 -8
  703. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButton.js +0 -126
  704. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButton.js.map +0 -1
  705. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButtonStates.d.ts +0 -8
  706. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButtonStates.js +0 -118
  707. package/lib/components/FormComponents/ItemParts/GranularRepopulateSyncButtonStates.js.map +0 -1
  708. package/lib/components/FormComponents/ItemParts/ItemLabelText.d.ts +0 -8
  709. package/lib/components/FormComponents/ItemParts/ItemLabelText.js +0 -63
  710. package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +0 -1
  711. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.d.ts +0 -8
  712. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +0 -53
  713. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +0 -1
  714. package/lib/components/FormComponents/ItemParts/SrOnlyCheckboxLabel.d.ts +0 -0
  715. package/lib/components/FormComponents/ItemParts/SrOnlyCheckboxLabel.js +0 -2
  716. package/lib/components/FormComponents/ItemParts/SrOnlyCheckboxLabel.js.map +0 -1
  717. package/lib/components/FormComponents/ItemParts/TempCalculatedExpressionSyncButton.d.ts +0 -7
  718. package/lib/components/FormComponents/ItemParts/TempCalculatedExpressionSyncButton.js +0 -95
  719. package/lib/components/FormComponents/ItemParts/TempCalculatedExpressionSyncButton.js.map +0 -1
  720. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.d.ts +0 -10
  721. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +0 -30
  722. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +0 -1
  723. package/lib/components/FormComponents/Tables/GroupTableRowCell.d.ts +0 -9
  724. package/lib/components/FormComponents/Tables/GroupTableRowCell.js +0 -15
  725. package/lib/components/FormComponents/Tables/GroupTableRowCell.js.map +0 -1
  726. package/lib/components/Iconify/Iconify.d.ts +0 -10
  727. package/lib/components/Iconify/Iconify.js +0 -26
  728. package/lib/components/Iconify/Iconify.js.map +0 -1
  729. package/lib/components/Renderer/FormBodyPage.d.ts +0 -9
  730. package/lib/components/Renderer/FormBodyPage.js +0 -43
  731. package/lib/components/Renderer/FormBodyPage.js.map +0 -1
  732. package/lib/components/Renderer/FormTitle.d.ts +0 -7
  733. package/lib/components/Renderer/FormTitle.js +0 -30
  734. package/lib/components/Renderer/FormTitle.js.map +0 -1
  735. package/lib/components/Renderer/FormTopLevelPage.d.ts +0 -9
  736. package/lib/components/Renderer/FormTopLevelPage.js +0 -29
  737. package/lib/components/Renderer/FormTopLevelPage.js.map +0 -1
  738. package/lib/hooks/useBooleanCalculatedExpression.d.ts +0 -12
  739. package/lib/hooks/useBooleanCalculatedExpression.js +0 -53
  740. package/lib/hooks/useBooleanCalculatedExpression.js.map +0 -1
  741. package/lib/hooks/useCalculatedExpressionAnimating.d.ts +0 -1
  742. package/lib/hooks/useCalculatedExpressionAnimating.js +0 -18
  743. package/lib/hooks/useCalculatedExpressionAnimating.js.map +0 -1
  744. package/lib/hooks/useCalculatedExpressionAnimation.d.ts +0 -1
  745. package/lib/hooks/useCalculatedExpressionAnimation.js +0 -18
  746. package/lib/hooks/useCalculatedExpressionAnimation.js.map +0 -1
  747. package/lib/hooks/useCqfAnswerValueSet.d.ts +0 -4
  748. package/lib/hooks/useCqfAnswerValueSet.js +0 -86
  749. package/lib/hooks/useCqfAnswerValueSet.js.map +0 -1
  750. package/lib/hooks/useCqfAnswerValueSetEffect.d.ts +0 -3
  751. package/lib/hooks/useCqfAnswerValueSetEffect.js +0 -111
  752. package/lib/hooks/useCqfAnswerValueSetEffect.js.map +0 -1
  753. package/lib/hooks/useDecimalCalculatedExpression.d.ts +0 -13
  754. package/lib/hooks/useDecimalCalculatedExpression.js +0 -64
  755. package/lib/hooks/useDecimalCalculatedExpression.js.map +0 -1
  756. package/lib/hooks/useIntegerCalculatedExpression.d.ts +0 -12
  757. package/lib/hooks/useIntegerCalculatedExpression.js +0 -61
  758. package/lib/hooks/useIntegerCalculatedExpression.js.map +0 -1
  759. package/lib/hooks/useQuantityCalculatedExpression.d.ts +0 -14
  760. package/lib/hooks/useQuantityCalculatedExpression.js +0 -115
  761. package/lib/hooks/useQuantityCalculatedExpression.js.map +0 -1
  762. package/lib/hooks/useShowDateTimeFeedback.d.ts +0 -13
  763. package/lib/hooks/useShowDateTimeFeedback.js +0 -40
  764. package/lib/hooks/useShowDateTimeFeedback.js.map +0 -1
  765. package/lib/hooks/useShowFeedback.d.ts +0 -11
  766. package/lib/hooks/useShowFeedback.js +0 -33
  767. package/lib/hooks/useShowFeedback.js.map +0 -1
  768. package/lib/hooks/useStringCalculatedExpression.d.ts +0 -12
  769. package/lib/hooks/useStringCalculatedExpression.js +0 -63
  770. package/lib/hooks/useStringCalculatedExpression.js.map +0 -1
  771. package/lib/hooks/useTempCalculatedExpressionsSyncButton.d.ts +0 -1
  772. package/lib/hooks/useTempCalculatedExpressionsSyncButton.js +0 -24
  773. package/lib/hooks/useTempCalculatedExpressionsSyncButton.js.map +0 -1
  774. package/lib/interfaces/fhirPathContext.interface.d.ts +0 -0
  775. package/lib/interfaces/fhirPathContext.interface.js +0 -2
  776. package/lib/interfaces/fhirPathContext.interface.js.map +0 -1
  777. package/lib/interfaces/itemDetails.interface.d.ts +0 -2
  778. package/lib/interfaces/itemDetails.interface.js +0 -2
  779. package/lib/interfaces/itemDetails.interface.js.map +0 -1
  780. package/lib/interfaces/itemMetadata.d.ts +0 -0
  781. package/lib/interfaces/itemMetadata.interface.d.ts +0 -6
  782. package/lib/interfaces/itemMetadata.interface.js +0 -2
  783. package/lib/interfaces/itemMetadata.interface.js.map +0 -1
  784. package/lib/interfaces/itemMetadata.js +0 -2
  785. package/lib/interfaces/itemMetadata.js.map +0 -1
  786. package/lib/interfaces/itemPath.d.ts +0 -31
  787. package/lib/interfaces/itemPath.js +0 -2
  788. package/lib/interfaces/itemPath.js.map +0 -1
  789. package/lib/stores/callbackStore.d.ts +0 -0
  790. package/lib/stores/callbackStore.js +0 -2
  791. package/lib/stores/callbackStore.js.map +0 -1
  792. package/lib/stores/extractOperationStore.d.ts +0 -26
  793. package/lib/stores/extractOperationStore.js +0 -20
  794. package/lib/stores/extractOperationStore.js.map +0 -1
  795. package/lib/stores/rendererStylingStore.js +0 -68
  796. package/lib/stores/rendererStylingStore.js.map +0 -1
  797. package/lib/stories/storybookWrappers/populateCallbackForStorybook.d.ts +0 -8
  798. package/lib/stories/storybookWrappers/populateCallbackForStorybook.js +0 -52
  799. package/lib/stories/storybookWrappers/populateCallbackForStorybook.js.map +0 -1
  800. package/lib/templates/bloodPressureTemplate.d.ts +0 -23
  801. package/lib/templates/bloodPressureTemplate.js +0 -80
  802. package/lib/templates/bloodPressureTemplate.js.map +0 -1
  803. package/lib/theme/RendererDynamicThemeProvider.d.ts +0 -24
  804. package/lib/theme/RendererDynamicThemeProvider.js +0 -65
  805. package/lib/theme/RendererDynamicThemeProvider.js.map +0 -1
  806. package/lib/theme/RendererThemeToggle.d.ts +0 -6
  807. package/lib/theme/RendererThemeToggle.js +0 -45
  808. package/lib/theme/RendererThemeToggle.js.map +0 -1
  809. package/lib/theme/Theme.d.ts +0 -44
  810. package/lib/theme/Theme.js +0 -43
  811. package/lib/theme/Theme.js.map +0 -1
  812. package/lib/theme/customGlobalStyles.d.ts +0 -1
  813. package/lib/theme/customGlobalStyles.js +0 -45
  814. package/lib/theme/customGlobalStyles.js.map +0 -1
  815. package/lib/theme/overrides/Accordion.d.ts +0 -14
  816. package/lib/theme/overrides/Accordion.js +0 -32
  817. package/lib/theme/overrides/Accordion.js.map +0 -1
  818. package/lib/theme/overrides/Autocomplete.d.ts +0 -10
  819. package/lib/theme/overrides/Autocomplete.js +0 -28
  820. package/lib/theme/overrides/Autocomplete.js.map +0 -1
  821. package/lib/theme/overrides/Button.d.ts +0 -33
  822. package/lib/theme/overrides/Button.js +0 -52
  823. package/lib/theme/overrides/Button.js.map +0 -1
  824. package/lib/theme/overrides/Card.d.ts +0 -35
  825. package/lib/theme/overrides/Card.js +0 -49
  826. package/lib/theme/overrides/Card.js.map +0 -1
  827. package/lib/theme/overrides/Input.d.ts +0 -64
  828. package/lib/theme/overrides/Input.js +0 -81
  829. package/lib/theme/overrides/Input.js.map +0 -1
  830. package/lib/theme/overrides/Overrides.d.ts +0 -3
  831. package/lib/theme/overrides/Overrides.js +0 -29
  832. package/lib/theme/overrides/Overrides.js.map +0 -1
  833. package/lib/theme/overrides/Paper.d.ts +0 -12
  834. package/lib/theme/overrides/Paper.js +0 -31
  835. package/lib/theme/overrides/Paper.js.map +0 -1
  836. package/lib/theme/overrides/SpeedDial.d.ts +0 -16
  837. package/lib/theme/overrides/SpeedDial.js +0 -34
  838. package/lib/theme/overrides/SpeedDial.js.map +0 -1
  839. package/lib/theme/overrides/Table.d.ts +0 -12
  840. package/lib/theme/overrides/Table.js +0 -30
  841. package/lib/theme/overrides/Table.js.map +0 -1
  842. package/lib/theme/overrides/rendererThemeComponentOverride.d.ts +0 -2
  843. package/lib/theme/overrides/rendererThemeComponentOverride.js +0 -28
  844. package/lib/theme/overrides/rendererThemeComponentOverride.js.map +0 -1
  845. package/lib/theme/overrides/rendererThemeComponentsOverride.d.ts +0 -2
  846. package/lib/theme/overrides/rendererThemeComponentsOverride.js +0 -28
  847. package/lib/theme/overrides/rendererThemeComponentsOverride.js.map +0 -1
  848. package/lib/theme/overrides/rendererThemeComponentsOverrides.d.ts +0 -2
  849. package/lib/theme/overrides/rendererThemeComponentsOverrides.js +0 -28
  850. package/lib/theme/overrides/rendererThemeComponentsOverrides.js.map +0 -1
  851. package/lib/theme/palette.d.ts +0 -27
  852. package/lib/theme/palette.js +0 -63
  853. package/lib/theme/palette.js.map +0 -1
  854. package/lib/theme/shadows.d.ts +0 -2
  855. package/lib/theme/shadows.js +0 -52
  856. package/lib/theme/shadows.js.map +0 -1
  857. package/lib/theme/themeOptions.d.ts +0 -2
  858. package/lib/theme/themeOptions.js +0 -85
  859. package/lib/theme/themeOptions.js.map +0 -1
  860. package/lib/theme/useRendererTheme.d.ts +0 -5
  861. package/lib/theme/useRendererTheme.js +0 -30
  862. package/lib/theme/useRendererTheme.js.map +0 -1
  863. package/lib/utils/FhirPathEvaluateParams.d.ts +0 -20
  864. package/lib/utils/FhirPathEvaluateParams.js +0 -35
  865. package/lib/utils/FhirPathEvaluateParams.js.map +0 -1
  866. package/lib/utils/dayjsExtend.d.ts +0 -1
  867. package/lib/utils/dayjsExtend.js +0 -22
  868. package/lib/utils/dayjsExtend.js.map +0 -1
  869. package/lib/utils/dayjsSetup.d.ts +0 -2
  870. package/lib/utils/dayjsSetup.js +0 -23
  871. package/lib/utils/dayjsSetup.js.map +0 -1
  872. package/lib/utils/extractTemplate.d.ts +0 -0
  873. package/lib/utils/extractTemplate.js +0 -1107
  874. package/lib/utils/extractTemplate.js.map +0 -1
  875. package/lib/utils/fhirathEvaluate.d.ts +0 -20
  876. package/lib/utils/fhirathEvaluate.js +0 -35
  877. package/lib/utils/fhirathEvaluate.js.map +0 -1
  878. package/lib/utils/fhirpathEvaluate.d.ts +0 -30
  879. package/lib/utils/fhirpathEvaluate.js +0 -68
  880. package/lib/utils/fhirpathEvaluate.js.map +0 -1
  881. package/lib/utils/find_item_no_text.d.ts +0 -1
  882. package/lib/utils/find_item_no_text.js +0 -65
  883. package/lib/utils/find_item_no_text.js.map +0 -1
  884. package/lib/utils/generateId.d.ts +0 -3
  885. package/lib/utils/generateId.js +0 -28
  886. package/lib/utils/generateId.js.map +0 -1
  887. package/lib/utils/granularRepopulateSync.d.ts +0 -1
  888. package/lib/utils/granularRepopulateSync.js +0 -70
  889. package/lib/utils/granularRepopulateSync.js.map +0 -1
  890. package/lib/utils/itemControl.d.ts +0 -103
  891. package/lib/utils/itemControl.js +0 -350
  892. package/lib/utils/itemControl.js.map +0 -1
  893. package/lib/utils/itemText.d.ts +0 -2
  894. package/lib/utils/itemText.js +0 -12
  895. package/lib/utils/itemText.js.map +0 -1
  896. package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.d.ts +0 -2
  897. package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.js +0 -43
  898. package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.js.map +0 -1
  899. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.d.ts +0 -3
  900. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +0 -114
  901. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +0 -1
  902. package/lib/utils/questionnaireStoreUtils/itemDetails.d.ts +0 -5
  903. package/lib/utils/questionnaireStoreUtils/itemDetails.js +0 -2
  904. package/lib/utils/questionnaireStoreUtils/itemDetails.js.map +0 -1
  905. package/lib/utils/readItem.d.ts +0 -28
  906. package/lib/utils/readItem.js +0 -67
  907. package/lib/utils/readItem.js.map +0 -1
  908. package/lib/utils/syncInitialExpression.d.ts +0 -23
  909. package/lib/utils/syncInitialExpression.js +0 -407
  910. package/lib/utils/syncInitialExpression.js.map +0 -1
  911. package/lib/utils/templateMatching.d.ts +0 -15
  912. package/lib/utils/templateMatching.js +0 -56
  913. package/lib/utils/templateMatching.js.map +0 -1
  914. package/lib/utils/updateCodingsDynamic.d.ts +0 -1
  915. package/lib/utils/updateCodingsDynamic.js +0 -54
  916. package/lib/utils/updateCodingsDynamic.js.map +0 -1
  917. package/lib/utils/validateQuestionnaire.d.ts +0 -66
  918. package/lib/utils/validateQuestionnaire.js +0 -559
  919. package/lib/utils/validateQuestionnaire.js.map +0 -1
  920. package/src/hooks/useBooleanCalculatedExpression.ts +0 -83
  921. package/src/hooks/useDecimalCalculatedExpression.ts +0 -103
  922. package/src/hooks/useIntegerCalculatedExpression.ts +0 -93
  923. package/src/hooks/useQuantityCalculatedExpression.ts +0 -196
  924. package/src/hooks/useShowFeedback.ts +0 -36
  925. package/src/hooks/useStringCalculatedExpression.ts +0 -95
  926. package/src/interfaces/itemPath.interface.ts +0 -33
  927. package/src/utils/itemPath.ts +0 -79
  928. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.ts +0 -52
@@ -1,32 +1,20 @@
1
1
  import type { Expression, QuestionnaireResponse, QuestionnaireResponseItem } from 'fhir/r4';
2
- import type { CalculatedExpression } from '../interfaces/calculatedExpression.interface';
3
2
  import type { EnableWhenExpressions } from '../interfaces/enableWhen.interface';
4
3
  import type { TargetConstraint } from '../interfaces/targetConstraint.interface';
5
4
  import type { Variables, VariableXFhirQuery } from '../interfaces';
6
5
  import type { ComputedQRItemUpdates } from '../interfaces/computedUpdates.interface';
7
6
  import type { AnswerOptionsToggleExpression } from '../interfaces/answerOptionsToggleExpression.interface';
8
- interface EvaluateUpdatedExpressionsParams {
9
- updatedResponse: QuestionnaireResponse;
10
- updatedResponseItemMap: Record<string, QuestionnaireResponseItem[]>;
11
- targetConstraints: Record<string, TargetConstraint>;
12
- answerOptionsToggleExpressions: Record<string, AnswerOptionsToggleExpression[]>;
13
- calculatedExpressions: Record<string, CalculatedExpression[]>;
14
- enableWhenExpressions: EnableWhenExpressions;
15
- variables: Variables;
16
- processedValueSets: Record<string, any>;
17
- existingFhirPathContext: Record<string, any>;
18
- fhirPathTerminologyCache: Record<string, any>;
19
- terminologyServerUrl: string;
20
- }
21
- export declare function evaluateUpdatedExpressions(params: EvaluateUpdatedExpressionsParams): Promise<{
7
+ interface ExpressionUpdate<T> {
22
8
  isUpdated: boolean;
23
- updatedTargetConstraints: Record<string, TargetConstraint>;
24
- updatedAnswerOptionsToggleExpressions: Record<string, AnswerOptionsToggleExpression[]>;
25
- updatedEnableWhenExpressions: EnableWhenExpressions;
26
- updatedCalculatedExpressions: Record<string, CalculatedExpression[]>;
27
- updatedProcessedValueSets: Record<string, any>;
9
+ value: T;
10
+ }
11
+ export declare function evaluateOtherExpressions(updatedResponse: QuestionnaireResponse, updatedResponseItemMap: Record<string, QuestionnaireResponseItem[]>, variables: Variables, existingFhirPathContext: Record<string, any>, existingFhirPathTerminologyCache: Record<string, any>, targetConstraints: Record<string, TargetConstraint>, enableWhenExpressions: EnableWhenExpressions, answerOptionsToggleExpressions: Record<string, AnswerOptionsToggleExpression[]>, processedValueSets: Record<string, any>, terminologyServerUrl: string): Promise<{
28
12
  updatedFhirPathContext: Record<string, any>;
29
- fhirPathTerminologyCache: Record<string, any>;
13
+ updatedFhirPathTerminologyCache: Record<string, any>;
14
+ targetConstraintsUpdate: ExpressionUpdate<Record<string, TargetConstraint>>;
15
+ enableWhenExpressionsUpdate: ExpressionUpdate<EnableWhenExpressions>;
16
+ answerOptionsToggleExpressionsUpdate: ExpressionUpdate<Record<string, AnswerOptionsToggleExpression[]>>;
17
+ processedValueSetsUpdate: ExpressionUpdate<Record<string, any>>;
30
18
  computedQRItemUpdates: ComputedQRItemUpdates;
31
19
  }>;
32
20
  export declare function createFhirPathContext(questionnaireResponse: QuestionnaireResponse, questionnaireResponseItemMap: Record<string, QuestionnaireResponseItem[]>, variables: Variables, existingFhirPathContext: Record<string, any>, fhirPathTerminologyCache: Record<string, any>, terminologyServerUrl: string): Promise<{
@@ -43,4 +31,22 @@ export declare function evaluateQuestionnaireLevelVariables(resource: Questionna
43
31
  fhirPathTerminologyCache: Record<string, any>;
44
32
  }>;
45
33
  export declare function handleFhirPathResult(result: any[] | Promise<any[]>): Promise<any[]>;
34
+ /**
35
+ * Determines whether a FHIRPath expression result is cached.
36
+ *
37
+ * Expressions containing variables (e.g. `%something`) are never considered cached, because we can never know what a variable resolves to at runtime.
38
+ *
39
+ * @param {string} expression - The FHIRPath expression to check.
40
+ * @param {Record<string, any>} fhirPathTerminologyCache - Object storing cached expression results.
41
+ * @returns {boolean} `true` if the expression is cached and contains no variables; otherwise `false`.
42
+ */
43
+ export declare function isExpressionCached(expression: string, fhirPathTerminologyCache: Record<string, any>): boolean;
44
+ /**
45
+ * Caches the result of a FHIRPath evaluation if it was an asynchronous terminology call and the expression contains no variables (e.g. `%something`).
46
+ *
47
+ * @param {string} expression - The FHIRPath expression that was evaluated.
48
+ * @param {any} result - The evaluated result of the expression with async resolved.
49
+ * @param {Record<string, any>} fhirPathTerminologyCache - The cache object to store results.
50
+ */
51
+ export declare function cacheTerminologyResult(expression: string, result: any, fhirPathTerminologyCache: Record<string, any>): void;
46
52
  export {};
@@ -14,115 +14,110 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
17
  import fhirpath from 'fhirpath';
27
18
  import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
28
19
  import { evaluateEnableWhenExpressions } from './enableWhenExpression';
29
- import { evaluateCalculatedExpressions } from './calculatedExpression';
30
20
  import { evaluateTargetConstraints } from './targetConstraint';
31
21
  import { evaluateDynamicValueSets } from './parameterisedValueSets';
32
22
  import { evaluateAnswerOptionsToggleExpressions } from './answerOptionsToggleExpressions';
33
- export function evaluateUpdatedExpressions(params) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const { updatedResponse, updatedResponseItemMap, targetConstraints, answerOptionsToggleExpressions, enableWhenExpressions, calculatedExpressions, processedValueSets, variables, existingFhirPathContext, terminologyServerUrl } = params;
36
- let { fhirPathTerminologyCache } = params;
37
- const noExpressionsToBeUpdated = Object.keys(enableWhenExpressions).length === 0 &&
38
- Object.keys(calculatedExpressions).length === 0;
39
- if (noExpressionsToBeUpdated) {
40
- return {
41
- isUpdated: false,
42
- updatedTargetConstraints: targetConstraints,
43
- updatedAnswerOptionsToggleExpressions: answerOptionsToggleExpressions,
44
- updatedEnableWhenExpressions: enableWhenExpressions,
45
- updatedCalculatedExpressions: calculatedExpressions,
46
- updatedProcessedValueSets: processedValueSets,
47
- updatedFhirPathContext: existingFhirPathContext,
48
- fhirPathTerminologyCache,
49
- computedQRItemUpdates: {}
50
- };
51
- }
52
- const computedQRItemUpdates = {};
53
- const fhirPathEvalResult = yield createFhirPathContext(updatedResponse, updatedResponseItemMap, variables, existingFhirPathContext, fhirPathTerminologyCache, terminologyServerUrl);
54
- const updatedFhirPathContext = fhirPathEvalResult.fhirPathContext;
55
- fhirPathTerminologyCache = fhirPathEvalResult.fhirPathTerminologyCache;
56
- // Update targetConstraints
57
- const { targetConstraintsIsUpdated, updatedTargetConstraints } = yield evaluateTargetConstraints(updatedFhirPathContext, fhirPathTerminologyCache, targetConstraints, terminologyServerUrl);
58
- // Update answerOptionsToggleExpressions
59
- const { answerOptionsToggleExpressionsIsUpdated, updatedAnswerOptionsToggleExpressions, computedNewAnswers: computedNewAnswersAnswerOptionsToggleExpressions } = yield evaluateAnswerOptionsToggleExpressions(updatedFhirPathContext, fhirPathTerminologyCache, answerOptionsToggleExpressions, terminologyServerUrl);
60
- // Update enableWhenExpressions
61
- const { enableWhenExpsIsUpdated, updatedEnableWhenExpressions } = yield evaluateEnableWhenExpressions(updatedFhirPathContext, fhirPathTerminologyCache, enableWhenExpressions, terminologyServerUrl);
62
- // Update calculatedExpressions
63
- const { calculatedExpsIsUpdated, updatedCalculatedExpressions, computedNewAnswers: computedNewAnswersCalculatedExpressions } = yield evaluateCalculatedExpressions(updatedFhirPathContext, fhirPathTerminologyCache, calculatedExpressions, terminologyServerUrl);
64
- // Update dynamic value sets
65
- const { processedValueSetsIsUpdated, updatedProcessedValueSets, computedNewAnswers: computedNewAnswersDynamicValueSets } = yield evaluateDynamicValueSets(updatedFhirPathContext, fhirPathTerminologyCache, processedValueSets, terminologyServerUrl);
66
- // Have a process here to find their QRItems and assign updates based on the computedNewAnswers
67
- // In the case of dynamic value sets, just clear the existing answers
68
- // Eventually we want to expand this to calculatedExpressions
69
- for (const linkId in computedNewAnswersCalculatedExpressions) {
70
- // FIXME - this implementation is designed to only work on null for now, if we want to actually apply new answer updates, need to have Questionnaire input param
71
- if (computedNewAnswersCalculatedExpressions[linkId] === null) {
72
- computedQRItemUpdates[linkId] = null;
73
- }
74
- }
75
- for (const linkId in computedNewAnswersDynamicValueSets) {
76
- computedQRItemUpdates[linkId] = null;
77
- }
78
- for (const linkId in computedNewAnswersAnswerOptionsToggleExpressions) {
79
- computedQRItemUpdates[linkId] = null;
80
- }
81
- const isUpdated = enableWhenExpsIsUpdated ||
82
- calculatedExpsIsUpdated ||
83
- targetConstraintsIsUpdated ||
84
- answerOptionsToggleExpressionsIsUpdated ||
85
- processedValueSetsIsUpdated;
23
+ export async function evaluateOtherExpressions(updatedResponse, updatedResponseItemMap, variables, existingFhirPathContext, existingFhirPathTerminologyCache, targetConstraints, enableWhenExpressions, answerOptionsToggleExpressions, processedValueSets, terminologyServerUrl) {
24
+ // Performance check: Check if there are any expressions to be updated before proceeding with eval logic
25
+ const noExpressionsToBeUpdated = Object.keys(targetConstraints).length === 0 &&
26
+ Object.keys(enableWhenExpressions).length === 0 &&
27
+ Object.keys(answerOptionsToggleExpressions).length === 0 &&
28
+ Object.keys(processedValueSets).length === 0;
29
+ if (noExpressionsToBeUpdated) {
86
30
  return {
87
- isUpdated,
88
- updatedTargetConstraints,
89
- updatedAnswerOptionsToggleExpressions,
90
- updatedEnableWhenExpressions,
91
- updatedCalculatedExpressions,
92
- updatedProcessedValueSets,
93
- updatedFhirPathContext,
94
- fhirPathTerminologyCache,
95
- computedQRItemUpdates
31
+ updatedFhirPathContext: existingFhirPathContext,
32
+ updatedFhirPathTerminologyCache: existingFhirPathTerminologyCache,
33
+ targetConstraintsUpdate: {
34
+ isUpdated: false,
35
+ value: targetConstraints
36
+ },
37
+ enableWhenExpressionsUpdate: {
38
+ isUpdated: false,
39
+ value: enableWhenExpressions
40
+ },
41
+ answerOptionsToggleExpressionsUpdate: {
42
+ isUpdated: false,
43
+ value: answerOptionsToggleExpressions
44
+ },
45
+ processedValueSetsUpdate: {
46
+ isUpdated: false,
47
+ value: processedValueSets
48
+ },
49
+ computedQRItemUpdates: {}
96
50
  };
97
- });
51
+ }
52
+ // Create a new fhirPathContext based on the updated response and variables
53
+ const computedQRItemUpdates = {};
54
+ const { fhirPathContext: updatedFhirPathContext, fhirPathTerminologyCache: updatedFhirPathTerminologyCache } = await createFhirPathContext(updatedResponse, updatedResponseItemMap, variables, existingFhirPathContext, existingFhirPathTerminologyCache, terminologyServerUrl);
55
+ // Update targetConstraints
56
+ const { isUpdated: targetConstraintsUpdated, updatedTargetConstraints } = await evaluateTargetConstraints(updatedFhirPathContext, updatedFhirPathTerminologyCache, targetConstraints, terminologyServerUrl);
57
+ // Update enableWhenExpressions
58
+ const { isUpdated: enableWhenExpressionsUpdated, updatedEnableWhenExpressions } = await evaluateEnableWhenExpressions(updatedFhirPathContext, updatedFhirPathTerminologyCache, enableWhenExpressions, terminologyServerUrl);
59
+ // Update answerOptionsToggleExpressions
60
+ // Add generated computed answers to computedQRItemUpdates - clear the item because the previous answers may no longer be valid
61
+ const { isUpdated: answerOptionsToggleExpressionsUpdated, updatedAnswerOptionsToggleExpressions, computedNewAnswers: computedNewAnswersAnswerOptionsToggleExpressions } = await evaluateAnswerOptionsToggleExpressions(updatedFhirPathContext, updatedFhirPathTerminologyCache, answerOptionsToggleExpressions, terminologyServerUrl);
62
+ for (const linkId in computedNewAnswersAnswerOptionsToggleExpressions) {
63
+ computedQRItemUpdates[linkId] = null;
64
+ }
65
+ // Update dynamic value sets
66
+ // Add generated computed answers to computedQRItemUpdates - clear the item because the previous answers may no longer be valid
67
+ const { isUpdated: processedValueSetsUpdated, updatedProcessedValueSets, computedNewAnswers: computedNewAnswersDynamicValueSets } = await evaluateDynamicValueSets(updatedFhirPathContext, updatedFhirPathTerminologyCache, processedValueSets, terminologyServerUrl);
68
+ for (const linkId in computedNewAnswersDynamicValueSets) {
69
+ computedQRItemUpdates[linkId] = null;
70
+ }
71
+ return {
72
+ updatedFhirPathContext,
73
+ updatedFhirPathTerminologyCache,
74
+ targetConstraintsUpdate: {
75
+ isUpdated: targetConstraintsUpdated,
76
+ value: updatedTargetConstraints
77
+ },
78
+ enableWhenExpressionsUpdate: {
79
+ isUpdated: enableWhenExpressionsUpdated,
80
+ value: updatedEnableWhenExpressions
81
+ },
82
+ answerOptionsToggleExpressionsUpdate: {
83
+ isUpdated: answerOptionsToggleExpressionsUpdated,
84
+ value: updatedAnswerOptionsToggleExpressions
85
+ },
86
+ processedValueSetsUpdate: {
87
+ isUpdated: processedValueSetsUpdated,
88
+ value: updatedProcessedValueSets
89
+ },
90
+ computedQRItemUpdates
91
+ };
98
92
  }
99
- export function createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variables, existingFhirPathContext, fhirPathTerminologyCache, terminologyServerUrl) {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- var _a;
102
- const { fhirPathVariables: variablesFhirPath, xFhirQueryVariables: variablesXFhirQuery } = variables;
103
- // Add latest resource to fhirPathContext
104
- let fhirPathContext = Object.assign(Object.assign({}, existingFhirPathContext), { resource: questionnaireResponse, rootResource: questionnaireResponse });
105
- // Add empty x-fhir-query variables to fhirPathContext to prevent false-positive warnings
106
- fhirPathContext = addEmptyXFhirQueryVariablesToFhirPathContext(fhirPathContext, variablesXFhirQuery);
107
- // Evaluate resource-level variables
108
- const fhirPathEvalResult = yield evaluateQuestionnaireLevelVariables(questionnaireResponse, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl);
109
- fhirPathContext = fhirPathEvalResult.fhirPathContext;
110
- fhirPathTerminologyCache = fhirPathEvalResult.fhirPathTerminologyCache;
111
- // Add variables of items that exist in questionnaireResponseItemMap into fhirPathContext
112
- for (const linkId in questionnaireResponseItemMap) {
113
- const qrItems = (_a = questionnaireResponseItemMap[linkId]) !== null && _a !== void 0 ? _a : [];
114
- // Ensure at least one iteration even if qrItems is empty
115
- const qrItemsToProcess = qrItems.length > 0 ? qrItems : [undefined];
116
- // For non-repeat groups, the same linkId will have only one item
117
- // For repeat groups, the same linkId will have multiple items
118
- for (const qrItem of qrItemsToProcess) {
119
- const fhirPathEvalResult = yield evaluateLinkIdVariables(linkId, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl, qrItem);
120
- fhirPathContext = fhirPathEvalResult.fhirPathContext;
121
- fhirPathTerminologyCache = fhirPathEvalResult.fhirPathTerminologyCache;
122
- }
93
+ export async function createFhirPathContext(questionnaireResponse, questionnaireResponseItemMap, variables, existingFhirPathContext, fhirPathTerminologyCache, terminologyServerUrl) {
94
+ const { fhirPathVariables: variablesFhirPath, xFhirQueryVariables: variablesXFhirQuery } = variables;
95
+ // Add latest resource to fhirPathContext
96
+ let fhirPathContext = {
97
+ ...existingFhirPathContext,
98
+ resource: questionnaireResponse,
99
+ rootResource: questionnaireResponse
100
+ };
101
+ // Add empty x-fhir-query variables to fhirPathContext to prevent false-positive warnings
102
+ fhirPathContext = addEmptyXFhirQueryVariablesToFhirPathContext(fhirPathContext, variablesXFhirQuery);
103
+ // Evaluate resource-level variables
104
+ const fhirPathEvalResult = await evaluateQuestionnaireLevelVariables(questionnaireResponse, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl);
105
+ fhirPathContext = fhirPathEvalResult.fhirPathContext;
106
+ fhirPathTerminologyCache = fhirPathEvalResult.fhirPathTerminologyCache;
107
+ // Add variables of items that exist in questionnaireResponseItemMap into fhirPathContext
108
+ for (const linkId in questionnaireResponseItemMap) {
109
+ const qrItems = questionnaireResponseItemMap[linkId] ?? [];
110
+ // Ensure at least one iteration even if qrItems is empty
111
+ const qrItemsToProcess = qrItems.length > 0 ? qrItems : [undefined];
112
+ // For non-repeat groups, the same linkId will have only one item
113
+ // For repeat groups, the same linkId will have multiple items
114
+ for (const qrItem of qrItemsToProcess) {
115
+ const fhirPathEvalResult = await evaluateLinkIdVariables(linkId, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl, qrItem);
116
+ fhirPathContext = fhirPathEvalResult.fhirPathContext;
117
+ fhirPathTerminologyCache = fhirPathEvalResult.fhirPathTerminologyCache;
123
118
  }
124
- return { fhirPathContext, fhirPathTerminologyCache };
125
- });
119
+ }
120
+ return { fhirPathContext, fhirPathTerminologyCache };
126
121
  }
127
122
  export function addEmptyXFhirQueryVariablesToFhirPathContext(fhirPathContext, variablesXFhirQuery) {
128
123
  for (const variableName in variablesXFhirQuery) {
@@ -132,86 +127,111 @@ export function addEmptyXFhirQueryVariablesToFhirPathContext(fhirPathContext, va
132
127
  }
133
128
  return fhirPathContext;
134
129
  }
135
- export function evaluateLinkIdVariables(linkId, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl, qrItem) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- const linkIdVariables = variablesFhirPath[linkId];
138
- if (!linkIdVariables || linkIdVariables.length === 0) {
139
- return { fhirPathContext, fhirPathTerminologyCache };
140
- }
141
- for (const variable of linkIdVariables) {
142
- if (variable.expression && variable.name) {
143
- const cacheKey = JSON.stringify(variable.expression); // Use expression as cache key
144
- if (fhirPathTerminologyCache[cacheKey]) {
145
- continue;
146
- }
147
- try {
148
- const fhirPathResult = fhirpath.evaluate(qrItem !== null && qrItem !== void 0 ? qrItem : {}, {
149
- base: 'QuestionnaireResponse.item',
150
- expression: variable.expression
151
- }, fhirPathContext, fhirpath_r4_model, {
152
- async: true,
153
- terminologyUrl: terminologyServerUrl
154
- });
155
- fhirPathContext[`${variable.name}`] = yield handleFhirPathResult(fhirPathResult);
156
- // If fhirPathResult is an async terminology call, cache the result
157
- if (fhirPathResult instanceof Promise) {
158
- fhirPathTerminologyCache[cacheKey] = fhirPathContext[`${variable.name}`];
159
- }
160
- }
161
- catch (e) {
162
- console.warn(e.message, `LinkId: ${linkId}\nExpression: ${variable.expression}`);
163
- }
164
- }
165
- }
130
+ export async function evaluateLinkIdVariables(linkId, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl, qrItem) {
131
+ const linkIdVariables = variablesFhirPath[linkId];
132
+ if (!linkIdVariables || linkIdVariables.length === 0) {
166
133
  return { fhirPathContext, fhirPathTerminologyCache };
167
- });
168
- }
169
- export function evaluateQuestionnaireLevelVariables(resource, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl) {
170
- return __awaiter(this, void 0, void 0, function* () {
171
- const questionnaireLevelVariables = variablesFhirPath['QuestionnaireLevel'];
172
- if (!questionnaireLevelVariables || questionnaireLevelVariables.length === 0) {
173
- return {
174
- fhirPathContext,
175
- fhirPathTerminologyCache
176
- };
177
- }
178
- for (const variable of questionnaireLevelVariables) {
179
- if (variable.expression) {
180
- const cacheKey = JSON.stringify(variable.expression); // Use expression as cache key
181
- if (fhirPathTerminologyCache[cacheKey]) {
182
- continue;
183
- }
184
- try {
185
- const fhirPathResult = fhirpath.evaluate(resource, {
186
- base: 'QuestionnaireResponse',
187
- expression: variable.expression
188
- }, fhirPathContext, fhirpath_r4_model, {
189
- async: true,
190
- terminologyUrl: terminologyServerUrl
191
- });
192
- fhirPathContext[`${variable.name}`] = yield handleFhirPathResult(fhirPathResult);
193
- // If fhirPathResult is an async terminology call, cache the result
194
- if (fhirPathResult instanceof Promise) {
195
- fhirPathTerminologyCache[cacheKey] = fhirPathContext[`${variable.name}`];
196
- }
197
- }
198
- catch (e) {
199
- console.warn(e.message, `Questionnaire-level\nExpression: ${variable.expression}`);
134
+ }
135
+ for (const variable of linkIdVariables) {
136
+ if (variable.expression && variable.name) {
137
+ if (isExpressionCached(variable.expression, fhirPathTerminologyCache)) {
138
+ continue;
139
+ }
140
+ try {
141
+ const fhirPathResult = fhirpath.evaluate(qrItem ?? {}, {
142
+ base: 'QuestionnaireResponse.item',
143
+ expression: variable.expression
144
+ }, fhirPathContext, fhirpath_r4_model, {
145
+ async: true,
146
+ terminologyUrl: terminologyServerUrl
147
+ });
148
+ const result = await handleFhirPathResult(fhirPathResult);
149
+ fhirPathContext[`${variable.name}`] = result;
150
+ // If fhirPathResult is an async terminology call, cache the result
151
+ if (fhirPathResult instanceof Promise) {
152
+ cacheTerminologyResult(variable.expression, result, fhirPathTerminologyCache);
200
153
  }
201
154
  }
155
+ catch (e) {
156
+ console.warn(e.message, `LinkId: ${linkId}\nExpression: ${variable.expression}`);
157
+ }
202
158
  }
159
+ }
160
+ return { fhirPathContext, fhirPathTerminologyCache };
161
+ }
162
+ export async function evaluateQuestionnaireLevelVariables(resource, variablesFhirPath, fhirPathContext, fhirPathTerminologyCache, terminologyServerUrl) {
163
+ const questionnaireLevelVariables = variablesFhirPath['QuestionnaireLevel'];
164
+ if (!questionnaireLevelVariables || questionnaireLevelVariables.length === 0) {
203
165
  return {
204
166
  fhirPathContext,
205
167
  fhirPathTerminologyCache
206
168
  };
207
- });
208
- }
209
- export function handleFhirPathResult(result) {
210
- return __awaiter(this, void 0, void 0, function* () {
211
- if (result instanceof Promise) {
212
- return yield result;
169
+ }
170
+ for (const variable of questionnaireLevelVariables) {
171
+ if (variable.expression) {
172
+ if (isExpressionCached(variable.expression, fhirPathTerminologyCache)) {
173
+ continue;
174
+ }
175
+ try {
176
+ const fhirPathResult = fhirpath.evaluate(resource, {
177
+ base: 'QuestionnaireResponse',
178
+ expression: variable.expression
179
+ }, fhirPathContext, fhirpath_r4_model, {
180
+ async: true,
181
+ terminologyUrl: terminologyServerUrl
182
+ });
183
+ const result = await handleFhirPathResult(fhirPathResult);
184
+ fhirPathContext[`${variable.name}`] = result;
185
+ // If fhirPathResult is an async terminology call, cache the result
186
+ if (fhirPathResult instanceof Promise) {
187
+ cacheTerminologyResult(variable.expression, result, fhirPathTerminologyCache);
188
+ }
189
+ }
190
+ catch (e) {
191
+ console.warn(e.message, `Questionnaire-level\nExpression: ${variable.expression}`);
192
+ }
213
193
  }
214
- return result;
215
- });
194
+ }
195
+ return {
196
+ fhirPathContext,
197
+ fhirPathTerminologyCache
198
+ };
199
+ }
200
+ export async function handleFhirPathResult(result) {
201
+ if (result instanceof Promise) {
202
+ return await result;
203
+ }
204
+ return result;
205
+ }
206
+ /**
207
+ * Determines whether a FHIRPath expression result is cached.
208
+ *
209
+ * Expressions containing variables (e.g. `%something`) are never considered cached, because we can never know what a variable resolves to at runtime.
210
+ *
211
+ * @param {string} expression - The FHIRPath expression to check.
212
+ * @param {Record<string, any>} fhirPathTerminologyCache - Object storing cached expression results.
213
+ * @returns {boolean} `true` if the expression is cached and contains no variables; otherwise `false`.
214
+ */
215
+ export function isExpressionCached(expression, fhirPathTerminologyCache) {
216
+ // Expressions with variables are never cached
217
+ if (expression.includes('%')) {
218
+ return false;
219
+ }
220
+ // Check if expression exists in cache
221
+ return Object.prototype.hasOwnProperty.call(fhirPathTerminologyCache, expression);
222
+ }
223
+ /**
224
+ * Caches the result of a FHIRPath evaluation if it was an asynchronous terminology call and the expression contains no variables (e.g. `%something`).
225
+ *
226
+ * @param {string} expression - The FHIRPath expression that was evaluated.
227
+ * @param {any} result - The evaluated result of the expression with async resolved.
228
+ * @param {Record<string, any>} fhirPathTerminologyCache - The cache object to store results.
229
+ */
230
+ export function cacheTerminologyResult(expression, result, fhirPathTerminologyCache) {
231
+ // Skip caching for expressions with variables
232
+ if (expression.includes('%')) {
233
+ return;
234
+ }
235
+ fhirPathTerminologyCache[expression] = result;
216
236
  }
217
237
  //# sourceMappingURL=fhirpath.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fhirpath.js","sourceRoot":"","sources":["../../src/utils/fhirpath.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fhirpath.js","sourceRoot":"","sources":["../../src/utils/fhirpath.ts"],"names":[],"mappings":"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"}
@@ -14,15 +14,6 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
17
  export function getFileSize(fileSizeString) {
27
18
  if (fileSizeString.length < 7) {
28
19
  return `${Math.round(+fileSizeString / 1024)}kb`;
@@ -35,30 +26,28 @@ const fileToBase64 = (file) => new Promise((resolve, reject) => {
35
26
  reader.onload = () => resolve(reader.result);
36
27
  reader.onerror = reject;
37
28
  });
38
- export function createAttachmentAnswer(file, url, fileName) {
39
- return __awaiter(this, void 0, void 0, function* () {
40
- if (!file || url === '') {
41
- return null;
42
- }
43
- try {
44
- const base64Data = (yield fileToBase64(file));
45
- const attachment = {
46
- contentType: file.type,
47
- data: base64Data,
48
- size: file.size
49
- };
50
- if (url) {
51
- attachment.url = url;
52
- }
53
- if (fileName) {
54
- attachment.title = fileName;
55
- }
56
- return attachment;
29
+ export async function createAttachmentAnswer(file, url, fileName) {
30
+ if (!file || url === '') {
31
+ return null;
32
+ }
33
+ try {
34
+ const base64Data = (await fileToBase64(file));
35
+ const attachment = {
36
+ contentType: file.type,
37
+ data: base64Data,
38
+ size: file.size
39
+ };
40
+ if (url) {
41
+ attachment.url = url;
57
42
  }
58
- catch (error) {
59
- console.error(error);
60
- return null;
43
+ if (fileName) {
44
+ attachment.title = fileName;
61
45
  }
62
- });
46
+ return attachment;
47
+ }
48
+ catch (error) {
49
+ console.error(error);
50
+ return null;
51
+ }
63
52
  }
64
53
  //# sourceMappingURL=fileUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileUtils.js","sourceRoot":"","sources":["../../src/utils/fileUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;AAIH,MAAM,UAAU,WAAW,CAAC,cAAsB;IAChD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;IACnD,CAAC;IAED,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,EAAE,CAClC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEL,MAAM,UAAgB,sBAAsB,CAC1C,IAAiB,EACjB,GAAW,EACX,QAAgB;;QAEhB,IAAI,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAW,CAAC;YACxD,MAAM,UAAU,GAAe;gBAC7B,WAAW,EAAE,IAAI,CAAC,IAAI;gBACtB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;YAEF,IAAI,GAAG,EAAE,CAAC;gBACR,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;YACvB,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC;YAC9B,CAAC;YAED,OAAO,UAAU,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CAAA"}
1
+ {"version":3,"file":"fileUtils.js","sourceRoot":"","sources":["../../src/utils/fileUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,MAAM,UAAU,WAAW,CAAC,cAAsB;IAChD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;IACnD,CAAC;IAED,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,IAAU,EAAE,EAAE,CAClC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAiB,EACjB,GAAW,EACX,QAAgB;IAEhB,IAAI,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAW,CAAC;QACxD,MAAM,UAAU,GAAe;YAC7B,WAAW,EAAE,IAAI,CAAC,IAAI;YACtB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;QAEF,IAAI,GAAG,EAAE,CAAC;YACR,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;QACvB,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC9B,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -23,7 +23,6 @@ import { qrItemHasItemsOrAnswer } from './manageForm';
23
23
  * @author Sean Fong
24
24
  */
25
25
  export function updateQuestionnaireResponse(questionnaire, questionnaireResponse, recursiveUpdateFunction, extraData) {
26
- var _a;
27
26
  if (!questionnaire.item ||
28
27
  questionnaire.item.length === 0 ||
29
28
  !questionnaireResponse.item ||
@@ -34,7 +33,7 @@ export function updateQuestionnaireResponse(questionnaire, questionnaireResponse
34
33
  const topLevelQRItemsByIndex = getQrItemsIndex(questionnaire.item, questionnaireResponse.item, qItemsIndexMap);
35
34
  const topLevelQrItems = [];
36
35
  for (const [index, topLevelQItem] of questionnaire.item.entries()) {
37
- const topLevelQRItemOrItems = (_a = topLevelQRItemsByIndex[index]) !== null && _a !== void 0 ? _a : {
36
+ const topLevelQRItemOrItems = topLevelQRItemsByIndex[index] ?? {
38
37
  linkId: topLevelQItem.linkId,
39
38
  text: topLevelQItem.text,
40
39
  item: []
@@ -50,7 +49,7 @@ export function updateQuestionnaireResponse(questionnaire, questionnaireResponse
50
49
  topLevelQrItems.push(updatedTopLevelQRItem);
51
50
  }
52
51
  }
53
- return Object.assign(Object.assign({}, questionnaireResponse), { item: topLevelQrItems });
52
+ return { ...questionnaireResponse, item: topLevelQrItems };
54
53
  }
55
54
  /**
56
55
  * A generic (and safe) way to read an array of element(s) i.e. QuestionnaireResponseItem[], extracted Observation[] from a QuestionnaireResponse given a recursive function.
@@ -60,15 +59,14 @@ export function updateQuestionnaireResponse(questionnaire, questionnaireResponse
60
59
  * @author Sean Fong
61
60
  */
62
61
  export function readQuestionnaireResponse(questionnaire, questionnaireResponse, recursiveReadFunction, extraData) {
63
- var _a, _b;
64
62
  if (!questionnaire.item || questionnaire.item.length === 0) {
65
63
  return [];
66
64
  }
67
65
  const qItemsIndexMap = mapQItemsIndex(questionnaire);
68
- const topLevelQRItemsByIndex = getQrItemsIndex(questionnaire.item, (_a = questionnaireResponse.item) !== null && _a !== void 0 ? _a : [], qItemsIndexMap);
66
+ const topLevelQRItemsByIndex = getQrItemsIndex(questionnaire.item, questionnaireResponse.item ?? [], qItemsIndexMap);
69
67
  const readValueArray = [];
70
68
  for (const [index, topLevelQItem] of questionnaire.item.entries()) {
71
- const topLevelQRItemOrItems = (_b = topLevelQRItemsByIndex[index]) !== null && _b !== void 0 ? _b : {
69
+ const topLevelQRItemOrItems = topLevelQRItemsByIndex[index] ?? {
72
70
  linkId: topLevelQItem.linkId,
73
71
  text: topLevelQItem.text,
74
72
  item: []