'use client'; import Input from '@/components/ui/Input'; interface DurationFieldProps { label: string; value: number | ''; onChange: (value: number | '') => void; helperText?: string; required?: boolean; disabled?: boolean; unit?: 'minutes' | 'laps'; error?: string; } export default function DurationField({ label, value, onChange, helperText, required, disabled, unit = 'minutes', error, }: DurationFieldProps) { const handleChange = (raw: string) => { if (raw.trim() === '') { onChange(''); return; } const parsed = parseInt(raw, 10); if (Number.isNaN(parsed) || parsed <= 0) { onChange(''); return; } onChange(parsed); }; const unitLabel = unit === 'laps' ? 'laps' : 'min'; return (
{helperText}
)} {error && ({error}
)}