@sports-alliance/sports-lib 7.0.8 → 7.0.10

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 (351) hide show
  1. package/lib/cjs/data/data.array.d.ts +2 -3
  2. package/lib/cjs/data/data.array.js +1 -1
  3. package/lib/cjs/data/data.bare.d.ts +2 -1
  4. package/lib/cjs/data/data.d.ts +5 -5
  5. package/lib/cjs/data/data.number.d.ts +1 -2
  6. package/lib/cjs/data/data.position.d.ts +2 -3
  7. package/lib/cjs/data/data.position.js +1 -1
  8. package/lib/cjs/data/data.string.d.ts +2 -3
  9. package/lib/cjs/data/data.string.js +1 -1
  10. package/lib/esm/data/data.array.d.ts +2 -3
  11. package/lib/esm/data/data.bare.d.ts +2 -1
  12. package/lib/esm/data/data.d.ts +5 -5
  13. package/lib/esm/data/data.number.d.ts +1 -2
  14. package/lib/esm/data/data.position.d.ts +2 -3
  15. package/lib/esm/data/data.string.d.ts +2 -3
  16. package/lib/esm/index.js +12034 -152
  17. package/package.json +2 -2
  18. package/.editorconfig +0 -14
  19. package/.eslintignore +0 -4
  20. package/.eslintrc.js +0 -9
  21. package/.prettierignore +0 -25
  22. package/.prettierrc.json +0 -12
  23. package/CODE_OF_CONDUCT.md +0 -76
  24. package/jest.config.js +0 -23
  25. package/lib/esm/activities/activity-parsing-options.js +0 -19
  26. package/lib/esm/activities/activity.interface.js +0 -1
  27. package/lib/esm/activities/activity.js +0 -281
  28. package/lib/esm/activities/activity.json.interface.js +0 -1
  29. package/lib/esm/activities/activity.spec.js +0 -348
  30. package/lib/esm/activities/activity.types.js +0 -1046
  31. package/lib/esm/activities/activityt-types.spec.js +0 -16
  32. package/lib/esm/activities/devices/device.interface.js +0 -1
  33. package/lib/esm/activities/devices/device.js +0 -26
  34. package/lib/esm/activities/devices/device.json.interface.js +0 -1
  35. package/lib/esm/constants/constants.js +0 -8
  36. package/lib/esm/creators/creator.interface.js +0 -1
  37. package/lib/esm/creators/creator.js +0 -37
  38. package/lib/esm/creators/creator.json.interface.js +0 -1
  39. package/lib/esm/creators/creator.spec.js +0 -25
  40. package/lib/esm/data/data-active-lap.js +0 -4
  41. package/lib/esm/data/data-active-lengths.js +0 -4
  42. package/lib/esm/data/data-aerobic-training-effect.js +0 -8
  43. package/lib/esm/data/data-anaerobic-training-effect.js +0 -8
  44. package/lib/esm/data/data-stance-time-balance-left.js +0 -4
  45. package/lib/esm/data/data-stance-time-balance-right.js +0 -4
  46. package/lib/esm/data/data-stance-time-balance.js +0 -3
  47. package/lib/esm/data/data-store.spec.js +0 -78
  48. package/lib/esm/data/data-total-cycles.js +0 -4
  49. package/lib/esm/data/data.absolute-pressure.js +0 -5
  50. package/lib/esm/data/data.accumulated-power.js +0 -8
  51. package/lib/esm/data/data.activity-types.js +0 -7
  52. package/lib/esm/data/data.air-power-avg.js +0 -4
  53. package/lib/esm/data/data.air-power-max.js +0 -4
  54. package/lib/esm/data/data.air-power-min.js +0 -4
  55. package/lib/esm/data/data.air-power.js +0 -8
  56. package/lib/esm/data/data.alti-baro-profile.js +0 -4
  57. package/lib/esm/data/data.altitude-avg.js +0 -4
  58. package/lib/esm/data/data.altitude-gps.js +0 -5
  59. package/lib/esm/data/data.altitude-max.js +0 -4
  60. package/lib/esm/data/data.altitude-min.js +0 -4
  61. package/lib/esm/data/data.altitude-smooth.js +0 -4
  62. package/lib/esm/data/data.altitude.js +0 -8
  63. package/lib/esm/data/data.array.js +0 -13
  64. package/lib/esm/data/data.ascent-time.js +0 -4
  65. package/lib/esm/data/data.ascent.js +0 -4
  66. package/lib/esm/data/data.auto-lap-distance.js +0 -5
  67. package/lib/esm/data/data.auto-lap-duration.js +0 -4
  68. package/lib/esm/data/data.auto-lap-used.js +0 -7
  69. package/lib/esm/data/data.auto-pause-used.js +0 -7
  70. package/lib/esm/data/data.avg-stride-length.js +0 -4
  71. package/lib/esm/data/data.balance.js +0 -6
  72. package/lib/esm/data/data.bare.js +0 -4
  73. package/lib/esm/data/data.battery-charge.js +0 -8
  74. package/lib/esm/data/data.battery-consumption.js +0 -8
  75. package/lib/esm/data/data.battery-current.js +0 -8
  76. package/lib/esm/data/data.battery-life-estimation.js +0 -4
  77. package/lib/esm/data/data.battery-voltage.js +0 -8
  78. package/lib/esm/data/data.bike-pod-used.js +0 -7
  79. package/lib/esm/data/data.boolean.js +0 -9
  80. package/lib/esm/data/data.cadence-avg.js +0 -4
  81. package/lib/esm/data/data.cadence-max.js +0 -4
  82. package/lib/esm/data/data.cadence-min.js +0 -4
  83. package/lib/esm/data/data.cadence.js +0 -8
  84. package/lib/esm/data/data.cycling-dynamics.js +0 -3
  85. package/lib/esm/data/data.cycling-position.js +0 -37
  86. package/lib/esm/data/data.cycling-seated-time.js +0 -5
  87. package/lib/esm/data/data.cycling-standing-time.js +0 -5
  88. package/lib/esm/data/data.descent-time.js +0 -4
  89. package/lib/esm/data/data.descent.js +0 -4
  90. package/lib/esm/data/data.description.js +0 -4
  91. package/lib/esm/data/data.device-location.js +0 -4
  92. package/lib/esm/data/data.device-names.js +0 -7
  93. package/lib/esm/data/data.distance.js +0 -15
  94. package/lib/esm/data/data.duration.js +0 -56
  95. package/lib/esm/data/data.ehpe.js +0 -5
  96. package/lib/esm/data/data.enabled-navigation-systems.js +0 -4
  97. package/lib/esm/data/data.end-altitude.js +0 -4
  98. package/lib/esm/data/data.end-position.js +0 -4
  99. package/lib/esm/data/data.energy.js +0 -8
  100. package/lib/esm/data/data.epoc.js +0 -5
  101. package/lib/esm/data/data.event.js +0 -3
  102. package/lib/esm/data/data.evpe.js +0 -4
  103. package/lib/esm/data/data.feeling.js +0 -15
  104. package/lib/esm/data/data.foot-pod-used.js +0 -7
  105. package/lib/esm/data/data.form-power.js +0 -4
  106. package/lib/esm/data/data.fused-altitude.js +0 -7
  107. package/lib/esm/data/data.fused-location.js +0 -7
  108. package/lib/esm/data/data.gnss-distance.js +0 -4
  109. package/lib/esm/data/data.grade-adjusted-pace-avg.js +0 -15
  110. package/lib/esm/data/data.grade-adjusted-pace-max.js +0 -15
  111. package/lib/esm/data/data.grade-adjusted-pace-min.js +0 -15
  112. package/lib/esm/data/data.grade-adjusted-pace.js +0 -25
  113. package/lib/esm/data/data.grade-adjusted-speed-avg.js +0 -46
  114. package/lib/esm/data/data.grade-adjusted-speed-max.js +0 -46
  115. package/lib/esm/data/data.grade-adjusted-speed-min.js +0 -46
  116. package/lib/esm/data/data.grade-adjusted-speed.js +0 -78
  117. package/lib/esm/data/data.grade-smooth.js +0 -7
  118. package/lib/esm/data/data.grade.js +0 -7
  119. package/lib/esm/data/data.ground-time.js +0 -8
  120. package/lib/esm/data/data.heart-rate-avg.js +0 -4
  121. package/lib/esm/data/data.heart-rate-max.js +0 -4
  122. package/lib/esm/data/data.heart-rate-min.js +0 -4
  123. package/lib/esm/data/data.heart-rate-used.js +0 -7
  124. package/lib/esm/data/data.heart-rate-zone-five-duration.js +0 -4
  125. package/lib/esm/data/data.heart-rate-zone-four-duration.js +0 -4
  126. package/lib/esm/data/data.heart-rate-zone-one-duration.js +0 -4
  127. package/lib/esm/data/data.heart-rate-zone-three-duration.js +0 -4
  128. package/lib/esm/data/data.heart-rate-zone-two-duration.js +0 -4
  129. package/lib/esm/data/data.heart-rate.js +0 -8
  130. package/lib/esm/data/data.ibi.js +0 -8
  131. package/lib/esm/data/data.interface.js +0 -5
  132. package/lib/esm/data/data.js +0 -62
  133. package/lib/esm/data/data.json.interface.js +0 -1
  134. package/lib/esm/data/data.latitude-degrees.js +0 -5
  135. package/lib/esm/data/data.left-balance.js +0 -4
  136. package/lib/esm/data/data.leg-stiffness.js +0 -16
  137. package/lib/esm/data/data.longitude-degrees.js +0 -5
  138. package/lib/esm/data/data.moving-time.js +0 -4
  139. package/lib/esm/data/data.number-of-satellites.js +0 -7
  140. package/lib/esm/data/data.number-of.samples.js +0 -4
  141. package/lib/esm/data/data.number.js +0 -13
  142. package/lib/esm/data/data.pace-avg.js +0 -8
  143. package/lib/esm/data/data.pace-max.js +0 -8
  144. package/lib/esm/data/data.pace-min.js +0 -8
  145. package/lib/esm/data/data.pace.js +0 -46
  146. package/lib/esm/data/data.pause.js +0 -4
  147. package/lib/esm/data/data.peak-epoc.js +0 -7
  148. package/lib/esm/data/data.peak-training-effect.js +0 -4
  149. package/lib/esm/data/data.percent.js +0 -4
  150. package/lib/esm/data/data.pool-length.js +0 -5
  151. package/lib/esm/data/data.position.interface.js +0 -1
  152. package/lib/esm/data/data.position.js +0 -18
  153. package/lib/esm/data/data.power-avg.js +0 -4
  154. package/lib/esm/data/data.power-down.js +0 -4
  155. package/lib/esm/data/data.power-intensity-factor.js +0 -5
  156. package/lib/esm/data/data.power-left.js +0 -4
  157. package/lib/esm/data/data.power-max.js +0 -4
  158. package/lib/esm/data/data.power-min.js +0 -4
  159. package/lib/esm/data/data.power-normalized.js +0 -4
  160. package/lib/esm/data/data.power-pedal-smoothness-left.js +0 -4
  161. package/lib/esm/data/data.power-pedal-smoothness-right.js +0 -4
  162. package/lib/esm/data/data.power-pod-used.js +0 -7
  163. package/lib/esm/data/data.power-right.js +0 -4
  164. package/lib/esm/data/data.power-torque-effectiveness-left.js +0 -4
  165. package/lib/esm/data/data.power-torque-effectiveness-right.js +0 -4
  166. package/lib/esm/data/data.power-training-stress-score.js +0 -5
  167. package/lib/esm/data/data.power-up.js +0 -4
  168. package/lib/esm/data/data.power-work.js +0 -5
  169. package/lib/esm/data/data.power-zone-five-duration.js +0 -4
  170. package/lib/esm/data/data.power-zone-four-duration.js +0 -4
  171. package/lib/esm/data/data.power-zone-one-duration.js +0 -4
  172. package/lib/esm/data/data.power-zone-three-duration.js +0 -4
  173. package/lib/esm/data/data.power-zone-two-duration.js +0 -4
  174. package/lib/esm/data/data.power.js +0 -8
  175. package/lib/esm/data/data.recovery-time.js +0 -7
  176. package/lib/esm/data/data.rider-position-change-event.js +0 -8
  177. package/lib/esm/data/data.right-balance.js +0 -4
  178. package/lib/esm/data/data.rpe.js +0 -23
  179. package/lib/esm/data/data.satellite-5-best-snr.js +0 -4
  180. package/lib/esm/data/data.sea-level-pressure.js +0 -5
  181. package/lib/esm/data/data.spec.js +0 -25
  182. package/lib/esm/data/data.speed-avg.js +0 -46
  183. package/lib/esm/data/data.speed-max.js +0 -46
  184. package/lib/esm/data/data.speed-min.js +0 -46
  185. package/lib/esm/data/data.speed-zone-five-duration.js +0 -4
  186. package/lib/esm/data/data.speed-zone-four-duration.js +0 -4
  187. package/lib/esm/data/data.speed-zone-one-duration.js +0 -4
  188. package/lib/esm/data/data.speed-zone-three-duration.js +0 -4
  189. package/lib/esm/data/data.speed-zone-two-duration.js +0 -4
  190. package/lib/esm/data/data.speed.js +0 -88
  191. package/lib/esm/data/data.sport-profile-name.js +0 -4
  192. package/lib/esm/data/data.stance-time.js +0 -5
  193. package/lib/esm/data/data.start-altitude.js +0 -4
  194. package/lib/esm/data/data.start-event.js +0 -4
  195. package/lib/esm/data/data.start-position.js +0 -4
  196. package/lib/esm/data/data.step-length.js +0 -4
  197. package/lib/esm/data/data.steps-old.js +0 -4
  198. package/lib/esm/data/data.steps.js +0 -4
  199. package/lib/esm/data/data.stop-all-event.js +0 -4
  200. package/lib/esm/data/data.stop-event.js +0 -4
  201. package/lib/esm/data/data.store.export.spec.js +0 -66
  202. package/lib/esm/data/data.store.js +0 -1213
  203. package/lib/esm/data/data.string.js +0 -13
  204. package/lib/esm/data/data.stryd-altitude.js +0 -4
  205. package/lib/esm/data/data.stryd-distance.js +0 -4
  206. package/lib/esm/data/data.stryd-speed.js +0 -4
  207. package/lib/esm/data/data.swim-pace-avg.js +0 -8
  208. package/lib/esm/data/data.swim-pace-max.js +0 -8
  209. package/lib/esm/data/data.swim-pace-min.js +0 -8
  210. package/lib/esm/data/data.swim-pace.js +0 -19
  211. package/lib/esm/data/data.swolf-25m.js +0 -4
  212. package/lib/esm/data/data.swolf-50m.js +0 -4
  213. package/lib/esm/data/data.target-distance.js +0 -4
  214. package/lib/esm/data/data.target-heart-rate-zone.js +0 -4
  215. package/lib/esm/data/data.target-power-zone.js +0 -4
  216. package/lib/esm/data/data.target-speed-zone.js +0 -4
  217. package/lib/esm/data/data.target-time.js +0 -4
  218. package/lib/esm/data/data.temperature-avg.js +0 -4
  219. package/lib/esm/data/data.temperature-max.js +0 -4
  220. package/lib/esm/data/data.temperature-min.js +0 -4
  221. package/lib/esm/data/data.temperature.js +0 -8
  222. package/lib/esm/data/data.time.js +0 -6
  223. package/lib/esm/data/data.timer-time.js +0 -4
  224. package/lib/esm/data/data.vertical-oscillation.js +0 -5
  225. package/lib/esm/data/data.vertical-ratio.js +0 -5
  226. package/lib/esm/data/data.vertical-speed-avg.js +0 -53
  227. package/lib/esm/data/data.vertical-speed-max.js +0 -53
  228. package/lib/esm/data/data.vertical-speed-min.js +0 -53
  229. package/lib/esm/data/data.vertical-speed.js +0 -103
  230. package/lib/esm/data/data.vo2-max.js +0 -7
  231. package/lib/esm/data/ibi/data.ibi.filters.js +0 -52
  232. package/lib/esm/data/ibi/data.ibi.js +0 -98
  233. package/lib/esm/data/ibi/data.ibi.spec.js +0 -66
  234. package/lib/esm/duration/duration.class.abstract.js +0 -36
  235. package/lib/esm/duration/duration.class.interface.js +0 -1
  236. package/lib/esm/errors/duration-exceeded-event-lib.error.js +0 -9
  237. package/lib/esm/errors/empty-event-sports-libs.error.js +0 -9
  238. package/lib/esm/errors/event-lib.error.js +0 -8
  239. package/lib/esm/errors/lib.error.js +0 -6
  240. package/lib/esm/errors/parsing-event-lib.error.js +0 -9
  241. package/lib/esm/events/adapters/exporters/exporter.gpx.js +0 -75
  242. package/lib/esm/events/adapters/exporters/exporter.interface.js +0 -1
  243. package/lib/esm/events/adapters/exporters/exporter.json.js +0 -20
  244. package/lib/esm/events/adapters/file-type.enum.js +0 -7
  245. package/lib/esm/events/adapters/importers/fit/importer.fit.ant-plus.device.names.js +0 -25
  246. package/lib/esm/events/adapters/importers/fit/importer.fit.coros.device.names.js +0 -5
  247. package/lib/esm/events/adapters/importers/fit/importer.fit.development.device.names.js +0 -4
  248. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.device.names.js +0 -462
  249. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.data.js +0 -877
  250. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.js +0 -106
  251. package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.spec.js +0 -32
  252. package/lib/esm/events/adapters/importers/fit/importer.fit.hammerhead.device.names.js +0 -4
  253. package/lib/esm/events/adapters/importers/fit/importer.fit.integration.spec.js +0 -44
  254. package/lib/esm/events/adapters/importers/fit/importer.fit.js +0 -978
  255. package/lib/esm/events/adapters/importers/fit/importer.fit.lezyne.device.names.js +0 -3
  256. package/lib/esm/events/adapters/importers/fit/importer.fit.magellan.device.names.js +0 -5
  257. package/lib/esm/events/adapters/importers/fit/importer.fit.mapper.js +0 -231
  258. package/lib/esm/events/adapters/importers/fit/importer.fit.saris.device.names.js +0 -3
  259. package/lib/esm/events/adapters/importers/fit/importer.fit.spec.js +0 -326
  260. package/lib/esm/events/adapters/importers/fit/importer.fit.srm.device.names.js +0 -7
  261. package/lib/esm/events/adapters/importers/fit/importer.fit.suunto.device.names.js +0 -16
  262. package/lib/esm/events/adapters/importers/fit/importer.fit.wahoo.device.names.js +0 -10
  263. package/lib/esm/events/adapters/importers/gpx/gx-parser.js +0 -36
  264. package/lib/esm/events/adapters/importers/gpx/importer.gpx.integration.spec.js +0 -44
  265. package/lib/esm/events/adapters/importers/gpx/importer.gpx.js +0 -102
  266. package/lib/esm/events/adapters/importers/gpx/importer.gpx.mapper.js +0 -142
  267. package/lib/esm/events/adapters/importers/gpx/importer.gpx.spec.js +0 -71
  268. package/lib/esm/events/adapters/importers/json/importer.json.js +0 -160
  269. package/lib/esm/events/adapters/importers/sample-info.interface.js +0 -1
  270. package/lib/esm/events/adapters/importers/suunto/importer.suunto.activity.ids.js +0 -85
  271. package/lib/esm/events/adapters/importers/suunto/importer.suunto.device.names.js +0 -26
  272. package/lib/esm/events/adapters/importers/suunto/importer.suunto.integration.spec.js +0 -44
  273. package/lib/esm/events/adapters/importers/suunto/importer.suunto.json.js +0 -717
  274. package/lib/esm/events/adapters/importers/suunto/importer.suunto.sml.js +0 -125
  275. package/lib/esm/events/adapters/importers/tcx/importer.tcx.integration.spec.js +0 -46
  276. package/lib/esm/events/adapters/importers/tcx/importer.tcx.js +0 -442
  277. package/lib/esm/events/adapters/importers/tcx/importer.tcx.mapper.js +0 -91
  278. package/lib/esm/events/adapters/importers/tcx/utils.tcx.js +0 -36
  279. package/lib/esm/events/event.interface.js +0 -1
  280. package/lib/esm/events/event.js +0 -123
  281. package/lib/esm/events/event.json.interface.js +0 -1
  282. package/lib/esm/events/event.spec.js +0 -51
  283. package/lib/esm/events/utilities/activity.utilities.js +0 -1841
  284. package/lib/esm/events/utilities/activity.utilities.spec.js +0 -373
  285. package/lib/esm/events/utilities/event.utilities.js +0 -57
  286. package/lib/esm/events/utilities/grade-calculator/grade-calculator.js +0 -121
  287. package/lib/esm/events/utilities/grade-calculator/grade-calculator.spec.js +0 -93
  288. package/lib/esm/events/utilities/grade-calculator/low-pass-filter.js +0 -86
  289. package/lib/esm/events/utilities/helpers.js +0 -162
  290. package/lib/esm/geodesy/adapters/adapter.interface.js +0 -1
  291. package/lib/esm/geodesy/adapters/geolib.adapter.js +0 -28
  292. package/lib/esm/id/id.abstract.class.js +0 -9
  293. package/lib/esm/id/id.class.interface.js +0 -1
  294. package/lib/esm/id/id.class.spec.js +0 -13
  295. package/lib/esm/intensity-zones/intensity-zones.interface.js +0 -1
  296. package/lib/esm/intensity-zones/intensity-zones.js +0 -29
  297. package/lib/esm/intensity-zones/intensity-zones.json.interface.js +0 -1
  298. package/lib/esm/intensity-zones/intensity-zones.spec.js +0 -30
  299. package/lib/esm/laps/lap.interface.js +0 -1
  300. package/lib/esm/laps/lap.js +0 -29
  301. package/lib/esm/laps/lap.json.interface.js +0 -1
  302. package/lib/esm/laps/lap.types.js +0 -52
  303. package/lib/esm/meta-data/event-meta-data.interface.js +0 -6
  304. package/lib/esm/meta-data/meta-data.js +0 -57
  305. package/lib/esm/meta-data/meta-data.json.interface.js +0 -1
  306. package/lib/esm/privacy/privacy.class.interface.js +0 -5
  307. package/lib/esm/serializable/serializable.class.interface.js +0 -1
  308. package/lib/esm/service-tokens/oauth1-service-token.interface.js +0 -1
  309. package/lib/esm/service-tokens/oauth2-service-token.interface.js +0 -1
  310. package/lib/esm/specs/activities-parsing.integration.spec.js +0 -1847
  311. package/lib/esm/specs/activity-duration-stream.integration.spec.js +0 -57
  312. package/lib/esm/specs/fixtures/streams/strava/rides/3171472783.json +0 -52534
  313. package/lib/esm/specs/fixtures/streams/strava/rides/3171487458.json +0 -78818
  314. package/lib/esm/specs/fixtures/streams/strava/rides/343080886.json +0 -105090
  315. package/lib/esm/specs/fixtures/streams/strava/rides/5910143591.json +0 -110711
  316. package/lib/esm/specs/fixtures/streams/strava/runs/2451375851.json +0 -74846
  317. package/lib/esm/specs/fixtures/streams/strava/runs/2709634581.json +0 -66817
  318. package/lib/esm/specs/fixtures/streams/strava/runs/3156040843.json +0 -17594
  319. package/lib/esm/specs/fixtures/streams/strava/runs/3182900697.json +0 -17322
  320. package/lib/esm/specs/fixtures/streams/strava/runs/3183465494.json +0 -20463
  321. package/lib/esm/specs/fixtures/streams/strava/runs/3183490558.json +0 -58202
  322. package/lib/esm/specs/spec-utils.js +0 -159
  323. package/lib/esm/specs/strava-streams-compliance.spec.js +0 -951
  324. package/lib/esm/stats/stats.class.abstract.js +0 -32
  325. package/lib/esm/stats/stats.class.interface.js +0 -1
  326. package/lib/esm/stats/stats.json.interface.js +0 -1
  327. package/lib/esm/streams/compressed.stream.interface.js +0 -12
  328. package/lib/esm/streams/ibi-stream.js +0 -43
  329. package/lib/esm/streams/low-pass.stream.filter.js +0 -9
  330. package/lib/esm/streams/stream.filter.interface.js +0 -1
  331. package/lib/esm/streams/stream.interface.js +0 -1
  332. package/lib/esm/streams/stream.js +0 -72
  333. package/lib/esm/streams/stream.spec.js +0 -168
  334. package/lib/esm/tiles/tile.settings.interface.js +0 -41
  335. package/lib/esm/users/settings/dashboard/user.dashboard.settings.interface.js +0 -13
  336. package/lib/esm/users/settings/user.app.settings.interface.js +0 -5
  337. package/lib/esm/users/settings/user.chart.settings.interface.js +0 -23
  338. package/lib/esm/users/settings/user.map.settings.interface.js +0 -22
  339. package/lib/esm/users/settings/user.my-tracks.settings.interface.js +0 -1
  340. package/lib/esm/users/settings/user.settings.interface.js +0 -1
  341. package/lib/esm/users/settings/user.stats-settings.interface.js +0 -1
  342. package/lib/esm/users/settings/user.summaries.settings.interface.js +0 -1
  343. package/lib/esm/users/settings/user.unit.settings.interface.js +0 -73
  344. package/lib/esm/users/user.account.privileges.interface.js +0 -1
  345. package/lib/esm/users/user.export-to-csv.settings.interface.js +0 -1
  346. package/lib/esm/users/user.interface.js +0 -1
  347. package/lib/esm/users/user.js +0 -38
  348. package/lib/esm/users/user.service.meta.interface.js +0 -1
  349. package/tsconfig.cjs.json +0 -7
  350. package/tsconfig.esm.json +0 -8
  351. package/tsconfig.lib.json +0 -8
