@rickosborne/bluetools 2025.3.9

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 (410) hide show
  1. package/README.md +2624 -0
  2. package/assigned.cjs +577 -0
  3. package/assigned.cjs.map +6 -0
  4. package/assigned.d.ts +552 -0
  5. package/assigned.d.ts.map +1 -0
  6. package/assigned.mjs +557 -0
  7. package/assigned.mjs.map +6 -0
  8. package/battery-level.cjs +50 -0
  9. package/battery-level.cjs.map +6 -0
  10. package/battery-level.d.ts +25 -0
  11. package/battery-level.d.ts.map +1 -0
  12. package/battery-level.mjs +31 -0
  13. package/battery-level.mjs.map +6 -0
  14. package/cross-trainer-data.cjs +188 -0
  15. package/cross-trainer-data.cjs.map +6 -0
  16. package/cross-trainer-data.d.ts +192 -0
  17. package/cross-trainer-data.d.ts.map +1 -0
  18. package/cross-trainer-data.mjs +169 -0
  19. package/cross-trainer-data.mjs.map +6 -0
  20. package/csc-feature.cjs +59 -0
  21. package/csc-feature.cjs.map +6 -0
  22. package/csc-feature.d.ts +55 -0
  23. package/csc-feature.d.ts.map +1 -0
  24. package/csc-feature.mjs +40 -0
  25. package/csc-feature.mjs.map +6 -0
  26. package/csc-measurement.cjs +76 -0
  27. package/csc-measurement.cjs.map +6 -0
  28. package/csc-measurement.d.ts +57 -0
  29. package/csc-measurement.d.ts.map +1 -0
  30. package/csc-measurement.mjs +57 -0
  31. package/csc-measurement.mjs.map +6 -0
  32. package/current-time.cjs +66 -0
  33. package/current-time.cjs.map +6 -0
  34. package/current-time.d.ts +65 -0
  35. package/current-time.d.ts.map +1 -0
  36. package/current-time.mjs +47 -0
  37. package/current-time.mjs.map +6 -0
  38. package/data-view-from-hex.cjs +34 -0
  39. package/data-view-from-hex.cjs.map +6 -0
  40. package/data-view-from-hex.d.ts +6 -0
  41. package/data-view-from-hex.d.ts.map +1 -0
  42. package/data-view-from-hex.mjs +15 -0
  43. package/data-view-from-hex.mjs.map +6 -0
  44. package/data-view-reader.cjs +115 -0
  45. package/data-view-reader.cjs.map +6 -0
  46. package/data-view-reader.d.ts +21 -0
  47. package/data-view-reader.d.ts.map +1 -0
  48. package/data-view-reader.mjs +96 -0
  49. package/data-view-reader.mjs.map +6 -0
  50. package/date-time.cjs +65 -0
  51. package/date-time.cjs.map +6 -0
  52. package/date-time.d.ts +89 -0
  53. package/date-time.d.ts.map +1 -0
  54. package/date-time.mjs +46 -0
  55. package/date-time.mjs.map +6 -0
  56. package/day-date-time.cjs +55 -0
  57. package/day-date-time.cjs.map +6 -0
  58. package/day-date-time.d.ts +21 -0
  59. package/day-date-time.d.ts.map +1 -0
  60. package/day-date-time.mjs +36 -0
  61. package/day-date-time.mjs.map +6 -0
  62. package/day-of-week.cjs +50 -0
  63. package/day-of-week.cjs.map +6 -0
  64. package/day-of-week.d.ts +33 -0
  65. package/day-of-week.d.ts.map +1 -0
  66. package/day-of-week.mjs +31 -0
  67. package/day-of-week.mjs.map +6 -0
  68. package/dst-offset.cjs +50 -0
  69. package/dst-offset.cjs.map +6 -0
  70. package/dst-offset.d.ts +30 -0
  71. package/dst-offset.d.ts.map +1 -0
  72. package/dst-offset.mjs +31 -0
  73. package/dst-offset.mjs.map +6 -0
  74. package/elevation.cjs +50 -0
  75. package/elevation.cjs.map +6 -0
  76. package/elevation.d.ts +22 -0
  77. package/elevation.d.ts.map +1 -0
  78. package/elevation.mjs +31 -0
  79. package/elevation.mjs.map +6 -0
  80. package/exact-time-256.cjs +54 -0
  81. package/exact-time-256.cjs.map +6 -0
  82. package/exact-time-256.d.ts +27 -0
  83. package/exact-time-256.d.ts.map +1 -0
  84. package/exact-time-256.mjs +35 -0
  85. package/exact-time-256.mjs.map +6 -0
  86. package/firmware-revision-string.cjs +50 -0
  87. package/firmware-revision-string.cjs.map +6 -0
  88. package/firmware-revision-string.d.ts +19 -0
  89. package/firmware-revision-string.d.ts.map +1 -0
  90. package/firmware-revision-string.mjs +31 -0
  91. package/firmware-revision-string.mjs.map +6 -0
  92. package/five-zone-heart-rate-limits.cjs +59 -0
  93. package/five-zone-heart-rate-limits.cjs.map +6 -0
  94. package/five-zone-heart-rate-limits.d.ts +47 -0
  95. package/five-zone-heart-rate-limits.d.ts.map +1 -0
  96. package/five-zone-heart-rate-limits.mjs +40 -0
  97. package/five-zone-heart-rate-limits.mjs.map +6 -0
  98. package/gatt-characteristic-presentation-format.cjs +62 -0
  99. package/gatt-characteristic-presentation-format.cjs.map +6 -0
  100. package/gatt-characteristic-presentation-format.d.ts +91 -0
  101. package/gatt-characteristic-presentation-format.d.ts.map +1 -0
  102. package/gatt-characteristic-presentation-format.mjs +43 -0
  103. package/gatt-characteristic-presentation-format.mjs.map +6 -0
  104. package/gatt.cjs +57 -0
  105. package/gatt.cjs.map +6 -0
  106. package/gatt.d.ts +4 -0
  107. package/gatt.d.ts.map +1 -0
  108. package/gatt.mjs +38 -0
  109. package/gatt.mjs.map +6 -0
  110. package/glucose-feature.cjs +83 -0
  111. package/glucose-feature.cjs.map +6 -0
  112. package/glucose-feature.d.ts +127 -0
  113. package/glucose-feature.d.ts.map +1 -0
  114. package/glucose-feature.mjs +64 -0
  115. package/glucose-feature.mjs.map +6 -0
  116. package/glucose-measurement-context.cjs +133 -0
  117. package/glucose-measurement-context.cjs.map +6 -0
  118. package/glucose-measurement-context.d.ts +183 -0
  119. package/glucose-measurement-context.d.ts.map +1 -0
  120. package/glucose-measurement-context.mjs +114 -0
  121. package/glucose-measurement-context.mjs.map +6 -0
  122. package/glucose-measurement.cjs +136 -0
  123. package/glucose-measurement.cjs.map +6 -0
  124. package/glucose-measurement.d.ts +230 -0
  125. package/glucose-measurement.d.ts.map +1 -0
  126. package/glucose-measurement.mjs +117 -0
  127. package/glucose-measurement.mjs.map +6 -0
  128. package/hardware-revision-string.cjs +50 -0
  129. package/hardware-revision-string.cjs.map +6 -0
  130. package/hardware-revision-string.d.ts +19 -0
  131. package/hardware-revision-string.d.ts.map +1 -0
  132. package/hardware-revision-string.mjs +31 -0
  133. package/hardware-revision-string.mjs.map +6 -0
  134. package/heart-rate-control-point.cjs +50 -0
  135. package/heart-rate-control-point.cjs.map +6 -0
  136. package/heart-rate-control-point.d.ts +26 -0
  137. package/heart-rate-control-point.d.ts.map +1 -0
  138. package/heart-rate-control-point.mjs +31 -0
  139. package/heart-rate-control-point.mjs.map +6 -0
  140. package/heart-rate-max.cjs +50 -0
  141. package/heart-rate-max.cjs.map +6 -0
  142. package/heart-rate-max.d.ts +23 -0
  143. package/heart-rate-max.d.ts.map +1 -0
  144. package/heart-rate-max.mjs +31 -0
  145. package/heart-rate-max.mjs.map +6 -0
  146. package/heart-rate-measurement.cjs +79 -0
  147. package/heart-rate-measurement.cjs.map +6 -0
  148. package/heart-rate-measurement.d.ts +65 -0
  149. package/heart-rate-measurement.d.ts.map +1 -0
  150. package/heart-rate-measurement.mjs +60 -0
  151. package/heart-rate-measurement.mjs.map +6 -0
  152. package/heart-rate.cjs +58 -0
  153. package/heart-rate.cjs.map +6 -0
  154. package/heart-rate.d.ts +7 -0
  155. package/heart-rate.d.ts.map +1 -0
  156. package/heart-rate.mjs +39 -0
  157. package/heart-rate.mjs.map +6 -0
  158. package/index.cjs +84 -0
  159. package/index.cjs.map +6 -0
  160. package/index.d.ts +67 -0
  161. package/index.d.ts.map +1 -0
  162. package/index.mjs +67 -0
  163. package/index.mjs.map +6 -0
  164. package/indoor-bike-data.cjs +153 -0
  165. package/indoor-bike-data.cjs.map +6 -0
  166. package/indoor-bike-data.d.ts +146 -0
  167. package/indoor-bike-data.d.ts.map +1 -0
  168. package/indoor-bike-data.mjs +134 -0
  169. package/indoor-bike-data.mjs.map +6 -0
  170. package/language.cjs +50 -0
  171. package/language.cjs.map +6 -0
  172. package/language.d.ts +22 -0
  173. package/language.d.ts.map +1 -0
  174. package/language.mjs +31 -0
  175. package/language.mjs.map +6 -0
  176. package/latitude.cjs +50 -0
  177. package/latitude.cjs.map +6 -0
  178. package/latitude.d.ts +19 -0
  179. package/latitude.d.ts.map +1 -0
  180. package/latitude.mjs +31 -0
  181. package/latitude.mjs.map +6 -0
  182. package/local-time-information.cjs +55 -0
  183. package/local-time-information.cjs.map +6 -0
  184. package/local-time-information.d.ts +21 -0
  185. package/local-time-information.d.ts.map +1 -0
  186. package/local-time-information.mjs +36 -0
  187. package/local-time-information.mjs.map +6 -0
  188. package/location-and-speed.cjs +114 -0
  189. package/location-and-speed.cjs.map +6 -0
  190. package/location-and-speed.d.ts +182 -0
  191. package/location-and-speed.d.ts.map +1 -0
  192. package/location-and-speed.mjs +95 -0
  193. package/location-and-speed.mjs.map +6 -0
  194. package/location-name.cjs +50 -0
  195. package/location-name.cjs.map +6 -0
  196. package/location-name.d.ts +19 -0
  197. package/location-name.d.ts.map +1 -0
  198. package/location-name.mjs +31 -0
  199. package/location-name.mjs.map +6 -0
  200. package/longitude.cjs +50 -0
  201. package/longitude.cjs.map +6 -0
  202. package/longitude.d.ts +19 -0
  203. package/longitude.d.ts.map +1 -0
  204. package/longitude.mjs +31 -0
  205. package/longitude.mjs.map +6 -0
  206. package/manufacturer-name-string.cjs +50 -0
  207. package/manufacturer-name-string.cjs.map +6 -0
  208. package/manufacturer-name-string.d.ts +19 -0
  209. package/manufacturer-name-string.d.ts.map +1 -0
  210. package/manufacturer-name-string.mjs +31 -0
  211. package/manufacturer-name-string.mjs.map +6 -0
  212. package/maximum-recommended-heart-rate.cjs +50 -0
  213. package/maximum-recommended-heart-rate.cjs.map +6 -0
  214. package/maximum-recommended-heart-rate.d.ts +23 -0
  215. package/maximum-recommended-heart-rate.d.ts.map +1 -0
  216. package/maximum-recommended-heart-rate.mjs +31 -0
  217. package/maximum-recommended-heart-rate.mjs.map +6 -0
  218. package/measurement-interval.cjs +50 -0
  219. package/measurement-interval.cjs.map +6 -0
  220. package/measurement-interval.d.ts +27 -0
  221. package/measurement-interval.d.ts.map +1 -0
  222. package/measurement-interval.mjs +31 -0
  223. package/measurement-interval.mjs.map +6 -0
  224. package/model-number-string.cjs +50 -0
  225. package/model-number-string.cjs.map +6 -0
  226. package/model-number-string.d.ts +19 -0
  227. package/model-number-string.d.ts.map +1 -0
  228. package/model-number-string.mjs +31 -0
  229. package/model-number-string.mjs.map +6 -0
  230. package/navigation.cjs +90 -0
  231. package/navigation.cjs.map +6 -0
  232. package/navigation.d.ts +134 -0
  233. package/navigation.d.ts.map +1 -0
  234. package/navigation.mjs +71 -0
  235. package/navigation.mjs.map +6 -0
  236. package/number-of-digitals.cjs +50 -0
  237. package/number-of-digitals.cjs.map +6 -0
  238. package/number-of-digitals.d.ts +19 -0
  239. package/number-of-digitals.d.ts.map +1 -0
  240. package/number-of-digitals.mjs +31 -0
  241. package/number-of-digitals.mjs.map +6 -0
  242. package/package.json +456 -0
  243. package/plx-continuous-measurement.cjs +184 -0
  244. package/plx-continuous-measurement.cjs.map +6 -0
  245. package/plx-continuous-measurement.d.ts +352 -0
  246. package/plx-continuous-measurement.d.ts.map +1 -0
  247. package/plx-continuous-measurement.mjs +165 -0
  248. package/plx-continuous-measurement.mjs.map +6 -0
  249. package/plx-features.cjs +163 -0
  250. package/plx-features.cjs.map +6 -0
  251. package/plx-features.d.ts +354 -0
  252. package/plx-features.d.ts.map +1 -0
  253. package/plx-features.mjs +144 -0
  254. package/plx-features.mjs.map +6 -0
  255. package/plx-spot-check-measurement.cjs +169 -0
  256. package/plx-spot-check-measurement.cjs.map +6 -0
  257. package/plx-spot-check-measurement.d.ts +334 -0
  258. package/plx-spot-check-measurement.d.ts.map +1 -0
  259. package/plx-spot-check-measurement.mjs +150 -0
  260. package/plx-spot-check-measurement.mjs.map +6 -0
  261. package/reference-time-information.cjs +61 -0
  262. package/reference-time-information.cjs.map +6 -0
  263. package/reference-time-information.d.ts +38 -0
  264. package/reference-time-information.d.ts.map +1 -0
  265. package/reference-time-information.mjs +42 -0
  266. package/reference-time-information.mjs.map +6 -0
  267. package/resting-heart-rate.cjs +50 -0
  268. package/resting-heart-rate.cjs.map +6 -0
  269. package/resting-heart-rate.d.ts +23 -0
  270. package/resting-heart-rate.d.ts.map +1 -0
  271. package/resting-heart-rate.mjs +31 -0
  272. package/resting-heart-rate.mjs.map +6 -0
  273. package/rsc-feature.cjs +65 -0
  274. package/rsc-feature.cjs.map +6 -0
  275. package/rsc-feature.d.ts +73 -0
  276. package/rsc-feature.d.ts.map +1 -0
  277. package/rsc-feature.mjs +46 -0
  278. package/rsc-feature.mjs.map +6 -0
  279. package/rsc-measurement.cjs +73 -0
  280. package/rsc-measurement.cjs.map +6 -0
  281. package/rsc-measurement.d.ts +70 -0
  282. package/rsc-measurement.d.ts.map +1 -0
  283. package/rsc-measurement.mjs +54 -0
  284. package/rsc-measurement.mjs.map +6 -0
  285. package/scripts/fetch-and-cache-text.d.ts +2 -0
  286. package/scripts/fetch-and-cache-text.d.ts.map +1 -0
  287. package/scripts/from-xml.d.ts +2 -0
  288. package/scripts/from-xml.d.ts.map +1 -0
  289. package/scripts/gatt-assigned.d.ts +2 -0
  290. package/scripts/gatt-assigned.d.ts.map +1 -0
  291. package/sensor-location.cjs +50 -0
  292. package/sensor-location.cjs.map +6 -0
  293. package/sensor-location.d.ts +42 -0
  294. package/sensor-location.d.ts.map +1 -0
  295. package/sensor-location.mjs +31 -0
  296. package/sensor-location.mjs.map +6 -0
  297. package/serial-number-string.cjs +50 -0
  298. package/serial-number-string.cjs.map +6 -0
  299. package/serial-number-string.d.ts +19 -0
  300. package/serial-number-string.d.ts.map +1 -0
  301. package/serial-number-string.mjs +31 -0
  302. package/serial-number-string.mjs.map +6 -0
  303. package/software-revision-string.cjs +50 -0
  304. package/software-revision-string.cjs.map +6 -0
  305. package/software-revision-string.d.ts +19 -0
  306. package/software-revision-string.d.ts.map +1 -0
  307. package/software-revision-string.mjs +31 -0
  308. package/software-revision-string.mjs.map +6 -0
  309. package/supported-heart-rate-range.cjs +56 -0
  310. package/supported-heart-rate-range.cjs.map +6 -0
  311. package/supported-heart-rate-range.d.ts +37 -0
  312. package/supported-heart-rate-range.d.ts.map +1 -0
  313. package/supported-heart-rate-range.mjs +37 -0
  314. package/supported-heart-rate-range.mjs.map +6 -0
  315. package/supported-inclination-range.cjs +56 -0
  316. package/supported-inclination-range.cjs.map +6 -0
  317. package/supported-inclination-range.d.ts +37 -0
  318. package/supported-inclination-range.d.ts.map +1 -0
  319. package/supported-inclination-range.mjs +37 -0
  320. package/supported-inclination-range.mjs.map +6 -0
  321. package/supported-speed-range.cjs +56 -0
  322. package/supported-speed-range.cjs.map +6 -0
  323. package/supported-speed-range.d.ts +37 -0
  324. package/supported-speed-range.d.ts.map +1 -0
  325. package/supported-speed-range.mjs +37 -0
  326. package/supported-speed-range.mjs.map +6 -0
  327. package/system-id.cjs +53 -0
  328. package/system-id.cjs.map +6 -0
  329. package/system-id.d.ts +34 -0
  330. package/system-id.d.ts.map +1 -0
  331. package/system-id.mjs +34 -0
  332. package/system-id.mjs.map +6 -0
  333. package/temperature-measurement.cjs +79 -0
  334. package/temperature-measurement.cjs.map +6 -0
  335. package/temperature-measurement.d.ts +61 -0
  336. package/temperature-measurement.d.ts.map +1 -0
  337. package/temperature-measurement.mjs +60 -0
  338. package/temperature-measurement.mjs.map +6 -0
  339. package/temperature-type.cjs +50 -0
  340. package/temperature-type.cjs.map +6 -0
  341. package/temperature-type.d.ts +37 -0
  342. package/temperature-type.d.ts.map +1 -0
  343. package/temperature-type.mjs +31 -0
  344. package/temperature-type.mjs.map +6 -0
  345. package/temperature.cjs +50 -0
  346. package/temperature.cjs.map +6 -0
  347. package/temperature.d.ts +22 -0
  348. package/temperature.d.ts.map +1 -0
  349. package/temperature.mjs +31 -0
  350. package/temperature.mjs.map +6 -0
  351. package/three-zone-heart-rate-limits.cjs +53 -0
  352. package/three-zone-heart-rate-limits.cjs.map +6 -0
  353. package/three-zone-heart-rate-limits.d.ts +33 -0
  354. package/three-zone-heart-rate-limits.d.ts.map +1 -0
  355. package/three-zone-heart-rate-limits.mjs +34 -0
  356. package/three-zone-heart-rate-limits.mjs.map +6 -0
  357. package/time-accuracy.cjs +50 -0
  358. package/time-accuracy.cjs.map +6 -0
  359. package/time-accuracy.d.ts +23 -0
  360. package/time-accuracy.d.ts.map +1 -0
  361. package/time-accuracy.mjs +31 -0
  362. package/time-accuracy.mjs.map +6 -0
  363. package/time-source.cjs +50 -0
  364. package/time-source.cjs.map +6 -0
  365. package/time-source.d.ts +33 -0
  366. package/time-source.d.ts.map +1 -0
  367. package/time-source.mjs +31 -0
  368. package/time-source.mjs.map +6 -0
  369. package/time-update-control-point.cjs +50 -0
  370. package/time-update-control-point.cjs.map +6 -0
  371. package/time-update-control-point.d.ts +29 -0
  372. package/time-update-control-point.d.ts.map +1 -0
  373. package/time-update-control-point.mjs +31 -0
  374. package/time-update-control-point.mjs.map +6 -0
  375. package/time-update-state.cjs +53 -0
  376. package/time-update-state.cjs.map +6 -0
  377. package/time-update-state.d.ts +45 -0
  378. package/time-update-state.d.ts.map +1 -0
  379. package/time-update-state.mjs +34 -0
  380. package/time-update-state.mjs.map +6 -0
  381. package/time-with-dst.cjs +55 -0
  382. package/time-with-dst.cjs.map +6 -0
  383. package/time-with-dst.d.ts +21 -0
  384. package/time-with-dst.d.ts.map +1 -0
  385. package/time-with-dst.mjs +36 -0
  386. package/time-with-dst.mjs.map +6 -0
  387. package/time-zone.cjs +50 -0
  388. package/time-zone.cjs.map +6 -0
  389. package/time-zone.d.ts +23 -0
  390. package/time-zone.d.ts.map +1 -0
  391. package/time-zone.mjs +31 -0
  392. package/time-zone.mjs.map +6 -0
  393. package/treadmill-data.cjs +171 -0
  394. package/treadmill-data.cjs.map +6 -0
  395. package/treadmill-data.d.ts +167 -0
  396. package/treadmill-data.d.ts.map +1 -0
  397. package/treadmill-data.mjs +152 -0
  398. package/treadmill-data.mjs.map +6 -0
  399. package/two-zone-heart-rate-limit.cjs +50 -0
  400. package/two-zone-heart-rate-limit.cjs.map +6 -0
  401. package/two-zone-heart-rate-limit.d.ts +23 -0
  402. package/two-zone-heart-rate-limit.d.ts.map +1 -0
  403. package/two-zone-heart-rate-limit.mjs +31 -0
  404. package/two-zone-heart-rate-limit.mjs.map +6 -0
  405. package/vo2-max.cjs +50 -0
  406. package/vo2-max.cjs.map +6 -0
  407. package/vo2-max.d.ts +22 -0
  408. package/vo2-max.d.ts.map +1 -0
  409. package/vo2-max.mjs +31 -0
  410. package/vo2-max.mjs.map +6 -0
