@ovok/native 1.6.47 → 1.6.49

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 (248) hide show
  1. package/README.md +35 -0
  2. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +12 -2
  3. package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  4. package/lib/commonjs/modules/bt-device/constants/baby-sleep-clip-catalog-asset.js +10 -0
  5. package/lib/commonjs/modules/bt-device/constants/baby-sleep-clip-catalog-asset.js.map +1 -0
  6. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +12 -1
  7. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  8. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js +5 -1
  9. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  10. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js +19 -0
  11. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  12. package/lib/commonjs/modules/bt-device/constants/supported-devices.js +38 -0
  13. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  14. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js +1 -1
  15. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  16. package/lib/commonjs/modules/bt-management/services/device-classes.js +95 -0
  17. package/lib/commonjs/modules/bt-management/services/device-classes.js.map +1 -0
  18. package/lib/commonjs/modules/bt-management/services/device-creator.js +5 -82
  19. package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
  20. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +6 -1
  21. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  22. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.js +57 -0
  23. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.js.map +1 -0
  24. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.js +106 -0
  25. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.js.map +1 -0
  26. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.js +80 -0
  27. package/lib/commonjs/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.js.map +1 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.device.js +55 -0
  29. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.device.js.map +1 -0
  30. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.protocol.js +103 -0
  31. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.protocol.js.map +1 -0
  32. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.sequencer.js +33 -0
  33. package/lib/commonjs/modules/bt-management/services/devices/viatom/lpm311.sequencer.js.map +1 -0
  34. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.device.js +72 -0
  35. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.device.js.map +1 -0
  36. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.protocol.js +103 -0
  37. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.protocol.js.map +1 -0
  38. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.js +110 -0
  39. package/lib/commonjs/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.js.map +1 -0
  40. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.device.js +53 -0
  41. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.device.js.map +1 -0
  42. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.protocol.js +64 -0
  43. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.protocol.js.map +1 -0
  44. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.js +96 -0
  45. package/lib/commonjs/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.js.map +1 -0
  46. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.device.js +54 -0
  47. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.device.js.map +1 -0
  48. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.protocol.js +102 -0
  49. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.protocol.js.map +1 -0
  50. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.sequencer.js +115 -0
  51. package/lib/commonjs/modules/bt-management/services/devices/viatom/sp20.sequencer.js.map +1 -0
  52. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.js +81 -0
  53. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.js.map +1 -0
  54. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.device.js +57 -0
  55. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.device.js.map +1 -0
  56. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.protocol.js +118 -0
  57. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.protocol.js.map +1 -0
  58. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.js +95 -0
  59. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.js.map +1 -0
  60. package/lib/commonjs/modules/bt-management/types/clock-sync.js +3 -0
  61. package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
  62. package/lib/commonjs/modules/bt-management/types/device-measurement-map.js.map +1 -1
  63. package/lib/commonjs/modules/bt-management/types/integrated-devices.js +11 -0
  64. package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
  65. package/lib/module/modules/auth/register/components/form/register-form-provider.js +12 -2
  66. package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
  67. package/lib/module/modules/bt-device/constants/baby-sleep-clip-catalog-asset.js +7 -0
  68. package/lib/module/modules/bt-device/constants/baby-sleep-clip-catalog-asset.js.map +1 -0
  69. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +12 -1
  70. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  71. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js +5 -1
  72. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  73. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js +20 -1
  74. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  75. package/lib/module/modules/bt-device/constants/supported-devices.js +38 -0
  76. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  77. package/lib/module/modules/bt-management/constants/integrated-devices-map.js +1 -1
  78. package/lib/module/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  79. package/lib/module/modules/bt-management/services/device-classes.js +92 -0
  80. package/lib/module/modules/bt-management/services/device-classes.js.map +1 -0
  81. package/lib/module/modules/bt-management/services/device-creator.js +3 -81
  82. package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
  83. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +6 -1
  84. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  85. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.js +52 -0
  86. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.js.map +1 -0
  87. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.js +99 -0
  88. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.js.map +1 -0
  89. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.js +75 -0
  90. package/lib/module/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.js.map +1 -0
  91. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.device.js +50 -0
  92. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.device.js.map +1 -0
  93. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.protocol.js +98 -0
  94. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.protocol.js.map +1 -0
  95. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.sequencer.js +28 -0
  96. package/lib/module/modules/bt-management/services/devices/viatom/lpm311.sequencer.js.map +1 -0
  97. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.device.js +67 -0
  98. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.device.js.map +1 -0
  99. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.protocol.js +94 -0
  100. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.protocol.js.map +1 -0
  101. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.js +105 -0
  102. package/lib/module/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.js.map +1 -0
  103. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.device.js +48 -0
  104. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.device.js.map +1 -0
  105. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.protocol.js +57 -0
  106. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.protocol.js.map +1 -0
  107. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.js +91 -0
  108. package/lib/module/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.js.map +1 -0
  109. package/lib/module/modules/bt-management/services/devices/viatom/sp20.device.js +49 -0
  110. package/lib/module/modules/bt-management/services/devices/viatom/sp20.device.js.map +1 -0
  111. package/lib/module/modules/bt-management/services/devices/viatom/sp20.protocol.js +94 -0
  112. package/lib/module/modules/bt-management/services/devices/viatom/sp20.protocol.js.map +1 -0
  113. package/lib/module/modules/bt-management/services/devices/viatom/sp20.sequencer.js +110 -0
  114. package/lib/module/modules/bt-management/services/devices/viatom/sp20.sequencer.js.map +1 -0
  115. package/lib/module/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.js +71 -0
  116. package/lib/module/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.js.map +1 -0
  117. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.device.js +52 -0
  118. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.device.js.map +1 -0
  119. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.protocol.js +110 -0
  120. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.protocol.js.map +1 -0
  121. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.js +90 -0
  122. package/lib/module/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.js.map +1 -0
  123. package/lib/module/modules/bt-management/types/clock-sync.js +3 -0
  124. package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
  125. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  126. package/lib/module/modules/bt-management/types/integrated-devices.js +11 -0
  127. package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
  128. package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  129. package/lib/typescript/commonjs/src/modules/auth/register/types/register-form-props.d.ts +4 -1
  130. package/lib/typescript/commonjs/src/modules/auth/register/types/register-form-props.d.ts.map +1 -1
  131. package/lib/typescript/commonjs/src/modules/bt-device/constants/baby-sleep-clip-catalog-asset.d.ts +4 -0
  132. package/lib/typescript/commonjs/src/modules/bt-device/constants/baby-sleep-clip-catalog-asset.d.ts.map +1 -0
  133. package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  134. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +5 -1
  135. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  137. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts +1 -1
  138. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  140. package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts +89 -0
  141. package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts.map +1 -0
  142. package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  143. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  144. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.d.ts +18 -0
  146. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.d.ts +27 -0
  148. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.d.ts +32 -0
  150. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.device.d.ts +9 -0
  152. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.device.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.protocol.d.ts +14 -0
  154. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.protocol.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.sequencer.d.ts +10 -0
  156. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/lpm311.sequencer.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.device.d.ts +18 -0
  158. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.device.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.protocol.d.ts +42 -0
  160. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.protocol.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.d.ts +31 -0
  162. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.device.d.ts +19 -0
  164. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.device.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.protocol.d.ts +30 -0
  166. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.protocol.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.d.ts +27 -0
  168. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.device.d.ts +20 -0
  170. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.device.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.protocol.d.ts +28 -0
  172. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.protocol.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.sequencer.d.ts +26 -0
  174. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/sp20.sequencer.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.d.ts +7 -0
  176. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.device.d.ts +20 -0
  178. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.device.d.ts.map +1 -0
  179. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.protocol.d.ts +38 -0
  180. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.protocol.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.d.ts +35 -0
  182. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.d.ts.map +1 -0
  183. package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +12 -1
  185. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  186. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +12 -1
  187. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  188. package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
  189. package/lib/typescript/module/src/modules/auth/register/types/register-form-props.d.ts +4 -1
  190. package/lib/typescript/module/src/modules/auth/register/types/register-form-props.d.ts.map +1 -1
  191. package/lib/typescript/module/src/modules/bt-device/constants/baby-sleep-clip-catalog-asset.d.ts +4 -0
  192. package/lib/typescript/module/src/modules/bt-device/constants/baby-sleep-clip-catalog-asset.d.ts.map +1 -0
  193. package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  194. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +5 -1
  195. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  196. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  197. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts +1 -1
  198. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  199. package/lib/typescript/module/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  200. package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts +89 -0
  201. package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts.map +1 -0
  202. package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  203. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  204. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  205. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.d.ts +18 -0
  206. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.device.d.ts.map +1 -0
  207. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.d.ts +27 -0
  208. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.d.ts.map +1 -0
  209. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.d.ts +32 -0
  210. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/baby-sleep-clip.sequencer.d.ts.map +1 -0
  211. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.device.d.ts +9 -0
  212. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.device.d.ts.map +1 -0
  213. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.protocol.d.ts +14 -0
  214. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.protocol.d.ts.map +1 -0
  215. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.sequencer.d.ts +10 -0
  216. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/lpm311.sequencer.d.ts.map +1 -0
  217. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.device.d.ts +18 -0
  218. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.device.d.ts.map +1 -0
  219. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.protocol.d.ts +42 -0
  220. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.protocol.d.ts.map +1 -0
  221. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.d.ts +31 -0
  222. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/oxy-s3.sequencer.d.ts.map +1 -0
  223. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.device.d.ts +19 -0
  224. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.device.d.ts.map +1 -0
  225. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.protocol.d.ts +30 -0
  226. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.protocol.d.ts.map +1 -0
  227. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.d.ts +27 -0
  228. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pf10aw1.sequencer.d.ts.map +1 -0
  229. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.device.d.ts +20 -0
  230. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.device.d.ts.map +1 -0
  231. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.protocol.d.ts +28 -0
  232. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.protocol.d.ts.map +1 -0
  233. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.sequencer.d.ts +26 -0
  234. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/sp20.sequencer.d.ts.map +1 -0
  235. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.d.ts +7 -0
  236. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-lepu-crypto.d.ts.map +1 -0
  237. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.device.d.ts +20 -0
  238. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.device.d.ts.map +1 -0
  239. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.protocol.d.ts +38 -0
  240. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.protocol.d.ts.map +1 -0
  241. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.d.ts +35 -0
  242. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-r20.sequencer.d.ts.map +1 -0
  243. package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  244. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +12 -1
  245. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  246. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +12 -1
  247. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  248. package/package.json +6 -4
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BUILT_IN_DEVICE_CLASSES = void 0;
7
+ var _integratedDevices = require("../types/integrated-devices.js");
8
+ var _a606Device = require("./devices/a606/a606.device.js");
9
+ var _aojDevice = require("./devices/aoj/aoj.device.js");
10
+ var _bc01Device = require("./devices/bc01/bc01.device.js");
11
+ var _bloodGlucoseDevice = require("./devices/blood-glucose/blood-glucose.device.js");
12
+ var _bp2Device = require("./devices/bp2/bp2.device.js");
13
+ var _bpw1Device = require("./devices/bpw1/bpw1.device.js");
14
+ var _checkmeEcgDevice = require("./devices/checkme/checkme-ecg.device.js");
15
+ var _checkmePodDevice = require("./devices/checkme/checkme-pod.device.js");
16
+ var _checkmeDevice = require("./devices/checkme/checkme.device.js");
17
+ var _f4Device = require("./devices/f4/f4.device.js");
18
+ var _f5ScaleDevice = require("./devices/f5/f5-scale.device.js");
19
+ var _genialT31Device = require("./devices/genial-t31/genial-t31.device.js");
20
+ var _oxyfitDevice = require("./devices/spo/oxyfit.device.js");
21
+ var _spo2Device = require("./devices/spo/spo2.device.js");
22
+ var _mysenseDevice = require("./devices/uebe/mysense.device.js");
23
+ var _verovalActivityDevice = require("./devices/veroval/veroval.activity-device.js");
24
+ var _verovalDuoControlDevice = require("./devices/veroval/veroval.duo-control-device.js");
25
+ var _verovalEcgDevice = require("./devices/veroval/veroval.ecg-device.js");
26
+ var _ap20Device = require("./devices/viatom/ap20.device.js");
27
+ var _babySleepClipDevice = require("./devices/viatom/baby-sleep-clip.device.js");
28
+ var _biolandBgmDevice = require("./devices/viatom/bioland.bgm.device.js");
29
+ var _lpm311Device = require("./devices/viatom/lpm311.device.js");
30
+ var _oxyS3Device = require("./devices/viatom/oxy-s3.device.js");
31
+ var _pc68bDevice = require("./devices/viatom/pc68b.device.js");
32
+ var _pc80bDevice = require("./devices/viatom/pc80b.device.js");
33
+ var _pf10aw1Device = require("./devices/viatom/pf10aw1.device.js");
34
+ var _poctorM3102Device = require("./devices/viatom/poctor.m3102.device.js");
35
+ var _sp20Device = require("./devices/viatom/sp20.device.js");
36
+ var _viatomR20Device = require("./devices/viatom/viatom-r20.device.js");
37
+ var _viatomBpm188Device = require("./devices/viatom/viatom.bpm188.device.js");
38
+ var _viatomPc100Device = require("./devices/viatom/viatom.pc100.device.js");
39
+ var _viatomPc300Device = require("./devices/viatom/viatom.pc300.device.js");
40
+ var _viatomPm10Device = require("./devices/viatom/viatom.pm10.device.js");
41
+ var _viatomWbp02Device = require("./devices/viatom/viatom.wbp02.device.js");
42
+ /**
43
+ * Built-in names with compiled, tested decoders. `integratedDevicesMap` also identifies
44
+ * unsupported devices so scan lists remain useful and connect can explain missing support.
45
+ */
46
+ const BUILT_IN_DEVICE_CLASSES = exports.BUILT_IN_DEVICE_CLASSES = {
47
+ [_integratedDevices.IntegratedDevices.BP2]: _bp2Device.BP2Device,
48
+ [_integratedDevices.IntegratedDevices.F4]: _f4Device.F4Device,
49
+ [_integratedDevices.IntegratedDevices.S5]: _f4Device.F4Device,
50
+ [_integratedDevices.IntegratedDevices.LEPU_F4_SCALE]: _f4Device.F4Device,
51
+ [_integratedDevices.IntegratedDevices.LEPU_F5_SCALE]: _f5ScaleDevice.F5ScaleDevice,
52
+ [_integratedDevices.IntegratedDevices.PC60WF]: _spo2Device.SPO2Device,
53
+ [_integratedDevices.IntegratedDevices.SPO2]: _oxyfitDevice.OxyfitDevice,
54
+ [_integratedDevices.IntegratedDevices.MYSENSE]: _mysenseDevice.MySenseDevice,
55
+ [_integratedDevices.IntegratedDevices.BC01]: _bc01Device.BC01Device,
56
+ [_integratedDevices.IntegratedDevices.AOJ20A]: _aojDevice.Aoj20aDevice,
57
+ [_integratedDevices.IntegratedDevices.TAIDOC_GLUCOSE]: _bloodGlucoseDevice.BloodGlucoseDevice,
58
+ [_integratedDevices.IntegratedDevices.GLUCOCHECK]: _bloodGlucoseDevice.BloodGlucoseDevice,
59
+ [_integratedDevices.IntegratedDevices.BGM]: _bloodGlucoseDevice.BloodGlucoseDevice,
60
+ [_integratedDevices.IntegratedDevices.VEROVAL_DUO_CONTROL]: _verovalDuoControlDevice.VerovalDuoControlDevice,
61
+ [_integratedDevices.IntegratedDevices.VEROVAL_ECG]: _verovalEcgDevice.VerovalEcgDevice,
62
+ [_integratedDevices.IntegratedDevices.VEROVAL_ACTIVITY]: _verovalActivityDevice.VerovalActivityDevice,
63
+ [_integratedDevices.IntegratedDevices.GENIAL_T31]: _genialT31Device.GenialT31Device,
64
+ [_integratedDevices.IntegratedDevices.ZH_SG_A606]: _a606Device.A606Device,
65
+ [_integratedDevices.IntegratedDevices.BPW1]: _bpw1Device.Bpw1Device,
66
+ [_integratedDevices.IntegratedDevices.CHECKME]: _checkmeDevice.CheckmeProDevice,
67
+ [_integratedDevices.IntegratedDevices.CHECKME_POD]: _checkmePodDevice.CheckmePodDevice,
68
+ [_integratedDevices.IntegratedDevices.CHECKME_POD_WPS]: _checkmePodDevice.CheckmePodDevice,
69
+ [_integratedDevices.IntegratedDevices.AP20]: _ap20Device.Ap20Device,
70
+ [_integratedDevices.IntegratedDevices.AP20_WPS]: _ap20Device.Ap20Device,
71
+ [_integratedDevices.IntegratedDevices.PC68B]: _pc68bDevice.Pc68bDevice,
72
+ [_integratedDevices.IntegratedDevices.PC100]: _viatomPc100Device.Pc100Device,
73
+ [_integratedDevices.IntegratedDevices.BPM188]: _viatomBpm188Device.Bpm188Device,
74
+ [_integratedDevices.IntegratedDevices.PC300]: _viatomPc300Device.Pc300Device,
75
+ [_integratedDevices.IntegratedDevices.POCTOR_M3102]: _poctorM3102Device.PoctorM3102Device,
76
+ [_integratedDevices.IntegratedDevices.BIOLAND_BGM]: _biolandBgmDevice.BiolandBgmDevice,
77
+ [_integratedDevices.IntegratedDevices.PULSEBIT_EX]: _checkmeEcgDevice.PulsebitDevice,
78
+ [_integratedDevices.IntegratedDevices.CHECKME_EX]: _checkmeEcgDevice.PulsebitDevice,
79
+ [_integratedDevices.IntegratedDevices.CHECKME_LE]: _checkmeEcgDevice.CheckmeLeDevice,
80
+ [_integratedDevices.IntegratedDevices.PC80B]: _pc80bDevice.Pc80bDevice,
81
+ [_integratedDevices.IntegratedDevices.WBP_02]: _viatomWbp02Device.Wbp02Device,
82
+ [_integratedDevices.IntegratedDevices.PM10]: _viatomPm10Device.Pm10Device,
83
+ [_integratedDevices.IntegratedDevices.LPM311]: _lpm311Device.Lpm311Device,
84
+ [_integratedDevices.IntegratedDevices.VIATOM_R20]: _viatomR20Device.ViatomR20Device,
85
+ [_integratedDevices.IntegratedDevices.VIATOM_R200]: _viatomR20Device.ViatomR20Device,
86
+ [_integratedDevices.IntegratedDevices.SP_20]: _sp20Device.Sp20Device,
87
+ [_integratedDevices.IntegratedDevices.SP_20_BLE]: _sp20Device.Sp20Device,
88
+ [_integratedDevices.IntegratedDevices.SP_20_WPS]: _sp20Device.Sp20Device,
89
+ [_integratedDevices.IntegratedDevices.BBSM_S3]: _oxyS3Device.OxyS3Device,
90
+ [_integratedDevices.IntegratedDevices.VIATOM_BBSM_BS1]: _babySleepClipDevice.BabySleepClipDevice,
91
+ [_integratedDevices.IntegratedDevices.PF10AW_ME]: _pf10aw1Device.Pf10Aw1Device,
92
+ [_integratedDevices.IntegratedDevices.SA10AW_PU]: _pf10aw1Device.Pf10Aw1Device,
93
+ [_integratedDevices.IntegratedDevices.PF10BW_VE]: _pf10aw1Device.Pf10Aw1Device
94
+ };
95
+ //# sourceMappingURL=device-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_integratedDevices","require","_a606Device","_aojDevice","_bc01Device","_bloodGlucoseDevice","_bp2Device","_bpw1Device","_checkmeEcgDevice","_checkmePodDevice","_checkmeDevice","_f4Device","_f5ScaleDevice","_genialT31Device","_oxyfitDevice","_spo2Device","_mysenseDevice","_verovalActivityDevice","_verovalDuoControlDevice","_verovalEcgDevice","_ap20Device","_babySleepClipDevice","_biolandBgmDevice","_lpm311Device","_oxyS3Device","_pc68bDevice","_pc80bDevice","_pf10aw1Device","_poctorM3102Device","_sp20Device","_viatomR20Device","_viatomBpm188Device","_viatomPc100Device","_viatomPc300Device","_viatomPm10Device","_viatomWbp02Device","BUILT_IN_DEVICE_CLASSES","exports","IntegratedDevices","BP2","BP2Device","F4","F4Device","S5","LEPU_F4_SCALE","LEPU_F5_SCALE","F5ScaleDevice","PC60WF","SPO2Device","SPO2","OxyfitDevice","MYSENSE","MySenseDevice","BC01","BC01Device","AOJ20A","Aoj20aDevice","TAIDOC_GLUCOSE","BloodGlucoseDevice","GLUCOCHECK","BGM","VEROVAL_DUO_CONTROL","VerovalDuoControlDevice","VEROVAL_ECG","VerovalEcgDevice","VEROVAL_ACTIVITY","VerovalActivityDevice","GENIAL_T31","GenialT31Device","ZH_SG_A606","A606Device","BPW1","Bpw1Device","CHECKME","CheckmeProDevice","CHECKME_POD","CheckmePodDevice","CHECKME_POD_WPS","AP20","Ap20Device","AP20_WPS","PC68B","Pc68bDevice","PC100","Pc100Device","BPM188","Bpm188Device","PC300","Pc300Device","POCTOR_M3102","PoctorM3102Device","BIOLAND_BGM","BiolandBgmDevice","PULSEBIT_EX","PulsebitDevice","CHECKME_EX","CHECKME_LE","CheckmeLeDevice","PC80B","Pc80bDevice","WBP_02","Wbp02Device","PM10","Pm10Device","LPM311","Lpm311Device","VIATOM_R20","ViatomR20Device","VIATOM_R200","SP_20","Sp20Device","SP_20_BLE","SP_20_WPS","BBSM_S3","OxyS3Device","VIATOM_BBSM_BS1","BabySleepClipDevice","PF10AW_ME","Pf10Aw1Device","SA10AW_PU","PF10BW_VE"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/device-classes.ts"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AAIA,IAAAQ,iBAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AACA,IAAAW,cAAA,GAAAX,OAAA;AACA,IAAAY,gBAAA,GAAAZ,OAAA;AACA,IAAAa,aAAA,GAAAb,OAAA;AACA,IAAAc,WAAA,GAAAd,OAAA;AACA,IAAAe,cAAA,GAAAf,OAAA;AACA,IAAAgB,sBAAA,GAAAhB,OAAA;AACA,IAAAiB,wBAAA,GAAAjB,OAAA;AACA,IAAAkB,iBAAA,GAAAlB,OAAA;AACA,IAAAmB,WAAA,GAAAnB,OAAA;AACA,IAAAoB,oBAAA,GAAApB,OAAA;AACA,IAAAqB,iBAAA,GAAArB,OAAA;AACA,IAAAsB,aAAA,GAAAtB,OAAA;AACA,IAAAuB,YAAA,GAAAvB,OAAA;AACA,IAAAwB,YAAA,GAAAxB,OAAA;AACA,IAAAyB,YAAA,GAAAzB,OAAA;AACA,IAAA0B,cAAA,GAAA1B,OAAA;AACA,IAAA2B,kBAAA,GAAA3B,OAAA;AACA,IAAA4B,WAAA,GAAA5B,OAAA;AACA,IAAA6B,gBAAA,GAAA7B,OAAA;AACA,IAAA8B,mBAAA,GAAA9B,OAAA;AACA,IAAA+B,kBAAA,GAAA/B,OAAA;AACA,IAAAgC,kBAAA,GAAAhC,OAAA;AACA,IAAAiC,iBAAA,GAAAjC,OAAA;AACA,IAAAkC,kBAAA,GAAAlC,OAAA;AAEA;AACA;AACA;AACA;AACO,MAAMmC,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACrC,CAACE,oCAAiB,CAACC,GAAG,GAAGC,oBAAS;EAClC,CAACF,oCAAiB,CAACG,EAAE,GAAGC,kBAAQ;EAChC,CAACJ,oCAAiB,CAACK,EAAE,GAAGD,kBAAQ;EAChC,CAACJ,oCAAiB,CAACM,aAAa,GAAGF,kBAAQ;EAC3C,CAACJ,oCAAiB,CAACO,aAAa,GAAGC,4BAAa;EAChD,CAACR,oCAAiB,CAACS,MAAM,GAAGC,sBAAU;EACtC,CAACV,oCAAiB,CAACW,IAAI,GAAGC,0BAAY;EACtC,CAACZ,oCAAiB,CAACa,OAAO,GAAGC,4BAAa;EAC1C,CAACd,oCAAiB,CAACe,IAAI,GAAGC,sBAAU;EACpC,CAAChB,oCAAiB,CAACiB,MAAM,GAAGC,uBAAY;EACxC,CAAClB,oCAAiB,CAACmB,cAAc,GAAGC,sCAAkB;EACtD,CAACpB,oCAAiB,CAACqB,UAAU,GAAGD,sCAAkB;EAClD,CAACpB,oCAAiB,CAACsB,GAAG,GAAGF,sCAAkB;EAC3C,CAACpB,oCAAiB,CAACuB,mBAAmB,GAAGC,gDAAuB;EAChE,CAACxB,oCAAiB,CAACyB,WAAW,GAAGC,kCAAgB;EACjD,CAAC1B,oCAAiB,CAAC2B,gBAAgB,GAAGC,4CAAqB;EAC3D,CAAC5B,oCAAiB,CAAC6B,UAAU,GAAGC,gCAAe;EAC/C,CAAC9B,oCAAiB,CAAC+B,UAAU,GAAGC,sBAAU;EAC1C,CAAChC,oCAAiB,CAACiC,IAAI,GAAGC,sBAAU;EACpC,CAAClC,oCAAiB,CAACmC,OAAO,GAAGC,+BAAgB;EAC7C,CAACpC,oCAAiB,CAACqC,WAAW,GAAGC,kCAAgB;EACjD,CAACtC,oCAAiB,CAACuC,eAAe,GAAGD,kCAAgB;EACrD,CAACtC,oCAAiB,CAACwC,IAAI,GAAGC,sBAAU;EACpC,CAACzC,oCAAiB,CAAC0C,QAAQ,GAAGD,sBAAU;EACxC,CAACzC,oCAAiB,CAAC2C,KAAK,GAAGC,wBAAW;EACtC,CAAC5C,oCAAiB,CAAC6C,KAAK,GAAGC,8BAAW;EACtC,CAAC9C,oCAAiB,CAAC+C,MAAM,GAAGC,gCAAY;EACxC,CAAChD,oCAAiB,CAACiD,KAAK,GAAGC,8BAAW;EACtC,CAAClD,oCAAiB,CAACmD,YAAY,GAAGC,oCAAiB;EACnD,CAACpD,oCAAiB,CAACqD,WAAW,GAAGC,kCAAgB;EACjD,CAACtD,oCAAiB,CAACuD,WAAW,GAAGC,gCAAc;EAC/C,CAACxD,oCAAiB,CAACyD,UAAU,GAAGD,gCAAc;EAC9C,CAACxD,oCAAiB,CAAC0D,UAAU,GAAGC,iCAAe;EAC/C,CAAC3D,oCAAiB,CAAC4D,KAAK,GAAGC,wBAAW;EACtC,CAAC7D,oCAAiB,CAAC8D,MAAM,GAAGC,8BAAW;EACvC,CAAC/D,oCAAiB,CAACgE,IAAI,GAAGC,4BAAU;EACpC,CAACjE,oCAAiB,CAACkE,MAAM,GAAGC,0BAAY;EACxC,CAACnE,oCAAiB,CAACoE,UAAU,GAAGC,gCAAe;EAC/C,CAACrE,oCAAiB,CAACsE,WAAW,GAAGD,gCAAe;EAChD,CAACrE,oCAAiB,CAACuE,KAAK,GAAGC,sBAAU;EACrC,CAACxE,oCAAiB,CAACyE,SAAS,GAAGD,sBAAU;EACzC,CAACxE,oCAAiB,CAAC0E,SAAS,GAAGF,sBAAU;EACzC,CAACxE,oCAAiB,CAAC2E,OAAO,GAAGC,wBAAW;EACxC,CAAC5E,oCAAiB,CAAC6E,eAAe,GAAGC,wCAAmB;EACxD,CAAC9E,oCAAiB,CAAC+E,SAAS,GAAGC,4BAAa;EAC5C,CAAChF,oCAAiB,CAACiF,SAAS,GAAGD,4BAAa;EAC5C,CAAChF,oCAAiB,CAACkF,SAAS,GAAGF;AACjC,CAAC","ignoreList":[]}
@@ -5,82 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.DeviceCreator = void 0;
7
7
  var _resolveDeviceKey = require("../core/resolve-device-key.js");
