b97f7f94e4bb96d498762ebfb25d1a7668ad8365
- Stickers: captura automática por fileSha256 (Baileys) no MessageHandler,
tabela Prisma 'stickers' com deduplicação por [tenantId, sha256],
API REST /api/stickers (list + favorite toggle), cache IndexedDB permanente
(sem TTL — conteúdo imutável), StickerPanel.tsx com abas Recentes/Favoritos
- Emoji picker: migrado de emoji-picker-react para @emoji-mart/react com
locale="pt" (tradução completa: categorias, busca, mensagem de sem resultado)
- Preloader: aparece apenas em hard reload (F5/URL direta) via
performance.getEntriesByType('navigation').type + sessionStorage flag,
navegação client-side Next.js pula o overlay instantaneamente
- Avatar cache: Wasabi como storage persistente + IndexedDB client-side,
avatar_version via MD5(avatarUrl) sem coluna extra no banco,
rota /api/storage/view/* para servir arquivos Wasabi ao frontend
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
Puxe as últimas atualizações do repositório clube67_newwhats.local no Gitea http://10.99.0.3:3000/, analise a Issue #3(trocar) e siga o nosso protocolo_agentes.md para concluir o deploy
https://git.clube67.com/ruicesar/clube67_newwhats.local
Usuário: ruicesar
Senha: h$tg@g5aga$ra1E3$C-yHW$-BA@DF2@Grfa!3#
Regra: antes de COMENTAR NO ISSUE, liste sugestões em code block no chat para o Admin autorizar o comentário!
Languages
TypeScript
76.1%
JavaScript
22.1%
Shell
1.4%
Python
0.2%
CSS
0.1%