import { useState, useEffect } from 'react'; import { apiClient } from '@/api/client'; interface SuggestionBadgeProps { onClick: () => void; } export function SuggestionBadge({ onClick }: SuggestionBadgeProps) { const [count, setCount] = useState(0); const [pulsing, setPulsing] = useState(false); useEffect(() => { // Initial count apiClient.get('/api/v1/ai-proactive/suggestions').then(r => { setCount(r.data.items.length); }).catch(() => {}); // SSE for real-time updates const eventSource = new EventSource('/api/v1/ai-proactive/suggestions/stream'); eventSource.onmessage = () => { setCount(prev => prev + 1); setPulsing(true); setTimeout(() => setPulsing(false), 2000); }; return () => eventSource.close(); }, []); if (count === 0) { return ( ); } return ( ); }