'use client'; import { useState, useEffect } from 'react'; interface UserInfo { username?: string; did?: string; } export function UserMenu() { const [user, setUser] = useState(null); const [loading, setLoading] = useState(true); useEffect(() => { fetch('/api/me') .then((r) => r.json()) .then((data) => { if (data.authenticated && data.user) { setUser(data.user); } }) .catch(() => {}) .finally(() => setLoading(false)); }, []); if (loading) { return (
); } if (!user) { return ( Sign In ); } const displayName = user.username || (user.did ? `${user.did.slice(0, 12)}...` : 'User'); return (
{(user.username || 'U')[0].toUpperCase()}
{displayName}
); }