@ovok/native 1.5.6 → 1.6.1

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 (722) hide show
  1. package/README.md +35 -19
  2. package/android/src/main/AndroidManifest.xml +1 -20
  3. package/app.plugin.js +181 -0
  4. package/lib/commonjs/index.js +5 -104
  5. package/lib/commonjs/index.js.map +1 -1
  6. package/lib/commonjs/modules/auth/delete-account-button/components/delete-account-button.js +2 -0
  7. package/lib/commonjs/modules/auth/delete-account-button/components/delete-account-button.js.map +1 -1
  8. package/lib/commonjs/modules/auth/hooks/use-rate-limit-cooldown.js +23 -0
  9. package/lib/commonjs/modules/auth/hooks/use-rate-limit-cooldown.js.map +1 -0
  10. package/lib/commonjs/modules/auth/hooks/use-session.js +105 -0
  11. package/lib/commonjs/modules/auth/hooks/use-session.js.map +1 -0
  12. package/lib/commonjs/modules/auth/index.js +44 -0
  13. package/lib/commonjs/modules/auth/index.js.map +1 -1
  14. package/lib/commonjs/modules/auth/logout-button/components/logout-button.js +5 -2
  15. package/lib/commonjs/modules/auth/logout-button/components/logout-button.js.map +1 -1
  16. package/lib/commonjs/modules/auth/register/components/form/inputs.js +50 -1
  17. package/lib/commonjs/modules/auth/register/components/form/inputs.js.map +1 -1
  18. package/lib/commonjs/modules/auth/register/components/form/register-button.js +4 -0
  19. package/lib/commonjs/modules/auth/register/components/form/register-button.js.map +1 -1
  20. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +6 -0
  21. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  22. package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js +12 -0
  23. package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js.map +1 -1
  24. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-button.js +4 -0
  25. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-button.js.map +1 -1
  26. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js +7 -1
  27. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  28. package/lib/commonjs/modules/auth/session/components/session-list.js +82 -0
  29. package/lib/commonjs/modules/auth/session/components/session-list.js.map +1 -0
  30. package/lib/commonjs/modules/auth/session/events.js +19 -0
  31. package/lib/commonjs/modules/auth/session/events.js.map +1 -0
  32. package/lib/commonjs/modules/auth/session/index.js +13 -0
  33. package/lib/commonjs/modules/auth/session/index.js.map +1 -0
  34. package/lib/commonjs/modules/auth/session/types/session-list-props.js +6 -0
  35. package/lib/commonjs/modules/auth/session/types/session-list-props.js.map +1 -0
  36. package/lib/commonjs/modules/auth/sign-in/components/form/inputs.js +26 -0
  37. package/lib/commonjs/modules/auth/sign-in/components/form/inputs.js.map +1 -1
  38. package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js +48 -1
  39. package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
  40. package/lib/commonjs/modules/auth/sign-in/components/form/mfa-code-input.js +58 -0
  41. package/lib/commonjs/modules/auth/sign-in/components/form/mfa-code-input.js.map +1 -0
  42. package/lib/commonjs/modules/auth/sign-in/components/form/sign-in-with-email.js +2 -0
  43. package/lib/commonjs/modules/auth/sign-in/components/form/sign-in-with-email.js.map +1 -1
  44. package/lib/commonjs/modules/auth/sign-in/components/form/signin-button.js +13 -5
  45. package/lib/commonjs/modules/auth/sign-in/components/form/signin-button.js.map +1 -1
  46. package/lib/commonjs/modules/auth/types/session.js +2 -0
  47. package/lib/commonjs/modules/auth/types/session.js.map +1 -0
  48. package/lib/commonjs/modules/auth/utils/rate-limit.js +37 -0
  49. package/lib/commonjs/modules/auth/utils/rate-limit.js.map +1 -0
  50. package/lib/commonjs/modules/background-sync/android-bluetooth-foreground-service.js +3 -2
  51. package/lib/commonjs/modules/background-sync/android-bluetooth-foreground-service.js.map +1 -1
  52. package/lib/commonjs/modules/background-sync/background-safe-storage.js +76 -0
  53. package/lib/commonjs/modules/background-sync/background-safe-storage.js.map +1 -0
  54. package/lib/commonjs/modules/background-sync/index.js +11 -0
  55. package/lib/commonjs/modules/background-sync/index.js.map +1 -1
  56. package/lib/commonjs/modules/bt-device/index.js +0 -22
  57. package/lib/commonjs/modules/bt-device/index.js.map +1 -1
  58. package/lib/commonjs/modules/bt-device-instructions/index.js +39 -0
  59. package/lib/commonjs/modules/bt-device-instructions/index.js.map +1 -0
  60. package/lib/commonjs/modules/bt-management/components/android-bluetooth-foreground-service.js +64 -0
  61. package/lib/commonjs/modules/bt-management/components/android-bluetooth-foreground-service.js.map +1 -0
  62. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +94 -26
  63. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  64. package/lib/commonjs/modules/bt-management/constants/measurement-field-catalog.js +1 -0
  65. package/lib/commonjs/modules/bt-management/constants/measurement-field-catalog.js.map +1 -1
  66. package/lib/commonjs/modules/bt-management/hooks/runtime-context.js +95 -0
  67. package/lib/commonjs/modules/bt-management/hooks/runtime-context.js.map +1 -0
  68. package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js +51 -0
  69. package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js.map +1 -0
  70. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js +51 -0
  71. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -0
  72. package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js +40 -0
  73. package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js.map +1 -0
  74. package/lib/commonjs/modules/bt-management/hooks/use-health-import.js +82 -0
  75. package/lib/commonjs/modules/bt-management/hooks/use-health-import.js.map +1 -0
  76. package/lib/commonjs/modules/bt-management/hooks/use-measurements.js +79 -0
  77. package/lib/commonjs/modules/bt-management/hooks/use-measurements.js.map +1 -0
  78. package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js +33 -0
  79. package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js.map +1 -0
  80. package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js +58 -0
  81. package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js.map +1 -0
  82. package/lib/commonjs/modules/bt-management/hooks/use-scan-control.js +21 -0
  83. package/lib/commonjs/modules/bt-management/hooks/use-scan-control.js.map +1 -0
  84. package/lib/commonjs/modules/bt-management/index.js +154 -0
  85. package/lib/commonjs/modules/bt-management/index.js.map +1 -1
  86. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js +41 -5
  87. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  88. package/lib/commonjs/modules/bt-management/services/bt-manager.js +91 -22
  89. package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
  90. package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js +59 -0
  91. package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
  92. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +107 -4
  93. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  94. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +9 -1
  95. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  96. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +1 -0
  97. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
  98. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js +5 -3
  99. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  100. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js +12 -0
  101. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
  102. package/lib/commonjs/modules/bt-management/services/push-notification.js +39 -0
  103. package/lib/commonjs/modules/bt-management/services/push-notification.js.map +1 -0
  104. package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js +132 -0
  105. package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js.map +1 -0
  106. package/lib/commonjs/modules/bt-management/testing/index.js +28 -0
  107. package/lib/commonjs/modules/bt-management/testing/index.js.map +1 -0
  108. package/lib/commonjs/modules/bt-management/testing/recorded-frames.js +23 -0
  109. package/lib/commonjs/modules/bt-management/testing/recorded-frames.js.map +1 -0
  110. package/lib/commonjs/modules/bt-management/types/bluetooth-error.js +82 -0
  111. package/lib/commonjs/modules/bt-management/types/bluetooth-error.js.map +1 -0
  112. package/lib/commonjs/modules/bt-management/types/device-connection-event.js +6 -0
  113. package/lib/commonjs/modules/bt-management/types/device-connection-event.js.map +1 -0
  114. package/lib/commonjs/modules/bt-management/types/result-policy.js +6 -0
  115. package/lib/commonjs/modules/bt-management/types/result-policy.js.map +1 -0
  116. package/lib/commonjs/modules/bt-management/utils/result-identity.js +63 -0
  117. package/lib/commonjs/modules/bt-management/utils/result-identity.js.map +1 -0
  118. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js +20 -5
  119. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  120. package/lib/commonjs/modules/data-sync/services/base-health-sync-service.js +29 -4
  121. package/lib/commonjs/modules/data-sync/services/base-health-sync-service.js.map +1 -1
  122. package/lib/commonjs/modules/data-sync/services/managers/data-processor.js +2 -2
  123. package/lib/commonjs/modules/data-sync/services/managers/data-processor.js.map +1 -1
  124. package/lib/commonjs/modules/data-sync/services/managers/sync-progress-manager.js +1 -1
  125. package/lib/commonjs/modules/data-sync/services/managers/sync-progress-manager.js.map +1 -1
  126. package/lib/commonjs/modules/data-sync/utils/generate-observation-entry.js +29 -21
  127. package/lib/commonjs/modules/data-sync/utils/generate-observation-entry.js.map +1 -1
  128. package/lib/commonjs/modules/data-sync/utils/retry-save.js +99 -0
  129. package/lib/commonjs/modules/data-sync/utils/retry-save.js.map +1 -0
  130. package/lib/commonjs/modules/helpers/form-items/form-field.js +2 -0
  131. package/lib/commonjs/modules/helpers/form-items/form-field.js.map +1 -1
  132. package/lib/commonjs/modules/helpers/index.js +23 -4
  133. package/lib/commonjs/modules/helpers/index.js.map +1 -1
  134. package/lib/commonjs/modules/helpers/utils/s-log.js +4 -13
  135. package/lib/commonjs/modules/helpers/utils/s-log.js.map +1 -1
  136. package/lib/commonjs/modules/helpers/utils/sentry-logger.js +27 -17
  137. package/lib/commonjs/modules/helpers/utils/sentry-logger.js.map +1 -1
  138. package/lib/commonjs/modules/helpers/utils/telemetry.js +230 -0
  139. package/lib/commonjs/modules/helpers/utils/telemetry.js.map +1 -0
  140. package/lib/commonjs/modules/image/components/optimized-image.js +31 -6
  141. package/lib/commonjs/modules/image/components/optimized-image.js.map +1 -1
  142. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-error.js +18 -9
  143. package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-error.js.map +1 -1
  144. package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js +3 -2
  145. package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js.map +1 -1
  146. package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js +4 -2
  147. package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js.map +1 -1
  148. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js +44 -17
  149. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  150. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +2 -1
  151. package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  152. package/lib/commonjs/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.js.map +1 -1
  153. package/lib/commonjs/modules/tile/components/task-icon.js +2 -1
  154. package/lib/commonjs/modules/tile/components/task-icon.js.map +1 -1
  155. package/lib/commonjs/modules/tile/constants/measurement-icon-svg.js +4 -1
  156. package/lib/commonjs/modules/tile/constants/measurement-icon-svg.js.map +1 -1
  157. package/lib/commonjs/modules/ui/components/background-sync-setting.js +123 -0
  158. package/lib/commonjs/modules/ui/components/background-sync-setting.js.map +1 -0
  159. package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js +119 -0
  160. package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js.map +1 -0
  161. package/lib/commonjs/modules/ui/components/ecg-strip-viewer.js +175 -0
  162. package/lib/commonjs/modules/ui/components/ecg-strip-viewer.js.map +1 -0
  163. package/lib/commonjs/modules/ui/components/health-import-card.js +141 -0
  164. package/lib/commonjs/modules/ui/components/health-import-card.js.map +1 -0
  165. package/lib/commonjs/modules/ui/components/manual-entry-form.js +136 -0
  166. package/lib/commonjs/modules/ui/components/manual-entry-form.js.map +1 -0
  167. package/lib/commonjs/modules/ui/components/pairing-flow.js +247 -0
  168. package/lib/commonjs/modules/ui/components/pairing-flow.js.map +1 -0
  169. package/lib/commonjs/modules/ui/components/supported-devices-catalog-list.js +107 -0
  170. package/lib/commonjs/modules/ui/components/supported-devices-catalog-list.js.map +1 -0
  171. package/lib/commonjs/modules/ui/components/urine-test-result.js +99 -0
  172. package/lib/commonjs/modules/ui/components/urine-test-result.js.map +1 -0
  173. package/lib/commonjs/modules/ui/index.js +116 -0
  174. package/lib/commonjs/modules/ui/index.js.map +1 -0
  175. package/lib/commonjs/modules/ui/types.js +6 -0
  176. package/lib/commonjs/modules/ui/types.js.map +1 -0
  177. package/lib/commonjs/modules/ui/use-ovok-ui.js +51 -0
  178. package/lib/commonjs/modules/ui/use-ovok-ui.js.map +1 -0
  179. package/lib/module/index.js +3 -9
  180. package/lib/module/index.js.map +1 -1
  181. package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js +2 -0
  182. package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js.map +1 -1
  183. package/lib/module/modules/auth/hooks/use-rate-limit-cooldown.js +17 -0
  184. package/lib/module/modules/auth/hooks/use-rate-limit-cooldown.js.map +1 -0
  185. package/lib/module/modules/auth/hooks/use-session.js +99 -0
  186. package/lib/module/modules/auth/hooks/use-session.js.map +1 -0
  187. package/lib/module/modules/auth/index.js +4 -0
  188. package/lib/module/modules/auth/index.js.map +1 -1
  189. package/lib/module/modules/auth/logout-button/components/logout-button.js +5 -2
  190. package/lib/module/modules/auth/logout-button/components/logout-button.js.map +1 -1
  191. package/lib/module/modules/auth/register/components/form/inputs.js +50 -1
  192. package/lib/module/modules/auth/register/components/form/inputs.js.map +1 -1
  193. package/lib/module/modules/auth/register/components/form/register-button.js +4 -0
  194. package/lib/module/modules/auth/register/components/form/register-button.js.map +1 -1
  195. package/lib/module/modules/auth/register/components/form/register-form-provider.js +6 -0
  196. package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  197. package/lib/module/modules/auth/reset-password/components/form/inputs.js +12 -0
  198. package/lib/module/modules/auth/reset-password/components/form/inputs.js.map +1 -1
  199. package/lib/module/modules/auth/reset-password/components/form/reset-password-button.js +4 -0
  200. package/lib/module/modules/auth/reset-password/components/form/reset-password-button.js.map +1 -1
  201. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js +7 -1
  202. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  203. package/lib/module/modules/auth/session/components/session-list.js +76 -0
  204. package/lib/module/modules/auth/session/components/session-list.js.map +1 -0
  205. package/lib/module/modules/auth/session/events.js +13 -0
  206. package/lib/module/modules/auth/session/events.js.map +1 -0
  207. package/lib/module/modules/auth/session/index.js +4 -0
  208. package/lib/module/modules/auth/session/index.js.map +1 -0
  209. package/lib/module/modules/auth/session/types/session-list-props.js +4 -0
  210. package/lib/module/modules/auth/session/types/session-list-props.js.map +1 -0
  211. package/lib/module/modules/auth/sign-in/components/form/inputs.js +26 -0
  212. package/lib/module/modules/auth/sign-in/components/form/inputs.js.map +1 -1
  213. package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js +48 -1
  214. package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
  215. package/lib/module/modules/auth/sign-in/components/form/mfa-code-input.js +52 -0
  216. package/lib/module/modules/auth/sign-in/components/form/mfa-code-input.js.map +1 -0
  217. package/lib/module/modules/auth/sign-in/components/form/sign-in-with-email.js +2 -0
  218. package/lib/module/modules/auth/sign-in/components/form/sign-in-with-email.js.map +1 -1
  219. package/lib/module/modules/auth/sign-in/components/form/signin-button.js +13 -5
  220. package/lib/module/modules/auth/sign-in/components/form/signin-button.js.map +1 -1
  221. package/lib/module/modules/auth/types/session.js +2 -0
  222. package/lib/module/modules/auth/types/session.js.map +1 -0
  223. package/lib/module/modules/auth/utils/rate-limit.js +31 -0
  224. package/lib/module/modules/auth/utils/rate-limit.js.map +1 -0
  225. package/lib/module/modules/background-sync/android-bluetooth-foreground-service.js +3 -2
  226. package/lib/module/modules/background-sync/android-bluetooth-foreground-service.js.map +1 -1
  227. package/lib/module/modules/background-sync/background-safe-storage.js +71 -0
  228. package/lib/module/modules/background-sync/background-safe-storage.js.map +1 -0
  229. package/lib/module/modules/background-sync/index.js +1 -0
  230. package/lib/module/modules/background-sync/index.js.map +1 -1
  231. package/lib/module/modules/bt-device/index.js +0 -2
  232. package/lib/module/modules/bt-device/index.js.map +1 -1
  233. package/lib/module/modules/bt-device-instructions/index.js +6 -0
  234. package/lib/module/modules/bt-device-instructions/index.js.map +1 -0
  235. package/lib/module/modules/bt-management/components/android-bluetooth-foreground-service.js +58 -0
  236. package/lib/module/modules/bt-management/components/android-bluetooth-foreground-service.js.map +1 -0
  237. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +94 -26
  238. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  239. package/lib/module/modules/bt-management/constants/measurement-field-catalog.js +1 -0
  240. package/lib/module/modules/bt-management/constants/measurement-field-catalog.js.map +1 -1
  241. package/lib/module/modules/bt-management/hooks/runtime-context.js +86 -0
  242. package/lib/module/modules/bt-management/hooks/runtime-context.js.map +1 -0
  243. package/lib/module/modules/bt-management/hooks/use-background-sync.js +45 -0
  244. package/lib/module/modules/bt-management/hooks/use-background-sync.js.map +1 -0
  245. package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js +45 -0
  246. package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -0
  247. package/lib/module/modules/bt-management/hooks/use-device-connection.js +34 -0
  248. package/lib/module/modules/bt-management/hooks/use-device-connection.js.map +1 -0
  249. package/lib/module/modules/bt-management/hooks/use-health-import.js +76 -0
  250. package/lib/module/modules/bt-management/hooks/use-health-import.js.map +1 -0
  251. package/lib/module/modules/bt-management/hooks/use-measurements.js +73 -0
  252. package/lib/module/modules/bt-management/hooks/use-measurements.js.map +1 -0
  253. package/lib/module/modules/bt-management/hooks/use-nearby-devices.js +27 -0
  254. package/lib/module/modules/bt-management/hooks/use-nearby-devices.js.map +1 -0
  255. package/lib/module/modules/bt-management/hooks/use-paired-devices.js +52 -0
  256. package/lib/module/modules/bt-management/hooks/use-paired-devices.js.map +1 -0
  257. package/lib/module/modules/bt-management/hooks/use-scan-control.js +16 -0
  258. package/lib/module/modules/bt-management/hooks/use-scan-control.js.map +1 -0
  259. package/lib/module/modules/bt-management/index.js +14 -0
  260. package/lib/module/modules/bt-management/index.js.map +1 -1
  261. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js +41 -5
  262. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  263. package/lib/module/modules/bt-management/services/bt-manager.js +91 -22
  264. package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
  265. package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js +59 -0
  266. package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
  267. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +107 -4
  268. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  269. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +9 -1
  270. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  271. package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +1 -0
  272. package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
  273. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js +5 -3
  274. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  275. package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js +12 -0
  276. package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
  277. package/lib/module/modules/bt-management/services/push-notification.js +34 -0
  278. package/lib/module/modules/bt-management/services/push-notification.js.map +1 -0
  279. package/lib/module/modules/bt-management/testing/fake-ble-manager.js +127 -0
  280. package/lib/module/modules/bt-management/testing/fake-ble-manager.js.map +1 -0
  281. package/lib/module/modules/bt-management/testing/index.js +5 -0
  282. package/lib/module/modules/bt-management/testing/index.js.map +1 -0
  283. package/lib/module/modules/bt-management/testing/recorded-frames.js +17 -0
  284. package/lib/module/modules/bt-management/testing/recorded-frames.js.map +1 -0
  285. package/lib/module/modules/bt-management/types/bluetooth-error.js +76 -0
  286. package/lib/module/modules/bt-management/types/bluetooth-error.js.map +1 -0
  287. package/lib/module/modules/bt-management/types/device-connection-event.js +4 -0
  288. package/lib/module/modules/bt-management/types/device-connection-event.js.map +1 -0
  289. package/lib/module/modules/bt-management/types/result-policy.js +4 -0
  290. package/lib/module/modules/bt-management/types/result-policy.js.map +1 -0
  291. package/lib/module/modules/bt-management/utils/result-identity.js +57 -0
  292. package/lib/module/modules/bt-management/utils/result-identity.js.map +1 -0
  293. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js +20 -5
  294. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  295. package/lib/module/modules/data-sync/services/base-health-sync-service.js +29 -4
  296. package/lib/module/modules/data-sync/services/base-health-sync-service.js.map +1 -1
  297. package/lib/module/modules/data-sync/services/managers/data-processor.js +2 -2
  298. package/lib/module/modules/data-sync/services/managers/data-processor.js.map +1 -1
  299. package/lib/module/modules/data-sync/services/managers/sync-progress-manager.js +1 -1
  300. package/lib/module/modules/data-sync/services/managers/sync-progress-manager.js.map +1 -1
  301. package/lib/module/modules/data-sync/utils/generate-observation-entry.js +29 -21
  302. package/lib/module/modules/data-sync/utils/generate-observation-entry.js.map +1 -1
  303. package/lib/module/modules/data-sync/utils/retry-save.js +92 -0
  304. package/lib/module/modules/data-sync/utils/retry-save.js.map +1 -0
  305. package/lib/module/modules/helpers/form-items/form-field.js +2 -0
  306. package/lib/module/modules/helpers/form-items/form-field.js.map +1 -1
  307. package/lib/module/modules/helpers/index.js +2 -1
  308. package/lib/module/modules/helpers/index.js.map +1 -1
  309. package/lib/module/modules/helpers/utils/s-log.js +4 -12
  310. package/lib/module/modules/helpers/utils/s-log.js.map +1 -1
  311. package/lib/module/modules/helpers/utils/sentry-logger.js +25 -14
  312. package/lib/module/modules/helpers/utils/sentry-logger.js.map +1 -1
  313. package/lib/module/modules/helpers/utils/telemetry.js +218 -0
  314. package/lib/module/modules/helpers/utils/telemetry.js.map +1 -0
  315. package/lib/module/modules/image/components/optimized-image.js +32 -7
  316. package/lib/module/modules/image/components/optimized-image.js.map +1 -1
  317. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-error.js +20 -11
  318. package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-error.js.map +1 -1
  319. package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js +3 -2
  320. package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js.map +1 -1
  321. package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js +4 -2
  322. package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js.map +1 -1
  323. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js +44 -17
  324. package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
  325. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +2 -1
  326. package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
  327. package/lib/module/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.js.map +1 -1
  328. package/lib/module/modules/tile/components/task-icon.js +2 -1
  329. package/lib/module/modules/tile/components/task-icon.js.map +1 -1
  330. package/lib/module/modules/tile/constants/measurement-icon-svg.js +4 -1
  331. package/lib/module/modules/tile/constants/measurement-icon-svg.js.map +1 -1
  332. package/lib/module/modules/ui/components/background-sync-setting.js +117 -0
  333. package/lib/module/modules/ui/components/background-sync-setting.js.map +1 -0
  334. package/lib/module/modules/ui/components/bluetooth-state-notice.js +113 -0
  335. package/lib/module/modules/ui/components/bluetooth-state-notice.js.map +1 -0
  336. package/lib/module/modules/ui/components/ecg-strip-viewer.js +169 -0
  337. package/lib/module/modules/ui/components/ecg-strip-viewer.js.map +1 -0
  338. package/lib/module/modules/ui/components/health-import-card.js +135 -0
  339. package/lib/module/modules/ui/components/health-import-card.js.map +1 -0
  340. package/lib/module/modules/ui/components/manual-entry-form.js +130 -0
  341. package/lib/module/modules/ui/components/manual-entry-form.js.map +1 -0
  342. package/lib/module/modules/ui/components/pairing-flow.js +241 -0
  343. package/lib/module/modules/ui/components/pairing-flow.js.map +1 -0
  344. package/lib/module/modules/ui/components/supported-devices-catalog-list.js +101 -0
  345. package/lib/module/modules/ui/components/supported-devices-catalog-list.js.map +1 -0
  346. package/lib/module/modules/ui/components/urine-test-result.js +94 -0
  347. package/lib/module/modules/ui/components/urine-test-result.js.map +1 -0
  348. package/lib/module/modules/ui/index.js +13 -0
  349. package/lib/module/modules/ui/index.js.map +1 -0
  350. package/lib/module/modules/ui/types.js +4 -0
  351. package/lib/module/modules/ui/types.js.map +1 -0
  352. package/lib/module/modules/ui/use-ovok-ui.js +45 -0
  353. package/lib/module/modules/ui/use-ovok-ui.js.map +1 -0
  354. package/lib/typescript/commonjs/src/index.d.ts +0 -9
  355. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  356. package/lib/typescript/commonjs/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
  357. package/lib/typescript/commonjs/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts +2 -0
  358. package/lib/typescript/commonjs/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts.map +1 -0
  359. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts +16 -0
  360. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts.map +1 -0
  361. package/lib/typescript/commonjs/src/modules/auth/index.d.ts +4 -0
  362. package/lib/typescript/commonjs/src/modules/auth/index.d.ts.map +1 -1
  363. package/lib/typescript/commonjs/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
  364. package/lib/typescript/commonjs/src/modules/auth/register/components/form/inputs.d.ts.map +1 -1
  365. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-button.d.ts.map +1 -1
  366. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  367. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
  368. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-button.d.ts.map +1 -1
  369. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  370. package/lib/typescript/commonjs/src/modules/auth/session/components/session-list.d.ts +4 -0
  371. package/lib/typescript/commonjs/src/modules/auth/session/components/session-list.d.ts.map +1 -0
  372. package/lib/typescript/commonjs/src/modules/auth/session/events.d.ts +5 -0
  373. package/lib/typescript/commonjs/src/modules/auth/session/events.d.ts.map +1 -0
  374. package/lib/typescript/commonjs/src/modules/auth/session/index.d.ts +3 -0
  375. package/lib/typescript/commonjs/src/modules/auth/session/index.d.ts.map +1 -0
  376. package/lib/typescript/commonjs/src/modules/auth/session/types/session-list-props.d.ts +5 -0
  377. package/lib/typescript/commonjs/src/modules/auth/session/types/session-list-props.d.ts.map +1 -0
  378. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/inputs.d.ts.map +1 -1
  379. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
  380. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts +9 -0
  381. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts.map +1 -0
  382. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts +4 -0
  383. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts.map +1 -1
  384. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/signin-button.d.ts.map +1 -1
  385. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/sign-in.d.ts +4 -0
  386. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/sign-in.d.ts.map +1 -1
  387. package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts +2 -46
  388. package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
  389. package/lib/typescript/commonjs/src/modules/auth/sign-in/hooks/use-login-form.d.ts +1 -47
  390. package/lib/typescript/commonjs/src/modules/auth/sign-in/hooks/use-login-form.d.ts.map +1 -1
  391. package/lib/typescript/commonjs/src/modules/auth/sign-in/types/login-form-context-type.d.ts +11 -1
  392. package/lib/typescript/commonjs/src/modules/auth/sign-in/types/login-form-context-type.d.ts.map +1 -1
  393. package/lib/typescript/commonjs/src/modules/auth/types/session.d.ts +10 -0
  394. package/lib/typescript/commonjs/src/modules/auth/types/session.d.ts.map +1 -0
  395. package/lib/typescript/commonjs/src/modules/auth/utils/rate-limit.d.ts +11 -0
  396. package/lib/typescript/commonjs/src/modules/auth/utils/rate-limit.d.ts.map +1 -0
  397. package/lib/typescript/commonjs/src/modules/background-sync/android-bluetooth-foreground-service.d.ts.map +1 -1
  398. package/lib/typescript/commonjs/src/modules/background-sync/background-safe-storage.d.ts +31 -0
  399. package/lib/typescript/commonjs/src/modules/background-sync/background-safe-storage.d.ts.map +1 -0
  400. package/lib/typescript/commonjs/src/modules/background-sync/index.d.ts +1 -0
  401. package/lib/typescript/commonjs/src/modules/background-sync/index.d.ts.map +1 -1
  402. package/lib/typescript/commonjs/src/modules/bt-device/index.d.ts +0 -2
  403. package/lib/typescript/commonjs/src/modules/bt-device/index.d.ts.map +1 -1
  404. package/lib/typescript/commonjs/src/modules/bt-device-instructions/index.d.ts +4 -0
  405. package/lib/typescript/commonjs/src/modules/bt-device-instructions/index.d.ts.map +1 -0
  406. package/lib/typescript/commonjs/src/modules/bt-management/components/android-bluetooth-foreground-service.d.ts +14 -0
  407. package/lib/typescript/commonjs/src/modules/bt-management/components/android-bluetooth-foreground-service.d.ts.map +1 -0
  408. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  409. package/lib/typescript/commonjs/src/modules/bt-management/constants/measurement-field-catalog.d.ts.map +1 -1
  410. package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts +48 -0
  411. package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -0
  412. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-background-sync.d.ts +14 -0
  413. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -0
  414. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-state.d.ts +11 -0
  415. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -0
  416. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts +7 -0
  417. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -0
  418. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts +16 -0
  419. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -0
  420. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-measurements.d.ts +11 -0
  421. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -0
  422. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-devices.d.ts +8 -0
  423. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -0
  424. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-paired-devices.d.ts +16 -0
  425. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -0
  426. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-scan-control.d.ts +7 -0
  427. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-scan-control.d.ts.map +1 -0
  428. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +14 -0
  429. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
  430. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  431. package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts +22 -0
  432. package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
  433. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +4 -0
  434. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
  435. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +10 -1
  436. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  437. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  438. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +1 -0
  439. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
  440. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +3 -2
  441. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  442. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
  443. package/lib/typescript/commonjs/src/modules/bt-management/services/push-notification.d.ts +8 -0
  444. package/lib/typescript/commonjs/src/modules/bt-management/services/push-notification.d.ts.map +1 -0
  445. package/lib/typescript/commonjs/src/modules/bt-management/testing/fake-ble-manager.d.ts +33 -0
  446. package/lib/typescript/commonjs/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -0
  447. package/lib/typescript/commonjs/src/modules/bt-management/testing/index.d.ts +3 -0
  448. package/lib/typescript/commonjs/src/modules/bt-management/testing/index.d.ts.map +1 -0
  449. package/lib/typescript/commonjs/src/modules/bt-management/testing/recorded-frames.d.ts +12 -0
  450. package/lib/typescript/commonjs/src/modules/bt-management/testing/recorded-frames.d.ts.map +1 -0
  451. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts +3 -1
  452. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  453. package/lib/typescript/commonjs/src/modules/bt-management/types/bluetooth-error.d.ts +23 -0
  454. package/lib/typescript/commonjs/src/modules/bt-management/types/bluetooth-error.d.ts.map +1 -0
  455. package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.d.ts +4 -0
  456. package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.d.ts.map +1 -1
  457. package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts +2 -0
  458. package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
  459. package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts +4 -0
  460. package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
  461. package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts +16 -0
  462. package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -0
  463. package/lib/typescript/commonjs/src/modules/bt-management/types/error-callback.d.ts +5 -2
  464. package/lib/typescript/commonjs/src/modules/bt-management/types/error-callback.d.ts.map +1 -1
  465. package/lib/typescript/commonjs/src/modules/bt-management/types/i-bt-managed-device.d.ts +1 -0
  466. package/lib/typescript/commonjs/src/modules/bt-management/types/i-bt-managed-device.d.ts.map +1 -1
  467. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts +2 -0
  468. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  469. package/lib/typescript/commonjs/src/modules/bt-management/types/result-policy.d.ts +8 -0
  470. package/lib/typescript/commonjs/src/modules/bt-management/types/result-policy.d.ts.map +1 -0
  471. package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts +10 -0
  472. package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts.map +1 -0
  473. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  474. package/lib/typescript/commonjs/src/modules/data-sync/services/base-health-sync-service.d.ts.map +1 -1
  475. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/data-processor.d.ts +4 -0
  476. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/data-processor.d.ts.map +1 -1
  477. package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
  478. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +2 -0
  479. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  480. package/lib/typescript/commonjs/src/modules/data-sync/types/sync-progress.d.ts +1 -1
  481. package/lib/typescript/commonjs/src/modules/data-sync/types/sync-progress.d.ts.map +1 -1
  482. package/lib/typescript/commonjs/src/modules/data-sync/utils/generate-observation-entry.d.ts.map +1 -1
  483. package/lib/typescript/commonjs/src/modules/data-sync/utils/retry-save.d.ts +6 -0
  484. package/lib/typescript/commonjs/src/modules/data-sync/utils/retry-save.d.ts.map +1 -0
  485. package/lib/typescript/commonjs/src/modules/helpers/form-items/form-field.d.ts +4 -1
  486. package/lib/typescript/commonjs/src/modules/helpers/form-items/form-field.d.ts.map +1 -1
  487. package/lib/typescript/commonjs/src/modules/helpers/index.d.ts +2 -1
  488. package/lib/typescript/commonjs/src/modules/helpers/index.d.ts.map +1 -1
  489. package/lib/typescript/commonjs/src/modules/helpers/utils/s-log.d.ts.map +1 -1
  490. package/lib/typescript/commonjs/src/modules/helpers/utils/sentry-logger.d.ts +7 -1
  491. package/lib/typescript/commonjs/src/modules/helpers/utils/sentry-logger.d.ts.map +1 -1
  492. package/lib/typescript/commonjs/src/modules/helpers/utils/telemetry.d.ts +69 -0
  493. package/lib/typescript/commonjs/src/modules/helpers/utils/telemetry.d.ts.map +1 -0
  494. package/lib/typescript/commonjs/src/modules/image/components/optimized-image.d.ts +1 -1
  495. package/lib/typescript/commonjs/src/modules/image/components/optimized-image.d.ts.map +1 -1
  496. package/lib/typescript/commonjs/src/modules/image/types/optimized-image-props.d.ts +4 -0
  497. package/lib/typescript/commonjs/src/modules/image/types/optimized-image-props.d.ts.map +1 -1
  498. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-error.d.ts.map +1 -1
  499. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.d.ts.map +1 -1
  500. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.d.ts.map +1 -1
  501. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  502. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  503. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts +1 -0
  504. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts.map +1 -1
  505. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +1 -0
  506. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  507. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts +1 -0
  508. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts.map +1 -1
  509. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +2 -0
  510. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  511. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +1 -0
  512. package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  513. package/lib/typescript/commonjs/src/modules/tile/components/task-icon.d.ts.map +1 -1
  514. package/lib/typescript/commonjs/src/modules/tile/constants/measurement-icon-svg.d.ts +1 -0
  515. package/lib/typescript/commonjs/src/modules/tile/constants/measurement-icon-svg.d.ts.map +1 -1
  516. package/lib/typescript/commonjs/src/modules/ui/components/background-sync-setting.d.ts +9 -0
  517. package/lib/typescript/commonjs/src/modules/ui/components/background-sync-setting.d.ts.map +1 -0
  518. package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts +12 -0
  519. package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -0
  520. package/lib/typescript/commonjs/src/modules/ui/components/ecg-strip-viewer.d.ts +17 -0
  521. package/lib/typescript/commonjs/src/modules/ui/components/ecg-strip-viewer.d.ts.map +1 -0
  522. package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts +13 -0
  523. package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts.map +1 -0
  524. package/lib/typescript/commonjs/src/modules/ui/components/manual-entry-form.d.ts +21 -0
  525. package/lib/typescript/commonjs/src/modules/ui/components/manual-entry-form.d.ts.map +1 -0
  526. package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts +15 -0
  527. package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts.map +1 -0
  528. package/lib/typescript/commonjs/src/modules/ui/components/supported-devices-catalog-list.d.ts +16 -0
  529. package/lib/typescript/commonjs/src/modules/ui/components/supported-devices-catalog-list.d.ts.map +1 -0
  530. package/lib/typescript/commonjs/src/modules/ui/components/urine-test-result.d.ts +10 -0
  531. package/lib/typescript/commonjs/src/modules/ui/components/urine-test-result.d.ts.map +1 -0
  532. package/lib/typescript/commonjs/src/modules/ui/index.d.ts +11 -0
  533. package/lib/typescript/commonjs/src/modules/ui/index.d.ts.map +1 -0
  534. package/lib/typescript/commonjs/src/modules/ui/types.d.ts +24 -0
  535. package/lib/typescript/commonjs/src/modules/ui/types.d.ts.map +1 -0
  536. package/lib/typescript/commonjs/src/modules/ui/use-ovok-ui.d.ts +7 -0
  537. package/lib/typescript/commonjs/src/modules/ui/use-ovok-ui.d.ts.map +1 -0
  538. package/lib/typescript/module/src/index.d.ts +0 -9
  539. package/lib/typescript/module/src/index.d.ts.map +1 -1
  540. package/lib/typescript/module/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
  541. package/lib/typescript/module/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts +2 -0
  542. package/lib/typescript/module/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts.map +1 -0
  543. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts +16 -0
  544. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts.map +1 -0
  545. package/lib/typescript/module/src/modules/auth/index.d.ts +4 -0
  546. package/lib/typescript/module/src/modules/auth/index.d.ts.map +1 -1
  547. package/lib/typescript/module/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
  548. package/lib/typescript/module/src/modules/auth/register/components/form/inputs.d.ts.map +1 -1
  549. package/lib/typescript/module/src/modules/auth/register/components/form/register-button.d.ts.map +1 -1
  550. package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  551. package/lib/typescript/module/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
  552. package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-button.d.ts.map +1 -1
  553. package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  554. package/lib/typescript/module/src/modules/auth/session/components/session-list.d.ts +4 -0
  555. package/lib/typescript/module/src/modules/auth/session/components/session-list.d.ts.map +1 -0
  556. package/lib/typescript/module/src/modules/auth/session/events.d.ts +5 -0
  557. package/lib/typescript/module/src/modules/auth/session/events.d.ts.map +1 -0
  558. package/lib/typescript/module/src/modules/auth/session/index.d.ts +3 -0
  559. package/lib/typescript/module/src/modules/auth/session/index.d.ts.map +1 -0
  560. package/lib/typescript/module/src/modules/auth/session/types/session-list-props.d.ts +5 -0
  561. package/lib/typescript/module/src/modules/auth/session/types/session-list-props.d.ts.map +1 -0
  562. package/lib/typescript/module/src/modules/auth/sign-in/components/form/inputs.d.ts.map +1 -1
  563. package/lib/typescript/module/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
  564. package/lib/typescript/module/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts +9 -0
  565. package/lib/typescript/module/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts.map +1 -0
  566. package/lib/typescript/module/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts +4 -0
  567. package/lib/typescript/module/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts.map +1 -1
  568. package/lib/typescript/module/src/modules/auth/sign-in/components/form/signin-button.d.ts.map +1 -1
  569. package/lib/typescript/module/src/modules/auth/sign-in/components/sign-in.d.ts +4 -0
  570. package/lib/typescript/module/src/modules/auth/sign-in/components/sign-in.d.ts.map +1 -1
  571. package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts +2 -46
  572. package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
  573. package/lib/typescript/module/src/modules/auth/sign-in/hooks/use-login-form.d.ts +1 -47
  574. package/lib/typescript/module/src/modules/auth/sign-in/hooks/use-login-form.d.ts.map +1 -1
  575. package/lib/typescript/module/src/modules/auth/sign-in/types/login-form-context-type.d.ts +11 -1
  576. package/lib/typescript/module/src/modules/auth/sign-in/types/login-form-context-type.d.ts.map +1 -1
  577. package/lib/typescript/module/src/modules/auth/types/session.d.ts +10 -0
  578. package/lib/typescript/module/src/modules/auth/types/session.d.ts.map +1 -0
  579. package/lib/typescript/module/src/modules/auth/utils/rate-limit.d.ts +11 -0
  580. package/lib/typescript/module/src/modules/auth/utils/rate-limit.d.ts.map +1 -0
  581. package/lib/typescript/module/src/modules/background-sync/android-bluetooth-foreground-service.d.ts.map +1 -1
  582. package/lib/typescript/module/src/modules/background-sync/background-safe-storage.d.ts +31 -0
  583. package/lib/typescript/module/src/modules/background-sync/background-safe-storage.d.ts.map +1 -0
  584. package/lib/typescript/module/src/modules/background-sync/index.d.ts +1 -0
  585. package/lib/typescript/module/src/modules/background-sync/index.d.ts.map +1 -1
  586. package/lib/typescript/module/src/modules/bt-device/index.d.ts +0 -2
  587. package/lib/typescript/module/src/modules/bt-device/index.d.ts.map +1 -1
  588. package/lib/typescript/module/src/modules/bt-device-instructions/index.d.ts +4 -0
  589. package/lib/typescript/module/src/modules/bt-device-instructions/index.d.ts.map +1 -0
  590. package/lib/typescript/module/src/modules/bt-management/components/android-bluetooth-foreground-service.d.ts +14 -0
  591. package/lib/typescript/module/src/modules/bt-management/components/android-bluetooth-foreground-service.d.ts.map +1 -0
  592. package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  593. package/lib/typescript/module/src/modules/bt-management/constants/measurement-field-catalog.d.ts.map +1 -1
  594. package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts +48 -0
  595. package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -0
  596. package/lib/typescript/module/src/modules/bt-management/hooks/use-background-sync.d.ts +14 -0
  597. package/lib/typescript/module/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -0
  598. package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-state.d.ts +11 -0
  599. package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -0
  600. package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts +7 -0
  601. package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -0
  602. package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts +16 -0
  603. package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -0
  604. package/lib/typescript/module/src/modules/bt-management/hooks/use-measurements.d.ts +11 -0
  605. package/lib/typescript/module/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -0
  606. package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-devices.d.ts +8 -0
  607. package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -0
  608. package/lib/typescript/module/src/modules/bt-management/hooks/use-paired-devices.d.ts +16 -0
  609. package/lib/typescript/module/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -0
  610. package/lib/typescript/module/src/modules/bt-management/hooks/use-scan-control.d.ts +7 -0
  611. package/lib/typescript/module/src/modules/bt-management/hooks/use-scan-control.d.ts.map +1 -0
  612. package/lib/typescript/module/src/modules/bt-management/index.d.ts +14 -0
  613. package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
  614. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  615. package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts +22 -0
  616. package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
  617. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +4 -0
  618. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
  619. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +10 -1
  620. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  621. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  622. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +1 -0
  623. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
  624. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +3 -2
  625. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  626. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
  627. package/lib/typescript/module/src/modules/bt-management/services/push-notification.d.ts +8 -0
  628. package/lib/typescript/module/src/modules/bt-management/services/push-notification.d.ts.map +1 -0
  629. package/lib/typescript/module/src/modules/bt-management/testing/fake-ble-manager.d.ts +33 -0
  630. package/lib/typescript/module/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -0
  631. package/lib/typescript/module/src/modules/bt-management/testing/index.d.ts +3 -0
  632. package/lib/typescript/module/src/modules/bt-management/testing/index.d.ts.map +1 -0
  633. package/lib/typescript/module/src/modules/bt-management/testing/recorded-frames.d.ts +12 -0
  634. package/lib/typescript/module/src/modules/bt-management/testing/recorded-frames.d.ts.map +1 -0
  635. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts +3 -1
  636. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  637. package/lib/typescript/module/src/modules/bt-management/types/bluetooth-error.d.ts +23 -0
  638. package/lib/typescript/module/src/modules/bt-management/types/bluetooth-error.d.ts.map +1 -0
  639. package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.d.ts +4 -0
  640. package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.d.ts.map +1 -1
  641. package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts +2 -0
  642. package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
  643. package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts +4 -0
  644. package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
  645. package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts +16 -0
  646. package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -0
  647. package/lib/typescript/module/src/modules/bt-management/types/error-callback.d.ts +5 -2
  648. package/lib/typescript/module/src/modules/bt-management/types/error-callback.d.ts.map +1 -1
  649. package/lib/typescript/module/src/modules/bt-management/types/i-bt-managed-device.d.ts +1 -0
  650. package/lib/typescript/module/src/modules/bt-management/types/i-bt-managed-device.d.ts.map +1 -1
  651. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts +2 -0
  652. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  653. package/lib/typescript/module/src/modules/bt-management/types/result-policy.d.ts +8 -0
  654. package/lib/typescript/module/src/modules/bt-management/types/result-policy.d.ts.map +1 -0
  655. package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts +10 -0
  656. package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts.map +1 -0
  657. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  658. package/lib/typescript/module/src/modules/data-sync/services/base-health-sync-service.d.ts.map +1 -1
  659. package/lib/typescript/module/src/modules/data-sync/services/managers/data-processor.d.ts +4 -0
  660. package/lib/typescript/module/src/modules/data-sync/services/managers/data-processor.d.ts.map +1 -1
  661. package/lib/typescript/module/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
  662. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +2 -0
  663. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  664. package/lib/typescript/module/src/modules/data-sync/types/sync-progress.d.ts +1 -1
  665. package/lib/typescript/module/src/modules/data-sync/types/sync-progress.d.ts.map +1 -1
  666. package/lib/typescript/module/src/modules/data-sync/utils/generate-observation-entry.d.ts.map +1 -1
  667. package/lib/typescript/module/src/modules/data-sync/utils/retry-save.d.ts +6 -0
  668. package/lib/typescript/module/src/modules/data-sync/utils/retry-save.d.ts.map +1 -0
  669. package/lib/typescript/module/src/modules/helpers/form-items/form-field.d.ts +4 -1
  670. package/lib/typescript/module/src/modules/helpers/form-items/form-field.d.ts.map +1 -1
  671. package/lib/typescript/module/src/modules/helpers/index.d.ts +2 -1
  672. package/lib/typescript/module/src/modules/helpers/index.d.ts.map +1 -1
  673. package/lib/typescript/module/src/modules/helpers/utils/s-log.d.ts.map +1 -1
  674. package/lib/typescript/module/src/modules/helpers/utils/sentry-logger.d.ts +7 -1
  675. package/lib/typescript/module/src/modules/helpers/utils/sentry-logger.d.ts.map +1 -1
  676. package/lib/typescript/module/src/modules/helpers/utils/telemetry.d.ts +69 -0
  677. package/lib/typescript/module/src/modules/helpers/utils/telemetry.d.ts.map +1 -0
  678. package/lib/typescript/module/src/modules/image/components/optimized-image.d.ts +1 -1
  679. package/lib/typescript/module/src/modules/image/components/optimized-image.d.ts.map +1 -1
  680. package/lib/typescript/module/src/modules/image/types/optimized-image-props.d.ts +4 -0
  681. package/lib/typescript/module/src/modules/image/types/optimized-image-props.d.ts.map +1 -1
  682. package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-error.d.ts.map +1 -1
  683. package/lib/typescript/module/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.d.ts.map +1 -1
  684. package/lib/typescript/module/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.d.ts.map +1 -1
  685. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
  686. package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
  687. package/lib/typescript/module/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts +1 -0
  688. package/lib/typescript/module/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts.map +1 -1
  689. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +1 -0
  690. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
  691. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts +1 -0
  692. package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts.map +1 -1
  693. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +2 -0
  694. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
  695. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +1 -0
  696. package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
  697. package/lib/typescript/module/src/modules/tile/components/task-icon.d.ts.map +1 -1
  698. package/lib/typescript/module/src/modules/tile/constants/measurement-icon-svg.d.ts +1 -0
  699. package/lib/typescript/module/src/modules/tile/constants/measurement-icon-svg.d.ts.map +1 -1
  700. package/lib/typescript/module/src/modules/ui/components/background-sync-setting.d.ts +9 -0
  701. package/lib/typescript/module/src/modules/ui/components/background-sync-setting.d.ts.map +1 -0
  702. package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts +12 -0
  703. package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -0
  704. package/lib/typescript/module/src/modules/ui/components/ecg-strip-viewer.d.ts +17 -0
  705. package/lib/typescript/module/src/modules/ui/components/ecg-strip-viewer.d.ts.map +1 -0
  706. package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts +13 -0
  707. package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts.map +1 -0
  708. package/lib/typescript/module/src/modules/ui/components/manual-entry-form.d.ts +21 -0
  709. package/lib/typescript/module/src/modules/ui/components/manual-entry-form.d.ts.map +1 -0
  710. package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts +15 -0
  711. package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts.map +1 -0
  712. package/lib/typescript/module/src/modules/ui/components/supported-devices-catalog-list.d.ts +16 -0
  713. package/lib/typescript/module/src/modules/ui/components/supported-devices-catalog-list.d.ts.map +1 -0
  714. package/lib/typescript/module/src/modules/ui/components/urine-test-result.d.ts +10 -0
  715. package/lib/typescript/module/src/modules/ui/components/urine-test-result.d.ts.map +1 -0
  716. package/lib/typescript/module/src/modules/ui/index.d.ts +11 -0
  717. package/lib/typescript/module/src/modules/ui/index.d.ts.map +1 -0
  718. package/lib/typescript/module/src/modules/ui/types.d.ts +24 -0
  719. package/lib/typescript/module/src/modules/ui/types.d.ts.map +1 -0
  720. package/lib/typescript/module/src/modules/ui/use-ovok-ui.d.ts +7 -0
  721. package/lib/typescript/module/src/modules/ui/use-ovok-ui.d.ts.map +1 -0
  722. package/package.json +146 -7
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.withOvokSpan = exports.startOvokSpan = exports.sanitizeOvokTelemetryAttributes = exports.recordOvokMetric = exports.recordOvokDuration = exports.emitOvokLog = exports.configureOvokTelemetry = exports.addOvokSpanEvent = void 0;
7
+ /* eslint-disable import/group-exports */
8
+ /* eslint-disable max-lines */
9
+
10
+ const INSTRUMENTATION_NAME = "@ovok/native";
11
+ const INSTRUMENTATION_VERSION = "1.6.0";
12
+ const openTelemetryModuleName = "@opentelemetry/api";
13
+ const openTelemetryLogsModuleName = "@opentelemetry/api-logs";
14
+ let configuredOptions = {};
15
+ let openTelemetryApi;
16
+ let openTelemetryLogsApi;
17
+ const counters = new Map();
18
+ const histograms = new Map();
19
+ const loadOpenTelemetryApi = () => {
20
+ if (openTelemetryApi !== undefined) {
21
+ return openTelemetryApi ?? undefined;
22
+ }
23
+ try {
24
+ // Optional peer: apps without OpenTelemetry must not need to install it.
25
+ openTelemetryApi = require(openTelemetryModuleName);
26
+ } catch {
27
+ openTelemetryApi = null;
28
+ }
29
+ return openTelemetryApi ?? undefined;
30
+ };
31
+ const loadOpenTelemetryLogsApi = () => {
32
+ if (openTelemetryLogsApi !== undefined) {
33
+ return openTelemetryLogsApi ?? undefined;
34
+ }
35
+ try {
36
+ // Optional peer: the stable logs API is distributed separately.
37
+ openTelemetryLogsApi = require(openTelemetryLogsModuleName);
38
+ } catch {
39
+ openTelemetryLogsApi = null;
40
+ }
41
+ return openTelemetryLogsApi ?? undefined;
42
+ };
43
+ const allowedAttributeKeys = new Set(["deviceId", "deviceName", "model", "manufacturer", "measurementTypeKey", "platform", "status", "reason", "errorCode", "retryCount", "attempt", "queueDepth", "durationMs", "success", "exhausted", "willRetry", "requestedMtu", "provider", "sampleCount"]);
44
+
45
+ /** Keeps identifiers useful for operations while excluding readings and patient data. */
46
+ const sanitizeOvokTelemetryAttributes = (attributes = {}) => {
47
+ const safe = {};
48
+ for (const [key, value] of Object.entries(attributes)) {
49
+ if (!allowedAttributeKeys.has(key)) {
50
+ continue;
51
+ }
52
+ if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
53
+ safe[key] = value;
54
+ }
55
+ }
56
+ return safe;
57
+ };
58
+ exports.sanitizeOvokTelemetryAttributes = sanitizeOvokTelemetryAttributes;
59
+ const configureOvokTelemetry = (options = {}) => {
60
+ configuredOptions = options;
61
+ counters.clear();
62
+ histograms.clear();
63
+ };
64
+ exports.configureOvokTelemetry = configureOvokTelemetry;
65
+ const getTracer = () => {
66
+ try {
67
+ const configured = configuredOptions.tracerProvider?.getTracer(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
68
+ if (configured) {
69
+ return configured;
70
+ }
71
+ } catch {
72
+ return undefined;
73
+ }
74
+ try {
75
+ return loadOpenTelemetryApi()?.trace?.getTracer(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
76
+ } catch {
77
+ return undefined;
78
+ }
79
+ };
80
+ const getMeter = () => {
81
+ try {
82
+ const configured = configuredOptions.meterProvider?.getMeter(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
83
+ if (configured) {
84
+ return configured;
85
+ }
86
+ } catch {
87
+ return undefined;
88
+ }
89
+ try {
90
+ return loadOpenTelemetryApi()?.metrics?.getMeter(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
91
+ } catch {
92
+ return undefined;
93
+ }
94
+ };
95
+ const getLogger = () => {
96
+ try {
97
+ const configured = configuredOptions.loggerProvider?.getLogger(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
98
+ if (configured) {
99
+ return configured;
100
+ }
101
+ } catch {
102
+ return undefined;
103
+ }
104
+ try {
105
+ return loadOpenTelemetryLogsApi()?.logs?.getLogger(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
106
+ } catch {
107
+ return undefined;
108
+ }
109
+ };
110
+ const startOvokSpan = (name, attributes = {}) => {
111
+ try {
112
+ return getTracer()?.startSpan(name, {
113
+ attributes: sanitizeOvokTelemetryAttributes(attributes)
114
+ });
115
+ } catch {
116
+ return undefined;
117
+ }
118
+ };
119
+ exports.startOvokSpan = startOvokSpan;
120
+ const recordOvokMetric = (name, value, attributes = {}) => {
121
+ try {
122
+ const meter = getMeter();
123
+ if (!meter) {
124
+ return;
125
+ }
126
+ const safeAttributes = sanitizeOvokTelemetryAttributes(attributes);
127
+ const instrument = counters.get(name) ?? meter.createCounter(name);
128
+ counters.set(name, instrument);
129
+ instrument.add(value, safeAttributes);
130
+ } catch {
131
+ // Telemetry must never change SDK control flow.
132
+ }
133
+ };
134
+ exports.recordOvokMetric = recordOvokMetric;
135
+ const recordOvokDuration = (name, durationMs, attributes = {}) => {
136
+ try {
137
+ const meter = getMeter();
138
+ if (!meter) {
139
+ return;
140
+ }
141
+ const safeAttributes = sanitizeOvokTelemetryAttributes(attributes);
142
+ const instrument = histograms.get(name) ?? meter.createHistogram(name);
143
+ histograms.set(name, instrument);
144
+ instrument.record(durationMs, safeAttributes);
145
+ } catch {
146
+ // Telemetry must never change SDK control flow.
147
+ }
148
+ };
149
+ exports.recordOvokDuration = recordOvokDuration;
150
+ const addOvokSpanEvent = (name, attributes = {}, span) => {
151
+ try {
152
+ const targetSpan = span ?? configuredOptions.tracerProvider?.getActiveSpan?.() ?? loadOpenTelemetryApi()?.trace?.getActiveSpan?.();
153
+ targetSpan?.addEvent?.(name, sanitizeOvokTelemetryAttributes(attributes));
154
+ } catch {
155
+ // Telemetry must never change SDK control flow.
156
+ }
157
+ };
158
+ exports.addOvokSpanEvent = addOvokSpanEvent;
159
+ const emitOvokLog = (severityText, body, attributes = {}) => {
160
+ try {
161
+ getLogger()?.emit({
162
+ severityText,
163
+ body,
164
+ attributes
165
+ });
166
+ } catch {
167
+ // Telemetry must never change SDK control flow.
168
+ }
169
+ };
170
+ exports.emitOvokLog = emitOvokLog;
171
+ const withOvokSpan = async (name, attributes, operation) => {
172
+ const tracer = getTracer();
173
+ const finishSpan = async span => {
174
+ try {
175
+ const result = await operation();
176
+ try {
177
+ span.setStatus?.({
178
+ code: 1
179
+ });
180
+ } catch {
181
+ // Telemetry must never change SDK control flow.
182
+ }
183
+ return result;
184
+ } catch (error) {
185
+ const normalized = error instanceof Error ? error : new Error(String(error));
186
+ try {
187
+ span.recordException?.(normalized);
188
+ span.setStatus?.({
189
+ code: 2,
190
+ message: normalized.message
191
+ });
192
+ } catch {
193
+ // Telemetry must never change SDK control flow.
194
+ }
195
+ recordOvokMetric("ovok.errors", 1, {
196
+ errorCode: normalized.name
197
+ });
198
+ throw error;
199
+ } finally {
200
+ try {
201
+ span.end();
202
+ } catch {
203
+ // Telemetry must never change SDK control flow.
204
+ }
205
+ }
206
+ };
207
+ if (tracer?.startActiveSpan) {
208
+ try {
209
+ return tracer.startActiveSpan(name, {
210
+ attributes: sanitizeOvokTelemetryAttributes(attributes)
211
+ }, span => finishSpan(span));
212
+ } catch {
213
+ return operation();
214
+ }
215
+ }
216
+ let span;
217
+ try {
218
+ span = tracer?.startSpan(name, {
219
+ attributes: sanitizeOvokTelemetryAttributes(attributes)
220
+ });
221
+ } catch {
222
+ return operation();
223
+ }
224
+ if (!span) {
225
+ return operation();
226
+ }
227
+ return finishSpan(span);
228
+ };
229
+ exports.withOvokSpan = withOvokSpan;
230
+ //# sourceMappingURL=telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["INSTRUMENTATION_NAME","INSTRUMENTATION_VERSION","openTelemetryModuleName","openTelemetryLogsModuleName","configuredOptions","openTelemetryApi","openTelemetryLogsApi","counters","Map","histograms","loadOpenTelemetryApi","undefined","require","loadOpenTelemetryLogsApi","allowedAttributeKeys","Set","sanitizeOvokTelemetryAttributes","attributes","safe","key","value","Object","entries","has","exports","configureOvokTelemetry","options","clear","getTracer","configured","tracerProvider","trace","getMeter","meterProvider","metrics","getLogger","loggerProvider","logs","startOvokSpan","name","startSpan","recordOvokMetric","meter","safeAttributes","instrument","get","createCounter","set","add","recordOvokDuration","durationMs","createHistogram","record","addOvokSpanEvent","span","targetSpan","getActiveSpan","addEvent","emitOvokLog","severityText","body","emit","withOvokSpan","operation","tracer","finishSpan","result","setStatus","code","error","normalized","Error","String","recordException","message","errorCode","end","startActiveSpan"],"sourceRoot":"../../../../../src","sources":["modules/helpers/utils/telemetry.ts"],"mappings":"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","ignoreList":[]}
@@ -19,11 +19,17 @@ const OptimizedImage = exports.OptimizedImage = /*#__PURE__*/React.memo(({
19
19
  fit = "contain",
20
20
  style,
21
21
  onLoad,
22
+ onError,
23
+ placeholder,
24
+ fallback,
25
+ maxRetries = 3,
22
26
  containerStyle,
23
27
  aspectRatio: providedAspectRatio,
24
28
  ...rest
25
29
  }) => {
26
30
  const client = (0, _core.useClient)();
31
+ const retryCount = React.useRef(0);
32
+ const [failedUri, setFailedUri] = React.useState(null);
27
33
  const [containerSize, setContainerSize] = React.useState({
28
34
  width: 0,
29
35
  height: 0
@@ -39,6 +45,23 @@ const OptimizedImage = exports.OptimizedImage = /*#__PURE__*/React.memo(({
39
45
  fit,
40
46
  baseUrl: client.getBaseUrl()
41
47
  }), [uri, calculatedWidth, calculatedHeight, fit, client]);
48
+ React.useEffect(() => {
49
+ retryCount.current = 0;
50
+ setFailedUri(null);
51
+ }, [optimizedUri]);
52
+ const image = (0, _expoImage.useImage)(optimizedUri, {
53
+ onError: (error, retry) => {
54
+ if (retryCount.current >= maxRetries) {
55
+ setFailedUri(optimizedUri);
56
+ onError?.({
57
+ error: error instanceof Error ? error.message : String(error)
58
+ });
59
+ return;
60
+ }
61
+ retryCount.current += 1;
62
+ retry();
63
+ }
64
+ }, [optimizedUri, maxRetries, onError]);
42
65
  const imageStyle = React.useMemo(() => [styles.base, {
43
66
  width: calculatedWidth,
44
67
  height: calculatedHeight,
@@ -55,20 +78,22 @@ const OptimizedImage = exports.OptimizedImage = /*#__PURE__*/React.memo(({
55
78
  if (!providedAspectRatio) {
56
79
  setCalculatedAspectRatio(imageWidth / imageHeight);
57
80
  }
58
- onLoad?.(event);
59
- }, [onLoad, providedAspectRatio]);
81
+ if (failedUri !== optimizedUri) {
82
+ onLoad?.(event);
83
+ }
84
+ }, [failedUri, onLoad, optimizedUri, providedAspectRatio]);
60
85
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
61
86
  style: [styles.container, containerStyle],
62
87
  onLayout: handleLayout,
63
88
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_expoImage.Image, {
64
- source: {
65
- uri: optimizedUri
66
- },
89
+ source: failedUri === optimizedUri ? fallback ?? placeholder ?? null : image ?? placeholder ?? null,
67
90
  style: imageStyle,
91
+ placeholder: placeholder,
68
92
  onLoad: handleLoad,
93
+ onError: image && failedUri !== optimizedUri ? onError : undefined,
69
94
  ...rest,
70
95
  contentFit: fit
71
- })
96
+ }, `${optimizedUri}:${retryCount.current}`)
72
97
  });
73
98
  });
74
99
  const styles = _reactNative.StyleSheet.create({
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_expoImage","React","_interopRequireWildcard","_reactNative","_calculateDimension","_getOptimizedImageUrl","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OptimizedImage","exports","memo","uri","width","height","fit","style","onLoad","containerStyle","aspectRatio","providedAspectRatio","rest","client","useClient","containerSize","setContainerSize","useState","calculatedAspectRatio","setCalculatedAspectRatio","useMemo","calculatedWidth","calculateDimension","calculatedHeight","undefined","optimizedUri","getOptimizedImageUrl","baseUrl","getBaseUrl","imageStyle","styles","base","contentFit","handleLayout","useCallback","event","nativeEvent","layout","handleLoad","imageWidth","imageHeight","source","jsx","View","container","onLayout","children","Image","StyleSheet","create","overflow"],"sourceRoot":"../../../../../src","sources":["modules/image/components/optimized-image.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_expoImage","React","_interopRequireWildcard","_reactNative","_calculateDimension","_getOptimizedImageUrl","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OptimizedImage","exports","memo","uri","width","height","fit","style","onLoad","onError","placeholder","fallback","maxRetries","containerStyle","aspectRatio","providedAspectRatio","rest","client","useClient","retryCount","useRef","failedUri","setFailedUri","useState","containerSize","setContainerSize","calculatedAspectRatio","setCalculatedAspectRatio","useMemo","calculatedWidth","calculateDimension","calculatedHeight","undefined","optimizedUri","getOptimizedImageUrl","baseUrl","getBaseUrl","useEffect","current","image","useImage","error","retry","Error","message","String","imageStyle","styles","base","contentFit","handleLayout","useCallback","event","nativeEvent","layout","handleLoad","imageWidth","imageHeight","source","jsx","View","container","onLayout","children","Image","StyleSheet","create","overflow"],"sourceRoot":"../../../../../src","sources":["modules/image/components/optimized-image.tsx"],"mappings":"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","ignoreList":[]}
@@ -21,18 +21,27 @@ const QuestionnaireContentError = exports.QuestionnaireContentError = /*#__PURE_
21
21
  t
22
22
  } = (0, _reactI18next.useTranslation)();
23
23
  const {
24
- errorMessage
24
+ errorMessage,
25
+ submissionError,
26
+ retrySubmit
25
27
  } = (0, _useQuestionnaireForm.useQuestionnaireForm)();
26
- if (!errorMessage && !children) {
28
+ if (!errorMessage && !submissionError && !children) {
27
29
  return null;
28
30
  }
29
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativePaper.Text, {
30
- variant: "bodySmall",
31
- ...props,
32
- style: [{
33
- color: theme.colors.error
34
- }, style],
35
- children: children || t(errorMessage || "")
31
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
32
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativePaper.Text, {
33
+ variant: "bodySmall",
34
+ ...props,
35
+ style: [{
36
+ color: theme.colors.error
37
+ }, style],
38
+ children: children || t(errorMessage || submissionError || "")
39
+ }), submissionError ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativePaper.Button, {
40
+ mode: "text",
41
+ compact: true,
42
+ onPress: retrySubmit,
43
+ children: t("common.try-again")
44
+ }) : null]
36
45
  });
37
46
  });
38
47
  //# sourceMappingURL=questionnaire-content-error.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactI18next","_reactNativePaper","_index","_useQuestionnaireForm","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","QuestionnaireContentError","exports","memo","style","children","props","theme","useAppTheme","useTranslation","errorMessage","useQuestionnaireForm","jsx","Text","variant","color","colors","error"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-error.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AAA0E,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGnE,MAAMkB,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,gBAAG3B,KAAK,CAAC6B,IAAI,CACjD,CAAmC;EACjCC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACqC,CAAC,KAAK;EAC9C,MAAMC,KAAK,GAAG,IAAAC,kBAAW,EAAC,CAAC;EAC3B,MAAM;IAAEzB;EAAE,CAAC,GAAG,IAAA0B,4BAAc,EAAC,CAAC;EAE9B,MAAM;IAAEC;EAAa,CAAC,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EAE/C,IAAI,CAACD,YAAY,IAAI,CAACL,QAAQ,EAAE;IAC9B,OAAO,IAAI;EACb;EAEA,oBACE,IAAAxB,WAAA,CAAA+B,GAAA,EAAClC,iBAAA,CAAAmC,IAAI;IACHC,OAAO,EAAC,WAAW;IAAA,GACfR,KAAK;IACTF,KAAK,EAAE,CAAC;MAAEW,KAAK,EAAER,KAAK,CAACS,MAAM,CAACC;IAAM,CAAC,EAAEb,KAAK,CAAE;IAAAC,QAAA,EAE7CA,QAAQ,IAAItB,CAAC,CAAC2B,YAAY,IAAI,EAAE;EAAC,CAC9B,CAAC;AAEX,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactI18next","_reactNativePaper","_index","_useQuestionnaireForm","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","QuestionnaireContentError","exports","memo","style","children","props","theme","useAppTheme","useTranslation","errorMessage","submissionError","retrySubmit","useQuestionnaireForm","jsxs","Fragment","jsx","Text","variant","color","colors","error","Button","mode","compact","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-error.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AAA0E,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGnE,MAAMkB,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,gBAAG3B,KAAK,CAAC6B,IAAI,CACjD,CAAmC;EACjCC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACqC,CAAC,KAAK;EAC9C,MAAMC,KAAK,GAAG,IAAAC,kBAAW,EAAC,CAAC;EAC3B,MAAM;IAAEzB;EAAE,CAAC,GAAG,IAAA0B,4BAAc,EAAC,CAAC;EAE9B,MAAM;IAAEC,YAAY;IAAEC,eAAe;IAAEC;EAAY,CAAC,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EAE7E,IAAI,CAACH,YAAY,IAAI,CAACC,eAAe,IAAI,CAACN,QAAQ,EAAE;IAClD,OAAO,IAAI;EACb;EAEA,oBACE,IAAAxB,WAAA,CAAAiC,IAAA,EAAAjC,WAAA,CAAAkC,QAAA;IAAAV,QAAA,gBACE,IAAAxB,WAAA,CAAAmC,GAAA,EAACtC,iBAAA,CAAAuC,IAAI;MACHC,OAAO,EAAC,WAAW;MAAA,GACfZ,KAAK;MACTF,KAAK,EAAE,CAAC;QAAEe,KAAK,EAAEZ,KAAK,CAACa,MAAM,CAACC;MAAM,CAAC,EAAEjB,KAAK,CAAE;MAAAC,QAAA,EAE7CA,QAAQ,IAAItB,CAAC,CAAC2B,YAAY,IAAIC,eAAe,IAAI,EAAE;IAAC,CACjD,CAAC,EACNA,eAAe,gBACd,IAAA9B,WAAA,CAAAmC,GAAA,EAACtC,iBAAA,CAAA4C,MAAM;MAACC,IAAI,EAAC,MAAM;MAACC,OAAO;MAACC,OAAO,EAAEb,WAAY;MAAAP,QAAA,EAC9CtB,CAAC,CAAC,kBAAkB;IAAC,CAChB,CAAC,GACP,IAAI;EAAA,CACR,CAAC;AAEP,CACF,CAAC","ignoreList":[]}
@@ -21,7 +21,8 @@ const QuestionnaireNavigationNextButton = exports.QuestionnaireNavigationNextBut
21
21
  handleNext,
22
22
  isLastItem,
23
23
  isCurrentItemRequired,
24
- isCurrentItemAnswered
24
+ isCurrentItemAnswered,
25
+ isSubmitting
25
26
  } = (0, _useQuestionnaireNavigation.useQuestionnaireNavigation)();
26
27
  if (isLastItem) {
27
28
  return null;
@@ -30,7 +31,7 @@ const QuestionnaireNavigationNextButton = exports.QuestionnaireNavigationNextBut
30
31
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativePaper.Button, {
31
32
  mode: "contained",
32
33
  ...buttonProps,
33
- disabled: buttonProps.disabled || isNextDisabled,
34
+ disabled: buttonProps.disabled || isNextDisabled || isSubmitting,
34
35
  onPress: handleNext,
35
36
  children: children || t("common.next")
36
37
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactI18next","_reactNativePaper","_useQuestionnaireNavigation","_jsxRuntime","e","__esModule","default","QuestionnaireNavigationNextButton","exports","React","memo","children","buttonProps","t","useTranslation","handleNext","isLastItem","isCurrentItemRequired","isCurrentItemAnswered","useQuestionnaireNavigation","isNextDisabled","jsx","Button","mode","disabled","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,2BAAA,GAAAH,OAAA;AAAsF,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/E,MAAMG,iCAAiC,GAAAC,OAAA,CAAAD,iCAAA,gBAAGE,cAAK,CAACC,IAAI,CACzD,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,4BAAc,EAAC,CAAC;EAE9B,MAAM;IACJC,UAAU;IACVC,UAAU;IACVC,qBAAqB;IACrBC;EACF,CAAC,GAAG,IAAAC,sDAA0B,EAAC,CAAC;EAEhC,IAAIH,UAAU,EAAE;IACd,OAAO,IAAI;EACb;EAEA,MAAMI,cAAc,GAAGH,qBAAqB,IAAI,CAACC,qBAAqB;EAEtE,oBACE,IAAAf,WAAA,CAAAkB,GAAA,EAACpB,iBAAA,CAAAqB,MAAM;IACLC,IAAI,EAAC,WAAW;IAAA,GACZX,WAAW;IACfY,QAAQ,EAAEZ,WAAW,CAACY,QAAQ,IAAIJ,cAAe;IACjDK,OAAO,EAAEV,UAAW;IAAAJ,QAAA,EAEnBA,QAAQ,IAAIE,CAAC,CAAC,aAAa;EAAC,CACvB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactI18next","_reactNativePaper","_useQuestionnaireNavigation","_jsxRuntime","e","__esModule","default","QuestionnaireNavigationNextButton","exports","React","memo","children","buttonProps","t","useTranslation","handleNext","isLastItem","isCurrentItemRequired","isCurrentItemAnswered","isSubmitting","useQuestionnaireNavigation","isNextDisabled","jsx","Button","mode","disabled","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,2BAAA,GAAAH,OAAA;AAAsF,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG/E,MAAMG,iCAAiC,GAAAC,OAAA,CAAAD,iCAAA,gBAAGE,cAAK,CAACC,IAAI,CACzD,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,4BAAc,EAAC,CAAC;EAE9B,MAAM;IACJC,UAAU;IACVC,UAAU;IACVC,qBAAqB;IACrBC,qBAAqB;IACrBC;EACF,CAAC,GAAG,IAAAC,sDAA0B,EAAC,CAAC;EAEhC,IAAIJ,UAAU,EAAE;IACd,OAAO,IAAI;EACb;EAEA,MAAMK,cAAc,GAAGJ,qBAAqB,IAAI,CAACC,qBAAqB;EAEtE,oBACE,IAAAf,WAAA,CAAAmB,GAAA,EAACrB,iBAAA,CAAAsB,MAAM;IACLC,IAAI,EAAC,WAAW;IAAA,GACZZ,WAAW;IACfa,QAAQ,EAAEb,WAAW,CAACa,QAAQ,IAAIJ,cAAc,IAAIF,YAAa;IACjEO,OAAO,EAAEX,UAAW;IAAAJ,QAAA,EAEnBA,QAAQ,IAAIE,CAAC,CAAC,aAAa;EAAC,CACvB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
@@ -20,7 +20,8 @@ const QuestionnaireNavigationSubmitButton = exports.QuestionnaireNavigationSubmi
20
20
  } = (0, _reactI18next.useTranslation)();
21
21
  const {
22
22
  paged,
23
- submitForm
23
+ submitForm,
24
+ isSubmitting
24
25
  } = (0, _useQuestionnaireForm.useQuestionnaireForm)();
25
26
  const {
26
27
  isLastItem
@@ -32,7 +33,8 @@ const QuestionnaireNavigationSubmitButton = exports.QuestionnaireNavigationSubmi
32
33
  mode: "contained",
33
34
  ...buttonProps,
34
35
  onPress: submitForm,
35
- disabled: buttonProps.disabled,
36
+ disabled: buttonProps.disabled || isSubmitting,
37
+ loading: isSubmitting,
36
38
  children: children || t("common.submit")
37
39
  });
38
40
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactI18next","_reactNativePaper","_useQuestionnaireForm","_useQuestionnaireNavigation","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","QuestionnaireNavigationSubmitButton","exports","memo","children","buttonProps","useTranslation","paged","submitForm","useQuestionnaireForm","isLastItem","useQuestionnaireNavigation","jsx","Button","mode","onPress","disabled"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AAAsF,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAG/E,MAAMkB,mCAAmC,GAAAC,OAAA,CAAAD,mCAAA,gBAAG3B,KAAK,CAAC6B,IAAI,CAC3D,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEtB;EAAE,CAAC,GAAG,IAAAuB,4BAAc,EAAC,CAAC;EAE9B,MAAM;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EACpD,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAAC,sDAA0B,EAAC,CAAC;EAEnD,IAAI,CAACD,UAAU,IAAIH,KAAK,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,oBACE,IAAA1B,WAAA,CAAA+B,GAAA,EAAClC,iBAAA,CAAAmC,MAAM;IACLC,IAAI,EAAC,WAAW;IAAA,GACZT,WAAW;IACfU,OAAO,EAAEP,UAAW;IACpBQ,QAAQ,EAAEX,WAAW,CAACW,QAAS;IAAAZ,QAAA,EAE9BA,QAAQ,IAAIrB,CAAC,CAAC,eAAe;EAAC,CACzB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactI18next","_reactNativePaper","_useQuestionnaireForm","_useQuestionnaireNavigation","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","QuestionnaireNavigationSubmitButton","exports","memo","children","buttonProps","useTranslation","paged","submitForm","isSubmitting","useQuestionnaireForm","isLastItem","useQuestionnaireNavigation","jsx","Button","mode","onPress","disabled","loading"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,2BAAA,GAAAJ,OAAA;AAAsF,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAG/E,MAAMkB,mCAAmC,GAAAC,OAAA,CAAAD,mCAAA,gBAAG3B,KAAK,CAAC6B,IAAI,CAC3D,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEtB;EAAE,CAAC,GAAG,IAAAuB,4BAAc,EAAC,CAAC;EAE9B,MAAM;IAAEC,KAAK;IAAEC,UAAU;IAAEC;EAAa,CAAC,GAAG,IAAAC,0CAAoB,EAAC,CAAC;EAClE,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAAC,sDAA0B,EAAC,CAAC;EAEnD,IAAI,CAACD,UAAU,IAAIJ,KAAK,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,oBACE,IAAA1B,WAAA,CAAAgC,GAAA,EAACnC,iBAAA,CAAAoC,MAAM;IACLC,IAAI,EAAC,WAAW;IAAA,GACZV,WAAW;IACfW,OAAO,EAAER,UAAW;IACpBS,QAAQ,EAAEZ,WAAW,CAACY,QAAQ,IAAIR,YAAa;IAC/CS,OAAO,EAAET,YAAa;IAAAL,QAAA,EAErBA,QAAQ,IAAIrB,CAAC,CAAC,eAAe;EAAC,CACzB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
@@ -16,6 +16,8 @@ var _questionnaireSubmitUtils = require("../utils/questionnaire-submit-utils.js"
16
16
  var _questionnaireNavigationProvider = require("./questionnaire-navigation-provider.js");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ /* eslint-disable max-lines */
20
+
19
21
  const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE__*/_react.default.memo(({
20
22
  children,
21
23
  questionnaire,
@@ -29,26 +31,35 @@ const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE_
29
31
  const [currentPageIndex, setCurrentPageIndex] = _react.default.useState(0);
30
32
  const [currentItemIndex, setCurrentItemIndex] = _react.default.useState(0);
31
33
  const [errorMessage, setErrorMessage] = _react.default.useState(null);
34
+ const [submissionError, setSubmissionError] = _react.default.useState(null);
35
+ const submissionInFlight = _react.default.useRef(false);
36
+ const submissionIdentifier = _react.default.useRef(null);
32
37
  const pages = _react.default.useMemo(() => _formUtils.FormUtils.extractPagesFromQuestionnaire(questionnaire), [questionnaire]);
33
38
  const initialValues = _react.default.useMemo(() => _initialValues || _formUtils.FormUtils.initializeDefaultValues(pages), [_initialValues, pages]);
34
39
  const handleSubmit = _react.default.useCallback(async (values, formikHelpers) => {
35
- const validationResult = _formValidation.FormValidation.validateRequiredFields(pages, values);
36
- if (!validationResult.isValid) {
37
- const {
38
- pageIndex,
39
- itemIndex
40
- } = validationResult.firstUnansweredLocation;
41
- setCurrentPageIndex(pageIndex);
42
- setCurrentItemIndex(itemIndex);
43
- setErrorMessage("questionnaire-form.error.required-fields");
44
- return;
45
- }
46
- delete values.currentLinkId;
47
- if (onSubmit) {
48
- onSubmit(values, formikHelpers);
40
+ if (submissionInFlight.current) {
49
41
  return;
50
42
  }
43
+ submissionInFlight.current = true;
44
+ setSubmissionError(null);
51
45
  try {
46
+ const validationResult = _formValidation.FormValidation.validateRequiredFields(pages, values);
47
+ if (!validationResult.isValid) {
48
+ const {
49
+ pageIndex,
50
+ itemIndex
51
+ } = validationResult.firstUnansweredLocation;
52
+ setCurrentPageIndex(pageIndex);
53
+ setCurrentItemIndex(itemIndex);
54
+ setErrorMessage("questionnaire-form.error.required-fields");
55
+ return;
56
+ }
57
+ delete values.currentLinkId;
58
+ if (onSubmit) {
59
+ await onSubmit(values, formikHelpers);
60
+ submissionIdentifier.current = null;
61
+ return;
62
+ }
52
63
  const activeProfile = await client.getProfileAsync();
53
64
  if (!activeProfile) {
54
65
  throw new Error("questionnaire-form.error.profile-not-found");
@@ -57,12 +68,22 @@ const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE_
57
68
  response.subject = {
58
69
  reference: (0, _core.getReferenceString)(activeProfile)
59
70
  };
60
- const createdResponse = await client.createResource(response);
71
+ submissionIdentifier.current ??= `${questionnaire.id ?? "unknown"}-${Date.now()}-${Math.random().toString(36).slice(2)}`;
72
+ const identifierValue = submissionIdentifier.current;
73
+ const identifierSystem = "https://sdk.ovok.com/questionnaire-response";
74
+ response.identifier = {
75
+ system: identifierSystem,
76
+ value: identifierValue
77
+ };
78
+ const createdResponse = await client.createResourceIfNoneExist(response, `identifier=${identifierSystem}|${identifierValue}`);
61
79
  onSuccess?.(createdResponse);
80
+ submissionIdentifier.current = null;
62
81
  } catch (error) {
63
82
  const typedError = error;
64
83
  onError?.(error);
65
- setErrorMessage(typedError.message);
84
+ setSubmissionError(typedError.message?.startsWith("questionnaire-form.") ? typedError.message : "questionnaire-form.error.submit-failed");
85
+ } finally {
86
+ submissionInFlight.current = false;
66
87
  }
67
88
  }, [onSubmit, onSuccess, onError, pages, questionnaire, client]);
68
89
  const allItems = _react.default.useMemo(() => pages.flatMap(page => page.item ? page.item : []), [pages]);
@@ -96,6 +117,10 @@ const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE_
96
117
  values,
97
118
  setFieldValue
98
119
  } = formik;
120
+ const retrySubmit = _react.default.useCallback(() => {
121
+ setSubmissionError(null);
122
+ void formik.submitForm();
123
+ }, [formik]);
99
124
  const currentPage = _react.default.useMemo(() => pages[currentPageIndex], [pages, currentPageIndex]);
100
125
  const enabledItems = _react.default.useMemo(() => currentPage ? _conditionUtils.ConditionUtils.getEnabledItemsForPage(currentPage, values) : [], [currentPage, values]);
101
126
  (0, _index.useInitialSelectedValues)(pages, values, setFieldValue);
@@ -113,6 +138,8 @@ const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE_
113
138
  currentPageIndex,
114
139
  currentItemIndex,
115
140
  errorMessage,
141
+ submissionError,
142
+ retrySubmit,
116
143
  pages,
117
144
  allItems,
118
145
  setCurrentItemIndex,
@@ -120,7 +147,7 @@ const QuestionnaireFormProvider = exports.QuestionnaireFormProvider = /*#__PURE_
120
147
  setErrorMessage,
121
148
  paged,
122
149
  ...formik
123
- }), [questionnaire, currentItem, currentPage, currentPageIndex, currentItemIndex, errorMessage, pages, allItems, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage, paged, formik]);
150
+ }), [questionnaire, currentItem, currentPage, currentPageIndex, currentItemIndex, errorMessage, submissionError, retrySubmit, pages, allItems, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage, paged, formik]);
124
151
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_questionnaireFormContext.QuestionnaireFormContext.Provider, {
125
152
  value: contextValue,
126
153
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_questionnaireNavigationProvider.QuestionnaireNavigationProvider, {
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_formik","_react","_interopRequireDefault","_questionnaireFormContext","_index","_conditionUtils","_formUtils","_formValidation","_questionnaireSubmitUtils","_questionnaireNavigationProvider","_jsxRuntime","e","__esModule","default","QuestionnaireFormProvider","exports","React","memo","children","questionnaire","initialValues","_initialValues","onSubmit","onSuccess","onError","paged","client","useClient","currentPageIndex","setCurrentPageIndex","useState","currentItemIndex","setCurrentItemIndex","errorMessage","setErrorMessage","pages","useMemo","FormUtils","extractPagesFromQuestionnaire","initializeDefaultValues","handleSubmit","useCallback","values","formikHelpers","validationResult","FormValidation","validateRequiredFields","isValid","pageIndex","itemIndex","firstUnansweredLocation","currentLinkId","activeProfile","getProfileAsync","Error","response","QuestionnaireSubmitUtils","createQuestionnaireResponse","subject","reference","getReferenceString","createdResponse","createResource","error","typedError","message","allItems","flatMap","page","item","formik","useFormik","validateOnBlur","enableReinitialize","validate","cleanedValues","hasChanges","forEach","linkId","enableWhen","length","undefined","ConditionUtils","isItemEnabled","setValues","Object","some","value","setFieldError","setFieldValue","currentPage","enabledItems","getEnabledItemsForPage","useInitialSelectedValues","currentItem","allEnabledItems","useEffect","contextValue","jsx","QuestionnaireFormContext","Provider","QuestionnaireNavigationProvider"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-form-provider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_formik","_react","_interopRequireDefault","_questionnaireFormContext","_index","_conditionUtils","_formUtils","_formValidation","_questionnaireSubmitUtils","_questionnaireNavigationProvider","_jsxRuntime","e","__esModule","default","QuestionnaireFormProvider","exports","React","memo","children","questionnaire","initialValues","_initialValues","onSubmit","onSuccess","onError","paged","client","useClient","currentPageIndex","setCurrentPageIndex","useState","currentItemIndex","setCurrentItemIndex","errorMessage","setErrorMessage","submissionError","setSubmissionError","submissionInFlight","useRef","submissionIdentifier","pages","useMemo","FormUtils","extractPagesFromQuestionnaire","initializeDefaultValues","handleSubmit","useCallback","values","formikHelpers","current","validationResult","FormValidation","validateRequiredFields","isValid","pageIndex","itemIndex","firstUnansweredLocation","currentLinkId","activeProfile","getProfileAsync","Error","response","QuestionnaireSubmitUtils","createQuestionnaireResponse","subject","reference","getReferenceString","id","Date","now","Math","random","toString","slice","identifierValue","identifierSystem","identifier","system","value","createdResponse","createResourceIfNoneExist","error","typedError","message","startsWith","allItems","flatMap","page","item","formik","useFormik","validateOnBlur","enableReinitialize","validate","cleanedValues","hasChanges","forEach","linkId","enableWhen","length","undefined","ConditionUtils","isItemEnabled","setValues","Object","some","setFieldError","setFieldValue","retrySubmit","submitForm","currentPage","enabledItems","getEnabledItemsForPage","useInitialSelectedValues","currentItem","allEnabledItems","useEffect","contextValue","jsx","QuestionnaireFormContext","Provider","QuestionnaireNavigationProvider"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-form-provider.tsx"],"mappings":"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","ignoreList":[]}