@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
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ import { getUcumCode } from "./convert-generic-health-data.js";
4
+ const LOINC_SYSTEM = "http://loinc.org";
5
+ const UCUM_SYSTEM = "http://unitsofmeasure.org";
6
+ const hasConfiguredNonLoincCoding = ({
7
+ typeIdentifier,
8
+ typeIdentifierCodes,
9
+ typeIdentifierCodeSystems
10
+ }) => {
11
+ if (!typeIdentifier) {
12
+ return false;
13
+ }
14
+ const hasConfiguredCoding = typeIdentifierCodes !== undefined && Object.prototype.hasOwnProperty.call(typeIdentifierCodes, typeIdentifier) || typeIdentifierCodeSystems !== undefined && Object.prototype.hasOwnProperty.call(typeIdentifierCodeSystems, typeIdentifier);
15
+ return hasConfiguredCoding && typeIdentifierCodeSystems?.[typeIdentifier] !== LOINC_SYSTEM;
16
+ };
17
+ const normalizeCoreHealthObservation = (observation, coding) => {
18
+ const normalized = normalizeLoincQuantities(observation, coding.typeIdentifier);
19
+ const {
20
+ typeIdentifier
21
+ } = coding;
22
+ const code = typeIdentifier && coding.typeIdentifierCodes?.[typeIdentifier];
23
+ const system = typeIdentifier && coding.typeIdentifierCodeSystems?.[typeIdentifier];
24
+ if (!coding.applyCatalogCoding || !typeIdentifier || !code || system !== LOINC_SYSTEM || normalized.component?.length || normalized.hasMember?.length) {
25
+ return normalized;
26
+ }
27
+ const codingEntry = {
28
+ system: LOINC_SYSTEM,
29
+ code,
30
+ ...(coding.typeIdentifierCodeDisplays?.[typeIdentifier] ? {
31
+ display: coding.typeIdentifierCodeDisplays[typeIdentifier]
32
+ } : {})
33
+ };
34
+ return {
35
+ ...normalized,
36
+ code: {
37
+ ...(normalized.code ?? {}),
38
+ coding: [codingEntry, ...(normalized.code?.coding ?? []).filter(entry => entry.system !== LOINC_SYSTEM)]
39
+ }
40
+ };
41
+ };
42
+ const normalizeLoincQuantities = (value, typeIdentifier) => {
43
+ if (Array.isArray(value)) {
44
+ return value.map(entry => normalizeLoincQuantities(entry, typeIdentifier));
45
+ }
46
+ if (typeof value !== "object" || value === null) {
47
+ return value;
48
+ }
49
+ const record = value;
50
+ const children = Object.fromEntries(Object.entries(record).map(([key, child]) => [key, normalizeLoincQuantities(child, typeIdentifier)]));
51
+ if (record.system !== LOINC_SYSTEM || typeof record.value !== "number" || typeof record.unit !== "string") {
52
+ return children;
53
+ }
54
+ const quantity = {
55
+ ...children
56
+ };
57
+ delete quantity.system;
58
+ delete quantity.code;
59
+ const unitCode = getUcumCode(record.unit, typeIdentifier);
60
+ return {
61
+ ...quantity,
62
+ ...(unitCode ? {
63
+ system: UCUM_SYSTEM,
64
+ code: unitCode
65
+ } : {})
66
+ };
67
+ };
68
+ export { hasConfiguredNonLoincCoding, normalizeCoreHealthObservation };
69
+ //# sourceMappingURL=normalize-core-health-observation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getUcumCode","LOINC_SYSTEM","UCUM_SYSTEM","hasConfiguredNonLoincCoding","typeIdentifier","typeIdentifierCodes","typeIdentifierCodeSystems","hasConfiguredCoding","undefined","Object","prototype","hasOwnProperty","call","normalizeCoreHealthObservation","observation","coding","normalized","normalizeLoincQuantities","code","system","applyCatalogCoding","component","length","hasMember","codingEntry","typeIdentifierCodeDisplays","display","filter","entry","value","Array","isArray","map","record","children","fromEntries","entries","key","child","unit","quantity","unitCode"],"sourceRoot":"../../../../../src","sources":["modules/data-sync/utils/normalize-core-health-observation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ import * as React from "react";
4
+ import { WheelPicker } from "./wheel-picker.js";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const getSelectedIndex = (options, value, defaultIndex, getOptionKey) => {
7
+ const valueIndex = value === null || value === undefined ? -1 : options.findIndex(option => getOptionKey ? getOptionKey(option.value) === getOptionKey(value) : Object.is(option.value, value));
8
+ if (valueIndex !== -1) {
9
+ return valueIndex;
10
+ }
11
+ return options.length ? Math.max(0, Math.min(defaultIndex, options.length - 1)) : 0;
12
+ };
13
+ const ValueWheelPicker = ({
14
+ options,
15
+ value,
16
+ defaultIndex = 0,
17
+ getOptionKey,
18
+ onChange,
19
+ ...wheelPickerProps
20
+ }) => {
21
+ const selectedIndex = React.useMemo(() => getSelectedIndex(options, value, defaultIndex, getOptionKey), [options, value, defaultIndex, getOptionKey]);
22
+ const handleChange = React.useCallback(index => {
23
+ const selectedOption = options[index];
24
+ if (selectedOption) {
25
+ onChange(selectedOption.value);
26
+ }
27
+ }, [onChange, options]);
28
+ return /*#__PURE__*/_jsx(WheelPicker, {
29
+ ...wheelPickerProps,
30
+ selectedIndex: selectedIndex,
31
+ options: options.map(option => option.label),
32
+ onChange: handleChange
33
+ });
34
+ };
35
+ export { ValueWheelPicker };
36
+ //# sourceMappingURL=value-wheel-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","WheelPicker","jsx","_jsx","getSelectedIndex","options","value","defaultIndex","getOptionKey","valueIndex","undefined","findIndex","option","Object","is","length","Math","max","min","ValueWheelPicker","onChange","wheelPickerProps","selectedIndex","useMemo","handleChange","useCallback","index","selectedOption","map","label"],"sourceRoot":"../../../../../src","sources":["modules/picker-sheet/components/value-wheel-picker.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,WAAW,QAA+B,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAyBpE,MAAMC,gBAAgB,GAAGA,CACvBC,OAAwC,EACxCC,KAA2B,EAC3BC,YAAoB,EACpBC,YAAmC,KACxB;EACX,MAAMC,UAAU,GACdH,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKI,SAAS,GACjC,CAAC,CAAC,GACFL,OAAO,CAACM,SAAS,CAAEC,MAAM,IACvBJ,YAAY,GACRA,YAAY,CAACI,MAAM,CAACN,KAAK,CAAC,KAAKE,YAAY,CAACF,KAAK,CAAC,GAClDO,MAAM,CAACC,EAAE,CAACF,MAAM,CAACN,KAAK,EAAEA,KAAK,CACnC,CAAC;EAEP,IAAIG,UAAU,KAAK,CAAC,CAAC,EAAE;IACrB,OAAOA,UAAU;EACnB;EAEA,OAAOJ,OAAO,CAACU,MAAM,GACjBC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAACX,YAAY,EAAEF,OAAO,CAACU,MAAM,GAAG,CAAC,CAAC,CAAC,GACvD,CAAC;AACP,CAAC;AAED,MAAMI,gBAAgB,GAAGA,CAAK;EAC5Bd,OAAO;EACPC,KAAK;EACLC,YAAY,GAAG,CAAC;EAChBC,YAAY;EACZY,QAAQ;EACR,GAAGC;AACqB,CAAC,KAAK;EAC9B,MAAMC,aAAa,GAAGtB,KAAK,CAACuB,OAAO,CACjC,MAAMnB,gBAAgB,CAACC,OAAO,EAAEC,KAAK,EAAEC,YAAY,EAAEC,YAAY,CAAC,EAClE,CAACH,OAAO,EAAEC,KAAK,EAAEC,YAAY,EAAEC,YAAY,CAC7C,CAAC;EAED,MAAMgB,YAAY,GAAGxB,KAAK,CAACyB,WAAW,CACnCC,KAAa,IAAK;IACjB,MAAMC,cAAc,GAAGtB,OAAO,CAACqB,KAAK,CAAC;IAErC,IAAIC,cAAc,EAAE;MAClBP,QAAQ,CAACO,cAAc,CAACrB,KAAK,CAAC;IAChC;EACF,CAAC,EACD,CAACc,QAAQ,EAAEf,OAAO,CACpB,CAAC;EAED,oBACEF,IAAA,CAACF,WAAW;IAAA,GACNoB,gBAAgB;IACpBC,aAAa,EAAEA,aAAc;IAC7BjB,OAAO,EAAEA,OAAO,CAACuB,GAAG,CAAEhB,MAAM,IAAKA,MAAM,CAACiB,KAAK,CAAE;IAC/CT,QAAQ,EAAEI;EAAa,CACxB,CAAC;AAEN,CAAC;AAED,SAASL,gBAAgB","ignoreList":[]}
@@ -21,7 +21,12 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
21
21
  itemHeight = 40,
