@aehrc/smart-forms-renderer 0.2.0 → 0.4.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 (952) hide show
  1. package/.storybook/main.ts +28 -0
  2. package/.storybook/preview.ts +34 -0
  3. package/__mocks__/zustand.ts +60 -0
  4. package/jest.config.ts +16 -0
  5. package/lib/api/populate.js +63 -0
  6. package/lib/api/populate.js.map +1 -0
  7. package/{dist → lib}/components/Alert.styles.d.ts +5 -5
  8. package/lib/components/Alert.styles.js +40 -0
  9. package/lib/components/Alert.styles.js.map +1 -0
  10. package/lib/components/BackToTopButton/BackToTopButton.js +32 -0
  11. package/lib/components/BackToTopButton/BackToTopButton.js.map +1 -0
  12. package/{dist → lib}/components/Box.styles.d.ts +15 -15
  13. package/lib/components/Box.styles.js +30 -0
  14. package/lib/components/Box.styles.js.map +1 -0
  15. package/lib/components/FormComponents/BooleanItem/BooleanField.js +24 -0
  16. package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -0
  17. package/lib/components/FormComponents/BooleanItem/BooleanItem.js +49 -0
  18. package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -0
  19. package/lib/components/FormComponents/DateItem/DateField.js +31 -0
  20. package/lib/components/FormComponents/DateItem/DateField.js.map +1 -0
  21. package/lib/components/FormComponents/DateItem/DateItem.js +52 -0
  22. package/lib/components/FormComponents/DateItem/DateItem.js.map +1 -0
  23. package/lib/components/FormComponents/DateTimeItem/DateTimeField.js +33 -0
  24. package/lib/components/FormComponents/DateTimeItem/DateTimeField.js.map +1 -0
  25. package/lib/components/FormComponents/DateTimeItem/DateTimeItem.js +52 -0
  26. package/lib/components/FormComponents/DateTimeItem/DateTimeItem.js.map +1 -0
  27. package/lib/components/FormComponents/DecimalItem/DecimalField.js +30 -0
  28. package/lib/components/FormComponents/DecimalItem/DecimalField.js.map +1 -0
  29. package/lib/components/FormComponents/DecimalItem/DecimalItem.js +80 -0
  30. package/lib/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -0
  31. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js +26 -0
  32. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js.map +1 -0
  33. package/{dist → lib}/components/FormComponents/DisplayItem/DisplayInstructions.styles.d.ts +5 -5
  34. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js +23 -0
  35. package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +1 -0
  36. package/lib/components/FormComponents/DisplayItem/DisplayItem.js +31 -0
  37. package/lib/components/FormComponents/DisplayItem/DisplayItem.js.map +1 -0
  38. package/{dist → lib}/components/FormComponents/GridGroup/GridGroup.d.ts +1 -1
  39. package/lib/components/FormComponents/GridGroup/GridGroup.js +58 -0
  40. package/lib/components/FormComponents/GridGroup/GridGroup.js.map +1 -0
  41. package/{dist → lib}/components/FormComponents/GridGroup/GridRow.d.ts +1 -1
  42. package/lib/components/FormComponents/GridGroup/GridRow.js +55 -0
  43. package/lib/components/FormComponents/GridGroup/GridRow.js.map +1 -0
  44. package/lib/components/FormComponents/GridGroup/GridTable.js +42 -0
  45. package/lib/components/FormComponents/GridGroup/GridTable.js.map +1 -0
  46. package/lib/components/FormComponents/GroupItem/GroupHeading.js +39 -0
  47. package/lib/components/FormComponents/GroupItem/GroupHeading.js.map +1 -0
  48. package/{dist → lib}/components/FormComponents/GroupItem/GroupItem.d.ts +1 -1
  49. package/lib/components/FormComponents/GroupItem/GroupItem.js +62 -0
  50. package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -0
  51. package/{dist → lib}/components/FormComponents/GroupItem/GroupItem.styles.d.ts +5 -5
  52. package/lib/components/FormComponents/GroupItem/GroupItem.styles.js +27 -0
  53. package/lib/components/FormComponents/GroupItem/GroupItem.styles.js.map +1 -0
  54. package/{dist → lib}/components/FormComponents/GroupItem/GroupItemSwitcher.d.ts +1 -1
  55. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js +73 -0
  56. package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -0
  57. package/lib/components/FormComponents/GroupItem/NextTabButton.js +25 -0
  58. package/lib/components/FormComponents/GroupItem/NextTabButton.js.map +1 -0
  59. package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js +55 -0
  60. package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +1 -0
  61. package/lib/components/FormComponents/IntegerItem/IntegerField.js +30 -0
  62. package/lib/components/FormComponents/IntegerItem/IntegerField.js.map +1 -0
  63. package/lib/components/FormComponents/IntegerItem/IntegerItem.js +73 -0
  64. package/lib/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -0
  65. package/lib/components/FormComponents/Item.styles.d.ts +6 -0
  66. package/lib/components/FormComponents/Item.styles.js +27 -0
  67. package/lib/components/FormComponents/Item.styles.js.map +1 -0
  68. package/lib/components/FormComponents/ItemParts/ContextDisplayItem.js +29 -0
  69. package/lib/components/FormComponents/ItemParts/ContextDisplayItem.js.map +1 -0
  70. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js +26 -0
  71. package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js.map +1 -0
  72. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +31 -0
  73. package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -0
  74. package/lib/components/FormComponents/ItemParts/ItemLabelText.js +45 -0
  75. package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -0
  76. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +32 -0
  77. package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -0
  78. package/lib/components/FormComponents/ItemParts/QItemCheckboxSingle.js +24 -0
  79. package/lib/components/FormComponents/ItemParts/QItemCheckboxSingle.js.map +1 -0
  80. package/lib/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js +33 -0
  81. package/lib/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js.map +1 -0
  82. package/lib/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js +31 -0
  83. package/lib/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js.map +1 -0
  84. package/{dist → lib}/components/FormComponents/Lists.styles.d.ts +6 -6
  85. package/lib/components/FormComponents/Lists.styles.js +38 -0
  86. package/lib/components/FormComponents/Lists.styles.js.map +1 -0
  87. package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoice.d.ts +1 -1
  88. package/lib/components/FormComponents/QItemChoice/QItemChoice.js +61 -0
  89. package/lib/components/FormComponents/QItemChoice/QItemChoice.js.map +1 -0
  90. package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.d.ts +1 -1
  91. package/lib/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js +85 -0
  92. package/lib/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js.map +1 -0
  93. package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js +70 -0
  94. package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js.map +1 -0
  95. package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js +66 -0
  96. package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js.map +1 -0
  97. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js +70 -0
  98. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js.map +1 -0
  99. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js +70 -0
  100. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js.map +1 -0
  101. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js +24 -0
  102. package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js.map +1 -0
  103. package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js +70 -0
  104. package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js.map +1 -0
  105. package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js +80 -0
  106. package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js.map +1 -0
  107. package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoice.d.ts +1 -1
  108. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js +49 -0
  109. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js.map +1 -0
  110. package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.d.ts +1 -1
  111. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js +104 -0
  112. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js.map +1 -0
  113. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js +105 -0
  114. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js.map +1 -0
  115. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js +116 -0
  116. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js.map +1 -0
  117. package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.d.ts +1 -1
  118. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js +74 -0
  119. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js.map +1 -0
  120. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js +66 -0
  121. package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js.map +1 -0
  122. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +27 -0
  123. package/lib/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -0
  124. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +30 -0
  125. package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +1 -0
  126. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js +81 -0
  127. package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -0
  128. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +30 -0
  129. package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -0
  130. package/lib/components/FormComponents/RepeatItem/AddItemButton.js +27 -0
  131. package/lib/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -0
  132. package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js +30 -0
  133. package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js.map +1 -0
  134. package/lib/components/FormComponents/RepeatItem/RepeatField.js +31 -0
  135. package/lib/components/FormComponents/RepeatItem/RepeatField.js.map +1 -0
  136. package/lib/components/FormComponents/RepeatItem/RepeatItem.js +69 -0
  137. package/lib/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -0
  138. package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.d.ts +22 -0
  139. package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.js +29 -0
  140. package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.js.map +1 -0
  141. package/lib/components/FormComponents/SingleItem/SingleItem.js +32 -0
  142. package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -0
  143. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +63 -0
  144. package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -0
  145. package/lib/components/FormComponents/StringItem/StringField.js +30 -0
  146. package/lib/components/FormComponents/StringItem/StringField.js.map +1 -0
  147. package/lib/components/FormComponents/StringItem/StringItem.js +71 -0
  148. package/lib/components/FormComponents/StringItem/StringItem.js.map +1 -0
  149. package/lib/components/FormComponents/Tables/DeleteRowButton.js +31 -0
  150. package/lib/components/FormComponents/Tables/DeleteRowButton.js.map +1 -0
  151. package/{dist → lib}/components/FormComponents/Tables/QItemGroupTable.d.ts +1 -1
  152. package/lib/components/FormComponents/Tables/QItemGroupTable.js +99 -0
  153. package/lib/components/FormComponents/Tables/QItemGroupTable.js.map +1 -0
  154. package/{dist → lib}/components/FormComponents/Tables/QItemGroupTableRow.d.ts +1 -1
  155. package/lib/components/FormComponents/Tables/QItemGroupTableRow.js +46 -0
  156. package/lib/components/FormComponents/Tables/QItemGroupTableRow.js.map +1 -0
  157. package/lib/components/FormComponents/Tables/Table.styles.js +46 -0
  158. package/lib/components/FormComponents/Tables/Table.styles.js.map +1 -0
  159. package/lib/components/FormComponents/TextItem/TextField.js +29 -0
  160. package/lib/components/FormComponents/TextItem/TextField.js.map +1 -0
  161. package/lib/components/FormComponents/TextItem/TextItem.js +71 -0
  162. package/lib/components/FormComponents/TextItem/TextItem.js.map +1 -0
  163. package/{dist → lib}/components/FormComponents/Textfield.styles.d.ts +1 -1
  164. package/lib/components/FormComponents/Textfield.styles.js +27 -0
  165. package/lib/components/FormComponents/Textfield.styles.js.map +1 -0
  166. package/lib/components/FormComponents/TimeItem/TimeField.js +30 -0
  167. package/lib/components/FormComponents/TimeItem/TimeField.js.map +1 -0
  168. package/lib/components/FormComponents/TimeItem/TimeItem.js +52 -0
  169. package/lib/components/FormComponents/TimeItem/TimeItem.js.map +1 -0
  170. package/lib/components/FormComponents/Typography.styles.d.ts +6 -0
  171. package/lib/components/FormComponents/Typography.styles.js +23 -0
  172. package/lib/components/FormComponents/Typography.styles.js.map +1 -0
  173. package/lib/components/FormComponents/UrlItem/UrlField.js +25 -0
  174. package/lib/components/FormComponents/UrlItem/UrlField.js.map +1 -0
  175. package/lib/components/FormComponents/UrlItem/UrlItem.js +61 -0
  176. package/lib/components/FormComponents/UrlItem/UrlItem.js.map +1 -0
  177. package/lib/components/FormRenderer/BaseRenderer.d.ts +3 -0
  178. package/lib/components/FormRenderer/BaseRenderer.js +54 -0
  179. package/lib/components/FormRenderer/BaseRenderer.js.map +1 -0
  180. package/lib/components/FormRenderer/FormBodyCollapsible.js +57 -0
  181. package/lib/components/FormRenderer/FormBodyCollapsible.js.map +1 -0
  182. package/lib/components/FormRenderer/FormBodySingleCollapsible.js +39 -0
  183. package/lib/components/FormRenderer/FormBodySingleCollapsible.js.map +1 -0
  184. package/{dist → lib}/components/FormRenderer/FormBodySingleCollapsibleWrapper.d.ts +1 -1
  185. package/lib/components/FormRenderer/FormBodySingleCollapsibleWrapper.js +31 -0
  186. package/lib/components/FormRenderer/FormBodySingleCollapsibleWrapper.js.map +1 -0
  187. package/lib/components/FormRenderer/FormBodyTabbed.js +60 -0
  188. package/lib/components/FormRenderer/FormBodyTabbed.js.map +1 -0
  189. package/lib/components/FormRenderer/FormRenderer.js +54 -0
  190. package/lib/components/FormRenderer/FormRenderer.js.map +1 -0
  191. package/lib/components/FormRenderer/FormTitle.js +30 -0
  192. package/lib/components/FormRenderer/FormTitle.js.map +1 -0
  193. package/lib/components/FormRenderer/FormTopLevelItem.js +45 -0
  194. package/lib/components/FormRenderer/FormTopLevelItem.js.map +1 -0
  195. package/lib/components/FormRenderer/SmartFormsRenderer.js +37 -0
  196. package/lib/components/FormRenderer/SmartFormsRenderer.js.map +1 -0
  197. package/{dist → lib}/components/FormRenderer/index.d.ts +1 -0
  198. package/lib/components/FormRenderer/index.js +19 -0
  199. package/lib/components/FormRenderer/index.js.map +1 -0
  200. package/lib/components/Iconify/Iconify.js +26 -0
  201. package/lib/components/Iconify/Iconify.js.map +1 -0
  202. package/{dist → lib}/components/Lists.styles.d.ts +6 -6
  203. package/lib/components/Lists.styles.js +38 -0
  204. package/lib/components/Lists.styles.js.map +1 -0
  205. package/lib/components/Tabs/CompleteTabButton.js +29 -0
  206. package/lib/components/Tabs/CompleteTabButton.js.map +1 -0
  207. package/lib/components/Tabs/FormBodySingleTab.js +39 -0
  208. package/lib/components/Tabs/FormBodySingleTab.js.map +1 -0
  209. package/lib/components/Tabs/FormBodyTabList.js +52 -0
  210. package/lib/components/Tabs/FormBodyTabList.js.map +1 -0
  211. package/lib/components/index.js +18 -0
  212. package/lib/components/index.js.map +1 -0
  213. package/lib/hooks/index.d.ts +1 -0
  214. package/lib/hooks/index.js +2 -0
  215. package/lib/hooks/index.js.map +1 -0
  216. package/lib/hooks/useBackToTop.js +26 -0
  217. package/lib/hooks/useBackToTop.js.map +1 -0
  218. package/lib/hooks/useDebounce.js +38 -0
  219. package/lib/hooks/useDebounce.js.map +1 -0
  220. package/lib/hooks/useDecimalCalculatedExpression.js +50 -0
  221. package/lib/hooks/useDecimalCalculatedExpression.js.map +1 -0
  222. package/lib/hooks/useHidden.js +35 -0
  223. package/lib/hooks/useHidden.js.map +1 -0
  224. package/lib/hooks/useInitialiseGroupTable.js +36 -0
  225. package/lib/hooks/useInitialiseGroupTable.js.map +1 -0
  226. package/lib/hooks/useInitialiseRenderer.js +49 -0
  227. package/lib/hooks/useInitialiseRenderer.js.map +1 -0
  228. package/lib/hooks/useInitialiseRepeatAnswers.js +36 -0
  229. package/lib/hooks/useInitialiseRepeatAnswers.js.map +1 -0
  230. package/lib/hooks/useInitialiseRepeatGroups.js +36 -0
  231. package/lib/hooks/useInitialiseRepeatGroups.js.map +1 -0
  232. package/lib/hooks/useIntegerCalculatedExpression.js +44 -0
  233. package/lib/hooks/useIntegerCalculatedExpression.js.map +1 -0
  234. package/lib/hooks/useQueryClient.js +29 -0
  235. package/lib/hooks/useQueryClient.js.map +1 -0
  236. package/lib/hooks/useRenderingExtensions.js +30 -0
  237. package/lib/hooks/useRenderingExtensions.js.map +1 -0
  238. package/lib/hooks/useResponsive.js +37 -0
  239. package/lib/hooks/useResponsive.js.map +1 -0
  240. package/lib/hooks/useStringCalculatedExpression.js +44 -0
  241. package/lib/hooks/useStringCalculatedExpression.js.map +1 -0
  242. package/lib/hooks/useTerminologyServerQuery.js +73 -0
  243. package/lib/hooks/useTerminologyServerQuery.js.map +1 -0
  244. package/lib/hooks/useValidationError.js +38 -0
  245. package/lib/hooks/useValidationError.js.map +1 -0
  246. package/{dist → lib}/hooks/useValueSetCodings.d.ts +1 -1
  247. package/lib/hooks/useValueSetCodings.js +125 -0
  248. package/lib/hooks/useValueSetCodings.js.map +1 -0
  249. package/lib/index.d.ts +89 -0
  250. package/lib/index.js +153 -0
  251. package/lib/index.js.map +1 -0
  252. package/lib/interfaces/answerExpression.interface.js +18 -0
  253. package/lib/interfaces/answerExpression.interface.js.map +1 -0
  254. package/lib/interfaces/calculatedExpression.interface.js +2 -0
  255. package/lib/interfaces/calculatedExpression.interface.js.map +1 -0
  256. package/lib/interfaces/choice.enum.js +41 -0
  257. package/lib/interfaces/choice.enum.js.map +1 -0
  258. package/lib/interfaces/enableWhen.interface.js +18 -0
  259. package/lib/interfaces/enableWhen.interface.js.map +1 -0
  260. package/lib/interfaces/groupTable.interface.js +18 -0
  261. package/lib/interfaces/groupTable.interface.js.map +1 -0
  262. package/lib/interfaces/populate.interface.js +18 -0
  263. package/lib/interfaces/populate.interface.js.map +1 -0
  264. package/lib/interfaces/questionnaireStore.interface.js +18 -0
  265. package/lib/interfaces/questionnaireStore.interface.js.map +1 -0
  266. package/lib/interfaces/regex.interface.js +18 -0
  267. package/lib/interfaces/regex.interface.js.map +1 -0
  268. package/{dist → lib}/interfaces/renderProps.interface.d.ts +1 -1
  269. package/lib/interfaces/renderProps.interface.js +18 -0
  270. package/lib/interfaces/renderProps.interface.js.map +1 -0
  271. package/lib/interfaces/repeatGroup.interface.js +18 -0
  272. package/lib/interfaces/repeatGroup.interface.js.map +1 -0
  273. package/lib/interfaces/repeatItem.interface.js +2 -0
  274. package/lib/interfaces/repeatItem.interface.js.map +1 -0
  275. package/lib/interfaces/tab.interface.js +2 -0
  276. package/lib/interfaces/tab.interface.js.map +1 -0
  277. package/lib/interfaces/valueSet.interface.js +18 -0
  278. package/lib/interfaces/valueSet.interface.js.map +1 -0
  279. package/lib/interfaces/variables.interface.js +18 -0
  280. package/lib/interfaces/variables.interface.js.map +1 -0
  281. package/lib/stores/useConfigStore.js +17 -0
  282. package/lib/stores/useConfigStore.js.map +1 -0
  283. package/lib/stores/useQuestionnaireResponseStore.js +39 -0
  284. package/lib/stores/useQuestionnaireResponseStore.js.map +1 -0
  285. package/lib/stores/useQuestionnaireStore.js +151 -0
  286. package/lib/stores/useQuestionnaireStore.js.map +1 -0
  287. package/lib/utils/calculatedExpression.js +180 -0
  288. package/lib/utils/calculatedExpression.js.map +1 -0
  289. package/lib/utils/choice.js +160 -0
  290. package/lib/utils/choice.js.map +1 -0
  291. package/lib/utils/debounce.js +19 -0
  292. package/lib/utils/debounce.js.map +1 -0
  293. package/lib/utils/emptyResource.js +25 -0
  294. package/lib/utils/emptyResource.js.map +1 -0
  295. package/lib/utils/enableWhen.js +228 -0
  296. package/lib/utils/enableWhen.js.map +1 -0
  297. package/lib/utils/enableWhenExpression.js +76 -0
  298. package/lib/utils/enableWhenExpression.js.map +1 -0
  299. package/lib/utils/fhirpath.js +98 -0
  300. package/lib/utils/fhirpath.js.map +1 -0
  301. package/lib/utils/initialiseForm.js +45 -0
  302. package/lib/utils/initialiseForm.js.map +1 -0
  303. package/lib/utils/itemControl.js +299 -0
  304. package/lib/utils/itemControl.js.map +1 -0
  305. package/lib/utils/mapItem.js +80 -0
  306. package/lib/utils/mapItem.js.map +1 -0
  307. package/lib/utils/openChoice.js +150 -0
  308. package/lib/utils/openChoice.js.map +1 -0
  309. package/lib/utils/parseInputs.js +49 -0
  310. package/lib/utils/parseInputs.js.map +1 -0
  311. package/lib/utils/populate.js +78 -0
  312. package/lib/utils/populate.js.map +1 -0
  313. package/lib/utils/populateCallback.js +40 -0
  314. package/lib/utils/populateCallback.js.map +1 -0
  315. package/lib/utils/populateContexts.js +76 -0
  316. package/lib/utils/populateContexts.js.map +1 -0
  317. package/lib/utils/populateInputParams.js +193 -0
  318. package/lib/utils/populateInputParams.js.map +1 -0
  319. package/lib/utils/qItem.js +73 -0
  320. package/lib/utils/qItem.js.map +1 -0
  321. package/lib/utils/qrItem.js +221 -0
  322. package/lib/utils/qrItem.js.map +1 -0
  323. package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.js +43 -0
  324. package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.js.map +1 -0
  325. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +79 -0
  326. package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -0
  327. package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js +59 -0
  328. package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +1 -0
  329. package/lib/utils/questionnaireStoreUtils/extractLaunchContext.js +18 -0
  330. package/lib/utils/questionnaireStoreUtils/extractLaunchContext.js.map +1 -0
  331. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js +174 -0
  332. package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -0
  333. package/lib/utils/questionnaireStoreUtils/extractTabs.js +31 -0
  334. package/lib/utils/questionnaireStoreUtils/extractTabs.js.map +1 -0
  335. package/lib/utils/questionnaireStoreUtils/extractVariables.js +63 -0
  336. package/lib/utils/questionnaireStoreUtils/extractVariables.js.map +1 -0
  337. package/lib/utils/questionnaireStoreUtils/resolveValueSets.js +58 -0
  338. package/lib/utils/questionnaireStoreUtils/resolveValueSets.js.map +1 -0
  339. package/lib/utils/removeHidden.d.ts +16 -0
  340. package/lib/utils/removeHidden.js +104 -0
  341. package/lib/utils/removeHidden.js.map +1 -0
  342. package/lib/utils/tabs.js +190 -0
  343. package/lib/utils/tabs.js.map +1 -0
  344. package/lib/utils/valueSet.js +126 -0
  345. package/lib/utils/valueSet.js.map +1 -0
  346. package/package.json +19 -27
  347. package/src/api/populate.js +63 -0
  348. package/src/api/populate.js.map +1 -0
  349. package/src/api/populate.ts +70 -0
  350. package/src/components/Alert.styles.js +40 -0
  351. package/src/components/Alert.styles.js.map +1 -0
  352. package/src/components/Alert.styles.ts +45 -0
  353. package/src/components/BackToTopButton/BackToTopButton.js +32 -0
  354. package/src/components/BackToTopButton/BackToTopButton.js.map +1 -0
  355. package/src/components/BackToTopButton/BackToTopButton.tsx +47 -0
  356. package/src/components/Box.styles.js +30 -0
  357. package/src/components/Box.styles.js.map +1 -0
  358. package/src/components/Box.styles.ts +33 -0
  359. package/src/components/FormComponents/BooleanItem/BooleanField.js +24 -0
  360. package/src/components/FormComponents/BooleanItem/BooleanField.js.map +1 -0
  361. package/src/components/FormComponents/BooleanItem/BooleanField.tsx +44 -0
  362. package/src/components/FormComponents/BooleanItem/BooleanItem.js +49 -0
  363. package/src/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -0
  364. package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +82 -0
  365. package/src/components/FormComponents/DateItem/DateField.js +31 -0
  366. package/src/components/FormComponents/DateItem/DateField.js.map +1 -0
  367. package/src/components/FormComponents/DateItem/DateField.tsx +56 -0
  368. package/src/components/FormComponents/DateItem/DateItem.js +52 -0
  369. package/src/components/FormComponents/DateItem/DateItem.js.map +1 -0
  370. package/src/components/FormComponents/DateItem/DateItem.tsx +95 -0
  371. package/src/components/FormComponents/DateTimeItem/DateTimeField.js +33 -0
  372. package/src/components/FormComponents/DateTimeItem/DateTimeField.js.map +1 -0
  373. package/src/components/FormComponents/DateTimeItem/DateTimeField.tsx +58 -0
  374. package/src/components/FormComponents/DateTimeItem/DateTimeItem.js +52 -0
  375. package/src/components/FormComponents/DateTimeItem/DateTimeItem.js.map +1 -0
  376. package/src/components/FormComponents/DateTimeItem/DateTimeItem.tsx +94 -0
  377. package/src/components/FormComponents/DecimalItem/DecimalField.js +30 -0
  378. package/src/components/FormComponents/DecimalItem/DecimalField.js.map +1 -0
  379. package/src/components/FormComponents/DecimalItem/DecimalField.tsx +76 -0
  380. package/src/components/FormComponents/DecimalItem/DecimalItem.js +80 -0
  381. package/src/components/FormComponents/DecimalItem/DecimalItem.js.map +1 -0
  382. package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +152 -0
  383. package/src/components/FormComponents/DisplayItem/DisplayInstructions.js +26 -0
  384. package/src/components/FormComponents/DisplayItem/DisplayInstructions.js.map +1 -0
  385. package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js +23 -0
  386. package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +1 -0
  387. package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.ts +24 -0
  388. package/src/components/FormComponents/DisplayItem/DisplayInstructions.tsx +38 -0
  389. package/src/components/FormComponents/DisplayItem/DisplayItem.js +31 -0
  390. package/src/components/FormComponents/DisplayItem/DisplayItem.js.map +1 -0
  391. package/src/components/FormComponents/DisplayItem/DisplayItem.tsx +43 -0
  392. package/src/components/FormComponents/GridGroup/GridGroup.js +58 -0
  393. package/src/components/FormComponents/GridGroup/GridGroup.js.map +1 -0
  394. package/src/components/FormComponents/GridGroup/GridGroup.tsx +92 -0
  395. package/src/components/FormComponents/GridGroup/GridRow.js +55 -0
  396. package/src/components/FormComponents/GridGroup/GridRow.js.map +1 -0
  397. package/src/components/FormComponents/GridGroup/GridRow.tsx +88 -0
  398. package/src/components/FormComponents/GridGroup/GridTable.js +42 -0
  399. package/src/components/FormComponents/GridGroup/GridTable.js.map +1 -0
  400. package/src/components/FormComponents/GridGroup/GridTable.tsx +77 -0
  401. package/src/components/FormComponents/GroupItem/GroupHeading.js +39 -0
  402. package/src/components/FormComponents/GroupItem/GroupHeading.js.map +1 -0
  403. package/src/components/FormComponents/GroupItem/GroupHeading.tsx +59 -0
  404. package/src/components/FormComponents/GroupItem/GroupItem.js +62 -0
  405. package/src/components/FormComponents/GroupItem/GroupItem.js.map +1 -0
  406. package/src/components/FormComponents/GroupItem/GroupItem.styles.js +27 -0
  407. package/src/components/FormComponents/GroupItem/GroupItem.styles.js.map +1 -0
  408. package/src/components/FormComponents/GroupItem/GroupItem.styles.ts +28 -0
  409. package/src/components/FormComponents/GroupItem/GroupItem.tsx +124 -0
  410. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js +73 -0
  411. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -0
  412. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx +150 -0
  413. package/src/components/FormComponents/GroupItem/NextTabButton.js +25 -0
  414. package/src/components/FormComponents/GroupItem/NextTabButton.js.map +1 -0
  415. package/src/components/FormComponents/GroupItem/NextTabButton.tsx +43 -0
  416. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js +55 -0
  417. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +1 -0
  418. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.tsx +76 -0
  419. package/src/components/FormComponents/IntegerItem/IntegerField.js +30 -0
  420. package/src/components/FormComponents/IntegerItem/IntegerField.js.map +1 -0
  421. package/src/components/FormComponents/IntegerItem/IntegerField.tsx +76 -0
  422. package/src/components/FormComponents/IntegerItem/IntegerItem.js +73 -0
  423. package/src/components/FormComponents/IntegerItem/IntegerItem.js.map +1 -0
  424. package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +140 -0
  425. package/src/components/FormComponents/Item.styles.js +27 -0
  426. package/src/components/FormComponents/Item.styles.js.map +1 -0
  427. package/src/components/FormComponents/Item.styles.ts +30 -0
  428. package/src/components/FormComponents/ItemParts/ContextDisplayItem.js +29 -0
  429. package/src/components/FormComponents/ItemParts/ContextDisplayItem.js.map +1 -0
  430. package/src/components/FormComponents/ItemParts/ContextDisplayItem.tsx +38 -0
  431. package/src/components/FormComponents/ItemParts/FadingCheckIcon.js +26 -0
  432. package/src/components/FormComponents/ItemParts/FadingCheckIcon.js.map +1 -0
  433. package/src/components/FormComponents/ItemParts/FadingCheckIcon.tsx +36 -0
  434. package/src/components/FormComponents/ItemParts/ItemFieldGrid.js +31 -0
  435. package/src/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -0
  436. package/src/components/FormComponents/ItemParts/ItemFieldGrid.tsx +47 -0
  437. package/src/components/FormComponents/ItemParts/ItemLabelText.js +45 -0
  438. package/src/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -0
  439. package/src/components/FormComponents/ItemParts/ItemLabelText.tsx +58 -0
  440. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js +32 -0
  441. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -0
  442. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx +47 -0
  443. package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.js +24 -0
  444. package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.js.map +1 -0
  445. package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.tsx +44 -0
  446. package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js +33 -0
  447. package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js.map +1 -0
  448. package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.tsx +62 -0
  449. package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js +31 -0
  450. package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js.map +1 -0
  451. package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.tsx +54 -0
  452. package/src/components/FormComponents/Lists.styles.js +38 -0
  453. package/src/components/FormComponents/Lists.styles.js.map +1 -0
  454. package/src/components/FormComponents/Lists.styles.ts +39 -0
  455. package/src/components/FormComponents/QItemChoice/QItemChoice.js +61 -0
  456. package/src/components/FormComponents/QItemChoice/QItemChoice.js.map +1 -0
  457. package/src/components/FormComponents/QItemChoice/QItemChoice.tsx +130 -0
  458. package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js +85 -0
  459. package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js.map +1 -0
  460. package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.tsx +178 -0
  461. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js +70 -0
  462. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js.map +1 -0
  463. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.tsx +131 -0
  464. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js +66 -0
  465. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js.map +1 -0
  466. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.tsx +126 -0
  467. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js +70 -0
  468. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js.map +1 -0
  469. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.tsx +125 -0
  470. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js +70 -0
  471. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js.map +1 -0
  472. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.tsx +129 -0
  473. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js +24 -0
  474. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js.map +1 -0
  475. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.tsx +41 -0
  476. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js +70 -0
  477. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js.map +1 -0
  478. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.tsx +130 -0
  479. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js +80 -0
  480. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js.map +1 -0
  481. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.tsx +162 -0
  482. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js +49 -0
  483. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js.map +1 -0
  484. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.tsx +104 -0
  485. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js +104 -0
  486. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js.map +1 -0
  487. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.tsx +207 -0
  488. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js +105 -0
  489. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js.map +1 -0
  490. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.tsx +194 -0
  491. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js +116 -0
  492. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js.map +1 -0
  493. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.tsx +190 -0
  494. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js +74 -0
  495. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js.map +1 -0
  496. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.tsx +149 -0
  497. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js +66 -0
  498. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js.map +1 -0
  499. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.tsx +138 -0
  500. package/src/components/FormComponents/RepeatGroup/AddItemButton.js +27 -0
  501. package/src/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -0
  502. package/src/components/FormComponents/RepeatGroup/AddItemButton.tsx +47 -0
  503. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js +30 -0
  504. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +1 -0
  505. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.tsx +46 -0
  506. package/src/components/FormComponents/RepeatGroup/RepeatGroup.js +81 -0
  507. package/src/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -0
  508. package/src/components/FormComponents/RepeatGroup/RepeatGroup.tsx +125 -0
  509. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js +30 -0
  510. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -0
  511. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +66 -0
  512. package/src/components/FormComponents/RepeatItem/AddItemButton.js +27 -0
  513. package/src/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -0
  514. package/src/components/FormComponents/RepeatItem/AddItemButton.tsx +47 -0
  515. package/src/components/FormComponents/RepeatItem/DeleteItemButton.js +30 -0
  516. package/src/components/FormComponents/RepeatItem/DeleteItemButton.js.map +1 -0
  517. package/src/components/FormComponents/RepeatItem/DeleteItemButton.tsx +46 -0
  518. package/src/components/FormComponents/RepeatItem/RepeatField.js +31 -0
  519. package/src/components/FormComponents/RepeatItem/RepeatField.js.map +1 -0
  520. package/src/components/FormComponents/RepeatItem/RepeatField.tsx +61 -0
  521. package/src/components/FormComponents/RepeatItem/RepeatItem.js +69 -0
  522. package/src/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -0
  523. package/src/components/FormComponents/RepeatItem/RepeatItem.styles.js +29 -0
  524. package/src/components/FormComponents/RepeatItem/RepeatItem.styles.js.map +1 -0
  525. package/src/components/FormComponents/RepeatItem/RepeatItem.styles.tsx +32 -0
  526. package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +116 -0
  527. package/src/components/FormComponents/SingleItem/SingleItem.js +32 -0
  528. package/src/components/FormComponents/SingleItem/SingleItem.js.map +1 -0
  529. package/src/components/FormComponents/SingleItem/SingleItem.tsx +62 -0
  530. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js +63 -0
  531. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -0
  532. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +171 -0
  533. package/src/components/FormComponents/StringItem/StringField.js +30 -0
  534. package/src/components/FormComponents/StringItem/StringField.js.map +1 -0
  535. package/src/components/FormComponents/StringItem/StringField.tsx +76 -0
  536. package/src/components/FormComponents/StringItem/StringItem.js +71 -0
  537. package/src/components/FormComponents/StringItem/StringItem.js.map +1 -0
  538. package/src/components/FormComponents/StringItem/StringItem.tsx +131 -0
  539. package/src/components/FormComponents/Tables/DeleteRowButton.js +31 -0
  540. package/src/components/FormComponents/Tables/DeleteRowButton.js.map +1 -0
  541. package/src/components/FormComponents/Tables/DeleteRowButton.tsx +47 -0
  542. package/src/components/FormComponents/Tables/QItemGroupTable.js +99 -0
  543. package/src/components/FormComponents/Tables/QItemGroupTable.js.map +1 -0
  544. package/src/components/FormComponents/Tables/QItemGroupTable.tsx +171 -0
  545. package/src/components/FormComponents/Tables/QItemGroupTableRow.js +46 -0
  546. package/src/components/FormComponents/Tables/QItemGroupTableRow.js.map +1 -0
  547. package/src/components/FormComponents/Tables/QItemGroupTableRow.tsx +77 -0
  548. package/src/components/FormComponents/Tables/Table.styles.js +46 -0
  549. package/src/components/FormComponents/Tables/Table.styles.js.map +1 -0
  550. package/src/components/FormComponents/Tables/Table.styles.tsx +51 -0
  551. package/src/components/FormComponents/TextItem/TextField.js +29 -0
  552. package/src/components/FormComponents/TextItem/TextField.js.map +1 -0
  553. package/src/components/FormComponents/TextItem/TextField.tsx +74 -0
  554. package/src/components/FormComponents/TextItem/TextItem.js +71 -0
  555. package/src/components/FormComponents/TextItem/TextItem.js.map +1 -0
  556. package/src/components/FormComponents/TextItem/TextItem.tsx +128 -0
  557. package/src/components/FormComponents/Textfield.styles.js +27 -0
  558. package/src/components/FormComponents/Textfield.styles.js.map +1 -0
  559. package/src/components/FormComponents/Textfield.styles.ts +28 -0
  560. package/src/components/FormComponents/TimeItem/TimeField.js +30 -0
  561. package/src/components/FormComponents/TimeItem/TimeField.js.map +1 -0
  562. package/src/components/FormComponents/TimeItem/TimeField.tsx +54 -0
  563. package/src/components/FormComponents/TimeItem/TimeItem.js +52 -0
  564. package/src/components/FormComponents/TimeItem/TimeItem.js.map +1 -0
  565. package/src/components/FormComponents/TimeItem/TimeItem.tsx +94 -0
  566. package/src/components/FormComponents/Typography.styles.js +23 -0
  567. package/src/components/FormComponents/Typography.styles.js.map +1 -0
  568. package/src/components/FormComponents/Typography.styles.ts +24 -0
  569. package/src/components/FormComponents/UrlItem/UrlField.js +25 -0
  570. package/src/components/FormComponents/UrlItem/UrlField.js.map +1 -0
  571. package/src/components/FormComponents/UrlItem/UrlField.tsx +66 -0
  572. package/src/components/FormComponents/UrlItem/UrlItem.js +61 -0
  573. package/src/components/FormComponents/UrlItem/UrlItem.js.map +1 -0
  574. package/src/components/FormComponents/UrlItem/UrlItem.tsx +118 -0
  575. package/src/components/FormRenderer/BaseRenderer.tsx +82 -0
  576. package/src/components/FormRenderer/FormBodyCollapsible.js +57 -0
  577. package/src/components/FormRenderer/FormBodyCollapsible.js.map +1 -0
  578. package/src/components/FormRenderer/FormBodyCollapsible.tsx +96 -0
  579. package/src/components/FormRenderer/FormBodySingleCollapsible.js +39 -0
  580. package/src/components/FormRenderer/FormBodySingleCollapsible.js.map +1 -0
  581. package/src/components/FormRenderer/FormBodySingleCollapsible.tsx +76 -0
  582. package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.js +31 -0
  583. package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.js.map +1 -0
  584. package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.tsx +60 -0
  585. package/src/components/FormRenderer/FormBodyTabbed.js +60 -0
  586. package/src/components/FormRenderer/FormBodyTabbed.js.map +1 -0
  587. package/src/components/FormRenderer/FormBodyTabbed.tsx +106 -0
  588. package/src/components/FormRenderer/FormTitle.js +30 -0
  589. package/src/components/FormRenderer/FormTitle.js.map +1 -0
  590. package/src/components/FormRenderer/FormTitle.tsx +44 -0
  591. package/src/components/FormRenderer/FormTopLevelItem.js +45 -0
  592. package/src/components/FormRenderer/FormTopLevelItem.js.map +1 -0
  593. package/src/components/FormRenderer/FormTopLevelItem.tsx +93 -0
  594. package/src/components/FormRenderer/SmartFormsRenderer.js +37 -0
  595. package/src/components/FormRenderer/SmartFormsRenderer.js.map +1 -0
  596. package/src/components/FormRenderer/SmartFormsRenderer.tsx +59 -0
  597. package/src/components/FormRenderer/index.js +18 -0
  598. package/src/components/FormRenderer/index.js.map +1 -0
  599. package/src/components/FormRenderer/index.ts +19 -0
  600. package/src/components/Iconify/Iconify.js +26 -0
  601. package/src/components/Iconify/Iconify.js.map +1 -0
  602. package/src/components/Iconify/Iconify.tsx +38 -0
  603. package/src/components/Lists.styles.js +38 -0
  604. package/src/components/Lists.styles.js.map +1 -0
  605. package/src/components/Lists.styles.ts +39 -0
  606. package/src/components/Tabs/CompleteTabButton.js +29 -0
  607. package/src/components/Tabs/CompleteTabButton.js.map +1 -0
  608. package/src/components/Tabs/CompleteTabButton.tsx +42 -0
  609. package/src/components/Tabs/FormBodySingleTab.js +39 -0
  610. package/src/components/Tabs/FormBodySingleTab.js.map +1 -0
  611. package/src/components/Tabs/FormBodySingleTab.tsx +67 -0
  612. package/src/components/Tabs/FormBodyTabList.js +52 -0
  613. package/src/components/Tabs/FormBodyTabList.js.map +1 -0
  614. package/src/components/Tabs/FormBodyTabList.tsx +83 -0
  615. package/src/components/index.js +18 -0
  616. package/src/components/index.js.map +1 -0
  617. package/src/components/index.ts +18 -0
  618. package/src/hooks/index.ts +1 -0
  619. package/src/hooks/useBackToTop.js +26 -0
  620. package/src/hooks/useBackToTop.js.map +1 -0
  621. package/src/hooks/useBackToTop.ts +29 -0
  622. package/src/hooks/useDebounce.js +38 -0
  623. package/src/hooks/useDebounce.js.map +1 -0
  624. package/src/hooks/useDebounce.ts +45 -0
  625. package/src/hooks/useDecimalCalculatedExpression.js +50 -0
  626. package/src/hooks/useDecimalCalculatedExpression.js.map +1 -0
  627. package/src/hooks/useDecimalCalculatedExpression.ts +80 -0
  628. package/src/hooks/useHidden.js +35 -0
  629. package/src/hooks/useHidden.js.map +1 -0
  630. package/src/hooks/useHidden.ts +40 -0
  631. package/src/hooks/useInitialiseGroupTable.js +36 -0
  632. package/src/hooks/useInitialiseGroupTable.js.map +1 -0
  633. package/src/hooks/useInitialiseGroupTable.ts +42 -0
  634. package/src/hooks/useInitialiseRenderer.js +49 -0
  635. package/src/hooks/useInitialiseRenderer.js.map +1 -0
  636. package/src/hooks/useInitialiseRenderer.ts +62 -0
  637. package/src/hooks/useInitialiseRepeatAnswers.js +36 -0
  638. package/src/hooks/useInitialiseRepeatAnswers.js.map +1 -0
  639. package/src/hooks/useInitialiseRepeatAnswers.ts +42 -0
  640. package/src/hooks/useInitialiseRepeatGroups.js +36 -0
  641. package/src/hooks/useInitialiseRepeatGroups.js.map +1 -0
  642. package/src/hooks/useInitialiseRepeatGroups.ts +42 -0
  643. package/src/hooks/useIntegerCalculatedExpression.js +44 -0
  644. package/src/hooks/useIntegerCalculatedExpression.js.map +1 -0
  645. package/src/hooks/useIntegerCalculatedExpression.ts +72 -0
  646. package/src/hooks/useQueryClient.js +29 -0
  647. package/src/hooks/useQueryClient.js.map +1 -0
  648. package/src/hooks/useQueryClient.ts +31 -0
  649. package/src/hooks/useRenderingExtensions.js +30 -0
  650. package/src/hooks/useRenderingExtensions.js.map +1 -0
  651. package/src/hooks/useRenderingExtensions.ts +52 -0
  652. package/src/hooks/useResponsive.js +37 -0
  653. package/src/hooks/useResponsive.js.map +1 -0
  654. package/src/hooks/useResponsive.ts +51 -0
  655. package/src/hooks/useStringCalculatedExpression.js +44 -0
  656. package/src/hooks/useStringCalculatedExpression.js.map +1 -0
  657. package/src/hooks/useStringCalculatedExpression.ts +71 -0
  658. package/src/hooks/useTerminologyServerQuery.js +73 -0
  659. package/src/hooks/useTerminologyServerQuery.js.map +1 -0
  660. package/src/hooks/useTerminologyServerQuery.ts +98 -0
  661. package/src/hooks/useValidationError.js +38 -0
  662. package/src/hooks/useValidationError.js.map +1 -0
  663. package/src/hooks/useValidationError.ts +48 -0
  664. package/src/hooks/useValueSetCodings.js +125 -0
  665. package/src/hooks/useValueSetCodings.js.map +1 -0
  666. package/src/hooks/useValueSetCodings.ts +150 -0
  667. package/src/index.js +2 -0
  668. package/src/index.js.map +1 -0
  669. package/src/index.ts +163 -0
  670. package/src/interfaces/answerExpression.interface.js +18 -0
  671. package/src/interfaces/answerExpression.interface.js.map +1 -0
  672. package/src/interfaces/answerExpression.interface.ts +23 -0
  673. package/src/interfaces/calculatedExpression.interface.js +2 -0
  674. package/src/interfaces/calculatedExpression.interface.js.map +1 -0
  675. package/src/interfaces/calculatedExpression.interface.ts +4 -0
  676. package/src/interfaces/choice.enum.js +41 -0
  677. package/src/interfaces/choice.enum.js.map +1 -0
  678. package/src/interfaces/choice.enum.ts +40 -0
  679. package/src/interfaces/enableWhen.interface.js +18 -0
  680. package/src/interfaces/enableWhen.interface.js.map +1 -0
  681. package/src/interfaces/enableWhen.interface.ts +40 -0
  682. package/src/interfaces/groupTable.interface.js +18 -0
  683. package/src/interfaces/groupTable.interface.js.map +1 -0
  684. package/src/interfaces/groupTable.interface.ts +23 -0
  685. package/src/interfaces/populate.interface.js +18 -0
  686. package/src/interfaces/populate.interface.js.map +1 -0
  687. package/src/interfaces/populate.interface.ts +218 -0
  688. package/src/interfaces/questionnaireStore.interface.js +18 -0
  689. package/src/interfaces/questionnaireStore.interface.js.map +1 -0
  690. package/src/interfaces/questionnaireStore.interface.ts +36 -0
  691. package/src/interfaces/regex.interface.js +18 -0
  692. package/src/interfaces/regex.interface.js.map +1 -0
  693. package/src/interfaces/regex.interface.ts +21 -0
  694. package/src/interfaces/renderProps.interface.js +18 -0
  695. package/src/interfaces/renderProps.interface.js.map +1 -0
  696. package/src/interfaces/renderProps.interface.ts +34 -0
  697. package/src/interfaces/repeatGroup.interface.js +18 -0
  698. package/src/interfaces/repeatGroup.interface.js.map +1 -0
  699. package/src/interfaces/repeatGroup.interface.ts +28 -0
  700. package/src/interfaces/repeatItem.interface.js +2 -0
  701. package/src/interfaces/repeatItem.interface.js.map +1 -0
  702. package/src/interfaces/repeatItem.interface.ts +6 -0
  703. package/src/interfaces/tab.interface.js +2 -0
  704. package/src/interfaces/tab.interface.js.map +1 -0
  705. package/src/interfaces/tab.interface.ts +18 -0
  706. package/src/interfaces/valueSet.interface.js +18 -0
  707. package/src/interfaces/valueSet.interface.js.map +1 -0
  708. package/src/interfaces/valueSet.interface.ts +23 -0
  709. package/src/interfaces/variables.interface.js +18 -0
  710. package/src/interfaces/variables.interface.js.map +1 -0
  711. package/src/interfaces/variables.interface.ts +28 -0
  712. package/src/setup-jest.js +2 -0
  713. package/src/setup-jest.js.map +1 -0
  714. package/src/stores/useConfigStore.js +17 -0
  715. package/src/stores/useConfigStore.js.map +1 -0
  716. package/src/stores/useConfigStore.ts +36 -0
  717. package/src/stores/useQuestionnaireResponseStore.js +39 -0
  718. package/src/stores/useQuestionnaireResponseStore.js.map +1 -0
  719. package/src/stores/useQuestionnaireResponseStore.ts +58 -0
  720. package/src/stores/useQuestionnaireStore.js +151 -0
  721. package/src/stores/useQuestionnaireStore.js.map +1 -0
  722. package/src/stores/useQuestionnaireStore.ts +232 -0
  723. package/src/stories/SmartFormsRenderer.stories.js +90 -0
  724. package/src/stories/SmartFormsRenderer.stories.js.map +1 -0
  725. package/src/stories/SmartFormsRenderer.stories.ts +104 -0
  726. package/src/stories/assets/Q715.json +15086 -0
  727. package/src/stories/assets/QTestGrid.json +166 -0
  728. package/src/stories/assets/R715.json +311 -0
  729. package/src/stories/assets/RTestGrid.json +34 -0
  730. package/src/utils/calculatedExpression.js +180 -0
  731. package/src/utils/calculatedExpression.js.map +1 -0
  732. package/src/utils/calculatedExpression.ts +299 -0
  733. package/src/utils/choice.js +160 -0
  734. package/src/utils/choice.js.map +1 -0
  735. package/src/utils/choice.ts +194 -0
  736. package/src/utils/debounce.js +19 -0
  737. package/src/utils/debounce.js.map +1 -0
  738. package/src/utils/debounce.ts +20 -0
  739. package/src/utils/emptyResource.js +25 -0
  740. package/src/utils/emptyResource.js.map +1 -0
  741. package/src/utils/emptyResource.ts +28 -0
  742. package/src/utils/enableWhen.js +228 -0
  743. package/src/utils/enableWhen.js.map +1 -0
  744. package/src/utils/enableWhen.ts +303 -0
  745. package/src/utils/enableWhenExpression.js +76 -0
  746. package/src/utils/enableWhenExpression.js.map +1 -0
  747. package/src/utils/enableWhenExpression.ts +123 -0
  748. package/src/utils/fhirpath.js +98 -0
  749. package/src/utils/fhirpath.js.map +1 -0
  750. package/src/utils/fhirpath.ts +164 -0
  751. package/src/utils/initialiseForm.js +45 -0
  752. package/src/utils/initialiseForm.js.map +1 -0
  753. package/src/utils/initialiseForm.ts +81 -0
  754. package/src/utils/itemControl.js +299 -0
  755. package/src/utils/itemControl.js.map +1 -0
  756. package/src/utils/itemControl.ts +367 -0
  757. package/src/utils/mapItem.js +80 -0
  758. package/src/utils/mapItem.js.map +1 -0
  759. package/src/utils/mapItem.ts +97 -0
  760. package/src/utils/openChoice.js +150 -0
  761. package/src/utils/openChoice.js.map +1 -0
  762. package/src/utils/openChoice.ts +179 -0
  763. package/src/utils/parseInputs.js +49 -0
  764. package/src/utils/parseInputs.js.map +1 -0
  765. package/src/utils/parseInputs.ts +58 -0
  766. package/src/utils/populate.js +78 -0
  767. package/src/utils/populate.js.map +1 -0
  768. package/src/utils/populate.ts +117 -0
  769. package/src/utils/populateCallback.js +40 -0
  770. package/src/utils/populateCallback.js.map +1 -0
  771. package/src/utils/populateCallback.ts +53 -0
  772. package/src/utils/populateContexts.js +76 -0
  773. package/src/utils/populateContexts.js.map +1 -0
  774. package/src/utils/populateContexts.ts +112 -0
  775. package/src/utils/populateInputParams.js +193 -0
  776. package/src/utils/populateInputParams.js.map +1 -0
  777. package/src/utils/populateInputParams.ts +242 -0
  778. package/src/utils/qItem.js +73 -0
  779. package/src/utils/qItem.js.map +1 -0
  780. package/src/utils/qItem.ts +103 -0
  781. package/src/utils/qrItem.js +221 -0
  782. package/src/utils/qrItem.js.map +1 -0
  783. package/src/utils/qrItem.ts +250 -0
  784. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js +47 -0
  785. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js.map +1 -0
  786. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.ts +52 -0
  787. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js +79 -0
  788. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -0
  789. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +96 -0
  790. package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js +59 -0
  791. package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +1 -0
  792. package/src/utils/questionnaireStoreUtils/extractContainedValueSets.ts +74 -0
  793. package/src/utils/questionnaireStoreUtils/extractLaunchContext.js +18 -0
  794. package/src/utils/questionnaireStoreUtils/extractLaunchContext.js.map +1 -0
  795. package/src/utils/questionnaireStoreUtils/extractLaunchContext.ts +21 -0
  796. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js +174 -0
  797. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -0
  798. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.ts +239 -0
  799. package/src/utils/questionnaireStoreUtils/extractTabs.js +31 -0
  800. package/src/utils/questionnaireStoreUtils/extractTabs.js.map +1 -0
  801. package/src/utils/questionnaireStoreUtils/extractTabs.ts +37 -0
  802. package/src/utils/questionnaireStoreUtils/extractVariables.js +63 -0
  803. package/src/utils/questionnaireStoreUtils/extractVariables.js.map +1 -0
  804. package/src/utils/questionnaireStoreUtils/extractVariables.ts +77 -0
  805. package/src/utils/questionnaireStoreUtils/resolveValueSets.js +58 -0
  806. package/src/utils/questionnaireStoreUtils/resolveValueSets.js.map +1 -0
  807. package/src/utils/questionnaireStoreUtils/resolveValueSets.ts +68 -0
  808. package/src/utils/removeHidden.ts +162 -0
  809. package/src/utils/tabs.js +190 -0
  810. package/src/utils/tabs.js.map +1 -0
  811. package/src/utils/tabs.ts +255 -0
  812. package/src/utils/valueSet.js +126 -0
  813. package/src/utils/valueSet.js.map +1 -0
  814. package/src/utils/valueSet.ts +159 -0
  815. package/tsconfig.json +21 -0
  816. package/dist/components/FormComponents/Item.styles.d.ts +0 -6
  817. package/dist/components/FormComponents/RepeatItem/RepeatItem.styles.d.ts +0 -22
  818. package/dist/components/FormComponents/Typography.styles.d.ts +0 -6
  819. package/dist/index.d.ts +0 -1
  820. package/dist/index.esm.js +0 -10482
  821. package/dist/index.esm.js.map +0 -1
  822. package/dist/index.js +0 -10527
  823. package/dist/index.js.map +0 -1
  824. package/dist/stories/SmartFormsRenderer.stories.d.ts +0 -14
  825. /package/{dist → lib}/api/populate.d.ts +0 -0
  826. /package/{dist → lib}/components/BackToTopButton/BackToTopButton.d.ts +0 -0
  827. /package/{dist → lib}/components/FormComponents/BooleanItem/BooleanField.d.ts +0 -0
  828. /package/{dist → lib}/components/FormComponents/BooleanItem/BooleanItem.d.ts +0 -0
  829. /package/{dist → lib}/components/FormComponents/DateItem/DateField.d.ts +0 -0
  830. /package/{dist → lib}/components/FormComponents/DateItem/DateItem.d.ts +0 -0
  831. /package/{dist → lib}/components/FormComponents/DateTimeItem/DateTimeField.d.ts +0 -0
  832. /package/{dist → lib}/components/FormComponents/DateTimeItem/DateTimeItem.d.ts +0 -0
  833. /package/{dist → lib}/components/FormComponents/DecimalItem/DecimalField.d.ts +0 -0
  834. /package/{dist → lib}/components/FormComponents/DecimalItem/DecimalItem.d.ts +0 -0
  835. /package/{dist → lib}/components/FormComponents/DisplayItem/DisplayInstructions.d.ts +0 -0
  836. /package/{dist → lib}/components/FormComponents/DisplayItem/DisplayItem.d.ts +0 -0
  837. /package/{dist → lib}/components/FormComponents/GridGroup/GridTable.d.ts +0 -0
  838. /package/{dist → lib}/components/FormComponents/GroupItem/GroupHeading.d.ts +0 -0
  839. /package/{dist → lib}/components/FormComponents/GroupItem/NextTabButton.d.ts +0 -0
  840. /package/{dist → lib}/components/FormComponents/GroupItem/NextTabButtonWrapper.d.ts +0 -0
  841. /package/{dist → lib}/components/FormComponents/IntegerItem/IntegerField.d.ts +0 -0
  842. /package/{dist → lib}/components/FormComponents/IntegerItem/IntegerItem.d.ts +0 -0
  843. /package/{dist → lib}/components/FormComponents/ItemParts/ContextDisplayItem.d.ts +0 -0
  844. /package/{dist → lib}/components/FormComponents/ItemParts/FadingCheckIcon.d.ts +0 -0
  845. /package/{dist → lib}/components/FormComponents/ItemParts/ItemFieldGrid.d.ts +0 -0
  846. /package/{dist → lib}/components/FormComponents/ItemParts/ItemLabelText.d.ts +0 -0
  847. /package/{dist → lib}/components/FormComponents/ItemParts/ItemLabelWrapper.d.ts +0 -0
  848. /package/{dist → lib}/components/FormComponents/ItemParts/QItemCheckboxSingle.d.ts +0 -0
  849. /package/{dist → lib}/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.d.ts +0 -0
  850. /package/{dist → lib}/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.d.ts +0 -0
  851. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.d.ts +0 -0
  852. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.d.ts +0 -0
  853. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.d.ts +0 -0
  854. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.d.ts +0 -0
  855. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.d.ts +0 -0
  856. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.d.ts +0 -0
  857. /package/{dist → lib}/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.d.ts +0 -0
  858. /package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.d.ts +0 -0
  859. /package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.d.ts +0 -0
  860. /package/{dist → lib}/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.d.ts +0 -0
  861. /package/{dist → lib}/components/FormComponents/RepeatGroup/AddItemButton.d.ts +0 -0
  862. /package/{dist → lib}/components/FormComponents/RepeatGroup/DeleteItemButton.d.ts +0 -0
  863. /package/{dist → lib}/components/FormComponents/RepeatGroup/RepeatGroup.d.ts +0 -0
  864. /package/{dist → lib}/components/FormComponents/RepeatGroup/RepeatGroupItem.d.ts +0 -0
  865. /package/{dist → lib}/components/FormComponents/RepeatItem/AddItemButton.d.ts +0 -0
  866. /package/{dist → lib}/components/FormComponents/RepeatItem/DeleteItemButton.d.ts +0 -0
  867. /package/{dist → lib}/components/FormComponents/RepeatItem/RepeatField.d.ts +0 -0
  868. /package/{dist → lib}/components/FormComponents/RepeatItem/RepeatItem.d.ts +0 -0
  869. /package/{dist → lib}/components/FormComponents/SingleItem/SingleItem.d.ts +0 -0
  870. /package/{dist → lib}/components/FormComponents/SingleItem/SingleItemSwitcher.d.ts +0 -0
  871. /package/{dist → lib}/components/FormComponents/StringItem/StringField.d.ts +0 -0
  872. /package/{dist → lib}/components/FormComponents/StringItem/StringItem.d.ts +0 -0
  873. /package/{dist → lib}/components/FormComponents/Tables/DeleteRowButton.d.ts +0 -0
  874. /package/{dist → lib}/components/FormComponents/Tables/Table.styles.d.ts +0 -0
  875. /package/{dist → lib}/components/FormComponents/TextItem/TextField.d.ts +0 -0
  876. /package/{dist → lib}/components/FormComponents/TextItem/TextItem.d.ts +0 -0
  877. /package/{dist → lib}/components/FormComponents/TimeItem/TimeField.d.ts +0 -0
  878. /package/{dist → lib}/components/FormComponents/TimeItem/TimeItem.d.ts +0 -0
  879. /package/{dist → lib}/components/FormComponents/UrlItem/UrlField.d.ts +0 -0
  880. /package/{dist → lib}/components/FormComponents/UrlItem/UrlItem.d.ts +0 -0
  881. /package/{dist → lib}/components/FormRenderer/FormBodyCollapsible.d.ts +0 -0
  882. /package/{dist → lib}/components/FormRenderer/FormBodySingleCollapsible.d.ts +0 -0
  883. /package/{dist → lib}/components/FormRenderer/FormBodyTabbed.d.ts +0 -0
  884. /package/{dist → lib}/components/FormRenderer/FormRenderer.d.ts +0 -0
  885. /package/{dist → lib}/components/FormRenderer/FormTitle.d.ts +0 -0
  886. /package/{dist → lib}/components/FormRenderer/FormTopLevelItem.d.ts +0 -0
  887. /package/{dist → lib}/components/FormRenderer/SmartFormsRenderer.d.ts +0 -0
  888. /package/{dist → lib}/components/Iconify/Iconify.d.ts +0 -0
  889. /package/{dist → lib}/components/Tabs/CompleteTabButton.d.ts +0 -0
  890. /package/{dist → lib}/components/Tabs/FormBodySingleTab.d.ts +0 -0
  891. /package/{dist → lib}/components/Tabs/FormBodyTabList.d.ts +0 -0
  892. /package/{dist → lib}/components/index.d.ts +0 -0
  893. /package/{dist → lib}/hooks/useBackToTop.d.ts +0 -0
  894. /package/{dist → lib}/hooks/useDebounce.d.ts +0 -0
  895. /package/{dist → lib}/hooks/useDecimalCalculatedExpression.d.ts +0 -0
  896. /package/{dist → lib}/hooks/useHidden.d.ts +0 -0
  897. /package/{dist → lib}/hooks/useInitialiseGroupTable.d.ts +0 -0
  898. /package/{dist → lib}/hooks/useInitialiseRenderer.d.ts +0 -0
  899. /package/{dist → lib}/hooks/useInitialiseRepeatAnswers.d.ts +0 -0
  900. /package/{dist → lib}/hooks/useInitialiseRepeatGroups.d.ts +0 -0
  901. /package/{dist → lib}/hooks/useIntegerCalculatedExpression.d.ts +0 -0
  902. /package/{dist → lib}/hooks/useQueryClient.d.ts +0 -0
  903. /package/{dist → lib}/hooks/useRenderingExtensions.d.ts +0 -0
  904. /package/{dist → lib}/hooks/useResponsive.d.ts +0 -0
  905. /package/{dist → lib}/hooks/useStringCalculatedExpression.d.ts +0 -0
  906. /package/{dist → lib}/hooks/useTerminologyServerQuery.d.ts +0 -0
  907. /package/{dist → lib}/hooks/useValidationError.d.ts +0 -0
  908. /package/{dist → lib}/interfaces/answerExpression.interface.d.ts +0 -0
  909. /package/{dist → lib}/interfaces/calculatedExpression.interface.d.ts +0 -0
  910. /package/{dist → lib}/interfaces/choice.enum.d.ts +0 -0
  911. /package/{dist → lib}/interfaces/enableWhen.interface.d.ts +0 -0
  912. /package/{dist → lib}/interfaces/groupTable.interface.d.ts +0 -0
  913. /package/{dist → lib}/interfaces/populate.interface.d.ts +0 -0
  914. /package/{dist → lib}/interfaces/questionnaireStore.interface.d.ts +0 -0
  915. /package/{dist → lib}/interfaces/regex.interface.d.ts +0 -0
  916. /package/{dist → lib}/interfaces/repeatGroup.interface.d.ts +0 -0
  917. /package/{dist → lib}/interfaces/repeatItem.interface.d.ts +0 -0
  918. /package/{dist → lib}/interfaces/tab.interface.d.ts +0 -0
  919. /package/{dist → lib}/interfaces/valueSet.interface.d.ts +0 -0
  920. /package/{dist → lib}/interfaces/variables.interface.d.ts +0 -0
  921. /package/{dist → lib}/stores/useConfigStore.d.ts +0 -0
  922. /package/{dist → lib}/stores/useQuestionnaireResponseStore.d.ts +0 -0
  923. /package/{dist → lib}/stores/useQuestionnaireStore.d.ts +0 -0
  924. /package/{dist → lib}/utils/calculatedExpression.d.ts +0 -0
  925. /package/{dist → lib}/utils/choice.d.ts +0 -0
  926. /package/{dist → lib}/utils/debounce.d.ts +0 -0
  927. /package/{dist → lib}/utils/emptyResource.d.ts +0 -0
  928. /package/{dist → lib}/utils/enableWhen.d.ts +0 -0
  929. /package/{dist → lib}/utils/enableWhenExpression.d.ts +0 -0
  930. /package/{dist → lib}/utils/fhirpath.d.ts +0 -0
  931. /package/{dist → lib}/utils/initialiseForm.d.ts +0 -0
  932. /package/{dist → lib}/utils/itemControl.d.ts +0 -0
  933. /package/{dist → lib}/utils/mapItem.d.ts +0 -0
  934. /package/{dist → lib}/utils/openChoice.d.ts +0 -0
  935. /package/{dist → lib}/utils/parseInputs.d.ts +0 -0
  936. /package/{dist → lib}/utils/populate.d.ts +0 -0
  937. /package/{dist → lib}/utils/populateCallback.d.ts +0 -0
  938. /package/{dist → lib}/utils/populateContexts.d.ts +0 -0
  939. /package/{dist → lib}/utils/populateInputParams.d.ts +0 -0
  940. /package/{dist → lib}/utils/qItem.d.ts +0 -0
  941. /package/{dist → lib}/utils/qrItem.d.ts +0 -0
  942. /package/{dist → lib}/utils/questionnaireStoreUtils/addAdditionalVariables.d.ts +0 -0
  943. /package/{dist → lib}/utils/questionnaireStoreUtils/createQuestionaireModel.d.ts +0 -0
  944. /package/{dist → lib}/utils/questionnaireStoreUtils/extractContainedValueSets.d.ts +0 -0
  945. /package/{dist → lib}/utils/questionnaireStoreUtils/extractLaunchContext.d.ts +0 -0
  946. /package/{dist → lib}/utils/questionnaireStoreUtils/extractOtherExtensions.d.ts +0 -0
  947. /package/{dist → lib}/utils/questionnaireStoreUtils/extractTabs.d.ts +0 -0
  948. /package/{dist → lib}/utils/questionnaireStoreUtils/extractVariables.d.ts +0 -0
  949. /package/{dist → lib}/utils/questionnaireStoreUtils/resolveValueSets.d.ts +0 -0
  950. /package/{dist → lib}/utils/tabs.d.ts +0 -0
  951. /package/{dist → lib}/utils/valueSet.d.ts +0 -0
  952. /package/{dist/setup-jest.d.ts → src/setup-jest.ts} +0 -0
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { hasHiddenExtension } from '../utils/itemControl';
18
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
19
+ import { isHiddenByEnableWhens } from '../utils/qItem';
20
+ function useHidden(qItem) {
21
+ const enableWhenIsActivated = useQuestionnaireStore((state) => state.enableWhenIsActivated);
22
+ const enableWhenItems = useQuestionnaireStore((state) => state.enableWhenItems);
23
+ const enableWhenExpressions = useQuestionnaireStore((state) => state.enableWhenExpressions);
24
+ if (hasHiddenExtension(qItem)) {
25
+ return true;
26
+ }
27
+ return isHiddenByEnableWhens({
28
+ linkId: qItem.linkId,
29
+ enableWhenIsActivated,
30
+ enableWhenItems,
31
+ enableWhenExpressions
32
+ });
33
+ }
34
+ export default useHidden;
35
+ //# sourceMappingURL=useHidden.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useHidden.js","sourceRoot":"","sources":["useHidden.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,SAAS,SAAS,CAAC,KAAwB;IACzC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC5F,MAAM,eAAe,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAChF,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE5F,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE;QAC7B,OAAO,IAAI,CAAC;KACb;IAED,OAAO,qBAAqB,CAAC;QAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import type { QuestionnaireItem } from 'fhir/r4';
19
+ import { hasHiddenExtension } from '../utils/itemControl';
20
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
21
+ import { isHiddenByEnableWhens } from '../utils/qItem';
22
+
23
+ function useHidden(qItem: QuestionnaireItem): boolean {
24
+ const enableWhenIsActivated = useQuestionnaireStore((state) => state.enableWhenIsActivated);
25
+ const enableWhenItems = useQuestionnaireStore((state) => state.enableWhenItems);
26
+ const enableWhenExpressions = useQuestionnaireStore((state) => state.enableWhenExpressions);
27
+
28
+ if (hasHiddenExtension(qItem)) {
29
+ return true;
30
+ }
31
+
32
+ return isHiddenByEnableWhens({
33
+ linkId: qItem.linkId,
34
+ enableWhenIsActivated,
35
+ enableWhenItems,
36
+ enableWhenExpressions
37
+ });
38
+ }
39
+
40
+ export default useHidden;
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { nanoid } from 'nanoid';
18
+ function useInitialiseGroupTable(qrItems) {
19
+ let initialGroupTableRows = [
20
+ {
21
+ nanoId: nanoid(),
22
+ qrItem: null
23
+ }
24
+ ];
25
+ if (qrItems.length > 0) {
26
+ initialGroupTableRows = qrItems.map((qrItem) => {
27
+ return {
28
+ nanoId: nanoid(),
29
+ qrItem
30
+ };
31
+ });
32
+ }
33
+ return initialGroupTableRows;
34
+ }
35
+ export default useInitialiseGroupTable;
36
+ //# sourceMappingURL=useInitialiseGroupTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitialiseGroupTable.js","sourceRoot":"","sources":["useInitialiseGroupTable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,SAAS,uBAAuB,CAAC,OAAoC;IACnE,IAAI,qBAAqB,GAAoB;QAC3C;YACE,MAAM,EAAE,MAAM,EAAE;YAChB,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7C,OAAO;gBACL,MAAM,EAAE,MAAM,EAAE;gBAChB,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import type { QuestionnaireResponseItem } from 'fhir/r4';
19
+ import { nanoid } from 'nanoid';
20
+ import type { GroupTableRow } from '../interfaces/groupTable.interface';
21
+
22
+ function useInitialiseGroupTable(qrItems: QuestionnaireResponseItem[]): GroupTableRow[] {
23
+ let initialGroupTableRows: GroupTableRow[] = [
24
+ {
25
+ nanoId: nanoid(),
26
+ qrItem: null
27
+ }
28
+ ];
29
+
30
+ if (qrItems.length > 0) {
31
+ initialGroupTableRows = qrItems.map((qrItem) => {
32
+ return {
33
+ nanoId: nanoid(),
34
+ qrItem
35
+ };
36
+ });
37
+ }
38
+
39
+ return initialGroupTableRows;
40
+ }
41
+
42
+ export default useInitialiseGroupTable;
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { useLayoutEffect, useState } from 'react';
18
+ import { createQuestionnaireResponse } from '../utils/qrItem';
19
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
20
+ import useQuestionnaireResponseStore from '../stores/useQuestionnaireResponseStore';
21
+ function useInitialiseRenderer(questionnaire, questionnaireResponse, additionalVariables) {
22
+ const buildSourceQuestionnaire = useQuestionnaireStore((state) => state.buildSourceQuestionnaire);
23
+ const updatePopulatedProperties = useQuestionnaireStore((state) => state.updatePopulatedProperties);
24
+ const buildSourceResponse = useQuestionnaireResponseStore((state) => state.buildSourceResponse);
25
+ const populateResponse = useQuestionnaireResponseStore((state) => state.populateResponse);
26
+ const [loading, setLoading] = useState(true);
27
+ useLayoutEffect(() => {
28
+ setLoading(true);
29
+ buildSourceQuestionnaire(questionnaire, questionnaireResponse, additionalVariables).then(() => {
30
+ buildSourceResponse(createQuestionnaireResponse(questionnaire));
31
+ if (questionnaireResponse) {
32
+ const updatedResponse = updatePopulatedProperties(questionnaireResponse);
33
+ populateResponse(updatedResponse);
34
+ }
35
+ setLoading(false);
36
+ });
37
+ }, [
38
+ questionnaire,
39
+ questionnaireResponse,
40
+ buildSourceQuestionnaire,
41
+ buildSourceResponse,
42
+ populateResponse,
43
+ updatePopulatedProperties,
44
+ additionalVariables
45
+ ]);
46
+ return loading;
47
+ }
48
+ export default useInitialiseRenderer;
49
+ //# sourceMappingURL=useInitialiseRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitialiseRenderer.js","sourceRoot":"","sources":["useInitialiseRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AACpE,OAAO,6BAA6B,MAAM,yCAAyC,CAAC;AAEpF,SAAS,qBAAqB,CAC5B,aAA4B,EAC5B,qBAA6C,EAC7C,mBAA4C;IAE5C,MAAM,wBAAwB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAClG,MAAM,yBAAyB,GAAG,qBAAqB,CACrD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,yBAAyB,CAC3C,CAAC;IACF,MAAM,mBAAmB,GAAG,6BAA6B,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAChG,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAE1F,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7C,eAAe,CAAC,GAAG,EAAE;QACnB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,wBAAwB,CAAC,aAAa,EAAE,qBAAqB,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAC5F,mBAAmB,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,CAAC;YAEhE,IAAI,qBAAqB,EAAE;gBACzB,MAAM,eAAe,GAAG,yBAAyB,CAAC,qBAAqB,CAAC,CAAC;gBACzE,gBAAgB,CAAC,eAAe,CAAC,CAAC;aACnC;YACD,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE;QACD,aAAa;QACb,qBAAqB;QACrB,wBAAwB;QACxB,mBAAmB;QACnB,gBAAgB;QAChB,yBAAyB;QACzB,mBAAmB;KACpB,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,62 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import type { Questionnaire, QuestionnaireResponse } from 'fhir/r4';
19
+ import { useLayoutEffect, useState } from 'react';
20
+ import { createQuestionnaireResponse } from '../utils/qrItem';
21
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
22
+ import useQuestionnaireResponseStore from '../stores/useQuestionnaireResponseStore';
23
+
24
+ function useInitialiseRenderer(
25
+ questionnaire: Questionnaire,
26
+ questionnaireResponse?: QuestionnaireResponse,
27
+ additionalVariables?: Record<string, object>
28
+ ): boolean {
29
+ const buildSourceQuestionnaire = useQuestionnaireStore((state) => state.buildSourceQuestionnaire);
30
+ const updatePopulatedProperties = useQuestionnaireStore(
31
+ (state) => state.updatePopulatedProperties
32
+ );
33
+ const buildSourceResponse = useQuestionnaireResponseStore((state) => state.buildSourceResponse);
34
+ const populateResponse = useQuestionnaireResponseStore((state) => state.populateResponse);
35
+
36
+ const [loading, setLoading] = useState(true);
37
+
38
+ useLayoutEffect(() => {
39
+ setLoading(true);
40
+ buildSourceQuestionnaire(questionnaire, questionnaireResponse, additionalVariables).then(() => {
41
+ buildSourceResponse(createQuestionnaireResponse(questionnaire));
42
+
43
+ if (questionnaireResponse) {
44
+ const updatedResponse = updatePopulatedProperties(questionnaireResponse);
45
+ populateResponse(updatedResponse);
46
+ }
47
+ setLoading(false);
48
+ });
49
+ }, [
50
+ questionnaire,
51
+ questionnaireResponse,
52
+ buildSourceQuestionnaire,
53
+ buildSourceResponse,
54
+ populateResponse,
55
+ updatePopulatedProperties,
56
+ additionalVariables
57
+ ]);
58
+
59
+ return loading;
60
+ }
61
+
62
+ export default useInitialiseRenderer;
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { nanoid } from 'nanoid';
18
+ function useInitialiseRepeatAnswers(qrItem) {
19
+ let initialRepeatAnswers = [
20
+ {
21
+ nanoId: nanoid(),
22
+ answer: null
23
+ }
24
+ ];
25
+ if (qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer) {
26
+ initialRepeatAnswers = qrItem.answer.map((answer) => {
27
+ return {
28
+ nanoId: nanoid(),
29
+ answer
30
+ };
31
+ });
32
+ }
33
+ return initialRepeatAnswers;
34
+ }
35
+ export default useInitialiseRepeatAnswers;
36
+ //# sourceMappingURL=useInitialiseRepeatAnswers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitialiseRepeatAnswers.js","sourceRoot":"","sources":["useInitialiseRepeatAnswers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,SAAS,0BAA0B,CAAC,MAAiC;IACnE,IAAI,oBAAoB,GAAmB;QACzC;YACE,MAAM,EAAE,MAAM,EAAE;YAChB,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,EAAE;QAClB,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAClD,OAAO;gBACL,MAAM,EAAE,MAAM,EAAE;gBAChB,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import type { QuestionnaireResponseItem } from 'fhir/r4';
19
+ import type { RepeatAnswer } from '../interfaces/repeatItem.interface';
20
+ import { nanoid } from 'nanoid';
21
+
22
+ function useInitialiseRepeatAnswers(qrItem: QuestionnaireResponseItem): RepeatAnswer[] {
23
+ let initialRepeatAnswers: RepeatAnswer[] = [
24
+ {
25
+ nanoId: nanoid(),
26
+ answer: null
27
+ }
28
+ ];
29
+
30
+ if (qrItem?.answer) {
31
+ initialRepeatAnswers = qrItem.answer.map((answer) => {
32
+ return {
33
+ nanoId: nanoid(),
34
+ answer
35
+ };
36
+ });
37
+ }
38
+
39
+ return initialRepeatAnswers;
40
+ }
41
+
42
+ export default useInitialiseRepeatAnswers;
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { nanoid } from 'nanoid';
18
+ function useInitialiseRepeatGroups(qrItems) {
19
+ let initialRepeatGroupAnswers = [
20
+ {
21
+ nanoId: nanoid(),
22
+ qrItem: null
23
+ }
24
+ ];
25
+ if (qrItems.length > 0) {
26
+ initialRepeatGroupAnswers = qrItems.map((qrItem) => {
27
+ return {
28
+ nanoId: nanoid(),
29
+ qrItem
30
+ };
31
+ });
32
+ }
33
+ return initialRepeatGroupAnswers;
34
+ }
35
+ export default useInitialiseRepeatGroups;
36
+ //# sourceMappingURL=useInitialiseRepeatGroups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitialiseRepeatGroups.js","sourceRoot":"","sources":["useInitialiseRepeatGroups.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,SAAS,yBAAyB,CAAC,OAAoC;IACrE,IAAI,yBAAyB,GAAwB;QACnD;YACE,MAAM,EAAE,MAAM,EAAE;YAChB,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACjD,OAAO;gBACL,MAAM,EAAE,MAAM,EAAE;gBAChB,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import type { QuestionnaireResponseItem } from 'fhir/r4';
19
+ import { nanoid } from 'nanoid';
20
+ import type { RepeatGroupSingle } from '../interfaces/repeatGroup.interface';
21
+
22
+ function useInitialiseRepeatGroups(qrItems: QuestionnaireResponseItem[]): RepeatGroupSingle[] {
23
+ let initialRepeatGroupAnswers: RepeatGroupSingle[] = [
24
+ {
25
+ nanoId: nanoid(),
26
+ qrItem: null
27
+ }
28
+ ];
29
+
30
+ if (qrItems.length > 0) {
31
+ initialRepeatGroupAnswers = qrItems.map((qrItem) => {
32
+ return {
33
+ nanoId: nanoid(),
34
+ qrItem
35
+ };
36
+ });
37
+ }
38
+
39
+ return initialRepeatGroupAnswers;
40
+ }
41
+
42
+ export default useInitialiseRepeatGroups;
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { useEffect, useState } from 'react';
18
+ import { createEmptyQrItemWithUnit } from '../utils/qrItem';
19
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
20
+ function useIntegerCalculatedExpression(props) {
21
+ const { qItem, inputValue, displayUnit, setInputValue, onQrItemChange } = props;
22
+ const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
23
+ const [calcExpUpdated, setCalcExpUpdated] = useState(false);
24
+ useEffect(() => {
25
+ const calcExpression = calculatedExpressions[qItem.linkId];
26
+ // only update if calculated value is different from current value
27
+ if ((calcExpression === null || calcExpression === void 0 ? void 0 : calcExpression.value) !== inputValue && typeof (calcExpression === null || calcExpression === void 0 ? void 0 : calcExpression.value) === 'number') {
28
+ // update ui to show calculated value changes
29
+ setCalcExpUpdated(true);
30
+ setTimeout(() => {
31
+ setCalcExpUpdated(false);
32
+ }, 500);
33
+ // update questionnaireResponse
34
+ setInputValue(calcExpression.value);
35
+ onQrItemChange(Object.assign(Object.assign({}, createEmptyQrItemWithUnit(qItem, displayUnit)), { answer: [{ valueInteger: calcExpression.value }] }));
36
+ }
37
+ },
38
+ // Only trigger this effect if calculatedExpression of item changes
39
+ // eslint-disable-next-line react-hooks/exhaustive-deps
40
+ [calculatedExpressions]);
41
+ return { calcExpUpdated: calcExpUpdated };
42
+ }
43
+ export default useIntegerCalculatedExpression;
44
+ //# sourceMappingURL=useIntegerCalculatedExpression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIntegerCalculatedExpression.js","sourceRoot":"","sources":["useIntegerCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AAcpE,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAEhF,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE5F,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;QACH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3D,kEAAkE;QAClE,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,MAAK,UAAU,IAAI,OAAO,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA,KAAK,QAAQ,EAAE;YACrF,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE;gBACd,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,+BAA+B;YAC/B,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,cAAc,iCACT,yBAAyB,CAAC,KAAK,EAAE,WAAW,CAAC,KAChD,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,IAChD,CAAC;SACJ;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
@@ -0,0 +1,72 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import { useEffect, useState } from 'react';
19
+ import { createEmptyQrItemWithUnit } from '../utils/qrItem';
20
+ import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
21
+ import useQuestionnaireStore from '../stores/useQuestionnaireStore';
22
+
23
+ interface UseIntegerCalculatedExpression {
24
+ calcExpUpdated: boolean;
25
+ }
26
+
27
+ interface useIntegerCalculatedExpressionProps {
28
+ qItem: QuestionnaireItem;
29
+ inputValue: number;
30
+ displayUnit: string;
31
+ setInputValue: (value: number) => void;
32
+ onQrItemChange: (qrItem: QuestionnaireResponseItem) => void;
33
+ }
34
+
35
+ function useIntegerCalculatedExpression(
36
+ props: useIntegerCalculatedExpressionProps
37
+ ): UseIntegerCalculatedExpression {
38
+ const { qItem, inputValue, displayUnit, setInputValue, onQrItemChange } = props;
39
+
40
+ const calculatedExpressions = useQuestionnaireStore((state) => state.calculatedExpressions);
41
+
42
+ const [calcExpUpdated, setCalcExpUpdated] = useState(false);
43
+
44
+ useEffect(
45
+ () => {
46
+ const calcExpression = calculatedExpressions[qItem.linkId];
47
+
48
+ // only update if calculated value is different from current value
49
+ if (calcExpression?.value !== inputValue && typeof calcExpression?.value === 'number') {
50
+ // update ui to show calculated value changes
51
+ setCalcExpUpdated(true);
52
+ setTimeout(() => {
53
+ setCalcExpUpdated(false);
54
+ }, 500);
55
+
56
+ // update questionnaireResponse
57
+ setInputValue(calcExpression.value);
58
+ onQrItemChange({
59
+ ...createEmptyQrItemWithUnit(qItem, displayUnit),
60
+ answer: [{ valueInteger: calcExpression.value }]
61
+ });
62
+ }
63
+ },
64
+ // Only trigger this effect if calculatedExpression of item changes
65
+ // eslint-disable-next-line react-hooks/exhaustive-deps
66
+ [calculatedExpressions]
67
+ );
68
+
69
+ return { calcExpUpdated: calcExpUpdated };
70
+ }
71
+
72
+ export default useIntegerCalculatedExpression;
@@ -0,0 +1,29 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { QueryClient } from '@tanstack/react-query';
18
+ function useQueryClient() {
19
+ return new QueryClient({
20
+ defaultOptions: {
21
+ queries: {
22
+ refetchOnWindowFocus: false,
23
+ keepPreviousData: true
24
+ }
25
+ }
26
+ });
27
+ }
28
+ export default useQueryClient;
29
+ //# sourceMappingURL=useQueryClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useQueryClient.js","sourceRoot":"","sources":["useQueryClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,SAAS,cAAc;IACrB,OAAO,IAAI,WAAW,CAAC;QACrB,cAAc,EAAE;YACd,OAAO,EAAE;gBACP,oBAAoB,EAAE,KAAK;gBAC3B,gBAAgB,EAAE,IAAI;aACvB;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,31 @@
1
+ /*
2
+ * Copyright 2023 Commonwealth Scientific and Industrial Research
3
+ * Organisation (CSIRO) ABN 41 687 119 230.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ import { QueryClient } from '@tanstack/react-query';
19
+
20
+ function useQueryClient() {
21
+ return new QueryClient({
22
+ defaultOptions: {
23
+ queries: {
24
+ refetchOnWindowFocus: false,
25
+ keepPreviousData: true
26
+ }
27
+ }
28
+ });
29
+ }
30
+
31
+ export default useQueryClient;