Neah/components/email/BulkActionsToolbar.tsx
2025-04-30 16:20:20 +02:00

84 lines
2.4 KiB
TypeScript

'use client';
import React from 'react';
import { Trash2, Archive, EyeOff } from 'lucide-react';
import { Button } from '@/components/ui/button';
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from "@/components/ui/tooltip";
interface BulkActionsToolbarProps {
selectedCount: number;
onBulkAction: (action: 'delete' | 'mark-read' | 'mark-unread' | 'archive') => void;
}
export default function BulkActionsToolbar({
selectedCount,
onBulkAction
}: BulkActionsToolbarProps) {
return (
<div className="bg-white border-b border-gray-100 px-4 py-1.5 flex items-center justify-between">
<span className="text-xs text-gray-600">
{selectedCount} selected
</span>
<div className="flex items-center gap-1">
<TooltipProvider>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant="ghost"
size="icon"
className="h-7 w-7 text-gray-600 hover:text-gray-900"
onClick={() => onBulkAction('mark-read')}
>
<EyeOff className="h-3.5 w-3.5" />
</Button>
</TooltipTrigger>
<TooltipContent>
<p>Mark as read</p>
</TooltipContent>
</Tooltip>
</TooltipProvider>
<TooltipProvider>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant="ghost"
size="icon"
className="h-7 w-7 text-gray-600 hover:text-gray-900"
onClick={() => onBulkAction('archive')}
>
<Archive className="h-3.5 w-3.5" />
</Button>
</TooltipTrigger>
<TooltipContent>
<p>Archive</p>
</TooltipContent>
</Tooltip>
</TooltipProvider>
<TooltipProvider>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant="ghost"
size="icon"
className="h-7 w-7 text-red-600 hover:text-red-700"
onClick={() => onBulkAction('delete')}
>
<Trash2 className="h-3.5 w-3.5" />
</Button>
</TooltipTrigger>
<TooltipContent>
<p>Delete</p>
</TooltipContent>
</Tooltip>
</TooltipProvider>
</div>
</div>
);
}