TypeScript 50.6%
JavaScript 46.1%
SQL 2.1%
Shell 0.6%
CSS 0.5%
1import { requireUser, listSessions } from "@/lib/auth/session";2import { SecurityView } from "./security-view";3export const dynamic = "force-dynamic";4export default async function Securite() {5 const u = await requireUser(); const sessions = await listSessions(u.id);6 return <SecurityView email={u.email} isAdmin={u.roles.includes("ADMIN") || u.roles.includes("MODERATOR")} sessions={sessions.map((s) => ({ ...s, issuedAt: s.issuedAt.toISOString(), lastSeenAt: s.lastSeenAt.toISOString(), expiresAt: s.expiresAt.toISOString(), current: s.id === u.sessionId }))} />;7}8