hevy-shared 1.0.568 → 1.0.570
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/built/index.d.ts +24 -6
- package/built/index.js +25 -1
- package/built/index.zod.d.ts +4261 -3870
- package/built/index.zod.js +71 -57
- package/built/normalizedWorkoutUtils.d.ts +3 -1
- package/built/tests/testUtils.js +1 -0
- package/package.json +1 -1
package/built/index.d.ts
CHANGED
|
@@ -484,6 +484,7 @@ export interface UserPreferences {
|
|
|
484
484
|
live_pr_volume?: LivePRVolumeOption;
|
|
485
485
|
inline_set_timer_enabled?: boolean;
|
|
486
486
|
default_workout_visibility_public?: boolean;
|
|
487
|
+
default_workout_biometrics_visibility_public?: boolean;
|
|
487
488
|
/** Only updateable by the backend within a special API */
|
|
488
489
|
volume_includes_warmup_sets?: boolean;
|
|
489
490
|
}
|
|
@@ -853,6 +854,8 @@ export interface Workout {
|
|
|
853
854
|
* If applicable, the user ID of the coach who logged this workout
|
|
854
855
|
*/
|
|
855
856
|
logged_by_coach_id?: string;
|
|
857
|
+
biometrics?: WorkoutBiometrics;
|
|
858
|
+
is_biometrics_public: boolean;
|
|
856
859
|
}
|
|
857
860
|
export interface CustomExerciseImage {
|
|
858
861
|
type: 'image';
|
|
@@ -929,6 +932,18 @@ export interface PostWorkoutRequestWorkout {
|
|
|
929
932
|
wearos_watch: boolean;
|
|
930
933
|
workout_id: string;
|
|
931
934
|
is_private: boolean;
|
|
935
|
+
biometrics?: WorkoutBiometrics;
|
|
936
|
+
is_biometrics_public: boolean;
|
|
937
|
+
}
|
|
938
|
+
export declare const isHeartRateSamples: (x: any) => x is HeartRateSample[];
|
|
939
|
+
export declare const isWorkoutBiometrics: (x: any) => x is WorkoutBiometrics;
|
|
940
|
+
export interface WorkoutBiometrics {
|
|
941
|
+
total_calories?: number;
|
|
942
|
+
heart_rate_samples?: HeartRateSample[];
|
|
943
|
+
}
|
|
944
|
+
export interface HeartRateSample {
|
|
945
|
+
timestamp_ms: number;
|
|
946
|
+
bpm: number;
|
|
932
947
|
}
|
|
933
948
|
export interface PostWorkoutRequestExercise {
|
|
934
949
|
title: string;
|
|
@@ -955,7 +970,7 @@ export interface PostWorkoutRequestSet {
|
|
|
955
970
|
custom_metric?: number;
|
|
956
971
|
rpe?: RPE;
|
|
957
972
|
}
|
|
958
|
-
type UpdateWorkoutRequestWorkoutOptionalFields = Pick<PostWorkoutRequestWorkout, 'title' | 'description' | 'media' | 'exercises' | 'is_private'>;
|
|
973
|
+
type UpdateWorkoutRequestWorkoutOptionalFields = Pick<PostWorkoutRequestWorkout, 'title' | 'description' | 'media' | 'exercises' | 'is_private' | 'is_biometrics_public'>;
|
|
959
974
|
type UpdateWorkoutRequestWorkoutRequiredFields = Required<Pick<PostWorkoutRequestWorkout, 'start_time' | 'end_time'>>;
|
|
960
975
|
/**
|
|
961
976
|
* Used to update an existing workout. Props that are defined will be used to
|
|
@@ -1515,7 +1530,10 @@ export interface StripeCustomerPortalSessionRequest {
|
|
|
1515
1530
|
export interface StripeCustomerPortalSessionResponse {
|
|
1516
1531
|
url: string;
|
|
1517
1532
|
}
|
|
1518
|
-
|
|
1533
|
+
/**
|
|
1534
|
+
* @schema union([z.string(), z.number(), z.boolean(), z.array(z.any())]).nullable()
|
|
1535
|
+
*/
|
|
1536
|
+
export type UserValue = string | number | boolean | null | UserValue[];
|
|
1519
1537
|
export type UserKeyValues = Record<string, UserValue>;
|
|
1520
1538
|
/**
|
|
1521
1539
|
* @schema enum(['male', 'female', 'other'])
|
|
@@ -1623,8 +1641,8 @@ interface BaseFeedback {
|
|
|
1623
1641
|
type: FeedbackType;
|
|
1624
1642
|
userId: string;
|
|
1625
1643
|
message?: string;
|
|
1626
|
-
data?: unknown;
|
|
1627
|
-
debugInfo?: unknown;
|
|
1644
|
+
data?: Record<string, unknown> | null;
|
|
1645
|
+
debugInfo?: Record<string, unknown> | null;
|
|
1628
1646
|
}
|
|
1629
1647
|
export interface GeneralFeedback extends BaseFeedback {
|
|
1630
1648
|
type: 'general';
|
|
@@ -1692,8 +1710,8 @@ export type BackofficeFeedback = {
|
|
|
1692
1710
|
type: string;
|
|
1693
1711
|
username?: string;
|
|
1694
1712
|
message?: string;
|
|
1695
|
-
data?: unknown;
|
|
1696
|
-
debug_info?: unknown;
|
|
1713
|
+
data?: Record<string, unknown> | null;
|
|
1714
|
+
debug_info?: Record<string, unknown> | null;
|
|
1697
1715
|
created_at: Date;
|
|
1698
1716
|
};
|
|
1699
1717
|
export interface BackofficeFeedbacksResponse {
|
package/built/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.isValidUserWorkoutMetricsType = exports.isBodyMeasurementKey = exports.measurementsList = exports.isPublicWorkout = exports.isSetType = exports.isRPE = exports.validRpeValues = exports.supportedInstructionsLanguages = exports.isCustomExerciseType = exports.customExericseTypes = exports.isExerciseType = exports.exerciseTypes = exports.isExerciseRepType = exports.exerciseRepTypes = exports.isEquipmentFilter = exports.equipmentFilters = exports.isEquipment = exports.equipments = exports.isMuscleGroupFilter = exports.muscleGroupFilters = exports.isMuscleGroup = exports.muscleGroups = exports.DefaultClientConfiguration = exports.isCoachRole = exports.isErrorResponse = exports.isLivePRVolumeOption = exports.isTimerVolumeOption = exports.isWeekday = exports.orderedWeekdays = exports.isBodyMeasurementUnit = exports.isDistanceUnitShort = exports.isDistanceUnit = exports.isWeightUnit = exports.isLanguage = exports.supportedLanguages = void 0;
|
|
17
|
+
exports.isValidUserWorkoutMetricsType = exports.isBodyMeasurementKey = exports.measurementsList = exports.isWorkoutBiometrics = exports.isHeartRateSamples = exports.isPublicWorkout = exports.isSetType = exports.isRPE = exports.validRpeValues = exports.supportedInstructionsLanguages = exports.isCustomExerciseType = exports.customExericseTypes = exports.isExerciseType = exports.exerciseTypes = exports.isExerciseRepType = exports.exerciseRepTypes = exports.isEquipmentFilter = exports.equipmentFilters = exports.isEquipment = exports.equipments = exports.isMuscleGroupFilter = exports.muscleGroupFilters = exports.isMuscleGroup = exports.muscleGroups = exports.DefaultClientConfiguration = exports.isCoachRole = exports.isErrorResponse = exports.isLivePRVolumeOption = exports.isTimerVolumeOption = exports.isWeekday = exports.orderedWeekdays = exports.isBodyMeasurementUnit = exports.isDistanceUnitShort = exports.isDistanceUnit = exports.isWeightUnit = exports.isLanguage = exports.supportedLanguages = void 0;
|
|
18
18
|
const typeUtils_1 = require("./typeUtils"); // import as _Lookup to avoid a lint error as ts-to-zod emits an unused dummy value
|
|
19
19
|
__exportStar(require("./constants"), exports);
|
|
20
20
|
__exportStar(require("./utils"), exports);
|
|
@@ -213,6 +213,30 @@ const isPublicWorkout = (x) => {
|
|
|
213
213
|
return x.type === 'public';
|
|
214
214
|
};
|
|
215
215
|
exports.isPublicWorkout = isPublicWorkout;
|
|
216
|
+
const isHeartRateSamples = (x) => {
|
|
217
|
+
if (!x)
|
|
218
|
+
return false;
|
|
219
|
+
if (Array.isArray(x)) {
|
|
220
|
+
for (const sample of x) {
|
|
221
|
+
if (typeof sample.timestamp_ms !== 'number' ||
|
|
222
|
+
typeof sample.bpm !== 'number') {
|
|
223
|
+
return false;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
return true;
|
|
228
|
+
};
|
|
229
|
+
exports.isHeartRateSamples = isHeartRateSamples;
|
|
230
|
+
const isWorkoutBiometrics = (x) => {
|
|
231
|
+
if (!x)
|
|
232
|
+
return false;
|
|
233
|
+
const maybeCalories = x.total_calories;
|
|
234
|
+
const maybeHeartRateSamples = x.heart_rate_samples;
|
|
235
|
+
const caloriesAreValid = !maybeCalories || (typeof maybeCalories === 'number' && maybeCalories >= 0);
|
|
236
|
+
return ((caloriesAreValid && !maybeHeartRateSamples) ||
|
|
237
|
+
(0, exports.isHeartRateSamples)(maybeHeartRateSamples));
|
|
238
|
+
};
|
|
239
|
+
exports.isWorkoutBiometrics = isWorkoutBiometrics;
|
|
216
240
|
exports.measurementsList = [
|
|
217
241
|
'weight_kg',
|
|
218
242
|
'fat_percent',
|