Users name now shows on navbar instead of email

This commit is contained in:
2026-04-15 14:24:12 +01:00
parent 5091228e6d
commit feb44060c4

View File

@@ -5,6 +5,14 @@ import './Navbar.css'
const MOBILE_NAV_BREAKPOINT = 760 const MOBILE_NAV_BREAKPOINT = 760
function formatUserDisplayName(user) {
const fullName = [user?.firstName, user?.lastName]
.filter(part => typeof part === 'string' && part.trim())
.join(' ')
return fullName || user?.email || 'Signed in'
}
function SunIcon() { function SunIcon() {
return ( return (
<svg viewBox="0 0 24 24" aria-hidden="true"> <svg viewBox="0 0 24 24" aria-hidden="true">
@@ -27,6 +35,7 @@ function Navbar({ theme, onToggleTheme }) {
const location = useLocation() const location = useLocation()
const [isMenuOpen, setIsMenuOpen] = useState(false) const [isMenuOpen, setIsMenuOpen] = useState(false)
const nextThemeLabel = theme === 'dark' ? 'Switch to light' : 'Switch to dark' const nextThemeLabel = theme === 'dark' ? 'Switch to light' : 'Switch to dark'
const userDisplayName = formatUserDisplayName(user)
useEffect(() => { useEffect(() => {
setIsMenuOpen(false) setIsMenuOpen(false)
@@ -99,7 +108,7 @@ function Navbar({ theme, onToggleTheme }) {
<MoonIcon /> <MoonIcon />
</span> </span>
</button> </button>
<span className="nav-status__text">{isAuthenticated ? user?.email ?? 'Signed in' : 'Signed out'}</span> <span className="nav-status__text">{isAuthenticated ? userDisplayName : 'Signed out'}</span>
{isAuthenticated && ( {isAuthenticated && (
<button type="button" className="nav-button" onClick={() => { <button type="button" className="nav-button" onClick={() => {
closeMenu() closeMenu()