import type { FleetFilterState } from '../../help/fleetFilters';
import { collectFleetSubnets, collectFleetTags } from '../../help/fleetFilters';
import type { Agent } from '../../types';
import { HelpTip } from '../HelpTip';
import './FleetToolbar.css';
interface Props {
agents: Agent[];
filters: FleetFilterState;
onChange: (next: FleetFilterState) => void;
selectedCount: number;
selectedAgents?: Agent[];
onBulkAction: (action: string) => void;
onSelectAllFiltered?: () => void;
onCreateGroup?: () => void;
filteredCount?: number;
bulkBusy: boolean;
}
export default function FleetToolbar({
agents,
filters,
onChange,
selectedCount,
selectedAgents = [],
onBulkAction,
onSelectAllFiltered,
onCreateGroup,
filteredCount,
bulkBusy,
}: Props) {
const tags = collectFleetTags(agents);
const subnets = collectFleetSubnets(agents);
return (
onChange({ ...filters, search: e.target.value })}
/>
{onSelectAllFiltered && (filteredCount ?? 0) > 0 && selectedCount === 0 && (
)}
{selectedCount > 0 && (
{selectedCount} selected
{onCreateGroup && (
)}
{selectedCount === 1 && (
)}
)}
);
}