"use client"

import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import HeroBillboardRotatedCarousel from '@/components/sections/hero/HeroBillboardRotatedCarousel';
import InlineImageSplitTextAbout from '@/components/sections/about/InlineImageSplitTextAbout';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import PricingCardFive from '@/components/sections/pricing/PricingCardFive';
import TestimonialCardTwelve from '@/components/sections/testimonial/TestimonialCardTwelve';
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import ContactFaq from '@/components/sections/contact/ContactFaq';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import { Sparkles, Heart, Phone } from "lucide-react";

export default function LandingPage() {
  return (
    <ThemeProvider
      defaultButtonVariant="text-shift"
      defaultTextAnimation="entrance-slide"
      borderRadius="sharp"
      contentWidth="small"
      sizing="largeSmallSizeLargeTitles"
      background="plain"
      cardStyle="gradient-mesh"
      primaryButtonStyle="shadow"
      secondaryButtonStyle="glass"
      headingFontWeight="normal"
    >
      <div id="nav" data-section="nav">
        <NavbarLayoutFloatingInline
          brandName="Annie's"
          navItems={[
            { name: "About", id: "about" },
            { name: "Menu", id: "menu" },
            { name: "Reservations", id: "pricing" },
            { name: "Contact", id: "contact" }
          ]}
          button={{
            text: "Book Now",            href: "#contact"
          }}
        />
      </div>

      <div id="hero" data-section="hero">
        <HeroBillboardRotatedCarousel
          title="Annie's Culinary Artistry"
          description="Experience exceptional Thai cuisine crafted by award-winning chef Annie. A boutique dining destination in Bangkok where tradition meets innovation, offering an unforgettable gastronomic journey."
          tag="Bangkok's Premier Dining"
          tagIcon={Sparkles}
          buttons={[
            { text: "Reserve Your Table", href: "#contact" },
            { text: "Explore Menu", href: "#menu" }
          ]}
          carouselItems={[
            {
              id: "1",              imageSrc: "https://img.b2bpic.net/free-photo/medium-fried-pieces-meat-fried-onions_140725-3560.jpg",              imageAlt: "Signature Thai dish with premium plating"
            },
            {
              id: "2",              imageSrc: "https://img.b2bpic.net/free-photo/fried-vegetarian-balls-served-bowl_1220-7582.jpg",              imageAlt: "Carefully prepared Asian cuisine"
            },
            {
              id: "3",              imageSrc: "https://img.b2bpic.net/free-photo/side-view-fried-meat-with-fried-zucchini-grape-branch-statue-head-round-plate_176474-3089.jpg",              imageAlt: "Elegant restaurant dining ambiance"
            },
            {
              id: "4",              imageSrc: "https://img.b2bpic.net/free-photo/stock-photo-contemporary-food-served-fashionable-plate-restaurant-healthy-veggie-rolls-with-sauces-served-plate_132075-8862.jpg",              imageAlt: "Chef Annie in the kitchen"
            },
            {
              id: "5",              imageSrc: "https://img.b2bpic.net/free-photo/chicken-fillet-pieces-stick-served-with-shoestrings-arugula-sauce_140725-5756.jpg",              imageAlt: "Beautifully set dining table"
            },
            {
              id: "6",              imageSrc: "https://img.b2bpic.net/free-photo/chicken-salad-with-vegetables-potato-chips-plate_140725-9207.jpg",              imageAlt: "Exquisite dessert creation"
            }
          ]}
          autoPlay={true}
          autoPlayInterval={4000}
        />
      </div>

      <div id="about" data-section="about">
        <InlineImageSplitTextAbout
          heading={[
            { type: "text", content: "Chef Annie's Journey:" },
            { type: "text", content: "From passion for authentic Thai flavors to creating Bangkok's most intimate culinary destination." }
          ]}
          buttons={[
            { text: "Learn More", href: "#menu" }
          ]}
          useInvertedBackground="invertDefault"
        />
      </div>

      <div id="menu" data-section="menu">
        <ProductCardTwo
          title="Signature Dishes"
          description="Annie's carefully curated selection of authentic Thai dishes, each prepared with premium ingredients and artisanal technique."
          textboxLayout="default"
          animationType="slide-up"
          useInvertedBackground="noInvert"
          gridVariant="three-columns-all-equal-width"
          products={[
            {
              id: "1",              brand: "Annie's Special",              name: "Pad Thai Royale",              price: "380 THB",              rating: 5,
              reviewCount: "124",              imageSrc: "https://img.b2bpic.net/free-photo/meat-rolls-with-herbs-sauce-glass-wine_140725-3451.jpg",              imageAlt: "Pad Thai with premium ingredients"
            },
            {
              id: "2",              brand: "Chef's Choice",              name: "Green Curry Heaven",              price: "420 THB",              rating: 5,
              reviewCount: "98",              imageSrc: "https://img.b2bpic.net/free-photo/rice-noodles-red-curry-with-meatballs-with-dried-chilies-basil-cucumber-long-beans_1150-27076.jpg",              imageAlt: "Aromatic green curry with jasmine rice"
            },
            {
              id: "3",              brand: "Sweet Finale",              name: "Mango Sticky Rice",              price: "180 THB",              rating: 5,
              reviewCount: "156",              imageSrc: "https://img.b2bpic.net/free-photo/tuna-salad-with-olive-pickled-cucumber-red-bell-pepper-lettuce-corn_140725-8472.jpg",              imageAlt: "Tropical mango sticky rice dessert"
            }
          ]}
        />
      </div>

      <div id="pricing" data-section="pricing">
        <PricingCardFive
          title="Dining Experiences"
          description="Select the perfect experience for your visit to Annie's restaurant. Each option is designed to showcase her culinary excellence."
          textboxLayout="default"
          animationType="slide-up"
          useInvertedBackground="invertDefault"
          plans={[
            {
              id: "intimate",              tag: "Intimate Dinner",              price: "850",              period: "THB per person",              description: "A curated tasting menu featuring 5 signature dishes with wine pairings in our private dining area.",              button: {
                text: "Book Experience",                href: "#contact"
              },
              featuresTitle: "Includes:",              features: [
                "5-course tasting menu",                "Premium wine selection",                "Personalized service",                "Complimentary amuse-bouche"
              ]
            },
            {
              id: "celebration",              tag: "Celebration Menu",              price: "1,200",              period: "THB per person",              description: "Perfect for special occasions. Chef Annie personally prepares a bespoke menu celebrating your moment.",              button: {
                text: "Reserve Celebration",                href: "#contact"
              },
              featuresTitle: "Includes:",              features: [
                "Custom tasting menu",                "Premium wine pairings",                "Private chef interaction",                "Champagne toast",                "Signature dessert creation"
              ]
            }
          ]}
        />
      </div>

      <div id="testimonials" data-section="testimonials">
        <TestimonialCardTwelve
          testimonials={[
            {
              id: "1",              name: "Sarah Johnson",              imageSrc: "https://img.b2bpic.net/free-photo/medium-shot-smiley-woman-kitchen_23-2149631733.jpg",              imageAlt: "Sarah Johnson"
            },
            {
              id: "2",              name: "Michael Chen",              imageSrc: "https://img.b2bpic.net/free-photo/female-chef-kitchen-dressed-apron-uniform_23-2149720712.jpg",              imageAlt: "Michael Chen"
            },
            {
              id: "3",              name: "Emma Davis",              imageSrc: "https://img.b2bpic.net/free-photo/female-chef-kitchen-dressed-apron-uniform_23-2149720714.jpg",              imageAlt: "Emma Davis"
            },
            {
              id: "4",              name: "James Wilson",              imageSrc: "https://img.b2bpic.net/free-photo/medium-shot-smiley-woman-cutting-onion_23-2149631686.jpg",              imageAlt: "James Wilson"
            }
          ]}
          cardTitle="Thousands of diners have experienced Annie's culinary magic and keep coming back"
          cardTag="Trusted by Bangkok's food lovers"
          cardTagIcon={Heart}
          useInvertedBackground="noInvert"
        />
      </div>

      <div id="faq" data-section="faq">
        <FaqSplitMedia
          title="Common Questions"
          description="Everything you need to know about dining at Annie's restaurant."
          textboxLayout="default"
          useInvertedBackground="invertDefault"
          imageSrc="https://img.b2bpic.net/free-photo/life-style_1122-1806.jpg"
          imageAlt="Annie's restaurant elegant interior"
          mediaPosition="left"
          animationType="smooth"
          faqs={[
            {
              id: "1",              title: "How do I make a reservation?",              content: "You can reserve through our website contact form or call us directly. We recommend booking 2-3 weeks in advance, especially for weekend dinners. We accommodate walk-ins based on availability."
            },
            {
              id: "2",              title: "Do you offer private events?",              content: "Yes! Annie's restaurant is available for private celebrations, corporate dinners, and special events. Contact us to discuss your event requirements and we'll create a memorable experience."
            },
            {
              id: "3",              title: "Are dietary restrictions accommodated?",              content: "Absolutely. Please notify us of any dietary requirements when booking. Chef Annie specializes in customizing dishes for vegetarian, vegan, gluten-free, and other dietary needs."
            },
            {
              id: "4",              title: "What is the restaurant dress code?",              content: "We maintain a smart-casual to elegant dress code. Think refined comfort—no beachwear or overly casual attire. We want all guests to feel comfortable and respected."
            }
          ]}
        />
      </div>

      <div id="contact" data-section="contact">
        <ContactFaq
          ctaTitle="Reserve Your Experience"
          ctaDescription="Contact Annie's restaurant to book your table or inquire about private dining experiences."
          ctaButton={{
            text: "Get in Touch",            href: "mailto:info@anniesrestaurant.co.th"
          }}
          ctaIcon={Phone}
          useInvertedBackground="noInvert"
          animationType="slide-up"
          faqs={[
            {
              id: "1",              title: "Location & Hours",              content: "Bangkok, Thailand | Open Tuesday-Sunday, 6:00 PM - 11:00 PM | Closed Mondays"
            },
            {
              id: "2",              title: "Contact Information",              content: "Email: info@anniesrestaurant.co.th | Phone: +66-2-XXXX-XXXX | WhatsApp reservations available"
            },
            {
              id: "3",              title: "Special Requests",              content: "Have special requests or dietary needs? Contact us when booking and Chef Annie will work to accommodate your requirements."
            }
          ]}
        />
      </div>

      <div id="footer" data-section="footer">
        <FooterLogoReveal
          logoText="Annie's"
        />
      </div>
    </ThemeProvider>
  );
}