42 lines
1.5 KiB
TypeScript
42 lines
1.5 KiB
TypeScript
import React from 'react';
|
|
import Script from 'next/script';
|
|
import Navbar from '../components/Navbar';
|
|
import Footer from '../components/Footer';
|
|
import { UserProvider } from '../components/UserProvider';
|
|
import AnalyticsTracker from '../components/AnalyticsTracker';
|
|
import CookieBanner from '../components/CookieBanner';
|
|
import { Metadata } from 'next';
|
|
import { Toaster } from 'react-hot-toast';
|
|
import { getSiteSettings } from '../lib/settings';
|
|
import './globals.css';
|
|
|
|
export const metadata: Metadata = {
|
|
title: 'Afropreunariat - L\'Annuaire 2.0',
|
|
description: 'Annuaire Afropreunariat',
|
|
};
|
|
|
|
export default async function RootLayout({ children }: { children: React.ReactNode }) {
|
|
const settings = await getSiteSettings();
|
|
|
|
return (
|
|
<html lang="fr">
|
|
<head>
|
|
<link rel="icon" type="image/svg+xml" href="https://cdn-icons-png.flaticon.com/512/1022/1022235.png" />
|
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@600;700&display=swap" rel="stylesheet" />
|
|
</head>
|
|
<body className="bg-gray-50 text-gray-900 antialiased min-h-screen flex flex-col font-sans">
|
|
<UserProvider>
|
|
<Toaster position="top-right" />
|
|
<AnalyticsTracker />
|
|
<Navbar />
|
|
<main className="flex-grow">
|
|
{children}
|
|
</main>
|
|
<Footer settings={settings} />
|
|
<CookieBanner />
|
|
</UserProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|