import type { Metadata } from "next"; import { GeistSans } from "geist/font/sans"; import { GeistMono } from "geist/font/mono"; import "./globals.css"; import "@/lib/fontawesome"; // Configuration Font Awesome import { ThemeProvider } from "@/components/layout/theme-provider"; import { Toaster } from "@/components/ui/sonner"; import { UserProvider } from "@/hooks/use-user-context"; import { NavigationWrapper } from "@/components/layout/navigation-wrapper"; import { AuthService, TeamsService } from "@/services"; export const metadata: Metadata = { title: "PeakSkills - Auto-évaluation de compétences", description: "Plateforme d'auto-évaluation de compétences techniques pour les équipes", }; export default async function RootLayout({ children, }: { children: React.ReactNode; }) { // Récupérer les infos utilisateur côté serveur let userInfo = null; try { const { userUuid, userProfile } = await AuthService.requireAuthenticatedUser(); // Récupérer le nom de l'équipe let teamName = "Équipe non définie"; if (userProfile.teamId) { try { const team = await TeamsService.getTeamById(userProfile.teamId); if (team) { teamName = team.name; } } catch (error) { console.error("Failed to fetch team name:", error); } } userInfo = { firstName: userProfile.firstName, lastName: userProfile.lastName, teamName, teamId: userProfile.teamId, uuid: userUuid, }; } catch (error) { // Utilisateur non authentifié, userInfo reste null console.log("User not authenticated:", error); } return (