@ovok/native 1.6.50 → 1.6.52

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 (510) hide show
  1. package/README.md +21 -0
  2. package/lib/commonjs/index.js +18 -7
  3. package/lib/commonjs/index.js.map +1 -1
  4. package/lib/commonjs/modules/auth/default-translation.js +6 -1
  5. package/lib/commonjs/modules/auth/default-translation.js.map +1 -1
  6. package/lib/commonjs/modules/auth/delete-account-button/components/delete-account-button.js +9 -14
  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-auth-action.js +41 -0
  9. package/lib/commonjs/modules/auth/hooks/use-auth-action.js.map +1 -0
  10. package/lib/commonjs/modules/auth/hooks/use-delete-account.js +27 -0
  11. package/lib/commonjs/modules/auth/hooks/use-delete-account.js.map +1 -0
  12. package/lib/commonjs/modules/auth/hooks/use-session.js +14 -86
  13. package/lib/commonjs/modules/auth/hooks/use-session.js.map +1 -1
  14. package/lib/commonjs/modules/auth/hooks/use-sign-in.js +66 -0
  15. package/lib/commonjs/modules/auth/hooks/use-sign-in.js.map +1 -0
  16. package/lib/commonjs/modules/auth/hooks/use-sign-out.js +15 -0
  17. package/lib/commonjs/modules/auth/hooks/use-sign-out.js.map +1 -0
  18. package/lib/commonjs/modules/auth/hooks/use-social-sign-in.js +92 -0
  19. package/lib/commonjs/modules/auth/hooks/use-social-sign-in.js.map +1 -0
  20. package/lib/commonjs/modules/auth/index.js +55 -0
  21. package/lib/commonjs/modules/auth/index.js.map +1 -1
  22. package/lib/commonjs/modules/auth/logout-button/components/logout-button.js +11 -16
  23. package/lib/commonjs/modules/auth/logout-button/components/logout-button.js.map +1 -1
  24. package/lib/commonjs/modules/auth/profile/components/profile-form-provider.js +5 -3
  25. package/lib/commonjs/modules/auth/profile/components/profile-form-provider.js.map +1 -1
  26. package/lib/commonjs/modules/auth/profile/contexts/profile-form-context.js +1 -1
  27. package/lib/commonjs/modules/auth/profile/contexts/profile-form-context.js.map +1 -1
  28. package/lib/commonjs/modules/auth/profile/hooks/use-profile-form.js +1 -1
  29. package/lib/commonjs/modules/auth/profile/hooks/use-profile-form.js.map +1 -1
  30. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +6 -4
  31. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  32. package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js +2 -4
  33. package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js.map +1 -1
  34. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js +6 -4
  35. package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  36. package/lib/commonjs/modules/auth/reset-password/contexts/reset-password-form-context.js +1 -1
  37. package/lib/commonjs/modules/auth/reset-password/contexts/reset-password-form-context.js.map +1 -1
  38. package/lib/commonjs/modules/auth/reset-password/hooks/use-reset-password-form.js +1 -1
  39. package/lib/commonjs/modules/auth/reset-password/hooks/use-reset-password-form.js.map +1 -1
  40. package/lib/commonjs/modules/auth/session/logout-session.js +29 -0
  41. package/lib/commonjs/modules/auth/session/logout-session.js.map +1 -0
  42. package/lib/commonjs/modules/auth/session/session-store.js +152 -0
  43. package/lib/commonjs/modules/auth/session/session-store.js.map +1 -0
  44. package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js +25 -41
  45. package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
  46. package/lib/commonjs/modules/auth/sign-in/components/social-logins/apple-login-button.js +13 -12
  47. package/lib/commonjs/modules/auth/sign-in/components/social-logins/apple-login-button.js.map +1 -1
  48. package/lib/commonjs/modules/auth/sign-in/components/social-logins/google-login-button.js +4 -4
  49. package/lib/commonjs/modules/auth/sign-in/components/social-logins/google-login-button.js.map +1 -1
  50. package/lib/commonjs/modules/auth/sign-in/contexts/login-form-context.js +1 -1
  51. package/lib/commonjs/modules/auth/sign-in/contexts/login-form-context.js.map +1 -1
  52. package/lib/commonjs/modules/auth/sign-in/hooks/use-login-form.js +1 -1
  53. package/lib/commonjs/modules/auth/sign-in/hooks/use-login-form.js.map +1 -1
  54. package/lib/commonjs/modules/bt-device/components/device-list-provider.js +5 -4
  55. package/lib/commonjs/modules/bt-device/components/device-list-provider.js.map +1 -1
  56. package/lib/commonjs/modules/bt-device/components/hooks/use-device-list.js +1 -1
  57. package/lib/commonjs/modules/bt-device/components/hooks/use-device-list.js.map +1 -1
  58. package/lib/commonjs/modules/bt-device/contexts/device-list-context.js +1 -4
  59. package/lib/commonjs/modules/bt-device/contexts/device-list-context.js.map +1 -1
  60. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +176 -84
  61. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  62. package/lib/commonjs/modules/bt-management/components/bt-provider.js +3 -2
  63. package/lib/commonjs/modules/bt-management/components/bt-provider.js.map +1 -1
  64. package/lib/commonjs/modules/bt-management/hooks/runtime-context.js +146 -14
  65. package/lib/commonjs/modules/bt-management/hooks/runtime-context.js.map +1 -1
  66. package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js +17 -11
  67. package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js.map +1 -1
  68. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-permission.js +100 -0
  69. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-permission.js.map +1 -0
  70. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js +13 -26
  71. package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -1
  72. package/lib/commonjs/modules/bt-management/hooks/use-bt-device.js +148 -0
  73. package/lib/commonjs/modules/bt-management/hooks/use-bt-device.js.map +1 -0
  74. package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js +10 -26
  75. package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js.map +1 -1
  76. package/lib/commonjs/modules/bt-management/hooks/use-health-import.js +7 -76
  77. package/lib/commonjs/modules/bt-management/hooks/use-health-import.js.map +1 -1
  78. package/lib/commonjs/modules/bt-management/hooks/use-measurements.js +43 -57
  79. package/lib/commonjs/modules/bt-management/hooks/use-measurements.js.map +1 -1
  80. package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js +12 -16
  81. package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js.map +1 -1
  82. package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js +31 -12
  83. package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js.map +1 -1
  84. package/lib/commonjs/modules/bt-management/hooks/use-request-permissions.js +12 -55
  85. package/lib/commonjs/modules/bt-management/hooks/use-request-permissions.js.map +1 -1
  86. package/lib/commonjs/modules/bt-management/hooks/use-scan-control.js +6 -4
  87. package/lib/commonjs/modules/bt-management/hooks/use-scan-control.js.map +1 -1
  88. package/lib/commonjs/modules/bt-management/index.js +133 -11
  89. package/lib/commonjs/modules/bt-management/index.js.map +1 -1
  90. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-command-builders.js +4 -2
  91. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-command-builders.js.map +1 -1
  92. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-command-sequencer.js +30 -6
  93. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-command-sequencer.js.map +1 -1
  94. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-frame-parser.js +16 -27
  95. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01-frame-parser.js.map +1 -1
  96. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01.device.js +26 -33
  97. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01.device.js.map +1 -1
  98. package/lib/commonjs/modules/bt-management/services/devices/bc01/bc01.main-services.js +1 -1
  99. package/lib/commonjs/modules/cms/hooks/use-cms-content.js +50 -0
  100. package/lib/commonjs/modules/cms/hooks/use-cms-content.js.map +1 -0
  101. package/lib/commonjs/modules/cms/hooks/use-cms-locale.js +20 -0
  102. package/lib/commonjs/modules/cms/hooks/use-cms-locale.js.map +1 -0
  103. package/lib/commonjs/modules/cms/hooks/use-cms-translations.js +50 -0
  104. package/lib/commonjs/modules/cms/hooks/use-cms-translations.js.map +1 -0
  105. package/lib/commonjs/modules/cms/index.js +39 -0
  106. package/lib/commonjs/modules/cms/index.js.map +1 -0
  107. package/lib/commonjs/modules/cms/merge-cms-translations.js +49 -0
  108. package/lib/commonjs/modules/cms/merge-cms-translations.js.map +1 -0
  109. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js +23 -18
  110. package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  111. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js +19 -18
  112. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  113. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-utils.js +20 -0
  114. package/lib/commonjs/modules/data-sync/components/apple/apple-health-authorization-utils.js.map +1 -0
  115. package/lib/commonjs/modules/data-sync/contexts/health-authorization-context.js +18 -0
  116. package/lib/commonjs/modules/data-sync/contexts/health-authorization-context.js.map +1 -0
  117. package/lib/commonjs/modules/data-sync/hooks/use-health-import.js +81 -0
  118. package/lib/commonjs/modules/data-sync/hooks/use-health-import.js.map +1 -0
  119. package/lib/commonjs/modules/data-sync/index.js +37 -0
  120. package/lib/commonjs/modules/data-sync/index.js.map +1 -1
  121. package/lib/commonjs/modules/helpers/hooks/use-shallow-stable-value.js +20 -0
  122. package/lib/commonjs/modules/helpers/hooks/use-shallow-stable-value.js.map +1 -0
  123. package/lib/commonjs/modules/language-switcher/components/language-switcher.js +12 -4
  124. package/lib/commonjs/modules/language-switcher/components/language-switcher.js.map +1 -1
  125. package/lib/commonjs/modules/language-switcher/components/option/context/language-option-context.js +1 -1
  126. package/lib/commonjs/modules/language-switcher/components/option/context/language-option-context.js.map +1 -1
  127. package/lib/commonjs/modules/language-switcher/components/option/language-switcher-option.js +5 -4
  128. package/lib/commonjs/modules/language-switcher/components/option/language-switcher-option.js.map +1 -1
  129. package/lib/commonjs/modules/socket/components/socket-provider.js +78 -73
  130. package/lib/commonjs/modules/socket/components/socket-provider.js.map +1 -1
  131. package/lib/commonjs/modules/tab/components/tab-provider.js +12 -1
  132. package/lib/commonjs/modules/tab/components/tab-provider.js.map +1 -1
  133. package/lib/commonjs/modules/tab/contexts/tab-context.js +1 -1
  134. package/lib/commonjs/modules/tab/contexts/tab-context.js.map +1 -1
  135. package/lib/commonjs/modules/tab/hooks/use-tab.js +1 -1
  136. package/lib/commonjs/modules/tab/hooks/use-tab.js.map +1 -1
  137. package/lib/commonjs/modules/ui/components/health-import-card.js +2 -3
  138. package/lib/commonjs/modules/ui/components/health-import-card.js.map +1 -1
  139. package/lib/commonjs/modules/ui/components/pairing-flow.js.map +1 -1
  140. package/lib/module/index.js +1 -0
  141. package/lib/module/index.js.map +1 -1
  142. package/lib/module/modules/auth/default-translation.js +3 -1
  143. package/lib/module/modules/auth/default-translation.js.map +1 -1
  144. package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js +9 -14
  145. package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js.map +1 -1
  146. package/lib/module/modules/auth/hooks/use-auth-action.js +36 -0
  147. package/lib/module/modules/auth/hooks/use-auth-action.js.map +1 -0
  148. package/lib/module/modules/auth/hooks/use-delete-account.js +22 -0
  149. package/lib/module/modules/auth/hooks/use-delete-account.js.map +1 -0
  150. package/lib/module/modules/auth/hooks/use-session.js +17 -88
  151. package/lib/module/modules/auth/hooks/use-session.js.map +1 -1
  152. package/lib/module/modules/auth/hooks/use-sign-in.js +61 -0
  153. package/lib/module/modules/auth/hooks/use-sign-in.js.map +1 -0
  154. package/lib/module/modules/auth/hooks/use-sign-out.js +10 -0
  155. package/lib/module/modules/auth/hooks/use-sign-out.js.map +1 -0
  156. package/lib/module/modules/auth/hooks/use-social-sign-in.js +86 -0
  157. package/lib/module/modules/auth/hooks/use-social-sign-in.js.map +1 -0
  158. package/lib/module/modules/auth/index.js +5 -0
  159. package/lib/module/modules/auth/index.js.map +1 -1
  160. package/lib/module/modules/auth/logout-button/components/logout-button.js +11 -16
  161. package/lib/module/modules/auth/logout-button/components/logout-button.js.map +1 -1
  162. package/lib/module/modules/auth/profile/components/profile-form-provider.js +5 -3
  163. package/lib/module/modules/auth/profile/components/profile-form-provider.js.map +1 -1
  164. package/lib/module/modules/auth/profile/contexts/profile-form-context.js +1 -1
  165. package/lib/module/modules/auth/profile/contexts/profile-form-context.js.map +1 -1
  166. package/lib/module/modules/auth/profile/hooks/use-profile-form.js +1 -1
  167. package/lib/module/modules/auth/profile/hooks/use-profile-form.js.map +1 -1
  168. package/lib/module/modules/auth/register/components/form/register-form-provider.js +6 -4
  169. package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  170. package/lib/module/modules/auth/reset-password/components/form/inputs.js +2 -4
  171. package/lib/module/modules/auth/reset-password/components/form/inputs.js.map +1 -1
  172. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js +6 -4
  173. package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
  174. package/lib/module/modules/auth/reset-password/contexts/reset-password-form-context.js +1 -1
  175. package/lib/module/modules/auth/reset-password/contexts/reset-password-form-context.js.map +1 -1
  176. package/lib/module/modules/auth/reset-password/hooks/use-reset-password-form.js +1 -1
  177. package/lib/module/modules/auth/reset-password/hooks/use-reset-password-form.js.map +1 -1
  178. package/lib/module/modules/auth/session/logout-session.js +24 -0
  179. package/lib/module/modules/auth/session/logout-session.js.map +1 -0
  180. package/lib/module/modules/auth/session/session-store.js +148 -0
  181. package/lib/module/modules/auth/session/session-store.js.map +1 -0
  182. package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js +25 -41
  183. package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
  184. package/lib/module/modules/auth/sign-in/components/social-logins/apple-login-button.js +13 -12
  185. package/lib/module/modules/auth/sign-in/components/social-logins/apple-login-button.js.map +1 -1
  186. package/lib/module/modules/auth/sign-in/components/social-logins/google-login-button.js +4 -4
  187. package/lib/module/modules/auth/sign-in/components/social-logins/google-login-button.js.map +1 -1
  188. package/lib/module/modules/auth/sign-in/contexts/login-form-context.js +1 -1
  189. package/lib/module/modules/auth/sign-in/contexts/login-form-context.js.map +1 -1
  190. package/lib/module/modules/auth/sign-in/hooks/use-login-form.js +1 -1
  191. package/lib/module/modules/auth/sign-in/hooks/use-login-form.js.map +1 -1
  192. package/lib/module/modules/bt-device/components/device-list-provider.js +5 -4
  193. package/lib/module/modules/bt-device/components/device-list-provider.js.map +1 -1
  194. package/lib/module/modules/bt-device/components/hooks/use-device-list.js +1 -1
  195. package/lib/module/modules/bt-device/components/hooks/use-device-list.js.map +1 -1
  196. package/lib/module/modules/bt-device/contexts/device-list-context.js +1 -4
  197. package/lib/module/modules/bt-device/contexts/device-list-context.js.map +1 -1
  198. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +175 -84
  199. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  200. package/lib/module/modules/bt-management/components/bt-provider.js +3 -2
  201. package/lib/module/modules/bt-management/components/bt-provider.js.map +1 -1
  202. package/lib/module/modules/bt-management/hooks/runtime-context.js +144 -13
  203. package/lib/module/modules/bt-management/hooks/runtime-context.js.map +1 -1
  204. package/lib/module/modules/bt-management/hooks/use-background-sync.js +17 -11
  205. package/lib/module/modules/bt-management/hooks/use-background-sync.js.map +1 -1
  206. package/lib/module/modules/bt-management/hooks/use-bluetooth-permission.js +94 -0
  207. package/lib/module/modules/bt-management/hooks/use-bluetooth-permission.js.map +1 -0
  208. package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js +13 -26
  209. package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -1
  210. package/lib/module/modules/bt-management/hooks/use-bt-device.js +142 -0
  211. package/lib/module/modules/bt-management/hooks/use-bt-device.js.map +1 -0
  212. package/lib/module/modules/bt-management/hooks/use-device-connection.js +11 -26
  213. package/lib/module/modules/bt-management/hooks/use-device-connection.js.map +1 -1
  214. package/lib/module/modules/bt-management/hooks/use-health-import.js +2 -73
  215. package/lib/module/modules/bt-management/hooks/use-health-import.js.map +1 -1
  216. package/lib/module/modules/bt-management/hooks/use-measurements.js +44 -58
  217. package/lib/module/modules/bt-management/hooks/use-measurements.js.map +1 -1
  218. package/lib/module/modules/bt-management/hooks/use-nearby-devices.js +13 -17
  219. package/lib/module/modules/bt-management/hooks/use-nearby-devices.js.map +1 -1
  220. package/lib/module/modules/bt-management/hooks/use-paired-devices.js +31 -12
  221. package/lib/module/modules/bt-management/hooks/use-paired-devices.js.map +1 -1
  222. package/lib/module/modules/bt-management/hooks/use-request-permissions.js +12 -54
  223. package/lib/module/modules/bt-management/hooks/use-request-permissions.js.map +1 -1
  224. package/lib/module/modules/bt-management/hooks/use-scan-control.js +6 -4
  225. package/lib/module/modules/bt-management/hooks/use-scan-control.js.map +1 -1
  226. package/lib/module/modules/bt-management/index.js +8 -1
  227. package/lib/module/modules/bt-management/index.js.map +1 -1
  228. package/lib/module/modules/bt-management/services/devices/bc01/bc01-command-builders.js +3 -2
  229. package/lib/module/modules/bt-management/services/devices/bc01/bc01-command-builders.js.map +1 -1
  230. package/lib/module/modules/bt-management/services/devices/bc01/bc01-command-sequencer.js +31 -7
  231. package/lib/module/modules/bt-management/services/devices/bc01/bc01-command-sequencer.js.map +1 -1
  232. package/lib/module/modules/bt-management/services/devices/bc01/bc01-frame-parser.js +16 -26
  233. package/lib/module/modules/bt-management/services/devices/bc01/bc01-frame-parser.js.map +1 -1
  234. package/lib/module/modules/bt-management/services/devices/bc01/bc01.device.js +27 -34
  235. package/lib/module/modules/bt-management/services/devices/bc01/bc01.device.js.map +1 -1
  236. package/lib/module/modules/bt-management/services/devices/bc01/bc01.main-services.js +1 -1
  237. package/lib/module/modules/cms/hooks/use-cms-content.js +44 -0
  238. package/lib/module/modules/cms/hooks/use-cms-content.js.map +1 -0
  239. package/lib/module/modules/cms/hooks/use-cms-locale.js +16 -0
  240. package/lib/module/modules/cms/hooks/use-cms-locale.js.map +1 -0
  241. package/lib/module/modules/cms/hooks/use-cms-translations.js +45 -0
  242. package/lib/module/modules/cms/hooks/use-cms-translations.js.map +1 -0
  243. package/lib/module/modules/cms/index.js +6 -0
  244. package/lib/module/modules/cms/index.js.map +1 -0
  245. package/lib/module/modules/cms/merge-cms-translations.js +46 -0
  246. package/lib/module/modules/cms/merge-cms-translations.js.map +1 -0
  247. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js +23 -18
  248. package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
  249. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js +18 -17
  250. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-provider.js.map +1 -1
  251. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-utils.js +16 -0
  252. package/lib/module/modules/data-sync/components/apple/apple-health-authorization-utils.js.map +1 -0
  253. package/lib/module/modules/data-sync/contexts/health-authorization-context.js +13 -0
  254. package/lib/module/modules/data-sync/contexts/health-authorization-context.js.map +1 -0
  255. package/lib/module/modules/data-sync/hooks/use-health-import.js +76 -0
  256. package/lib/module/modules/data-sync/hooks/use-health-import.js.map +1 -0
  257. package/lib/module/modules/data-sync/index.js +2 -0
  258. package/lib/module/modules/data-sync/index.js.map +1 -1
  259. package/lib/module/modules/helpers/hooks/use-shallow-stable-value.js +14 -0
  260. package/lib/module/modules/helpers/hooks/use-shallow-stable-value.js.map +1 -0
  261. package/lib/module/modules/language-switcher/components/language-switcher.js +11 -4
  262. package/lib/module/modules/language-switcher/components/language-switcher.js.map +1 -1
  263. package/lib/module/modules/language-switcher/components/option/context/language-option-context.js +1 -1
  264. package/lib/module/modules/language-switcher/components/option/context/language-option-context.js.map +1 -1
  265. package/lib/module/modules/language-switcher/components/option/language-switcher-option.js +5 -4
  266. package/lib/module/modules/language-switcher/components/option/language-switcher-option.js.map +1 -1
  267. package/lib/module/modules/socket/components/socket-provider.js +78 -73
  268. package/lib/module/modules/socket/components/socket-provider.js.map +1 -1
  269. package/lib/module/modules/tab/components/tab-provider.js +11 -1
  270. package/lib/module/modules/tab/components/tab-provider.js.map +1 -1
  271. package/lib/module/modules/tab/contexts/tab-context.js +1 -1
  272. package/lib/module/modules/tab/contexts/tab-context.js.map +1 -1
  273. package/lib/module/modules/tab/hooks/use-tab.js +1 -1
  274. package/lib/module/modules/tab/hooks/use-tab.js.map +1 -1
  275. package/lib/module/modules/ui/components/health-import-card.js +1 -2
  276. package/lib/module/modules/ui/components/health-import-card.js.map +1 -1
  277. package/lib/module/modules/ui/components/pairing-flow.js.map +1 -1
  278. package/lib/typescript/commonjs/src/index.d.ts +1 -0
  279. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts +53 -1
  281. package/lib/typescript/commonjs/src/modules/auth/default-translation.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
  283. package/lib/typescript/commonjs/src/modules/auth/hooks/use-auth-action.d.ts +13 -0
  284. package/lib/typescript/commonjs/src/modules/auth/hooks/use-auth-action.d.ts.map +1 -0
  285. package/lib/typescript/commonjs/src/modules/auth/hooks/use-delete-account.d.ts +8 -0
  286. package/lib/typescript/commonjs/src/modules/auth/hooks/use-delete-account.d.ts.map +1 -0
  287. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts +6 -4
  288. package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  289. package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-in.d.ts +24 -0
  290. package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-in.d.ts.map +1 -0
  291. package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-out.d.ts +4 -0
  292. package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-out.d.ts.map +1 -0
  293. package/lib/typescript/commonjs/src/modules/auth/hooks/use-social-sign-in.d.ts +14 -0
  294. package/lib/typescript/commonjs/src/modules/auth/hooks/use-social-sign-in.d.ts.map +1 -0
  295. package/lib/typescript/commonjs/src/modules/auth/index.d.ts +5 -0
  296. package/lib/typescript/commonjs/src/modules/auth/index.d.ts.map +1 -1
  297. package/lib/typescript/commonjs/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/src/modules/auth/profile/components/profile-form-provider.d.ts.map +1 -1
  299. package/lib/typescript/commonjs/src/modules/auth/profile/contexts/profile-form-context.d.ts +1 -1
  300. package/lib/typescript/commonjs/src/modules/auth/profile/contexts/profile-form-context.d.ts.map +1 -1
  301. package/lib/typescript/commonjs/src/modules/auth/profile/hooks/use-profile-form.d.ts.map +1 -1
  302. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  303. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
  304. package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  305. package/lib/typescript/commonjs/src/modules/auth/reset-password/contexts/reset-password-form-context.d.ts +1 -1
  306. package/lib/typescript/commonjs/src/modules/auth/reset-password/contexts/reset-password-form-context.d.ts.map +1 -1
  307. package/lib/typescript/commonjs/src/modules/auth/session/logout-session.d.ts +6 -0
  308. package/lib/typescript/commonjs/src/modules/auth/session/logout-session.d.ts.map +1 -0
  309. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts +21 -0
  310. package/lib/typescript/commonjs/src/modules/auth/session/session-store.d.ts.map +1 -0
  311. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
  312. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/social-logins/apple-login-button.d.ts.map +1 -1
  313. package/lib/typescript/commonjs/src/modules/auth/sign-in/components/social-logins/google-login-button.d.ts.map +1 -1
  314. package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts +1 -1
  315. package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
  316. package/lib/typescript/commonjs/src/modules/bt-device/components/device-list-provider.d.ts.map +1 -1
  317. package/lib/typescript/commonjs/src/modules/bt-device/components/hooks/use-device-list.d.ts +1 -5
  318. package/lib/typescript/commonjs/src/modules/bt-device/components/hooks/use-device-list.d.ts.map +1 -1
  319. package/lib/typescript/commonjs/src/modules/bt-device/contexts/device-list-context.d.ts +3 -2
  320. package/lib/typescript/commonjs/src/modules/bt-device/contexts/device-list-context.d.ts.map +1 -1
  321. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts +1 -1
  322. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  323. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider.d.ts +1 -1
  324. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider.d.ts.map +1 -1
  325. package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts +40 -9
  326. package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -1
  327. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -1
  328. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-permission.d.ts +17 -0
  329. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-permission.d.ts.map +1 -0
  330. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -1
  331. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bt-device.d.ts +31 -0
  332. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bt-device.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts +2 -2
  334. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -1
  335. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts +2 -15
  336. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -1
  337. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -1
  338. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -1
  339. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -1
  340. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-request-permissions.d.ts +1 -0
  341. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-request-permissions.d.ts.map +1 -1
  342. package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-scan-control.d.ts.map +1 -1
  343. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +6 -1
  344. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
  345. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-command-builders.d.ts +2 -1
  346. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-command-builders.d.ts.map +1 -1
  347. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-command-sequencer.d.ts +3 -6
  348. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-command-sequencer.d.ts.map +1 -1
  349. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-frame-parser.d.ts +7 -17
  350. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01-frame-parser.d.ts.map +1 -1
  351. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01.device.d.ts +5 -2
  352. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01.device.d.ts.map +1 -1
  353. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bc01/bc01.main-services.d.ts +1 -1
  354. package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-props.d.ts +2 -0
  355. package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-props.d.ts.map +1 -1
  356. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-content.d.ts +9 -0
  357. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-content.d.ts.map +1 -0
  358. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-locale.d.ts +7 -0
  359. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-locale.d.ts.map +1 -0
  360. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-translations.d.ts +10 -0
  361. package/lib/typescript/commonjs/src/modules/cms/hooks/use-cms-translations.d.ts.map +1 -0
  362. package/lib/typescript/commonjs/src/modules/cms/index.d.ts +4 -0
  363. package/lib/typescript/commonjs/src/modules/cms/index.d.ts.map +1 -0
  364. package/lib/typescript/commonjs/src/modules/cms/merge-cms-translations.d.ts +13 -0
  365. package/lib/typescript/commonjs/src/modules/cms/merge-cms-translations.d.ts.map +1 -0
  366. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts +1 -1
  367. package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  368. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  369. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-utils.d.ts +4 -0
  370. package/lib/typescript/commonjs/src/modules/data-sync/components/apple/apple-health-authorization-utils.d.ts.map +1 -0
  371. package/lib/typescript/commonjs/src/modules/data-sync/components/data-sync.d.ts +1 -1
  372. package/lib/typescript/commonjs/src/modules/data-sync/contexts/health-authorization-context.d.ts +17 -0
  373. package/lib/typescript/commonjs/src/modules/data-sync/contexts/health-authorization-context.d.ts.map +1 -0
  374. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-health-import.d.ts +17 -0
  375. package/lib/typescript/commonjs/src/modules/data-sync/hooks/use-health-import.d.ts.map +1 -0
  376. package/lib/typescript/commonjs/src/modules/data-sync/index.d.ts +3 -0
  377. package/lib/typescript/commonjs/src/modules/data-sync/index.d.ts.map +1 -1
  378. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +1 -0
  379. package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  380. package/lib/typescript/commonjs/src/modules/helpers/hooks/use-shallow-stable-value.d.ts +2 -0
  381. package/lib/typescript/commonjs/src/modules/helpers/hooks/use-shallow-stable-value.d.ts.map +1 -0
  382. package/lib/typescript/commonjs/src/modules/language-switcher/components/language-switcher.d.ts +6 -5
  383. package/lib/typescript/commonjs/src/modules/language-switcher/components/language-switcher.d.ts.map +1 -1
  384. package/lib/typescript/commonjs/src/modules/language-switcher/components/option/context/language-option-context.d.ts +1 -1
  385. package/lib/typescript/commonjs/src/modules/language-switcher/components/option/context/language-option-context.d.ts.map +1 -1
  386. package/lib/typescript/commonjs/src/modules/socket/components/socket-provider.d.ts.map +1 -1
  387. package/lib/typescript/commonjs/src/modules/tab/components/tab-provider.d.ts +2 -1
  388. package/lib/typescript/commonjs/src/modules/tab/components/tab-provider.d.ts.map +1 -1
  389. package/lib/typescript/commonjs/src/modules/tab/contexts/tab-context.d.ts +1 -1
  390. package/lib/typescript/commonjs/src/modules/tab/contexts/tab-context.d.ts.map +1 -1
  391. package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts +1 -2
  392. package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts.map +1 -1
  393. package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts.map +1 -1
  394. package/lib/typescript/module/src/index.d.ts +1 -0
  395. package/lib/typescript/module/src/index.d.ts.map +1 -1
  396. package/lib/typescript/module/src/modules/auth/default-translation.d.ts +53 -1
  397. package/lib/typescript/module/src/modules/auth/default-translation.d.ts.map +1 -1
  398. package/lib/typescript/module/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
  399. package/lib/typescript/module/src/modules/auth/hooks/use-auth-action.d.ts +13 -0
  400. package/lib/typescript/module/src/modules/auth/hooks/use-auth-action.d.ts.map +1 -0
  401. package/lib/typescript/module/src/modules/auth/hooks/use-delete-account.d.ts +8 -0
  402. package/lib/typescript/module/src/modules/auth/hooks/use-delete-account.d.ts.map +1 -0
  403. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts +6 -4
  404. package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts.map +1 -1
  405. package/lib/typescript/module/src/modules/auth/hooks/use-sign-in.d.ts +24 -0
  406. package/lib/typescript/module/src/modules/auth/hooks/use-sign-in.d.ts.map +1 -0
  407. package/lib/typescript/module/src/modules/auth/hooks/use-sign-out.d.ts +4 -0
  408. package/lib/typescript/module/src/modules/auth/hooks/use-sign-out.d.ts.map +1 -0
  409. package/lib/typescript/module/src/modules/auth/hooks/use-social-sign-in.d.ts +14 -0
  410. package/lib/typescript/module/src/modules/auth/hooks/use-social-sign-in.d.ts.map +1 -0
  411. package/lib/typescript/module/src/modules/auth/index.d.ts +5 -0
  412. package/lib/typescript/module/src/modules/auth/index.d.ts.map +1 -1
  413. package/lib/typescript/module/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
  414. package/lib/typescript/module/src/modules/auth/profile/components/profile-form-provider.d.ts.map +1 -1
  415. package/lib/typescript/module/src/modules/auth/profile/contexts/profile-form-context.d.ts +1 -1
  416. package/lib/typescript/module/src/modules/auth/profile/contexts/profile-form-context.d.ts.map +1 -1
  417. package/lib/typescript/module/src/modules/auth/profile/hooks/use-profile-form.d.ts.map +1 -1
  418. package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  419. package/lib/typescript/module/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
  420. package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
  421. package/lib/typescript/module/src/modules/auth/reset-password/contexts/reset-password-form-context.d.ts +1 -1
  422. package/lib/typescript/module/src/modules/auth/reset-password/contexts/reset-password-form-context.d.ts.map +1 -1
  423. package/lib/typescript/module/src/modules/auth/session/logout-session.d.ts +6 -0
  424. package/lib/typescript/module/src/modules/auth/session/logout-session.d.ts.map +1 -0
  425. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts +21 -0
  426. package/lib/typescript/module/src/modules/auth/session/session-store.d.ts.map +1 -0
  427. package/lib/typescript/module/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
  428. package/lib/typescript/module/src/modules/auth/sign-in/components/social-logins/apple-login-button.d.ts.map +1 -1
  429. package/lib/typescript/module/src/modules/auth/sign-in/components/social-logins/google-login-button.d.ts.map +1 -1
  430. package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts +1 -1
  431. package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
  432. package/lib/typescript/module/src/modules/bt-device/components/device-list-provider.d.ts.map +1 -1
  433. package/lib/typescript/module/src/modules/bt-device/components/hooks/use-device-list.d.ts +1 -5
  434. package/lib/typescript/module/src/modules/bt-device/components/hooks/use-device-list.d.ts.map +1 -1
  435. package/lib/typescript/module/src/modules/bt-device/contexts/device-list-context.d.ts +3 -2
  436. package/lib/typescript/module/src/modules/bt-device/contexts/device-list-context.d.ts.map +1 -1
  437. package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts +1 -1
  438. package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  439. package/lib/typescript/module/src/modules/bt-management/components/bt-provider.d.ts +1 -1
  440. package/lib/typescript/module/src/modules/bt-management/components/bt-provider.d.ts.map +1 -1
  441. package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts +40 -9
  442. package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -1
  443. package/lib/typescript/module/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -1
  444. package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-permission.d.ts +17 -0
  445. package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-permission.d.ts.map +1 -0
  446. package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -1
  447. package/lib/typescript/module/src/modules/bt-management/hooks/use-bt-device.d.ts +31 -0
  448. package/lib/typescript/module/src/modules/bt-management/hooks/use-bt-device.d.ts.map +1 -0
  449. package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts +2 -2
  450. package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -1
  451. package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts +2 -15
  452. package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -1
  453. package/lib/typescript/module/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -1
  454. package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -1
  455. package/lib/typescript/module/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -1
  456. package/lib/typescript/module/src/modules/bt-management/hooks/use-request-permissions.d.ts +1 -0
  457. package/lib/typescript/module/src/modules/bt-management/hooks/use-request-permissions.d.ts.map +1 -1
  458. package/lib/typescript/module/src/modules/bt-management/hooks/use-scan-control.d.ts.map +1 -1
  459. package/lib/typescript/module/src/modules/bt-management/index.d.ts +6 -1
  460. package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
  461. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-command-builders.d.ts +2 -1
  462. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-command-builders.d.ts.map +1 -1
  463. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-command-sequencer.d.ts +3 -6
  464. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-command-sequencer.d.ts.map +1 -1
  465. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-frame-parser.d.ts +7 -17
  466. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01-frame-parser.d.ts.map +1 -1
  467. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01.device.d.ts +5 -2
  468. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01.device.d.ts.map +1 -1
  469. package/lib/typescript/module/src/modules/bt-management/services/devices/bc01/bc01.main-services.d.ts +1 -1
  470. package/lib/typescript/module/src/modules/bt-management/types/btprovider-props.d.ts +2 -0
  471. package/lib/typescript/module/src/modules/bt-management/types/btprovider-props.d.ts.map +1 -1
  472. package/lib/typescript/module/src/modules/cms/hooks/use-cms-content.d.ts +9 -0
  473. package/lib/typescript/module/src/modules/cms/hooks/use-cms-content.d.ts.map +1 -0
  474. package/lib/typescript/module/src/modules/cms/hooks/use-cms-locale.d.ts +7 -0
  475. package/lib/typescript/module/src/modules/cms/hooks/use-cms-locale.d.ts.map +1 -0
  476. package/lib/typescript/module/src/modules/cms/hooks/use-cms-translations.d.ts +10 -0
  477. package/lib/typescript/module/src/modules/cms/hooks/use-cms-translations.d.ts.map +1 -0
  478. package/lib/typescript/module/src/modules/cms/index.d.ts +4 -0
  479. package/lib/typescript/module/src/modules/cms/index.d.ts.map +1 -0
  480. package/lib/typescript/module/src/modules/cms/merge-cms-translations.d.ts +13 -0
  481. package/lib/typescript/module/src/modules/cms/merge-cms-translations.d.ts.map +1 -0
  482. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts +1 -1
  483. package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
  484. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-provider.d.ts.map +1 -1
  485. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-utils.d.ts +4 -0
  486. package/lib/typescript/module/src/modules/data-sync/components/apple/apple-health-authorization-utils.d.ts.map +1 -0
  487. package/lib/typescript/module/src/modules/data-sync/components/data-sync.d.ts +1 -1
  488. package/lib/typescript/module/src/modules/data-sync/contexts/health-authorization-context.d.ts +17 -0
  489. package/lib/typescript/module/src/modules/data-sync/contexts/health-authorization-context.d.ts.map +1 -0
  490. package/lib/typescript/module/src/modules/data-sync/hooks/use-health-import.d.ts +17 -0
  491. package/lib/typescript/module/src/modules/data-sync/hooks/use-health-import.d.ts.map +1 -0
  492. package/lib/typescript/module/src/modules/data-sync/index.d.ts +3 -0
  493. package/lib/typescript/module/src/modules/data-sync/index.d.ts.map +1 -1
  494. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +1 -0
  495. package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
  496. package/lib/typescript/module/src/modules/helpers/hooks/use-shallow-stable-value.d.ts +2 -0
  497. package/lib/typescript/module/src/modules/helpers/hooks/use-shallow-stable-value.d.ts.map +1 -0
  498. package/lib/typescript/module/src/modules/language-switcher/components/language-switcher.d.ts +6 -5
  499. package/lib/typescript/module/src/modules/language-switcher/components/language-switcher.d.ts.map +1 -1
  500. package/lib/typescript/module/src/modules/language-switcher/components/option/context/language-option-context.d.ts +1 -1
  501. package/lib/typescript/module/src/modules/language-switcher/components/option/context/language-option-context.d.ts.map +1 -1
  502. package/lib/typescript/module/src/modules/socket/components/socket-provider.d.ts.map +1 -1
  503. package/lib/typescript/module/src/modules/tab/components/tab-provider.d.ts +2 -1
  504. package/lib/typescript/module/src/modules/tab/components/tab-provider.d.ts.map +1 -1
  505. package/lib/typescript/module/src/modules/tab/contexts/tab-context.d.ts +1 -1
  506. package/lib/typescript/module/src/modules/tab/contexts/tab-context.d.ts.map +1 -1
  507. package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts +1 -2
  508. package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts.map +1 -1
  509. package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts.map +1 -1
  510. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["_iBtManagedDevice","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_acceptedDevice","_compiledCustomField","_customByteOrder","_customCaseKind","_customCaseSpec","_customDeviceDefinition","_customDeviceId","_customDeviceSpec","_customFieldEncoding","_customFieldSpec","_customFrameSpec","_customLepuSpec","_customMeasurement","_customMonitorSpec","_customServiceSpec","_commandSequencer","_deviceCommand","_deviceKey","_deviceKeyOf","_deviceData","_deviceStatus","_integratedDevices","_iMedicalDevice","_serviceType","_btproviderProps","_btproviderChildrenProps","_backgroundSync","_resultCallback","_errorCallback","_bluetoothError","_deviceStatusChangeCallback","_deviceConnectionEvent","_resultPolicy","_clockSync","_btManagedDevice","_bloodGlucoseDevice","_customDevice","_btManager","_backgroundBleManager","_backgroundSyncCoordinator","_fileQueueStorage","_backgroundServiceUuids","_resultIdentity","_deviceTitle","_index","_defineCustomDevice","_standardGattDevices","_bosoMedicus","_visomatComfortSoftBt","_verovalBpMonitors","_verovalFusion","_verovalDuoControlDevice","_verovalEcgDevice","_verovalActivityDevice","_verovalActivitySequencer","_verovalEcgSamples","_lepuTransports","_aojThermometers","_aojDevice","_aojCommandSequencer","_aojFrameReader","_genialT31Device","_genialT31CommandSequencer","_genialT31FrameReader","_a606Device","_a606CommandSequencer","_a606FrameReader","_a606FrameParser","_checkmeDevice","_checkmeProtocol","_checkmeSequencer","_checkmePodDevice","_checkmePodProtocol","_checkmePodSequencer","_viatomBpMonitors","_viatomOximeters","_viatomEcgRecorders","_viatomEcgFiles","_viatomLepod","_lepuDeviceNames","_lepuNameMatch","_lepuCommands","_lepuDeviceInfo","_lepuFileTransfer","_lepuResponseType","_measurementFieldCatalog","_btProvider","_bluetoothDevicePicker","_defaultPermissionFallback","_useRequestPermissions","_runtimeContext","_useBluetoothState","_useNearbyDevices","_usePairedDevices","_useDeviceConnection","_useMeasurements","_useBackgroundSync","_useHealthImport","_useScanControl"],"sourceRoot":"../../../../src","sources":["modules/bt-management/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_iBtManagedDevice","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_acceptedDevice","_compiledCustomField","_customByteOrder","_customCaseKind","_customCaseSpec","_customDeviceDefinition","_customDeviceId","_customDeviceSpec","_customFieldEncoding","_customFieldSpec","_customFrameSpec","_customLepuSpec","_customMeasurement","_customMonitorSpec","_customServiceSpec","_commandSequencer","_deviceCommand","_deviceKey","_deviceKeyOf","_deviceData","_deviceStatus","_integratedDevices","_iMedicalDevice","_serviceType","_btproviderProps","_btproviderChildrenProps","_backgroundSync","_resultCallback","_errorCallback","_bluetoothError","_deviceStatusChangeCallback","_deviceConnectionEvent","_resultPolicy","_clockSync","_btManagedDevice","_bloodGlucoseDevice","_customDevice","_btManager","_backgroundBleManager","_backgroundSyncCoordinator","_fileQueueStorage","_backgroundServiceUuids","_resultIdentity","_deviceTitle","_index","_defineCustomDevice","_standardGattDevices","_bosoMedicus","_visomatComfortSoftBt","_verovalBpMonitors","_verovalFusion","_verovalDuoControlDevice","_verovalEcgDevice","_verovalActivityDevice","_verovalActivitySequencer","_verovalEcgSamples","_lepuTransports","_aojThermometers","_aojDevice","_aojCommandSequencer","_aojFrameReader","_genialT31Device","_genialT31CommandSequencer","_genialT31FrameReader","_a606Device","_a606CommandSequencer","_a606FrameReader","_a606FrameParser","_checkmeDevice","_checkmeProtocol","_checkmeSequencer","_checkmePodDevice","_checkmePodProtocol","_checkmePodSequencer","_viatomBpMonitors","_viatomOximeters","_viatomEcgRecorders","_viatomEcgFiles","_viatomLepod","_lepuDeviceNames","_lepuNameMatch","_lepuCommands","_lepuDeviceInfo","_lepuFileTransfer","_lepuResponseType","_measurementFieldCatalog","_btProvider","_bluetoothDevicePicker","_defaultPermissionFallback","_useRequestPermissions","_useBluetoothPermission","_runtimeContext","_useBluetoothState","_useNearbyDevices","_usePairedDevices","_useDeviceConnection","_useBtDevice","_useMeasurements","_useBackgroundSync","_useHealthImport","_useScanControl"],"sourceRoot":"../../../../src","sources":["modules/bt-management/index.ts"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.buildSetTimeCommand = exports.buildResetCommand = exports.buildRequestVersionCommand = exports.buildDeleteCommand = exports.buildCommand = exports.bc401Checksum = exports.asHex = exports.RX = exports.RETRY_RECORD_GROUP = exports.RESET_DELAY_MS = exports.REQUEST_NEXT_RECORD_GROUP = exports.REQUEST_ALL = exports.RECORD_LAST_OF_SET_BIT = exports.RECORD_FLAGS_INDEX = exports.OP_REQUEST_RECORDS = exports.OP_REQUEST_QUANTITATIVE_RECORDS = exports.OP_REQUEST_COUNT = exports.FINAL_RECORD_DELAY_MS = exports.ACK_LAST_OF_SET = void 0;
6
+ exports.buildSetTimeCommand = exports.buildResetCommand = exports.buildRequestVersionCommand = exports.buildDeleteCommand = exports.buildCommand = exports.bc401ChecksumMatches = exports.bc401Checksum = exports.asHex = exports.RX = exports.RETRY_RECORD_GROUP = exports.RESET_DELAY_MS = exports.REQUEST_NEXT_RECORD_GROUP = exports.REQUEST_ALL = exports.RECORD_LAST_OF_SET_BIT = exports.RECORD_FLAGS_INDEX = exports.OP_REQUEST_RECORDS = exports.OP_REQUEST_QUANTITATIVE_RECORDS = exports.OP_REQUEST_COUNT = exports.FINAL_RECORD_DELAY_MS = exports.ACK_LAST_OF_SET = void 0;
7
7
  /** Wire constants and frame builders shared by the BC401 command sequencer. */
8
8
  const OP_RESET = 0x80;
9
9
  const OP_REQUEST_VERSION = 0x82;
@@ -34,6 +34,8 @@ const asHex = byte => (byte & 0xff).toString(16).padStart(2, "0");
34
34
  exports.asHex = asHex;
35
35
  const bc401Checksum = bytes => bytes.reduce((acc, byte) => acc + (byte & 0x7f), 0) & 0x7f;
36
36
  exports.bc401Checksum = bc401Checksum;
37
+ const bc401ChecksumMatches = bytes => bytes.length > 1 && bytes[bytes.length - 1] === bc401Checksum(bytes.slice(0, -1));
38
+ exports.bc401ChecksumMatches = bc401ChecksumMatches;
37
39
  const buildCommand = (opcode, arg) => [opcode, arg, bc401Checksum([opcode, arg])];
38
40
  exports.buildCommand = buildCommand;
39
41
  const buildResetCommand = () => [OP_RESET, 0x00];
@@ -58,7 +60,7 @@ const buildSetTimeCommand = (now, timezone = "local") => {
58
60
  seconds: now.getSeconds(),
59
61
  milliseconds: now.getMilliseconds()
60
62
  };
61
- const payload = [OP_SET_TIME, parts.year - 2000, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds, parts.milliseconds & 0xff, parts.milliseconds >> 8 & 0xff];
63
+ const payload = [OP_SET_TIME, parts.year - 2000, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds, parts.milliseconds & 0x7f, parts.milliseconds >> 8 & 0x7f];
62
64
  return [...payload, bc401Checksum(payload)];
63
65
  };
