import { cookies } from 'next/headers' import { getIronSession } from 'iron-session' import { SessionData, sessionOptions } from '@/lib/session' import { prisma } from '@/lib/prisma' import { productAccessFilter } from '@/lib/product-access' import Link from 'next/link' import { ProductList } from '@/components/dashboard/product-list' import { NewProductButton } from '@/components/dashboard/new-product-button' interface Props { searchParams: Promise<{ archived?: string }> } export default async function DashboardPage({ searchParams }: Props) { const session = await getIronSession(await cookies(), sessionOptions) const { archived } = await searchParams const showArchived = archived === '1' const [products, user] = await Promise.all([ prisma.product.findMany({ where: { archived: showArchived, ...productAccessFilter(session.userId) }, orderBy: { created_at: 'desc' }, }), session.userId ? prisma.user.findUnique({ where: { id: session.userId }, select: { active_product_id: true } }) : null, ]) return (

{showArchived ? 'Gearchiveerde producten' : 'Mijn Producten'}

{showArchived ? ( ← Actief ) : ( Toon gearchiveerd )}
{!session.isDemo && !showArchived && }
) }