import Link from 'next/link' import { requireAdmin } from '@/lib/auth-guard' import { prisma } from '@/lib/prisma' import { Badge } from '@/components/ui/badge' import { Button } from '@/components/ui/button' import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from '@/components/ui/table' import { ProductFormDialog } from '../_components/ProductFormDialog' import { ProductActions } from './_components/ProductActions' export default async function AdminProductsPage() { await requireAdmin() const [products, allUsers] = await Promise.all([ prisma.product.findMany({ include: { user: { select: { username: true } }, _count: { select: { members: true, pbis: true } }, }, orderBy: { created_at: 'desc' }, }), prisma.user.findMany({ select: { id: true, username: true }, orderBy: { username: 'asc' }, }), ]) return (