64
66
  exports.buildSetTimeCommand = buildSetTimeCommand;
@@ -1 +1 @@
1
- {"version":3,"names":["OP_RESET","OP_REQUEST_VERSION","OP_SET_TIME","OP_REQUEST_COUNT","exports","OP_REQUEST_RECORDS","OP_REQUEST_QUANTITATIVE_RECORDS","ACK_LAST_OF_SET","REQUEST_ALL","REQUEST_NEXT_RECORD_GROUP","RETRY_RECORD_GROUP","FINAL_RECORD_DELAY_MS","RESET_DELAY_MS","RX","ACK","VERSION_REPLY","TIME_SYNC_ACK","COUNT_REPLY","STORED_RECORD_URS","STORED_RECORD_PAGED","FINISH","STORED_QUANTITATIVE","STORED_QUANTITATIVE_PAGED","RECORD_FLAGS_INDEX","RECORD_LAST_OF_SET_BIT","asHex","byte","toString","padStart","bc401Checksum","bytes","reduce","acc","buildCommand","opcode","arg","buildResetCommand","buildRequestVersionCommand","buildSetTimeCommand","now","timezone","parts","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","payload","buildDeleteCommand"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-command-builders.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["OP_RESET","OP_REQUEST_VERSION","OP_SET_TIME","OP_REQUEST_COUNT","exports","OP_REQUEST_RECORDS","OP_REQUEST_QUANTITATIVE_RECORDS","ACK_LAST_OF_SET","REQUEST_ALL","REQUEST_NEXT_RECORD_GROUP","RETRY_RECORD_GROUP","FINAL_RECORD_DELAY_MS","RESET_DELAY_MS","RX","ACK","VERSION_REPLY","TIME_SYNC_ACK","COUNT_REPLY","STORED_RECORD_URS","STORED_RECORD_PAGED","FINISH","STORED_QUANTITATIVE","STORED_QUANTITATIVE_PAGED","RECORD_FLAGS_INDEX","RECORD_LAST_OF_SET_BIT","asHex","byte","toString","padStart","bc401Checksum","bytes","reduce","acc","bc401ChecksumMatches","length","slice","buildCommand","opcode","arg","buildResetCommand","buildRequestVersionCommand","buildSetTimeCommand","now","timezone","parts","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","payload","buildDeleteCommand"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-command-builders.ts"],"mappings":"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","ignoreList":[]}
@@ -34,6 +34,7 @@ class Bc01CommandSequencer {
34
34
 
35
35
  /** Five quantitative pages per request group; 5 means a new group. */
36
36
  quantitativePage = 5;
37
+ sawQuantitativeRecord = false;
37
38
 
38
39
  /** Injectable for tests; production reads `Date.now()`. */
39
40
 
@@ -47,14 +48,36 @@ class Bc01CommandSequencer {
47
48
  return undefined;
48
49
  }
49
50
  const opcode = (0, _hexToByte.hexToByte)(frame[0] ?? "0");
51
+ if (!(0, _bc01CommandBuilders.bc401ChecksumMatches)(frame.map(_hexToByte.hexToByte))) {
52
+ this.params.onError?.(`BC401 checksum failed for frame ${(0, _bc01CommandBuilders.asHex)(opcode)}`);
53
+ if (opcode === _bc01CommandBuilders.RX.STORED_RECORD_PAGED) {
54
+ this.standardPage = 10;
55
+ return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_RECORDS, _bc01CommandBuilders.RETRY_RECORD_GROUP))];
56
+ }
57
+ if (opcode === _bc01CommandBuilders.RX.STORED_QUANTITATIVE_PAGED) {
58
+ this.quantitativePage = 5;
59
+ return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_QUANTITATIVE_RECORDS, _bc01CommandBuilders.RETRY_RECORD_GROUP))];
60
+ }
61
+ this.isDone = true;
62
+ return undefined;
63
+ }
50
64
  switch (opcode) {
51
65
  case _bc01CommandBuilders.RX.ACK:
52
66
  return [this.commandFor((0, _bc01CommandBuilders.buildRequestVersionCommand)())];
53
67
  case _bc01CommandBuilders.RX.VERSION_REPLY:
54
68
  return [this.commandFor((0, _clockSync.isClockSyncEnabled)(this.params.clockSync) ? (0, _bc01CommandBuilders.buildSetTimeCommand)(this.clock(), this.params.clockSync?.timezone) : (0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_COUNT, _bc01CommandBuilders.REQUEST_ALL))];
55
69
  case _bc01CommandBuilders.RX.TIME_SYNC_ACK:
70
+ if ((0, _hexToByte.hexToByte)(frame[1] ?? "0") !== 0) {
71
+ this.params.onError?.("BC401 rejected the time synchronization");
72
+ this.isDone = true;
73
+ return undefined;
74
+ }
56
75
  return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_COUNT, _bc01CommandBuilders.REQUEST_ALL))];
