@sports-alliance/sports-lib 7.0.7 → 7.0.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 (336) hide show
  1. package/.editorconfig +14 -0
  2. package/.eslintignore +4 -0
  3. package/.eslintrc.js +9 -0
  4. package/.prettierignore +25 -0
  5. package/.prettierrc.json +12 -0
  6. package/CODE_OF_CONDUCT.md +76 -0
  7. package/jest.config.js +23 -0
  8. package/lib/esm/index.js +12034 -152
  9. package/package.json +3 -2
  10. package/tsconfig.cjs.json +7 -0
  11. package/tsconfig.esm.json +8 -0
  12. package/tsconfig.lib.json +8 -0
  13. package/lib/esm/activities/activity-parsing-options.js +0 -19
  14. package/lib/esm/activities/activity.interface.js +0 -1
  15. package/lib/esm/activities/activity.js +0 -281
  16. package/lib/esm/activities/activity.json.interface.js +0 -1
  17. package/lib/esm/activities/activity.spec.js +0 -348
  18. package/lib/esm/activities/activity.types.js +0 -1046
  19. package/lib/esm/activities/activityt-types.spec.js +0 -16
  20. package/lib/esm/activities/devices/device.interface.js +0 -1
  21. package/lib/esm/activities/devices/device.js +0 -26
  22. package/lib/esm/activities/devices/device.json.interface.js +0 -1
  23. package/lib/esm/constants/constants.js +0 -8
  24. package/lib/esm/creators/creator.interface.js +0 -1
  25. package/lib/esm/creators/creator.js +0 -37
  26. package/lib/esm/creators/creator.json.interface.js +0 -1
  27. package/lib/esm/creators/creator.spec.js +0 -25
  28. package/lib/esm/data/data-active-lap.js +0 -4
  29. package/lib/esm/data/data-active-lengths.js +0 -4
  30. package/lib/esm/data/data-aerobic-training-effect.js +0 -8
  31. package/lib/esm/data/data-anaerobic-training-effect.js +0 -8
  32. package/lib/esm/data/data-stance-time-balance-left.js +0 -4
  33. package/lib/esm/data/data-stance-time-balance-right.js +0 -4
  34. package/lib/esm/data/data-stance-time-balance.js +0 -3
  35. package/lib/esm/data/data-store.spec.js +0 -78
  36. package/lib/esm/data/data-total-cycles.js +0 -4
  37. package/lib/esm/data/data.absolute-pressure.js +0 -5
  38. package/lib/esm/data/data.accumulated-power.js +0 -8
  39. package/lib/esm/data/data.activity-types.js +0 -7
  40. package/lib/esm/data/data.air-power-avg.js +0 -4
  41. package/lib/esm/data/data.air-power-max.js +0 -4
  42. package/lib/esm/data/data.air-power-min.js +0 -4
  43. package/lib/esm/data/data.air-power.js +0 -8
  44. package/lib/esm/data/data.alti-baro-profile.js +0 -4
  45. package/lib/esm/data/data.altitude-avg.js +0 -4
  46. package/lib/esm/data/data.altitude-gps.js +0 -5
  47. package/lib/esm/data/data.altitude-max.js +0 -4
  48. package/lib/esm/data/data.altitude-min.js +0 -4
  49. package/lib/esm/data/data.altitude-smooth.js +0 -4
  50. package/lib/esm/data/data.altitude.js +0 -8
  51. package/lib/esm/data/data.array.js +0 -13
  52. package/lib/esm/data/data.ascent-time.js +0 -4
  53. package/lib/esm/data/data.ascent.js +0 -4
  54. package/lib/esm/data/data.auto-lap-distance.js +0 -5
  55. package/lib/esm/data/data.auto-lap-duration.js +0 -4
  56. package/lib/esm/data/data.auto-lap-used.js +0 -7
  57. package/lib/esm/data/data.auto-pause-used.js +0 -7
  58. package/lib/esm/data/data.avg-stride-length.js +0 -4
  59. package/lib/esm/data/data.balance.js +0 -6
  60. package/lib/esm/data/data.bare.js +0 -4
  61. package/lib/esm/data/data.battery-charge.js +0 -8
  62. package/lib/esm/data/data.battery-consumption.js +0 -8
  63. package/lib/esm/data/data.battery-current.js +0 -8
  64. package/lib/esm/data/data.battery-life-estimation.js +0 -4
  65. package/lib/esm/data/data.battery-voltage.js +0 -8
  66. package/lib/esm/data/data.bike-pod-used.js +0 -7
  67. package/lib/esm/data/data.boolean.js +0 -9
  68. package/lib/esm/data/data.cadence-avg.js +0 -4
  69. package/lib/esm/data/data.cadence-max.js +0 -4
  70. package/lib/esm/data/data.cadence-min.js +0 -4
  71. package/lib/esm/data/data.cadence.js +0 -8
  72. package/lib/esm/data/data.cycling-dynamics.js +0 -3
  73. package/lib/esm/data/data.cycling-position.js +0 -37
  74. package/lib/esm/data/data.cycling-seated-time.js +0 -5
  75. package/lib/esm/data/data.cycling-standing-time.js +0 -5
  76. package/lib/esm/data/data.descent-time.js +0 -4
  77. package/lib/esm/data/data.descent.js +0 -4
  78. package/lib/esm/data/data.description.js +0 -4
  79. package/lib/esm/data/data.device-location.js +0 -4
  80. package/lib/esm/data/data.device-names.js +0 -7
  81. package/lib/esm/data/data.distance.js +0 -15
  82. package/lib/esm/data/data.duration.js +0 -56
  83. package/lib/esm/data/data.ehpe.js +0 -5
  84. package/lib/esm/data/data.enabled-navigation-systems.js +0 -4
  85. package/lib/esm/data/data.end-altitude.js +0 -4
  86. package/lib/esm/data/data.end-position.js +0 -4
  87. package/lib/esm/data/data.energy.js +0 -8
  88. package/lib/esm/data/data.epoc.js +0 -5
  89. package/lib/esm/data/data.event.js +0 -3
  90. package/lib/esm/data/data.evpe.js +0 -4
  91. package/lib/esm/data/data.feeling.js +0 -15
  92. package/lib/esm/data/data.foot-pod-used.js +0 -7
  93. package/lib/esm/data/data.form-power.js +0 -4
  94. package/lib/esm/data/data.fused-altitude.js +0 -7
  95. package/lib/esm/data/data.fused-location.js +0 -7
  96. package/lib/esm/data/data.gnss-distance.js +0 -4
  97. package/lib/esm/data/data.grade-adjusted-pace-avg.js +0 -15
  98. package/lib/esm/data/data.grade-adjusted-pace-max.js +0 -15
  99. package/lib/esm/data/data.grade-adjusted-pace-min.js +0 -15
  100. package/lib/esm/data/data.grade-adjusted-pace.js +0 -25
  101. package/lib/esm/data/data.grade-adjusted-speed-avg.js +0 -46
  102. package/lib/esm/data/data.grade-adjusted-speed-max.js +0 -46
  103. package/lib/esm/data/data.grade-adjusted-speed-min.js +0 -46
  104. package/lib/esm/data/data.grade-adjusted-speed.js +0 -78
  105. package/lib/esm/data/data.grade-smooth.js +0 -7
  106. package/lib/esm/data/data.grade.js +0 -7
  107. package/lib/esm/data/data.ground-time.js +0 -8
  108. package/lib/esm/data/data.heart-rate-avg.js +0 -4
  109. package/lib/esm/data/data.heart-rate-max.js +0 -4
  110. package/lib/esm/data/data.heart-rate-min.js +0 -4
  111. package/lib/esm/data/data.heart-rate-used.js +0 -7
  112. package/lib/esm/data/data.heart-rate-zone-five-duration.js +0 -4
  113. package/lib/esm/data/data.heart-rate-zone-four-duration.js +0 -4
  114. package/lib/esm/data/data.heart-rate-zone-one-duration.js +0 -4
  115. package/lib/esm/data/data.heart-rate-zone-three-duration.js +0 -4
  116. package/lib/esm/data/data.heart-rate-zone-two-duration.js +0 -4
  117. package/lib/esm/data/data.heart-rate.js +0 -8
  118. package/lib/esm/data/data.ibi.js +0 -8
  119. package/lib/esm/data/data.interface.js +0 -5
  120. package/lib/esm/data/data.js +0 -62
  121. package/lib/esm/data/data.json.interface.js +0 -1
  122. package/lib/esm/data/data.latitude-degrees.js +0 -5
  123. package/lib/esm/data/data.left-balance.js +0 -4
  124. package/lib/esm/data/data.leg-stiffness.js +0 -16
  125. package/lib/esm/data/data.longitude-degrees.js +0 -5
  126. package/lib/esm/data/data.moving-time.js +0 -4
  127. package/lib/esm/data/data.number-of-satellites.js +0 -7
  128. package/lib/esm/data/data.number-of.samples.js +0 -4
  129. package/lib/esm/data/data.number.js +0 -13
  130. package/lib/esm/data/data.pace-avg.js +0 -8
  131. package/lib/esm/data/data.pace-max.js +0 -8
  132. package/lib/esm/data/data.pace-min.js +0 -8
  133. package/lib/esm/data/data.pace.js +0 -46
  134. package/lib/esm/data/data.pause.js +0 -4
  135. package/lib/esm/data/data.peak-epoc.js +0 -7
  136. package/lib/esm/data/data.peak-training-effect.js +0 -4
  137. package/lib/esm/data/data.percent.js +0 -4
  138. package/lib/esm/data/data.pool-length.js +0 -5
  139. package/lib/esm/data/data.position.interface.js +0 -1
  140. package/lib/esm/data/data.position.js +0 -18
  141. package/lib/esm/data/data.power-avg.js +0 -4
  142. package/lib/esm/data/data.power-down.js +0 -4
  143. package/lib/esm/data/data.power-intensity-factor.js +0 -5
  144. package/lib/esm/data/data.power-left.js +0 -4
  145. package/lib/esm/data/data.power-max.js +0 -4
  146. package/lib/esm/data/data.power-min.js +0 -4
  147. package/lib/esm/data/data.power-normalized.js +0 -4
  148. package/lib/esm/data/data.power-pedal-smoothness-left.js +0 -4
  149. package/lib/esm/data/data.power-pedal-smoothness-right.js +0 -4
  150. package/lib/esm/data/data.power-pod-used.js +0 -7
  151. package/lib/esm/data/data.power-right.js +0 -4
  152. package/lib/esm/data/data.power-torque-effectiveness-left.js +0 -4
  153. package/lib/esm/data/data.power-torque-effectiveness-right.js +0 -4
  154. package/lib/esm/data/data.power-training-stress-score.js +0 -5
  155. package/lib/esm/data/data.power-up.js +0 -4
  156. package/lib/esm/data/data.power-work.js +0 -5
  157. package/lib/esm/data/data.power-zone-five-duration.js +0 -4
  158. package/lib/esm/data/data.power-zone-four-duration.js +0 -4
  159. package/lib/esm/data/data.power-zone-one-duration.js +0 -4
  160. package/lib/esm/data/data.power-zone-three-duration.js +0 -4
  161. package/lib/esm/data/data.power-zone-two-duration.js +0 -4
  162. package/lib/esm/data/data.power.js +0 -8
  163. package/lib/esm/data/data.recovery-time.js +0 -7
  164. package/lib/esm/data/data.rider-position-change-event.js +0 -8
  165. package/lib/esm/data/data.right-balance.js +0 -4
  166. package/lib/esm/data/data.rpe.js +0 -23
  167. package/lib/esm/data/data.satellite-5-best-snr.js +0 -4
  168. package/lib/esm/data/data.sea-level-pressure.js +0 -5
  169. package/lib/esm/data/data.spec.js +0 -25
  170. package/lib/esm/data/data.speed-avg.js +0 -46
  171. package/lib/esm/data/data.speed-max.js +0 -46
  172. package/lib/esm/data/data.speed-min.js +0 -46
  173. package/lib/esm/data/data.speed-zone-five-duration.js +0 -4
  174. package/lib/esm/data/data.speed-zone-four-duration.js +0 -4
  175. package/lib/esm/data/data.speed-zone-one-duration.js +0 -4
  176. package/lib/esm/data/data.speed-zone-three-duration.js +0 -4
  177. package/lib/esm/data/data.speed-zone-two-duration.js +0 -4
  178. package/lib/esm/data/data.speed.js +0 -88
  179. package/lib/esm/data/data.sport-profile-name.js +0 -4
  180. package/lib/esm/data/data.stance-time.js +0 -5
  181. package/lib/esm/data/data.start-altitude.js +0 -4
  182. package/lib/esm/data/data.start-event.js +0 -4
  183. package/lib/esm/data/data.start-position.js +0 -4
  184. package/lib/esm/data/data.step-length.js +0 -4
  185. package/lib/esm/data/data.steps-old.js +0 -4
  186. package/lib/esm/data/data.steps.js +0 -4
  187. package/lib/esm/data/data.stop-all-event.js +0 -4
  188. package/lib/esm/data/data.stop-event.js +0 -4
  189. package/lib/esm/data/data.store.export.spec.js +0 -66
  190. package/lib/esm/data/data.store.js +0 -1213
  191. package/lib/esm/data/data.string.js +0 -13
  192. package/lib/esm/data/data.stryd-altitude.js +0 -4
  193. package/lib/esm/data/data.stryd-distance.js +0 -4
  194. package/lib/esm/data/data.stryd-speed.js +0 -4
  195. package/lib/esm/data/data.swim-pace-avg.js +0 -8
  196. package/lib/esm/data/data.swim-pace-max.js +0 -8
  197. package/lib/esm/data/data.swim-pace-min.js +0 -8
  198. package/lib/esm/data/data.swim-pace.js +0 -19
  199. package/lib/esm/data/data.swolf-25m.js +0 -4
  200. package/lib/esm/data/data.swolf-50m.js +0 -4
  201. package/lib/esm/data/data.target-distance.js +0 -4
  202. package/lib/esm/data/data.target-heart-rate-zone.js +0 -4
  203. package/lib/esm/data/data.target-power-zone.js +0 -4
  204. package/lib/esm/data/data.target-speed-zone.js +0 -4
  205. package/lib/esm/data/data.target-time.js +0 -4
  206. package/lib/esm/data/data.temperature-avg.js +0 -4
  207. package/lib/esm/data/data.temperature-max.js +0 -4
  208. package/lib/esm/data/data.temperature-min.js +0 -4
  209. package/lib/esm/data/data.temperature.js +0 -8
  210. package/lib/esm/data/data.time.js +0 -6
  211. package/lib/esm/data/data.timer-time.js +0 -4
  212. package/lib/esm/data/data.vertical-oscillation.js +0 -5
  213. package/lib/esm/data/data.vertical-ratio.js +0 -5
  214. package/lib/esm/data/data.vertical-speed-avg.js +0 -53
  215. package/lib/esm/data/data.vertical-speed-max.js +0 -53
  216. package/lib/esm/data/data.vertical-speed-min.js +0 -53
  217. package/lib/esm/data/data.vertical-speed.js +0 -103
  218. package/lib/esm/data/data.vo2-max.js +0 -7
  219. package/lib/esm/data/ibi/data.ibi.filters.js +0 -52
  220. package/lib/esm/data/ibi/data.ibi.js +0 -98
  221. package/lib/esm/data/ibi/data.ibi.spec.js +0 -66
  222. package/lib/esm/duration/duration.class.abstract.js +0 -36
  223. package/lib/esm/duration/duration.class.interface.js +0 -1
  224. package/lib/esm/errors/duration-exceeded-event-lib.error.js +0 -9
  225. package/lib/esm/errors/empty-event-sports-libs.error.js +0 -9
  226. package/lib/esm/errors/event-lib.error.js +0 -8
  227. package/lib/esm/errors/lib.error.js +0 -6
  228. package/lib/esm/errors/parsing-event-lib.error.js +0 -9
  229. package/lib/esm/events/adapters/exporters/exporter.gpx.js +0 -75
  230. package/lib/esm/events/adapters/exporters/exporter.interface.js +0 -1
  231. package/lib/esm/events/adapters/exporters/exporter.json.js +0 -20
  232. package/lib/esm/events/adapters/file-type.enum.js +0 -7
  233. package/lib/esm/events/adapters/importers/fit/importer.fit.ant-plus.device.names.js +0 -25
  234. package/lib/esm/events/adapters/importers/fit/importer.fit.coros.device.names.js +0 -5
  235. package/lib/esm/events/adapters/importers/fit/importer.fit.development.device.names.js +0 -4
  236. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.device.names.js +0 -462
  237. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.data.js +0 -877
  238. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.js +0 -106
  239. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.spec.js +0 -32
  240. package/lib/esm/events/adapters/importers/fit/importer.fit.hammerhead.device.names.js +0 -4
  241. package/lib/esm/events/adapters/importers/fit/importer.fit.integration.spec.js +0 -44
  242. package/lib/esm/events/adapters/importers/fit/importer.fit.js +0 -978
  243. package/lib/esm/events/adapters/importers/fit/importer.fit.lezyne.device.names.js +0 -3
  244. package/lib/esm/events/adapters/importers/fit/importer.fit.magellan.device.names.js +0 -5
  245. package/lib/esm/events/adapters/importers/fit/importer.fit.mapper.js +0 -231
  246. package/lib/esm/events/adapters/importers/fit/importer.fit.saris.device.names.js +0 -3
  247. package/lib/esm/events/adapters/importers/fit/importer.fit.spec.js +0 -326
  248. package/lib/esm/events/adapters/importers/fit/importer.fit.srm.device.names.js +0 -7
  249. package/lib/esm/events/adapters/importers/fit/importer.fit.suunto.device.names.js +0 -16
  250. package/lib/esm/events/adapters/importers/fit/importer.fit.wahoo.device.names.js +0 -10
  251. package/lib/esm/events/adapters/importers/gpx/gx-parser.js +0 -36
  252. package/lib/esm/events/adapters/importers/gpx/importer.gpx.integration.spec.js +0 -44
  253. package/lib/esm/events/adapters/importers/gpx/importer.gpx.js +0 -102
  254. package/lib/esm/events/adapters/importers/gpx/importer.gpx.mapper.js +0 -142
  255. package/lib/esm/events/adapters/importers/gpx/importer.gpx.spec.js +0 -71
  256. package/lib/esm/events/adapters/importers/json/importer.json.js +0 -160
  257. package/lib/esm/events/adapters/importers/sample-info.interface.js +0 -1
  258. package/lib/esm/events/adapters/importers/suunto/importer.suunto.activity.ids.js +0 -85
  259. package/lib/esm/events/adapters/importers/suunto/importer.suunto.device.names.js +0 -26
  260. package/lib/esm/events/adapters/importers/suunto/importer.suunto.integration.spec.js +0 -44
  261. package/lib/esm/events/adapters/importers/suunto/importer.suunto.json.js +0 -717
  262. package/lib/esm/events/adapters/importers/suunto/importer.suunto.sml.js +0 -125
  263. package/lib/esm/events/adapters/importers/tcx/importer.tcx.integration.spec.js +0 -46
  264. package/lib/esm/events/adapters/importers/tcx/importer.tcx.js +0 -442
  265. package/lib/esm/events/adapters/importers/tcx/importer.tcx.mapper.js +0 -91
  266. package/lib/esm/events/adapters/importers/tcx/utils.tcx.js +0 -36
  267. package/lib/esm/events/event.interface.js +0 -1
  268. package/lib/esm/events/event.js +0 -123
  269. package/lib/esm/events/event.json.interface.js +0 -1
  270. package/lib/esm/events/event.spec.js +0 -51
  271. package/lib/esm/events/utilities/activity.utilities.js +0 -1841
  272. package/lib/esm/events/utilities/activity.utilities.spec.js +0 -373
  273. package/lib/esm/events/utilities/event.utilities.js +0 -57
  274. package/lib/esm/events/utilities/grade-calculator/grade-calculator.js +0 -121
  275. package/lib/esm/events/utilities/grade-calculator/grade-calculator.spec.js +0 -93
  276. package/lib/esm/events/utilities/grade-calculator/low-pass-filter.js +0 -86
  277. package/lib/esm/events/utilities/helpers.js +0 -162
  278. package/lib/esm/geodesy/adapters/adapter.interface.js +0 -1
  279. package/lib/esm/geodesy/adapters/geolib.adapter.js +0 -28
  280. package/lib/esm/id/id.abstract.class.js +0 -9
  281. package/lib/esm/id/id.class.interface.js +0 -1
  282. package/lib/esm/id/id.class.spec.js +0 -13
  283. package/lib/esm/intensity-zones/intensity-zones.interface.js +0 -1
  284. package/lib/esm/intensity-zones/intensity-zones.js +0 -29
  285. package/lib/esm/intensity-zones/intensity-zones.json.interface.js +0 -1
  286. package/lib/esm/intensity-zones/intensity-zones.spec.js +0 -30
  287. package/lib/esm/laps/lap.interface.js +0 -1
  288. package/lib/esm/laps/lap.js +0 -29
  289. package/lib/esm/laps/lap.json.interface.js +0 -1
  290. package/lib/esm/laps/lap.types.js +0 -52
  291. package/lib/esm/meta-data/event-meta-data.interface.js +0 -6
  292. package/lib/esm/meta-data/meta-data.js +0 -57
  293. package/lib/esm/meta-data/meta-data.json.interface.js +0 -1
  294. package/lib/esm/privacy/privacy.class.interface.js +0 -5
  295. package/lib/esm/serializable/serializable.class.interface.js +0 -1
  296. package/lib/esm/service-tokens/oauth1-service-token.interface.js +0 -1
  297. package/lib/esm/service-tokens/oauth2-service-token.interface.js +0 -1
  298. package/lib/esm/specs/activities-parsing.integration.spec.js +0 -1847
  299. package/lib/esm/specs/activity-duration-stream.integration.spec.js +0 -57
  300. package/lib/esm/specs/fixtures/streams/strava/rides/3171472783.json +0 -52534
  301. package/lib/esm/specs/fixtures/streams/strava/rides/3171487458.json +0 -78818
  302. package/lib/esm/specs/fixtures/streams/strava/rides/343080886.json +0 -105090
  303. package/lib/esm/specs/fixtures/streams/strava/rides/5910143591.json +0 -110711
  304. package/lib/esm/specs/fixtures/streams/strava/runs/2451375851.json +0 -74846
  305. package/lib/esm/specs/fixtures/streams/strava/runs/2709634581.json +0 -66817
  306. package/lib/esm/specs/fixtures/streams/strava/runs/3156040843.json +0 -17594
  307. package/lib/esm/specs/fixtures/streams/strava/runs/3182900697.json +0 -17322
  308. package/lib/esm/specs/fixtures/streams/strava/runs/3183465494.json +0 -20463
  309. package/lib/esm/specs/fixtures/streams/strava/runs/3183490558.json +0 -58202
  310. package/lib/esm/specs/spec-utils.js +0 -159
  311. package/lib/esm/specs/strava-streams-compliance.spec.js +0 -951
  312. package/lib/esm/stats/stats.class.abstract.js +0 -32
  313. package/lib/esm/stats/stats.class.interface.js +0 -1
  314. package/lib/esm/stats/stats.json.interface.js +0 -1
  315. package/lib/esm/streams/compressed.stream.interface.js +0 -12
  316. package/lib/esm/streams/ibi-stream.js +0 -43
  317. package/lib/esm/streams/low-pass.stream.filter.js +0 -9
  318. package/lib/esm/streams/stream.filter.interface.js +0 -1
  319. package/lib/esm/streams/stream.interface.js +0 -1
  320. package/lib/esm/streams/stream.js +0 -72
  321. package/lib/esm/streams/stream.spec.js +0 -168
  322. package/lib/esm/tiles/tile.settings.interface.js +0 -41
  323. package/lib/esm/users/settings/dashboard/user.dashboard.settings.interface.js +0 -13
  324. package/lib/esm/users/settings/user.app.settings.interface.js +0 -5
  325. package/lib/esm/users/settings/user.chart.settings.interface.js +0 -23
  326. package/lib/esm/users/settings/user.map.settings.interface.js +0 -22
  327. package/lib/esm/users/settings/user.my-tracks.settings.interface.js +0 -1
  328. package/lib/esm/users/settings/user.settings.interface.js +0 -1
  329. package/lib/esm/users/settings/user.stats-settings.interface.js +0 -1
  330. package/lib/esm/users/settings/user.summaries.settings.interface.js +0 -1
  331. package/lib/esm/users/settings/user.unit.settings.interface.js +0 -73
  332. package/lib/esm/users/user.account.privileges.interface.js +0 -1
  333. package/lib/esm/users/user.export-to-csv.settings.interface.js +0 -1
  334. package/lib/esm/users/user.interface.js +0 -1
  335. package/lib/esm/users/user.js +0 -38
  336. package/lib/esm/users/user.service.meta.interface.js +0 -1
