diff --git a/space_flow/src/CustomNodes/GenericNode/index.tsx b/space_flow/src/CustomNodes/GenericNode/index.tsx index 165b4789f..60eb8ab57 100644 --- a/space_flow/src/CustomNodes/GenericNode/index.tsx +++ b/space_flow/src/CustomNodes/GenericNode/index.tsx @@ -10,7 +10,6 @@ import { nodeColors, nodeIcons, snakeToNormalCase } from "../../utils"; import Tooltip from "../../components/TooltipComponent"; export default function GenericNode({ data }) { - console.log(data) const Icon = nodeIcons[data.type]; return (
diff --git a/space_flow/src/pages/FlowPage/index.tsx b/space_flow/src/pages/FlowPage/index.tsx index c4ab88369..227356981 100644 --- a/space_flow/src/pages/FlowPage/index.tsx +++ b/space_flow/src/pages/FlowPage/index.tsx @@ -11,19 +11,12 @@ import ExtraSidebar from "./components/extraSidebarComponent"; import Chat from "../../components/chatComponent"; import GenericNode from "../../CustomNodes/GenericNode"; import connection from "./components/connection"; +import { getConnectedNodes } from "../../utils"; const nodeTypes = { genericNode:GenericNode, }; export default function FlowPage() { - // getPrompts().then(result=>result.forEach(prompt=>console.log(prompt))) - // getChains().then(result=>console.log(result)) - // getAgents().then(result=>console.log(result)) - // getMemories().then(result=>console.log(result)) - // getModels().then(result=>result.forEach(model=>console.log(model))) - - // outside component to avoid render trigger - const reactFlowWrapper = useRef(null); @@ -43,8 +36,13 @@ export default function FlowPage() { const [edges, setEdges, onEdgesChange] = useEdgesState([]); const [reactFlowInstance, setReactFlowInstance] = useState(null); const onConnect = useCallback( - (params) => setEdges((eds) => addEdge(params, eds)), - [] + (params) => { + console.log(params) + console.log(reactFlowInstance.getNodes()) + console.log(getConnectedNodes(params,reactFlowInstance.getNodes())) + setEdges((eds) => addEdge({...params,style:{stroke:"red"}}, eds)) + }, + [reactFlowInstance] ); const onDragOver = useCallback((event) => { event.preventDefault(); diff --git a/space_flow/src/utils.ts b/space_flow/src/utils.ts index 52c75a552..1b6155b89 100644 --- a/space_flow/src/utils.ts +++ b/space_flow/src/utils.ts @@ -1,4 +1,5 @@ import { RocketLaunchIcon, LinkIcon, CpuChipIcon, LightBulbIcon, CommandLineIcon, WrenchScrewdriverIcon } from "@heroicons/react/24/outline"; +import { Edge, Node } from "reactflow"; export function classNames(...classes) { return classes.filter(Boolean).join(" "); @@ -290,4 +291,11 @@ export function classNames(...classes) { export function roundNumber(x, decimals){ return Math.round(x * Math.pow(10, decimals))/Math.pow(10, decimals) } - \ No newline at end of file + + + export function getConnectedNodes(edge:Edge,nodes:Array):Array{ + const sourceId = edge.source; + const targetId = edge.target; + const connectedNodes = nodes.filter(node=>node.id===sourceId||node.id===targetId) + return connectedNodes + } \ No newline at end of file