diff --git a/web/app/components/workflow/nodes/_base/components/node-control.tsx b/web/app/components/workflow/nodes/_base/components/node-control.tsx index a31a197992..7e8dd28437 100644 --- a/web/app/components/workflow/nodes/_base/components/node-control.tsx +++ b/web/app/components/workflow/nodes/_base/components/node-control.tsx @@ -8,6 +8,7 @@ import { useTranslation } from 'react-i18next' import { useNodeDataUpdate, useNodesInteractions, + useNodesSyncDraft, } from '../../../hooks' import type { Node } from '../../../types' import { canRunBySingle } from '../../../utils' @@ -27,6 +28,7 @@ const NodeControl: FC = ({ const [open, setOpen] = useState(false) const { handleNodeDataUpdate } = useNodeDataUpdate() const { handleNodeSelect } = useNodesInteractions() + const { handleSyncWorkflowDraft } = useNodesSyncDraft() const handleOpenChange = useCallback((newOpen: boolean) => { setOpen(newOpen) @@ -56,6 +58,8 @@ const NodeControl: FC = ({ }, }) handleNodeSelect(id) + if (!data._isSingleRun) + handleSyncWorkflowDraft(true) }} > { diff --git a/web/app/components/workflow/nodes/_base/panel.tsx b/web/app/components/workflow/nodes/_base/panel.tsx index 54791b3b48..1a2641d4be 100644 --- a/web/app/components/workflow/nodes/_base/panel.tsx +++ b/web/app/components/workflow/nodes/_base/panel.tsx @@ -23,6 +23,7 @@ import { useNodeDataUpdate, useNodesExtraData, useNodesInteractions, + useNodesSyncDraft, } from '@/app/components/workflow/hooks' import { useStore } from '@/app/components/workflow/store' import { canRunBySingle } from '@/app/components/workflow/utils' @@ -43,6 +44,7 @@ const BasePanel: FC = ({ }) => { const { t } = useTranslation() const { handleNodeSelect } = useNodesInteractions() + const { handleSyncWorkflowDraft } = useNodesSyncDraft() const nodesExtraData = useNodesExtraData() const availableNextNodes = nodesExtraData[data.type].availableNextNodes @@ -86,7 +88,10 @@ const BasePanel: FC = ({ >
handleNodeDataUpdate({ id, data: { _isSingleRun: true } })} + onClick={() => { + handleNodeDataUpdate({ id, data: { _isSingleRun: true } }) + handleSyncWorkflowDraft(true) + }} >