import { redirect } from "next/navigation"; import { isUserAuthenticated, getServerUserEvaluation, getServerSkillCategories, getServerTeams, } from "@/lib/server-auth"; import { generateRadarData } from "@/lib/evaluation-utils"; import { WelcomeHeader, RadarSection, CategoryBreakdown, ActionSection, ClientWrapper, WelcomeScreen, } from "@/components/home"; export default async function HomePage() { // Vérifier l'authentification const isAuthenticated = await isUserAuthenticated(); // Si pas de cookie d'authentification, rediriger vers login if (!isAuthenticated) { redirect("/login"); } // Charger les données côté serveur const [userEvaluation, skillCategories, teams] = await Promise.all([ getServerUserEvaluation(), getServerSkillCategories(), getServerTeams(), ]); // Si pas d'évaluation, afficher l'écran d'accueil if (!userEvaluation) { return ; } // Générer les données radar côté serveur const radarData = generateRadarData( userEvaluation.evaluations, skillCategories ); // Tout en server-side, seul le ClientWrapper gère setUserInfo return ( {/* Background Effects */} {/* Header */} {/* Main Content Grid */} {/* Radar Chart */} {/* Category Breakdown */} {/* Action Button */} ); }