diff options
Diffstat (limited to 'packages/frontend/src/App.svelte')
| -rw-r--r-- | packages/frontend/src/App.svelte | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/packages/frontend/src/App.svelte b/packages/frontend/src/App.svelte new file mode 100644 index 0000000..038fb09 --- /dev/null +++ b/packages/frontend/src/App.svelte @@ -0,0 +1,32 @@ +<script lang="ts"> +import { onMount } from "svelte"; +import ChatInput from "./lib/components/ChatInput.svelte"; +import ChatPanel from "./lib/components/ChatPanel.svelte"; +import Header from "./lib/components/Header.svelte"; +import { wsClient } from "./lib/ws.svelte.js"; + +const STORAGE_KEY = "dispatch-theme"; + +onMount(() => { + // Apply saved theme + const saved = localStorage.getItem(STORAGE_KEY); + if (saved) { + document.documentElement.setAttribute("data-theme", saved); + } + + // Connect WebSocket + wsClient.connect(); + + return () => { + wsClient.disconnect(); + }; +}); +</script> + +<div class="flex flex-col h-screen overflow-hidden bg-base-100 text-base-content"> + <Header /> + <div class="flex-1 overflow-hidden"> + <ChatPanel /> + </div> + <ChatInput /> +</div> |
