@aehrc/smart-forms-renderer 0.4.0 → 0.5.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 (363) hide show
  1. package/lib/components/FormRenderer/SmartFormsRenderer.js +4 -2
  2. package/lib/components/FormRenderer/SmartFormsRenderer.js.map +1 -1
  3. package/lib/theme/Theme.d.ts +38 -0
  4. package/lib/theme/Theme.js +39 -0
  5. package/lib/theme/Theme.js.map +1 -0
  6. package/lib/theme/globalStyles.d.ts +2 -0
  7. package/lib/theme/globalStyles.js +64 -0
  8. package/lib/theme/globalStyles.js.map +1 -0
  9. package/lib/theme/overrides/Accordion.d.ts +14 -0
  10. package/{src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js → lib/theme/overrides/Accordion.js} +15 -7
  11. package/lib/theme/overrides/Accordion.js.map +1 -0
  12. package/lib/theme/overrides/Autocomplete.d.ts +10 -0
  13. package/{src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js → lib/theme/overrides/Autocomplete.js} +12 -7
  14. package/lib/theme/overrides/Autocomplete.js.map +1 -0
  15. package/lib/theme/overrides/Backdrop.d.ts +13 -0
  16. package/{src/components/FormComponents/ItemParts/FadingCheckIcon.js → lib/theme/overrides/Backdrop.js} +15 -9
  17. package/lib/theme/overrides/Backdrop.js.map +1 -0
  18. package/lib/theme/overrides/Button.d.ts +33 -0
  19. package/lib/theme/overrides/Button.js +52 -0
  20. package/lib/theme/overrides/Button.js.map +1 -0
  21. package/lib/theme/overrides/Card.d.ts +35 -0
  22. package/lib/theme/overrides/Card.js +49 -0
  23. package/lib/theme/overrides/Card.js.map +1 -0
  24. package/lib/theme/overrides/Input.d.ts +64 -0
  25. package/lib/theme/overrides/Input.js +81 -0
  26. package/lib/theme/overrides/Input.js.map +1 -0
  27. package/lib/theme/overrides/Overrides.d.ts +3 -0
  28. package/{src/components/BackToTopButton/BackToTopButton.js → lib/theme/overrides/Overrides.js} +14 -15
  29. package/lib/theme/overrides/Overrides.js.map +1 -0
  30. package/lib/theme/overrides/Paper.d.ts +12 -0
  31. package/{src/hooks/useQueryClient.js → lib/theme/overrides/Paper.js} +12 -10
  32. package/lib/theme/overrides/Paper.js.map +1 -0
  33. package/lib/theme/overrides/SpeedDial.d.ts +16 -0
  34. package/{src/hooks/useInitialiseRepeatAnswers.js → lib/theme/overrides/SpeedDial.js} +16 -18
  35. package/lib/theme/overrides/SpeedDial.js.map +1 -0
  36. package/lib/theme/overrides/Table.d.ts +11 -0
  37. package/{src/components/FormRenderer/index.js → lib/theme/overrides/Table.js} +13 -2
  38. package/lib/theme/overrides/Table.js.map +1 -0
  39. package/lib/theme/overrides/Typography.d.ts +13 -0
  40. package/lib/theme/overrides/Typography.js +31 -0
  41. package/lib/theme/overrides/Typography.js.map +1 -0
  42. package/lib/theme/palette.d.ts +28 -0
  43. package/lib/theme/palette.js +67 -0
  44. package/lib/theme/palette.js.map +1 -0
  45. package/lib/theme/shadows.d.ts +2 -0
  46. package/lib/theme/shadows.js +52 -0
  47. package/lib/theme/shadows.js.map +1 -0
  48. package/lib/theme/typography.d.ts +139 -0
  49. package/lib/theme/typography.js +80 -0
  50. package/lib/theme/typography.js.map +1 -0
  51. package/package.json +1 -1
  52. package/src/components/FormRenderer/SmartFormsRenderer.tsx +6 -3
  53. package/src/theme/Theme.tsx +107 -0
  54. package/src/theme/globalStyles.tsx +68 -0
  55. package/src/{components/FormComponents/Item.styles.js → theme/overrides/Accordion.ts} +18 -11
  56. package/src/{interfaces/answerExpression.interface.js → theme/overrides/Autocomplete.ts} +14 -2
  57. package/src/theme/overrides/Backdrop.ts +34 -0
  58. package/src/theme/overrides/Button.ts +54 -0
  59. package/src/theme/overrides/Card.ts +51 -0
  60. package/src/theme/overrides/Input.ts +83 -0
  61. package/src/theme/overrides/Overrides.ts +45 -0
  62. package/src/{interfaces/enableWhen.interface.js → theme/overrides/Paper.ts} +15 -2
  63. package/src/{hooks/useInitialiseGroupTable.js → theme/overrides/SpeedDial.ts} +17 -17
  64. package/src/{hooks/useBackToTop.js → theme/overrides/Table.ts} +14 -9
  65. package/src/{components/FormComponents/Typography.styles.js → theme/overrides/Typography.ts} +17 -7
  66. package/src/theme/palette.ts +100 -0
  67. package/src/theme/shadows.ts +54 -0
  68. package/src/theme/typography.ts +114 -0
  69. package/src/api/populate.js +0 -63
  70. package/src/api/populate.js.map +0 -1
  71. package/src/components/Alert.styles.js +0 -40
  72. package/src/components/Alert.styles.js.map +0 -1
  73. package/src/components/BackToTopButton/BackToTopButton.js.map +0 -1
  74. package/src/components/Box.styles.js +0 -30
  75. package/src/components/Box.styles.js.map +0 -1
  76. package/src/components/FormComponents/BooleanItem/BooleanField.js +0 -24
  77. package/src/components/FormComponents/BooleanItem/BooleanField.js.map +0 -1
  78. package/src/components/FormComponents/BooleanItem/BooleanItem.js +0 -49
  79. package/src/components/FormComponents/BooleanItem/BooleanItem.js.map +0 -1
  80. package/src/components/FormComponents/DateItem/DateField.js +0 -31
  81. package/src/components/FormComponents/DateItem/DateField.js.map +0 -1
  82. package/src/components/FormComponents/DateItem/DateItem.js +0 -52
  83. package/src/components/FormComponents/DateItem/DateItem.js.map +0 -1
  84. package/src/components/FormComponents/DateTimeItem/DateTimeField.js +0 -33
  85. package/src/components/FormComponents/DateTimeItem/DateTimeField.js.map +0 -1
  86. package/src/components/FormComponents/DateTimeItem/DateTimeItem.js +0 -52
  87. package/src/components/FormComponents/DateTimeItem/DateTimeItem.js.map +0 -1
  88. package/src/components/FormComponents/DecimalItem/DecimalField.js +0 -30
  89. package/src/components/FormComponents/DecimalItem/DecimalField.js.map +0 -1
  90. package/src/components/FormComponents/DecimalItem/DecimalItem.js +0 -80
  91. package/src/components/FormComponents/DecimalItem/DecimalItem.js.map +0 -1
  92. package/src/components/FormComponents/DisplayItem/DisplayInstructions.js +0 -26
  93. package/src/components/FormComponents/DisplayItem/DisplayInstructions.js.map +0 -1
  94. package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +0 -1
  95. package/src/components/FormComponents/DisplayItem/DisplayItem.js +0 -31
  96. package/src/components/FormComponents/DisplayItem/DisplayItem.js.map +0 -1
  97. package/src/components/FormComponents/GridGroup/GridGroup.js +0 -58
  98. package/src/components/FormComponents/GridGroup/GridGroup.js.map +0 -1
  99. package/src/components/FormComponents/GridGroup/GridRow.js +0 -55
  100. package/src/components/FormComponents/GridGroup/GridRow.js.map +0 -1
  101. package/src/components/FormComponents/GridGroup/GridTable.js +0 -42
  102. package/src/components/FormComponents/GridGroup/GridTable.js.map +0 -1
  103. package/src/components/FormComponents/GroupItem/GroupHeading.js +0 -39
  104. package/src/components/FormComponents/GroupItem/GroupHeading.js.map +0 -1
  105. package/src/components/FormComponents/GroupItem/GroupItem.js +0 -62
  106. package/src/components/FormComponents/GroupItem/GroupItem.js.map +0 -1
  107. package/src/components/FormComponents/GroupItem/GroupItem.styles.js +0 -27
  108. package/src/components/FormComponents/GroupItem/GroupItem.styles.js.map +0 -1
  109. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js +0 -73
  110. package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +0 -1
  111. package/src/components/FormComponents/GroupItem/NextTabButton.js +0 -25
  112. package/src/components/FormComponents/GroupItem/NextTabButton.js.map +0 -1
  113. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js +0 -55
  114. package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +0 -1
  115. package/src/components/FormComponents/IntegerItem/IntegerField.js +0 -30
  116. package/src/components/FormComponents/IntegerItem/IntegerField.js.map +0 -1
  117. package/src/components/FormComponents/IntegerItem/IntegerItem.js +0 -73
  118. package/src/components/FormComponents/IntegerItem/IntegerItem.js.map +0 -1
  119. package/src/components/FormComponents/Item.styles.js.map +0 -1
  120. package/src/components/FormComponents/ItemParts/ContextDisplayItem.js +0 -29
  121. package/src/components/FormComponents/ItemParts/ContextDisplayItem.js.map +0 -1
  122. package/src/components/FormComponents/ItemParts/FadingCheckIcon.js.map +0 -1
  123. package/src/components/FormComponents/ItemParts/ItemFieldGrid.js +0 -31
  124. package/src/components/FormComponents/ItemParts/ItemFieldGrid.js.map +0 -1
  125. package/src/components/FormComponents/ItemParts/ItemLabelText.js +0 -45
  126. package/src/components/FormComponents/ItemParts/ItemLabelText.js.map +0 -1
  127. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js +0 -32
  128. package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +0 -1
  129. package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.js +0 -24
  130. package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.js.map +0 -1
  131. package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js +0 -33
  132. package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js.map +0 -1
  133. package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js +0 -31
  134. package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js.map +0 -1
  135. package/src/components/FormComponents/Lists.styles.js +0 -38
  136. package/src/components/FormComponents/Lists.styles.js.map +0 -1
  137. package/src/components/FormComponents/QItemChoice/QItemChoice.js +0 -61
  138. package/src/components/FormComponents/QItemChoice/QItemChoice.js.map +0 -1
  139. package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js +0 -85
  140. package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js.map +0 -1
  141. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js +0 -70
  142. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js.map +0 -1
  143. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js +0 -66
  144. package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js.map +0 -1
  145. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js +0 -70
  146. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js.map +0 -1
  147. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js +0 -70
  148. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js.map +0 -1
  149. package/src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js.map +0 -1
  150. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js +0 -70
  151. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js.map +0 -1
  152. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js +0 -80
  153. package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js.map +0 -1
  154. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js +0 -49
  155. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js.map +0 -1
  156. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js +0 -104
  157. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js.map +0 -1
  158. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js +0 -105
  159. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js.map +0 -1
  160. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js +0 -116
  161. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js.map +0 -1
  162. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js +0 -74
  163. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js.map +0 -1
  164. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js +0 -66
  165. package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js.map +0 -1
  166. package/src/components/FormComponents/RepeatGroup/AddItemButton.js +0 -27
  167. package/src/components/FormComponents/RepeatGroup/AddItemButton.js.map +0 -1
  168. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js +0 -30
  169. package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +0 -1
  170. package/src/components/FormComponents/RepeatGroup/RepeatGroup.js +0 -81
  171. package/src/components/FormComponents/RepeatGroup/RepeatGroup.js.map +0 -1
  172. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js +0 -30
  173. package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +0 -1
  174. package/src/components/FormComponents/RepeatItem/AddItemButton.js +0 -27
  175. package/src/components/FormComponents/RepeatItem/AddItemButton.js.map +0 -1
  176. package/src/components/FormComponents/RepeatItem/DeleteItemButton.js +0 -30
  177. package/src/components/FormComponents/RepeatItem/DeleteItemButton.js.map +0 -1
  178. package/src/components/FormComponents/RepeatItem/RepeatField.js +0 -31
  179. package/src/components/FormComponents/RepeatItem/RepeatField.js.map +0 -1
  180. package/src/components/FormComponents/RepeatItem/RepeatItem.js +0 -69
  181. package/src/components/FormComponents/RepeatItem/RepeatItem.js.map +0 -1
  182. package/src/components/FormComponents/RepeatItem/RepeatItem.styles.js +0 -29
  183. package/src/components/FormComponents/RepeatItem/RepeatItem.styles.js.map +0 -1
  184. package/src/components/FormComponents/SingleItem/SingleItem.js +0 -32
  185. package/src/components/FormComponents/SingleItem/SingleItem.js.map +0 -1
  186. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js +0 -63
  187. package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +0 -1
  188. package/src/components/FormComponents/StringItem/StringField.js +0 -30
  189. package/src/components/FormComponents/StringItem/StringField.js.map +0 -1
  190. package/src/components/FormComponents/StringItem/StringItem.js +0 -71
  191. package/src/components/FormComponents/StringItem/StringItem.js.map +0 -1
  192. package/src/components/FormComponents/Tables/DeleteRowButton.js +0 -31
  193. package/src/components/FormComponents/Tables/DeleteRowButton.js.map +0 -1
  194. package/src/components/FormComponents/Tables/QItemGroupTable.js +0 -99
  195. package/src/components/FormComponents/Tables/QItemGroupTable.js.map +0 -1
  196. package/src/components/FormComponents/Tables/QItemGroupTableRow.js +0 -46
  197. package/src/components/FormComponents/Tables/QItemGroupTableRow.js.map +0 -1
  198. package/src/components/FormComponents/Tables/Table.styles.js +0 -46
  199. package/src/components/FormComponents/Tables/Table.styles.js.map +0 -1
  200. package/src/components/FormComponents/TextItem/TextField.js +0 -29
  201. package/src/components/FormComponents/TextItem/TextField.js.map +0 -1
  202. package/src/components/FormComponents/TextItem/TextItem.js +0 -71
  203. package/src/components/FormComponents/TextItem/TextItem.js.map +0 -1
  204. package/src/components/FormComponents/Textfield.styles.js +0 -27
  205. package/src/components/FormComponents/Textfield.styles.js.map +0 -1
  206. package/src/components/FormComponents/TimeItem/TimeField.js +0 -30
  207. package/src/components/FormComponents/TimeItem/TimeField.js.map +0 -1
  208. package/src/components/FormComponents/TimeItem/TimeItem.js +0 -52
  209. package/src/components/FormComponents/TimeItem/TimeItem.js.map +0 -1
  210. package/src/components/FormComponents/Typography.styles.js.map +0 -1
  211. package/src/components/FormComponents/UrlItem/UrlField.js +0 -25
  212. package/src/components/FormComponents/UrlItem/UrlField.js.map +0 -1
  213. package/src/components/FormComponents/UrlItem/UrlItem.js +0 -61
  214. package/src/components/FormComponents/UrlItem/UrlItem.js.map +0 -1
  215. package/src/components/FormRenderer/FormBodyCollapsible.js +0 -57
  216. package/src/components/FormRenderer/FormBodyCollapsible.js.map +0 -1
  217. package/src/components/FormRenderer/FormBodySingleCollapsible.js +0 -39
  218. package/src/components/FormRenderer/FormBodySingleCollapsible.js.map +0 -1
  219. package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.js +0 -31
  220. package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.js.map +0 -1
  221. package/src/components/FormRenderer/FormBodyTabbed.js +0 -60
  222. package/src/components/FormRenderer/FormBodyTabbed.js.map +0 -1
  223. package/src/components/FormRenderer/FormTitle.js +0 -30
  224. package/src/components/FormRenderer/FormTitle.js.map +0 -1
  225. package/src/components/FormRenderer/FormTopLevelItem.js +0 -45
  226. package/src/components/FormRenderer/FormTopLevelItem.js.map +0 -1
  227. package/src/components/FormRenderer/SmartFormsRenderer.js +0 -37
  228. package/src/components/FormRenderer/SmartFormsRenderer.js.map +0 -1
  229. package/src/components/FormRenderer/index.js.map +0 -1
  230. package/src/components/Iconify/Iconify.js +0 -26
  231. package/src/components/Iconify/Iconify.js.map +0 -1
  232. package/src/components/Lists.styles.js +0 -38
  233. package/src/components/Lists.styles.js.map +0 -1
  234. package/src/components/Tabs/CompleteTabButton.js +0 -29
  235. package/src/components/Tabs/CompleteTabButton.js.map +0 -1
  236. package/src/components/Tabs/FormBodySingleTab.js +0 -39
  237. package/src/components/Tabs/FormBodySingleTab.js.map +0 -1
  238. package/src/components/Tabs/FormBodyTabList.js +0 -52
  239. package/src/components/Tabs/FormBodyTabList.js.map +0 -1
  240. package/src/components/index.js +0 -18
  241. package/src/components/index.js.map +0 -1
  242. package/src/hooks/useBackToTop.js.map +0 -1
  243. package/src/hooks/useDebounce.js +0 -38
  244. package/src/hooks/useDebounce.js.map +0 -1
  245. package/src/hooks/useDecimalCalculatedExpression.js +0 -50
  246. package/src/hooks/useDecimalCalculatedExpression.js.map +0 -1
  247. package/src/hooks/useHidden.js +0 -35
  248. package/src/hooks/useHidden.js.map +0 -1
  249. package/src/hooks/useInitialiseGroupTable.js.map +0 -1
  250. package/src/hooks/useInitialiseRenderer.js +0 -49
  251. package/src/hooks/useInitialiseRenderer.js.map +0 -1
  252. package/src/hooks/useInitialiseRepeatAnswers.js.map +0 -1
  253. package/src/hooks/useInitialiseRepeatGroups.js +0 -36
  254. package/src/hooks/useInitialiseRepeatGroups.js.map +0 -1
  255. package/src/hooks/useIntegerCalculatedExpression.js +0 -44
  256. package/src/hooks/useIntegerCalculatedExpression.js.map +0 -1
  257. package/src/hooks/useQueryClient.js.map +0 -1
  258. package/src/hooks/useRenderingExtensions.js +0 -30
  259. package/src/hooks/useRenderingExtensions.js.map +0 -1
  260. package/src/hooks/useResponsive.js +0 -37
  261. package/src/hooks/useResponsive.js.map +0 -1
  262. package/src/hooks/useStringCalculatedExpression.js +0 -44
  263. package/src/hooks/useStringCalculatedExpression.js.map +0 -1
  264. package/src/hooks/useTerminologyServerQuery.js +0 -73
  265. package/src/hooks/useTerminologyServerQuery.js.map +0 -1
  266. package/src/hooks/useValidationError.js +0 -38
  267. package/src/hooks/useValidationError.js.map +0 -1
  268. package/src/hooks/useValueSetCodings.js +0 -125
  269. package/src/hooks/useValueSetCodings.js.map +0 -1
  270. package/src/index.js +0 -2
  271. package/src/index.js.map +0 -1
  272. package/src/interfaces/answerExpression.interface.js.map +0 -1
  273. package/src/interfaces/calculatedExpression.interface.js +0 -2
  274. package/src/interfaces/calculatedExpression.interface.js.map +0 -1
  275. package/src/interfaces/choice.enum.js +0 -41
  276. package/src/interfaces/choice.enum.js.map +0 -1
  277. package/src/interfaces/enableWhen.interface.js.map +0 -1
  278. package/src/interfaces/groupTable.interface.js +0 -18
  279. package/src/interfaces/groupTable.interface.js.map +0 -1
  280. package/src/interfaces/populate.interface.js +0 -18
  281. package/src/interfaces/populate.interface.js.map +0 -1
  282. package/src/interfaces/questionnaireStore.interface.js +0 -18
  283. package/src/interfaces/questionnaireStore.interface.js.map +0 -1
  284. package/src/interfaces/regex.interface.js +0 -18
  285. package/src/interfaces/regex.interface.js.map +0 -1
  286. package/src/interfaces/renderProps.interface.js +0 -18
  287. package/src/interfaces/renderProps.interface.js.map +0 -1
  288. package/src/interfaces/repeatGroup.interface.js +0 -18
  289. package/src/interfaces/repeatGroup.interface.js.map +0 -1
  290. package/src/interfaces/repeatItem.interface.js +0 -2
  291. package/src/interfaces/repeatItem.interface.js.map +0 -1
  292. package/src/interfaces/tab.interface.js +0 -2
  293. package/src/interfaces/tab.interface.js.map +0 -1
  294. package/src/interfaces/valueSet.interface.js +0 -18
  295. package/src/interfaces/valueSet.interface.js.map +0 -1
  296. package/src/interfaces/variables.interface.js +0 -18
  297. package/src/interfaces/variables.interface.js.map +0 -1
  298. package/src/setup-jest.js +0 -2
  299. package/src/setup-jest.js.map +0 -1
  300. package/src/stores/useConfigStore.js +0 -17
  301. package/src/stores/useConfigStore.js.map +0 -1
  302. package/src/stores/useQuestionnaireResponseStore.js +0 -39
  303. package/src/stores/useQuestionnaireResponseStore.js.map +0 -1
  304. package/src/stores/useQuestionnaireStore.js +0 -151
  305. package/src/stores/useQuestionnaireStore.js.map +0 -1
  306. package/src/stories/SmartFormsRenderer.stories.js +0 -90
  307. package/src/stories/SmartFormsRenderer.stories.js.map +0 -1
  308. package/src/utils/calculatedExpression.js +0 -180
  309. package/src/utils/calculatedExpression.js.map +0 -1
  310. package/src/utils/choice.js +0 -160
  311. package/src/utils/choice.js.map +0 -1
  312. package/src/utils/debounce.js +0 -19
  313. package/src/utils/debounce.js.map +0 -1
  314. package/src/utils/emptyResource.js +0 -25
  315. package/src/utils/emptyResource.js.map +0 -1
  316. package/src/utils/enableWhen.js +0 -228
  317. package/src/utils/enableWhen.js.map +0 -1
  318. package/src/utils/enableWhenExpression.js +0 -76
  319. package/src/utils/enableWhenExpression.js.map +0 -1
  320. package/src/utils/fhirpath.js +0 -98
  321. package/src/utils/fhirpath.js.map +0 -1
  322. package/src/utils/initialiseForm.js +0 -45
  323. package/src/utils/initialiseForm.js.map +0 -1
  324. package/src/utils/itemControl.js +0 -299
  325. package/src/utils/itemControl.js.map +0 -1
  326. package/src/utils/mapItem.js +0 -80
  327. package/src/utils/mapItem.js.map +0 -1
  328. package/src/utils/openChoice.js +0 -150
  329. package/src/utils/openChoice.js.map +0 -1
  330. package/src/utils/parseInputs.js +0 -49
  331. package/src/utils/parseInputs.js.map +0 -1
  332. package/src/utils/populate.js +0 -78
  333. package/src/utils/populate.js.map +0 -1
  334. package/src/utils/populateCallback.js +0 -40
  335. package/src/utils/populateCallback.js.map +0 -1
  336. package/src/utils/populateContexts.js +0 -76
  337. package/src/utils/populateContexts.js.map +0 -1
  338. package/src/utils/populateInputParams.js +0 -193
  339. package/src/utils/populateInputParams.js.map +0 -1
  340. package/src/utils/qItem.js +0 -73
  341. package/src/utils/qItem.js.map +0 -1
  342. package/src/utils/qrItem.js +0 -221
  343. package/src/utils/qrItem.js.map +0 -1
  344. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js +0 -47
  345. package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js.map +0 -1
  346. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js +0 -79
  347. package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +0 -1
  348. package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js +0 -59
  349. package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +0 -1
  350. package/src/utils/questionnaireStoreUtils/extractLaunchContext.js +0 -18
  351. package/src/utils/questionnaireStoreUtils/extractLaunchContext.js.map +0 -1
  352. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js +0 -174
  353. package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +0 -1
  354. package/src/utils/questionnaireStoreUtils/extractTabs.js +0 -31
  355. package/src/utils/questionnaireStoreUtils/extractTabs.js.map +0 -1
  356. package/src/utils/questionnaireStoreUtils/extractVariables.js +0 -63
  357. package/src/utils/questionnaireStoreUtils/extractVariables.js.map +0 -1
  358. package/src/utils/questionnaireStoreUtils/resolveValueSets.js +0 -58
  359. package/src/utils/questionnaireStoreUtils/resolveValueSets.js.map +0 -1
  360. package/src/utils/tabs.js +0 -190
  361. package/src/utils/tabs.js.map +0 -1
  362. package/src/utils/valueSet.js +0 -126
  363. package/src/utils/valueSet.js.map +0 -1
