import React, { useEffect, useState } from 'react';
import type { ReactElement } from 'react';
import Head from 'next/head';
import Link from 'next/link';
import { useAppSelector } from '../stores/hooks';
import LayoutGuest from '../layouts/Guest';
import WebSiteHeader from '../components/WebPageComponents/Header';
import WebSiteFooter from '../components/WebPageComponents/Footer';
import {
  HeroDesigns,
  FeaturesDesigns,
  TestimonialsDesigns,
  PricingDesigns,
  AboutUsDesigns,
} from '../components/WebPageComponents/designs';

import HeroSection from '../components/WebPageComponents/HeroComponent';

import FeaturesSection from '../components/WebPageComponents/FeaturesComponent';

import TestimonialsSection from '../components/WebPageComponents/TestimonialsComponent';

import PricingSection from '../components/WebPageComponents/PricingComponent';

import AboutUsSection from '../components/WebPageComponents/AboutUsComponent';

export default function WebSite() {
  const cardsStyle = useAppSelector((state) => state.style.cardsStyle);
  const bgColor = useAppSelector((state) => state.style.bgLayoutColor);
  const projectName = 'astro';

  useEffect(() => {
    const darkElement = document.querySelector('body .dark');
    if (darkElement) {
      darkElement.classList.remove('dark');
    }
  }, []);
  const pages = [
    {
      href: '/home',
      label: 'home',
    },

    {
      href: '/blog',
      label: 'blog',
    },

    {
      href: '/faq',
      label: 'FAQ',
    },

    {
      href: '/pricing',
      label: 'pricing',
    },

    {
      href: '/contact',
      label: 'contact',
    },
  ];

  const features_points = [
    {
      name: 'Personalized Kundli Generation',
      description:
        'Enter your birth details to generate a detailed and personalized Kundli. Understand your astrological chart with ease.',
      icon: 'mdiAccountCircle',
    },
    {
      name: 'Gemstone Recommendations',
      description:
        'Receive tailored gemstone suggestions based on your Kundli. Enhance your life with the right astrological stones.',
      icon: 'mdiGemstone',
    },
    {
      name: 'Secure PDF Downloads',
      description:
        'Download your comprehensive Kundli report in a secure PDF format. Keep your astrological insights at your fingertips.',
      icon: 'mdiFileDownload',
    },
  ];

  const testimonials = [
    {
      text: 'Using ${projectName} has transformed my understanding of astrology. The insights are incredibly accurate and helpful.',
      company: 'AstroTech Solutions',
      user_name: 'Jane Doe, CEO',
    },
    {
      text: "I was amazed by the detailed Kundli report I received. It's like having a personal astrologer at my fingertips!",
      company: 'Starry Skies Inc.',
      user_name: 'John Smith, Marketing Director',
    },
    {
      text: "The gemstone recommendations were spot on. I've noticed a positive change in my life since using them.",
      company: 'Cosmic Creations',
      user_name: 'Emily Johnson, Product Manager',
    },
    {
      text: 'I love how easy it is to generate my Kundli with ${projectName}. The interface is user-friendly and intuitive.',
      company: 'Zodiac Ventures',
      user_name: 'Michael Brown, UX Designer',
    },
    {
      text: 'The customer support is fantastic. They helped me understand my Kundli and provided valuable insights.',
      company: 'Astro Innovations',
      user_name: 'Sarah Lee, Customer Success Manager',
    },
    {
      text: 'I highly recommend ${projectName} to anyone interested in astrology. The accuracy and detail are unmatched.',
      company: 'Celestial Enterprises',
      user_name: 'David Wilson, Astrologer',
    },
  ];

  const pricing_features = {
    standard: {
      features: [
        'Personalized Kundli Generation',
        'Basic Gemstone Recommendations',
      ],
      limited_features: ['Limited PDF Downloads', 'Email Support'],
    },
    premium: {
      features: [
        'Advanced Kundli Analysis',
        'Comprehensive Gemstone Recommendations',
      ],
      also_included: [
        'Priority Email Support',
        'Monthly Astrological Insights',
      ],
    },
    business: {
      features: [
        'Full Kundli Suite Access',
        'Custom Gemstone Solutions',
        'Dedicated Account Manager',
      ],
    },
  };

  const description = {
    standard:
      'Ideal for individuals seeking personalized astrological insights and basic gemstone recommendations.',
    premium:
      'Perfect for small businesses or startups looking for advanced astrological analysis and comprehensive support.',
    business:
      'Designed for enterprises requiring full access to astrological tools, custom solutions, and dedicated support.',
  };

  return (
    <div className='flex flex-col min-h-screen'>
      <Head>
        <title>{`Kundli.com - Your Personalized Digital Astrology Platform`}</title>
        <meta
          name='description'
          content={`Discover your personalized digital Kundli with Kundli.com. Generate detailed horoscopes, explore astrological insights, and find gemstone recommendations tailored to your birth details.`}
        />
      </Head>
      <WebSiteHeader projectName={'astro'} pages={pages} />
      <main className={`flex-grow  ${bgColor}    rounded-none  `}>
        <HeroSection
          projectName={'astro'}
          image={['Astrological chart and stars']}
          mainText={`Unlock Your Future with ${projectName}`}
          subTitle={`Experience the power of personalized astrology with ${projectName}. Generate your detailed digital Kundli and explore insights tailored to your birth details. Discover the path to your destiny today.`}
          design={HeroDesigns.IMAGE_BG || ''}
          buttonText={`Get Your Kundli`}
        />

        <FeaturesSection
          projectName={'astro'}
          image={['Astrology tools and symbols']}
          withBg={0}
          features={features_points}
          mainText={`Explore ${projectName} Features`}
          subTitle={`Discover the powerful features of ${projectName} that make astrology accessible and insightful for everyone.`}
          design={FeaturesDesigns.CARDS_GRID_WITH_ICONS || ''}
        />

        <TestimonialsSection
          projectName={'astro'}
          design={TestimonialsDesigns.HORIZONTAL_CAROUSEL || ''}
          testimonials={testimonials}
          mainText={`What Our Users Say About ${projectName} `}
        />

        <PricingSection
          projectName={'astro'}
          withBg={1}
          features={pricing_features}
          description={description}
        />

        <AboutUsSection
          projectName={'astro'}
          image={['Astrologer with celestial chart']}
          mainText={`Discover the Magic of ${projectName}`}
          subTitle={`At ${projectName}, we blend ancient wisdom with modern technology to provide personalized astrological insights. Our mission is to empower individuals with knowledge and guidance for a brighter future.`}
          design={AboutUsDesigns.IMAGE_RIGHT || ''}
          buttonText={`Learn More About Us`}
        />
      </main>
      <WebSiteFooter projectName={'astro'} pages={pages} />
    </div>
  );
}

WebSite.getLayout = function getLayout(page: ReactElement) {
  return <LayoutGuest>{page}</LayoutGuest>;
};
