Compare commits

...

2 Commits

Author SHA1 Message Date
Yoan.liu
0a85e8ddb7 improve clone node 2025-05-23 15:44:13 +08:00
Yoan.liu
0bbd54b297 refactor code 2025-05-23 14:44:44 +08:00
2 changed files with 4 additions and 7 deletions

View File

@ -2,6 +2,7 @@ import { Card } from "antd";
import { type SharedNodeProps } from "./_SharedNode";
import AddNode from "./AddNode";
import { useTranslation } from "react-i18next";
import { memo } from "react";
export type UploadNodeProps = SharedNodeProps;
const CloneNode = ({ node, disabled }: SharedNodeProps) => {
@ -16,4 +17,4 @@ const CloneNode = ({ node, disabled }: SharedNodeProps) => {
);
};
export default CloneNode;
export default memo(CloneNode);

View File

@ -568,6 +568,7 @@ export const cloneNode = (node: WorkflowNode, srcNode: WorkflowNode): WorkflowNo
if (current.next?.type === WorkflowNodeType.Clone) {
const clonedSrcNode = produce(srcNode, (draft) => {
draft.id = nanoid();
draft.name = `${srcNode.name} copy`;
return draft;
});
clonedSrcNode.next = current.next?.next;
@ -588,10 +589,5 @@ export const cloneNode = (node: WorkflowNode, srcNode: WorkflowNode): WorkflowNo
};
export const ifCanBeCloned = (node: WorkflowNode): boolean => {
if (workflowNodeTypesCanBeCloned.has(node.type)) {
return true;
}
return false;
return workflowNodeTypesCanBeCloned.has(node.type);
};