22
22
  visibleItems = 5,
23
23
  decelerationRate = "fast",
24
- containerProps
24
+ containerProps,
25
+ accessibilityLabel,
26
+ accessibilityHint,
27
+ nestedScrollEnabled = true,
28
+ accessibilityIncrementLabel,
29
+ accessibilityDecrementLabel
25
30
  }) => {
26
31
  const theme = useAppTheme();
27
32
 
@@ -43,7 +48,8 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
43
48
  }, [options, paddingItems]);
44
49
 
45
50
  // Calculate container height
46
- const containerHeight = itemHeight * Math.min(visibleItems, paddedOptions.length);
51
+ const containerHeight = itemCount ? itemHeight * Math.min(visibleItems, paddedOptions.length) : 0;
52
+ const safeSelectedIndex = Math.max(0, Math.min(selectedIndex, Math.max(itemCount - 1, 0)));
47
53
 
48
54
  // Calculate the offset to center the selected item
49
55
  const centerOffset = Math.floor(visibleItems / 2) * itemHeight;
@@ -57,22 +63,24 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
57
63
  isScrolling.value = true;
58
64
  },
59
65
  onMomentumEnd: event => {
66
+ const userInitiatedScroll = isScrolling.value;
60
67
  isScrolling.value = false;
68
+ if (!itemCount) {
69
+ return;
70
+ }
61
71
  const offsetY = event.contentOffset.y;
62
- const rawIndex = Math.round(offsetY / itemHeight);
63
-
64
- // Since we're using initialScrollIndex which already accounts for padding,
65
- // we need to keep the same logic here
72
+ const rawIndex = Math.round(offsetY / itemHeight) - paddingItems;
66
73
  const clampedIndex = Math.max(0, Math.min(rawIndex, itemCount - 1));
67
74
 
68
75
  // Ensure perfect snap position first
69
- const targetY = rawIndex * itemHeight;
76
+ const targetY = (clampedIndex + paddingItems) * itemHeight;
70
77
  if (targetY !== offsetY) {
71
78
  scrollTo(flatListRef, 0, targetY, true);
72
79
  }
73
80
 
74
- // Call onChange after ensuring the position is correct
75
- if (clampedIndex !== selectedIndex) {
81
+ // A user can deliberately confirm the value currently displayed as a
82
+ // default. Programmatic scrolls do not count as user selections.
83
+ if (userInitiatedScroll) {
76
84
  runOnJS(onChange)(clampedIndex);
77
85
  }
78
86
  }
@@ -89,7 +97,7 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
89
97
  React.useEffect(() => {
90
98
  if (!mountedRef.current) {
91
99
  mountedRef.current = true;
92
- const initialY = (selectedIndex + paddingItems) * itemHeight;
100
+ const initialY = (safeSelectedIndex + paddingItems) * itemHeight;
93
101
  requestAnimationFrame(() => {
94
102
  if (flatListRef.current) {
95
103
  scrollTo(flatListRef, 0, initialY, false);
@@ -97,14 +105,14 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
97
105
  }
98
106
  });
99
107
  }
100
- }, [flatListRef, selectedIndex, paddingItems, itemHeight, scrollPosition]);
108
+ }, [flatListRef, safeSelectedIndex, paddingItems, itemHeight, scrollPosition]);
101
109
 
102
110
  // Scroll to selected index when it changes
103
111
  React.useEffect(() => {
104
112
  if (!isInitialized.current) {
105
113
  return;
106
114
  }
107
- if (selectedIndex < 0 || selectedIndex >= options.length) {
115
+ if (!itemCount || selectedIndex < 0 || selectedIndex >= itemCount) {
108
116
  // Log warning instead of throwing error for better UX
109
117
  // eslint-disable-next-line no-console
110
118
  console.warn(`Selected index ${selectedIndex} is out of bounds [0, ${options.length - 1}]`);
@@ -114,7 +122,7 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
114
122
  const targetY = (selectedIndex + paddingItems) * itemHeight;
115
123
  scrollTo(flatListRef, 0, targetY, true);
116
124
  }
117
- }, [flatListRef, selectedIndex, paddingItems, itemHeight, options.length, isScrolling]);
125
+ }, [flatListRef, selectedIndex, paddingItems, itemHeight, itemCount, options.length, isScrolling]);
118
126
 
119
127
  // Render item
120
128
  const renderItem = React.useCallback(({
@@ -131,10 +139,42 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
131
139
  }, `${index}-${option}`), [itemHeight, itemStyle, itemTextStyle, scrollPosition, visibleItems]);
132
140
  const keyExtractor = React.useCallback((item, index) => `item-${item}-${index}`, []);
