'use client'; import { useState, useEffect } from 'react'; import { X } from 'lucide-react'; interface Appointment { id?: string; patient: string; time: string; duration: number; type: 'consulta' | 'exame' | 'retorno'; status: 'confirmed' | 'pending' | 'absent'; professional: string; notes?: string; } interface Professional { id: string; name: string; specialty: string; } interface AppointmentModalProps { isOpen: boolean; onClose: () => void; onSave: (appointment: Appointment) => void; professionals: Professional[]; appointment?: Appointment | null; } export default function AppointmentModal({ isOpen, onClose, onSave, professionals, appointment }: AppointmentModalProps) { const [formData, setFormData] = useState({ patient: '', time: '', duration: 30, type: 'consulta', status: 'pending', professional: '', notes: '' }); useEffect(() => { if (appointment) { setFormData(appointment); } else { setFormData({ patient: '', time: '', duration: 30, type: 'consulta', status: 'pending', professional: professionals[0]?.id || '', notes: '' }); } }, [appointment, professionals]); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); onSave(formData); onClose(); }; const handleChange = (e: React.ChangeEvent) => { const { name, value } = e.target; setFormData(prev => ({ ...prev, [name]: value })); }; if (!isOpen) return null; return (

{appointment ? 'Editar Agendamento' : 'Novo Agendamento'}