blob: 9b6d69a9304e03591a1eecf1cfbea9e1b4aa7d75 [file] [log] [blame]
giod0026612025-05-08 13:00:36 +00001import { ReactFlowProvider } from "@xyflow/react";
2import "./App.css";
3import { CanvasBuilder } from "./Canvas";
4import { Tabs, TabsTrigger, TabsContent, TabsList } from "./components/ui/tabs";
5import { Config } from "./Config";
6import { Integrations } from "./Integrations";
7import { Toaster } from "./components/ui/toaster";
gio880de162025-05-11 07:26:00 +00008import { ProjectSelect } from "./ProjectSelect";
gioa1efbad2025-05-21 07:16:45 +00009import { Logs } from "./Monitoring";
gio5f2f1002025-03-20 18:38:48 +040010
11export default function App() {
giod0026612025-05-08 13:00:36 +000012 return (
13 <ReactFlowProvider>
giobc47f9f2025-05-12 08:31:07 +000014 <div className="h-screen flex flex-col p-1">
gio880de162025-05-11 07:26:00 +000015 <AppImpl />
16 <Toaster />
17 </div>
giod0026612025-05-08 13:00:36 +000018 </ReactFlowProvider>
19 );
gio5f2f1002025-03-20 18:38:48 +040020}
21
22function AppImpl() {
giod0026612025-05-08 13:00:36 +000023 return (
gio880de162025-05-11 07:26:00 +000024 <Tabs defaultValue="canvas" className="flex-1 flex flex-col min-h-0">
gio8cadbc72025-05-16 07:51:02 +000025 <div className="flex justify-between border-b">
26 <TabsList className="!rounded-none">
gio880de162025-05-11 07:26:00 +000027 <TabsTrigger value="canvas">Canvas</TabsTrigger>
gioa1efbad2025-05-21 07:16:45 +000028 <TabsTrigger value="monitoring">Monitoring</TabsTrigger>
gio880de162025-05-11 07:26:00 +000029 <TabsTrigger value="config">Config</TabsTrigger>
30 <TabsTrigger value="integrations">Integrations</TabsTrigger>
31 </TabsList>
gio8cadbc72025-05-16 07:51:02 +000032 <ProjectSelect className="w-fit min-w-[150px]" />
gio880de162025-05-11 07:26:00 +000033 </div>
giobc47f9f2025-05-12 08:31:07 +000034 <TabsContent value="canvas" className="!mt-0 flex-1 min-h-0">
giod0026612025-05-08 13:00:36 +000035 <CanvasBuilder />
36 </TabsContent>
giobc47f9f2025-05-12 08:31:07 +000037 <TabsContent value="config" className="!mt-0 flex-1 min-h-0">
giod0026612025-05-08 13:00:36 +000038 <Config />
39 </TabsContent>
giobc47f9f2025-05-12 08:31:07 +000040 <TabsContent value="integrations" className="!mt-0 flex-1 min-h-0">
giod0026612025-05-08 13:00:36 +000041 <Integrations />
42 </TabsContent>
gioa1efbad2025-05-21 07:16:45 +000043 <TabsContent value="monitoring" className="!mt-0 flex-1 min-h-0">
gio3a921b82025-05-10 07:36:09 +000044 <Logs />
45 </TabsContent>
giod0026612025-05-08 13:00:36 +000046 </Tabs>
47 );
gio5f2f1002025-03-20 18:38:48 +040048}