|
|
|
@@ -458,7 +458,7 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
|
|
|
|
autoComplete="new-password" autoCorrect="off" spellCheck={false}
|
|
|
|
|
style={{ width:'100%', maxWidth: isMobile ? '100%' : 400 }} />
|
|
|
|
|
</div>
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:'0 16px', paddingBottom: isMobile ? 72 : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:'0 16px', paddingBottom: isMobile ? 'calc(82px + env(safe-area-inset-bottom, 0px))' : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<div style={{ background:'var(--surface)', borderRadius:'var(--radius)', boxShadow:'var(--shadow-sm)', overflow:'hidden' }}>
|
|
|
|
|
{loading ? (
|
|
|
|
|
<div style={{ padding:48, textAlign:'center' }}><div className="spinner" /></div>
|
|
|
|
@@ -481,7 +481,7 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
|
|
|
|
|
|
|
|
|
{/* CREATE / EDIT FORM */}
|
|
|
|
|
{isFormView && (
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:16, paddingBottom: isMobile ? 72 : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:16, paddingBottom: isMobile ? 'calc(82px + env(safe-area-inset-bottom, 0px))' : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<UserForm
|
|
|
|
|
user={view === 'edit' ? editUser : null}
|
|
|
|
|
userPass={userPass}
|
|
|
|
@@ -496,7 +496,7 @@ export default function UserManagerPage({ isMobile = false, onProfile, onHelp, o
|
|
|
|
|
|
|
|
|
|
{/* BULK IMPORT */}
|
|
|
|
|
{view === 'bulk' && (
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:16, paddingBottom: isMobile ? 72 : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<div style={{ flex:1, overflowY:'auto', padding:16, paddingBottom: isMobile ? 'calc(82px + env(safe-area-inset-bottom, 0px))' : 16, overscrollBehavior:'contain' }}>
|
|
|
|
|
<BulkImportForm userPass={userPass} onCreated={load} />
|
|
|
|
|
</div>
|
|
|
|
|
)}
|
|
|
|
|