import { useState } from 'react'; import { NavLink, useNavigate } from 'react-router-dom'; import { Plus, Folder } from 'lucide-react'; import { toast } from 'sonner'; import { Button } from '@/components/ui/button'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { AddProjectModal } from './AddProjectModal'; import { useProjects } from '@/hooks/useProjects'; export function ProjectSidebar() { const { projects, refresh, remove } = useProjects(); const [addOpen, setAddOpen] = useState(false); const navigate = useNavigate(); async function handleRemove(id: string) { try { await remove(id); navigate('/'); } catch (err) { toast.error(err instanceof Error ? err.message : 'failed to remove project'); } } return ( ); }