| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 1 | import { ReactFlowProvider } from "@xyflow/react"; |
| 2 | import "./App.css"; |
| 3 | import { CanvasBuilder } from "./Canvas"; |
| 4 | import { Tabs, TabsTrigger, TabsContent, TabsList } from "./components/ui/tabs"; |
| 5 | import { Config } from "./Config"; |
| 6 | import { Integrations } from "./Integrations"; |
| 7 | import { Toaster } from "./components/ui/toaster"; |
| gio | 880de16 | 2025-05-11 07:26:00 +0000 | [diff] [blame] | 8 | import { ProjectSelect } from "./ProjectSelect"; |
| gio | a1efbad | 2025-05-21 07:16:45 +0000 | [diff] [blame] | 9 | import { Logs } from "./Monitoring"; |
| gio | da12043 | 2025-06-02 09:42:26 +0000 | [diff] [blame^] | 10 | import { Overview } from "./Overview"; |
| gio | 5f2f100 | 2025-03-20 18:38:48 +0400 | [diff] [blame] | 11 | |
| 12 | export default function App() { |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 13 | return ( |
| 14 | <ReactFlowProvider> |
| gio | bc47f9f | 2025-05-12 08:31:07 +0000 | [diff] [blame] | 15 | <div className="h-screen flex flex-col p-1"> |
| gio | 880de16 | 2025-05-11 07:26:00 +0000 | [diff] [blame] | 16 | <AppImpl /> |
| 17 | <Toaster /> |
| 18 | </div> |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 19 | </ReactFlowProvider> |
| 20 | ); |
| gio | 5f2f100 | 2025-03-20 18:38:48 +0400 | [diff] [blame] | 21 | } |
| 22 | |
| 23 | function AppImpl() { |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 24 | return ( |
| gio | da12043 | 2025-06-02 09:42:26 +0000 | [diff] [blame^] | 25 | <Tabs defaultValue="overview" className="flex-1 flex flex-col min-h-0"> |
| gio | 8cadbc7 | 2025-05-16 07:51:02 +0000 | [diff] [blame] | 26 | <div className="flex justify-between border-b"> |
| 27 | <TabsList className="!rounded-none"> |
| gio | da12043 | 2025-06-02 09:42:26 +0000 | [diff] [blame^] | 28 | <TabsTrigger value="overview">Overview</TabsTrigger> |
| gio | 880de16 | 2025-05-11 07:26:00 +0000 | [diff] [blame] | 29 | <TabsTrigger value="canvas">Canvas</TabsTrigger> |
| gio | a1efbad | 2025-05-21 07:16:45 +0000 | [diff] [blame] | 30 | <TabsTrigger value="monitoring">Monitoring</TabsTrigger> |
| gio | 880de16 | 2025-05-11 07:26:00 +0000 | [diff] [blame] | 31 | <TabsTrigger value="config">Config</TabsTrigger> |
| 32 | <TabsTrigger value="integrations">Integrations</TabsTrigger> |
| 33 | </TabsList> |
| gio | 8cadbc7 | 2025-05-16 07:51:02 +0000 | [diff] [blame] | 34 | <ProjectSelect className="w-fit min-w-[150px]" /> |
| gio | 880de16 | 2025-05-11 07:26:00 +0000 | [diff] [blame] | 35 | </div> |
| gio | da12043 | 2025-06-02 09:42:26 +0000 | [diff] [blame^] | 36 | <TabsContent value="overview" className="!mt-0 flex-1 min-h-0"> |
| 37 | <Overview /> |
| 38 | </TabsContent> |
| gio | bc47f9f | 2025-05-12 08:31:07 +0000 | [diff] [blame] | 39 | <TabsContent value="canvas" className="!mt-0 flex-1 min-h-0"> |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 40 | <CanvasBuilder /> |
| 41 | </TabsContent> |
| gio | bc47f9f | 2025-05-12 08:31:07 +0000 | [diff] [blame] | 42 | <TabsContent value="config" className="!mt-0 flex-1 min-h-0"> |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 43 | <Config /> |
| 44 | </TabsContent> |
| gio | bc47f9f | 2025-05-12 08:31:07 +0000 | [diff] [blame] | 45 | <TabsContent value="integrations" className="!mt-0 flex-1 min-h-0"> |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 46 | <Integrations /> |
| 47 | </TabsContent> |
| gio | a1efbad | 2025-05-21 07:16:45 +0000 | [diff] [blame] | 48 | <TabsContent value="monitoring" className="!mt-0 flex-1 min-h-0"> |
| gio | 3a921b8 | 2025-05-10 07:36:09 +0000 | [diff] [blame] | 49 | <Logs /> |
| 50 | </TabsContent> |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 51 | </Tabs> |
| 52 | ); |
| gio | 5f2f100 | 2025-03-20 18:38:48 +0400 | [diff] [blame] | 53 | } |