import Link from "next/link"; import { notFound } from "next/navigation"; import { Button } from "@/components/ui/button"; import AdminPageHeader from "@/components/admin/admin-page-header"; import MelodyForm from "@/components/admin/melody-form"; import { prisma } from "@/lib/db"; import type { MelodyInput } from "@/lib/validations/melody"; export default async function EditMelodyPage({ params }: { params: { id: string } }) { const [melody, categories] = await Promise.all([ prisma.melody.findUnique({ where: { id: params.id } }), prisma.category.findMany({ where: { kind: "MELODY" }, orderBy: [{ order: "asc" }, { nameEn: "asc" }], select: { id: true, nameAr: true, nameEn: true } }), ]); if (!melody) notFound(); const defaultValues: MelodyInput = { slug: melody.slug, titleAr: melody.titleAr, titleEn: melody.titleEn, descAr: melody.descAr ?? "", descEn: melody.descEn ?? "", audioFile: melody.audioFile, coverImage: melody.coverImage ?? "", durationSec: melody.durationSec, isDownloadable: melody.isDownloadable, status: melody.status, isFeatured: melody.isFeatured, sortOrder: melody.sortOrder, categoryId: melody.categoryId, }; return
Back to melodies} />
; }