57
76
  case _bc01CommandBuilders.RX.COUNT_REPLY:
77
+ if (((0, _hexToByte.hexToByte)(frame[4] ?? "0") & 0x7f | ((0, _hexToByte.hexToByte)(frame[5] ?? "0") & 0x7f) << 7) === 0) {
78
+ this.isDone = true;
79
+ return undefined;
80
+ }
58
81
  return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_RECORDS, _bc01CommandBuilders.REQUEST_ALL))];
59
82
  case _bc01CommandBuilders.RX.STORED_RECORD_URS:
60
83
  case _bc01CommandBuilders.RX.STORED_RECORD_PAGED:
@@ -72,7 +95,7 @@ class Bc01CommandSequencer {
72
95
  answerStoredRecord = (opcode, frame) => {
73
96
  const flags = (0, _hexToByte.hexToByte)(frame[_bc01CommandBuilders.RECORD_FLAGS_INDEX] ?? "0");
74
97
  if (opcode === _bc01CommandBuilders.RX.STORED_RECORD_URS) {
75
- return this.finishStoredRecords(_bc01CommandBuilders.OP_REQUEST_RECORDS);
98
+ return this.finishStoredRecords();
76
99
  }
77
100
  const page = flags & 0x0f;
78
101
  if (this.standardPage === 10) {
@@ -90,12 +113,13 @@ class Bc01CommandSequencer {
90
113
  return undefined;
91
114
  }
92
115
  this.standardPage = 10;
93
- return this.finishStoredRecords(_bc01CommandBuilders.OP_REQUEST_RECORDS);
116
+ return this.finishStoredRecords();
94
117
  };
95
118
  answerQuantitativeRecord = (opcode, frame) => {
119
+ this.sawQuantitativeRecord = true;
96
120
  const flags = (0, _hexToByte.hexToByte)(frame[_bc01CommandBuilders.RECORD_FLAGS_INDEX] ?? "0");
97
121
  if (opcode === _bc01CommandBuilders.RX.STORED_QUANTITATIVE) {
98
- return this.finishStoredRecords(_bc01CommandBuilders.OP_REQUEST_QUANTITATIVE_RECORDS);
122
+ return this.finishStoredRecords();
99
123
  }
100
124
  const page = flags & 0x0f;
101
125
  if (this.quantitativePage === 5) {
@@ -113,11 +137,11 @@ class Bc01CommandSequencer {
113
137
  return undefined;
114
138
  }
115
139
  this.quantitativePage = 5;
116
- return this.finishStoredRecords(_bc01CommandBuilders.OP_REQUEST_QUANTITATIVE_RECORDS);
140
+ return this.finishStoredRecords();
117
141
  };
118
- finishStoredRecords = opcode => {
142
+ finishStoredRecords = () => {
119
143
  this.isDone = true;
120
- return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(opcode, _bc01CommandBuilders.ACK_LAST_OF_SET)), this.commandFor((0, _bc01CommandBuilders.buildDeleteCommand)(), _bc01CommandBuilders.FINAL_RECORD_DELAY_MS)];
144
+ return [this.commandFor((0, _bc01CommandBuilders.buildCommand)(_bc01CommandBuilders.OP_REQUEST_RECORDS, _bc01CommandBuilders.ACK_LAST_OF_SET)), ...(this.params.clearDeviceHistory && !this.sawQuantitativeRecord ? [this.commandFor((0, _bc01CommandBuilders.buildDeleteCommand)(), _bc01CommandBuilders.FINAL_RECORD_DELAY_MS)] : [])];
121
145
  };
122
146
  commandFor = (bytes, delayBeforeWriteMs = 0) => ({
123
147
  ...this.params.write,
@@ -1 +1 @@
1
- {"version":3,"names":["_clockSync","require","_hexToByte","_bc01CommandBuilders","Bc01CommandSequencer","isDone","standardPage","quantitativePage","constructor","params","clock","clockSync","now","Date","initialCommands","commandFor","buildResetCommand","RESET_DELAY_MS","nextCommand","frame","length","undefined","opcode","hexToByte","RX","ACK","buildRequestVersionCommand","VERSION_REPLY","isClockSyncEnabled","buildSetTimeCommand","timezone","buildCommand","OP_REQUEST_COUNT","REQUEST_ALL","TIME_SYNC_ACK","COUNT_REPLY","OP_REQUEST_RECORDS","STORED_RECORD_URS","STORED_RECORD_PAGED","answerStoredRecord","STORED_QUANTITATIVE","STORED_QUANTITATIVE_PAGED","answerQuantitativeRecord","FINISH","flags","RECORD_FLAGS_INDEX","finishStoredRecords","page","RETRY_RECORD_GROUP","RECORD_LAST_OF_SET_BIT","REQUEST_NEXT_RECORD_GROUP","OP_REQUEST_QUANTITATIVE_RECORDS","ACK_LAST_OF_SET","buildDeleteCommand","FINAL_RECORD_DELAY_MS","bytes","delayBeforeWriteMs","write","map","asHex","exports","bc01CommandSequencerInternals","bc401Checksum"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-command-sequencer.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clockSync","require","_hexToByte","_bc01CommandBuilders","Bc01CommandSequencer","isDone","standardPage","quantitativePage","sawQuantitativeRecord","constructor","params","clock","clockSync","now","Date","initialCommands","commandFor","buildResetCommand","RESET_DELAY_MS","nextCommand","frame","length","undefined","opcode","hexToByte","bc401ChecksumMatches","map","onError","asHex","RX","STORED_RECORD_PAGED","buildCommand","OP_REQUEST_RECORDS","RETRY_RECORD_GROUP","STORED_QUANTITATIVE_PAGED","OP_REQUEST_QUANTITATIVE_RECORDS","ACK","buildRequestVersionCommand","VERSION_REPLY","isClockSyncEnabled","buildSetTimeCommand","timezone","OP_REQUEST_COUNT","REQUEST_ALL","TIME_SYNC_ACK","COUNT_REPLY","STORED_RECORD_URS","answerStoredRecord","STORED_QUANTITATIVE","answerQuantitativeRecord","FINISH","flags","RECORD_FLAGS_INDEX","finishStoredRecords","page","RECORD_LAST_OF_SET_BIT","REQUEST_NEXT_RECORD_GROUP","ACK_LAST_OF_SET","clearDeviceHistory","buildDeleteCommand","FINAL_RECORD_DELAY_MS","bytes","delayBeforeWriteMs","write","exports","bc01CommandSequencerInternals","bc401Checksum"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-command-sequencer.ts"],"mappings":"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","ignoreList":[]}
@@ -3,12 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.parseBc01Record = exports.isBc01Record = exports.BC01_URS_OPCODE = exports.BC01_RECORD_LENGTH = exports.BC01_PAGED_URS_OPCODE = exports.BC01_LAST_OF_SET_BIT = exports.BC01_ANALYTE_VALUES = exports.BC01_ANALYTE_ORDER = void 0;
6
+ exports.parseBc01Record = exports.BC01_URS_OPCODE = exports.BC01_RECORD_LENGTH = exports.BC01_PAGED_URS_OPCODE = exports.BC01_LAST_OF_SET_BIT = exports.BC01_ANALYTE_VALUES = exports.BC01_ANALYTE_ORDER = void 0;
7
7
  var _hexToByte = require("../../../utils/hex-to-byte.js");
8
+ var _bc01CommandBuilders = require("./bc01-command-builders.js");
8
9
  /** BC401 stored-record frame is always sixteen bytes: header, timestamp, analytes, checksum. */
9
10
  const BC01_RECORD_LENGTH = exports.BC01_RECORD_LENGTH = 16;
10
11
 
11
- /** The two opcodes the firmware uses for a stored URS-7 record. */
12
+ /** The two opcodes the firmware uses for a stored BC401 strip record. */
12
13
  const BC01_URS_OPCODE = exports.BC01_URS_OPCODE = 0xe1;
13
14
  const BC01_PAGED_URS_OPCODE = exports.BC01_PAGED_URS_OPCODE = 0xe2;
14
15
 
@@ -31,16 +32,14 @@ const MINUTE_MASK = 0x3f;
31
32
  const SECOND_MASK = 0x3f;
32
33
 
33
34
  /**
34
- * URS-7 pad names, in the exact order they occupy the packed 3-bit slots
35
- * across bytes 8..14 (see M1/a.java). The eleventh slot is a Contec-firmware
36
- * field the vendor's own catalog calls "vc" and no other name is documented.
35
+ * Pad names, in the exact order they occupy the packed 3-bit slots across
36
+ * bytes 8..14 (see PHMS M1/a.java), covering both 11- and 14-pad strips.
37
37
  */
38
- const BC01_ANALYTE_ORDER = exports.BC01_ANALYTE_ORDER = ["uro", "bld", "bil", "ket", "glu", "pro", "ph", "nit", "leu", "sg", "vc"];
38
+ const BC01_ANALYTE_ORDER = exports.BC01_ANALYTE_ORDER = ["uro", "bld", "bil", "ket", "glu", "pro", "ph", "nit", "leu", "sg", "vc", "mal", "cr", "uca"];
39
39
  /**
40
40
  * BC401's packed values are colour-chart indexes, not measurements. These
41
41
  * values mirror the tables in Contec's BC401 integration (PHMS M1/a.java):
42
42
  * the index is zero-based and `7` remains the device's unmeasured sentinel.
43
- * The pH table is the URS-7 strip scale, which includes half-point readings.
44
43
  */
45
44
  const BC01_ANALYTE_VALUES = exports.BC01_ANALYTE_VALUES = {
46
45
  uro: [0.2, 2, 4, 8],
@@ -49,11 +48,14 @@ const BC01_ANALYTE_VALUES = exports.BC01_ANALYTE_VALUES = {
49
48
  ket: [0, 15, 40, 80],
50
49
  glu: [0, 50, 100, 250, 500, 1000],
51
50
  pro: [0, 15, 30, 100, 300],
52
- ph: [5, 6, 6.5, 7, 7.5, 8, 8.5],
51
+ ph: [5, 6, 7, 8, 9],
53
52
  nit: [0, 1],
54
53
  leu: [0, 15, 70, 125, 500],
55
54
  sg: [1.005, 1.01, 1.015, 1.02, 1.025, 1.03],
56
- vc: [0, 10, 25, 50, 100]
55
+ vc: [0, 10, 25, 50, 100],
56
+ mal: [1, 3, 8, 15],
57
+ cr: [10, 50, 100, 200, 300],
58
+ uca: [2, 5, 15, 50]
57
59
  };
58
60
 
59
61
  /** Where the packed analyte pairs start in a 16-byte E1/E2 frame. */
@@ -76,10 +78,8 @@ const readPad = (packed, slot) => slot === 0 ? packed & 0x07 : packed >> 3 & 0x0
76
78
  * frame is a record or a heartbeat, and a frame that fails these checks is
77
79
  * skipped rather than parsed into a plausible-looking wrong reading.
78
80
  *
79
- * The checksum byte is not verified here: the SDK's read path already ensures
80
- * frame integrity before the parser sees the bytes, and a URS-7 pad value can
81
- * only land in [0, 7] anyway — a corrupt payload would fail the pad-value
82
- * check before it made it into a measurement.
81
+ * The checksum byte is verified before any value is exposed; individual
82
+ * packed indexes could otherwise decode into plausible but incorrect results.
83
83
  */
84
84
  const parseBc01Record = frame => {
85
85
  if (frame.length < BC01_RECORD_LENGTH) {
@@ -89,6 +89,9 @@ const parseBc01Record = frame => {
89
89
  if (opcode !== BC01_URS_OPCODE && opcode !== BC01_PAGED_URS_OPCODE) {
90
90
  return undefined;
91
91
  }
92
+ if (!(0, _bc01CommandBuilders.bc401ChecksumMatches)(frame.map(_hexToByte.hexToByte))) {
93
+ return undefined;
94
+ }
92
95
  const flags = (0, _hexToByte.hexToByte)(frame[1] ?? "");
93
96
  const yy = (0, _hexToByte.hexToByte)(frame[2] ?? "") + YEAR_BASE;
94
97
  const mm = (0, _hexToByte.hexToByte)(frame[3] ?? "") & MONTH_MASK;
@@ -118,19 +121,5 @@ const parseBc01Record = frame => {
118
121
  values
119
122
  };
120
123
  };
121
-
122
- /**
123
- * True when the buffer holds a complete BC401 stored record. Used by the
124
- * driver's `validatePackage` hook so the SDK's read path only advances once
125
- * the notification carries a whole 16-byte frame.
126
- */
127
124
  exports.parseBc01Record = parseBc01Record;
128
- const isBc01Record = frame => {
129
- if (frame.length < BC01_RECORD_LENGTH) {
130
- return false;
131
- }
132
- const opcode = (0, _hexToByte.hexToByte)(frame[0] ?? "");
133
- return opcode === BC01_URS_OPCODE || opcode === BC01_PAGED_URS_OPCODE;
134
- };
135
- exports.isBc01Record = isBc01Record;
136
125
  //# sourceMappingURL=bc01-frame-parser.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_hexToByte","require","BC01_RECORD_LENGTH","exports","BC01_URS_OPCODE","BC01_PAGED_URS_OPCODE","BC01_LAST_OF_SET_BIT","UNMEASURED","YEAR_BASE","MONTH_MASK","DAY_MASK","HOUR_MASK","MINUTE_MASK","SECOND_MASK","BC01_ANALYTE_ORDER","BC01_ANALYTE_VALUES","uro","bld","bil","ket","glu","pro","ph","nit","leu","sg","vc","ANALYTES_START","readPad","packed","slot","parseBc01Record","frame","length","undefined","opcode","hexToByte","flags","yy","mm","dd","hh","mi","ss","timestamp","Date","values","forEach","analyte","position","byteIndex","Math","floor","level","value","lastOfSet","pageIndex","isBc01Record"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-frame-parser.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_hexToByte","require","_bc01CommandBuilders","BC01_RECORD_LENGTH","exports","BC01_URS_OPCODE","BC01_PAGED_URS_OPCODE","BC01_LAST_OF_SET_BIT","UNMEASURED","YEAR_BASE","MONTH_MASK","DAY_MASK","HOUR_MASK","MINUTE_MASK","SECOND_MASK","BC01_ANALYTE_ORDER","BC01_ANALYTE_VALUES","uro","bld","bil","ket","glu","pro","ph","nit","leu","sg","vc","mal","cr","uca","ANALYTES_START","readPad","packed","slot","parseBc01Record","frame","length","undefined","opcode","hexToByte","bc401ChecksumMatches","map","flags","yy","mm","dd","hh","mi","ss","timestamp","Date","values","forEach","analyte","position","byteIndex","Math","floor","level","value","lastOfSet","pageIndex"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01-frame-parser.ts"],"mappings":"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","ignoreList":[]}
@@ -12,27 +12,6 @@ var _bc01CommandSequencer = require("./bc01-command-sequencer.js");
12
12
  var _bc01FrameParser = require("./bc01-frame-parser.js");
13
13
  var _bc01FrameReader = require("./bc01.frame-reader.js");
14
14
  var _bc01MainServices = require("./bc01.main-services.js");
15
- /** Minimum bytes a complete frame carries, keyed by its opening opcode. */
16
- const BC01_FRAME_MIN_LENGTH = {
17
- 0xf0: 2,
18
- // ACK
19
- 0xf2: 8,
20
- // Version reply (variable — 8 is the minimum PHMS reads before answering)
21
- 0xf3: 3,
22
- // Time-sync ack
23
- 0xe0: 7,
24
- // Record-count reply
25
- 0xe1: 16,
26
- // Stored URS record
27
- 0xe2: 16,
28
- // Paginated URS record
29
- 0xe3: 3,
30
- // Finish
31
- 0xe4: 36,
32
- // Quantitative record (optional path)
33
- 0xe5: 36 // Quantitative record (optional path)
34
- };
35
-
36
15
  /**
37
16
  * Contec BC401 (BC01) urine analyzer driver.
38
17
  *
@@ -44,12 +23,15 @@ const BC01_FRAME_MIN_LENGTH = {
44
23
  * 16-byte E1/E2 frame on 0xFF02.
45
24
  */
46
25
  class BC01Device extends _btManagedDevice.BTManagedDevice {
47
- onStreamStart = () => {};
26
+ onStreamStart = () => {
27
+ this.reportedTimestamps.clear();
28
+ };
29
+ reportedTimestamps = new Set();
48
30
  mainServices = _bc01MainServices.bc01MainServices;
49
31
  frameReader = new _bc01FrameReader.Bc01FrameReader();
50
32
 
51
33
  /**
52
- * 90 s covers the maximum firmware-side reagent-pad settle time on a URS-7
34
+ * 90 s covers the maximum firmware-side reagent-pad settle time on a
53
35
  * strip and leaves headroom for a bulk memory dump of every stored record.
54
36
  * If the device does not push a frame within that window the data processor
55
37
  * times out and the driver surfaces "device unreachable".
@@ -65,14 +47,18 @@ class BC01Device extends _btManagedDevice.BTManagedDevice {
65
47
  * set. The parent's default `pollingSequencerFor` would only re-send the
66
48
  * declared reset forever, which the firmware ignores after the first one.
67
49
  */
68
- this.createCommandSequencer = () => new _bc01CommandSequencer.Bc01CommandSequencer({
69
- write: {
70
- serviceUuid: _bc01MainServices.bc01MainServices[0].uuid,
71
- characteristicUuid: _bc01MainServices.bc01MainServices[0].writeUuid.uuid
72
- },
73
- onRefused: reason => this.onError?.(new Error(`BC401 handshake: ${reason}`)),
74
- clockSync: params.clockSync
75
- }, params.clockSync?.now);
50
+ this.createCommandSequencer = () => {
51
+ this.reportedTimestamps.clear();
52
+ return new _bc01CommandSequencer.Bc01CommandSequencer({
53
+ write: {
54
+ serviceUuid: _bc01MainServices.bc01MainServices[0].uuid,
55
+ characteristicUuid: _bc01MainServices.bc01MainServices[0].writeUuid.uuid
56
+ },
57
+ onError: reason => this.onError?.(new Error(`BC401: ${reason}`)),
58
+ clockSync: params.clockSync,
59
+ clearDeviceHistory: params.clearDeviceHistory
60
+ }, params.clockSync?.now);
61
+ };
76
62
  }
77
63
 
78
64
  /**
@@ -86,7 +72,7 @@ class BC01Device extends _btManagedDevice.BTManagedDevice {
86
72
  return false;
87
73
  }
88
74
  const opcode = (0, _hexToByte.hexToByte)(pkg[0] ?? "");
89
- const minLength = BC01_FRAME_MIN_LENGTH[opcode];
75
+ const minLength = _bc01FrameReader.bc01FrameLengths[opcode.toString(16).padStart(2, "0")];
90
76
  if (minLength === undefined) {
91
77
  return false;
92
78
  }
@@ -117,7 +103,9 @@ class BC01Device extends _btManagedDevice.BTManagedDevice {
117
103
  /**
118
104
  * Nothing to do here for the BC401. Every reading arrives through the
119
105
  * dependent-result path, and the state machine sees only the `OTHER`-typed
120
- * echo we return from `handleDependentResult`.
106
+ * echo we return from `handleDependentResult`. Records are deduplicated by
107
+ * their second-resolution device timestamp for this transfer because a
108
+ * paged-group retry resends the earlier frames.
121
109
  */
122
110
  handleSuccessResult() {
123
111
  return;
@@ -138,6 +126,11 @@ class BC01Device extends _btManagedDevice.BTManagedDevice {
138
126
  this.onError?.("feedback-messages.measurement.disturb-detected-error");
139
127
  return;
140
128
  }
129
+ const timestamp = parsed.timestamp.getTime();
130
+ if (this.reportedTimestamps.has(timestamp)) {
131
+ return;
132
+ }
133
+ this.reportedTimestamps.add(timestamp);
141
134
  const reading = {
142
135
  caseType: _caseType.CaseType.RESULT,
143
136
  measurementTypeKey: _core.MeasurementTypeKey.uricAcid,
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_caseType","_hexToByte","_btManagedDevice","_bc01CommandSequencer","_bc01FrameParser","_bc01FrameReader","_bc01MainServices","BC01_FRAME_MIN_LENGTH","BC01Device","BTManagedDevice","onStreamStart","mainServices","bc01MainServices","frameReader","Bc01FrameReader","stuckDataTimeout","constructor","device","params","createCommandSequencer","Bc01CommandSequencer","write","serviceUuid","uuid","characteristicUuid","writeUuid","onRefused","reason","onError","Error","clockSync","now","validatePackage","pkg","length","opcode","hexToByte","minLength","undefined","handleDependentResult","data","frame","reportUrsRecord","parsingCase","caseType","CaseType","OTHER","handleSuccessResult","parsed","parseBc01Record","measuredValues","BC01_ANALYTE_ORDER","reduce","acc","analyte","value","values","Object","keys","reading","RESULT","measurementTypeKey","MeasurementTypeKey","uricAcid","urineValues","recordedAt","timestamp","onResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01.device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_caseType","_hexToByte","_btManagedDevice","_bc01CommandSequencer","_bc01FrameParser","_bc01FrameReader","_bc01MainServices","BC01Device","BTManagedDevice","onStreamStart","reportedTimestamps","clear","Set","mainServices","bc01MainServices","frameReader","Bc01FrameReader","stuckDataTimeout","constructor","device","params","createCommandSequencer","Bc01CommandSequencer","write","serviceUuid","uuid","characteristicUuid","writeUuid","onError","reason","Error","clockSync","clearDeviceHistory","now","validatePackage","pkg","length","opcode","hexToByte","minLength","bc01FrameLengths","toString","padStart","undefined","handleDependentResult","data","frame","reportUrsRecord","parsingCase","caseType","CaseType","OTHER","handleSuccessResult","parsed","parseBc01Record","measuredValues","BC01_ANALYTE_ORDER","reduce","acc","analyte","value","values","Object","keys","timestamp","getTime","has","add","reading","RESULT","measurementTypeKey","MeasurementTypeKey","uricAcid","urineValues","recordedAt","onResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bc01/bc01.device.ts"],"mappings":"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","ignoreList":[]}