@ovok/native 1.10.2 → 1.10.4

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 (570) hide show
  1. package/README.md +5 -5
  2. package/lib/commonjs/modules/auth/default-translation.js +22 -0
  3. package/lib/commonjs/modules/auth/default-translation.js.map +1 -1
  4. package/lib/commonjs/modules/auth/hooks/use-session.js +3 -0
  5. package/lib/commonjs/modules/auth/hooks/use-session.js.map +1 -1
  6. package/lib/commonjs/modules/auth/profile/components/profile-form-provider.js +3 -6
  7. package/lib/commonjs/modules/auth/profile/components/profile-form-provider.js.map +1 -1
  8. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +1 -0
  9. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  10. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js +4 -3
  11. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  12. package/lib/commonjs/modules/auth/session/logout-session.js +5 -2
  13. package/lib/commonjs/modules/auth/session/logout-session.js.map +1 -1
  14. package/lib/commonjs/modules/auth/session/session-store-refresh.js +125 -0
  15. package/lib/commonjs/modules/auth/session/session-store-refresh.js.map +1 -0
  16. package/lib/commonjs/modules/auth/session/session-store-request-state.js +73 -0
  17. package/lib/commonjs/modules/auth/session/session-store-request-state.js.map +1 -0
  18. package/lib/commonjs/modules/auth/session/session-store-types.js +17 -0
  19. package/lib/commonjs/modules/auth/session/session-store-types.js.map +1 -0
  20. package/lib/commonjs/modules/auth/session/session-store.js +56 -123
  21. package/lib/commonjs/modules/auth/session/session-store.js.map +1 -1
  22. package/lib/commonjs/modules/auth/utils/sign-in-error.js +10 -4
  23. package/lib/commonjs/modules/auth/utils/sign-in-error.js.map +1 -1
  24. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +5 -0
  25. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  26. package/lib/commonjs/modules/bt-management/hooks/declined-device-storage.js +36 -1
  27. package/lib/commonjs/modules/bt-management/hooks/declined-device-storage.js.map +1 -1
  28. package/lib/commonjs/modules/bt-management/hooks/nearby-device-offer-state.js +25 -0
  29. package/lib/commonjs/modules/bt-management/hooks/nearby-device-offer-state.js.map +1 -0
  30. package/lib/commonjs/modules/bt-management/hooks/nearby-device-offer-types.js +6 -0
  31. package/lib/commonjs/modules/bt-management/hooks/nearby-device-offer-types.js.map +1 -0
  32. package/lib/commonjs/modules/bt-management/hooks/use-nearby-device-offer.js +22 -36
  33. package/lib/commonjs/modules/bt-management/hooks/use-nearby-device-offer.js.map +1 -1
  34. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js +11 -0
  35. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  36. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  37. package/lib/commonjs/modules/data-sync/hooks/use-listen-changes.js.map +1 -1
  38. package/lib/commonjs/modules/data-sync/services/apple-health-sync-service.js.map +1 -1
  39. package/lib/commonjs/modules/data-sync/utils/convert-generic-health-data.js +74 -34
  40. package/lib/commonjs/modules/data-sync/utils/convert-generic-health-data.js.map +1 -1
  41. package/lib/commonjs/modules/data-sync/utils/convert-records-to-observation.js +19 -16
  42. package/lib/commonjs/modules/data-sync/utils/convert-records-to-observation.js.map +1 -1
  43. package/lib/commonjs/modules/data-sync/utils/convert-samples-to-observation.js +17 -4
  44. package/lib/commonjs/modules/data-sync/utils/convert-samples-to-observation.js.map +1 -1
  45. package/lib/commonjs/modules/data-sync/utils/get-samples-from-health.js.map +1 -1
  46. package/lib/commonjs/modules/data-sync/utils/get-total-samples-count.js.map +1 -1
  47. package/lib/commonjs/modules/data-sync/utils/health-data-catalog.js +219 -16
  48. package/lib/commonjs/modules/data-sync/utils/health-data-catalog.js.map +1 -1
  49. package/lib/commonjs/modules/data-sync/utils/health-record-timing.js +52 -0
  50. package/lib/commonjs/modules/data-sync/utils/health-record-timing.js.map +1 -0
  51. package/lib/commonjs/modules/data-sync/utils/health-units.js +1 -0
  52. package/lib/commonjs/modules/data-sync/utils/health-units.js.map +1 -1
  53. package/lib/commonjs/modules/data-sync/utils/healthkit-data-types.js.map +1 -1
  54. package/lib/commonjs/modules/data-sync/utils/normalize-core-health-observation.js +74 -0
  55. package/lib/commonjs/modules/data-sync/utils/normalize-core-health-observation.js.map +1 -0
  56. package/lib/commonjs/modules/picker-sheet/components/value-wheel-picker.js +41 -0
  57. package/lib/commonjs/modules/picker-sheet/components/value-wheel-picker.js.map +1 -0
  58. package/lib/commonjs/modules/picker-sheet/components/wheel-picker.js +56 -15
  59. package/lib/commonjs/modules/picker-sheet/components/wheel-picker.js.map +1 -1
  60. package/lib/commonjs/modules/picker-sheet/index.js +11 -0
  61. package/lib/commonjs/modules/picker-sheet/index.js.map +1 -1
  62. package/lib/commonjs/modules/questionnaire-response-form/README.md +59 -20
  63. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-item.js +8 -0
  64. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-item.js.map +1 -1
  65. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js +8 -0
  66. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js.map +1 -1
  67. package/lib/commonjs/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js +8 -3
  68. package/lib/commonjs/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js.map +1 -1
  69. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js +9 -3
  70. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js.map +1 -1
  71. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js +18 -8
  72. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js.map +1 -1
  73. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js +41 -2
  74. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js.map +1 -1
  75. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js +43 -5
  76. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js.map +1 -1
  77. package/lib/commonjs/modules/questionnaire-response-form/components/header/questionnaire-header-title.js +3 -1
  78. package/lib/commonjs/modules/questionnaire-response-form/components/header/questionnaire-header-title.js.map +1 -1
  79. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js +37 -11
  80. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  81. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form.js +1 -0
  82. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form.js.map +1 -1
  83. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +9 -3
  84. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  85. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-initial-selected-values.js +5 -3
  86. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-initial-selected-values.js.map +1 -1
  87. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-navigation-handlers.js +15 -4
  88. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-navigation-handlers.js.map +1 -1
  89. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js +14 -7
  90. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js.map +1 -1
  91. package/lib/commonjs/modules/questionnaire-response-form/index.js +20 -0
  92. package/lib/commonjs/modules/questionnaire-response-form/index.js.map +1 -1
  93. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-form-values.js +4 -0
  94. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-item-render-props.js +6 -0
  95. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-item-render-props.js.map +1 -0
  96. package/lib/commonjs/modules/questionnaire-response-form/types/response-values.js +4 -0
  97. package/lib/commonjs/modules/questionnaire-response-form/utils/condition-utils.js +37 -6
  98. package/lib/commonjs/modules/questionnaire-response-form/utils/condition-utils.js.map +1 -1
  99. package/lib/commonjs/modules/questionnaire-response-form/utils/conditions/fhir-condition.js +148 -0
  100. package/lib/commonjs/modules/questionnaire-response-form/utils/conditions/fhir-condition.js.map +1 -0
  101. package/lib/commonjs/modules/questionnaire-response-form/utils/create-answer-from-value.js +127 -0
  102. package/lib/commonjs/modules/questionnaire-response-form/utils/create-answer-from-value.js.map +1 -0
  103. package/lib/commonjs/modules/questionnaire-response-form/utils/fields/get-option-text.js +4 -3
  104. package/lib/commonjs/modules/questionnaire-response-form/utils/fields/get-option-text.js.map +1 -1
  105. package/lib/commonjs/modules/questionnaire-response-form/utils/form-utils.js +71 -64
  106. package/lib/commonjs/modules/questionnaire-response-form/utils/form-utils.js.map +1 -1
  107. package/lib/commonjs/modules/questionnaire-response-form/utils/form-validation.js +23 -5
  108. package/lib/commonjs/modules/questionnaire-response-form/utils/form-validation.js.map +1 -1
  109. package/lib/commonjs/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js +10 -0
  110. package/lib/commonjs/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js.map +1 -0
  111. package/lib/commonjs/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js +83 -0
  112. package/lib/commonjs/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js.map +1 -0
  113. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-date-utils.js +54 -0
  114. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-date-utils.js.map +1 -0
  115. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js +75 -0
  116. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js.map +1 -0
  117. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js +63 -0
  118. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js.map +1 -0
  119. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js +49 -18
  120. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js.map +1 -1
  121. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-picker-options.js +117 -0
  122. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-picker-options.js.map +1 -0
  123. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js +109 -0
  124. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js.map +1 -0
  125. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js +2 -2
  126. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js.map +1 -1
  127. package/lib/commonjs/modules/questionnaire-response-form/utils/translate-fhir-text.js +36 -0
  128. package/lib/commonjs/modules/questionnaire-response-form/utils/translate-fhir-text.js.map +1 -0
  129. package/lib/commonjs/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js +49 -0
  130. package/lib/commonjs/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js.map +1 -0
  131. package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js +31 -15
  132. package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js.map +1 -1
  133. package/lib/commonjs/modules/ui/components/prerequisite-gate.js +73 -0
  134. package/lib/commonjs/modules/ui/components/prerequisite-gate.js.map +1 -0
  135. package/lib/commonjs/modules/ui/default-translation.js +50 -0
  136. package/lib/commonjs/modules/ui/default-translation.js.map +1 -0
  137. package/lib/commonjs/modules/ui/index.js +11 -0
  138. package/lib/commonjs/modules/ui/index.js.map +1 -1
  139. package/lib/commonjs/polyfills/index.js +9 -7
  140. package/lib/commonjs/polyfills/index.js.map +1 -1
  141. package/lib/module/modules/auth/default-translation.js +22 -0
  142. package/lib/module/modules/auth/default-translation.js.map +1 -1
  143. package/lib/module/modules/auth/hooks/use-session.js +3 -0
  144. package/lib/module/modules/auth/hooks/use-session.js.map +1 -1
  145. package/lib/module/modules/auth/profile/components/profile-form-provider.js +3 -6
  146. package/lib/module/modules/auth/profile/components/profile-form-provider.js.map +1 -1
  147. package/lib/module/modules/auth/register/components/form/register-form-provider.js +1 -0
  148. package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  149. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js +3 -3
  150. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  151. package/lib/module/modules/auth/session/logout-session.js +5 -2
  152. package/lib/module/modules/auth/session/logout-session.js.map +1 -1
  153. package/lib/module/modules/auth/session/session-store-refresh.js +121 -0
  154. package/lib/module/modules/auth/session/session-store-refresh.js.map +1 -0
  155. package/lib/module/modules/auth/session/session-store-request-state.js +69 -0
  156. package/lib/module/modules/auth/session/session-store-request-state.js.map +1 -0
  157. package/lib/module/modules/auth/session/session-store-types.js +13 -0
  158. package/lib/module/modules/auth/session/session-store-types.js.map +1 -0
  159. package/lib/module/modules/auth/session/session-store.js +56 -123
  160. package/lib/module/modules/auth/session/session-store.js.map +1 -1
  161. package/lib/module/modules/auth/utils/sign-in-error.js +9 -4
  162. package/lib/module/modules/auth/utils/sign-in-error.js.map +1 -1
  163. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +5 -0
  164. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  165. package/lib/module/modules/bt-management/hooks/declined-device-storage.js +33 -1
  166. package/lib/module/modules/bt-management/hooks/declined-device-storage.js.map +1 -1
  167. package/lib/module/modules/bt-management/hooks/nearby-device-offer-state.js +20 -0
  168. package/lib/module/modules/bt-management/hooks/nearby-device-offer-state.js.map +1 -0
  169. package/lib/module/modules/bt-management/hooks/nearby-device-offer-types.js +4 -0
  170. package/lib/module/modules/bt-management/hooks/nearby-device-offer-types.js.map +1 -0
  171. package/lib/module/modules/bt-management/hooks/use-nearby-device-offer.js +21 -35
  172. package/lib/module/modules/bt-management/hooks/use-nearby-device-offer.js.map +1 -1
  173. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js +11 -0
  174. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  175. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  176. package/lib/module/modules/data-sync/hooks/use-listen-changes.js.map +1 -1
  177. package/lib/module/modules/data-sync/services/apple-health-sync-service.js.map +1 -1
  178. package/lib/module/modules/data-sync/utils/convert-generic-health-data.js +74 -34
  179. package/lib/module/modules/data-sync/utils/convert-generic-health-data.js.map +1 -1
  180. package/lib/module/modules/data-sync/utils/convert-records-to-observation.js +19 -16
  181. package/lib/module/modules/data-sync/utils/convert-records-to-observation.js.map +1 -1
  182. package/lib/module/modules/data-sync/utils/convert-samples-to-observation.js +17 -4
  183. package/lib/module/modules/data-sync/utils/convert-samples-to-observation.js.map +1 -1
  184. package/lib/module/modules/data-sync/utils/get-samples-from-health.js.map +1 -1
  185. package/lib/module/modules/data-sync/utils/get-total-samples-count.js.map +1 -1
  186. package/lib/module/modules/data-sync/utils/health-data-catalog.js +219 -16
  187. package/lib/module/modules/data-sync/utils/health-data-catalog.js.map +1 -1
  188. package/lib/module/modules/data-sync/utils/health-record-timing.js +47 -0
  189. package/lib/module/modules/data-sync/utils/health-record-timing.js.map +1 -0
  190. package/lib/module/modules/data-sync/utils/health-units.js +1 -0
  191. package/lib/module/modules/data-sync/utils/health-units.js.map +1 -1
  192. package/lib/module/modules/data-sync/utils/healthkit-data-types.js.map +1 -1
  193. package/lib/module/modules/data-sync/utils/normalize-core-health-observation.js +69 -0
  194. package/lib/module/modules/data-sync/utils/normalize-core-health-observation.js.map +1 -0
  195. package/lib/module/modules/picker-sheet/components/value-wheel-picker.js +36 -0
  196. package/lib/module/modules/picker-sheet/components/value-wheel-picker.js.map +1 -0
  197. package/lib/module/modules/picker-sheet/components/wheel-picker.js +56 -15
  198. package/lib/module/modules/picker-sheet/components/wheel-picker.js.map +1 -1
  199. package/lib/module/modules/picker-sheet/index.js +1 -0
  200. package/lib/module/modules/picker-sheet/index.js.map +1 -1
  201. package/lib/module/modules/questionnaire-response-form/README.md +59 -20
  202. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-item.js +8 -0
  203. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-item.js.map +1 -1
  204. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js +8 -0
  205. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js.map +1 -1
  206. package/lib/module/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js +8 -3
  207. package/lib/module/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js.map +1 -1
  208. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js +9 -3
  209. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js.map +1 -1
  210. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js +18 -8
  211. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js.map +1 -1
  212. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js +42 -3
  213. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js.map +1 -1
  214. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js +41 -3
  215. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js.map +1 -1
  216. package/lib/module/modules/questionnaire-response-form/components/header/questionnaire-header-title.js +3 -1
  217. package/lib/module/modules/questionnaire-response-form/components/header/questionnaire-header-title.js.map +1 -1
  218. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js +37 -11
  219. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  220. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form.js +1 -0
  221. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form.js.map +1 -1
  222. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +9 -3
  223. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  224. package/lib/module/modules/questionnaire-response-form/hooks/use-initial-selected-values.js +5 -3
  225. package/lib/module/modules/questionnaire-response-form/hooks/use-initial-selected-values.js.map +1 -1
  226. package/lib/module/modules/questionnaire-response-form/hooks/use-navigation-handlers.js +15 -4
  227. package/lib/module/modules/questionnaire-response-form/hooks/use-navigation-handlers.js.map +1 -1
  228. package/lib/module/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js +14 -7
  229. package/lib/module/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js.map +1 -1
  230. package/lib/module/modules/questionnaire-response-form/index.js +2 -0
  231. package/lib/module/modules/questionnaire-response-form/index.js.map +1 -1
  232. package/lib/module/modules/questionnaire-response-form/types/questionnaire-form-values.js +2 -0
  233. package/lib/module/modules/questionnaire-response-form/types/questionnaire-item-render-props.js +4 -0
  234. package/lib/module/modules/questionnaire-response-form/types/questionnaire-item-render-props.js.map +1 -0
  235. package/lib/module/modules/questionnaire-response-form/types/response-values.js +2 -0
  236. package/lib/module/modules/questionnaire-response-form/utils/condition-utils.js +37 -6
  237. package/lib/module/modules/questionnaire-response-form/utils/condition-utils.js.map +1 -1
  238. package/lib/module/modules/questionnaire-response-form/utils/conditions/fhir-condition.js +140 -0
  239. package/lib/module/modules/questionnaire-response-form/utils/conditions/fhir-condition.js.map +1 -0
  240. package/lib/module/modules/questionnaire-response-form/utils/create-answer-from-value.js +122 -0
  241. package/lib/module/modules/questionnaire-response-form/utils/create-answer-from-value.js.map +1 -0
  242. package/lib/module/modules/questionnaire-response-form/utils/fields/get-option-text.js +4 -3
  243. package/lib/module/modules/questionnaire-response-form/utils/fields/get-option-text.js.map +1 -1
  244. package/lib/module/modules/questionnaire-response-form/utils/form-utils.js +71 -64
  245. package/lib/module/modules/questionnaire-response-form/utils/form-utils.js.map +1 -1
  246. package/lib/module/modules/questionnaire-response-form/utils/form-validation.js +23 -5
  247. package/lib/module/modules/questionnaire-response-form/utils/form-validation.js.map +1 -1
  248. package/lib/module/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js +5 -0
  249. package/lib/module/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js.map +1 -0
  250. package/lib/module/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js +77 -0
  251. package/lib/module/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js.map +1 -0
  252. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-date-utils.js +49 -0
  253. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-date-utils.js.map +1 -0
  254. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js +71 -0
  255. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js.map +1 -0
  256. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js +57 -0
  257. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js.map +1 -0
  258. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js +49 -18
  259. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js.map +1 -1
  260. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-picker-options.js +112 -0
  261. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-picker-options.js.map +1 -0
  262. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js +105 -0
  263. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js.map +1 -0
  264. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js +2 -2
  265. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js.map +1 -1
  266. package/lib/module/modules/questionnaire-response-form/utils/translate-fhir-text.js +31 -0
  267. package/lib/module/modules/questionnaire-response-form/utils/translate-fhir-text.js.map +1 -0
  268. package/lib/module/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js +44 -0
  269. package/lib/module/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js.map +1 -0
  270. package/lib/module/modules/ui/components/bluetooth-state-notice.js +31 -15
  271. package/lib/module/modules/ui/components/bluetooth-state-notice.js.map +1 -1
  272. package/lib/module/modules/ui/components/prerequisite-gate.js +67 -0
  273. package/lib/module/modules/ui/components/prerequisite-gate.js.map +1 -0
  274. package/lib/module/modules/ui/default-translation.js +45 -0
  275. package/lib/module/modules/ui/default-translation.js.map +1 -0
  276. package/lib/module/modules/ui/index.js +1 -0
  277. package/lib/module/modules/ui/index.js.map +1 -1
  278. package/lib/module/polyfills/index.js +11 -1
  279. package/lib/module/polyfills/index.js.map +1 -1
  280. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts +22 -0
  281. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts +4 -1
  283. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/src/modules/auth/profile/components/profile-form-provider.d.ts.map +1 -1
  285. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  286. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  287. package/lib/typescript/commonjs/src/modules/auth/session/logout-session.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/src/modules/auth/session/session-store-refresh.d.ts +8 -0
  289. package/lib/typescript/commonjs/src/modules/auth/session/session-store-refresh.d.ts.map +1 -0
  290. package/lib/typescript/commonjs/src/modules/auth/session/session-store-request-state.d.ts +23 -0
  291. package/lib/typescript/commonjs/src/modules/auth/session/session-store-request-state.d.ts.map +1 -0
  292. package/lib/typescript/commonjs/src/modules/auth/session/session-store-types.d.ts +33 -0
  293. package/lib/typescript/commonjs/src/modules/auth/session/session-store-types.d.ts.map +1 -0
  294. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts +1 -18
  295. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts.map +1 -1
  296. package/lib/typescript/commonjs/src/modules/auth/utils/sign-in-error.d.ts +4 -2
  297. package/lib/typescript/commonjs/src/modules/auth/utils/sign-in-error.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  299. package/lib/typescript/commonjs/src/modules/bt-management/hooks/declined-device-storage.d.ts +10 -1
  300. package/lib/typescript/commonjs/src/modules/bt-management/hooks/declined-device-storage.d.ts.map +1 -1
  301. package/lib/typescript/commonjs/src/modules/bt-management/hooks/nearby-device-offer-state.d.ts +6 -0
  302. package/lib/typescript/commonjs/src/modules/bt-management/hooks/nearby-device-offer-state.d.ts.map +1 -0
  303. package/lib/typescript/commonjs/src/modules/bt-management/hooks/nearby-device-offer-types.d.ts +15 -0
  304. package/lib/typescript/commonjs/src/modules/bt-management/hooks/nearby-device-offer-types.d.ts.map +1 -0
  305. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-device-offer.d.ts +6 -14
  306. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-device-offer.d.ts.map +1 -1
  307. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  308. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts +7 -0
  309. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  310. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  311. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-listen-changes.d.ts +2 -3
  312. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-listen-changes.d.ts.map +1 -1
  313. package/lib/typescript/commonjs/src/modules/data-sync/services/apple-health-sync-service.d.ts +4 -5
  314. package/lib/typescript/commonjs/src/modules/data-sync/services/apple-health-sync-service.d.ts.map +1 -1
  315. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +4 -2
  316. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  317. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-sync-props.d.ts +7 -1
  318. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-sync-props.d.ts.map +1 -1
  319. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +2 -1
  320. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  321. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-generic-health-data.d.ts +3 -2
  322. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-generic-health-data.d.ts.map +1 -1
  323. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-records-to-observation.d.ts.map +1 -1
  324. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-samples-to-observation.d.ts.map +1 -1
  325. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts +5 -4
  326. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts.map +1 -1
  327. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-total-samples-count.d.ts +2 -2
  328. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-total-samples-count.d.ts.map +1 -1
  329. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-data-catalog.d.ts +5 -1
  330. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-data-catalog.d.ts.map +1 -1
  331. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-record-timing.d.ts +10 -0
  332. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-record-timing.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-units.d.ts.map +1 -1
  334. package/lib/typescript/commonjs/src/modules/data-sync/utils/healthkit-data-types.d.ts +6 -5
  335. package/lib/typescript/commonjs/src/modules/data-sync/utils/healthkit-data-types.d.ts.map +1 -1
  336. package/lib/typescript/commonjs/src/modules/data-sync/utils/normalize-core-health-observation.d.ts +13 -0
  337. package/lib/typescript/commonjs/src/modules/data-sync/utils/normalize-core-health-observation.d.ts.map +1 -0
  338. package/lib/typescript/commonjs/src/modules/picker-sheet/components/value-wheel-picker.d.ts +21 -0
  339. package/lib/typescript/commonjs/src/modules/picker-sheet/components/value-wheel-picker.d.ts.map +1 -0
  340. package/lib/typescript/commonjs/src/modules/picker-sheet/components/wheel-picker.d.ts +7 -3
  341. package/lib/typescript/commonjs/src/modules/picker-sheet/components/wheel-picker.d.ts.map +1 -1
  342. package/lib/typescript/commonjs/src/modules/picker-sheet/index.d.ts +1 -0
  343. package/lib/typescript/commonjs/src/modules/picker-sheet/index.d.ts.map +1 -1
  344. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-item.d.ts.map +1 -1
  345. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.d.ts.map +1 -1
  346. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.d.ts.map +1 -1
  347. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.d.ts.map +1 -1
  348. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts +3 -1
  349. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts.map +1 -1
  350. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts +9 -3
  351. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts.map +1 -1
  352. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts +5 -1
  353. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts.map +1 -1
  354. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/header/questionnaire-header-title.d.ts.map +1 -1
  355. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts +1 -1
  356. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  357. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form.d.ts.map +1 -1
  358. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  359. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-initial-selected-values.d.ts.map +1 -1
  360. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +6 -1
  361. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  362. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts +2 -1
  363. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts.map +1 -1
  364. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/index.d.ts +4 -1
  365. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/index.d.ts.map +1 -1
  366. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts +7 -1
  367. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts.map +1 -1
  368. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +6 -0
  369. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  370. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts +3 -1
  371. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts.map +1 -1
  372. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts +11 -0
  373. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts.map +1 -1
  374. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts +5 -2
  375. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts.map +1 -1
  376. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts +15 -0
  377. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts.map +1 -0
  378. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +5 -0
  379. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  380. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/response-values.d.ts +2 -1
  381. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/response-values.d.ts.map +1 -1
  382. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/condition-utils.d.ts.map +1 -1
  383. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts +9 -0
  384. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts.map +1 -0
  385. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts +7 -0
  386. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts.map +1 -0
  387. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts +1 -1
  388. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts.map +1 -1
  389. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-utils.d.ts +4 -1
  390. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-utils.d.ts.map +1 -1
  391. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-validation.d.ts +4 -1
  392. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-validation.d.ts.map +1 -1
  393. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts +3 -0
  394. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts.map +1 -0
  395. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts +8 -0
  396. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts.map +1 -0
  397. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts +5 -0
  398. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts.map +1 -0
  399. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts +22 -0
  400. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts.map +1 -0
  401. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts +10 -0
  402. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts.map +1 -0
  403. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts +2 -1
  404. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts.map +1 -1
  405. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts +15 -0
  406. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts.map +1 -0
  407. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts +5 -0
  408. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts.map +1 -0
  409. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts +3 -1
  410. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts.map +1 -1
  411. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts +4 -0
  412. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts.map +1 -0
  413. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts +6 -0
  414. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts.map +1 -0
  415. package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts +8 -5
  416. package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -1
  417. package/lib/typescript/commonjs/src/modules/ui/components/prerequisite-gate.d.ts +19 -0
  418. package/lib/typescript/commonjs/src/modules/ui/components/prerequisite-gate.d.ts.map +1 -0
  419. package/lib/typescript/commonjs/src/modules/ui/default-translation.d.ts +30 -0
  420. package/lib/typescript/commonjs/src/modules/ui/default-translation.d.ts.map +1 -0
  421. package/lib/typescript/commonjs/src/modules/ui/index.d.ts +1 -0
  422. package/lib/typescript/commonjs/src/modules/ui/index.d.ts.map +1 -1
  423. package/lib/typescript/commonjs/src/polyfills/index.d.ts +7 -1
  424. package/lib/typescript/commonjs/src/polyfills/index.d.ts.map +1 -1
  425. package/lib/typescript/module/src/modules/auth/default-translation.d.ts +22 -0
  426. package/lib/typescript/module/src/modules/auth/default-translation.d.ts.map +1 -1
  427. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts +4 -1
  428. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  429. package/lib/typescript/module/src/modules/auth/profile/components/profile-form-provider.d.ts.map +1 -1
  430. package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  431. package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  432. package/lib/typescript/module/src/modules/auth/session/logout-session.d.ts.map +1 -1
  433. package/lib/typescript/module/src/modules/auth/session/session-store-refresh.d.ts +8 -0
  434. package/lib/typescript/module/src/modules/auth/session/session-store-refresh.d.ts.map +1 -0
  435. package/lib/typescript/module/src/modules/auth/session/session-store-request-state.d.ts +23 -0
  436. package/lib/typescript/module/src/modules/auth/session/session-store-request-state.d.ts.map +1 -0
  437. package/lib/typescript/module/src/modules/auth/session/session-store-types.d.ts +33 -0
  438. package/lib/typescript/module/src/modules/auth/session/session-store-types.d.ts.map +1 -0
  439. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts +1 -18
  440. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts.map +1 -1
  441. package/lib/typescript/module/src/modules/auth/utils/sign-in-error.d.ts +4 -2
  442. package/lib/typescript/module/src/modules/auth/utils/sign-in-error.d.ts.map +1 -1
  443. package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  444. package/lib/typescript/module/src/modules/bt-management/hooks/declined-device-storage.d.ts +10 -1
  445. package/lib/typescript/module/src/modules/bt-management/hooks/declined-device-storage.d.ts.map +1 -1
  446. package/lib/typescript/module/src/modules/bt-management/hooks/nearby-device-offer-state.d.ts +6 -0
  447. package/lib/typescript/module/src/modules/bt-management/hooks/nearby-device-offer-state.d.ts.map +1 -0
  448. package/lib/typescript/module/src/modules/bt-management/hooks/nearby-device-offer-types.d.ts +15 -0
  449. package/lib/typescript/module/src/modules/bt-management/hooks/nearby-device-offer-types.d.ts.map +1 -0
  450. package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-device-offer.d.ts +6 -14
  451. package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-device-offer.d.ts.map +1 -1
  452. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  453. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts +7 -0
  454. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  455. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  456. package/lib/typescript/module/src/modules/data-sync/hooks/use-listen-changes.d.ts +2 -3
  457. package/lib/typescript/module/src/modules/data-sync/hooks/use-listen-changes.d.ts.map +1 -1
  458. package/lib/typescript/module/src/modules/data-sync/services/apple-health-sync-service.d.ts +4 -5
  459. package/lib/typescript/module/src/modules/data-sync/services/apple-health-sync-service.d.ts.map +1 -1
  460. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +4 -2
  461. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  462. package/lib/typescript/module/src/modules/data-sync/types/apple-health-sync-props.d.ts +7 -1
  463. package/lib/typescript/module/src/modules/data-sync/types/apple-health-sync-props.d.ts.map +1 -1
  464. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +2 -1
  465. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  466. package/lib/typescript/module/src/modules/data-sync/utils/convert-generic-health-data.d.ts +3 -2
  467. package/lib/typescript/module/src/modules/data-sync/utils/convert-generic-health-data.d.ts.map +1 -1
  468. package/lib/typescript/module/src/modules/data-sync/utils/convert-records-to-observation.d.ts.map +1 -1
  469. package/lib/typescript/module/src/modules/data-sync/utils/convert-samples-to-observation.d.ts.map +1 -1
  470. package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts +5 -4
  471. package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts.map +1 -1
  472. package/lib/typescript/module/src/modules/data-sync/utils/get-total-samples-count.d.ts +2 -2
  473. package/lib/typescript/module/src/modules/data-sync/utils/get-total-samples-count.d.ts.map +1 -1
  474. package/lib/typescript/module/src/modules/data-sync/utils/health-data-catalog.d.ts +5 -1
  475. package/lib/typescript/module/src/modules/data-sync/utils/health-data-catalog.d.ts.map +1 -1
  476. package/lib/typescript/module/src/modules/data-sync/utils/health-record-timing.d.ts +10 -0
  477. package/lib/typescript/module/src/modules/data-sync/utils/health-record-timing.d.ts.map +1 -0
  478. package/lib/typescript/module/src/modules/data-sync/utils/health-units.d.ts.map +1 -1
  479. package/lib/typescript/module/src/modules/data-sync/utils/healthkit-data-types.d.ts +6 -5
  480. package/lib/typescript/module/src/modules/data-sync/utils/healthkit-data-types.d.ts.map +1 -1
  481. package/lib/typescript/module/src/modules/data-sync/utils/normalize-core-health-observation.d.ts +13 -0
  482. package/lib/typescript/module/src/modules/data-sync/utils/normalize-core-health-observation.d.ts.map +1 -0
  483. package/lib/typescript/module/src/modules/picker-sheet/components/value-wheel-picker.d.ts +21 -0
  484. package/lib/typescript/module/src/modules/picker-sheet/components/value-wheel-picker.d.ts.map +1 -0
  485. package/lib/typescript/module/src/modules/picker-sheet/components/wheel-picker.d.ts +7 -3
  486. package/lib/typescript/module/src/modules/picker-sheet/components/wheel-picker.d.ts.map +1 -1
  487. package/lib/typescript/module/src/modules/picker-sheet/index.d.ts +1 -0
  488. package/lib/typescript/module/src/modules/picker-sheet/index.d.ts.map +1 -1
  489. package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-item.d.ts.map +1 -1
  490. package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.d.ts.map +1 -1
  491. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.d.ts.map +1 -1
  492. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.d.ts.map +1 -1
  493. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts +3 -1
  494. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts.map +1 -1
  495. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts +9 -3
  496. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts.map +1 -1
  497. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts +5 -1
  498. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts.map +1 -1
  499. package/lib/typescript/module/src/modules/questionnaire-response-form/components/header/questionnaire-header-title.d.ts.map +1 -1
  500. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts +1 -1
  501. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  502. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form.d.ts.map +1 -1
  503. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  504. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-initial-selected-values.d.ts.map +1 -1
  505. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +6 -1
  506. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  507. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts +2 -1
  508. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts.map +1 -1
  509. package/lib/typescript/module/src/modules/questionnaire-response-form/index.d.ts +4 -1
  510. package/lib/typescript/module/src/modules/questionnaire-response-form/index.d.ts.map +1 -1
  511. package/lib/typescript/module/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts +7 -1
  512. package/lib/typescript/module/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts.map +1 -1
  513. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +6 -0
  514. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  515. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts +3 -1
  516. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts.map +1 -1
  517. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts +11 -0
  518. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts.map +1 -1
  519. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts +5 -2
  520. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts.map +1 -1
  521. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts +15 -0
  522. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts.map +1 -0
  523. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +5 -0
  524. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  525. package/lib/typescript/module/src/modules/questionnaire-response-form/types/response-values.d.ts +2 -1
  526. package/lib/typescript/module/src/modules/questionnaire-response-form/types/response-values.d.ts.map +1 -1
  527. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/condition-utils.d.ts.map +1 -1
  528. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts +9 -0
  529. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts.map +1 -0
  530. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts +7 -0
  531. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts.map +1 -0
  532. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts +1 -1
  533. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts.map +1 -1
  534. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-utils.d.ts +4 -1
  535. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-utils.d.ts.map +1 -1
  536. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-validation.d.ts +4 -1
  537. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-validation.d.ts.map +1 -1
  538. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts +3 -0
  539. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts.map +1 -0
  540. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts +8 -0
  541. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts.map +1 -0
  542. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts +5 -0
  543. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts.map +1 -0
  544. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts +22 -0
  545. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts.map +1 -0
  546. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts +10 -0
  547. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts.map +1 -0
  548. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts +2 -1
  549. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts.map +1 -1
  550. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts +15 -0
  551. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts.map +1 -0
  552. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts +5 -0
  553. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts.map +1 -0
  554. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts +3 -1
  555. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts.map +1 -1
  556. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts +4 -0
  557. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts.map +1 -0
  558. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts +6 -0
  559. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts.map +1 -0
  560. package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts +8 -5
  561. package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -1
  562. package/lib/typescript/module/src/modules/ui/components/prerequisite-gate.d.ts +19 -0
  563. package/lib/typescript/module/src/modules/ui/components/prerequisite-gate.d.ts.map +1 -0
  564. package/lib/typescript/module/src/modules/ui/default-translation.d.ts +30 -0
  565. package/lib/typescript/module/src/modules/ui/default-translation.d.ts.map +1 -0
  566. package/lib/typescript/module/src/modules/ui/index.d.ts +1 -0
  567. package/lib/typescript/module/src/modules/ui/index.d.ts.map +1 -1
  568. package/lib/typescript/module/src/polyfills/index.d.ts +7 -1
  569. package/lib/typescript/module/src/polyfills/index.d.ts.map +1 -1
  570. package/package.json +5 -8
