"use client"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardHeader } from "@/components/ui/card"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { RiCheckLine, RiDeleteBinLine, RiEyeLine, RiMoreLine, RiSmartphoneLine, } from "@remixicon/react"; import { formatDistanceToNow } from "date-fns"; import { ptBR } from "date-fns/locale"; import type { InboxItem } from "./types"; interface InboxCardProps { item: InboxItem; onProcess: (item: InboxItem) => void; onDiscard: (item: InboxItem) => void; onViewDetails: (item: InboxItem) => void; } export function InboxCard({ item, onProcess, onDiscard, onViewDetails, }: InboxCardProps) { const formattedAmount = item.parsedAmount ? new Intl.NumberFormat("pt-BR", { style: "currency", currency: "BRL", }).format(parseFloat(item.parsedAmount)) : null; const timeAgo = formatDistanceToNow(new Date(item.notificationTimestamp), { addSuffix: true, locale: ptBR, }); return (
{item.sourceAppName || item.sourceApp}
{formattedAmount && ( {formattedAmount} )} onViewDetails(item)}> Ver detalhes onProcess(item)}> Processar onDiscard(item)} className="text-destructive" > Descartar
{item.originalTitle && (

{item.originalTitle}

)}

{item.originalText}

{timeAgo}
); }