8
- var _integratedDevices = require("../types/integrated-devices.js");
9
8
  var _isCustomDeviceDefinition = require("../utils/is-custom-device-definition.js");
10
- var _a606Device = require("./devices/a606/a606.device.js");
11
- var _aojDevice = require("./devices/aoj/aoj.device.js");
12
- var _bc01Device = require("./devices/bc01/bc01.device.js");
13
- var _bloodGlucoseDevice = require("./devices/blood-glucose/blood-glucose.device.js");
14
- var _bp2Device = require("./devices/bp2/bp2.device.js");
15
- var _bpw1Device = require("./devices/bpw1/bpw1.device.js");
16
- var _checkmeEcgDevice = require("./devices/checkme/checkme-ecg.device.js");
17
- var _checkmePodDevice = require("./devices/checkme/checkme-pod.device.js");
18
- var _checkmeDevice = require("./devices/checkme/checkme.device.js");
9
+ var _deviceClasses = require("./device-classes.js");
19
10
  var _customDevice = require("./devices/custom/custom.device.js");
20
- var _f4Device = require("./devices/f4/f4.device.js");
21
- var _f5ScaleDevice = require("./devices/f5/f5-scale.device.js");
22
- var _genialT31Device = require("./devices/genial-t31/genial-t31.device.js");
23
- var _oxyfitDevice = require("./devices/spo/oxyfit.device.js");
24
- var _spo2Device = require("./devices/spo/spo2.device.js");
25
- var _mysenseDevice = require("./devices/uebe/mysense.device.js");
26
- var _verovalActivityDevice = require("./devices/veroval/veroval.activity-device.js");
27
- var _verovalDuoControlDevice = require("./devices/veroval/veroval.duo-control-device.js");
28
- var _verovalEcgDevice = require("./devices/veroval/veroval.ecg-device.js");
29
- var _ap20Device = require("./devices/viatom/ap20.device.js");
30
- var _biolandBgmDevice = require("./devices/viatom/bioland.bgm.device.js");
31
- var _pc68bDevice = require("./devices/viatom/pc68b.device.js");
32
- var _pc80bDevice = require("./devices/viatom/pc80b.device.js");
33
- var _poctorM3102Device = require("./devices/viatom/poctor.m3102.device.js");
34
- var _viatomBpm188Device = require("./devices/viatom/viatom.bpm188.device.js");
35
- var _viatomPc100Device = require("./devices/viatom/viatom.pc100.device.js");
36
- var _viatomPc300Device = require("./devices/viatom/viatom.pc300.device.js");
37
- var _viatomPm10Device = require("./devices/viatom/viatom.pm10.device.js");
38
- var _viatomWbp02Device = require("./devices/viatom/viatom.wbp02.device.js");
39
- /**
40
- * The built-in names the SDK can actually build.
41
- *
42
- * `integratedDevicesMap` matches more names than this, on purpose: matching is what names a
43
- * device in a scan result and a device list, which is useful for hardware the SDK cannot
44
- * yet decode. Connecting to one of those is what fails, and it fails saying so.
45
- */
46
- const DEVICE_CLASSES = {
47
- [_integratedDevices.IntegratedDevices.BP2]: _bp2Device.BP2Device,
48
- [_integratedDevices.IntegratedDevices.F4]: _f4Device.F4Device,
49
- [_integratedDevices.IntegratedDevices.S5]: _f4Device.F4Device,
50
- [_integratedDevices.IntegratedDevices.LEPU_F4_SCALE]: _f4Device.F4Device,
51
- [_integratedDevices.IntegratedDevices.LEPU_F5_SCALE]: _f5ScaleDevice.F5ScaleDevice,
52
- [_integratedDevices.IntegratedDevices.PC60WF]: _spo2Device.SPO2Device,
53
- [_integratedDevices.IntegratedDevices.SPO2]: _oxyfitDevice.OxyfitDevice,
54
- [_integratedDevices.IntegratedDevices.MYSENSE]: _mysenseDevice.MySenseDevice,
55
- [_integratedDevices.IntegratedDevices.BC01]: _bc01Device.BC01Device,
56
- [_integratedDevices.IntegratedDevices.AOJ20A]: _aojDevice.Aoj20aDevice,
57
- [_integratedDevices.IntegratedDevices.TAIDOC_GLUCOSE]: _bloodGlucoseDevice.BloodGlucoseDevice,
58
- [_integratedDevices.IntegratedDevices.GLUCOCHECK]: _bloodGlucoseDevice.BloodGlucoseDevice,
59
- [_integratedDevices.IntegratedDevices.BGM]: _bloodGlucoseDevice.BloodGlucoseDevice,
60
- [_integratedDevices.IntegratedDevices.VEROVAL_DUO_CONTROL]: _verovalDuoControlDevice.VerovalDuoControlDevice,
61
- [_integratedDevices.IntegratedDevices.VEROVAL_ECG]: _verovalEcgDevice.VerovalEcgDevice,
62
- [_integratedDevices.IntegratedDevices.VEROVAL_ACTIVITY]: _verovalActivityDevice.VerovalActivityDevice,
63
- [_integratedDevices.IntegratedDevices.GENIAL_T31]: _genialT31Device.GenialT31Device,
64
- [_integratedDevices.IntegratedDevices.ZH_SG_A606]: _a606Device.A606Device,
65
- [_integratedDevices.IntegratedDevices.BPW1]: _bpw1Device.Bpw1Device,
66
- [_integratedDevices.IntegratedDevices.CHECKME]: _checkmeDevice.CheckmeProDevice,
67
- [_integratedDevices.IntegratedDevices.CHECKME_POD]: _checkmePodDevice.CheckmePodDevice,
68
- [_integratedDevices.IntegratedDevices.CHECKME_POD_WPS]: _checkmePodDevice.CheckmePodDevice,
69
- [_integratedDevices.IntegratedDevices.AP20]: _ap20Device.Ap20Device,
70
- [_integratedDevices.IntegratedDevices.AP20_WPS]: _ap20Device.Ap20Device,
71
- [_integratedDevices.IntegratedDevices.PC68B]: _pc68bDevice.Pc68bDevice,
72
- [_integratedDevices.IntegratedDevices.PC100]: _viatomPc100Device.Pc100Device,
73
- [_integratedDevices.IntegratedDevices.BPM188]: _viatomBpm188Device.Bpm188Device,
74
- [_integratedDevices.IntegratedDevices.PC300]: _viatomPc300Device.Pc300Device,
75
- [_integratedDevices.IntegratedDevices.POCTOR_M3102]: _poctorM3102Device.PoctorM3102Device,
76
- [_integratedDevices.IntegratedDevices.BIOLAND_BGM]: _biolandBgmDevice.BiolandBgmDevice,
77
- [_integratedDevices.IntegratedDevices.PULSEBIT_EX]: _checkmeEcgDevice.PulsebitDevice,
78
- [_integratedDevices.IntegratedDevices.CHECKME_EX]: _checkmeEcgDevice.PulsebitDevice,
79
- [_integratedDevices.IntegratedDevices.CHECKME_LE]: _checkmeEcgDevice.CheckmeLeDevice,
80
- [_integratedDevices.IntegratedDevices.PC80B]: _pc80bDevice.Pc80bDevice,
81
- [_integratedDevices.IntegratedDevices.WBP_02]: _viatomWbp02Device.Wbp02Device,
82
- [_integratedDevices.IntegratedDevices.PM10]: _viatomPm10Device.Pm10Device
83
- };
84
11
  const collectCustomDevices = acceptedDevices => {
85
12
  const customDevices = new Map();
86
13
  const matchers = new Set();
@@ -116,7 +43,7 @@ class DeviceCreator {
116
43
  if (!foundName && normalizedServices.size === 0) {
117
44
  return undefined;
118
45
  }
119
- if (!foundName && normalizedServices.size > 0) {
46
+ if (!foundName) {
120
47
  return this.matchDeviceName(foundName, normalizedServices);
121
48
  }
122
49
  if (this.deviceNameCache.has(foundName)) {
@@ -136,11 +63,7 @@ class DeviceCreator {
136
63
  throw new Error("Device is required");
137
64
  }
138
65
 
139
- /**
140
- * On iOS the peripheral's `name` is null in scan callbacks until it is connected —
141
- * `localName` carries the advertised name instead. Accept either so a scan-time
142
- * `createDevice` call for a real iOS ad is not rejected before it can connect.
143
- */
66
+ /** On iOS scan callbacks may have null `name`; `localName` carries the advertised name. */
144
67
  if (!params.device.name?.trim() && !params.device.localName?.trim() && !this.customDevices.get(params.deviceName)?.matchByService) {
145
68
  throw new Error("Device name is required");
146
69
  }
@@ -152,9 +75,9 @@ class DeviceCreator {
152
75
  // @ts-expect-error - the caller asked for this custom device by its own id
153
76
  return new _customDevice.CustomDevice(params.device, params, custom);
154
77
  }
155
- const deviceClass = DEVICE_CLASSES[params.deviceName];
78
+ const deviceClass = _deviceClasses.BUILT_IN_DEVICE_CLASSES[params.deviceName];
156
79
  if (!deviceClass) {
157
- throw new Error(`"${params.deviceName}" is a name the SDK matches during a scan but has no decoder for, so "${params.device.name}" cannot be connected. The names it can decode are ${Object.keys(DEVICE_CLASSES).join(", ")}; anything else needs a declaration registered with defineCustomDevice and passed in acceptedDevices.`);
80
+ throw new Error(`"${params.deviceName}" is a name the SDK matches during a scan but has no decoder for, so "${params.device.name}" cannot be connected. The names it can decode are ${Object.keys(_deviceClasses.BUILT_IN_DEVICE_CLASSES).join(", ")}; anything else needs a declaration registered with defineCustomDevice and passed in acceptedDevices.`);
158
81
  }
159
82
 
160
83
  // @ts-expect-error - This is a workaround to allow the deviceClass to be instantiated with the correct type
@@ -1 +1 @@
1
- {"version":3,"names":["_resolveDeviceKey","require","_integratedDevices","_isCustomDeviceDefinition","_a606Device","_aojDevice","_bc01Device","_bloodGlucoseDevice","_bp2Device","_bpw1Device","_checkmeEcgDevice","_checkmePodDevice","_checkmeDevice","_customDevice","_f4Device","_f5ScaleDevice","_genialT31Device","_oxyfitDevice","_spo2Device","_mysenseDevice","_verovalActivityDevice","_verovalDuoControlDevice","_verovalEcgDevice","_ap20Device","_biolandBgmDevice","_pc68bDevice","_pc80bDevice","_poctorM3102Device","_viatomBpm188Device","_viatomPc100Device","_viatomPc300Device","_viatomPm10Device","_viatomWbp02Device","DEVICE_CLASSES","IntegratedDevices","BP2","BP2Device","F4","F4Device","S5","LEPU_F4_SCALE","LEPU_F5_SCALE","F5ScaleDevice","PC60WF","SPO2Device","SPO2","OxyfitDevice","MYSENSE","MySenseDevice","BC01","BC01Device","AOJ20A","Aoj20aDevice","TAIDOC_GLUCOSE","BloodGlucoseDevice","GLUCOCHECK","BGM","VEROVAL_DUO_CONTROL","VerovalDuoControlDevice","VEROVAL_ECG","VerovalEcgDevice","VEROVAL_ACTIVITY","VerovalActivityDevice","GENIAL_T31","GenialT31Device","ZH_SG_A606","A606Device","BPW1","Bpw1Device","CHECKME","CheckmeProDevice","CHECKME_POD","CheckmePodDevice","CHECKME_POD_WPS","AP20","Ap20Device","AP20_WPS","PC68B","Pc68bDevice","PC100","Pc100Device","BPM188","Bpm188Device","PC300","Pc300Device","POCTOR_M3102","PoctorM3102Device","BIOLAND_BGM","BiolandBgmDevice","PULSEBIT_EX","PulsebitDevice","CHECKME_EX","CHECKME_LE","CheckmeLeDevice","PC80B","Pc80bDevice","WBP_02","Wbp02Device","PM10","Pm10Device","collectCustomDevices","acceptedDevices","customDevices","Map","matchers","Set","forEach","entry","index","isCustomDeviceDefinition","Error","has","id","matchByService","nameMatch","source","set","add","DeviceCreator","deviceNameCache","CACHE_MAX_SIZE","constructor","acceptedDeviceNames","getDeviceName","foundName","serviceUUIDs","normalizedServices","map","uuid","toLowerCase","size","undefined","matchDeviceName","get","matched","cacheDeviceName","createDevice","params","String","deviceName","trim","device","name","localName","custom","CustomDevice","deviceClass","Object","keys","join","destroy","clear","resolveDeviceKey","deviceType","firstKey","next","value","delete","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/device-creator.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_resolveDeviceKey","require","_isCustomDeviceDefinition","_deviceClasses","_customDevice","collectCustomDevices","acceptedDevices","customDevices","Map","matchers","Set","forEach","entry","index","isCustomDeviceDefinition","Error","has","id","matchByService","nameMatch","source","set","add","DeviceCreator","deviceNameCache","CACHE_MAX_SIZE","constructor","acceptedDeviceNames","getDeviceName","foundName","serviceUUIDs","normalizedServices","map","uuid","toLowerCase","size","undefined","matchDeviceName","get","matched","cacheDeviceName","createDevice","params","String","deviceName","trim","device","name","localName","custom","CustomDevice","deviceClass","DEVICE_CLASSES","Object","keys","join","destroy","clear","resolveDeviceKey","deviceType","firstKey","next","value","delete","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/device-creator.ts"],"mappings":"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","ignoreList":[]}
@@ -30,6 +30,11 @@ class BTManagedDevice {
30
30
  * The timeout in milliseconds for the stuck data.
31
31
  */
32
32
 
33
+ /** Override when the command sequencer emits results not decoded by frame cases. */
34
+ getSupportedMeasurementTypeKeys() {
35
+ return (0, _supportedMeasurementTypeKeys.supportedMeasurementTypeKeys)(this.mainServices);
36
+ }
37
+
33
38
  /**
34
39
  * The function to handle the dependent result on dependent case. This is generic and can be overridden by the device to handle the result based on the device logic.
35
40
  * If the case is dependent, this function will be called to handle the result and return the new result based on the device logic.
@@ -248,7 +253,7 @@ class BTManagedDevice {
248
253
  this.historyResultCount = 0;
249
254
 
250
255
  // To access the abstract property in the constructor, we need to set it here
251
- this.deviceData.measurementTypes = (0, _supportedMeasurementTypeKeys.supportedMeasurementTypeKeys)(this.mainServices);
256
+ this.deviceData.measurementTypes = this.getSupportedMeasurementTypeKeys();
252
257
  const sequencer = this.createCommandSequencer?.() ?? (0, _pollingCommandSequencer.pollingSequencerFor)(this.mainServices);
253
258
  this.historyTransferActive = sequencer.isHistoryTransfer?.() === true;
254
259
  this.connectionHandler = new _btConnectionHandler.BTConnectionHandler(this.device, this.mainServices, {
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_telemetry","_bluetoothError","_clockSync","_deviceStatus","_resultIdentity","_summariseMeasurementForLog","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","reportsBondedEvent","handleMeasurementEnd","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResult","onResultCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","resultPolicy","sentryLogger","deviceId","id","deviceData","name","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","status","measurementTypeKey","addOvokSpanEvent","model","error","Error","message","normalized","toBluetoothError","originalError","translationKey","code","caseType","_","data","policy","byMeasurement","default","has","add","temporal","end","Date","undefined","now","getTime","day","start","recordedAt","key","toISOString","slice","recordOvokMetric","summariseMeasurementForLog","kind","progress","current","result","Object","defineProperty","value","createStableResultId","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","String","connectInternal","clear","supportedMeasurementTypeKeys","mainServices","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","handleSuccessResult","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","connectionPromise","Promise","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","_bluetoothError","_clockSync","_deviceStatus","_resultIdentity","_summariseMeasurementForLog","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","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","deviceId","id","deviceData","name","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","status","measurementTypeKey","addOvokSpanEvent","model","error","Error","message","normalized","toBluetoothError","originalError","translationKey","code","caseType","_","data","policy","byMeasurement","default","has","add","temporal","end","Date","undefined","now","getTime","day","start","recordedAt","key","toISOString","slice","recordOvokMetric","summariseMeasurementForLog","kind","progress","current","result","Object","defineProperty","value","createStableResultId","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","String","connectInternal","clear","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","handleSuccessResult","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","connectionPromise","Promise","resolve","finally","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.babySleepClipMainServices = exports.BabySleepClipDevice = void 0;
7
+ var _btManagedDevice = require("../bt-managed-device.js");
8
+ var _babySleepClipProtocol = require("./baby-sleep-clip.protocol.js");
9
+ var _babySleepClipSequencer = require("./baby-sleep-clip.sequencer.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const acceptNothing = {
13
+ caseValuePosition: [],
14
+ cases: []
15
+ };
16
+ const babySleepClipMainServices = exports.babySleepClipMainServices = [{
17
+ uuid: _babySleepClipProtocol.BABY_SLEEP_CLIP_SERVICE,
18
+ monitorUuids: [{
19
+ uuid: _babySleepClipProtocol.BABY_SLEEP_CLIP_NOTIFY,
20
+ parsingModel: acceptNothing
21
+ }],
22
+ writeUuid: {
23
+ uuid: _babySleepClipProtocol.BABY_SLEEP_CLIP_WRITE,
24
+ mainCommandUuid: "a5"
25
+ }
26
+ }];
27
+
28
+ /** ViHealth BabySleep Clip BS1 uses an encrypted Lepu A5 exchange over E8FB. */
29
+ class BabySleepClipDevice extends _btManagedDevice.BTManagedDevice {
30
+ mainServices = babySleepClipMainServices;
31
+ stuckDataTimeout = 60_000;
32
+ onStreamStart = undefined;
33
+ preferredMtu = 247;
34
+ getSupportedMeasurementTypeKeys() {
35
+ return [_babySleepClipProtocol.BABY_SLEEP_CLIP_MEASUREMENT_TYPE];
36
+ }
37
+ constructor(device, params) {
38
+ super(device, {
39
+ ...params,
40
+ oneReadingPerConnection: params.oneReadingPerConnection ?? true
41
+ });
42
+ this.frameReader = new _babySleepClipProtocol.BabySleepClipFrameReader();
43
+ this.createCommandSequencer = () => new _babySleepClipSequencer.BabySleepClipSequencer({
44
+ write: {
45
+ serviceUuid: _babySleepClipProtocol.BABY_SLEEP_CLIP_SERVICE,
46
+ characteristicUuid: _babySleepClipProtocol.BABY_SLEEP_CLIP_WRITE
47
+ },
48
+ clockSync: params.clockSync,
49
+ onResult: result => this.onResult?.(result)
50
+ });
51
+ }
52
+ handleSuccessResult() {
53
+ return;
54
+ }
55
+ }
56
+ exports.BabySleepClipDevice = BabySleepClipDevice;
57
+ //# sourceMappingURL=baby-sleep-clip.device.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_btManagedDevice","require","_babySleepClipProtocol","_babySleepClipSequencer","acceptNothing","caseValuePosition","cases","babySleepClipMainServices","exports","uuid","BABY_SLEEP_CLIP_SERVICE","monitorUuids","BABY_SLEEP_CLIP_NOTIFY","parsingModel","writeUuid","BABY_SLEEP_CLIP_WRITE","mainCommandUuid","BabySleepClipDevice","BTManagedDevice","mainServices","stuckDataTimeout","onStreamStart","undefined","preferredMtu","getSupportedMeasurementTypeKeys","BABY_SLEEP_CLIP_MEASUREMENT_TYPE","constructor","device","params","oneReadingPerConnection","frameReader","BabySleepClipFrameReader","createCommandSequencer","BabySleepClipSequencer","write","serviceUuid","characteristicUuid","clockSync","onResult","result","handleSuccessResult"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/baby-sleep-clip.device.ts"],"mappings":";;;;;;AAUA,IAAAA,gBAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAD,OAAA;AAOA,IAAAE,uBAAA,GAAAF,OAAA;AAnBA;;AAqBA,MAAMG,aAAa,GAAG;EAAEC,iBAAiB,EAAE,EAAE;EAAEC,KAAK,EAAE;AAAG,CAAC;AAEnD,MAAMC,yBAAqC,GAAAC,OAAA,CAAAD,yBAAA,GAAG,CACnD;EACEE,IAAI,EAAEC,8CAAuB;EAC7BC,YAAY,EAAE,CACZ;IAAEF,IAAI,EAAEG,6CAAsB;IAAEC,YAAY,EAAET;EAAc,CAAC,CAC9D;EACDU,SAAS,EAAE;IAAEL,IAAI,EAAEM,4CAAqB;IAAEC,eAAe,EAAE;EAAK;AAClE,CAAC,CACF;;AAED;AACO,MAAMC,mBAAmB,SAASC,gCAAe,CAAoC;EAChFC,YAAY,GAAGZ,yBAAyB;EACxCa,gBAAgB,GAAG,MAAM;EACzBC,aAAa,GAAGC,SAAS;EAChBC,YAAY,GAAG,GAAG;EAElBC,+BAA+BA,CAAA,EAAyB;IACzE,OAAO,CAACC,uDAAgC,CAAC;EAC3C;EAEOC,WAAWA,CAChBC,MAAc,EACdC,MAA6D,EAC7D;IACA,KAAK,CAACD,MAAM,EAAE;MACZ,GAAGC,MAAM;MACTC,uBAAuB,EAAED,MAAM,CAACC,uBAAuB,IAAI;IAC7D,CAAC,CAAC;IACF,IAAI,CAACC,WAAW,GAAG,IAAIC,+CAAwB,CAAC,CAAC;IACjD,IAAI,CAACC,sBAAsB,GAAG,MAC5B,IAAIC,8CAAsB,CAAC;MACzBC,KAAK,EAAE;QACLC,WAAW,EAAEzB,8CAAuB;QACpC0B,kBAAkB,EAAErB;MACtB,CAAC;MACDsB,SAAS,EAAET,MAAM,CAACS,SAAS;MAC3BC,QAAQ,EAAGC,MAAM,IACf,IAAI,CAACD,QAAQ,GACXC,MAGF;IACJ,CAAC,CAAC;EACN;EAEUC,mBAAmBA,CAAA,EAAS;IACpC;EACF;AACF;AAAChC,OAAA,CAAAS,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.decodeBabySleepClipResponse = exports.decodeBabySleepClipData = exports.BabySleepClipFrameReader = exports.BabySleepClipCommand = exports.BABY_SLEEP_CLIP_WRITE = exports.BABY_SLEEP_CLIP_SERVICE = exports.BABY_SLEEP_CLIP_NOTIFY = exports.BABY_SLEEP_CLIP_MEASUREMENT_TYPE = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _calculateCrc = require("../../../utils/calculate-crc-8.js");
9
+ var _hexToByte = require("../../../utils/hex-to-byte.js");
10
+ var _le16FromHex = require("../../../utils/le-16-from-hex.js");
11
+ var _lepuFrameReader = require("../lepu/lepu.frame-reader.js");
12
+ /* eslint-disable import/group-exports */
13
+
14
+ const BABY_SLEEP_CLIP_SERVICE = exports.BABY_SLEEP_CLIP_SERVICE = "e8fb0001-a14b-98f9-831b-4e2941d01248";
15
+ const BABY_SLEEP_CLIP_WRITE = exports.BABY_SLEEP_CLIP_WRITE = "e8fb0002-a14b-98f9-831b-4e2941d01248";
16
+ const BABY_SLEEP_CLIP_NOTIFY = exports.BABY_SLEEP_CLIP_NOTIFY = "e8fb0003-a14b-98f9-831b-4e2941d01248";
17
+ const BABY_SLEEP_CLIP_MEASUREMENT_TYPE = exports.BABY_SLEEP_CLIP_MEASUREMENT_TYPE = _core.MeasurementTypeKey.babySleep;
18
+ const BabySleepClipCommand = exports.BabySleepClipCommand = {
19
+ authenticate: 0xff,
20
+ syncTime: 0xec,
21
+ readData: 0x02
22
+ };
23
+ const COMPONENT_SYSTEM = "https://sdk.ovok.com/fhir/CodeSystem/baby-sleep-components";
24
+ const componentCode = (code, display) => ({
25
+ coding: [{
26
+ system: COMPONENT_SYSTEM,
27
+ code,
28
+ display
29
+ }],
30
+ text: display
31
+ });
32
+ const integerComponent = (code, display, value) => ({
33
+ code: componentCode(code, display),
34
+ valueInteger: value
35
+ });
36
+ const booleanComponent = (code, display, value) => ({
37
+ code: componentCode(code, display),
38
+ valueBoolean: value
39
+ });
40
+ const quantityComponent = (code, display, value, unit, ucum) => ({
41
+ code: componentCode(code, display),
42
+ valueQuantity: {
43
+ value,
44
+ unit,
45
+ system: "http://unitsofmeasure.org",
46
+ code: ucum
47
+ }
48
+ });
49
+ const u32 = (bytes, offset) => (bytes[offset] ?? 0) + (bytes[offset + 1] ?? 0) * 0x100 + (bytes[offset + 2] ?? 0) * 0x10000 + (bytes[offset + 3] ?? 0) * 0x1000000;
50
+ const u16 = (bytes, offset) => (bytes[offset] ?? 0) | (bytes[offset + 1] ?? 0) << 8;
51
+ const i16 = (bytes, offset) => {
52
+ const value = u16(bytes, offset);
53
+ return value > 0x7fff ? value - 0x10000 : value;
54
+ };
55
+
56
+ /** Validates one complete A5 response used by the BabySleep Clip interface. */
57
+ const decodeBabySleepClipResponse = frame => {
58
+ if (frame.length < 8 || (0, _hexToByte.hexToByte)(frame[0] ?? "00") !== 0xa5) {
59
+ return undefined;
60
+ }
61
+ const command = (0, _hexToByte.hexToByte)(frame[1] ?? "00");
62
+ const checksumIndex = frame.length - 1;
63
+ const payloadLength = (0, _le16FromHex.le16FromHex)(frame, 5);
64
+ if ((0, _hexToByte.hexToByte)(frame[2] ?? "00") !== (~command & 0xff) || frame.length !== payloadLength + 8 || (0, _hexToByte.hexToByte)(frame[checksumIndex] ?? "00") !== (0, _calculateCrc.calculateCrc8)([...frame], checksumIndex)) {
65
+ return undefined;
66
+ }
67
+ return {
68
+ command,
69
+ status: (0, _hexToByte.hexToByte)(frame[3] ?? "00"),
70
+ payload: frame.slice(7, checksumIndex).map(_hexToByte.hexToByte)
71
+ };
72
+ };
73
+
74
+ /** Maps the vendor's RT_DATA response without assigning meanings to its coded states. */
75
+ exports.decodeBabySleepClipResponse = decodeBabySleepClipResponse;
76
+ const decodeBabySleepClipData = (bytes, recordedAt = new Date()) => {
77
+ if (bytes.length < 21) {
78
+ return undefined;
79
+ }
80
+ const components = [integerComponent("duration", "Recording duration (raw)", u32(bytes, 0)), integerComponent("device-status", "Device status", bytes[4] ?? 0), integerComponent("posture", "Posture code", bytes[5] ?? 0), booleanComponent("lead-off", "Sensor lead-off", bytes[6] === 1), integerComponent("breath-alarm", "Respiratory alarm code", bytes[8] ?? 0), integerComponent("temperature-alarm", "Temperature alarm code", (bytes[11] ?? 0) & 0x03), booleanComponent("quilt-kick-alarm", "Quilt movement alarm", ((bytes[11] ?? 0) & 0x04) !== 0), integerComponent("battery-state", "Battery state code", bytes[12] ?? 0), quantityComponent("battery-charge", "Battery charge", bytes[13] ?? 0, "%", "%"), quantityComponent("battery-voltage", "Battery voltage", u16(bytes, 14) / 1000, "V", "V"), integerComponent("startup", "Device startup value (raw)", u32(bytes, 16)), booleanComponent("posture-alarm", "Posture alarm", bytes[20] === 1)];
81
+ const respiratoryRate = bytes[7] ?? 0;
82
+ if (respiratoryRate > 0 && respiratoryRate <= 100) {
83
+ components.push(quantityComponent("respiratory-rate", "Respiratory rate", respiratoryRate, "breaths/min", "{breaths}/min"));
84
+ }
85
+ const temperature = i16(bytes, 9) / 10;
86
+ if (temperature >= -20 && temperature <= 60) {
87
+ components.push(quantityComponent("temperature", "Feeling temperature", temperature, "°C", "Cel"));
88
+ }
89
+ if (bytes.length >= 56) {
90
+ components.push(integerComponent("cough-display", "Cough display flag", bytes[28] ?? 0), integerComponent("sleep-state", "Sleep state code", bytes[29] ?? 0), integerComponent("falling-asleep-time", "Falling asleep time (raw)", u32(bytes, 30)), integerComponent("awake-time", "Awake time (raw)", u32(bytes, 34)), integerComponent("wake-time", "Wake time (raw)", u32(bytes, 38)), integerComponent("deep-sleep-time", "Deep sleep time (raw)", u32(bytes, 42)), integerComponent("light-sleep-time", "Light sleep time (raw)", u32(bytes, 46)), integerComponent("sleep-time", "Sleep time (raw)", u32(bytes, 50)), integerComponent("awake-count", "Awake count", bytes[54] ?? 0), integerComponent("playpnea", "Playpnea code", bytes[55] ?? 0));
91
+ }
92
+ return {
93
+ measurementTypeKey: BABY_SLEEP_CLIP_MEASUREMENT_TYPE,
94
+ recordedAt,
95
+ components
96
+ };
97
+ };
98
+
99
+ /** Reads complete encrypted Lepu A5 notifications and joins split frames. */
100
+ exports.decodeBabySleepClipData = decodeBabySleepClipData;
101
+ class BabySleepClipFrameReader {
102
+ reader = new _lepuFrameReader.LepuFrameReader(["a5"]);
103
+ readFrame = buffer => this.reader.readFrame(buffer);
104
+ }
105
+ exports.BabySleepClipFrameReader = BabySleepClipFrameReader;
106
+ //# sourceMappingURL=baby-sleep-clip.protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_calculateCrc","_hexToByte","_le16FromHex","_lepuFrameReader","BABY_SLEEP_CLIP_SERVICE","exports","BABY_SLEEP_CLIP_WRITE","BABY_SLEEP_CLIP_NOTIFY","BABY_SLEEP_CLIP_MEASUREMENT_TYPE","MeasurementTypeKey","babySleep","BabySleepClipCommand","authenticate","syncTime","readData","COMPONENT_SYSTEM","componentCode","code","display","coding","system","text","integerComponent","value","valueInteger","booleanComponent","valueBoolean","quantityComponent","unit","ucum","valueQuantity","u32","bytes","offset","u16","i16","decodeBabySleepClipResponse","frame","length","hexToByte","undefined","command","checksumIndex","payloadLength","le16FromHex","calculateCrc8","status","payload","slice","map","decodeBabySleepClipData","recordedAt","Date","components","respiratoryRate","push","temperature","measurementTypeKey","BabySleepClipFrameReader","reader","LepuFrameReader","readFrame","buffer"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/baby-sleep-clip.protocol.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BabySleepClipSequencer = void 0;
7
+ var _caseType = require("../../../types/case-type.js");
8
+ var _clockSync = require("../../../types/clock-sync.js");
9
+ var _lepuCommandBuilder = require("../lepu/lepu.command-builder.js");
10
+ var _babySleepClipProtocol = require("./baby-sleep-clip.protocol.js");
11
+ var _viatomLepuCrypto = require("./viatom-lepu-crypto.js");
12
+ /** Authenticates, synchronizes the BS1 clock when enabled, and reads one RT_DATA record. */
13
+ class BabySleepClipSequencer {
14
+ commands = new _lepuCommandBuilder.LepuCommandBuilder("a5");
15
+ phase = "authenticate";
16
+ resultReported = false;
17
+ constructor(params) {
18
+ this.params = params;
19
+ }
20
+ initialCommands = () => [this.command(_babySleepClipProtocol.BabySleepClipCommand.authenticate, (0, _viatomLepuCrypto.createLepuAccessToken)(this.now()), false)];
21
+ isNormalDisconnect = () => this.resultReported;
22
+ commandTimeoutMs = () => this.phase === "done" ? undefined : 5_000;
23
+ onCommandTimeout = () => {
24
+ this.phase = "done";
25
+ return {
26
+ terminal: true
27
+ };
28
+ };
29
+ nextCommand = frame => {
30
+ const response = (0, _babySleepClipProtocol.decodeBabySleepClipResponse)(frame);
31
+ if (!response || response.status !== 1) {
32
+ return undefined;
33
+ }
34
+ if (this.phase === "authenticate") {
35
+ if (response.command !== _babySleepClipProtocol.BabySleepClipCommand.authenticate) {
36
+ return undefined;
37
+ }
38
+ const sessionKey = (0, _viatomLepuCrypto.parseLepuSessionKey)((0, _viatomLepuCrypto.decryptLepuHandshake)(response.payload));
39
+ if (!sessionKey) {
40
+ return undefined;
41
+ }
42
+ this.sessionKey = sessionKey;
43
+ this.phase = (0, _clockSync.isClockSyncEnabled)(this.params.clockSync) ? "clock" : "read";
44
+ return [this.phase === "clock" ? this.timeCommand() : this.readCommand()];
45
+ }
46
+ if (this.phase === "clock" && response.command === _babySleepClipProtocol.BabySleepClipCommand.syncTime) {
47
+ this.phase = "read";
48
+ return [this.readCommand()];
49
+ }
50
+ if (this.phase === "read" && response.command === _babySleepClipProtocol.BabySleepClipCommand.readData) {
51
+ const payload = this.sessionKey ? (0, _viatomLepuCrypto.decryptLepuPayload)(response.payload, this.sessionKey) ?? [] : [];
52
+ const measurement = (0, _babySleepClipProtocol.decodeBabySleepClipData)(payload, this.now());
53
+ if (measurement) {
54
+ this.phase = "done";
55
+ this.resultReported = true;
56
+ this.params.onResult({
57
+ ...measurement,
58
+ caseType: _caseType.CaseType.RESULT
59
+ });
60
+ }
61
+ }
62
+ return undefined;
63
+ };
64
+ command = (command, payload = [], encrypt = true) => {
65
+ const framePayload = encrypt && this.sessionKey && payload.length > 0 ? (0, _viatomLepuCrypto.encryptLepuPayload)(payload, this.sessionKey) : [...payload];
66
+ return {
67
+ ...this.params.write,
68
+ frame: this.commands.build(command, framePayload),
69
+ withoutResponse: true
70
+ };
71
+ };
72
+ timeCommand = () => {
73
+ const parts = (0, _clockSync.getClockParts)(this.now(), this.params.clockSync?.timezone ?? "local");
74
+ return this.command(_babySleepClipProtocol.BabySleepClipCommand.syncTime, [parts.year & 0xff, parts.year >>> 8, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds]);
75
+ };
76
+ readCommand = () => this.command(_babySleepClipProtocol.BabySleepClipCommand.readData);
77
+ now = () => this.params.clockSync?.now?.() ?? new Date();
78
+ }
79
+ exports.BabySleepClipSequencer = BabySleepClipSequencer;
80
+ //# sourceMappingURL=baby-sleep-clip.sequencer.js.map