import { NavMain } from "@/components/app/nav-main";
import { NavSecondary } from "@/components/app/nav-secondary";
import { NavUser } from "@/components/app/nav-user";
import { SiteSwitcher, type SwitcherSite } from "@/components/app/site-switcher";
import {
  Sidebar,
  SidebarContent,
  SidebarFooter,
  SidebarHeader,
  SidebarRail,
} from "@/components/ui/sidebar";

export function AppSidebar({
  user,
  orgName,
  sites,
}: {
  user: { name: string; email: string };
  orgName: string | null;
  sites: SwitcherSite[];
}) {
  return (
    <Sidebar collapsible="icon">
      <SidebarHeader>
        <SiteSwitcher sites={sites} />
      </SidebarHeader>
      <SidebarContent>
        {/* Le premier site sert de repli à l'entrée « Keywords » quand la route courante
            n'en désigne aucun — la section est toujours celle d'un site (§7.1). */}
        <NavMain sites={sites} />
        <NavSecondary />
      </SidebarContent>
      <SidebarFooter>
        <NavUser name={user.name} email={user.email} orgName={orgName} />
      </SidebarFooter>
      <SidebarRail />
    </Sidebar>
  );
}
