/* Santos OS — Login screen */ function Login({ onLogin }) { const T = window.T; const [email, setEmail] = React.useState(''); const [pass, setPass] = React.useState(''); const [showPass, setShowPass] = React.useState(false); const [showHints, setShowHints] = React.useState(false); const [error, setError] = React.useState(''); const submit = () => { const u = window.USERS.find(x => x.email.toLowerCase() === email.trim().toLowerCase()); if (!u || pass !== 'Santos2026!') { setError('Correo o contraseña incorrectos. Verifica tus datos o contacta a RRHH.'); return; } onLogin(u); }; const fill = (u) => { setEmail(u.email); setPass('Santos2026!'); setError(''); setShowHints(false); }; const field = {flex:1, fontFamily:T.font, fontSize:14, color:T.fg1, border:'none', outline:'none', background:'transparent', padding:'12px 0'}; const inputRow = (focus) => ({display:'flex', alignItems:'center', gap:8, background:T.bg, borderRadius:12, border:`1.5px solid ${T.border}`, padding:'0 12px'}); return (
{/* brand header */}
GS
GRUPO SANTOS
Sistema Operativo
MVP v0.1 · Demo
{/* login card */}
Iniciar sesión
Ingresa con tu correo corporativo @gruposantos.hn
Correo corporativo
@{setEmail(e.target.value); setError('');}} placeholder="nombre@gruposantos.hn" />
Contraseña
*{setPass(e.target.value); setError('');}} placeholder="••••••••" onKeyDown={e=>e.key==='Enter'&&submit()} />setShowPass(!showPass)}>{showPass?'○':'⊙'}
{error &&
! {error}
} Iniciar sesión →
¿Problemas de acceso? Contacta a RRHH · david.santos@gruposantos.hn
{/* demo hint */}
{showHints && (
{window.USERS.map((u,i) => (
fill(u)} style={{display:'flex', alignItems:'center', gap:10, padding:'11px 14px', borderBottom:i {u.icon}
{u.name}
{u.email}
{u.label}
))}
Contraseña de demo: Santos2026!
)}
Farmacias Santos · CEDI Santos · Santos Tiendas · Santos Dental
Powered by Claude AI · Odoo · Supabase
); } window.Login = Login;