The icon variant lost its last caller when the responsive variant stopped
carrying a second cropped image. runOverviewQueryOptions now takes the
refetch interval, defaulting to the 30s the Runs screen and the dashboard
panel want; Home passes 10s so a short run does not linger on the tile.
agents.md spells the API host as api.${DOMAIN}, which is what the rest of
the docs use.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CL9zvnnvcp1mvA8o7impxk
44 lines
1.0 KiB
TypeScript
44 lines
1.0 KiB
TypeScript
import { Link } from "@tanstack/react-router"
|
|
|
|
import { useTheme } from "@/components/theme-provider"
|
|
import { cn } from "@/lib/utils"
|
|
import logoDark from "/assets/images/fluksio-dark.svg"
|
|
import logo from "/assets/images/fluksio-light.svg"
|
|
|
|
interface LogoProps {
|
|
variant?: "full" | "responsive"
|
|
className?: string
|
|
asLink?: boolean
|
|
}
|
|
|
|
export function Logo({
|
|
variant = "full",
|
|
className,
|
|
asLink = true,
|
|
}: LogoProps) {
|
|
const { resolvedTheme } = useTheme()
|
|
const src = resolvedTheme === "dark" ? logoDark : logo
|
|
|
|
// 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"
|
|
: "h-6 w-auto group-data-[collapsible=icon]:hidden",
|
|
className,
|
|
)}
|
|
/>
|
|
)
|
|
|
|
if (!asLink) {
|
|
return content
|
|
}
|
|
|
|
return <Link to="/">{content}</Link>
|
|
}
|