@ovok/native 1.10.3 → 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 (485) hide show
  1. package/lib/commonjs/modules/auth/default-translation.js +17 -0
  2. package/lib/commonjs/modules/auth/default-translation.js.map +1 -1
  3. package/lib/commonjs/modules/auth/hooks/use-session.js +3 -0
  4. package/lib/commonjs/modules/auth/hooks/use-session.js.map +1 -1
  5. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +1 -0
  6. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  7. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js +1 -0
  8. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  9. package/lib/commonjs/modules/auth/session/session-store-refresh.js +125 -0
  10. package/lib/commonjs/modules/auth/session/session-store-refresh.js.map +1 -0
  11. package/lib/commonjs/modules/auth/session/session-store-request-state.js +73 -0
  12. package/lib/commonjs/modules/auth/session/session-store-request-state.js.map +1 -0
  13. package/lib/commonjs/modules/auth/session/session-store-types.js.map +1 -1
  14. package/lib/commonjs/modules/auth/session/session-store.js +36 -115
  15. package/lib/commonjs/modules/auth/session/session-store.js.map +1 -1
  16. package/lib/commonjs/modules/auth/utils/sign-in-error.js +4 -2
  17. package/lib/commonjs/modules/auth/utils/sign-in-error.js.map +1 -1
  18. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  19. package/lib/commonjs/modules/data-sync/hooks/use-listen-changes.js.map +1 -1
  20. package/lib/commonjs/modules/data-sync/services/apple-health-sync-service.js.map +1 -1
  21. package/lib/commonjs/modules/data-sync/utils/convert-generic-health-data.js +47 -21
  22. package/lib/commonjs/modules/data-sync/utils/convert-generic-health-data.js.map +1 -1
  23. package/lib/commonjs/modules/data-sync/utils/convert-records-to-observation.js +19 -16
  24. package/lib/commonjs/modules/data-sync/utils/convert-records-to-observation.js.map +1 -1
  25. package/lib/commonjs/modules/data-sync/utils/convert-samples-to-observation.js +17 -4
  26. package/lib/commonjs/modules/data-sync/utils/convert-samples-to-observation.js.map +1 -1
  27. package/lib/commonjs/modules/data-sync/utils/get-samples-from-health.js.map +1 -1
  28. package/lib/commonjs/modules/data-sync/utils/get-total-samples-count.js.map +1 -1
  29. package/lib/commonjs/modules/data-sync/utils/health-data-catalog.js +168 -5
  30. package/lib/commonjs/modules/data-sync/utils/health-data-catalog.js.map +1 -1
  31. package/lib/commonjs/modules/data-sync/utils/health-record-timing.js +52 -0
  32. package/lib/commonjs/modules/data-sync/utils/health-record-timing.js.map +1 -0
  33. package/lib/commonjs/modules/data-sync/utils/healthkit-data-types.js.map +1 -1
  34. package/lib/commonjs/modules/data-sync/utils/normalize-core-health-observation.js +74 -0
  35. package/lib/commonjs/modules/data-sync/utils/normalize-core-health-observation.js.map +1 -0
  36. package/lib/commonjs/modules/picker-sheet/components/value-wheel-picker.js +41 -0
  37. package/lib/commonjs/modules/picker-sheet/components/value-wheel-picker.js.map +1 -0
  38. package/lib/commonjs/modules/picker-sheet/components/wheel-picker.js +56 -15
  39. package/lib/commonjs/modules/picker-sheet/components/wheel-picker.js.map +1 -1
  40. package/lib/commonjs/modules/picker-sheet/index.js +11 -0
  41. package/lib/commonjs/modules/picker-sheet/index.js.map +1 -1
  42. package/lib/commonjs/modules/questionnaire-response-form/README.md +59 -20
  43. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-item.js +8 -0
  44. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-item.js.map +1 -1
  45. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js +8 -0
  46. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js.map +1 -1
  47. package/lib/commonjs/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js +8 -3
  48. package/lib/commonjs/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js.map +1 -1
  49. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js +9 -3
  50. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js.map +1 -1
  51. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js +18 -8
  52. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js.map +1 -1
  53. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js +41 -2
  54. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js.map +1 -1
  55. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js +43 -5
  56. package/lib/commonjs/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js.map +1 -1
  57. package/lib/commonjs/modules/questionnaire-response-form/components/header/questionnaire-header-title.js +3 -1
  58. package/lib/commonjs/modules/questionnaire-response-form/components/header/questionnaire-header-title.js.map +1 -1
  59. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js +37 -11
  60. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  61. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form.js +1 -0
  62. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form.js.map +1 -1
  63. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +9 -3
  64. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  65. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-initial-selected-values.js +5 -3
  66. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-initial-selected-values.js.map +1 -1
  67. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-navigation-handlers.js +15 -4
  68. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-navigation-handlers.js.map +1 -1
  69. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js +14 -7
  70. package/lib/commonjs/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js.map +1 -1
  71. package/lib/commonjs/modules/questionnaire-response-form/index.js +20 -0
  72. package/lib/commonjs/modules/questionnaire-response-form/index.js.map +1 -1
  73. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-form-values.js +4 -0
  74. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-item-render-props.js +6 -0
  75. package/lib/commonjs/modules/questionnaire-response-form/types/questionnaire-item-render-props.js.map +1 -0
  76. package/lib/commonjs/modules/questionnaire-response-form/types/response-values.js +4 -0
  77. package/lib/commonjs/modules/questionnaire-response-form/utils/condition-utils.js +37 -6
  78. package/lib/commonjs/modules/questionnaire-response-form/utils/condition-utils.js.map +1 -1
  79. package/lib/commonjs/modules/questionnaire-response-form/utils/conditions/fhir-condition.js +148 -0
  80. package/lib/commonjs/modules/questionnaire-response-form/utils/conditions/fhir-condition.js.map +1 -0
  81. package/lib/commonjs/modules/questionnaire-response-form/utils/create-answer-from-value.js +127 -0
  82. package/lib/commonjs/modules/questionnaire-response-form/utils/create-answer-from-value.js.map +1 -0
  83. package/lib/commonjs/modules/questionnaire-response-form/utils/fields/get-option-text.js +4 -3
  84. package/lib/commonjs/modules/questionnaire-response-form/utils/fields/get-option-text.js.map +1 -1
  85. package/lib/commonjs/modules/questionnaire-response-form/utils/form-utils.js +71 -64
  86. package/lib/commonjs/modules/questionnaire-response-form/utils/form-utils.js.map +1 -1
  87. package/lib/commonjs/modules/questionnaire-response-form/utils/form-validation.js +23 -5
  88. package/lib/commonjs/modules/questionnaire-response-form/utils/form-validation.js.map +1 -1
  89. package/lib/commonjs/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js +10 -0
  90. package/lib/commonjs/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js.map +1 -0
  91. package/lib/commonjs/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js +83 -0
  92. package/lib/commonjs/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js.map +1 -0
  93. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-date-utils.js +54 -0
  94. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-date-utils.js.map +1 -0
  95. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js +75 -0
  96. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js.map +1 -0
  97. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js +63 -0
  98. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js.map +1 -0
  99. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js +49 -18
  100. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js.map +1 -1
  101. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-picker-options.js +117 -0
  102. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-picker-options.js.map +1 -0
  103. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js +109 -0
  104. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js.map +1 -0
  105. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js +2 -2
  106. package/lib/commonjs/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js.map +1 -1
  107. package/lib/commonjs/modules/questionnaire-response-form/utils/translate-fhir-text.js +36 -0
  108. package/lib/commonjs/modules/questionnaire-response-form/utils/translate-fhir-text.js.map +1 -0
  109. package/lib/commonjs/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js +49 -0
  110. package/lib/commonjs/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js.map +1 -0
  111. package/lib/commonjs/modules/ui/components/prerequisite-gate.js +73 -0
  112. package/lib/commonjs/modules/ui/components/prerequisite-gate.js.map +1 -0
  113. package/lib/commonjs/modules/ui/index.js +11 -0
  114. package/lib/commonjs/modules/ui/index.js.map +1 -1
  115. package/lib/commonjs/polyfills/index.js +9 -7
  116. package/lib/commonjs/polyfills/index.js.map +1 -1
  117. package/lib/module/modules/auth/default-translation.js +17 -0
  118. package/lib/module/modules/auth/default-translation.js.map +1 -1
  119. package/lib/module/modules/auth/hooks/use-session.js +3 -0
  120. package/lib/module/modules/auth/hooks/use-session.js.map +1 -1
  121. package/lib/module/modules/auth/register/components/form/register-form-provider.js +1 -0
  122. package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  123. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js +1 -0
  124. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  125. package/lib/module/modules/auth/session/session-store-refresh.js +121 -0
  126. package/lib/module/modules/auth/session/session-store-refresh.js.map +1 -0
  127. package/lib/module/modules/auth/session/session-store-request-state.js +69 -0
  128. package/lib/module/modules/auth/session/session-store-request-state.js.map +1 -0
  129. package/lib/module/modules/auth/session/session-store-types.js.map +1 -1
  130. package/lib/module/modules/auth/session/session-store.js +36 -115
  131. package/lib/module/modules/auth/session/session-store.js.map +1 -1
  132. package/lib/module/modules/auth/utils/sign-in-error.js +4 -2
  133. package/lib/module/modules/auth/utils/sign-in-error.js.map +1 -1
  134. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  135. package/lib/module/modules/data-sync/hooks/use-listen-changes.js.map +1 -1
  136. package/lib/module/modules/data-sync/services/apple-health-sync-service.js.map +1 -1
  137. package/lib/module/modules/data-sync/utils/convert-generic-health-data.js +47 -21
  138. package/lib/module/modules/data-sync/utils/convert-generic-health-data.js.map +1 -1
  139. package/lib/module/modules/data-sync/utils/convert-records-to-observation.js +19 -16
  140. package/lib/module/modules/data-sync/utils/convert-records-to-observation.js.map +1 -1
  141. package/lib/module/modules/data-sync/utils/convert-samples-to-observation.js +17 -4
  142. package/lib/module/modules/data-sync/utils/convert-samples-to-observation.js.map +1 -1
  143. package/lib/module/modules/data-sync/utils/get-samples-from-health.js.map +1 -1
  144. package/lib/module/modules/data-sync/utils/get-total-samples-count.js.map +1 -1
  145. package/lib/module/modules/data-sync/utils/health-data-catalog.js +168 -5
  146. package/lib/module/modules/data-sync/utils/health-data-catalog.js.map +1 -1
  147. package/lib/module/modules/data-sync/utils/health-record-timing.js +47 -0
  148. package/lib/module/modules/data-sync/utils/health-record-timing.js.map +1 -0
  149. package/lib/module/modules/data-sync/utils/healthkit-data-types.js.map +1 -1
  150. package/lib/module/modules/data-sync/utils/normalize-core-health-observation.js +69 -0
  151. package/lib/module/modules/data-sync/utils/normalize-core-health-observation.js.map +1 -0
  152. package/lib/module/modules/picker-sheet/components/value-wheel-picker.js +36 -0
  153. package/lib/module/modules/picker-sheet/components/value-wheel-picker.js.map +1 -0
  154. package/lib/module/modules/picker-sheet/components/wheel-picker.js +56 -15
  155. package/lib/module/modules/picker-sheet/components/wheel-picker.js.map +1 -1
  156. package/lib/module/modules/picker-sheet/index.js +1 -0
  157. package/lib/module/modules/picker-sheet/index.js.map +1 -1
  158. package/lib/module/modules/questionnaire-response-form/README.md +59 -20
  159. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-item.js +8 -0
  160. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-item.js.map +1 -1
  161. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js +8 -0
  162. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.js.map +1 -1
  163. package/lib/module/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js +8 -3
  164. package/lib/module/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.js.map +1 -1
  165. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js +9 -3
  166. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.js.map +1 -1
  167. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js +18 -8
  168. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-date-field.js.map +1 -1
  169. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js +42 -3
  170. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.js.map +1 -1
  171. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js +41 -3
  172. package/lib/module/modules/questionnaire-response-form/components/fields/questionnaire-text-field.js.map +1 -1
  173. package/lib/module/modules/questionnaire-response-form/components/header/questionnaire-header-title.js +3 -1
  174. package/lib/module/modules/questionnaire-response-form/components/header/questionnaire-header-title.js.map +1 -1
  175. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js +37 -11
  176. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  177. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form.js +1 -0
  178. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form.js.map +1 -1
  179. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +9 -3
  180. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  181. package/lib/module/modules/questionnaire-response-form/hooks/use-initial-selected-values.js +5 -3
  182. package/lib/module/modules/questionnaire-response-form/hooks/use-initial-selected-values.js.map +1 -1
  183. package/lib/module/modules/questionnaire-response-form/hooks/use-navigation-handlers.js +15 -4
  184. package/lib/module/modules/questionnaire-response-form/hooks/use-navigation-handlers.js.map +1 -1
  185. package/lib/module/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js +14 -7
  186. package/lib/module/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.js.map +1 -1
  187. package/lib/module/modules/questionnaire-response-form/index.js +2 -0
  188. package/lib/module/modules/questionnaire-response-form/index.js.map +1 -1
  189. package/lib/module/modules/questionnaire-response-form/types/questionnaire-form-values.js +2 -0
  190. package/lib/module/modules/questionnaire-response-form/types/questionnaire-item-render-props.js +4 -0
  191. package/lib/module/modules/questionnaire-response-form/types/questionnaire-item-render-props.js.map +1 -0
  192. package/lib/module/modules/questionnaire-response-form/types/response-values.js +2 -0
  193. package/lib/module/modules/questionnaire-response-form/utils/condition-utils.js +37 -6
  194. package/lib/module/modules/questionnaire-response-form/utils/condition-utils.js.map +1 -1
  195. package/lib/module/modules/questionnaire-response-form/utils/conditions/fhir-condition.js +140 -0
  196. package/lib/module/modules/questionnaire-response-form/utils/conditions/fhir-condition.js.map +1 -0
  197. package/lib/module/modules/questionnaire-response-form/utils/create-answer-from-value.js +122 -0
  198. package/lib/module/modules/questionnaire-response-form/utils/create-answer-from-value.js.map +1 -0
  199. package/lib/module/modules/questionnaire-response-form/utils/fields/get-option-text.js +4 -3
  200. package/lib/module/modules/questionnaire-response-form/utils/fields/get-option-text.js.map +1 -1
  201. package/lib/module/modules/questionnaire-response-form/utils/form-utils.js +71 -64
  202. package/lib/module/modules/questionnaire-response-form/utils/form-utils.js.map +1 -1
  203. package/lib/module/modules/questionnaire-response-form/utils/form-validation.js +23 -5
  204. package/lib/module/modules/questionnaire-response-form/utils/form-validation.js.map +1 -1
  205. package/lib/module/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js +5 -0
  206. package/lib/module/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.js.map +1 -0
  207. package/lib/module/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js +77 -0
  208. package/lib/module/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.js.map +1 -0
  209. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-date-utils.js +49 -0
  210. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-date-utils.js.map +1 -0
  211. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js +71 -0
  212. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-constraints.js.map +1 -0
  213. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js +57 -0
  214. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.js.map +1 -0
  215. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js +49 -18
  216. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.js.map +1 -1
  217. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-picker-options.js +112 -0
  218. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-picker-options.js.map +1 -0
  219. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js +105 -0
  220. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.js.map +1 -0
  221. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js +2 -2
  222. package/lib/module/modules/questionnaire-response-form/utils/questionnaire-submit-utils.js.map +1 -1
  223. package/lib/module/modules/questionnaire-response-form/utils/translate-fhir-text.js +31 -0
  224. package/lib/module/modules/questionnaire-response-form/utils/translate-fhir-text.js.map +1 -0
  225. package/lib/module/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js +44 -0
  226. package/lib/module/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.js.map +1 -0
  227. package/lib/module/modules/ui/components/prerequisite-gate.js +67 -0
  228. package/lib/module/modules/ui/components/prerequisite-gate.js.map +1 -0
  229. package/lib/module/modules/ui/index.js +1 -0
  230. package/lib/module/modules/ui/index.js.map +1 -1
  231. package/lib/module/polyfills/index.js +11 -1
  232. package/lib/module/polyfills/index.js.map +1 -1
  233. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts +17 -0
  234. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts.map +1 -1
  235. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts +4 -1
  236. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  237. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  238. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  239. package/lib/typescript/commonjs/src/modules/auth/session/session-store-refresh.d.ts +8 -0
  240. package/lib/typescript/commonjs/src/modules/auth/session/session-store-refresh.d.ts.map +1 -0
  241. package/lib/typescript/commonjs/src/modules/auth/session/session-store-request-state.d.ts +23 -0
  242. package/lib/typescript/commonjs/src/modules/auth/session/session-store-request-state.d.ts.map +1 -0
  243. package/lib/typescript/commonjs/src/modules/auth/session/session-store-types.d.ts +8 -2
  244. package/lib/typescript/commonjs/src/modules/auth/session/session-store-types.d.ts.map +1 -1
  245. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts +1 -1
  246. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts.map +1 -1
  247. package/lib/typescript/commonjs/src/modules/auth/utils/sign-in-error.d.ts +2 -1
  248. package/lib/typescript/commonjs/src/modules/auth/utils/sign-in-error.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-listen-changes.d.ts +2 -3
  251. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-listen-changes.d.ts.map +1 -1
  252. package/lib/typescript/commonjs/src/modules/data-sync/services/apple-health-sync-service.d.ts +4 -5
  253. package/lib/typescript/commonjs/src/modules/data-sync/services/apple-health-sync-service.d.ts.map +1 -1
  254. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +4 -2
  255. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  256. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-sync-props.d.ts +7 -1
  257. package/lib/typescript/commonjs/src/modules/data-sync/types/apple-health-sync-props.d.ts.map +1 -1
  258. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +2 -1
  259. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  260. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-generic-health-data.d.ts +3 -2
  261. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-generic-health-data.d.ts.map +1 -1
  262. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-records-to-observation.d.ts.map +1 -1
  263. package/lib/typescript/commonjs/src/modules/data-sync/utils/convert-samples-to-observation.d.ts.map +1 -1
  264. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts +5 -4
  265. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts.map +1 -1
  266. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-total-samples-count.d.ts +2 -2
  267. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-total-samples-count.d.ts.map +1 -1
  268. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-data-catalog.d.ts +3 -1
  269. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-data-catalog.d.ts.map +1 -1
  270. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-record-timing.d.ts +10 -0
  271. package/lib/typescript/commonjs/src/modules/data-sync/utils/health-record-timing.d.ts.map +1 -0
  272. package/lib/typescript/commonjs/src/modules/data-sync/utils/healthkit-data-types.d.ts +6 -5
  273. package/lib/typescript/commonjs/src/modules/data-sync/utils/healthkit-data-types.d.ts.map +1 -1
  274. package/lib/typescript/commonjs/src/modules/data-sync/utils/normalize-core-health-observation.d.ts +13 -0
  275. package/lib/typescript/commonjs/src/modules/data-sync/utils/normalize-core-health-observation.d.ts.map +1 -0
  276. package/lib/typescript/commonjs/src/modules/picker-sheet/components/value-wheel-picker.d.ts +21 -0
  277. package/lib/typescript/commonjs/src/modules/picker-sheet/components/value-wheel-picker.d.ts.map +1 -0
  278. package/lib/typescript/commonjs/src/modules/picker-sheet/components/wheel-picker.d.ts +7 -3
  279. package/lib/typescript/commonjs/src/modules/picker-sheet/components/wheel-picker.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/src/modules/picker-sheet/index.d.ts +1 -0
  281. package/lib/typescript/commonjs/src/modules/picker-sheet/index.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-item.d.ts.map +1 -1
  283. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.d.ts.map +1 -1
  285. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.d.ts.map +1 -1
  286. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts +3 -1
  287. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts +9 -3
  289. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts.map +1 -1
  290. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts +5 -1
  291. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts.map +1 -1
  292. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/header/questionnaire-header-title.d.ts.map +1 -1
  293. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts +1 -1
  294. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  295. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form.d.ts.map +1 -1
  296. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  297. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-initial-selected-values.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +6 -1
  299. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  300. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts +2 -1
  301. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts.map +1 -1
  302. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/index.d.ts +4 -1
  303. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/index.d.ts.map +1 -1
  304. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts +7 -1
  305. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts.map +1 -1
  306. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +6 -0
  307. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  308. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts +3 -1
  309. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts.map +1 -1
  310. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts +11 -0
  311. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts.map +1 -1
  312. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts +5 -2
  313. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts.map +1 -1
  314. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts +15 -0
  315. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts.map +1 -0
  316. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +5 -0
  317. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  318. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/response-values.d.ts +2 -1
  319. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/response-values.d.ts.map +1 -1
  320. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/condition-utils.d.ts.map +1 -1
  321. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts +9 -0
  322. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts.map +1 -0
  323. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts +7 -0
  324. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts.map +1 -0
  325. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts +1 -1
  326. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts.map +1 -1
  327. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-utils.d.ts +4 -1
  328. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-utils.d.ts.map +1 -1
  329. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-validation.d.ts +4 -1
  330. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/form-validation.d.ts.map +1 -1
  331. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts +3 -0
  332. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts +8 -0
  334. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts.map +1 -0
  335. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts +5 -0
  336. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts.map +1 -0
  337. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts +22 -0
  338. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts.map +1 -0
  339. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts +10 -0
  340. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts.map +1 -0
  341. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts +2 -1
  342. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts.map +1 -1
  343. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts +15 -0
  344. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts.map +1 -0
  345. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts +5 -0
  346. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts.map +1 -0
  347. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts +3 -1
  348. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts.map +1 -1
  349. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts +4 -0
  350. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts.map +1 -0
  351. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts +6 -0
  352. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts.map +1 -0
  353. package/lib/typescript/commonjs/src/modules/ui/components/prerequisite-gate.d.ts +19 -0
  354. package/lib/typescript/commonjs/src/modules/ui/components/prerequisite-gate.d.ts.map +1 -0
  355. package/lib/typescript/commonjs/src/modules/ui/index.d.ts +1 -0
  356. package/lib/typescript/commonjs/src/modules/ui/index.d.ts.map +1 -1
  357. package/lib/typescript/commonjs/src/polyfills/index.d.ts +7 -1
  358. package/lib/typescript/commonjs/src/polyfills/index.d.ts.map +1 -1
  359. package/lib/typescript/module/src/modules/auth/default-translation.d.ts +17 -0
  360. package/lib/typescript/module/src/modules/auth/default-translation.d.ts.map +1 -1
  361. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts +4 -1
  362. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  363. package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  364. package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  365. package/lib/typescript/module/src/modules/auth/session/session-store-refresh.d.ts +8 -0
  366. package/lib/typescript/module/src/modules/auth/session/session-store-refresh.d.ts.map +1 -0
  367. package/lib/typescript/module/src/modules/auth/session/session-store-request-state.d.ts +23 -0
  368. package/lib/typescript/module/src/modules/auth/session/session-store-request-state.d.ts.map +1 -0
  369. package/lib/typescript/module/src/modules/auth/session/session-store-types.d.ts +8 -2
  370. package/lib/typescript/module/src/modules/auth/session/session-store-types.d.ts.map +1 -1
  371. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts +1 -1
  372. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts.map +1 -1
  373. package/lib/typescript/module/src/modules/auth/utils/sign-in-error.d.ts +2 -1
  374. package/lib/typescript/module/src/modules/auth/utils/sign-in-error.d.ts.map +1 -1
  375. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  376. package/lib/typescript/module/src/modules/data-sync/hooks/use-listen-changes.d.ts +2 -3
  377. package/lib/typescript/module/src/modules/data-sync/hooks/use-listen-changes.d.ts.map +1 -1
  378. package/lib/typescript/module/src/modules/data-sync/services/apple-health-sync-service.d.ts +4 -5
  379. package/lib/typescript/module/src/modules/data-sync/services/apple-health-sync-service.d.ts.map +1 -1
  380. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts +4 -2
  381. package/lib/typescript/module/src/modules/data-sync/types/apple-health-authorization-provider-props.d.ts.map +1 -1
  382. package/lib/typescript/module/src/modules/data-sync/types/apple-health-sync-props.d.ts +7 -1
  383. package/lib/typescript/module/src/modules/data-sync/types/apple-health-sync-props.d.ts.map +1 -1
  384. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +2 -1
  385. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  386. package/lib/typescript/module/src/modules/data-sync/utils/convert-generic-health-data.d.ts +3 -2
  387. package/lib/typescript/module/src/modules/data-sync/utils/convert-generic-health-data.d.ts.map +1 -1
  388. package/lib/typescript/module/src/modules/data-sync/utils/convert-records-to-observation.d.ts.map +1 -1
  389. package/lib/typescript/module/src/modules/data-sync/utils/convert-samples-to-observation.d.ts.map +1 -1
  390. package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts +5 -4
  391. package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts.map +1 -1
  392. package/lib/typescript/module/src/modules/data-sync/utils/get-total-samples-count.d.ts +2 -2
  393. package/lib/typescript/module/src/modules/data-sync/utils/get-total-samples-count.d.ts.map +1 -1
  394. package/lib/typescript/module/src/modules/data-sync/utils/health-data-catalog.d.ts +3 -1
  395. package/lib/typescript/module/src/modules/data-sync/utils/health-data-catalog.d.ts.map +1 -1
  396. package/lib/typescript/module/src/modules/data-sync/utils/health-record-timing.d.ts +10 -0
  397. package/lib/typescript/module/src/modules/data-sync/utils/health-record-timing.d.ts.map +1 -0
  398. package/lib/typescript/module/src/modules/data-sync/utils/healthkit-data-types.d.ts +6 -5
  399. package/lib/typescript/module/src/modules/data-sync/utils/healthkit-data-types.d.ts.map +1 -1
  400. package/lib/typescript/module/src/modules/data-sync/utils/normalize-core-health-observation.d.ts +13 -0
  401. package/lib/typescript/module/src/modules/data-sync/utils/normalize-core-health-observation.d.ts.map +1 -0
  402. package/lib/typescript/module/src/modules/picker-sheet/components/value-wheel-picker.d.ts +21 -0
  403. package/lib/typescript/module/src/modules/picker-sheet/components/value-wheel-picker.d.ts.map +1 -0
  404. package/lib/typescript/module/src/modules/picker-sheet/components/wheel-picker.d.ts +7 -3
  405. package/lib/typescript/module/src/modules/picker-sheet/components/wheel-picker.d.ts.map +1 -1
  406. package/lib/typescript/module/src/modules/picker-sheet/index.d.ts +1 -0
  407. package/lib/typescript/module/src/modules/picker-sheet/index.d.ts.map +1 -1
  408. package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-item.d.ts.map +1 -1
  409. package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.d.ts.map +1 -1
  410. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.d.ts.map +1 -1
  411. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-choice-field.d.ts.map +1 -1
  412. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts +3 -1
  413. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-date-field.d.ts.map +1 -1
  414. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts +9 -3
  415. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-item-renderer.d.ts.map +1 -1
  416. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts +5 -1
  417. package/lib/typescript/module/src/modules/questionnaire-response-form/components/fields/questionnaire-text-field.d.ts.map +1 -1
  418. package/lib/typescript/module/src/modules/questionnaire-response-form/components/header/questionnaire-header-title.d.ts.map +1 -1
  419. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts +1 -1
  420. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  421. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form.d.ts.map +1 -1
  422. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  423. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-initial-selected-values.d.ts.map +1 -1
  424. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +6 -1
  425. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  426. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts +2 -1
  427. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.d.ts.map +1 -1
  428. package/lib/typescript/module/src/modules/questionnaire-response-form/index.d.ts +4 -1
  429. package/lib/typescript/module/src/modules/questionnaire-response-form/index.d.ts.map +1 -1
  430. package/lib/typescript/module/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts +7 -1
  431. package/lib/typescript/module/src/modules/questionnaire-response-form/types/extended-questionnaire-item.d.ts.map +1 -1
  432. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +6 -0
  433. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  434. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts +3 -1
  435. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-props.d.ts.map +1 -1
  436. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts +11 -0
  437. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-provider-props.d.ts.map +1 -1
  438. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts +5 -2
  439. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-values.d.ts.map +1 -1
  440. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts +15 -0
  441. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-item-render-props.d.ts.map +1 -0
  442. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +5 -0
  443. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  444. package/lib/typescript/module/src/modules/questionnaire-response-form/types/response-values.d.ts +2 -1
  445. package/lib/typescript/module/src/modules/questionnaire-response-form/types/response-values.d.ts.map +1 -1
  446. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/condition-utils.d.ts.map +1 -1
  447. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts +9 -0
  448. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/conditions/fhir-condition.d.ts.map +1 -0
  449. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts +7 -0
  450. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/create-answer-from-value.d.ts.map +1 -0
  451. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts +1 -1
  452. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/fields/get-option-text.d.ts.map +1 -1
  453. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-utils.d.ts +4 -1
  454. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-utils.d.ts.map +1 -1
  455. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-validation.d.ts +4 -1
  456. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/form-validation.d.ts.map +1 -1
  457. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts +3 -0
  458. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-answerable-questionnaire-item.d.ts.map +1 -0
  459. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts +8 -0
  460. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/is-valid-questionnaire-answer.d.ts.map +1 -0
  461. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts +5 -0
  462. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-date-utils.d.ts.map +1 -0
  463. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts +22 -0
  464. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-constraints.d.ts.map +1 -0
  465. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts +10 -0
  466. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-item-value-constraint-validators.d.ts.map +1 -0
  467. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts +2 -1
  468. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-navigation-utils.d.ts.map +1 -1
  469. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts +15 -0
  470. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-picker-options.d.ts.map +1 -0
  471. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts +5 -0
  472. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-string-constraint-validator.d.ts.map +1 -0
  473. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts +3 -1
  474. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/questionnaire-submit-utils.d.ts.map +1 -1
  475. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts +4 -0
  476. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/translate-fhir-text.d.ts.map +1 -0
  477. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts +6 -0
  478. package/lib/typescript/module/src/modules/questionnaire-response-form/utils/validate-questionnaire-item-value.d.ts.map +1 -0
  479. package/lib/typescript/module/src/modules/ui/components/prerequisite-gate.d.ts +19 -0
  480. package/lib/typescript/module/src/modules/ui/components/prerequisite-gate.d.ts.map +1 -0
  481. package/lib/typescript/module/src/modules/ui/index.d.ts +1 -0
  482. package/lib/typescript/module/src/modules/ui/index.d.ts.map +1 -1
  483. package/lib/typescript/module/src/polyfills/index.d.ts +7 -1
  484. package/lib/typescript/module/src/polyfills/index.d.ts.map +1 -1
  485. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_questionnaireNavigationContext","_useNavigationHandlers","_useQuestionnaireNavigationState","_jsxRuntime","e","__esModule","default","QuestionnaireNavigationProvider","children","currentItem","currentPage","enabledItems","allEnabledItems","pages","values","currentItemIndex","currentPageIndex","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","formik","navigationState","useQuestionnaireNavigationState","handleNext","handlePrevious","useNavigationHandlers","contextValue","React","useMemo","isSubmitting","jsx","QuestionnaireNavigationContext","Provider","value","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-navigation-provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,+BAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,gCAAA,GAAAH,OAAA;AAA8F,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvF,MAAMG,+BAEZ,GAAGA,CAAC;EACHC,QAAQ;EACRC,WAAW;EACXC,WAAW;EACXC,YAAY;EACZC,eAAe;EACfC,KAAK;EACLC,MAAM;EACNC,gBAAgB;EAChBC,gBAAgB;EAChBC,mBAAmB;EACnBC,mBAAmB;EACnBC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAG,IAAAC,gEAA+B,EACrDb,WAAW,EACXO,gBAAgB,EAChBD,gBAAgB,EAChBJ,YAAY,EACZE,KAAK,EACLC,MAAM,EACNF,eACF,CAAC;EAED,MAAM;IAAEW,UAAU;IAAEC;EAAe,CAAC,GAAG,IAAAC,4CAAqB,EAAC;IAC3DhB,WAAW;IACXC,WAAW;IACXC,YAAY;IACZS,MAAM;IACNL,gBAAgB;IAChBC,gBAAgB;IAChBH,KAAK;IACLI,mBAAmB;IACnBC,mBAAmB;IACnBC;EACF,CAAC,CAAC;EAEF,MAAMO,YAAY,GAAGC,cAAK,CAACC,OAAO,CAChC,OAAO;IACL,GAAGP,eAAe;IAClBQ,YAAY,EAAET,MAAM,CAACS,YAAY;IACjCN,UAAU;IACVC;EACF,CAAC,CAAC,EACF,CAACH,eAAe,EAAED,MAAM,CAACS,YAAY,EAAEN,UAAU,EAAEC,cAAc,CACnE,CAAC;EAED,oBACE,IAAArB,WAAA,CAAA2B,GAAA,EAAC9B,+BAAA,CAAA+B,8BAA8B,CAACC,QAAQ;IAACC,KAAK,EAAEP,YAAa;IAAAlB,QAAA,EAC1DA;EAAQ,CAC8B,CAAC;AAE9C,CAAC;AAAC0B,OAAA,CAAA3B,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_questionnaireNavigationContext","_useNavigationHandlers","_useQuestionnaireNavigationState","_jsxRuntime","e","__esModule","default","QuestionnaireNavigationProvider","children","currentItem","currentPage","enabledItems","allEnabledItems","pages","values","currentItemIndex","currentPageIndex","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","formik","renderItem","resolveQuestionnaireConstraint","resolveQuestionnaireUnitOptions","navigationState","useQuestionnaireNavigationState","handleNext","handlePrevious","useNavigationHandlers","contextValue","React","useMemo","isSubmitting","jsx","QuestionnaireNavigationContext","Provider","value","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-navigation-provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,+BAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,gCAAA,GAAAH,OAAA;AAA8F,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvF,MAAMG,+BAEZ,GAAGA,CAAC;EACHC,QAAQ;EACRC,WAAW;EACXC,WAAW;EACXC,YAAY;EACZC,eAAe;EACfC,KAAK;EACLC,MAAM;EACNC,gBAAgB;EAChBC,gBAAgB;EAChBC,mBAAmB;EACnBC,mBAAmB;EACnBC,eAAe;EACfC,MAAM;EACNC,UAAU;EACVC,8BAA8B;EAC9BC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAG,IAAAC,gEAA+B,EACrDhB,WAAW,EACXO,gBAAgB,EAChBD,gBAAgB,EAChBJ,YAAY,EACZE,KAAK,EACLC,MAAM,EACNF,eAAe,EACfS,UACF,CAAC;EAED,MAAM;IAAEK,UAAU;IAAEC;EAAe,CAAC,GAAG,IAAAC,4CAAqB,EAAC;IAC3DnB,WAAW;IACXC,WAAW;IACXC,YAAY;IACZS,MAAM;IACNL,gBAAgB;IAChBC,gBAAgB;IAChBH,KAAK;IACLI,mBAAmB;IACnBC,mBAAmB;IACnBC,eAAe;IACfE,UAAU;IACVC,8BAA8B;IAC9BC;EACF,CAAC,CAAC;EAEF,MAAMM,YAAY,GAAGC,cAAK,CAACC,OAAO,CAChC,OAAO;IACL,GAAGP,eAAe;IAClBQ,YAAY,EAAEZ,MAAM,CAACY,YAAY;IACjCN,UAAU;IACVC;EACF,CAAC,CAAC,EACF,CAACH,eAAe,EAAEJ,MAAM,CAACY,YAAY,EAAEN,UAAU,EAAEC,cAAc,CACnE,CAAC;EAED,oBACE,IAAAxB,WAAA,CAAA8B,GAAA,EAACjC,+BAAA,CAAAkC,8BAA8B,CAACC,QAAQ;IAACC,KAAK,EAAEP,YAAa;IAAArB,QAAA,EAC1DA;EAAQ,CAC8B,CAAC;AAE9C,CAAC;AAAC6B,OAAA,CAAA9B,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useInitialSelectedValues = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _conditionUtils = require("../utils/condition-utils.js");