@@ -0,0 +1,152 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ import { dataViewReader } from "./data-view-reader.mjs";
6
+ const _TreadmillDataImpl = class _TreadmillDataImpl {
7
+ /** Parse from a DataView into {@link TreadmillData}. */
8
+ static fromDataView(dataView, indexStart) {
9
+ return new _TreadmillDataImpl(treadmillDataFromDataView(dataView, indexStart));
10
+ }
11
+ averagePace;
12
+ averageSpeed;
13
+ elapsedTime;
14
+ energyPerHour;
15
+ energyPerMinute;
16
+ flags;
17
+ forceOnBelt;
18
+ heartRate;
19
+ inclination;
20
+ instantaneousPace;
21
+ instantaneousSpeed;
22
+ metabolicEquivalent;
23
+ negativeElevationGain;
24
+ positiveElevationGain;
25
+ powerOutput;
26
+ rampAngleSetting;
27
+ remainingTime;
28
+ totalDistance;
29
+ totalEnergy;
30
+ constructor(treadmillData) {
31
+ this.averagePace = treadmillData.averagePace;
32
+ this.averageSpeed = treadmillData.averageSpeed;
33
+ this.elapsedTime = treadmillData.elapsedTime;
34
+ this.energyPerHour = treadmillData.energyPerHour;
35
+ this.energyPerMinute = treadmillData.energyPerMinute;
36
+ this.flags = treadmillData.flags;
37
+ this.forceOnBelt = treadmillData.forceOnBelt;
38
+ this.heartRate = treadmillData.heartRate;
39
+ this.inclination = treadmillData.inclination;
40
+ this.instantaneousPace = treadmillData.instantaneousPace;
41
+ this.instantaneousSpeed = treadmillData.instantaneousSpeed;
42
+ this.metabolicEquivalent = treadmillData.metabolicEquivalent;
43
+ this.negativeElevationGain = treadmillData.negativeElevationGain;
44
+ this.positiveElevationGain = treadmillData.positiveElevationGain;
45
+ this.powerOutput = treadmillData.powerOutput;
46
+ this.rampAngleSetting = treadmillData.rampAngleSetting;
47
+ this.remainingTime = treadmillData.remainingTime;
48
+ this.totalDistance = treadmillData.totalDistance;
49
+ this.totalEnergy = treadmillData.totalEnergy;
50
+ }
51
+ };
52
+ __name(_TreadmillDataImpl, "TreadmillDataImpl");
53
+ __publicField(_TreadmillDataImpl, "UUID_PREFIX", 10957);
54
+ __publicField(_TreadmillDataImpl, "TYPE_NAME", "org.bluetooth.characteristic.treadmill_data");
55
+ __publicField(_TreadmillDataImpl, "NAME", "Treadmill Data");
56
+ let TreadmillDataImpl = _TreadmillDataImpl;
57
+ function treadmillDataFromDataView(dataView, indexStart = 0) {
58
+ const $dvr = dataViewReader(dataView, indexStart);
59
+ const flags = $dvr.uint16();
60
+ const moreData = !!(flags & 1);
61
+ const averageSpeedPresent = !!((flags & 2) >> 1);
62
+ const totalDistancePresent = !!((flags & 4) >> 2);
63
+ const inclinationAndRampAngleSettingPresent = !!((flags & 8) >> 3);
64
+ const elevationGainPresent = !!((flags & 16) >> 4);
65
+ const instantaneousPacePresent = !!((flags & 32) >> 5);
66
+ const averagePacePresent = !!((flags & 64) >> 6);
67
+ const expendedEnergyPresent = !!((flags & 128) >> 7);
68
+ const heartRatePresent = !!((flags & 256) >> 8);
69
+ const metabolicEquivalentPresent = !!((flags & 512) >> 9);
70
+ const elapsedTimePresent = !!((flags & 1024) >> 10);
71
+ const remainingTimePresent = !!((flags & 2048) >> 11);
72
+ const forceOnBeltAndPowerOutputPresent = !!((flags & 4096) >> 12);
73
+ let instantaneousSpeed = void 0;
74
+ if (!moreData) {
75
+ instantaneousSpeed = $dvr.uint16();
76
+ }
77
+ let averageSpeed = void 0;
78
+ if (averageSpeedPresent) {
79
+ averageSpeed = $dvr.uint16();
80
+ }
81
+ let totalDistance = void 0;
82
+ if (totalDistancePresent) {
83
+ totalDistance = $dvr.uint24();
84
+ }
85
+ let inclination = void 0;
86
+ if (inclinationAndRampAngleSettingPresent) {
87
+ inclination = $dvr.int16();
88
+ }
89
+ let rampAngleSetting = void 0;
90
+ if (inclinationAndRampAngleSettingPresent) {
91
+ rampAngleSetting = $dvr.int16();
92
+ }
93
+ let positiveElevationGain = void 0;
94
+ if (elevationGainPresent) {
95
+ positiveElevationGain = $dvr.uint16();
96
+ }
97
+ let negativeElevationGain = void 0;
98
+ if (elevationGainPresent) {
99
+ negativeElevationGain = $dvr.uint16();
100
+ }
101
+ let instantaneousPace = void 0;
102
+ if (instantaneousPacePresent) {
103
+ instantaneousPace = $dvr.uint8();
104
+ }
105
+ let averagePace = void 0;
106
+ if (averagePacePresent) {
107
+ averagePace = $dvr.uint8();
108
+ }
109
+ let totalEnergy = void 0;
110
+ if (expendedEnergyPresent) {
111
+ totalEnergy = $dvr.uint16();
112
+ }
113
+ let energyPerHour = void 0;
114
+ if (expendedEnergyPresent) {
115
+ energyPerHour = $dvr.uint16();
116
+ }
117
+ let energyPerMinute = void 0;
118
+ if (expendedEnergyPresent) {
119
+ energyPerMinute = $dvr.uint8();
120
+ }
121
+ let heartRate = void 0;
122
+ if (heartRatePresent) {
123
+ heartRate = $dvr.uint8();
124
+ }
125
+ let metabolicEquivalent = void 0;
126
+ if (metabolicEquivalentPresent) {
127
+ metabolicEquivalent = $dvr.uint8();
128
+ }
129
+ let elapsedTime = void 0;
130
+ if (elapsedTimePresent) {
131
+ elapsedTime = $dvr.uint16();
132
+ }
133
+ let remainingTime = void 0;
134
+ if (remainingTimePresent) {
135
+ remainingTime = $dvr.uint16();
136
+ }
137
+ let forceOnBelt = void 0;
138
+ if (forceOnBeltAndPowerOutputPresent) {
139
+ forceOnBelt = $dvr.int16();
140
+ }
141
+ let powerOutput = void 0;
142
+ if (forceOnBeltAndPowerOutputPresent) {
143
+ powerOutput = $dvr.int16();
144
+ }
145
+ return { averagePace, averageSpeed, elapsedTime, energyPerHour, energyPerMinute, flags, forceOnBelt, heartRate, inclination, instantaneousPace, instantaneousSpeed, metabolicEquivalent, negativeElevationGain, positiveElevationGain, powerOutput, rampAngleSetting, remainingTime, totalDistance, totalEnergy };
146
+ }
147
+ __name(treadmillDataFromDataView, "treadmillDataFromDataView");
148
+ export {
149
+ TreadmillDataImpl,
150
+ treadmillDataFromDataView
151
+ };
152
+ //# sourceMappingURL=treadmill-data.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/bluetools/treadmill-data.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
22
+ var two_zone_heart_rate_limit_exports = {};
23
+ __export(two_zone_heart_rate_limit_exports, {
24
+ TwoZoneHeartRateLimitImpl: () => TwoZoneHeartRateLimitImpl,
25
+ twoZoneHeartRateLimitFromDataView: () => twoZoneHeartRateLimitFromDataView
26
+ });
27
+ module.exports = __toCommonJS(two_zone_heart_rate_limit_exports);
28
+ var import_data_view_reader = require("./data-view-reader.cjs");
29
+ const _TwoZoneHeartRateLimitImpl = class _TwoZoneHeartRateLimitImpl {
30
+ /** Parse from a DataView into {@link TwoZoneHeartRateLimit}. */
31
+ static fromDataView(dataView, indexStart) {
32
+ return new _TwoZoneHeartRateLimitImpl(twoZoneHeartRateLimitFromDataView(dataView, indexStart));
33
+ }
34
+ twoZoneHeartRateLimitFatBurnFitnessLimit;
35
+ constructor(twoZoneHeartRateLimit) {
36
+ this.twoZoneHeartRateLimitFatBurnFitnessLimit = twoZoneHeartRateLimit.twoZoneHeartRateLimitFatBurnFitnessLimit;
37
+ }
38
+ };
39
+ __name(_TwoZoneHeartRateLimitImpl, "TwoZoneHeartRateLimitImpl");
40
+ __publicField(_TwoZoneHeartRateLimitImpl, "UUID_PREFIX", 10901);
41
+ __publicField(_TwoZoneHeartRateLimitImpl, "TYPE_NAME", "org.bluetooth.characteristic.two_zone_heart_rate_limit");
42
+ __publicField(_TwoZoneHeartRateLimitImpl, "NAME", "Two Zone Heart Rate Limit");
43
+ let TwoZoneHeartRateLimitImpl = _TwoZoneHeartRateLimitImpl;
44
+ function twoZoneHeartRateLimitFromDataView(dataView, indexStart = 0) {
45
+ const $dvr = (0, import_data_view_reader.dataViewReader)(dataView, indexStart);
46
+ const twoZoneHeartRateLimitFatBurnFitnessLimit = $dvr.uint8();
47
+ return { twoZoneHeartRateLimitFatBurnFitnessLimit };
48
+ }
49
+ __name(twoZoneHeartRateLimitFromDataView, "twoZoneHeartRateLimitFromDataView");
50
+ //# sourceMappingURL=two-zone-heart-rate-limit.cjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/bluetools/two-zone-heart-rate-limit.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAoD;AAgB7C,MAAM,6BAAN,MAAM,2BAA2D;AAAA;AAAA,EAMpE,OAAc,aAAa,UAAqC,YAA4D;AACxH,WAAO,IAAI,2BAA0B,kCAAkC,UAAU,UAAU,CAAC;AAAA,EAChG;AAAA,EAEgB;AAAA,EAET,YAAY,uBAA8C;AAC7D,SAAK,2CAA2C,sBAAsB;AAAA,EAC1E;AACJ;AAfwE;AACpE,cADS,4BACc,eAAc;AACrC,cAFS,4BAEc,aAAY;AACnC,cAHS,4BAGc,QAAO;AAH3B,IAAM,4BAAN;AAkBA,SAAS,kCAAkC,UAAqC,aAAqB,GAA0B;AAClI,QAAM,WAAuB,wCAAe,UAAU,UAAU;AAChE,QAAM,2CAA2C,KAAK,MAAM;AAC5D,SAAO,EAAE,yCAAyC;AACtD;AAJgB;",
5
+ "names": []
6
+ }
@@ -0,0 +1,23 @@
1
+ import { type DataViewReader } from "./data-view-reader.js";
2
+ /** <p>Heart rate limit between the heart rate zones for the 2-zone heart rate definition (Fitness and Fat Burn).</p> */
3
+ export interface TwoZoneHeartRateLimit {
4
+ /**
5
+ * <p>Format: `uint8`</p>
6
+ * <p>Unit: `org.bluetooth.unit.period.beats_per_minute`</p>
7
+ * <p>Unit is in beats per minute with a resolution of 1</p>
8
+ */
9
+ twoZoneHeartRateLimitFatBurnFitnessLimit: number;
10
+ }
11
+ /** @see {@link https://raw.githubusercontent.com/oesmith/gatt-xml/refs/heads/master/org.bluetooth.characteristic.two_zone_heart_rate_limit.xml | Two Zone Heart Rate Limit} */
12
+ export declare class TwoZoneHeartRateLimitImpl implements TwoZoneHeartRateLimit {
13
+ static readonly UUID_PREFIX = 10901;
14
+ static readonly TYPE_NAME = "org.bluetooth.characteristic.two_zone_heart_rate_limit";
15
+ static readonly NAME = "Two Zone Heart Rate Limit";
16
+ /** Parse from a DataView into {@link TwoZoneHeartRateLimit}. */
17
+ static fromDataView(dataView: DataView | DataViewReader, indexStart?: number | undefined): TwoZoneHeartRateLimitImpl;
18
+ readonly twoZoneHeartRateLimitFatBurnFitnessLimit: number;
19
+ constructor(twoZoneHeartRateLimit: TwoZoneHeartRateLimit);
20
+ }
21
+ /** Parse from a DataView into {@link TwoZoneHeartRateLimit}. */
22
+ export declare function twoZoneHeartRateLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TwoZoneHeartRateLimit;
23
+ //# sourceMappingURL=two-zone-heart-rate-limit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"two-zone-heart-rate-limit.d.ts","sourceRoot":"","sources":["../../../src/packages/bluetools/two-zone-heart-rate-limit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAK5E,wHAAwH;AACxH,MAAM,WAAW,qBAAqB;IAClC;;;;OAIG;IACH,wCAAwC,EAAE,MAAM,CAAC;CACpD;AAED,+KAA+K;AAC/K,qBAAa,yBAA0B,YAAW,qBAAqB;IACnE,gBAAuB,WAAW,SAAU;IAC5C,gBAAuB,SAAS,4DAA4D;IAC5F,gBAAuB,IAAI,+BAA+B;IAE1D,gEAAgE;WAClD,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,yBAAyB;IAI3H,SAAgB,wCAAwC,EAAE,MAAM,CAAC;gBAE9C,qBAAqB,EAAE,qBAAqB;CAGlE;AAED,gEAAgE;AAChE,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE,UAAU,GAAE,MAAU,GAAG,qBAAqB,CAIpI"}
@@ -0,0 +1,31 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ import { dataViewReader } from "./data-view-reader.mjs";
6
+ const _TwoZoneHeartRateLimitImpl = class _TwoZoneHeartRateLimitImpl {
7
+ /** Parse from a DataView into {@link TwoZoneHeartRateLimit}. */
8
+ static fromDataView(dataView, indexStart) {
9
+ return new _TwoZoneHeartRateLimitImpl(twoZoneHeartRateLimitFromDataView(dataView, indexStart));
10
+ }
11
+ twoZoneHeartRateLimitFatBurnFitnessLimit;
12
+ constructor(twoZoneHeartRateLimit) {
13
+ this.twoZoneHeartRateLimitFatBurnFitnessLimit = twoZoneHeartRateLimit.twoZoneHeartRateLimitFatBurnFitnessLimit;
14
+ }
15
+ };
16
+ __name(_TwoZoneHeartRateLimitImpl, "TwoZoneHeartRateLimitImpl");
17
+ __publicField(_TwoZoneHeartRateLimitImpl, "UUID_PREFIX", 10901);
18
+ __publicField(_TwoZoneHeartRateLimitImpl, "TYPE_NAME", "org.bluetooth.characteristic.two_zone_heart_rate_limit");
19
+ __publicField(_TwoZoneHeartRateLimitImpl, "NAME", "Two Zone Heart Rate Limit");
20
+ let TwoZoneHeartRateLimitImpl = _TwoZoneHeartRateLimitImpl;
21
+ function twoZoneHeartRateLimitFromDataView(dataView, indexStart = 0) {
22
+ const $dvr = dataViewReader(dataView, indexStart);
23
+ const twoZoneHeartRateLimitFatBurnFitnessLimit = $dvr.uint8();
24
+ return { twoZoneHeartRateLimitFatBurnFitnessLimit };
25
+ }
26
+ __name(twoZoneHeartRateLimitFromDataView, "twoZoneHeartRateLimitFromDataView");
27
+ export {
28
+ TwoZoneHeartRateLimitImpl,
29
+ twoZoneHeartRateLimitFromDataView
30
+ };
31
+ //# sourceMappingURL=two-zone-heart-rate-limit.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/bluetools/two-zone-heart-rate-limit.ts"],
4
+ "mappings": ";;;;AAAA,SAA8B,sBAAsB;AAgB7C,MAAM,6BAAN,MAAM,2BAA2D;AAAA;AAAA,EAMpE,OAAc,aAAa,UAAqC,YAA4D;AACxH,WAAO,IAAI,2BAA0B,kCAAkC,UAAU,UAAU,CAAC;AAAA,EAChG;AAAA,EAEgB;AAAA,EAET,YAAY,uBAA8C;AAC7D,SAAK,2CAA2C,sBAAsB;AAAA,EAC1E;AACJ;AAfwE;AACpE,cADS,4BACc,eAAc;AACrC,cAFS,4BAEc,aAAY;AACnC,cAHS,4BAGc,QAAO;AAH3B,IAAM,4BAAN;AAkBA,SAAS,kCAAkC,UAAqC,aAAqB,GAA0B;AAClI,QAAM,OAAuB,eAAe,UAAU,UAAU;AAChE,QAAM,2CAA2C,KAAK,MAAM;AAC5D,SAAO,EAAE,yCAAyC;AACtD;AAJgB;",
5
+ "names": []
6
+ }
package/vo2-max.cjs ADDED
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
22
+ var vo2_max_exports = {};
23
+ __export(vo2_max_exports, {
24
+ Vo2MaxImpl: () => Vo2MaxImpl,
25
+ vo2MaxFromDataView: () => vo2MaxFromDataView
26
+ });
27
+ module.exports = __toCommonJS(vo2_max_exports);
28
+ var import_data_view_reader = require("./data-view-reader.cjs");
29
+ const _Vo2MaxImpl = class _Vo2MaxImpl {
30
+ /** Parse from a DataView into {@link Vo2Max}. */
31
+ static fromDataView(dataView, indexStart) {
32
+ return new _Vo2MaxImpl(vo2MaxFromDataView(dataView, indexStart));
33
+ }
34
+ vo2Max;
35
+ constructor(vo2Max) {
36
+ this.vo2Max = vo2Max.vo2Max;
37
+ }
38
+ };
39
+ __name(_Vo2MaxImpl, "Vo2MaxImpl");
40
+ __publicField(_Vo2MaxImpl, "UUID_PREFIX", 10902);
41
+ __publicField(_Vo2MaxImpl, "TYPE_NAME", "org.bluetooth.characteristic.vo2_max");
42
+ __publicField(_Vo2MaxImpl, "NAME", "VO2 Max");
43
+ let Vo2MaxImpl = _Vo2MaxImpl;
44
+ function vo2MaxFromDataView(dataView, indexStart = 0) {
45
+ const $dvr = (0, import_data_view_reader.dataViewReader)(dataView, indexStart);
46
+ const vo2Max = $dvr.uint8();
47
+ return { vo2Max };
48
+ }
49
+ __name(vo2MaxFromDataView, "vo2MaxFromDataView");
50
+ //# sourceMappingURL=vo2-max.cjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/bluetools/vo2-max.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAoD;AAe7C,MAAM,cAAN,MAAM,YAA6B;AAAA;AAAA,EAMtC,OAAc,aAAa,UAAqC,YAA6C;AACzG,WAAO,IAAI,YAAW,mBAAmB,UAAU,UAAU,CAAC;AAAA,EAClE;AAAA,EAEgB;AAAA,EAET,YAAY,QAAgB;AAC/B,SAAK,SAAS,OAAO;AAAA,EACzB;AACJ;AAf0C;AACtC,cADS,aACc,eAAc;AACrC,cAFS,aAEc,aAAY;AACnC,cAHS,aAGc,QAAO;AAH3B,IAAM,aAAN;AAkBA,SAAS,mBAAmB,UAAqC,aAAqB,GAAW;AACpG,QAAM,WAAuB,wCAAe,UAAU,UAAU;AAChE,QAAM,SAAS,KAAK,MAAM;AAC1B,SAAO,EAAE,OAAO;AACpB;AAJgB;",
5
+ "names": []
6
+ }
package/vo2-max.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ import { type DataViewReader } from "./data-view-reader.js";
2
+ /** <p>Maximal Oxygen uptake of a user</p> */
3
+ export interface Vo2Max {
4
+ /**
5
+ * <p>Format: `uint8`</p>
6
+ * <p>Unit is in Milliliter per kilogram per minutes with a resolution of 1 .</p>
7
+ */
8
+ vo2Max: number;
9
+ }
10
+ /** @see {@link https://raw.githubusercontent.com/oesmith/gatt-xml/refs/heads/master/org.bluetooth.characteristic.vo2_max.xml | Vo2 Max} */
11
+ export declare class Vo2MaxImpl implements Vo2Max {
12
+ static readonly UUID_PREFIX = 10902;
13
+ static readonly TYPE_NAME = "org.bluetooth.characteristic.vo2_max";
14
+ static readonly NAME = "VO2 Max";
15
+ /** Parse from a DataView into {@link Vo2Max}. */
16
+ static fromDataView(dataView: DataView | DataViewReader, indexStart?: number | undefined): Vo2MaxImpl;
17
+ readonly vo2Max: number;
18
+ constructor(vo2Max: Vo2Max);
19
+ }
20
+ /** Parse from a DataView into {@link Vo2Max}. */
21
+ export declare function vo2MaxFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Vo2Max;
22
+ //# sourceMappingURL=vo2-max.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vo2-max.d.ts","sourceRoot":"","sources":["../../../src/packages/bluetools/vo2-max.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAK5E,6CAA6C;AAC7C,MAAM,WAAW,MAAM;IACnB;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,2IAA2I;AAC3I,qBAAa,UAAW,YAAW,MAAM;IACrC,gBAAuB,WAAW,SAAU;IAC5C,gBAAuB,SAAS,0CAA0C;IAC1E,gBAAuB,IAAI,aAAa;IAExC,iDAAiD;WACnC,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU;IAI5G,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM;CAGpC;AAED,iDAAiD;AACjD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,cAAc,EAAE,UAAU,GAAE,MAAU,GAAG,MAAM,CAItG"}
package/vo2-max.mjs ADDED
@@ -0,0 +1,31 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ import { dataViewReader } from "./data-view-reader.mjs";
6
+ const _Vo2MaxImpl = class _Vo2MaxImpl {
7
+ /** Parse from a DataView into {@link Vo2Max}. */
8
+ static fromDataView(dataView, indexStart) {
9
+ return new _Vo2MaxImpl(vo2MaxFromDataView(dataView, indexStart));
10
+ }
11
+ vo2Max;
12
+ constructor(vo2Max) {
13
+ this.vo2Max = vo2Max.vo2Max;
14
+ }
15
+ };
16
+ __name(_Vo2MaxImpl, "Vo2MaxImpl");
17
+ __publicField(_Vo2MaxImpl, "UUID_PREFIX", 10902);
18
+ __publicField(_Vo2MaxImpl, "TYPE_NAME", "org.bluetooth.characteristic.vo2_max");
19
+ __publicField(_Vo2MaxImpl, "NAME", "VO2 Max");
20
+ let Vo2MaxImpl = _Vo2MaxImpl;
21
+ function vo2MaxFromDataView(dataView, indexStart = 0) {
22
+ const $dvr = dataViewReader(dataView, indexStart);
23
+ const vo2Max = $dvr.uint8();
24
+ return { vo2Max };
25
+ }
26
+ __name(vo2MaxFromDataView, "vo2MaxFromDataView");
27
+ export {
28
+ Vo2MaxImpl,
29
+ vo2MaxFromDataView
30
+ };
31
+ //# sourceMappingURL=vo2-max.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/bluetools/vo2-max.ts"],
4
+ "mappings": ";;;;AAAA,SAA8B,sBAAsB;AAe7C,MAAM,cAAN,MAAM,YAA6B;AAAA;AAAA,EAMtC,OAAc,aAAa,UAAqC,YAA6C;AACzG,WAAO,IAAI,YAAW,mBAAmB,UAAU,UAAU,CAAC;AAAA,EAClE;AAAA,EAEgB;AAAA,EAET,YAAY,QAAgB;AAC/B,SAAK,SAAS,OAAO;AAAA,EACzB;AACJ;AAf0C;AACtC,cADS,aACc,eAAc;AACrC,cAFS,aAEc,aAAY;AACnC,cAHS,aAGc,QAAO;AAH3B,IAAM,aAAN;AAkBA,SAAS,mBAAmB,UAAqC,aAAqB,GAAW;AACpG,QAAM,OAAuB,eAAe,UAAU,UAAU;AAChE,QAAM,SAAS,KAAK,MAAM;AAC1B,SAAO,EAAE,OAAO;AACpB;AAJgB;",
5
+ "names": []
6
+ }