import { RAGFlowNodeType } from '@/interfaces/database/flow'; import { HandleType, Position } from '@xyflow/react'; import { createContext } from 'react'; import { useAddNode } from './hooks/use-add-node'; import { useShowFormDrawer } from './hooks/use-show-drawer'; export const AgentFormContext = createContext( undefined, ); type AgentInstanceContextType = Pick< ReturnType, 'addCanvasNode' > & Pick, 'showFormDrawer'>; export const AgentInstanceContext = createContext( {} as AgentInstanceContextType, ); export type HandleContextType = { nodeId?: string; id?: string; type: HandleType; position: Position; isFromConnectionDrag: boolean; }; export const HandleContext = createContext( {} as HandleContextType, ); export type LogContextType = { messageId: string; setMessageId: (messageId: string) => void; setUploadedFileData: (data: Record) => void; }; export const LogContext = createContext({} as LogContextType);