import type { Folder } from '@nylas-labs/cli-kit/v3' import { Link } from '@tanstack/react-router' import { Archive, FileText, Inbox, type LucideIcon, Pencil, Send, Settings2, Star, Trash2, } from 'lucide-react' import { useState } from 'react' import { cn } from '#shared/lib/utils' import { labelBaseFolderId, labelDotClass, labelToggleFolderId, MAIL_FOLDERS, sidebarFolderCount, } from '../lib/mail-ui-model.js' import { FolderManagerDialog } from './FolderManagerDialog.js' const FOLDER_ICONS: Record = { inbox: Inbox, starred: Star, sent: Send, drafts: FileText, archive: Archive, trash: Trash2, } export function MailSidebar({ folders, composeSearch, currentFolderId, baseFolderId, onNavigate, onFolderDeleted, className, mobile = false, }: { folders: Folder[] composeSearch: { folderId?: string; threadId?: string } currentFolderId?: string baseFolderId?: string onNavigate?: () => void onFolderDeleted?: (folderId: string) => void className?: string mobile?: boolean }) { const labels = folders.filter(isCustomFolder) const [managingFolders, setManagingFolders] = useState(false) return ( ) } function isCustomFolder(folder: Folder): boolean { return !folder.system_folder && !MAIL_FOLDERS.some((standard) => standard.id === folder.id) }