@aehrc/smart-forms-renderer 0.44.3 → 1.0.0-alpha.10

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 (490) hide show
  1. package/.storybook/main.ts +6 -1
  2. package/lib/components/FormComponents/AttachmentItem/AttachmentField.js +3 -1
  3. package/lib/components/FormComponents/AttachmentItem/AttachmentField.js.map +1 -1
  4. package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.js +2 -5
  5. package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.js.map +1 -1
  6. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.js +3 -1
  7. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.js.map +1 -1
  8. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.styles.d.ts +1 -0
  9. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.styles.js +3 -4
  10. package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.styles.js.map +1 -1
  11. package/lib/components/FormComponents/AttachmentItem/AttachmentItem.d.ts +2 -2
  12. package/lib/components/FormComponents/AttachmentItem/AttachmentItem.js.map +1 -1
  13. package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.js +3 -1
  14. package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.js.map +1 -1
  15. package/lib/components/FormComponents/BooleanItem/BooleanField.js +27 -17
  16. package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -1
  17. package/lib/components/FormComponents/BooleanItem/BooleanItem.d.ts +2 -2
  18. package/lib/components/FormComponents/BooleanItem/BooleanItem.js +2 -2
  19. package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
  20. package/lib/components/FormComponents/BooleanItem/index.d.ts +1 -0
  21. package/lib/components/FormComponents/BooleanItem/index.js +18 -0
  22. package/lib/components/FormComponents/BooleanItem/index.js.map +1 -0
  23. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.d.ts +2 -2
  24. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js +8 -6
  25. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js.map +1 -1
  26. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.d.ts +2 -2
  27. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +4 -4
  28. package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js.map +1 -1
  29. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.d.ts +2 -2
  30. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js +4 -5
  31. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js.map +1 -1
  32. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.d.ts +2 -2
  33. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js +4 -5
  34. package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js.map +1 -1
  35. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.d.ts +2 -2
  36. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js +8 -8
  37. package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js.map +1 -1
  38. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js +7 -13
  39. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js.map +1 -1
  40. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.d.ts +2 -2
  41. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +2 -2
  42. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
  43. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js +2 -2
  44. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.js.map +1 -1
  45. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js +7 -13
  46. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js.map +1 -1
  47. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.d.ts +2 -2
  48. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +2 -2
  49. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
  50. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.d.ts +1 -0
  51. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js +3 -3
  52. package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js.map +1 -1
  53. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.d.ts +2 -2
  54. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +8 -6
  55. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js.map +1 -1
  56. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.d.ts +2 -2
  57. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +2 -2
  58. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -1
  59. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.d.ts +2 -2
  60. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js +4 -4
  61. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.js.map +1 -1
  62. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.d.ts +2 -2
  63. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +7 -6
  64. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js.map +1 -1
  65. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.d.ts +2 -2
  66. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js +4 -4
  67. package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js.map +1 -1
  68. package/lib/components/FormComponents/ChoiceItems/index.d.ts +1 -0
  69. package/lib/components/FormComponents/ChoiceItems/index.js +18 -0
  70. package/lib/components/FormComponents/ChoiceItems/index.js.map +1 -0
  71. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js +3 -1
  72. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js.map +1 -1
  73. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.d.ts +2 -2
  74. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.js +4 -5
  75. package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.js.map +1 -1
  76. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.d.ts +2 -2
  77. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js +4 -5
  78. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js.map +1 -1
  79. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js +3 -2
  80. package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js.map +1 -1
  81. package/lib/components/FormComponents/DecimalItem/DecimalField.js +5 -2
  82. package/lib/components/FormComponents/DecimalItem/DecimalField.js.map +1 -1
  83. package/lib/components/FormComponents/DecimalItem/DecimalItem.d.ts +2 -2
  84. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +4 -5
  85. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -1
  86. package/lib/components/FormComponents/DisplayItem/DisplayItem.d.ts +2 -1
  87. package/lib/components/FormComponents/DisplayItem/DisplayItem.js +13 -2
  88. package/lib/components/FormComponents/DisplayItem/DisplayItem.js.map +1 -1
  89. package/lib/components/FormComponents/GroupItem/GroupAccordion.styles.d.ts +1 -1
  90. package/lib/components/FormComponents/GroupItem/GroupHeading.js +10 -2
  91. package/lib/components/FormComponents/GroupItem/GroupHeading.js.map +1 -1
  92. package/lib/components/FormComponents/GroupItem/GroupItem.d.ts +1 -0
  93. package/lib/components/FormComponents/GroupItem/GroupItem.js +2 -2
  94. package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -1
  95. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js +10 -0
  96. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -1
  97. package/lib/components/FormComponents/GroupItem/GroupItemView.d.ts +1 -0
  98. package/lib/components/FormComponents/GroupItem/GroupItemView.js +12 -2
  99. package/lib/components/FormComponents/GroupItem/GroupItemView.js.map +1 -1
  100. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js +7 -0
  101. package/lib/components/FormComponents/GroupItem/PageButtonWrapper.js.map +1 -1
  102. package/lib/components/FormComponents/GroupItem/index.d.ts +1 -0
  103. package/lib/components/FormComponents/GroupItem/index.js +18 -0
  104. package/lib/components/FormComponents/GroupItem/index.js.map +1 -0
  105. package/lib/components/FormComponents/IntegerItem/IntegerField.js +5 -2
  106. package/lib/components/FormComponents/IntegerItem/IntegerField.js.map +1 -1
  107. package/lib/components/FormComponents/IntegerItem/IntegerItem.d.ts +2 -2
  108. package/lib/components/FormComponents/IntegerItem/IntegerItem.js +4 -5
  109. package/lib/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -1
  110. package/lib/components/FormComponents/ItemParts/CheckboxSingle.js +2 -2
  111. package/lib/components/FormComponents/ItemParts/CheckboxSingle.js.map +1 -1
  112. package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js +4 -2
  113. package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js.map +1 -1
  114. package/lib/components/FormComponents/ItemParts/ClearInputButton.d.ts +8 -0
  115. package/lib/components/FormComponents/ItemParts/ClearInputButton.js +33 -0
  116. package/lib/components/FormComponents/ItemParts/ClearInputButton.js.map +1 -0
  117. package/lib/components/FormComponents/ItemParts/ContextDisplayItem.js +1 -1
  118. package/lib/components/FormComponents/ItemParts/ContextDisplayItem.js.map +1 -1
  119. package/lib/components/FormComponents/ItemParts/FlyoverItem.d.ts +2 -1
  120. package/lib/components/FormComponents/ItemParts/FlyoverItem.js +2 -2
  121. package/lib/components/FormComponents/ItemParts/FlyoverItem.js.map +1 -1
  122. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.d.ts +2 -1
  123. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +9 -8
  124. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -1
  125. package/lib/components/FormComponents/ItemParts/ItemLabelText.d.ts +1 -1
  126. package/lib/components/FormComponents/ItemParts/ItemLabelText.js +31 -13
  127. package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -1
  128. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +7 -21
  129. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -1
  130. package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js +4 -2
  131. package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js.map +1 -1
  132. package/lib/components/FormComponents/ItemParts/RadioOptionList.d.ts +1 -0
  133. package/lib/components/FormComponents/ItemParts/RadioOptionList.js +4 -4
  134. package/lib/components/FormComponents/ItemParts/RadioOptionList.js.map +1 -1
  135. package/lib/components/FormComponents/ItemParts/RequiredAsterisk.d.ts +7 -0
  136. package/lib/components/FormComponents/ItemParts/RequiredAsterisk.js +35 -0
  137. package/lib/components/FormComponents/ItemParts/RequiredAsterisk.js.map +1 -0
  138. package/lib/components/FormComponents/ItemParts/index.d.ts +1 -0
  139. package/lib/components/FormComponents/ItemParts/index.js +1 -0
  140. package/lib/components/FormComponents/ItemParts/index.js.map +1 -1
  141. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.d.ts +2 -2
  142. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js +8 -6
  143. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js.map +1 -1
  144. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.d.ts +2 -2
  145. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +4 -4
  146. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js.map +1 -1
  147. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.d.ts +2 -2
  148. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js +4 -5
  149. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js.map +1 -1
  150. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.d.ts +2 -2
  151. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.js +4 -5
  152. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.js.map +1 -1
  153. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.d.ts +2 -2
  154. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js +8 -8
  155. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js.map +1 -1
  156. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.js +4 -2
  157. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.js.map +1 -1
  158. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.d.ts +2 -2
  159. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js +2 -2
  160. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js.map +1 -1
  161. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.js +4 -2
  162. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.js.map +1 -1
  163. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.d.ts +2 -2
  164. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.js +2 -2
  165. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.js.map +1 -1
  166. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.d.ts +2 -2
  167. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js +8 -6
  168. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.js.map +1 -1
  169. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.d.ts +2 -2
  170. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js +4 -4
  171. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js.map +1 -1
  172. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.d.ts +2 -2
  173. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js +7 -6
  174. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.js.map +1 -1
  175. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.d.ts +2 -2
  176. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js +4 -4
  177. package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js.map +1 -1
  178. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.d.ts +1 -1
  179. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js +5 -0
  180. package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js.map +1 -1
  181. package/lib/components/FormComponents/QuantityItem/QuantityField.js +5 -2
  182. package/lib/components/FormComponents/QuantityItem/QuantityField.js.map +1 -1
  183. package/lib/components/FormComponents/QuantityItem/QuantityItem.d.ts +2 -2
  184. package/lib/components/FormComponents/QuantityItem/QuantityItem.js +15 -11
  185. package/lib/components/FormComponents/QuantityItem/QuantityItem.js.map +1 -1
  186. package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js +4 -2
  187. package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js.map +1 -1
  188. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +1 -1
  189. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -1
  190. package/lib/components/FormComponents/RepeatItem/RepeatItem.js +3 -3
  191. package/lib/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -1
  192. package/lib/components/FormComponents/SingleItem/NestedSingleItemAccordion.styles.d.ts +1 -1
  193. package/lib/components/FormComponents/SingleItem/SingleItem.js +1 -1
  194. package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -1
  195. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.d.ts +2 -2
  196. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +26 -18
  197. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
  198. package/lib/components/FormComponents/SingleItem/SingleItemView.js +5 -4
  199. package/lib/components/FormComponents/SingleItem/SingleItemView.js.map +1 -1
  200. package/lib/components/FormComponents/SingleItem/SingleNestedItems.js +1 -0
  201. package/lib/components/FormComponents/SingleItem/SingleNestedItems.js.map +1 -1
  202. package/lib/components/FormComponents/SliderItem/SliderField.js +3 -2
  203. package/lib/components/FormComponents/SliderItem/SliderField.js.map +1 -1
  204. package/lib/components/FormComponents/SliderItem/SliderItem.d.ts +2 -2
  205. package/lib/components/FormComponents/SliderItem/SliderItem.js +3 -3
  206. package/lib/components/FormComponents/SliderItem/SliderItem.js.map +1 -1
  207. package/lib/components/FormComponents/StringItem/StringField.js +5 -2
  208. package/lib/components/FormComponents/StringItem/StringField.js.map +1 -1
  209. package/lib/components/FormComponents/StringItem/StringItem.d.ts +2 -2
  210. package/lib/components/FormComponents/StringItem/StringItem.js +4 -5
  211. package/lib/components/FormComponents/StringItem/StringItem.js.map +1 -1
  212. package/lib/components/FormComponents/TextItem/TextField.js +3 -2
  213. package/lib/components/FormComponents/TextItem/TextField.js.map +1 -1
  214. package/lib/components/FormComponents/TextItem/TextItem.d.ts +2 -2
  215. package/lib/components/FormComponents/TextItem/TextItem.js +4 -5
  216. package/lib/components/FormComponents/TextItem/TextItem.js.map +1 -1
  217. package/lib/components/FormComponents/Textfield.styles.d.ts +1 -1
  218. package/lib/components/FormComponents/Textfield.styles.js +5 -6
  219. package/lib/components/FormComponents/Textfield.styles.js.map +1 -1
  220. package/lib/components/FormComponents/TimeItem/TimeField.js +3 -2
  221. package/lib/components/FormComponents/TimeItem/TimeField.js.map +1 -1
  222. package/lib/components/FormComponents/TimeItem/TimeItem.d.ts +2 -2
  223. package/lib/components/FormComponents/TimeItem/TimeItem.js +4 -5
  224. package/lib/components/FormComponents/TimeItem/TimeItem.js.map +1 -1
  225. package/lib/components/FormComponents/UrlItem/UrlField.js +7 -1
  226. package/lib/components/FormComponents/UrlItem/UrlField.js.map +1 -1
  227. package/lib/components/FormComponents/UrlItem/UrlItem.d.ts +2 -2
  228. package/lib/components/FormComponents/UrlItem/UrlItem.js +4 -5
  229. package/lib/components/FormComponents/UrlItem/UrlItem.js.map +1 -1
  230. package/lib/components/FormComponents/index.d.ts +6 -0
  231. package/lib/components/FormComponents/index.js +7 -0
  232. package/lib/components/FormComponents/index.js.map +1 -1
  233. package/lib/components/Renderer/BaseRenderer.js +5 -5
  234. package/lib/components/Renderer/BaseRenderer.js.map +1 -1
  235. package/lib/components/Renderer/FormTopLevelItem.js +0 -7
  236. package/lib/components/Renderer/FormTopLevelItem.js.map +1 -1
  237. package/lib/components/index.d.ts +2 -1
  238. package/lib/components/index.js +3 -1
  239. package/lib/components/index.js.map +1 -1
  240. package/lib/hooks/index.d.ts +7 -0
  241. package/lib/hooks/index.js +8 -0
  242. package/lib/hooks/index.js.map +1 -1
  243. package/lib/hooks/useBuildForm.d.ts +8 -1
  244. package/lib/hooks/useBuildForm.js +23 -3
  245. package/lib/hooks/useBuildForm.js.map +1 -1
  246. package/lib/hooks/useCodingCalculatedExpression.d.ts +2 -1
  247. package/lib/hooks/useCodingCalculatedExpression.js +1 -1
  248. package/lib/hooks/useCodingCalculatedExpression.js.map +1 -1
  249. package/lib/hooks/useHidden.js +8 -0
  250. package/lib/hooks/useHidden.js.map +1 -1
  251. package/lib/hooks/useParseXhtml.d.ts +3 -0
  252. package/lib/hooks/useParseXhtml.js +60 -0
  253. package/lib/hooks/useParseXhtml.js.map +1 -0
  254. package/lib/hooks/useReadOnly.d.ts +1 -1
  255. package/lib/hooks/useReadOnly.js +22 -1
  256. package/lib/hooks/useReadOnly.js.map +1 -1
  257. package/lib/hooks/useRenderingExtensions.d.ts +3 -2
  258. package/lib/hooks/useValidationFeedback.js +5 -3
  259. package/lib/hooks/useValidationFeedback.js.map +1 -1
  260. package/lib/hooks/useValueSetCodings.js +7 -1
  261. package/lib/hooks/useValueSetCodings.js.map +1 -1
  262. package/lib/hooks/useXhtmlParse.d.ts +4 -0
  263. package/lib/hooks/useXhtmlParse.js +63 -0
  264. package/lib/hooks/useXhtmlParse.js.map +1 -0
  265. package/lib/index.d.ts +6 -6
  266. package/lib/index.js +4 -4
  267. package/lib/index.js.map +1 -1
  268. package/lib/interfaces/index.d.ts +2 -0
  269. package/lib/interfaces/overrideComponent.interface.d.ts +12 -3
  270. package/lib/interfaces/qItemOverrideComponent.interface.d.ts +7 -6
  271. package/lib/interfaces/renderProps.interface.d.ts +4 -0
  272. package/lib/stores/index.d.ts +2 -0
  273. package/lib/stores/index.js +1 -0
  274. package/lib/stores/index.js.map +1 -1
  275. package/lib/stores/questionnaireStore.d.ts +17 -9
  276. package/lib/stores/questionnaireStore.js +47 -22
  277. package/lib/stores/questionnaireStore.js.map +1 -1
  278. package/lib/stores/rendererStylingStore.d.ts +35 -3
  279. package/lib/stores/rendererStylingStore.js +20 -4
  280. package/lib/stores/rendererStylingStore.js.map +1 -1
  281. package/lib/utils/calculatedExpression.d.ts +5 -4
  282. package/lib/utils/calculatedExpression.js +76 -55
  283. package/lib/utils/calculatedExpression.js.map +1 -1
  284. package/lib/utils/enableWhenExpression.d.ts +10 -8
  285. package/lib/utils/enableWhenExpression.js +153 -118
  286. package/lib/utils/enableWhenExpression.js.map +1 -1
  287. package/lib/utils/fhirpath.d.ts +7 -5
  288. package/lib/utils/fhirpath.js +105 -72
  289. package/lib/utils/fhirpath.js.map +1 -1
  290. package/lib/utils/getExpressionsFromItem.d.ts +2 -1
  291. package/lib/utils/getExpressionsFromItem.js +1 -1
  292. package/lib/utils/getExpressionsFromItem.js.map +1 -1
  293. package/lib/utils/index.d.ts +6 -2
  294. package/lib/utils/index.js +6 -2
  295. package/lib/utils/index.js.map +1 -1
  296. package/lib/utils/initialise.d.ts +3 -2
  297. package/lib/utils/initialise.js +49 -36
  298. package/lib/utils/initialise.js.map +1 -1
  299. package/lib/utils/itemControl.d.ts +4 -1
  300. package/lib/utils/itemControl.js +27 -0
  301. package/lib/utils/itemControl.js.map +1 -1
  302. package/lib/utils/manageForm.d.ts +5 -1
  303. package/lib/utils/manageForm.js +4 -2
  304. package/lib/utils/manageForm.js.map +1 -1
  305. package/lib/utils/misc.d.ts +0 -1
  306. package/lib/utils/misc.js +1 -1
  307. package/lib/utils/misc.js.map +1 -1
  308. package/lib/utils/openChoice.js +2 -10
  309. package/lib/utils/openChoice.js.map +1 -1
  310. package/lib/utils/page.d.ts +3 -3
  311. package/lib/utils/page.js +2 -5
  312. package/lib/utils/page.js.map +1 -1
  313. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +1 -1
  314. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
  315. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.d.ts +1 -1
  316. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js +166 -150
  317. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -1
  318. package/lib/utils/questionnaireStoreUtils/extractPages.js +5 -11
  319. package/lib/utils/questionnaireStoreUtils/extractPages.js.map +1 -1
  320. package/lib/utils/repopulateItems.js +0 -8
  321. package/lib/utils/repopulateItems.js.map +1 -1
  322. package/lib/utils/validateQuestionnaire.js +8 -4
  323. package/lib/utils/validateQuestionnaire.js.map +1 -1
  324. package/package.json +3 -3
  325. package/src/components/FormComponents/AttachmentItem/AttachmentField.tsx +4 -0
  326. package/src/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.tsx +17 -15
  327. package/src/components/FormComponents/AttachmentItem/AttachmentFileDropBox.styles.ts +12 -10
  328. package/src/components/FormComponents/AttachmentItem/AttachmentFileDropBox.tsx +4 -0
  329. package/src/components/FormComponents/AttachmentItem/AttachmentItem.tsx +3 -1
  330. package/src/components/FormComponents/AttachmentItem/AttachmentUrlField.tsx +4 -0
  331. package/src/components/FormComponents/BooleanItem/BooleanField.tsx +87 -30
  332. package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +20 -11
  333. package/src/components/FormComponents/BooleanItem/index.ts +18 -0
  334. package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.tsx +16 -7
  335. package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.tsx +34 -16
  336. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.tsx +19 -11
  337. package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.tsx +20 -12
  338. package/src/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.tsx +19 -2
  339. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx +10 -20
  340. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +13 -2
  341. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionView.tsx +17 -11
  342. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx +11 -20
  343. package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +21 -13
  344. package/src/components/FormComponents/ChoiceItems/ChoiceRadioSingle.tsx +5 -4
  345. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +28 -8
  346. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +13 -2
  347. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionView.tsx +24 -13
  348. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +18 -7
  349. package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.tsx +32 -14
  350. package/src/components/FormComponents/ChoiceItems/index.ts +18 -0
  351. package/src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.tsx +4 -0
  352. package/src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.tsx +36 -21
  353. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.tsx +40 -25
  354. package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx +4 -19
  355. package/src/components/FormComponents/DecimalItem/DecimalField.tsx +8 -1
  356. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +33 -18
  357. package/src/components/FormComponents/DecimalItem/index.ts +18 -0
  358. package/src/components/FormComponents/DisplayItem/DisplayItem.tsx +18 -3
  359. package/src/components/FormComponents/GroupItem/GroupHeading.tsx +27 -6
  360. package/src/components/FormComponents/GroupItem/GroupItem.tsx +3 -0
  361. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx +26 -0
  362. package/src/components/FormComponents/GroupItem/GroupItemView.tsx +34 -1
  363. package/src/components/FormComponents/GroupItem/PageButtonWrapper.tsx +8 -0
  364. package/src/components/FormComponents/GroupItem/index.ts +18 -0
  365. package/src/components/FormComponents/IntegerItem/IntegerField.tsx +8 -1
  366. package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +33 -18
  367. package/src/components/FormComponents/ItemParts/CheckboxSingle.tsx +2 -3
  368. package/src/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.tsx +4 -1
  369. package/src/components/FormComponents/ItemParts/ClearInputButton.tsx +52 -0
  370. package/src/components/FormComponents/ItemParts/ContextDisplayItem.tsx +1 -1
  371. package/src/components/FormComponents/ItemParts/FlyoverItem.tsx +62 -0
  372. package/src/components/FormComponents/ItemParts/ItemFieldGrid.tsx +23 -9
  373. package/src/components/FormComponents/ItemParts/ItemLabelText.tsx +64 -13
  374. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx +15 -36
  375. package/src/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.tsx +11 -1
  376. package/src/components/FormComponents/ItemParts/RadioOptionList.tsx +5 -1
  377. package/src/components/FormComponents/ItemParts/RequiredAsterisk.tsx +36 -0
  378. package/src/components/FormComponents/ItemParts/index.ts +19 -0
  379. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.tsx +16 -7
  380. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.tsx +35 -17
  381. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.tsx +25 -17
  382. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerValueSetItem.tsx +26 -18
  383. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.tsx +19 -2
  384. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.tsx +5 -1
  385. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.tsx +22 -14
  386. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetFields.tsx +5 -1
  387. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerValueSetItem.tsx +23 -15
  388. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionField.tsx +16 -8
  389. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.tsx +30 -12
  390. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetField.tsx +24 -9
  391. package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.tsx +31 -13
  392. package/src/components/FormComponents/QuantityItem/QuantityComparatorField.tsx +6 -0
  393. package/src/components/FormComponents/QuantityItem/QuantityField.tsx +8 -1
  394. package/src/components/FormComponents/QuantityItem/QuantityItem.tsx +56 -35
  395. package/src/components/FormComponents/QuantityItem/QuantityUnitField.tsx +8 -3
  396. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +1 -1
  397. package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +34 -28
  398. package/src/components/FormComponents/SingleItem/SingleItem.tsx +1 -1
  399. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +50 -4
  400. package/src/components/FormComponents/SingleItem/SingleItemView.tsx +14 -11
  401. package/src/components/FormComponents/SingleItem/SingleNestedItems.tsx +1 -0
  402. package/src/components/FormComponents/SliderItem/SliderField.tsx +4 -2
  403. package/src/components/FormComponents/SliderItem/SliderItem.tsx +26 -18
  404. package/src/components/FormComponents/StringItem/StringField.tsx +8 -1
  405. package/src/components/FormComponents/StringItem/StringItem.tsx +33 -18
  406. package/src/components/FormComponents/StringItem/index.ts +18 -0
  407. package/src/components/FormComponents/TextItem/TextField.tsx +5 -2
  408. package/src/components/FormComponents/TextItem/TextItem.tsx +25 -17
  409. package/src/components/FormComponents/Textfield.styles.ts +5 -7
  410. package/src/components/FormComponents/TimeItem/TimeField.tsx +4 -2
  411. package/src/components/FormComponents/TimeItem/TimeItem.tsx +29 -14
  412. package/src/components/FormComponents/UrlItem/UrlField.tsx +14 -1
  413. package/src/components/FormComponents/UrlItem/UrlItem.tsx +32 -17
  414. package/src/components/FormComponents/index.ts +8 -0
  415. package/src/components/Renderer/BaseRenderer.tsx +5 -5
  416. package/src/components/Renderer/FormBodyPaginated.tsx +127 -0
  417. package/src/components/Renderer/FormTopLevelItem.tsx +0 -17
  418. package/src/components/index.ts +11 -1
  419. package/src/hooks/index.ts +12 -0
  420. package/src/hooks/useBuildForm.ts +33 -3
  421. package/src/hooks/useCodingCalculatedExpression.ts +1 -1
  422. package/src/hooks/useHidden.ts +12 -0
  423. package/src/hooks/useParseXhtml.tsx +73 -0
  424. package/src/hooks/useReadOnly.ts +32 -1
  425. package/src/hooks/useRenderingExtensions.ts +2 -2
  426. package/src/hooks/useValidationFeedback.ts +11 -3
  427. package/src/hooks/useValueSetCodings.ts +10 -6
  428. package/src/index.ts +49 -6
  429. package/src/interfaces/index.ts +5 -0
  430. package/src/interfaces/overrideComponent.interface.ts +39 -0
  431. package/src/interfaces/renderProps.interface.ts +5 -0
  432. package/src/stores/index.ts +3 -0
  433. package/src/stores/questionnaireStore.ts +73 -31
  434. package/src/stores/rendererStylingStore.ts +120 -0
  435. package/src/stories/assets/questionnaires/QQuantity.ts +45 -6
  436. package/src/stories/itemTypes/Attachment.stories.tsx +1 -1
  437. package/src/stories/itemTypes/Boolean.stories.tsx +1 -1
  438. package/src/stories/itemTypes/Choice.stories.tsx +1 -1
  439. package/src/stories/itemTypes/Date.stories.tsx +1 -1
  440. package/src/stories/itemTypes/DateTime.stories.tsx +1 -1
  441. package/src/stories/itemTypes/Decimal.stories.tsx +1 -1
  442. package/src/stories/itemTypes/Display.stories.tsx +1 -1
  443. package/src/stories/itemTypes/Group.stories.tsx +1 -1
  444. package/src/stories/itemTypes/Integer.stories.tsx +1 -1
  445. package/src/stories/itemTypes/OpenChoice.stories.tsx +1 -1
  446. package/src/stories/itemTypes/Quantity.stories.tsx +1 -1
  447. package/src/stories/itemTypes/Reference.stories.tsx +1 -1
  448. package/src/stories/itemTypes/String.stories.tsx +1 -1
  449. package/src/stories/itemTypes/Text.stories.tsx +1 -1
  450. package/src/stories/itemTypes/Time.stories.tsx +1 -1
  451. package/src/stories/itemTypes/Url.stories.tsx +1 -1
  452. package/src/stories/sdc/AdvancedAdditionalDisplayContent.stories.tsx +1 -1
  453. package/src/stories/sdc/AdvancedControlAppearance.stories.tsx +1 -1
  454. package/src/stories/sdc/AdvancedOther.stories.tsx +1 -1
  455. package/src/stories/sdc/AdvancedTextAppearance.stories.tsx +1 -1
  456. package/src/stories/sdc/BehaviorCalculations.stories.tsx +1 -1
  457. package/src/stories/sdc/BehaviorChoiceRestriction.stories.tsx +1 -1
  458. package/src/stories/sdc/BehaviorOther.stories.tsx +1 -1
  459. package/src/stories/sdc/BehaviorValueConstraints.stories.tsx +1 -1
  460. package/src/stories/sdc/FormPopulation.stories.tsx +1 -1
  461. package/src/stories/sdc/ItemControlDisplay.stories.tsx +1 -1
  462. package/src/stories/sdc/ItemControlGroup.stories.tsx +1 -1
  463. package/src/stories/sdc/ItemControlQuestion.stories.tsx +1 -1
  464. package/src/stories/sdc/OtherExtensions.stories.tsx +1 -1
  465. package/src/stories/testing/AuCoreTester.stories.tsx +1 -1
  466. package/src/stories/testing/BuildFormButtonTesterWrapper.stories.tsx +1 -1
  467. package/src/stories/testing/GroupTableTester.stories.tsx +1 -1
  468. package/src/stories/testing/IdRemoverDebuggerWrapper.stories.tsx +1 -1
  469. package/src/stories/testing/Mbs715Tester.stories.tsx +1 -1
  470. package/src/stories/testing/PrePopButtonTesterWrapper.stories.tsx +1 -1
  471. package/src/stories/testing/ValidateFormTesterWrapper.stories.tsx +1 -1
  472. package/src/utils/calculatedExpression.ts +29 -15
  473. package/src/utils/enableWhenExpression.ts +91 -48
  474. package/src/utils/fhirpath.ts +64 -27
  475. package/src/utils/getExpressionsFromItem.ts +1 -1
  476. package/src/utils/index.ts +8 -2
  477. package/src/utils/initialise.ts +11 -7
  478. package/src/utils/itemControl.ts +38 -1
  479. package/src/utils/manageForm.ts +16 -2
  480. package/src/utils/misc.ts +1 -1
  481. package/src/utils/openChoice.ts +2 -13
  482. package/src/utils/page.ts +4 -11
  483. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +1 -1
  484. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.ts +20 -18
  485. package/src/utils/questionnaireStoreUtils/extractPages.ts +5 -12
  486. package/src/utils/repopulateItems.ts +0 -11
  487. package/src/utils/validateQuestionnaire.ts +6 -1
  488. package/vite.config.ts +2 -2
  489. package/src/components/Renderer/FormBodyPage.tsx +0 -93
  490. package/src/components/Renderer/FormTopLevelPage.tsx +0 -70