@@ -1,16 +0,0 @@
1
- import { ActivityTypeGroups, ActivityTypes, ActivityTypesHelper } from './activity.types';
2
- describe('ActivityTypes', () => {
3
- beforeEach(() => { });
4
- it('get the correct activity group', () => {
5
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Running)).toBe(ActivityTypeGroups.Running);
6
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Cycling)).toBe(ActivityTypeGroups.Cycling);
7
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Crossfit)).toBe(ActivityTypeGroups.Performance);
8
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.IndoorRowing)).toBe(ActivityTypeGroups.IndoorSports);
9
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Climbing)).toBe(ActivityTypeGroups.OutdoorAdventures);
10
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.AlpineSkiing)).toBe(ActivityTypeGroups.WinterSports);
11
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Wakeboarding)).toBe(ActivityTypeGroups.WaterSports);
12
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Diving)).toBe(ActivityTypeGroups.Diving);
13
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Tennis)).toBe(ActivityTypeGroups.TeamRacket);
14
- expect(ActivityTypesHelper.getActivityGroupForActivityType(ActivityTypes.Workout)).toBe(ActivityTypeGroups.Unspecified);
15
- });
16
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,26 +0,0 @@
1
- import { isNumber } from '../../events/utilities/helpers';
2
- export class Device {
3
- constructor(type) {
4
- this.type = type || 'Unknown';
5
- }
6
- toJSON() {
7
- return {
8
- type: this.type,
9
- index: isNumber(this.index) ? this.index || null : null,
10
- batteryStatus: this.batteryStatus || null,
11
- batteryLevel: this.batteryLevel || null,
12
- name: this.name || null,
13
- batteryVoltage: this.batteryVoltage || null,
14
- manufacturer: this.manufacturer || null,
15
- serialNumber: this.serialNumber || null,
16
- product: this.product || null,
17
- swInfo: this.swInfo || null,
18
- hwInfo: this.hwInfo || null,
19
- antDeviceNumber: this.antDeviceNumber || null,
20
- antTransmissionType: this.antTransmissionType || null,
21
- antNetwork: this.antNetwork || null,
22
- sourceType: this.sourceType || null,
23
- cumOperatingTime: this.cumOperatingTime || null
24
- };
25
- }
26
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,8 +0,0 @@
1
- export const GNSS_DEGREES_PRECISION_NUMBER_OF_DECIMAL_PLACES = 7;
2
- export const ALTITUDE_PRECISION_NUMBER_OF_DECIMAL_PLACES = 2;
3
- export const DISTANCE_PRECISION_NUMBER_OF_DECIMAL_PLACES = 1;
4
- export const SPEED_PRECISION_NUMBER_OF_DECIMAL_PLACES = 2;
5
- export const HEART_RATE_PRECISION_NUMBER_OF_DECIMAL_PLACES = 1;
6
- export const CADENCE_PRECISION_NUMBER_OF_DECIMAL_PLACES = 1;
7
- export const POWER_PRECISION_NUMBER_OF_DECIMAL_PLACES = 1;
8
- export const TEMPERATURE_PRECISION_NUMBER_OF_DECIMAL_PLACES = 2;
@@ -1 +0,0 @@
1
- export {};
@@ -1,37 +0,0 @@
1
- export class Creator {
2
- constructor(name, productId, manufacturer, swInfo, hwInfo, serialNumber, isRecognized) {
3
- this.devices = [];
4
- this.name = name;
5
- if (productId) {
6
- this.productId = productId;
7
- }
8
- if (manufacturer) {
9
- this.manufacturer = manufacturer;
10
- }
11
- if (swInfo) {
12
- this.swInfo = swInfo;
13
- }
14
- if (hwInfo) {
15
- this.hwInfo = hwInfo;
16
- }
17
- if (serialNumber) {
18
- this.serialNumber = serialNumber;
19
- }
20
- this.isRecognized = !!isRecognized;
21
- }
22
- toJSON() {
23
- return {
24
- name: this.name,
25
- manufacturer: this.manufacturer,
26
- isRecognized: this.isRecognized,
27
- productId: this.productId,
28
- serialNumber: this.serialNumber ? this.serialNumber : null,
29
- swInfo: this.swInfo ? this.swInfo : null,
30
- hwInfo: this.hwInfo ? this.hwInfo : null,
31
- devices: this.devices.reduce((devicesArray, device) => {
32
- devicesArray.push(device.toJSON());
33
- return devicesArray;
34
- }, [])
35
- };
36
- }
37
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,25 +0,0 @@
1
- import { Creator } from './creator';
2
- describe('Creator', () => {
3
- let creator;
4
- beforeEach(() => {
5
- creator = new Creator('name');
6
- });
7
- it('should export correctly to JSON', () => {
8
- creator.hwInfo = 'HWInfo';
9
- creator.swInfo = 'SWInfo';
10
- creator.serialNumber = 'SerialNumber';
11
- creator.manufacturer = 'fake';
12
- creator.isRecognized = true;
13
- creator.productId = '666';
14
- expect(creator.toJSON()).toEqual({
15
- name: 'name',
16
- isRecognized: true,
17
- productId: '666',
18
- manufacturer: 'fake',
19
- serialNumber: 'SerialNumber',
20
- swInfo: 'SWInfo',
21
- hwInfo: 'HWInfo',
22
- devices: []
23
- });
24
- });
25
- });
@@ -1,4 +0,0 @@
1
- import { DataBoolean } from './data.boolean';
2
- export class DataActiveLap extends DataBoolean {
3
- }
4
- DataActiveLap.type = 'Active Lap';
@@ -1,4 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataActiveLengths extends DataNumber {
3
- }
4
- DataActiveLengths.type = 'Active Lengths';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAerobicTrainingEffect extends DataNumber {
3
- getDisplayValue() {
4
- return this.value.toFixed(1);
5
- }
6
- }
7
- DataAerobicTrainingEffect.type = 'Aerobic Training Effect';
8
- DataAerobicTrainingEffect.displayType = DataAerobicTrainingEffect.type;
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAnaerobicTrainingEffect extends DataNumber {
3
- getDisplayValue() {
4
- return this.value.toFixed(1);
5
- }
6
- }
7
- DataAnaerobicTrainingEffect.type = 'Anaerobic Training Effect';
8
- DataAnaerobicTrainingEffect.displayType = DataAnaerobicTrainingEffect.type;
@@ -1,4 +0,0 @@
1
- import { DataStanceTimeBalance } from './data-stance-time-balance';
2
- export class DataStanceTimeBalanceLeft extends DataStanceTimeBalance {
3
- }
4
- DataStanceTimeBalanceLeft.type = 'Stance Time Balance Left';
@@ -1,4 +0,0 @@
1
- import { DataStanceTimeBalance } from './data-stance-time-balance';
2
- export class DataStanceTimeBalanceRight extends DataStanceTimeBalance {
3
- }
4
- DataStanceTimeBalanceRight.type = 'Stance Time Balance Right';
@@ -1,3 +0,0 @@
1
- import { DataPercent } from './data.percent';
2
- export class DataStanceTimeBalance extends DataPercent {
3
- }
@@ -1,78 +0,0 @@
1
- import { DataSpeedFeetPerMinute, DataSpeedFeetPerSecond, DataSpeedKilometersPerHour, DataSpeedKnots, DataSpeedMetersPerMinute, DataSpeedMilesPerHour, DataSpeed } from './data.speed';
2
- import { DataPace, DataPaceMinutesPerMile } from './data.pace';
3
- import { DataSwimPace, DataSwimPaceMinutesPer100Yard } from './data.swim-pace';
4
- import { DataGradeAdjustedSpeedFeetPerMinute, DataGradeAdjustedSpeedFeetPerSecond, DataGradeAdjustedSpeedKilometersPerHour, DataGradeAdjustedSpeedKnots, DataGradeAdjustedSpeedMetersPerMinute, DataGradeAdjustedSpeedMilesPerHour } from './data.grade-adjusted-speed';
5
- import { DataGradeAdjustedPace, DataGradeAdjustedPaceMinutesPerMile } from './data.grade-adjusted-pace';
6
- import { DataVerticalSpeedFeetPerHour, DataVerticalSpeedFeetPerMinute, DataVerticalSpeedFeetPerSecond, DataVerticalSpeedKilometerPerHour, DataVerticalSpeedMetersPerHour, DataVerticalSpeedMetersPerMinute, DataVerticalSpeedMilesPerHour } from './data.vertical-speed';
7
- import { DynamicDataLoader } from './data.store';
8
- import { DataDistanceMiles } from './data.distance';
9
- describe('DataStore', () => {
10
- const unitDerivedDataTypes = [
11
- DataSpeedKilometersPerHour.type,
12
- DataSpeedMilesPerHour.type,
13
- DataSpeedFeetPerSecond.type,
14
- DataSpeedFeetPerMinute.type,
15
- DataSpeedMetersPerMinute.type,
16
- DataSpeedKnots.type,
17
- DataPaceMinutesPerMile.type,
18
- DataSwimPaceMinutesPer100Yard.type,
19
- DataGradeAdjustedSpeedKilometersPerHour.type,
20
- DataGradeAdjustedSpeedMilesPerHour.type,
21
- DataGradeAdjustedSpeedFeetPerSecond.type,
22
- DataGradeAdjustedSpeedFeetPerMinute.type,
23
- DataGradeAdjustedSpeedMetersPerMinute.type,
24
- DataGradeAdjustedSpeedKnots.type,
25
- DataGradeAdjustedPaceMinutesPerMile.type,
26
- DataVerticalSpeedFeetPerSecond.type,
27
- DataVerticalSpeedMetersPerMinute.type,
28
- DataVerticalSpeedFeetPerMinute.type,
29
- DataVerticalSpeedMetersPerHour.type,
30
- DataVerticalSpeedFeetPerHour.type,
31
- DataVerticalSpeedKilometerPerHour.type,
32
- DataVerticalSpeedMilesPerHour.type,
33
- DataDistanceMiles.type
34
- ];
35
- const speedDerivedDataTypes = [DataPace.type, DataGradeAdjustedPace.type, DataSwimPace.type];
36
- it('should get the correct unitbased datatypes', () => {
37
- // @todo here we should think
38
- expect(DynamicDataLoader.allUnitDerivedDataTypes.sort()).toEqual(unitDerivedDataTypes.sort());
39
- });
40
- describe('getUnitBasedDataTypesFromDataTypes', () => {
41
- it('should include derived types by default', () => {
42
- const types = [DataSpeedKilometersPerHour.type, DataPace.type];
43
- const settings = {
44
- speedUnits: [DataSpeedKilometersPerHour.type],
45
- swimPaceUnits: [],
46
- paceUnits: [DataPaceMinutesPerMile.type],
47
- gradeAdjustedSpeedUnits: [],
48
- gradeAdjustedPaceUnits: [],
49
- verticalSpeedUnits: [],
50
- distanceUnits: [],
51
- elevationUnits: [],
52
- temperatureUnits: [],
53
- weightUnits: []
54
- };
55
- const result = DynamicDataLoader.getUnitBasedDataTypesFromDataTypes([DataSpeed.type], settings);
56
- expect(result).toContain(DataPaceMinutesPerMile.type);
57
- });
58
- it('should exclude derived types when includeDerivedTypes is false', () => {
59
- const settings = {
60
- speedUnits: [DataSpeedKilometersPerHour.type],
61
- swimPaceUnits: [],
62
- paceUnits: [DataPaceMinutesPerMile.type],
63
- gradeAdjustedSpeedUnits: [],
64
- gradeAdjustedPaceUnits: [],
65
- verticalSpeedUnits: [],
66
- distanceUnits: [],
67
- elevationUnits: [],
68
- temperatureUnits: [],
69
- weightUnits: []
70
- };
71
- const result = DynamicDataLoader.getUnitBasedDataTypesFromDataTypes([DataSpeed.type], settings, {
72
- includeDerivedTypes: false
73
- });
74
- expect(result).toContain(DataSpeedKilometersPerHour.type);
75
- expect(result).not.toContain(DataPaceMinutesPerMile.type);
76
- });
77
- });
78
- });
@@ -1,4 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataTotalCycles extends DataNumber {
3
- }
4
- DataTotalCycles.type = 'Total Cycles';
@@ -1,5 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAbsolutePressure extends DataNumber {
3
- }
4
- DataAbsolutePressure.type = 'Absolute Pressure';
5
- DataAbsolutePressure.unit = 'hpa';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAccumulatedPower extends DataNumber {
3
- getDisplayValue() {
4
- return Math.round(this.value);
5
- }
6
- }
7
- DataAccumulatedPower.type = 'Accumulated Power';
8
- DataAccumulatedPower.unit = 'watts';
@@ -1,7 +0,0 @@
1
- import { DataArray } from './data.array';
2
- export class DataActivityTypes extends DataArray {
3
- getDisplayValue() {
4
- return this.getValue().join(', ');
5
- }
6
- }
7
- DataActivityTypes.type = 'Activity Types';
@@ -1,4 +0,0 @@
1
- import { DataAirPower } from './data.air-power';
2
- export class DataAirPowerAvg extends DataAirPower {
3
- }
4
- DataAirPowerAvg.type = 'Average Air Power';
@@ -1,4 +0,0 @@
1
- import { DataAirPower } from './data.air-power';
2
- export class DataAirPowerMax extends DataAirPower {
3
- }
4
- DataAirPowerMax.type = 'Maximum Air Power';
@@ -1,4 +0,0 @@
1
- import { DataAirPower } from './data.air-power';
2
- export class DataAirPowerMin extends DataAirPower {
3
- }
4
- DataAirPowerMin.type = 'Minimum Air Power';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAirPower extends DataNumber {
3
- getDisplayValue() {
4
- return Math.round(this.value);
5
- }
6
- }
7
- DataAirPower.type = 'Air Power';
8
- DataAirPower.unit = 'watt'; // See https://itknowledgeexchange.techtarget.com/writing-for-business/do-you-capitalize-units-of-measurement-named-for-people/
@@ -1,4 +0,0 @@
1
- import { DataString } from './data.string';
2
- export class DataAltiBaroProfile extends DataString {
3
- }
4
- DataAltiBaroProfile.type = 'Alti Baro Profile';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataAltitudeAvg extends DataAltitude {
3
- }
4
- DataAltitudeAvg.type = 'Average Altitude';
@@ -1,5 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataGPSAltitude extends DataAltitude {
3
- }
4
- DataGPSAltitude.type = 'Altitude GPS';
5
- DataGPSAltitude.unit = 'm';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataAltitudeMax extends DataAltitude {
3
- }
4
- DataAltitudeMax.type = 'Maximum Altitude';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataAltitudeMin extends DataAltitude {
3
- }
4
- DataAltitudeMin.type = 'Minimum Altitude';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataAltitudeSmooth extends DataAltitude {
3
- }
4
- DataAltitudeSmooth.type = 'Altitude Smooth';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataAltitude extends DataNumber {
3
- getDisplayValue() {
4
- return Math.round(this.getValue());
5
- }
6
- }
7
- DataAltitude.type = 'Altitude';
8
- DataAltitude.unit = 'm';
@@ -1,13 +0,0 @@
1
- import { DataBare } from './data.bare';
2
- export class DataArray extends DataBare {
3
- constructor(value) {
4
- super(value);
5
- this.value = value;
6
- }
7
- getValue() {
8
- return this.value;
9
- }
10
- isValueTypeValid(value) {
11
- return Array.isArray(value);
12
- }
13
- }
@@ -1,4 +0,0 @@
1
- import { DataDuration } from './data.duration';
2
- export class DataAscentTime extends DataDuration {
3
- }
4
- DataAscentTime.type = 'Ascent Time';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataAscent extends DataAltitude {
3
- }
4
- DataAscent.type = 'Ascent';
@@ -1,5 +0,0 @@
1
- import { DataDistance } from './data.distance';
2
- export class DataAutoLapDistance extends DataDistance {
3
- }
4
- DataAutoLapDistance.type = 'Auto Lap Distance';
5
- DataAutoLapDistance.unit = 'm';
@@ -1,4 +0,0 @@
1
- import { DataDuration } from './data.duration';
2
- export class DataAutoLapDuration extends DataDuration {
3
- }
4
- DataAutoLapDuration.type = 'Auto Lap Duration';
@@ -1,7 +0,0 @@
1
- import { DataBoolean } from './data.boolean';
2
- export class DataAutoLapUsed extends DataBoolean {
3
- getDisplayValue() {
4
- return this.getValue() ? 'Yes' : 'No';
5
- }
6
- }
7
- DataAutoLapUsed.type = 'Auto Lap';
@@ -1,7 +0,0 @@
1
- import { DataBoolean } from './data.boolean';
2
- export class DataAutoPauseUsed extends DataBoolean {
3
- getDisplayValue() {
4
- return this.getValue() ? 'Yes' : 'No';
5
- }
6
- }
7
- DataAutoPauseUsed.type = 'Auto Pause';
@@ -1,4 +0,0 @@
1
- import { DataDistance } from './data.distance';
2
- export class DataAvgStrideLength extends DataDistance {
3
- }
4
- DataAvgStrideLength.type = 'Avg Stride Length';
@@ -1,6 +0,0 @@
1
- import { DataPercent } from './data.percent';
2
- export class DataBalance extends DataPercent {
3
- getDisplayValue() {
4
- return Math.round(this.value);
5
- }
6
- }
@@ -1,4 +0,0 @@
1
- import { Data } from './data';
2
- export class DataBare extends Data {
3
- }
4
- DataBare.unit = ''; // Bare data have no unit but empty string
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataBatteryCharge extends DataNumber {
3
- getDisplayValue() {
4
- return this.getValue().toFixed(3);
5
- }
6
- }
7
- DataBatteryCharge.type = 'Battery Charge';
8
- DataBatteryCharge.unit = '%';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataBatteryConsumption extends DataNumber {
3
- getDisplayValue() {
4
- return this.getValue().toFixed(2);
5
- }
6
- }
7
- DataBatteryConsumption.type = 'Battery Consumption';
8
- DataBatteryConsumption.unit = '%';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataBatteryCurrent extends DataNumber {
3
- getDisplayValue() {
4
- return this.getValue().toFixed(3);
5
- }
6
- }
7
- DataBatteryCurrent.type = 'Battery Current';
8
- DataBatteryCurrent.unit = 'mA';
@@ -1,4 +0,0 @@
1
- import { DataDuration } from './data.duration';
2
- export class DataBatteryLifeEstimation extends DataDuration {
3
- }
4
- DataBatteryLifeEstimation.type = 'Battery Life Est.';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataBatteryVoltage extends DataNumber {
3
- getDisplayValue() {
4
- return this.getValue().toFixed(3);
5
- }
6
- }
7
- DataBatteryVoltage.type = 'Battery Voltage';
8
- DataBatteryVoltage.unit = 'V';
@@ -1,7 +0,0 @@
1
- import { DataBoolean } from './data.boolean';
2
- export class DataBikePodUsed extends DataBoolean {
3
- getDisplayValue() {
4
- return this.getValue() ? 'Yes' : 'No';
5
- }
6
- }
7
- DataBikePodUsed.type = 'Bike Pod';
@@ -1,9 +0,0 @@
1
- import { DataBare } from './data.bare';
2
- export class DataBoolean extends DataBare {
3
- constructor(value) {
4
- super(value);
5
- }
6
- isValueTypeValid(value) {
7
- return typeof value === 'boolean';
8
- }
9
- }
@@ -1,4 +0,0 @@
1
- import { DataCadence } from './data.cadence';
2
- export class DataCadenceAvg extends DataCadence {
3
- }
4
- DataCadenceAvg.type = 'Average Cadence';
@@ -1,4 +0,0 @@
1
- import { DataCadence } from './data.cadence';
2
- export class DataCadenceMax extends DataCadence {
3
- }
4
- DataCadenceMax.type = 'Maximum Cadence';
@@ -1,4 +0,0 @@
1
- import { DataCadence } from './data.cadence';
2
- export class DataCadenceMin extends DataCadence {
3
- }
4
- DataCadenceMin.type = 'Minimum Cadence';
@@ -1,8 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataCadence extends DataNumber {
3
- getDisplayValue() {
4
- return Math.round(this.getValue());
5
- }
6
- }
7
- DataCadence.type = 'Cadence';
8
- DataCadence.unit = 'rpm';
@@ -1,3 +0,0 @@
1
- import { DataNumber } from './data.number';
2
- export class DataCyclingDynamics extends DataNumber {
3
- }
@@ -1,37 +0,0 @@
1
- import { DataCyclingDynamics } from './data.cycling-dynamics';
2
- /**
3
- * Rider position "events" as described in FIT SDK "typedef FIT_ENUM FIT_RIDER_POSITION_TYPE;":
4
- */
5
- export var RiderPosition;
6
- (function (RiderPosition) {
7
- RiderPosition[RiderPosition["SEATED"] = 0] = "SEATED";
8
- RiderPosition[RiderPosition["STANDING"] = 1] = "STANDING";
9
- RiderPosition[RiderPosition["TRANSITION_TO_SEATED"] = 2] = "TRANSITION_TO_SEATED";
10
- RiderPosition[RiderPosition["TRANSITION_TO_STANDING"] = 3] = "TRANSITION_TO_STANDING";
11
- })(RiderPosition || (RiderPosition = {}));
12
- export class DataCyclingPosition extends DataCyclingDynamics {
13
- }
14
- // The below stats could be implemented based on RiderPosition events
15
- /*
16
- export class DataCyclingAvgStandingPower extends DataCyclingPosition {
17
- static type = 'Cycling Avg Standing Power';
18
- static unit = 'watt';
19
- }
20
-
21
- export class DataCyclingMaxStandingPower extends DataCyclingPosition {
22
- static type = 'Cycling Max Standing Power';
23
- static unit = 'watt';
24
- }
25
-
26
- // field: max_power_position
27
- export class DataCyclingMaxSeatedPower extends DataCyclingPosition {
28
- static type = 'Cycling Max Seated Power';
29
- static unit = 'watt';
30
- }
31
-
32
- // field: avg_power_position
33
- export class DataCyclingAvgSeatedPower extends DataCyclingPosition {
34
- static type = 'Cycling Avg Seated Power';
35
- static unit = 'watt';
36
- }
37
- */
@@ -1,5 +0,0 @@
1
- import { DataCyclingPosition } from './data.cycling-position';
2
- export class DataCyclingSeatedTime extends DataCyclingPosition {
3
- }
4
- DataCyclingSeatedTime.type = 'Cycling Seated Time';
5
- DataCyclingSeatedTime.unit = 's';
@@ -1,5 +0,0 @@
1
- import { DataCyclingPosition } from './data.cycling-position';
2
- export class DataCyclingStandingTime extends DataCyclingPosition {
3
- }
4
- DataCyclingStandingTime.type = 'Cycling Standing Time';
5
- DataCyclingStandingTime.unit = 's';
@@ -1,4 +0,0 @@
1
- import { DataDuration } from './data.duration';
2
- export class DataDescentTime extends DataDuration {
3
- }
4
- DataDescentTime.type = 'Descent Time';
@@ -1,4 +0,0 @@
1
- import { DataAltitude } from './data.altitude';
2
- export class DataDescent extends DataAltitude {
3
- }
4
- DataDescent.type = 'Descent';
@@ -1,4 +0,0 @@
1
- import { DataString } from './data.string';
2
- export class DataDescription extends DataString {
3
- }
4
- DataDescription.type = 'Description';
@@ -1,4 +0,0 @@
1
- import { DataString } from './data.string';
2
- export class DataDeviceLocation extends DataString {
3
- }
4
- DataDeviceLocation.type = 'Device Location';
@@ -1,7 +0,0 @@
1
- import { DataArray } from './data.array';
2
- export class DataDeviceNames extends DataArray {
3
- getDisplayValue() {
4
- return this.getValue().join(', ');
5
- }
6
- }
7
- DataDeviceNames.type = 'Device Names';