import type { Metadata } from "next"; import Link from "next/link"; import { ListMusic } from "lucide-react"; import { requireAuth } from "@/lib/auth/guards"; import { subjectHasFeature } from "@/lib/billing/subscription"; import { prisma } from "@/lib/db"; import { PageHeader } from "@/components/app/page-header"; import { UpgradeGate } from "@/components/app/upgrade-gate"; import { SeriesCreateForm } from "@/components/app/series-create-form"; import { Card, CardContent } from "@/components/ui/card"; import { EmptyState } from "@/components/ui/empty-state"; export const metadata: Metadata = { title: "Series" }; export default async function SeriesPage() { const session = await requireAuth(); const allowed = await subjectHasFeature( session.user.id, "series_generator", session.session.activeOrganizationId ); if (!allowed) { return ( <> ); } const series = await prisma.series.findMany({ where: { userId: session.user.id }, orderBy: { createdAt: "desc" }, include: { _count: { select: { episodes: true } } }, }); return ( <>

Your seasons

{series.length > 0 ? (
{series.map((s) => (

{s.title}

{s.plannedCount} planned ยท {s._count.episodes} generated

))}
) : ( )}
); }