import { CoreButton } from "../../core/ui/button/button"; import { Icon } from "../../core/ui/icons/icons"; import { Dropdown } from "antd"; import { CoreText, CoreTextType } from "../../core/ui/text/text"; import { ProcessStatus } from "../dataset/dataset_model"; import { IMenuItem } from "../dataset/card_dataset"; import type { MenuProps } from "antd"; export interface ISkillCardProps { processStatus?: string; name?: string; isFinished?: boolean; id?: string; emptyOnClick?: Function; startOnClick?: (id: string) => void; continueOnClick?: (id: string) => void; empty: boolean; onEdit?: (id: string) => void; onDelete?: (id: string) => void; } export const SkillCard = (props: ISkillCardProps) => { const menu: IMenuItem[] = [ { onClick: () => { if (props.onEdit && props.id) props.onEdit(props.id); }, name: "Редактировать", }, { onClick: () => { if (props.onDelete && props.id) props.onDelete(props.id); }, name: "Удалить", }, ]; const items: MenuProps["items"] = menu.map((el, index) => { return { key: String(index), label: , onClick: () => el.onClick(props.id), }; }); return (
{props.empty ? (
{ if (props.empty && props.emptyOnClick) props.emptyOnClick(); }} style={{ display: "flex", justifyContent: "center", alignItems: "center" }} >
) : ( <>
{props.processStatus === ProcessStatus.NONE ? ( <> { if (props.startOnClick && props.id) props.startOnClick(props.id); }} />
{ if (props.continueOnClick && props.id) props.continueOnClick(props.id); }} /> ) : null} {props.processStatus === ProcessStatus.END ? ( <> { if (props.startOnClick && props.id) props.startOnClick(props.id); }} />
{ if (props.continueOnClick && props.id) props.continueOnClick(props.id); }} /> ) : null} {props.processStatus === ProcessStatus.RUN ? ( <> { // if (props.type.isEqual(CardDataSetType.COMPLETED) && props.onClickButton && props.id) { // props.onClickButton(props.id); }} block={true} text="Стоп" /> ) : null} {props.processStatus === ProcessStatus.ERROR ? ( {}} filled={true} text="Ошибка" /> ) : null}
)}
); };