import { SidebarProvider, SidebarTrigger } from "@/components/ui/sidebar"; import { FormAdminSidebar } from "@/components/form-admin-sidebar"; import { Metadata } from "next"; import { getServerSession } from "next-auth"; import { authOptions } from "@/lib/auth-options"; import { getSessionDiscordId } from "@/lib/auth"; import { getDiscordMemberProfile } from "@/lib/discord"; import { db } from "@/db"; import { notFound } from "next/navigation"; export const metadata: Metadata = { title: { default: "Admin", template: "%s | Erika!", }, } export default async function AdminFormLayout( props: { children: React.ReactNode; params: Promise<{ id: string }>; } ) { const params = await props.params; const [session, form] = await Promise.all([ getServerSession(authOptions), db.query.forms.findFirst({ where: (record, { eq }) => eq(record.id, params.id), }), ]); if (!form) { notFound(); } let profile = null; const discordId = getSessionDiscordId(session); if (discordId) { profile = await getDiscordMemberProfile(discordId); } return (
{props.children}
); }