refactor context menu II

This commit is contained in:
2025-11-10 21:33:12 +01:00
parent 80f9044729
commit 8e630839a0
3 changed files with 144 additions and 67 deletions

View File

@@ -0,0 +1,39 @@
import { Input, Modal } from "antd";
import type { NodeContext } from "./Graph";
import { useState } from "react";
export default function NodeRenameModal({
nodeContext,
renameModalOpened,
openRenameModal
} : {
nodeContext: NodeContext,
renameModalOpened: boolean,
openRenameModal: React.Dispatch<React.SetStateAction<boolean>>
}) {
if(!renameModalOpened){
return;
}
const [nodeName, setSelectedNodeName] = useState(nodeContext.nodeName);
function renameNode() {
const node = nodeContext.graph.nodes.find(n => n.id === nodeContext.nodeId);
if (!node) {
return;
}
node.label = nodeName;
nodeContext.setGraph(prev => ({ ...prev, nodes: nodeContext.graph.nodes }));
openRenameModal(false);
}
return (
<Modal
title="Rename"
open={renameModalOpened}
onOk={() => renameNode()}
onCancel={() => openRenameModal(false)}
>
<Input value={nodeName} onChange={(e) => setSelectedNodeName(e.target.value)} />
</Modal>
)
}