@flow-js/garmin-connect 1.6.3

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 (109) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +627 -0
  3. package/dist/common/CFClient.d.ts +22 -0
  4. package/dist/common/CFClient.js +137 -0
  5. package/dist/common/CFClient.js.map +1 -0
  6. package/dist/common/DateUtils.d.ts +1 -0
  7. package/dist/common/DateUtils.js +11 -0
  8. package/dist/common/DateUtils.js.map +1 -0
  9. package/dist/common/HttpClient.d.ts +37 -0
  10. package/dist/common/HttpClient.js +496 -0
  11. package/dist/common/HttpClient.js.map +1 -0
  12. package/dist/garmin/GarminConnect.d.ts +112 -0
  13. package/dist/garmin/GarminConnect.js +816 -0
  14. package/dist/garmin/GarminConnect.js.map +1 -0
  15. package/dist/garmin/UrlClass.d.ts +53 -0
  16. package/dist/garmin/UrlClass.js +267 -0
  17. package/dist/garmin/UrlClass.js.map +1 -0
  18. package/dist/garmin/Urls.d.ts +56 -0
  19. package/dist/garmin/Urls.js +88 -0
  20. package/dist/garmin/Urls.js.map +1 -0
  21. package/dist/garmin/common/DateUtils.d.ts +6 -0
  22. package/dist/garmin/common/DateUtils.js +38 -0
  23. package/dist/garmin/common/DateUtils.js.map +1 -0
  24. package/dist/garmin/common/GpxUtils.d.ts +2 -0
  25. package/dist/garmin/common/GpxUtils.js +28 -0
  26. package/dist/garmin/common/GpxUtils.js.map +1 -0
  27. package/dist/garmin/common/HydrationUtils.d.ts +2 -0
  28. package/dist/garmin/common/HydrationUtils.js +16 -0
  29. package/dist/garmin/common/HydrationUtils.js.map +1 -0
  30. package/dist/garmin/common/WeightUtils.d.ts +1 -0
  31. package/dist/garmin/common/WeightUtils.js +9 -0
  32. package/dist/garmin/common/WeightUtils.js.map +1 -0
  33. package/dist/garmin/types/activity.d.ts +408 -0
  34. package/dist/garmin/types/activity.js +27 -0
  35. package/dist/garmin/types/activity.js.map +1 -0
  36. package/dist/garmin/types/gear.d.ts +20 -0
  37. package/dist/garmin/types/gear.js +3 -0
  38. package/dist/garmin/types/gear.js.map +1 -0
  39. package/dist/garmin/types/golf.d.ts +67 -0
  40. package/dist/garmin/types/golf.js +3 -0
  41. package/dist/garmin/types/golf.js.map +1 -0
  42. package/dist/garmin/types/gpx.d.ts +171 -0
  43. package/dist/garmin/types/gpx.js +15 -0
  44. package/dist/garmin/types/gpx.js.map +1 -0
  45. package/dist/garmin/types/heartrate.d.ts +22 -0
  46. package/dist/garmin/types/heartrate.js +2 -0
  47. package/dist/garmin/types/heartrate.js.map +1 -0
  48. package/dist/garmin/types/hydration.d.ts +28 -0
  49. package/dist/garmin/types/hydration.js +2 -0
  50. package/dist/garmin/types/hydration.js.map +1 -0
  51. package/dist/garmin/types/index.d.ts +445 -0
  52. package/dist/garmin/types/index.js +37 -0
  53. package/dist/garmin/types/index.js.map +1 -0
  54. package/dist/garmin/types/sleep.d.ts +120 -0
  55. package/dist/garmin/types/sleep.js +3 -0
  56. package/dist/garmin/types/sleep.js.map +1 -0
  57. package/dist/garmin/types/weight.d.ts +42 -0
  58. package/dist/garmin/types/weight.js +3 -0
  59. package/dist/garmin/types/weight.js.map +1 -0
  60. package/dist/garmin/types/workout-builder.d.ts +138 -0
  61. package/dist/garmin/types/workout-builder.js +286 -0
  62. package/dist/garmin/types/workout-builder.js.map +1 -0
  63. package/dist/garmin/types/workout.d.ts +56 -0
  64. package/dist/garmin/types/workout.js +3 -0
  65. package/dist/garmin/types/workout.js.map +1 -0
  66. package/dist/garmin/types.d.ts +504 -0
  67. package/dist/garmin/types.js +3 -0
  68. package/dist/garmin/types.js.map +1 -0
  69. package/dist/garmin/workout-builder/duration.d.ts +87 -0
  70. package/dist/garmin/workout-builder/duration.js +173 -0
  71. package/dist/garmin/workout-builder/duration.js.map +1 -0
  72. package/dist/garmin/workout-builder/index.d.ts +5 -0
  73. package/dist/garmin/workout-builder/index.js +22 -0
  74. package/dist/garmin/workout-builder/index.js.map +1 -0
  75. package/dist/garmin/workout-builder/step.d.ts +28 -0
  76. package/dist/garmin/workout-builder/step.js +60 -0
  77. package/dist/garmin/workout-builder/step.js.map +1 -0
  78. package/dist/garmin/workout-builder/target.d.ts +49 -0
  79. package/dist/garmin/workout-builder/target.js +193 -0
  80. package/dist/garmin/workout-builder/target.js.map +1 -0
  81. package/dist/garmin/workout-builder/workout-builder.d.ts +12 -0
  82. package/dist/garmin/workout-builder/workout-builder.js +37 -0
  83. package/dist/garmin/workout-builder/workout-builder.js.map +1 -0
  84. package/dist/garmin/workout-builder/workout-type.d.ts +11 -0
  85. package/dist/garmin/workout-builder/workout-type.js +26 -0
  86. package/dist/garmin/workout-builder/workout-type.js.map +1 -0
  87. package/dist/garmin/workouts/Running.d.ts +16 -0
  88. package/dist/garmin/workouts/Running.js +64 -0
  89. package/dist/garmin/workouts/Running.js.map +1 -0
  90. package/dist/garmin/workouts/templates/RunningTemplate.d.ts +68 -0
  91. package/dist/garmin/workouts/templates/RunningTemplate.js +78 -0
  92. package/dist/garmin/workouts/templates/RunningTemplate.js.map +1 -0
  93. package/dist/garmin/workouts/workout-builder.d.ts +138 -0
  94. package/dist/garmin/workouts/workout-builder.js +286 -0
  95. package/dist/garmin/workouts/workout-builder.js.map +1 -0
  96. package/dist/garmin/workouts-builder/workout-builder.d.ts +138 -0
  97. package/dist/garmin/workouts-builder/workout-builder.js +286 -0
  98. package/dist/garmin/workouts-builder/workout-builder.js.map +1 -0
  99. package/dist/index.d.ts +4 -0
  100. package/dist/index.js +26 -0
  101. package/dist/index.js.map +1 -0
  102. package/dist/utils.d.ts +3 -0
  103. package/dist/utils.js +46 -0
  104. package/dist/utils.js.map +1 -0
  105. package/examples/assets/paris-marathon.gpx +2037 -0
  106. package/examples/example-gpx-file.js +54 -0
  107. package/examples/example-workout.js +162 -0
  108. package/examples/example.js +34 -0
  109. package/package.json +67 -0
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.HeartRateDuration = exports.CaloriesDuration = exports.LapPressDuration = exports.DistanceDuration = exports.TimeDuration = exports.NoDuration = exports.Duration = void 0;
19
+ var Duration = /** @class */ (function () {
20
+ function Duration() {
21
+ }
22
+ return Duration;
23
+ }());
24
+ exports.Duration = Duration;
25
+ var NoDuration = /** @class */ (function (_super) {
26
+ __extends(NoDuration, _super);
27
+ function NoDuration() {
28
+ return _super !== null && _super.apply(this, arguments) || this;
29
+ }
30
+ NoDuration.prototype.build = function () {
31
+ throw new Error('Please provide an duration for this step (Other than NoDuration).');
32
+ };
33
+ return NoDuration;
34
+ }(Duration));
35
+ exports.NoDuration = NoDuration;
36
+ var TimeDuration = /** @class */ (function (_super) {
37
+ __extends(TimeDuration, _super);
38
+ function TimeDuration(durationInSeconds) {
39
+ var _this = _super.call(this) || this;
40
+ _this.durationInSeconds = durationInSeconds;
41
+ return _this;
42
+ }
43
+ TimeDuration.hhmmss = function (h, m, s) {
44
+ return new TimeDuration(h * 3600 + m * 60 + s);
45
+ };
46
+ TimeDuration.fromHours = function (h) {
47
+ return new TimeDuration(h * 3600);
48
+ };
49
+ TimeDuration.fromMinutes = function (m) {
50
+ return new TimeDuration(m * 60);
51
+ };
52
+ TimeDuration.fromSeconds = function (s) {
53
+ return new TimeDuration(s);
54
+ };
55
+ TimeDuration.prototype.build = function () {
56
+ return {
57
+ endCondition: {
58
+ conditionTypeId: 2,
59
+ conditionTypeKey: 'time',
60
+ displayable: true,
61
+ displayOrder: 1
62
+ },
63
+ endConditionCompare: null,
64
+ endConditionValue: this.durationInSeconds,
65
+ endConditionZone: null
66
+ };
67
+ };
68
+ return TimeDuration;
69
+ }(Duration));
70
+ exports.TimeDuration = TimeDuration;
71
+ var DistanceDuration = /** @class */ (function (_super) {
72
+ __extends(DistanceDuration, _super);
73
+ function DistanceDuration(meters) {
74
+ var _this = _super.call(this) || this;
75
+ _this.meters = meters;
76
+ return _this;
77
+ }
78
+ DistanceDuration.fromKilometers = function (km) {
79
+ return new DistanceDuration(km * 1000);
80
+ };
81
+ DistanceDuration.fromMeters = function (m) {
82
+ return new DistanceDuration(m);
83
+ };
84
+ DistanceDuration.prototype.build = function () {
85
+ return {
86
+ endCondition: {
87
+ conditionTypeId: 3,
88
+ conditionTypeKey: 'distance',
89
+ displayOrder: 3,
90
+ displayable: true
91
+ },
92
+ endConditionValue: this.meters,
93
+ preferredEndConditionUnit: {
94
+ unitKey: 'kilometer'
95
+ },
96
+ endConditionCompare: null
97
+ };
98
+ };
99
+ return DistanceDuration;
100
+ }(Duration));
101
+ exports.DistanceDuration = DistanceDuration;
102
+ var LapPressDuration = /** @class */ (function (_super) {
103
+ __extends(LapPressDuration, _super);
104
+ function LapPressDuration() {
105
+ return _super !== null && _super.apply(this, arguments) || this;
106
+ }
107
+ LapPressDuration.prototype.build = function () {
108
+ return {
109
+ endCondition: {
110
+ conditionTypeId: 1,
111
+ conditionTypeKey: 'lap.button',
112
+ displayOrder: 1,
113
+ displayable: true
114
+ },
115
+ endConditionValue: null,
116
+ preferredEndConditionUnit: null,
117
+ endConditionCompare: null
118
+ };
119
+ };
120
+ return LapPressDuration;
121
+ }(Duration));
122
+ exports.LapPressDuration = LapPressDuration;
123
+ var CaloriesDuration = /** @class */ (function (_super) {
124
+ __extends(CaloriesDuration, _super);
125
+ function CaloriesDuration(calories) {
126
+ var _this = _super.call(this) || this;
127
+ _this.calories = calories;
128
+ return _this;
129
+ }
130
+ CaloriesDuration.prototype.build = function () {
131
+ return {
132
+ endCondition: {
133
+ conditionTypeId: 4,
134
+ conditionTypeKey: 'calories',
135
+ displayOrder: 4,
136
+ displayable: true
137
+ },
138
+ endConditionValue: this.calories
139
+ };
140
+ };
141
+ return CaloriesDuration;
142
+ }(Duration));
143
+ exports.CaloriesDuration = CaloriesDuration;
144
+ var HeartRateDuration = /** @class */ (function (_super) {
145
+ __extends(HeartRateDuration, _super);
146
+ function HeartRateDuration(bpm, compare) {
147
+ var _this = _super.call(this) || this;
148
+ _this.bpm = bpm;
149
+ _this.compare = compare;
150
+ return _this;
151
+ }
152
+ HeartRateDuration.greaterThan = function (bpm) {
153
+ return new HeartRateDuration(bpm, 'gt');
154
+ };
155
+ HeartRateDuration.lessThan = function (bpm) {
156
+ return new HeartRateDuration(bpm, 'lt');
157
+ };
158
+ HeartRateDuration.prototype.build = function () {
159
+ return {
160
+ endCondition: {
161
+ conditionTypeId: 6,
162
+ conditionTypeKey: 'heart.rate',
163
+ displayOrder: 6,
164
+ displayable: true
165
+ },
166
+ endConditionValue: this.bpm,
167
+ endConditionCompare: this.compare
168
+ };
169
+ };
170
+ return HeartRateDuration;
171
+ }(Duration));
172
+ exports.HeartRateDuration = HeartRateDuration;
173
+ //# sourceMappingURL=duration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/duration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './duration';
2
+ export * from './step';
3
+ export * from './target';
4
+ export * from './workout-builder';
5
+ export * from './workout-type';
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./duration"), exports);
18
+ __exportStar(require("./step"), exports);
19
+ __exportStar(require("./target"), exports);
20
+ __exportStar(require("./workout-builder"), exports);
21
+ __exportStar(require("./workout-type"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,yCAAuB;AACvB,2CAAyB;AACzB,oDAAkC;AAClC,iDAA+B"}
@@ -0,0 +1,28 @@
1
+ import { Duration } from './duration';
2
+ import { Target } from './target';
3
+ export declare class Step {
4
+ private stepType;
5
+ private duration;
6
+ private target;
7
+ private notes;
8
+ constructor(stepType: StepType, duration?: Duration, target?: Target, notes?: string);
9
+ build(index: number): any;
10
+ }
11
+ export declare class StepType {
12
+ private type;
13
+ private stepId;
14
+ private constructor();
15
+ build(): {
16
+ stepType: {
17
+ stepTypeId: number;
18
+ stepTypeKey: string;
19
+ displayOrder: number;
20
+ };
21
+ };
22
+ static WarmUp: StepType;
23
+ static Run: StepType;
24
+ static Recovery: StepType;
25
+ static Rest: StepType;
26
+ static Cooldown: StepType;
27
+ static Other: StepType;
28
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.StepType = exports.Step = void 0;
15
+ var duration_1 = require("./duration");
16
+ var target_1 = require("./target");
17
+ var Step = /** @class */ (function () {
18
+ function Step(stepType, duration, target, notes) {
19
+ if (duration === void 0) { duration = new duration_1.NoDuration(); }
20
+ if (target === void 0) { target = new target_1.NoTarget(); }
21
+ if (notes === void 0) { notes = ''; }
22
+ this.stepType = stepType;
23
+ this.duration = duration;
24
+ this.target = target;
25
+ this.notes = notes;
26
+ }
27
+ Step.prototype.build = function (index) {
28
+ return __assign(__assign(__assign({ category: null, childStepId: null, description: this.notes, equipmentType: {
29
+ displayOrder: null,
30
+ equipmentTypeId: null,
31
+ equipmentTypeKey: null
32
+ }, exerciseName: null, preferredEndConditionUnit: null, providerExerciseSourceId: null, secondaryTargetType: null, secondaryTargetValueOne: null, secondaryTargetValueTwo: null, secondaryTargetValueUnit: null, secondaryZoneNumber: null, stepAudioNote: null, stepId: index, stepOrder: index, strokeType: {}, targetValueOne: null, targetValueTwo: null, targetValueUnit: null, type: 'ExecutableStepDTO', weightUnit: null, weightValue: null, workoutProvider: null, zoneNumber: null }, this.stepType.build()), this.duration.build()), this.target.build());
33
+ };
34
+ return Step;
35
+ }());
36
+ exports.Step = Step;
37
+ var StepType = /** @class */ (function () {
38
+ function StepType(type, stepId) {
39
+ this.type = type;
40
+ this.stepId = stepId;
41
+ }
42
+ StepType.prototype.build = function () {
43
+ return {
44
+ stepType: {
45
+ stepTypeId: this.stepId,
46
+ stepTypeKey: this.type,
47
+ displayOrder: this.stepId
48
+ }
49
+ };
50
+ };
51
+ StepType.WarmUp = new StepType('warmup', 1);
52
+ StepType.Run = new StepType('interval', 3);
53
+ StepType.Recovery = new StepType('recovery', 4);
54
+ StepType.Rest = new StepType('rest', 5);
55
+ StepType.Cooldown = new StepType('cooldown', 2);
56
+ StepType.Other = new StepType('other', 7);
57
+ return StepType;
58
+ }());
59
+ exports.StepType = StepType;
60
+ //# sourceMappingURL=step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/step.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAAkD;AAClD,mCAA4C;AAE5C;IACI,cACY,QAAkB,EAClB,QAAqC,EACrC,MAA+B,EAC/B,KAAkB;QAFlB,yBAAA,EAAA,eAAyB,qBAAU,EAAE;QACrC,uBAAA,EAAA,aAAqB,iBAAQ,EAAE;QAC/B,sBAAA,EAAA,UAAkB;QAHlB,aAAQ,GAAR,QAAQ,CAAU;QAClB,aAAQ,GAAR,QAAQ,CAA6B;QACrC,WAAM,GAAN,MAAM,CAAyB;QAC/B,UAAK,GAAL,KAAK,CAAa;IAC3B,CAAC;IAEJ,oBAAK,GAAL,UAAM,KAAa;QACf,oCACI,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,IAAI,EACjB,WAAW,EAAE,IAAI,CAAC,KAAK,EACvB,aAAa,EAAE;gBACX,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,IAAI;gBACrB,gBAAgB,EAAE,IAAI;aACzB,EACD,YAAY,EAAE,IAAI,EAClB,yBAAyB,EAAE,IAAI,EAC/B,wBAAwB,EAAE,IAAI,EAC9B,mBAAmB,EAAE,IAAI,EACzB,uBAAuB,EAAE,IAAI,EAC7B,uBAAuB,EAAE,IAAI,EAC7B,wBAAwB,EAAE,IAAI,EAC9B,mBAAmB,EAAE,IAAI,EACzB,aAAa,EAAE,IAAI,EACnB,MAAM,EAAE,KAAK,EACb,SAAS,EAAE,KAAK,EAChB,UAAU,EAAE,EAAE,EACd,cAAc,EAAE,IAAI,EACpB,cAAc,EAAE,IAAI,EACpB,eAAe,EAAE,IAAI,EACrB,IAAI,EAAE,mBAAmB,EACzB,UAAU,EAAE,IAAI,EAChB,WAAW,EAAE,IAAI,EACjB,eAAe,EAAE,IAAI,EACrB,UAAU,EAAE,IAAI,IAEb,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GACrB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EACxB;IACN,CAAC;IACL,WAAC;AAAD,CAAC,AA5CD,IA4CC;AA5CY,oBAAI;AA8CjB;IACI,kBAA4B,IAAY,EAAU,MAAc;QAApC,SAAI,GAAJ,IAAI,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEpE,wBAAK,GAAL;QACI,OAAO;YACH,QAAQ,EAAE;gBACN,UAAU,EAAE,IAAI,CAAC,MAAM;gBACvB,WAAW,EAAE,IAAI,CAAC,IAAI;gBACtB,YAAY,EAAE,IAAI,CAAC,MAAM;aAC5B;SACJ,CAAC;IACN,CAAC;IAEM,eAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnC,YAAG,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAClC,iBAAQ,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACvC,aAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/B,iBAAQ,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACvC,cAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC5C,eAAC;CAAA,AAnBD,IAmBC;AAnBY,4BAAQ"}
@@ -0,0 +1,49 @@
1
+ export declare abstract class Target {
2
+ abstract build(): any;
3
+ }
4
+ export declare class NoTarget extends Target {
5
+ build(): any;
6
+ }
7
+ export declare class PaceTarget extends Target {
8
+ private minPace;
9
+ private maxPace;
10
+ /**
11
+ * Create a pace target
12
+ * @param minPace - in seconds per meter
13
+ * @param maxPace - in seconds per meter
14
+ */
15
+ constructor(minPace: number, maxPace: number);
16
+ static pace(paceMinutes: number, paceSeconds: number, margin?: number): PaceTarget;
17
+ build(): any;
18
+ }
19
+ export declare class CadenceTarget extends Target {
20
+ private minCadence;
21
+ private maxCadence;
22
+ constructor(minCadence: number, maxCadence: number);
23
+ static cadence(cadence: number, margin: number): CadenceTarget;
24
+ build(): any;
25
+ }
26
+ export declare class HrmZoneTarget extends Target {
27
+ private hrmZone;
28
+ constructor(hrmZone: number);
29
+ build(): any;
30
+ }
31
+ export declare class HrmTarget extends Target {
32
+ private minHrm;
33
+ private maxHrm;
34
+ constructor(minHrm: number, maxHrm: number);
35
+ static hrm(hrm: number, margin: number): HrmTarget;
36
+ build(): any;
37
+ }
38
+ export declare class PowerZoneTarget extends Target {
39
+ private powerZone;
40
+ constructor(powerZone: number);
41
+ build(): any;
42
+ }
43
+ export declare class PowerZone extends Target {
44
+ private minPower;
45
+ private maxPower;
46
+ constructor(minPower: number, maxPower: number);
47
+ static power(power: number, margin: number): PowerZone;
48
+ build(): any;
49
+ }
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.PowerZone = exports.PowerZoneTarget = exports.HrmTarget = exports.HrmZoneTarget = exports.CadenceTarget = exports.PaceTarget = exports.NoTarget = exports.Target = void 0;
19
+ var Target = /** @class */ (function () {
20
+ function Target() {
21
+ }
22
+ return Target;
23
+ }());
24
+ exports.Target = Target;
25
+ var NoTarget = /** @class */ (function (_super) {
26
+ __extends(NoTarget, _super);
27
+ function NoTarget() {
28
+ return _super !== null && _super.apply(this, arguments) || this;
29
+ }
30
+ NoTarget.prototype.build = function () {
31
+ return {
32
+ targetType: {
33
+ workoutTargetTypeId: 1,
34
+ workoutTargetTypeKey: 'no.target',
35
+ displayOrder: 1
36
+ }
37
+ };
38
+ };
39
+ return NoTarget;
40
+ }(Target));
41
+ exports.NoTarget = NoTarget;
42
+ var PaceTarget = /** @class */ (function (_super) {
43
+ __extends(PaceTarget, _super);
44
+ /**
45
+ * Create a pace target
46
+ * @param minPace - in seconds per meter
47
+ * @param maxPace - in seconds per meter
48
+ */
49
+ function PaceTarget(minPace, maxPace) {
50
+ var _this = _super.call(this) || this;
51
+ _this.minPace = minPace;
52
+ _this.maxPace = maxPace;
53
+ return _this;
54
+ }
55
+ PaceTarget.pace = function (paceMinutes, paceSeconds, margin) {
56
+ if (margin === void 0) { margin = 0; }
57
+ var minPace = paceMinutes * 60 + paceSeconds + margin;
58
+ var maxPace = paceMinutes * 60 + paceSeconds - margin;
59
+ return new PaceTarget(1000 / minPace, 1000 / maxPace);
60
+ };
61
+ PaceTarget.prototype.build = function () {
62
+ return {
63
+ targetType: {
64
+ workoutTargetTypeId: 6,
65
+ workoutTargetTypeKey: 'pace.zone',
66
+ displayOrder: 6
67
+ },
68
+ targetValueOne: this.minPace,
69
+ targetValueTwo: this.maxPace,
70
+ targetValueUnit: null
71
+ };
72
+ };
73
+ return PaceTarget;
74
+ }(Target));
75
+ exports.PaceTarget = PaceTarget;
76
+ var CadenceTarget = /** @class */ (function (_super) {
77
+ __extends(CadenceTarget, _super);
78
+ function CadenceTarget(minCadence, maxCadence) {
79
+ var _this = _super.call(this) || this;
80
+ _this.minCadence = minCadence;
81
+ _this.maxCadence = maxCadence;
82
+ return _this;
83
+ }
84
+ CadenceTarget.cadence = function (cadence, margin) {
85
+ return new CadenceTarget(cadence - margin, cadence + margin);
86
+ };
87
+ CadenceTarget.prototype.build = function () {
88
+ return {
89
+ targetType: {
90
+ workoutTargetTypeId: 3,
91
+ workoutTargetTypeKey: 'cadence',
92
+ displayOrder: 3
93
+ },
94
+ targetValueOne: this.minCadence,
95
+ targetValueTwo: this.maxCadence,
96
+ targetValueUnit: null
97
+ };
98
+ };
99
+ return CadenceTarget;
100
+ }(Target));
101
+ exports.CadenceTarget = CadenceTarget;
102
+ var HrmZoneTarget = /** @class */ (function (_super) {
103
+ __extends(HrmZoneTarget, _super);
104
+ function HrmZoneTarget(hrmZone) {
105
+ var _this = _super.call(this) || this;
106
+ _this.hrmZone = hrmZone;
107
+ return _this;
108
+ }
109
+ HrmZoneTarget.prototype.build = function () {
110
+ return {
111
+ targetType: {
112
+ workoutTargetTypeId: 4,
113
+ workoutTargetTypeKey: 'heart.rate.zone',
114
+ displayOrder: 4
115
+ },
116
+ zoneNumber: this.hrmZone
117
+ };
118
+ };
119
+ return HrmZoneTarget;
120
+ }(Target));
121
+ exports.HrmZoneTarget = HrmZoneTarget;
122
+ var HrmTarget = /** @class */ (function (_super) {
123
+ __extends(HrmTarget, _super);
124
+ function HrmTarget(minHrm, maxHrm) {
125
+ var _this = _super.call(this) || this;
126
+ _this.minHrm = minHrm;
127
+ _this.maxHrm = maxHrm;
128
+ return _this;
129
+ }
130
+ HrmTarget.hrm = function (hrm, margin) {
131
+ return new HrmTarget(hrm - margin, hrm + margin);
132
+ };
133
+ HrmTarget.prototype.build = function () {
134
+ return {
135
+ targetType: {
136
+ workoutTargetTypeId: 4,
137
+ workoutTargetTypeKey: 'heart.rate.zone',
138
+ displayOrder: 4
139
+ },
140
+ targetValueOne: this.minHrm,
141
+ targetValueTwo: this.maxHrm,
142
+ targetValueUnit: null
143
+ };
144
+ };
145
+ return HrmTarget;
146
+ }(Target));
147
+ exports.HrmTarget = HrmTarget;
148
+ var PowerZoneTarget = /** @class */ (function (_super) {
149
+ __extends(PowerZoneTarget, _super);
150
+ function PowerZoneTarget(powerZone) {
151
+ var _this = _super.call(this) || this;
152
+ _this.powerZone = powerZone;
153
+ return _this;
154
+ }
155
+ PowerZoneTarget.prototype.build = function () {
156
+ return {
157
+ targetType: {
158
+ workoutTargetTypeId: 2,
159
+ workoutTargetTypeKey: 'power.zone',
160
+ displayOrder: 2
161
+ },
162
+ zoneNumber: this.powerZone
163
+ };
164
+ };
165
+ return PowerZoneTarget;
166
+ }(Target));
167
+ exports.PowerZoneTarget = PowerZoneTarget;
168
+ var PowerZone = /** @class */ (function (_super) {
169
+ __extends(PowerZone, _super);
170
+ function PowerZone(minPower, maxPower) {
171
+ var _this = _super.call(this) || this;
172
+ _this.minPower = minPower;
173
+ _this.maxPower = maxPower;
174
+ return _this;
175
+ }
176
+ PowerZone.power = function (power, margin) {
177
+ return new PowerZone(power - margin, power + margin);
178
+ };
179
+ PowerZone.prototype.build = function () {
180
+ return {
181
+ targetType: {
182
+ workoutTargetTypeId: 2,
183
+ workoutTargetTypeKey: 'power.zone',
184
+ displayOrder: 2
185
+ },
186
+ targetValueOne: this.minPower,
187
+ targetValueTwo: this.maxPower
188
+ };
189
+ };
190
+ return PowerZone;
191
+ }(Target));
192
+ exports.PowerZone = PowerZone;
193
+ //# sourceMappingURL=target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/target.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Step } from './step';
2
+ import { WorkoutType } from './workout-type';
3
+ import { IWorkoutDetail } from '../types';
4
+ export declare class WorkoutBuilder {
5
+ private readonly workoutType;
6
+ private workoutName;
7
+ private workoutDescription;
8
+ private steps;
9
+ constructor(workoutType: WorkoutType, workoutName: string, workoutDescription?: string);
10
+ addStep(step: Step): this;
11
+ build(): IWorkoutDetail;
12
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.WorkoutBuilder = void 0;
15
+ var WorkoutBuilder = /** @class */ (function () {
16
+ function WorkoutBuilder(workoutType, workoutName, workoutDescription) {
17
+ if (workoutDescription === void 0) { workoutDescription = ''; }
18
+ this.workoutType = workoutType;
19
+ this.workoutName = workoutName;
20
+ this.workoutDescription = workoutDescription;
21
+ this.steps = [];
22
+ }
23
+ WorkoutBuilder.prototype.addStep = function (step) {
24
+ this.steps.push(step);
25
+ return this;
26
+ };
27
+ WorkoutBuilder.prototype.build = function () {
28
+ return __assign(__assign({}, this.workoutType.build()), { subSportType: null, workoutName: this.workoutName, description: this.workoutDescription, estimatedDistanceUnit: { unitKey: null }, workoutSegments: [
29
+ __assign(__assign({ segmentOrder: 1 }, this.workoutType.build()), { workoutSteps: this.steps.map(function (step, index) {
30
+ return step.build(index + 1);
31
+ }) })
32
+ ], avgTrainingSpeed: null, estimatedDurationInSecs: 0, estimatedDistanceInMeters: 0, estimateType: null, isWheelchair: false });
33
+ };
34
+ return WorkoutBuilder;
35
+ }());
36
+ exports.WorkoutBuilder = WorkoutBuilder;
37
+ //# sourceMappingURL=workout-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workout-builder.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/workout-builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAIA;IAGI,wBACqB,WAAwB,EACjC,WAAmB,EACnB,kBAA+B;QAA/B,mCAAA,EAAA,uBAA+B;QAFtB,gBAAW,GAAX,WAAW,CAAa;QACjC,gBAAW,GAAX,WAAW,CAAQ;QACnB,uBAAkB,GAAlB,kBAAkB,CAAa;QALnC,UAAK,GAAW,EAAE,CAAC;IAMxB,CAAC;IAEJ,gCAAO,GAAP,UAAQ,IAAU;QACd,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,8BAAK,GAAL;QACI,6BACO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAC3B,YAAY,EAAE,IAAI,EAClB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,WAAW,EAAE,IAAI,CAAC,kBAAkB,EACpC,qBAAqB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EACxC,eAAe,EAAE;oCAET,YAAY,EAAE,CAAC,IACZ,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAC3B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;wBACrC,OAAA,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;oBAArB,CAAqB,CACxB;aAER,EACD,gBAAgB,EAAE,IAAI,EACtB,uBAAuB,EAAE,CAAC,EAC1B,yBAAyB,EAAE,CAAC,EAC5B,YAAY,EAAE,IAAI,EAClB,YAAY,EAAE,KAAK,IACrB;IACN,CAAC;IACL,qBAAC;AAAD,CAAC,AArCD,IAqCC;AArCY,wCAAc"}
@@ -0,0 +1,11 @@
1
+ export declare class WorkoutType {
2
+ private readonly sportTypeKey;
3
+ private readonly sportTypeId;
4
+ private constructor();
5
+ build(): any;
6
+ static Running: WorkoutType;
7
+ static Cycling: WorkoutType;
8
+ static Swimming: WorkoutType;
9
+ static Strength: WorkoutType;
10
+ static Cardio: WorkoutType;
11
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WorkoutType = void 0;
4
+ var WorkoutType = /** @class */ (function () {
5
+ function WorkoutType(sportTypeKey, sportTypeId) {
6
+ this.sportTypeKey = sportTypeKey;
7
+ this.sportTypeId = sportTypeId;
8
+ }
9
+ WorkoutType.prototype.build = function () {
10
+ return {
11
+ sportType: {
12
+ sportTypeId: this.sportTypeId,
13
+ sportTypeKey: this.sportTypeKey,
14
+ displayOrder: this.sportTypeId
15
+ }
16
+ };
17
+ };
18
+ WorkoutType.Running = new WorkoutType('running', 1);
19
+ WorkoutType.Cycling = new WorkoutType('cycling', 2);
20
+ WorkoutType.Swimming = new WorkoutType('swimming', 4);
21
+ WorkoutType.Strength = new WorkoutType('strength_training', 5);
22
+ WorkoutType.Cardio = new WorkoutType('cardio_training', 6);
23
+ return WorkoutType;
24
+ }());
25
+ exports.WorkoutType = WorkoutType;
26
+ //# sourceMappingURL=workout-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workout-type.js","sourceRoot":"","sources":["../../../src/garmin/workout-builder/workout-type.ts"],"names":[],"mappings":";;;AAAA;IACI,qBACqB,YAAoB,EACpB,WAAmB;QADnB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,gBAAW,GAAX,WAAW,CAAQ;IACrC,CAAC;IAEJ,2BAAK,GAAL;QACI,OAAO;YACH,SAAS,EAAE;gBACP,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,YAAY,EAAE,IAAI,CAAC,WAAW;aACjC;SACJ,CAAC;IACN,CAAC;IAEM,mBAAO,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACxC,mBAAO,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACxC,oBAAQ,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1C,oBAAQ,GAAG,IAAI,WAAW,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;IACnD,kBAAM,GAAG,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;IAC1D,kBAAC;CAAA,AArBD,IAqBC;AArBY,kCAAW"}