Let a Home tile lead where its figure does, and drop the logo nobody saw

`Tile` takes an optional link: Nodes and Flows running to /flows, Runs
running to /runs, Failures down to the list further down the same page.
Queue backlog and loop lag have no screen of their own and stay plain.

`Logo`'s responsive variant carried a second `<img>` for the collapsed
rail, but AppSidebar hides the whole logo when collapsed, so an ancestor
`display: none` meant it never rendered in any state.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KYM38KSb4V4v2T71eifnZv
This commit is contained in:
2026-08-30 17:18:01 +02:00
co-authored by Claude Opus 5
parent 33d3e71b20
commit 671452e5eb
3 changed files with 49 additions and 37 deletions
+17 -32
View File
@@ -19,38 +19,23 @@ export function Logo({
const { resolvedTheme } = useTheme()
const src = resolvedTheme === "dark" ? logoDark : logo
// The mark and the wordmark live in the same SVG, so the collapsed sidebar
// shows the same asset cropped to a square rather than a separate icon file.
const content =
variant === "responsive" ? (
<>
<img
src={src}
alt="Fluksio"
className={cn(
"h-6 w-auto group-data-[collapsible=icon]:hidden",
className,
)}
/>
<img
src={src}
alt="Fluksio"
className={cn(
"size-5 object-contain hidden group-data-[collapsible=icon]:block",
className,
)}
/>
</>
) : (
<img
src={src}
alt="Fluksio"
className={cn(
variant === "full" ? "h-6 w-auto" : "size-5 object-contain",
className,
)}
/>
)
// The mark and the wordmark live in the same SVG. The collapsed sidebar
// hides the logo entirely (see AppSidebar), so "responsive" only needs to
// hide itself the same way, not carry a second, cropped asset.
const content = (
<img
src={src}
alt="Fluksio"
className={cn(
variant === "full"
? "h-6 w-auto"
: variant === "responsive"
? "h-6 w-auto group-data-[collapsible=icon]:hidden"
: "size-5 object-contain",
className,
)}
/>
)
if (!asLink) {
return content