import { IconTrash, IconEdit, IconDownload, IconX, IconChecks } from '@tabler/icons-react' /** * Панель массовых действий для таблиц * Показывается когда выбраны элементы */ function BulkActionsBar({ selectedCount = 0, totalCount = 0, onSelectAll = () => {}, onDeselectAll = () => {}, onDelete = null, onEdit = null, onExport = null, customActions = [], // [{icon: Icon, label, onClick, variant}] className = '' }) { if (selectedCount === 0) return null const allSelected = selectedCount === totalCount return (
{/* Левая часть: информация о выборе */}
Выбрано: {selectedCount}
{/* Кнопка выбрать все / снять выбор */} {!allSelected && totalCount > selectedCount && ( )}
{/* Правая часть: действия */}
{/* Экспорт */} {onExport && ( )} {/* Редактирование */} {onEdit && ( )} {/* Пользовательские действия */} {customActions.map((action, idx) => { const Icon = action.icon return ( ) })} {/* Удаление */} {onDelete && ( )}
) } export default BulkActionsBar