incyclist-devices 3.0.0 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (736) hide show
  1. package/lib/cjs/antv2/base/adapter.js +459 -0
  2. package/lib/cjs/antv2/base/binding.js +27 -0
  3. package/lib/cjs/antv2/base/interface.js +399 -0
  4. package/lib/cjs/antv2/cad/adapter.js +25 -0
  5. package/lib/cjs/antv2/cad/index.js +7 -0
  6. package/lib/cjs/antv2/consts.js +5 -0
  7. package/lib/cjs/antv2/factories/adapter-factory.js +75 -0
  8. package/lib/cjs/antv2/factories/index.js +17 -0
  9. package/lib/cjs/antv2/factories/sensor-factory.js +23 -0
  10. package/lib/cjs/antv2/fe/adapter.js +273 -0
  11. package/lib/cjs/antv2/fe/index.js +7 -0
  12. package/lib/cjs/antv2/hr/adapter.js +30 -0
  13. package/lib/cjs/antv2/hr/index.js +7 -0
  14. package/lib/cjs/antv2/index.js +33 -0
  15. package/lib/cjs/antv2/pwr/adapter.js +67 -0
  16. package/lib/cjs/antv2/pwr/index.js +7 -0
  17. package/lib/cjs/antv2/sc/adapter.js +30 -0
  18. package/lib/cjs/antv2/sc/index.js +7 -0
  19. package/lib/cjs/antv2/spd/adapter.js +25 -0
  20. package/lib/cjs/antv2/spd/index.js +7 -0
  21. package/lib/cjs/antv2/types.js +5 -0
  22. package/lib/cjs/antv2/utils.js +192 -0
  23. package/lib/cjs/base/adpater.js +316 -0
  24. package/lib/cjs/base/consts.js +9 -0
  25. package/lib/cjs/ble/base/adapter.js +404 -0
  26. package/lib/cjs/ble/base/interface.js +682 -0
  27. package/lib/cjs/ble/base/peripheral.js +412 -0
  28. package/lib/cjs/ble/base/sensor.js +147 -0
  29. package/lib/cjs/ble/base/types.js +9 -0
  30. package/lib/cjs/ble/bindings/index.js +8 -0
  31. package/lib/cjs/ble/bindings/linux.js +48 -0
  32. package/lib/cjs/ble/bindings/mock.js +113 -0
  33. package/lib/cjs/ble/bindings/types.js +105 -0
  34. package/lib/cjs/ble/characteristics/csc/features.js +19 -0
  35. package/lib/cjs/ble/characteristics/csc/measurement.js +112 -0
  36. package/lib/cjs/ble/characteristics/types.js +2 -0
  37. package/lib/cjs/ble/consts.js +18 -0
  38. package/lib/cjs/ble/cp/adapter.js +91 -0
  39. package/lib/cjs/ble/cp/index.js +10 -0
  40. package/lib/cjs/ble/cp/sensor.js +105 -0
  41. package/lib/cjs/ble/cp/types.js +2 -0
  42. package/lib/cjs/ble/csc/adapter.js +55 -0
  43. package/lib/cjs/ble/csc/index.js +19 -0
  44. package/lib/cjs/ble/csc/sensor.js +58 -0
  45. package/lib/cjs/ble/csc/types.js +2 -0
  46. package/lib/cjs/ble/factories/adapter-factory.js +140 -0
  47. package/lib/cjs/ble/factories/index.js +18 -0
  48. package/lib/cjs/ble/factories/interface-factory.js +17 -0
  49. package/lib/cjs/ble/factories/types.js +2 -0
  50. package/lib/cjs/ble/fm/adapter.js +355 -0
  51. package/lib/cjs/ble/fm/consts.js +64 -0
  52. package/lib/cjs/ble/fm/index.js +13 -0
  53. package/lib/cjs/ble/fm/sensor.js +494 -0
  54. package/lib/cjs/ble/fm/types.js +2 -0
  55. package/lib/cjs/ble/hr/adapter.js +40 -0
  56. package/lib/cjs/ble/hr/index.js +10 -0
  57. package/lib/cjs/ble/hr/mock.js +48 -0
  58. package/lib/cjs/ble/hr/sensor.js +55 -0
  59. package/lib/cjs/ble/hr/types.js +2 -0
  60. package/lib/cjs/ble/index.js +46 -0
  61. package/lib/cjs/ble/tacx/adapter.js +54 -0
  62. package/lib/cjs/ble/tacx/consts.js +27 -0
  63. package/lib/cjs/ble/tacx/index.js +10 -0
  64. package/lib/cjs/ble/tacx/sensor.js +582 -0
  65. package/lib/cjs/ble/tacx/types.js +2 -0
  66. package/lib/cjs/ble/types.js +2 -0
  67. package/lib/cjs/ble/utils.js +144 -0
  68. package/lib/cjs/ble/wahoo/adapter.js +36 -0
  69. package/lib/cjs/ble/wahoo/consts.js +7 -0
  70. package/lib/cjs/ble/wahoo/index.js +10 -0
  71. package/lib/cjs/ble/wahoo/sensor.js +345 -0
  72. package/lib/cjs/ble/wahoo/types.js +2 -0
  73. package/lib/cjs/ble/zwift/play/adapter.js +57 -0
  74. package/lib/cjs/ble/zwift/play/index.js +18 -0
  75. package/lib/cjs/ble/zwift/play/sensor.js +512 -0
  76. package/lib/cjs/ble/zwift/play/types.js +2 -0
  77. package/lib/cjs/direct-connect/base/interface.js +362 -0
  78. package/lib/cjs/direct-connect/base/peripheral.js +498 -0
  79. package/lib/cjs/direct-connect/bindings/index.js +17 -0
  80. package/lib/cjs/direct-connect/bindings/types.js +2 -0
  81. package/lib/cjs/direct-connect/consts.js +20 -0
  82. package/lib/cjs/direct-connect/index.js +22 -0
  83. package/lib/cjs/direct-connect/messages/CharacteristicNotification.js +23 -0
  84. package/lib/cjs/direct-connect/messages/DiscoverCharacteristics.js +44 -0
  85. package/lib/cjs/direct-connect/messages/DiscoverServices.js +35 -0
  86. package/lib/cjs/direct-connect/messages/EnableCharacteristicNotifications.js +35 -0
  87. package/lib/cjs/direct-connect/messages/ReadCharacteristic.js +34 -0
  88. package/lib/cjs/direct-connect/messages/WriteCharacteristic.js +36 -0
  89. package/lib/cjs/direct-connect/messages/error.js +19 -0
  90. package/lib/cjs/direct-connect/messages/factory.js +44 -0
  91. package/lib/cjs/direct-connect/messages/index.js +25 -0
  92. package/lib/cjs/direct-connect/messages/message.js +109 -0
  93. package/lib/cjs/direct-connect/types.js +13 -0
  94. package/lib/cjs/factories/adapters.js +56 -0
  95. package/lib/cjs/factories/interfaces.js +31 -0
  96. package/lib/cjs/features/features.js +31 -0
  97. package/lib/cjs/features/index.js +17 -0
  98. package/lib/cjs/index.js +51 -0
  99. package/lib/cjs/modes/ant-fe-adv-st-mode.js +83 -0
  100. package/lib/cjs/modes/antble-erg.js +28 -0
  101. package/lib/cjs/modes/antble-smarttrainer.js +479 -0
  102. package/lib/cjs/modes/base.js +104 -0
  103. package/lib/cjs/modes/daum-classic-standard.js +61 -0
  104. package/lib/cjs/modes/daum-erg.js +202 -0
  105. package/lib/cjs/modes/daum-power.js +12 -0
  106. package/lib/cjs/modes/daum-premium-standard.js +76 -0
  107. package/lib/cjs/modes/daum-smarttrainer.js +351 -0
  108. package/lib/cjs/modes/fm-resistance.js +140 -0
  109. package/lib/cjs/modes/kettler-erg.js +135 -0
  110. package/lib/cjs/modes/power-base.js +271 -0
  111. package/lib/cjs/modes/power-meter.js +39 -0
  112. package/lib/cjs/modes/simulator.js +113 -0
  113. package/lib/cjs/modes/types.js +74 -0
  114. package/lib/cjs/proto/zwift_hub.js +1234 -0
  115. package/lib/cjs/serial/base/adapter.js +57 -0
  116. package/lib/cjs/serial/base/comms.js +279 -0
  117. package/lib/cjs/serial/base/serial-interface.js +285 -0
  118. package/lib/cjs/serial/base/serial-scanner.js +89 -0
  119. package/lib/cjs/serial/base/serialport.js +79 -0
  120. package/lib/cjs/serial/bindings/tcp.js +298 -0
  121. package/lib/cjs/serial/daum/DaumAdapter.js +503 -0
  122. package/lib/cjs/serial/daum/classic/adapter.js +183 -0
  123. package/lib/cjs/serial/daum/classic/comms.js +216 -0
  124. package/lib/cjs/serial/daum/classic/consts.js +5 -0
  125. package/lib/cjs/serial/daum/classic/mock.js +398 -0
  126. package/lib/cjs/serial/daum/classic/types.js +2 -0
  127. package/lib/cjs/serial/daum/classic/utils.js +108 -0
  128. package/lib/cjs/serial/daum/premium/adapter.js +216 -0
  129. package/lib/cjs/serial/daum/premium/comms.js +542 -0
  130. package/lib/cjs/serial/daum/premium/consts.js +9 -0
  131. package/lib/cjs/serial/daum/premium/mock.js +405 -0
  132. package/lib/cjs/serial/daum/premium/types.js +31 -0
  133. package/lib/cjs/serial/daum/premium/utils.js +350 -0
  134. package/lib/cjs/serial/daum/types.js +14 -0
  135. package/lib/cjs/serial/factories/adapter-factory.js +32 -0
  136. package/lib/cjs/serial/index.js +59 -0
  137. package/lib/cjs/serial/kettler/comms.js +283 -0
  138. package/lib/cjs/serial/kettler/ergo-racer/adapter.js +529 -0
  139. package/lib/cjs/serial/kettler/ergo-racer/mock.js +201 -0
  140. package/lib/cjs/serial/kettler/types.js +2 -0
  141. package/lib/cjs/serial/types.js +9 -0
  142. package/lib/cjs/simulator/Simulator.js +193 -0
  143. package/lib/cjs/types/adapter.js +2 -0
  144. package/lib/cjs/types/capabilities.js +12 -0
  145. package/lib/cjs/types/data.js +2 -0
  146. package/lib/cjs/types/device.js +13 -0
  147. package/lib/cjs/types/index.js +22 -0
  148. package/lib/cjs/types/interface.js +2 -0
  149. package/lib/cjs/types/user.js +9 -0
  150. package/lib/cjs/utils/calculations.js +158 -0
  151. package/lib/cjs/utils/task.js +128 -0
  152. package/lib/cjs/utils/utils.js +180 -0
  153. package/lib/esm/antv2/base/adapter.js +453 -0
  154. package/lib/esm/antv2/base/binding.js +24 -0
  155. package/lib/esm/antv2/base/interface.js +393 -0
  156. package/lib/esm/antv2/cad/adapter.js +19 -0
  157. package/lib/esm/antv2/cad/index.js +2 -0
  158. package/{src/antv2/consts.ts → lib/esm/antv2/consts.js} +0 -3
  159. package/lib/esm/antv2/factories/adapter-factory.js +72 -0
  160. package/lib/esm/antv2/factories/index.js +1 -0
  161. package/lib/esm/antv2/factories/sensor-factory.js +20 -0
  162. package/lib/esm/antv2/fe/adapter.js +267 -0
  163. package/lib/esm/antv2/fe/index.js +2 -0
  164. package/lib/esm/antv2/hr/adapter.js +24 -0
  165. package/lib/esm/antv2/hr/index.js +2 -0
  166. package/lib/esm/antv2/index.js +19 -0
  167. package/lib/esm/antv2/pwr/adapter.js +61 -0
  168. package/lib/esm/antv2/pwr/index.js +2 -0
  169. package/lib/esm/antv2/sc/adapter.js +24 -0
  170. package/lib/esm/antv2/sc/index.js +2 -0
  171. package/lib/esm/antv2/spd/adapter.js +19 -0
  172. package/lib/esm/antv2/spd/index.js +2 -0
  173. package/lib/esm/antv2/types.js +1 -0
  174. package/{src/antv2/utils.ts → lib/esm/antv2/utils.js} +18 -26
  175. package/lib/esm/base/adpater.js +310 -0
  176. package/{src/base/consts.ts → lib/esm/base/consts.js} +1 -5
  177. package/lib/esm/ble/base/adapter.js +398 -0
  178. package/lib/esm/ble/base/interface.js +674 -0
  179. package/lib/esm/ble/base/peripheral.js +408 -0
  180. package/lib/esm/ble/base/sensor.js +143 -0
  181. package/lib/esm/ble/base/types.js +5 -0
  182. package/lib/esm/ble/bindings/index.js +2 -0
  183. package/lib/esm/ble/bindings/linux.js +41 -0
  184. package/lib/esm/ble/bindings/mock.js +108 -0
  185. package/lib/esm/ble/bindings/types.js +95 -0
  186. package/lib/esm/ble/characteristics/csc/features.js +15 -0
  187. package/lib/esm/ble/characteristics/csc/measurement.js +108 -0
  188. package/lib/esm/ble/characteristics/types.js +1 -0
  189. package/lib/esm/ble/consts.js +15 -0
  190. package/lib/esm/ble/cp/adapter.js +85 -0
  191. package/lib/esm/ble/cp/index.js +3 -0
  192. package/lib/esm/ble/cp/sensor.js +102 -0
  193. package/lib/esm/ble/cp/types.js +1 -0
  194. package/lib/esm/ble/csc/adapter.js +48 -0
  195. package/lib/esm/ble/csc/index.js +3 -0
  196. package/lib/esm/ble/csc/sensor.js +54 -0
  197. package/lib/esm/ble/csc/types.js +1 -0
  198. package/lib/esm/ble/factories/adapter-factory.js +136 -0
  199. package/lib/esm/ble/factories/index.js +2 -0
  200. package/lib/esm/ble/factories/interface-factory.js +13 -0
  201. package/lib/esm/ble/factories/types.js +1 -0
  202. package/lib/esm/ble/fm/adapter.js +349 -0
  203. package/lib/esm/ble/fm/consts.js +61 -0
  204. package/lib/esm/ble/fm/index.js +4 -0
  205. package/lib/esm/ble/fm/sensor.js +491 -0
  206. package/lib/esm/ble/fm/types.js +1 -0
  207. package/lib/esm/ble/hr/adapter.js +34 -0
  208. package/lib/esm/ble/hr/index.js +3 -0
  209. package/lib/esm/ble/hr/mock.js +45 -0
  210. package/lib/esm/ble/hr/sensor.js +52 -0
  211. package/lib/esm/ble/hr/types.js +1 -0
  212. package/lib/esm/ble/index.js +22 -0
  213. package/lib/esm/ble/tacx/adapter.js +48 -0
  214. package/lib/esm/ble/tacx/consts.js +24 -0
  215. package/lib/esm/ble/tacx/index.js +3 -0
  216. package/lib/esm/ble/tacx/sensor.js +576 -0
  217. package/lib/esm/ble/tacx/types.js +1 -0
  218. package/lib/esm/ble/types.js +1 -0
  219. package/lib/esm/ble/utils.js +130 -0
  220. package/lib/esm/ble/wahoo/adapter.js +30 -0
  221. package/lib/esm/ble/wahoo/consts.js +4 -0
  222. package/lib/esm/ble/wahoo/index.js +3 -0
  223. package/lib/esm/ble/wahoo/sensor.js +339 -0
  224. package/lib/esm/ble/wahoo/types.js +1 -0
  225. package/lib/esm/ble/zwift/play/adapter.js +50 -0
  226. package/lib/esm/ble/zwift/play/index.js +2 -0
  227. package/lib/esm/ble/zwift/play/sensor.js +508 -0
  228. package/lib/esm/ble/zwift/play/types.js +1 -0
  229. package/lib/esm/direct-connect/base/interface.js +354 -0
  230. package/lib/esm/direct-connect/base/peripheral.js +491 -0
  231. package/lib/esm/direct-connect/bindings/index.js +1 -0
  232. package/lib/esm/direct-connect/bindings/types.js +1 -0
  233. package/lib/esm/direct-connect/consts.js +17 -0
  234. package/lib/esm/direct-connect/index.js +6 -0
  235. package/lib/esm/direct-connect/messages/CharacteristicNotification.js +19 -0
  236. package/lib/esm/direct-connect/messages/DiscoverCharacteristics.js +40 -0
  237. package/lib/esm/direct-connect/messages/DiscoverServices.js +31 -0
  238. package/lib/esm/direct-connect/messages/EnableCharacteristicNotifications.js +31 -0
  239. package/lib/esm/direct-connect/messages/ReadCharacteristic.js +30 -0
  240. package/lib/esm/direct-connect/messages/WriteCharacteristic.js +32 -0
  241. package/{src/direct-connect/messages/error.ts → lib/esm/direct-connect/messages/error.js} +8 -12
  242. package/{src/direct-connect/messages/factory.ts → lib/esm/direct-connect/messages/factory.js} +10 -16
  243. package/lib/esm/direct-connect/messages/index.js +9 -0
  244. package/lib/esm/direct-connect/messages/message.js +103 -0
  245. package/lib/esm/direct-connect/types.js +8 -0
  246. package/lib/esm/factories/adapters.js +50 -0
  247. package/lib/esm/factories/interfaces.js +25 -0
  248. package/lib/esm/features/features.js +26 -0
  249. package/lib/esm/features/index.js +1 -0
  250. package/lib/esm/index.js +18 -0
  251. package/lib/esm/modes/ant-fe-adv-st-mode.js +77 -0
  252. package/lib/esm/modes/antble-erg.js +22 -0
  253. package/lib/esm/modes/antble-smarttrainer.js +440 -0
  254. package/lib/esm/modes/base.js +100 -0
  255. package/lib/esm/modes/daum-classic-standard.js +55 -0
  256. package/lib/esm/modes/daum-erg.js +196 -0
  257. package/lib/esm/modes/daum-power.js +6 -0
  258. package/lib/esm/modes/daum-premium-standard.js +70 -0
  259. package/lib/esm/modes/daum-smarttrainer.js +344 -0
  260. package/lib/esm/modes/fm-resistance.js +134 -0
  261. package/lib/esm/modes/kettler-erg.js +129 -0
  262. package/lib/esm/modes/power-base.js +265 -0
  263. package/lib/esm/modes/power-meter.js +33 -0
  264. package/lib/esm/modes/simulator.js +107 -0
  265. package/lib/esm/modes/types.js +70 -0
  266. package/{src/proto/zwift_hub.ts → lib/esm/proto/zwift_hub.js} +283 -929
  267. package/lib/esm/serial/base/adapter.js +50 -0
  268. package/lib/esm/serial/base/comms.js +276 -0
  269. package/lib/esm/serial/base/serial-interface.js +279 -0
  270. package/{src/serial/base/serial-scanner.ts → lib/esm/serial/base/serial-scanner.js} +18 -49
  271. package/lib/esm/serial/base/serialport.js +74 -0
  272. package/lib/esm/serial/bindings/tcp.js +287 -0
  273. package/lib/esm/serial/daum/DaumAdapter.js +497 -0
  274. package/lib/esm/serial/daum/classic/adapter.js +177 -0
  275. package/lib/esm/serial/daum/classic/comms.js +210 -0
  276. package/lib/esm/serial/daum/classic/mock.js +389 -0
  277. package/lib/esm/serial/daum/classic/types.js +1 -0
  278. package/lib/esm/serial/daum/classic/utils.js +96 -0
  279. package/lib/esm/serial/daum/premium/adapter.js +210 -0
  280. package/lib/esm/serial/daum/premium/comms.js +536 -0
  281. package/{src/serial/daum/premium/consts.ts → lib/esm/serial/daum/premium/consts.js} +0 -2
  282. package/lib/esm/serial/daum/premium/mock.js +398 -0
  283. package/lib/esm/serial/daum/premium/types.js +25 -0
  284. package/lib/esm/serial/daum/premium/utils.js +328 -0
  285. package/lib/esm/serial/daum/types.js +9 -0
  286. package/lib/esm/serial/factories/adapter-factory.js +29 -0
  287. package/lib/esm/serial/index.js +12 -0
  288. package/lib/esm/serial/kettler/comms.js +276 -0
  289. package/lib/esm/serial/kettler/ergo-racer/adapter.js +523 -0
  290. package/lib/esm/serial/kettler/ergo-racer/mock.js +195 -0
  291. package/lib/esm/serial/kettler/types.js +1 -0
  292. package/lib/esm/serial/types.js +6 -0
  293. package/lib/esm/simulator/Simulator.js +186 -0
  294. package/lib/esm/types/adapter.js +1 -0
  295. package/lib/esm/types/capabilities.js +9 -0
  296. package/lib/esm/types/data.js +1 -0
  297. package/lib/esm/types/device.js +10 -0
  298. package/lib/esm/types/index.js +6 -0
  299. package/lib/esm/types/interface.js +1 -0
  300. package/lib/esm/types/user.js +6 -0
  301. package/lib/esm/utils/calculations.js +151 -0
  302. package/lib/esm/utils/task.js +121 -0
  303. package/lib/esm/utils/utils.js +167 -0
  304. package/lib/types/antv2/base/adapter.d.ts +71 -0
  305. package/lib/types/antv2/base/binding.d.ts +12 -0
  306. package/lib/types/antv2/base/interface.d.ts +57 -0
  307. package/lib/types/antv2/cad/adapter.d.ts +10 -0
  308. package/lib/types/antv2/cad/index.d.ts +2 -0
  309. package/lib/types/antv2/consts.d.ts +2 -0
  310. package/lib/types/antv2/factories/adapter-factory.d.ts +14 -0
  311. package/lib/types/antv2/factories/index.d.ts +1 -0
  312. package/lib/types/antv2/factories/sensor-factory.d.ts +5 -0
  313. package/lib/types/antv2/fe/adapter.d.ts +40 -0
  314. package/lib/types/antv2/fe/index.d.ts +2 -0
  315. package/lib/types/antv2/hr/adapter.d.ts +11 -0
  316. package/lib/types/antv2/hr/index.d.ts +2 -0
  317. package/lib/types/antv2/index.d.ts +12 -0
  318. package/lib/types/antv2/pwr/adapter.d.ts +15 -0
  319. package/lib/types/antv2/pwr/index.d.ts +2 -0
  320. package/lib/types/antv2/sc/adapter.d.ts +11 -0
  321. package/lib/types/antv2/sc/index.d.ts +2 -0
  322. package/lib/types/antv2/spd/adapter.d.ts +11 -0
  323. package/lib/types/antv2/spd/index.d.ts +2 -0
  324. package/{src/antv2/types.ts → lib/types/antv2/types.d.ts} +19 -30
  325. package/lib/types/antv2/utils.d.ts +4 -0
  326. package/lib/types/base/adpater.d.ts +79 -0
  327. package/lib/types/base/consts.d.ts +4 -0
  328. package/lib/types/ble/base/adapter.d.ts +62 -0
  329. package/lib/types/ble/base/interface.d.ts +116 -0
  330. package/lib/types/ble/base/peripheral.d.ts +46 -0
  331. package/lib/types/ble/base/sensor.d.ts +36 -0
  332. package/{src/ble/base/types.ts → lib/types/ble/base/types.d.ts} +6 -11
  333. package/lib/types/ble/bindings/index.d.ts +2 -0
  334. package/lib/types/ble/bindings/linux.d.ts +17 -0
  335. package/lib/types/ble/bindings/mock.d.ts +9 -0
  336. package/lib/types/ble/bindings/types.d.ts +53 -0
  337. package/lib/types/ble/characteristics/csc/features.d.ts +10 -0
  338. package/lib/types/ble/characteristics/csc/measurement.d.ts +33 -0
  339. package/{src/ble/characteristics/types.ts → lib/types/ble/characteristics/types.d.ts} +3 -5
  340. package/lib/types/ble/consts.d.ts +15 -0
  341. package/lib/types/ble/cp/adapter.d.ts +21 -0
  342. package/lib/types/ble/cp/index.d.ts +4 -0
  343. package/lib/types/ble/cp/sensor.d.ts +27 -0
  344. package/{src/ble/cp/types.ts → lib/types/ble/cp/types.d.ts} +5 -8
  345. package/lib/types/ble/csc/adapter.d.ts +17 -0
  346. package/lib/types/ble/csc/index.d.ts +3 -0
  347. package/lib/types/ble/csc/sensor.d.ts +21 -0
  348. package/lib/types/ble/csc/types.d.ts +6 -0
  349. package/lib/types/ble/factories/adapter-factory.d.ts +34 -0
  350. package/lib/types/ble/factories/index.d.ts +2 -0
  351. package/lib/types/ble/factories/interface-factory.d.ts +7 -0
  352. package/{src/ble/factories/types.ts → lib/types/ble/factories/types.d.ts} +6 -4
  353. package/lib/types/ble/fm/adapter.d.ts +38 -0
  354. package/lib/types/ble/fm/consts.d.ts +100 -0
  355. package/{src/ble/fm/index.ts → lib/types/ble/fm/index.d.ts} +1 -3
  356. package/lib/types/ble/fm/sensor.d.ts +49 -0
  357. package/{src/ble/fm/types.ts → lib/types/ble/fm/types.d.ts} +4 -10
  358. package/lib/types/ble/hr/adapter.d.ts +15 -0
  359. package/lib/types/ble/hr/index.d.ts +4 -0
  360. package/lib/types/ble/hr/mock.d.ts +7 -0
  361. package/lib/types/ble/hr/sensor.d.ts +17 -0
  362. package/lib/types/ble/hr/types.d.ts +5 -0
  363. package/lib/types/ble/index.d.ts +10 -0
  364. package/lib/types/ble/tacx/adapter.d.ts +13 -0
  365. package/lib/types/ble/tacx/consts.d.ts +23 -0
  366. package/{src/ble/tacx/index.ts → lib/types/ble/tacx/index.d.ts} +1 -4
  367. package/lib/types/ble/tacx/sensor.d.ts +64 -0
  368. package/lib/types/ble/tacx/types.d.ts +26 -0
  369. package/{src/ble/types.ts → lib/types/ble/types.d.ts} +87 -155
  370. package/lib/types/ble/utils.d.ts +23 -0
  371. package/lib/types/ble/wahoo/adapter.d.ts +12 -0
  372. package/lib/types/ble/wahoo/consts.d.ts +16 -0
  373. package/{src/ble/wahoo/index.ts → lib/types/ble/wahoo/index.d.ts} +1 -3
  374. package/lib/types/ble/wahoo/sensor.d.ts +49 -0
  375. package/{src/ble/wahoo/types.ts → lib/types/ble/wahoo/types.d.ts} +1 -2
  376. package/lib/types/ble/zwift/play/adapter.d.ts +18 -0
  377. package/lib/types/ble/zwift/play/index.d.ts +2 -0
  378. package/lib/types/ble/zwift/play/sensor.d.ts +70 -0
  379. package/lib/types/ble/zwift/play/types.d.ts +6 -0
  380. package/lib/types/direct-connect/base/interface.d.ts +80 -0
  381. package/lib/types/direct-connect/base/peripheral.d.ts +54 -0
  382. package/lib/types/direct-connect/bindings/index.d.ts +1 -0
  383. package/lib/types/direct-connect/bindings/types.d.ts +37 -0
  384. package/lib/types/direct-connect/consts.d.ts +17 -0
  385. package/lib/types/direct-connect/index.d.ts +3 -0
  386. package/lib/types/direct-connect/messages/CharacteristicNotification.d.ts +12 -0
  387. package/lib/types/direct-connect/messages/DiscoverCharacteristics.d.ts +22 -0
  388. package/lib/types/direct-connect/messages/DiscoverServices.d.ts +15 -0
  389. package/lib/types/direct-connect/messages/EnableCharacteristicNotifications.d.ts +18 -0
  390. package/lib/types/direct-connect/messages/ReadCharacteristic.d.ts +18 -0
  391. package/lib/types/direct-connect/messages/WriteCharacteristic.d.ts +18 -0
  392. package/lib/types/direct-connect/messages/error.d.ts +5 -0
  393. package/lib/types/direct-connect/messages/factory.d.ts +6 -0
  394. package/lib/types/direct-connect/messages/index.d.ts +9 -0
  395. package/lib/types/direct-connect/messages/message.d.ts +21 -0
  396. package/lib/types/direct-connect/types.d.ts +24 -0
  397. package/lib/types/factories/adapters.d.ts +7 -0
  398. package/lib/types/factories/interfaces.d.ts +8 -0
  399. package/lib/types/features/features.d.ts +11 -0
  400. package/lib/types/features/index.d.ts +1 -0
  401. package/lib/types/index.d.ts +22 -0
  402. package/lib/types/modes/ant-fe-adv-st-mode.d.ts +19 -0
  403. package/lib/types/modes/antble-erg.d.ts +31 -0
  404. package/lib/types/modes/antble-smarttrainer.d.ts +63 -0
  405. package/lib/types/modes/base.d.ts +34 -0
  406. package/lib/types/modes/daum-classic-standard.d.ts +18 -0
  407. package/lib/types/modes/daum-erg.d.ts +50 -0
  408. package/{src/modes/daum-power.ts → lib/types/modes/daum-power.d.ts} +3 -11
  409. package/lib/types/modes/daum-premium-standard.d.ts +24 -0
  410. package/lib/types/modes/daum-smarttrainer.d.ts +83 -0
  411. package/lib/types/modes/fm-resistance.d.ts +39 -0
  412. package/lib/types/modes/kettler-erg.d.ts +43 -0
  413. package/lib/types/modes/power-base.d.ts +46 -0
  414. package/lib/types/modes/power-meter.d.ts +15 -0
  415. package/lib/types/modes/simulator.d.ts +54 -0
  416. package/lib/types/modes/types.d.ts +91 -0
  417. package/lib/types/proto/zwift_hub.d.ts +303 -0
  418. package/lib/types/serial/base/adapter.d.ts +17 -0
  419. package/lib/types/serial/base/comms.d.ts +65 -0
  420. package/lib/types/serial/base/serial-interface.d.ts +35 -0
  421. package/lib/types/serial/base/serial-scanner.d.ts +16 -0
  422. package/lib/types/serial/base/serialport.d.ts +16 -0
  423. package/lib/types/serial/bindings/tcp.d.ts +50 -0
  424. package/lib/types/serial/daum/DaumAdapter.d.ts +66 -0
  425. package/lib/types/serial/daum/classic/adapter.d.ts +20 -0
  426. package/lib/types/serial/daum/classic/comms.d.ts +43 -0
  427. package/lib/types/serial/daum/classic/consts.d.ts +2 -0
  428. package/lib/types/serial/daum/classic/mock.d.ts +102 -0
  429. package/{src/serial/daum/classic/types.ts → lib/types/serial/daum/classic/types.d.ts} +26 -46
  430. package/lib/types/serial/daum/classic/utils.d.ts +13 -0
  431. package/lib/types/serial/daum/premium/adapter.d.ts +28 -0
  432. package/lib/types/serial/daum/premium/comms.d.ts +49 -0
  433. package/lib/types/serial/daum/premium/consts.d.ts +6 -0
  434. package/lib/types/serial/daum/premium/mock.d.ts +108 -0
  435. package/{src/serial/daum/premium/types.ts → lib/types/serial/daum/premium/types.d.ts} +21 -46
  436. package/lib/types/serial/daum/premium/utils.d.ts +51 -0
  437. package/lib/types/serial/daum/types.d.ts +15 -0
  438. package/lib/types/serial/factories/adapter-factory.d.ts +14 -0
  439. package/lib/types/serial/index.d.ts +12 -0
  440. package/lib/types/serial/kettler/comms.d.ts +60 -0
  441. package/lib/types/serial/kettler/ergo-racer/adapter.d.ts +84 -0
  442. package/lib/types/serial/kettler/ergo-racer/mock.d.ts +65 -0
  443. package/{src/serial/types.ts → lib/types/serial/types.d.ts} +13 -25
  444. package/lib/types/simulator/Simulator.d.ts +52 -0
  445. package/lib/types/types/adapter.d.ts +55 -0
  446. package/lib/types/types/capabilities.d.ts +8 -0
  447. package/lib/types/types/data.d.ts +26 -0
  448. package/lib/types/types/device.d.ts +31 -0
  449. package/lib/types/types/index.d.ts +6 -0
  450. package/{src/types/interface.ts → lib/types/types/interface.d.ts} +8 -13
  451. package/lib/types/types/user.d.ts +11 -0
  452. package/lib/types/utils/calculations.d.ts +14 -0
  453. package/lib/types/utils/task.d.ts +47 -0
  454. package/lib/types/utils/utils.d.ts +18 -0
  455. package/package.json +4 -1
  456. package/.eslintrc.json +0 -23
  457. package/.github/workflows/PR.yml +0 -48
  458. package/.github/workflows/tag.yml +0 -23
  459. package/protos/zwift_hub.proto +0 -194
  460. package/samples/DaumClassic/index.js +0 -118
  461. package/samples/DaumClassic/package-lock.json +0 -960
  462. package/samples/DaumClassic/package.json +0 -26
  463. package/samples/DaumPremium/index.js +0 -117
  464. package/samples/DaumPremium/package-lock.json +0 -839
  465. package/samples/DaumPremium/package.json +0 -26
  466. package/samples/ant/index.js +0 -104
  467. package/samples/ant/package-lock.json +0 -131
  468. package/samples/ant/package.json +0 -22
  469. package/samples/ble/bindings.js +0 -376
  470. package/samples/ble/index.js +0 -239
  471. package/samples/ble/package-lock.json +0 -1852
  472. package/samples/ble/package.json +0 -24
  473. package/samples/ble/prebuilt/BLEServer.exe +0 -0
  474. package/samples/ble/prebuilt/README.txt +0 -4
  475. package/samples/direct-connect/index.js +0 -172
  476. package/samples/direct-connect/package-lock.json +0 -105
  477. package/samples/direct-connect/package.json +0 -22
  478. package/src/antv2/__snapshots__/utils.unit.test.ts.snap +0 -364
  479. package/src/antv2/base/adapter.ts +0 -635
  480. package/src/antv2/base/adapter.unit.test.ts +0 -424
  481. package/src/antv2/base/binding.ts +0 -34
  482. package/src/antv2/base/interface.ts +0 -532
  483. package/src/antv2/base/interface.unit.test.ts +0 -613
  484. package/src/antv2/cad/adapter.ts +0 -26
  485. package/src/antv2/cad/adpater.unit.test.ts +0 -191
  486. package/src/antv2/cad/index.ts +0 -4
  487. package/src/antv2/factories/adapter-factory.integration.test.ts +0 -193
  488. package/src/antv2/factories/adapter-factory.ts +0 -98
  489. package/src/antv2/factories/index.ts +0 -1
  490. package/src/antv2/factories/sensor-factory.ts +0 -28
  491. package/src/antv2/fe/adapter.ts +0 -371
  492. package/src/antv2/fe/adapter.unit.test.ts +0 -953
  493. package/src/antv2/fe/index.ts +0 -5
  494. package/src/antv2/hr/adapter.ts +0 -34
  495. package/src/antv2/hr/adpater.unit.test.ts +0 -443
  496. package/src/antv2/hr/index.ts +0 -4
  497. package/src/antv2/index.ts +0 -31
  498. package/src/antv2/pwr/adapter.ts +0 -87
  499. package/src/antv2/pwr/adapter.unit.test.ts +0 -321
  500. package/src/antv2/pwr/index.ts +0 -4
  501. package/src/antv2/sc/adapter.ts +0 -33
  502. package/src/antv2/sc/adpater.unit.test.ts +0 -230
  503. package/src/antv2/sc/index.ts +0 -4
  504. package/src/antv2/scan.e2e.test.ts +0 -80
  505. package/src/antv2/spd/adapter.ts +0 -26
  506. package/src/antv2/spd/adpater.unit.test.ts +0 -200
  507. package/src/antv2/spd/index.ts +0 -4
  508. package/src/antv2/utils.unit.test.ts +0 -42
  509. package/src/base/adpater.ts +0 -445
  510. package/src/ble/base/adapter.ts +0 -567
  511. package/src/ble/base/interface.ts +0 -1016
  512. package/src/ble/base/interface.unit.test.ts +0 -504
  513. package/src/ble/base/peripheral.ts +0 -520
  514. package/src/ble/base/sensor.ts +0 -195
  515. package/src/ble/bindings/index.ts +0 -3
  516. package/src/ble/bindings/linux.ts +0 -59
  517. package/src/ble/bindings/mock.ts +0 -153
  518. package/src/ble/bindings/types.ts +0 -145
  519. package/src/ble/characteristics/csc/features.ts +0 -29
  520. package/src/ble/characteristics/csc/measurement.ts +0 -143
  521. package/src/ble/characteristics/csc/measurement.unit.test.ts +0 -35
  522. package/src/ble/consts.ts +0 -20
  523. package/src/ble/cp/adapter.ts +0 -118
  524. package/src/ble/cp/adapter.unit.test.ts +0 -165
  525. package/src/ble/cp/index.ts +0 -6
  526. package/src/ble/cp/sensor.ts +0 -130
  527. package/src/ble/csc/adapter.ts +0 -73
  528. package/src/ble/csc/index.ts +0 -3
  529. package/src/ble/csc/sensor.ts +0 -74
  530. package/src/ble/csc/types.ts +0 -7
  531. package/src/ble/factories/adapter-factory.test.ts +0 -63
  532. package/src/ble/factories/adapter-factory.ts +0 -189
  533. package/src/ble/factories/index.ts +0 -2
  534. package/src/ble/factories/interface-factory.ts +0 -22
  535. package/src/ble/fm/adapter.e2e.test.ts +0 -131
  536. package/src/ble/fm/adapter.ts +0 -473
  537. package/src/ble/fm/adapter.unit.test.ts +0 -139
  538. package/src/ble/fm/consts.ts +0 -105
  539. package/src/ble/fm/sensor.ts +0 -614
  540. package/src/ble/fm/sensor.unit.test.ts +0 -225
  541. package/src/ble/hr/adapter.ts +0 -51
  542. package/src/ble/hr/adapter.unit.test.ts +0 -17
  543. package/src/ble/hr/index.ts +0 -6
  544. package/src/ble/hr/mock.ts +0 -63
  545. package/src/ble/hr/sensor.ts +0 -71
  546. package/src/ble/hr/types.ts +0 -5
  547. package/src/ble/index.ts +0 -41
  548. package/src/ble/tacx/adapter.ts +0 -76
  549. package/src/ble/tacx/consts.ts +0 -25
  550. package/src/ble/tacx/sensor.ts +0 -689
  551. package/src/ble/tacx/sensor.unit.test.ts +0 -122
  552. package/src/ble/tacx/types.ts +0 -35
  553. package/src/ble/utils.ts +0 -168
  554. package/src/ble/wahoo/adapter.ts +0 -48
  555. package/src/ble/wahoo/consts.ts +0 -18
  556. package/src/ble/wahoo/sensor.ts +0 -447
  557. package/src/ble/wahoo/sensor.unit.test.ts +0 -88
  558. package/src/ble/zwift/play/adapter.ts +0 -75
  559. package/src/ble/zwift/play/index.ts +0 -3
  560. package/src/ble/zwift/play/sensor.ts +0 -692
  561. package/src/ble/zwift/play/types.ts +0 -8
  562. package/src/direct-connect/base/interface.ts +0 -575
  563. package/src/direct-connect/base/interface.unit.test.ts +0 -155
  564. package/src/direct-connect/base/peripheral.ts +0 -641
  565. package/src/direct-connect/base/peripheral.unit.test.ts +0 -41
  566. package/src/direct-connect/bindings/index.ts +0 -2
  567. package/src/direct-connect/bindings/types.ts +0 -51
  568. package/src/direct-connect/consts.ts +0 -27
  569. package/src/direct-connect/index.ts +0 -8
  570. package/src/direct-connect/messages/CharacteristicNotification.ts +0 -38
  571. package/src/direct-connect/messages/DiscoverCharacteristics.ts +0 -75
  572. package/src/direct-connect/messages/DiscoverServices.ts +0 -54
  573. package/src/direct-connect/messages/EnableCharacteristicNotifications.ts +0 -55
  574. package/src/direct-connect/messages/EnableCharacteristicNotifications.unit.test.ts +0 -17
  575. package/src/direct-connect/messages/ReadCharacteristic.ts +0 -58
  576. package/src/direct-connect/messages/WriteCharacteristic.ts +0 -58
  577. package/src/direct-connect/messages/index.ts +0 -9
  578. package/src/direct-connect/messages/message.ts +0 -145
  579. package/src/direct-connect/types.ts +0 -33
  580. package/src/direct-connect/utils.unit.test.ts +0 -60
  581. package/src/factories/adapters.ts +0 -72
  582. package/src/factories/interfaces.ts +0 -37
  583. package/src/features/features.ts +0 -38
  584. package/src/features/index.ts +0 -1
  585. package/src/index.ts +0 -47
  586. package/src/modes/__snapshots__/ant-fe-adv-st-mode.test.ts.snap +0 -123
  587. package/src/modes/__snapshots__/antble-erg.test.ts.snap +0 -57
  588. package/src/modes/__snapshots__/antble-smarttrainer.test.ts.snap +0 -123
  589. package/src/modes/__snapshots__/daum-classic-standard.test.ts.snap +0 -43
  590. package/src/modes/__snapshots__/daum-power.test.ts.snap +0 -11
  591. package/src/modes/__snapshots__/daum-premium-standard.test.ts.snap +0 -43
  592. package/src/modes/__snapshots__/fm-resistance.unit.test.ts.snap +0 -5
  593. package/src/modes/__snapshots__/power-base.unit.test.ts.snap +0 -621
  594. package/src/modes/__snapshots__/power-meter.unit.test.ts.snap +0 -11
  595. package/src/modes/ant-fe-adv-st-mode.test.ts +0 -280
  596. package/src/modes/ant-fe-adv-st-mode.ts +0 -110
  597. package/src/modes/antble-erg.test.ts +0 -256
  598. package/src/modes/antble-erg.ts +0 -31
  599. package/src/modes/antble-smarttrainer.test.ts +0 -425
  600. package/src/modes/antble-smarttrainer.ts +0 -584
  601. package/src/modes/base.ts +0 -142
  602. package/src/modes/daum-classic-standard.test.ts +0 -205
  603. package/src/modes/daum-classic-standard.ts +0 -82
  604. package/src/modes/daum-erg.test.ts +0 -534
  605. package/src/modes/daum-erg.ts +0 -261
  606. package/src/modes/daum-erg.unit.test.ts +0 -30
  607. package/src/modes/daum-power.test.ts +0 -21
  608. package/src/modes/daum-premium-standard.test.ts +0 -205
  609. package/src/modes/daum-premium-standard.ts +0 -101
  610. package/src/modes/daum-smarttrainer.test.ts +0 -431
  611. package/src/modes/daum-smarttrainer.ts +0 -479
  612. package/src/modes/fm-resistance.ts +0 -181
  613. package/src/modes/fm-resistance.unit.test.ts +0 -117
  614. package/src/modes/kettler-erg.test.ts +0 -341
  615. package/src/modes/kettler-erg.ts +0 -180
  616. package/src/modes/power-base.ts +0 -368
  617. package/src/modes/power-base.unit.test.ts +0 -204
  618. package/src/modes/power-meter.ts +0 -52
  619. package/src/modes/power-meter.unit.test.ts +0 -125
  620. package/src/modes/simulator.ts +0 -157
  621. package/src/modes/types.ts +0 -156
  622. package/src/serial/base/adapter.ts +0 -70
  623. package/src/serial/base/comms.ts +0 -411
  624. package/src/serial/base/serial-interface.test.ts +0 -170
  625. package/src/serial/base/serial-interface.ts +0 -384
  626. package/src/serial/base/serialport.test.ts +0 -65
  627. package/src/serial/base/serialport.ts +0 -103
  628. package/src/serial/bindings/tcp.test.ts +0 -186
  629. package/src/serial/bindings/tcp.ts +0 -421
  630. package/src/serial/daum/DaumAdapter.test.ts +0 -1236
  631. package/src/serial/daum/DaumAdapter.ts +0 -667
  632. package/src/serial/daum/classic/__snapshots__/utils.unit.test.ts.snap +0 -559
  633. package/src/serial/daum/classic/adapter.integration.test.ts +0 -94
  634. package/src/serial/daum/classic/adapter.test.ts +0 -171
  635. package/src/serial/daum/classic/adapter.ts +0 -243
  636. package/src/serial/daum/classic/comms.test.ts +0 -913
  637. package/src/serial/daum/classic/comms.ts +0 -284
  638. package/src/serial/daum/classic/mock.ts +0 -542
  639. package/src/serial/daum/classic/utils.ts +0 -132
  640. package/src/serial/daum/classic/utils.unit.test.ts +0 -129
  641. package/src/serial/daum/premium/__snapshots__/utils.unit.test.ts.snap +0 -25
  642. package/src/serial/daum/premium/adapter.integration.test.ts +0 -90
  643. package/src/serial/daum/premium/adapter.ts +0 -297
  644. package/src/serial/daum/premium/adapter.unit.test.ts +0 -916
  645. package/src/serial/daum/premium/comms.test.ts +0 -1431
  646. package/src/serial/daum/premium/comms.ts +0 -699
  647. package/src/serial/daum/premium/mock.ts +0 -568
  648. package/src/serial/daum/premium/utils.ts +0 -389
  649. package/src/serial/daum/premium/utils.unit.test.ts +0 -397
  650. package/src/serial/daum/types.ts +0 -27
  651. package/src/serial/factories/adapter-factory.test.ts +0 -175
  652. package/src/serial/factories/adapter-factory.ts +0 -40
  653. package/src/serial/index.ts +0 -28
  654. package/src/serial/kettler/comms.test.ts +0 -140
  655. package/src/serial/kettler/comms.ts +0 -373
  656. package/src/serial/kettler/ergo-racer/adapter.test.ts +0 -101
  657. package/src/serial/kettler/ergo-racer/adapter.ts +0 -763
  658. package/src/serial/kettler/ergo-racer/mock.ts +0 -290
  659. package/src/simulator/Simulator.ts +0 -259
  660. package/src/simulator/Simulator.unit.test.ts +0 -238
  661. package/src/types/adapter.ts +0 -74
  662. package/src/types/capabilities.ts +0 -9
  663. package/src/types/data.ts +0 -27
  664. package/src/types/device.ts +0 -39
  665. package/src/types/index.ts +0 -6
  666. package/src/types/user.ts +0 -14
  667. package/src/utils/__snapshots__/calculation.test.ts.snap +0 -13851
  668. package/src/utils/calculation.test.ts +0 -298
  669. package/src/utils/calculations.ts +0 -243
  670. package/src/utils/task.ts +0 -204
  671. package/src/utils/utils.ts +0 -211
  672. package/src/utils/utils.unit.test.ts +0 -270
  673. package/test/logger.ts +0 -19
  674. package/test/mock-adapter.ts +0 -27
  675. package/tools/ble-forwarder/eslint.config.mjs +0 -12
  676. package/tools/ble-forwarder/package-lock.json +0 -7183
  677. package/tools/ble-forwarder/package.json +0 -44
  678. package/tools/ble-forwarder/src/index.ts +0 -193
  679. package/tools/ble-forwarder/src/parseArgs.ts +0 -50
  680. package/tools/ble-forwarder/tsconfig.json +0 -21
  681. package/tools/ble-simulator/eslint.config.mjs +0 -12
  682. package/tools/ble-simulator/package-lock.json +0 -6716
  683. package/tools/ble-simulator/package.json +0 -43
  684. package/tools/ble-simulator/src/emulator/characteristics/characteristic.ts +0 -111
  685. package/tools/ble-simulator/src/emulator/characteristics/cycling-power-measurement-characteristic.ts +0 -94
  686. package/tools/ble-simulator/src/emulator/characteristics/cycling-power-wahoo-extension-characteristic.ts +0 -57
  687. package/tools/ble-simulator/src/emulator/characteristics/read-characteristic.ts +0 -19
  688. package/tools/ble-simulator/src/emulator/services/csp.ts +0 -32
  689. package/tools/ble-simulator/src/emulator/services/service.ts +0 -41
  690. package/tools/ble-simulator/src/emulator/services/wahoo.ts +0 -23
  691. package/tools/ble-simulator/src/emulator/types.ts +0 -38
  692. package/tools/ble-simulator/src/index.ts +0 -21
  693. package/tools/ble-simulator/src/wahoo.ts +0 -131
  694. package/tools/ble-simulator/tsconfig.json +0 -21
  695. package/tools/dc-simulator/config/powermeter.json +0 -27
  696. package/tools/dc-simulator/config/smarttrainer-0W.json +0 -28
  697. package/tools/dc-simulator/config/smarttrainer-260W.json +0 -28
  698. package/tools/dc-simulator/config/smarttrainer-shifting.json +0 -27
  699. package/tools/dc-simulator/config/smarttrainer.json +0 -27
  700. package/tools/dc-simulator/eslint.config.mjs +0 -12
  701. package/tools/dc-simulator/package-lock.json +0 -5436
  702. package/tools/dc-simulator/package.json +0 -45
  703. package/tools/dc-simulator/protos/zwift_hub.proto +0 -181
  704. package/tools/dc-simulator/src/comms.ts +0 -324
  705. package/tools/dc-simulator/src/config.ts +0 -60
  706. package/tools/dc-simulator/src/emulator/characteristics/characteristic.ts +0 -83
  707. package/tools/dc-simulator/src/emulator/characteristics/cycling-power-measurement-characteristic.ts +0 -94
  708. package/tools/dc-simulator/src/emulator/characteristics/cycling-power-wahoo-extension-characteristic.ts +0 -57
  709. package/tools/dc-simulator/src/emulator/characteristics/fitness-machine-control-point-characteristic.ts +0 -188
  710. package/tools/dc-simulator/src/emulator/characteristics/fitness-machine-feature-characteristic.ts +0 -39
  711. package/tools/dc-simulator/src/emulator/characteristics/heart-rate-measurement-characteristic.ts +0 -34
  712. package/tools/dc-simulator/src/emulator/characteristics/index.ts +0 -2
  713. package/tools/dc-simulator/src/emulator/characteristics/indoor-bike-data-characteristic.ts +0 -86
  714. package/tools/dc-simulator/src/emulator/characteristics/read-characteristic.ts +0 -19
  715. package/tools/dc-simulator/src/emulator/characteristics/zwift-play-control-point.ts +0 -53
  716. package/tools/dc-simulator/src/emulator/characteristics/zwift-play-measurement.ts +0 -70
  717. package/tools/dc-simulator/src/emulator/characteristics/zwift-play-response.ts +0 -47
  718. package/tools/dc-simulator/src/emulator/index.ts +0 -190
  719. package/tools/dc-simulator/src/emulator/services/csp.ts +0 -32
  720. package/tools/dc-simulator/src/emulator/services/ftms.ts +0 -33
  721. package/tools/dc-simulator/src/emulator/services/hrs.ts +0 -18
  722. package/tools/dc-simulator/src/emulator/services/index.ts +0 -4
  723. package/tools/dc-simulator/src/emulator/services/service.ts +0 -39
  724. package/tools/dc-simulator/src/emulator/services/zwift-play.ts +0 -31
  725. package/tools/dc-simulator/src/emulator/types.ts +0 -46
  726. package/tools/dc-simulator/src/index.ts +0 -112
  727. package/tools/dc-simulator/src/net.ts +0 -37
  728. package/tools/dc-simulator/tsconfig.json +0 -21
  729. package/tsconfig.base.json +0 -28
  730. package/tsconfig.cjs.json +0 -9
  731. package/tsconfig.esm.json +0 -10
  732. package/tsconfig.test.json +0 -19
  733. package/vitest.config.js +0 -28
  734. package/vitest.setup.ts +0 -4
  735. /package/{src/serial/daum/classic/consts.ts → lib/esm/serial/daum/classic/consts.js} +0 -0
  736. /package/{src/serial/kettler/types.ts → lib/types/serial/kettler/types.d.ts} +0 -0
