Files
caddy-proxy-manager/app/(dashboard)/audit-log/page.tsx

23 lines
776 B
TypeScript

import AuditLogClient from "./AuditLogClient";
import { listAuditEvents } from "@/src/lib/models/audit";
import { listUsers } from "@/src/lib/models/user";
import { requireAdmin } from "@/src/lib/auth";
export default async function AuditLogPage() {
await requireAdmin();
const events = await listAuditEvents(200);
const users = await listUsers();
const userMap = new Map(users.map((user) => [user.id, user]));
return (
<AuditLogClient
events={events.map((event) => ({
id: event.id,
created_at: event.created_at,
summary: event.summary ?? `${event.action} on ${event.entity_type}`,
user: event.user_id ? userMap.get(event.user_id)?.name ?? userMap.get(event.user_id)?.email ?? "System" : "System"
}))}
/>
);
}