@ovok/native 1.6.23 → 1.6.25

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 (136) hide show
  1. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js +1 -1
  2. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  3. package/lib/commonjs/modules/bt-device/constants/supported-devices.js +1 -1
  4. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js +7 -1
  6. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
  7. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +37 -0
  8. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +7 -1
  10. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  11. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js +13 -4
  12. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
  13. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.name-match.js +3 -0
  14. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.name-match.js.map +1 -1
  15. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +2 -0
  16. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  17. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js +31 -0
  18. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js.map +1 -0
  19. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js +4 -1
  20. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js.map +1 -1
  21. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js +9 -4
  22. package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js.map +1 -1
  23. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js +28 -0
  24. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js.map +1 -1
  25. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-device.js +24 -3
  26. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-device.js.map +1 -1
  27. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-record.js +98 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-record.js.map +1 -0
  29. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js +215 -55
  30. package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js.map +1 -1
  31. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +16 -3
  32. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
  33. package/lib/commonjs/modules/bt-management/types/clock-sync.js +1 -0
  34. package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
  35. package/lib/commonjs/modules/bt-management/utils/convert-ecg-diagnostic-flag.js +19 -27
  36. package/lib/commonjs/modules/bt-management/utils/convert-ecg-diagnostic-flag.js.map +1 -1
  37. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js +2 -2
  38. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  39. package/lib/module/modules/bt-device/constants/supported-devices.js +1 -1
  40. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  41. package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js +7 -1
  42. package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
  43. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +37 -0
  44. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  45. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +7 -1
  46. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  47. package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js +13 -3
  48. package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
  49. package/lib/module/modules/bt-management/services/devices/lepu/lepu.name-match.js +4 -1
  50. package/lib/module/modules/bt-management/services/devices/lepu/lepu.name-match.js.map +1 -1
  51. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +2 -0
  52. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  53. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js +27 -0
  54. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js.map +1 -0
  55. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js +4 -1
  56. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js.map +1 -1
  57. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js +4 -5
  58. package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js.map +1 -1
  59. package/lib/module/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js +28 -0
  60. package/lib/module/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js.map +1 -1
  61. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-device.js +24 -3
  62. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-device.js.map +1 -1
  63. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-record.js +92 -0
  64. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-record.js.map +1 -0
  65. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js +211 -50
  66. package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js.map +1 -1
  67. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +16 -3
  68. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
  69. package/lib/module/modules/bt-management/types/clock-sync.js +1 -0
  70. package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
  71. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  72. package/lib/module/modules/bt-management/utils/convert-ecg-diagnostic-flag.js +19 -27
  73. package/lib/module/modules/bt-management/utils/convert-ecg-diagnostic-flag.js.map +1 -1
  74. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  75. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  76. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts.map +1 -1
  77. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts +8 -0
  78. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  80. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts +9 -3
  81. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
  82. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.name-match.d.ts.map +1 -1
  83. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -1
  84. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  85. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts +3 -0
  86. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts.map +1 -0
  87. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.d.ts.map +1 -1
  88. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts +2 -1
  89. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts.map +1 -1
  90. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts +11 -0
  91. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts.map +1 -1
  92. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts +2 -1
  93. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts.map +1 -1
  94. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts +41 -0
  95. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts.map +1 -0
  96. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts +50 -18
  97. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts.map +1 -1
  98. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
  99. package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  100. package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts +10 -0
  101. package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
  102. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +4 -1
  103. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  104. package/lib/typescript/commonjs/src/modules/bt-management/utils/convert-ecg-diagnostic-flag.d.ts.map +1 -1
  105. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  106. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  107. package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts.map +1 -1
  108. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts +8 -0
  109. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  110. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  111. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts +9 -3
  112. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
  113. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.name-match.d.ts.map +1 -1
  114. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -1
  115. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  116. package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts +3 -0
  117. package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts.map +1 -0
  118. package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.d.ts.map +1 -1
  119. package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts +2 -1
  120. package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts.map +1 -1
  121. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts +11 -0
  122. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts.map +1 -1
  123. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts +2 -1
  124. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts.map +1 -1
  125. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts +41 -0
  126. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts.map +1 -0
  127. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts +50 -18
  128. package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts.map +1 -1
  129. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
  130. package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  131. package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts +10 -0
  132. package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
  133. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +4 -1
  134. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  135. package/lib/typescript/module/src/modules/bt-management/utils/convert-ecg-diagnostic-flag.d.ts.map +1 -1
  136. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["PACKET_BYTES","GROUP_INDEX","COMMAND_INDEX","PARAMETER_INDEX","DOWNLOAD_GROUP","DOWNLOAD_MODE","DOWNLOAD_HEADER","DOWNLOAD_RAW","FRAME_GROUP_INDEX","FRAME_COMMAND_INDEX","FRAME_PACKET_INDEX","PAYLOAD_FROM","PAYLOAD_BYTES","HEADER_PACKETS","PACKETS_PER_SEGMENT","SEGMENTS","BYTE_MASK","BYTE_BITS","toHex","byte","toString","padStart","isDownloadFrame","frame","command","toLowerCase","isExpectedRawPacket","packetIndex","packet","write","parameters","bytes","Array","fill","forEach","value","index","map","withoutResponse","segmentParameters","segment","VerovalEcgTransfer","phase","packets","recording","constructor","params","initialCommands","nextCommand","undefined","requestSegment","push","slice","finishSegment","onRecording"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"mappings":";;AAGA;AACA,MAAMA,YAAY,GAAG,EAAE;AACvB,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,eAAe,GAAG,CAAC;AAEzB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,eAAe,GAAG,CAAC;AACzB,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,mBAAmB,GAAG,CAAC;AAC7B,MAAMC,kBAAkB,GAAG,CAAC;;AAE5B;AACA,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,aAAa,GAAG,EAAE;AACxB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,mBAAmB,GAAG,EAAE;AAC9B,MAAMC,QAAQ,GAAG,EAAE;AAEnB,MAAMC,SAAS,GAAG,IAAI;AACtB,MAAMC,SAAS,GAAG,CAAC;AAEnB,MAAMC,KAAK,GAAIC,IAAY,IACzB,CAACA,IAAI,GAAGH,SAAS,EAAEI,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AAElD,MAAMC,eAAe,GAAGA,CACtBC,KAAwB,EACxBC,OAAe,KAEfD,KAAK,CAACf,iBAAiB,CAAC,EAAEiB,WAAW,CAAC,CAAC,KAAKP,KAAK,CAACd,cAAc,CAAC,IACjEmB,KAAK,CAACd,mBAAmB,CAAC,EAAEgB,WAAW,CAAC,CAAC,KAAKP,KAAK,CAACM,OAAO,CAAC;AAE9D,MAAME,mBAAmB,GAAGA,CAC1BH,KAAwB,EACxBI,WAAmB,KAEnBL,eAAe,CAACC,KAAK,EAAEhB,YAAY,CAAC,IACpCgB,KAAK,CAACb,kBAAkB,CAAC,EAAEe,WAAW,CAAC,CAAC,KAAKP,KAAK,CAACS,WAAW,CAAC;AAEjE,MAAMC,MAAM,GAAGA,CACbC,KAAmC,EACnCL,OAAe,EACfM,UAA6B,GAAG,EAAE,KAChB;EAClB,MAAMC,KAAK,GAAG,IAAIC,KAAK,CAAShC,YAAY,CAAC,CAACiC,IAAI,CAAC,CAAC,CAAC;EAErDF,KAAK,CAAC9B,WAAW,CAAC,GAAGG,cAAc;EACnC2B,KAAK,CAAC7B,aAAa,CAAC,GAAGsB,OAAO;EAC9BM,UAAU,CAACI,OAAO,CAAC,CAACC,KAAK,EAAEC,KAAK,KAAK;IACnCL,KAAK,CAAC5B,eAAe,GAAGiC,KAAK,CAAC,GAAGD,KAAK;EACxC,CAAC,CAAC;EAEF,OAAO;IAAE,GAAGN,KAAK;IAAEN,KAAK,EAAEQ,KAAK,CAACM,GAAG,CAACnB,KAAK,CAAC;IAAEoB,eAAe,EAAE;EAAK,CAAC;AACrE,CAAC;AAED,MAAMC,iBAAiB,GAAIC,OAAe,IAAe,CACvDA,OAAO,GAAGxB,SAAS,EAClBwB,OAAO,IAAIvB,SAAS,GAAID,SAAS,EACjCwB,OAAO,IAAKvB,SAAS,GAAG,CAAE,GAAID,SAAS,CACzC;AAaD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMyB,kBAAkB,CAA6B;EAClDC,KAAK,GAAU,MAAM;EACrBC,OAAO,GAAG,CAAC;EACXH,OAAO,GAAG,CAAC;EACXI,SAAS,GAAa,EAAE;EAEzBC,WAAWA,CAAkBC,MAAyB,EAAE;IAAA,KAA3BA,MAAyB,GAAzBA,MAAyB;EAAG;EAEzDC,eAAe,GAAGA,CAAA,KAAgC,CACvDnB,MAAM,CAAC,IAAI,CAACkB,MAAM,CAACjB,KAAK,EAAExB,aAAa,CAAC,CACzC;EAEM2C,WAAW,GAChBzB,KAAwB,IACiB;IACzC,IAAI,IAAI,CAACmB,KAAK,KAAK,MAAM,EAAE;MACzB,OAAOO,SAAS;IAClB;IAEA,IAAI,IAAI,CAACP,KAAK,KAAK,MAAM,EAAE;MACzB,IAAI,CAACpB,eAAe,CAACC,KAAK,EAAElB,aAAa,CAAC,EAAE;QAC1C,OAAO4C,SAAS;MAClB;MAEA,IAAI,CAACP,KAAK,GAAG,QAAQ;MACrB,IAAI,CAACC,OAAO,GAAG,CAAC;MAEhB,OAAO,CAACf,MAAM,CAAC,IAAI,CAACkB,MAAM,CAACjB,KAAK,EAAEvB,eAAe,CAAC,CAAC;IACrD;IAEA,IAAI,IAAI,CAACoC,KAAK,KAAK,QAAQ,EAAE;MAC3B,IAAI,CAACpB,eAAe,CAACC,KAAK,EAAEjB,eAAe,CAAC,EAAE;QAC5C,OAAO2C,SAAS;MAClB;MAEA,IAAI,CAACN,OAAO,IAAI,CAAC;MAEjB,OAAO,IAAI,CAACA,OAAO,GAAG9B,cAAc,GAAGoC,SAAS,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC,CAAC;IAC3E;IAEA,IAAI,CAACxB,mBAAmB,CAACH,KAAK,EAAE,IAAI,CAACoB,OAAO,CAAC,EAAE;MAC7C,OAAOM,SAAS;IAClB;IAEA,IAAI,CAACN,OAAO,IAAI,CAAC;IAEjB,IAAI,CAACC,SAAS,CAACO,IAAI,CACjB,GAAG5B,KAAK,CAAC6B,KAAK,CAACzC,YAAY,EAAEA,YAAY,GAAGC,aAAa,CAC3D,CAAC;IAED,OAAO,IAAI,CAAC+B,OAAO,GAAG7B,mBAAmB,GACrCmC,SAAS,GACT,IAAI,CAACI,aAAa,CAAC,CAAC;EAC1B,CAAC;EAEOA,aAAa,GAAGA,CAAA,KAA4C;IAClE,IAAI,CAACb,OAAO,IAAI,CAAC;IAEjB,IAAI,IAAI,CAACA,OAAO,GAAGzB,QAAQ,EAAE;MAC3B,OAAO,IAAI,CAACmC,cAAc,CAAC,IAAI,CAACV,OAAO,CAAC;IAC1C;IAEA,IAAI,CAACE,KAAK,GAAG,MAAM;IACnB,IAAI,CAACI,MAAM,CAACQ,WAAW,CAAC,IAAI,CAACV,SAAS,CAAC;IAEvC,OAAOK,SAAS;EAClB,CAAC;EAEOC,cAAc,GAAIV,OAAe,IAA+B;IACtE,IAAI,CAACE,KAAK,GAAG,KAAK;IAClB,IAAI,CAACC,OAAO,GAAG,CAAC;IAChB,IAAI,CAACH,OAAO,GAAGA,OAAO;IAEtB,OAAO,CACLZ,MAAM,CAAC,IAAI,CAACkB,MAAM,CAACjB,KAAK,EAAEtB,YAAY,EAAEgC,iBAAiB,CAACC,OAAO,CAAC,CAAC,CACpE;EACH,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["getClockParts","isClockSyncEnabled","hexToByte","parseVerovalEcgHeader","PACKET_BYTES","GROUP_INDEX","COMMAND_INDEX","PARAMETER_INDEX","DOWNLOAD_GROUP","DOWNLOAD_WAIT","DOWNLOAD_MODE","DOWNLOAD_HEADER","DOWNLOAD_RAW","SETTINGS_GROUP","SET_TIME_GROUP","SETTINGS_COMMAND","FRAME_GROUP_INDEX","FRAME_COMMAND_INDEX","FRAME_PACKET_INDEX","MODE_USER_ONE_COUNT_INDEX","MODE_USER_TWO_COUNT_INDEX","PAYLOAD_FROM","PAYLOAD_BYTES","HEADER_PACKETS","PACKETS_PER_SEGMENT","SEGMENT_BYTES","COMMAND_TIMEOUT_MS","RAW_TIMEOUT_MS","MAX_RETRIES","SET_TIME_DELAY_MS","BYTE_MASK","byteAt","frame","index","value","Number","isFinite","toHex","byte","toString","padStart","isFrame","group","command","packet","write","parameters","delayBeforeWriteMs","bytes","Array","fill","forEach","map","withoutResponse","undefined","payloadOf","slice","settingsCommand","setTimeCommand","clockSync","settings","parts","now","Date","timezone","year","month","day","hours","minutes","seconds","VerovalEcgTransfer","headerPacket","headerBytes","recordIndex","expectedRecords","headers","ecgHeaders","ecgIndex","segment","rawPacket","segmentBytes","rawBytes","pendingTimeout","retries","constructor","params","phase","initialCommands","remember","requestMode","nextCommand","nextSettings","nextMode","nextHeader","nextRaw","commandTimeoutMs","onCommandTimeout","lastCommand","terminal","commands","commandProgress","userOne","userTwo","requestHeader","push","header","filter","candidate","isEcg","hasError","rawSize","onRecord","length","requestRaw","raw","requestSegment","memorySlot","sequence","timeout","preserveRetryCount","last"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"mappings":";;AAAA;AACA,SAA2BA,aAAa,EAAEC,kBAAkB,QAAQ,8BAA2B;AAM/F,SAASC,SAAS,QAAQ,+BAA4B;AAEtD,SAASC,qBAAqB,QAA0B,yBAAsB;;AAE9E;AACA,MAAMC,YAAY,GAAG,EAAE;AACvB,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,eAAe,GAAG,CAAC;AAEzB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,eAAe,GAAG,CAAC;AACzB,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,gBAAgB,GAAG,CAAC;AAE1B,MAAMC,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,mBAAmB,GAAG,CAAC;AAC7B,MAAMC,kBAAkB,GAAG,CAAC;AAC5B,MAAMC,yBAAyB,GAAG,CAAC;AACnC,MAAMC,yBAAyB,GAAG,CAAC;;AAEnC;AACA,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,aAAa,GAAG,EAAE;AACxB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,mBAAmB,GAAG,EAAE;AAC9B,MAAMC,aAAa,GAAGH,aAAa,GAAGE,mBAAmB;AAEzD,MAAME,kBAAkB,GAAG,KAAK;AAChC,MAAMC,cAAc,GAAG,KAAK;AAC5B,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,iBAAiB,GAAG,KAAK;AAC/B,MAAMC,SAAS,GAAG,IAAI;AAEtB,MAAMC,MAAM,GAAGA,CAACC,KAAwB,EAAEC,KAAa,KAAa;EAClE,MAAMC,KAAK,GAAGhC,SAAS,CAAC8B,KAAK,CAACC,KAAK,CAAC,IAAI,IAAI,CAAC;EAE7C,OAAOE,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,GAAGA,KAAK,GAAG,CAAC;AAC3C,CAAC;AAED,MAAMG,KAAK,GAAIC,IAAY,IACzB,CAACA,IAAI,GAAGR,SAAS,EAAES,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AAElD,MAAMC,OAAO,GAAGA,CACdT,KAAwB,EACxBU,KAAa,EACbC,OAAe,KAEfZ,MAAM,CAACC,KAAK,EAAEhB,iBAAiB,CAAC,KAAK0B,KAAK,IAC1CX,MAAM,CAACC,KAAK,EAAEf,mBAAmB,CAAC,KAAK0B,OAAO;AAEhD,MAAMC,MAAM,GAAGA,CACbC,KAAmC,EACnCH,KAAa,EACbC,OAAe,EACfG,UAA6B,GAAG,EAAE,EAClCC,kBAA2B,KACT;EAClB,MAAMC,KAAK,GAAG,IAAIC,KAAK,CAAS7C,YAAY,CAAC,CAAC8C,IAAI,CAAC,CAAC,CAAC;EAErDF,KAAK,CAAC3C,WAAW,CAAC,GAAGqC,KAAK;EAC1BM,KAAK,CAAC1C,aAAa,CAAC,GAAGqC,OAAO;EAC9BG,UAAU,CAACK,OAAO,CAAC,CAACjB,KAAK,EAAED,KAAK,KAAK;IACnCe,KAAK,CAACzC,eAAe,GAAG0B,KAAK,CAAC,GAAGC,KAAK;EACxC,CAAC,CAAC;EAEF,OAAO;IACL,GAAGW,KAAK;IACRb,KAAK,EAAEgB,KAAK,CAACI,GAAG,CAACf,KAAK,CAAC;IACvBgB,eAAe,EAAE,IAAI;IACrB,IAAIN,kBAAkB,KAAKO,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEP;IAAmB,CAAC;EACpE,CAAC;AACH,CAAC;AAED,MAAMQ,SAAS,GAAIvB,KAAwB,IACzC,CAAC,GAAGA,KAAK,CAACwB,KAAK,CAACnC,YAAY,EAAEA,YAAY,GAAGC,aAAa,CAAC,CAAC;AAE9D,MAAMmC,eAAe,GACnBZ,KAAmC,IAEnCD,MAAM,CAACC,KAAK,EAAEhC,cAAc,EAAEE,gBAAgB,EAAE,EAAE,EAAEc,iBAAiB,CAAC;AAExE,MAAM6B,cAAc,GAAGA,CACrBb,KAAmC,EACnCc,SAAuC,EACvCC,QAA2B,KACT;EAClB,MAAMC,KAAK,GAAG7D,aAAa,CACzB2D,SAAS,EAAEG,GAAG,GAAG,CAAC,IAAI,IAAIC,IAAI,CAAC,CAAC,EAChCJ,SAAS,EAAEK,QACb,CAAC;EAED,OAAOpB,MAAM,CAACC,KAAK,EAAE/B,cAAc,EAAEC,gBAAgB,EAAE,CACrD8C,KAAK,CAACI,IAAI,GAAG,GAAG,EAChBJ,KAAK,CAACK,KAAK,EACXL,KAAK,CAACM,GAAG,EACTN,KAAK,CAACO,KAAK,EACXP,KAAK,CAACQ,OAAO,EACbR,KAAK,CAACS,OAAO,EACbV,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAChBA,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAChBA,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CACjB,CAAC;AACJ,CAAC;AAkBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMW,kBAAkB,CAA6B;EAE3CC,YAAY,GAAG,CAAC;EAChBC,WAAW,GAAa,EAAE;EAC1BC,WAAW,GAAG,CAAC;EACfC,eAAe,GAAG,CAAC;EACnBC,OAAO,GAAuB,EAAE;EAChCC,UAAU,GAAuB,EAAE;EACnCC,QAAQ,GAAG,CAAC;EACZC,OAAO,GAAG,CAAC;EACXC,SAAS,GAAG,CAAC;EACbC,YAAY,GAAa,EAAE;EAC3BC,QAAQ,GAAa,EAAE;EAEvBC,cAAc,GAAGzD,kBAAkB;EACnC0D,OAAO,GAAG,CAAC;EACXxB,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;EAErByB,WAAWA,CAAkBC,MAAyB,EAAE;IAAA,KAA3BA,MAAyB,GAAzBA,MAAyB;IAC3D,IAAI,CAACC,KAAK,GAAGtF,kBAAkB,CAACqF,MAAM,CAAC3B,SAAS,CAAC,GAAG,UAAU,GAAG,MAAM;EACzE;EAEO6B,eAAe,GAAGA,CAAA,KACvB,IAAI,CAACD,KAAK,KAAK,UAAU,GACrB,IAAI,CAACE,QAAQ,CAAC,CAAChC,eAAe,CAAC,IAAI,CAAC6B,MAAM,CAACzC,KAAK,CAAC,CAAC,EAAEnB,kBAAkB,EAAE,IAAI,CAAC,GAC7E,IAAI,CAACgE,WAAW,CAAC,CAAC;EAEjBC,WAAW,GAChB3D,KAAwB,IACiB;IACzC,IAAI,IAAI,CAACuD,KAAK,KAAK,MAAM,EAAE;MACzB,OAAOjC,SAAS;IAClB;IAEA,IAAI,IAAI,CAACiC,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACK,YAAY,CAAC5D,KAAK,CAAC;IACjC;IAEA,IAAI,IAAI,CAACuD,KAAK,KAAK,MAAM,EAAE;MACzB,OAAO,IAAI,CAACM,QAAQ,CAAC7D,KAAK,CAAC;IAC7B;IAEA,IAAI,IAAI,CAACuD,KAAK,KAAK,QAAQ,EAAE;MAC3B,OAAO,IAAI,CAACO,UAAU,CAAC9D,KAAK,CAAC;IAC/B;IAEA,OAAO,IAAI,CAAC+D,OAAO,CAAC/D,KAAK,CAAC;EAC5B,CAAC;EAEMgE,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACT,KAAK,KAAK,MAAM,GAAGjC,SAAS,GAAG,IAAI,CAAC6B,cAAc;EAElDc,gBAAgB,GAAGA,CAAA,KAA4B;IACpD,IAAI,CAAC,IAAI,CAACC,WAAW,IAAI,IAAI,CAACX,KAAK,KAAK,MAAM,EAAE;MAC9C,OAAO;QAAEY,QAAQ,EAAE;MAAK,CAAC;IAC3B;IAEA,IAAI,IAAI,CAACf,OAAO,IAAIxD,WAAW,EAAE;MAC/B,IAAI,CAAC2D,KAAK,GAAG,MAAM;MAEnB,OAAO;QAAEY,QAAQ,EAAE;MAAK,CAAC;IAC3B;IAEA,IAAI,CAACf,OAAO,IAAI,CAAC;IAEjB,IAAI,IAAI,CAACG,KAAK,KAAK,QAAQ,EAAE;MAC3B,IAAI,CAACf,YAAY,GAAG,CAAC;MACrB,IAAI,CAACC,WAAW,GAAG,EAAE;IACvB;IAEA,IAAI,IAAI,CAACc,KAAK,KAAK,KAAK,EAAE;MACxB,IAAI,CAACP,SAAS,GAAG,CAAC;MAClB,IAAI,CAACC,YAAY,GAAG,EAAE;IACxB;IAEA,OAAO;MAAEmB,QAAQ,EAAE,CAAC,IAAI,CAACF,WAAW;IAAE,CAAC;EACzC,CAAC;EAEMG,eAAe,GACpBrE,KAAwB,IACe;IACvC,IAAI,IAAI,CAACuD,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO9C,OAAO,CAACT,KAAK,EAAEnB,cAAc,EAAEE,gBAAgB,CAAC,GACnD,UAAU,GACV,SAAS;IACf;IAEA,IAAI,IAAI,CAACwE,KAAK,KAAK,MAAM,EAAE;MACzB,OAAO9C,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEE,aAAa,CAAC,GAChD,UAAU,GACV,SAAS;IACf;IAEA,IAAI,IAAI,CAAC6E,KAAK,KAAK,QAAQ,EAAE;MAC3B,IACE,CAAC9C,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEG,eAAe,CAAC,IAChDoB,MAAM,CAACC,KAAK,EAAEd,kBAAkB,CAAC,KAAK,IAAI,CAACsD,YAAY,EACvD;QACA,OAAO,SAAS;MAClB;MAEA,OAAO,IAAI,CAACA,YAAY,GAAG,CAAC,KAAKjD,cAAc,GAAG,UAAU,GAAG,SAAS;IAC1E;IAEA,IACE,CAACkB,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEI,YAAY,CAAC,IAC7CmB,MAAM,CAACC,KAAK,EAAEd,kBAAkB,CAAC,KAAK,IAAI,CAAC8D,SAAS,EACpD;MACA,OAAO,SAAS;IAClB;IAEA,OAAO,IAAI,CAACA,SAAS,GAAG,CAAC,KAAKxD,mBAAmB,GAAG,UAAU,GAAG,SAAS;EAC5E,CAAC;EAEOoE,YAAY,GAClB5D,KAAwB,IACiB;IACzC,IAAI,CAACS,OAAO,CAACT,KAAK,EAAEnB,cAAc,EAAEE,gBAAgB,CAAC,EAAE;MACrD,OAAOuC,SAAS;IAClB;IAEA,IAAI,CAACM,QAAQ,GAAG,CAAC7B,MAAM,CAACC,KAAK,EAAE,CAAC,CAAC,EAAED,MAAM,CAACC,KAAK,EAAE,CAAC,CAAC,EAAED,MAAM,CAACC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtE,IAAI,CAACuD,KAAK,GAAG,MAAM;IAEnB,OAAO,IAAI,CAACE,QAAQ,CAClB,CACE/B,cAAc,CAAC,IAAI,CAAC4B,MAAM,CAACzC,KAAK,EAAE,IAAI,CAACyC,MAAM,CAAC3B,SAAS,EAAE,IAAI,CAACC,QAAQ,CAAC,EACvEhB,MAAM,CAAC,IAAI,CAAC0C,MAAM,CAACzC,KAAK,EAAErC,cAAc,EAAEE,aAAa,CAAC,CACzD,EACDgB,kBACF,CAAC;EACH,CAAC;EAEOmE,QAAQ,GACd7D,KAAwB,IACiB;IACzC,IAAI,CAACS,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEE,aAAa,CAAC,EAAE;MAClD,OAAO4C,SAAS;IAClB;IAEA,MAAMgD,OAAO,GAAGvE,MAAM,CAACC,KAAK,EAAEb,yBAAyB,CAAC;IACxD,MAAMoF,OAAO,GAAGxE,MAAM,CAACC,KAAK,EAAEZ,yBAAyB,CAAC;IAExD,IAAI,CAACuD,eAAe,GAAG2B,OAAO,GAAGC,OAAO;IAExC,IAAI,IAAI,CAAC5B,eAAe,KAAK,CAAC,EAAE;MAC9B,IAAI,CAACY,KAAK,GAAG,MAAM;MAEnB,OAAOjC,SAAS;IAClB;IAEA,IAAI,CAACsB,OAAO,GAAG,EAAE;IACjB,IAAI,CAACF,WAAW,GAAG,CAAC;IAEpB,OAAO,IAAI,CAAC8B,aAAa,CAAC,IAAI,CAAC9B,WAAW,CAAC;EAC7C,CAAC;EAEOoB,UAAU,GAChB9D,KAAwB,IACiB;IACzC,IACE,CAACS,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEG,eAAe,CAAC,IAChDoB,MAAM,CAACC,KAAK,EAAEd,kBAAkB,CAAC,KAAK,IAAI,CAACsD,YAAY,EACvD;MACA,OAAOlB,SAAS;IAClB;IAEA,IAAI,CAACmB,WAAW,CAACgC,IAAI,CAAC,GAAGlD,SAAS,CAACvB,KAAK,CAAC,CAAC;IAC1C,IAAI,CAACwC,YAAY,IAAI,CAAC;IAEtB,IAAI,IAAI,CAACA,YAAY,GAAGjD,cAAc,EAAE;MACtC,OAAO+B,SAAS;IAClB;IAEA,MAAMoD,MAAM,GAAGvG,qBAAqB,CAAC,IAAI,CAACsE,WAAW,CAAC;IAEtD,IAAIiC,MAAM,EAAE;MACV,IAAI,CAAC9B,OAAO,CAAC6B,IAAI,CAACC,MAAM,CAAC;IAC3B;IAEA,IAAI,CAAChC,WAAW,IAAI,CAAC;IAErB,IAAI,IAAI,CAACA,WAAW,GAAG,IAAI,CAACC,eAAe,EAAE;MAC3C,OAAO,IAAI,CAAC6B,aAAa,CAAC,IAAI,CAAC9B,WAAW,CAAC;IAC7C;IAEA,IAAI,CAACG,UAAU,GAAG,IAAI,CAACD,OAAO,CAAC+B,MAAM,CAClCC,SAAS,IACRA,SAAS,CAACC,KAAK,IAAI,CAACD,SAAS,CAACE,QAAQ,IAAIF,SAAS,CAACG,OAAO,GAAG,CAClE,CAAC;IACD,IAAI,CAACnC,OAAO,CACT+B,MAAM,CAAEC,SAAS,IAAK,CAACA,SAAS,CAACC,KAAK,IAAI,CAACD,SAAS,CAACE,QAAQ,CAAC,CAC9D3D,OAAO,CAAEyD,SAAS,IAAK,IAAI,CAACtB,MAAM,CAAC0B,QAAQ,CAAC;MAAEN,MAAM,EAAEE;IAAU,CAAC,CAAC,CAAC;IAEtE,IAAI,IAAI,CAAC/B,UAAU,CAACoC,MAAM,KAAK,CAAC,EAAE;MAChC,IAAI,CAAC1B,KAAK,GAAG,MAAM;MAEnB,OAAOjC,SAAS;IAClB;IAEA,IAAI,CAACwB,QAAQ,GAAG,CAAC;IAEjB,OAAO,IAAI,CAACW,QAAQ,CAClB,CACE7C,MAAM,CAAC,IAAI,CAAC0C,MAAM,CAACzC,KAAK,EAAErC,cAAc,EAAEC,aAAa,CAAC,EACxD,GAAG,IAAI,CAACyG,UAAU,CAAC,IAAI,CAACrC,UAAU,CAAC,CAAC,CAAC,CAAC,CACvC,EACDlD,cACF,CAAC;EACH,CAAC;EAEOoE,OAAO,GACb/D,KAAwB,IACiB;IACzC,IACE,CAACS,OAAO,CAACT,KAAK,EAAExB,cAAc,EAAEI,YAAY,CAAC,IAC7CmB,MAAM,CAACC,KAAK,EAAEd,kBAAkB,CAAC,KAAK,IAAI,CAAC8D,SAAS,EACpD;MACA,OAAO1B,SAAS;IAClB;IAEA,IAAI,CAAC2B,YAAY,CAACwB,IAAI,CAAC,GAAGlD,SAAS,CAACvB,KAAK,CAAC,CAAC;IAC3C,IAAI,CAACgD,SAAS,IAAI,CAAC;IAEnB,IAAI,IAAI,CAACA,SAAS,GAAGxD,mBAAmB,EAAE;MACxC,OAAO8B,SAAS;IAClB;IAEA,IAAI,CAAC4B,QAAQ,CAACuB,IAAI,CAAC,GAAG,IAAI,CAACxB,YAAY,CAAC;IACxC,MAAMyB,MAAM,GAAG,IAAI,CAAC7B,UAAU,CAAC,IAAI,CAACC,QAAQ,CAAC;IAE7C,IAAI,CAAC4B,MAAM,EAAE;MACX,IAAI,CAACnB,KAAK,GAAG,MAAM;MAEnB,OAAOjC,SAAS;IAClB;IAEA,IAAI,IAAI,CAAC4B,QAAQ,CAAC+B,MAAM,IAAIP,MAAM,CAACK,OAAO,EAAE;MAC1C,IAAI,CAACzB,MAAM,CAAC0B,QAAQ,CAAC;QACnBN,MAAM;QACNS,GAAG,EAAE,IAAI,CAACjC,QAAQ,CAAC1B,KAAK,CAAC,CAAC,EAAEkD,MAAM,CAACK,OAAO;MAC5C,CAAC,CAAC;MACF,IAAI,CAACjC,QAAQ,IAAI,CAAC;MAElB,IAAI,IAAI,CAACA,QAAQ,IAAI,IAAI,CAACD,UAAU,CAACoC,MAAM,EAAE;QAC3C,IAAI,CAAC1B,KAAK,GAAG,MAAM;QAEnB,OAAOjC,SAAS;MAClB;MAEA,OAAO,IAAI,CAACmC,QAAQ,CAClB,IAAI,CAACyB,UAAU,CAAC,IAAI,CAACrC,UAAU,CAAC,IAAI,CAACC,QAAQ,CAAC,CAAC,EAC/CnD,cACF,CAAC;IACH;IAEA,IAAI,CAACoD,OAAO,IAAI,CAAC;IAEjB,OAAO,IAAI,CAACU,QAAQ,CAAC,IAAI,CAAC2B,cAAc,CAACV,MAAM,CAAC,EAAE/E,cAAc,CAAC;EACnE,CAAC;EAEO+D,WAAW,GAAGA,CAAA,KACpB,IAAI,CAACD,QAAQ,CACX,CAAC7C,MAAM,CAAC,IAAI,CAAC0C,MAAM,CAACzC,KAAK,EAAErC,cAAc,EAAEE,aAAa,CAAC,CAAC,EAC1DgB,kBACF,CAAC;EAEK8E,aAAa,GAAIvE,KAAa,IAA+B;IACnE,IAAI,CAACsD,KAAK,GAAG,QAAQ;IACrB,IAAI,CAACf,YAAY,GAAG,CAAC;IACrB,IAAI,CAACC,WAAW,GAAG,EAAE;IAErB,OAAO,IAAI,CAACgB,QAAQ,CAClB,CAAC7C,MAAM,CAAC,IAAI,CAAC0C,MAAM,CAACzC,KAAK,EAAErC,cAAc,EAAEG,eAAe,EAAE,CAACsB,KAAK,CAAC,CAAC,CAAC,EACrEP,kBACF,CAAC;EACH,CAAC;EAEOwF,UAAU,GAChBR,MAAoC,IACP;IAC7B,IAAI,CAACA,MAAM,EAAE;MACX,IAAI,CAACnB,KAAK,GAAG,MAAM;MAEnB,OAAO,EAAE;IACX;IAEA,IAAI,CAACR,OAAO,GAAG,CAAC;IAChB,IAAI,CAACG,QAAQ,GAAG,EAAE;IAElB,OAAO,IAAI,CAACkC,cAAc,CAACV,MAAM,CAAC;EACpC,CAAC;EAEOU,cAAc,GACpBV,MAAwB,IACK;IAC7B,IAAI,CAACnB,KAAK,GAAG,KAAK;IAClB,IAAI,CAACP,SAAS,GAAG,CAAC;IAClB,IAAI,CAACC,YAAY,GAAG,EAAE;IAEtB,OAAO,CACLrC,MAAM,CAAC,IAAI,CAAC0C,MAAM,CAACzC,KAAK,EAAErC,cAAc,EAAEI,YAAY,EAAE,CACtD8F,MAAM,CAACW,UAAU,GAAG,CAAC,EACrBX,MAAM,CAACY,QAAQ,EACf,IAAI,CAACvC,OAAO,CACb,CAAC,CACH;EACH,CAAC;EAEOU,QAAQ,GAAGA,CACjBW,QAAkC,EAClCmB,OAAe,EACfC,kBAAkB,GAAG,KAAK,KACG;IAC7B,MAAMC,IAAI,GAAGrB,QAAQ,CAACA,QAAQ,CAACa,MAAM,GAAG,CAAC,CAAC;IAE1C,IAAI,CAACf,WAAW,GAAGuB,IAAI;IACvB,IAAI,CAACtC,cAAc,GAAGoC,OAAO;IAC7B,IAAI,CAACC,kBAAkB,EAAE;MACvB,IAAI,CAACpC,OAAO,GAAG,CAAC;IAClB;IAEA,OAAOgB,QAAQ;EACjB,CAAC;AACH;AAEA,SACE1E,kBAAkB,EAClBf,eAAe,EACfD,aAAa,EACbE,YAAY,EACZH,aAAa,EACbc,cAAc,EACdC,mBAAmB,EACnBG,cAAc,EACdF,aAAa,EACbI,iBAAiB,EACjB0C,kBAAkB","ignoreList":[]}
@@ -28,8 +28,9 @@ const RT_DATA = 0x08;
28
28
  */
29
29
  const CASE_SELECTOR_BYTES = [1, 7];
30
30
 
31
- /** Header, realtime state, and the result struct through its pulse-rate field. */
32
- const MIN_LENGTH_BYTES = 28;
31
+ /** Header, realtime state, the result struct and its result code. */
32
+ const MIN_LENGTH_BYTES = 29;
33
+ const RESULT_CODE_INDEX = 28;
33
34
  const READING = [{
34
35
  name: "systolic",
35
36
  byteIndexes: [20, 21],
@@ -61,6 +62,13 @@ const measuring = (selector, description) => ({
61
62
  kind: "stream",
62
63
  description
63
64
  });
65
+ const rejectFailedResult = (reading, frame) => {
66
+ const resultCode = Number.parseInt(frame?.[RESULT_CODE_INDEX] ?? "00", 16);
67
+ if (resultCode !== 0) {
68
+ throw new Error(`Viatom blood-pressure measurement failed with result code 0x${resultCode.toString(16).padStart(2, "0")}`);
69
+ }
70
+ return reading;
71
+ };
64
72
 
65
73
  /**
66
74
  * The states the series reports, and what each means for a reading.
@@ -70,7 +78,11 @@ const measuring = (selector, description) => ({
70
78
  * separates one measurement from the next, which is why the states in between are declared
71
79
  * rather than ignored.
72
80
  */
73
- const BP2_CASES = [measuring("0804", "Cuff inflating or deflating"), result("0805", "Measurement finished"), measuring("080f", "Averaging run: a measurement is in progress"), measuring("0810", "Averaging run: waiting between measurements"), result("0811", "Averaging run finished, carrying the same payload")];
81
+ const BP2_CASES = [...["00", "01", "02", "03", "0a", "14", "ff"].map(state => ({
82
+ selector: `08${state}`,
83
+ kind: "idle",
84
+ description: "Monitor is connected but not measuring"
85
+ })), measuring("0804", "Cuff inflating or deflating"), result("0805", "Measurement finished"), measuring("080f", "Averaging run: a measurement is in progress"), measuring("0810", "Averaging run: waiting between measurements"), result("0811", "Averaging run finished, carrying the same payload")];
74
86
  /**
75
87
  * Declares one monitor of the BP2 series.
76
88
  *
@@ -87,6 +99,7 @@ const viatomBpMonitor = (advertisedName, params) => lepuDevice({
87
99
  cases: BP2_CASES.map(each => ({
88
100
  ...each
89
101
  })),
102
+ decorateReading: rejectFailedResult,
90
103
  ...(params.expectedDeviceTypes ? {
91
104
  expectedDeviceTypes: params.expectedDeviceTypes
92
105
  } : {})
@@ -1 +1 @@
1
- {"version":3,"names":["MeasurementTypeKey","lepuNameMatch","lepuDevice","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","READING","name","byteIndexes","byteOrder","encoding","unit","result","selector","description","kind","measurementTypeKey","bloodPressure","fields","measuring","BP2_CASES","viatomBpMonitor","advertisedName","params","id","toLowerCase","replace","nameMatch","pollCommand","minLengthBytes","caseSelectorBytes","cases","map","each","expectedDeviceTypes","bp2aMonitor","bp2tMonitor","bp2wMonitor","BP3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["MeasurementTypeKey","lepuNameMatch","lepuDevice","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","RESULT_CODE_INDEX","READING","name","byteIndexes","byteOrder","encoding","unit","result","selector","description","kind","measurementTypeKey","bloodPressure","fields","measuring","rejectFailedResult","reading","frame","resultCode","Number","parseInt","Error","toString","padStart","BP2_CASES","map","state","viatomBpMonitor","advertisedName","params","id","toLowerCase","replace","nameMatch","pollCommand","minLengthBytes","caseSelectorBytes","cases","each","decorateReading","expectedDeviceTypes","bp2aMonitor","bp2tMonitor","bp2wMonitor","BP3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,YAAY;AAQ/C,SAASC,aAAa,QAAQ,4BAAyB;AACvD,SAASC,UAAU,QAAQ,4BAAyB;;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,OAAO,GAAG,IAAI;;AAEpB;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;;AAElC;AACA,MAAMC,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,iBAAiB,GAAG,EAAE;AAE5B,MAAMC,OAA0B,GAAG,CACjC;EACEC,IAAI,EAAE,UAAU;EAChBC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,QAAQ,EAAE,MAAM;EAChBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,QAAQ,EAAE,MAAM;EAChBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,QAAQ,EAAE,MAAM;EAChBC,IAAI,EAAE;AACR,CAAC,CACF;AAED,MAAMC,MAAM,GAAGA,CAACC,QAAgB,EAAEC,WAAmB,MAAsB;EACzED,QAAQ;EACRE,IAAI,EAAE,QAAQ;EACdC,kBAAkB,EAAEjB,kBAAkB,CAACkB,aAAa;EACpDC,MAAM,EAAE,CAAC,GAAGZ,OAAO,CAAC;EACpBQ;AACF,CAAC,CAAC;AAEF,MAAMK,SAAS,GAAGA,CAACN,QAAgB,EAAEC,WAAmB,MAAsB;EAC5ED,QAAQ;EACRE,IAAI,EAAE,QAAQ;EACdD;AACF,CAAC,CAAC;AAEF,MAAMM,kBAA0C,GAAGA,CAACC,OAAO,EAAEC,KAAK,KAAK;EACrE,MAAMC,UAAU,GAAGC,MAAM,CAACC,QAAQ,CAACH,KAAK,GAAGjB,iBAAiB,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;EAE1E,IAAIkB,UAAU,KAAK,CAAC,EAAE;IACpB,MAAM,IAAIG,KAAK,CACb,+DAA+DH,UAAU,CACtEI,QAAQ,CAAC,EAAE,CAAC,CACZC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EACrB,CAAC;EACH;EAEA,OAAOP,OAAO;AAChB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMQ,SAA2B,GAAG,CAClC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAACC,GAAG,CAAEC,KAAK,KAAM;EAC5DlB,QAAQ,EAAE,KAAKkB,KAAK,EAAE;EACtBhB,IAAI,EAAE,MAAe;EACrBD,WAAW,EAAE;AACf,CAAC,CAAC,CAAC,EACHK,SAAS,CAAC,MAAM,EAAE,6BAA6B,CAAC,EAChDP,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,EACtCO,SAAS,CAAC,MAAM,EAAE,6CAA6C,CAAC,EAChEA,SAAS,CAAC,MAAM,EAAE,6CAA6C,CAAC,EAChEP,MAAM,CAAC,MAAM,EAAE,mDAAmD,CAAC,CACpE;AAoBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMoB,eAAe,GAAGA,CACtBC,cAAsB,EACtBC,MAAsB,KAEtBjC,UAAU,CAAC;EACTkC,EAAE,EAAED,MAAM,CAACC,EAAE,IAAI,UAAUF,cAAc,CAACG,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;EACrFC,SAAS,EAAEJ,MAAM,CAACI,SAAS,IAAItC,aAAa,CAACiC,cAAc,CAAC;EAC5DM,WAAW,EAAErC,OAAO;EACpBsC,cAAc,EAAEpC,gBAAgB;EAChCqC,iBAAiB,EAAEtC,mBAAmB;EACtCuC,KAAK,EAAEb,SAAS,CAACC,GAAG,CAAEa,IAAI,KAAM;IAAE,GAAGA;EAAK,CAAC,CAAC,CAAC;EAC7CC,eAAe,EAAExB,kBAAkB;EACnC,IAAIc,MAAM,CAACW,mBAAmB,GAC1B;IAAEA,mBAAmB,EAAEX,MAAM,CAACW;EAAoB,CAAC,GACnD,CAAC,CAAC;AACR,CAAC,CAAC;;AAEJ;AACA,MAAMC,WAAW,GAAIZ,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;;AAEjC;AACA,MAAMa,WAAW,GAAIb,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;;AAEjC;AACA,MAAMc,WAAW,GAAId,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMe,eAAkC,GAAG,CACzC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,CACP;AAED,SACEH,WAAW,EACXC,WAAW,EACXC,WAAW,EACXC,eAAe,EACfjB,eAAe","ignoreList":[]}
@@ -27,6 +27,7 @@ export const clockSyncCapabilityForDevice = deviceName => {
27
27
  switch (deviceName) {
28
28
  case IntegratedDevices.BC01:
29
29
  case IntegratedDevices.MYSENSE:
30
+ case IntegratedDevices.VEROVAL_ECG:
30
31
  return "supported";
31
32
  case IntegratedDevices.VEROVAL_ACTIVITY:
32
33
  return "unsupported";
@@ -1 +1 @@
1
- {"version":3,"names":["IntegratedDevices","isClockSyncEnabled","options","enabled","getClockParts","date","timezone","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","clockSyncCapabilityForDevice","deviceName","BC01","MYSENSE","VEROVAL_ACTIVITY"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/clock-sync.ts"],"mappings":";;AAAA;;AAEA,SAASA,iBAAiB,QAAQ,yBAAsB;AAkBxD,OAAO,MAAMC,kBAAkB,GAAIC,OAA0B,IAC3DA,OAAO,EAAEC,OAAO,KAAK,KAAK;AAE5B,OAAO,MAAMC,aAAa,GAAGA,CAC3BC,IAAU,EACVC,QAA2B,GAAG,OAAO,KAErCA,QAAQ,KAAK,KAAK,GACd;EACEC,IAAI,EAAEF,IAAI,CAACG,cAAc,CAAC,CAAC;EAC3BC,KAAK,EAAEJ,IAAI,CAACK,WAAW,CAAC,CAAC,GAAG,CAAC;EAC7BC,GAAG,EAAEN,IAAI,CAACO,UAAU,CAAC,CAAC;EACtBC,KAAK,EAAER,IAAI,CAACS,WAAW,CAAC,CAAC;EACzBC,OAAO,EAAEV,IAAI,CAACW,aAAa,CAAC,CAAC;EAC7BC,OAAO,EAAEZ,IAAI,CAACa,aAAa,CAAC,CAAC;EAC7BC,YAAY,EAAEd,IAAI,CAACe,kBAAkB,CAAC;AACxC,CAAC,GACD;EACEb,IAAI,EAAEF,IAAI,CAACgB,WAAW,CAAC,CAAC;EACxBZ,KAAK,EAAEJ,IAAI,CAACiB,QAAQ,CAAC,CAAC,GAAG,CAAC;EAC1BX,GAAG,EAAEN,IAAI,CAACkB,OAAO,CAAC,CAAC;EACnBV,KAAK,EAAER,IAAI,CAACmB,QAAQ,CAAC,CAAC;EACtBT,OAAO,EAAEV,IAAI,CAACoB,UAAU,CAAC,CAAC;EAC1BR,OAAO,EAAEZ,IAAI,CAACqB,UAAU,CAAC,CAAC;EAC1BP,YAAY,EAAEd,IAAI,CAACsB,eAAe,CAAC;AACrC,CAAC;;AAEP;AACA,OAAO,MAAMC,4BAA4B,GACvCC,UAAkB,IACM;EACxB,QAAQA,UAAU;IAChB,KAAK7B,iBAAiB,CAAC8B,IAAI;IAC3B,KAAK9B,iBAAiB,CAAC+B,OAAO;MAC5B,OAAO,WAAW;IACpB,KAAK/B,iBAAiB,CAACgC,gBAAgB;MACrC,OAAO,aAAa;IACtB;MACE,OAAO,SAAS;EACpB;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["IntegratedDevices","isClockSyncEnabled","options","enabled","getClockParts","date","timezone","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","clockSyncCapabilityForDevice","deviceName","BC01","MYSENSE","VEROVAL_ECG","VEROVAL_ACTIVITY"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/clock-sync.ts"],"mappings":";;AAAA;;AAEA,SAASA,iBAAiB,QAAQ,yBAAsB;AAkBxD,OAAO,MAAMC,kBAAkB,GAAIC,OAA0B,IAC3DA,OAAO,EAAEC,OAAO,KAAK,KAAK;AAE5B,OAAO,MAAMC,aAAa,GAAGA,CAC3BC,IAAU,EACVC,QAA2B,GAAG,OAAO,KAErCA,QAAQ,KAAK,KAAK,GACd;EACEC,IAAI,EAAEF,IAAI,CAACG,cAAc,CAAC,CAAC;EAC3BC,KAAK,EAAEJ,IAAI,CAACK,WAAW,CAAC,CAAC,GAAG,CAAC;EAC7BC,GAAG,EAAEN,IAAI,CAACO,UAAU,CAAC,CAAC;EACtBC,KAAK,EAAER,IAAI,CAACS,WAAW,CAAC,CAAC;EACzBC,OAAO,EAAEV,IAAI,CAACW,aAAa,CAAC,CAAC;EAC7BC,OAAO,EAAEZ,IAAI,CAACa,aAAa,CAAC,CAAC;EAC7BC,YAAY,EAAEd,IAAI,CAACe,kBAAkB,CAAC;AACxC,CAAC,GACD;EACEb,IAAI,EAAEF,IAAI,CAACgB,WAAW,CAAC,CAAC;EACxBZ,KAAK,EAAEJ,IAAI,CAACiB,QAAQ,CAAC,CAAC,GAAG,CAAC;EAC1BX,GAAG,EAAEN,IAAI,CAACkB,OAAO,CAAC,CAAC;EACnBV,KAAK,EAAER,IAAI,CAACmB,QAAQ,CAAC,CAAC;EACtBT,OAAO,EAAEV,IAAI,CAACoB,UAAU,CAAC,CAAC;EAC1BR,OAAO,EAAEZ,IAAI,CAACqB,UAAU,CAAC,CAAC;EAC1BP,YAAY,EAAEd,IAAI,CAACsB,eAAe,CAAC;AACrC,CAAC;;AAEP;AACA,OAAO,MAAMC,4BAA4B,GACvCC,UAAkB,IACM;EACxB,QAAQA,UAAU;IAChB,KAAK7B,iBAAiB,CAAC8B,IAAI;IAC3B,KAAK9B,iBAAiB,CAAC+B,OAAO;IAC9B,KAAK/B,iBAAiB,CAACgC,WAAW;MAChC,OAAO,WAAW;IACpB,KAAKhC,iBAAiB,CAACiC,gBAAgB;MACrC,OAAO,aAAa;IACtB;MACE,OAAO,SAAS;EACpB;AACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["IntegratedDevices"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/device-measurement-map.ts"],"mappings":";;AAYA,SAASA,iBAAiB,QAAQ,yBAAsB;;AA4CxD;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["IntegratedDevices"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/device-measurement-map.ts"],"mappings":";;AAYA,SAASA,iBAAiB,QAAQ,yBAAsB;;AAgDxD;AACA;AACA;AACA","ignoreList":[]}
@@ -2,33 +2,25 @@
2
2
 
3
3
  import { EcgDiagnosticFlag } from "@ovok/core";
4
4
  export function convertEcgDiagnosticFlag(diagnosticFlag) {
5
- switch (diagnosticFlag) {
6
- case "00000000":
7
- return EcgDiagnosticFlag.REGULAR;
8
- case "ffffffff":
9
- return EcgDiagnosticFlag.POOR_WAVEFORM;
10
- case "feffffff":
11
- return EcgDiagnosticFlag.LEAD_OFF;
12
- case "01000000":
13
- return EcgDiagnosticFlag.HIGH_HR;
14
- case "02000000":
15
- return EcgDiagnosticFlag.LOW_HR;
16
- case "04000000":
17
- return EcgDiagnosticFlag.RR_IRREGULAR;
18
- case "08000000":
19
- return EcgDiagnosticFlag.PVC;
20
- case "00100000":
21
- return EcgDiagnosticFlag.CARDIAC_ARREST;
22
- case "00200000":
23
- return EcgDiagnosticFlag.ATRIAL_FIBRILLATION;
24
- case "00400000":
25
- return EcgDiagnosticFlag.QRS_WIDE;
26
- case "00800000":
27
- return EcgDiagnosticFlag.QTC_LONG;
28
- case "00010000":
29
- return EcgDiagnosticFlag.QTC_SHORT;
30
- default:
31
- return EcgDiagnosticFlag.REGULAR;
5
+ const normalized = diagnosticFlag.toLowerCase();
6
+ if (normalized === "ffffffff") {
7
+ return EcgDiagnosticFlag.POOR_WAVEFORM;
32
8
  }
9
+ if (normalized === "feffffff") {
10
+ return EcgDiagnosticFlag.LEAD_OFF;
11
+ }
12
+ if (!/^[0-9a-f]{8}$/.test(normalized)) {
13
+ return EcgDiagnosticFlag.ERROR;
14
+ }
15
+ const bytes = normalized.match(/../g) ?? [];
16
+ const bitmask = bytes.reduce((value, byte, index) => value | Number.parseInt(byte, 16) << index * 8, 0);
17
+ if (bitmask === 0) {
18
+ return EcgDiagnosticFlag.REGULAR;
19
+ }
20
+
21
+ // @ovok/core currently stores one diagnostic flag. Preserve the most clinically
22
+ // meaningful finding when firmware sets several bits, with AF taking precedence.
23
+ const priority = [[0x20, EcgDiagnosticFlag.ATRIAL_FIBRILLATION], [0x10, EcgDiagnosticFlag.CARDIAC_ARREST], [0x40, EcgDiagnosticFlag.QRS_WIDE], [0x80, EcgDiagnosticFlag.QTC_LONG], [0x100, EcgDiagnosticFlag.QTC_SHORT], [0x01, EcgDiagnosticFlag.HIGH_HR], [0x02, EcgDiagnosticFlag.LOW_HR], [0x04, EcgDiagnosticFlag.RR_IRREGULAR], [0x08, EcgDiagnosticFlag.PVC]];
24
+ return priority.find(([bit]) => (bitmask & bit) !== 0)?.[1] ?? EcgDiagnosticFlag.ERROR;
33
25
  }
34
26
  //# sourceMappingURL=convert-ecg-diagnostic-flag.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["EcgDiagnosticFlag","convertEcgDiagnosticFlag","diagnosticFlag","REGULAR","POOR_WAVEFORM","LEAD_OFF","HIGH_HR","LOW_HR","RR_IRREGULAR","PVC","CARDIAC_ARREST","ATRIAL_FIBRILLATION","QRS_WIDE","QTC_LONG","QTC_SHORT"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/convert-ecg-diagnostic-flag.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,YAAY;AAE9C,OAAO,SAASC,wBAAwBA,CACtCC,cAAsB,EACH;EACnB,QAAQA,cAAc;IACpB,KAAK,UAAU;MACb,OAAOF,iBAAiB,CAACG,OAAO;IAClC,KAAK,UAAU;MACb,OAAOH,iBAAiB,CAACI,aAAa;IACxC,KAAK,UAAU;MACb,OAAOJ,iBAAiB,CAACK,QAAQ;IACnC,KAAK,UAAU;MACb,OAAOL,iBAAiB,CAACM,OAAO;IAClC,KAAK,UAAU;MACb,OAAON,iBAAiB,CAACO,MAAM;IACjC,KAAK,UAAU;MACb,OAAOP,iBAAiB,CAACQ,YAAY;IACvC,KAAK,UAAU;MACb,OAAOR,iBAAiB,CAACS,GAAG;IAC9B,KAAK,UAAU;MACb,OAAOT,iBAAiB,CAACU,cAAc;IACzC,KAAK,UAAU;MACb,OAAOV,iBAAiB,CAACW,mBAAmB;IAC9C,KAAK,UAAU;MACb,OAAOX,iBAAiB,CAACY,QAAQ;IACnC,KAAK,UAAU;MACb,OAAOZ,iBAAiB,CAACa,QAAQ;IACnC,KAAK,UAAU;MACb,OAAOb,iBAAiB,CAACc,SAAS;IACpC;MACE,OAAOd,iBAAiB,CAACG,OAAO;EACpC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["EcgDiagnosticFlag","convertEcgDiagnosticFlag","diagnosticFlag","normalized","toLowerCase","POOR_WAVEFORM","LEAD_OFF","test","ERROR","bytes","match","bitmask","reduce","value","byte","index","Number","parseInt","REGULAR","priority","ATRIAL_FIBRILLATION","CARDIAC_ARREST","QRS_WIDE","QTC_LONG","QTC_SHORT","HIGH_HR","LOW_HR","RR_IRREGULAR","PVC","find","bit"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/convert-ecg-diagnostic-flag.ts"],"mappings":";;AAAA,SAASA,iBAAiB,QAAQ,YAAY;AAE9C,OAAO,SAASC,wBAAwBA,CACtCC,cAAsB,EACH;EACnB,MAAMC,UAAU,GAAGD,cAAc,CAACE,WAAW,CAAC,CAAC;EAE/C,IAAID,UAAU,KAAK,UAAU,EAAE;IAC7B,OAAOH,iBAAiB,CAACK,aAAa;EACxC;EAEA,IAAIF,UAAU,KAAK,UAAU,EAAE;IAC7B,OAAOH,iBAAiB,CAACM,QAAQ;EACnC;EAEA,IAAI,CAAC,eAAe,CAACC,IAAI,CAACJ,UAAU,CAAC,EAAE;IACrC,OAAOH,iBAAiB,CAACQ,KAAK;EAChC;EAEA,MAAMC,KAAK,GAAGN,UAAU,CAACO,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;EAE3C,MAAMC,OAAO,GAAGF,KAAK,CAACG,MAAM,CAC1B,CAACC,KAAK,EAAEC,IAAI,EAAEC,KAAK,KAAKF,KAAK,GAAIG,MAAM,CAACC,QAAQ,CAACH,IAAI,EAAE,EAAE,CAAC,IAAKC,KAAK,GAAG,CAAG,EAC1E,CACF,CAAC;EAED,IAAIJ,OAAO,KAAK,CAAC,EAAE;IACjB,OAAOX,iBAAiB,CAACkB,OAAO;EAClC;;EAEA;EACA;EACA,MAAMC,QAAgD,GAAG,CACvD,CAAC,IAAI,EAAEnB,iBAAiB,CAACoB,mBAAmB,CAAC,EAC7C,CAAC,IAAI,EAAEpB,iBAAiB,CAACqB,cAAc,CAAC,EACxC,CAAC,IAAI,EAAErB,iBAAiB,CAACsB,QAAQ,CAAC,EAClC,CAAC,IAAI,EAAEtB,iBAAiB,CAACuB,QAAQ,CAAC,EAClC,CAAC,KAAK,EAAEvB,iBAAiB,CAACwB,SAAS,CAAC,EACpC,CAAC,IAAI,EAAExB,iBAAiB,CAACyB,OAAO,CAAC,EACjC,CAAC,IAAI,EAAEzB,iBAAiB,CAAC0B,MAAM,CAAC,EAChC,CAAC,IAAI,EAAE1B,iBAAiB,CAAC2B,YAAY,CAAC,EACtC,CAAC,IAAI,EAAE3B,iBAAiB,CAAC4B,GAAG,CAAC,CAC9B;EAED,OACET,QAAQ,CAACU,IAAI,CAAC,CAAC,CAACC,GAAG,CAAC,KAAK,CAACnB,OAAO,GAAGmB,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IACpD9B,iBAAiB,CAACQ,KAAK;AAE3B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"supported-device-catalog-entries.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-device-catalog-entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAuF3D,eAAO,MAAM,0BAA0B,8PA0GQ,CAAC"}
1
+ {"version":3,"file":"supported-device-catalog-entries.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-device-catalog-entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AA4F3D,eAAO,MAAM,0BAA0B,8PA0GQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"supported-devices.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-devices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAiDhF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,CAAC;AAEF,KAAK,yBAAyB,GAAG,eAAe,GAAG;IAEjD,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF;;;;;;;GAOG;AACH,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qPAuMkC,CAAC;AAsMhD,+FAA+F;AAC/F,QAAA,MAAM,gBAAgB,EAAE,SAAS,yBAAyB,EAQxD,CAAC;AAEH,QAAA,MAAM,iBAAiB,sCAAmB,CAAC;AAK3C,iFAAiF;AACjF,QAAA,MAAM,0BAA0B,EAAE,SAAS,cAAc,EAMxD,CAAC;AAEF,OAAO,EACL,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,EACjB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,eAAe,EAAE,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"supported-devices.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-devices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAiDhF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,CAAC;AAEF,KAAK,yBAAyB,GAAG,eAAe,GAAG;IAEjD,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF;;;;;;;GAOG;AACH,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qPAuMkC,CAAC;AAyMhD,+FAA+F;AAC/F,QAAA,MAAM,gBAAgB,EAAE,SAAS,yBAAyB,EAQxD,CAAC;AAEH,QAAA,MAAM,iBAAiB,sCAAmB,CAAC;AAK3C,iFAAiF;AACjF,QAAA,MAAM,0BAA0B,EAAE,SAAS,cAAc,EAMxD,CAAC;AAEF,OAAO,EACL,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,EACjB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,eAAe,EAAE,yBAAyB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bp2.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.device.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAK9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAKvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUpD,4DAA4D;AAC5D,QAAA,MAAM,4BAA4B,WAAW,CAAC;AAI9C,cAAM,SAAU,SAAQ,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAC5D,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,uBAAuB,CAAqB;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,cAAc,CAGlB;IACJ,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAmB;IACrD,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAS;gBAGzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAMnD,SAAS,CAAC,aAAa,EAAE,MAAM,IAAI,CAKjC;IAEF,SAAS,CAAC,sBAAsB,QAAO,gBAAgB,CA4BrD;IAEF,SAAS,CAAC,WAAW,EAAE,cAAc,CAAwB;IAC7D,SAAS,CAAC,YAAY,EAAE,MAAM,CAAqB;IAEnD,SAAS,CAAC,mBAAmB,CAC3B,aAAa,EAAE,uBAAuB,CACpC,yBAAyB,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CACnD,EACD,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,GAAG,OAAO;IA0BjB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,eAAe;IA2CvB,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,+BAA+B;IAwCvC,OAAO,CAAC,kBAAkB,CAYxB;IAEF,OAAO,CAAC,YAAY,CAeF;IAElB,OAAO,CAAC,iBAAiB,CAkDvB;IAEF,OAAO,CAAC,oBAAoB,CAwB1B;IAEF,OAAO,CAAC,kBAAkB,CAIxB;IAEF,OAAO,CAAC,oBAAoB,CAO1B;IAEF,OAAO,CAAC,qBAAqB;CAoD9B;AAED,OAAO,EAAE,SAAS,EAAE,4BAA4B,EAAE,CAAC"}
1
+ {"version":3,"file":"bp2.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.device.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAK9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAKvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUpD,4DAA4D;AAC5D,QAAA,MAAM,4BAA4B,WAAW,CAAC;AAO9C,cAAM,SAAU,SAAQ,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAC5D,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,uBAAuB,CAAqB;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,cAAc,CAGlB;IACJ,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAmB;IACrD,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAS;gBAGzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAMnD,SAAS,CAAC,aAAa,EAAE,MAAM,IAAI,CAKjC;IAEF,SAAS,CAAC,sBAAsB,QAAO,gBAAgB,CA4BrD;IAEF,SAAS,CAAC,WAAW,EAAE,cAAc,CAAwB;IAC7D,SAAS,CAAC,YAAY,EAAE,MAAM,CAAqB;IAEnD,SAAS,CAAC,mBAAmB,CAC3B,aAAa,EAAE,uBAAuB,CACpC,yBAAyB,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CACnD,EACD,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,GAAG,OAAO;IA0BjB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,eAAe;IA+CvB,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,+BAA+B;IAiDvC,OAAO,CAAC,kBAAkB,CAYxB;IAEF,OAAO,CAAC,YAAY,CAeF;IAElB,OAAO,CAAC,iBAAiB,CAkDvB;IAEF,OAAO,CAAC,oBAAoB,CAwB1B;IAEF,OAAO,CAAC,kBAAkB,CAIxB;IAEF,OAAO,CAAC,oBAAoB,CAO1B;IAEF,OAAO,CAAC,qBAAqB;CAoD9B;AAED,OAAO,EAAE,SAAS,EAAE,4BAA4B,EAAE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { Measurement, MeasurementTypeKey } from "@ovok/core";
2
2
  import { Device } from "react-native-ble-plx";
3
+ import { CommandTimeoutResult } from "../../types/command-sequencer";
3
4
  import { DependentResultHandlerParams } from "../../types/dependent-result-handler-params";
4
5
  import { DeviceCommand } from "../../types/device-command";
5
6
  import { DeviceStatus } from "../../types/device-status";
@@ -21,6 +22,9 @@ interface DataProcessorCallbacks<T extends Measurement> {
21
22
  nextCommand?: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
22
23
  /** Sends what `nextCommand` decided. */
23
24
  sendCommands?: (commands: readonly DeviceCommand[]) => void;
25
+ commandTimeoutMs?: () => number | undefined;
26
+ onCommandTimeout?: () => CommandTimeoutResult;
27
+ commandProgress?: (frame: readonly string[]) => "ignored" | "partial" | "complete";
24
28
  onError?: (error: Error) => void;
25
29
  handleDependentResult?: (data: DependentResultHandlerParams<T>) => DependentResultHandlerParams<T>;
26
30
  }
@@ -42,12 +46,15 @@ export declare class BTDataProcessor<T extends Measurement> {
42
46
  private readonly frameParser;
43
47
  private readonly measurementState;
44
48
  private stuckDataTimeout;
49
+ private commandTimeout;
45
50
  constructor(device: Device, mainServices: IMedicalDevice["mainService"], stuckDataTimeoutDuration: number, callbacks: DataProcessorCallbacks<T>, frameReader?: FrameReader | undefined);
46
51
  private currentUuid;
47
52
  destroy: () => void;
48
53
  processData: (uuid: string, hexValue: string[]) => void;
49
54
  /** Starts the connection watchdog once a device has received its first command. */
50
55
  armStuckTimeout: () => void;
56
+ /** Starts a protocol-specific response watchdog for the initial command. */
57
+ armCommandTimeout: () => void;
51
58
  /**
52
59
  * Drains every complete frame the buffer holds.
53
60
  *
@@ -80,6 +87,7 @@ export declare class BTDataProcessor<T extends Measurement> {
80
87
  * measurement that happens to read the same is still reported.
81
88
  */
82
89
  private startStuckTimeout;
90
+ private startCommandTimeout;
83
91
  }
84
92
  export {};
85
93
  //# sourceMappingURL=bt-data-processor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAKjF,UAAU,sBAAsB,CAAC,CAAC,SAAS,WAAW;IACpD,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1D,eAAe,CAAC,EAAE,CAChB,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,CACT,UAAU,EAAE,uBAAuB,CAAC,WAAW,CAAC,EAChD,eAAe,EAAE,MAAM,EAAE,KACtB,OAAO,GAAG,IAAI,CAAC;IAEpB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,SAAS,aAAa,EAAE,GAAG,SAAS,CAAC;IAEjF,wCAAwC;IACxC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,KAAK,IAAI,CAAC;IAE5D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,qBAAqB,CAAC,EAAE,CACtB,IAAI,EAAE,4BAA4B,CAAC,CAAC,CAAC,KAClC,4BAA4B,CAAC,CAAC,CAAC,CAAC;CACtC;AAED,qBAAa,eAAe,CAAC,CAAC,SAAS,WAAW;IAe9C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,wBAAwB;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAlB/B;;;;;;;;OAQG;IACH,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAC9D,OAAO,CAAC,gBAAgB,CAA4C;gBAEjD,MAAM,EAAE,MAAM,EAC/B,YAAY,EAAE,cAAc,CAAC,aAAa,CAAC,EAC1B,wBAAwB,EAAE,MAAM,EAChC,SAAS,EAAE,sBAAsB,CAAC,CAAC,CAAC,EACpC,WAAW,CAAC,EAAE,WAAW,YAAA;IAU5C,OAAO,CAAC,WAAW,CAAc;IAE1B,OAAO,aAMZ;IAEK,WAAW,GAAI,MAAM,MAAM,EAAE,UAAU,MAAM,EAAE,UAgBpD;IAEF,mFAAmF;IAC5E,eAAe,aAEpB;IAEF;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB,CA0B1B;IAEF;;OAEG;IACH,OAAO,CAAC,eAAe,CAQrB;IAEF;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW,CAMjB;IAEF,OAAO,CAAC,WAAW,CAuBjB;IAEF,OAAO,CAAC,kBAAkB,CAQxB;IAEF;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB,CAevB;CACH"}
1
+ {"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAMxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAUjF,8BAAsB,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAC/E,YAAW,gBAAgB;aA+FT,MAAM,EAAE,MAAM;IA7FzB,EAAE,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAEP;IACd,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAU;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAC9D,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,wBAAwB,CAAiC;IACjE,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,kBAAkB,CAAK;IACxB,UAAU,EAAE,UAAU,CAAC;IAE9B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAChC,IAAI,EAAE,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC/D,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAElE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAE/D;;;;;;;;;OASG;IACH,SAAS,CAAC,sBAAsB,CAAC,EAAE,MAAM,gBAAgB,CAAC;IAE1D;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IAEpC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEhC,8EAA8E;IAC9E,SAAS,CAAC,kBAAkB,UAAS;IAErC;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrE,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CACpC,aAAa,EAAE,uBAAuB,CAAC,WAAW,CAAC,EACnD,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,GAAG,OAAO;IAEV,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IACrD,qBAAqB,CAAC,EAAE,CAC7B,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IACH,QAAQ,CAAC,EAAE,CAChB,IAAI,EAAE,uBAAuB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC1D,IAAI,CAAC;IACH,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;gBAE/C,MAAM,EAAE,MAAM,EAE9B,EACE,UAAU,EACV,OAAO,EAAE,eAAe,EACxB,qBAAqB,EAAE,6BAA6B,EACpD,QAAQ,EAAE,gBAAgB,EAC1B,iBAAiB,EAAE,yBAAyB,EAC5C,oBAAoB,EAAE,4BAA4B,EAClD,uBAAuB,EACvB,YAAY,GACb,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAwKnB,OAAO,aAWZ;IAEF,uEAAuE;IAChE,UAAU,sBAYf;IAEF,OAAO,CAAC,eAAe,CAoGrB;IAEK,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAchC;CACH"}
1
+ {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,18 @@
9
9
  *
10
10
  * It is that function's vocabulary, not a catalogue of everything the vendor sells: a few
11
11
  * products - the ER3 and the M12 among them - are identified elsewhere in that app and never
12
- * reach this list. `lepuNameMatch` accepts a name that is absent, and derives no exclusions
13
- * for it, which is correct exactly when no name here extends it.
12
+ * reach this list. The first-word names below are compared against the complete first token of
13
+ * the advertisement, not as an open-ended prefix: `O2` must not claim `O2Ring`, and `BabyO2`
14
+ * must not claim `BabyO2N`.
14
15
  *
15
16
  * They are held here as a flat vocabulary rather than an ordered cascade, because
16
17
  * `lepuNameMatch` derives the exclusions from the list itself. Adding a name automatically
17
18
  * narrows every name it extends, which an ordered list would leave to whoever inserted it.
18
19
  */
19
- export declare const LEPU_DEVICE_NAMES: readonly string[];
20
+ declare const LEPU_DEVICE_NAMES: readonly string[];
21
+ /** Names the vendor matches by the complete first word of the advertisement. */
22
+ declare const LEPU_FIRST_WORD_DEVICE_NAMES: readonly string[];
23
+ /** Fetal-doppler and massager names from the vendor vocabulary, kept out of the SDK catalog. */
24
+ declare const LEPU_CATALOG_EXCLUDED_DEVICE_NAMES: readonly string[];
25
+ export { LEPU_CATALOG_EXCLUDED_DEVICE_NAMES, LEPU_DEVICE_NAMES, LEPU_FIRST_WORD_DEVICE_NAMES, };
20
26
  //# sourceMappingURL=lepu.device-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lepu.device-names.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.device-names.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAsM9C,CAAC"}
1
+ {"version":3,"file":"lepu.device-names.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.device-names.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,iBAAiB,EAAE,SAAS,MAAM,EA0OvC,CAAC;AAEF,gFAAgF;AAChF,QAAA,MAAM,4BAA4B,EAAE,SAAS,MAAM,EAqClD,CAAC;AAEF,gGAAgG;AAChG,QAAA,MAAM,kCAAkC,EAAE,SAAS,MAAM,EAGxD,CAAC;AAEF,OAAO,EACL,kCAAkC,EAClC,iBAAiB,EACjB,4BAA4B,GAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lepu.name-match.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.name-match.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,aAAY,SAAS,MAAM,EAAsB,KAChD,MASF,CAAC"}
1
+ {"version":3,"file":"lepu.name-match.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.name-match.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,aAAY,SAAS,MAAM,EAAsB,KAChD,MAaF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { CustomCaseSpec } from "../../../types/custom-case-spec";
2
- import { CustomDeviceDefinition } from "../../../types/custom-device-definition";
2
+ import { CustomDeviceDefinition, CustomReadingDecorator } from "../../../types/custom-device-definition";
3
3
  /**
4
4
  * The characteristics each group of products exposes, read from the vendor's own managers.
5
5
  *
@@ -43,6 +43,8 @@ declare const lepuTransports: {
43
43
  };
44
44
  type LepuTransportName = keyof typeof lepuTransports;
45
45
  interface LepuDeviceParams {
46
+ /** Adds protocol metadata or rejects a decoded reading before it is emitted. */
47
+ decorateReading?: CustomReadingDecorator;
46
48
  /** Reported back as deviceData.name, and must not collide with a built-in device. */
47
49
  id?: string;
48
50
  /** The name the hardware advertises. */
@@ -1 +1 @@
1
- {"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAyEjF;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc;;;;;;;IAQlB,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;CA4B9B,CAAC;AAEnD,KAAK,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAErD,UAAU,gBAAgB;IAExB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,IAAI,GAAG,eAAe,CAAC;IAElC,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,CAAC,EAAE,KAAK,CAAC;IAErB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,QAAA,MAAM,UAAU,GAAI,QAAQ,gBAAgB,KAAG,sBA8C9C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AAyEjD;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc;;;;;;;IAQlB,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;CA4B9B,CAAC;AAEnD,KAAK,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAErD,UAAU,gBAAgB;IAExB,gFAAgF;IAChF,eAAe,CAAC,EAAE,sBAAsB,CAAC;IAEzC,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,IAAI,GAAG,eAAe,CAAC;IAElC,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,CAAC,EAAE,KAAK,CAAC;IAErB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,QAAA,MAAM,UAAU,GAAI,QAAQ,gBAAgB,KAAG,sBAgD9C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const bloodPressureStatusFromFrame: (frame: readonly string[], recordOffset?: number) => number | undefined;
2
+ export { bloodPressureStatusFromFrame };
3
+ //# sourceMappingURL=standard-gatt.blood-pressure-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard-gatt.blood-pressure-status.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,4BAA4B,GAChC,OAAO,SAAS,MAAM,EAAE,EACxB,qBAAgB,KACf,MAAM,GAAG,SA2BX,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"standard-gatt.devices.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAIL,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AA2CjC,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBA2CA,CAAC;AAEJ,yEAAyE;AACzE,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBA4CC,CAAC;AAKL;;;;GAIG;AACH,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBAkCC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBAWC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,uBAAuB,GAC3B,QAAQ,oBAAoB,KAC3B,sBAsCC,CAAC;AAEL,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,GAC1B,CAAC"}
1
+ {"version":3,"file":"standard-gatt.devices.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAIL,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AA2CjC,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBAsDA,CAAC;AAEJ,yEAAyE;AACzE,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBA4CC,CAAC;AAKL;;;;GAIG;AACH,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBAkCC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBAWC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,uBAAuB,GAC3B,QAAQ,oBAAoB,KAC3B,sBAsCC,CAAC;AAEL,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,GAC1B,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { MeasurementTypeKey } from "@ovok/core";
2
2
  import { CustomDeviceDefinition, CustomReadingDecorator } from "../../../types/custom-device-definition";
3
3
  import { CustomFieldSpec } from "../../../types/custom-field-spec";
4
+ import { bloodPressureStatusFromFrame } from "./standard-gatt.blood-pressure-status";
4
5
  interface StandardDeviceParams {
5
6
  /** Reported back as deviceData.name, and must not collide with a built-in device. */
6
7
  id?: string;
@@ -49,6 +50,6 @@ declare const littleEndian: (name: string, byteIndexes: number[], unit: string,
49
50
  /** Reads the SIG blood-pressure timestamp as a phone-local date. */
50
51
  declare const recordedAtFromBloodPressureFrame: (frame: readonly string[], offset?: number) => Date | undefined;
51
52
  declare const decorateBloodPressureReading: CustomReadingDecorator;
52
- export { decorateBloodPressureReading, declareProfile, littleEndian, recordedAtFromBloodPressureFrame, sigUuid, };
53
+ export { bloodPressureStatusFromFrame, decorateBloodPressureReading, declareProfile, littleEndian, recordedAtFromBloodPressureFrame, sigUuid, };
53
54
  export type { ProfileSpec, StandardDeviceParams };
54
55
  //# sourceMappingURL=standard-gatt.profile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"standard-gatt.profile.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAMnE,UAAU,oBAAoB;IAE5B,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,oEAAoE;IACpE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,iFAAiF;IACjF,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IAEvB,uFAAuF;IACvF,cAAc,EAAE,MAAM,CAAC;IAEvB,kBAAkB,EAAE,kBAAkB,CAAC;IAEvC,2EAA2E;IAC3E,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAE7B,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC,CAAC,CAAC;IAExE,6FAA6F;IAC7F,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAEnC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,QAAQ,CACvB,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CACtE,CAAC;CACH;AAED,QAAA,MAAM,OAAO,GAAI,UAAU,MAAM,KAAG,MACW,CAAC;AAEhD;;;;;GAKG;AACH,QAAA,MAAM,cAAc,GAClB,QAAQ,oBAAoB,EAC5B,SAAS,WAAW,KACnB,sBAsCA,CAAC;AAEJ,QAAA,MAAM,YAAY,GAChB,MAAM,MAAM,EACZ,aAAa,MAAM,EAAE,EACrB,MAAM,MAAM,EACZ,UAAU,eAAe,CAAC,UAAU,CAAC,KACpC,eAMD,CAAC;AAcH,oEAAoE;AACpE,QAAA,MAAM,gCAAgC,GACpC,OAAO,SAAS,MAAM,EAAE,EACxB,eAAU,KACT,IAAI,GAAG,SAmCT,CAAC;AAEF,QAAA,MAAM,4BAA4B,EAAE,sBA4DnC,CAAC;AAEF,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,YAAY,EACZ,gCAAgC,EAChC,OAAO,GACR,CAAC;AACF,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"standard-gatt.profile.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAKrF,UAAU,oBAAoB;IAE5B,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,oEAAoE;IACpE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,iFAAiF;IACjF,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IAEvB,uFAAuF;IACvF,cAAc,EAAE,MAAM,CAAC;IAEvB,kBAAkB,EAAE,kBAAkB,CAAC;IAEvC,2EAA2E;IAC3E,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAE7B,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC,CAAC,CAAC;IAExE,6FAA6F;IAC7F,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAEnC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,QAAQ,CACvB,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CACtE,CAAC;CACH;AAED,QAAA,MAAM,OAAO,GAAI,UAAU,MAAM,KAAG,MACW,CAAC;AAEhD;;;;;GAKG;AACH,QAAA,MAAM,cAAc,GAClB,QAAQ,oBAAoB,EAC5B,SAAS,WAAW,KACnB,sBAsCA,CAAC;AAEJ,QAAA,MAAM,YAAY,GAChB,MAAM,MAAM,EACZ,aAAa,MAAM,EAAE,EACrB,MAAM,MAAM,EACZ,UAAU,eAAe,CAAC,UAAU,CAAC,KACpC,eAMD,CAAC;AAcH,oEAAoE;AACpE,QAAA,MAAM,gCAAgC,GACpC,OAAO,SAAS,MAAM,EAAE,EACxB,eAAU,KACT,IAAI,GAAG,SAmCT,CAAC;AAEF,QAAA,MAAM,4BAA4B,EAAE,sBAyDnC,CAAC;AAEF,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,cAAc,EACd,YAAY,EACZ,gCAAgC,EAChC,OAAO,GACR,CAAC;AACF,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC"}
@@ -1,4 +1,14 @@
1
+ import { Measurement } from "@ovok/core";
1
2
  import { CustomDeviceDefinition } from "../../../types/custom-device-definition";
3
+ import { MeasurementWithCaseType } from "../../../types/measurement-with-case-type";
4
+ type VerovalBloodPressureReading = MeasurementWithCaseType<Measurement> & {
5
+ /** The device flagged the reading as part of a triple measurement. */
6
+ tripleMeasurement?: boolean;
7
+ /** The device flagged atrial fibrillation during the reading. */
8
+ atrialFibrillation?: boolean;
9
+ /** The device flagged the reading as taken in its resting mode. */
10
+ restingMeasurement?: boolean;
11
+ };
2
12
  interface VerovalBpParams {
3
13
  /** Reported back as deviceData.name, and must not collide with a built-in device. */
4
14
  id?: string;
@@ -15,4 +25,5 @@ declare const bpw26Monitor: (params: VerovalBpParams) => CustomDeviceDefinition;
15
25
  /** The names these monitors advertise. */
16
26
  declare const VEROVAL_BP_MODEL_NAMES: readonly string[];
17
27
  export { bpu26Monitor, bpw26Monitor, VEROVAL_BP_MODEL_NAMES, verovalCompactMonitor, };
28
+ export type { VerovalBloodPressureReading };
18
29
  //# sourceMappingURL=veroval.bp-monitors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"veroval.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAoBjF,UAAU,eAAe;IAEvB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,qBAAqB,GACzB,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBAOC,CAAC;AAEL,sDAAsD;AACtD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,0CAA0C;AAC1C,QAAA,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAqB,CAAC;AAEnE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,GACtB,CAAC"}
1
+ {"version":3,"file":"veroval.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,sBAAsB,EAEvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAyBpF,KAAK,2BAA2B,GAAG,uBAAuB,CAAC,WAAW,CAAC,GAAG;IAExE,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAqCF,UAAU,eAAe;IAEvB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,qBAAqB,GACzB,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBAeC,CAAC;AAEL,sDAAsD;AACtD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,0CAA0C;AAC1C,QAAA,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAqB,CAAC;AAEnE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,GACtB,CAAC;AACF,YAAY,EAAE,2BAA2B,EAAE,CAAC"}
@@ -22,9 +22,10 @@ export declare class VerovalEcgDevice extends BTManagedDevice<IntegratedDevices.
22
22
  protected mainServices: IService[];
23
23
  protected validatePackage: () => boolean;
24
24
  protected createCommandSequencer: () => VerovalEcgTransfer;
25
+ private readonly clockSync;
25
26
  constructor(device: Device, params: CreateDeviceParams<IntegratedDevices.VEROVAL_ECG>);
26
27
  /** Nothing is reported per packet; the transfer reports the recording when it is whole. */
27
28
  protected handleSuccessResult(): void;
28
- private reportRecording;
29
+ private reportRecord;
29
30
  }
30
31
  //# sourceMappingURL=veroval.ecg-device.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"veroval.ecg-device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAgC5D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAClF,SAAS,CAAC,gBAAgB,SAAoB;IAC9C,UAAmB,YAAY,SAAiB;IAChD,SAAS,CAAC,aAAa,YAAa;IAEpC,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAKhC;IAEF,UAAmB,eAAe,QAAO,OAAO,CAAS;IAEzD,UAAmB,sBAAsB,2BAIpC;gBAGH,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAK3D,2FAA2F;IAC3F,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC,OAAO,CAAC,eAAe,CAerB;CACH"}
1
+ {"version":3,"file":"veroval.ecg-device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAUvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAgC5D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAClF,SAAS,CAAC,gBAAgB,SAAoB;IAC9C,UAAmB,YAAY,SAAiB;IAChD,SAAS,CAAC,aAAa,YAAa;IAEpC,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAKhC;IAEF,UAAmB,eAAe,QAAO,OAAO,CAAS;IAEzD,UAAmB,sBAAsB,2BAKpC;IAEL,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiE;gBAGzF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAM3D,2FAA2F;IAC3F,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC,OAAO,CAAC,YAAY,CA2ClB;CACH"}
@@ -0,0 +1,41 @@
1
+ import { BloodPressureMeasurement, EcgDiagnosticFlag, EcgMeasurement } from "@ovok/core";
2
+ declare const HEADER_BYTES = 80;
3
+ declare const ECG_RECORD_TYPE = 38;
4
+ declare const RECORD_TYPE_OFFSET = 71;
5
+ declare const RAW_SIZE_OFFSET = 40;
6
+ declare const USER_OFFSET = 44;
7
+ declare const BP_ERROR_OFFSET = 62;
8
+ declare const BP_PULSE_OFFSET = 63;
9
+ declare const BP_SYSTOLIC_OFFSET = 64;
10
+ declare const BP_DIASTOLIC_OFFSET = 66;
11
+ interface VerovalEcgHeader {
12
+ bytes: readonly string[];
13
+ sequence: number;
14
+ recordedAt?: Date;
15
+ memorySlot: 1 | 2;
16
+ rawSize: number;
17
+ heartRate: number;
18
+ diagnosticResult?: EcgDiagnosticFlag;
19
+ calibration?: {
20
+ physicalMinimumMicrovolts: number;
21
+ physicalMaximumMicrovolts: number;
22
+ digitalMinimum: number;
23
+ digitalMaximum: number;
24
+ };
25
+ isEcg: boolean;
26
+ hasError: boolean;
27
+ }
28
+ interface VerovalEcgRecord extends EcgMeasurement {
29
+ id: string;
30
+ memorySlot: 1 | 2;
31
+ }
32
+ interface VerovalBloodPressureRecord extends BloodPressureMeasurement {
33
+ id: string;
34
+ memorySlot: 1 | 2;
35
+ }
36
+ declare const parseVerovalEcgHeader: (bytes: readonly string[]) => VerovalEcgHeader | undefined;
37
+ declare const verovalRecordId: (header: VerovalEcgHeader) => string;
38
+ declare const parseVerovalBloodPressureRecord: (header: VerovalEcgHeader) => VerovalBloodPressureRecord | undefined;
39
+ export { BP_DIASTOLIC_OFFSET, BP_ERROR_OFFSET, BP_PULSE_OFFSET, BP_SYSTOLIC_OFFSET, ECG_RECORD_TYPE, HEADER_BYTES, parseVerovalBloodPressureRecord, parseVerovalEcgHeader, RECORD_TYPE_OFFSET, RAW_SIZE_OFFSET, USER_OFFSET, verovalRecordId, };
40
+ export type { VerovalBloodPressureRecord, VerovalEcgHeader, VerovalEcgRecord, };
41
+ //# sourceMappingURL=veroval.ecg-record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"veroval.ecg-record.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-record.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EAEf,MAAM,YAAY,CAAC;AAIpB,QAAA,MAAM,YAAY,KAAK,CAAC;AACxB,QAAA,MAAM,eAAe,KAAK,CAAC;AAE3B,QAAA,MAAM,kBAAkB,KAAK,CAAC;AAC9B,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,WAAW,KAAK,CAAC;AAEvB,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,kBAAkB,KAAK,CAAC;AAC9B,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAuF/B,UAAU,gBAAgB;IACxB,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,WAAW,CAAC,EAAE;QACZ,yBAAyB,EAAE,MAAM,CAAC;QAClC,yBAAyB,EAAE,MAAM,CAAC;QAClC,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,gBAAiB,SAAQ,cAAc;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;CACnB;AAED,UAAU,0BAA2B,SAAQ,wBAAwB;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;CACnB;AAED,QAAA,MAAM,qBAAqB,GACzB,OAAO,SAAS,MAAM,EAAE,KACvB,gBAAgB,GAAG,SAqBrB,CAAC;AAEF,QAAA,MAAM,eAAe,GAAI,QAAQ,gBAAgB,KAAG,MAC4C,CAAC;AAEjG,QAAA,MAAM,+BAA+B,GACnC,QAAQ,gBAAgB,KACvB,0BAA0B,GAAG,SAc/B,CAAC;AAEF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,eAAe,GAChB,CAAC;AACF,YAAY,EACV,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,GACjB,CAAC"}