@@ -28,7 +28,7 @@ import {
28
28
 
29
29
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
30
30
  const meta = {
31
- title: 'Component/SDC/8.1.4 Advanced Other',
31
+ title: 'SDC/8.1.4 Advanced Other',
32
32
  component: BuildFormWrapperForStorybook,
33
33
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
34
34
  tags: []
@@ -29,7 +29,7 @@ import {
29
29
 
30
30
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
31
31
  const meta = {
32
- title: 'Component/SDC/8.1.1 Advanced Text Appearance',
32
+ title: 'SDC/8.1.1 Advanced Text Appearance',
33
33
  component: BuildFormWrapperForStorybook,
34
34
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
35
35
  tags: []
@@ -27,7 +27,7 @@ import {
27
27
 
28
28
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
29
29
  const meta = {
30
- title: 'Component/SDC/9.1.3 Form Behavior Calculations',
30
+ title: 'SDC/9.1.3 Form Behavior Calculations',
31
31
  component: BuildFormWrapperForStorybook,
32
32
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
33
33
  tags: []
@@ -28,7 +28,7 @@ import {
28
28
 
29
29
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
30
30
  const meta = {
31
- title: 'Component/SDC/9.1.2 Form Behavior Choice Restriction',
31
+ title: 'SDC/9.1.2 Form Behavior Choice Restriction',
32
32
  component: BuildFormWrapperForStorybook,
33
33
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
34
34
  tags: []
@@ -31,7 +31,7 @@ import {
31
31
 
32
32
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
33
33
  const meta = {
34
- title: 'Component/SDC/9.1.4 Form Behavior Other Control',
34
+ title: 'SDC/9.1.4 Form Behavior Other Control',
35
35
  component: BuildFormWrapperForStorybook,
36
36
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
37
37
  tags: []
@@ -34,7 +34,7 @@ import {
34
34
 
35
35
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
36
36
  const meta = {
37
- title: 'Component/SDC/9.1.1 Form Behavior Value Constraints',
37
+ title: 'SDC/9.1.1 Form Behavior Value Constraints',
38
38
  component: BuildFormWrapperForStorybook,
39
39
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
40
40
  tags: []
@@ -31,7 +31,7 @@ import { pracPrimaryPeter } from '../assets/practitioners/PracPrimaryPeter';
31
31
 
32
32
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
33
33
  const meta = {
34
- title: 'Component/SDC/12 Form Population',
34
+ title: 'SDC/12 Form Population',
35
35
  component: PrePopWrapperForStorybook,
36
36
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
37
37
  tags: []
@@ -27,7 +27,7 @@ import {
27
27
 
28
28
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
29
29
  const meta = {
30
- title: 'Component/SDC/8.1.2 Advanced Control Appearance - Item Control Display',
30
+ title: 'SDC/8.1.2 Advanced Control Appearance - Item Control Display',
31
31
  component: BuildFormWrapperForStorybook,
32
32
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
33
33
  tags: []
@@ -30,7 +30,7 @@ import {
30
30
 
31
31
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
32
32
  const meta = {
33
- title: 'Component/SDC/8.1.2 Advanced Control Appearance - Item Control Group',
33
+ title: 'SDC/8.1.2 Advanced Control Appearance - Item Control Group',
34
34
  component: BuildFormWrapperForStorybook,
35
35
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
36
36
  tags: []
@@ -34,7 +34,7 @@ import {
34
34
 
35
35
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
36
36
  const meta = {
37
- title: 'Component/SDC/8.1.2 Advanced Control Appearance - Item Control Question',
37
+ title: 'SDC/8.1.2 Advanced Control Appearance - Item Control Question',
38
38
  component: BuildFormWrapperForStorybook,
39
39
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
40
40
  tags: []
@@ -21,7 +21,7 @@ import { qPreferredTerminologyServer } from '../assets/questionnaires';
21
21
 
22
22
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
23
23
  const meta = {
24
- title: 'Component/SDC/Other Extensions',
24
+ title: 'SDC/Other Extensions',
25
25
  component: BuildFormWrapperForStorybook,
26
26
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
27
27
  tags: []
@@ -41,7 +41,7 @@ import {
41
41
 
42
42
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
43
43
  const meta = {
44
- title: 'Component/Testing/AU Core Tester',
44
+ title: 'Testing/AU Core Tester',
45
45
  component: PrePopWrapperForStorybook,
46
46
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
47
47
  tags: []
@@ -21,7 +21,7 @@ import { qButtonTester, qrButtonTesterResponse } from '../assets/questionnaires/
21
21
 
22
22
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
23
23
  const meta = {
24
- title: 'Component/Testing/Build Form Button Tester',
24
+ title: 'Testing/Build Form Button Tester',
25
25
  component: BuildFormButtonTesterWrapperForStorybook,
26
26
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
27
27
  tags: []
@@ -21,7 +21,7 @@ import { qGTableWithBoolean } from '../assets/questionnaires/QGroupTableTester';
21
21
 
22
22
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
23
23
  const meta = {
24
- title: 'Component/Testing/Group Table Tester',
24
+ title: 'Testing/Group Table Tester',
25
25
  component: BuildFormWrapperForStorybook,
26
26
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
27
27
  tags: []
@@ -21,7 +21,7 @@ import { qMyPatient } from '../assets/questionnaires/QIdRemoverDebugger';
21
21
 
22
22
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
23
23
  const meta = {
24
- title: 'Component/Testing/ID Remover Debugger',
24
+ title: 'Testing/ID Remover Debugger',
25
25
  component: IdRemoverDebuggerWrapperForStorybook,
26
26
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
27
27
  tags: []
@@ -27,7 +27,7 @@ import { pracPrimaryPeter } from '../assets/practitioners/PracPrimaryPeter';
27
27
 
28
28
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
29
29
  const meta = {
30
- title: 'Component/Testing/MBS 715 Tester',
30
+ title: 'Testing/MBS 715 Tester',
31
31
  component: PrePopWrapperForStorybook,
32
32
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
33
33
  tags: []
@@ -25,7 +25,7 @@ import { qSelectivePrePopTester } from '../assets/questionnaires/QPrePopTester';
25
25
 
26
26
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
27
27
  const meta = {
28
- title: 'Component/Testing/Pre Pop Tester',
28
+ title: 'Testing/Pre Pop Tester',
29
29
  component: PrePopWrapperForStorybook,
30
30
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
31
31
  tags: []
@@ -21,7 +21,7 @@ import { qValidateTester } from '../assets/questionnaires/QValidateTester';
21
21
 
22
22
  // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
23
23
  const meta = {
24
- title: 'Component/Testing/Validate Tester',
24
+ title: 'Testing/Validate Tester',
25
25
  component: ValidationFormTesterWrapper,
26
26
  // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
27
27
  tags: []
@@ -28,7 +28,7 @@ import type {
28
28
  QuestionnaireResponseItemAnswer
29
29
  } from 'fhir/r4';
30
30
  import { emptyResponse } from './emptyResource';
31
- import { createFhirPathContext } from './fhirpath';
31
+ import { createFhirPathContext, handleFhirPathResult } from './fhirpath';
32
32
  import { getQrItemsIndex, mapQItemsIndex } from './mapItem';
33
33
  import { updateQrItemsInGroup } from './qrItem';
34
34
  import dayjs from 'dayjs';
@@ -41,20 +41,22 @@ interface EvaluateInitialCalculatedExpressionsParams {
41
41
  calculatedExpressions: Record<string, CalculatedExpression[]>;
42
42
  variablesFhirPath: Record<string, Expression[]>;
43
43
  existingFhirPathContext: Record<string, any>;
44
+ terminologyServerUrl: string;
44
45
  }
45
46
 
46
- export function evaluateInitialCalculatedExpressions(
47
+ export async function evaluateInitialCalculatedExpressions(
47
48
  params: EvaluateInitialCalculatedExpressionsParams
48
- ): {
49
+ ): Promise<{
49
50
  initialCalculatedExpressions: Record<string, CalculatedExpression[]>;
50
51
  updatedFhirPathContext: Record<string, any>;
51
- } {
52
+ }> {
52
53
  const {
53
54
  initialResponse,
54
55
  initialResponseItemMap,
55
56
  calculatedExpressions,
56
57
  variablesFhirPath,
57
- existingFhirPathContext
58
+ existingFhirPathContext,
59
+ terminologyServerUrl
58
60
  } = params;
59
61
 
60
62
  // Return early if initialResponse is empty or there are no calculated expressions to evaluate
@@ -72,11 +74,12 @@ export function evaluateInitialCalculatedExpressions(
72
74
  ...calculatedExpressions
73
75
  };
74
76
 
75
- const updatedFhirPathContext = createFhirPathContext(
77
+ const updatedFhirPathContext = await createFhirPathContext(
76
78
  initialResponse,
77
79
  initialResponseItemMap,
78
80
  variablesFhirPath,
79
- existingFhirPathContext
81
+ existingFhirPathContext,
82
+ terminologyServerUrl
80
83
  );
81
84
 
82
85
  for (const linkId in initialCalculatedExpressions) {
@@ -84,12 +87,17 @@ export function evaluateInitialCalculatedExpressions(
84
87
 
85
88
  for (const calcExpression of itemCalcExpressions) {
86
89
  try {
87
- const result = fhirpath.evaluate(
90
+ const fhirPathResult = fhirpath.evaluate(
88
91
  {},
89
92
  calcExpression.expression,
90
93
  updatedFhirPathContext,
91
- fhirpath_r4_model
94
+ fhirpath_r4_model,
95
+ {
96
+ async: true,
97
+ terminologyUrl: terminologyServerUrl
98
+ }
92
99
  );
100
+ const result = await handleFhirPathResult(fhirPathResult);
93
101
 
94
102
  // Only update calculatedExpressions if length of result array > 0
95
103
  if (result.length > 0 && !isEqual(calcExpression.value, result[0])) {
@@ -109,13 +117,14 @@ export function evaluateInitialCalculatedExpressions(
109
117
  };
110
118
  }
111
119
 
112
- export function evaluateCalculatedExpressions(
120
+ export async function evaluateCalculatedExpressions(
113
121
  fhirPathContext: Record<string, any>,
114
- calculatedExpressions: Record<string, CalculatedExpression[]>
115
- ): {
122
+ calculatedExpressions: Record<string, CalculatedExpression[]>,
123
+ terminologyServerUrl: string
124
+ ): Promise<{
116
125
  calculatedExpsIsUpdated: boolean;
117
126
  updatedCalculatedExpressions: Record<string, CalculatedExpression[]>;
118
- } {
127
+ }> {
119
128
  const updatedCalculatedExpressions: Record<string, CalculatedExpression[]> = {
120
129
  ...calculatedExpressions
121
130
  };
@@ -126,12 +135,17 @@ export function evaluateCalculatedExpressions(
126
135
 
127
136
  for (const calcExpression of itemCalcExpressions) {
128
137
  try {
129
- const result = fhirpath.evaluate(
138
+ const fhirPathResult = fhirpath.evaluate(
130
139
  {},
131
140
  calcExpression.expression,
132
141
  fhirPathContext,
133
- fhirpath_r4_model
142
+ fhirpath_r4_model,
143
+ {
144
+ async: true,
145
+ terminologyUrl: terminologyServerUrl
146
+ }
134
147
  );
148
+ const result = await handleFhirPathResult(fhirPathResult);
135
149
 
136
150
  // Update calculatedExpressions if length of result array > 0
137
151
  // Only update when current calcExpression value is different from the result, otherwise it will result in an infinite loop as per issue #733
@@ -16,7 +16,7 @@
16
16
  */
17
17
 
18
18
  import type { Expression, QuestionnaireResponse, QuestionnaireResponseItem } from 'fhir/r4';
19
- import { createFhirPathContext } from './fhirpath';
19
+ import { createFhirPathContext, handleFhirPathResult } from './fhirpath';
20
20
  import fhirpath from 'fhirpath';
21
21
  import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
22
22
  import type {
@@ -31,40 +31,45 @@ interface EvaluateInitialEnableWhenExpressionsParams {
31
31
  enableWhenExpressions: EnableWhenExpressions;
32
32
  variablesFhirPath: Record<string, Expression[]>;
33
33
  existingFhirPathContext: Record<string, any>;
34
+ terminologyServerUrl: string;
34
35
  }
35
36
 
36
- export function evaluateInitialEnableWhenExpressions(
37
+ export async function evaluateInitialEnableWhenExpressions(
37
38
  params: EvaluateInitialEnableWhenExpressionsParams
38
- ): {
39
+ ): Promise<{
39
40
  initialEnableWhenExpressions: EnableWhenExpressions;
40
41
  updatedFhirPathContext: Record<string, any>;
41
- } {
42
+ }> {
42
43
  const {
43
44
  initialResponse,
44
45
  initialResponseItemMap,
45
46
  enableWhenExpressions,
46
47
  variablesFhirPath,
47
- existingFhirPathContext
48
+ existingFhirPathContext,
49
+ terminologyServerUrl
48
50
  } = params;
49
51
 
50
52
  const initialEnableWhenExpressions: EnableWhenExpressions = {
51
53
  ...enableWhenExpressions
52
54
  };
53
- const updatedFhirPathContext = createFhirPathContext(
55
+ const updatedFhirPathContext = await createFhirPathContext(
54
56
  initialResponse,
55
57
  initialResponseItemMap,
56
58
  variablesFhirPath,
57
- existingFhirPathContext
59
+ existingFhirPathContext,
60
+ terminologyServerUrl
58
61
  );
59
62
 
60
- const initialEnableWhenSingleExpressions = evaluateEnableWhenSingleExpressions(
63
+ const initialEnableWhenSingleExpressions = await evaluateEnableWhenSingleExpressions(
61
64
  initialEnableWhenExpressions.singleExpressions,
62
- updatedFhirPathContext
65
+ updatedFhirPathContext,
66
+ terminologyServerUrl
63
67
  );
64
68
 
65
- const initialEnableWhenRepeatExpressions = evaluateEnableWhenRepeatExpressions(
69
+ const initialEnableWhenRepeatExpressions = await evaluateEnableWhenRepeatExpressions(
66
70
  initialEnableWhenExpressions.repeatExpressions,
67
- updatedFhirPathContext
71
+ updatedFhirPathContext,
72
+ terminologyServerUrl
68
73
  );
69
74
 
70
75
  return {
@@ -76,20 +81,31 @@ export function evaluateInitialEnableWhenExpressions(
76
81
  };
77
82
  }
78
83
 
79
- function evaluateEnableWhenSingleExpressions(
84
+ async function evaluateEnableWhenSingleExpressions(
80
85
  enableWhenSingleExpressions: Record<string, EnableWhenSingleExpression>,
81
- updatedFhirPathContext: Record<string, any>
82
- ): {
86
+ updatedFhirPathContext: Record<string, any>,
87
+ terminologyServerUrl: string
88
+ ): Promise<{
83
89
  updatedExpressions: Record<string, EnableWhenSingleExpression>;
84
90
  isUpdated: boolean;
85
- } {
91
+ }> {
86
92
  let isUpdated = false;
87
93
  for (const linkId in enableWhenSingleExpressions) {
88
94
  const initialValue = enableWhenSingleExpressions[linkId].isEnabled;
89
95
  const expression = enableWhenSingleExpressions[linkId].expression;
90
96
 
91
97
  try {
92
- const result = fhirpath.evaluate('', expression, updatedFhirPathContext, fhirpath_r4_model);
98
+ const fhirPathResult = fhirpath.evaluate(
99
+ {},
100
+ expression,
101
+ updatedFhirPathContext,
102
+ fhirpath_r4_model,
103
+ {
104
+ async: true,
105
+ terminologyUrl: terminologyServerUrl
106
+ }
107
+ );
108
+ const result = await handleFhirPathResult(fhirPathResult);
93
109
 
94
110
  // Update enableWhenExpressions if length of result array > 0
95
111
  // Only update when current isEnabled value is different from the result, otherwise it will result in an infinite loop as per issue #733
@@ -124,35 +140,43 @@ function evaluateEnableWhenSingleExpressions(
124
140
  return { updatedExpressions: enableWhenSingleExpressions, isUpdated };
125
141
  }
126
142
 
127
- function getNumOfEnableWhenExpressionItemInstances(
143
+ async function getNumOfEnableWhenExpressionItemInstances(
128
144
  enableWhenExpression: EnableWhenRepeatExpression,
129
- fhirPathContext: Record<string, any>
145
+ fhirPathContext: Record<string, any>,
146
+ terminologyServerUrl: string
130
147
  ) {
131
- const result = fhirpath.evaluate(
132
- '',
148
+ const fhirPathResult = fhirpath.evaluate(
149
+ {},
133
150
  `%resource.descendants().where(linkId = '${enableWhenExpression.parentLinkId}').count()`,
134
151
  fhirPathContext,
135
- fhirpath_r4_model
152
+ fhirpath_r4_model,
153
+ {
154
+ async: true,
155
+ terminologyUrl: terminologyServerUrl
156
+ }
136
157
  );
158
+ const result = await handleFhirPathResult(fhirPathResult);
137
159
 
138
160
  return typeof result[0] === 'number' ? result[0] : null;
139
161
  }
140
162
 
141
- function evaluateEnableWhenRepeatExpressions(
163
+ async function evaluateEnableWhenRepeatExpressions(
142
164
  enableWhenRepeatExpressions: Record<string, EnableWhenRepeatExpression>,
143
- fhirPathContext: Record<string, any>
144
- ): {
165
+ fhirPathContext: Record<string, any>,
166
+ terminologyServerUrl: string
167
+ ): Promise<{
145
168
  updatedExpressions: Record<string, EnableWhenRepeatExpression>;
146
169
  isUpdated: boolean;
147
- } {
170
+ }> {
148
171
  let aggregatedUpdated = false;
149
172
  for (const linkId in enableWhenRepeatExpressions) {
150
173
  // Get number of repeat group instances in the QR
151
174
  const enableWhenExpression = enableWhenRepeatExpressions[linkId];
152
175
 
153
- const numOfInstances = getNumOfEnableWhenExpressionItemInstances(
176
+ const numOfInstances = await getNumOfEnableWhenExpressionItemInstances(
154
177
  enableWhenExpression,
155
- fhirPathContext
178
+ fhirPathContext,
179
+ terminologyServerUrl
156
180
  );
157
181
  if (!numOfInstances) {
158
182
  continue;
@@ -164,12 +188,13 @@ function evaluateEnableWhenRepeatExpressions(
164
188
  }
165
189
 
166
190
  for (let i = 0; i < numOfInstances; i++) {
167
- const { isEnabled, isUpdated } = evaluateEnableWhenRepeatExpressionInstance(
191
+ const { isEnabled, isUpdated } = await evaluateEnableWhenRepeatExpressionInstance(
168
192
  linkId,
169
193
  fhirPathContext,
170
194
  enableWhenExpression,
171
195
  lastLinkIdIndex,
172
- i
196
+ i,
197
+ terminologyServerUrl
173
198
  );
174
199
 
175
200
  if (typeof isEnabled === 'boolean') {
@@ -183,13 +208,14 @@ function evaluateEnableWhenRepeatExpressions(
183
208
  return { updatedExpressions: enableWhenRepeatExpressions, isUpdated: aggregatedUpdated };
184
209
  }
185
210
 
186
- export function evaluateEnableWhenRepeatExpressionInstance(
211
+ export async function evaluateEnableWhenRepeatExpressionInstance(
187
212
  linkId: string,
188
213
  fhirPathContext: Record<string, any>,
189
214
  enableWhenRepeatExpression: EnableWhenRepeatExpression,
190
215
  lastLinkIdIndex: number,
191
- instanceIndex: number
192
- ): { isEnabled: boolean | null; isUpdated: boolean } {
216
+ instanceIndex: number,
217
+ terminologyServerUrl: string
218
+ ): Promise<{ isEnabled: boolean | null; isUpdated: boolean }> {
193
219
  const expression = enableWhenRepeatExpression.expression;
194
220
  const parentLinkId = enableWhenRepeatExpression.parentLinkId;
195
221
  const initialValue = enableWhenRepeatExpression.enabledIndexes[instanceIndex];
@@ -202,7 +228,17 @@ export function evaluateEnableWhenRepeatExpressionInstance(
202
228
  let isEnabled = null;
203
229
  let isUpdated = false;
204
230
  try {
205
- const result = fhirpath.evaluate('', modifiedExpression, fhirPathContext, fhirpath_r4_model);
231
+ const fhirPathResult = fhirpath.evaluate(
232
+ {},
233
+ modifiedExpression,
234
+ fhirPathContext,
235
+ fhirpath_r4_model,
236
+ {
237
+ async: true,
238
+ terminologyUrl: terminologyServerUrl
239
+ }
240
+ );
241
+ const result = await handleFhirPathResult(fhirPathResult);
206
242
 
207
243
  // Update enableWhenExpressions if length of result array > 0
208
244
  // Only update when current isEnabled value is different from the result, otherwise it will result in am infinite loop as per #733
@@ -229,25 +265,28 @@ export function evaluateEnableWhenRepeatExpressionInstance(
229
265
  return { isEnabled, isUpdated };
230
266
  }
231
267
 
232
- export function evaluateEnableWhenExpressions(
268
+ export async function evaluateEnableWhenExpressions(
233
269
  fhirPathContext: Record<string, any>,
234
- enableWhenExpressions: EnableWhenExpressions
235
- ): {
270
+ enableWhenExpressions: EnableWhenExpressions,
271
+ terminologyServerUrl: string
272
+ ): Promise<{
236
273
  enableWhenExpsIsUpdated: boolean;
237
274
  updatedEnableWhenExpressions: EnableWhenExpressions;
238
- } {
275
+ }> {
239
276
  const updatedEnableWhenExpressions: EnableWhenExpressions = {
240
277
  ...enableWhenExpressions
241
278
  };
242
279
 
243
- const updatedEnableWhenSingleExpressions = evaluateEnableWhenSingleExpressions(
280
+ const updatedEnableWhenSingleExpressions = await evaluateEnableWhenSingleExpressions(
244
281
  updatedEnableWhenExpressions.singleExpressions,
245
- fhirPathContext
282
+ fhirPathContext,
283
+ terminologyServerUrl
246
284
  );
247
285
 
248
- const updatedEnableWhenRepeatExpressions = evaluateEnableWhenRepeatExpressions(
286
+ const updatedEnableWhenRepeatExpressions = await evaluateEnableWhenRepeatExpressions(
249
287
  updatedEnableWhenExpressions.repeatExpressions,
250
- fhirPathContext
288
+ fhirPathContext,
289
+ terminologyServerUrl
251
290
  );
252
291
 
253
292
  const isUpdated =
@@ -271,11 +310,12 @@ interface MutateRepeatEnableWhenExpressionInstancesParams {
271
310
  parentRepeatGroupLinkId: string;
272
311
  parentRepeatGroupIndex: number;
273
312
  actionType: 'add' | 'remove';
313
+ terminologyServerUrl: string;
274
314
  }
275
315
 
276
- export function mutateRepeatEnableWhenExpressionInstances(
316
+ export async function mutateRepeatEnableWhenExpressionInstances(
277
317
  params: MutateRepeatEnableWhenExpressionInstancesParams
278
- ): { updatedEnableWhenExpressions: EnableWhenExpressions; isUpdated: boolean } {
318
+ ): Promise<{ updatedEnableWhenExpressions: EnableWhenExpressions; isUpdated: boolean }> {
279
319
  const {
280
320
  questionnaireResponse,
281
321
  questionnaireResponseItemMap,
@@ -284,16 +324,18 @@ export function mutateRepeatEnableWhenExpressionInstances(
284
324
  enableWhenExpressions,
285
325
  parentRepeatGroupLinkId,
286
326
  parentRepeatGroupIndex,
287
- actionType
327
+ actionType,
328
+ terminologyServerUrl
288
329
  } = params;
289
330
 
290
331
  const { repeatExpressions } = enableWhenExpressions;
291
332
 
292
- const updatedFhirPathContext = createFhirPathContext(
333
+ const updatedFhirPathContext = await createFhirPathContext(
293
334
  questionnaireResponse,
294
335
  questionnaireResponseItemMap,
295
336
  variablesFhirPath,
296
- existingFhirPathContext
337
+ existingFhirPathContext,
338
+ terminologyServerUrl
297
339
  );
298
340
 
299
341
  let isUpdated = false;
@@ -303,12 +345,13 @@ export function mutateRepeatEnableWhenExpressionInstances(
303
345
  }
304
346
 
305
347
  if (actionType === 'add') {
306
- const { isEnabled } = evaluateEnableWhenRepeatExpressionInstance(
348
+ const { isEnabled } = await evaluateEnableWhenRepeatExpressionInstance(
307
349
  linkId,
308
350
  updatedFhirPathContext,
309
351
  repeatExpressions[linkId],
310
352
  repeatExpressions[linkId].expression.lastIndexOf('.where(linkId'),
311
- parentRepeatGroupIndex
353
+ parentRepeatGroupIndex,
354
+ terminologyServerUrl
312
355
  );
313
356
 
314
357
  if (typeof isEnabled === 'boolean') {