@@ -1,78 +0,0 @@
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
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- import { getLaunchContexts, getQuestionnaireLevelXFhirQueryVariables, getSourceQueries } from './populateContexts';
27
- import { isInputParameters } from 'sdc-populate';
28
- import { createPopulateInputParameters } from './populateInputParams';
29
- import { requestPopulate } from '../api/populate';
30
- /**
31
- * Pre-populate questionnaire from CMS patient data to form a populated questionnaireResponse
32
- *
33
- * @author Sean Fong
34
- */
35
- export function populateQuestionnaire(questionnaire, fhirClient, patient, user, encounter, populateForm, exitSpinner) {
36
- var _a;
37
- return __awaiter(this, void 0, void 0, function* () {
38
- // Get launch contexts, source queries and questionnaire-level variables
39
- const launchContexts = getLaunchContexts(questionnaire);
40
- const sourceQueries = getSourceQueries(questionnaire);
41
- const questionnaireLevelVariables = getQuestionnaireLevelXFhirQueryVariables(questionnaire);
42
- if (launchContexts.length === 0 &&
43
- sourceQueries.length === 0 &&
44
- questionnaireLevelVariables.length === 0) {
45
- exitSpinner();
46
- return;
47
- }
48
- // Define population input parameters from launch contexts, source queries and questionnaire-level variables
49
- const inputParameters = createPopulateInputParameters(questionnaire, patient, user, encounter, launchContexts, sourceQueries, questionnaireLevelVariables);
50
- if (!inputParameters) {
51
- exitSpinner();
52
- return;
53
- }
54
- if (!isInputParameters(inputParameters)) {
55
- exitSpinner();
56
- return;
57
- }
58
- // Perform population if parameters satisfies input parameters
59
- const outputParameters = yield requestPopulate(fhirClient, inputParameters);
60
- if (outputParameters.resourceType === 'OperationOutcome') {
61
- exitSpinner();
62
- return;
63
- }
64
- const responseParameter = outputParameters.parameter.find((param) => param.name === 'response');
65
- const issuesParameter = outputParameters.parameter.find((param) => param.name === 'issues');
66
- if (issuesParameter) {
67
- for (const issue of issuesParameter.resource.issue) {
68
- if ((_a = issue.details) === null || _a === void 0 ? void 0 : _a.text) {
69
- console.warn(issue.details.text);
70
- }
71
- }
72
- populateForm({ populated: responseParameter.resource, hasWarnings: true });
73
- return;
74
- }
75
- populateForm({ populated: responseParameter.resource, hasWarnings: false });
76
- });
77
- }
78
- //# sourceMappingURL=populate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"populate.js","sourceRoot":"","sources":["populate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;AASH,OAAO,EACL,iBAAiB,EACjB,wCAAwC,EACxC,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAMlD;;;;GAIG;AACH,MAAM,UAAgB,qBAAqB,CACzC,aAA4B,EAC5B,UAAkB,EAClB,OAAgB,EAChB,IAAkB,EAClB,SAA2B,EAC3B,YAEC,EACD,WAAyB;;;QAEzB,wEAAwE;QACxE,MAAM,cAAc,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,2BAA2B,GAAG,wCAAwC,CAAC,aAAa,CAAC,CAAC;QAE5F,IACE,cAAc,CAAC,MAAM,KAAK,CAAC;YAC3B,aAAa,CAAC,MAAM,KAAK,CAAC;YAC1B,2BAA2B,CAAC,MAAM,KAAK,CAAC,EACxC;YACA,WAAW,EAAE,CAAC;YACd,OAAO;SACR;QAED,4GAA4G;QAC5G,MAAM,eAAe,GAAG,6BAA6B,CACnD,aAAa,EACb,OAAO,EACP,IAAI,EACJ,SAAS,EACT,cAAc,EACd,aAAa,EACb,2BAA2B,CAC5B,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE;YACpB,WAAW,EAAE,CAAC;YACd,OAAO;SACR;QAED,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE;YACvC,WAAW,EAAE,CAAC;YACd,OAAO;SACR;QAED,8DAA8D;QAC9D,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAE5E,IAAI,gBAAgB,CAAC,YAAY,KAAK,kBAAkB,EAAE;YACxD,WAAW,EAAE,CAAC;YACd,OAAO;SACR;QAED,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CACvD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAChB,CAAC;QACvB,MAAM,eAAe,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAE7E,CAAC;QAEd,IAAI,eAAe,EAAE;YACnB,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE;gBAClD,IAAI,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,EAAE;oBACvB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAClC;aACF;YACD,YAAY,CAAC,EAAE,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,OAAO;SACR;QAED,YAAY,CAAC,EAAE,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;;CAC7E"}
@@ -1,40 +0,0 @@
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 axios from 'axios';
18
- const ABSOLUTE_URL_REGEX = /^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/;
19
- export const fetchResourceCallback = (query, requestConfig) => {
20
- let { clientEndpoint } = requestConfig;
21
- const { authToken } = requestConfig;
22
- const headers = {
23
- Accept: 'application/json;charset=utf-8',
24
- Authorization: `Bearer ${authToken}`
25
- };
26
- if (!clientEndpoint.endsWith('/')) {
27
- clientEndpoint += '/';
28
- }
29
- if (ABSOLUTE_URL_REGEX.test(query)) {
30
- return axios.get(query, {
31
- headers: headers
32
- });
33
- }
34
- else {
35
- return axios.get(clientEndpoint + query, {
36
- headers: headers
37
- });
38
- }
39
- };
40
- //# sourceMappingURL=populateCallback.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"populateCallback.js","sourceRoot":"","sources":["populateCallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,kBAAkB,GAAG,sCAAsC,CAAC;AAOlE,MAAM,CAAC,MAAM,qBAAqB,GAA0B,CAC1D,KAAa,EACb,aAA4B,EAC5B,EAAE;IACF,IAAI,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;IACvC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,gCAAgC;QACxC,aAAa,EAAE,UAAU,SAAS,EAAE;KACrC,CAAC;IAEF,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACjC,cAAc,IAAI,GAAG,CAAC;KACvB;IAED,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QAClC,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE;YACtB,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,KAAK,CAAC,GAAG,CAAC,cAAc,GAAG,KAAK,EAAE;YACvC,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;KACJ;AACH,CAAC,CAAC"}
@@ -1,76 +0,0 @@
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
- export function getLaunchContexts(questionnaire) {
18
- if (questionnaire.extension && questionnaire.extension.length > 0) {
19
- return questionnaire.extension.filter((extension) => isLaunchContext(extension));
20
- }
21
- return [];
22
- }
23
- export function isLaunchContext(extension) {
24
- var _a, _b;
25
- const hasLaunchContextName = extension.url ===
26
- 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-launchContext' &&
27
- !!((_a = extension.extension) === null || _a === void 0 ? void 0 : _a.find((ext) => ext.url === 'name' &&
28
- (ext.valueId ||
29
- (ext.valueCoding &&
30
- (ext.valueCoding.code === 'patient' ||
31
- ext.valueCoding.code === 'encounter' ||
32
- ext.valueCoding.code === 'location' ||
33
- ext.valueCoding.code === 'user' ||
34
- ext.valueCoding.code === 'study' ||
35
- ext.valueCoding.code === 'sourceQueries')))));
36
- const hasLaunchContextType = !!((_b = extension.extension) === null || _b === void 0 ? void 0 : _b.find((ext) => ext.url === 'type' &&
37
- ext.valueCode &&
38
- (ext.valueCode === 'Patient' ||
39
- ext.valueCode === 'Practitioner' ||
40
- ext.valueCode === 'Encounter')));
41
- return (extension.url ===
42
- 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-launchContext' &&
43
- hasLaunchContextName &&
44
- hasLaunchContextType);
45
- }
46
- // get source query references
47
- export function getSourceQueries(questionnaire) {
48
- if (questionnaire.extension && questionnaire.extension.length > 0) {
49
- return questionnaire.extension.filter((extension) => isSourceQuery(extension));
50
- }
51
- return [];
52
- }
53
- export function isSourceQuery(extension) {
54
- return (extension.url ===
55
- 'http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-sourceQueries' &&
56
- !!extension.valueReference);
57
- }
58
- /**
59
- * Filter x-fhir-query variables from questionnaire's extensions needed for population
60
- *
61
- * @author Sean Fong
62
- */
63
- export function getQuestionnaireLevelXFhirQueryVariables(questionnaire) {
64
- if (questionnaire.extension && questionnaire.extension.length > 0) {
65
- return questionnaire.extension.filter((extension) => isXFhirQueryVariable(extension));
66
- }
67
- return [];
68
- }
69
- export function isXFhirQueryVariable(extension) {
70
- var _a, _b, _c;
71
- return (extension.url === 'http://hl7.org/fhir/StructureDefinition/variable' &&
72
- !!((_a = extension.valueExpression) === null || _a === void 0 ? void 0 : _a.name) &&
73
- ((_b = extension.valueExpression) === null || _b === void 0 ? void 0 : _b.language) === 'application/x-fhir-query' &&
74
- !!((_c = extension.valueExpression) === null || _c === void 0 ? void 0 : _c.expression));
75
- }
76
- //# sourceMappingURL=populateContexts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"populateContexts.js","sourceRoot":"","sources":["populateContexts.ts"],"names":[],"mappings":"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"}
@@ -1,193 +0,0 @@
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
- function createPatientSubject(questionnaire, patient) {
18
- const subjectTypes = questionnaire.subjectType;
19
- // If subjectTypes array is not empty AND "Patient" is not in the array, we cannot create a Patient subject reference.
20
- if (subjectTypes && subjectTypes.length > 0) {
21
- const patientSubject = subjectTypes.find((subject) => subject === 'Patient');
22
- if (!patientSubject) {
23
- return null;
24
- }
25
- }
26
- return {
27
- type: 'Patient',
28
- reference: 'Patient/' + patient.id
29
- };
30
- }
31
- function createCanonicalParam(canonicalUrl) {
32
- return {
33
- name: 'canonical',
34
- valueString: canonicalUrl
35
- };
36
- }
37
- // setting local parameter as false as we are calling $populate with an NPM package, not a server
38
- // package doesn't contain any fhir resources to "know" the context from
39
- function createLocalParam() {
40
- return {
41
- name: 'local',
42
- valueBoolean: false
43
- };
44
- }
45
- function createLaunchContextParam(launchContext, patient, user, encounter) {
46
- var _a, _b;
47
- const name = (_a = launchContext.extension[0].valueId) !== null && _a !== void 0 ? _a : (_b = launchContext.extension[0].valueCoding) === null || _b === void 0 ? void 0 : _b.code;
48
- if (!name) {
49
- return null;
50
- }
51
- // let resource :string
52
- const resourceType = launchContext.extension[1].valueCode;
53
- let resource;
54
- switch (resourceType) {
55
- case 'Patient':
56
- resource = patient;
57
- break;
58
- case 'Practitioner':
59
- resource = user;
60
- break;
61
- case 'Encounter':
62
- resource = encounter;
63
- break;
64
- default:
65
- return null;
66
- }
67
- if (!resource) {
68
- return null;
69
- }
70
- return {
71
- name: 'context',
72
- part: [
73
- {
74
- name: 'name',
75
- valueString: name
76
- },
77
- {
78
- name: 'content',
79
- resource: resource
80
- }
81
- ]
82
- };
83
- }
84
- function createSourceQueryParams(sourceQuery, index) {
85
- const reference = sourceQuery.valueReference.reference;
86
- if (reference && reference.startsWith('#')) {
87
- const containedReference = reference.slice(1);
88
- return {
89
- name: 'context',
90
- part: [
91
- {
92
- name: 'name',
93
- valueString: containedReference
94
- },
95
- {
96
- name: 'content',
97
- valueReference: sourceQuery.valueReference
98
- }
99
- ]
100
- };
101
- }
102
- // if sourceQuery cannot be referenced to a contained bundle, return itself as a context
103
- // this most likely shouldn't happen
104
- return {
105
- name: 'context',
106
- part: [
107
- {
108
- name: 'name',
109
- valueString: `sourceQuery${index}`
110
- },
111
- {
112
- name: 'content',
113
- valueReference: sourceQuery.valueReference
114
- }
115
- ]
116
- };
117
- }
118
- function createVariableParam(variable) {
119
- const query = variable.valueExpression.expression;
120
- const resourceType = query.split('?')[0];
121
- return {
122
- name: 'context',
123
- part: [
124
- {
125
- name: 'name',
126
- valueString: variable.valueExpression.name
127
- },
128
- {
129
- name: 'content',
130
- valueReference: { reference: query, type: resourceType }
131
- }
132
- ]
133
- };
134
- }
135
- /**
136
- * Define population input parameters without any batch response contexts
137
- *
138
- * @author Sean Fong
139
- */
140
- export function createPopulateInputParameters(questionnaire, patient, user, encounter, launchContexts, sourceQueries, questionnaireLevelVariables) {
141
- var _a, _b, _c;
142
- const patientSubject = createPatientSubject(questionnaire, patient);
143
- if (!patientSubject) {
144
- return null;
145
- }
146
- const inputParameters = {
147
- resourceType: 'Parameters',
148
- parameter: [
149
- {
150
- name: 'questionnaire',
151
- resource: questionnaire
152
- },
153
- {
154
- name: 'subject',
155
- valueReference: patientSubject
156
- }
157
- ]
158
- };
159
- // canonical
160
- if (questionnaire.url) {
161
- (_a = inputParameters.parameter) === null || _a === void 0 ? void 0 : _a.push(createCanonicalParam(questionnaire.url));
162
- }
163
- // contexts
164
- const contexts = [];
165
- // add launch contexts
166
- if (launchContexts.length > 0) {
167
- for (const launchContext of launchContexts) {
168
- const launchContextParam = createLaunchContextParam(launchContext, patient, user, encounter);
169
- if (launchContextParam) {
170
- contexts.push(launchContextParam);
171
- }
172
- }
173
- }
174
- // add source queries
175
- if (sourceQueries.length > 0) {
176
- for (const [index, sourceQuery] of sourceQueries.entries()) {
177
- contexts.push(createSourceQueryParams(sourceQuery, index));
178
- }
179
- }
180
- // add questionnaire-level variables
181
- if (questionnaireLevelVariables.length > 0) {
182
- for (const variable of questionnaireLevelVariables) {
183
- contexts.push(createVariableParam(variable));
184
- }
185
- }
186
- if (contexts.length > 0) {
187
- (_b = inputParameters.parameter) === null || _b === void 0 ? void 0 : _b.push(...contexts);
188
- }
189
- // local
190
- (_c = inputParameters.parameter) === null || _c === void 0 ? void 0 : _c.push(createLocalParam());
191
- return inputParameters;
192
- }
193
- //# sourceMappingURL=populateInputParams.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"populateInputParams.js","sourceRoot":"","sources":["populateInputParams.ts"],"names":[],"mappings":"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"}
@@ -1,73 +0,0 @@
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 './itemControl';
18
- import { getChoiceControlType } from './choice';
19
- import { QItemChoiceControl, QItemOpenChoiceControl } from '../interfaces/choice.enum';
20
- import { getOpenChoiceControlType } from './openChoice';
21
- /**
22
- * Test the given QItem on a series of checks to verify if the item should be displayed
23
- * Check if qItem has hidden attribute
24
- * Check if qItem fufilled its enableWhen criteria
25
- *
26
- * @author Sean Fong
27
- */
28
- export function isHidden(params) {
29
- const { questionnaireItem, enableWhenIsActivated, enableWhenItems, enableWhenExpressions } = params;
30
- if (hasHiddenExtension(questionnaireItem)) {
31
- return true;
32
- }
33
- return isHiddenByEnableWhens({
34
- linkId: questionnaireItem.linkId,
35
- enableWhenIsActivated,
36
- enableWhenItems,
37
- enableWhenExpressions
38
- });
39
- }
40
- export function isHiddenByEnableWhens(params) {
41
- const { linkId, enableWhenIsActivated, enableWhenItems, enableWhenExpressions } = params;
42
- if (enableWhenIsActivated) {
43
- if (enableWhenItems[linkId]) {
44
- return !enableWhenItems[linkId].isEnabled;
45
- }
46
- if (enableWhenExpressions[linkId]) {
47
- return !enableWhenExpressions[linkId].isEnabled;
48
- }
49
- }
50
- return false;
51
- }
52
- /**
53
- * Check if qItem is a repeat item AND if it isn't a checkbox item
54
- * Note: repeat checkbox items are rendered as multi-select checkbox instead of being rendered as a traditional repeat item
55
- *
56
- * @author Sean Fong
57
- */
58
- export function isRepeatItemAndNotCheckbox(qItem) {
59
- const isCheckbox = getChoiceControlType(qItem) === QItemChoiceControl.Checkbox ||
60
- getOpenChoiceControlType(qItem) === QItemOpenChoiceControl.Checkbox;
61
- return !!qItem['repeats'] && !isCheckbox;
62
- }
63
- export function getXHtmlStringFromQuestionnaire(questionnaire) {
64
- var _a, _b;
65
- const itemControl = (_b = (_a = questionnaire._title) === null || _a === void 0 ? void 0 : _a.extension) === null || _b === void 0 ? void 0 : _b.find((extension) => extension.url === 'http://hl7.org/fhir/StructureDefinition/rendering-xhtml');
66
- if (itemControl) {
67
- if (itemControl.valueString) {
68
- return itemControl.valueString;
69
- }
70
- }
71
- return null;
72
- }
73
- //# sourceMappingURL=qItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"qItem.js","sourceRoot":"","sources":["qItem.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAUxD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAsB;IAC7C,MAAM,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,eAAe,EAAE,qBAAqB,EAAE,GACxF,MAAM,CAAC;IACT,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,EAAE;QACzC,OAAO,IAAI,CAAC;KACb;IAED,OAAO,qBAAqB,CAAC;QAC3B,MAAM,EAAE,iBAAiB,CAAC,MAAM;QAChC,qBAAqB;QACrB,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;AACL,CAAC;AASD,MAAM,UAAU,qBAAqB,CAAC,MAAmC;IACvE,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,eAAe,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;IAEzF,IAAI,qBAAqB,EAAE;QACzB,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE;YAC3B,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC;SAC3C;QAED,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;YACjC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC;SACjD;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAwB;IACjE,MAAM,UAAU,GACd,oBAAoB,CAAC,KAAK,CAAC,KAAK,kBAAkB,CAAC,QAAQ;QAC3D,wBAAwB,CAAC,KAAK,CAAC,KAAK,sBAAsB,CAAC,QAAQ,CAAC;IAEtE,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,aAA4B;;IAC1E,MAAM,WAAW,GAAG,MAAA,MAAA,aAAa,CAAC,MAAM,0CAAE,SAAS,0CAAE,IAAI,CACvD,CAAC,SAAoB,EAAE,EAAE,CACvB,SAAS,CAAC,GAAG,KAAK,yDAAyD,CAC9E,CAAC;IAEF,IAAI,WAAW,EAAE;QACf,IAAI,WAAW,CAAC,WAAW,EAAE;YAC3B,OAAO,WAAW,CAAC,WAAW,CAAC;SAChC;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}