diff --git a/dashboard/frontend/src/components/Sidebar.svelte b/dashboard/frontend/src/components/Sidebar.svelte index 30cf099..7682ff2 100644 --- a/dashboard/frontend/src/components/Sidebar.svelte +++ b/dashboard/frontend/src/components/Sidebar.svelte @@ -4,11 +4,8 @@ const links = [ { id: "dashboard", label: "Overview", icon: "grid" }, { id: "docker", label: "Docker", icon: "box" }, - { id: "gitea", label: "Repos", icon: "git" }, { id: "files", label: "Files", icon: "folder" }, { id: "terminal", label: "Terminal", icon: "terminal" }, - { id: "openclaw", label: "OpenClaw", icon: "openclaw" }, - { id: "settings", label: "Settings", icon: "settings" }, ]; const LAN_IP = "192.168.31.221"; @@ -20,15 +17,20 @@ .catch(() => {}); } - const external = [ + const media = [ { label: "Navidrome", port: 4533, remoteHref: "https://music.jimmygan.com", icon: "music" }, - { label: "Immich", port: 2283, icon: "image" }, { label: "Jellyfin", port: 8096, icon: "play" }, - { label: "Gitea Web", port: 3300, icon: "git" }, - { label: "Speedtest", port: 8080, icon: "speedtest" }, { label: "Audiobookshelf", port: 13378, icon: "headphones" }, - { label: "Stirling PDF", port: 8030, icon: "pdf" }, - { label: "Vaultwarden", port: 8222, icon: "lock" }, + { label: "Immich", port: 2283, icon: "image" }, + ]; + + const tools = [ + { id: "openclaw", label: "OpenClaw", icon: "openclaw" }, + { id: "gitea", label: "Repos", icon: "git" }, + { label: "Gitea Web", port: 3300, icon: "git", external: true }, + { label: "Stirling PDF", port: 8030, icon: "pdf", external: true }, + { label: "Vaultwarden", port: 8222, icon: "lock", external: true }, + { label: "Speedtest", port: 8080, icon: "speedtest", external: true }, ]; function extHref(svc) { @@ -78,16 +80,10 @@ {:else if link.icon === "box"} - {:else if link.icon === "git"} - {:else if link.icon === "folder"} {:else if link.icon === "terminal"} - {:else if link.icon === "openclaw"} - - {:else if link.icon === "settings"} - {/if} {link.label} @@ -95,8 +91,8 @@ {/each}
-Services
- {#each external as svc} +Media
+ {#each media as svc} {#if svc.icon === "music"} - {:else if svc.icon === "image"} - {:else if svc.icon === "play"} - {:else if svc.icon === "git"} - - {:else if svc.icon === "speedtest"} - {:else if svc.icon === "headphones"} - {:else if svc.icon === "pdf"} - - {:else if svc.icon === "lock"} - + {:else if svc.icon === "image"} + {/if} {svc.label} {/each} + + +Tools
+ {#each tools as item} + {#if item.external || item.port} + + + {#if item.icon === "openclaw"} + + {:else if item.icon === "git"} + + {:else if item.icon === "pdf"} + + {:else if item.icon === "lock"} + + {:else if item.icon === "speedtest"} + + {/if} + + {item.label} + + + {:else} + + {/if} + {/each} - +