133
141
  return /*#__PURE__*/_jsxs(View, {
142
+ ...containerProps,
134
143
  style: [styles.container, {
135
144
  height: containerHeight
136
145
  }, containerStyle],
137
- ...containerProps,
146
+ accessible: itemCount > 0,
147
+ accessibilityRole: "adjustable",
148
+ accessibilityLabel: accessibilityLabel,
149
+ accessibilityHint: accessibilityHint,
150
+ accessibilityValue: itemCount ? {
151
+ min: 1,
152
+ max: itemCount,
153
+ now: safeSelectedIndex + 1,
154
+ text: options[safeSelectedIndex]
155
+ } : undefined,
156
+ accessibilityActions: [{
157
+ name: "increment",
158
+ label: accessibilityIncrementLabel
159
+ }, {
160
+ name: "decrement",
161
+ label: accessibilityDecrementLabel
162
+ }],
163
+ onAccessibilityAction: ({
164
+ nativeEvent
165
+ }) => {
166
+ if (nativeEvent.actionName === "increment") {
167
+ const nextIndex = Math.min(safeSelectedIndex + 1, itemCount - 1);
168
+ if (nextIndex !== safeSelectedIndex) {
169
+ onChange(nextIndex);
170
+ }
171
+ } else if (nativeEvent.actionName === "decrement") {
172
+ const previousIndex = Math.max(safeSelectedIndex - 1, 0);
173
+ if (previousIndex !== safeSelectedIndex) {
174
+ onChange(previousIndex);
175
+ }
176
+ }
177
+ },
138
178
  children: [/*#__PURE__*/_jsx(View, {
139
179
  style: [styles.selectedIndicator, {
140
180
  backgroundColor: theme.colors.surfaceVariant,
@@ -159,7 +199,8 @@ export const WheelPicker = /*#__PURE__*/React.memo(({
159
199
  renderItem: renderItem,
160
200
  keyExtractor: keyExtractor,
161
201
  getItemLayout: getItemLayout,
162
- initialScrollIndex: selectedIndex,
202
+ initialScrollIndex: safeSelectedIndex + paddingItems,
203
+ nestedScrollEnabled: nestedScrollEnabled,
163
204
  initialNumToRender: visibleItems * 2,
164
205
  maxToRenderPerBatch: visibleItems * 2,
165
206
  windowSize: 7,
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","StyleSheet","FlatList","ScrollView","Animated","useSharedValue","useAnimatedScrollHandler","runOnJS","useAnimatedRef","scrollTo","useAppTheme","WheelPickerItem","jsx","_jsx","jsxs","_jsxs","AnimatedFlatList","createAnimatedComponent","AnimatedScrollView","WheelPicker","memo","selectedIndex","options","onChange","selectedIndicatorStyle","containerStyle","itemStyle","itemTextStyle","itemHeight","visibleItems","decelerationRate","containerProps","theme","flatListRef","isInitialized","useRef","mountedRef","scrollPosition","itemCount","length","isScrolling","paddingItems","Math","floor","paddedOptions","useMemo","padding","Array","fill","containerHeight","min","centerOffset","handleScroll","onScroll","event","value","contentOffset","y","onBeginDrag","onMomentumEnd","offsetY","rawIndex","round","clampedIndex","max","targetY","getItemLayout","useCallback","_","index","offset","useEffect","current","initialY","requestAnimationFrame","console","warn","renderItem","item","option","height","position","style","textStyle","keyExtractor","styles","container","children","selectedIndicator","backgroundColor","colors","surfaceVariant","borderRadius","top","transform","ref","scrollView","contentContainerStyle","contentContainer","showsVerticalScrollIndicator","scrollEventThrottle","snapToInterval","snapToAlignment","overScrollMode","removeClippedSubviews","data","initialScrollIndex","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","maintainVisibleContentPosition","minIndexForVisible","autoscrollToTopThreshold","renderScrollComponent","props","create","overflow","paddingVertical","width","zIndex","flex"],"sourceRoot":"../../../../../src","sources":["modules/picker-sheet/components/wheel-picker.tsx"],"mappings":";;AAAA;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAIEC,IAAI,EAEJC,UAAU,EACVC,QAAQ,QACH,cAAc;AACrB,SAASC,UAAU,QAAQ,8BAA8B;AACzD,OAAOC,QAAQ,IACbC,cAAc,EACdC,wBAAwB,EACxBC,OAAO,EACPC,cAAc,EACdC,QAAQ,QACH,yBAAyB;AAEhC,SAASC,WAAW,QAAQ,sBAAa;AAEzC,SAASC,eAAe,QAAQ,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAkBtD,MAAMC,gBAAgB,GAAGZ,QAAQ,CAACa,uBAAuB,CACvDf,QACF,CAAC;AAED,MAAMgB,kBAAkB,GAAGd,QAAQ,CAACa,uBAAuB,CAACd,UAAU,CAAC;AAEvE,OAAO,MAAMgB,WAAW,gBAAGpB,KAAK,CAACqB,IAAI,CACnC,CAAC;EACCC,aAAa;EACbC,OAAO;EACPC,QAAQ;EACRC,sBAAsB;EACtBC,cAAc;EACdC,SAAS;EACTC,aAAa;EACbC,UAAU,GAAG,EAAE;EACfC,YAAY,GAAG,CAAC;EAChBC,gBAAgB,GAAG,MAAM;EACzBC;AACK,CAAC,KAAK;EACX,MAAMC,KAAK,GAAGtB,WAAW,CAAC,CAAC;;EAE3B;EACA,MAAMuB,WAAW,GAAGzB,cAAc,CAAuB,CAAC;EAC1D,MAAM0B,aAAa,GAAGnC,KAAK,CAACoC,MAAM,CAAC,KAAK,CAAC;EACzC,MAAMC,UAAU,GAAGrC,KAAK,CAACoC,MAAM,CAAC,KAAK,CAAC;;EAEtC;EACA,MAAME,cAAc,GAAGhC,cAAc,CAAC,CAAC,CAAC;EACxC,MAAMiC,SAAS,GAAGhB,OAAO,CAACiB,MAAM;EAChC,MAAMC,WAAW,GAAGnC,cAAc,CAAC,KAAK,CAAC;;EAEzC;EACA,MAAMoC,YAAY,GAAGC,IAAI,CAACC,KAAK,CAACd,YAAY,GAAG,CAAC,CAAC;EAEjD,MAAMe,aAAa,GAAG7C,KAAK,CAAC8C,OAAO,CAAC,MAAM;IACxC,MAAMC,OAAO,GAAGC,KAAK,CAACN,YAAY,CAAC,CAACO,IAAI,CAAC,IAAI,CAAC;IAE9C,OAAO,CAAC,GAAGF,OAAO,EAAE,GAAGxB,OAAO,EAAE,GAAGwB,OAAO,CAAC;EAC7C,CAAC,EAAE,CAACxB,OAAO,EAAEmB,YAAY,CAAC,CAAC;;EAE3B;EACA,MAAMQ,eAAe,GACnBrB,UAAU,GAAGc,IAAI,CAACQ,GAAG,CAACrB,YAAY,EAAEe,aAAa,CAACL,MAAM,CAAC;;EAE3D;EACA,MAAMY,YAAY,GAAGT,IAAI,CAACC,KAAK,CAACd,YAAY,GAAG,CAAC,CAAC,GAAGD,UAAU;;EAE9D;EACA,MAAMwB,YAAY,GAAG9C,wBAAwB,CAAC;IAC5C+C,QAAQ,EAAGC,KAAK,IAAK;MACnBjB,cAAc,CAACkB,KAAK,GAAGD,KAAK,CAACE,aAAa,CAACC,CAAC;IAC9C,CAAC;IAEDC,WAAW,EAAEA,CAAA,KAAM;MACjBlB,WAAW,CAACe,KAAK,GAAG,IAAI;IAC1B,CAAC;IAEDI,aAAa,EAAGL,KAAK,IAAK;MACxBd,WAAW,CAACe,KAAK,GAAG,KAAK;MACzB,MAAMK,OAAO,GAAGN,KAAK,CAACE,aAAa,CAACC,CAAC;MACrC,MAAMI,QAAQ,GAAGnB,IAAI,CAACoB,KAAK,CAACF,OAAO,GAAGhC,UAAU,CAAC;;MAEjD;MACA;MACA,MAAMmC,YAAY,GAAGrB,IAAI,CAACsB,GAAG,CAAC,CAAC,EAAEtB,IAAI,CAACQ,GAAG,CAACW,QAAQ,EAAEvB,SAAS,GAAG,CAAC,CAAC,CAAC;;MAEnE;MACA,MAAM2B,OAAO,GAAGJ,QAAQ,GAAGjC,UAAU;MAErC,IAAIqC,OAAO,KAAKL,OAAO,EAAE;QACvBnD,QAAQ,CAACwB,WAAW,EAAE,CAAC,EAAEgC,OAAO,EAAE,IAAI,CAAC;MACzC;;MAEA;MACA,IAAIF,YAAY,KAAK1C,aAAa,EAAE;QAClCd,OAAO,CAACgB,QAAQ,CAAC,CAACwC,YAAY,CAAC;MACjC;IACF;EACF,CAAC,CAAC;;EAEF;EACA,MAAMG,aAAa,GAAGnE,KAAK,CAACoE,WAAW,CACrC,CAACC,CAAU,EAAEC,KAAa,MAAM;IAC9B9B,MAAM,EAAEX,UAAU;IAClB0C,MAAM,EAAE1C,UAAU,GAAGyC,KAAK;IAC1BA;EACF,CAAC,CAAC,EACF,CAACzC,UAAU,CACb,CAAC;;EAED;EACA7B,KAAK,CAACwE,SAAS,CAAC,MAAM;IACpB,IAAI,CAACnC,UAAU,CAACoC,OAAO,EAAE;MACvBpC,UAAU,CAACoC,OAAO,GAAG,IAAI;MACzB,MAAMC,QAAQ,GAAG,CAACpD,aAAa,GAAGoB,YAAY,IAAIb,UAAU;MAE5D8C,qBAAqB,CAAC,MAAM;QAC1B,IAAIzC,WAAW,CAACuC,OAAO,EAAE;UACvB/D,QAAQ,CAACwB,WAAW,EAAE,CAAC,EAAEwC,QAAQ,EAAE,KAAK,CAAC;UACzCvC,aAAa,CAACsC,OAAO,GAAG,IAAI;QAC9B;MACF,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACvC,WAAW,EAAEZ,aAAa,EAAEoB,YAAY,EAAEb,UAAU,EAAES,cAAc,CAAC,CAAC;;EAE1E;EACAtC,KAAK,CAACwE,SAAS,CAAC,MAAM;IACpB,IAAI,CAACrC,aAAa,CAACsC,OAAO,EAAE;MAC1B;IACF;IAEA,IAAInD,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAIC,OAAO,CAACiB,MAAM,EAAE;MACxD;MACA;MACAoC,OAAO,CAACC,IAAI,CACV,kBAAkBvD,aAAa,yBAC7BC,OAAO,CAACiB,MAAM,GAAG,CAAC,GAEtB,CAAC;MAED;IACF;IAEA,IAAI,CAACC,WAAW,CAACe,KAAK,EAAE;MACtB,MAAMU,OAAO,GAAG,CAAC5C,aAAa,GAAGoB,YAAY,IAAIb,UAAU;MAE3DnB,QAAQ,CAACwB,WAAW,EAAE,CAAC,EAAEgC,OAAO,EAAE,IAAI,CAAC;IACzC;EACF,CAAC,EAAE,CACDhC,WAAW,EACXZ,aAAa,EACboB,YAAY,EACZb,UAAU,EACVN,OAAO,CAACiB,MAAM,EACdC,WAAW,CACZ,CAAC;;EAEF;EACA,MAAMqC,UAAU,GAAG9E,KAAK,CAACoE,WAAW,CAClC,CAAC;IAAEW,IAAI,EAAEC,MAAM;IAAEV;EAA2C,CAAC,kBAC3DxD,IAAA,CAACF,eAAe;IAEdoE,MAAM,EAAEA,MAAO;IACfV,KAAK,EAAEA,KAAM;IACbW,MAAM,EAAEpD,UAAW;IACnBqD,QAAQ,EAAE5C,cAAe;IACzBR,YAAY,EAAEA,YAAa;IAC3BqD,KAAK,EAAExD,SAAU;IACjByD,SAAS,EAAExD;EAAc,GAPpB,GAAG0C,KAAK,IAAIU,MAAM,EAQxB,CACF,EACD,CAACnD,UAAU,EAAEF,SAAS,EAAEC,aAAa,EAAEU,cAAc,EAAER,YAAY,CACrE,CAAC;EAED,MAAMuD,YAAY,GAAGrF,KAAK,CAACoE,WAAW,CACpC,CAACW,IAAgB,EAAET,KAAa,KAAK,QAAQS,IAAI,IAAIT,KAAK,EAAE,EAC5D,EACF,CAAC;EAED,oBACEtD,KAAA,CAACf,IAAI;IACHkF,KAAK,EAAE,CAACG,MAAM,CAACC,SAAS,EAAE;MAAEN,MAAM,EAAE/B;IAAgB,CAAC,EAAExB,cAAc,CAAE;IAAA,GACnEM,cAAc;IAAAwD,QAAA,gBAElB1E,IAAA,CAACb,IAAI;MACHkF,KAAK,EAAE,CACLG,MAAM,CAACG,iBAAiB,EACxB;QACEC,eAAe,EAAEzD,KAAK,CAAC0D,MAAM,CAACC,cAAc;QAC5CC,YAAY,EAAE5D,KAAK,CAAC4D,YAAY,CAAC,CAAC,CAAC;QACnCZ,MAAM,EAAEpD,UAAU;QAClBiE,GAAG,EAAE1C,YAAY;QACjB2C,SAAS,EAAE;MACb,CAAC,EACDtE,sBAAsB;IACtB,CACH,CAAC,eACFX,IAAA,CAACG,gBAAgB;MACf+E,GAAG,EAAE9D,WAAY;MACjBiD,KAAK,EAAEG,MAAM,CAACW,UAAW;MACzBC,qBAAqB,EAAEZ,MAAM,CAACa,gBAAiB;MAC/CC,4BAA4B,EAAE,KAAM;MACpC9C,QAAQ,EAAED,YAAa;MACvBgD,mBAAmB,EAAE,EAAG;MACxBtE,gBAAgB,EAAEA,gBAAiB;MACnCuE,cAAc,EAAEzE,UAAW;MAC3B0E,eAAe,EAAC,OAAO;MACvBC,cAAc,EAAC,OAAO;MACtBC,qBAAqB,EAAE,KAAM;MAC7BC,IAAI,EAAE7D,aAAc;MACpBiC,UAAU,EAAEA,UAAW;MACvBO,YAAY,EAAEA,YAAa;MAC3BlB,aAAa,EAAEA,aAAc;MAC7BwC,kBAAkB,EAAErF,aAAc;MAClCsF,kBAAkB,EAAE9E,YAAY,GAAG,CAAE;MACrC+E,mBAAmB,EAAE/E,YAAY,GAAG,CAAE;MACtCgF,UAAU,EAAE,CAAE;MACdC,yBAAyB,EAAE,EAAG;MAC9BC,8BAA8B,EAAE;QAC9BC,kBAAkB,EAAE,CAAC;QACrBC,wBAAwB,EAAE;MAC5B,CAAE;MACFC,qBAAqB,EAAGC,KAAK,iBAC3BtG,IAAA,CAACK,kBAAkB;QAAA,GAAKiG,KAAK;QAAEf,mBAAmB,EAAE;MAAG,CAAE;IACzD,CACH,CAAC;EAAA,CACE,CAAC;AAEX,CACF,CAAC;AAED,MAAMf,MAAM,GAAGpF,UAAU,CAACmH,MAAM,CAAC;EAC/B9B,SAAS,EAAE;IACTL,QAAQ,EAAE,UAAU;IACpBoC,QAAQ,EAAE;EACZ,CAAC;EACDnB,gBAAgB,EAAE;IAChBoB,eAAe,EAAE;EACnB,CAAC;EACD9B,iBAAiB,EAAE;IACjBP,QAAQ,EAAE,UAAU;IACpBsC,KAAK,EAAE,MAAM;IACbC,MAAM,EAAE,CAAC;EACX,CAAC;EACDxB,UAAU,EAAE;IACVyB,IAAI,EAAE;EACR;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","View","StyleSheet","FlatList","ScrollView","Animated","useSharedValue","useAnimatedScrollHandler","runOnJS","useAnimatedRef","scrollTo","useAppTheme","WheelPickerItem","jsx","_jsx","jsxs","_jsxs","AnimatedFlatList","createAnimatedComponent","AnimatedScrollView","WheelPicker","memo","selectedIndex","options","onChange","selectedIndicatorStyle","containerStyle","itemStyle","itemTextStyle","itemHeight","visibleItems","decelerationRate","containerProps","accessibilityLabel","accessibilityHint","nestedScrollEnabled","accessibilityIncrementLabel","accessibilityDecrementLabel","theme","flatListRef","isInitialized","useRef","mountedRef","scrollPosition","itemCount","length","isScrolling","paddingItems","Math","floor","paddedOptions","useMemo","padding","Array","fill","containerHeight","min","safeSelectedIndex","max","centerOffset","handleScroll","onScroll","event","value","contentOffset","y","onBeginDrag","onMomentumEnd","userInitiatedScroll","offsetY","rawIndex","round","clampedIndex","targetY","getItemLayout","useCallback","_","index","offset","useEffect","current","initialY","requestAnimationFrame","console","warn","renderItem","item","option","height","position","style","textStyle","keyExtractor","styles","container","accessible","accessibilityRole","accessibilityValue","now","text","undefined","accessibilityActions","name","label","onAccessibilityAction","nativeEvent","actionName","nextIndex","previousIndex","children","selectedIndicator","backgroundColor","colors","surfaceVariant","borderRadius","top","transform","ref","scrollView","contentContainerStyle","contentContainer","showsVerticalScrollIndicator","scrollEventThrottle","snapToInterval","snapToAlignment","overScrollMode","removeClippedSubviews","data","initialScrollIndex","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","maintainVisibleContentPosition","minIndexForVisible","autoscrollToTopThreshold","renderScrollComponent","props","create","overflow","paddingVertical","width","zIndex","flex"],"sourceRoot":"../../../../../src","sources":["modules/picker-sheet/components/wheel-picker.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  export * from "./components/wheel-picker.js";
4
+ export * from "./components/value-wheel-picker.js";
4
5
  export * from "./components/picker-sheet.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["modules/picker-sheet/index.ts"],"mappings":";;AAAA,cAAc,8BAA2B;AAEzC,cAAc,8BAA2B","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["modules/picker-sheet/index.ts"],"mappings":";;AAAA,cAAc,8BAA2B;AACzC,cAAc,oCAAiC;AAE/C,cAAc,8BAA2B","ignoreList":[]}
@@ -64,16 +64,19 @@ const MyComponent = () => {
64
64
 
65
65
  ## Props
66
66
 
67
- | Prop | Type | Description |
68
- | ------------- | ---------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
69
- | questionnaire | Questionnaire | The FHIR Questionnaire resource to render |
70
- | onSubmit | (values: QuestionnaireFormValues, formikHelpers?: FormikHelpers<QuestionnaireFormValues>) => Promise<void> | Optional callback for form submission |
71
- | onSuccess | (response: QuestionnaireResponse) => void | Optional callback when form is submitted successfully |
72
- | onError | (error: Error) => void | Optional callback when form submission fails |
73
- | initialValues | Partial<QuestionnaireFormValues> | Optional initial values for the form |
74
- | children | ReactNode | Child components for custom layout |
75
- | style | ViewStyle | Optional styles for the container |
76
- | testID | string | Test ID for testing |
67
+ | Prop | Type | Description |
68
+ | ------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
69
+ | questionnaire | Questionnaire | The FHIR Questionnaire resource to render |
70
+ | onSubmit | (values: QuestionnaireFormValues, formikHelpers?: FormikHelpers<QuestionnaireFormValues>) => Promise<void> | Optional callback for form submission |
71
+ | onSuccess | (response: QuestionnaireResponse) => void | Optional callback when form is submitted successfully |
72
+ | onError | (error: Error) => void | Optional callback when form submission fails |
73
+ | initialValues | Partial<QuestionnaireFormValues> | Optional initial values for the form |
74
+ | renderItem | QuestionnaireItemRenderer | Optional host control for any non-group FHIR item |
75
+ | resolveQuestionnaireConstraint | QuestionnaireConstraintResolver | Resolves SDC calculated min/max values with the host's expression context |
76
+ | resolveQuestionnaireUnitOptions | QuestionnaireUnitOptionsResolver | Supplies a cached expansion for an SDC `unitValueSet` canonical |
77
+ | children | ReactNode | Child components for custom layout |
78
+ | style | ViewStyle | Optional styles for the container |
79
+ | testID | string | Test ID for testing |
77
80
 
78
81
  Choose either the host-owned `onSubmit(values, formikHelpers?)` mode or the SDK-managed
79
82
  `onSuccess(response)` mode. `onError(error)` is optional in the SDK-managed mode. The
@@ -81,6 +84,33 @@ SDK-managed path requires the active `@ovok/core` client/profile context, create
81
84
  completed `QuestionnaireResponse`, adds the patient subject and a stable identifier,
82
85
  and persists it with `createResourceIfNoneExist`.
83
86
 
87
+ Custom `renderItem` controls receive a `constraints` object with `minValue`,
88
+ `maxValue`, `minQuantity`, `maxQuantity`, `step`, `minLength`, `maxLength`,
89
+ `unitOptions`, `unitValueSet`, and `unitOpen`. This lets an app use its own
90
+ controls and terminology cache without coupling the SDK to an expression or
91
+ terminology service. Implement `resolveQuestionnaireConstraint` for calculated
92
+ SDC bounds and `resolveQuestionnaireUnitOptions` for cached ValueSet expansions;
93
+ both callbacks are synchronous. If a calculated bound or unit ValueSet is not
94
+ resolved, a non-empty answer using it is not accepted as valid. Quantity bounds
95
+ are compared only when the answer and bound use the same UCUM code; convert
96
+ units in the host control before returning the answer when conversions are
97
+ needed.
98
+
99
+ Static date/dateTime bounds are passed to the date picker, numeric bounds and
100
+ steps are checked on navigation and submission, and simple-type length limits
101
+ are checked before submission. Bounded integer items and decimal items with an
102
+ explicit step use a touch wheel when the generated range contains at most 1,000
103
+ values; unconstrained, invalid, or larger ranges retain text entry. A displayed
104
+ wheel default is not saved until the person changes the selection. The typed
105
+ `ValueWheelPicker<T>` in `@ovok/native/picker-sheet` can render `unitOptions`;
106
+ use its `value` prop for the committed selection and `defaultIndex` only for a
107
+ display-only initial position.
108
+
109
+ Host-rendered quantity and duration controls can combine `minQuantity`,
110
+ `maxQuantity`, `unitOptions`, and the host-resolved `unitValueSet` in one or
111
+ more typed wheels. This keeps UCUM conversion and terminology lookup in the
112
+ host app while reusing the same generic picker in different forms and styles.
113
+
84
114
  ## Extended Properties
85
115
 
86
116
  In addition to standard FHIR QuestionnaireItem properties, the component supports these additional UI properties:
@@ -168,6 +198,15 @@ The form supports various field types through specialized components:
168
198
  - **QuestionnaireDateField**: Date picker
169
199
  - **QuestionnaireItemRenderer**: Dynamic field type renderer
170
200
 
201
+ The optional `renderItem` callback can provide host-designed controls for item
202
+ types without a built-in control, including `url`, `open-choice`, `quantity`,
203
+ `attachment`, and `reference`. Its `onChange` accepts either a primitive value
204
+ for built-in types or a typed FHIR answer value such as
205
+ `{ valueQuantity: { value: 2, unit: "mg" } }`. This preserves the corresponding
206
+ FHIR `value[x]` field in SDK-created responses and makes required custom items
207
+ participate in validation. Without a custom renderer, unsupported items show a
208
+ fallback and do not prevent continuing through the form.
209
+
171
210
  ## Context and Hooks
172
211
 
173
212
  The form provides a context and hooks for advanced customization:
@@ -253,16 +292,16 @@ const MyComponent = () => {
253
292
 
254
293
  #### QuestionnaireForm Props
255
294
 
256
- | Prop | Type | Description |
257
- | ------------- | ----------------------------------------- | ----------------------------------- |
258
- | questionnaire | Questionnaire | The questionnaire object to render |
259
- | onSubmit | (values: QuestionnaireFormValues, formikHelpers?) => Promise<void> | Host-owned submit callback |
260
- | onSuccess | (response: QuestionnaireResponse) => void | Called after SDK-managed persistence |
261
- | onError | (error: Error) => void | Called when SDK-managed persistence fails |
262
- | initialValues | Partial<QuestionnaireFormValues> | Initial values for the form |
263
- | paged | boolean | Whether to show one item at a time; defaults to true |
264
- | style | StyleProp<ViewStyle> | Style for the container |
265
- | testID | string | Test ID for the component |
295
+ | Prop | Type | Description |
296
+ | ------------- | ------------------------------------------------------------------ | ---------------------------------------------------- |
297
+ | questionnaire | Questionnaire | The questionnaire object to render |
298
+ | onSubmit | (values: QuestionnaireFormValues, formikHelpers?) => Promise<void> | Host-owned submit callback |
299
+ | onSuccess | (response: QuestionnaireResponse) => void | Called after SDK-managed persistence |
300
+ | onError | (error: Error) => void | Called when SDK-managed persistence fails |
301
+ | initialValues | Partial<QuestionnaireFormValues> | Initial values for the form |
302
+ | paged | boolean | Whether to show one item at a time; defaults to true |
303
+ | style | StyleProp<ViewStyle> | Style for the container |
304
+ | testID | string | Test ID for the component |
266
305
 
267
306
  #### QuestionnaireForm.Header Props
268
307
 
@@ -3,6 +3,7 @@
3
3
  import * as React from "react";
4
4
  import { View } from "react-native";
5
5
  import { useQuestionnaireForm } from "../../hooks/use-questionnaire-form.js";
6
+ import { getQuestionnaireItemConstraints } from "../../utils/questionnaire-item-constraints.js";
6
7
  import { QuestionnaireItemRenderer } from "../fields/questionnaire-item-renderer.js";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  export const QuestionnaireContentItem = /*#__PURE__*/React.memo(({
@@ -12,6 +13,10 @@ export const QuestionnaireContentItem = /*#__PURE__*/React.memo(({
12
13
  }) => {
13
14
  const {
14
15
  currentItem,
16
+ locale,
17
+ renderItem,
18
+ resolveQuestionnaireConstraint,
19
+ resolveQuestionnaireUnitOptions,
15
20
  values,
16
21
  setFieldValue
17
22
  } = useQuestionnaireForm();
@@ -34,6 +39,9 @@ export const QuestionnaireContentItem = /*#__PURE__*/React.memo(({
34
39
  item: currentItem,
35
40
  value: value,
36
41
  onChange: onChange,
42
+ locale: locale,
43
+ renderItem: renderItem,
44
+ constraints: getQuestionnaireItemConstraints(currentItem, values, resolveQuestionnaireConstraint, resolveQuestionnaireUnitOptions),
37
45
  testID: testID ? `${testID}-${itemId}` : `item-${itemId}`
38
46
  })
39
47
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","useQuestionnaireForm","QuestionnaireItemRenderer","jsx","_jsx","QuestionnaireContentItem","memo","style","testID","props","currentItem","values","setFieldValue","onChange","useCallback","val","linkId","itemId","value","children","item"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-item.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAmB,cAAc;AAE9C,SAASC,oBAAoB,QAAQ,uCAAoC;AACzE,SAASC,yBAAyB,QAAQ,0CAAuC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElF,OAAO,MAAMC,wBAAwB,gBAAGN,KAAK,CAACO,IAAI,CAChD,CAAC;EAAEC,KAAK;EAAEC,MAAM;EAAE,GAAGC;AAAiB,CAAC,KAAK;EAC1C,MAAM;IAAEC,WAAW;IAAEC,MAAM;IAAEC;EAAc,CAAC,GAAGX,oBAAoB,CAAC,CAAC;EAErE,MAAMY,QAAQ,GAAGd,KAAK,CAACe,WAAW,CAC/BC,GAAqB,IAAK;IACzB,IAAI,CAACL,WAAW,EAAEM,MAAM,EAAE;MACxB;IACF;IAEAJ,aAAa,CAACF,WAAW,CAACM,MAAM,EAAED,GAAG,CAAC;EACxC,CAAC,EACD,CAACL,WAAW,EAAEM,MAAM,EAAEJ,aAAa,CACrC,CAAC;EAED,IAAI,CAACF,WAAW,EAAE;IAChB,OAAO,IAAI;EACb;EAEA,MAAMO,MAAM,GAAGP,WAAW,CAACM,MAAM,IAAI,EAAE;EACvC,MAAME,KAAK,GAAGP,MAAM,CAACM,MAAM,CAAC;EAE5B,oBACEb,IAAA,CAACJ,IAAI;IAAA,GAAKS,KAAK;IAAEF,KAAK,EAAEA,KAAM;IAACC,MAAM,EAAEA,MAAO;IAAAW,QAAA,eAC5Cf,IAAA,CAACF,yBAAyB;MACxBkB,IAAI,EAAEV,WAAY;MAClBQ,KAAK,EAAEA,KAAM;MACbL,QAAQ,EAAEA,QAAS;MACnBL,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,IAAIS,MAAM,EAAE,GAAG,QAAQA,MAAM;IAAG,CAC3D;EAAC,CACE,CAAC;AAEX,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","View","useQuestionnaireForm","getQuestionnaireItemConstraints","QuestionnaireItemRenderer","jsx","_jsx","QuestionnaireContentItem","memo","style","testID","props","currentItem","locale","renderItem","resolveQuestionnaireConstraint","resolveQuestionnaireUnitOptions","values","setFieldValue","onChange","useCallback","val","linkId","itemId","value","children","item","constraints"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-item.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAmB,cAAc;AAE9C,SAASC,oBAAoB,QAAQ,uCAAoC;AAEzE,SAASC,+BAA+B,QAAQ,+CAA4C;AAC5F,SAASC,yBAAyB,QAAQ,0CAAuC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElF,OAAO,MAAMC,wBAAwB,gBAAGP,KAAK,CAACQ,IAAI,CAChD,CAAC;EAAEC,KAAK;EAAEC,MAAM;EAAE,GAAGC;AAAiB,CAAC,KAAK;EAC1C,MAAM;IACJC,WAAW;IACXC,MAAM;IACNC,UAAU;IACVC,8BAA8B;IAC9BC,+BAA+B;IAC/BC,MAAM;IACNC;EACF,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAE1B,MAAMiB,QAAQ,GAAGnB,KAAK,CAACoB,WAAW,CAC/BC,GAA2B,IAAK;IAC/B,IAAI,CAACT,WAAW,EAAEU,MAAM,EAAE;MACxB;IACF;IAEAJ,aAAa,CAACN,WAAW,CAACU,MAAM,EAAED,GAAG,CAAC;EACxC,CAAC,EACD,CAACT,WAAW,EAAEU,MAAM,EAAEJ,aAAa,CACrC,CAAC;EAED,IAAI,CAACN,WAAW,EAAE;IAChB,OAAO,IAAI;EACb;EAEA,MAAMW,MAAM,GAAGX,WAAW,CAACU,MAAM,IAAI,EAAE;EACvC,MAAME,KAAK,GAAGP,MAAM,CAACM,MAAM,CAAC;EAE5B,oBACEjB,IAAA,CAACL,IAAI;IAAA,GAAKU,KAAK;IAAEF,KAAK,EAAEA,KAAM;IAACC,MAAM,EAAEA,MAAO;IAAAe,QAAA,eAC5CnB,IAAA,CAACF,yBAAyB;MACxBsB,IAAI,EAAEd,WAAY;MAClBY,KAAK,EAAEA,KAAM;MACbL,QAAQ,EAAEA,QAAS;MACnBN,MAAM,EAAEA,MAAO;MACfC,UAAU,EAAEA,UAAW;MACvBa,WAAW,EAAExB,+BAA+B,CAC1CS,WAAW,EACXK,MAAM,EACNF,8BAA8B,EAC9BC,+BACF,CAAE;MACFN,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,IAAIa,MAAM,EAAE,GAAG,QAAQA,MAAM;IAAG,CAC3D;EAAC,CACE,CAAC;AAEX,CACF,CAAC","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import * as React from "react";
4
4
  import { View } from "react-native";
5
5
  import { useQuestionnaireForm } from "../../hooks/use-questionnaire-form.js";
6
+ import { getQuestionnaireItemConstraints } from "../../utils/questionnaire-item-constraints.js";
6
7
  import { QuestionnaireItemRenderer } from "../fields/questionnaire-item-renderer.js";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  const QuestionnaireContentSpecificItemComponent = /*#__PURE__*/React.memo(({
@@ -12,6 +13,10 @@ const QuestionnaireContentSpecificItemComponent = /*#__PURE__*/React.memo(({
12
13
  ...props
13
14
  }) => {
14
15
  const {
16
+ locale,
17
+ renderItem,
18
+ resolveQuestionnaireConstraint,
19
+ resolveQuestionnaireUnitOptions,
15
20
  values,
16
21
  setFieldValue
17
22
  } = useQuestionnaireForm();
@@ -34,6 +39,9 @@ const QuestionnaireContentSpecificItemComponent = /*#__PURE__*/React.memo(({
34
39
  item: item,
35
40
  value: value,
36
41
  onChange: onChange,
42
+ locale: locale,
43
+ renderItem: renderItem,
44
+ constraints: getQuestionnaireItemConstraints(item, values, resolveQuestionnaireConstraint, resolveQuestionnaireUnitOptions),
37
45
  testID: testID ? `${testID}-${itemId}` : `item-${itemId}`
38
46
  })
39
47
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","useQuestionnaireForm","QuestionnaireItemRenderer","jsx","_jsx","QuestionnaireContentSpecificItemComponent","memo","style","testID","item","props","values","setFieldValue","onChange","useCallback","val","linkId","itemId","value","children","QuestionnaireContentSpecificItem"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAmB,cAAc;AAE9C,SAASC,oBAAoB,QAAQ,uCAAoC;AAEzE,SAASC,yBAAyB,QAAQ,0CAAuC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElF,MAAMC,yCAAyC,gBAAGN,KAAK,CAACO,IAAI,CAC1D,CAAC;EACCC,KAAK;EACLC,MAAM;EACNC,IAAI;EACJ,GAAGC;AAC4C,CAAC,KAAK;EACrD,MAAM;IAAEC,MAAM;IAAEC;EAAc,CAAC,GAAGX,oBAAoB,CAAC,CAAC;EAExD,MAAMY,QAAQ,GAAGd,KAAK,CAACe,WAAW,CAC/BC,GAAqB,IAAK;IACzB,IAAI,CAACN,IAAI,EAAEO,MAAM,EAAE;MACjB;IACF;IAEAJ,aAAa,CAACH,IAAI,CAACO,MAAM,EAAED,GAAG,CAAC;EACjC,CAAC,EACD,CAACN,IAAI,EAAEO,MAAM,EAAEJ,aAAa,CAC9B,CAAC;EAED,IAAI,CAACH,IAAI,EAAE;IACT,OAAO,IAAI;EACb;EAEA,MAAMQ,MAAM,GAAGR,IAAI,CAACO,MAAM,IAAI,EAAE;EAChC,MAAME,KAAK,GAAGP,MAAM,CAACM,MAAM,CAAC;EAE5B,oBACEb,IAAA,CAACJ,IAAI;IAAA,GAAKU,KAAK;IAAEH,KAAK,EAAEA,KAAM;IAACC,MAAM,EAAEA,MAAO;IAAAW,QAAA,eAC5Cf,IAAA,CAACF,yBAAyB;MACxBO,IAAI,EAAEA,IAAK;MACXS,KAAK,EAAEA,KAAM;MACbL,QAAQ,EAAEA,QAAS;MACnBL,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,IAAIS,MAAM,EAAE,GAAG,QAAQA,MAAM;IAAG,CAC3D;EAAC,CACE,CAAC;AAEX,CACF,CAAC;AAED,OAAO,MAAMG,gCAAgC,GAC3Cf,yCAAyC","ignoreList":[]}
1
+ {"version":3,"names":["React","View","useQuestionnaireForm","getQuestionnaireItemConstraints","QuestionnaireItemRenderer","jsx","_jsx","QuestionnaireContentSpecificItemComponent","memo","style","testID","item","props","locale","renderItem","resolveQuestionnaireConstraint","resolveQuestionnaireUnitOptions","values","setFieldValue","onChange","useCallback","val","linkId","itemId","value","children","constraints","QuestionnaireContentSpecificItem"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-specific-item.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAmB,cAAc;AAE9C,SAASC,oBAAoB,QAAQ,uCAAoC;AAGzE,SAASC,+BAA+B,QAAQ,+CAA4C;AAC5F,SAASC,yBAAyB,QAAQ,0CAAuC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElF,MAAMC,yCAAyC,gBAAGP,KAAK,CAACQ,IAAI,CAC1D,CAAC;EACCC,KAAK;EACLC,MAAM;EACNC,IAAI;EACJ,GAAGC;AAC4C,CAAC,KAAK;EACrD,MAAM;IACJC,MAAM;IACNC,UAAU;IACVC,8BAA8B;IAC9BC,+BAA+B;IAC/BC,MAAM;IACNC;EACF,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAE1B,MAAMiB,QAAQ,GAAGnB,KAAK,CAACoB,WAAW,CAC/BC,GAA2B,IAAK;IAC/B,IAAI,CAACV,IAAI,EAAEW,MAAM,EAAE;MACjB;IACF;IAEAJ,aAAa,CAACP,IAAI,CAACW,MAAM,EAAED,GAAG,CAAC;EACjC,CAAC,EACD,CAACV,IAAI,EAAEW,MAAM,EAAEJ,aAAa,CAC9B,CAAC;EAED,IAAI,CAACP,IAAI,EAAE;IACT,OAAO,IAAI;EACb;EAEA,MAAMY,MAAM,GAAGZ,IAAI,CAACW,MAAM,IAAI,EAAE;EAChC,MAAME,KAAK,GAAGP,MAAM,CAACM,MAAM,CAAC;EAE5B,oBACEjB,IAAA,CAACL,IAAI;IAAA,GAAKW,KAAK;IAAEH,KAAK,EAAEA,KAAM;IAACC,MAAM,EAAEA,MAAO;IAAAe,QAAA,eAC5CnB,IAAA,CAACF,yBAAyB;MACxBO,IAAI,EAAEA,IAAK;MACXa,KAAK,EAAEA,KAAM;MACbL,QAAQ,EAAEA,QAAS;MACnBN,MAAM,EAAEA,MAAO;MACfC,UAAU,EAAEA,UAAW;MACvBY,WAAW,EAAEvB,+BAA+B,CAC1CQ,IAAI,EACJM,MAAM,EACNF,8BAA8B,EAC9BC,+BACF,CAAE;MACFN,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,IAAIa,MAAM,EAAE,GAAG,QAAQA,MAAM;IAAG,CAC3D;EAAC,CACE,CAAC;AAEX,CACF,CAAC;AAED,OAAO,MAAMI,gCAAgC,GAC3CpB,yCAAyC","ignoreList":[]}
@@ -5,6 +5,7 @@ import { StyleSheet, View } from "react-native";
5
5
  import { Text } from "react-native-paper";
6
6
  import { useAppTheme } from "../../../../theme/index.js";
7
7
  import { useQuestionnaireForm } from "../../../hooks/index.js";
8
+ import { translateFhirText } from "../../../utils/translate-fhir-text.js";
8
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
10
  export const QuestionnaireFieldWrapper = /*#__PURE__*/React.memo(({
10
11
  item,
@@ -14,8 +15,12 @@ export const QuestionnaireFieldWrapper = /*#__PURE__*/React.memo(({
14
15
  }) => {
15
16
  const theme = useAppTheme();
16
17
  const {
18
+ locale,
17
19
  paged
18
20
  } = useQuestionnaireForm();
21
+ const prefix = translateFhirText(item.prefix, item._prefix, locale);
22
+ const questionText = translateFhirText(item.text, item._text, locale);
23
+ const helperText = translateFhirText(item.helperText, item._helperText, locale);
19
24
  return /*#__PURE__*/_jsxs(View, {
20
25
  testID: testID,
21
26
  style: [styles.container, {
@@ -26,18 +31,18 @@ export const QuestionnaireFieldWrapper = /*#__PURE__*/React.memo(({
26
31
  style: [styles.title, {
27
32
  color: theme.colors.onSurface
28
33
  }],
29
- children: [item.text, item.required && /*#__PURE__*/_jsx(Text, {
34
+ children: [prefix ? `${prefix} ` : "", questionText, item.required && /*#__PURE__*/_jsx(Text, {
30
35
  style: {
31
36
  color: theme.colors.error
32
37
  },
33
38
  children: " *"
34
39
  })]
35
- }), children, item.helperText && /*#__PURE__*/_jsx(Text, {
40
+ }), children, helperText && /*#__PURE__*/_jsx(Text, {
36
41
  variant: "bodySmall",
37
42
  style: [{
38
43
  color: theme.colors.onSurfaceVariant
39
44
  }],
40
- children: item.helperText
45
+ children: helperText
41
46
  })]
42
47
  });
43
48
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","Text","useAppTheme","useQuestionnaireForm","jsx","_jsx","jsxs","_jsxs","QuestionnaireFieldWrapper","memo","item","children","testID","style","theme","paged","styles","container","gap","spacing","variant","title","color","colors","onSurface","text","required","error","helperText","onSurfaceVariant","create","width","fontWeight"],"sourceRoot":"../../../../../../../src","sources":["modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,IAAI,QAAmB,cAAc;AAC1D,SAASC,IAAI,QAAQ,oBAAoB;AAEzC,SAASC,WAAW,QAAQ,4BAAmB;AAC/C,SAASC,oBAAoB,QAAQ,yBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAUtD,OAAO,MAAMC,yBAAyB,gBAAGV,KAAK,CAACW,IAAI,CACjD,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,MAAM;EAAEC;AAAsC,CAAC,KAAK;EACrE,MAAMC,KAAK,GAAGZ,WAAW,CAAC,CAAC;EAC3B,MAAM;IAAEa;EAAM,CAAC,GAAGZ,oBAAoB,CAAC,CAAC;EAExC,oBACEI,KAAA,CAACP,IAAI;IACHY,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAE,CACLG,MAAM,CAACC,SAAS,EAChB;MAAEC,GAAG,EAAEH,KAAK,GAAGD,KAAK,CAACK,OAAO,CAAC,CAAC,CAAC,GAAGL,KAAK,CAACK,OAAO,CAAC,CAAC;IAAE,CAAC,EACpDN,KAAK,CACL;IAAAF,QAAA,gBAEFJ,KAAA,CAACN,IAAI;MACHmB,OAAO,EAAEL,KAAK,GAAG,YAAY,GAAG,aAAc;MAC9CF,KAAK,EAAE,CAACG,MAAM,CAACK,KAAK,EAAE;QAAEC,KAAK,EAAER,KAAK,CAACS,MAAM,CAACC;MAAU,CAAC,CAAE;MAAAb,QAAA,GAExDD,IAAI,CAACe,IAAI,EACTf,IAAI,CAACgB,QAAQ,iBACZrB,IAAA,CAACJ,IAAI;QAACY,KAAK,EAAE;UAAES,KAAK,EAAER,KAAK,CAACS,MAAM,CAACI;QAAM,CAAE;QAAAhB,QAAA,EAAC;MAAE,CAAM,CACrD;IAAA,CACG,CAAC,EAENA,QAAQ,EAERD,IAAI,CAACkB,UAAU,iBACdvB,IAAA,CAACJ,IAAI;MACHmB,OAAO,EAAC,WAAW;MACnBP,KAAK,EAAE,CAAC;QAAES,KAAK,EAAER,KAAK,CAACS,MAAM,CAACM;MAAiB,CAAC,CAAE;MAAAlB,QAAA,EAEjDD,IAAI,CAACkB;IAAU,CACZ,CACP;EAAA,CACG,CAAC;AAEX,CACF,CAAC;AAED,MAAMZ,MAAM,GAAGjB,UAAU,CAAC+B,MAAM,CAAC;EAC/Bb,SAAS,EAAE;IACTc,KAAK,EAAE;EACT,CAAC;EACDV,KAAK,EAAE;IACLW,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","Text","useAppTheme","useQuestionnaireForm","translateFhirText","jsx","_jsx","jsxs","_jsxs","QuestionnaireFieldWrapper","memo","item","children","testID","style","theme","locale","paged","prefix","_prefix","questionText","text","_text","helperText","_helperText","styles","container","gap","spacing","variant","title","color","colors","onSurface","required","error","onSurfaceVariant","create","width","fontWeight"],"sourceRoot":"../../../../../../../src","sources":["modules/questionnaire-response-form/components/fields/common/questionnaire-field-wrapper.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,IAAI,QAAmB,cAAc;AAC1D,SAASC,IAAI,QAAQ,oBAAoB;AAEzC,SAASC,WAAW,QAAQ,4BAAmB;AAC/C,SAASC,oBAAoB,QAAQ,yBAAgB;AAErD,SAASC,iBAAiB,QAAQ,uCAAoC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AASvE,OAAO,MAAMC,yBAAyB,gBAAGX,KAAK,CAACY,IAAI,CACjD,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,MAAM;EAAEC;AAAsC,CAAC,KAAK;EACrE,MAAMC,KAAK,GAAGb,WAAW,CAAC,CAAC;EAC3B,MAAM;IAAEc,MAAM;IAAEC;EAAM,CAAC,GAAGd,oBAAoB,CAAC,CAAC;EAChD,MAAMe,MAAM,GAAGd,iBAAiB,CAACO,IAAI,CAACO,MAAM,EAAEP,IAAI,CAACQ,OAAO,EAAEH,MAAM,CAAC;EACnE,MAAMI,YAAY,GAAGhB,iBAAiB,CAACO,IAAI,CAACU,IAAI,EAAEV,IAAI,CAACW,KAAK,EAAEN,MAAM,CAAC;EAErE,MAAMO,UAAU,GAAGnB,iBAAiB,CAClCO,IAAI,CAACY,UAAU,EACfZ,IAAI,CAACa,WAAW,EAChBR,MACF,CAAC;EAED,oBACER,KAAA,CAACR,IAAI;IACHa,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAE,CACLW,MAAM,CAACC,SAAS,EAChB;MAAEC,GAAG,EAAEV,KAAK,GAAGF,KAAK,CAACa,OAAO,CAAC,CAAC,CAAC,GAAGb,KAAK,CAACa,OAAO,CAAC,CAAC;IAAE,CAAC,EACpDd,KAAK,CACL;IAAAF,QAAA,gBAEFJ,KAAA,CAACP,IAAI;MACH4B,OAAO,EAAEZ,KAAK,GAAG,YAAY,GAAG,aAAc;MAC9CH,KAAK,EAAE,CAACW,MAAM,CAACK,KAAK,EAAE;QAAEC,KAAK,EAAEhB,KAAK,CAACiB,MAAM,CAACC;MAAU,CAAC,CAAE;MAAArB,QAAA,GAExDM,MAAM,GAAG,GAAGA,MAAM,GAAG,GAAG,EAAE,EAC1BE,YAAY,EACZT,IAAI,CAACuB,QAAQ,iBACZ5B,IAAA,CAACL,IAAI;QAACa,KAAK,EAAE;UAAEiB,KAAK,EAAEhB,KAAK,CAACiB,MAAM,CAACG;QAAM,CAAE;QAAAvB,QAAA,EAAC;MAAE,CAAM,CACrD;IAAA,CACG,CAAC,EAENA,QAAQ,EAERW,UAAU,iBACTjB,IAAA,CAACL,IAAI;MACH4B,OAAO,EAAC,WAAW;MACnBf,KAAK,EAAE,CAAC;QAAEiB,KAAK,EAAEhB,KAAK,CAACiB,MAAM,CAACI;MAAiB,CAAC,CAAE;MAAAxB,QAAA,EAEnDW;IAAU,CACL,CACP;EAAA,CACG,CAAC;AAEX,CACF,CAAC;AAED,MAAME,MAAM,GAAG1B,UAAU,CAACsC,MAAM,CAAC;EAC/BX,SAAS,EAAE;IACTY,KAAK,EAAE;EACT,CAAC;EACDR,KAAK,EAAE;IACLS,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}