9.4 KiB
✅ Atualizações: Ícone Câmera + Avatares Profissionais + Correção Upload
🔧 Correções Implementadas:
1️⃣ Erro de Upload Corrigido ✅
Problema: Cannot read properties of undefined (reading 'getUrl')
Causa:
- Tentativa de usar
client.storage.getUrl()que não existe no cliente - Era necessário obter a URL através do backend
Solução:
// ANTES (com erro):
const urlFoto = await client.storage.getUrl(storageId);
// DEPOIS (funcionando):
await client.mutation(api.usuarios.atualizarPerfil, {
fotoPerfil: storageId,
avatar: undefined,
});
// Atualizar authStore para obter a URL
await authStore.refresh();
// Usar URL do authStore
if (authStore.usuario?.fotoPerfilUrl) {
fotoPerfilLocal = authStore.usuario.fotoPerfilUrl;
avatarLocal = null;
}
Status: ✅ Upload de foto agora funciona perfeitamente!
2️⃣ Ícone da Câmera Atualizado 📝
Mudança: Trocado de ícone de câmera fotográfica para ícone de edição/lápis
Antes:
<!-- Ícone de câmera fotográfica -->
<svg>
<path d="M3 9a2 2 0 012-2h.93a2 2 0 001.664-.89l.812-1.22..." />
<path d="M15 13a3 3 0 11-6 0 3 3 0 016 0z" />
</svg>
Depois:
<!-- Ícone de edição/lápis (mais moderno e intuitivo) -->
<svg class="h-5 w-5" stroke-width="2">
<path d="M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z" />
</svg>
Vantagens:
- ✅ Mais intuitivo (edição em vez de foto)
- ✅ Mais moderno e clean
- ✅ Maior clareza de propósito
- ✅ Tamanho aumentado (h-5 w-5 em vez de h-4 w-4)
3️⃣ Avatares Profissionais 👔
Mudança Completa da Galeria de Avatares
Estilos Atualizados:
ANTES (Casual/Divertido):
adventurer- Aventureiros felizesbig-smile- Sorrisos grandesfun-emoji- Emojis divertidoslorelei- Estilo artísticomicah- Personagens modernosopen-peeps- Pessoas abertas
DEPOIS (Profissional/Formal):
avataaars-neutral- Estilo corporativo neutrobottts-neutral- Robôs profissionaispersonas- Personas formaisnotionists- Estilo Notion (muito profissional)initials- Iniciais simples e elegantes
Seeds/Nomes Atualizados:
ANTES (Nomes de Animais):
'Felix', 'Bandit', 'Bear', 'Buster', 'Cookie', 'Fluffy',
'Gizmo', 'Lucky', 'Midnight', 'Princess', 'Tiger', etc.
DEPOIS (Nomes Profissionais Brasileiros):
// Masculinos:
'Alexandre', 'Bruno', 'Carlos', 'Daniel', 'Eduardo', 'Fernando',
'Gabriel', 'Henrique', 'Igor', 'João', 'Leonardo', 'Marcelo',
'Nicolas', 'Otávio', 'Paulo', 'Rafael', 'Rodrigo', 'Samuel',
'Thiago', 'Victor', 'William', 'Pedro', 'André', 'Diego'
// Femininos:
'Ana', 'Beatriz', 'Camila', 'Daniela', 'Eduarda', 'Fernanda',
'Gabriela', 'Helena', 'Isabela', 'Juliana', 'Larissa', 'Mariana',
'Natália', 'Olivia', 'Patricia', 'Rafaela', 'Sofia', 'Tatiana',
'Valentina', 'Yasmin', 'Carolina', 'Leticia', 'Amanda', 'Barbara'
Cores Atualizadas:
ANTES (Colorido/Vibrante):
'b6e3f4', 'c0aede', 'd1d4f9', 'ffd5dc', 'ffdfbf',
'a8e6cf', 'dcedc1', 'ffd3b6', 'ffaaa5', 'ff8b94'
DEPOIS (Neutro/Profissional):
// Tons pastéis neutros e elegantes
'E8EAF6', // Índigo claro
'F3E5F5', // Púrpura claro
'E1F5FE', // Azul claro
'E0F2F1', // Verde-água claro
'F1F8E9', // Verde claro
'FFF3E0', // Laranja claro
'FBE9E7', // Rosa claro
'EFEBE9', // Cinza quente
'ECEFF1', // Cinza azulado
'F5F5F5', // Cinza claro
'E3F2FD', // Azul muito claro
'E8F5E9', // Verde muito claro
'FFF9C4', // Amarelo claro
'FFE0B2', // Pêssego
'FFCCBC' // Coral claro
Interface Atualizada:
ANTES:
"Escolha um avatar feliz e colorido para seu perfil! 😊"
DEPOIS:
"Escolha um avatar profissional para seu perfil"
📊 Comparação Visual:
Antes:
┌─────────────────────────────────────┐
│ 😊 😁 🙂 😃 😄 😊 😁 🙂 │
│ Avatares coloridos e divertidos │
│ Expressões animadas │
│ Cores vibrantes │
└─────────────────────────────────────┘
Depois:
┌─────────────────────────────────────┐
│ 👔 👤 👔 👤 👔 👤 👔 👤 │
│ Avatares corporativos │
│ Estilo minimalista │
│ Cores neutras e elegantes │
└─────────────────────────────────────┘
🎯 Benefícios das Mudanças:
Avatares Profissionais:
- ✅ Adequado para ambiente corporativo/governamental
- ✅ Aparência séria e profissional
- ✅ Nomes reais brasileiros (facilita identificação)
- ✅ Cores neutras e elegantes
- ✅ Estilos minimalistas
- ✅ Diversidade de gênero equilibrada (24 masc. + 24 fem.)
Ícone de Edição:
- ✅ Mais intuitivo que câmera
- ✅ Indica "editar perfil" claramente
- ✅ Moderno e profissional
- ✅ Maior visibilidade (tamanho aumentado)
Upload Corrigido:
- ✅ Não apresenta mais erro
- ✅ Foto carrega corretamente
- ✅ Preview atualiza instantaneamente
- ✅ Toast de sucesso funciona
🔧 Detalhes Técnicos:
Arquivo: apps/web/src/lib/utils/avatars.ts
Variáveis alteradas:
happySeeds→professionalSeedsbackgroundColors→professionalColorsfriendlyStyles→professionalStyles
Função atualizada:
export function generateAvatarGallery(count: number = 48): Avatar[] {
const avatars: Avatar[] = [];
const professionalStyles = [
'avataaars-neutral',
'bottts-neutral',
'personas',
'notionists',
'initials',
];
for (let i = 0; i < count; i++) {
const style = professionalStyles[i % professionalStyles.length];
const seed = professionalSeeds[i % professionalSeeds.length];
const bgColor = professionalColors[i % professionalColors.length];
const url = `https://api.dicebear.com/7.x/${style}/svg?seed=${seed}&backgroundColor=${bgColor}&radius=50&size=200`;
avatars.push({
id: `avatar-${style}-${seed}-${i}`,
name: `${seed}`, // Apenas o nome, sem (estilo)
url,
seed,
style,
});
}
return avatars;
}
🧪 Como Testar:
Teste 1: Upload de Foto
- Login → Perfil
- Hover sobre avatar → Clique no ícone de lápis/edição ✏️
- Tab "Enviar Foto"
- Selecione uma imagem
- ✅ Upload deve funcionar sem erro
- ✅ Foto deve aparecer instantaneamente
Teste 2: Avatares Profissionais
- Abra modal de edição
- Tab "Escolher Avatar"
- ✅ Veja avatares com estilo corporativo
- ✅ Veja nomes profissionais (Alexandre, Ana, Bruno, etc.)
- ✅ Veja cores neutras e elegantes
- Selecione um avatar
- ✅ Avatar deve aparecer instantaneamente
Teste 3: Ícone de Edição
- Vá ao perfil
- Passe mouse sobre avatar
- ✅ Ícone de lápis/edição aparece (não mais câmera)
- ✅ Ícone é maior e mais visível
- ✅ Dica "Clique para alterar" aparece
📁 Arquivos Modificados:
-
✅
apps/web/src/lib/utils/avatars.ts- Seeds profissionais
- Estilos corporativos
- Cores neutras
-
✅
apps/web/src/routes/(dashboard)/perfil/+page.svelte- Correção do upload (authStore.refresh())
- Ícone de edição/lápis
- Texto "avatar profissional"
🎨 Estilos de Avatares Disponíveis:
1. Avataaars Neutral 👔
- Estilo corporativo
- Expressões neutras
- Roupas formais
- Ideal para: Empresas, governo, corporativo
2. Bottts Neutral 🤖
- Robôs minimalistas
- Cores neutras
- Estilo moderno
- Ideal para: Tech, TI, inovação
3. Personas 👤
- Silhuetas profissionais
- Muito formal
- Minimalista
- Ideal para: Documentos oficiais
4. Notionists 📋
- Estilo Notion
- Super profissional
- Clean e moderno
- Ideal para: Produtividade, organização
5. Initials 🔤
- Apenas iniciais
- Extremamente simples
- Elegante
- Ideal para: Formalidade máxima
✨ Resultado Final:
Antes:
- ❌ Upload com erro
- ❌ Ícone de câmera (menos intuitivo)
- ❌ Avatares coloridos/infantis
- ❌ Nomes de animais
- ❌ Cores vibrantes
Depois:
- ✅ Upload funcionando perfeitamente
- ✅ Ícone de edição (intuitivo)
- ✅ Avatares corporativos/profissionais
- ✅ Nomes profissionais brasileiros
- ✅ Cores neutras e elegantes
- ✅ Adequado para ambiente governamental
- ✅ 48 avatares diversos (24 masc. + 24 fem.)
🏢 Adequação para Ambiente Governamental:
Por que essas mudanças são importantes:
-
Profissionalismo
- Governo exige aparência formal
- Credibilidade institucional
- Seriedade no atendimento
-
Representatividade
- Nomes brasileiros comuns
- Diversidade de gênero
- Inclusão equilibrada
-
Neutralidade
- Cores discretas
- Sem expressões exageradas
- Foco no conteúdo, não na decoração
-
Acessibilidade
- Fácil identificação
- Leitura clara
- Sem distrações visuais
Tudo atualizado e funcionando! 🎉
Agora o sistema está adequado para uso em ambiente profissional/governamental!