import prisma from "@/lib/prisma"; import { notFound } from "next/navigation"; import DockView from "@/components/dockview"; import { ProblemStoreProvider } from "@/providers/problem-store-provider"; import { PlaygroundHeader } from "@/components/features/playground/header"; interface ProblemProps { params: Promise<{ id: string }>; Description: React.ReactNode; Solutions: React.ReactNode; Submissions: React.ReactNode; Code: React.ReactNode; Testcase: React.ReactNode; TestResult: React.ReactNode; Bot: React.ReactNode; } export default async function ProblemLayout({ params, Description, Solutions, Submissions, Code, Testcase, TestResult, Bot, }: ProblemProps) { const { id } = await params; const [problemData, editorLanguageConfigs, languageServerConfigs] = await Promise.all([ prisma.problem.findUnique({ where: { id }, include: { templates: true }, }), prisma.editorLanguageConfig.findMany(), prisma.languageServerConfig.findMany(), ]); if (!problemData) { return notFound(); } const { templates, ...problemWithoutTemplates } = problemData; return (