import type { Metadata } from "next";
import "@fontsource/cairo/600.css";
import "@fontsource/cairo/700.css";
import "@fontsource/cairo/800.css";
import "@fontsource/cairo/900.css";
import "@fontsource/ibm-plex-sans-arabic/300.css";
import "@fontsource/ibm-plex-sans-arabic/400.css";
import "@fontsource/ibm-plex-sans-arabic/500.css";
import "@fontsource/ibm-plex-sans-arabic/600.css";
import "@fontsource/ibm-plex-mono/400.css";
import "@fontsource/ibm-plex-mono/500.css";
import "@fontsource/ibm-plex-mono/600.css";
import "./globals.css";
import { ThemeProvider } from "@/components/theme-provider";
import { LanguageProvider } from "@/lib/i18n/LanguageContext";
import SiteChrome from "@/components/layout/SiteChrome";
import Footer from "@/components/layout/Footer";
import { getLogoUrl, getBranches } from "@/lib/supabase/queries";

export const metadata: Metadata = {
  metadataBase: new URL("https://www.aqfal-alarabia.sa"),
  title: {
    default: "أقفال العربية المحدودة | Al-Arabia Locks — صناعة تبني الثقة",
    template: "%s | أقفال العربية المحدودة",
  },
  description:
    "شركة سعودية رائدة ومتخصصة في تصنيع وتوريد وتركيب وصيانة الأبواب الأوتوماتيكية والحواجز الأمنية في جميع أنحاء المملكة. A leading Saudi manufacturer, supplier, installer, and maintainer of automatic doors and security barriers nationwide.",
  openGraph: {
    title: "أقفال العربية المحدودة | Al-Arabia Locks",
    description:
      "شركة سعودية رائدة ومتخصصة في تصنيع وتوريد وتركيب وصيانة الأبواب الأوتوماتيكية والحواجز الأمنية في جميع أنحاء المملكة.",
    siteName: "أقفال العربية المحدودة | Al-Arabia Locks",
    locale: "ar_SA",
    type: "website",
  },
  twitter: {
    card: "summary_large_image",
    title: "أقفال العربية المحدودة | Al-Arabia Locks",
    description:
      "شركة سعودية رائدة ومتخصصة في تصنيع وتوريد وتركيب وصيانة الأبواب الأوتوماتيكية والحواجز الأمنية في جميع أنحاء المملكة.",
  },
};

export default async function RootLayout({
  children,
}: Readonly<{ children: React.ReactNode }>) {
  const [logoUrl, branches] = await Promise.all([getLogoUrl(), getBranches()]);

  return (
    <html lang="ar" dir="rtl" suppressHydrationWarning>
      <body className="antialiased">
        <LanguageProvider>
          <ThemeProvider>
            <SiteChrome logoUrl={logoUrl} branches={branches} footer={<Footer />}>
              {children}
            </SiteChrome>
          </ThemeProvider>
        </LanguageProvider>
      </body>
    </html>
  );
}
