// fichaje.eu — Screen: Perfil const ScreenPerfil = () => { const [tab, setTab] = React.useState('personal'); return (
{ME.name.split(' ').map(p => p[0]).join('')}
Fichado · 04:43 hoy #IAB-008
{ME.name}
{ME.role} · {ME.team}
{ME.email} {ME.location} Desde mar 2024 · 1a 2m Reporta a {ME.manager}
{tab === 'personal' && (
}>Editar}/>
} title="Contraseña" detail="Cambiada hace 3 meses" action="Cambiar"/> } title="2FA" detail="Authenticator app" badge={Activo}/> } title="Sesiones activas" detail="3 dispositivos"/>
} title="Idioma" detail="Español"/> } title="Zona horaria" detail="Europe/Madrid"/> } title="Modo oscuro" badge={}/>
)} {tab === 'laboral' && (
{ME.manager}
CTO
} style={{ flex: 1 }}>Email } style={{ flex: 1 }}>Reunión
)} {tab === 'compensacion' && (
)} {tab === 'docs' && ( }>Subir documento}/>
Tus documentos: contratos, nóminas, certificados, etc. Visibles en la sección Mis documentos.
)} {tab === 'familia' && (
)}
); }; const Row = ({ icon, title, detail, action, badge }) => (
{icon}
{title}
{detail &&
{detail}
}
{badge} {action && }
); const Toggle = ({ defaultOn = false }) => { const [on, setOn] = React.useState(defaultOn); return ( ); }; Object.assign(window, { ScreenPerfil, Row, Toggle });