// Admin Client Area — módulo da EQUIPE pra alimentar o Portal do Cliente // (timeline de operação, arquivos, aprovações). Não é o portal em si — // é a tela onde a equipe registra o que o cliente vai ver. function AdminClientArea() { const [events, setEvents] = React.useState([]); const [selectedEventId, setSelectedEventId] = React.useState(() => localStorage.getItem('admin_client_area_event') || ''); const [loading, setLoading] = React.useState(true); const [search, setSearch] = React.useState(''); React.useEffect(() => { sb.from('events').select('id, name, client_name, event_date, status').order('event_date', { ascending: false }).then(({ data }) => { setEvents(data || []); setLoading(false); }); }, []); const q = search.trim().toLowerCase(); const filtered = q ? events.filter(e => (e.name || '').toLowerCase().includes(q) || (e.client_name || '').toLowerCase().includes(q)) : events; const selectedEvent = events.find(e => String(e.id) === String(selectedEventId)); const selectEvent = (id) => { setSelectedEventId(id); localStorage.setItem('admin_client_area_event', id); }; if (loading) return
Alimente a timeline da operação, envie arquivos e crie aprovações — tudo aparece no portal do cliente.