@@ -1 +1 @@
1
- {"version":3,"names":["checkBooleanCondition","checkStringCondition","checkDecimalCondition","checkDateCondition","isConditionSatisfied","condition","responses","questionId","question","response","undefined","answerBoolean","answerString","answerDecimal","answerDate","answerDateTime","isItemEnabled","item","enableWhen","length","enableBehavior","every","some","getEnabledItemsForPage","page","filter","ConditionUtils"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/condition-utils.ts"],"mappings":";;AAQA,SACEA,qBAAqB,EACrBC,oBAAoB,EACpBC,qBAAqB,EACrBC,kBAAkB,QACb,uBAAc;AAErB,MAAMC,oBAAoB,GAAGA,CAC3BC,SAAsC,EACtCC,SAAyB,KACb;EACZ,MAAMC,UAAU,GAAGF,SAAS,CAACG,QAAQ;EACrC,MAAMC,QAAQ,GAAGH,SAAS,CAACC,UAAU,CAAC;EAEtC,IAAIE,QAAQ,KAAKC,SAAS,IAAID,QAAQ,KAAK,IAAI,EAAE;IAC/C,OAAO,KAAK;EACd;EAEA,IAAIJ,SAAS,CAACM,aAAa,KAAKD,SAAS,EAAE;IACzC,OAAOV,qBAAqB,CAACK,SAAS,EAAEI,QAAQ,CAAC;EACnD;EAEA,IAAIJ,SAAS,CAACO,YAAY,KAAKF,SAAS,EAAE;IACxC,OAAOT,oBAAoB,CAACI,SAAS,EAAEI,QAAQ,CAAC;EAClD;EAEA,IAAIJ,SAAS,CAACQ,aAAa,KAAKH,SAAS,EAAE;IACzC,OAAOR,qBAAqB,CAACG,SAAS,EAAEI,QAAQ,CAAC;EACnD;EAEA,IACEJ,SAAS,CAACS,UAAU,KAAKJ,SAAS,IAClCL,SAAS,CAACU,cAAc,KAAKL,SAAS,EACtC;IACA,OAAOP,kBAAkB,CAACE,SAAS,EAAEI,QAAQ,CAAC;EAChD;EAEA,OAAO,KAAK;AACd,CAAC;AAED,MAAMO,aAAa,GAAGA,CACpBC,IAAuB,EACvBX,SAAyB,KACb;EACZ,IAAI,CAACW,IAAI,CAACC,UAAU,IAAID,IAAI,CAACC,UAAU,CAACC,MAAM,KAAK,CAAC,EAAE;IACpD,OAAO,IAAI;EACb;EAEA,MAAMC,cAAc,GAAGH,IAAI,CAACG,cAAc,IAAI,KAAK;EAEnD,IAAIA,cAAc,KAAK,KAAK,EAAE;IAC5B,OAAOH,IAAI,CAACC,UAAU,CAACG,KAAK,CAAEhB,SAAS,IACrCD,oBAAoB,CAACC,SAAS,EAAEC,SAAS,CAC3C,CAAC;EACH,CAAC,MAAM,IAAIc,cAAc,KAAK,KAAK,EAAE;IACnC,OAAOH,IAAI,CAACC,UAAU,CAACI,IAAI,CAAEjB,SAAS,IACpCD,oBAAoB,CAACC,SAAS,EAAEC,SAAS,CAC3C,CAAC;EACH;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMiB,sBAAsB,GAAGA,CAC7BC,IAA+B,EAC/BlB,SAAyB,KACO;EAChC,IAAI,CAACkB,IAAI,CAACP,IAAI,EAAE;IACd,OAAO,EAAE;EACX;EAEA,OAAOO,IAAI,CAACP,IAAI,CAACQ,MAAM,CAAER,IAAI,IAC3BD,aAAa,CAACC,IAAI,EAAEX,SAAS,CAC/B,CAAC;AACH,CAAC;AAED,OAAO,MAAMoB,cAAc,GAAG;EAC5BtB,oBAAoB;EACpBY,aAAa;EACbO;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["checkBooleanCondition","checkStringCondition","checkDecimalCondition","checkDateCondition","checkCodingCondition","checkQuantityCondition","checkReferenceCondition","checkTimeCondition","getComparableResponse","isConditionSatisfied","condition","responses","questionId","question","response","operator","answerExists","undefined","answerBoolean","comparableResponse","answerString","answerDecimal","answerInteger","answerDate","answerDateTime","answerTime","answerCoding","answerQuantity","answerReference","isItemEnabled","item","enableWhen","length","enableBehavior","every","some","getEnabledItemsForPage","page","_isSyntheticPage","getEnabledDescendants","items","flatMap","descendants","type","ConditionUtils"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/condition-utils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ const getComparableResponse = value => {
4
+ if (!value || typeof value !== "object") {
5
+ return value;
6
+ }
7
+ if ("valueBoolean" in value) {
8
+ return value.valueBoolean;
9
+ }
10
+ if ("valueString" in value) {
11
+ return value.valueString;
12
+ }
13
+ if ("valueDecimal" in value) {
14
+ return value.valueDecimal;
15
+ }
16
+ if ("valueInteger" in value) {
17
+ return value.valueInteger;
18
+ }
19
+ if ("valueDate" in value) {
20
+ return value.valueDate;
21
+ }
22
+ if ("valueDateTime" in value) {
23
+ return value.valueDateTime;
24
+ }
25
+ if ("valueTime" in value) {
26
+ return value.valueTime;
27
+ }
28
+ if ("valueUri" in value) {
29
+ return value.valueUri;
30
+ }
31
+ if ("valueQuantity" in value) {
32
+ return value.valueQuantity;
33
+ }
34
+ if ("valueReference" in value) {
35
+ return value.valueReference;
36
+ }
37
+ return value;
38
+ };
39
+ const checkTimeCondition = (condition, response) => {
40
+ const actualSeconds = parseTime(response);
41
+ const expectedSeconds = parseTime(condition.answerTime);
42
+ if (actualSeconds === undefined || expectedSeconds === undefined) {
43
+ return false;
44
+ }
45
+ switch (condition.operator) {
46
+ case "=":
47
+ return actualSeconds === expectedSeconds;
48
+ case "!=":
49
+ return actualSeconds !== expectedSeconds;
50
+ case "<":
51
+ return actualSeconds < expectedSeconds;
52
+ case "<=":
53
+ return actualSeconds <= expectedSeconds;
54
+ case ">":
55
+ return actualSeconds > expectedSeconds;
56
+ case ">=":
57
+ return actualSeconds >= expectedSeconds;
58
+ default:
59
+ return false;
60
+ }
61
+ };
62
+ const parseTime = value => {
63
+ if (typeof value !== "string") {
64
+ return undefined;
65
+ }
66
+ const match = /^(\d{2}):(\d{2})(?::(\d{2})(\.\d+)?)?$/.exec(value);
67
+ if (!match) {
68
+ return undefined;
69
+ }
70
+ const [, hours, minutes, seconds = "0", fraction = ""] = match;
71
+ const parsedHours = Number(hours);
72
+ const parsedMinutes = Number(minutes);
73
+ const parsedSeconds = Number(seconds);
74
+ if (parsedHours > 23 || parsedMinutes > 59 || parsedSeconds > 59) {
75
+ return undefined;
76
+ }
77
+ return parsedHours * 3600 + parsedMinutes * 60 + parsedSeconds + (fraction ? Number(fraction) : 0);
78
+ };
79
+ const checkCodingCondition = (condition, response) => {
80
+ const actual = getCoding(response);
81
+ const expected = condition.answerCoding;
82
+ const matches = actual !== undefined && expected !== undefined && actual.code === expected.code && (actual.system === undefined || expected.system === undefined || actual.system === expected.system);
83
+ return condition.operator === "!=" ? !matches : matches;
84
+ };
85
+ const getCoding = value => {
86
+ if (!value || typeof value !== "object") {
87
+ return typeof value === "string" ? {
88
+ code: value
89
+ } : undefined;
90
+ }
91
+ if ("valueCoding" in value) {
92
+ return value.valueCoding;
93
+ }
94
+ if ("code" in value) {
95
+ return value;
96
+ }
97
+ return undefined;
98
+ };
99
+ const checkQuantityCondition = (condition, response) => {
100
+ const actual = getQuantity(response);
101
+ const expected = condition.answerQuantity;
102
+ if (!actual || !expected || actual.value === undefined || expected.value === undefined || actual.code !== expected.code || actual.system !== expected.system || actual.unit !== expected.unit) {
103
+ return false;
104
+ }
105
+ switch (condition.operator) {
106
+ case "=":
107
+ return actual.value === expected.value;
108
+ case "!=":
109
+ return actual.value !== expected.value;
110
+ case "<":
111
+ return actual.value < expected.value;
112
+ case "<=":
113
+ return actual.value <= expected.value;
114
+ case ">":
115
+ return actual.value > expected.value;
116
+ case ">=":
117
+ return actual.value >= expected.value;
118
+ default:
119
+ return false;
120
+ }
121
+ };
122
+ const getQuantity = value => {
123
+ if (!value || typeof value !== "object" || !("value" in value)) {
124
+ return undefined;
125
+ }
126
+ return value;
127
+ };
128
+ const checkReferenceCondition = (condition, response) => {
129
+ const actual = getReference(response);
130
+ const matches = actual !== undefined && actual === condition.answerReference?.reference;
131
+ return condition.operator === "!=" ? !matches : matches;
132
+ };
133
+ const getReference = value => {
134
+ if (!value || typeof value !== "object" || !("reference" in value)) {
135
+ return undefined;
136
+ }
137
+ return typeof value.reference === "string" ? value.reference : undefined;
138
+ };
139
+ export { checkCodingCondition, checkQuantityCondition, checkReferenceCondition, checkTimeCondition, getComparableResponse };
140
+ //# sourceMappingURL=fhir-condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getComparableResponse","value","valueBoolean","valueString","valueDecimal","valueInteger","valueDate","valueDateTime","valueTime","valueUri","valueQuantity","valueReference","checkTimeCondition","condition","response","actualSeconds","parseTime","expectedSeconds","answerTime","undefined","operator","match","exec","hours","minutes","seconds","fraction","parsedHours","Number","parsedMinutes","parsedSeconds","checkCodingCondition","actual","getCoding","expected","answerCoding","matches","code","system","valueCoding","checkQuantityCondition","getQuantity","answerQuantity","unit","checkReferenceCondition","getReference","answerReference","reference"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/utils/conditions/fhir-condition.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+
3
+ import { createTypedAnswer, getAnswerValueKey, validateAnswerForItem } from "./is-valid-questionnaire-answer.js";
4
+ const createNumericAnswer = (value, type) => {
5
+ if (typeof value !== "string" && typeof value !== "number") {
6
+ return undefined;
7
+ }
8
+ const number = typeof value === "number" ? value : Number(value.trim());
9
+ if (!Number.isFinite(number) || type === "integer" && !Number.isInteger(number)) {
10
+ return undefined;
11
+ }
12
+ return number;
13
+ };
14
+ const createChoiceAnswer = (value, item) => {
15
+ if (typeof value === "object" && value !== null) {
16
+ if ("code" in value && item.type === "choice") {
17
+ return {
18
+ valueCoding: value
19
+ };
20
+ }
21
+ if ("reference" in value && item.type === "choice") {
22
+ return {
23
+ valueReference: value
24
+ };
25
+ }
26
+ return undefined;
27
+ }
28
+ if (typeof value !== "string" && typeof value !== "number") {
29
+ return undefined;
30
+ }
31
+ const option = item.answerOption?.find(candidate => candidate.valueCoding?.code === value || candidate.valueReference?.reference === value || candidate.valueInteger === value || candidate.valueDate === value || candidate.valueTime === value || candidate.valueString === value);
32
+ if (option?.valueCoding) {
33
+ return {
34
+ valueCoding: option.valueCoding
35
+ };
36
+ }
37
+ if (option?.valueReference) {
38
+ return {
39
+ valueReference: option.valueReference
40
+ };
41
+ }
42
+ if (option?.valueInteger !== undefined) {
43
+ return {
44
+ valueInteger: option.valueInteger
45
+ };
46
+ }
47
+ if (option?.valueDate !== undefined) {
48
+ return {
49
+ valueDate: option.valueDate
50
+ };
51
+ }
52
+ if (option?.valueTime !== undefined) {
53
+ return {
54
+ valueTime: option.valueTime
55
+ };
56
+ }
57
+ if (option?.valueString !== undefined) {
58
+ return {
59
+ valueString: option.valueString
60
+ };
61
+ }
62
+ if (item.type === "open-choice" && typeof value === "string") {
63
+ return {
64
+ valueString: value
65
+ };
66
+ }
67
+ return typeof value === "string" ? {
68
+ valueCoding: {
69
+ code: value
70
+ }
71
+ } : undefined;
72
+ };
73
+ const createAnswerFromValue = (value, item) => {
74
+ if (value === undefined || value === null || value === "") {
75
+ return undefined;
76
+ }
77
+ if (typeof value === "object") {
78
+ const key = getAnswerValueKey(value);
79
+ if (key) {
80
+ return validateAnswerForItem(value, item.type);
81
+ }
82
+ }
83
+ switch (item.type) {
84
+ case "boolean":
85
+ return createTypedAnswer(item.type, "valueBoolean", value);
86
+ case "date":
87
+ return createTypedAnswer(item.type, "valueDate", value);
88
+ case "dateTime":
89
+ return createTypedAnswer(item.type, "valueDateTime", value);
90
+ case "time":
91
+ return createTypedAnswer(item.type, "valueTime", value);
92
+ case "choice":
93
+ case "open-choice":
94
+ return validateAnswerForItem(createChoiceAnswer(value, item), item.type);
95
+ case "decimal":
96
+ {
97
+ const number = createNumericAnswer(value, "decimal");
98
+ return number === undefined ? undefined : createTypedAnswer(item.type, "valueDecimal", number);
99
+ }
100
+ case "integer":
101
+ {
102
+ const number = createNumericAnswer(value, "integer");
103
+ return number === undefined ? undefined : createTypedAnswer(item.type, "valueInteger", number);
104
+ }
105
+ case "string":
106
+ case "text":
107
+ return createTypedAnswer(item.type, "valueString", value);
108
+ case "url":
109
+ return createTypedAnswer(item.type, "valueUri", value);
110
+ case "attachment":
111
+ return createTypedAnswer(item.type, "valueAttachment", value);
112
+ case "reference":
113
+ return createTypedAnswer(item.type, "valueReference", value);
114
+ case "quantity":
115
+ return createTypedAnswer(item.type, "valueQuantity", value);
116
+ default:
117
+ return undefined;
118
+ }
119
+ };
120
+ const isQuestionnaireItemAnswered = (value, item) => createAnswerFromValue(value, item) !== undefined;
121
+ export { createAnswerFromValue, isQuestionnaireItemAnswered };
122
+ //# sourceMappingURL=create-answer-from-value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createTypedAnswer","getAnswerValueKey","validateAnswerForItem","createNumericAnswer","value","type","undefined","number","Number","trim","isFinite","isInteger","createChoiceAnswer","item","valueCoding","valueReference","option","answerOption","find","candidate","code","reference","valueInteger","valueDate","valueTime","valueString","createAnswerFromValue","key","isQuestionnaireItemAnswered"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/create-answer-from-value.ts"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
 
3
- export const getOptionText = option => {
3
+ import { translateFhirText } from "../translate-fhir-text.js";
4
+ export const getOptionText = (option, locale) => {
4
5
  if (option.valueCoding?.display) {
5
- return option.valueCoding.display;
6
+ return translateFhirText(option.valueCoding.display, option.valueCoding._display, locale);
6
7
  }
7
8
  if (option.valueCoding?.code) {
8
9
  return option.valueCoding.code;
9
10
  }
10
11
  if (option.valueString) {
11
- return option.valueString;
12
+ return translateFhirText(option.valueString, option._valueString, locale);
12
13
  }
13
14
  return "";
14
15
  };
@@ -1 +1 @@
1
- {"version":3,"names":["getOptionText","option","valueCoding","display","code","valueString"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/utils/fields/get-option-text.ts"],"mappings":";;AAEA,OAAO,MAAMA,aAAa,GACxBC,MAA6C,IAClC;EACX,IAAIA,MAAM,CAACC,WAAW,EAAEC,OAAO,EAAE;IAC/B,OAAOF,MAAM,CAACC,WAAW,CAACC,OAAO;EACnC;EACA,IAAIF,MAAM,CAACC,WAAW,EAAEE,IAAI,EAAE;IAC5B,OAAOH,MAAM,CAACC,WAAW,CAACE,IAAI;EAChC;EACA,IAAIH,MAAM,CAACI,WAAW,EAAE;IACtB,OAAOJ,MAAM,CAACI,WAAW;EAC3B;EAEA,OAAO,EAAE;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["translateFhirText","getOptionText","option","locale","valueCoding","display","_display","code","valueString","_valueString"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/utils/fields/get-option-text.ts"],"mappings":";;AAGA,SAASA,iBAAiB,QAAQ,2BAAwB;AAE1D,OAAO,MAAMC,aAAa,GAAGA,CAC3BC,MAA6C,EAC7CC,MAAe,KACJ;EACX,IAAID,MAAM,CAACE,WAAW,EAAEC,OAAO,EAAE;IAC/B,OAAOL,iBAAiB,CACtBE,MAAM,CAACE,WAAW,CAACC,OAAO,EACzBH,MAAM,CAACE,WAAW,CAAqCE,QAAQ,EAChEH,MACF,CAAC;EACH;EACA,IAAID,MAAM,CAACE,WAAW,EAAEG,IAAI,EAAE;IAC5B,OAAOL,MAAM,CAACE,WAAW,CAACG,IAAI;EAChC;EACA,IAAIL,MAAM,CAACM,WAAW,EAAE;IACtB,OAAOR,iBAAiB,CAACE,MAAM,CAACM,WAAW,EAAEN,MAAM,CAACO,YAAY,EAAEN,MAAM,CAAC;EAC3E;EAEA,OAAO,EAAE;AACX,CAAC","ignoreList":[]}
@@ -1,83 +1,86 @@
1
1
  "use strict";
2
2
 
3
+ import { ConditionUtils } from "./condition-utils.js";
4
+ import { createAnswerFromValue } from "./create-answer-from-value.js";
5
+ import { FormValidation } from "./form-validation.js";
6
+ import { isAnswerableQuestionnaireItem } from "./is-answerable-questionnaire-item.js";
3
7
  const extractPagesFromQuestionnaire = questionnaire => {
4
8
  if (!questionnaire.item || !questionnaire.item.length) {
5
9
  return [];
6
10
  }
7
- if (questionnaire.item.some(item => item.type === "group")) {
8
- return questionnaire.item.filter(item => item.type === "group");
9
- }
10
- return [{
11
- linkId: "page-1",
12
- text: questionnaire.title || "Questionnaire",
13
- type: "group",
14
- item: questionnaire.item
15
- }];
16
- };
17
- const getItemType = (linkId, pages) => {
18
- for (const page of pages) {
19
- if (!page.item) {
20
- continue;
11
+ const pages = [];
12
+ let ungroupedItems = [];
13
+ const flushUngroupedItems = () => {
14
+ if (!ungroupedItems.length) {
15
+ return;
21
16
  }
22
- const item = page.item.find(item => item.linkId === linkId);
23
- if (item) {
24
- return item.type || "string";
17
+ pages.push({
18
+ linkId: `page-${pages.length + 1}`,
19
+ text: questionnaire.title || "Questionnaire",
20
+ type: "group",
21
+ item: ungroupedItems,
22
+ _isSyntheticPage: true
23
+ });
24
+ ungroupedItems = [];
25
+ };
26
+ questionnaire.item.forEach(item => {
27
+ if (item.type === "group") {
28
+ flushUngroupedItems();
29
+ pages.push(item);
30
+ } else {
31
+ ungroupedItems.push(item);
25
32
  }
26
- }
27
- return "string";
33
+ });
34
+ flushUngroupedItems();
35
+ return pages;
28
36
  };
29
- const createAnswerFromValue = (value, type) => {
30
- if (value === undefined || value === null || value === "") {
37
+ const createResponseItem = (item, responses) => {
38
+ if (!ConditionUtils.isItemEnabled(item, responses)) {
31
39
  return undefined;
32
40
  }
33
- switch (type) {
34
- case "boolean":
35
- return {
36
- valueBoolean: value
37
- };
38
- case "date":
39
- return {
40
- valueDate: value
41
- };
42
- case "dateTime":
43
- return {
44
- valueDateTime: value
45
- };
46
- case "choice":
47
- return {
48
- valueCoding: {
49
- code: value
50
- }
51
- };
52
- case "decimal":
53
- return {
54
- valueDecimal: parseFloat(value)
55
- };
56
- case "integer":
57
- return {
58
- valueInteger: parseInt(value, 10)
59
- };
60
- case "string":
61
- case "text":
62
- default:
63
- return {
64
- valueString: value
65
- };
41
+ const nestedItems = (item.item ?? []).flatMap(nestedItem => {
42
+ const responseItem = createResponseItem(nestedItem, responses);
43
+ return responseItem ? [responseItem] : [];
44
+ });
45
+ if (item.type === "group") {
46
+ return {
47
+ linkId: item.linkId || "",
48
+ text: item.text,
49
+ item: nestedItems.length ? nestedItems : undefined
50
+ };
51
+ }
52
+ const answer = createAnswerFromValue(responses[item.linkId || ""], item);
53
+ if (!answer && !nestedItems.length) {
54
+ return undefined;
66
55
  }
56
+ return {
57
+ linkId: item.linkId || "",
58
+ answer: answer ? [{
59
+ ...answer,
60
+ ...(nestedItems.length ? {
61
+ item: nestedItems
62
+ } : {})
63
+ }] : undefined
64
+ };
67
65
  };
68
66
  const createQuestionnaireResponseItems = (responses, pages) => {
69
- return Object.entries(responses).map(([linkId, value]) => {
70
- const itemType = getItemType(linkId, pages);
71
- const answer = createAnswerFromValue(value, itemType);
72
- return {
73
- linkId,
74
- answer: answer ? [answer] : undefined
75
- };
67
+ return pages.flatMap(page => {
68
+ if (!page._isSyntheticPage && !ConditionUtils.isItemEnabled(page, responses)) {
69
+ return [];
70
+ }
71
+ if (page._isSyntheticPage) {
72
+ return (page.item ?? []).flatMap(item => {
73
+ const responseItem = createResponseItem(item, responses);
74
+ return responseItem ? [responseItem] : [];
75
+ });
76
+ }
77
+ const responseItem = createResponseItem(page, responses);
78
+ return responseItem ? [responseItem] : [];
76
79
  });
77
80
  };
78
81
  const initializeDefaultValues = pages => {
79
82
  const defaults = {};
80
- const allItems = pages.flatMap(page => page.item ? page.item : []);
83
+ const allItems = getItems(pages.flatMap(page => page._isSyntheticPage ? page.item ?? [] : [page]));
81
84
  allItems.forEach(item => {
82
85
  const hasEnableWhenConditions = item.enableWhen && item.enableWhen.length > 0;
83
86
  if (!hasEnableWhenConditions) {
@@ -97,10 +100,14 @@ const initializeDefaultValues = pages => {
97
100
  });
98
101
  return defaults;
99
102
  };
103
+ const getItems = items => items.flatMap(item => [item, ...getItems(item.item ?? [])]);
104
+ const getAllQuestionnaireItems = pages => pages.flatMap(page => getItems(page.item ?? []));
105
+ const hasUnansweredRequiredItems = (pages, responses, renderItem, resolver, unitOptionsResolver) => pages.some(page => ConditionUtils.getEnabledItemsForPage(page, responses).some(item => item.type !== "display" && item.required && !isAnswerableQuestionnaireItem(item) && !renderItem)) || !FormValidation.validateRequiredFields(pages, responses, renderItem, resolver, unitOptionsResolver).isValid;
100
106
  export const FormUtils = {
101
107
  extractPagesFromQuestionnaire,
102
- getItemType,
103
108
  createQuestionnaireResponseItems,
104
- initializeDefaultValues
109
+ initializeDefaultValues,
110
+ getAllQuestionnaireItems,
111
+ hasUnansweredRequiredItems
105
112
  };
106
113
  //# sourceMappingURL=form-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["extractPagesFromQuestionnaire","questionnaire","item","length","some","type","filter","linkId","text","title","getItemType","pages","page","find","createAnswerFromValue","value","undefined","valueBoolean","valueDate","valueDateTime","valueCoding","code","valueDecimal","parseFloat","valueInteger","parseInt","valueString","createQuestionnaireResponseItems","responses","Object","entries","map","itemType","answer","initializeDefaultValues","defaults","allItems","flatMap","forEach","hasEnableWhenConditions","enableWhen","answerOption","initialSelectedOption","option","initialSelected","FormUtils"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/form-utils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ConditionUtils","createAnswerFromValue","FormValidation","isAnswerableQuestionnaireItem","extractPagesFromQuestionnaire","questionnaire","item","length","pages","ungroupedItems","flushUngroupedItems","push","linkId","text","title","type","_isSyntheticPage","forEach","createResponseItem","responses","isItemEnabled","undefined","nestedItems","flatMap","nestedItem","responseItem","answer","createQuestionnaireResponseItems","page","initializeDefaultValues","defaults","allItems","getItems","hasEnableWhenConditions","enableWhen","answerOption","initialSelectedOption","find","option","initialSelected","valueCoding","code","valueString","items","getAllQuestionnaireItems","hasUnansweredRequiredItems","renderItem","resolver","unitOptionsResolver","some","getEnabledItemsForPage","required","validateRequiredFields","isValid","FormUtils"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/form-utils.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  import { ConditionUtils } from "./condition-utils.js";
4
+ import { isQuestionnaireItemAnswered } from "./create-answer-from-value.js";
5
+ import { isAnswerableQuestionnaireItem } from "./is-answerable-questionnaire-item.js";
6
+ import { validateQuestionnaireItemValue } from "./validate-questionnaire-item-value.js";
4
7
 
5
8
  /**
6
9
  * Validates all required and enabled items have answers
@@ -8,21 +11,36 @@ import { ConditionUtils } from "./condition-utils.js";
8
11
  * @param responses Current responses
9
12
  * @returns Object containing validation result and first unanswered item location if any
10
13
  */
11
- const validateRequiredFields = (pages, responses) => {
14
+ const validateRequiredFields = (pages, responses, renderItem, resolver, unitOptionsResolver) => {
12
15
  for (let pageIndex = 0; pageIndex < pages.length; pageIndex++) {
13
16
  const page = pages[pageIndex];
14
17
  if (!page || !page.item) {
15
18
  continue;
16
19
  }
17
20
  const enabledItems = ConditionUtils.getEnabledItemsForPage(page, responses);
18
- const unansweredIndex = enabledItems.findIndex(item => item.required && (responses[item.linkId || ""] === undefined || responses[item.linkId || ""] === null || responses[item.linkId || ""] === "" && item.type !== "boolean"));
19
- if (unansweredIndex !== -1) {
21
+ const failureIndex = enabledItems.findIndex(item => {
22
+ if (item.type === "group" || item.type === "display") {
23
+ return false;
24
+ }
25
+ const value = responses[item.linkId || ""];
26
+ const answered = isQuestionnaireItemAnswered(value, item);
27
+ const isRequired = item.required === true;
28
+ if (isRequired && (isAnswerableQuestionnaireItem(item) || renderItem) && !answered) {
29
+ return true;
30
+ }
31
+ return validateQuestionnaireItemValue(value, item, responses, resolver, unitOptionsResolver) !== undefined;
32
+ });
33
+ if (failureIndex !== -1) {
34
+ const item = enabledItems[failureIndex];
35
+ const value = item ? responses[item.linkId || ""] : undefined;
36
+ const answered = item ? isQuestionnaireItemAnswered(value, item) : false;
20
37
  return {
21
38
  isValid: false,
22
39
  firstUnansweredLocation: {
23
40
  pageIndex,
24
- itemIndex: unansweredIndex
25
- }
41
+ itemIndex: failureIndex
42
+ },
43
+ failureReason: item?.required && !answered ? "required" : "invalid-answer"
26
44
  };
27
45
  }
28
46
  }
@@ -1 +1 @@
1
- {"version":3,"names":["ConditionUtils","validateRequiredFields","pages","responses","pageIndex","length","page","item","enabledItems","getEnabledItemsForPage","unansweredIndex","findIndex","required","linkId","undefined","type","isValid","firstUnansweredLocation","itemIndex","FormValidation"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/form-validation.ts"],"mappings":";;AAGA,SAASA,cAAc,QAAQ,sBAAmB;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,sBAAsB,GAAGA,CAC7BC,KAAkC,EAClCC,SAAyB,KAItB;EACH,KAAK,IAAIC,SAAS,GAAG,CAAC,EAAEA,SAAS,GAAGF,KAAK,CAACG,MAAM,EAAED,SAAS,EAAE,EAAE;IAC7D,MAAME,IAAI,GAAGJ,KAAK,CAACE,SAAS,CAAC;IAE7B,IAAI,CAACE,IAAI,IAAI,CAACA,IAAI,CAACC,IAAI,EAAE;MACvB;IACF;IAEA,MAAMC,YAAY,GAAGR,cAAc,CAACS,sBAAsB,CAACH,IAAI,EAAEH,SAAS,CAAC;IAE3E,MAAMO,eAAe,GAAGF,YAAY,CAACG,SAAS,CAC3CJ,IAAI,IACHA,IAAI,CAACK,QAAQ,KACZT,SAAS,CAACI,IAAI,CAACM,MAAM,IAAI,EAAE,CAAC,KAAKC,SAAS,IACzCX,SAAS,CAACI,IAAI,CAACM,MAAM,IAAI,EAAE,CAAC,KAAK,IAAI,IACpCV,SAAS,CAACI,IAAI,CAACM,MAAM,IAAI,EAAE,CAAC,KAAK,EAAE,IAAIN,IAAI,CAACQ,IAAI,KAAK,SAAU,CACtE,CAAC;IAED,IAAIL,eAAe,KAAK,CAAC,CAAC,EAAE;MAC1B,OAAO;QACLM,OAAO,EAAE,KAAK;QACdC,uBAAuB,EAAE;UACvBb,SAAS;UACTc,SAAS,EAAER;QACb;MACF,CAAC;IACH;EACF;EAEA,OAAO;IACLM,OAAO,EAAE,IAAI;IACbC,uBAAuB,EAAE;EAC3B,CAAC;AACH,CAAC;AAED,OAAO,MAAME,cAAc,GAAG;EAC5BlB;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["ConditionUtils","isQuestionnaireItemAnswered","isAnswerableQuestionnaireItem","validateQuestionnaireItemValue","validateRequiredFields","pages","responses","renderItem","resolver","unitOptionsResolver","pageIndex","length","page","item","enabledItems","getEnabledItemsForPage","failureIndex","findIndex","type","value","linkId","answered","isRequired","required","undefined","isValid","firstUnansweredLocation","itemIndex","failureReason","FormValidation"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/form-validation.ts"],"mappings":";;AAIA,SAASA,cAAc,QAAQ,sBAAmB;AAClD,SAASC,2BAA2B,QAAQ,+BAA4B;AACxE,SAASC,6BAA6B,QAAQ,uCAAoC;AAKlF,SAASC,8BAA8B,QAAQ,wCAAqC;;AAEpF;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,sBAAsB,GAAGA,CAC7BC,KAAkC,EAClCC,SAAyB,EACzBC,UAAsC,EACtCC,QAA0C,EAC1CC,mBAAsD,KAKnD;EACH,KAAK,IAAIC,SAAS,GAAG,CAAC,EAAEA,SAAS,GAAGL,KAAK,CAACM,MAAM,EAAED,SAAS,EAAE,EAAE;IAC7D,MAAME,IAAI,GAAGP,KAAK,CAACK,SAAS,CAAC;IAE7B,IAAI,CAACE,IAAI,IAAI,CAACA,IAAI,CAACC,IAAI,EAAE;MACvB;IACF;IAEA,MAAMC,YAAY,GAAGd,cAAc,CAACe,sBAAsB,CAACH,IAAI,EAAEN,SAAS,CAAC;IAE3E,MAAMU,YAAY,GAAGF,YAAY,CAACG,SAAS,CAAEJ,IAAI,IAAK;MACpD,IAAIA,IAAI,CAACK,IAAI,KAAK,OAAO,IAAIL,IAAI,CAACK,IAAI,KAAK,SAAS,EAAE;QACpD,OAAO,KAAK;MACd;MAEA,MAAMC,KAAK,GAAGb,SAAS,CAACO,IAAI,CAACO,MAAM,IAAI,EAAE,CAAC;MAC1C,MAAMC,QAAQ,GAAGpB,2BAA2B,CAACkB,KAAK,EAAEN,IAAI,CAAC;MACzD,MAAMS,UAAU,GAAGT,IAAI,CAACU,QAAQ,KAAK,IAAI;MAEzC,IACED,UAAU,KACTpB,6BAA6B,CAACW,IAAI,CAAC,IAAIN,UAAU,CAAC,IACnD,CAACc,QAAQ,EACT;QACA,OAAO,IAAI;MACb;MAEA,OACElB,8BAA8B,CAC5BgB,KAAK,EACLN,IAAI,EACJP,SAAS,EACTE,QAAQ,EACRC,mBACF,CAAC,KAAKe,SAAS;IAEnB,CAAC,CAAC;IAEF,IAAIR,YAAY,KAAK,CAAC,CAAC,EAAE;MACvB,MAAMH,IAAI,GAAGC,YAAY,CAACE,YAAY,CAAC;MACvC,MAAMG,KAAK,GAAGN,IAAI,GAAGP,SAAS,CAACO,IAAI,CAACO,MAAM,IAAI,EAAE,CAAC,GAAGI,SAAS;MAC7D,MAAMH,QAAQ,GAAGR,IAAI,GAAGZ,2BAA2B,CAACkB,KAAK,EAAEN,IAAI,CAAC,GAAG,KAAK;MAExE,OAAO;QACLY,OAAO,EAAE,KAAK;QACdC,uBAAuB,EAAE;UACvBhB,SAAS;UACTiB,SAAS,EAAEX;QACb,CAAC;QACDY,aAAa,EACXf,IAAI,EAAEU,QAAQ,IAAI,CAACF,QAAQ,GAAG,UAAU,GAAG;MAC/C,CAAC;IACH;EACF;EAEA,OAAO;IACLI,OAAO,EAAE,IAAI;IACbC,uBAAuB,EAAE;EAC3B,CAAC;AACH,CAAC;AAED,OAAO,MAAMG,cAAc,GAAG;EAC5BzB;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ const ANSWERABLE_ITEM_TYPES = new Set(["boolean", "choice", "date", "dateTime", "decimal", "integer", "string", "text", "time"]);
4
+ export const isAnswerableQuestionnaireItem = item => ANSWERABLE_ITEM_TYPES.has(item.type);
5
+ //# sourceMappingURL=is-answerable-questionnaire-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ANSWERABLE_ITEM_TYPES","Set","isAnswerableQuestionnaireItem","item","has","type"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.ts"],"mappings":";;AAEA,MAAMA,qBAAqB,GAAG,IAAIC,GAAG,CAA4B,CAC/D,SAAS,EACT,QAAQ,EACR,MAAM,EACN,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,MAAM,EACN,MAAM,CACP,CAAC;AAEF,OAAO,MAAMC,6BAA6B,GACxCC,IAAuB,IACXH,qBAAqB,CAACI,GAAG,CAACD,IAAI,CAACE,IAAI,CAAC","ignoreList":[]}