'use client'; import { useTranslations } from 'next-intl'; import { Search } from 'lucide-react'; import { Input } from '@/components/ui/shared/Input'; import { Patient } from '@/types/patient'; interface PatientSearchSelectProps { search: string; onSearchChange: (value: string) => void; patients: Patient[]; selectedPatientId?: string; onSelectPatient: (patient: Patient) => void; loading?: boolean; } export function PatientSearchSelect({ search, onSearchChange, patients, selectedPatientId, onSelectPatient, loading = false, }: PatientSearchSelectProps) { const t = useTranslations('patients'); return (
onSearchChange(e.target.value)} icon={} />
{loading &&

{t('loadingPatients')}

} {!loading && patients.length === 0 && (

{t('noResults')}

)} {patients.map((patient) => { const isSelected = selectedPatientId === patient.id; return ( ); })}
); }