import React from 'react'; import { Menu, Modal, } from 'antd'; import { ClickParam } from 'antd/lib/menu/index'; import LoaderItemComponent from './loader-item'; import DumperItemComponent from './dumper-item'; interface ActionsMenuComponentProps { taskInstance: any; loaders: any[]; dumpers: any[]; loadActivity: string | null; dumpActivities: string[] | null; installedTFAnnotation: boolean; installedAutoAnnotation: boolean; onLoadAnnotation: (taskInstance: any, loader: any, file: File) => void; onDumpAnnotation: (task: any, dumper: any) => void; onDeleteTask: (task: any) => void; } interface MinActionsMenuProps { taskInstance: any; onDeleteTask: (task: any) => void; } export function handleMenuClick(props: MinActionsMenuProps, params: ClickParam) { const { taskInstance } = props; const tracker = taskInstance.bugTracker; if (params.keyPath.length !== 2) { switch (params.key) { case 'tracker': { window.open(`${tracker}`, '_blank') return; } case 'auto': { return; } case 'tf': { return; } case 'delete': { const taskID = taskInstance.id; Modal.confirm({ title: `The task ${taskID} will be deleted`, content: 'All related data (images, annotations) will be lost. Continue?', onOk: () => { props.onDeleteTask(taskInstance); }, }); return; } default: { return; } } } } export default function ActionsMenuComponent(props: ActionsMenuComponentProps) { const tracker = props.taskInstance.bugTracker; return (
); }