fix: remove MFA card from tenant settings, constrain card widths
All checks were successful
CI / build (push) Successful in 2m10s
CI / docker (push) Successful in 1m25s

MFA enrollment now happens during sign-in. Tenant settings page reduced
to: Tenant Details + Auth Policy side-by-side (max 520px each), Passkeys
full-width below.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-27 22:45:31 +02:00
parent 7fc8a4d407
commit 7fe9c581b0

View File

@@ -15,7 +15,6 @@ import {
useResetServerAdminPassword, useResetServerAdminPassword,
useTenantAuthSettings, useUpdateTenantAuthSettings, useTenantAuthSettings, useUpdateTenantAuthSettings,
} from '../../api/tenant-hooks'; } from '../../api/tenant-hooks';
import { MfaSection } from '../../components/account/MfaSection';
import { PasskeySection } from '../../components/account/PasskeySection'; import { PasskeySection } from '../../components/account/PasskeySection';
import { useScopes } from '../../auth/useScopes'; import { useScopes } from '../../auth/useScopes';
import styles from '../../styles/platform.module.css'; import styles from '../../styles/platform.module.css';
@@ -140,7 +139,9 @@ export function SettingsPage() {
<div style={{ padding: 24, display: 'flex', flexDirection: 'column', gap: 20, overflowY: 'auto', flex: 1 }}> <div style={{ padding: 24, display: 'flex', flexDirection: 'column', gap: 20, overflowY: 'auto', flex: 1 }}>
<h1 style={{ margin: 0, fontSize: '1.25rem', fontWeight: 600 }}>Settings</h1> <h1 style={{ margin: 0, fontSize: '1.25rem', fontWeight: 600 }}>Settings</h1>
<div style={{ display: 'flex', flexWrap: 'wrap', gap: 20 }}>
{/* Card 1: Tenant Details */} {/* Card 1: Tenant Details */}
<div style={{ maxWidth: 520, flex: '1 1 400px' }}>
<Card title="Tenant Details"> <Card title="Tenant Details">
<div className={styles.dividerList}> <div className={styles.dividerList}>
<div className={styles.kvRow}> <div className={styles.kvRow}>
@@ -205,20 +206,16 @@ export function SettingsPage() {
</form> </form>
</div> </div>
</Card> </Card>
{/* Card 2: Multi-Factor Authentication (MFA + Passkeys combined) */}
<Card title="Multi-Factor Authentication">
<MfaSection bare />
<div style={{ borderTop: '1px solid var(--border)', marginTop: 16, paddingTop: 16 }}>
<h3 style={{ margin: '0 0 8px', fontSize: '0.875rem', fontWeight: 600, textTransform: 'uppercase', letterSpacing: '0.05em', color: 'var(--text-muted)' }}>
Passkeys
</h3>
<PasskeySection bare />
</div> </div>
</Card>
{/* Card 3: Authentication Policy (org-wide settings) */} {/* Card 2: Authentication Policy (org-wide settings) */}
<div style={{ maxWidth: 520, flex: '1 1 400px' }}>
<AuthPolicySection /> <AuthPolicySection />
</div> </div>
</div>
{/* Card 3: Passkeys (full width) */}
<PasskeySection />
</div>
); );
} }