Replace entire repo content with kottgard-production-v1.1.zip (for shahikitchen-prod repo)

This commit is contained in:
root
2026-06-29 15:04:08 +00:00
parent 6cd5aaa048
commit 57cc67d2d3
850 changed files with 26149 additions and 15588 deletions
-107
View File
@@ -1,107 +0,0 @@
'use client';
import Navbar from '@/components/Navbar';
import Footer from '@/components/Footer';
import PageHeader from '@/components/PageHeader';
import CateringPackageCard from '@/components/CateringPackageCard';
import {
cateringPackages,
CATERING_DISH_CATALOG,
CATERING_CATEGORY_ORDER,
} from '@/lib/catering-data';
import { useLanguage } from '@/lib/language-context';
import { getTranslation } from '@/lib/translations';
import { container } from '@/infrastructure/di/container';
import { Sparkles } from 'lucide-react';
export default function CateringPage() {
const { language } = useLanguage();
const t = getTranslation(language);
const handleSendInquiry = () => {
container.messagingGateway.openWhatsApp(t.catering.inquiryMessage);
};
return (
<div className="min-h-screen bg-[#F8F5F0] text-[#2C2A26]">
<Navbar />
<main>
<PageHeader
eyebrow={t.catering.badge}
title={t.catering.title}
subtitle={t.catering.subtitle}
/>
{/* Packages grid */}
<section className="max-w-7xl mx-auto px-6 pb-16">
<div className="grid grid-cols-1 gap-8 lg:grid-cols-3">
{cateringPackages.map((pkg, index) => (
<CateringPackageCard key={pkg.id} pkg={pkg} index={index} />
))}
</div>
</section>
{/* Full dish catalog reference */}
<section className="border-y border-[#EDE6D9] bg-[#fffdf8] px-6 py-12">
<div className="mx-auto max-w-7xl">
<div className="mb-8">
<div className="mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-[0.2em] text-[#c99a2e]">
<Sparkles className="h-3.5 w-3.5" />
{t.catering.catalogBadge}
</div>
<div className="flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between sm:gap-6">
<div className="min-w-0 flex-1">
<h2 className="text-xl sm:text-[1.35rem] tracking-[-0.4px] text-[#101724]">
{t.catering.catalogTitle}
</h2>
<p className="mt-1.5 max-w-xl text-sm leading-relaxed text-[#6B665F]">
{t.catering.catalogSubtitle}
</p>
</div>
<button
type="button"
onClick={handleSendInquiry}
className="btn-primary inline-flex shrink-0 items-center justify-center self-start rounded-full px-7 py-3 text-sm font-bold tracking-wide sm:self-center"
>
{t.catering.sendInquiry}
</button>
</div>
</div>
<div className="grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-5">
{CATERING_CATEGORY_ORDER.map((category) => {
const dishes = CATERING_DISH_CATALOG.filter((d) => d.category === category);
const categoryLabel =
(t.catering.categories as Record<string, string>)?.[category] ?? category;
return (
<div
key={category}
className="rounded-2xl border border-[#EDE6D9] bg-white p-5 shadow-sm"
>
<h3 className="mb-3 text-xs font-bold uppercase tracking-[0.2em] text-[#8a6a25]">
{categoryLabel}
</h3>
<ul className="space-y-2">
{dishes.map((dish) => (
<li
key={dish.id}
className="text-sm font-medium text-[#101724]"
>
{dish.name}
</li>
))}
</ul>
</div>
);
})}
</div>
</div>
</section>
</main>
<Footer />
</div>
);
}