Revamp Login Page design and update styles.
Simplified the Login Page layout by removing the branding section and introducing a cleaner, more concise format. Adjusted styles for improved spacing, gradients, and overall visual hierarchy. Removed unused styles and animations for optimization.
This commit is contained in:
@@ -26,40 +26,31 @@ export function LoginPage() {
|
||||
|
||||
return (
|
||||
<div className="login-wrap">
|
||||
<div className="login-shell">
|
||||
<section className="login-brand card">
|
||||
<h1>NexaPG Monitor</h1>
|
||||
<p>PostgreSQL Monitoring, Query Insights und Infrastruktur-Overview in einer Ansicht.</p>
|
||||
<div className="login-brand-points">
|
||||
<span>Multi-Target Monitoring</span>
|
||||
<span>Live Database Overview</span>
|
||||
<span>RBAC + Audit Logging</span>
|
||||
</div>
|
||||
</section>
|
||||
<form className="card login-card" onSubmit={submit}>
|
||||
<h2>Login</h2>
|
||||
<div className="input-shell">
|
||||
<input
|
||||
type="email"
|
||||
placeholder="E-Mail"
|
||||
value={email}
|
||||
onChange={(e) => setEmail(e.target.value)}
|
||||
autoComplete="username"
|
||||
/>
|
||||
</div>
|
||||
<div className="input-shell">
|
||||
<input
|
||||
type="password"
|
||||
placeholder="Password"
|
||||
value={password}
|
||||
onChange={(e) => setPassword(e.target.value)}
|
||||
autoComplete="current-password"
|
||||
/>
|
||||
</div>
|
||||
{error && <p className="error">{error}</p>}
|
||||
<button className="login-cta" disabled={loading}>{loading ? "Bitte warten..." : "Einloggen"}</button>
|
||||
</form>
|
||||
</div>
|
||||
<form className="card login-card" onSubmit={submit}>
|
||||
<div className="login-eyebrow">NexaPG Monitor</div>
|
||||
<h2>Willkommen zurück</h2>
|
||||
<p className="login-subtitle">Melde dich an, um Monitoring und Query Insights zu öffnen.</p>
|
||||
<div className="input-shell">
|
||||
<input
|
||||
type="email"
|
||||
placeholder="E-Mail"
|
||||
value={email}
|
||||
onChange={(e) => setEmail(e.target.value)}
|
||||
autoComplete="username"
|
||||
/>
|
||||
</div>
|
||||
<div className="input-shell">
|
||||
<input
|
||||
type="password"
|
||||
placeholder="Password"
|
||||
value={password}
|
||||
onChange={(e) => setPassword(e.target.value)}
|
||||
autoComplete="current-password"
|
||||
/>
|
||||
</div>
|
||||
{error && <p className="error">{error}</p>}
|
||||
<button className="login-cta" disabled={loading}>{loading ? "Bitte warten..." : "Einloggen"}</button>
|
||||
</form>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user