"use client";

import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import HeroBillboardRotatedCarousel from '@/components/sections/hero/HeroBillboardRotatedCarousel';
import MetricSplitMediaAbout from '@/components/sections/about/MetricSplitMediaAbout';
import FeatureCardThree from '@/components/sections/feature/featureCardThree/FeatureCardThree';
import ProductCardFour from '@/components/sections/product/ProductCardFour';
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
import FaqBase from '@/components/sections/faq/FaqBase';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";

const ASSET_MAP = [
  {"id":"hero-burger-poutine","url":"http://img.b2bpic.net/free-photo/view-raclette-dish-with-delicious-food-assortment_23-2149514169.jpg","alt":"delicious burger poutine combo restaurant"},
  {"id":"hero-pancakes-syrup","url":"http://img.b2bpic.net/free-photo/delicious-waffles-with-strawberries-close-up_23-2148517048.jpg","alt":"fluffy pancakes maple syrup berries breakfast"},
  {"id":"hero-corndog-drinks","url":"http://img.b2bpic.net/free-photo/top-view-delicious-corn-dog_23-2149387986.jpg","alt":"corndog and milkshake street food combo"},
  {"id":"hero-cozy-interior","url":"http://img.b2bpic.net/free-photo/boy-having-coffee-restaurant_23-2148172665.jpg","alt":"cozy restaurant interior warm lighting"},
  {"id":"hero-happy-friends","url":"http://img.b2bpic.net/free-photo/couple-having-snack-table-outdoors_23-2148150029.jpg","alt":"friends laughing restaurant eating"},
  {"id":"hero-cider-coffee","url":"http://img.b2bpic.net/free-photo/fruit-juice-with-kiwi-apple-mason-mug_140725-10534.jpg","alt":"craft cider glass coffee mug"},
  {"id":"about-staff-smiling","url":"http://img.b2bpic.net/free-photo/waitress-serving-cup-coffee-customers_1170-653.jpg","alt":"friendly restaurant staff smiling serving"},
  {"id":"feature-burger-closeup","url":"http://img.b2bpic.net/free-photo/creative-arrangement-with-hamburger_23-2148614114.jpg","alt":"juicy gourmet burger close-up delicious"},
  {"id":"feature-poutine-bowl","url":"http://img.b2bpic.net/free-photo/chicken-nuggets-served-with-french-fries-sauces_140725-5759.jpg","alt":"classic poutine fries cheese curds gravy"},
  {"id":"feature-large-portion","url":"http://img.b2bpic.net/free-photo/front-view-meat-burger-with-french-fries-ketchup-mayonnaise-stand_141793-12200.jpg","alt":"large food portion sharing platter"},
  {"id":"feature-drinks-variety","url":"http://img.b2bpic.net/free-photo/front-view-alcoholic-beverage-cocktails_23-2148722494.jpg","alt":"variety of refreshing drinks colorful"},
  {"id":"product-burger-classic","url":"http://img.b2bpic.net/free-photo/burger-with-beef-steak-salad-inside-served-with-jar-mojito_114579-2310.jpg","alt":"classic beef burger cheese lettuce"},
  {"id":"product-poutine-traditional","url":"http://img.b2bpic.net/free-photo/delicious-creamy-melted-cheese_23-2149332820.jpg","alt":"traditional poutine with rich gravy"},
  {"id":"product-corndog-crispy","url":"http://img.b2bpic.net/free-photo/top-view-delicious-corn-dog_23-2149387980.jpg","alt":"crispy corndog with mustard ketchup"},
  {"id":"product-pancakes-berries","url":"http://img.b2bpic.net/free-photo/chocolate-cake-with-fruit-peach-black-currant-blueberry-apple_1232-3016.jpg","alt":"pancakes with fresh berries whipped cream"},
  {"id":"product-milkshake-chocolate","url":"http://img.b2bpic.net/free-photo/glass-milk-with-straw-chocolate-cookies-wooden-piece-high-quality-photo_114579-68967.jpg","alt":"chocolate milkshake with cream toppings"},
  {"id":"product-cider-apple","url":"http://img.b2bpic.net/free-photo/detox-water-with-apples-autumn-composition-with-leaves-apples_501050-808.jpg","alt":"apple cider in a glass refreshing"},
  {"id":"testimonial-avatar-1","url":"http://img.b2bpic.net/free-photo/close-up-young-handsome-modern-man-wearing-glasses-denim-jacket-yellow-background-with-happy-face-standing-smiling-with-confident-smile-showing-teeth_839833-30354.jpg","alt":"happy young woman portrait smiling"},
  {"id":"testimonial-avatar-2","url":"http://img.b2bpic.net/free-photo/portrait-young-handsome-hipster-man-with-beard-smiling-laughing_176420-12167.jpg","alt":"happy young man portrait smiling"},
  {"id":"testimonial-avatar-3","url":"http://img.b2bpic.net/free-photo/3d-cartoon-style-character_23-2151034128.jpg","alt":"smiling person portrait professional"},
  {"id":"testimonial-avatar-4","url":"http://img.b2bpic.net/free-photo/bearded-man-brown-suit-wearing-glasses-looking-camera-happy-cheerful-smiling-broadly-showing-v-sign-standing-green-background_141793-110709.jpg","alt":"smiling older man portrait happy"},
  {"id":"testimonial-avatar-5","url":"http://img.b2bpic.net/free-photo/outdoor-portrait-cheerful-young-woman-vintage-white-shirt-yellow-glasses-carrying-elegant-silver-backpack-pretty-curly-blonde-girl-cute-jewelry-spending-time-outside-walking-by-cafe_197531-25208.jpg","alt":"young woman with glasses smiling"},
  {"id":"testimonial-avatar-6","url":"http://img.b2bpic.net/free-photo/young-man-wearing-blue-outfit-with-arms-crossed_1298-429.jpg","alt":"young man with beard smiling"},
  {"id":"contact-map-location","url":"http://img.b2bpic.net/free-photo/close-up-hand-holding-sign-with-mock-up_23-2148315785.jpg","alt":"map of Ivano-Frankivsk city center"}
];

