import * as React from 'react';
import './styles.css';
import { AppShell } from '@/components/AppShell';
import { AuthProvider } from '@/components/AuthProvider';
import { getCurrentUser } from '@/lib/auth';
import { getUserFavorites, getNotifications, getUnreadNotifCount } from '@/lib/queries';

export const metadata = {
  title: 'Darsouk — La plateforme des commerces locaux en Algérie',
  description:
    'Découvrez, réservez et profitez des meilleures adresses en Algérie : restaurants, hôtels, cafés, beauté, spa, et plus.',
};

export default async function RootLayout({ children }: { children: React.ReactNode }) {
  const user = await getCurrentUser();
  const favorites = user ? getUserFavorites(user.id) : [];
  const notifications = user ? getNotifications(user.id) : [];
  const notifUnread = user ? getUnreadNotifCount(user.id) : 0;
  return (
    <html lang="fr">
      <head>
        <link rel="preconnect" href="https://fonts.googleapis.com" />
        <link rel="preconnect" href="https://fonts.gstatic.com" crossOrigin="" />
        <link
          href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,500;12..96,600;12..96,700;12..96,800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap"
          rel="stylesheet"
        />
      </head>
      <body>
        <AuthProvider user={user} favorites={favorites} notifications={notifications} notifUnread={notifUnread}>
          <AppShell>{children}</AppShell>
        </AuthProvider>
      </body>
    </html>
  );
}