@@ -1,1213 +0,0 @@
1
- import { DataVerticalSpeed, DataVerticalSpeedFeetPerHour, DataVerticalSpeedFeetPerMinute, DataVerticalSpeedFeetPerSecond, DataVerticalSpeedKilometerPerHour, DataVerticalSpeedMetersPerHour, DataVerticalSpeedMetersPerMinute, DataVerticalSpeedMilesPerHour } from './data.vertical-speed';
2
- import { DataTemperature } from './data.temperature';
3
- import { DataSpeed, DataSpeedFeetPerMinute, DataSpeedFeetPerSecond, DataSpeedKilometersPerHour, DataSpeedKnots, DataSpeedMetersPerMinute, DataSpeedMilesPerHour } from './data.speed';
4
- import { DataSeaLevelPressure } from './data.sea-level-pressure';
5
- import { DataSatellite5BestSNR } from './data.satellite-5-best-snr';
6
- import { DataAbsolutePressure } from './data.absolute-pressure';
7
- import { DataAltitude } from './data.altitude';
8
- import { DataCadence } from './data.cadence';
9
- import { DataDistance, DataDistanceMiles } from './data.distance';
10
- import { DataDuration } from './data.duration';
11
- import { DataEHPE } from './data.ehpe';
12
- import { DataEVPE } from './data.evpe';
13
- import { DataHeartRate } from './data.heart-rate';
14
- import { DataLatitudeDegrees } from './data.latitude-degrees';
15
- import { DataLongitudeDegrees } from './data.longitude-degrees';
16
- import { DataNumberOfSatellites } from './data.number-of-satellites';
17
- import { DataPower } from './data.power';
18
- import { DataGPSAltitude } from './data.altitude-gps';
19
- import { DataAltitudeMin } from './data.altitude-min';
20
- import { DataAltitudeMax } from './data.altitude-max';
21
- import { DataVO2Max } from './data.vo2-max';
22
- import { DataVerticalSpeedMin, DataVerticalSpeedMinFeetPerHour, DataVerticalSpeedMinFeetPerMinute, DataVerticalSpeedMinFeetPerSecond, DataVerticalSpeedMinKilometerPerHour, DataVerticalSpeedMinMetersPerHour, DataVerticalSpeedMinMetersPerMinute, DataVerticalSpeedMinMilesPerHour } from './data.vertical-speed-min';
23
- import { DataVerticalSpeedMax, DataVerticalSpeedMaxFeetPerHour, DataVerticalSpeedMaxFeetPerMinute, DataVerticalSpeedMaxFeetPerSecond, DataVerticalSpeedMaxKilometerPerHour, DataVerticalSpeedMaxMetersPerHour, DataVerticalSpeedMaxMetersPerMinute, DataVerticalSpeedMaxMilesPerHour } from './data.vertical-speed-max';
24
- import { DataVerticalSpeedAvg, DataVerticalSpeedAvgFeetPerHour, DataVerticalSpeedAvgFeetPerMinute, DataVerticalSpeedAvgFeetPerSecond, DataVerticalSpeedAvgKilometerPerHour, DataVerticalSpeedAvgMetersPerHour, DataVerticalSpeedAvgMetersPerMinute, DataVerticalSpeedAvgMilesPerHour } from './data.vertical-speed-avg';
25
- import { DataTemperatureMin } from './data.temperature-min';
26
- import { DataTemperatureMax } from './data.temperature-max';
27
- import { DataTemperatureAvg } from './data.temperature-avg';
28
- import { DataSpeedMin, DataSpeedMinFeetPerMinute, DataSpeedMinFeetPerSecond, DataSpeedMinKilometersPerHour, DataSpeedMinKnots, DataSpeedMinMetersPerMinute, DataSpeedMinMilesPerHour } from './data.speed-min';
29
- import { DataSpeedMax, DataSpeedMaxFeetPerMinute, DataSpeedMaxFeetPerSecond, DataSpeedMaxKilometersPerHour, DataSpeedMaxKnots, DataSpeedMaxMetersPerMinute, DataSpeedMaxMilesPerHour } from './data.speed-max';
30
- import { DataSpeedAvg, DataSpeedAvgFeetPerMinute, DataSpeedAvgFeetPerSecond, DataSpeedAvgKilometersPerHour, DataSpeedAvgKnots, DataSpeedAvgMetersPerMinute, DataSpeedAvgMilesPerHour } from './data.speed-avg';
31
- import { DataRecoveryTime } from './data.recovery-time';
32
- import { DataPowerMin } from './data.power-min';
33
- import { DataPowerMax } from './data.power-max';
34
- import { DataPowerAvg } from './data.power-avg';
35
- import { DataPeakTrainingEffect } from './data.peak-training-effect';
36
- import { DataPause } from './data.pause';
37
- import { DataHeartRateMin } from './data.heart-rate-min';
38
- import { DataHeartRateMax } from './data.heart-rate-max';
39
- import { DataHeartRateAvg } from './data.heart-rate-avg';
40
- import { DataFeeling } from './data.feeling';
41
- import { DataEPOC } from './data.epoc';
42
- import { DataEnergy } from './data.energy';
43
- import { DataDescentTime } from './data.descent-time';
44
- import { DataDescent } from './data.descent';
45
- import { DataCadenceMin } from './data.cadence-min';
46
- import { DataCadenceMax } from './data.cadence-max';
47
- import { DataCadenceAvg } from './data.cadence-avg';
48
- import { DataAscentTime } from './data.ascent-time';
49
- import { DataAscent } from './data.ascent';
50
- import { DataAltitudeAvg } from './data.altitude-avg';
51
- import { DataFusedLocation } from './data.fused-location';
52
- import { DataPaceMin, DataPaceMinMinutesPerMile } from './data.pace-min';
53
- import { DataPaceMax, DataPaceMaxMinutesPerMile } from './data.pace-max';
54
- import { DataPaceAvg, DataPaceAvgMinutesPerMile } from './data.pace-avg';
55
- import { DataPace, DataPaceMinutesPerMile } from './data.pace';
56
- import { DataFusedAltitude } from './data.fused-altitude';
57
- import { DataBatteryCharge } from './data.battery-charge';
58
- import { DataBatteryCurrent } from './data.battery-current';
59
- import { DataBatteryVoltage } from './data.battery-voltage';
60
- import { DataBatteryConsumption } from './data.battery-consumption';
61
- import { DataBatteryLifeEstimation } from './data.battery-life-estimation';
62
- import { DataFormPower } from './data.form-power';
63
- import { DataLegStiffness, DataLegSpringStiffness } from './data.leg-stiffness';
64
- import { DataVerticalOscillation } from './data.vertical-oscillation';
65
- import { DataAerobicTrainingEffect } from './data-aerobic-training-effect';
66
- import { DataNumberOfSamples } from './data.number-of.samples';
67
- import { DataFootPodUsed } from './data.foot-pod-used';
68
- import { DataAutoPauseUsed } from './data.auto-pause-used';
69
- import { DataAutoLapDuration } from './data.auto-lap-duration';
70
- import { DataAutoLapDistance } from './data.auto-lap-distance';
71
- import { DataAutoLapUsed } from './data.auto-lap-used';
72
- import { DataBikePodUsed } from './data.bike-pod-used';
73
- import { DataEnabledNavigationSystems } from './data.enabled-navigation-systems';
74
- import { DataHeartRateUsed } from './data.heart-rate-used';
75
- import { DataPowerPodUsed } from './data.power-pod-used';
76
- import { DataAltiBaroProfile } from './data.alti-baro-profile';
77
- import { DataIBI } from './data.ibi';
78
- import { DataSteps } from './data.steps';
79
- import { DataPoolLength } from './data.pool-length';
80
- import { DataDeviceLocation } from './data.device-location';
81
- import { DataPeakEPOC } from './data.peak-epoc';
82
- import { DataDeviceNames } from './data.device-names';
83
- import { DataActivityTypes } from './data.activity-types';
84
- import { DataStartAltitude } from './data.start-altitude';
85
- import { DataEndAltitude } from './data.end-altitude';
86
- import { DataSwimPace, DataSwimPaceMinutesPer100Yard } from './data.swim-pace';
87
- import { DataSwimPaceAvg, DataSwimPaceAvgMinutesPer100Yard } from './data.swim-pace-avg';
88
- import { DataSwimPaceMax, DataSwimPaceMaxMinutesPer100Yard } from './data.swim-pace-max';
89
- import { DataSwimPaceMin, DataSwimPaceMinMinutesPer100Yard } from './data.swim-pace-min';
90
- import { DataSWOLF25m } from './data.swolf-25m';
91
- import { DataAccumulatedPower } from './data.accumulated-power';
92
- import { DataStrydDistance } from './data.stryd-distance';
93
- import { DataStrydSpeed } from './data.stryd-speed';
94
- import { DataStrydAltitude } from './data.stryd-altitude';
95
- import { DataLeftBalance } from './data.left-balance';
96
- import { DataRightBalance } from './data.right-balance';
97
- import { DataRPE } from './data.rpe';
98
- import { DataPowerRight } from './data.power-right';
99
- import { DataPowerLeft } from './data.power-left';
100
- import { DataStanceTime } from './data.stance-time';
101
- import { DataStanceTimeBalanceLeft } from './data-stance-time-balance-left';
102
- import { DataStepLength } from './data.step-length';
103
- import { DataVerticalRatio } from './data.vertical-ratio';
104
- import { DataDescription } from './data.description';
105
- import { DataAirPower } from './data.air-power';
106
- import { DataGroundTime } from './data.ground-time';
107
- import { DataAirPowerMax } from './data.air-power-max';
108
- import { DataAirPowerMin } from './data.air-power-min';
109
- import { DataAirPowerAvg } from './data.air-power-avg';
110
- import { DataGNSSDistance } from './data.gnss-distance';
111
- import { DataHeartRateZoneOneDuration } from './data.heart-rate-zone-one-duration';
112
- import { DataHeartRateZoneTwoDuration } from './data.heart-rate-zone-two-duration';
113
- import { DataHeartRateZoneThreeDuration } from './data.heart-rate-zone-three-duration';
114
- import { DataHeartRateZoneFourDuration } from './data.heart-rate-zone-four-duration';
115
- import { DataHeartRateZoneFiveDuration } from './data.heart-rate-zone-five-duration';
116
- import { DataSpeedZoneOneDuration } from './data.speed-zone-one-duration';
117
- import { DataSpeedZoneTwoDuration } from './data.speed-zone-two-duration';
118
- import { DataSpeedZoneThreeDuration } from './data.speed-zone-three-duration';
119
- import { DataSpeedZoneFourDuration } from './data.speed-zone-four-duration';
120
- import { DataSpeedZoneFiveDuration } from './data.speed-zone-five-duration';
121
- import { DataPowerZoneOneDuration } from './data.power-zone-one-duration';
122
- import { DataPowerZoneTwoDuration } from './data.power-zone-two-duration';
123
- import { DataPowerZoneThreeDuration } from './data.power-zone-three-duration';
124
- import { DataPowerZoneFiveDuration } from './data.power-zone-five-duration';
125
- import { DataPowerZoneFourDuration } from './data.power-zone-four-duration';
126
- import { DataPosition } from './data.position';
127
- import { DataStartPosition } from './data.start-position';
128
- import { DataEndPosition } from './data.end-position';
129
- import { DataGrade } from './data.grade';
130
- import { DataGradeAdjustedSpeed, DataGradeAdjustedSpeedFeetPerMinute, DataGradeAdjustedSpeedFeetPerSecond, DataGradeAdjustedSpeedKilometersPerHour, DataGradeAdjustedSpeedKnots, DataGradeAdjustedSpeedMetersPerMinute, DataGradeAdjustedSpeedMilesPerHour } from './data.grade-adjusted-speed';
131
- import { DataGradeAdjustedPace, DataGradeAdjustedPaceMinutesPerMile } from './data.grade-adjusted-pace';
132
- import { DataGradeAdjustedSpeedMax, DataGradeAdjustedSpeedMaxFeetPerMinute, DataGradeAdjustedSpeedMaxFeetPerSecond, DataGradeAdjustedSpeedMaxKilometersPerHour, DataGradeAdjustedSpeedMaxKnots, DataGradeAdjustedSpeedMaxMetersPerMinute, DataGradeAdjustedSpeedMaxMilesPerHour } from './data.grade-adjusted-speed-max';
133
- import { DataGradeAdjustedSpeedMin, DataGradeAdjustedSpeedMinFeetPerMinute, DataGradeAdjustedSpeedMinFeetPerSecond, DataGradeAdjustedSpeedMinKilometersPerHour, DataGradeAdjustedSpeedMinKnots, DataGradeAdjustedSpeedMinMetersPerMinute, DataGradeAdjustedSpeedMinMilesPerHour } from './data.grade-adjusted-speed-min';
134
- import { DataGradeAdjustedSpeedAvg, DataGradeAdjustedSpeedAvgFeetPerMinute, DataGradeAdjustedSpeedAvgFeetPerSecond, DataGradeAdjustedSpeedAvgKilometersPerHour, DataGradeAdjustedSpeedAvgKnots, DataGradeAdjustedSpeedAvgMetersPerMinute, DataGradeAdjustedSpeedAvgMilesPerHour } from './data.grade-adjusted-speed-avg';
135
- import { DataGradeAdjustedPaceAvg, DataGradeAdjustedPaceAvgMinutesPerMile } from './data.grade-adjusted-pace-avg';
136
- import { DataGradeAdjustedPaceMax, DataGradeAdjustedPaceMaxMinutesPerMile } from './data.grade-adjusted-pace-max';
137
- import { DataGradeAdjustedPaceMin, DataGradeAdjustedPaceMinMinutesPerMile } from './data.grade-adjusted-pace-min';
138
- import { DataStepsOld } from './data.steps-old';
139
- import { DataStopEvent } from './data.stop-event';
140
- import { DataStartEvent } from './data.start-event';
141
- import { DataStopAllEvent } from './data.stop-all-event';
142
- import { DataTime } from './data.time';
143
- import { convertMetersToMiles, convertPaceToPaceInMinutesPerMile, convertSpeedToSpeedInFeetPerHour, convertSpeedToSpeedInFeetPerMinute, convertSpeedToSpeedInFeetPerSecond, convertSpeedToSpeedInKilometersPerHour, convertSpeedToSpeedInKnots, convertSpeedToSpeedInMetersPerHour, convertSpeedToSpeedInMetersPerMinute, convertSpeedToSpeedInMilesPerHour, convertSwimPaceToSwimPacePer100Yard } from '../events/utilities/helpers';
144
- import { DataMovingTime } from './data.moving-time';
145
- import { DataSWOLF50m } from './data.swolf-50m';
146
- import { DataTimerTime } from './data.timer-time';
147
- import { DataActiveLap } from './data-active-lap';
148
- import { DataActiveLengths } from './data-active-lengths';
149
- import { DataAnaerobicTrainingEffect } from './data-anaerobic-training-effect';
150
- import { DataTotalCycles } from './data-total-cycles';
151
- import { DataPowerIntensityFactor } from './data.power-intensity-factor';
152
- import { DataPowerNormalized } from './data.power-normalized';
153
- import { DataPowerPedalSmoothnessLeft } from './data.power-pedal-smoothness-left';
154
- import { DataPowerPedalSmoothnessRight } from './data.power-pedal-smoothness-right';
155
- import { DataPowerTorqueEffectivenessLeft } from './data.power-torque-effectiveness-left';
156
- import { DataPowerTorqueEffectivenessRight } from './data.power-torque-effectiveness-right';
157
- import { DataPowerTrainingStressScore } from './data.power-training-stress-score';
158
- import { DataPowerWork } from './data.power-work';
159
- import { DataPowerDown } from './data.power-down';
160
- import { DataPowerUp } from './data.power-up';
161
- import { DataTargetPowerZone } from './data.target-power-zone';
162
- import { DataTargetHeartRateZone } from './data.target-heart-rate-zone';
163
- import { DataTargetSpeedZone } from './data.target-speed-zone';
164
- import { DataTargetDistance } from './data.target-distance';
165
- import { DataTargetTime } from './data.target-time';
166
- import { DataStanceTimeBalanceRight } from './data-stance-time-balance-right';
167
- import { DataRiderPositionChangeEvent } from './data.rider-position-change-event';
168
- import { DataSportProfileName } from './data.sport-profile-name';
169
- import { DataBalance } from './data.balance';
170
- import { DataAltitudeSmooth } from './data.altitude-smooth';
171
- import { DataAvgStrideLength } from './data.avg-stride-length';
172
- import { DataCyclingSeatedTime } from './data.cycling-seated-time';
173
- import { DataCyclingStandingTime } from './data.cycling-standing-time';
174
- import { DataGradeSmooth } from './data.grade-smooth';
175
- // "Total Training effect" was renamed to "Aerobic Training Effect" in sports-lib 6.0
176
- export class DataTotalTrainingEffectLegacy extends DataAerobicTrainingEffect {
177
- }
178
- DataTotalTrainingEffectLegacy.type = 'Total Training effect';
179
- /**
180
- * Only concrete classes no abstracts
181
- */
182
- export const DataStore = {
183
- DataVerticalSpeed,
184
- DataTemperature,
185
- DataSpeed,
186
- DataGradeAdjustedSpeed,
187
- DataSeaLevelPressure,
188
- DataSatellite5BestSNR,
189
- DataPower,
190
- DataNumberOfSatellites,
191
- DataLongitudeDegrees,
192
- DataLatitudeDegrees,
193
- DataHeartRate,
194
- DataEVPE,
195
- DataEHPE,
196
- DataDuration,
197
- DataDistance,
198
- DataCadence,
199
- DataGPSAltitude,
200
- DataAltitude,
201
- DataAbsolutePressure,
202
- DataVO2Max,
203
- DataVerticalSpeedMin,
204
- DataVerticalSpeedMax,
205
- DataVerticalSpeedAvg,
206
- DataTemperatureMin,
207
- DataTemperatureMax,
208
- DataTemperatureAvg,
209
- DataSpeedMin,
210
- DataSpeedMax,
211
- DataSpeedAvg,
212
- DataGradeAdjustedSpeedMin,
213
- DataGradeAdjustedSpeedMax,
214
- DataGradeAdjustedSpeedAvg,
215
- DataRecoveryTime,
216
- DataPowerMin,
217
- DataPowerMax,
218
- DataPowerAvg,
219
- DataPeakTrainingEffect,
220
- DataPause,
221
- DataHeartRateMin,
222
- DataHeartRateMax,
223
- DataHeartRateAvg,
224
- DataFeeling,
225
- DataEPOC,
226
- DataEnergy,
227
- DataDescentTime,
228
- DataDescent,
229
- DataCadenceMin,
230
- DataCadenceMax,
231
- DataCadenceAvg,
232
- DataAscentTime,
233
- DataAscent,
234
- DataAltitudeMin,
235
- DataAltitudeMax,
236
- DataAltitudeAvg,
237
- DataFusedLocation,
238
- DataFusedAltitude,
239
- DataPace,
240
- DataPaceMin,
241
- DataPaceMax,
242
- DataPaceAvg,
243
- DataGradeAdjustedPace,
244
- DataGradeAdjustedPaceMin,
245
- DataGradeAdjustedPaceMax,
246
- DataGradeAdjustedPaceAvg,
247
- DataSwimPace,
248
- DataSwimPaceMin,
249
- DataSwimPaceMax,
250
- DataSwimPaceAvg,
251
- DataNumberOfSamples,
252
- DataBatteryCharge,
253
- DataBatteryCurrent,
254
- DataBatteryVoltage,
255
- DataBatteryConsumption,
256
- DataBatteryLifeEstimation,
257
- DataFormPower,
258
- DataLegStiffness,
259
- DataLegSpringStiffness,
260
- DataVerticalOscillation,
261
- DataAerobicTrainingEffect,
262
- DataFootPodUsed,
263
- DataAltiBaroProfile,
264
- DataAutoPauseUsed,
265
- DataAutoLapDuration,
266
- DataAutoLapDistance,
267
- DataAutoLapUsed,
268
- DataBikePodUsed,
269
- DataEnabledNavigationSystems,
270
- DataHeartRateUsed,
271
- DataPowerPodUsed,
272
- DataSpeedKilometersPerHour,
273
- DataSpeedMilesPerHour,
274
- DataSpeedFeetPerSecond,
275
- DataSpeedMetersPerMinute,
276
- DataSpeedFeetPerMinute,
277
- DataSpeedAvgKilometersPerHour,
278
- DataSpeedAvgMilesPerHour,
279
- DataSpeedAvgFeetPerSecond,
280
- DataSpeedAvgMetersPerMinute,
281
- DataSpeedAvgFeetPerMinute,
282
- DataSpeedMinKilometersPerHour,
283
- DataSpeedMinMilesPerHour,
284
- DataSpeedMinFeetPerSecond,
285
- DataSpeedMinMetersPerMinute,
286
- DataSpeedMinFeetPerMinute,
287
- DataSpeedMaxKilometersPerHour,
288
- DataSpeedMaxMilesPerHour,
289
- DataSpeedMaxFeetPerSecond,
290
- DataSpeedMaxMetersPerMinute,
291
- DataSpeedMaxFeetPerMinute,
292
- DataSpeedKnots,
293
- DataSpeedAvgKnots,
294
- DataSpeedMinKnots,
295
- DataSpeedMaxKnots,
296
- DataGradeAdjustedSpeedKilometersPerHour,
297
- DataGradeAdjustedSpeedMilesPerHour,
298
- DataGradeAdjustedSpeedFeetPerSecond,
299
- DataGradeAdjustedSpeedMetersPerMinute,
300
- DataGradeAdjustedSpeedFeetPerMinute,
301
- DataGradeAdjustedSpeedAvgKilometersPerHour,
302
- DataGradeAdjustedSpeedAvgMilesPerHour,
303
- DataGradeAdjustedSpeedAvgFeetPerSecond,
304
- DataGradeAdjustedSpeedAvgMetersPerMinute,
305
- DataGradeAdjustedSpeedAvgFeetPerMinute,
306
- DataGradeAdjustedSpeedMinKilometersPerHour,
307
- DataGradeAdjustedSpeedMinMilesPerHour,
308
- DataGradeAdjustedSpeedMinFeetPerSecond,
309
- DataGradeAdjustedSpeedMinMetersPerMinute,
310
- DataGradeAdjustedSpeedMinFeetPerMinute,
311
- DataGradeAdjustedSpeedMaxKilometersPerHour,
312
- DataGradeAdjustedSpeedMaxMilesPerHour,
313
- DataGradeAdjustedSpeedMaxFeetPerSecond,
314
- DataGradeAdjustedSpeedMaxMetersPerMinute,
315
- DataGradeAdjustedSpeedMaxFeetPerMinute,
316
- DataGradeAdjustedSpeedKnots,
317
- DataGradeAdjustedSpeedAvgKnots,
318
- DataGradeAdjustedSpeedMinKnots,
319
- DataGradeAdjustedSpeedMaxKnots,
320
- DataPaceMinutesPerMile,
321
- DataPaceAvgMinutesPerMile,
322
- DataPaceMinMinutesPerMile,
323
- DataPaceMaxMinutesPerMile,
324
- DataGradeAdjustedPaceMinutesPerMile,
325
- DataGradeAdjustedPaceAvgMinutesPerMile,
326
- DataGradeAdjustedPaceMinMinutesPerMile,
327
- DataGradeAdjustedPaceMaxMinutesPerMile,
328
- DataSwimPaceMinutesPer100Yard,
329
- DataSwimPaceAvgMinutesPer100Yard,
330
- DataSwimPaceMinMinutesPer100Yard,
331
- DataSwimPaceMaxMinutesPer100Yard,
332
- DataVerticalSpeedFeetPerSecond,
333
- DataVerticalSpeedMetersPerMinute,
334
- DataVerticalSpeedFeetPerMinute,
335
- DataVerticalSpeedMetersPerHour,
336
- DataVerticalSpeedFeetPerHour,
337
- DataVerticalSpeedKilometerPerHour,
338
- DataVerticalSpeedMilesPerHour,
339
- DataVerticalSpeedAvgFeetPerSecond,
340
- DataVerticalSpeedAvgMetersPerMinute,
341
- DataVerticalSpeedAvgFeetPerMinute,
342
- DataVerticalSpeedAvgMetersPerHour,
343
- DataVerticalSpeedAvgFeetPerHour,
344
- DataVerticalSpeedAvgKilometerPerHour,
345
- DataVerticalSpeedAvgMilesPerHour,
346
- DataVerticalSpeedMaxFeetPerSecond,
347
- DataVerticalSpeedMaxMetersPerMinute,
348
- DataVerticalSpeedMaxFeetPerMinute,
349
- DataVerticalSpeedMaxMetersPerHour,
350
- DataVerticalSpeedMaxFeetPerHour,
351
- DataVerticalSpeedMaxKilometerPerHour,
352
- DataVerticalSpeedMaxMilesPerHour,
353
- DataVerticalSpeedMinFeetPerSecond,
354
- DataVerticalSpeedMinMetersPerMinute,
355
- DataVerticalSpeedMinFeetPerMinute,
356
- DataVerticalSpeedMinMetersPerHour,
357
- DataVerticalSpeedMinFeetPerHour,
358
- DataVerticalSpeedMinKilometerPerHour,
359
- DataVerticalSpeedMinMilesPerHour,
360
- DataIBI,
361
- DataSteps,
362
- DataStepsOld, // @todo find way to make this easy to migrate for projects that persist data based on types
363
- DataStrydAltitude,
364
- DataStrydSpeed,
365
- DataStrydDistance,
366
- DataPoolLength,
367
- DataDeviceLocation,
368
- DataPeakEPOC,
369
- DataActivityTypes,
370
- DataDeviceNames,
371
- DataStartAltitude,
372
- DataEndAltitude,
373
- DataSWOLF25m,
374
- DataSWOLF50m,
375
- DataAccumulatedPower,
376
- DataLeftBalance,
377
- DataRightBalance,
378
- DataPowerLeft,
379
- DataPowerRight,
380
- DataRPE,
381
- DataStanceTime,
382
- DataStanceTimeBalanceRight,
383
- DataStanceTimeBalanceLeft,
384
- DataStepLength,
385
- DataVerticalRatio,
386
- DataDescription,
387
- DataGroundTime,
388
- DataAirPower,
389
- DataAirPowerAvg,
390
- DataAirPowerMax,
391
- DataAirPowerMin,
392
- DataGNSSDistance,
393
- DataHeartRateZoneOneDuration,
394
- DataHeartRateZoneTwoDuration,
395
- DataHeartRateZoneThreeDuration,
396
- DataHeartRateZoneFourDuration,
397
- DataHeartRateZoneFiveDuration,
398
- DataPowerZoneOneDuration,
399
- DataPowerZoneTwoDuration,
400
- DataPowerZoneThreeDuration,
401
- DataPowerZoneFourDuration,
402
- DataPowerZoneFiveDuration,
403
- DataSpeedZoneOneDuration,
404
- DataSpeedZoneTwoDuration,
405
- DataSpeedZoneThreeDuration,
406
- DataSpeedZoneFourDuration,
407
- DataSpeedZoneFiveDuration,
408
- DataPosition,
409
- DataStartPosition,
410
- DataEndPosition,
411
- DataGrade,
412
- DataStartEvent,
413
- DataStopEvent,
414
- DataStopAllEvent,
415
- DataTime,
416
- DataDistanceMiles,
417
- DataMovingTime,
418
- DataTimerTime,
419
- DataActiveLap,
420
- DataActiveLengths,
421
- DataAnaerobicTrainingEffect,
422
- DataTotalCycles,
423
- DataPowerIntensityFactor,
424
- DataPowerNormalized,
425
- DataPowerPedalSmoothnessLeft,
426
- DataPowerPedalSmoothnessRight,
427
- DataPowerTorqueEffectivenessLeft,
428
- DataPowerTorqueEffectivenessRight,
429
- DataPowerTrainingStressScore,
430
- DataPowerWork,
431
- DataRiderPositionChangeEvent,
432
- DataSportProfileName,
433
- DataBalance,
434
- DataAltitudeSmooth,
435
- DataAvgStrideLength,
436
- DataCyclingSeatedTime,
437
- DataCyclingStandingTime,
438
- DataGradeSmooth,
439
- DataPowerDown,
440
- DataPowerUp,
441
- DataTargetPowerZone,
442
- DataTargetHeartRateZone,
443
- DataTargetSpeedZone,
444
- DataTargetDistance,
445
- DataTargetTime,
446
- DataTotalTrainingEffectLegacy
447
- };
448
- export class DynamicDataLoader {
449
- static getDataInstanceFromDataType(dataType, opts) {
450
- const className = Object.keys(DataStore).find(dataClass => {
451
- return DataStore[dataClass] && DataStore[dataClass].type && DataStore[dataClass].type === dataType;
452
- });
453
- if (!className || !DataStore[className]) {
454
- throw new Error(`Class type of '${dataType}' is not in the store`);
455
- }
456
- return new DataStore[className](opts);
457
- }
458
- static getDataClassFromDataType(dataType) {
459
- const className = Object.keys(DataStore).find(dataClass => {
460
- return DataStore[dataClass] && DataStore[dataClass].type && DataStore[dataClass].type === dataType;
461
- });
462
- if (!className || !DataStore[className]) {
463
- throw new Error(`Class type of '${dataType}' is not in the store`);
464
- }
465
- return DataStore[className];
466
- }
467
- static isUnitDerivedDataType(dataType) {
468
- return this.allUnitDerivedDataTypes.indexOf(dataType) !== -1;
469
- }
470
- static isSpeedDerivedDataType(dataType) {
471
- return this.speedDerivedDataTypes.indexOf(dataType) !== -1;
472
- }
473
- static isBlackListedStream(dataType) {
474
- return [DataGNSSDistance.type, DataTime.type].indexOf(dataType) !== -1;
475
- }
476
- /**
477
- * This get's the basic data types for the charts depending or not on the user datatype settings
478
- * There are no unit specific datatypes here so if the user has selected pace it implies metric
479
- */
480
- static getNonUnitBasedDataTypes(showAllData, dataTypesToUse) {
481
- // let dataTypes = DynamicDataLoader.basicDataTypes;
482
- // Set the datatypes to show if all is selected
483
- if (showAllData) {
484
- return [...DynamicDataLoader.basicDataTypes, ...DynamicDataLoader.advancedDataTypes];
485
- }
486
- if (!dataTypesToUse) {
487
- return DynamicDataLoader.basicDataTypes;
488
- }
489
- return dataTypesToUse;
490
- }
491
- /**
492
- * This gets the base and extended unit datatypes from a datatype array depending on the user settings
493
- * @param dataTypes
494
- * @param userUnitSettings
495
- */
496
- static getUnitBasedDataTypesFromDataTypes(dataTypes, userUnitSettings, options = { includeDerivedTypes: true }) {
497
- let unitBasedDataTypes = [];
498
- if (!userUnitSettings) {
499
- return unitBasedDataTypes;
500
- }
501
- if (dataTypes.indexOf(DataSpeed.type) !== -1) {
502
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.speedUnits);
503
- if (options.includeDerivedTypes) {
504
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.swimPaceUnits);
505
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.paceUnits);
506
- }
507
- }
508
- if (dataTypes.indexOf(DataGradeAdjustedSpeed.type) !== -1) {
509
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.gradeAdjustedSpeedUnits);
510
- if (options.includeDerivedTypes) {
511
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.gradeAdjustedPaceUnits);
512
- }
513
- }
514
- if (dataTypes.indexOf(DataVerticalSpeed.type) !== -1) {
515
- unitBasedDataTypes = unitBasedDataTypes.concat(userUnitSettings.verticalSpeedUnits);
516
- }
517
- return unitBasedDataTypes;
518
- }
519
- /**
520
- * Gets the unitbased types
521
- * @param dataType
522
- * @param userUnitSettings
523
- */
524
- static getUnitBasedDataTypesFromDataType(dataType, userUnitSettings) {
525
- if (!userUnitSettings) {
526
- return [dataType];
527
- }
528
- if (dataType === DataSpeed.type) {
529
- return userUnitSettings.speedUnits;
530
- }
531
- if (dataType === DataGradeAdjustedSpeed.type) {
532
- return userUnitSettings.gradeAdjustedSpeedUnits;
533
- }
534
- if (dataType === DataPace.type) {
535
- return userUnitSettings.paceUnits;
536
- }
537
- if (dataType === DataGradeAdjustedPace.type) {
538
- return userUnitSettings.gradeAdjustedPaceUnits;
539
- }
540
- if (dataType === DataSwimPace.type) {
541
- return userUnitSettings.swimPaceUnits;
542
- }
543
- if (dataType === DataVerticalSpeed.type) {
544
- return userUnitSettings.verticalSpeedUnits;
545
- }
546
- return [dataType];
547
- }
548
- /**
549
- * Gets back an array of the unit based data for the data that was asked
550
- * For example if the user has for speed selected m/s+km/h doing:
551
- * getUnitBasedDataFromData(speedData) will return an array of [DataSpeed, DataSpeedInKilometersPerHour] instances
552
- * @param data
553
- * @param userUnitSettings
554
- * @todo move to solo unit settings eg speed settings
555
- */
556
- static getUnitBasedDataFromDataInstance(data, userUnitSettings) {
557
- if (!userUnitSettings) {
558
- return [data];
559
- }
560
- switch (data.getType()) {
561
- // Speed
562
- case DataSpeed.type:
563
- return userUnitSettings.speedUnits.reduce((accu, unit) => {
564
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
565
- }, []);
566
- case DataSpeedAvg.type:
567
- return userUnitSettings.speedUnits.reduce((accu, unit) => {
568
- switch (unit) {
569
- case DataSpeed.type:
570
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvg.type, data.getValue(unit))];
571
- case DataSpeedKilometersPerHour.type:
572
- return [
573
- ...accu,
574
- this.getDataInstanceFromDataType(DataSpeedAvgKilometersPerHour.type, data.getValue(unit))
575
- ];
576
- case DataSpeedMilesPerHour.type:
577
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvgMilesPerHour.type, data.getValue(unit))];
578
- case DataSpeedFeetPerSecond.type:
579
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvgFeetPerSecond.type, data.getValue(unit))];
580
- case DataSpeedMetersPerMinute.type:
581
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvgMetersPerMinute.type, data.getValue(unit))];
582
- case DataSpeedFeetPerMinute.type:
583
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvgFeetPerMinute.type, data.getValue(unit))];
584
- case DataSpeedKnots.type:
585
- return [...accu, this.getDataInstanceFromDataType(DataSpeedAvgKnots.type, data.getValue(unit))];
586
- }
587
- return accu;
588
- }, []);
589
- case DataSpeedMax.type:
590
- return userUnitSettings.speedUnits.reduce((accu, unit) => {
591
- switch (unit) {
592
- case DataSpeed.type:
593
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMax.type, data.getValue(unit))];
594
- case DataSpeedKilometersPerHour.type:
595
- return [
596
- ...accu,
597
- this.getDataInstanceFromDataType(DataSpeedMaxKilometersPerHour.type, data.getValue(unit))
598
- ];
599
- case DataSpeedMilesPerHour.type:
600
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMaxMilesPerHour.type, data.getValue(unit))];
601
- case DataSpeedFeetPerSecond.type:
602
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMaxFeetPerSecond.type, data.getValue(unit))];
603
- case DataSpeedMetersPerMinute.type:
604
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMaxMetersPerMinute.type, data.getValue(unit))];
605
- case DataSpeedFeetPerMinute.type:
606
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMaxFeetPerMinute.type, data.getValue(unit))];
607
- case DataSpeedKnots.type:
608
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMaxKnots.type, data.getValue(unit))];
609
- }
610
- return accu;
611
- }, []);
612
- case DataSpeedMin.type:
613
- return userUnitSettings.speedUnits.reduce((accu, unit) => {
614
- switch (unit) {
615
- case DataSpeed.type:
616
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMin.type, data.getValue(unit))];
617
- case DataSpeedKilometersPerHour.type:
618
- return [
619
- ...accu,
620
- this.getDataInstanceFromDataType(DataSpeedMinKilometersPerHour.type, data.getValue(unit))
621
- ];
622
- case DataSpeedMilesPerHour.type:
623
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMinMilesPerHour.type, data.getValue(unit))];
624
- case DataSpeedFeetPerSecond.type:
625
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMinFeetPerSecond.type, data.getValue(unit))];
626
- case DataSpeedMetersPerMinute.type:
627
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMinMetersPerMinute.type, data.getValue(unit))];
628
- case DataSpeedFeetPerMinute.type:
629
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMinFeetPerMinute.type, data.getValue(unit))];
630
- case DataSpeedKnots.type:
631
- return [...accu, this.getDataInstanceFromDataType(DataSpeedMinKnots.type, data.getValue(unit))];
632
- }
633
- return accu;
634
- }, []);
635
- // GradeAdjusted Speed
636
- case DataGradeAdjustedSpeed.type:
637
- return userUnitSettings.gradeAdjustedSpeedUnits.reduce((accu, unit) => {
638
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
639
- }, []);
640
- case DataGradeAdjustedSpeedAvg.type:
641
- return userUnitSettings.gradeAdjustedSpeedUnits.reduce((accu, unit) => {
642
- switch (unit) {
643
- case DataGradeAdjustedSpeed.type:
644
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvg.type, data.getValue(unit))];
645
- case DataGradeAdjustedSpeedKilometersPerHour.type:
646
- return [
647
- ...accu,
648
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgKilometersPerHour.type, data.getValue(unit))
649
- ];
650
- case DataGradeAdjustedSpeedMilesPerHour.type:
651
- return [
652
- ...accu,
653
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgMilesPerHour.type, data.getValue(unit))
654
- ];
655
- case DataGradeAdjustedSpeedFeetPerSecond.type:
656
- return [
657
- ...accu,
658
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgFeetPerSecond.type, data.getValue(unit))
659
- ];
660
- case DataGradeAdjustedSpeedMetersPerMinute.type:
661
- return [
662
- ...accu,
663
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgMetersPerMinute.type, data.getValue(unit))
664
- ];
665
- case DataGradeAdjustedSpeedFeetPerMinute.type:
666
- return [
667
- ...accu,
668
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgFeetPerMinute.type, data.getValue(unit))
669
- ];
670
- case DataGradeAdjustedSpeedKnots.type:
671
- return [
672
- ...accu,
673
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedAvgKnots.type, data.getValue(unit))
674
- ];
675
- }
676
- return accu;
677
- }, []);
678
- case DataGradeAdjustedSpeedMax.type:
679
- return userUnitSettings.gradeAdjustedSpeedUnits.reduce((accu, unit) => {
680
- switch (unit) {
681
- case DataGradeAdjustedSpeed.type:
682
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMax.type, data.getValue(unit))];
683
- case DataGradeAdjustedSpeedKilometersPerHour.type:
684
- return [
685
- ...accu,
686
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxKilometersPerHour.type, data.getValue(unit))
687
- ];
688
- case DataGradeAdjustedSpeedMilesPerHour.type:
689
- return [
690
- ...accu,
691
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxMilesPerHour.type, data.getValue(unit))
692
- ];
693
- case DataGradeAdjustedSpeedFeetPerSecond.type:
694
- return [
695
- ...accu,
696
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxFeetPerSecond.type, data.getValue(unit))
697
- ];
698
- case DataGradeAdjustedSpeedMetersPerMinute.type:
699
- return [
700
- ...accu,
701
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxMetersPerMinute.type, data.getValue(unit))
702
- ];
703
- case DataGradeAdjustedSpeedFeetPerMinute.type:
704
- return [
705
- ...accu,
706
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxFeetPerMinute.type, data.getValue(unit))
707
- ];
708
- case DataGradeAdjustedSpeedKnots.type:
709
- return [
710
- ...accu,
711
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMaxKnots.type, data.getValue(unit))
712
- ];
713
- }
714
- return accu;
715
- }, []);
716
- case DataGradeAdjustedSpeedMin.type:
717
- return userUnitSettings.gradeAdjustedSpeedUnits.reduce((accu, unit) => {
718
- switch (unit) {
719
- case DataGradeAdjustedSpeed.type:
720
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMin.type, data.getValue(unit))];
721
- case DataGradeAdjustedSpeedKilometersPerHour.type:
722
- return [
723
- ...accu,
724
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinKilometersPerHour.type, data.getValue(unit))
725
- ];
726
- case DataGradeAdjustedSpeedMilesPerHour.type:
727
- return [
728
- ...accu,
729
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinMilesPerHour.type, data.getValue(unit))
730
- ];
731
- case DataGradeAdjustedSpeedFeetPerSecond.type:
732
- return [
733
- ...accu,
734
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinFeetPerSecond.type, data.getValue(unit))
735
- ];
736
- case DataGradeAdjustedSpeedMetersPerMinute.type:
737
- return [
738
- ...accu,
739
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinMetersPerMinute.type, data.getValue(unit))
740
- ];
741
- case DataGradeAdjustedSpeedFeetPerMinute.type:
742
- return [
743
- ...accu,
744
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinFeetPerMinute.type, data.getValue(unit))
745
- ];
746
- case DataGradeAdjustedSpeedKnots.type:
747
- return [
748
- ...accu,
749
- this.getDataInstanceFromDataType(DataGradeAdjustedSpeedMinKnots.type, data.getValue(unit))
750
- ];
751
- }
752
- return accu;
753
- }, []);
754
- // Pace
755
- case DataPace.type:
756
- return userUnitSettings.paceUnits.reduce((accu, unit) => {
757
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
758
- }, []);
759
- case DataPaceAvg.type:
760
- return userUnitSettings.paceUnits.reduce((accu, unit) => {
761
- switch (unit) {
762
- case DataPace.type:
763
- return [...accu, this.getDataInstanceFromDataType(DataPaceAvg.type, data.getValue(unit))];
764
- case DataPaceMinutesPerMile.type:
765
- return [...accu, this.getDataInstanceFromDataType(DataPaceAvgMinutesPerMile.type, data.getValue(unit))];
766
- }
767
- return accu;
768
- }, []);
769
- case DataPaceMax.type:
770
- return userUnitSettings.paceUnits.reduce((accu, unit) => {
771
- switch (unit) {
772
- case DataPace.type:
773
- return [...accu, this.getDataInstanceFromDataType(DataPaceMax.type, data.getValue(unit))];
774
- case DataPaceMinutesPerMile.type:
775
- return [...accu, this.getDataInstanceFromDataType(DataPaceMaxMinutesPerMile.type, data.getValue(unit))];
776
- }
777
- return accu;
778
- }, []);
779
- case DataPaceMin.type:
780
- return userUnitSettings.paceUnits.reduce((accu, unit) => {
781
- switch (unit) {
782
- case DataPace.type:
783
- return [...accu, this.getDataInstanceFromDataType(DataPaceMin.type, data.getValue(unit))];
784
- case DataPaceMinutesPerMile.type:
785
- return [...accu, this.getDataInstanceFromDataType(DataPaceMinMinutesPerMile.type, data.getValue(unit))];
786
- }
787
- return accu;
788
- }, []);
789
- // GAP Pace
790
- case DataGradeAdjustedPace.type:
791
- return userUnitSettings.gradeAdjustedPaceUnits.reduce((accu, unit) => {
792
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
793
- }, []);
794
- case DataGradeAdjustedPaceAvg.type:
795
- return userUnitSettings.gradeAdjustedPaceUnits.reduce((accu, unit) => {
796
- switch (unit) {
797
- case DataGradeAdjustedPace.type:
798
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedPaceAvg.type, data.getValue(unit))];
799
- case DataGradeAdjustedPaceMinutesPerMile.type:
800
- return [
801
- ...accu,
802
- this.getDataInstanceFromDataType(DataGradeAdjustedPaceAvgMinutesPerMile.type, data.getValue(unit))
803
- ];
804
- }
805
- return accu;
806
- }, []);
807
- case DataGradeAdjustedPaceMax.type:
808
- return userUnitSettings.gradeAdjustedPaceUnits.reduce((accu, unit) => {
809
- switch (unit) {
810
- case DataGradeAdjustedPace.type:
811
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedPaceMax.type, data.getValue(unit))];
812
- case DataGradeAdjustedPaceMinutesPerMile.type:
813
- return [
814
- ...accu,
815
- this.getDataInstanceFromDataType(DataGradeAdjustedPaceMaxMinutesPerMile.type, data.getValue(unit))
816
- ];
817
- }
818
- return accu;
819
- }, []);
820
- case DataGradeAdjustedPaceMin.type:
821
- return userUnitSettings.gradeAdjustedPaceUnits.reduce((accu, unit) => {
822
- switch (unit) {
823
- case DataGradeAdjustedPace.type:
824
- return [...accu, this.getDataInstanceFromDataType(DataGradeAdjustedPaceMin.type, data.getValue(unit))];
825
- case DataGradeAdjustedPaceMinutesPerMile.type:
826
- return [
827
- ...accu,
828
- this.getDataInstanceFromDataType(DataGradeAdjustedPaceMinMinutesPerMile.type, data.getValue(unit))
829
- ];
830
- }
831
- return accu;
832
- }, []);
833
- // Swim
834
- case DataSwimPace.type:
835
- return userUnitSettings.swimPaceUnits.reduce((accu, unit) => {
836
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
837
- }, []);
838
- case DataSwimPaceAvg.type:
839
- return userUnitSettings.swimPaceUnits.reduce((accu, unit) => {
840
- switch (unit) {
841
- case DataSwimPace.type:
842
- return [...accu, this.getDataInstanceFromDataType(DataSwimPaceAvg.type, data.getValue(unit))];
843
- case DataSwimPaceMinutesPer100Yard.type:
844
- return [
845
- ...accu,
846
- this.getDataInstanceFromDataType(DataSwimPaceAvgMinutesPer100Yard.type, data.getValue(unit))
847
- ];
848
- }
849
- return accu;
850
- }, []);
851
- case DataSwimPaceMax.type:
852
- return userUnitSettings.swimPaceUnits.reduce((accu, unit) => {
853
- switch (unit) {
854
- case DataSwimPace.type:
855
- return [...accu, this.getDataInstanceFromDataType(DataSwimPaceMax.type, data.getValue(unit))];
856
- case DataSwimPaceMinutesPer100Yard.type:
857
- return [
858
- ...accu,
859
- this.getDataInstanceFromDataType(DataSwimPaceMaxMinutesPer100Yard.type, data.getValue(unit))
860
- ];
861
- }
862
- return accu;
863
- }, []);
864
- case DataSwimPaceMin.type:
865
- return userUnitSettings.swimPaceUnits.reduce((accu, unit) => {
866
- switch (unit) {
867
- case DataSwimPace.type:
868
- return [...accu, this.getDataInstanceFromDataType(DataSwimPaceMin.type, data.getValue(unit))];
869
- case DataSwimPaceMinutesPer100Yard.type:
870
- return [
871
- ...accu,
872
- this.getDataInstanceFromDataType(DataSwimPaceMinMinutesPer100Yard.type, data.getValue(unit))
873
- ];
874
- }
875
- return accu;
876
- }, []);
877
- // Vertical speed
878
- case DataVerticalSpeed.type:
879
- return userUnitSettings.verticalSpeedUnits.reduce((accu, unit) => {
880
- return [...accu, this.getDataInstanceFromDataType(unit, data.getValue(unit))];
881
- }, []);
882
- case DataVerticalSpeedAvg.type:
883
- return userUnitSettings.verticalSpeedUnits.reduce((accu, unit) => {
884
- switch (unit) {
885
- case DataVerticalSpeed.type:
886
- return [...accu, this.getDataInstanceFromDataType(DataVerticalSpeedAvg.type, data.getValue(unit))];
887
- case DataVerticalSpeedFeetPerHour.type:
888
- return [
889
- ...accu,
890
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgFeetPerHour.type, data.getValue(unit))
891
- ];
892
- case DataVerticalSpeedFeetPerMinute.type:
893
- return [
894
- ...accu,
895
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgFeetPerMinute.type, data.getValue(unit))
896
- ];
897
- case DataVerticalSpeedFeetPerSecond.type:
898
- return [
899
- ...accu,
900
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgFeetPerSecond.type, data.getValue(unit))
901
- ];
902
- case DataVerticalSpeedKilometerPerHour.type:
903
- return [
904
- ...accu,
905
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgKilometerPerHour.type, data.getValue(unit))
906
- ];
907
- case DataVerticalSpeedMilesPerHour.type:
908
- return [
909
- ...accu,
910
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgMilesPerHour.type, data.getValue(unit))
911
- ];
912
- case DataVerticalSpeedMetersPerHour.type:
913
- return [
914
- ...accu,
915
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgMetersPerHour.type, data.getValue(unit))
916
- ];
917
- case DataVerticalSpeedMetersPerMinute.type:
918
- return [
919
- ...accu,
920
- this.getDataInstanceFromDataType(DataVerticalSpeedAvgMetersPerMinute.type, data.getValue(unit))
921
- ];
922
- }
923
- return accu;
924
- }, []);
925
- case DataVerticalSpeedMax.type:
926
- return userUnitSettings.verticalSpeedUnits.reduce((accu, unit) => {
927
- switch (unit) {
928
- case DataVerticalSpeed.type:
929
- return [...accu, this.getDataInstanceFromDataType(DataVerticalSpeedMax.type, data.getValue(unit))];
930
- case DataVerticalSpeedFeetPerHour.type:
931
- return [
932
- ...accu,
933
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxFeetPerHour.type, data.getValue(unit))
934
- ];
935
- case DataVerticalSpeedFeetPerMinute.type:
936
- return [
937
- ...accu,
938
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxFeetPerMinute.type, data.getValue(unit))
939
- ];
940
- case DataVerticalSpeedFeetPerSecond.type:
941
- return [
942
- ...accu,
943
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxFeetPerSecond.type, data.getValue(unit))
944
- ];
945
- case DataVerticalSpeedKilometerPerHour.type:
946
- return [
947
- ...accu,
948
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxKilometerPerHour.type, data.getValue(unit))
949
- ];
950
- case DataVerticalSpeedMilesPerHour.type:
951
- return [
952
- ...accu,
953
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxMilesPerHour.type, data.getValue(unit))
954
- ];
955
- case DataVerticalSpeedMetersPerHour.type:
956
- return [
957
- ...accu,
958
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxMetersPerHour.type, data.getValue(unit))
959
- ];
960
- case DataVerticalSpeedMetersPerMinute.type:
961
- return [
962
- ...accu,
963
- this.getDataInstanceFromDataType(DataVerticalSpeedMaxMetersPerMinute.type, data.getValue(unit))
964
- ];
965
- }
966
- return accu;
967
- }, []);
968
- case DataVerticalSpeedMin.type:
969
- return userUnitSettings.verticalSpeedUnits.reduce((accu, unit) => {
970
- switch (unit) {
971
- case DataVerticalSpeed.type:
972
- return [...accu, this.getDataInstanceFromDataType(DataVerticalSpeedMin.type, data.getValue(unit))];
973
- case DataVerticalSpeedFeetPerHour.type:
974
- return [
975
- ...accu,
976
- this.getDataInstanceFromDataType(DataVerticalSpeedMinFeetPerHour.type, data.getValue(unit))
977
- ];
978
- case DataVerticalSpeedFeetPerMinute.type:
979
- return [
980
- ...accu,
981
- this.getDataInstanceFromDataType(DataVerticalSpeedMinFeetPerMinute.type, data.getValue(unit))
982
- ];
983
- case DataVerticalSpeedFeetPerSecond.type:
984
- return [
985
- ...accu,
986
- this.getDataInstanceFromDataType(DataVerticalSpeedMinFeetPerSecond.type, data.getValue(unit))
987
- ];
988
- case DataVerticalSpeedKilometerPerHour.type:
989
- return [
990
- ...accu,
991
- this.getDataInstanceFromDataType(DataVerticalSpeedMinKilometerPerHour.type, data.getValue(unit))
992
- ];
993
- case DataVerticalSpeedMilesPerHour.type:
994
- return [
995
- ...accu,
996
- this.getDataInstanceFromDataType(DataVerticalSpeedMinMilesPerHour.type, data.getValue(unit))
997
- ];
998
- case DataVerticalSpeedMetersPerHour.type:
999
- return [
1000
- ...accu,
1001
- this.getDataInstanceFromDataType(DataVerticalSpeedMinMetersPerHour.type, data.getValue(unit))
1002
- ];
1003
- case DataVerticalSpeedMetersPerMinute.type:
1004
- return [
1005
- ...accu,
1006
- this.getDataInstanceFromDataType(DataVerticalSpeedMinMetersPerMinute.type, data.getValue(unit))
1007
- ];
1008
- }
1009
- return accu;
1010
- }, []);
1011
- default:
1012
- return [data];
1013
- }
1014
- }
1015
- }
1016
- // @todo Convert to enums please and use them on Stream types
1017
- DynamicDataLoader.positionalDataTypes = [DataLatitudeDegrees.type, DataLongitudeDegrees.type];
1018
- DynamicDataLoader.baseDataTypes = [DataSpeed.type, DataDistance.type];
1019
- DynamicDataLoader.basicDataTypes = [
1020
- DataHeartRate.type,
1021
- DataAltitude.type,
1022
- DataCadence.type,
1023
- DataPower.type,
1024
- DataPace.type,
1025
- DataGradeAdjustedSpeed.type,
1026
- DataGradeAdjustedPace.type,
1027
- DataSpeed.type
1028
- ];
1029
- DynamicDataLoader.advancedDataTypes = [
1030
- DataGrade.type,
1031
- DataVerticalSpeed.type,
1032
- DataTemperature.type,
1033
- DataSeaLevelPressure.type,
1034
- DataSatellite5BestSNR.type,
1035
- DataNumberOfSatellites.type,
1036
- DataEVPE.type,
1037
- DataEHPE.type,
1038
- DataGPSAltitude.type,
1039
- DataAbsolutePressure.type,
1040
- DataPeakTrainingEffect.type,
1041
- DataEPOC.type,
1042
- DataEnergy.type,
1043
- DataBatteryCharge.type,
1044
- DataBatteryCurrent.type,
1045
- DataBatteryVoltage.type,
1046
- DataBatteryConsumption.type,
1047
- DataFormPower.type,
1048
- DataLegStiffness.type,
1049
- DataVerticalOscillation.type,
1050
- DataAerobicTrainingEffect.type,
1051
- DataIBI.type,
1052
- DataStrydAltitude.type,
1053
- DataAccumulatedPower.type,
1054
- DataStrydAltitude.type,
1055
- DataStrydDistance.type,
1056
- DataStrydSpeed.type,
1057
- DataLeftBalance.type,
1058
- DataRightBalance.type,
1059
- DataPowerLeft.type,
1060
- DataPowerRight.type,
1061
- DataStanceTime.type,
1062
- DataStanceTimeBalanceLeft.type,
1063
- DataStepLength.type,
1064
- DataVerticalRatio.type,
1065
- DataGroundTime.type,
1066
- DataAirPower.type,
1067
- DataGNSSDistance.type,
1068
- DataDistance.type
1069
- ];
1070
- // @todo perhaps this can be simplified with using getValue if it becomes static of the data it self
1071
- DynamicDataLoader.dataTypeUnitGroups = {
1072
- [DataSpeed.type]: {
1073
- [DataSpeedKilometersPerHour.type]: convertSpeedToSpeedInKilometersPerHour,
1074
- [DataSpeedMilesPerHour.type]: convertSpeedToSpeedInMilesPerHour,
1075
- [DataSpeedFeetPerSecond.type]: convertSpeedToSpeedInFeetPerSecond,
1076
- [DataSpeedMetersPerMinute.type]: convertSpeedToSpeedInMetersPerMinute,
1077
- [DataSpeedFeetPerMinute.type]: convertSpeedToSpeedInFeetPerMinute,
1078
- [DataSpeedKnots.type]: convertSpeedToSpeedInKnots
1079
- },
1080
- [DataGradeAdjustedSpeed.type]: {
1081
- [DataGradeAdjustedSpeedKilometersPerHour.type]: convertSpeedToSpeedInKilometersPerHour,
1082
- [DataGradeAdjustedSpeedMilesPerHour.type]: convertSpeedToSpeedInMilesPerHour,
1083
- [DataGradeAdjustedSpeedFeetPerSecond.type]: convertSpeedToSpeedInFeetPerSecond,
1084
- [DataGradeAdjustedSpeedMetersPerMinute.type]: convertSpeedToSpeedInMetersPerMinute,
1085
- [DataGradeAdjustedSpeedFeetPerMinute.type]: convertSpeedToSpeedInFeetPerMinute,
1086
- [DataGradeAdjustedSpeedKnots.type]: convertSpeedToSpeedInKnots
1087
- },
1088
- [DataPace.type]: {
1089
- [DataPaceMinutesPerMile.type]: convertPaceToPaceInMinutesPerMile
1090
- },
1091
- [DataGradeAdjustedPace.type]: {
1092
- [DataGradeAdjustedPaceMinutesPerMile.type]: convertPaceToPaceInMinutesPerMile
1093
- },
1094
- [DataSwimPace.type]: {
1095
- [DataSwimPaceMinutesPer100Yard.type]: convertSwimPaceToSwimPacePer100Yard
1096
- },
1097
- [DataVerticalSpeed.type]: {
1098
- [DataVerticalSpeedFeetPerSecond.type]: convertSpeedToSpeedInFeetPerSecond,
1099
- [DataVerticalSpeedMetersPerMinute.type]: convertSpeedToSpeedInMetersPerMinute,
1100
- [DataVerticalSpeedFeetPerMinute.type]: convertSpeedToSpeedInFeetPerMinute,
1101
- [DataVerticalSpeedMetersPerHour.type]: convertSpeedToSpeedInMetersPerHour,
1102
- [DataVerticalSpeedFeetPerHour.type]: convertSpeedToSpeedInFeetPerHour,
1103
- [DataVerticalSpeedKilometerPerHour.type]: convertSpeedToSpeedInKilometersPerHour,
1104
- [DataVerticalSpeedMilesPerHour.type]: convertSpeedToSpeedInMilesPerHour
1105
- },
1106
- [DataDistance.type]: {
1107
- [DataDistanceMiles.type]: convertMetersToMiles
1108
- }
1109
- };
1110
- // @todo perhaps GAS?
1111
- DynamicDataLoader.speedDerivedDataTypes = [DataPace.type, DataGradeAdjustedPace.type, DataSwimPace.type];
1112
- DynamicDataLoader.dataTypeMinDataType = {
1113
- [DataAltitude.type]: DataAltitudeMin.type,
1114
- [DataHeartRate.type]: DataHeartRateMin.type,
1115
- [DataSpeed.type]: DataSpeedMin.type,
1116
- [DataSpeedKilometersPerHour.type]: DataSpeedMinKilometersPerHour.type,
1117
- [DataSpeedMilesPerHour.type]: DataSpeedMinMilesPerHour.type,
1118
- [DataSpeedFeetPerSecond.type]: DataSpeedMinFeetPerSecond.type,
1119
- [DataSpeedMetersPerMinute.type]: DataSpeedMinMetersPerMinute.type,
1120
- [DataSpeedKnots.type]: DataSpeedMinKnots.type,
1121
- [DataGradeAdjustedSpeed.type]: DataGradeAdjustedSpeedMin.type,
1122
- [DataGradeAdjustedSpeedKilometersPerHour.type]: DataGradeAdjustedSpeedMinKilometersPerHour.type,
1123
- [DataGradeAdjustedSpeedMilesPerHour.type]: DataGradeAdjustedSpeedMinMilesPerHour.type,
1124
- [DataGradeAdjustedSpeedFeetPerSecond.type]: DataGradeAdjustedSpeedMinFeetPerSecond.type,
1125
- [DataGradeAdjustedSpeedMetersPerMinute.type]: DataGradeAdjustedSpeedMinMetersPerMinute.type,
1126
- [DataGradeAdjustedSpeedKnots.type]: DataGradeAdjustedSpeedMinKnots.type,
1127
- [DataPace.type]: DataPaceMin.type,
1128
- [DataPaceMinutesPerMile.type]: DataPaceMinMinutesPerMile.type,
1129
- [DataGradeAdjustedPace.type]: DataGradeAdjustedPaceMin.type,
1130
- [DataGradeAdjustedPaceMinutesPerMile.type]: DataGradeAdjustedPaceMinMinutesPerMile.type,
1131
- [DataPower.type]: DataPowerMin.type,
1132
- [DataCadence.type]: DataCadenceMin.type,
1133
- [DataTemperature.type]: DataTemperatureMin.type
1134
- };
1135
- DynamicDataLoader.dataTypeMaxDataType = {
1136
- [DataAltitude.type]: DataAltitudeMax.type,
1137
- [DataHeartRate.type]: DataHeartRateMax.type,
1138
- [DataSpeed.type]: DataSpeedMax.type,
1139
- [DataSpeedKilometersPerHour.type]: DataSpeedMaxKilometersPerHour.type,
1140
- [DataSpeedMilesPerHour.type]: DataSpeedMaxMilesPerHour.type,
1141
- [DataSpeedFeetPerSecond.type]: DataSpeedMaxFeetPerSecond.type,
1142
- [DataSpeedMetersPerMinute.type]: DataSpeedMaxMetersPerMinute.type,
1143
- [DataSpeedKnots.type]: DataSpeedMaxKnots.type,
1144
- [DataGradeAdjustedSpeed.type]: DataGradeAdjustedSpeedMax.type,
1145
- [DataGradeAdjustedSpeedKilometersPerHour.type]: DataGradeAdjustedSpeedMaxKilometersPerHour.type,
1146
- [DataGradeAdjustedSpeedMilesPerHour.type]: DataGradeAdjustedSpeedMaxMilesPerHour.type,
1147
- [DataGradeAdjustedSpeedFeetPerSecond.type]: DataGradeAdjustedSpeedMaxFeetPerSecond.type,
1148
- [DataGradeAdjustedSpeedMetersPerMinute.type]: DataGradeAdjustedSpeedMaxMetersPerMinute.type,
1149
- [DataGradeAdjustedSpeedKnots.type]: DataGradeAdjustedSpeedMaxKnots.type,
1150
- [DataPace.type]: DataPaceMax.type,
1151
- [DataPaceMinutesPerMile.type]: DataPaceMaxMinutesPerMile.type,
1152
- [DataGradeAdjustedPace.type]: DataGradeAdjustedPaceMax.type,
1153
- [DataGradeAdjustedPaceMinutesPerMile.type]: DataGradeAdjustedPaceMaxMinutesPerMile.type,
1154
- [DataPower.type]: DataPowerMax.type,
1155
- [DataCadence.type]: DataCadenceMax.type,
1156
- [DataTemperature.type]: DataTemperatureMax.type
1157
- };
1158
- DynamicDataLoader.dataTypeAvgDataType = {
1159
- [DataAltitude.type]: DataAltitudeAvg.type,
1160
- [DataHeartRate.type]: DataHeartRateAvg.type,
1161
- [DataSpeed.type]: DataSpeedAvg.type,
1162
- [DataSpeedKilometersPerHour.type]: DataSpeedAvgKilometersPerHour.type,
1163
- [DataSpeedMilesPerHour.type]: DataSpeedAvgMilesPerHour.type,
1164
- [DataSpeedFeetPerSecond.type]: DataSpeedAvgFeetPerSecond.type,
1165
- [DataSpeedMetersPerMinute.type]: DataSpeedAvgMetersPerMinute.type,
1166
- [DataSpeedKnots.type]: DataSpeedAvgKnots.type,
1167
- [DataGradeAdjustedSpeed.type]: DataGradeAdjustedSpeedAvg.type,
1168
- [DataGradeAdjustedSpeedKilometersPerHour.type]: DataGradeAdjustedSpeedAvgKilometersPerHour.type,
1169
- [DataGradeAdjustedSpeedMilesPerHour.type]: DataGradeAdjustedSpeedAvgMilesPerHour.type,
1170
- [DataGradeAdjustedSpeedFeetPerSecond.type]: DataGradeAdjustedSpeedAvgFeetPerSecond.type,
1171
- [DataGradeAdjustedSpeedMetersPerMinute.type]: DataGradeAdjustedSpeedAvgMetersPerMinute.type,
1172
- [DataGradeAdjustedSpeedKnots.type]: DataGradeAdjustedSpeedAvgKnots.type,
1173
- [DataPace.type]: DataPaceAvg.type,
1174
- [DataPaceMinutesPerMile.type]: DataPaceAvgMinutesPerMile.type,
1175
- [DataGradeAdjustedPace.type]: DataGradeAdjustedPaceAvg.type,
1176
- [DataGradeAdjustedPaceMinutesPerMile.type]: DataGradeAdjustedPaceAvgMinutesPerMile.type,
1177
- [DataPower.type]: DataPowerAvg.type,
1178
- [DataCadence.type]: DataCadenceAvg.type,
1179
- [DataTemperature.type]: DataTemperatureAvg.type
1180
- };
1181
- DynamicDataLoader.allUnitDerivedDataTypes = Object.keys(DynamicDataLoader.dataTypeUnitGroups).reduce((accu, key) => accu.concat(Object.keys(DynamicDataLoader.dataTypeUnitGroups[key])), []);
1182
- DynamicDataLoader.zoneStatsTypeMap = [
1183
- {
1184
- type: DataHeartRate.type,
1185
- stats: [
1186
- DataHeartRateZoneOneDuration.type,
1187
- DataHeartRateZoneTwoDuration.type,
1188
- DataHeartRateZoneThreeDuration.type,
1189
- DataHeartRateZoneFourDuration.type,
1190
- DataHeartRateZoneFiveDuration.type
1191
- ]
1192
- },
1193
- {
1194
- type: DataSpeed.type,
1195
- stats: [
1196
- DataSpeedZoneOneDuration.type,
1197
- DataSpeedZoneTwoDuration.type,
1198
- DataSpeedZoneThreeDuration.type,
1199
- DataSpeedZoneFourDuration.type,
1200
- DataSpeedZoneFiveDuration.type
1201
- ]
1202
- },
1203
- {
1204
- type: DataPower.type,
1205
- stats: [
1206
- DataPowerZoneOneDuration.type,
1207
- DataPowerZoneTwoDuration.type,
1208
- DataPowerZoneThreeDuration.type,
1209
- DataPowerZoneFourDuration.type,
1210
- DataPowerZoneFiveDuration.type
1211
- ]
1212
- }
1213
- ];