diff --git a/packages/global/core/workflow/utils.ts b/packages/global/core/workflow/utils.ts index b469c6da5fbe..e262060a3e4e 100644 --- a/packages/global/core/workflow/utils.ts +++ b/packages/global/core/workflow/utils.ts @@ -276,7 +276,7 @@ export const appData2FlowNodeIO = ({ description: '', valueType: WorkflowIOValueTypeEnum.any, required: item.required, - list: item.enums?.map((enumItem) => ({ + list: (item.list || item.enums)?.map((enumItem) => ({ label: enumItem.value, value: enumItem.value })) diff --git a/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/components/NodeTemplates/list.tsx b/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/components/NodeTemplates/list.tsx index 7f370a7a0b47..88c76c0e1e87 100644 --- a/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/components/NodeTemplates/list.tsx +++ b/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/components/NodeTemplates/list.tsx @@ -275,6 +275,13 @@ const NodeTemplateList = ({ }); const currentNode = nodeList.find((node) => node.nodeId === handleParams?.nodeId); + if (templateNode.flowNodeType === FlowNodeTypeEnum.loop && !!currentNode?.parentNodeId) { + toast({ + status: 'warning', + title: t('workflow:can_not_loop') + }); + return; + } const newNode = nodeTemplate2FlowNode({ template: { diff --git a/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/nodes/NodeFormInput/InputFormEditModal.tsx b/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/nodes/NodeFormInput/InputFormEditModal.tsx index b7aaa3db1e34..a05ce2b65a13 100644 --- a/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/nodes/NodeFormInput/InputFormEditModal.tsx +++ b/projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/nodes/NodeFormInput/InputFormEditModal.tsx @@ -166,6 +166,7 @@ const InputFormEditModal = ({ }} onClick={() => { setValue('type', item.value); + setValue('defaultValue', ''); }} > { setValue('renderTypeList', item.value); + setValue('defaultValue', ''); }} > template.flowNodeType === storeNode.flowNodeType) || EmptyNode; - const templateInputs = template.inputs.filter((input) => !input.canEdit); + const templateInputs = template.inputs.filter( + (input) => !input.canEdit && input.deprecated !== true + ); const templateOutputs = template.outputs.filter( (output) => output.type !== FlowNodeOutputTypeEnum.dynamic );