hevy-shared 1.0.674 → 1.0.676

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 CHANGED
@@ -599,6 +599,10 @@ export declare const exerciseCategories: readonly ["isolation", "compound", "ass
599
599
  export type TrainingGoal = Lookup<typeof trainingGoals>;
600
600
  export type TrainingLevel = Lookup<typeof trainingLevels>;
601
601
  export type ExerciseCategory = Lookup<typeof exerciseCategories>;
602
+ export type HevyTrainerProgramEquipment = Extract<Equipment, 'barbell' | 'dumbbell' | 'machine'>;
603
+ export declare const hevyTrainerProgramEquipments: readonly ["barbell", "dumbbell", "machine"];
604
+ export declare const weeklyTrainingFrequencies: readonly [1, 2, 3, 4, 5, 6];
605
+ export type WeeklyTrainingFrequency = Lookup<typeof weeklyTrainingFrequencies>;
602
606
  /**
603
607
  * Base properties that all exercise templates must have
604
608
  */
@@ -1008,13 +1012,23 @@ export interface BaseRoutine {
1008
1012
  coach_id: string | null;
1009
1013
  notes: string | null;
1010
1014
  coach_force_rpe_enabled: boolean;
1015
+ hevy_trainer_program_id: string | null;
1011
1016
  }
1012
1017
  export interface Routine extends BaseRoutine {
1013
1018
  username: string;
1019
+ coach_id: null;
1014
1020
  }
1015
- export type CoachsShallowLibraryRoutine = Omit<BaseRoutine, 'exercises' | 'profile_pic'>;
1021
+ export interface HevyTrainerRoutine extends Routine {
1022
+ hevy_trainer_program_id: string;
1023
+ coach_force_rpe_enabled: false;
1024
+ coach_id: null;
1025
+ program_id: null;
1026
+ folder_id: null;
1027
+ }
1028
+ export type CoachsShallowLibraryRoutine = Omit<BaseRoutine, 'exercises' | 'profile_pic' | 'hevy_trainer_program_id' | 'username'>;
1016
1029
  export interface CoachesRoutine extends BaseRoutine {
1017
1030
  coach_id: string;
1031
+ username: null;
1018
1032
  }
1019
1033
  export interface CoachAndCoachsClientsRoutineSyncResponse {
1020
1034
  updated: BaseRoutine[];
@@ -1177,6 +1191,26 @@ export interface GetTeamInviteResponse {
1177
1191
  export interface OutstandingInvitesForCoachTeamResponse {
1178
1192
  invites: CoachTeamInvite[];
1179
1193
  }
1194
+ export interface HevyTrainerProgram {
1195
+ title: string;
1196
+ level: TrainingLevel;
1197
+ goal: TrainingGoal;
1198
+ equipments: HevyTrainerProgramEquipment[];
1199
+ weekly_frequency: WeeklyTrainingFrequency;
1200
+ routines: HevyTrainerRoutine[];
1201
+ next_workout_index: number;
1202
+ }
1203
+ export interface PostHevyTrainerProgramRequestBody {
1204
+ program: {
1205
+ title: string;
1206
+ level: TrainingLevel;
1207
+ goal: TrainingGoal;
1208
+ equipments: HevyTrainerProgramEquipment[];
1209
+ weekly_frequency: WeeklyTrainingFrequency;
1210
+ routines: RoutineUpdate[];
1211
+ next_workout_index: number;
1212
+ };
1213
+ }
1180
1214
  export declare const measurementsList: readonly ["weight_kg", "fat_percent", "neck_cm", "shoulder_cm", "chest_cm", "left_bicep_cm", "right_bicep_cm", "left_forearm_cm", "right_forearm_cm", "abdomen", "waist", "hips", "left_thigh", "right_thigh", "left_calf", "right_calf"];
1181
1215
  type MeasurementProperties = {
1182
1216
  [key in typeof measurementsList[number]]?: number;
package/built/index.js CHANGED
@@ -14,8 +14,8 @@ 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.isWorkoutBiometrics = exports.isHeartRateSamples = exports.isPublicWorkout = exports.isSetType = exports.isRPE = exports.validRpeValues = exports.isSetPersonalRecordType = exports.supportedInstructionsLanguages = exports.exerciseCategories = exports.trainingLevels = exports.trainingGoals = 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.isSimplifiedMuscleGroup = exports.simplifiedMuscleGroups = exports.miscellaneousMuscles = exports.chestMuscles = exports.backMuscles = exports.legMuscles = exports.armMuscles = exports.shoulderMuscles = exports.coreMuscles = 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
- exports.isSuggestedUserSource = void 0;
17
+ exports.measurementsList = exports.isWorkoutBiometrics = exports.isHeartRateSamples = exports.isPublicWorkout = exports.isSetType = exports.isRPE = exports.validRpeValues = exports.isSetPersonalRecordType = exports.supportedInstructionsLanguages = exports.weeklyTrainingFrequencies = exports.hevyTrainerProgramEquipments = exports.exerciseCategories = exports.trainingLevels = exports.trainingGoals = 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.isSimplifiedMuscleGroup = exports.simplifiedMuscleGroups = exports.miscellaneousMuscles = exports.chestMuscles = exports.backMuscles = exports.legMuscles = exports.armMuscles = exports.shoulderMuscles = exports.coreMuscles = 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
+ exports.isSuggestedUserSource = exports.isValidUserWorkoutMetricsType = exports.isBodyMeasurementKey = void 0;
19
19
  const typeUtils_1 = require("./typeUtils");
20
20
  __exportStar(require("./constants"), exports);
21
21
  __exportStar(require("./utils"), exports);
@@ -208,6 +208,7 @@ exports.isExerciseType = isExerciseType;
208
208
  exports.customExericseTypes = exports.exerciseTypes.filter((type) => type !== 'floors_duration' && type !== 'steps_duration');
209
209
  const isCustomExerciseType = (x) => (0, typeUtils_1.isInArray)(x, exports.customExericseTypes);
210
210
  exports.isCustomExerciseType = isCustomExerciseType;
211
+ // Hevy Trainer related types
211
212
  exports.trainingGoals = ['strength', 'build_muscle', 'fat_loss'];
212
213
  exports.trainingLevels = ['beginner', 'intermediate', 'advanced'];
213
214
  exports.exerciseCategories = [
@@ -215,6 +216,12 @@ exports.exerciseCategories = [
215
216
  'compound',
216
217
  'assistance-compound',
217
218
  ];
219
+ exports.hevyTrainerProgramEquipments = [
220
+ 'barbell',
221
+ 'dumbbell',
222
+ 'machine',
223
+ ];
224
+ exports.weeklyTrainingFrequencies = [1, 2, 3, 4, 5, 6];
218
225
  exports.supportedInstructionsLanguages = [
219
226
  'en',
220
227
  'it',
@@ -31,6 +31,7 @@ class RoutineBuilder {
31
31
  coach_id: null,
32
32
  notes: null,
33
33
  coach_force_rpe_enabled: false,
34
+ hevy_trainer_program_id: null,
34
35
  });
35
36
  this._exercises = [];
36
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hevy-shared",
3
- "version": "1.0.674",
3
+ "version": "1.0.676",
4
4
  "description": "",
5
5
  "main": "built/index.js",
6
6
  "types": "built/index.d.ts",