import { Button, message, Space, Typography } from "antd";
import { useState } from "react";
import { PlusOutlined } from "@ant-design/icons";
import type { TreeNodeData } from "./EditableTree"
const { Text } = Typography;
interface IWidget {
node: TreeNodeData;
onAdd?: Function;
onTitleClick?: Function;
}
const EditableTreeNodeWidget = ({ node, onAdd, onTitleClick }: IWidget) => {
const [showNodeMenu, setShowNodeMenu] = useState(false);
const [loading, setLoading] = useState(false);
const title = (
{node.title_text ? node.title_text : node.title}
);
const TitleText = () =>
node.deletedAt ? (
{title}
) : (
) => {
if (typeof onTitleClick !== "undefined") {
onTitleClick(e);
}
}}
>
{title}
);
const Menu = () => (
}
type="text"
onClick={async () => {
if (typeof onAdd !== "undefined") {
setLoading(true);
const ok = await onAdd();
setLoading(false);
if (!ok) {
message.error("error");
}
}
}}
/>
);
return (
setShowNodeMenu(true)}
onMouseLeave={() => setShowNodeMenu(false)}
>
);
};
export default EditableTreeNodeWidget;