import { createServerCaller } from "@/trpc/server"; import { getPlatformRole } from "@/server/roles"; import { auth } from "@/server/auth"; import { headers } from "next/headers"; import { Badge } from "@/components/ui/badge"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { PlatformUsers } from "./platform-users"; import { PlatformCodes } from "./platform-codes"; export default async function AdminPage() { const session = await auth.api.getSession({ headers: await headers() }); const role = session ? await getPlatformRole(session.user.id) : null; const caller = await createServerCaller(); const [groups, events, audit] = await Promise.all([ caller.platform.groups(), caller.platform.events(), caller.platform.audit(), ]); const canManageUsers = role === "super_admin" || role === "admin"; return (
Full access for deployment operators.