"use client" import { useCallback, useRef } from "react" import { ChevronsDownUp, ChevronsUpDown, Crosshair, Plus } from "lucide-react" import { useTranslations } from "next-intl" import { useFolderContext } from "@/contexts/folder-context" import { useTabContext } from "@/contexts/tab-context" import { useSidebarContext } from "@/contexts/sidebar-context" import { SidebarConversationList, type SidebarConversationListHandle, } from "@/components/conversations/sidebar-conversation-list" import { Button } from "@/components/ui/button" import { useIsMobile } from "@/hooks/use-mobile" export function Sidebar() { const t = useTranslations("Folder.sidebar") const { folder } = useFolderContext() const { openNewConversationTab } = useTabContext() const { isOpen, toggle } = useSidebarContext() const isMobile = useIsMobile() const listRef = useRef(null) const handleNewConversation = useCallback(() => { if (!folder) return openNewConversationTab(folder.path) }, [folder, openNewConversationTab]) if (!isOpen) return null return ( ) }