// PatientPanel.jsx — Left sidebar import { Upload, User, AlertCircle } from 'lucide-react'; const RISK_COLOR = { critical: 'var(--red-critical)', moderate: 'var(--amber-warning)', stable: 'var(--green-safe)' }; const RISK_DOT = { critical: 'badge-critical', moderate: 'badge-moderate', stable: 'badge-stable' }; export function PatientCard({ patient, selected, onClick }) { const risk = patient.risk_level || 'stable'; return (
onClick(patient)} style={{ padding: '12px 14px', borderRadius: 10, cursor: 'pointer', marginBottom: 6, background: selected ? 'rgba(10,132,255,0.12)' : 'var(--bg-surface)', border: `1px solid ${selected ? 'rgba(10,132,255,0.4)' : 'var(--border-subtle)'}`, transition: 'all 0.15s', }} >
{patient.display_name} {risk}
{patient.age}y {patient.gender} · {(patient.conditions || []).join(', ') || 'No conditions'}
{patient.allergy_count} allergies · {patient.med_count} meds
); } export function PatientPanel({ patients, selected, onSelect, onUpload, loading }) { return (
Patients {patients.length} loaded
{loading &&
Loading...
} {!loading && patients.length === 0 && (
No patients loaded
)} {patients.map(p => ( ))}
); }