import clsx from 'clsx'; import { BarChart, FileText, Info, Paperclip, Terminal } from 'lucide-react'; import { ContainerStatus } from '@/react/docker/containers/types'; import { Authorized } from '@/react/hooks/useUser'; import { Icon } from '@@/Icon'; import { Link } from '@@/Link'; import styles from './ContainerQuickActions.module.css'; export interface QuickActionsState { showQuickActionAttach: boolean; showQuickActionExec: boolean; showQuickActionInspect: boolean; showQuickActionLogs: boolean; showQuickActionStats: boolean; } export function ContainerQuickActions({ status, containerId, nodeName, state, }: { containerId: string; nodeName: string; status: ContainerStatus; state: QuickActionsState; }) { const isActive = !!status && [ ContainerStatus.Starting, ContainerStatus.Running, ContainerStatus.Healthy, ContainerStatus.Unhealthy, ].includes(status); return (
{state.showQuickActionLogs && ( )} {state.showQuickActionInspect && ( )} {state.showQuickActionStats && isActive && ( )} {state.showQuickActionExec && isActive && ( )} {state.showQuickActionAttach && isActive && ( )}
); }