@nativesquare/soma 0.5.0 → 0.7.0
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/dist/client/index.d.ts +151 -53
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +162 -69
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/component.d.ts +130 -17
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/garmin.d.ts +61 -43
- package/dist/component/garmin.d.ts.map +1 -1
- package/dist/component/garmin.js +208 -122
- package/dist/component/garmin.js.map +1 -1
- package/dist/component/public.d.ts +363 -0
- package/dist/component/public.d.ts.map +1 -1
- package/dist/component/public.js +124 -0
- package/dist/component/public.js.map +1 -1
- package/dist/component/schema.d.ts +7 -9
- package/dist/component/schema.d.ts.map +1 -1
- package/dist/component/schema.js +9 -10
- package/dist/component/schema.js.map +1 -1
- package/dist/component/strava.d.ts +0 -1
- package/dist/component/strava.d.ts.map +1 -1
- package/dist/component/strava.js +0 -1
- package/dist/component/strava.js.map +1 -1
- package/dist/component/validators/enums.d.ts +1 -1
- package/dist/garmin/auth.d.ts +55 -46
- package/dist/garmin/auth.d.ts.map +1 -1
- package/dist/garmin/auth.js +82 -122
- package/dist/garmin/auth.js.map +1 -1
- package/dist/garmin/client.d.ts +64 -17
- package/dist/garmin/client.d.ts.map +1 -1
- package/dist/garmin/client.js +143 -29
- package/dist/garmin/client.js.map +1 -1
- package/dist/garmin/index.d.ts +3 -3
- package/dist/garmin/index.d.ts.map +1 -1
- package/dist/garmin/index.js +4 -4
- package/dist/garmin/index.js.map +1 -1
- package/dist/garmin/plannedWorkout.d.ts +12 -0
- package/dist/garmin/plannedWorkout.d.ts.map +1 -0
- package/dist/garmin/plannedWorkout.js +267 -0
- package/dist/garmin/plannedWorkout.js.map +1 -0
- package/dist/garmin/types.d.ts +78 -6
- package/dist/garmin/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +236 -85
- package/src/component/_generated/component.ts +155 -17
- package/src/component/garmin.ts +258 -124
- package/src/component/public.ts +135 -0
- package/src/component/schema.ts +9 -10
- package/src/component/strava.ts +0 -1
- package/src/garmin/auth.test.ts +71 -96
- package/src/garmin/auth.ts +129 -193
- package/src/garmin/client.ts +197 -51
- package/src/garmin/index.ts +13 -14
- package/src/garmin/plannedWorkout.ts +333 -0
- package/src/garmin/types.ts +149 -7
package/dist/garmin/index.d.ts
CHANGED
|
@@ -12,9 +12,9 @@ export { mapActivityType } from "./maps/activity-type.js";
|
|
|
12
12
|
export { mapSleepLevel } from "./maps/sleep-level.js";
|
|
13
13
|
export { GarminClient, GarminApiError } from "./client.js";
|
|
14
14
|
export type { GarminClientOptions, TimeRangeParams } from "./client.js";
|
|
15
|
-
export {
|
|
16
|
-
export type {
|
|
15
|
+
export { generateCodeVerifier, generateCodeChallenge, generateState, buildAuthUrl, exchangeCode, refreshToken, } from "./auth.js";
|
|
16
|
+
export type { BuildAuthUrlOptions, ExchangeCodeOptions, RefreshTokenOptions, } from "./auth.js";
|
|
17
17
|
export { syncAll, syncActivities, syncDailies, syncSleep, syncBody, syncMenstruation, } from "./sync.js";
|
|
18
18
|
export type { SyncOptions, SyncResult, SyncAllResult, } from "./sync.js";
|
|
19
|
-
export type { GarminActivity, GarminActivityLap, GarminActivitySample, GarminDailySummary, GarminSleep, GarminSleepLevel, GarminBodyComposition, GarminMenstrualCycleData, GarminUserProfile, GarminActivityType,
|
|
19
|
+
export type { GarminActivity, GarminActivityLap, GarminActivitySample, GarminDailySummary, GarminSleep, GarminSleepLevel, GarminBodyComposition, GarminMenstrualCycleData, GarminUserProfile, GarminActivityType, GarminOAuth2TokenResponse, GarminWebhookPayload, } from "./types.js";
|
|
20
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/garmin/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGxE,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/garmin/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGxE,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,GACb,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,OAAO,EACP,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,WAAW,EACX,UAAU,EACV,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
|
package/dist/garmin/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// ─── @nativesquare/soma/garmin ───────────────────────────────────────────────
|
|
2
|
-
// Garmin Health API → Soma schema transformers, API client, OAuth helpers, and sync.
|
|
2
|
+
// Garmin Health API → Soma schema transformers, API client, OAuth 2.0 PKCE helpers, and sync.
|
|
3
3
|
//
|
|
4
|
-
// Uses the Web Crypto API for
|
|
4
|
+
// Uses the Web Crypto API for PKCE code challenge generation.
|
|
5
5
|
// Compatible with both the Convex V8 runtime and Node.js environments.
|
|
6
6
|
// ── Transformers ─────────────────────────────────────────────────────────────
|
|
7
7
|
export { transformActivity } from "./activity.js";
|
|
@@ -14,8 +14,8 @@ export { mapActivityType } from "./maps/activity-type.js";
|
|
|
14
14
|
export { mapSleepLevel } from "./maps/sleep-level.js";
|
|
15
15
|
// ── API Client ───────────────────────────────────────────────────────────────
|
|
16
16
|
export { GarminClient, GarminApiError } from "./client.js";
|
|
17
|
-
// ── OAuth Helpers
|
|
18
|
-
export {
|
|
17
|
+
// ── OAuth 2.0 PKCE Helpers ───────────────────────────────────────────────────
|
|
18
|
+
export { generateCodeVerifier, generateCodeChallenge, generateState, buildAuthUrl, exchangeCode, refreshToken, } from "./auth.js";
|
|
19
19
|
// ── Sync Helpers ─────────────────────────────────────────────────────────────
|
|
20
20
|
export { syncAll, syncActivities, syncDailies, syncSleep, syncBody, syncMenstruation, } from "./sync.js";
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
package/dist/garmin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/garmin/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/garmin/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,8FAA8F;AAC9F,EAAE;AACF,8DAA8D;AAC9D,uEAAuE;AAEvE,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,gFAAgF;AAChF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG3D,gFAAgF;AAChF,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,GACb,MAAM,WAAW,CAAC;AAOnB,gFAAgF;AAChF,OAAO,EACL,OAAO,EACP,cAAc,EACd,WAAW,EACX,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { GarminWorkout } from "./types.js";
|
|
2
|
+
type SomaPlannedWorkout = Record<string, any>;
|
|
3
|
+
/**
|
|
4
|
+
* Transform a Soma planned workout document into a Garmin Training API V2
|
|
5
|
+
* workout payload ready for `POST /workoutportal/workout/v2`.
|
|
6
|
+
*
|
|
7
|
+
* @param somaWorkout - The planned workout document from the Soma DB
|
|
8
|
+
* @param providerName - Name shown to the user in Garmin Connect (20 chars max)
|
|
9
|
+
*/
|
|
10
|
+
export declare function transformPlannedWorkoutToGarmin(somaWorkout: SomaPlannedWorkout, providerName: string): GarminWorkout;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=plannedWorkout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plannedWorkout.d.ts","sourceRoot":"","sources":["../../src/garmin/plannedWorkout.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,aAAa,EAQd,MAAM,YAAY,CAAC;AAKpB,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,kBAAkB,EAC/B,YAAY,EAAE,MAAM,GACnB,aAAa,CA4Bf"}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
// ─── Soma → Garmin Training API V2 Transformer ─────────────────────────────
|
|
2
|
+
// Maps Soma's Terra-style planned workout model to the Garmin Training API V2
|
|
3
|
+
// JSON format for workout creation and scheduling.
|
|
4
|
+
/**
|
|
5
|
+
* Transform a Soma planned workout document into a Garmin Training API V2
|
|
6
|
+
* workout payload ready for `POST /workoutportal/workout/v2`.
|
|
7
|
+
*
|
|
8
|
+
* @param somaWorkout - The planned workout document from the Soma DB
|
|
9
|
+
* @param providerName - Name shown to the user in Garmin Connect (20 chars max)
|
|
10
|
+
*/
|
|
11
|
+
export function transformPlannedWorkoutToGarmin(somaWorkout, providerName) {
|
|
12
|
+
const metadata = somaWorkout.metadata ?? {};
|
|
13
|
+
const sport = mapSportType(metadata.type);
|
|
14
|
+
const steps = transformSteps(somaWorkout.steps ?? []);
|
|
15
|
+
const segment = {
|
|
16
|
+
segmentOrder: 1,
|
|
17
|
+
sport,
|
|
18
|
+
poolLength: metadata.pool_length_meters ?? null,
|
|
19
|
+
poolLengthUnit: metadata.pool_length_meters != null ? "METER" : null,
|
|
20
|
+
estimatedDurationInSecs: null,
|
|
21
|
+
estimatedDistanceInMeters: null,
|
|
22
|
+
steps,
|
|
23
|
+
};
|
|
24
|
+
return {
|
|
25
|
+
workoutName: metadata.name ?? "Workout",
|
|
26
|
+
description: metadata.description ?? null,
|
|
27
|
+
sport,
|
|
28
|
+
estimatedDurationInSecs: null,
|
|
29
|
+
estimatedDistanceInMeters: null,
|
|
30
|
+
poolLength: metadata.pool_length_meters ?? null,
|
|
31
|
+
poolLengthUnit: metadata.pool_length_meters != null ? "METER" : null,
|
|
32
|
+
workoutProvider: providerName.slice(0, 20),
|
|
33
|
+
workoutSourceId: providerName.slice(0, 20),
|
|
34
|
+
isSessionTransitionEnabled: false,
|
|
35
|
+
segments: [segment],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
// ─── Step Transformation ─────────────────────────────────────────────────────
|
|
39
|
+
function transformSteps(somaSteps) {
|
|
40
|
+
const result = [];
|
|
41
|
+
let order = 1;
|
|
42
|
+
for (const step of somaSteps) {
|
|
43
|
+
const stepType = String(step.type ?? "STEP").toUpperCase();
|
|
44
|
+
if (stepType === "REPEAT_STEP") {
|
|
45
|
+
const nestedSteps = Array.isArray(step.steps) ? step.steps : [];
|
|
46
|
+
const reps = extractRepeatCount(step);
|
|
47
|
+
const repeatStep = {
|
|
48
|
+
type: "WorkoutRepeatStep",
|
|
49
|
+
stepOrder: order++,
|
|
50
|
+
repeatType: "REPEAT_UNTIL_STEPS_CMPLT",
|
|
51
|
+
repeatValue: reps,
|
|
52
|
+
steps: transformSteps(nestedSteps),
|
|
53
|
+
};
|
|
54
|
+
result.push(repeatStep);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const workoutStep = transformSingleStep(step, order++);
|
|
58
|
+
result.push(workoutStep);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
function transformSingleStep(step, stepOrder) {
|
|
64
|
+
const { durationType, durationValue, durationValueType } = extractDuration(step);
|
|
65
|
+
const { targetType, targetValueLow, targetValueHigh, targetValueType } = extractTarget(step);
|
|
66
|
+
return {
|
|
67
|
+
type: "WorkoutStep",
|
|
68
|
+
stepOrder,
|
|
69
|
+
intensity: mapIntensity(step.intensity),
|
|
70
|
+
description: step.description ?? null,
|
|
71
|
+
durationType,
|
|
72
|
+
durationValue,
|
|
73
|
+
durationValueType,
|
|
74
|
+
targetType,
|
|
75
|
+
targetValue: null,
|
|
76
|
+
targetValueLow,
|
|
77
|
+
targetValueHigh,
|
|
78
|
+
targetValueType,
|
|
79
|
+
secondaryTargetType: null,
|
|
80
|
+
secondaryTargetValue: null,
|
|
81
|
+
secondaryTargetValueLow: null,
|
|
82
|
+
secondaryTargetValueHigh: null,
|
|
83
|
+
secondaryTargetValueType: null,
|
|
84
|
+
strokeType: step.stroke_type ?? null,
|
|
85
|
+
drillType: null,
|
|
86
|
+
equipmentType: step.equipment_type ?? null,
|
|
87
|
+
exerciseCategory: step.exercise_category ?? null,
|
|
88
|
+
exerciseName: step.exercise_name ?? null,
|
|
89
|
+
weightValue: step.weight_kg ?? null,
|
|
90
|
+
weightDisplayUnit: step.weight_kg != null ? "KILOGRAM" : null,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function extractDuration(step) {
|
|
94
|
+
const durations = step.durations;
|
|
95
|
+
if (!durations || durations.length === 0) {
|
|
96
|
+
return { durationType: "OPEN", durationValue: null, durationValueType: null };
|
|
97
|
+
}
|
|
98
|
+
const dur = durations[0];
|
|
99
|
+
const type = String(dur.duration_type ?? "OPEN").toUpperCase();
|
|
100
|
+
switch (type) {
|
|
101
|
+
case "TIME":
|
|
102
|
+
return {
|
|
103
|
+
durationType: "TIME",
|
|
104
|
+
durationValue: dur.seconds ?? null,
|
|
105
|
+
durationValueType: null,
|
|
106
|
+
};
|
|
107
|
+
case "DISTANCE_METERS":
|
|
108
|
+
case "DISTANCE":
|
|
109
|
+
return {
|
|
110
|
+
durationType: "DISTANCE",
|
|
111
|
+
durationValue: dur.distance_meters ?? null,
|
|
112
|
+
durationValueType: null,
|
|
113
|
+
};
|
|
114
|
+
case "HR_LESS_THAN":
|
|
115
|
+
return {
|
|
116
|
+
durationType: "HR_LESS_THAN",
|
|
117
|
+
durationValue: dur.hr_below_bpm ?? null,
|
|
118
|
+
durationValueType: null,
|
|
119
|
+
};
|
|
120
|
+
case "HR_GREATER_THAN":
|
|
121
|
+
return {
|
|
122
|
+
durationType: "HR_GREATER_THAN",
|
|
123
|
+
durationValue: dur.hr_above_bpm ?? null,
|
|
124
|
+
durationValueType: null,
|
|
125
|
+
};
|
|
126
|
+
case "CALORIES":
|
|
127
|
+
return {
|
|
128
|
+
durationType: "CALORIES",
|
|
129
|
+
durationValue: dur.calories ?? null,
|
|
130
|
+
durationValueType: null,
|
|
131
|
+
};
|
|
132
|
+
case "POWER_LESS_THAN":
|
|
133
|
+
return {
|
|
134
|
+
durationType: "POWER_LESS_THAN",
|
|
135
|
+
durationValue: dur.power_below_watts ?? null,
|
|
136
|
+
durationValueType: null,
|
|
137
|
+
};
|
|
138
|
+
case "POWER_GREATER_THAN":
|
|
139
|
+
return {
|
|
140
|
+
durationType: "POWER_GREATER_THAN",
|
|
141
|
+
durationValue: dur.power_above_watts ?? null,
|
|
142
|
+
durationValueType: null,
|
|
143
|
+
};
|
|
144
|
+
case "REPS":
|
|
145
|
+
return {
|
|
146
|
+
durationType: "REPS",
|
|
147
|
+
durationValue: dur.reps ?? null,
|
|
148
|
+
durationValueType: null,
|
|
149
|
+
};
|
|
150
|
+
case "FIXED_REST":
|
|
151
|
+
return {
|
|
152
|
+
durationType: "FIXED_REST",
|
|
153
|
+
durationValue: dur.rest_seconds ?? dur.seconds ?? null,
|
|
154
|
+
durationValueType: null,
|
|
155
|
+
};
|
|
156
|
+
default:
|
|
157
|
+
return { durationType: "OPEN", durationValue: null, durationValueType: null };
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
function extractTarget(step) {
|
|
161
|
+
const targets = step.targets;
|
|
162
|
+
if (!targets || targets.length === 0) {
|
|
163
|
+
return { targetType: null, targetValueLow: null, targetValueHigh: null, targetValueType: null };
|
|
164
|
+
}
|
|
165
|
+
const target = targets[0];
|
|
166
|
+
const type = String(target.target_type ?? "OPEN").toUpperCase();
|
|
167
|
+
switch (type) {
|
|
168
|
+
case "HEART_RATE":
|
|
169
|
+
if (target.hr_percentage_low != null || target.hr_percentage_high != null) {
|
|
170
|
+
return {
|
|
171
|
+
targetType: "HEART_RATE",
|
|
172
|
+
targetValueLow: target.hr_percentage_low ?? null,
|
|
173
|
+
targetValueHigh: target.hr_percentage_high ?? null,
|
|
174
|
+
targetValueType: "PERCENT",
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
return {
|
|
178
|
+
targetType: "HEART_RATE",
|
|
179
|
+
targetValueLow: target.hr_bpm_low ?? null,
|
|
180
|
+
targetValueHigh: target.hr_bpm_high ?? null,
|
|
181
|
+
targetValueType: null,
|
|
182
|
+
};
|
|
183
|
+
case "SPEED":
|
|
184
|
+
case "PACE":
|
|
185
|
+
return {
|
|
186
|
+
targetType: "SPEED",
|
|
187
|
+
targetValueLow: target.speed_meters_per_second ?? null,
|
|
188
|
+
targetValueHigh: target.speed_meters_per_second ?? null,
|
|
189
|
+
targetValueType: null,
|
|
190
|
+
};
|
|
191
|
+
case "CADENCE":
|
|
192
|
+
return {
|
|
193
|
+
targetType: "CADENCE",
|
|
194
|
+
targetValueLow: target.cadence_low ?? target.cadence ?? null,
|
|
195
|
+
targetValueHigh: target.cadence_high ?? target.cadence ?? null,
|
|
196
|
+
targetValueType: null,
|
|
197
|
+
};
|
|
198
|
+
case "POWER":
|
|
199
|
+
if (target.power_percentage_low != null || target.power_percentage_high != null) {
|
|
200
|
+
return {
|
|
201
|
+
targetType: "POWER",
|
|
202
|
+
targetValueLow: target.power_percentage_low ?? null,
|
|
203
|
+
targetValueHigh: target.power_percentage_high ?? null,
|
|
204
|
+
targetValueType: "PERCENT",
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
return {
|
|
208
|
+
targetType: "POWER",
|
|
209
|
+
targetValueLow: target.power_watt_low ?? target.power_watt ?? null,
|
|
210
|
+
targetValueHigh: target.power_watt_high ?? target.power_watt ?? null,
|
|
211
|
+
targetValueType: null,
|
|
212
|
+
};
|
|
213
|
+
case "OPEN":
|
|
214
|
+
return { targetType: "OPEN", targetValueLow: null, targetValueHigh: null, targetValueType: null };
|
|
215
|
+
default:
|
|
216
|
+
return { targetType: null, targetValueLow: null, targetValueHigh: null, targetValueType: null };
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
// ─── Enum Mapping ────────────────────────────────────────────────────────────
|
|
220
|
+
const SPORT_MAP = {
|
|
221
|
+
RUNNING: "RUNNING",
|
|
222
|
+
BIKING: "CYCLING",
|
|
223
|
+
CYCLING: "CYCLING",
|
|
224
|
+
SWIMMING: "LAP_SWIMMING",
|
|
225
|
+
LAP_SWIMMING: "LAP_SWIMMING",
|
|
226
|
+
STRENGTH_TRAINING: "STRENGTH_TRAINING",
|
|
227
|
+
STRENGTH: "STRENGTH_TRAINING",
|
|
228
|
+
CARDIO: "CARDIO_TRAINING",
|
|
229
|
+
CARDIO_TRAINING: "CARDIO_TRAINING",
|
|
230
|
+
YOGA: "YOGA",
|
|
231
|
+
PILATES: "PILATES",
|
|
232
|
+
MULTI_SPORT: "MULTI_SPORT",
|
|
233
|
+
GENERIC: "GENERIC",
|
|
234
|
+
HIIT: "CARDIO_TRAINING",
|
|
235
|
+
};
|
|
236
|
+
function mapSportType(type) {
|
|
237
|
+
if (!type)
|
|
238
|
+
return "RUNNING";
|
|
239
|
+
return SPORT_MAP[type.toUpperCase()] ?? "GENERIC";
|
|
240
|
+
}
|
|
241
|
+
const INTENSITY_MAP = {
|
|
242
|
+
REST: "REST",
|
|
243
|
+
WARMUP: "WARMUP",
|
|
244
|
+
WARM_UP: "WARMUP",
|
|
245
|
+
COOLDOWN: "COOLDOWN",
|
|
246
|
+
COOL_DOWN: "COOLDOWN",
|
|
247
|
+
RECOVERY: "RECOVERY",
|
|
248
|
+
ACTIVE: "ACTIVE",
|
|
249
|
+
INTERVAL: "INTERVAL",
|
|
250
|
+
MAIN: "MAIN",
|
|
251
|
+
};
|
|
252
|
+
function mapIntensity(value) {
|
|
253
|
+
if (value == null)
|
|
254
|
+
return "ACTIVE";
|
|
255
|
+
const str = String(value).toUpperCase();
|
|
256
|
+
return INTENSITY_MAP[str] ?? "ACTIVE";
|
|
257
|
+
}
|
|
258
|
+
function extractRepeatCount(step) {
|
|
259
|
+
const durations = step.durations;
|
|
260
|
+
if (durations && durations.length > 0) {
|
|
261
|
+
const reps = durations[0].reps;
|
|
262
|
+
if (reps != null)
|
|
263
|
+
return reps;
|
|
264
|
+
}
|
|
265
|
+
return 1;
|
|
266
|
+
}
|
|
267
|
+
//# sourceMappingURL=plannedWorkout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plannedWorkout.js","sourceRoot":"","sources":["../../src/garmin/plannedWorkout.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,8EAA8E;AAC9E,mDAAmD;AAkBnD;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAC7C,WAA+B,EAC/B,YAAoB;IAEpB,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAyB;QACpC,YAAY,EAAE,CAAC;QACf,KAAK;QACL,UAAU,EAAE,QAAQ,CAAC,kBAAkB,IAAI,IAAI;QAC/C,cAAc,EAAE,QAAQ,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QACpE,uBAAuB,EAAE,IAAI;QAC7B,yBAAyB,EAAE,IAAI;QAC/B,KAAK;KACN,CAAC;IAEF,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,IAAI,IAAI,SAAS;QACvC,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;QACzC,KAAK;QACL,uBAAuB,EAAE,IAAI;QAC7B,yBAAyB,EAAE,IAAI;QAC/B,UAAU,EAAE,QAAQ,CAAC,kBAAkB,IAAI,IAAI;QAC/C,cAAc,EAAE,QAAQ,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QACpE,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1C,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1C,0BAA0B,EAAE,KAAK;QACjC,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,SAAS,cAAc,CACrB,SAAyC;IAEzC,MAAM,MAAM,GAAuD,EAAE,CAAC;IACtE,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QAE3D,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEtC,MAAM,UAAU,GAA4B;gBAC1C,IAAI,EAAE,mBAAmB;gBACzB,SAAS,EAAE,KAAK,EAAE;gBAClB,UAAU,EAAE,0BAA0B;gBACtC,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC;aACnC,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAA6B,EAC7B,SAAiB;IAEjB,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,GACtD,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,GACpE,aAAa,CAAC,IAAI,CAAC,CAAC;IAEtB,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,SAAS;QACT,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QACvC,WAAW,EAAG,IAAI,CAAC,WAAsB,IAAI,IAAI;QACjD,YAAY;QACZ,aAAa;QACb,iBAAiB;QACjB,UAAU;QACV,WAAW,EAAE,IAAI;QACjB,cAAc;QACd,eAAe;QACf,eAAe;QACf,mBAAmB,EAAE,IAAI;QACzB,oBAAoB,EAAE,IAAI;QAC1B,uBAAuB,EAAE,IAAI;QAC7B,wBAAwB,EAAE,IAAI;QAC9B,wBAAwB,EAAE,IAAI;QAC9B,UAAU,EAAG,IAAI,CAAC,WAAsB,IAAI,IAAI;QAChD,SAAS,EAAE,IAAI;QACf,aAAa,EAAG,IAAI,CAAC,cAAyB,IAAI,IAAI;QACtD,gBAAgB,EAAG,IAAI,CAAC,iBAA4B,IAAI,IAAI;QAC5D,YAAY,EAAG,IAAI,CAAC,aAAwB,IAAI,IAAI;QACpD,WAAW,EAAG,IAAI,CAAC,SAAoB,IAAI,IAAI;QAC/C,iBAAiB,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;KAC9D,CAAC;AACJ,CAAC;AAUD,SAAS,eAAe,CAAC,IAA6B;IACpD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAuD,CAAC;IAC/E,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAChF,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAE/D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO;gBACL,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAG,GAAG,CAAC,OAAkB,IAAI,IAAI;gBAC9C,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,iBAAiB,CAAC;QACvB,KAAK,UAAU;YACb,OAAO;gBACL,YAAY,EAAE,UAAU;gBACxB,aAAa,EAAG,GAAG,CAAC,eAA0B,IAAI,IAAI;gBACtD,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,YAAY,EAAE,cAAc;gBAC5B,aAAa,EAAG,GAAG,CAAC,YAAuB,IAAI,IAAI;gBACnD,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,YAAY,EAAE,iBAAiB;gBAC/B,aAAa,EAAG,GAAG,CAAC,YAAuB,IAAI,IAAI;gBACnD,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,UAAU;YACb,OAAO;gBACL,YAAY,EAAE,UAAU;gBACxB,aAAa,EAAG,GAAG,CAAC,QAAmB,IAAI,IAAI;gBAC/C,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,YAAY,EAAE,iBAAiB;gBAC/B,aAAa,EAAG,GAAG,CAAC,iBAA4B,IAAI,IAAI;gBACxD,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,oBAAoB;YACvB,OAAO;gBACL,YAAY,EAAE,oBAAoB;gBAClC,aAAa,EAAG,GAAG,CAAC,iBAA4B,IAAI,IAAI;gBACxD,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAG,GAAG,CAAC,IAAe,IAAI,IAAI;gBAC3C,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,YAAY,EAAE,YAAY;gBAC1B,aAAa,EAAG,GAAG,CAAC,YAAuB,IAAK,GAAG,CAAC,OAAkB,IAAI,IAAI;gBAC9E,iBAAiB,EAAE,IAAI;aACxB,CAAC;QACJ;YACE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAClF,CAAC;AACH,CAAC;AAWD,SAAS,aAAa,CAAC,IAA6B;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAqD,CAAC;IAC3E,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IAClG,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAEhE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,IAAI,MAAM,CAAC,iBAAiB,IAAI,IAAI,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;gBAC1E,OAAO;oBACL,UAAU,EAAE,YAAY;oBACxB,cAAc,EAAG,MAAM,CAAC,iBAA4B,IAAI,IAAI;oBAC5D,eAAe,EAAG,MAAM,CAAC,kBAA6B,IAAI,IAAI;oBAC9D,eAAe,EAAE,SAAS;iBAC3B,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,UAAU,EAAE,YAAY;gBACxB,cAAc,EAAG,MAAM,CAAC,UAAqB,IAAI,IAAI;gBACrD,eAAe,EAAG,MAAM,CAAC,WAAsB,IAAI,IAAI;gBACvD,eAAe,EAAE,IAAI;aACtB,CAAC;QAEJ,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACT,OAAO;gBACL,UAAU,EAAE,OAAO;gBACnB,cAAc,EAAG,MAAM,CAAC,uBAAkC,IAAI,IAAI;gBAClE,eAAe,EAAG,MAAM,CAAC,uBAAkC,IAAI,IAAI;gBACnE,eAAe,EAAE,IAAI;aACtB,CAAC;QAEJ,KAAK,SAAS;YACZ,OAAO;gBACL,UAAU,EAAE,SAAS;gBACrB,cAAc,EAAG,MAAM,CAAC,WAAsB,IAAK,MAAM,CAAC,OAAkB,IAAI,IAAI;gBACpF,eAAe,EAAG,MAAM,CAAC,YAAuB,IAAK,MAAM,CAAC,OAAkB,IAAI,IAAI;gBACtF,eAAe,EAAE,IAAI;aACtB,CAAC;QAEJ,KAAK,OAAO;YACV,IAAI,MAAM,CAAC,oBAAoB,IAAI,IAAI,IAAI,MAAM,CAAC,qBAAqB,IAAI,IAAI,EAAE,CAAC;gBAChF,OAAO;oBACL,UAAU,EAAE,OAAO;oBACnB,cAAc,EAAG,MAAM,CAAC,oBAA+B,IAAI,IAAI;oBAC/D,eAAe,EAAG,MAAM,CAAC,qBAAgC,IAAI,IAAI;oBACjE,eAAe,EAAE,SAAS;iBAC3B,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,UAAU,EAAE,OAAO;gBACnB,cAAc,EAAG,MAAM,CAAC,cAAyB,IAAK,MAAM,CAAC,UAAqB,IAAI,IAAI;gBAC1F,eAAe,EAAG,MAAM,CAAC,eAA0B,IAAK,MAAM,CAAC,UAAqB,IAAI,IAAI;gBAC5F,eAAe,EAAE,IAAI;aACtB,CAAC;QAEJ,KAAK,MAAM;YACT,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QAEpG;YACE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IACpG,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,MAAM,SAAS,GAAuC;IACpD,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,cAAc;IACxB,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,QAAQ,EAAE,mBAAmB;IAC7B,MAAM,EAAE,iBAAiB;IACzB,eAAe,EAAE,iBAAiB;IAClC,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,iBAAiB;CACxB,CAAC;AAEF,SAAS,YAAY,CAAC,IAAwB;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,SAAS,CAAC;AACpD,CAAC;AAED,MAAM,aAAa,GAAwC;IACzD,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,UAAU;IACrB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,QAAQ,CAAC;IACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC;AACxC,CAAC;AAED,SAAS,kBAAkB,CAAC,IAA6B;IACvD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAuD,CAAC;IAC/E,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAA0B,CAAC;QACrD,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IAChC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/garmin/types.d.ts
CHANGED
|
@@ -169,13 +169,85 @@ export interface GarminUserProfile {
|
|
|
169
169
|
gender?: string;
|
|
170
170
|
}
|
|
171
171
|
export type GarminActivityType = "RUNNING" | "INDOOR_RUNNING" | "TRAIL_RUNNING" | "TREADMILL_RUNNING" | "CYCLING" | "INDOOR_CYCLING" | "MOUNTAIN_BIKING" | "GRAVEL_CYCLING" | "VIRTUAL_RIDE" | "WALKING" | "HIKING" | "SWIMMING" | "OPEN_WATER_SWIMMING" | "LAP_SWIMMING" | "POOL_SWIMMING" | "STRENGTH_TRAINING" | "YOGA" | "PILATES" | "CARDIO" | "ELLIPTICAL" | "STAIR_CLIMBING" | "ROWING" | "INDOOR_ROWING" | "CROSS_COUNTRY_SKIING" | "ALPINE_SKIING" | "SNOWBOARDING" | "SNOWSHOEING" | "SKATING" | "INLINE_SKATING" | "GOLF" | "TENNIS" | "TABLE_TENNIS" | "BADMINTON" | "RACQUETBALL" | "SQUASH" | "PADDLEBOARDING" | "KAYAKING" | "CANOEING" | "SAILING" | "SURFING" | "KITESURFING" | "WINDSURFING" | "ROCK_CLIMBING" | "BOULDERING" | "SOCCER" | "BASKETBALL" | "VOLLEYBALL" | "CRICKET" | "RUGBY" | "BOXING" | "MARTIAL_ARTS" | "CROSSFIT" | "HIIT" | "BREATHWORK" | "FLOOR_CLIMBING" | "HANDCYCLING" | "WHEELCHAIR_PUSH_WALKING" | "WHEELCHAIR_PUSH_RUNNING" | "OTHER" | "MULTI_SPORT" | "FITNESS_EQUIPMENT" | (string & {});
|
|
172
|
-
export interface
|
|
173
|
-
|
|
174
|
-
|
|
172
|
+
export interface GarminOAuth2TokenResponse {
|
|
173
|
+
access_token: string;
|
|
174
|
+
refresh_token: string;
|
|
175
|
+
expires_in: number;
|
|
176
|
+
token_type: string;
|
|
177
|
+
scope: string;
|
|
178
|
+
refresh_token_expires_in: number;
|
|
175
179
|
}
|
|
176
|
-
export
|
|
177
|
-
|
|
178
|
-
|
|
180
|
+
export type GarminWorkoutSport = "RUNNING" | "CYCLING" | "LAP_SWIMMING" | "STRENGTH_TRAINING" | "CARDIO_TRAINING" | "GENERIC" | "YOGA" | "PILATES" | "MULTI_SPORT" | (string & {});
|
|
181
|
+
export type GarminStepIntensity = "REST" | "WARMUP" | "COOLDOWN" | "RECOVERY" | "ACTIVE" | "INTERVAL" | "MAIN" | (string & {});
|
|
182
|
+
export type GarminDurationType = "TIME" | "DISTANCE" | "HR_LESS_THAN" | "HR_GREATER_THAN" | "CALORIES" | "OPEN" | "POWER_LESS_THAN" | "POWER_GREATER_THAN" | "TIME_AT_VALID_CDA" | "FIXED_REST" | "REPS" | "FIXED_REPETITION" | "REPETITION_SWIM_CSS_OFFSET" | (string & {});
|
|
183
|
+
export type GarminTargetType = "SPEED" | "HEART_RATE" | "CADENCE" | "POWER" | "GRADE" | "RESISTANCE" | "POWER_3S" | "POWER_10S" | "POWER_30S" | "POWER_LAP" | "SPEED_LAP" | "HEART_RATE_LAP" | "OPEN" | "PACE" | (string & {});
|
|
184
|
+
export type GarminRepeatType = "REPEAT_UNTIL_STEPS_CMPLT" | "REPEAT_UNTIL_TIME" | "REPEAT_UNTIL_DISTANCE" | "REPEAT_UNTIL_CALORIES" | "REPEAT_UNTIL_HR_LESS_THAN" | "REPEAT_UNTIL_HR_GREATER_THAN" | "REPEAT_UNTIL_POWER_LESS_THAN" | "REPEAT_UNTIL_POWER_GREATER_THAN" | "REPEAT_UNTIL_POWER_LAST_LAP_LESS_THAN" | "REPEAT_UNTIL_MAX_POWER_LAST_LAP_LESS_THAN" | (string & {});
|
|
185
|
+
export interface GarminWorkoutStep {
|
|
186
|
+
type: "WorkoutStep";
|
|
187
|
+
stepId?: number;
|
|
188
|
+
stepOrder: number;
|
|
189
|
+
intensity: GarminStepIntensity;
|
|
190
|
+
description?: string | null;
|
|
191
|
+
durationType: GarminDurationType;
|
|
192
|
+
durationValue?: number | null;
|
|
193
|
+
durationValueType?: string | null;
|
|
194
|
+
targetType?: GarminTargetType | null;
|
|
195
|
+
targetValue?: number | null;
|
|
196
|
+
targetValueLow?: number | null;
|
|
197
|
+
targetValueHigh?: number | null;
|
|
198
|
+
targetValueType?: string | null;
|
|
199
|
+
secondaryTargetType?: string | null;
|
|
200
|
+
secondaryTargetValue?: number | null;
|
|
201
|
+
secondaryTargetValueLow?: number | null;
|
|
202
|
+
secondaryTargetValueHigh?: number | null;
|
|
203
|
+
secondaryTargetValueType?: string | null;
|
|
204
|
+
strokeType?: string | null;
|
|
205
|
+
drillType?: string | null;
|
|
206
|
+
equipmentType?: string | null;
|
|
207
|
+
exerciseCategory?: string | null;
|
|
208
|
+
exerciseName?: string | null;
|
|
209
|
+
weightValue?: number | null;
|
|
210
|
+
weightDisplayUnit?: string | null;
|
|
211
|
+
}
|
|
212
|
+
export interface GarminWorkoutRepeatStep {
|
|
213
|
+
type: "WorkoutRepeatStep";
|
|
214
|
+
stepId?: number;
|
|
215
|
+
stepOrder: number;
|
|
216
|
+
repeatType: GarminRepeatType;
|
|
217
|
+
repeatValue: number;
|
|
218
|
+
skipLastRestStep?: boolean;
|
|
219
|
+
steps: Array<GarminWorkoutStep | GarminWorkoutRepeatStep>;
|
|
220
|
+
}
|
|
221
|
+
export interface GarminWorkoutSegment {
|
|
222
|
+
segmentOrder: number;
|
|
223
|
+
sport: GarminWorkoutSport;
|
|
224
|
+
poolLength?: number | null;
|
|
225
|
+
poolLengthUnit?: string | null;
|
|
226
|
+
estimatedDurationInSecs?: number | null;
|
|
227
|
+
estimatedDistanceInMeters?: number | null;
|
|
228
|
+
steps: Array<GarminWorkoutStep | GarminWorkoutRepeatStep>;
|
|
229
|
+
}
|
|
230
|
+
export interface GarminWorkout {
|
|
231
|
+
workoutId?: number;
|
|
232
|
+
ownerId?: number | null;
|
|
233
|
+
workoutName: string;
|
|
234
|
+
description?: string | null;
|
|
235
|
+
updatedDate?: string;
|
|
236
|
+
createdDate?: string;
|
|
237
|
+
sport: GarminWorkoutSport;
|
|
238
|
+
estimatedDurationInSecs?: number | null;
|
|
239
|
+
estimatedDistanceInMeters?: number | null;
|
|
240
|
+
poolLength?: number | null;
|
|
241
|
+
poolLengthUnit?: string | null;
|
|
242
|
+
workoutProvider: string;
|
|
243
|
+
workoutSourceId: string;
|
|
244
|
+
isSessionTransitionEnabled?: boolean;
|
|
245
|
+
segments: GarminWorkoutSegment[];
|
|
246
|
+
}
|
|
247
|
+
export interface GarminWorkoutSchedule {
|
|
248
|
+
scheduleId?: number;
|
|
249
|
+
workoutId: number;
|
|
250
|
+
date: string;
|
|
179
251
|
}
|
|
180
252
|
export interface GarminWebhookPayload {
|
|
181
253
|
activities?: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/garmin/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/garmin/types.ts"],"names":[],"mappings":"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"}
|