hevy-shared 1.0.866 → 1.0.867
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 +10 -29
- package/built/index.js +5 -1
- package/built/utils.d.ts +1 -2
- package/built/utils.js +1 -20
- package/package.json +1 -1
package/built/index.d.ts
CHANGED
|
@@ -1589,7 +1589,7 @@ export type Sex = 'male' | 'female' | 'other';
|
|
|
1589
1589
|
* Used for the chat backend to validate authentication details
|
|
1590
1590
|
*/
|
|
1591
1591
|
export type UserAuthenticationValidationResponse = 'unauthorized' | 'authorized_user' | 'admin' | 'banned' | 'shadow_banned';
|
|
1592
|
-
declare const _validUserWorkoutMetricsTypes: readonly ["duration", "reps"];
|
|
1592
|
+
declare const _validUserWorkoutMetricsTypes: readonly ["duration", "volume_kg", "reps"];
|
|
1593
1593
|
/**
|
|
1594
1594
|
* Used for hevy-web for fetching profile metrics and calendar data
|
|
1595
1595
|
*/
|
|
@@ -1600,15 +1600,19 @@ interface WorkoutMetricBase {
|
|
|
1600
1600
|
start_time: number;
|
|
1601
1601
|
type: UserWorkoutMetricsType;
|
|
1602
1602
|
}
|
|
1603
|
-
export interface RepsWorkoutMetric extends WorkoutMetricBase {
|
|
1604
|
-
type: 'reps';
|
|
1605
|
-
reps: number;
|
|
1606
|
-
}
|
|
1607
1603
|
export interface DurationWorkoutMetric extends WorkoutMetricBase {
|
|
1608
1604
|
type: 'duration';
|
|
1609
1605
|
duration_seconds: number;
|
|
1610
1606
|
}
|
|
1611
|
-
export
|
|
1607
|
+
export interface VolumeKgWorkoutMetric extends WorkoutMetricBase {
|
|
1608
|
+
type: 'volume_kg';
|
|
1609
|
+
volume_kg: number;
|
|
1610
|
+
}
|
|
1611
|
+
export interface RepsWorkoutMetric extends WorkoutMetricBase {
|
|
1612
|
+
type: 'reps';
|
|
1613
|
+
reps: number;
|
|
1614
|
+
}
|
|
1615
|
+
export type WorkoutMetric = DurationWorkoutMetric | VolumeKgWorkoutMetric | RepsWorkoutMetric;
|
|
1612
1616
|
export interface UserCalendarWorkout {
|
|
1613
1617
|
workout_short_id: string;
|
|
1614
1618
|
title: string;
|
|
@@ -1887,26 +1891,3 @@ export interface FolderLinkPreviewMetadataResponse extends LinkPreviewMetadataRe
|
|
|
1887
1891
|
username: string;
|
|
1888
1892
|
routine_count: number;
|
|
1889
1893
|
}
|
|
1890
|
-
export interface ExerciseHistorySet {
|
|
1891
|
-
weight_kg: number | null;
|
|
1892
|
-
reps: number | null;
|
|
1893
|
-
indicator: string | null;
|
|
1894
|
-
duration_seconds: number | null;
|
|
1895
|
-
distance_meters: number | null;
|
|
1896
|
-
rpe: number | null;
|
|
1897
|
-
custom_metric: number | null;
|
|
1898
|
-
set_index: number;
|
|
1899
|
-
prs: SetPersonalRecordType[];
|
|
1900
|
-
}
|
|
1901
|
-
export interface ExerciseInstructionsStep {
|
|
1902
|
-
index?: number;
|
|
1903
|
-
description: string;
|
|
1904
|
-
}
|
|
1905
|
-
export interface ExerciseHistoryWorkout {
|
|
1906
|
-
id: string;
|
|
1907
|
-
name: string;
|
|
1908
|
-
start_time: number;
|
|
1909
|
-
exercises: {
|
|
1910
|
-
sets: ExerciseHistorySet[];
|
|
1911
|
-
}[];
|
|
1912
|
-
}
|
package/built/index.js
CHANGED
|
@@ -326,7 +326,11 @@ exports.measurementsList = [
|
|
|
326
326
|
];
|
|
327
327
|
const isBodyMeasurementKey = (key) => (0, typeUtils_1.isInArray)(key, exports.measurementsList);
|
|
328
328
|
exports.isBodyMeasurementKey = isBodyMeasurementKey;
|
|
329
|
-
const _validUserWorkoutMetricsTypes = [
|
|
329
|
+
const _validUserWorkoutMetricsTypes = [
|
|
330
|
+
'duration',
|
|
331
|
+
'volume_kg',
|
|
332
|
+
'reps',
|
|
333
|
+
];
|
|
330
334
|
const isValidUserWorkoutMetricsType = (x) => (0, typeUtils_1.isInArray)(x, _validUserWorkoutMetricsTypes);
|
|
331
335
|
exports.isValidUserWorkoutMetricsType = isValidUserWorkoutMetricsType;
|
|
332
336
|
const _suggestedUserSources = [
|
package/built/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Dayjs } from 'dayjs';
|
|
2
|
-
import { BaseExerciseTemplate,
|
|
2
|
+
import { BaseExerciseTemplate, ExerciseType, FormatAtText, Result, SetType, StrengthLevel, UserExerciseSet, UserFacingSetIndicator, Weekday } from '.';
|
|
3
3
|
/**
|
|
4
4
|
* Doesn't matter what you throw in the function it'll
|
|
5
5
|
* always return a number. Non number values will return
|
|
@@ -249,5 +249,4 @@ export declare const startOfWeek: (d: Dayjs, firstDayOfWeek: Weekday) => Dayjs;
|
|
|
249
249
|
export declare const weekdayNumberMap: {
|
|
250
250
|
[key in Weekday]: number;
|
|
251
251
|
};
|
|
252
|
-
export declare const rawInstructionsToIndexedSteps: (rawInstructions: string) => ExerciseInstructionsStep[];
|
|
253
252
|
export {};
|
package/built/utils.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.startOfWeek = exports.calculateCurrentWeekStreak = exports.getYoutubeVideoId = exports.validateYoutubeUrl = exports.splitAtUsernamesAndLinks = exports.isVersionAGreaterOrEqualToVersionB = exports.generateUserGroupValue = exports.generateUserGroup = exports.isBaseExerciseTemplate = exports.getStrengthLevelFromPercentile = exports.numberToLocaleString = exports.numberWithCommas = exports.setVolume = exports.oneRepMax = exports.oneRepMaxPercentageMap = exports.getEstimatedExercisesDurationSeconds = exports.ESTIMATED_REST_TIMER_DURATION = exports.ESTIMATED_SET_DURATION = exports.UserFacingIndicatorToSetIndicator = exports.workoutSetCount = exports.userExerciseSetWeight = exports.workoutDistanceMeters = exports.workoutReps = exports.workoutDurationSeconds = exports.removeAccents = exports.getClosestDataPointAroundTargetDate = exports.getClosestDataPointBeforeTargetDate = exports.findMapped = exports.stringToNumber = exports.forceStringToNumber = exports.formatDurationInput = exports.isValidFormattedTime = exports.isWholeNumber = exports.isNumber = exports.isValidUuid = exports.isValidPhoneNumber = exports.isValidWebUrl = exports.URL_REGEX = exports.isValidEmail = exports.secondsToWordFormatMinutes = exports.secondsToWordFormat = exports.secondsToClockFormat = exports.secondsToClockParts = exports.isValidUsername = exports.roundToWholeNumber = exports.roundToOneDecimal = exports.roundToTwoDecimal = exports.divide = exports.clampNumber = exports.num = void 0;
|
|
7
|
-
exports.
|
|
7
|
+
exports.weekdayNumberMap = void 0;
|
|
8
8
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
9
9
|
/**
|
|
10
10
|
* Doesn't matter what you throw in the function it'll
|
|
@@ -775,22 +775,3 @@ exports.weekdayNumberMap = {
|
|
|
775
775
|
friday: 5,
|
|
776
776
|
saturday: 6,
|
|
777
777
|
};
|
|
778
|
-
const rawInstructionsToIndexedSteps = (rawInstructions) => {
|
|
779
|
-
const instructionsByLine = rawInstructions
|
|
780
|
-
.split('\n')
|
|
781
|
-
.map((l) => l.trim())
|
|
782
|
-
.filter((l) => l.length > 0);
|
|
783
|
-
const instructionsByStep = instructionsByLine.map((s) => {
|
|
784
|
-
var _a, _b;
|
|
785
|
-
const parsedStep = s.match(/^([0-9]*)\\?\.(.*)$/);
|
|
786
|
-
if (!parsedStep) {
|
|
787
|
-
// this line doesn't contain a number, so just return it unchanged
|
|
788
|
-
return { description: s };
|
|
789
|
-
}
|
|
790
|
-
const index = Number(parsedStep[1]) || undefined; // if it's NaN or 0, convert it to undefined
|
|
791
|
-
const description = (_b = (_a = parsedStep[2]) === null || _a === void 0 ? void 0 : _a.trim()) !== null && _b !== void 0 ? _b : s;
|
|
792
|
-
return { index, description };
|
|
793
|
-
});
|
|
794
|
-
return instructionsByStep;
|
|
795
|
-
};
|
|
796
|
-
exports.rawInstructionsToIndexedSteps = rawInstructionsToIndexedSteps;
|