@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.
- package/lib/cjs/data/data.array.d.ts +2 -3
- package/lib/cjs/data/data.array.js +1 -1
- package/lib/cjs/data/data.bare.d.ts +2 -1
- package/lib/cjs/data/data.d.ts +5 -5
- package/lib/cjs/data/data.number.d.ts +1 -2
- package/lib/cjs/data/data.position.d.ts +2 -3
- package/lib/cjs/data/data.position.js +1 -1
- package/lib/cjs/data/data.string.d.ts +2 -3
- package/lib/cjs/data/data.string.js +1 -1
- package/lib/esm/data/data.array.d.ts +2 -3
- package/lib/esm/data/data.bare.d.ts +2 -1
- package/lib/esm/data/data.d.ts +5 -5
- package/lib/esm/data/data.number.d.ts +1 -2
- package/lib/esm/data/data.position.d.ts +2 -3
- package/lib/esm/data/data.string.d.ts +2 -3
- package/lib/esm/index.js +12034 -152
- package/package.json +2 -2
- package/.editorconfig +0 -14
- package/.eslintignore +0 -4
- package/.eslintrc.js +0 -9
- package/.prettierignore +0 -25
- package/.prettierrc.json +0 -12
- package/CODE_OF_CONDUCT.md +0 -76
- package/jest.config.js +0 -23
- package/lib/esm/activities/activity-parsing-options.js +0 -19
- package/lib/esm/activities/activity.interface.js +0 -1
- package/lib/esm/activities/activity.js +0 -281
- package/lib/esm/activities/activity.json.interface.js +0 -1
- package/lib/esm/activities/activity.spec.js +0 -348
- package/lib/esm/activities/activity.types.js +0 -1046
- package/lib/esm/activities/activityt-types.spec.js +0 -16
- package/lib/esm/activities/devices/device.interface.js +0 -1
- package/lib/esm/activities/devices/device.js +0 -26
- package/lib/esm/activities/devices/device.json.interface.js +0 -1
- package/lib/esm/constants/constants.js +0 -8
- package/lib/esm/creators/creator.interface.js +0 -1
- package/lib/esm/creators/creator.js +0 -37
- package/lib/esm/creators/creator.json.interface.js +0 -1
- package/lib/esm/creators/creator.spec.js +0 -25
- package/lib/esm/data/data-active-lap.js +0 -4
- package/lib/esm/data/data-active-lengths.js +0 -4
- package/lib/esm/data/data-aerobic-training-effect.js +0 -8
- package/lib/esm/data/data-anaerobic-training-effect.js +0 -8
- package/lib/esm/data/data-stance-time-balance-left.js +0 -4
- package/lib/esm/data/data-stance-time-balance-right.js +0 -4
- package/lib/esm/data/data-stance-time-balance.js +0 -3
- package/lib/esm/data/data-store.spec.js +0 -78
- package/lib/esm/data/data-total-cycles.js +0 -4
- package/lib/esm/data/data.absolute-pressure.js +0 -5
- package/lib/esm/data/data.accumulated-power.js +0 -8
- package/lib/esm/data/data.activity-types.js +0 -7
- package/lib/esm/data/data.air-power-avg.js +0 -4
- package/lib/esm/data/data.air-power-max.js +0 -4
- package/lib/esm/data/data.air-power-min.js +0 -4
- package/lib/esm/data/data.air-power.js +0 -8
- package/lib/esm/data/data.alti-baro-profile.js +0 -4
- package/lib/esm/data/data.altitude-avg.js +0 -4
- package/lib/esm/data/data.altitude-gps.js +0 -5
- package/lib/esm/data/data.altitude-max.js +0 -4
- package/lib/esm/data/data.altitude-min.js +0 -4
- package/lib/esm/data/data.altitude-smooth.js +0 -4
- package/lib/esm/data/data.altitude.js +0 -8
- package/lib/esm/data/data.array.js +0 -13
- package/lib/esm/data/data.ascent-time.js +0 -4
- package/lib/esm/data/data.ascent.js +0 -4
- package/lib/esm/data/data.auto-lap-distance.js +0 -5
- package/lib/esm/data/data.auto-lap-duration.js +0 -4
- package/lib/esm/data/data.auto-lap-used.js +0 -7
- package/lib/esm/data/data.auto-pause-used.js +0 -7
- package/lib/esm/data/data.avg-stride-length.js +0 -4
- package/lib/esm/data/data.balance.js +0 -6
- package/lib/esm/data/data.bare.js +0 -4
- package/lib/esm/data/data.battery-charge.js +0 -8
- package/lib/esm/data/data.battery-consumption.js +0 -8
- package/lib/esm/data/data.battery-current.js +0 -8
- package/lib/esm/data/data.battery-life-estimation.js +0 -4
- package/lib/esm/data/data.battery-voltage.js +0 -8
- package/lib/esm/data/data.bike-pod-used.js +0 -7
- package/lib/esm/data/data.boolean.js +0 -9
- package/lib/esm/data/data.cadence-avg.js +0 -4
- package/lib/esm/data/data.cadence-max.js +0 -4
- package/lib/esm/data/data.cadence-min.js +0 -4
- package/lib/esm/data/data.cadence.js +0 -8
- package/lib/esm/data/data.cycling-dynamics.js +0 -3
- package/lib/esm/data/data.cycling-position.js +0 -37
- package/lib/esm/data/data.cycling-seated-time.js +0 -5
- package/lib/esm/data/data.cycling-standing-time.js +0 -5
- package/lib/esm/data/data.descent-time.js +0 -4
- package/lib/esm/data/data.descent.js +0 -4
- package/lib/esm/data/data.description.js +0 -4
- package/lib/esm/data/data.device-location.js +0 -4
- package/lib/esm/data/data.device-names.js +0 -7
- package/lib/esm/data/data.distance.js +0 -15
- package/lib/esm/data/data.duration.js +0 -56
- package/lib/esm/data/data.ehpe.js +0 -5
- package/lib/esm/data/data.enabled-navigation-systems.js +0 -4
- package/lib/esm/data/data.end-altitude.js +0 -4
- package/lib/esm/data/data.end-position.js +0 -4
- package/lib/esm/data/data.energy.js +0 -8
- package/lib/esm/data/data.epoc.js +0 -5
- package/lib/esm/data/data.event.js +0 -3
- package/lib/esm/data/data.evpe.js +0 -4
- package/lib/esm/data/data.feeling.js +0 -15
- package/lib/esm/data/data.foot-pod-used.js +0 -7
- package/lib/esm/data/data.form-power.js +0 -4
- package/lib/esm/data/data.fused-altitude.js +0 -7
- package/lib/esm/data/data.fused-location.js +0 -7
- package/lib/esm/data/data.gnss-distance.js +0 -4
- package/lib/esm/data/data.grade-adjusted-pace-avg.js +0 -15
- package/lib/esm/data/data.grade-adjusted-pace-max.js +0 -15
- package/lib/esm/data/data.grade-adjusted-pace-min.js +0 -15
- package/lib/esm/data/data.grade-adjusted-pace.js +0 -25
- package/lib/esm/data/data.grade-adjusted-speed-avg.js +0 -46
- package/lib/esm/data/data.grade-adjusted-speed-max.js +0 -46
- package/lib/esm/data/data.grade-adjusted-speed-min.js +0 -46
- package/lib/esm/data/data.grade-adjusted-speed.js +0 -78
- package/lib/esm/data/data.grade-smooth.js +0 -7
- package/lib/esm/data/data.grade.js +0 -7
- package/lib/esm/data/data.ground-time.js +0 -8
- package/lib/esm/data/data.heart-rate-avg.js +0 -4
- package/lib/esm/data/data.heart-rate-max.js +0 -4
- package/lib/esm/data/data.heart-rate-min.js +0 -4
- package/lib/esm/data/data.heart-rate-used.js +0 -7
- package/lib/esm/data/data.heart-rate-zone-five-duration.js +0 -4
- package/lib/esm/data/data.heart-rate-zone-four-duration.js +0 -4
- package/lib/esm/data/data.heart-rate-zone-one-duration.js +0 -4
- package/lib/esm/data/data.heart-rate-zone-three-duration.js +0 -4
- package/lib/esm/data/data.heart-rate-zone-two-duration.js +0 -4
- package/lib/esm/data/data.heart-rate.js +0 -8
- package/lib/esm/data/data.ibi.js +0 -8
- package/lib/esm/data/data.interface.js +0 -5
- package/lib/esm/data/data.js +0 -62
- package/lib/esm/data/data.json.interface.js +0 -1
- package/lib/esm/data/data.latitude-degrees.js +0 -5
- package/lib/esm/data/data.left-balance.js +0 -4
- package/lib/esm/data/data.leg-stiffness.js +0 -16
- package/lib/esm/data/data.longitude-degrees.js +0 -5
- package/lib/esm/data/data.moving-time.js +0 -4
- package/lib/esm/data/data.number-of-satellites.js +0 -7
- package/lib/esm/data/data.number-of.samples.js +0 -4
- package/lib/esm/data/data.number.js +0 -13
- package/lib/esm/data/data.pace-avg.js +0 -8
- package/lib/esm/data/data.pace-max.js +0 -8
- package/lib/esm/data/data.pace-min.js +0 -8
- package/lib/esm/data/data.pace.js +0 -46
- package/lib/esm/data/data.pause.js +0 -4
- package/lib/esm/data/data.peak-epoc.js +0 -7
- package/lib/esm/data/data.peak-training-effect.js +0 -4
- package/lib/esm/data/data.percent.js +0 -4
- package/lib/esm/data/data.pool-length.js +0 -5
- package/lib/esm/data/data.position.interface.js +0 -1
- package/lib/esm/data/data.position.js +0 -18
- package/lib/esm/data/data.power-avg.js +0 -4
- package/lib/esm/data/data.power-down.js +0 -4
- package/lib/esm/data/data.power-intensity-factor.js +0 -5
- package/lib/esm/data/data.power-left.js +0 -4
- package/lib/esm/data/data.power-max.js +0 -4
- package/lib/esm/data/data.power-min.js +0 -4
- package/lib/esm/data/data.power-normalized.js +0 -4
- package/lib/esm/data/data.power-pedal-smoothness-left.js +0 -4
- package/lib/esm/data/data.power-pedal-smoothness-right.js +0 -4
- package/lib/esm/data/data.power-pod-used.js +0 -7
- package/lib/esm/data/data.power-right.js +0 -4
- package/lib/esm/data/data.power-torque-effectiveness-left.js +0 -4
- package/lib/esm/data/data.power-torque-effectiveness-right.js +0 -4
- package/lib/esm/data/data.power-training-stress-score.js +0 -5
- package/lib/esm/data/data.power-up.js +0 -4
- package/lib/esm/data/data.power-work.js +0 -5
- package/lib/esm/data/data.power-zone-five-duration.js +0 -4
- package/lib/esm/data/data.power-zone-four-duration.js +0 -4
- package/lib/esm/data/data.power-zone-one-duration.js +0 -4
- package/lib/esm/data/data.power-zone-three-duration.js +0 -4
- package/lib/esm/data/data.power-zone-two-duration.js +0 -4
- package/lib/esm/data/data.power.js +0 -8
- package/lib/esm/data/data.recovery-time.js +0 -7
- package/lib/esm/data/data.rider-position-change-event.js +0 -8
- package/lib/esm/data/data.right-balance.js +0 -4
- package/lib/esm/data/data.rpe.js +0 -23
- package/lib/esm/data/data.satellite-5-best-snr.js +0 -4
- package/lib/esm/data/data.sea-level-pressure.js +0 -5
- package/lib/esm/data/data.spec.js +0 -25
- package/lib/esm/data/data.speed-avg.js +0 -46
- package/lib/esm/data/data.speed-max.js +0 -46
- package/lib/esm/data/data.speed-min.js +0 -46
- package/lib/esm/data/data.speed-zone-five-duration.js +0 -4
- package/lib/esm/data/data.speed-zone-four-duration.js +0 -4
- package/lib/esm/data/data.speed-zone-one-duration.js +0 -4
- package/lib/esm/data/data.speed-zone-three-duration.js +0 -4
- package/lib/esm/data/data.speed-zone-two-duration.js +0 -4
- package/lib/esm/data/data.speed.js +0 -88
- package/lib/esm/data/data.sport-profile-name.js +0 -4
- package/lib/esm/data/data.stance-time.js +0 -5
- package/lib/esm/data/data.start-altitude.js +0 -4
- package/lib/esm/data/data.start-event.js +0 -4
- package/lib/esm/data/data.start-position.js +0 -4
- package/lib/esm/data/data.step-length.js +0 -4
- package/lib/esm/data/data.steps-old.js +0 -4
- package/lib/esm/data/data.steps.js +0 -4
- package/lib/esm/data/data.stop-all-event.js +0 -4
- package/lib/esm/data/data.stop-event.js +0 -4
- package/lib/esm/data/data.store.export.spec.js +0 -66
- package/lib/esm/data/data.store.js +0 -1213
- package/lib/esm/data/data.string.js +0 -13
- package/lib/esm/data/data.stryd-altitude.js +0 -4
- package/lib/esm/data/data.stryd-distance.js +0 -4
- package/lib/esm/data/data.stryd-speed.js +0 -4
- package/lib/esm/data/data.swim-pace-avg.js +0 -8
- package/lib/esm/data/data.swim-pace-max.js +0 -8
- package/lib/esm/data/data.swim-pace-min.js +0 -8
- package/lib/esm/data/data.swim-pace.js +0 -19
- package/lib/esm/data/data.swolf-25m.js +0 -4
- package/lib/esm/data/data.swolf-50m.js +0 -4
- package/lib/esm/data/data.target-distance.js +0 -4
- package/lib/esm/data/data.target-heart-rate-zone.js +0 -4
- package/lib/esm/data/data.target-power-zone.js +0 -4
- package/lib/esm/data/data.target-speed-zone.js +0 -4
- package/lib/esm/data/data.target-time.js +0 -4
- package/lib/esm/data/data.temperature-avg.js +0 -4
- package/lib/esm/data/data.temperature-max.js +0 -4
- package/lib/esm/data/data.temperature-min.js +0 -4
- package/lib/esm/data/data.temperature.js +0 -8
- package/lib/esm/data/data.time.js +0 -6
- package/lib/esm/data/data.timer-time.js +0 -4
- package/lib/esm/data/data.vertical-oscillation.js +0 -5
- package/lib/esm/data/data.vertical-ratio.js +0 -5
- package/lib/esm/data/data.vertical-speed-avg.js +0 -53
- package/lib/esm/data/data.vertical-speed-max.js +0 -53
- package/lib/esm/data/data.vertical-speed-min.js +0 -53
- package/lib/esm/data/data.vertical-speed.js +0 -103
- package/lib/esm/data/data.vo2-max.js +0 -7
- package/lib/esm/data/ibi/data.ibi.filters.js +0 -52
- package/lib/esm/data/ibi/data.ibi.js +0 -98
- package/lib/esm/data/ibi/data.ibi.spec.js +0 -66
- package/lib/esm/duration/duration.class.abstract.js +0 -36
- package/lib/esm/duration/duration.class.interface.js +0 -1
- package/lib/esm/errors/duration-exceeded-event-lib.error.js +0 -9
- package/lib/esm/errors/empty-event-sports-libs.error.js +0 -9
- package/lib/esm/errors/event-lib.error.js +0 -8
- package/lib/esm/errors/lib.error.js +0 -6
- package/lib/esm/errors/parsing-event-lib.error.js +0 -9
- package/lib/esm/events/adapters/exporters/exporter.gpx.js +0 -75
- package/lib/esm/events/adapters/exporters/exporter.interface.js +0 -1
- package/lib/esm/events/adapters/exporters/exporter.json.js +0 -20
- package/lib/esm/events/adapters/file-type.enum.js +0 -7
- package/lib/esm/events/adapters/importers/fit/importer.fit.ant-plus.device.names.js +0 -25
- package/lib/esm/events/adapters/importers/fit/importer.fit.coros.device.names.js +0 -5
- package/lib/esm/events/adapters/importers/fit/importer.fit.development.device.names.js +0 -4
- package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.device.names.js +0 -462
- package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.data.js +0 -877
- package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.js +0 -106
- package/lib/esm/events/adapters/importers/fit/importer.fit.garmin.profile.mapper.spec.js +0 -32
- package/lib/esm/events/adapters/importers/fit/importer.fit.hammerhead.device.names.js +0 -4
- package/lib/esm/events/adapters/importers/fit/importer.fit.integration.spec.js +0 -44
- package/lib/esm/events/adapters/importers/fit/importer.fit.js +0 -978
- package/lib/esm/events/adapters/importers/fit/importer.fit.lezyne.device.names.js +0 -3
- package/lib/esm/events/adapters/importers/fit/importer.fit.magellan.device.names.js +0 -5
- package/lib/esm/events/adapters/importers/fit/importer.fit.mapper.js +0 -231
- package/lib/esm/events/adapters/importers/fit/importer.fit.saris.device.names.js +0 -3
- package/lib/esm/events/adapters/importers/fit/importer.fit.spec.js +0 -326
- package/lib/esm/events/adapters/importers/fit/importer.fit.srm.device.names.js +0 -7
- package/lib/esm/events/adapters/importers/fit/importer.fit.suunto.device.names.js +0 -16
- package/lib/esm/events/adapters/importers/fit/importer.fit.wahoo.device.names.js +0 -10
- package/lib/esm/events/adapters/importers/gpx/gx-parser.js +0 -36
- package/lib/esm/events/adapters/importers/gpx/importer.gpx.integration.spec.js +0 -44
- package/lib/esm/events/adapters/importers/gpx/importer.gpx.js +0 -102
- package/lib/esm/events/adapters/importers/gpx/importer.gpx.mapper.js +0 -142
- package/lib/esm/events/adapters/importers/gpx/importer.gpx.spec.js +0 -71
- package/lib/esm/events/adapters/importers/json/importer.json.js +0 -160
- package/lib/esm/events/adapters/importers/sample-info.interface.js +0 -1
- package/lib/esm/events/adapters/importers/suunto/importer.suunto.activity.ids.js +0 -85
- package/lib/esm/events/adapters/importers/suunto/importer.suunto.device.names.js +0 -26
- package/lib/esm/events/adapters/importers/suunto/importer.suunto.integration.spec.js +0 -44
- package/lib/esm/events/adapters/importers/suunto/importer.suunto.json.js +0 -717
- package/lib/esm/events/adapters/importers/suunto/importer.suunto.sml.js +0 -125
- package/lib/esm/events/adapters/importers/tcx/importer.tcx.integration.spec.js +0 -46
- package/lib/esm/events/adapters/importers/tcx/importer.tcx.js +0 -442
- package/lib/esm/events/adapters/importers/tcx/importer.tcx.mapper.js +0 -91
- package/lib/esm/events/adapters/importers/tcx/utils.tcx.js +0 -36
- package/lib/esm/events/event.interface.js +0 -1
- package/lib/esm/events/event.js +0 -123
- package/lib/esm/events/event.json.interface.js +0 -1
- package/lib/esm/events/event.spec.js +0 -51
- package/lib/esm/events/utilities/activity.utilities.js +0 -1841
- package/lib/esm/events/utilities/activity.utilities.spec.js +0 -373
- package/lib/esm/events/utilities/event.utilities.js +0 -57
- package/lib/esm/events/utilities/grade-calculator/grade-calculator.js +0 -121
- package/lib/esm/events/utilities/grade-calculator/grade-calculator.spec.js +0 -93
- package/lib/esm/events/utilities/grade-calculator/low-pass-filter.js +0 -86
- package/lib/esm/events/utilities/helpers.js +0 -162
- package/lib/esm/geodesy/adapters/adapter.interface.js +0 -1
- package/lib/esm/geodesy/adapters/geolib.adapter.js +0 -28
- package/lib/esm/id/id.abstract.class.js +0 -9
- package/lib/esm/id/id.class.interface.js +0 -1
- package/lib/esm/id/id.class.spec.js +0 -13
- package/lib/esm/intensity-zones/intensity-zones.interface.js +0 -1
- package/lib/esm/intensity-zones/intensity-zones.js +0 -29
- package/lib/esm/intensity-zones/intensity-zones.json.interface.js +0 -1
- package/lib/esm/intensity-zones/intensity-zones.spec.js +0 -30
- package/lib/esm/laps/lap.interface.js +0 -1
- package/lib/esm/laps/lap.js +0 -29
- package/lib/esm/laps/lap.json.interface.js +0 -1
- package/lib/esm/laps/lap.types.js +0 -52
- package/lib/esm/meta-data/event-meta-data.interface.js +0 -6
- package/lib/esm/meta-data/meta-data.js +0 -57
- package/lib/esm/meta-data/meta-data.json.interface.js +0 -1
- package/lib/esm/privacy/privacy.class.interface.js +0 -5
- package/lib/esm/serializable/serializable.class.interface.js +0 -1
- package/lib/esm/service-tokens/oauth1-service-token.interface.js +0 -1
- package/lib/esm/service-tokens/oauth2-service-token.interface.js +0 -1
- package/lib/esm/specs/activities-parsing.integration.spec.js +0 -1847
- package/lib/esm/specs/activity-duration-stream.integration.spec.js +0 -57
- package/lib/esm/specs/fixtures/streams/strava/rides/3171472783.json +0 -52534
- package/lib/esm/specs/fixtures/streams/strava/rides/3171487458.json +0 -78818
- package/lib/esm/specs/fixtures/streams/strava/rides/343080886.json +0 -105090
- package/lib/esm/specs/fixtures/streams/strava/rides/5910143591.json +0 -110711
- package/lib/esm/specs/fixtures/streams/strava/runs/2451375851.json +0 -74846
- package/lib/esm/specs/fixtures/streams/strava/runs/2709634581.json +0 -66817
- package/lib/esm/specs/fixtures/streams/strava/runs/3156040843.json +0 -17594
- package/lib/esm/specs/fixtures/streams/strava/runs/3182900697.json +0 -17322
- package/lib/esm/specs/fixtures/streams/strava/runs/3183465494.json +0 -20463
- package/lib/esm/specs/fixtures/streams/strava/runs/3183490558.json +0 -58202
- package/lib/esm/specs/spec-utils.js +0 -159
- package/lib/esm/specs/strava-streams-compliance.spec.js +0 -951
- package/lib/esm/stats/stats.class.abstract.js +0 -32
- package/lib/esm/stats/stats.class.interface.js +0 -1
- package/lib/esm/stats/stats.json.interface.js +0 -1
- package/lib/esm/streams/compressed.stream.interface.js +0 -12
- package/lib/esm/streams/ibi-stream.js +0 -43
- package/lib/esm/streams/low-pass.stream.filter.js +0 -9
- package/lib/esm/streams/stream.filter.interface.js +0 -1
- package/lib/esm/streams/stream.interface.js +0 -1
- package/lib/esm/streams/stream.js +0 -72
- package/lib/esm/streams/stream.spec.js +0 -168
- package/lib/esm/tiles/tile.settings.interface.js +0 -41
- package/lib/esm/users/settings/dashboard/user.dashboard.settings.interface.js +0 -13
- package/lib/esm/users/settings/user.app.settings.interface.js +0 -5
- package/lib/esm/users/settings/user.chart.settings.interface.js +0 -23
- package/lib/esm/users/settings/user.map.settings.interface.js +0 -22
- package/lib/esm/users/settings/user.my-tracks.settings.interface.js +0 -1
- package/lib/esm/users/settings/user.settings.interface.js +0 -1
- package/lib/esm/users/settings/user.stats-settings.interface.js +0 -1
- package/lib/esm/users/settings/user.summaries.settings.interface.js +0 -1
- package/lib/esm/users/settings/user.unit.settings.interface.js +0 -73
- package/lib/esm/users/user.account.privileges.interface.js +0 -1
- package/lib/esm/users/user.export-to-csv.settings.interface.js +0 -1
- package/lib/esm/users/user.interface.js +0 -1
- package/lib/esm/users/user.js +0 -38
- package/lib/esm/users/user.service.meta.interface.js +0 -1
- package/tsconfig.cjs.json +0 -7
- package/tsconfig.esm.json +0 -8
- package/tsconfig.lib.json +0 -8
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
export class LowPassFilter {
|
|
2
|
-
static smooth(values, smoothing = 0.5) {
|
|
3
|
-
return new LowPassFilter(smoothing).smoothArray(values);
|
|
4
|
-
}
|
|
5
|
-
constructor(smoothing) {
|
|
6
|
-
this._smoothing = smoothing || 0.5; // must be smaller than 1
|
|
7
|
-
this._buffer = []; // FIFO queue
|
|
8
|
-
this._bufferMaxSize = 10;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Init buffer with array of values
|
|
12
|
-
* @param {number[]} values
|
|
13
|
-
* @returns {number[]}
|
|
14
|
-
*/
|
|
15
|
-
init(values) {
|
|
16
|
-
for (let i = 0; i < values.length; i++) {
|
|
17
|
-
this.__push(values[i]);
|
|
18
|
-
}
|
|
19
|
-
return this._buffer;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Add new value to buffer (FIFO queue)
|
|
23
|
-
* @param {number} value
|
|
24
|
-
* @returns {number}
|
|
25
|
-
* @private
|
|
26
|
-
*/
|
|
27
|
-
__push(value) {
|
|
28
|
-
const removed = this._buffer.length === this._bufferMaxSize ? this._buffer.shift() : 0;
|
|
29
|
-
this._buffer.push(value);
|
|
30
|
-
return removed;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Smooth value from stream
|
|
34
|
-
* @param {number} nextValue
|
|
35
|
-
* @returns {number}
|
|
36
|
-
*/
|
|
37
|
-
next(nextValue) {
|
|
38
|
-
// push new value to the end, and remove oldest one
|
|
39
|
-
const removed = this.__push(nextValue);
|
|
40
|
-
// smooth value using all values from buffer
|
|
41
|
-
const result = this._buffer.reduce((last, current) => {
|
|
42
|
-
return this._smoothing * current + (1 - this._smoothing) * last;
|
|
43
|
-
}, removed);
|
|
44
|
-
// replace smoothed value
|
|
45
|
-
this._buffer[this._buffer.length - 1] = result;
|
|
46
|
-
return result;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Smooth array of values
|
|
50
|
-
* @param {number[]} values
|
|
51
|
-
* @returns {number[]}
|
|
52
|
-
*/
|
|
53
|
-
smoothArray(values) {
|
|
54
|
-
let value = values.filter(v => Number.isFinite(v))[0];
|
|
55
|
-
if (!value) {
|
|
56
|
-
return values;
|
|
57
|
-
}
|
|
58
|
-
for (let i = 1; i < values.length; i++) {
|
|
59
|
-
if (values[i] === null) {
|
|
60
|
-
continue;
|
|
61
|
-
}
|
|
62
|
-
const currentValue = values[i];
|
|
63
|
-
value += (currentValue - value) * this._smoothing;
|
|
64
|
-
values[i] = Math.round(value * 100) / 100;
|
|
65
|
-
}
|
|
66
|
-
return values;
|
|
67
|
-
}
|
|
68
|
-
get bufferMaxSize() {
|
|
69
|
-
return this._bufferMaxSize;
|
|
70
|
-
}
|
|
71
|
-
set bufferMaxSize(value) {
|
|
72
|
-
this._bufferMaxSize = value;
|
|
73
|
-
}
|
|
74
|
-
get buffer() {
|
|
75
|
-
return this._buffer;
|
|
76
|
-
}
|
|
77
|
-
set buffer(value) {
|
|
78
|
-
this._buffer = value;
|
|
79
|
-
}
|
|
80
|
-
get smoothing() {
|
|
81
|
-
return this._smoothing;
|
|
82
|
-
}
|
|
83
|
-
set smoothing(value) {
|
|
84
|
-
this._smoothing = value;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
export function isNumberOrString(property) {
|
|
2
|
-
return typeof property === 'number' || typeof property === 'string';
|
|
3
|
-
}
|
|
4
|
-
export function isNumber(property) {
|
|
5
|
-
return typeof property === 'number' && !isNaN(property);
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Converts speed from m/s to pace as of seconds per km
|
|
9
|
-
* @param {number} number
|
|
10
|
-
* @return {number}
|
|
11
|
-
*/
|
|
12
|
-
export function convertSpeedToPace(number) {
|
|
13
|
-
return number === 0 ? Infinity : 1000 / number;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Converts m/s to seconds per 100m
|
|
17
|
-
* @param number
|
|
18
|
-
*/
|
|
19
|
-
export function convertSpeedToSwimPace(number) {
|
|
20
|
-
return number === 0 ? Infinity : 100 / number;
|
|
21
|
-
}
|
|
22
|
-
export function convertSpeedToSpeedInKilometersPerHour(number) {
|
|
23
|
-
return number * 3.6;
|
|
24
|
-
}
|
|
25
|
-
export function convertSpeedToSpeedInMilesPerHour(number) {
|
|
26
|
-
return number * 2.237;
|
|
27
|
-
}
|
|
28
|
-
export function convertSpeedToSpeedInFeetPerSecond(number) {
|
|
29
|
-
return number * 3.28084;
|
|
30
|
-
}
|
|
31
|
-
export function convertSpeedToSpeedInMetersPerMinute(number) {
|
|
32
|
-
return number * 60;
|
|
33
|
-
}
|
|
34
|
-
export function convertSpeedToSpeedInFeetPerMinute(number) {
|
|
35
|
-
return number * 196.85;
|
|
36
|
-
}
|
|
37
|
-
export function convertSpeedToSpeedInFeetPerHour(number) {
|
|
38
|
-
return number * 11811.024;
|
|
39
|
-
}
|
|
40
|
-
export function convertSpeedToSpeedInMetersPerHour(number) {
|
|
41
|
-
return number * 3600;
|
|
42
|
-
}
|
|
43
|
-
export function convertSpeedToSpeedInKnots(number) {
|
|
44
|
-
return number * 1.943844;
|
|
45
|
-
}
|
|
46
|
-
export function convertPaceToPaceInMinutesPerMile(number) {
|
|
47
|
-
return number * 1.60934;
|
|
48
|
-
}
|
|
49
|
-
export function convertMetersToMiles(number) {
|
|
50
|
-
return number === 0 ? 0 : number / 1609;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Converts m/s to seconds per 100m
|
|
54
|
-
* @param number
|
|
55
|
-
*/
|
|
56
|
-
export function convertSwimPaceToSwimPacePer100Yard(number) {
|
|
57
|
-
return number * 1.93613298;
|
|
58
|
-
}
|
|
59
|
-
export function getSize(obj) {
|
|
60
|
-
return getSizeWithOptionalFormat(obj, false);
|
|
61
|
-
}
|
|
62
|
-
export function getSizeFormated(obj) {
|
|
63
|
-
return getSizeWithOptionalFormat(obj, true);
|
|
64
|
-
}
|
|
65
|
-
function getSizeWithOptionalFormat(obj, format = true) {
|
|
66
|
-
let size;
|
|
67
|
-
try {
|
|
68
|
-
size = new Blob([obj]).size;
|
|
69
|
-
}
|
|
70
|
-
catch (e) {
|
|
71
|
-
size = Buffer.from(obj).length;
|
|
72
|
-
}
|
|
73
|
-
function formatByteSize(bytes) {
|
|
74
|
-
if (bytes < 1024) {
|
|
75
|
-
return bytes + ' bytes';
|
|
76
|
-
}
|
|
77
|
-
else if (bytes < 1048576) {
|
|
78
|
-
return (bytes / 1024).toFixed(4) + ' KiB';
|
|
79
|
-
}
|
|
80
|
-
else if (bytes < 1073741824) {
|
|
81
|
-
return (bytes / 1048576).toFixed(4) + ' MiB';
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
return (bytes / 1073741824).toFixed(4) + ' GiB';
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return format ? formatByteSize(size) : size;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* from https://stackoverflow.com/questions/48340403/fill-missing-numeric-values-in-an-array
|
|
91
|
-
* Very badly written
|
|
92
|
-
* @param array
|
|
93
|
-
*/
|
|
94
|
-
export function fillMissingValuesLinear(array) {
|
|
95
|
-
let i = 0, j, delta;
|
|
96
|
-
while (i < array.length) {
|
|
97
|
-
if (array[i] !== null) {
|
|
98
|
-
i++;
|
|
99
|
-
continue;
|
|
100
|
-
}
|
|
101
|
-
j = i;
|
|
102
|
-
// eslint-disable-next-line no-empty
|
|
103
|
-
while (array[++j] === null) { }
|
|
104
|
-
// @ts-ignore
|
|
105
|
-
delta = (array[j] - array[i - 1]) / (j - i + 1);
|
|
106
|
-
do {
|
|
107
|
-
// @ts-ignore
|
|
108
|
-
array[i] = delta + array[i - 1];
|
|
109
|
-
i++;
|
|
110
|
-
} while (i < j);
|
|
111
|
-
}
|
|
112
|
-
return array;
|
|
113
|
-
}
|
|
114
|
-
export const mean = (array) => {
|
|
115
|
-
return array.reduce((a, b) => a + b, 0) / array.length;
|
|
116
|
-
};
|
|
117
|
-
export const meanWindowSmoothing = (array, windowSize = 7, roundDecimals = 3) => {
|
|
118
|
-
const roundDecimalsFactor = Math.pow(10, roundDecimals);
|
|
119
|
-
return array.map((value, index) => {
|
|
120
|
-
const window = array.slice(index, index + windowSize); // Get window
|
|
121
|
-
return Math.round(mean(window) * roundDecimalsFactor) / roundDecimalsFactor; // Round and return
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
const median = (inputArray) => {
|
|
125
|
-
const s = inputArray.slice().sort((a, b) => {
|
|
126
|
-
return a - b;
|
|
127
|
-
});
|
|
128
|
-
return s[Math.floor((s.length - 1) / 2)];
|
|
129
|
-
};
|
|
130
|
-
/**
|
|
131
|
-
* Remove spikes into a vector (http://fourier.eng.hmc.edu/e161/lectures/smooth_sharpen/node2.html)
|
|
132
|
-
* @param array to be filtered
|
|
133
|
-
* @param window Window size (should be odd number)
|
|
134
|
-
*/
|
|
135
|
-
export const medianFilter = (array, window = 11) => {
|
|
136
|
-
if (window % 2 === 0) {
|
|
137
|
-
throw new Error('Window size should be an odd number');
|
|
138
|
-
}
|
|
139
|
-
if (array.length < window) {
|
|
140
|
-
return array;
|
|
141
|
-
}
|
|
142
|
-
const f = [];
|
|
143
|
-
const w = [];
|
|
144
|
-
let i;
|
|
145
|
-
w.push(array[0]);
|
|
146
|
-
for (i = 0; i < array.length; i++) {
|
|
147
|
-
const midWindowIndex = Math.floor(window / 2);
|
|
148
|
-
if (array.length - 1 >= i + midWindowIndex) {
|
|
149
|
-
w.push(array[i + midWindowIndex]);
|
|
150
|
-
}
|
|
151
|
-
f.push(median(w));
|
|
152
|
-
if (i >= midWindowIndex) {
|
|
153
|
-
w.shift();
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
return f;
|
|
157
|
-
};
|
|
158
|
-
export const standardDeviation = (stream) => {
|
|
159
|
-
const avg = mean(stream);
|
|
160
|
-
const variance = mean(stream.map(value => Math.pow(value, 2))) - Math.pow(avg, 2);
|
|
161
|
-
return variance > 0 ? Math.sqrt(variance) : 0;
|
|
162
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import getPreciseDistance from 'geolib/es/getPreciseDistance';
|
|
2
|
-
import getDistance from 'geolib/es/getDistance';
|
|
3
|
-
import findNearest from 'geolib/es/findNearest';
|
|
4
|
-
export class GeoLibAdapter {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.findNearest = findNearest;
|
|
7
|
-
}
|
|
8
|
-
getDistance(positionArray, precise = false, accuracy = 0.1) {
|
|
9
|
-
let distance = 0;
|
|
10
|
-
const excludeFirstPointsArray = positionArray.slice(1);
|
|
11
|
-
let firstPosition = positionArray[0];
|
|
12
|
-
for (const nextPosition of excludeFirstPointsArray) {
|
|
13
|
-
const firstPositionAsDecimal = {
|
|
14
|
-
longitude: firstPosition.longitudeDegrees,
|
|
15
|
-
latitude: firstPosition.latitudeDegrees
|
|
16
|
-
};
|
|
17
|
-
const nextPositionAsDecimal = {
|
|
18
|
-
longitude: nextPosition.longitudeDegrees,
|
|
19
|
-
latitude: nextPosition.latitudeDegrees
|
|
20
|
-
};
|
|
21
|
-
distance += precise
|
|
22
|
-
? getPreciseDistance(firstPositionAsDecimal, nextPositionAsDecimal, accuracy)
|
|
23
|
-
: getDistance(firstPositionAsDecimal, nextPositionAsDecimal, accuracy);
|
|
24
|
-
firstPosition = nextPosition;
|
|
25
|
-
}
|
|
26
|
-
return distance;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { IDClass } from './id.abstract.class';
|
|
2
|
-
describe('IDClass', () => {
|
|
3
|
-
let idClass;
|
|
4
|
-
beforeEach(() => {
|
|
5
|
-
idClass = new IdClass();
|
|
6
|
-
});
|
|
7
|
-
it('should correctly set an ID', () => {
|
|
8
|
-
idClass.setID('123');
|
|
9
|
-
expect(idClass.getID()).toBe('123');
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
export class IdClass extends IDClass {
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { isNumber } from '../events/utilities/helpers';
|
|
2
|
-
export class IntensityZones {
|
|
3
|
-
constructor(type) {
|
|
4
|
-
this.type = type;
|
|
5
|
-
}
|
|
6
|
-
toJSON() {
|
|
7
|
-
const json = {
|
|
8
|
-
type: this.type,
|
|
9
|
-
zone1Duration: this.zone1Duration,
|
|
10
|
-
zone2Duration: this.zone2Duration,
|
|
11
|
-
zone3Duration: this.zone3Duration,
|
|
12
|
-
zone4Duration: this.zone4Duration,
|
|
13
|
-
zone5Duration: this.zone5Duration
|
|
14
|
-
};
|
|
15
|
-
if (isNumber(this.zone2LowerLimit)) {
|
|
16
|
-
json.zone2LowerLimit = this.zone2LowerLimit;
|
|
17
|
-
}
|
|
18
|
-
if (isNumber(this.zone3LowerLimit)) {
|
|
19
|
-
json.zone3LowerLimit = this.zone3LowerLimit;
|
|
20
|
-
}
|
|
21
|
-
if (isNumber(this.zone4LowerLimit)) {
|
|
22
|
-
json.zone4LowerLimit = this.zone4LowerLimit;
|
|
23
|
-
}
|
|
24
|
-
if (isNumber(this.zone5LowerLimit)) {
|
|
25
|
-
json.zone5LowerLimit = this.zone5LowerLimit;
|
|
26
|
-
}
|
|
27
|
-
return json;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { IntensityZones } from './intensity-zones';
|
|
2
|
-
describe('Zone', () => {
|
|
3
|
-
let zones;
|
|
4
|
-
beforeEach(() => {
|
|
5
|
-
zones = new IntensityZones('test');
|
|
6
|
-
});
|
|
7
|
-
it('should export correctly to JSON', () => {
|
|
8
|
-
zones.zone1Duration = 0;
|
|
9
|
-
zones.zone2LowerLimit = 1;
|
|
10
|
-
zones.zone2Duration = 2;
|
|
11
|
-
zones.zone3LowerLimit = 3;
|
|
12
|
-
zones.zone3Duration = 4;
|
|
13
|
-
zones.zone4LowerLimit = 5;
|
|
14
|
-
zones.zone4Duration = 6;
|
|
15
|
-
zones.zone5LowerLimit = 7;
|
|
16
|
-
zones.zone5Duration = 8;
|
|
17
|
-
expect(zones.toJSON()).toEqual({
|
|
18
|
-
type: 'test',
|
|
19
|
-
zone1Duration: 0,
|
|
20
|
-
zone2Duration: 2,
|
|
21
|
-
zone2LowerLimit: 1,
|
|
22
|
-
zone3Duration: 4,
|
|
23
|
-
zone3LowerLimit: 3,
|
|
24
|
-
zone4Duration: 6,
|
|
25
|
-
zone4LowerLimit: 5,
|
|
26
|
-
zone5Duration: 8,
|
|
27
|
-
zone5LowerLimit: 7
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/lib/esm/laps/lap.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { DurationClassAbstract } from '../duration/duration.class.abstract';
|
|
2
|
-
export class Lap extends DurationClassAbstract {
|
|
3
|
-
constructor(startDate, endDate, lapId, type) {
|
|
4
|
-
super(startDate, endDate);
|
|
5
|
-
this.lapId = lapId;
|
|
6
|
-
this.type = type;
|
|
7
|
-
}
|
|
8
|
-
getStartIndex(activity) {
|
|
9
|
-
return activity.getDateIndex(this.startDate);
|
|
10
|
-
}
|
|
11
|
-
getEndIndex(activity) {
|
|
12
|
-
return activity.getDateIndex(this.endDate);
|
|
13
|
-
}
|
|
14
|
-
toJSON(activity) {
|
|
15
|
-
const stats = {};
|
|
16
|
-
this.stats.forEach((value, key) => {
|
|
17
|
-
Object.assign(stats, value.toJSON());
|
|
18
|
-
});
|
|
19
|
-
return {
|
|
20
|
-
lapId: this.lapId,
|
|
21
|
-
startDate: this.startDate.getTime(),
|
|
22
|
-
endDate: this.endDate.getTime(),
|
|
23
|
-
startIndex: activity ? this.getStartIndex(activity) : null,
|
|
24
|
-
endIndex: activity ? this.getEndIndex(activity) : null,
|
|
25
|
-
type: this.type,
|
|
26
|
-
stats: stats
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
export class LapTypesHelper {
|
|
2
|
-
static getLapTypesAsUniqueArray() {
|
|
3
|
-
return Array.from(new Set(Object.keys(LapTypes).reduce((array, key) => {
|
|
4
|
-
array.push(LapTypes[key]); // Important get the key via the enum else it will be chaos
|
|
5
|
-
return array;
|
|
6
|
-
}, [])));
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* This enum works like a all matchers for normalized lap types between different naming across services
|
|
11
|
-
*/
|
|
12
|
-
export var LapTypes;
|
|
13
|
-
(function (LapTypes) {
|
|
14
|
-
LapTypes["unknown"] = "Unknown";
|
|
15
|
-
LapTypes["Unknown"] = "Unknown";
|
|
16
|
-
LapTypes["Start"] = "Start";
|
|
17
|
-
LapTypes["start"] = "Start";
|
|
18
|
-
LapTypes["Stop"] = "Stop";
|
|
19
|
-
LapTypes["stop"] = "Stop";
|
|
20
|
-
LapTypes["Manual"] = "Manual";
|
|
21
|
-
LapTypes["manual"] = "Manual";
|
|
22
|
-
LapTypes["Autolap"] = "Autolap";
|
|
23
|
-
LapTypes["AutoLap"] = "Autolap";
|
|
24
|
-
LapTypes["autolap"] = "Autolap";
|
|
25
|
-
LapTypes["Auto lap"] = "Autolap";
|
|
26
|
-
LapTypes["Distance"] = "Distance";
|
|
27
|
-
LapTypes["distance"] = "Distance";
|
|
28
|
-
LapTypes["Location"] = "Location";
|
|
29
|
-
LapTypes["location"] = "Location";
|
|
30
|
-
LapTypes["interval"] = "Interval";
|
|
31
|
-
LapTypes["Interval"] = "Interval";
|
|
32
|
-
LapTypes["Low Interval"] = "Low Interval";
|
|
33
|
-
LapTypes["High Interval"] = "High Interval";
|
|
34
|
-
LapTypes["Time"] = "Time";
|
|
35
|
-
LapTypes["time"] = "Time";
|
|
36
|
-
LapTypes["HeartRate"] = "Heart Rate";
|
|
37
|
-
LapTypes["Heart Rate"] = "Heart Rate";
|
|
38
|
-
LapTypes["position_start"] = "Position start";
|
|
39
|
-
LapTypes["Position start"] = "Position start";
|
|
40
|
-
LapTypes["position_lap"] = "Position lap";
|
|
41
|
-
LapTypes["Position lap"] = "Position lap";
|
|
42
|
-
LapTypes["position_waypoint"] = "Position waypoint";
|
|
43
|
-
LapTypes["Position waypoint"] = "Position waypoint";
|
|
44
|
-
LapTypes["position_marked"] = "Position marked";
|
|
45
|
-
LapTypes["Position marked"] = "Position marked";
|
|
46
|
-
LapTypes["session_end"] = "Session end";
|
|
47
|
-
LapTypes["Session end"] = "Session end";
|
|
48
|
-
LapTypes["fitness_equipment"] = "Fitness equipment";
|
|
49
|
-
LapTypes["fitness equipment"] = "Fitness equipment";
|
|
50
|
-
LapTypes["Fitness equipment"] = "Fitness equipment";
|
|
51
|
-
LapTypes["FitnessEquipment"] = "Fitness equipment";
|
|
52
|
-
})(LapTypes || (LapTypes = {}));
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { ServiceNames } from './event-meta-data.interface';
|
|
2
|
-
export class SuuntoAppEventMetaData {
|
|
3
|
-
constructor(serviceWorkoutID, serviceUserName, date) {
|
|
4
|
-
this.serviceWorkoutID = serviceWorkoutID;
|
|
5
|
-
this.serviceUserName = serviceUserName;
|
|
6
|
-
this.date = date;
|
|
7
|
-
this.serviceName = ServiceNames.SuuntoApp;
|
|
8
|
-
}
|
|
9
|
-
toJSON() {
|
|
10
|
-
return {
|
|
11
|
-
serviceWorkoutID: this.serviceWorkoutID,
|
|
12
|
-
serviceName: this.serviceName,
|
|
13
|
-
serviceUserName: this.serviceUserName,
|
|
14
|
-
date: this.date.getTime()
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export class COROSAPIEventMetaData {
|
|
19
|
-
constructor(serviceWorkoutID, serviceOpenId, serviceFITFileURI, date) {
|
|
20
|
-
this.serviceWorkoutID = serviceWorkoutID;
|
|
21
|
-
this.serviceOpenId = serviceOpenId;
|
|
22
|
-
this.serviceFITFileURI = serviceFITFileURI;
|
|
23
|
-
this.date = date;
|
|
24
|
-
this.serviceName = ServiceNames.COROSAPI;
|
|
25
|
-
}
|
|
26
|
-
toJSON() {
|
|
27
|
-
return {
|
|
28
|
-
serviceWorkoutID: this.serviceWorkoutID,
|
|
29
|
-
serviceName: this.serviceName,
|
|
30
|
-
serviceOpenId: this.serviceOpenId,
|
|
31
|
-
serviceFITFileURI: this.serviceFITFileURI,
|
|
32
|
-
date: this.date.getTime()
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
export class GarminAPIEventMetaData {
|
|
37
|
-
constructor(serviceUserID, serviceActivityFileID, serviceActivityFileType, serviceManual, serviceStartTimeInSeconds, date) {
|
|
38
|
-
this.serviceUserID = serviceUserID;
|
|
39
|
-
this.serviceActivityFileID = serviceActivityFileID;
|
|
40
|
-
this.serviceActivityFileType = serviceActivityFileType;
|
|
41
|
-
this.serviceManual = serviceManual;
|
|
42
|
-
this.serviceStartTimeInSeconds = serviceStartTimeInSeconds;
|
|
43
|
-
this.date = date;
|
|
44
|
-
this.serviceName = ServiceNames.GarminAPI;
|
|
45
|
-
}
|
|
46
|
-
toJSON() {
|
|
47
|
-
return {
|
|
48
|
-
serviceUserID: this.serviceUserID,
|
|
49
|
-
serviceName: this.serviceName,
|
|
50
|
-
serviceActivityFileID: this.serviceActivityFileID,
|
|
51
|
-
serviceActivityFileType: this.serviceActivityFileType,
|
|
52
|
-
serviceManual: this.serviceManual,
|
|
53
|
-
serviceStartTimeInSeconds: this.serviceStartTimeInSeconds,
|
|
54
|
-
date: this.date.getTime()
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|