@ovok/native 1.10.10 → 1.10.12

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 (418) hide show
  1. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +20 -1
  2. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  3. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-and-medical-variants.js +47 -0
  4. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-and-medical-variants.js.map +1 -0
  5. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-cofoe-variants.js +119 -0
  6. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-cofoe-variants.js.map +1 -0
  7. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-standard-variants.js +6 -0
  8. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-standard-variants.js.map +1 -1
  9. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-taidoc-variants.js +173 -0
  10. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-taidoc-variants.js.map +1 -0
  11. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.js +107 -0
  12. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.js.map +1 -0
  13. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-variants.js +10 -0
  14. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-variants.js.map +1 -1
  15. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-yonker-variants.js +113 -0
  16. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-yonker-variants.js.map +1 -0
  17. package/lib/commonjs/modules/bt-device/constants/supported-devices.js +5 -37
  18. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  19. package/lib/commonjs/modules/bt-management/constants/and-medical-device-variants.js +39 -0
  20. package/lib/commonjs/modules/bt-management/constants/and-medical-device-variants.js.map +1 -0
  21. package/lib/commonjs/modules/bt-management/constants/built-in-measurement-types.js +86 -0
  22. package/lib/commonjs/modules/bt-management/constants/built-in-measurement-types.js.map +1 -0
  23. package/lib/commonjs/modules/bt-management/constants/cofoe-device-variants.js +101 -0
  24. package/lib/commonjs/modules/bt-management/constants/cofoe-device-variants.js.map +1 -0
  25. package/lib/commonjs/modules/bt-management/constants/device-variants.js +6 -1
  26. package/lib/commonjs/modules/bt-management/constants/device-variants.js.map +1 -1
  27. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js +1 -1
  28. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  29. package/lib/commonjs/modules/bt-management/constants/standard-device-variants.js +5 -0
  30. package/lib/commonjs/modules/bt-management/constants/standard-device-variants.js.map +1 -1
  31. package/lib/commonjs/modules/bt-management/constants/taidoc-device-variants.js +144 -0
  32. package/lib/commonjs/modules/bt-management/constants/taidoc-device-variants.js.map +1 -0
  33. package/lib/commonjs/modules/bt-management/constants/transtek-a6-device-variants.js +89 -0
  34. package/lib/commonjs/modules/bt-management/constants/transtek-a6-device-variants.js.map +1 -0
  35. package/lib/commonjs/modules/bt-management/constants/yonker-device-variants.js +93 -0
  36. package/lib/commonjs/modules/bt-management/constants/yonker-device-variants.js.map +1 -0
  37. package/lib/commonjs/modules/bt-management/core/resolve-device-key.js +6 -0
  38. package/lib/commonjs/modules/bt-management/core/resolve-device-key.js.map +1 -1
  39. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js +18 -0
  40. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  41. package/lib/commonjs/modules/bt-management/services/device-classes.js +27 -1
  42. package/lib/commonjs/modules/bt-management/services/device-classes.js.map +1 -1
  43. package/lib/commonjs/modules/bt-management/services/device-creator.js +5 -3
  44. package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
  45. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.device.js +61 -0
  46. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.device.js.map +1 -0
  47. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.protocol.js +113 -0
  48. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.protocol.js.map +1 -0
  49. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.sequencer.js +77 -0
  50. package/lib/commonjs/modules/bt-management/services/devices/and-medical/and-medical.sequencer.js.map +1 -0
  51. package/lib/commonjs/modules/bt-management/services/devices/aoj/aoj-70b.device.js +1 -1
  52. package/lib/commonjs/modules/bt-management/services/devices/aoj/aoj-70b.device.js.map +1 -1
  53. package/lib/commonjs/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.js +7 -25
  54. package/lib/commonjs/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.js.map +1 -1
  55. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +3 -2
  56. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  57. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +7 -2
  58. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  59. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.js +86 -0
  60. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.js.map +1 -0
  61. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.js +155 -0
  62. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.js.map +1 -0
  63. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.js +33 -0
  64. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.js.map +1 -0
  65. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.device.js +87 -0
  66. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.device.js.map +1 -0
  67. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.protocol.js +185 -0
  68. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.protocol.js.map +1 -0
  69. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.records.js +86 -0
  70. package/lib/commonjs/modules/bt-management/services/devices/cofoe/cofoe.records.js.map +1 -0
  71. package/lib/commonjs/modules/bt-management/services/devices/jumper/jumper.device.js +1 -1
  72. package/lib/commonjs/modules/bt-management/services/devices/jumper/jumper.device.js.map +1 -1
  73. package/lib/commonjs/modules/bt-management/services/devices/live-oximeter.sequencer.js +10 -6
  74. package/lib/commonjs/modules/bt-management/services/devices/live-oximeter.sequencer.js.map +1 -1
  75. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.device.js +50 -0
  76. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.device.js.map +1 -0
  77. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.protocol.js +127 -0
  78. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.protocol.js.map +1 -0
  79. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.records.js +181 -0
  80. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.records.js.map +1 -0
  81. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.sequencer.js +139 -0
  82. package/lib/commonjs/modules/bt-management/services/devices/taidoc/taidoc.sequencer.js.map +1 -0
  83. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.device.js +50 -0
  84. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.device.js.map +1 -0
  85. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.measurements.js +78 -0
  86. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.measurements.js.map +1 -0
  87. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.protocol.js +134 -0
  88. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.protocol.js.map +1 -0
  89. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.sequencer.js +102 -0
  90. package/lib/commonjs/modules/bt-management/services/devices/transtek/a6-scale.sequencer.js.map +1 -0
  91. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.device.js +51 -0
  92. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.device.js.map +1 -0
  93. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.measurements.js +48 -0
  94. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.measurements.js.map +1 -0
  95. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.protocol.js +181 -0
  96. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.protocol.js.map +1 -0
  97. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.js +73 -0
  98. package/lib/commonjs/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.js.map +1 -0
  99. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.device.js +90 -0
  100. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.device.js.map +1 -0
  101. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.protocol.js +202 -0
  102. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.protocol.js.map +1 -0
  103. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.sequencer.js +137 -0
  104. package/lib/commonjs/modules/bt-management/services/devices/yonker/yonker.sequencer.js.map +1 -0
  105. package/lib/commonjs/modules/bt-management/types/clock-sync.js +2 -0
  106. package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
  107. package/lib/commonjs/modules/bt-management/types/integrated-devices.js +19 -0
  108. package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
  109. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +20 -1
  110. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  111. package/lib/module/modules/bt-device/constants/supported-device-catalog-and-medical-variants.js +45 -0
  112. package/lib/module/modules/bt-device/constants/supported-device-catalog-and-medical-variants.js.map +1 -0
  113. package/lib/module/modules/bt-device/constants/supported-device-catalog-cofoe-variants.js +117 -0
  114. package/lib/module/modules/bt-device/constants/supported-device-catalog-cofoe-variants.js.map +1 -0
  115. package/lib/module/modules/bt-device/constants/supported-device-catalog-standard-variants.js +6 -0
  116. package/lib/module/modules/bt-device/constants/supported-device-catalog-standard-variants.js.map +1 -1
  117. package/lib/module/modules/bt-device/constants/supported-device-catalog-taidoc-variants.js +171 -0
  118. package/lib/module/modules/bt-device/constants/supported-device-catalog-taidoc-variants.js.map +1 -0
  119. package/lib/module/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.js +105 -0
  120. package/lib/module/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.js.map +1 -0
  121. package/lib/module/modules/bt-device/constants/supported-device-catalog-variants.js +10 -0
  122. package/lib/module/modules/bt-device/constants/supported-device-catalog-variants.js.map +1 -1
  123. package/lib/module/modules/bt-device/constants/supported-device-catalog-yonker-variants.js +111 -0
  124. package/lib/module/modules/bt-device/constants/supported-device-catalog-yonker-variants.js.map +1 -0
  125. package/lib/module/modules/bt-device/constants/supported-devices.js +5 -37
  126. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  127. package/lib/module/modules/bt-management/constants/and-medical-device-variants.js +37 -0
  128. package/lib/module/modules/bt-management/constants/and-medical-device-variants.js.map +1 -0
  129. package/lib/module/modules/bt-management/constants/built-in-measurement-types.js +84 -0
  130. package/lib/module/modules/bt-management/constants/built-in-measurement-types.js.map +1 -0
  131. package/lib/module/modules/bt-management/constants/cofoe-device-variants.js +99 -0
  132. package/lib/module/modules/bt-management/constants/cofoe-device-variants.js.map +1 -0
  133. package/lib/module/modules/bt-management/constants/device-variants.js +6 -1
  134. package/lib/module/modules/bt-management/constants/device-variants.js.map +1 -1
  135. package/lib/module/modules/bt-management/constants/integrated-devices-map.js +1 -1
  136. package/lib/module/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  137. package/lib/module/modules/bt-management/constants/standard-device-variants.js +5 -0
  138. package/lib/module/modules/bt-management/constants/standard-device-variants.js.map +1 -1
  139. package/lib/module/modules/bt-management/constants/taidoc-device-variants.js +142 -0
  140. package/lib/module/modules/bt-management/constants/taidoc-device-variants.js.map +1 -0
  141. package/lib/module/modules/bt-management/constants/transtek-a6-device-variants.js +87 -0
  142. package/lib/module/modules/bt-management/constants/transtek-a6-device-variants.js.map +1 -0
  143. package/lib/module/modules/bt-management/constants/yonker-device-variants.js +91 -0
  144. package/lib/module/modules/bt-management/constants/yonker-device-variants.js.map +1 -0
  145. package/lib/module/modules/bt-management/core/resolve-device-key.js +6 -0
  146. package/lib/module/modules/bt-management/core/resolve-device-key.js.map +1 -1
  147. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js +18 -0
  148. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  149. package/lib/module/modules/bt-management/services/device-classes.js +27 -1
  150. package/lib/module/modules/bt-management/services/device-classes.js.map +1 -1
  151. package/lib/module/modules/bt-management/services/device-creator.js +5 -3
  152. package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
  153. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.device.js +57 -0
  154. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.device.js.map +1 -0
  155. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.protocol.js +106 -0
  156. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.protocol.js.map +1 -0
  157. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.sequencer.js +74 -0
  158. package/lib/module/modules/bt-management/services/devices/and-medical/and-medical.sequencer.js.map +1 -0
  159. package/lib/module/modules/bt-management/services/devices/aoj/aoj-70b.device.js +2 -2
  160. package/lib/module/modules/bt-management/services/devices/aoj/aoj-70b.device.js.map +1 -1
  161. package/lib/module/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.js +6 -24
  162. package/lib/module/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.js.map +1 -1
  163. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +3 -2
  164. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  165. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +7 -2
  166. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  167. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.js +82 -0
  168. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.js.map +1 -0
  169. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.js +148 -0
  170. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.js.map +1 -0
  171. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.js +30 -0
  172. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.js.map +1 -0
  173. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.device.js +83 -0
  174. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.device.js.map +1 -0
  175. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.protocol.js +173 -0
  176. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.protocol.js.map +1 -0
  177. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.records.js +78 -0
  178. package/lib/module/modules/bt-management/services/devices/cofoe/cofoe.records.js.map +1 -0
  179. package/lib/module/modules/bt-management/services/devices/jumper/jumper.device.js +2 -2
  180. package/lib/module/modules/bt-management/services/devices/jumper/jumper.device.js.map +1 -1
  181. package/lib/module/modules/bt-management/services/devices/live-oximeter.sequencer.js +10 -6
  182. package/lib/module/modules/bt-management/services/devices/live-oximeter.sequencer.js.map +1 -1
  183. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.device.js +46 -0
  184. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.device.js.map +1 -0
  185. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.protocol.js +114 -0
  186. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.protocol.js.map +1 -0
  187. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.records.js +168 -0
  188. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.records.js.map +1 -0
  189. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.sequencer.js +136 -0
  190. package/lib/module/modules/bt-management/services/devices/taidoc/taidoc.sequencer.js.map +1 -0
  191. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.device.js +45 -0
  192. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.device.js.map +1 -0
  193. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.measurements.js +73 -0
  194. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.measurements.js.map +1 -0
  195. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.protocol.js +121 -0
  196. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.protocol.js.map +1 -0
  197. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.sequencer.js +97 -0
  198. package/lib/module/modules/bt-management/services/devices/transtek/a6-scale.sequencer.js.map +1 -0
  199. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.device.js +46 -0
  200. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.device.js.map +1 -0
  201. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.measurements.js +43 -0
  202. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.measurements.js.map +1 -0
  203. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.protocol.js +174 -0
  204. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.protocol.js.map +1 -0
  205. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.js +68 -0
  206. package/lib/module/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.js.map +1 -0
  207. package/lib/module/modules/bt-management/services/devices/yonker/yonker.device.js +86 -0
  208. package/lib/module/modules/bt-management/services/devices/yonker/yonker.device.js.map +1 -0
  209. package/lib/module/modules/bt-management/services/devices/yonker/yonker.protocol.js +186 -0
  210. package/lib/module/modules/bt-management/services/devices/yonker/yonker.protocol.js.map +1 -0
  211. package/lib/module/modules/bt-management/services/devices/yonker/yonker.sequencer.js +133 -0
  212. package/lib/module/modules/bt-management/services/devices/yonker/yonker.sequencer.js.map +1 -0
  213. package/lib/module/modules/bt-management/types/clock-sync.js +2 -0
  214. package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
  215. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  216. package/lib/module/modules/bt-management/types/integrated-devices.js +19 -0
  217. package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
  218. package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-in.d.ts +1 -1
  219. package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  220. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-and-medical-variants.d.ts +5 -0
  221. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-and-medical-variants.d.ts.map +1 -0
  222. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-cofoe-variants.d.ts +5 -0
  223. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-cofoe-variants.d.ts.map +1 -0
  224. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-standard-variants.d.ts.map +1 -1
  225. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-taidoc-variants.d.ts +5 -0
  226. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-taidoc-variants.d.ts.map +1 -0
  227. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.d.ts +5 -0
  228. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.d.ts.map +1 -0
  229. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-variants.d.ts.map +1 -1
  230. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-yonker-variants.d.ts +5 -0
  231. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-yonker-variants.d.ts.map +1 -0
  232. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  233. package/lib/typescript/commonjs/src/modules/bt-management/constants/and-medical-device-variants.d.ts +5 -0
  234. package/lib/typescript/commonjs/src/modules/bt-management/constants/and-medical-device-variants.d.ts.map +1 -0
  235. package/lib/typescript/commonjs/src/modules/bt-management/constants/built-in-measurement-types.d.ts +9 -0
  236. package/lib/typescript/commonjs/src/modules/bt-management/constants/built-in-measurement-types.d.ts.map +1 -0
  237. package/lib/typescript/commonjs/src/modules/bt-management/constants/cofoe-device-variants.d.ts +5 -0
  238. package/lib/typescript/commonjs/src/modules/bt-management/constants/cofoe-device-variants.d.ts.map +1 -0
  239. package/lib/typescript/commonjs/src/modules/bt-management/constants/device-variants.d.ts.map +1 -1
  240. package/lib/typescript/commonjs/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  241. package/lib/typescript/commonjs/src/modules/bt-management/constants/standard-device-variants.d.ts.map +1 -1
  242. package/lib/typescript/commonjs/src/modules/bt-management/constants/taidoc-device-variants.d.ts +5 -0
  243. package/lib/typescript/commonjs/src/modules/bt-management/constants/taidoc-device-variants.d.ts.map +1 -0
  244. package/lib/typescript/commonjs/src/modules/bt-management/constants/transtek-a6-device-variants.d.ts +5 -0
  245. package/lib/typescript/commonjs/src/modules/bt-management/constants/transtek-a6-device-variants.d.ts.map +1 -0
  246. package/lib/typescript/commonjs/src/modules/bt-management/constants/yonker-device-variants.d.ts +5 -0
  247. package/lib/typescript/commonjs/src/modules/bt-management/constants/yonker-device-variants.d.ts.map +1 -0
  248. package/lib/typescript/commonjs/src/modules/bt-management/core/resolve-device-key.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts +26 -0
  251. package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts.map +1 -1
  252. package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  253. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.device.d.ts +18 -0
  254. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.device.d.ts.map +1 -0
  255. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.protocol.d.ts +30 -0
  256. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.protocol.d.ts.map +1 -0
  257. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.sequencer.d.ts +26 -0
  258. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/and-medical/and-medical.sequencer.d.ts.map +1 -0
  259. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.d.ts.map +1 -1
  260. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  261. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +4 -1
  262. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  263. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.d.ts +32 -0
  264. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.d.ts.map +1 -0
  265. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.d.ts +46 -0
  266. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.d.ts.map +1 -0
  267. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.d.ts +15 -0
  268. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.d.ts.map +1 -0
  269. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.device.d.ts +18 -0
  270. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.device.d.ts.map +1 -0
  271. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.protocol.d.ts +75 -0
  272. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.protocol.d.ts.map +1 -0
  273. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.records.d.ts +22 -0
  274. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/cofoe/cofoe.records.d.ts.map +1 -0
  275. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/jumper/jumper.device.d.ts.map +1 -1
  276. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/live-oximeter.sequencer.d.ts +6 -2
  277. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/live-oximeter.sequencer.d.ts.map +1 -1
  278. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.device.d.ts +16 -0
  279. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.device.d.ts.map +1 -0
  280. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.protocol.d.ts +50 -0
  281. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.protocol.d.ts.map +1 -0
  282. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.records.d.ts +40 -0
  283. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.records.d.ts.map +1 -0
  284. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.sequencer.d.ts +38 -0
  285. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/taidoc/taidoc.sequencer.d.ts.map +1 -0
  286. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.device.d.ts +16 -0
  287. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.device.d.ts.map +1 -0
  288. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.measurements.d.ts +5 -0
  289. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.measurements.d.ts.map +1 -0
  290. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.protocol.d.ts +22 -0
  291. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.protocol.d.ts.map +1 -0
  292. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.sequencer.d.ts +28 -0
  293. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/a6-scale.sequencer.d.ts.map +1 -0
  294. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.device.d.ts +16 -0
  295. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.device.d.ts.map +1 -0
  296. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.measurements.d.ts +6 -0
  297. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.measurements.d.ts.map +1 -0
  298. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.protocol.d.ts +18 -0
  299. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.protocol.d.ts.map +1 -0
  300. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.d.ts +21 -0
  301. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.d.ts.map +1 -0
  302. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.device.d.ts +21 -0
  303. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.device.d.ts.map +1 -0
  304. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.protocol.d.ts +62 -0
  305. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.protocol.d.ts.map +1 -0
  306. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.sequencer.d.ts +46 -0
  307. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/yonker/yonker.sequencer.d.ts.map +1 -0
  308. package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  309. package/lib/typescript/commonjs/src/modules/bt-management/types/device-data.d.ts +1 -0
  310. package/lib/typescript/commonjs/src/modules/bt-management/types/device-data.d.ts.map +1 -1
  311. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +20 -1
  312. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  313. package/lib/typescript/commonjs/src/modules/bt-management/types/frame-reader.d.ts +2 -1
  314. package/lib/typescript/commonjs/src/modules/bt-management/types/frame-reader.d.ts.map +1 -1
  315. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +20 -1
  316. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  317. package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts +2 -2
  318. package/lib/typescript/module/src/modules/auth/hooks/use-sign-in.d.ts +1 -1
  319. package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  320. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-and-medical-variants.d.ts +5 -0
  321. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-and-medical-variants.d.ts.map +1 -0
  322. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-cofoe-variants.d.ts +5 -0
  323. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-cofoe-variants.d.ts.map +1 -0
  324. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-standard-variants.d.ts.map +1 -1
  325. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-taidoc-variants.d.ts +5 -0
  326. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-taidoc-variants.d.ts.map +1 -0
  327. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.d.ts +5 -0
  328. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-transtek-a6-variants.d.ts.map +1 -0
  329. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-variants.d.ts.map +1 -1
  330. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-yonker-variants.d.ts +5 -0
  331. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-yonker-variants.d.ts.map +1 -0
  332. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  333. package/lib/typescript/module/src/modules/bt-management/constants/and-medical-device-variants.d.ts +5 -0
  334. package/lib/typescript/module/src/modules/bt-management/constants/and-medical-device-variants.d.ts.map +1 -0
  335. package/lib/typescript/module/src/modules/bt-management/constants/built-in-measurement-types.d.ts +9 -0
  336. package/lib/typescript/module/src/modules/bt-management/constants/built-in-measurement-types.d.ts.map +1 -0
  337. package/lib/typescript/module/src/modules/bt-management/constants/cofoe-device-variants.d.ts +5 -0
  338. package/lib/typescript/module/src/modules/bt-management/constants/cofoe-device-variants.d.ts.map +1 -0
  339. package/lib/typescript/module/src/modules/bt-management/constants/device-variants.d.ts.map +1 -1
  340. package/lib/typescript/module/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  341. package/lib/typescript/module/src/modules/bt-management/constants/standard-device-variants.d.ts.map +1 -1
  342. package/lib/typescript/module/src/modules/bt-management/constants/taidoc-device-variants.d.ts +5 -0
  343. package/lib/typescript/module/src/modules/bt-management/constants/taidoc-device-variants.d.ts.map +1 -0
  344. package/lib/typescript/module/src/modules/bt-management/constants/transtek-a6-device-variants.d.ts +5 -0
  345. package/lib/typescript/module/src/modules/bt-management/constants/transtek-a6-device-variants.d.ts.map +1 -0
  346. package/lib/typescript/module/src/modules/bt-management/constants/yonker-device-variants.d.ts +5 -0
  347. package/lib/typescript/module/src/modules/bt-management/constants/yonker-device-variants.d.ts.map +1 -0
  348. package/lib/typescript/module/src/modules/bt-management/core/resolve-device-key.d.ts.map +1 -1
  349. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  350. package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts +26 -0
  351. package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts.map +1 -1
  352. package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  353. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.device.d.ts +18 -0
  354. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.device.d.ts.map +1 -0
  355. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.protocol.d.ts +30 -0
  356. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.protocol.d.ts.map +1 -0
  357. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.sequencer.d.ts +26 -0
  358. package/lib/typescript/module/src/modules/bt-management/services/devices/and-medical/and-medical.sequencer.d.ts.map +1 -0
  359. package/lib/typescript/module/src/modules/bt-management/services/devices/blood-glucose/blood-glucose.device.d.ts.map +1 -1
  360. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  361. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +4 -1
  362. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  363. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.d.ts +32 -0
  364. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.d.ts.map +1 -0
  365. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.d.ts +46 -0
  366. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-glucose.sequencer.d.ts.map +1 -0
  367. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.d.ts +15 -0
  368. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe-thermometer.sequencer.d.ts.map +1 -0
  369. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.device.d.ts +18 -0
  370. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.device.d.ts.map +1 -0
  371. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.protocol.d.ts +75 -0
  372. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.protocol.d.ts.map +1 -0
  373. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.records.d.ts +22 -0
  374. package/lib/typescript/module/src/modules/bt-management/services/devices/cofoe/cofoe.records.d.ts.map +1 -0
  375. package/lib/typescript/module/src/modules/bt-management/services/devices/jumper/jumper.device.d.ts.map +1 -1
  376. package/lib/typescript/module/src/modules/bt-management/services/devices/live-oximeter.sequencer.d.ts +6 -2
  377. package/lib/typescript/module/src/modules/bt-management/services/devices/live-oximeter.sequencer.d.ts.map +1 -1
  378. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.device.d.ts +16 -0
  379. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.device.d.ts.map +1 -0
  380. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.protocol.d.ts +50 -0
  381. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.protocol.d.ts.map +1 -0
  382. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.records.d.ts +40 -0
  383. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.records.d.ts.map +1 -0
  384. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.sequencer.d.ts +38 -0
  385. package/lib/typescript/module/src/modules/bt-management/services/devices/taidoc/taidoc.sequencer.d.ts.map +1 -0
  386. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.device.d.ts +16 -0
  387. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.device.d.ts.map +1 -0
  388. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.measurements.d.ts +5 -0
  389. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.measurements.d.ts.map +1 -0
  390. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.protocol.d.ts +22 -0
  391. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.protocol.d.ts.map +1 -0
  392. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.sequencer.d.ts +28 -0
  393. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/a6-scale.sequencer.d.ts.map +1 -0
  394. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.device.d.ts +16 -0
  395. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.device.d.ts.map +1 -0
  396. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.measurements.d.ts +6 -0
  397. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.measurements.d.ts.map +1 -0
  398. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.protocol.d.ts +18 -0
  399. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.protocol.d.ts.map +1 -0
  400. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.d.ts +21 -0
  401. package/lib/typescript/module/src/modules/bt-management/services/devices/transtek/mambo-a5.sequencer.d.ts.map +1 -0
  402. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.device.d.ts +21 -0
  403. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.device.d.ts.map +1 -0
  404. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.protocol.d.ts +62 -0
  405. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.protocol.d.ts.map +1 -0
  406. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.sequencer.d.ts +46 -0
  407. package/lib/typescript/module/src/modules/bt-management/services/devices/yonker/yonker.sequencer.d.ts.map +1 -0
  408. package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  409. package/lib/typescript/module/src/modules/bt-management/types/device-data.d.ts +1 -0
  410. package/lib/typescript/module/src/modules/bt-management/types/device-data.d.ts.map +1 -1
  411. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +20 -1
  412. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  413. package/lib/typescript/module/src/modules/bt-management/types/frame-reader.d.ts +2 -1
  414. package/lib/typescript/module/src/modules/bt-management/types/frame-reader.d.ts.map +1 -1
  415. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +20 -1
  416. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  417. package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts +2 -2
  418. package/package.json +1 -1
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.scaleSetTimeCommand = exports.readWeight = exports.readBloodPressure = exports.dateTimeCommand = exports.AND_MEDICAL = void 0;
7
+ var _decodeMedicalFloat = require("../../../utils/decode-medical-float.js");
8
+ var _hexToByte = require("../../../utils/hex-to-byte.js");
9
+ var _standardGattProfile = require("../standard-gatt/standard-gatt.profile.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ /**
13
+ * A&D Medical (UA-651/656/1200BLE monitors, UC-352BLE scale), from MedM Health Diary 3.12.11's
14
+ * `CAND_*` classes.
15
+ *
16
+ * The monitors are the SIG Blood Pressure profile plus a clock write a second after connecting:
17
+ * a 7-byte SIG Date Time to 0x1810/0x2A08, or the same bytes to Current Time 0x1805/0x2A2B on
18
+ * the UA-1200BLE/UB-1100BLE. The scale takes A&D command frames (`length type command payload`,
19
+ * no checksum) on 233bf001 and indicates 10-byte weight records on 23434101.
20
+ */
21
+ const sig16 = assigned => `0000${assigned}-0000-1000-8000-00805f9b34fb`;
22
+ const AND_MEDICAL = exports.AND_MEDICAL = {
23
+ bloodPressureService: sig16("1810"),
24
+ bloodPressureMeasurement: sig16("2a35"),
25
+ dateTime: sig16("2a08"),
26
+ currentTimeService: sig16("1805"),
27
+ currentTime: sig16("2a2b"),
28
+ commandService: "233bf000-5a34-1b6d-975c-000d5690abe4",
29
+ command: "233bf001-5a34-1b6d-975c-000d5690abe4",
30
+ scaleService: "23434100-1fe4-1eff-80cb-00ff78297d8b",
31
+ scaleRecord: "23434101-1fe4-1eff-80cb-00ff78297d8b"
32
+ };
33
+ const POUND_IN_KG = 0.45359237;
34
+ const KPA_IN_MMHG = 7.500617;
35
+ const toHex = bytes => bytes.map(value => (value & 0xff).toString(16).padStart(2, "0"));
36
+
37
+ /** SIG Date Time, phone-local: year (u16 LE), month, day, hour, minute, second. */
38
+ const dateTimeCommand = now => toHex([now.getFullYear() & 0xff, now.getFullYear() >> 8, now.getMonth() + 1, now.getDate(), now.getHours(), now.getMinutes(), now.getSeconds()]);
39
+
40
+ /** A&D set-time frame for the scale: `08 01 01 YY MM DD hh mm ss`, binary, phone-local. */
41
+ exports.dateTimeCommand = dateTimeCommand;
42
+ const scaleSetTimeCommand = now => toHex([0x08, 0x01, 0x01, now.getFullYear() % 100, now.getMonth() + 1, now.getDate(), now.getHours(), now.getMinutes(), now.getSeconds()]);
43
+ exports.scaleSetTimeCommand = scaleSetTimeCommand;
44
+ const sfloat = (bytes, at) => at + 1 < bytes.length ? (0, _decodeMedicalFloat.decodeMedicalFloat)((bytes[at] ?? 0) | (bytes[at + 1] ?? 0) << 8, 4, 12) : undefined;
45
+
46
+ /**
47
+ * SIG Blood Pressure Measurement 0x2A35. kPa is converted to mmHg; the device timestamp is kept
48
+ * when the clock is valid; the user id (0-based, 0xFF unknown) becomes a 1-based memory slot;
49
+ * status bit 2 is the irregular pulse. A record without both pressures is dropped.
50
+ */
51
+ const readBloodPressure = frame => {
52
+ const bytes = frame.map(byte => (0, _hexToByte.hexToByte)(byte));
53
+ const flags = bytes[0] ?? 0;
54
+ const unit = (flags & 0x01) !== 0 ? KPA_IN_MMHG : 1;
55
+ const systolic = sfloat(bytes, 1);
56
+ const diastolic = sfloat(bytes, 3);
57
+ if (systolic === undefined || diastolic === undefined) {
58
+ return undefined;
59
+ }
60
+ const recordedAt = (0, _standardGattProfile.recordedAtFromBloodPressureFrame)(frame);
61
+ let cursor = 7 + ((flags & 0x02) !== 0 ? 7 : 0);
62
+ const heartRate = (flags & 0x04) !== 0 ? sfloat(bytes, cursor) : undefined;
63
+ cursor += (flags & 0x04) !== 0 ? 2 : 0;
64
+ const user = (flags & 0x08) !== 0 ? bytes[cursor] : undefined;
65
+ const status = (0, _standardGattProfile.bloodPressureStatusFromFrame)(frame);
66
+ return {
67
+ systolic: Math.round(systolic * unit),
68
+ diastolic: Math.round(diastolic * unit),
69
+ ...(heartRate === undefined ? {} : {
70
+ heartRate
71
+ }),
72
+ ...(status === undefined ? {} : {
73
+ irregularHeartbeat: (status & 0x04) !== 0
74
+ }),
75
+ ...(recordedAt ? {
76
+ recordedAt
77
+ } : {}),
78
+ ...(user === undefined || user === 0xff ? {} : {
79
+ memorySlot: user + 1
80
+ })
81
+ };
82
+ };
83
+
84
+ /** `yearLE16 month day hour minute second` at `at`, local; undefined when the clock is unset. */
85
+ exports.readBloodPressure = readBloodPressure;
86
+ const readDateTime = (bytes, at) => {
87
+ const [low = 0, high = 0, month = 0, day = 0, hour = 0, minute = 0, second = 0] = bytes.slice(at, at + 7);
88
+ const year = low | high << 8;
89
+ const date = new Date(year, month - 1, day, hour, minute, second);
90
+ return year >= 2000 && date.getMonth() === month - 1 && date.getDate() === day ? date : undefined;
91
+ };
92
+
93
+ /**
94
+ * UC-352 record: flags (bit 0 = pounds), weight u16 LE in tenths, then the device time. Pounds
95
+ * are converted to kilograms. A record too short to carry a time uses the phone's, as MedM does.
96
+ */
97
+ const readWeight = (frame, now) => {
98
+ const bytes = frame.map(byte => (0, _hexToByte.hexToByte)(byte));
99
+ const raw = (bytes[1] ?? 0) | (bytes[2] ?? 0) << 8;
100
+ if (bytes.length < 3 || raw === 0 || raw === 0xffff) {
101
+ return undefined;
102
+ }
103
+ const value = ((bytes[0] ?? 0) & 0x01) !== 0 ? raw / 10 * POUND_IN_KG : raw / 10;
104
+ const recordedAt = bytes.length >= 10 ? readDateTime(bytes, 3) : now;
105
+ return {
106
+ bodyWeight: Math.round(value * 100) / 100,
107
+ ...(recordedAt ? {
108
+ recordedAt
109
+ } : {})
110
+ };
111
+ };
112
+ exports.readWeight = readWeight;
113
+ //# sourceMappingURL=and-medical.protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_decodeMedicalFloat","require","_hexToByte","_standardGattProfile","sig16","assigned","AND_MEDICAL","exports","bloodPressureService","bloodPressureMeasurement","dateTime","currentTimeService","currentTime","commandService","command","scaleService","scaleRecord","POUND_IN_KG","KPA_IN_MMHG","toHex","bytes","map","value","toString","padStart","dateTimeCommand","now","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","scaleSetTimeCommand","sfloat","at","length","decodeMedicalFloat","undefined","readBloodPressure","frame","byte","hexToByte","flags","unit","systolic","diastolic","recordedAt","recordedAtFromBloodPressureFrame","cursor","heartRate","user","status","bloodPressureStatusFromFrame","Math","round","irregularHeartbeat","memorySlot","readDateTime","low","high","month","day","hour","minute","second","slice","year","date","Date","readWeight","raw","bodyWeight"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/and-medical/and-medical.protocol.ts"],"mappings":";;;;;;AAEA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,oBAAA,GAAAF,OAAA;AAJA;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,KAAK,GAAIC,QAAgB,IAC7B,OAAOA,QAAQ,8BAA8B;AAExC,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG;EACzBE,oBAAoB,EAAEJ,KAAK,CAAC,MAAM,CAAC;EACnCK,wBAAwB,EAAEL,KAAK,CAAC,MAAM,CAAC;EACvCM,QAAQ,EAAEN,KAAK,CAAC,MAAM,CAAC;EACvBO,kBAAkB,EAAEP,KAAK,CAAC,MAAM,CAAC;EACjCQ,WAAW,EAAER,KAAK,CAAC,MAAM,CAAC;EAC1BS,cAAc,EAAE,sCAAsC;EACtDC,OAAO,EAAE,sCAAsC;EAC/CC,YAAY,EAAE,sCAAsC;EACpDC,WAAW,EAAE;AACf,CAAU;AAEV,MAAMC,WAAW,GAAG,UAAU;AAC9B,MAAMC,WAAW,GAAG,QAAQ;AAE5B,MAAMC,KAAK,GAAIC,KAAwB,IACrCA,KAAK,CAACC,GAAG,CAAEC,KAAK,IAAK,CAACA,KAAK,GAAG,IAAI,EAAEC,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;;AAEpE;AACO,MAAMC,eAAe,GAAIC,GAAS,IACvCP,KAAK,CAAC,CACJO,GAAG,CAACC,WAAW,CAAC,CAAC,GAAG,IAAI,EACxBD,GAAG,CAACC,WAAW,CAAC,CAAC,IAAI,CAAC,EACtBD,GAAG,CAACE,QAAQ,CAAC,CAAC,GAAG,CAAC,EAClBF,GAAG,CAACG,OAAO,CAAC,CAAC,EACbH,GAAG,CAACI,QAAQ,CAAC,CAAC,EACdJ,GAAG,CAACK,UAAU,CAAC,CAAC,EAChBL,GAAG,CAACM,UAAU,CAAC,CAAC,CACjB,CAAC;;AAEJ;AAAAzB,OAAA,CAAAkB,eAAA,GAAAA,eAAA;AACO,MAAMQ,mBAAmB,GAAIP,GAAS,IAC3CP,KAAK,CAAC,CACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJO,GAAG,CAACC,WAAW,CAAC,CAAC,GAAG,GAAG,EACvBD,GAAG,CAACE,QAAQ,CAAC,CAAC,GAAG,CAAC,EAClBF,GAAG,CAACG,OAAO,CAAC,CAAC,EACbH,GAAG,CAACI,QAAQ,CAAC,CAAC,EACdJ,GAAG,CAACK,UAAU,CAAC,CAAC,EAChBL,GAAG,CAACM,UAAU,CAAC,CAAC,CACjB,CAAC;AAACzB,OAAA,CAAA0B,mBAAA,GAAAA,mBAAA;AAEL,MAAMC,MAAM,GAAGA,CAACd,KAAwB,EAAEe,EAAU,KAClDA,EAAE,GAAG,CAAC,GAAGf,KAAK,CAACgB,MAAM,GACjB,IAAAC,sCAAkB,EAAC,CAACjB,KAAK,CAACe,EAAE,CAAC,IAAI,CAAC,IAAK,CAACf,KAAK,CAACe,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GACzEG,SAAS;;AAEf;AACA;AACA;AACA;AACA;AACO,MAAMC,iBAAiB,GAAIC,KAAwB,IAA0C;EAClG,MAAMpB,KAAK,GAAGoB,KAAK,CAACnB,GAAG,CAAEoB,IAAI,IAAK,IAAAC,oBAAS,EAACD,IAAI,CAAC,CAAC;EAClD,MAAME,KAAK,GAAGvB,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;EAC3B,MAAMwB,IAAI,GAAG,CAACD,KAAK,GAAG,IAAI,MAAM,CAAC,GAAGzB,WAAW,GAAG,CAAC;EACnD,MAAM2B,QAAQ,GAAGX,MAAM,CAACd,KAAK,EAAE,CAAC,CAAC;EACjC,MAAM0B,SAAS,GAAGZ,MAAM,CAACd,KAAK,EAAE,CAAC,CAAC;EAElC,IAAIyB,QAAQ,KAAKP,SAAS,IAAIQ,SAAS,KAAKR,SAAS,EAAE;IACrD,OAAOA,SAAS;EAClB;EAEA,MAAMS,UAAU,GAAG,IAAAC,qDAAgC,EAACR,KAAK,CAAC;EAC1D,IAAIS,MAAM,GAAG,CAAC,IAAI,CAACN,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EAC/C,MAAMO,SAAS,GAAG,CAACP,KAAK,GAAG,IAAI,MAAM,CAAC,GAAGT,MAAM,CAACd,KAAK,EAAE6B,MAAM,CAAC,GAAGX,SAAS;EAE1EW,MAAM,IAAI,CAACN,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;EACtC,MAAMQ,IAAI,GAAG,CAACR,KAAK,GAAG,IAAI,MAAM,CAAC,GAAGvB,KAAK,CAAC6B,MAAM,CAAC,GAAGX,SAAS;EAC7D,MAAMc,MAAM,GAAG,IAAAC,iDAA4B,EAACb,KAAK,CAAC;EAElD,OAAO;IACLK,QAAQ,EAAES,IAAI,CAACC,KAAK,CAACV,QAAQ,GAAGD,IAAI,CAAC;IACrCE,SAAS,EAAEQ,IAAI,CAACC,KAAK,CAACT,SAAS,GAAGF,IAAI,CAAC;IACvC,IAAIM,SAAS,KAAKZ,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEY;IAAU,CAAC,CAAC;IACjD,IAAIE,MAAM,KAAKd,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEkB,kBAAkB,EAAE,CAACJ,MAAM,GAAG,IAAI,MAAM;IAAE,CAAC,CAAC;IAC9E,IAAIL,UAAU,GAAG;MAAEA;IAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,IAAII,IAAI,KAAKb,SAAS,IAAIa,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG;MAAEM,UAAU,EAAEN,IAAI,GAAG;IAAE,CAAC;EACzE,CAAC;AACH,CAAC;;AAED;AAAA5C,OAAA,CAAAgC,iBAAA,GAAAA,iBAAA;AACA,MAAMmB,YAAY,GAAGA,CAACtC,KAAwB,EAAEe,EAAU,KAAuB;EAC/E,MAAM,CAACwB,GAAG,GAAG,CAAC,EAAEC,IAAI,GAAG,CAAC,EAAEC,KAAK,GAAG,CAAC,EAAEC,GAAG,GAAG,CAAC,EAAEC,IAAI,GAAG,CAAC,EAAEC,MAAM,GAAG,CAAC,EAAEC,MAAM,GAAG,CAAC,CAAC,GAAG7C,KAAK,CAAC8C,KAAK,CAAC/B,EAAE,EAAEA,EAAE,GAAG,CAAC,CAAC;EACzG,MAAMgC,IAAI,GAAGR,GAAG,GAAIC,IAAI,IAAI,CAAE;EAC9B,MAAMQ,IAAI,GAAG,IAAIC,IAAI,CAACF,IAAI,EAAEN,KAAK,GAAG,CAAC,EAAEC,GAAG,EAAEC,IAAI,EAAEC,MAAM,EAAEC,MAAM,CAAC;EAEjE,OAAOE,IAAI,IAAI,IAAI,IAAIC,IAAI,CAACxC,QAAQ,CAAC,CAAC,KAAKiC,KAAK,GAAG,CAAC,IAAIO,IAAI,CAACvC,OAAO,CAAC,CAAC,KAAKiC,GAAG,GAAGM,IAAI,GAAG9B,SAAS;AACnG,CAAC;;AAED;AACA;AACA;AACA;AACO,MAAMgC,UAAU,GAAGA,CACxB9B,KAAwB,EACxBd,GAAS,KACiD;EAC1D,MAAMN,KAAK,GAAGoB,KAAK,CAACnB,GAAG,CAAEoB,IAAI,IAAK,IAAAC,oBAAS,EAACD,IAAI,CAAC,CAAC;EAClD,MAAM8B,GAAG,GAAG,CAACnD,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAK,CAACA,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAE;EAEpD,IAAIA,KAAK,CAACgB,MAAM,GAAG,CAAC,IAAImC,GAAG,KAAK,CAAC,IAAIA,GAAG,KAAK,MAAM,EAAE;IACnD,OAAOjC,SAAS;EAClB;EAEA,MAAMhB,KAAK,GAAG,CAAC,CAACF,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,GAAImD,GAAG,GAAG,EAAE,GAAItD,WAAW,GAAGsD,GAAG,GAAG,EAAE;EAClF,MAAMxB,UAAU,GAAG3B,KAAK,CAACgB,MAAM,IAAI,EAAE,GAAGsB,YAAY,CAACtC,KAAK,EAAE,CAAC,CAAC,GAAGM,GAAG;EAEpE,OAAO;IACL8C,UAAU,EAAElB,IAAI,CAACC,KAAK,CAACjC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG;IACzC,IAAIyB,UAAU,GAAG;MAAEA;IAAW,CAAC,GAAG,CAAC,CAAC;EACtC,CAAC;AACH,CAAC;AAACxC,OAAA,CAAA+D,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AndMedicalSequencer = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _caseType = require("../../../types/case-type.js");
9
+ var _andMedicalProtocol = require("./and-medical.protocol.js");
10
+ /** `bpm`: time to 0x1810/0x2A08; `bpmCts`: to 0x1805/0x2A2B (UA-1200BLE/UB-1100BLE); `scale`: UC-352. */
11
+
12
+ /** MedM waits this long after connecting before a monitor's clock write. */
13
+ const MONITOR_TIME_DELAY_MS = 1_000;
14
+
15
+ /**
16
+ * Sets the clock, then reports whatever the device indicates. A monitor resends stored readings,
17
+ * so an exact repeat (same time and values) within one connection is reported once.
18
+ */
19
+ class AndMedicalSequencer {
20
+ recorded = false;
21
+ seen = new Set();
22
+ constructor(params) {
23
+ this.params = params;
24
+ }
25
+ initialCommands = () => {
26
+ const now = this.now();
27
+ if (this.params.kind === "scale") {
28
+ return [{
29
+ serviceUuid: _andMedicalProtocol.AND_MEDICAL.commandService,
30
+ characteristicUuid: _andMedicalProtocol.AND_MEDICAL.command,
31
+ frame: (0, _andMedicalProtocol.scaleSetTimeCommand)(now)
32
+ }];
33
+ }
34
+ const cts = this.params.kind === "bpmCts";
35
+ return [{
36
+ serviceUuid: cts ? _andMedicalProtocol.AND_MEDICAL.currentTimeService : _andMedicalProtocol.AND_MEDICAL.bloodPressureService,
37
+ characteristicUuid: cts ? _andMedicalProtocol.AND_MEDICAL.currentTime : _andMedicalProtocol.AND_MEDICAL.dateTime,
38
+ frame: (0, _andMedicalProtocol.dateTimeCommand)(now),
39
+ delayBeforeWriteMs: MONITOR_TIME_DELAY_MS
40
+ }];
41
+ };
42
+ isNormalDisconnect = () => this.recorded;
43
+ nextCommand = frame => {
44
+ if (this.params.kind === "scale") {
45
+ const weight = (0, _andMedicalProtocol.readWeight)(frame, this.now());
46
+ if (weight) {
47
+ this.report({
48
+ measurementTypeKey: _core.MeasurementTypeKey.bodyWeight,
49
+ ...weight
50
+ });
51
+ }
52
+ return undefined;
53
+ }
54
+ const reading = (0, _andMedicalProtocol.readBloodPressure)(frame);
55
+ const key = reading?.recordedAt instanceof Date ? JSON.stringify(reading) : undefined;
56
+ if (reading && !(key && this.seen.has(key))) {
57
+ if (key) {
58
+ this.seen.add(key);
59
+ }
60
+ this.report({
61
+ measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
62
+ ...reading
63
+ });
64
+ }
65
+ return undefined;
66
+ };
67
+ report = reading => {
68
+ this.recorded = true;
69
+ this.params.onResult({
70
+ caseType: _caseType.CaseType.RESULT,
71
+ ...reading
72
+ });
73
+ };
74
+ now = () => this.params.now?.() ?? new Date();
75
+ }
76
+ exports.AndMedicalSequencer = AndMedicalSequencer;
77
+ //# sourceMappingURL=and-medical.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_andMedicalProtocol","MONITOR_TIME_DELAY_MS","AndMedicalSequencer","recorded","seen","Set","constructor","params","initialCommands","now","kind","serviceUuid","AND_MEDICAL","commandService","characteristicUuid","command","frame","scaleSetTimeCommand","cts","currentTimeService","bloodPressureService","currentTime","dateTime","dateTimeCommand","delayBeforeWriteMs","isNormalDisconnect","nextCommand","weight","readWeight","report","measurementTypeKey","MeasurementTypeKey","bodyWeight","undefined","reading","readBloodPressure","key","recordedAt","Date","JSON","stringify","has","add","bloodPressure","onResult","caseType","CaseType","RESULT","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/and-medical/and-medical.sequencer.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAIA,IAAAE,mBAAA,GAAAF,OAAA;AAQA;;AAGA;AACA,MAAMG,qBAAqB,GAAG,KAAK;;AAEnC;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,CAA6B;EAC5CC,QAAQ,GAAG,KAAK;EACPC,IAAI,GAAG,IAAIC,GAAG,CAAS,CAAC;EAElCC,WAAWA,CACCC,MAIhB,EACD;IAAA,KALiBA,MAIhB,GAJgBA,MAIhB;EACA;EAEIC,eAAe,GAAGA,CAAA,KAAgC;IACvD,MAAMC,GAAG,GAAG,IAAI,CAACA,GAAG,CAAC,CAAC;IAEtB,IAAI,IAAI,CAACF,MAAM,CAACG,IAAI,KAAK,OAAO,EAAE;MAChC,OAAO,CACL;QACEC,WAAW,EAAEC,+BAAW,CAACC,cAAc;QACvCC,kBAAkB,EAAEF,+BAAW,CAACG,OAAO;QACvCC,KAAK,EAAE,IAAAC,uCAAmB,EAACR,GAAG;MAChC,CAAC,CACF;IACH;IAEA,MAAMS,GAAG,GAAG,IAAI,CAACX,MAAM,CAACG,IAAI,KAAK,QAAQ;IAEzC,OAAO,CACL;MACEC,WAAW,EAAEO,GAAG,GAAGN,+BAAW,CAACO,kBAAkB,GAAGP,+BAAW,CAACQ,oBAAoB;MACpFN,kBAAkB,EAAEI,GAAG,GAAGN,+BAAW,CAACS,WAAW,GAAGT,+BAAW,CAACU,QAAQ;MACxEN,KAAK,EAAE,IAAAO,mCAAe,EAACd,GAAG,CAAC;MAC3Be,kBAAkB,EAAEvB;IACtB,CAAC,CACF;EACH,CAAC;EAEMwB,kBAAkB,GAAGA,CAAA,KAAe,IAAI,CAACtB,QAAQ;EAEjDuB,WAAW,GAAIV,KAAwB,IAA2C;IACvF,IAAI,IAAI,CAACT,MAAM,CAACG,IAAI,KAAK,OAAO,EAAE;MAChC,MAAMiB,MAAM,GAAG,IAAAC,8BAAU,EAACZ,KAAK,EAAE,IAAI,CAACP,GAAG,CAAC,CAAC,CAAC;MAE5C,IAAIkB,MAAM,EAAE;QACV,IAAI,CAACE,MAAM,CAAC;UAAEC,kBAAkB,EAAEC,wBAAkB,CAACC,UAAU;UAAE,GAAGL;QAAO,CAAC,CAAC;MAC/E;MAEA,OAAOM,SAAS;IAClB;IAEA,MAAMC,OAAO,GAAG,IAAAC,qCAAiB,EAACnB,KAAK,CAAC;IAExC,MAAMoB,GAAG,GAAGF,OAAO,EAAEG,UAAU,YAAYC,IAAI,GAAGC,IAAI,CAACC,SAAS,CAACN,OAAO,CAAC,GAAGD,SAAS;IAErF,IAAIC,OAAO,IAAI,EAAEE,GAAG,IAAI,IAAI,CAAChC,IAAI,CAACqC,GAAG,CAACL,GAAG,CAAC,CAAC,EAAE;MAC3C,IAAIA,GAAG,EAAE;QACP,IAAI,CAAChC,IAAI,CAACsC,GAAG,CAACN,GAAG,CAAC;MACpB;MACA,IAAI,CAACP,MAAM,CAAC;QAAEC,kBAAkB,EAAEC,wBAAkB,CAACY,aAAa;QAAE,GAAGT;MAAQ,CAAC,CAAC;IACnF;IAEA,OAAOD,SAAS;EAClB,CAAC;EAEOJ,MAAM,GAAIK,OAAgC,IAAW;IAC3D,IAAI,CAAC/B,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACI,MAAM,CAACqC,QAAQ,CAAC;MAAEC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;MAAE,GAAGb;IAAQ,CAAC,CAAC;EACjE,CAAC;EAEOzB,GAAG,GAAGA,CAAA,KAAY,IAAI,CAACF,MAAM,CAACE,GAAG,GAAG,CAAC,IAAI,IAAI6B,IAAI,CAAC,CAAC;AAC7D;AAACU,OAAA,CAAA9C,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -26,7 +26,7 @@ class Aoj70bDevice extends _btManagedDevice.BTManagedDevice {
26
26
  constructor(device, params) {
27
27
  super(device, params);
28
28
  this.createCommandSequencer = () => new _liveOximeterSequencer.LiveOximeterSequencer({
29
- isValuesFrame: _liveOximeterSequencer.AOJ_VALUES,
29
+ readValues: frame => (0, _liveOximeterSequencer.readOximeterData)(frame, _liveOximeterSequencer.AOJ_VALUES),
30
30
  onResult: result => this.onResult?.(result)
31
31
  });
32
32
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_btManagedDevice","require","_liveOximeterSequencer","_aojBpProtocol","aoj70bMainServices","uuid","AOJ_BP","service","monitorUuids","notify","parsingModel","caseValuePosition","cases","Aoj70bDevice","BTManagedDevice","mainServices","stuckDataTimeout","onStreamStart","undefined","constructor","device","params","createCommandSequencer","LiveOximeterSequencer","isValuesFrame","AOJ_VALUES","onResult","result","validatePackage","handleSuccessResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/aoj/aoj-70b.device.ts"],"mappings":";;;;;;AAOA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEA,IAAAE,cAAA,GAAAF,OAAA;AAEA,MAAMG,kBAA8B,GAAG,CACrC;EACEC,IAAI,EAAEC,qBAAM,CAACC,OAAO;EACpBC,YAAY,EAAE,CAAC;IAAEH,IAAI,EAAEC,qBAAM,CAACG,MAAM;IAAEC,YAAY,EAAE;MAAEC,iBAAiB,EAAE,EAAE;MAAEC,KAAK,EAAE;IAAG;EAAE,CAAC;AAC5F,CAAC,CACF;;AAED;AACA,MAAMC,YAAY,SAASC,gCAAe,CAA4B;EAC1DC,YAAY,GAAGX,kBAAkB;EACjCY,gBAAgB,GAAG,OAAO;EAC1BC,aAAa,GAAGC,SAAS;EAE5BC,WAAWA,CAACC,MAAc,EAAEC,MAAqD,EAAE;IACxF,KAAK,CAACD,MAAM,EAAEC,MAAM,CAAC;IACrB,IAAI,CAACC,sBAAsB,GAAG,MAC5B,IAAIC,4CAAqB,CAAC;MACxBC,aAAa,EAAEC,iCAAU;MACzBC,QAAQ,EAAGC,MAAM,IACf,IAAI,CAACD,QAAQ,GACXC,MAGF;IACJ,CAAC,CAAC;EACN;;EAEA;EACUC,eAAe,GAAGA,CAAA,KAAe,IAAI;EAErCC,mBAAmBA,CAAA,EAAS;IACpC;EACF;AACF;AAACC,OAAA,CAAAjB,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_btManagedDevice","require","_liveOximeterSequencer","_aojBpProtocol","aoj70bMainServices","uuid","AOJ_BP","service","monitorUuids","notify","parsingModel","caseValuePosition","cases","Aoj70bDevice","BTManagedDevice","mainServices","stuckDataTimeout","onStreamStart","undefined","constructor","device","params","createCommandSequencer","LiveOximeterSequencer","readValues","frame","readOximeterData","AOJ_VALUES","onResult","result","validatePackage","handleSuccessResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/aoj/aoj-70b.device.ts"],"mappings":";;;;;;AAOA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAEA,IAAAE,cAAA,GAAAF,OAAA;AAEA,MAAMG,kBAA8B,GAAG,CACrC;EACEC,IAAI,EAAEC,qBAAM,CAACC,OAAO;EACpBC,YAAY,EAAE,CAAC;IAAEH,IAAI,EAAEC,qBAAM,CAACG,MAAM;IAAEC,YAAY,EAAE;MAAEC,iBAAiB,EAAE,EAAE;MAAEC,KAAK,EAAE;IAAG;EAAE,CAAC;AAC5F,CAAC,CACF;;AAED;AACA,MAAMC,YAAY,SAASC,gCAAe,CAA4B;EAC1DC,YAAY,GAAGX,kBAAkB;EACjCY,gBAAgB,GAAG,OAAO;EAC1BC,aAAa,GAAGC,SAAS;EAE5BC,WAAWA,CAACC,MAAc,EAAEC,MAAqD,EAAE;IACxF,KAAK,CAACD,MAAM,EAAEC,MAAM,CAAC;IACrB,IAAI,CAACC,sBAAsB,GAAG,MAC5B,IAAIC,4CAAqB,CAAC;MACxBC,UAAU,EAAGC,KAAK,IAAK,IAAAC,uCAAgB,EAACD,KAAK,EAAEE,iCAAU,CAAC;MAC1DC,QAAQ,EAAGC,MAAM,IACf,IAAI,CAACD,QAAQ,GACXC,MAGF;IACJ,CAAC,CAAC;EACN;;EAEA;EACUC,eAAe,GAAGA,CAAA,KAAe,IAAI;EAErCC,mBAAmBA,CAAA,EAAS;IACpC;EACF;AACF;AAACC,OAAA,CAAAnB,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -9,35 +9,17 @@ var _caseType = require("../../../types/case-type.js");
9
9
  var _integratedDevices = require("../../../types/integrated-devices.js");
10
10
  var _hexToByte = require("../../../utils/hex-to-byte.js");
11
11
  var _btManagedDevice = require("../bt-managed-device.js");
12
- const LEGACY_SERVICE = "00001523-1212-efde-1523-785feabcd123";
13
- const LEGACY_CHARACTERISTIC = "00001524-1212-efde-1523-785feabcd123";
12
+ var _taidocProtocol = require("../taidoc/taidoc.protocol.js");
13
+ var _taidocRecords = require("../taidoc/taidoc.records.js");
14
14
  const BGM_SERVICE = "0003cdd0-0000-1000-8000-00805f9b0131";
15
15
  const BGM_CHARACTERISTIC = "0003cdd1-0000-1000-8000-00805f9b0131";
16
- const GLUCOSE_REQUEST = "512600000000a31a";
17
-
18
- /**
19
- * Frame byte 5 of the TaiDoc `0x26` stored-result reply (`51 26 d0 d1 d2 d3 a5 cs`) is d3:
20
- * bits 6-7 the meal flag, where `11` marks a control-solution test, and on multi-parameter
21
- * meters bits 2-5 the parameter - 0 glucose; 6 haematocrit, 7 ketone, 8 uric acid,
22
- * 9 cholesterol, 11 haemoglobin, 12 lactate, 13 triglycerides. Single-parameter TaiDoc meters
23
- * keep the strip code in bits 2-5 instead, so this check holds only for multi-parameter ones;
24
- * the TD-4216 and GlucoCheck Gold behind these two parsers both are.
25
- */
26
- const RECORD_FLAGS_BYTE = 5;
27
- const CONTROL_SOLUTION_FLAG = 0b11;
28
- const GLUCOSE_PARAMETER = 0;
29
-
30
- /** A stored TaiDoc result is a patient glucose reading, not another analyte or a control test. */
31
- const isPatientGlucoseRecord = frame => {
32
- const flags = (0, _hexToByte.hexToByte)(frame[RECORD_FLAGS_BYTE] ?? "00");
33
- return flags >> 6 !== CONTROL_SOLUTION_FLAG && (flags >> 2 & 0x0f) === GLUCOSE_PARAMETER;
34
- };
16
+ const GLUCOSE_REQUEST = (0, _taidocProtocol.taidocCommand)(_taidocProtocol.TAIDOC.readingResult).join("");
35
17
  const servicesFor = device => {
36
18
  const isBgm = device === _integratedDevices.IntegratedDevices.BGM;
37
19
  return [{
38
- uuid: isBgm ? BGM_SERVICE : LEGACY_SERVICE,
20
+ uuid: isBgm ? BGM_SERVICE : _taidocProtocol.TAIDOC_SERVICE,
39
21
  monitorUuids: [{
40
- uuid: isBgm ? BGM_CHARACTERISTIC : LEGACY_CHARACTERISTIC,
22
+ uuid: isBgm ? BGM_CHARACTERISTIC : _taidocProtocol.TAIDOC_CHARACTERISTIC,
41
23
  parsingModel: {
42
24
  caseValuePosition: [isBgm ? 9 : 1],
43
25
  cases: [...(isBgm ? ["00", "0b", "10", "11", "18", "22", "33", "55"] : ["46", ...(device === _integratedDevices.IntegratedDevices.GLUCOCHECK ? ["50"] : [])]).map(caseValue => ({
@@ -66,7 +48,7 @@ const servicesFor = device => {
66
48
  }],
67
49
  ...(isBgm ? {} : {
68
50
  writeUuid: {
69
- uuid: LEGACY_CHARACTERISTIC,
51
+ uuid: _taidocProtocol.TAIDOC_CHARACTERISTIC,
70
52
  mainCommandUuid: GLUCOSE_REQUEST
71
53
  }
72
54
  })
@@ -87,7 +69,7 @@ class BloodGlucoseDevice extends _btManagedDevice.BTManagedDevice {
87
69
  }
88
70
 
89
71
  // A ketone, cholesterol or control-solution record decodes to a number too; it is not glucose.
90
- if (this.deviceData.name !== _integratedDevices.IntegratedDevices.BGM && !isPatientGlucoseRecord(frame)) {
72
+ if (this.deviceData.name !== _integratedDevices.IntegratedDevices.BGM && !(0, _taidocRecords.isPatientGlucoseRecord)(frame)) {
91
73
  return;
92
74
  }
93
75
  this.onResult?.(result);
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_caseType","_integratedDevices","_hexToByte","_btManagedDevice","LEGACY_SERVICE","LEGACY_CHARACTERISTIC","BGM_SERVICE","BGM_CHARACTERISTIC","GLUCOSE_REQUEST","RECORD_FLAGS_BYTE","CONTROL_SOLUTION_FLAG","GLUCOSE_PARAMETER","isPatientGlucoseRecord","frame","flags","hexToByte","servicesFor","device","isBgm","IntegratedDevices","BGM","uuid","monitorUuids","parsingModel","caseValuePosition","cases","GLUCOCHECK","map","caseValue","caseType","CaseType","OTHER","parseDefinitions","measurementTypeKey","MeasurementTypeKey","bloodGlucose","RESULT","name","parseType","byteIndexes","parseReference","customParserDefinition","value","slice","raw","parseInt","TAIDOC_GLUCOSE","Number","toFixed","writeUuid","mainCommandUuid","BloodGlucoseDevice","BTManagedDevice","stuckDataTimeout","constructor","params","mainServices","deviceName","validatePackage","pkg","length","deviceData","handleSuccessResult","result","onResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/blood-glucose/blood-glucose.device.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,SAAA,GAAAD,OAAA;AAGA,IAAAE,kBAAA,GAAAF,OAAA;AAGA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAEA,MAAMK,cAAc,GAAG,sCAAsC;AAC7D,MAAMC,qBAAqB,GAAG,sCAAsC;AACpE,MAAMC,WAAW,GAAG,sCAAsC;AAC1D,MAAMC,kBAAkB,GAAG,sCAAsC;AACjE,MAAMC,eAAe,GAAG,kBAAkB;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,qBAAqB,GAAG,IAAI;AAClC,MAAMC,iBAAiB,GAAG,CAAC;;AAE3B;AACA,MAAMC,sBAAsB,GAAIC,KAAwB,IAAc;EACpE,MAAMC,KAAK,GAAG,IAAAC,oBAAS,EAACF,KAAK,CAACJ,iBAAiB,CAAC,IAAI,IAAI,CAAC;EAEzD,OACEK,KAAK,IAAI,CAAC,KAAKJ,qBAAqB,IACpC,CAAEI,KAAK,IAAI,CAAC,GAAI,IAAI,MAAMH,iBAAiB;AAE/C,CAAC;AAOD,MAAMK,WAAW,GAAIC,MAAqB,IAAiB;EACzD,MAAMC,KAAK,GAAGD,MAAM,KAAKE,oCAAiB,CAACC,GAAG;EAE9C,OAAO,CACL;IACEC,IAAI,EAAEH,KAAK,GAAGZ,WAAW,GAAGF,cAAc;IAC1CkB,YAAY,EAAE,CACZ;MACED,IAAI,EAAEH,KAAK,GAAGX,kBAAkB,GAAGF,qBAAqB;MACxDkB,YAAY,EAAE;QACZC,iBAAiB,EAAE,CAACN,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QAClCO,KAAK,EAAE,CACL,GAAG,CAACP,KAAK,GACL,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAChD,CAAC,IAAI,EAAE,IAAID,MAAM,KAAKE,oCAAiB,CAACO,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EACpEC,GAAG,CAAEC,SAAS,KAAM;UACpBC,QAAQ,EAAEC,kBAAQ,CAACC,KAAK;UACxBH,SAAS;UACTI,gBAAgB,EAAE;QACpB,CAAC,CAAC,CAAC,EACH;UACEC,kBAAkB,EAAEC,wBAAkB,CAACC,YAAY;UACnDN,QAAQ,EAAEC,kBAAQ,CAACM,MAAM;UACzBR,SAAS,EAAEV,KAAK,GAAG,IAAI,GAAG,IAAI;UAC9Bc,gBAAgB,EAAE,CAChB;YACEK,IAAI,EAAE,cAAc;YACpBC,SAAS,EAAE,QAAiB;YAC5BC,WAAW,EAAErB,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YACtCsB,cAAc,EAAE,EAAE;YAClBC,sBAAsB,EAAGC,KAAa,IAAa;cACjD,IAAIxB,KAAK,EAAE;gBACT,OAAO,IAAAH,oBAAS,EAAC2B,KAAK,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAA5B,oBAAS,EAAC2B,KAAK,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;cAC1E;cAEA,MAAMC,GAAG,GAAGC,QAAQ,CAACH,KAAK,EAAE,EAAE,CAAC;cAE/B,OAAOzB,MAAM,KAAKE,oCAAiB,CAAC2B,cAAc,GAC9CC,MAAM,CAAC,CAACH,GAAG,GAAG,EAAE,EAAEI,OAAO,CAAC,CAAC,CAAC,CAAC,GAC7BJ,GAAG;YACT;UACF,CAAC;QAEL,CAAC;MAEL;IACF,CAAC,CACF;IACD,IAAI1B,KAAK,GACL,CAAC,CAAC,GACF;MACE+B,SAAS,EAAE;QACT5B,IAAI,EAAEhB,qBAAqB;QAC3B6C,eAAe,EAAE1C;MACnB;IACF,CAAC;EACP,CAAC,CACF;AACH,CAAC;;AAED;AACO,MAAM2C,kBAAkB,SAASC,gCAAe,CAAgB;EAE3DC,gBAAgB,GAAG,MAAM;EAG5BC,WAAWA,CAChBrC,MAAc,EACdsC,MAAyC,EACzC;IACA,KAAK,CAACtC,MAAM,EAAEsC,MAAM,CAAC;IACrB,IAAI,CAACC,YAAY,GAAGxC,WAAW,CAACuC,MAAM,CAACE,UAAU,CAAC;EACpD;EAEUC,eAAe,GAAIC,GAAa,IACxCA,GAAG,CAACC,MAAM,KAAK,IAAI,CAACC,UAAU,CAACxB,IAAI,KAAKlB,oCAAiB,CAACC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;EAE/D0C,mBAAmBA,CAC3BC,MAA2E,EAC3ElD,KAAe,EACT;IACN,IAAIkD,MAAM,CAAClC,QAAQ,KAAKC,kBAAQ,CAACM,MAAM,IAAI2B,MAAM,CAAC5B,YAAY,KAAK,CAAC,EAAE;MACpE;IACF;;IAEA;IACA,IACE,IAAI,CAAC0B,UAAU,CAACxB,IAAI,KAAKlB,oCAAiB,CAACC,GAAG,IAC9C,CAACR,sBAAsB,CAACC,KAAK,CAAC,EAC9B;MACA;IACF;IAEA,IAAI,CAACmD,QAAQ,GAAGD,MAA0D,CAAC;EAC7E;AACF;AAACE,OAAA,CAAAd,kBAAA,GAAAA,kBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_caseType","_integratedDevices","_hexToByte","_btManagedDevice","_taidocProtocol","_taidocRecords","BGM_SERVICE","BGM_CHARACTERISTIC","GLUCOSE_REQUEST","taidocCommand","TAIDOC","readingResult","join","servicesFor","device","isBgm","IntegratedDevices","BGM","uuid","TAIDOC_SERVICE","monitorUuids","TAIDOC_CHARACTERISTIC","parsingModel","caseValuePosition","cases","GLUCOCHECK","map","caseValue","caseType","CaseType","OTHER","parseDefinitions","measurementTypeKey","MeasurementTypeKey","bloodGlucose","RESULT","name","parseType","byteIndexes","parseReference","customParserDefinition","value","hexToByte","slice","raw","parseInt","TAIDOC_GLUCOSE","Number","toFixed","writeUuid","mainCommandUuid","BloodGlucoseDevice","BTManagedDevice","stuckDataTimeout","constructor","params","mainServices","deviceName","validatePackage","pkg","length","deviceData","handleSuccessResult","result","frame","isPatientGlucoseRecord","onResult","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/blood-glucose/blood-glucose.device.ts"],"mappings":"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","ignoreList":[]}
@@ -38,6 +38,7 @@ class BTDataProcessor {
38
38
  currentUuid = "";
39
39
  destroy = () => {
40
40
  this.buffers.clear();
41
+ this.frameReader?.reset?.();
41
42
  this.currentUuid = "";
42
43
  this.measurementState.reset();
43
44
  clearTimeout(this.stuckDataTimeout);
@@ -77,7 +78,7 @@ class BTDataProcessor {
77
78
  */
78
79
  readFramesFromBuffer = (reader, uuid, buffer) => {
79
80
  while (buffer.length > 0) {
80
- const result = reader.readFrame(buffer);
81
+ const result = reader.readFrame(buffer, uuid);
81
82
  const hasProgressed = result.consumedBytes > 0;
82
83
  buffer.splice(0, result.consumedBytes);
83
84
  if (result.status === _frameReadStatus.FrameReadStatus.COMPLETE) {
@@ -88,7 +89,7 @@ class BTDataProcessor {
88
89
  if (result.status === _frameReadStatus.FrameReadStatus.CORRUPT) {
89
90
  this.reportCorruptFrame();
90
91
  }
91
- if (result.status === _frameReadStatus.FrameReadStatus.INCOMPLETE || !hasProgressed) {
92
+ if (!hasProgressed) {
92
93
  break;
93
94
  }
94
95
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","INCOMPLETE","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","cause","message","setTimeout","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","cause","message","setTimeout","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.BTManagedDevice = void 0;
7
7
  var _sentryLogger = require("../../../helpers/utils/sentry-logger.js");
8
8
  var _telemetry = require("../../../helpers/utils/telemetry.js");
9
+ var _builtInMeasurementTypes = require("../../constants/built-in-measurement-types.js");
9
10
  var _deviceVariants = require("../../constants/device-variants.js");
10
11
  var _bluetoothError = require("../../types/bluetooth-error.js");
11
12
  var _clockSync = require("../../types/clock-sync.js");
@@ -31,9 +32,13 @@ class BTManagedDevice {
31
32
  * The timeout in milliseconds for the stuck data.
32
33
  */
33
34
 
34
- /** Override when the command sequencer emits results not decoded by frame cases. */
35
+ /**
36
+ * The frame cases' measurement types, or - for a sequencer-driven parser whose cases are
37
+ * empty - the parser's entry in `BUILT_IN_MEASUREMENT_TYPES`.
38
+ */
35
39
  getSupportedMeasurementTypeKeys() {
36
- return (0, _supportedMeasurementTypeKeys.supportedMeasurementTypeKeys)(this.mainServices);
40
+ const declared = (0, _supportedMeasurementTypeKeys.supportedMeasurementTypeKeys)(this.mainServices);
41
+ return declared.length > 0 ? declared : [...(_builtInMeasurementTypes.BUILT_IN_MEASUREMENT_TYPES[this.deviceData.name] ?? [])];
37
42
  }
38
43
 
39
44
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_telemetry","_deviceVariants","_bluetoothError","_clockSync","_deviceStatus","_resultIdentity","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","supportedMeasurementTypeKeys","mainServices","reportsBondedEvent","handleMeasurementEnd","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResult","onResultCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","resultPolicy","sentryLogger","deviceData","id","name","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","variant","findDeviceVariant","String","manufacturer","model","status","measurementTypeKey","addOvokSpanEvent","error","normalized","toBluetoothError","errorCode","code","originalError","translationKey","Error","caseType","_","data","policy","byMeasurement","default","has","add","temporal","end","Date","undefined","now","getTime","day","start","recordedAt","key","toISOString","slice","recordOvokMetric","kind","progress","current","result","Object","defineProperty","value","createStableResultId","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","handleSuccessResult","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","connectionPromise","resolve","finally","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_telemetry","_builtInMeasurementTypes","_deviceVariants","_bluetoothError","_clockSync","_deviceStatus","_resultIdentity","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","declared","supportedMeasurementTypeKeys","mainServices","length","BUILT_IN_MEASUREMENT_TYPES","deviceData","name","reportsBondedEvent","handleMeasurementEnd","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResult","onResultCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","resultPolicy","sentryLogger","id","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","variant","findDeviceVariant","String","manufacturer","model","status","measurementTypeKey","addOvokSpanEvent","error","normalized","toBluetoothError","errorCode","code","originalError","translationKey","Error","caseType","_","data","policy","byMeasurement","default","has","add","temporal","end","Date","undefined","now","getTime","day","start","recordedAt","key","toISOString","slice","recordOvokMetric","kind","progress","current","result","Object","defineProperty","value","createStableResultId","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","handleSuccessResult","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","connectionPromise","resolve","finally","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CofoeBpSequencer = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _caseType = require("../../../types/case-type.js");
9
+ var _cofoeProtocol = require("./cofoe.protocol.js");
10
+ var _cofoeRecords = require("./cofoe.records.js");
11
+ const BP = {
12
+ result: 0x03,
13
+ timeRequest: 0x06,
14
+ records: [0x02, 0x03]
15
+ };
16
+
17
+ /**
18
+ * Cofoe `FF FF` blood-pressure monitors. Both generations get the clock on connect and have
19
+ * every reading acknowledged; the device ends the session.
20
+ *
21
+ * - `history: false` (`Cofoe_BPM`): a live `03` result, timed by the phone.
22
+ * - `history: true` (`Cofoe_KF66EP`): `02`/`03` records stamped with the device's own (BCD)
23
+ * clock, which is set again whenever the device asks (`06`).
24
+ */
25
+ class CofoeBpSequencer {
26
+ recorded = false;
27
+ gatt = _cofoeProtocol.COFOE_GATT.bloodPressure;
28
+ constructor(params) {
29
+ this.params = params;
30
+ if (params.history) {
31
+ this.gatt = _cofoeProtocol.COFOE_GATT.history;
32
+ }
33
+ }
34
+
35
+ /** The records generation may expose its GATT under either UUID layout; write to the one found. */
36
+ onServicesDiscovered = serviceUuids => {
37
+ if (this.params.history && serviceUuids.includes(_cofoeProtocol.COFOE_GATT.historyReversed.service)) {
38
+ this.gatt = _cofoeProtocol.COFOE_GATT.historyReversed;
39
+ }
40
+ };
41
+ initialCommands = () => [this.command(this.setTime())];
42
+ isNormalDisconnect = () => this.recorded;
43
+ isHistoryTransfer = () => this.params.history;
44
+ nextCommand = frame => {
45
+ const {
46
+ command,
47
+ body
48
+ } = (0, _cofoeProtocol.unframe)("bloodPressure", frame);
49
+ if (this.params.history && command === BP.timeRequest) {
50
+ return [this.command(this.setTime())];
51
+ }
52
+ const isRecord = this.params.history ? BP.records.includes(command) : command === BP.result;
53
+ if (!isRecord) {
54
+ return undefined;
55
+ }
56
+ const reading = this.read(body);
57
+ if (reading) {
58
+ this.recorded = true;
59
+ this.params.onResult({
60
+ caseType: _caseType.CaseType.RESULT,
61
+ measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
62
+ ...reading
63
+ });
64
+ }
65
+ return [this.command(_cofoeProtocol.BP_ACK)];
66
+ };
67
+ read = body => {
68
+ if (this.params.history) {
69
+ return (0, _cofoeRecords.readBpRecord)(body);
70
+ }
71
+ const result = (0, _cofoeRecords.readBpResult)(body);
72
+ return result && {
73
+ ...result,
74
+ recordedAt: this.now()
75
+ };
76
+ };
77
+ setTime = () => this.params.history ? (0, _cofoeProtocol.historySetTime)(this.now()) : (0, _cofoeProtocol.bpSetTime)(this.now());
78
+ now = () => this.params.now?.() ?? new Date();
79
+ command = frame => ({
80
+ serviceUuid: this.gatt.service,
81
+ characteristicUuid: this.gatt.write,
82
+ frame
83
+ });
84
+ }
85
+ exports.CofoeBpSequencer = CofoeBpSequencer;
86
+ //# sourceMappingURL=cofoe-bp.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_cofoeProtocol","_cofoeRecords","BP","result","timeRequest","records","CofoeBpSequencer","recorded","gatt","COFOE_GATT","bloodPressure","constructor","params","history","onServicesDiscovered","serviceUuids","includes","historyReversed","service","initialCommands","command","setTime","isNormalDisconnect","isHistoryTransfer","nextCommand","frame","body","unframe","isRecord","undefined","reading","read","onResult","caseType","CaseType","RESULT","measurementTypeKey","MeasurementTypeKey","BP_ACK","readBpRecord","readBpResult","recordedAt","now","historySetTime","bpSetTime","Date","serviceUuid","characteristicUuid","write","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/cofoe/cofoe-bp.sequencer.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAIA,IAAAE,cAAA,GAAAF,OAAA;AAOA,IAAAG,aAAA,GAAAH,OAAA;AAEA,MAAMI,EAAE,GAAG;EAAEC,MAAM,EAAE,IAAI;EAAEC,WAAW,EAAE,IAAI;EAAEC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI;AAAE,CAAU;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,CAA6B;EACzCC,QAAQ,GAAG,KAAK;EAChBC,IAAI,GAAuCC,yBAAU,CAACC,aAAa;EAEpEC,WAAWA,CACCC,MAIhB,EACD;IAAA,KALiBA,MAIhB,GAJgBA,MAIhB;IAED,IAAIA,MAAM,CAACC,OAAO,EAAE;MAClB,IAAI,CAACL,IAAI,GAAGC,yBAAU,CAACI,OAAO;IAChC;EACF;;EAEA;EACOC,oBAAoB,GAAIC,YAA+B,IAAW;IACvE,IAAI,IAAI,CAACH,MAAM,CAACC,OAAO,IAAIE,YAAY,CAACC,QAAQ,CAACP,yBAAU,CAACQ,eAAe,CAACC,OAAO,CAAC,EAAE;MACpF,IAAI,CAACV,IAAI,GAAGC,yBAAU,CAACQ,eAAe;IACxC;EACF,CAAC;EAEME,eAAe,GAAGA,CAAA,KAAgC,CAAC,IAAI,CAACC,OAAO,CAAC,IAAI,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;EAEhFC,kBAAkB,GAAGA,CAAA,KAAe,IAAI,CAACf,QAAQ;EAEjDgB,iBAAiB,GAAGA,CAAA,KAAe,IAAI,CAACX,MAAM,CAACC,OAAO;EAEtDW,WAAW,GAAIC,KAAwB,IAA2C;IACvF,MAAM;MAAEL,OAAO;MAAEM;IAAK,CAAC,GAAG,IAAAC,sBAAO,EAAC,eAAe,EAAEF,KAAK,CAAC;IAEzD,IAAI,IAAI,CAACb,MAAM,CAACC,OAAO,IAAIO,OAAO,KAAKlB,EAAE,CAACE,WAAW,EAAE;MACrD,OAAO,CAAC,IAAI,CAACgB,OAAO,CAAC,IAAI,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;IACvC;IAEA,MAAMO,QAAQ,GAAG,IAAI,CAAChB,MAAM,CAACC,OAAO,GAC/BX,EAAE,CAACG,OAAO,CAAuBW,QAAQ,CAACI,OAAO,CAAC,GACnDA,OAAO,KAAKlB,EAAE,CAACC,MAAM;IAEzB,IAAI,CAACyB,QAAQ,EAAE;MACb,OAAOC,SAAS;IAClB;IAEA,MAAMC,OAAO,GAAG,IAAI,CAACC,IAAI,CAACL,IAAI,CAAC;IAE/B,IAAII,OAAO,EAAE;MACX,IAAI,CAACvB,QAAQ,GAAG,IAAI;MACpB,IAAI,CAACK,MAAM,CAACoB,QAAQ,CAAC;QACnBC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,kBAAkB,EAAEC,wBAAkB,CAAC3B,aAAa;QACpD,GAAGoB;MACL,CAAC,CAAC;IACJ;IAEA,OAAO,CAAC,IAAI,CAACV,OAAO,CAACkB,qBAAM,CAAC,CAAC;EAC/B,CAAC;EAEOP,IAAI,GAAIL,IAAuB,IAAK;IAC1C,IAAI,IAAI,CAACd,MAAM,CAACC,OAAO,EAAE;MACvB,OAAO,IAAA0B,0BAAY,EAACb,IAAI,CAAC;IAC3B;IAEA,MAAMvB,MAAM,GAAG,IAAAqC,0BAAY,EAACd,IAAI,CAAC;IAEjC,OAAOvB,MAAM,IAAI;MAAE,GAAGA,MAAM;MAAEsC,UAAU,EAAE,IAAI,CAACC,GAAG,CAAC;IAAE,CAAC;EACxD,CAAC;EAEOrB,OAAO,GAAGA,CAAA,KAChB,IAAI,CAACT,MAAM,CAACC,OAAO,GAAG,IAAA8B,6BAAc,EAAC,IAAI,CAACD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAAE,wBAAS,EAAC,IAAI,CAACF,GAAG,CAAC,CAAC,CAAC;EAElEA,GAAG,GAAGA,CAAA,KAAY,IAAI,CAAC9B,MAAM,CAAC8B,GAAG,GAAG,CAAC,IAAI,IAAIG,IAAI,CAAC,CAAC;EAEnDzB,OAAO,GAAIK,KAAwB,KAAqB;IAC9DqB,WAAW,EAAE,IAAI,CAACtC,IAAI,CAACU,OAAO;IAC9B6B,kBAAkB,EAAE,IAAI,CAACvC,IAAI,CAACwC,KAAK;IACnCvB;EACF,CAAC,CAAC;AACJ;AAACwB,OAAA,CAAA3C,gBAAA,GAAAA,gBAAA","ignoreList":[]}