import Link from "next/link" import { BookOpen, Sparkles, Flame, Heart, Swords, Building2, Rocket, Crown, Laugh, Search, Shield } from "lucide-react" import { prisma } from "@/lib/prisma" const iconMap: Record = { Sparkles: , Flame: , Heart: , Sword: , Building: , Rocket: , Crown: , Laugh: , Search: , Shield: , } export const dynamic = "force-dynamic" export default async function GenresPage() { let genres: any[] = [] try { genres = await prisma.genre.findMany({ include: { _count: { select: { novels: true } } } }) } catch (error) { console.error("Failed to fetch genres during build/runtime", error) } return (

Thể Loại Truyện

{genres.map((genre) => { const novelCount = genre._count.novels return ( {genre.icon && iconMap[genre.icon] ? iconMap[genre.icon] : }

{genre.name}

{genre.description}

{novelCount} truyện

) })}
) }