// Wave 4b — Marketing (4 telas): Blacklist, Gerador IA, Lead Scoring, Relatórios Mailing // ============================================================= // 5. Blacklist // ============================================================= const BLACKLIST = [ { id: 1, contato: 'spam-reporter@outlook.com', tipo: 'email', motivo: 'spam', data: '15/04/2026', origem: 'Black Friday 2026', auto: true }, { id: 2, contato: 'bounced-address@invalido.com', tipo: 'email', motivo: 'hard-bounce', data: '14/04/2026', origem: 'Newsletter · abril', auto: true }, { id: 3, contato: 'user@empresa-falida.com', tipo: 'email', motivo: 'hard-bounce', data: '14/04/2026', origem: 'Boas-vindas Savassi', auto: true }, { id: 4, contato: '+5531988776655', tipo: 'whatsapp', motivo: 'unsubscribe', data: '13/04/2026', origem: 'Aniversariantes', auto: true }, { id: 5, contato: 'naoquero@gmail.com', tipo: 'email', motivo: 'unsubscribe', data: '13/04/2026', origem: 'Black Friday 2026', auto: true }, { id: 6, contato: 'cliente.insatisfeito@hotmail.com', tipo: 'email', motivo: 'manual', data: '12/04/2026', origem: 'Solicitação LGPD', auto: false, op: 'Patrícia' }, { id: 7, contato: 'test@example.com', tipo: 'email', motivo: 'manual', data: '10/04/2026', origem: 'Limpeza manual', auto: false, op: 'Ana' }, { id: 8, contato: 'spam@spam.com', tipo: 'email', motivo: 'spam', data: '10/04/2026', origem: 'Reativação 60d', auto: true }, { id: 9, contato: '+5531977665544', tipo: 'whatsapp', motivo: 'unsubscribe', data: '09/04/2026', origem: 'Aniversariantes', auto: true }, { id: 10, contato: 'dev-null@bighorse.com', tipo: 'email', motivo: 'hard-bounce', data: '08/04/2026', origem: 'Newsletter · março', auto: true }, { id: 11, contato: '+5531966554433', tipo: 'sms', motivo: 'unsubscribe', data: '06/04/2026', origem: 'Páscoa pré-venda', auto: true }, { id: 12, contato: 'bloqueado.lgpd@gmail.com', tipo: 'email', motivo: 'manual', data: '04/04/2026', origem: 'Solicitação direito ao esquecimento', auto: false, op: 'DPO' }, { id: 13, contato: 'reclamante@yahoo.com.br', tipo: 'email', motivo: 'spam', data: '02/04/2026', origem: 'Newsletter · março', auto: true }, { id: 14, contato: 'inexistente@dominio.tmp', tipo: 'email', motivo: 'hard-bounce', data: '01/04/2026', origem: 'MGM · indicação', auto: true }, ]; const motivoMeta = { 'unsubscribe': { l: 'Unsubscribe', c: '#93c5fd', bg: 'rgba(59,130,246,.14)' }, 'hard-bounce': { l: 'Hard bounce', c: '#fcd34d', bg: 'rgba(245,158,11,.14)' }, 'spam': { l: 'Spam complaint', c: '#fca5a5', bg: 'rgba(239,68,68,.14)' }, 'manual': { l: 'Bloqueio manual', c: 'var(--text-3)', bg: 'var(--bg-3)' }, }; const PageBlacklist = ({ onNavigate }) => { const [tipo, setTipo] = React.useState('todos'); const [motivo, setMotivo] = React.useState('todos'); const filtered = BLACKLIST.filter(b => (tipo === 'todos' || b.tipo === tipo) && (motivo === 'todos' || b.motivo === motivo)); return ( } >
b.tipo === 'email').length} sub="maioria dos casos"/> b.tipo !== 'email').length} sub="opt-out explícito"/> b.auto).length}`} sub="via engine de bounce"/>
Conformidade LGPD · contatos nesta lista não recebem mensagens de marketing · transacionais liberados.
{['todos', 'email', 'whatsapp', 'sms'].map(t => ( ))}
{filtered.map(b => { const m = motivoMeta[b.motivo]; return ( ); })}
Contato Canal Motivo Data Origem Operador Ações
{b.contato} {b.tipo} {m.l} {b.data} {b.origem} {b.auto ? Automático : 👤 {b.op}}
); }; // ============================================================= // 6. Gerador IA // ============================================================= const PageIaGen = ({ onNavigate }) => { const [tom, setTom] = React.useState('casual'); const [tipo, setTipo] = React.useState('email'); const [gerando, setGerando] = React.useState(false); const [prompt, setPrompt] = React.useState('Criar campanha de Dia das Mães para clientes VIP da padaria · oferta especial de kit presente com entrega · urgência 48h'); const [variacoes, setVariacoes] = React.useState([ { id: 'A', assunto: '💝 Mãe merece o melhor · Kit Dia das Mães com 25% OFF', preheader: 'Entrega no domingo garantida · apenas 48h para pedir', corpo: 'Oi Ana,\n\nVocê sabe melhor que ninguém: mãe é só uma, e ela merece muito mais que flores comuns.\n\nPor isso preparamos o **Kit Dia das Mães Gourmet** — pães artesanais, geleias da casa, queijo brie premium e nosso brigadeiro de pistache. Tudo em uma caixa linda, pronta para presentear.\n\nComo cliente VIP, você tem **25% OFF** usando o cupom:', cta: 'Resgatar cupom MAE25 →', score: 94, tags: ['emocional', 'urgente', 'VIP'], }, { id: 'B', assunto: 'Último fim de semana para encomendar o Kit Mães', preheader: 'Estoque limitado · 84 unidades restantes', corpo: 'Ana, bom dia.\n\nApenas um lembrete rápido: nosso Kit Dia das Mães — aquele com pães artesanais, geleias e brigadeiro de pistache — está com **estoque limitado**.\n\nFaltam 84 unidades e o último dia para pedir com entrega garantida no domingo é **sábado às 18h**.\n\nVocê tem 25% OFF automático como cliente VIP.', cta: 'Garantir o meu kit →', score: 87, tags: ['escassez', 'direto', 'VIP'], }, ]); return ( Gerador IA claude-haiku-4.5} subtitle="Redija campanhas em segundos · tom, canal e variações A/B sob medida." maxWidth={1700} >
{/* Left panel — controls */}
Briefing
O que você quer comunicar?