UNPKG

tcx-builder

Version:
68 lines (67 loc) 3.39 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var _common_1 = require("../_common"); var ActivityLapAttributes_1 = require("./ActivityLapAttributes"); var lodash_1 = require("lodash"); var ActivityLap = /** @class */ (function (_super) { __extends(ActivityLap, _super); function ActivityLap(startTime, options) { var _this = _super.call(this) || this; _this.attributes = new ActivityLapAttributes_1.ActivityLapAttributes(startTime); _this.TotalTimeSeconds = options.TotalTimeSeconds; _this.DistanceMeters = options.DistanceMeters; _this.MaximumSpeed = options.MaximumSpeed; _this.Calories = options.Calories; _this.AverageHeartRateBpm = options.AverageHeartRateBpm; _this.MaximumHeartRateBpm = options.MaximumHeartRateBpm; _this.Intensity = options.Intensity; _this.Cadence = options.Cadence; _this.TriggerMethod = options.TriggerMethod; _this.Track = options.Track; _this.Notes = options.Notes; return _this; } ActivityLap.prototype.toXml = function () { var xmlElement = ''; xmlElement += _common_1.BaseObject.buildXmlNode('TotalTimeSeconds', this.TotalTimeSeconds.toString()); xmlElement += _common_1.BaseObject.buildXmlNode('DistanceMeters', this.DistanceMeters.toString()); if (!lodash_1.isNil(this.MaximumSpeed)) { var speedInMetersPerSec = this.MaximumSpeed / 3.6; xmlElement += _common_1.BaseObject.buildXmlNode('MaximumSpeed', speedInMetersPerSec.toString()); } xmlElement += _common_1.BaseObject.buildXmlNode('Calories', this.Calories.toString()); if (!lodash_1.isNil(this.AverageHeartRateBpm)) { xmlElement += _common_1.BaseObject.buildXmlNode('AverageHeartRateBpm', this.AverageHeartRateBpm.toXml()); } if (!lodash_1.isNil(this.MaximumHeartRateBpm)) { xmlElement += _common_1.BaseObject.buildXmlNode('MaximumHeartRateBpm', this.MaximumHeartRateBpm.toXml()); } xmlElement += _common_1.BaseObject.buildXmlNode('Intensity', this.Intensity); if (!lodash_1.isNil(this.Cadence)) { xmlElement += _common_1.BaseObject.buildXmlNode('Cadence', Math.round(this.Cadence).toString()); } xmlElement += _common_1.BaseObject.buildXmlNode('TriggerMethod', this.TriggerMethod); if (!lodash_1.isNil(this.Track)) { xmlElement += _common_1.BaseObject.buildXmlNode('Track', this.Track.toXml()); } if (!lodash_1.isNil(this.Notes)) { xmlElement += _common_1.BaseObject.buildXmlNode('Notes', this.Notes); } return xmlElement; }; return ActivityLap; }(_common_1.BaseObject)); exports.ActivityLap = ActivityLap;