From 3c904997faddda85737f7ca5c5c432f4352788b0 Mon Sep 17 00:00:00 2001 From: Christopher Date: Thu, 22 Jan 2026 12:23:15 -0800 Subject: [PATCH] UI Refinments Auth Improvments --- src/app/login/page.tsx | 29 +++++++++++++++++++++----- src/app/settings/migration/page.tsx | 32 ++++++++++++++++++++++------- src/app/settings/page.tsx | 2 +- 3 files changed, 50 insertions(+), 13 deletions(-) diff --git a/src/app/login/page.tsx b/src/app/login/page.tsx index f2cd3ff..ce6ce30 100644 --- a/src/app/login/page.tsx +++ b/src/app/login/page.tsx @@ -10,6 +10,7 @@ export default function LoginPage() { const [mode, setMode] = useState<'login' | 'register'>('login'); const [email, setEmail] = useState(''); const [password, setPassword] = useState(''); + const [confirmPassword, setConfirmPassword] = useState(''); const [handle, setHandle] = useState(''); const [displayName, setDisplayName] = useState(''); const [error, setError] = useState(''); @@ -18,6 +19,12 @@ export default function LoginPage() { const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(''); + + if (mode === 'register' && password !== confirmPassword) { + setError('Passwords do not match'); + return; + } + setLoading(true); try { @@ -198,13 +205,25 @@ export default function LoginPage() { required minLength={8} /> - {mode === 'register' && ( -

- Minimum 8 characters -

- )} + {mode === 'register' && ( +
+ + setConfirmPassword(e.target.value)} + placeholder="••••••••" + required + minLength={8} + /> +
+ )} +