"use client" import { MoreVertical, RotateCcw, Trash2 } from "lucide-react" import { Button } from "@/components/ui/button" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" import { useContactsStore } from "@/lib/contacts/contacts-store" import { useDeleteContact } from "@/lib/api/hooks/use-contact-mutations" import { fullContactDisplayName } from "@/lib/contacts/types" import { ContactAvatar } from "@/components/gmail/contacts/contact-avatar" import { CONTACTS_MENU_SURFACE_CLASS, CONTACTS_HEADING_TEXT, CONTACTS_MUTED_TEXT, CONTACTS_PAGE_BANNER_CLASS, CONTACTS_PAGE_LINK_BTN_CLASS, CONTACTS_PAGE_TITLE_CLASS, CONTACTS_TABLE_HEADER_CLASS, CONTACTS_TABLE_ROW_CLASS, CONTACTS_ICON_BTN_CLASS, } from "@/lib/contacts-chrome-classes" import { cn } from "@/lib/utils" export function TrashView() { const { deletedContacts, restoreContact, emptyTrash } = useContactsStore() const deleteContactMutation = useDeleteContact() function formatDate(ts: number): string { return new Date(ts).toLocaleDateString("fr-FR", { day: "numeric", month: "short", }) } return (
{deletedContacts.length > 0 && (

Les contacts qui sont dans la corbeille depuis plus de 30 jours seront supprimés définitivement

)}

Corbeille ({deletedContacts.length})

{deletedContacts.length === 0 && (

La corbeille est vide

)} {deletedContacts.length > 0 && ( <>
Nom Raison du placement dans la corbeille Date de suppression
{deletedContacts.map((entry) => { const { contact, deletedAt, reason } = entry const displayName = fullContactDisplayName(contact) const name = displayName || contact.emails[0]?.value || "?" return (
{name} {reason} {formatDate(deletedAt)} restoreContact(contact.id)}> Restaurer deleteContactMutation.mutate({ path: contact.id })} className="text-red-600 focus:text-red-600" > Supprimer définitivement
) })} )}
) }