"use client"; import { Fragment, useEffect, useState } from "react"; import Image from "next/image"; import { usePathname } from "next/navigation"; import { SidebarNavItem } from "@/types"; import { Menu, PanelLeftClose, PanelRightClose } from "lucide-react"; import { useTranslations } from "next-intl"; import { Link } from "next-view-transitions"; import pkg from "package.json"; import { siteConfig } from "@/config/site"; import { cn } from "@/lib/utils"; import { useMediaQuery } from "@/hooks/use-media-query"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { ScrollArea } from "@/components/ui/scroll-area"; import { Sheet, SheetContent, SheetTrigger } from "@/components/ui/sheet"; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from "@/components/ui/tooltip"; import { Icons } from "@/components/shared/icons"; interface DashboardSidebarProps { links: SidebarNavItem[]; } export function DashboardSidebar({ links }: DashboardSidebarProps) { const t = useTranslations("System"); const path = usePathname(); const { isTablet } = useMediaQuery(); const [isSidebarExpanded, setIsSidebarExpanded] = useState(!isTablet); const toggleSidebar = () => { setIsSidebarExpanded(!isSidebarExpanded); }; useEffect(() => { setIsSidebarExpanded(!isTablet); }, [isTablet]); return (
); } export function MobileSheetSidebar({ links }: DashboardSidebarProps) { const path = usePathname(); const [open, setOpen] = useState(false); const { isSm, isMobile } = useMediaQuery(); const t = useTranslations("System"); if (isSm || isMobile) { return (
); } return (
); }