16 lines
533 B
TypeScript
16 lines
533 B
TypeScript
import { type WorkoutSet } from "@types/workout";
|
|
|
|
export function calculateTotalDistance(sets: WorkoutSet[]): number {
|
|
return sets.reduce((acc, set) => acc + set.distancePerRep * set.repCount, 0);
|
|
}
|
|
|
|
export function calculateTotalDuration(sets: WorkoutSet[]): number {
|
|
return sets.reduce((acc, set) => {
|
|
const swimTime = set.targetTime
|
|
? set.targetTime * set.repCount
|
|
: 0;
|
|
const restTime = set.restType === "none" ? 0 : set.restDuration * (set.repCount - 1);
|
|
return acc + swimTime + restTime;
|
|
}, 0);
|
|
}
|