2024-07-17 19:07:34 +08:00
|
|
|
import { useSetModalState } from '@/hooks/common-hooks';
|
2024-04-28 19:03:54 +08:00
|
|
|
import { Layout } from 'antd';
|
2024-05-23 18:53:04 +08:00
|
|
|
import { useState } from 'react';
|
|
|
|
|
import { ReactFlowProvider } from 'reactflow';
|
2024-04-28 19:03:54 +08:00
|
|
|
import FlowCanvas from './canvas';
|
|
|
|
|
import Sider from './flow-sider';
|
2024-05-29 10:01:39 +08:00
|
|
|
import FlowHeader from './header';
|
2024-11-08 15:50:01 +08:00
|
|
|
import { useCopyPaste, useFetchDataOnMount } from './hooks';
|
2024-04-28 19:03:54 +08:00
|
|
|
|
|
|
|
|
const { Content } = Layout;
|
|
|
|
|
|
|
|
|
|
function RagFlow() {
|
2024-05-23 18:53:04 +08:00
|
|
|
const [collapsed, setCollapsed] = useState(false);
|
2024-06-11 15:46:12 +08:00
|
|
|
const {
|
|
|
|
|
visible: chatDrawerVisible,
|
|
|
|
|
hideModal: hideChatDrawer,
|
|
|
|
|
showModal: showChatDrawer,
|
|
|
|
|
} = useSetModalState();
|
2024-05-23 18:53:04 +08:00
|
|
|
|
2024-06-05 10:46:06 +08:00
|
|
|
useFetchDataOnMount();
|
2024-11-08 15:50:01 +08:00
|
|
|
useCopyPaste();
|
2024-06-05 10:46:06 +08:00
|
|
|
|
2024-04-28 19:03:54 +08:00
|
|
|
return (
|
2024-05-23 18:53:04 +08:00
|
|
|
<Layout>
|
|
|
|
|
<ReactFlowProvider>
|
|
|
|
|
<Sider setCollapsed={setCollapsed} collapsed={collapsed}></Sider>
|
|
|
|
|
<Layout>
|
2024-06-11 15:46:12 +08:00
|
|
|
<FlowHeader showChatDrawer={showChatDrawer}></FlowHeader>
|
2024-06-05 10:46:06 +08:00
|
|
|
<Content style={{ margin: 0 }}>
|
2024-06-11 15:46:12 +08:00
|
|
|
<FlowCanvas
|
|
|
|
|
chatDrawerVisible={chatDrawerVisible}
|
|
|
|
|
hideChatDrawer={hideChatDrawer}
|
|
|
|
|
></FlowCanvas>
|
2024-05-23 18:53:04 +08:00
|
|
|
</Content>
|
|
|
|
|
</Layout>
|
|
|
|
|
</ReactFlowProvider>
|
2024-04-28 19:03:54 +08:00
|
|
|
</Layout>
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default RagFlow;
|