v0.9.66 minor bug fixes
This commit is contained in:
@@ -11,7 +11,7 @@ function useTheme() {
|
||||
return [dark, setDark];
|
||||
}
|
||||
|
||||
export default function UserFooter({ onProfile, onHelp, onAbout }) {
|
||||
export default function UserFooter({ onProfile, onHelp, onAbout, mobileCompact=false }) {
|
||||
const { user, logout } = useAuth();
|
||||
const [showMenu, setShowMenu] = useState(false);
|
||||
const [dark, setDark] = useTheme();
|
||||
@@ -32,6 +32,26 @@ export default function UserFooter({ onProfile, onHelp, onAbout }) {
|
||||
|
||||
const handleLogout = async () => { await logout(); };
|
||||
|
||||
if (mobileCompact) return (
|
||||
<div style={{ position:'relative' }}>
|
||||
<button ref={btnRef} onClick={() => setShowMenu(!showMenu)} style={{ background:'none',border:'none',cursor:'pointer',padding:2,display:'flex',alignItems:'center' }}>
|
||||
<Avatar user={user} size="sm" />
|
||||
</button>
|
||||
{showMenu && (
|
||||
<div ref={menuRef} style={{ position:'absolute',right:0,top:'calc(100% + 4px)',background:'var(--surface)',border:'1px solid var(--border)',borderRadius:'var(--radius)',boxShadow:'0 4px 16px rgba(0,0,0,0.15)',minWidth:180,zIndex:200 }}>
|
||||
<div style={{ padding:'10px 14px',borderBottom:'1px solid var(--border)',fontSize:13,fontWeight:600 }}>{user?.display_name||user?.name}</div>
|
||||
{[['Profile',()=>{setShowMenu(false);onProfile?.();}],['Help',()=>{setShowMenu(false);onHelp?.();}],['About',()=>{setShowMenu(false);onAbout?.();}]].map(([label,action])=>(
|
||||
<button key={label} onClick={action} style={{ display:'block',width:'100%',padding:'11px 14px',textAlign:'left',fontSize:14,background:'none',border:'none',cursor:'pointer',color:'var(--text-primary)' }}
|
||||
onMouseEnter={e=>e.currentTarget.style.background='var(--background)'} onMouseLeave={e=>e.currentTarget.style.background=''}>{label}</button>
|
||||
))}
|
||||
<div style={{ borderTop:'1px solid var(--border)' }}>
|
||||
<button onClick={handleLogout} style={{ display:'block',width:'100%',padding:'11px 14px',textAlign:'left',fontSize:14,background:'none',border:'none',cursor:'pointer',color:'var(--error)' }}>Sign out</button>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
|
||||
return (
|
||||
<div className="sidebar-footer">
|
||||
<div style={{ display: 'flex', alignItems: 'center', gap: 4 }}>
|
||||
|
||||
Reference in New Issue
Block a user