9
+ var _formUtils = require("../utils/form-utils.js");
9
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
11
  /**
11
12
  * Hook to handle initializing conditional questions with default values
@@ -13,7 +14,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
13
14
  const useInitialSelectedValues = (pages, values, setFieldValue) => {
14
15
  const initializedItemsRef = _react.default.useRef({});
15
16
  const prevValuesRef = _react.default.useRef({});
16
- const allItems = _react.default.useMemo(() => pages.flatMap(page => page.item ? page.item : []), [pages]);
17
+ const allItems = _react.default.useMemo(() => _formUtils.FormUtils.getAllQuestionnaireItems(pages), [pages]);
17
18
  const initializeItemValue = _react.default.useCallback(item => {
18
19
  const linkId = item.linkId || "";
19
20
  if (values[linkId] !== undefined) {
@@ -48,17 +49,18 @@ const useInitialSelectedValues = (pages, values, setFieldValue) => {
48
49
  prevValuesRef.current = {
49
50
  ...values
50
51
  };
52
+ const enabledLinkIds = new Set(pages.flatMap(page => _conditionUtils.ConditionUtils.getEnabledItemsForPage(page, values).map(item => item.linkId || "")));
51
53
  allItems.forEach(item => {
52
54
  const hasConditions = item.enableWhen && item.enableWhen.length > 0;
53
55
  const linkId = item.linkId || "";
54
56
  if (initializedItemsRef.current[linkId]) {
55
57
  return;
56
58
  }
57
- if (hasConditions && _conditionUtils.ConditionUtils.isItemEnabled(item, values)) {
59
+ if (hasConditions && enabledLinkIds.has(linkId)) {
58
60
  initializeItemValue(item);
59
61
  }
60
62
  });
61
- }, [allItems, values, initializeItemValue]);
63
+ }, [allItems, pages, values, initializeItemValue]);
62
64
  _react.default.useEffect(() => {
63
65
  initializedItemsRef.current = {};
64
66
  prevValuesRef.current = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_conditionUtils","e","__esModule","default","useInitialSelectedValues","pages","values","setFieldValue","initializedItemsRef","React","useRef","prevValuesRef","allItems","useMemo","flatMap","page","item","initializeItemValue","useCallback","linkId","undefined","type","answerOption","initialSelectedOption","find","option","initialSelected","valueCoding","code","current","valueString","useEffect","Object","keys","length","valuesAreSame","JSON","stringify","forEach","hasConditions","enableWhen","ConditionUtils","isItemEnabled","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-initial-selected-values.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_conditionUtils","_formUtils","e","__esModule","default","useInitialSelectedValues","pages","values","setFieldValue","initializedItemsRef","React","useRef","prevValuesRef","allItems","useMemo","FormUtils","getAllQuestionnaireItems","initializeItemValue","useCallback","item","linkId","undefined","type","answerOption","initialSelectedOption","find","option","initialSelected","valueCoding","code","current","valueString","useEffect","Object","keys","length","valuesAreSame","JSON","stringify","enabledLinkIds","Set","flatMap","page","ConditionUtils","getEnabledItemsForPage","map","forEach","hasConditions","enableWhen","has","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-initial-selected-values.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAAgD,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEhD;AACA;AACA;AACO,MAAMG,wBAAwB,GAAGA,CACtCC,KAAkC,EAClCC,MAA+B,EAC/BC,aAIS,KACN;EACH,MAAMC,mBAAmB,GAAGC,cAAK,CAACC,MAAM,CAA0B,CAAC,CAAC,CAAC;EAErE,MAAMC,aAAa,GAAGF,cAAK,CAACC,MAAM,CAA0B,CAAC,CAAC,CAAC;EAE/D,MAAME,QAAQ,GAAGH,cAAK,CAACI,OAAO,CAC5B,MAAMC,oBAAS,CAACC,wBAAwB,CAACV,KAAK,CAAC,EAC/C,CAACA,KAAK,CACR,CAAC;EAED,MAAMW,mBAAmB,GAAGP,cAAK,CAACQ,WAAW,CAC1CC,IAA+B,IAAK;IACnC,MAAMC,MAAM,GAAGD,IAAI,CAACC,MAAM,IAAI,EAAE;IAEhC,IAAIb,MAAM,CAACa,MAAM,CAAC,KAAKC,SAAS,EAAE;MAChC;IACF;IAEA,IAAIF,IAAI,CAACG,IAAI,KAAK,QAAQ,IAAIH,IAAI,CAACI,YAAY,EAAE;MAC/C,MAAMC,qBAAqB,GAAGL,IAAI,CAACI,YAAY,CAACE,IAAI,CACjDC,MAAM,IAAKA,MAAM,CAACC,eAAe,KAAK,IACzC,CAAC;MAED,IAAIH,qBAAqB,EAAE;QACzB,IAAIA,qBAAqB,CAACI,WAAW,EAAEC,IAAI,EAAE;UAC3CrB,aAAa,CACXY,MAAM,EACNI,qBAAqB,CAACI,WAAW,CAACC,IAAI,EACtC,KAAK,CAAE;UACT,CAAC;UACDpB,mBAAmB,CAACqB,OAAO,CAACV,MAAM,CAAC,GAAG,IAAI;QAC5C,CAAC,MAAM,IAAII,qBAAqB,CAACO,WAAW,EAAE;UAC5CvB,aAAa,CAACY,MAAM,EAAEI,qBAAqB,CAACO,WAAW,EAAE,KAAK,CAAC;UAC/DtB,mBAAmB,CAACqB,OAAO,CAACV,MAAM,CAAC,GAAG,IAAI;QAC5C;MACF;IACF;IAEA,IAAID,IAAI,CAACG,IAAI,KAAK,SAAS,EAAE;MAC3Bd,aAAa,CAACY,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;MAClCX,mBAAmB,CAACqB,OAAO,CAACV,MAAM,CAAC,GAAG,IAAI;IAC5C;EACF,CAAC,EACD,CAACZ,aAAa,EAAED,MAAM,CACxB,CAAC;EAEDG,cAAK,CAACsB,SAAS,CAAC,MAAM;IACpB,IAAIC,MAAM,CAACC,IAAI,CAAC3B,MAAM,CAAC,CAAC4B,MAAM,KAAK,CAAC,EAAE;MACpC;IACF;IAEA,MAAMC,aAAa,GACjBC,IAAI,CAACC,SAAS,CAAC1B,aAAa,CAACkB,OAAO,CAAC,KAAKO,IAAI,CAACC,SAAS,CAAC/B,MAAM,CAAC;IAElE,IAAI6B,aAAa,EAAE;MACjB;IACF;IAEAxB,aAAa,CAACkB,OAAO,GAAG;MAAE,GAAGvB;IAAO,CAAC;IAErC,MAAMgC,cAAc,GAAG,IAAIC,GAAG,CAC5BlC,KAAK,CAACmC,OAAO,CAAEC,IAAI,IACjBC,8BAAc,CAACC,sBAAsB,CACnCF,IAAI,EACJnC,MACF,CAAC,CAACsC,GAAG,CAAE1B,IAAI,IAAKA,IAAI,CAACC,MAAM,IAAI,EAAE,CACnC,CACF,CAAC;IAEDP,QAAQ,CAACiC,OAAO,CAAE3B,IAAI,IAAK;MACzB,MAAM4B,aAAa,GAAG5B,IAAI,CAAC6B,UAAU,IAAI7B,IAAI,CAAC6B,UAAU,CAACb,MAAM,GAAG,CAAC;MACnE,MAAMf,MAAM,GAAGD,IAAI,CAACC,MAAM,IAAI,EAAE;MAEhC,IAAIX,mBAAmB,CAACqB,OAAO,CAACV,MAAM,CAAC,EAAE;QACvC;MACF;MAEA,IAAI2B,aAAa,IAAIR,cAAc,CAACU,GAAG,CAAC7B,MAAM,CAAC,EAAE;QAC/CH,mBAAmB,CAACE,IAAI,CAAC;MAC3B;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAACN,QAAQ,EAAEP,KAAK,EAAEC,MAAM,EAAEU,mBAAmB,CAAC,CAAC;EAElDP,cAAK,CAACsB,SAAS,CAAC,MAAM;IACpBvB,mBAAmB,CAACqB,OAAO,GAAG,CAAC,CAAC;IAChClB,aAAa,CAACkB,OAAO,GAAG,CAAC,CAAC;EAC5B,CAAC,EAAE,CAACxB,KAAK,CAAC,CAAC;AACb,CAAC;AAAC4C,OAAA,CAAA7C,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -5,7 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useNavigationHandlers = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _createAnswerFromValue = require("../utils/create-answer-from-value.js");
9
+ var _isAnswerableQuestionnaireItem = require("../utils/is-answerable-questionnaire-item.js");
8
10
  var _questionnaireNavigationUtils = require("../utils/questionnaire-navigation-utils.js");
11
+ var _validateQuestionnaireItemValue = require("../utils/validate-questionnaire-item-value.js");
9
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
13
  /**
11
14
  * Provides navigation handlers for the questionnaire form
@@ -18,20 +21,28 @@ const useNavigationHandlers = ({
18
21
  currentItemIndex,
19
22
  currentPageIndex,
20
23
  pages,
24
+ renderItem,
25
+ resolveQuestionnaireConstraint,
26
+ resolveQuestionnaireUnitOptions,
21
27
  setCurrentItemIndex,
22
28
  setCurrentPageIndex,
23
29
  setErrorMessage
24
30
  }) => {
25
31
  const handleNext = _react.default.useCallback(() => {
26
- if (currentItem && currentItem.required) {
32
+ if (currentItem && (0, _validateQuestionnaireItemValue.validateQuestionnaireItemValue)(formik.values[currentItem.linkId || ""], currentItem, formik.values, resolveQuestionnaireConstraint, resolveQuestionnaireUnitOptions)) {
33
+ setErrorMessage("questionnaire-form.error.invalid-answer");
34
+ return;
35
+ }
36
+ if (currentItem?.required && ((0, _isAnswerableQuestionnaireItem.isAnswerableQuestionnaireItem)(currentItem) || !!renderItem && currentItem.type !== "group" && currentItem.type !== "display")) {
27
37
  const linkId = currentItem.linkId || "";
28
- if (formik.values[linkId] === undefined || formik.values[linkId] === "") {
38
+ const value = formik.values[linkId];
39
+ if (!(0, _createAnswerFromValue.isQuestionnaireItemAnswered)(value, currentItem)) {
29
40
  setErrorMessage("This question is required");
30
41
  return;
31
42
  }
32
43
  }
33
44
  setErrorMessage(null);
34
- const result = _questionnaireNavigationUtils.QuestionnaireNavigationUtils.handleNext(currentPage, enabledItems, currentItem, currentItemIndex, currentPageIndex, pages, formik.values);
45
+ const result = _questionnaireNavigationUtils.QuestionnaireNavigationUtils.handleNext(currentPage, enabledItems, currentItem, currentItemIndex, currentPageIndex, pages, formik.values, renderItem);
35
46
  if (result.hasError) {
36
47
  setErrorMessage(result.errorMessage || "This question is required");
37
48
  return;
@@ -43,7 +54,7 @@ const useNavigationHandlers = ({
43
54
  setCurrentPageIndex(result.newPageIndex);
44
55
  setCurrentItemIndex(0);
45
56
  }
46
- }, [currentItem, currentPage, enabledItems, formik.values, currentItemIndex, currentPageIndex, pages, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage]);
57
+ }, [currentItem, currentPage, enabledItems, formik.values, currentItemIndex, currentPageIndex, pages, renderItem, resolveQuestionnaireConstraint, resolveQuestionnaireUnitOptions, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage]);
47
58
  const handlePrevious = _react.default.useCallback(() => {
48
59
  setErrorMessage(null);
49
60
  const result = _questionnaireNavigationUtils.QuestionnaireNavigationUtils.handlePrevious(currentItemIndex, currentPageIndex, pages, formik.values);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_questionnaireNavigationUtils","e","__esModule","default","useNavigationHandlers","currentItem","currentPage","enabledItems","formik","currentItemIndex","currentPageIndex","pages","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","handleNext","React","useCallback","required","linkId","values","undefined","result","QuestionnaireNavigationUtils","hasError","errorMessage","newItemIndex","newPageIndex","handlePrevious","lastItemIndex","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-navigation-handlers.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,6BAAA,GAAAD,OAAA;AAAuF,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAevF;AACA;AACA;AACO,MAAMG,qBAAqB,GAAGA,CAAC;EACpCC,WAAW;EACXC,WAAW;EACXC,YAAY;EACZC,MAAM;EACNC,gBAAgB;EAChBC,gBAAgB;EAChBC,KAAK;EACLC,mBAAmB;EACnBC,mBAAmB;EACnBC;AAC0B,CAAC,KAAK;EAChC,MAAMC,UAAU,GAAGC,cAAK,CAACC,WAAW,CAAC,MAAM;IACzC,IAAIZ,WAAW,IAAIA,WAAW,CAACa,QAAQ,EAAE;MACvC,MAAMC,MAAM,GAAGd,WAAW,CAACc,MAAM,IAAI,EAAE;MAEvC,IAAIX,MAAM,CAACY,MAAM,CAACD,MAAM,CAAC,KAAKE,SAAS,IAAIb,MAAM,CAACY,MAAM,CAACD,MAAM,CAAC,KAAK,EAAE,EAAE;QACvEL,eAAe,CAAC,2BAA2B,CAAC;QAE5C;MACF;IACF;IAEAA,eAAe,CAAC,IAAI,CAAC;IAErB,MAAMQ,MAAM,GAAGC,0DAA4B,CAACR,UAAU,CACpDT,WAAW,EACXC,YAAY,EACZF,WAAW,EACXI,gBAAgB,EAChBC,gBAAgB,EAChBC,KAAK,EACLH,MAAM,CAACY,MACT,CAAC;IAED,IAAIE,MAAM,CAACE,QAAQ,EAAE;MACnBV,eAAe,CAACQ,MAAM,CAACG,YAAY,IAAI,2BAA2B,CAAC;MAEnE;IACF;IAEA,IAAIH,MAAM,CAACI,YAAY,KAAKL,SAAS,EAAE;MACrCT,mBAAmB,CAACU,MAAM,CAACI,YAAY,CAAC;IAC1C;IACA,IAAIJ,MAAM,CAACK,YAAY,KAAKN,SAAS,EAAE;MACrCR,mBAAmB,CAACS,MAAM,CAACK,YAAY,CAAC;MACxCf,mBAAmB,CAAC,CAAC,CAAC;IACxB;EACF,CAAC,EAAE,CACDP,WAAW,EACXC,WAAW,EACXC,YAAY,EACZC,MAAM,CAACY,MAAM,EACbX,gBAAgB,EAChBC,gBAAgB,EAChBC,KAAK,EACLC,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,CAChB,CAAC;EAEF,MAAMc,cAAc,GAAGZ,cAAK,CAACC,WAAW,CAAC,MAAM;IAC7CH,eAAe,CAAC,IAAI,CAAC;IACrB,MAAMQ,MAAM,GAAGC,0DAA4B,CAACK,cAAc,CACxDnB,gBAAgB,EAChBC,gBAAgB,EAChBC,KAAK,EACLH,MAAM,CAACY,MACT,CAAC;IAED,IAAIE,MAAM,CAACI,YAAY,KAAKL,SAAS,EAAE;MACrCT,mBAAmB,CAACU,MAAM,CAACI,YAAY,CAAC;IAC1C;IACA,IAAIJ,MAAM,CAACK,YAAY,KAAKN,SAAS,EAAE;MACrCR,mBAAmB,CAACS,MAAM,CAACK,YAAY,CAAC;MACxCf,mBAAmB,CAACU,MAAM,CAACO,aAAa,IAAI,CAAC,CAAC;IAChD;EACF,CAAC,EAAE,CACDpB,gBAAgB,EAChBC,gBAAgB,EAChBC,KAAK,EACLH,MAAM,CAACY,MAAM,EACbR,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,CAChB,CAAC;EAEF,OAAO;IACLC,UAAU;IACVa;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAA1B,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_createAnswerFromValue","_isAnswerableQuestionnaireItem","_questionnaireNavigationUtils","_validateQuestionnaireItemValue","e","__esModule","default","useNavigationHandlers","currentItem","currentPage","enabledItems","formik","currentItemIndex","currentPageIndex","pages","renderItem","resolveQuestionnaireConstraint","resolveQuestionnaireUnitOptions","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","handleNext","React","useCallback","validateQuestionnaireItemValue","values","linkId","required","isAnswerableQuestionnaireItem","type","value","isQuestionnaireItemAnswered","result","QuestionnaireNavigationUtils","hasError","errorMessage","newItemIndex","undefined","newPageIndex","handlePrevious","lastItemIndex","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-navigation-handlers.ts"],"mappings":"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","ignoreList":[]}
@@ -6,14 +6,21 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useQuestionnaireNavigationState = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _conditionUtils = require("../utils/condition-utils.js");
9
+ var _createAnswerFromValue = require("../utils/create-answer-from-value.js");
10
+ var _isAnswerableQuestionnaireItem = require("../utils/is-answerable-questionnaire-item.js");
9
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- const useQuestionnaireNavigationState = (currentItem, currentPageIndex, currentItemIndex, enabledItems, pages, values, allEnabledItems) => {
12
+ const useQuestionnaireNavigationState = (currentItem, currentPageIndex, currentItemIndex, enabledItems, pages, values, allEnabledItems, renderItem) => {
11
13
  return _react.default.useMemo(() => {
12
- const isLastItem = !currentItem || currentPageIndex === pages.length - 1 && currentItemIndex === enabledItems.length - 1;
13
- const currentItemNumber = pages.slice(0, currentPageIndex).reduce((count, page) => count + _conditionUtils.ConditionUtils.getEnabledItemsForPage(page, values).length, 0) + currentItemIndex + 1;
14
- const showPrevious = currentPageIndex > 0 || currentItemIndex > 0;
15
- const isCurrentItemRequired = currentItem?.required || false;
16
- const isCurrentItemAnswered = values[currentItem?.linkId || ""] !== undefined && (values[currentItem?.linkId || ""] !== "" || currentItem?.type === "boolean");
14
+ const previousItemCount = pages.slice(0, currentPageIndex).reduce((count, page) => count + _conditionUtils.ConditionUtils.getEnabledItemsForPage(page, values).length, 0);
15
+ const hasLaterEnabledPage = pages.slice(currentPageIndex + 1).some(page => _conditionUtils.ConditionUtils.getEnabledItemsForPage(page, values).length > 0);
16
+ const hasPreviousEnabledPage = pages.slice(0, currentPageIndex).some(page => _conditionUtils.ConditionUtils.getEnabledItemsForPage(page, values).length > 0);
17
+ const hasLaterItemOnCurrentPage = enabledItems.length > 0 && currentItemIndex < enabledItems.length - 1;
18
+ const isLastItem = !hasLaterItemOnCurrentPage && !hasLaterEnabledPage;
19
+ const currentItemNumber = previousItemCount + (currentItem ? currentItemIndex + 1 : 0);
20
+ const showPrevious = enabledItems.length > 0 && currentItemIndex > 0 || hasPreviousEnabledPage;
21
+ const isCurrentItemRequired = Boolean(currentItem?.required && ((0, _isAnswerableQuestionnaireItem.isAnswerableQuestionnaireItem)(currentItem) || !!renderItem && currentItem.type !== "group" && currentItem.type !== "display"));
22
+ const currentValue = values[currentItem?.linkId || ""];
23
+ const isCurrentItemAnswered = currentItem ? (0, _createAnswerFromValue.isQuestionnaireItemAnswered)(currentValue, currentItem) : false;
17
24
  return {
18
25
  isLastItem,
19
26
  isCurrentItemRequired,
@@ -22,7 +29,7 @@ const useQuestionnaireNavigationState = (currentItem, currentPageIndex, currentI
22
29
  totalItems: allEnabledItems.length,
23
30
  showPrevious
24
31
  };
25
- }, [currentItem, currentPageIndex, currentItemIndex, enabledItems.length, pages, values, allEnabledItems.length]);
32
+ }, [currentItem, currentPageIndex, currentItemIndex, enabledItems.length, pages, values, allEnabledItems.length, renderItem]);
26
33
  };
27
34
  exports.useQuestionnaireNavigationState = useQuestionnaireNavigationState;
28
35
  //# sourceMappingURL=use-questionnaire-navigation-state.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_conditionUtils","e","__esModule","default","useQuestionnaireNavigationState","currentItem","currentPageIndex","currentItemIndex","enabledItems","pages","values","allEnabledItems","React","useMemo","isLastItem","length","currentItemNumber","slice","reduce","count","page","ConditionUtils","getEnabledItemsForPage","showPrevious","isCurrentItemRequired","required","isCurrentItemAnswered","linkId","undefined","type","totalItems","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,eAAA,GAAAD,OAAA;AAA0D,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWnD,MAAMG,+BAA+B,GAAGA,CAC7CC,WAAkD,EAClDC,gBAAwB,EACxBC,gBAAwB,EACxBC,YAAyC,EACzCC,KAAkC,EAClCC,MAA+B,EAC/BC,eAA4C,KACxB;EACpB,OAAOC,cAAK,CAACC,OAAO,CAAC,MAAM;IACzB,MAAMC,UAAU,GACd,CAACT,WAAW,IACXC,gBAAgB,KAAKG,KAAK,CAACM,MAAM,GAAG,CAAC,IACpCR,gBAAgB,KAAKC,YAAY,CAACO,MAAM,GAAG,CAAE;IAEjD,MAAMC,iBAAiB,GACrBP,KAAK,CACFQ,KAAK,CAAC,CAAC,EAAEX,gBAAgB,CAAC,CAC1BY,MAAM,CACL,CAACC,KAAK,EAAEC,IAAI,KACVD,KAAK,GACLE,8BAAc,CAACC,sBAAsB,CACnCF,IAAI,EACJV,MACF,CAAC,CAACK,MAAM,EACV,CACF,CAAC,GACHR,gBAAgB,GAChB,CAAC;IAEH,MAAMgB,YAAY,GAAGjB,gBAAgB,GAAG,CAAC,IAAIC,gBAAgB,GAAG,CAAC;IAEjE,MAAMiB,qBAAqB,GAAGnB,WAAW,EAAEoB,QAAQ,IAAI,KAAK;IAE5D,MAAMC,qBAAqB,GACzBhB,MAAM,CAACL,WAAW,EAAEsB,MAAM,IAAI,EAAE,CAAC,KAAKC,SAAS,KAC9ClB,MAAM,CAACL,WAAW,EAAEsB,MAAM,IAAI,EAAE,CAAC,KAAK,EAAE,IACvCtB,WAAW,EAAEwB,IAAI,KAAK,SAAS,CAAC;IAEpC,OAAO;MACLf,UAAU;MACVU,qBAAqB;MACrBE,qBAAqB;MACrBV,iBAAiB;MACjBc,UAAU,EAAEnB,eAAe,CAACI,MAAM;MAClCQ;IACF,CAAC;EACH,CAAC,EAAE,CACDlB,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBC,YAAY,CAACO,MAAM,EACnBN,KAAK,EACLC,MAAM,EACNC,eAAe,CAACI,MAAM,CACvB,CAAC;AACJ,CAAC;AAACgB,OAAA,CAAA3B,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_conditionUtils","_createAnswerFromValue","_isAnswerableQuestionnaireItem","e","__esModule","default","useQuestionnaireNavigationState","currentItem","currentPageIndex","currentItemIndex","enabledItems","pages","values","allEnabledItems","renderItem","React","useMemo","previousItemCount","slice","reduce","count","page","ConditionUtils","getEnabledItemsForPage","length","hasLaterEnabledPage","some","hasPreviousEnabledPage","hasLaterItemOnCurrentPage","isLastItem","currentItemNumber","showPrevious","isCurrentItemRequired","Boolean","required","isAnswerableQuestionnaireItem","type","currentValue","linkId","isCurrentItemAnswered","isQuestionnaireItemAnswered","totalItems","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/hooks/use-questionnaire-navigation-state.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,8BAAA,GAAAH,OAAA;AAA0F,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWnF,MAAMG,+BAA+B,GAAGA,CAC7CC,WAAkD,EAClDC,gBAAwB,EACxBC,gBAAwB,EACxBC,YAAyC,EACzCC,KAAkC,EAClCC,MAA+B,EAC/BC,eAA4C,EAC5CC,UAAsC,KAClB;EACpB,OAAOC,cAAK,CAACC,OAAO,CAAC,MAAM;IACzB,MAAMC,iBAAiB,GAAGN,KAAK,CAC5BO,KAAK,CAAC,CAAC,EAAEV,gBAAgB,CAAC,CAC1BW,MAAM,CACL,CAACC,KAAK,EAAEC,IAAI,KACVD,KAAK,GACLE,8BAAc,CAACC,sBAAsB,CAACF,IAAI,EAAET,MAAwB,CAAC,CAClEY,MAAM,EACX,CACF,CAAC;IAEH,MAAMC,mBAAmB,GAAGd,KAAK,CAC9BO,KAAK,CAACV,gBAAgB,GAAG,CAAC,CAAC,CAC3BkB,IAAI,CACFL,IAAI,IACHC,8BAAc,CAACC,sBAAsB,CAACF,IAAI,EAAET,MAAwB,CAAC,CAClEY,MAAM,GAAG,CAChB,CAAC;IAEH,MAAMG,sBAAsB,GAAGhB,KAAK,CACjCO,KAAK,CAAC,CAAC,EAAEV,gBAAgB,CAAC,CAC1BkB,IAAI,CACFL,IAAI,IACHC,8BAAc,CAACC,sBAAsB,CAACF,IAAI,EAAET,MAAwB,CAAC,CAClEY,MAAM,GAAG,CAChB,CAAC;IAEH,MAAMI,yBAAyB,GAC7BlB,YAAY,CAACc,MAAM,GAAG,CAAC,IAAIf,gBAAgB,GAAGC,YAAY,CAACc,MAAM,GAAG,CAAC;IAEvE,MAAMK,UAAU,GAAG,CAACD,yBAAyB,IAAI,CAACH,mBAAmB;IAErE,MAAMK,iBAAiB,GACrBb,iBAAiB,IAAIV,WAAW,GAAGE,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9D,MAAMsB,YAAY,GACfrB,YAAY,CAACc,MAAM,GAAG,CAAC,IAAIf,gBAAgB,GAAG,CAAC,IAChDkB,sBAAsB;IAExB,MAAMK,qBAAqB,GAAGC,OAAO,CACnC1B,WAAW,EAAE2B,QAAQ,KAClB,IAAAC,4DAA6B,EAAC5B,WAAW,CAAC,IACxC,CAAC,CAACO,UAAU,IACXP,WAAW,CAAC6B,IAAI,KAAK,OAAO,IAC5B7B,WAAW,CAAC6B,IAAI,KAAK,SAAU,CACvC,CAAC;IAED,MAAMC,YAAY,GAAGzB,MAAM,CAACL,WAAW,EAAE+B,MAAM,IAAI,EAAE,CAAC;IAEtD,MAAMC,qBAAqB,GAAGhC,WAAW,GACrC,IAAAiC,kDAA2B,EAACH,YAAY,EAAE9B,WAAW,CAAC,GACtD,KAAK;IAET,OAAO;MACLsB,UAAU;MACVG,qBAAqB;MACrBO,qBAAqB;MACrBT,iBAAiB;MACjBW,UAAU,EAAE5B,eAAe,CAACW,MAAM;MAClCO;IACF,CAAC;EACH,CAAC,EAAE,CACDxB,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBC,YAAY,CAACc,MAAM,EACnBb,KAAK,EACLC,MAAM,EACNC,eAAe,CAACW,MAAM,EACtBV,UAAU,CACX,CAAC;AACJ,CAAC;AAAC4B,OAAA,CAAApC,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -39,6 +39,24 @@ Object.defineProperty(exports, "QuestionnaireSubmitUtils", {
39
39
  return _questionnaireSubmitUtils.QuestionnaireSubmitUtils;
40
40
  }
41
41
  });
42
+ Object.defineProperty(exports, "getQuestionnaireAnswerPickerOptions", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _questionnairePickerOptions.getQuestionnaireAnswerPickerOptions;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "getQuestionnaireItemConstraints", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _questionnaireItemConstraints.getQuestionnaireItemConstraints;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "getQuestionnaireNumericPickerOptions", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _questionnairePickerOptions.getQuestionnaireNumericPickerOptions;
58
+ }
59
+ });
42
60
  Object.defineProperty(exports, "useInitialSelectedValues", {
43
61
  enumerable: true,
44
62
  get: function () {
@@ -79,5 +97,7 @@ var _useNavigationHandlers = require("./hooks/use-navigation-handlers.js");
79
97
  var _useInitialSelectedValues = require("./hooks/use-initial-selected-values.js");
80
98
  var _questionnaireFormContext = require("./contexts/questionnaire-form-context.js");
81
99
  var _questionnaireNavigationContext = require("./contexts/questionnaire-navigation-context.js");
100
+ var _questionnairePickerOptions = require("./utils/questionnaire-picker-options.js");
101
+ var _questionnaireItemConstraints = require("./utils/questionnaire-item-constraints.js");
82
102
  var _questionnaireSubmitUtils = require("./utils/questionnaire-submit-utils.js");
83
103
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_questionnaireForm","require","_questionnaireFormProvider","_questionnaireNavigationProvider","_useQuestionnaireForm","_useQuestionnaireNavigation","_useQuestionnaireNavigationState","_useNavigationHandlers","_useInitialSelectedValues","_questionnaireFormContext","_questionnaireNavigationContext","_questionnaireSubmitUtils"],"sourceRoot":"../../../../src","sources":["modules/questionnaire-response-form/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AACA,IAAAE,gCAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AACA,IAAAK,gCAAA,GAAAL,OAAA;AACA,IAAAM,sBAAA,GAAAN,OAAA;AACA,IAAAO,yBAAA,GAAAP,OAAA;AAEA,IAAAQ,yBAAA,GAAAR,OAAA;AACA,IAAAS,+BAAA,GAAAT,OAAA;AAYA,IAAAU,yBAAA,GAAAV,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["_questionnaireForm","require","_questionnaireFormProvider","_questionnaireNavigationProvider","_useQuestionnaireForm","_useQuestionnaireNavigation","_useQuestionnaireNavigationState","_useNavigationHandlers","_useInitialSelectedValues","_questionnaireFormContext","_questionnaireNavigationContext","_questionnairePickerOptions","_questionnaireItemConstraints","_questionnaireSubmitUtils"],"sourceRoot":"../../../../src","sources":["modules/questionnaire-response-form/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AACA,IAAAE,gCAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AACA,IAAAK,gCAAA,GAAAL,OAAA;AACA,IAAAM,sBAAA,GAAAN,OAAA;AACA,IAAAO,yBAAA,GAAAP,OAAA;AAEA,IAAAQ,yBAAA,GAAAR,OAAA;AACA,IAAAS,+BAAA,GAAAT,OAAA;AAkBA,IAAAU,2BAAA,GAAAV,OAAA;AAMA,IAAAW,6BAAA,GAAAX,OAAA;AAOA,IAAAY,yBAAA,GAAAZ,OAAA","ignoreList":[]}
@@ -1,2 +1,6 @@
1
1
  "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
2
6
  //# sourceMappingURL=questionnaire-form-values.js.map
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=questionnaire-item-render-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/types/questionnaire-item-render-props.ts"],"mappings":"","ignoreList":[]}
@@ -1,2 +1,6 @@
1
1
  "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
2
6
  //# sourceMappingURL=response-values.js.map
@@ -5,23 +5,44 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ConditionUtils = void 0;
7
7
  var _index = require("./conditions/index.js");
8
+ var _fhirCondition = require("./conditions/fhir-condition.js");
8
9
  const isConditionSatisfied = (condition, responses) => {
9
10
  const questionId = condition.question;
10
11
  const response = responses[questionId];
12
+ if (condition.operator === "exists") {
13
+ const answerExists = response !== undefined && response !== null && response !== "";
14
+ return answerExists === condition.answerBoolean;
15
+ }
11
16
  if (response === undefined || response === null) {
12
17
  return false;
13
18
  }
19
+ const comparableResponse = (0, _fhirCondition.getComparableResponse)(response);
14
20
  if (condition.answerBoolean !== undefined) {
15
- return (0, _index.checkBooleanCondition)(condition, response);
21
+ return (0, _index.checkBooleanCondition)(condition, comparableResponse);
16
22
  }
17
23
  if (condition.answerString !== undefined) {
18
- return (0, _index.checkStringCondition)(condition, response);
24
+ return (0, _index.checkStringCondition)(condition, comparableResponse);
19
25
  }
20
- if (condition.answerDecimal !== undefined) {
21
- return (0, _index.checkDecimalCondition)(condition, response);
26
+ if (condition.answerDecimal !== undefined || condition.answerInteger !== undefined) {
27
+ return (0, _index.checkDecimalCondition)({
28
+ ...condition,
29
+ answerDecimal: condition.answerDecimal ?? condition.answerInteger
30
+ }, comparableResponse);
22
31
  }
23
32
  if (condition.answerDate !== undefined || condition.answerDateTime !== undefined) {
24
- return (0, _index.checkDateCondition)(condition, response);
33
+ return (0, _index.checkDateCondition)(condition, comparableResponse);
34
+ }
35
+ if (condition.answerTime !== undefined) {
36
+ return (0, _fhirCondition.checkTimeCondition)(condition, comparableResponse);
37
+ }
38
+ if (condition.answerCoding !== undefined) {
39
+ return (0, _fhirCondition.checkCodingCondition)(condition, comparableResponse);
40
+ }
41
+ if (condition.answerQuantity !== undefined) {
42
+ return (0, _fhirCondition.checkQuantityCondition)(condition, comparableResponse);
43
+ }
44
+ if (condition.answerReference !== undefined) {
45
+ return (0, _fhirCondition.checkReferenceCondition)(condition, comparableResponse);
25
46
  }
26
47
  return false;
27
48
  };
@@ -41,7 +62,17 @@ const getEnabledItemsForPage = (page, responses) => {
41
62
  if (!page.item) {
42
63
  return [];
43
64
  }
44
- return page.item.filter(item => isItemEnabled(item, responses));
65
+ if (!page._isSyntheticPage && !isItemEnabled(page, responses)) {
66
+ return [];
67
+ }
68
+ const getEnabledDescendants = items => items.flatMap(item => {
69
+ if (!isItemEnabled(item, responses)) {
70
+ return [];
71
+ }
72
+ const descendants = getEnabledDescendants(item.item ?? []);
73
+ return item.type === "group" ? descendants : [item, ...descendants];
74
+ });
75
+ return getEnabledDescendants(page.item);
45
76
  };
46
77
  const ConditionUtils = exports.ConditionUtils = {
47
78
  isConditionSatisfied,
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","isConditionSatisfied","condition","responses","questionId","question","response","undefined","answerBoolean","checkBooleanCondition","answerString","checkStringCondition","answerDecimal","checkDecimalCondition","answerDate","answerDateTime","checkDateCondition","isItemEnabled","item","enableWhen","length","enableBehavior","every","some","getEnabledItemsForPage","page","filter","ConditionUtils","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/condition-utils.ts"],"mappings":";;;;;;AAQA,IAAAA,MAAA,GAAAC,OAAA;AAOA,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,OAAO,IAAAE,4BAAqB,EAACP,SAAS,EAAEI,QAAQ,CAAC;EACnD;EAEA,IAAIJ,SAAS,CAACQ,YAAY,KAAKH,SAAS,EAAE;IACxC,OAAO,IAAAI,2BAAoB,EAACT,SAAS,EAAEI,QAAQ,CAAC;EAClD;EAEA,IAAIJ,SAAS,CAACU,aAAa,KAAKL,SAAS,EAAE;IACzC,OAAO,IAAAM,4BAAqB,EAACX,SAAS,EAAEI,QAAQ,CAAC;EACnD;EAEA,IACEJ,SAAS,CAACY,UAAU,KAAKP,SAAS,IAClCL,SAAS,CAACa,cAAc,KAAKR,SAAS,EACtC;IACA,OAAO,IAAAS,yBAAkB,EAACd,SAAS,EAAEI,QAAQ,CAAC;EAChD;EAEA,OAAO,KAAK;AACd,CAAC;AAED,MAAMW,aAAa,GAAGA,CACpBC,IAAuB,EACvBf,SAAyB,KACb;EACZ,IAAI,CAACe,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,CAAEpB,SAAS,IACrCD,oBAAoB,CAACC,SAAS,EAAEC,SAAS,CAC3C,CAAC;EACH,CAAC,MAAM,IAAIkB,cAAc,KAAK,KAAK,EAAE;IACnC,OAAOH,IAAI,CAACC,UAAU,CAACI,IAAI,CAAErB,SAAS,IACpCD,oBAAoB,CAACC,SAAS,EAAEC,SAAS,CAC3C,CAAC;EACH;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMqB,sBAAsB,GAAGA,CAC7BC,IAA+B,EAC/BtB,SAAyB,KACO;EAChC,IAAI,CAACsB,IAAI,CAACP,IAAI,EAAE;IACd,OAAO,EAAE;EACX;EAEA,OAAOO,IAAI,CAACP,IAAI,CAACQ,MAAM,CAAER,IAAI,IAC3BD,aAAa,CAACC,IAAI,EAAEf,SAAS,CAC/B,CAAC;AACH,CAAC;AAEM,MAAMwB,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG;EAC5B1B,oBAAoB;EACpBgB,aAAa;EACbO;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_index","require","_fhirCondition","isConditionSatisfied","condition","responses","questionId","question","response","operator","answerExists","undefined","answerBoolean","comparableResponse","getComparableResponse","checkBooleanCondition","answerString","checkStringCondition","answerDecimal","answerInteger","checkDecimalCondition","answerDate","answerDateTime","checkDateCondition","answerTime","checkTimeCondition","answerCoding","checkCodingCondition","answerQuantity","checkQuantityCondition","answerReference","checkReferenceCondition","isItemEnabled","item","enableWhen","length","enableBehavior","every","some","getEnabledItemsForPage","page","_isSyntheticPage","getEnabledDescendants","items","flatMap","descendants","type","ConditionUtils","exports"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/utils/condition-utils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getComparableResponse = exports.checkTimeCondition = exports.checkReferenceCondition = exports.checkQuantityCondition = exports.checkCodingCondition = void 0;
7
+ const getComparableResponse = value => {
8
+ if (!value || typeof value !== "object") {
9
+ return value;
10
+ }
11
+ if ("valueBoolean" in value) {
12
+ return value.valueBoolean;
13
+ }
14
+ if ("valueString" in value) {
15
+ return value.valueString;
16
+ }
17
+ if ("valueDecimal" in value) {
18
+ return value.valueDecimal;
19
+ }
20
+ if ("valueInteger" in value) {
21
+ return value.valueInteger;
22
+ }
23
+ if ("valueDate" in value) {
24
+ return value.valueDate;
25
+ }
26
+ if ("valueDateTime" in value) {
27
+ return value.valueDateTime;
28
+ }
29
+ if ("valueTime" in value) {
30
+ return value.valueTime;
31
+ }
32
+ if ("valueUri" in value) {
33
+ return value.valueUri;
34
+ }
35
+ if ("valueQuantity" in value) {
36
+ return value.valueQuantity;
37
+ }
38
+ if ("valueReference" in value) {
39
+ return value.valueReference;
40
+ }
41
+ return value;
42
+ };
43
+ exports.getComparableResponse = getComparableResponse;
44
+ const checkTimeCondition = (condition, response) => {
45
+ const actualSeconds = parseTime(response);
46
+ const expectedSeconds = parseTime(condition.answerTime);
47
+ if (actualSeconds === undefined || expectedSeconds === undefined) {
48
+ return false;
49
+ }
50
+ switch (condition.operator) {
51
+ case "=":
52
+ return actualSeconds === expectedSeconds;
53
+ case "!=":
54
+ return actualSeconds !== expectedSeconds;
55
+ case "<":
56
+ return actualSeconds < expectedSeconds;
57
+ case "<=":
58
+ return actualSeconds <= expectedSeconds;
59
+ case ">":
60
+ return actualSeconds > expectedSeconds;
61
+ case ">=":
62
+ return actualSeconds >= expectedSeconds;
63
+ default:
64
+ return false;
65
+ }
66
+ };
67
+ exports.checkTimeCondition = checkTimeCondition;
68
+ const parseTime = value => {
69
+ if (typeof value !== "string") {
70
+ return undefined;
71
+ }
72
+ const match = /^(\d{2}):(\d{2})(?::(\d{2})(\.\d+)?)?$/.exec(value);
73
+ if (!match) {
74
+ return undefined;
75
+ }
76
+ const [, hours, minutes, seconds = "0", fraction = ""] = match;
77
+ const parsedHours = Number(hours);
78
+ const parsedMinutes = Number(minutes);
79
+ const parsedSeconds = Number(seconds);
80
+ if (parsedHours > 23 || parsedMinutes > 59 || parsedSeconds > 59) {
81
+ return undefined;
82
+ }
83
+ return parsedHours * 3600 + parsedMinutes * 60 + parsedSeconds + (fraction ? Number(fraction) : 0);
84
+ };
85
+ const checkCodingCondition = (condition, response) => {
86
+ const actual = getCoding(response);
87
+ const expected = condition.answerCoding;
88
+ const matches = actual !== undefined && expected !== undefined && actual.code === expected.code && (actual.system === undefined || expected.system === undefined || actual.system === expected.system);
89
+ return condition.operator === "!=" ? !matches : matches;
90
+ };
91
+ exports.checkCodingCondition = checkCodingCondition;
92
+ const getCoding = value => {
93
+ if (!value || typeof value !== "object") {
94
+ return typeof value === "string" ? {
95
+ code: value
96
+ } : undefined;
97
+ }
98
+ if ("valueCoding" in value) {
99
+ return value.valueCoding;
100
+ }
101
+ if ("code" in value) {
102
+ return value;
103
+ }
104
+ return undefined;
105
+ };
106
+ const checkQuantityCondition = (condition, response) => {
107
+ const actual = getQuantity(response);
108
+ const expected = condition.answerQuantity;
109
+ if (!actual || !expected || actual.value === undefined || expected.value === undefined || actual.code !== expected.code || actual.system !== expected.system || actual.unit !== expected.unit) {
110
+ return false;
111
+ }
112
+ switch (condition.operator) {
113
+ case "=":
114
+ return actual.value === expected.value;
115
+ case "!=":
116
+ return actual.value !== expected.value;
117
+ case "<":
118
+ return actual.value < expected.value;
119
+ case "<=":
120
+ return actual.value <= expected.value;
121
+ case ">":
122
+ return actual.value > expected.value;
123
+ case ">=":
124
+ return actual.value >= expected.value;
125
+ default:
126
+ return false;
127
+ }
128
+ };
129
+ exports.checkQuantityCondition = checkQuantityCondition;
130
+ const getQuantity = value => {
131
+ if (!value || typeof value !== "object" || !("value" in value)) {
132
+ return undefined;
133
+ }
134
+ return value;
135
+ };
136
+ const checkReferenceCondition = (condition, response) => {
137
+ const actual = getReference(response);
138
+ const matches = actual !== undefined && actual === condition.answerReference?.reference;
139
+ return condition.operator === "!=" ? !matches : matches;
140
+ };
141
+ exports.checkReferenceCondition = checkReferenceCondition;
142
+ const getReference = value => {
143
+ if (!value || typeof value !== "object" || !("reference" in value)) {
144
+ return undefined;
145
+ }
146
+ return typeof value.reference === "string" ? value.reference : undefined;
147
+ };
148
+ //# sourceMappingURL=fhir-condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getComparableResponse","value","valueBoolean","valueString","valueDecimal","valueInteger","valueDate","valueDateTime","valueTime","valueUri","valueQuantity","valueReference","exports","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":";;;;;;AAIA,MAAMA,qBAAqB,GAAIC,KAA6B,IAAc;EACxE,IAAI,CAACA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACvC,OAAOA,KAAK;EACd;EAEA,IAAI,cAAc,IAAIA,KAAK,EAAE;IAC3B,OAAOA,KAAK,CAACC,YAAY;EAC3B;EACA,IAAI,aAAa,IAAID,KAAK,EAAE;IAC1B,OAAOA,KAAK,CAACE,WAAW;EAC1B;EACA,IAAI,cAAc,IAAIF,KAAK,EAAE;IAC3B,OAAOA,KAAK,CAACG,YAAY;EAC3B;EACA,IAAI,cAAc,IAAIH,KAAK,EAAE;IAC3B,OAAOA,KAAK,CAACI,YAAY;EAC3B;EACA,IAAI,WAAW,IAAIJ,KAAK,EAAE;IACxB,OAAOA,KAAK,CAACK,SAAS;EACxB;EACA,IAAI,eAAe,IAAIL,KAAK,EAAE;IAC5B,OAAOA,KAAK,CAACM,aAAa;EAC5B;EACA,IAAI,WAAW,IAAIN,KAAK,EAAE;IACxB,OAAOA,KAAK,CAACO,SAAS;EACxB;EACA,IAAI,UAAU,IAAIP,KAAK,EAAE;IACvB,OAAOA,KAAK,CAACQ,QAAQ;EACvB;EACA,IAAI,eAAe,IAAIR,KAAK,EAAE;IAC5B,OAAOA,KAAK,CAACS,aAAa;EAC5B;EACA,IAAI,gBAAgB,IAAIT,KAAK,EAAE;IAC7B,OAAOA,KAAK,CAACU,cAAc;EAC7B;EAEA,OAAOV,KAAK;AACd,CAAC;AAACW,OAAA,CAAAZ,qBAAA,GAAAA,qBAAA;AAEF,MAAMa,kBAAkB,GAAGA,CACzBC,SAAsC,EACtCC,QAAiB,KACL;EACZ,MAAMC,aAAa,GAAGC,SAAS,CAACF,QAAQ,CAAC;EACzC,MAAMG,eAAe,GAAGD,SAAS,CAACH,SAAS,CAACK,UAAU,CAAC;EAEvD,IAAIH,aAAa,KAAKI,SAAS,IAAIF,eAAe,KAAKE,SAAS,EAAE;IAChE,OAAO,KAAK;EACd;EAEA,QAAQN,SAAS,CAACO,QAAQ;IACxB,KAAK,GAAG;MACN,OAAOL,aAAa,KAAKE,eAAe;IAC1C,KAAK,IAAI;MACP,OAAOF,aAAa,KAAKE,eAAe;IAC1C,KAAK,GAAG;MACN,OAAOF,aAAa,GAAGE,eAAe;IACxC,KAAK,IAAI;MACP,OAAOF,aAAa,IAAIE,eAAe;IACzC,KAAK,GAAG;MACN,OAAOF,aAAa,GAAGE,eAAe;IACxC,KAAK,IAAI;MACP,OAAOF,aAAa,IAAIE,eAAe;IACzC;MACE,OAAO,KAAK;EAChB;AACF,CAAC;AAACN,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEF,MAAMI,SAAS,GAAIhB,KAAc,IAAyB;EACxD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOmB,SAAS;EAClB;EAEA,MAAME,KAAK,GAAG,wCAAwC,CAACC,IAAI,CAACtB,KAAK,CAAC;EAElE,IAAI,CAACqB,KAAK,EAAE;IACV,OAAOF,SAAS;EAClB;EAEA,MAAM,GAAGI,KAAK,EAAEC,OAAO,EAAEC,OAAO,GAAG,GAAG,EAAEC,QAAQ,GAAG,EAAE,CAAC,GAAGL,KAAK;EAC9D,MAAMM,WAAW,GAAGC,MAAM,CAACL,KAAK,CAAC;EACjC,MAAMM,aAAa,GAAGD,MAAM,CAACJ,OAAO,CAAC;EACrC,MAAMM,aAAa,GAAGF,MAAM,CAACH,OAAO,CAAC;EAErC,IAAIE,WAAW,GAAG,EAAE,IAAIE,aAAa,GAAG,EAAE,IAAIC,aAAa,GAAG,EAAE,EAAE;IAChE,OAAOX,SAAS;EAClB;EAEA,OACEQ,WAAW,GAAG,IAAI,GAClBE,aAAa,GAAG,EAAE,GAClBC,aAAa,IACZJ,QAAQ,GAAGE,MAAM,CAACF,QAAQ,CAAC,GAAG,CAAC,CAAC;AAErC,CAAC;AAED,MAAMK,oBAAoB,GAAGA,CAC3BlB,SAAsC,EACtCC,QAAiB,KACL;EACZ,MAAMkB,MAAM,GAAGC,SAAS,CAACnB,QAAQ,CAAC;EAClC,MAAMoB,QAAQ,GAAGrB,SAAS,CAACsB,YAAY;EAEvC,MAAMC,OAAO,GACXJ,MAAM,KAAKb,SAAS,IACpBe,QAAQ,KAAKf,SAAS,IACtBa,MAAM,CAACK,IAAI,KAAKH,QAAQ,CAACG,IAAI,KAC5BL,MAAM,CAACM,MAAM,KAAKnB,SAAS,IAC1Be,QAAQ,CAACI,MAAM,KAAKnB,SAAS,IAC7Ba,MAAM,CAACM,MAAM,KAAKJ,QAAQ,CAACI,MAAM,CAAC;EAEtC,OAAOzB,SAAS,CAACO,QAAQ,KAAK,IAAI,GAAG,CAACgB,OAAO,GAAGA,OAAO;AACzD,CAAC;AAACzB,OAAA,CAAAoB,oBAAA,GAAAA,oBAAA;AAEF,MAAME,SAAS,GACbjC,KAAc,IACqC;EACnD,IAAI,CAACA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACvC,OAAO,OAAOA,KAAK,KAAK,QAAQ,GAAG;MAAEqC,IAAI,EAAErC;IAAM,CAAC,GAAGmB,SAAS;EAChE;EAEA,IAAI,aAAa,IAAInB,KAAK,EAAE;IAC1B,OAAOA,KAAK,CAACuC,WAAW;EAC1B;EAEA,IAAI,MAAM,IAAIvC,KAAK,EAAE;IACnB,OAAOA,KAAK;EACd;EAEA,OAAOmB,SAAS;AAClB,CAAC;AAED,MAAMqB,sBAAsB,GAAGA,CAC7B3B,SAAsC,EACtCC,QAAiB,KACL;EACZ,MAAMkB,MAAM,GAAGS,WAAW,CAAC3B,QAAQ,CAAC;EACpC,MAAMoB,QAAQ,GAAGrB,SAAS,CAAC6B,cAAc;EAEzC,IACE,CAACV,MAAM,IACP,CAACE,QAAQ,IACTF,MAAM,CAAChC,KAAK,KAAKmB,SAAS,IAC1Be,QAAQ,CAAClC,KAAK,KAAKmB,SAAS,IAC5Ba,MAAM,CAACK,IAAI,KAAKH,QAAQ,CAACG,IAAI,IAC7BL,MAAM,CAACM,MAAM,KAAKJ,QAAQ,CAACI,MAAM,IACjCN,MAAM,CAACW,IAAI,KAAKT,QAAQ,CAACS,IAAI,EAC7B;IACA,OAAO,KAAK;EACd;EAEA,QAAQ9B,SAAS,CAACO,QAAQ;IACxB,KAAK,GAAG;MACN,OAAOY,MAAM,CAAChC,KAAK,KAAKkC,QAAQ,CAAClC,KAAK;IACxC,KAAK,IAAI;MACP,OAAOgC,MAAM,CAAChC,KAAK,KAAKkC,QAAQ,CAAClC,KAAK;IACxC,KAAK,GAAG;MACN,OAAOgC,MAAM,CAAChC,KAAK,GAAGkC,QAAQ,CAAClC,KAAK;IACtC,KAAK,IAAI;MACP,OAAOgC,MAAM,CAAChC,KAAK,IAAIkC,QAAQ,CAAClC,KAAK;IACvC,KAAK,GAAG;MACN,OAAOgC,MAAM,CAAChC,KAAK,GAAGkC,QAAQ,CAAClC,KAAK;IACtC,KAAK,IAAI;MACP,OAAOgC,MAAM,CAAChC,KAAK,IAAIkC,QAAQ,CAAClC,KAAK;IACvC;MACE,OAAO,KAAK;EAChB;AACF,CAAC;AAACW,OAAA,CAAA6B,sBAAA,GAAAA,sBAAA;AAEF,MAAMC,WAAW,GACfzC,KAAc,IACgD;EAC9D,IAAI,CAACA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,EAAE,OAAO,IAAIA,KAAK,CAAC,EAAE;IAC9D,OAAOmB,SAAS;EAClB;EAEA,OAAOnB,KAAK;AACd,CAAC;AAED,MAAM4C,uBAAuB,GAAGA,CAC9B/B,SAAsC,EACtCC,QAAiB,KACL;EACZ,MAAMkB,MAAM,GAAGa,YAAY,CAAC/B,QAAQ,CAAC;EAErC,MAAMsB,OAAO,GACXJ,MAAM,KAAKb,SAAS,IAAIa,MAAM,KAAKnB,SAAS,CAACiC,eAAe,EAAEC,SAAS;EAEzE,OAAOlC,SAAS,CAACO,QAAQ,KAAK,IAAI,GAAG,CAACgB,OAAO,GAAGA,OAAO;AACzD,CAAC;AAACzB,OAAA,CAAAiC,uBAAA,GAAAA,uBAAA;AAEF,MAAMC,YAAY,GAAI7C,KAAc,IAAyB;EAC3D,IAAI,CAACA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,EAAE,WAAW,IAAIA,KAAK,CAAC,EAAE;IAClE,OAAOmB,SAAS;EAClB;EAEA,OAAO,OAAOnB,KAAK,CAAC+C,SAAS,KAAK,QAAQ,GAAG/C,KAAK,CAAC+C,SAAS,GAAG5B,SAAS;AAC1E,CAAC","ignoreList":[]}