@@ -0,0 +1,459 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const interface_js_1 = __importDefault(require("./interface.js"));
7
+ const adpater_js_1 = __importDefault(require("../../base/adpater.js"));
8
+ const types_js_1 = require("../types.js");
9
+ const index_js_1 = require("../../types/index.js");
10
+ const utils_js_1 = require("../../utils/utils.js");
11
+ const utils_js_2 = require("../utils.js");
12
+ const consts_js_1 = require("../consts.js");
13
+ const sensor_factory_js_1 = __importDefault(require("../factories/sensor-factory.js"));
14
+ const gd_eventlog_1 = require("gd-eventlog");
15
+ const node_events_1 = __importDefault(require("node:events"));
16
+ const INTERFACE_NAME = 'ant';
17
+ const MAX_RETRIES = 3;
18
+ class AntAdapter extends adpater_js_1.default {
19
+ sensor;
20
+ deviceData;
21
+ channel;
22
+ ant;
23
+ userSettings;
24
+ bikeSettings;
25
+ ivDataTimeout;
26
+ lastDataTS;
27
+ dataMsgCount;
28
+ ivWaitForData;
29
+ promiseWaitForData;
30
+ sensorConnected;
31
+ startStatus;
32
+ startupRetryPause = 1000;
33
+ internalEmitter = new node_events_1.default();
34
+ constructor(settings, props) {
35
+ super(settings, props);
36
+ const profile = this.getProfileName();
37
+ if (settings.protocol && settings.profile !== this.getLegacyProfileName())
38
+ throw new Error('Incorrect Profile');
39
+ if (!settings.protocol && settings.profile !== this.getProfileName())
40
+ throw new Error('Incorrect Profile');
41
+ const antSettings = this.settings;
42
+ if ((0, types_js_1.isLegacyProfile)(antSettings.profile))
43
+ antSettings.profile = (0, utils_js_2.mapLegacyProfile)(antSettings.profile);
44
+ if (this.settings.interface !== 'ant')
45
+ throw new Error('Incorrect interface');
46
+ this.sensor = this.createSensor(settings);
47
+ this.sensorConnected = false;
48
+ this.deviceData = {
49
+ DeviceID: Number(settings.deviceID)
50
+ };
51
+ this.data = {};
52
+ this.dataMsgCount = 0;
53
+ this.logger = new gd_eventlog_1.EventLogger(`Ant+${profile}`);
54
+ this.updateFrequency = consts_js_1.DEFAULT_UPDATE_FREQUENCY;
55
+ this.channel = undefined;
56
+ this.ant = interface_js_1.default.getInstance();
57
+ if (this.isDebugEnabled()) {
58
+ this.ant.setLogger(this);
59
+ }
60
+ if (this.getStaticCapabilities())
61
+ this.capabilities = this.getStaticCapabilities();
62
+ }
63
+ getProfileName() {
64
+ const C = this.constructor;
65
+ return C['ANT_PROFILE_NAME'];
66
+ }
67
+ getLegacyProfileName() {
68
+ const C = this.constructor;
69
+ return C['INCYCLIST_PROFILE_NAME'];
70
+ }
71
+ getStaticCapabilities() {
72
+ const C = this.constructor;
73
+ return C['CAPABILITIES'];
74
+ }
75
+ createSensor(settings) {
76
+ return sensor_factory_js_1.default.create(this.getProfileName(), Number(settings.deviceID));
77
+ }
78
+ isEqual(settings) {
79
+ const as = this.settings;
80
+ if (as.interface !== settings.interface)
81
+ return false;
82
+ if (Number(as.deviceID) !== Number(settings.deviceID) || as.profile !== settings.profile)
83
+ return false;
84
+ return true;
85
+ }
86
+ getDefaultReconnectDelay() {
87
+ return this.startupRetryPause;
88
+ }
89
+ async connect() {
90
+ const connected = await interface_js_1.default.getInstance().connect();
91
+ return connected;
92
+ }
93
+ async close() {
94
+ return true;
95
+ }
96
+ resetData() {
97
+ this.dataMsgCount = 0;
98
+ const { DeviceID } = this.deviceData;
99
+ this.deviceData = { DeviceID };
100
+ this.data = {};
101
+ this.lastDataTS = undefined;
102
+ }
103
+ isSame(device) {
104
+ if (!(device instanceof AntAdapter))
105
+ return false;
106
+ const adapter = device;
107
+ return (adapter.getID() === this.getID() && adapter.getProfile() === this.getProfile());
108
+ }
109
+ hasData() {
110
+ return this.dataMsgCount > 0;
111
+ }
112
+ mapData(deviceData) {
113
+ throw new Error('message not implemented');
114
+ }
115
+ transformData(data, deviceData) {
116
+ throw new Error('message not implemented');
117
+ }
118
+ mapToAdapterData(deviceData) {
119
+ throw new Error('message not implemented');
120
+ }
121
+ refreshDeviceData() {
122
+ if (this.isStopped() || this.isPaused())
123
+ return;
124
+ const logData = this.getLogData(this.deviceData, ['PairedDevices', 'RawData', '_RawData']);
125
+ this.logEvent({ message: 'refreshDeviceData', data: logData, paused: this.paused, started: this.started, canEmit: this.canEmitData() });
126
+ if (this.isControllable()) {
127
+ let incyclistData = this.mapData(this.deviceData);
128
+ incyclistData = this.getCyclingMode().updateData(incyclistData);
129
+ this.transformData(incyclistData, this.deviceData);
130
+ }
131
+ else {
132
+ this.mapToAdapterData(this.deviceData);
133
+ }
134
+ this.emitData(this.data);
135
+ }
136
+ onDeviceData(deviceData) {
137
+ this.dataMsgCount++;
138
+ this.lastDataTS = Date.now();
139
+ try {
140
+ const { ManId } = this.deviceData;
141
+ this.deviceData = Object.assign({}, deviceData);
142
+ if (!ManId && deviceData.ManId) {
143
+ this.emit('device-info', this.getSettings(), { manufacturer: (0, utils_js_2.getBrand)(deviceData.ManId) });
144
+ }
145
+ const logData = this.getLogData(deviceData, ['PairedDevices', 'RawData', '_RawData']);
146
+ this.logEvent({ message: 'onDeviceData', device: this.getName(), interface: this.getInterface(), data: logData, paused: this.paused, started: this.started, canEmit: this.canEmitData() });
147
+ if (this.isStopped() || !this.canEmitData())
148
+ return;
149
+ if (this.isControllable()) {
150
+ let incyclistData = this.mapData(deviceData);
151
+ incyclistData = this.getCyclingMode().updateData(incyclistData);
152
+ this.transformData(incyclistData, deviceData);
153
+ }
154
+ else {
155
+ this.mapToAdapterData(deviceData);
156
+ }
157
+ this.emitData(this.data);
158
+ }
159
+ catch (err) {
160
+ this.logEvent({ message: 'error', fn: 'onDeviceData()', error: err.message || err, stack: err.stack });
161
+ }
162
+ }
163
+ isWaitingForData() {
164
+ return this.promiseWaitForData !== undefined && this.promiseWaitForData !== null;
165
+ }
166
+ async _wait() {
167
+ const res = new Promise((resolve) => {
168
+ const iv = setInterval(() => {
169
+ if (this.hasData()) {
170
+ clearInterval(iv);
171
+ resolve(true);
172
+ }
173
+ if (this.promiseWaitForData === undefined || this.promiseWaitForData === null || this.stopped) {
174
+ resolve(false);
175
+ clearInterval(iv);
176
+ }
177
+ }, 10);
178
+ });
179
+ return res;
180
+ }
181
+ async waitForData(timeout) {
182
+ if (this.hasData()) {
183
+ return true;
184
+ }
185
+ const tsStart = Date.now();
186
+ if (this.promiseWaitForData !== undefined && this.promiseWaitForData !== null) {
187
+ let hasData = false;
188
+ try {
189
+ hasData = await this.promiseWaitForData;
190
+ }
191
+ catch { }
192
+ if (hasData || Date.now() > tsStart + timeout)
193
+ return hasData;
194
+ }
195
+ try {
196
+ this.promiseWaitForData = (0, utils_js_1.runWithTimeout)(this._wait(), timeout);
197
+ const hasData = await this.promiseWaitForData;
198
+ this.promiseWaitForData = null;
199
+ return hasData;
200
+ }
201
+ catch {
202
+ this.promiseWaitForData = null;
203
+ return false;
204
+ }
205
+ }
206
+ getID() {
207
+ const id = this.deviceData?.DeviceID ?? this.sensor?.getDeviceID();
208
+ return id?.toString();
209
+ }
210
+ getName() {
211
+ if (this.settings.name)
212
+ return this.settings.name;
213
+ const deviceID = this.getID();
214
+ const profile = this.getProfileName();
215
+ return `Ant+${profile} ${deviceID}`;
216
+ }
217
+ getUniqueName() {
218
+ if (this.settings.name)
219
+ return this.settings.name;
220
+ const { ManId } = this.deviceData;
221
+ const profile = this.getProfileName();
222
+ const brand = (0, utils_js_2.getBrand)(ManId);
223
+ const id = this.getID();
224
+ if (brand)
225
+ return `${brand} ${profile} ${id}`;
226
+ else
227
+ return `${this.getName()}`;
228
+ }
229
+ getDisplayName() {
230
+ return this.getUniqueName();
231
+ }
232
+ getInterface() {
233
+ return INTERFACE_NAME;
234
+ }
235
+ getProfile() {
236
+ const settings = this.settings;
237
+ if (settings.protocol === undefined)
238
+ return settings.profile;
239
+ else {
240
+ return (0, utils_js_2.mapLegacyProfile)(settings.profile);
241
+ }
242
+ }
243
+ getLogData(data, excludeList) {
244
+ const logData = JSON.parse(JSON.stringify(data));
245
+ excludeList.forEach((key) => {
246
+ delete logData[key];
247
+ });
248
+ return logData;
249
+ }
250
+ async check() {
251
+ try {
252
+ return await this.start();
253
+ }
254
+ catch {
255
+ return false;
256
+ }
257
+ }
258
+ async checkCapabilities() {
259
+ return;
260
+ }
261
+ async initControl() {
262
+ return;
263
+ }
264
+ getDefaultStartupTimeout() {
265
+ return 20000;
266
+ }
267
+ async startPreChecks(props) {
268
+ const wasPaused = this.paused;
269
+ const wasStopped = this.stopped;
270
+ this.stopped = false;
271
+ if (wasPaused)
272
+ this.resume();
273
+ if (this.started && !wasPaused && !wasStopped) {
274
+ return 'done';
275
+ }
276
+ if (this.started && wasPaused) {
277
+ return 'done';
278
+ }
279
+ const connected = await this.connect();
280
+ if (!connected)
281
+ return 'connection-failed';
282
+ return 'connected';
283
+ }
284
+ resetStartStatus() {
285
+ this.startStatus = { timeout: false, hasData: false, sensorStarted: false };
286
+ }
287
+ isStartSuccess() {
288
+ const { timeout, hasData, sensorStarted, controlInitialized, userInitialized, interrupted } = this.startStatus;
289
+ if (interrupted)
290
+ return false;
291
+ if (this.hasCapability(index_js_1.IncyclistCapability.Control))
292
+ return sensorStarted && hasData && userInitialized && controlInitialized && !timeout;
293
+ else
294
+ return sensorStarted && hasData && !timeout;
295
+ }
296
+ reportStartStatus() {
297
+ const success = this.isStartSuccess();
298
+ if (success) {
299
+ this.logEvent({ message: 'start device success', device: this.getName() });
300
+ this.started = true;
301
+ this.paused = false;
302
+ return true;
303
+ }
304
+ else {
305
+ this.started = false;
306
+ const { sensorStarted, hasData, interrupted } = this.startStatus;
307
+ if (interrupted) {
308
+ this.logEvent({ message: 'start device interrupted', device: this.getName() });
309
+ return false;
310
+ }
311
+ if (!sensorStarted) {
312
+ this.logEvent({ message: 'start device failed', device: this.getName(), reason: 'could not connect' });
313
+ throw new Error('could not start device, reason:could not connect');
314
+ }
315
+ else if (!hasData) {
316
+ this.logEvent({ message: 'start device failed', device: this.getName(), reason: 'no data received' });
317
+ throw new Error('could not start device, reason:no data received');
318
+ }
319
+ else {
320
+ this.logEvent({ message: 'start device failed', device: this.getName(), reason: 'could not send FE commands' });
321
+ throw new Error('could not start device, reason:could not send FE commands');
322
+ }
323
+ }
324
+ }
325
+ async waitForInitialData(startupTimeout) {
326
+ const { sensorStarted, hasData, timeout } = this.startStatus;
327
+ if ((sensorStarted && hasData) || !sensorStarted || timeout)
328
+ return;
329
+ this.logEvent({ message: 'wait for sensor data', device: this.getName() });
330
+ this.startStatus.hasData = await this.waitForData(startupTimeout);
331
+ if (this.startStatus.hasData)
332
+ this.logEvent({ message: 'sensor data received', device: this.getName() });
333
+ }
334
+ async initSensor(props) {
335
+ this.startStatus.sensorStarted = this.sensorConnected;
336
+ if (this.startStatus.sensorStarted)
337
+ return;
338
+ this.logEvent({ message: 'start sensor', device: this.getName(), props });
339
+ try {
340
+ this.sensorConnected = await this.startSensor();
341
+ if (this.sensorConnected) {
342
+ this.logEvent({ message: 'sensor started', device: this.getName(), channel: this.sensor?.getChannel()?.getChannelNo(), props });
343
+ this.startStatus.sensorStarted = true;
344
+ }
345
+ else {
346
+ this.logEvent({ message: 'start sensor failed', device: this.getName(), reason: 'unknown', props });
347
+ }
348
+ }
349
+ catch (err) {
350
+ this.logEvent({ message: 'start sensor failed', device: this.getName(), reason: err.message, props });
351
+ }
352
+ }
353
+ getLogProps(startProps) {
354
+ const { user, userWeight, bikeWeight, startupTimeout, automaticReconnect } = startProps ?? {};
355
+ return { user, userWeight, bikeWeight, startupTimeout, automaticReconnect };
356
+ }
357
+ async start(startProps) {
358
+ const props = this.getStartProps(startProps);
359
+ const logProps = this.getLogProps(startProps);
360
+ const preCheckResult = await this.startPreChecks(props);
361
+ if (preCheckResult === 'done')
362
+ return this.started;
363
+ if (preCheckResult === 'connection-failed')
364
+ throw new Error(`could not start device, reason:could not connect`);
365
+ this.logEvent({ message: 'starting device', device: this.getName(), props: logProps, isStarted: this.started, isPaused: this.isPaused, isStopped: this.isStopped });
366
+ this.resetStartStatus();
367
+ this.resetData();
368
+ const { startupTimeout = this.getDefaultStartupTimeout() } = props;
369
+ const retryDelay = this.getDefaultReconnectDelay();
370
+ const totalTimeout = Math.min(startupTimeout + 10000, (startupTimeout + retryDelay) * MAX_RETRIES);
371
+ const doStart = async () => {
372
+ let success = false;
373
+ let retry = 0;
374
+ while (!success && retry < MAX_RETRIES && !this.startStatus.timeout && !this.startStatus.interrupted) {
375
+ try {
376
+ retry++;
377
+ await this.initSensor(props);
378
+ await this.waitForInitialData(startupTimeout);
379
+ await this.checkCapabilities();
380
+ if (this.hasCapability(index_js_1.IncyclistCapability.Control))
381
+ await this.initControl();
382
+ if (!this.startStatus.hasData && !this.startStatus.interrupted) {
383
+ await this.stopSensor();
384
+ await (0, utils_js_1.sleep)(retryDelay);
385
+ continue;
386
+ }
387
+ success = this.isStartSuccess();
388
+ }
389
+ catch (err) {
390
+ this.logEvent({ message: 'error', fn: 'start#doStart', device: this.getName(), error: err.message, stack: err.stack });
391
+ }
392
+ }
393
+ this.reportStartStatus();
394
+ return this.started;
395
+ };
396
+ const checkInterrupt = () => new Promise(done => {
397
+ this.internalEmitter.on('stop', () => {
398
+ this.started = false;
399
+ this.startStatus.interrupted = true;
400
+ done(false);
401
+ });
402
+ });
403
+ try {
404
+ await (0, utils_js_1.runWithTimeout)(Promise.race([doStart(), checkInterrupt()]), totalTimeout);
405
+ }
406
+ catch (err) {
407
+ if (err.message === 'Timeout') {
408
+ this.started = false;
409
+ this.startStatus.timeout = true;
410
+ this.logEvent({ message: 'start device failed', device: this.getName(), reason: 'timeout' });
411
+ throw new Error(`could not start device, reason:timeout`);
412
+ }
413
+ throw err;
414
+ }
415
+ return this.started;
416
+ }
417
+ async stop() {
418
+ let stopped;
419
+ this.internalEmitter.emit('stop');
420
+ if (this.stopped)
421
+ return;
422
+ this.logger.logEvent({ message: 'stopping device', device: this.getName() });
423
+ this.promiseWaitForData = null;
424
+ if (this.startStatus) {
425
+ this.startStatus.interrupted = true;
426
+ await (0, utils_js_1.sleep)(20);
427
+ }
428
+ try {
429
+ stopped = await (0, utils_js_1.runWithTimeout)(this.ant.stopSensor(this.sensor), 5000);
430
+ }
431
+ catch (err) {
432
+ this.logEvent({ message: 'stop sensor failed', reason: err.message });
433
+ }
434
+ this.sensorConnected = false;
435
+ this.started = false;
436
+ this.stopped = true;
437
+ this.paused = false;
438
+ this.removeAllListeners();
439
+ this.logEvent({ message: 'stopping device finished', device: this.getName(), stopped });
440
+ return stopped;
441
+ }
442
+ async startSensor() {
443
+ return await this.ant.startSensor(this.sensor, this.onDeviceData.bind(this));
444
+ }
445
+ async stopSensor() {
446
+ if (!this.sensorConnected)
447
+ return;
448
+ try {
449
+ await await this.ant.stopSensor(this.sensor);
450
+ this.sensorConnected = false;
451
+ }
452
+ catch { }
453
+ }
454
+ setCyclingMode(mode, settings, sendInitCommands) {
455
+ super.setCyclingMode(mode, settings, sendInitCommands);
456
+ this.refreshDeviceData();
457
+ }
458
+ }
459
+ exports.default = AntAdapter;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class AntDeviceBinding {
4
+ constructor(_props) { }
5
+ open() {
6
+ throw new Error('Method not implemented.');
7
+ }
8
+ close() {
9
+ throw new Error('Method not implemented.');
10
+ }
11
+ getMaxChannels() {
12
+ throw new Error('Method not implemented.');
13
+ }
14
+ getChannel() {
15
+ throw new Error('Method not implemented.');
16
+ }
17
+ freeChannel(channel) {
18
+ throw new Error('Method not implemented.');
19
+ }
20
+ getDeviceNumber() {
21
+ throw new Error('Method not implemented.');
22
+ }
23
+ write(data) {
24
+ throw new Error('Method not implemented.');
25
+ }
26
+ }
27
+ exports.default = AntDeviceBinding;