From 68c38dba8837ae2e65e4827082d8bd943746c655 Mon Sep 17 00:00:00 2001 From: Jonas Francisco Date: Sat, 8 Nov 2025 01:22:29 -0300 Subject: [PATCH] =?UTF-8?q?feat(header):=20mostrar=20foto=20do=20usu=C3=A1?= =?UTF-8?q?rio=20no=20avatar=20do=20topo=20Usa=20profile.foto=5Furl|fotoUr?= =?UTF-8?q?l|avatar=5Furl=20como=20src=20e=20fallback=20com=20iniciais=20g?= =?UTF-8?q?eradas=20a=20partir=20do=20nome/e-mail.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- susconecta/app/(main-routes)/perfil/page.tsx | 2 +- susconecta/app/paciente/page.tsx | 2 +- susconecta/app/profissional/page.tsx | 2 +- .../components/features/dashboard/header.tsx | 27 +++++++++++++++++-- 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/susconecta/app/(main-routes)/perfil/page.tsx b/susconecta/app/(main-routes)/perfil/page.tsx index 0308815..734aa6f 100644 --- a/susconecta/app/(main-routes)/perfil/page.tsx +++ b/susconecta/app/(main-routes)/perfil/page.tsx @@ -296,7 +296,7 @@ export default function PerfilPage() { className="bg-blue-600 hover:bg-blue-700" onClick={handleEditClick} > - ✏️ Editar Perfil + Editar Perfil ) : (
diff --git a/susconecta/app/paciente/page.tsx b/susconecta/app/paciente/page.tsx index aadb86d..a8b4890 100644 --- a/susconecta/app/paciente/page.tsx +++ b/susconecta/app/paciente/page.tsx @@ -1562,7 +1562,7 @@ export default function PacientePage() { className="bg-blue-600 hover:bg-blue-700 w-full sm:w-auto whitespace-nowrap text-xs sm:text-sm" onClick={() => setIsEditingProfile(true)} > - ✏️ Editar Perfil + Editar Perfil ) : (
diff --git a/susconecta/app/profissional/page.tsx b/susconecta/app/profissional/page.tsx index bb715ad..34afd8a 100644 --- a/susconecta/app/profissional/page.tsx +++ b/susconecta/app/profissional/page.tsx @@ -2780,7 +2780,7 @@ const ProfissionalPage = () => { className="bg-blue-600 hover:bg-blue-700 text-xs sm:text-sm w-full sm:w-auto" onClick={() => setIsEditingProfile(true)} > - ✏️ Editar Perfil + Editar Perfil ) : (
diff --git a/susconecta/components/features/dashboard/header.tsx b/susconecta/components/features/dashboard/header.tsx index 5f26a0d..5b78f26 100644 --- a/susconecta/components/features/dashboard/header.tsx +++ b/susconecta/components/features/dashboard/header.tsx @@ -60,9 +60,32 @@ export function PagesHeader({ title = "", subtitle = "" }: { title?: string, sub className="relative h-8 w-8 rounded-full border-2 border-border hover:border-primary" onClick={() => setDropdownOpen(!dropdownOpen)} > + {/* Mostrar foto do usuário quando disponível; senão, mostrar fallback com iniciais */} - - RA + { + (() => { + const userPhoto = (user as any)?.profile?.foto_url || (user as any)?.profile?.fotoUrl || (user as any)?.profile?.avatar_url + const alt = user?.name || user?.email || 'Usuário' + + const getInitials = (name?: string, email?: string) => { + if (name) { + const parts = name.trim().split(/\s+/) + const first = parts[0]?.charAt(0) ?? '' + const second = parts[1]?.charAt(0) ?? '' + return (first + second).toUpperCase() || (email?.charAt(0) ?? 'U').toUpperCase() + } + if (email) return email.charAt(0).toUpperCase() + return 'U' + } + + return ( + <> + + {getInitials(user?.name, user?.email)} + + ) + })() + }