import React from 'react'; import { Dumbbell, Scale, Activity, Timer as TimerIcon, ArrowRight, ArrowUp, Plus, CheckCircle } from 'lucide-react'; import { ExerciseType, Language } from '../../types'; import { t } from '../../services/i18n'; import FilledInput from '../FilledInput'; import ExerciseModal from '../ExerciseModal'; import { useTracker } from './useTracker'; interface SporadicViewProps { tracker: ReturnType; lang: Language; } const SporadicView: React.FC = ({ tracker, lang }) => { const { searchQuery, setSearchQuery, setShowSuggestions, showSuggestions, filteredExercises, setSelectedExercise, selectedExercise, weight, setWeight, reps, setReps, duration, setDuration, distance, setDistance, height, setHeight, handleLogSporadicSet, sporadicSuccess, setIsSporadicMode, isCreating, setIsCreating, handleCreateExercise, exercises, resetForm } = tracker; return (

{t('quick_log', lang)}

{/* Exercise Selection */}
) => { setSearchQuery(e.target.value); setShowSuggestions(true); }} onFocus={() => setShowSuggestions(true)} onBlur={() => setTimeout(() => setShowSuggestions(false), 100)} icon={} autoComplete="off" type="text" /> {showSuggestions && (
{filteredExercises.length > 0 ? ( filteredExercises.map(ex => ( )) ) : (
{t('no_exercises_found', lang)}
)}
)}
{selectedExercise && (
{(selectedExercise.type === ExerciseType.STRENGTH || selectedExercise.type === ExerciseType.BODYWEIGHT || selectedExercise.type === ExerciseType.STATIC) && ( setWeight(e.target.value)} icon={} /> )} {(selectedExercise.type === ExerciseType.STRENGTH || selectedExercise.type === ExerciseType.BODYWEIGHT || selectedExercise.type === ExerciseType.PLYOMETRIC) && ( setReps(e.target.value)} icon={} type="number" /> )} {(selectedExercise.type === ExerciseType.CARDIO || selectedExercise.type === ExerciseType.STATIC) && ( setDuration(e.target.value)} icon={} /> )} {(selectedExercise.type === ExerciseType.CARDIO || selectedExercise.type === ExerciseType.LONG_JUMP) && ( setDistance(e.target.value)} icon={} /> )} {(selectedExercise.type === ExerciseType.HIGH_JUMP) && ( setHeight(e.target.value)} icon={} /> )}
)}
{isCreating && ( setIsCreating(false)} onSave={handleCreateExercise} lang={lang} existingExercises={exercises} /> )}
); }; export default SporadicView;