function resolveAsset(assetId) {
  const asset = ASSET_MAP.find(a => a.id === assetId);
  if (asset) {
    return { url: asset.url, alt: asset.alt || assetId };
  }
  // Fallback: If asset ID not found in ASSET_MAP, provide a generic URL and alt.
  return { url: "/placeholder-image.jpg", alt: assetId };
}

export default function LandingPage() {
  return (
    <ThemeProvider
      defaultButtonVariant="shift-hover"
      defaultTextAnimation="entrance-slide"
      borderRadius="rounded"
      contentWidth="compact"
      sizing="largeSizeMediumTitles"
      background="none"
      cardStyle="gradient-radial"
      primaryButtonStyle="flat"
      secondaryButtonStyle="solid"
      headingFontWeight="semibold"
    >
      <div id="nav" data-section="nav">
        <NavbarLayoutFloatingOverlay
          brandName="Canadian Food"
          navItems={[
            { name: "Головна", id: "#home" },
            { name: "Меню", id: "#menu" },
            { name: "Про нас", id: "#about" },
            { name: "Відгуки", id: "#reviews" },
            { name: "Контакти", id: "#contact" }
          ]}
        />
      </div>
      <div id="home" data-section="home">
        <HeroBillboardRotatedCarousel
          title="Смак Канади в серці Івано-Франківська!"
          description="Справжні бургери, легендарний путін та затишок, що зігріває душу. Завітай і відчуй атмосферу, де кожна деталь нагадує про Канаду!"
          background={{ variant: "plain" }}
          buttons={[
            { text: "Переглянути Меню", href: "#menu" },
            { text: "Замовити Доставку", href: "#contact" }
          ]}
          carouselItems={[
            { id: "1", imageSrc: resolveAsset("hero-burger-poutine").url, imageAlt: resolveAsset("hero-burger-poutine").alt },
            { id: "2", imageSrc: resolveAsset("hero-pancakes-syrup").url, imageAlt: resolveAsset("hero-pancakes-syrup").alt },
            { id: "3", imageSrc: resolveAsset("hero-corndog-drinks").url, imageAlt: resolveAsset("hero-corndog-drinks").alt },
            { id: "4", imageSrc: resolveAsset("hero-cozy-interior").url, imageAlt: resolveAsset("hero-cozy-interior").alt },
            { id: "5", imageSrc: resolveAsset("hero-happy-friends").url, imageAlt: resolveAsset("hero-happy-friends").alt },
            { id: "6", imageSrc: resolveAsset("hero-cider-coffee").url, imageAlt: resolveAsset("hero-cider-coffee").alt }
          ]}
        />
      </div>
      <div id="about" data-section="about">
        <MetricSplitMediaAbout
          title="Наша Канадська Історія в Івано-Франківську"
          description="У Canadian Food ми поєднуємо автентичні канадські рецепти з українською гостинністю. Насолоджуйтесь ситними бургерами, класичним путіном та улюбленими корндогами в атмосфері, де кожна деталь нагадує про Канаду. Наш привітний персонал завжди радий бачити вас і зробить ваш візит незабутнім!"
          metrics={[
            { value: "5+", title: "Років Досвіду" },
            { value: "100%", title: "Задоволених Гостей" },
            { value: "Івано-Франківськ", title: "В самому центрі" }
          ]}
          useInvertedBackground={false}
          imageSrc={resolveAsset("about-staff-smiling").url}
          imageAlt={resolveAsset("about-staff-smiling").alt}
          mediaAnimation="slide-up"
        />
      </div>
      <div id="features" data-section="features">
        <FeatureCardThree
          title="Чому Canadian Food — це любов?"
          description="Відкрийте для себе, що робить нас особливими: великі порції, доступні ціни та неповторний смак, який змусить вас повертатися знову і знову!"
          features={[
            { title: "Смачні Бургери", description: "Соковиті котлети, свіжі овочі та авторські соуси – кожен бургер це шедевр, що тане в роті.", imageSrc: resolveAsset("feature-burger-closeup").url, imageAlt: resolveAsset("feature-burger-closeup").alt },
            { title: "Канадські Хіти", description: "Скуштуйте легендарний путін, хрусткі корндоги та ніжні панкейки, що перенесуть вас до Канади.", imageSrc: resolveAsset("feature-poutine-bowl").url, imageAlt: resolveAsset("feature-poutine-bowl").alt },
            { title: "Великі Порції та Доступні Ціни", description: "У нас ви отримаєте максимум смаку за розумні гроші. Ніхто не залишиться голодним!", imageSrc: resolveAsset("feature-large-portion").url, imageAlt: resolveAsset("feature-large-portion").alt },
            { title: "Класні Напої", description: "Освіжаючий сидр, ароматна кава, домашні лимонади та солодкі мілкшейки – ідеальне доповнення до вашого замовлення.", imageSrc: resolveAsset("feature-drinks-variety").url, imageAlt: resolveAsset("feature-drinks-variety").alt }
          ]}
          gridVariant="three-columns-all-equal-width"
          animationType="slide-up"
          textboxLayout="default"
          useInvertedBackground={false}
        />
      </div>
      <div id="menu" data-section="menu">
        <ProductCardFour
          title="Наше Меню: Смаколики з Канади!"
          description="Від соковитих бургерів до легендарного путіна та солодких панкейків – кожен знайде щось для себе. А ще сидр, кава та мілкшейки для повного щастя!"
          products={[
            { id: "p1", name: "Класичний Канадський Бургер", price: "220 грн", variant: "Бургер", imageSrc: resolveAsset("product-burger-classic").url, imageAlt: resolveAsset("product-burger-classic").alt },
            { id: "p2", name: "Легендарний Путін", price: "180 грн", variant: "Канадська кухня", imageSrc: resolveAsset("product-poutine-traditional").url, imageAlt: resolveAsset("product-poutine-traditional").alt },
            { id: "p3", name: "Хрусткий Корндог", price: "100 грн", variant: "Канадська кухня", imageSrc: resolveAsset("product-corndog-crispy").url, imageAlt: resolveAsset("product-corndog-crispy").alt },
            { id: "p4", name: "Ніжні Панкейки з кленовим сиропом", price: "160 грн", variant: "Десерт", imageSrc: resolveAsset("product-pancakes-berries").url, imageAlt: resolveAsset("product-pancakes-berries").alt },
            { id: "p5", name: "Молочний Коктейль 'Карамель'", price: "90 грн", variant: "Напої", imageSrc: resolveAsset("product-milkshake-chocolate").url, imageAlt: resolveAsset("product-milkshake-chocolate").alt },
            { id: "p6", name: "Яблучний Сидр 'Світлий'", price: "80 грн", variant: "Напої", imageSrc: resolveAsset("product-cider-apple").url, imageAlt: resolveAsset("product-cider-apple").alt }
          ]}
          gridVariant="three-columns-all-equal-width"
          animationType="slide-up"
          textboxLayout="default"
          useInvertedBackground={false}
        />
      </div>
      <div id="reviews" data-section="reviews">
        <TestimonialCardSixteen
          title="Що говорять наші гості?"
          description="Ми пишаємось тим, що створюємо незабутні враження завдяки нашій кухні, атмосфері та сервісу. Ваші посмішки – наша найкраща нагорода!"
          testimonials={[
            { id: "t1", name: "Анна М.", role: "Туристка", company: "Львів", rating: 5, imageSrc: resolveAsset("testimonial-avatar-1").url, imageAlt: resolveAsset("testimonial-avatar-1").alt },
            { id: "t2", name: "Олег П.", role: "Студент", company: "ІФНТУНГ", rating: 5, imageSrc: resolveAsset("testimonial-avatar-2").url, imageAlt: resolveAsset("testimonial-avatar-2").alt },
            { id: "t3", name: "Софія В.", role: "Подруга", company: "Івано-Франківськ", rating: 5, imageSrc: resolveAsset("testimonial-avatar-3").url, imageAlt: resolveAsset("testimonial-avatar-3").alt },
            { id: "t4", name: "Денис К.", role: "IT-фахівець", company: "Франківськ", rating: 5, imageSrc: resolveAsset("testimonial-avatar-4").url, imageAlt: resolveAsset("testimonial-avatar-4").alt },
            { id: "t5", name: "Юлія Г.", role: "Вчителька", company: "Івано-Франківськ", rating: 5, imageSrc: resolveAsset("testimonial-avatar-5").url, imageAlt: resolveAsset("testimonial-avatar-5").alt },
            { id: "t6", name: "Михайло С.", role: "Мандрівник", company: "Київ", rating: 5, imageSrc: resolveAsset("testimonial-avatar-6").url, imageAlt: resolveAsset("testimonial-avatar-6").alt }
          ]}
          kpiItems={[
            { value: "5/5", label: "Середня Оцінка" },
            { value: "1000+", label: "Задоволених Відгуків" },
            { value: "❤️", label: "Улюблене Місце" }
          ]}
          animationType="slide-up"
          textboxLayout="default"
          useInvertedBackground={false}
        />
      </div>
      <div id="faq" data-section="faq">
        <FaqBase
          title="Часті Запитання"
          description="Швидкі відповіді на ваші запитання про Canadian Food, щоб ви могли спланувати свій ідеальний візит."
          faqs={[
            { id: "q1", title: "Де знаходиться Canadian Food?", content: "Ми розташовані в самому центрі Івано-Франківська, що робить нас ідеальним місцем для швидкого перекусу або повноцінного обіду/вечері після прогулянки містом." },
            { id: "q2", title: "Чи підходить заклад для великих компаній або пар?", content: "Так! Наша затишна атмосфера та привітний персонал створюють ідеальні умови як для дружніх посиденьок, так і для романтичних зустрічей або сімейного відпочинку." },
            { id: "q3", title: "Чи є у вас доставка?", content: "Так, ми пропонуємо зручну доставку наших страв прямо до вас додому або в офіс. Всі деталі можна дізнатись в розділі 'Контакти'." },
            { id: "q4", title: "Які напої ви пропонуєте?", content: "У нас широкий вибір: від освіжаючого сидру та домашніх лимонадів до якісної кави та улюблених молочних коктейлів. Знайдеться напій до будь-якої страви!" }
          ]}
          faqsAnimation="slide-up"
          textboxLayout="default"
          useInvertedBackground={false}
        />
      </div>
      <div id="contact" data-section="contact">
        <ContactSplitForm
          title="Завітайте до нас або Замовте доставку!"
          description="Ми знаходимось у самому серці Івано-Франківська. Заходьте на смачні канадські страви, або скористайтесь доставкою, щоб насолодитись вдома! Ми цінуємо кожного гостя і завжди раді дивувати."
          inputs={[
            { name: "name", type: "text", placeholder: "Ваше ім'я", required: true },
            { name: "email", type: "email", placeholder: "Ваш E-mail", required: true },
            { name: "phone", type: "tel", placeholder: "Ваш номер телефону" }
          ]}
          textarea={{ name: "message", placeholder: "Ваше повідомлення або побажання", rows: 4 }}
          useInvertedBackground={false}
          imageSrc={resolveAsset("contact-map-location").url}
          imageAlt={resolveAsset("contact-map-location").alt}
          mediaAnimation="none"
          mediaPosition="right"
          buttonText="Відправити"
        />
      </div>
      <div id="footer" data-section="footer">
        <FooterBaseCard
          logoText="Canadian Food"
          columns={[
            { title: "Меню", items: [{ label: "Бургери", href: "#menu" }, { label: "Путін", href: "#menu" }, { label: "Панкейки", href: "#menu" }, { label: "Напої", href: "#menu" }] },
            { title: "Про нас", items: [{ label: "Наша історія", href: "#about" }, { label: "Відгуки", href: "#reviews" }, { label: "Контакти", href: "#contact" }] },
            { title: "Знайти нас", items: [{ label: "Адреса: Івано-Франківськ, вул. Незалежності, 10", href: "https://maps.app.goo.gl/YourExactAddress" }, { label: "Графік: Пн-Нд 10:00-22:00", href: "#" }, { label: "Телефон: +380 97 123 45 67", href: "tel:+380971234567" }] }
          ]}
          copyrightText="© 2024 Canadian Food. Всі права захищені."
        />
      </div>
    </ThemeProvider>
  );
}
