diff --git a/TestMasterUI/src/components/api-tester/DiagramArea.jsx b/TestMasterUI/src/components/api-tester/DiagramArea.jsx index 37f8986..91813e8 100644 --- a/TestMasterUI/src/components/api-tester/DiagramArea.jsx +++ b/TestMasterUI/src/components/api-tester/DiagramArea.jsx @@ -169,7 +169,7 @@ const nodeTypes = { delayNode: DelayNode }; -const DiagramArea = forwardRef(({onSave}, ref) => { +const DiagramArea = forwardRef(({onSave, onFlowChange, isExecuting}, ref) => { const {currentFlowData} = useLoadTest(); const reactFlowWrapper = useRef(null); const [selectedNodeId, setSelectedNodeId] = useState(null); @@ -196,6 +196,10 @@ const DiagramArea = forwardRef(({onSave}, ref) => { } }, [currentFlowData, setNodes, setEdges]); + useEffect(() => { + onFlowChange?.(nodes, edges); + }, [nodes, edges, onFlowChange]); + useImperativeHandle(ref, () => ({ getFlowData: () => ({ nodes, diff --git a/TestMasterUI/src/components/api-tester/ScenarioEditor.jsx b/TestMasterUI/src/components/api-tester/ScenarioEditor.jsx index 9b88655..2763b8e 100644 --- a/TestMasterUI/src/components/api-tester/ScenarioEditor.jsx +++ b/TestMasterUI/src/components/api-tester/ScenarioEditor.jsx @@ -1,5 +1,4 @@ import React, {useCallback, useEffect, useRef, useState} from 'react'; - import '@xyflow/react/dist/style.css'; import MonacoEditor from '@/components/shared/MonacoEditor'; import ScenarioMenuBar from '@/components/api-tester/ScenarioMenuBar.jsx'; @@ -11,7 +10,6 @@ import {Button} from '@/components/ui/button.jsx'; const apiClient = new APIClient(); -// ConsoleArea Component const ConsoleArea = ({value, isVisible}) => (