tcx-builder
Version:
68 lines (67 loc) • 3.39 kB
JavaScript
;
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;