import { prisma } from "@/lib/prisma"; import { getServerSession } from "next-auth/next"; import { authOptions } from "@/lib/auth-config"; import { redirect, notFound } from "next/navigation"; import { Card, CardHeader, CardTitle, CardContent } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import Link from "next/link"; import DeleteUserButton from "./DeleteUserButton"; export const dynamic = "force-dynamic"; export default async function UserDetailPage({ params }: { params: Promise<{ id: string }> }) { const { id } = await params; const session = await getServerSession(authOptions); if (!session?.user) redirect("/login"); const isSuperadmin = session.user.role === "superadmin"; if (!isSuperadmin && session.user.role !== "admin") redirect("/dashboard"); const user = await prisma.user.findUnique({ where: { id }, include: { establishment: true }, }); if (!user) notFound(); if (!isSuperadmin && user.establishmentId !== session.user.establishmentId) { redirect("/dashboard/users"); } return (