import type { JSX } from "react" import Link from "next/link" import { notFound } from "next/navigation" import { getTranslations } from "next-intl/server" import { getHomeworkSubmissionDetails } from "@/modules/homework/data-access" import { HomeworkGradingView } from "@/modules/homework/components/homework-grading-view" import { Button } from "@/shared/components/ui/button" import { ScanLine } from "lucide-react" import { formatDate } from "@/shared/lib/utils" import { AiClientProvider } from "@/modules/ai/context/ai-client-provider" import { createCoreAiClientService } from "@/modules/ai/context/create-ai-client-service" import { requirePermission } from "@/shared/lib/auth-guard" import { Permissions } from "@/shared/types/permissions" export const dynamic = "force-dynamic" export default async function HomeworkSubmissionGradingPage({ params }: { params: Promise<{ submissionId: string }> }): Promise { const { submissionId } = await params await requirePermission(Permissions.HOMEWORK_GRADE) const t = await getTranslations("examHomework") const submission = await getHomeworkSubmissionDetails(submissionId) if (!submission) return notFound() const aiClientService = createCoreAiClientService() return (

{submission.assignmentTitle}

{t("homework.grade.student")}: {submission.studentName} {t("homework.grade.submitted")}: {submission.submittedAt ? formatDate(submission.submittedAt) : "-"} {t("homework.grade.status")}: {submission.status}
) }