import type { Metadata } from "next";
import { ContactSection } from "@/components/home/ContactSection";
import { CoverageMap } from "@/components/home/CoverageMap";
import { HeroBackdrop } from "@/components/home/HeroBackdrop";
import { HeroSection } from "@/components/home/HeroSection";
import { PartnerMarquee } from "@/components/home/PartnerMarquee";
import { PageContainer } from "@/components/layout/PageContainer";
import { SiteFooter } from "@/components/layout/SiteFooter";
import { WolfBadge } from "@/components/layout/WolfBadge";
import { env } from "@/config/env";
import { siteConfig } from "@/config/site";

export const metadata: Metadata = {
  title: `${siteConfig.name} | Exclusive Private Travel & Protection Memberships`,
  description: siteConfig.description,
  alternates: {
    canonical: "/",
  },
  openGraph: {
    title: `${siteConfig.name} | Exclusive Private Travel & Protection Memberships`,
    description: siteConfig.description,
    url: "/",
    siteName: siteConfig.name,
    type: "website",
    images: {
      url: "http://dev.saturncube.com:2779/images/brand/logo.svg",
      width: 300,
      height: 300,
    }
  },
  twitter: {
    card: "summary_large_image",
    title: `${siteConfig.name} | Exclusive Private Travel & Protection Memberships`,
    description: siteConfig.description,
  },
};

export default function HomePage() {
  const homeSchema = {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "Organization",
        "@id": `${env.siteUrl}/#organization`,
        name: siteConfig.name,
        url: env.siteUrl,
        logo: `${env.siteUrl}/icon.svg`,
        description: siteConfig.description,
      },
      {
        "@type": "WebSite",
        "@id": `${env.siteUrl}/#website`,
        url: env.siteUrl,
        name: siteConfig.name,
        publisher: {
          "@id": `${env.siteUrl}/#organization`,
        },
      },
    ],
  };

  return (
    <div className="relative w-screen overflow-x-hidden">
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{ __html: JSON.stringify(homeSchema) }}
      />
      <PageContainer>
        <WolfBadge asLink={false} />
        <HeroSection marquee={<PartnerMarquee />} />
        <CoverageMap />
        <ContactSection />
        <SiteFooter />
      </PageContainer>
      <HeroBackdrop />
    </div>
  );
}
