import { useMemo } from "react"; import { usePathname, useRouter } from "next/navigation"; import { SidebarMenu, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, } from "ui/sidebar"; import { Tooltip } from "ui/tooltip"; import { SidebarMenuItem } from "ui/sidebar"; import { SidebarMenuButton } from "ui/sidebar"; import { Shield, Users } from "lucide-react"; import Link from "next/link"; import { useTranslations } from "next-intl"; const AppSidebarAdmin = () => { const router = useRouter(); const pathname = usePathname(); const t = useTranslations("Admin"); const shouldExpandAdmin = useMemo(() => { return pathname.startsWith("/admin"); }, [pathname]); const adminNavItems = useMemo( () => [ { id: "users", title: t("Users.title"), url: "/admin", icon: Users, isActive: pathname.startsWith("/admin/users"), }, ], [t, pathname], ); return ( {t("title")} {shouldExpandAdmin && ( {adminNavItems.map((item) => ( { router.push(item.url); }} isActive={item.isActive} > {item.title} ))} )} ); }; export { AppSidebarAdmin };