diff --git a/package.json b/package.json index 6d31c3fc..849469f2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "homepage", - "version": "1.69.2", + "version": "1.69.3", "private": true, "type": "module", "scripts": { diff --git a/src/lib/components/fitness/ActiveRestTimer.svelte b/src/lib/components/fitness/ActiveRestTimer.svelte new file mode 100644 index 00000000..db717384 --- /dev/null +++ b/src/lib/components/fitness/ActiveRestTimer.svelte @@ -0,0 +1,89 @@ + + +{#if active && total > 0} +
+
+ {setLabel} + {#if isOtherExercise && exerciseId} + + + {/if} +
+ +
+{/if} + + diff --git a/src/lib/components/fitness/SetTable.svelte b/src/lib/components/fitness/SetTable.svelte index 09a4c6ff..f95025cf 100644 --- a/src/lib/components/fitness/SetTable.svelte +++ b/src/lib/components/fitness/SetTable.svelte @@ -4,7 +4,6 @@ import Play from '@lucide/svelte/icons/play'; import Square from '@lucide/svelte/icons/square'; import { METRIC_LABELS } from '$lib/data/exercises'; - import RestTimer from './RestTimer.svelte'; import { page } from '$app/state'; import { detectFitnessLang, m } from '$lib/js/fitnessI18n'; @@ -17,14 +16,9 @@ * previousSets?: Array> | null, * metrics?: Array<'weight' | 'reps' | 'rpe' | 'distance' | 'duration'>, * editable?: boolean, - * restAfterSet?: number, - * restSeconds?: number, - * restTotal?: number, * holdAfterSet?: number, * holdSeconds?: number, * holdTotal?: number, - * onRestAdjust?: ((delta: number) => void) | null, - * onRestSkip?: (() => void) | null, * timedHold?: boolean, * onHoldSkip?: (() => void) | null, * onUpdate?: ((setIndex: number, data: Record) => void) | null, @@ -37,15 +31,10 @@ previousSets = null, metrics = ['weight', 'reps', 'rpe'], editable = false, - restAfterSet = -1, - restSeconds = 0, - restTotal = 0, timedHold = false, holdAfterSet = -1, holdSeconds = 0, holdTotal = 0, - onRestAdjust = null, - onRestSkip = null, onHoldSkip = null, onUpdate = null, onToggleComplete = null, @@ -215,19 +204,6 @@ {/if} - {#if restAfterSet === i && restTotal > 0} - - - - - - {/if} {/each} diff --git a/src/routes/fitness/[workout=fitnessWorkout]/[active=fitnessActive]/+page.svelte b/src/routes/fitness/[workout=fitnessWorkout]/[active=fitnessActive]/+page.svelte index 3bd70f38..f4be0f61 100644 --- a/src/routes/fitness/[workout=fitnessWorkout]/[active=fitnessActive]/+page.svelte +++ b/src/routes/fitness/[workout=fitnessWorkout]/[active=fitnessActive]/+page.svelte @@ -40,6 +40,7 @@ import ExercisePicker from '$lib/components/fitness/ExercisePicker.svelte'; import WorkoutRail from '$lib/components/fitness/WorkoutRail.svelte'; import WorkoutFocusCard from '$lib/components/fitness/WorkoutFocusCard.svelte'; + import ActiveRestTimer from '$lib/components/fitness/ActiveRestTimer.svelte'; import Toggle from '$lib/components/Toggle.svelte'; import { onMount } from 'svelte'; @@ -1681,6 +1682,20 @@ }} /> + = 0 && workout.exercises[workout.restExerciseIdx] + ? workout.exercises[workout.restExerciseIdx].exerciseId + : null} + setIdx={workout.restSetIdx} + activeExerciseIdx={activeIdx} + restExerciseIdx={workout.restExerciseIdx} + onAdjust={(delta) => workout.adjustRestTimer(delta)} + onSkip={cancelRest} + /> +
workout.adjustRestTimer(delta)} - onRestSkip={cancelRest} onHoldSkip={() => workout.cancelHoldTimer()} onUpdate={(setIdx, d) => workout.updateSet(activeIdx, setIdx, d)} onToggleComplete={(setIdx) => {