commit 82bace6521ac3be92388029f534b73434b185d90
parent 8bf59b1ddfc25984b5d5074009945848aa018092
Author: Asher Morgan <59518073+ashermorgan@users.noreply.github.com>
Date: Sat, 12 Jul 2025 11:53:58 -0700
Inline pace util functions
Diffstat:
3 files changed, 3 insertions(+), 39 deletions(-)
diff --git a/src/utils/calculators.ts b/src/utils/calculators.ts
@@ -1,4 +1,3 @@
-import * as paceUtils from '@/utils/paces';
import * as raceUtils from '@/utils/races';
import { TargetTypes, workoutTargetToString } from '@/utils/targets';
import type { StandardTarget, WorkoutTarget } from '@/utils/targets';
@@ -128,8 +127,8 @@ export function calculatePaceResults(input: DistanceTime, target: StandardTarget
defaultUnitSystem: UnitSystems,
preciseDurations: boolean = true): TargetResult {
- return calculateStandardResult(input, target, (d1, t1, d2) => paceUtils.calculateTime(d1, t1, d2),
- (t1, d1, t2) => paceUtils.calculateDistance(t1, d1, t2), defaultUnitSystem, preciseDurations);
+ return calculateStandardResult(input, target, (d1, t1, d2) => ((t1 / d1) * d2),
+ (t1, d1, t2) => ((d1 / t1) * t2), defaultUnitSystem, preciseDurations);
}
/**
@@ -197,7 +196,7 @@ export function calculateWorkoutResults(input: DistanceTime, target: WorkoutTarg
// Get workout split prediction
d2 = raceUtils.predictDistance(t1, d1, t2, options.model, options.riegelExponent);
}
- const t3 = paceUtils.calculateTime(d2, t2, d3);
+ const t3 = (t2 / d2) * d3;
// Return result
return {
diff --git a/src/utils/paces.ts b/src/utils/paces.ts
@@ -1,21 +0,0 @@
-/**
- * Calculate time from a distance and input pace
- * @param {number} d1 The input pace distance (in any unit)
- * @param {number} t1 The input pace time (in seconds)
- * @param {number} d2 The output distance (in the same unit as d1)
- * @returns {number} The output time (in seconds)
- */
-export function calculateTime(d1: number, t1: number, d2: number): number {
- return (t1 / d1) * d2
-}
-
-/**
- * Calculate distance from a time and input pace
- * @param {number} t1 The input pace time (in seconds)
- * @param {number} d1 The input pace distance (in any unit)
- * @param {number} t2 The output time (in seconds)
- * @returns {number} The output distance (in the same unit as d1)
- */
-export function calculateDistance(t1: number, d1: number, t2: number): number {
- return (d1 / t1) * t2
-}
diff --git a/tests/unit/utils/paces.spec.js b/tests/unit/utils/paces.spec.js
@@ -1,14 +0,0 @@
-import { describe, test, expect } from 'vitest';
-import * as paces from '@/utils/paces';
-
-describe('calculateTime method', () => {
- test('1 meters in 3 seconds should equal 2 meters in 6 seconds', () => {
- expect(paces.calculateTime(1, 3, 2)).to.equal(6);
- });
-});
-
-describe('calculateDistance method', () => {
- test('1 meter in 3 seconds should equal 2 meters in 6 seconds', () => {
- expect(paces.calculateDistance(3, 1, 6)).to.equal(2);
- });
-});