Update src/components/workout/WorkoutSaver.tsx

This commit is contained in:
2026-03-11 19:32:44 +00:00
parent 8f7f54d74f
commit ddd6eb99a0

View File

@@ -9,7 +9,32 @@ interface WorkoutSaverProps {
onError?: (error: string) => void;
}
export const WorkoutSaver: React.FC<WorkoutSaverProps> = ({ onSave, onError }) => {
interface WorkoutSaverHandle {
saveCardioWorkout: (data: {
distance: number;
duration: number;
pace: string;
calories: number;
steps?: number;
}) => Promise<void>;
saveTrainingWorkout: (data: {
exercises: ExerciseLog[];
duration: number;
calories?: number;
}) => Promise<void>;
saveNutritionLog: (data: {
meals: Array<{
name: string;
calories: number;
protein: number;
carbs: number;
fats: number;
}>;
}) => Promise<void>;
isSaving: boolean;
}
export const useWorkoutSaver = ({ onSave, onError }: WorkoutSaverProps): WorkoutSaverHandle => {
const { addSession } = useWorkoutData();
const [isSaving, setIsSaving] = useState(false);
@@ -126,4 +151,4 @@ export const WorkoutSaver: React.FC<WorkoutSaverProps> = ({ onSave, onError }) =
};
};
export default WorkoutSaver;
export default useWorkoutSaver;