import type { Metadata } from "next";
import { Archivo, JetBrains_Mono } from "next/font/google";
import { NextIntlClientProvider } from 'next-intl';
import { getMessages, setRequestLocale } from 'next-intl/server';
import { notFound } from 'next/navigation';
import { routing } from '@/i18n/routing';
import CookieBanner from '@/components/cookie-banner';
import "../globals.css";

const archivo = Archivo({
  subsets: ["latin"],
  variable: "--font-archivo",
  display: "swap",
});

const jetbrainsMono = JetBrains_Mono({
  subsets: ["latin"],
  variable: "--font-jetbrains-mono",
  display: "swap",
});

export const metadata: Metadata = {
  metadataBase: new URL("https://ayrislegal.com"),
  title: {
    default: "AyrisLegal — Avukatlar İçin Yapay Zekâ Destekli Hukuk Çalışma Alanı",
    template: "%s | AyrisLegal",
  },
  description:
    "AyrisLegal; dava dosyası analizi, tanık ve bilirkişi çelişkisi tespiti, 18M+ emsal içtihat taraması, duruşma simülasyonu ve doğrudan UYAP uyumlu UDF dilekçe üretim platformudur.",
  keywords: [
    "avukat programı",
    "hukuki yapay zeka",
    "çelişki avcısı",
    "emsal içtihat arama",
    "udf dilekçe hazırlama",
    "uyap eklentisi",
    "hukuk bürosu otomasyonu",
    "tensip zaptı analizi",
    "yargıtay emsal kararlar",
    "hukuk çalışma alanı",
    "AyrisLegal"
  ],
  authors: [{ name: "Ayris Tech", url: "https://ayris.tech" }],
  creator: "Ayris Tech",
  publisher: "Ayris Tech",
  alternates: {
    canonical: "https://ayrislegal.com/tr",
    languages: {
      "tr-TR": "https://ayrislegal.com/tr",
      "en-US": "https://ayrislegal.com/en",
    },
  },
  openGraph: {
    type: "website",
    locale: "tr_TR",
    url: "https://ayrislegal.com",
    siteName: "AyrisLegal",
    title: "AyrisLegal — Avukatlar İçin Yapay Zekâ Destekli Hukuk Çalışma Alanı",
    description:
      "Pasif araştırma değil, aktif düşünce ortağı. Dava analizi, çelişki tespiti, 18M+ içtihat ve UDF dilekçe motoru.",
    images: [
      {
        url: "/og-image.jpg",
        width: 1200,
        height: 630,
        alt: "AyrisLegal Hukuk Çalışma Alanı",
      },
    ],
  },
  twitter: {
    card: "summary_large_image",
    title: "AyrisLegal — Avukatlar İçin Yapay Zekâ Destekli Hukuk Çalışma Alanı",
    description:
      "Dava analizi, çelişki tespiti, 18M+ içtihat ve UDF dilekçe motoru tek ekranda.",
    images: ["/og-image.jpg"],
  },
  robots: {
    index: true,
    follow: true,
    googleBot: {
      index: true,
      follow: true,
      "max-video-preview": -1,
      "max-image-preview": "large",
      "max-snippet": -1,
    },
  },
};

export function generateStaticParams() {
  return routing.locales.map((locale) => ({ locale }));
}

