"use client"; import * as React from "react"; import { Logo } from "@/components/logo"; import { NavMain } from "@/components/sidebar/nav-main"; import { NavSecondary } from "@/components/sidebar/nav-secondary"; import { NavUser } from "@/components/sidebar/nav-user"; import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, useSidebar, } from "@/components/ui/sidebar"; import { createSidebarNavData, type PagadorLike } from "./nav-link"; type AppUser = { id: string; name: string; email: string; image: string | null; }; interface AppSidebarProps extends React.ComponentProps { user: AppUser; pagadorAvatarUrl: string | null; pagadores: PagadorLike[]; preLancamentosCount?: number; } export function AppSidebar({ user, pagadorAvatarUrl, pagadores, preLancamentosCount = 0, ...props }: AppSidebarProps) { if (!user) { throw new Error("AppSidebar requires a user but received undefined."); } const navigation = React.useMemo( () => createSidebarNavData({ pagadores, preLancamentosCount }), [pagadores, preLancamentosCount], ); return ( ); } function LogoContent() { const { state } = useSidebar(); const isCollapsed = state === "collapsed"; return ( ); }