'use client'; import { dishImageUrl } from '@/lib/assets'; import type { CateringPackage } from '@/lib/catering-data'; import { CATERING_CATEGORY_ORDER, groupDishesByCategory, } from '@/lib/catering-data'; import { useLanguage } from '@/lib/language-context'; import { getTranslation } from '@/lib/translations'; import { Users, UtensilsCrossed } from 'lucide-react'; import { motion } from 'framer-motion'; interface CateringPackageCardProps { pkg: CateringPackage; index?: number; } export default function CateringPackageCard({ pkg, index = 0 }: CateringPackageCardProps) { const { language } = useLanguage(); const t = getTranslation(language); const grouped = groupDishesByCategory(pkg.includedDishes); const packageName = (t.catering.packages as Record)?.[pkg.id] ?? pkg.name; const packageDescription = (t.catering.packageDescriptions as Record)?.[pkg.id] ?? pkg.description; return ( {pkg.image && (
{packageName}
{pkg.highlight && ( {t.catering.mostPopular} )}
)}

{packageName}

{packageDescription}

{pkg.pricePerHead} {t.catering.perHead} ยท {pkg.currency}
{t.catering.includedDishes}
{CATERING_CATEGORY_ORDER.map((category) => { const dishes = grouped[category]; if (dishes.length === 0) return null; const categoryLabel = (t.catering.categories as Record)?.[category] ?? category; return (

{categoryLabel}

    {dishes.map((dish) => (
  • {dish.name}
  • ))}
); })}
{t.catering.guestNote}
); }