v0.11.0 more bug fixes
This commit is contained in:
@@ -4,7 +4,7 @@ import { api } from '../utils/api.js';
|
||||
import Avatar from '../components/Avatar.jsx';
|
||||
import UserFooter from '../components/UserFooter.jsx';
|
||||
|
||||
const SIDEBAR_W = 260;
|
||||
const SIDEBAR_W = 320;
|
||||
|
||||
function isValidEmail(e) { return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e); }
|
||||
|
||||
@@ -349,7 +349,7 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
||||
)}
|
||||
|
||||
{/* ── Right panel ── */}
|
||||
<div style={{ flex:1, display:'flex', flexDirection:'column', overflow:'hidden', minWidth:0, background:'var(--background)' }}>
|
||||
<div style={{ flex:1, display:'flex', flexDirection:'column', overflow:'hidden', minWidth:0, background:'var(--background)', height:'100%' }}>
|
||||
|
||||
{/* Mobile tab bar — only on mobile since desktop uses left panel */}
|
||||
{isMobile && (
|
||||
@@ -361,7 +361,7 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
||||
)}
|
||||
|
||||
{/* Content */}
|
||||
<div style={{ flex:1, overflowY:'auto', padding:16, paddingBottom: isMobile ? 80 : 16 }}>
|
||||
<div style={{ flex:1, overflowY:'auto', padding:16 }}>
|
||||
{tab === 'users' && (
|
||||
<>
|
||||
<input className="input" placeholder="Search users…" value={search} onChange={e => setSearch(e.target.value)}
|
||||
@@ -389,11 +389,9 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
||||
{tab === 'bulk' && <BulkImportForm userPass={userPass} onCreated={load} />}
|
||||
</div>
|
||||
|
||||
{/* Mobile footer — hidden when keyboard is open */}
|
||||
{isMobile && !keyboardOpen && (
|
||||
<div style={{ position:'fixed', bottom:0, left:0, right:0, zIndex:20, background:'var(--surface)', borderTop:'1px solid var(--border)' }}>
|
||||
<UserFooter onProfile={onProfile} onHelp={onHelp} onAbout={onAbout} />
|
||||
</div>
|
||||
{/* Mobile footer — in-flow so it stays at bottom and never floats with keyboard */}
|
||||
{isMobile && (
|
||||
<UserFooter onProfile={onProfile} onHelp={onHelp} onAbout={onAbout} />
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user