export default async function RootLayout({
  children,
  params
}: Readonly<{
  children: React.ReactNode;
  params: Promise<{ locale: string }>;
}>) {
  const { locale } = await params;

  if (!routing.locales.includes(locale as any)) {
    notFound();
  }

  setRequestLocale(locale);
  const messages = await getMessages();

  // Schema.org JSON-LD Yapılandırılmış Verileri
  const softwareSchema = {
    "@context": "https://schema.org",
    "@type": "SoftwareApplication",
    "name": "AyrisLegal",
    "operatingSystem": "Windows, macOS, Linux, iOS, Android",
    "applicationCategory": "BusinessApplication",
    "applicationSubCategory": "Legal Practice Management Software",
    "description": "Türk avukatları için yapay zekâ destekli dava analizi, 18M+ emsal içtihat arama ve UYAP UDF dilekçe üretim platformu.",
    "offers": {
      "@type": "Offer",
      "price": "30000",
      "priceCurrency": "TRY",
      "priceValidUntil": "2027-12-31",
      "availability": "https://schema.org/InStock",
    },
    "publisher": {
      "@type": "Organization",
      "name": "Ayris Tech",
      "url": "https://ayris.tech",
      "logo": "https://ayrislegal.com/logo.png",
    },
  };

  const organizationSchema = {
    "@context": "https://schema.org",
    "@type": "Organization",
    "name": "AyrisLegal",
    "url": "https://ayrislegal.com",
    "logo": "https://ayrislegal.com/logo.png",
    "sameAs": [
      "https://ayris.tech"
    ],
    "contactPoint": {
      "@type": "ContactPoint",
      "contactType": "Customer Support",
      "email": "info@ayris.tech",
      "availableLanguage": ["Turkish", "English"]
    }
  };

  const faqSchema = {
    "@context": "https://schema.org",
    "@type": "FAQPage",
    "mainEntity": [
      {
        "@type": "Question",
        "name": "Müvekkil dosyalarım nerede saklanıyor, kim görebilir?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Belgeleriniz cihazınızda yerel şifreli depolamada tutulur. Yedeklemeler merkezi sunucularımıza değil, büronuzun kendi Google Drive hesabına şifreli olarak aktarılır. Başka bir avukat veya üçüncü tarafla kesinlikle paylaşılmaz ve kamuya açık modellerin eğitiminde kullanılmaz."
        }
      },
      {
        "@type": "Question",
        "name": "UYAP şifremi veya e-imzamı AyrisLegal ile paylaşmam gerekiyor mu?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Hayır. UYAP Tarayıcı Eklentisi sisteminizde zaten açık olan güvenli oturumunuzu kullanır; kimlik, e-imza veya şifre bilgileriniz hiçbir zaman AyrisLegal sunucularına iletilmez."
        }
      },
      {
        "@type": "Question",
        "name": "Yapay zekâ yanlış bir çıkarım yaparsa sorumluluk kimde?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "AyrisLegal bir karar organı değildir; analitik bir düşünce ortağıdır. Ürettiği tüm emsal kararlar gerçek mahkeme esas ve karar numaralarıyla sunulur ve doğrulanabilir bağlantılar içerir. Nihai hukuki değerlendirme ve imza sorumluluğu daima avukata aittir."
        }
      },
      {
        "@type": "Question",
        "name": "Dilekçeleri doğrudan UYAP Doküman Editörü (.udf) formatında indirebilir miyim?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Evet. AyrisLegal bünyesindeki yerel UDF motoru, editörde yazılan dilekçeleri tek tıkla resmi Adalet Bakanlığı UYAP formatına (.udf), Word (.docx) veya PDF formatına dönüştürür."
        }
      },
      {
        "@type": "Question",
        "name": "İnternet bağlantısı olmadığında çevrimdışı çalışabilir miyim?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Evet. Önceden taranmış dava dosyaları, yerel arşivi ve 26.900+ kanun maddesi internetsiz ortamda bile anında görüntülenebilir ve aranabilir."
        }
      },
      {
        "@type": "Question",
        "name": "Büromdaki diğer avukatlarla aynı anda ortak dava havuzunu kullanabilir miyim?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Evet. Hukuk Bürosu planı kapsamında büro içi çoklu avukat ve stajyer lisansı, ortak emsal havuzu ve paylaşımlı dava çalışma alanı sunulmaktadır."
        }
      }
    ]
  };

  return (
    <html
      lang={locale}
      className={`${archivo.variable} ${jetbrainsMono.variable} h-full antialiased`}
    >
      <head>
        {/* Google tag (gtag.js) */}
        <script
          async
          src="https://www.googletagmanager.com/gtag/js?id=G-PR2EYXFLB3"
        />
        <script
          dangerouslySetInnerHTML={{
            __html: `
              window.dataLayer = window.dataLayer || [];
              function gtag(){dataLayer.push(arguments);}
              gtag('js', new Date());
              gtag('config', 'G-PR2EYXFLB3');
            `,
          }}
        />

        {/* VPS Panel Analytics */}
        <script
          defer
          src="https://panel.ayris.tech/api/analytics/script"
          data-domain="ayrislegal.com"
        />
        <script
          defer
          src="https://panel.ayris.tech/api/analytics/script"
          data-domain="ayris.legal"
        />
        <script
          type="application/ld+json"
          dangerouslySetInnerHTML={{ __html: JSON.stringify(softwareSchema) }}
        />
        <script
          type="application/ld+json"
          dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationSchema) }}
        />
        <script
          type="application/ld+json"
          dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
        />
      </head>
      <body className="min-h-full flex flex-col font-sans" suppressHydrationWarning>
        <NextIntlClientProvider messages={messages}>
          {children}
          <CookieBanner />
        </NextIntlClientProvider>
      </body>
    </html>
  );
}
