"use client"; import { motion, useScroll, useTransform, AnimatePresence } from "framer-motion"; import { useRef, useState } from "react"; import type { DemoData } from "@/data/demos"; import AnimatedCounter from "@/components/ui/AnimatedCounter"; const easeOutExpo = [0.16, 1, 0.3, 1] as [number, number, number, number]; const fadeUp = { hidden: { opacity: 0, y: 40 }, show: { opacity: 1, y: 0, transition: { duration: 0.7, ease: easeOutExpo } }, }; const stagger = { hidden: {}, show: { transition: { staggerChildren: 0.1 } }, }; export default function RestoranTemplate2({ data }: { data: DemoData }) { const { firma, istatistikler, hizmetler, menu = [], yorumlar = [] } = data; const heroRef = useRef(null); const { scrollYProgress } = useScroll({ target: heroRef, offset: ["start start", "end start"] }); const heroY = useTransform(scrollYProgress, [0, 1], ["0%", "20%"]); const heroOpacity = useTransform(scrollYProgress, [0, 0.8], [1, 0]); const [aktifKategori, setAktifKategori] = useState(0); const [showBookingModal, setShowBookingModal] = useState(false); // SVG Render Helper for clean vector icons (No Emojis) const getIconSvg = (name: string) => { switch (name) { case "alacarte": return ( ); case "special": return ( ); case "catering": return ( ); case "delivery": return ( ); default: return ( ); } }; return (
{/* ── HEADER ── */}
🍋 {firma.adi}
setShowBookingModal(true)} className="text-[11px] font-sans-clean font-black tracking-[2px] uppercase text-white bg-[#0038A8] hover:bg-[#002266] px-6 py-3 rounded-xl transition-all cursor-pointer shadow-md shadow-[#0038A8]/20" whileHover={{ scale: 1.03 }} whileTap={{ scale: 0.98 }} > Book Table
{/* ── HERO SECTION ── */}
{/* Left Content */} {firma.slogan} Linen, Lemons
& Wood-fired
Karaköy limanında, Sicilya rüzgarları esiyor. El yapımı makarnalar, taze baharatlar ve odun ateşinde karamelize olan lezzetler. Discover Menu
{/* ── SECTION 2: OUR STORY ── */}
Sicilian Baking Heritage Our Story Odun ateşinin alevi ve zeytin ağacı közlerinin aroması. Sicilia Tavola, nesiller boyu aktarılan İtalyan tariflerini zanaatkar ellerle buluşturuyor. Her pizza taş fırınımızda 485 derecede saniyeler içinde mükemmelleşiyor. {/* Grid Metrics */} {istatistikler.map((s, i) => (
{s.deger}
{s.etiket}
))}
{/* ── SECTION 3: PASTA & PIZZA MENU ── */}
our fresh selections

Pasta & Pizza

{menu[aktifKategori]?.urunler.map((item) => (
{item.ad}
{item.fiyat}

{item.aciklama}

))}
{/* Category Tab Buttons */}
{menu.map((kat, idx) => ( ))}
{/* ── SECTION 5: SERVICES ── */}
Our Offerings

Hizmetlerimiz

{hizmetler.map((h, i) => (
{getIconSvg(h.ikon)}

{h.baslik}

{h.aciklama}

))}
{/* ── SECTION 6: TESTIMONIALS ── */}
guest stories

Misafir Yorumları

{yorumlar.map((y, i) => (
{[...Array(y.puan)].map((_, j) => ( ))}

“{y.yorum}”

{y.emoji}

{y.yazar}

{y.tarih}
))}
{/* ── SECTION 7: RESERVATION ── */}
Tavola Reservation

Masa Rezervasyonu

Karaköy Trattoria'mızda unutulmaz bir akşam yemeği için yerinizi ayırtın.

{[ { label: "Ad Soyad", placeholder: "Adınız Soyadınız", type: "text", full: false }, { label: "Telefon", placeholder: "05xx xxx xx xx", type: "tel", full: false }, { label: "Tarih", placeholder: "", type: "date", full: false }, { label: "Saat", placeholder: "", type: "time", full: false }, { label: "Kişi Sayısı", placeholder: "2", type: "number", full: false }, { label: "Özel Notlar", placeholder: "Diyet sınırlandırmaları veya özel kutlamalar...", type: "text", full: true }, ].map((field, i) => (
))}
Masa Ayırt
{/* ── FOOTER ── */}

© 2026 {firma.adi}. Tüm hakları saklıdır.

Gizlilik Politikası · Çerez Ayarları

{/* ── FAST BOOKING OVERLAY MODAL ── */} {showBookingModal && (

Hızlı Rezervasyon

Karaköy Trattoria Hattı

setShowBookingModal(false)} > Bilgileri Gönder
)}
); }