"use client"; import { useState } from "react"; import { Button } from "@/components/ui/button"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { MoreVertical, Pencil, Trash2, Folder, FolderOpen, ChevronRight, ChevronDown, Building2, } from "lucide-react"; import { cn } from "@/lib/utils"; import Link from "next/link"; import type { Folder as FolderType, Account } from "@/lib/types"; interface FolderTreeItemProps { folder: FolderType; accounts: Account[]; allFolders: FolderType[]; level: number; onEdit: (folder: FolderType) => void; onDelete: (folderId: string) => void; onEditAccount: (account: Account) => void; formatCurrency: (amount: number) => string; } export function FolderTreeItem({ folder, accounts, allFolders, level, onEdit, onDelete, onEditAccount, formatCurrency, }: FolderTreeItemProps) { const [isExpanded, setIsExpanded] = useState(true); // Pour le dossier "Mes Comptes" (folder-root), inclure aussi les comptes sans dossier const folderAccounts = accounts.filter( (a) => a.folderId === folder.id || (folder.id === "folder-root" && a.folderId === null) ); const childFolders = allFolders.filter((f) => f.parentId === folder.id); const hasChildren = childFolders.length > 0 || folderAccounts.length > 0; const folderTotal = folderAccounts.reduce((sum, a) => sum + a.balance, 0); return (