Skip to content

Commit a7f1a31

Browse files
committed
fix: address PR review feedback
- Replace z.coerce.number() with z.number() to prevent empty string → 0 - Tighten FormattedBodyMeasurement types from number | undefined | null to number | null - Coalesce undefined to null in formatBodyMeasurement
1 parent 15bd732 commit a7f1a31

2 files changed

Lines changed: 35 additions & 35 deletions

File tree

src/tools/body-measurements.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ type HevyClient = ReturnType<
1818
typeof import("../utils/hevyClientKubb.js").createClient
1919
>;
2020

21-
const zNullableNumber = z.coerce.number().nullable().optional();
21+
const zNullableNumber = z.number().nullable().optional();
2222

2323
const bodyMeasurementFieldsSchema = {
2424
weightKg: zNullableNumber.describe("Body weight in kilograms"),

src/utils/formatters.ts

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -297,46 +297,46 @@ export function formatExerciseHistoryEntry(
297297

298298
export interface FormattedBodyMeasurement {
299299
date: string;
300-
weightKg: number | undefined | null;
301-
leanMassKg: number | undefined | null;
302-
fatPercent: number | undefined | null;
303-
neckCm: number | undefined | null;
304-
shoulderCm: number | undefined | null;
305-
chestCm: number | undefined | null;
306-
leftBicepCm: number | undefined | null;
307-
rightBicepCm: number | undefined | null;
308-
leftForearmCm: number | undefined | null;
309-
rightForearmCm: number | undefined | null;
310-
abdomen: number | undefined | null;
311-
waist: number | undefined | null;
312-
hips: number | undefined | null;
313-
leftThigh: number | undefined | null;
314-
rightThigh: number | undefined | null;
315-
leftCalf: number | undefined | null;
316-
rightCalf: number | undefined | null;
300+
weightKg: number | null;
301+
leanMassKg: number | null;
302+
fatPercent: number | null;
303+
neckCm: number | null;
304+
shoulderCm: number | null;
305+
chestCm: number | null;
306+
leftBicepCm: number | null;
307+
rightBicepCm: number | null;
308+
leftForearmCm: number | null;
309+
rightForearmCm: number | null;
310+
abdomen: number | null;
311+
waist: number | null;
312+
hips: number | null;
313+
leftThigh: number | null;
314+
rightThigh: number | null;
315+
leftCalf: number | null;
316+
rightCalf: number | null;
317317
}
318318

319319
export function formatBodyMeasurement(
320320
measurement: BodyMeasurement,
321321
): FormattedBodyMeasurement {
322322
return {
323323
date: measurement.date,
324-
weightKg: measurement.weight_kg,
325-
leanMassKg: measurement.lean_mass_kg,
326-
fatPercent: measurement.fat_percent,
327-
neckCm: measurement.neck_cm,
328-
shoulderCm: measurement.shoulder_cm,
329-
chestCm: measurement.chest_cm,
330-
leftBicepCm: measurement.left_bicep_cm,
331-
rightBicepCm: measurement.right_bicep_cm,
332-
leftForearmCm: measurement.left_forearm_cm,
333-
rightForearmCm: measurement.right_forearm_cm,
334-
abdomen: measurement.abdomen,
335-
waist: measurement.waist,
336-
hips: measurement.hips,
337-
leftThigh: measurement.left_thigh,
338-
rightThigh: measurement.right_thigh,
339-
leftCalf: measurement.left_calf,
340-
rightCalf: measurement.right_calf,
324+
weightKg: measurement.weight_kg ?? null,
325+
leanMassKg: measurement.lean_mass_kg ?? null,
326+
fatPercent: measurement.fat_percent ?? null,
327+
neckCm: measurement.neck_cm ?? null,
328+
shoulderCm: measurement.shoulder_cm ?? null,
329+
chestCm: measurement.chest_cm ?? null,
330+
leftBicepCm: measurement.left_bicep_cm ?? null,
331+
rightBicepCm: measurement.right_bicep_cm ?? null,
332+
leftForearmCm: measurement.left_forearm_cm ?? null,
333+
rightForearmCm: measurement.right_forearm_cm ?? null,
334+
abdomen: measurement.abdomen ?? null,
335+
waist: measurement.waist ?? null,
336+
hips: measurement.hips ?? null,
337+
leftThigh: measurement.left_thigh ?? null,
338+
rightThigh: measurement.right_thigh ?? null,
339+
leftCalf: measurement.left_calf ?? null,
340+
rightCalf: measurement.right_calf ?? null,
341341
};
342342
}

0 commit comments

Comments
 (0)