Files
fusion/packages/cli/src/commands/dashboard-tui/logo.ts
gsxdsm 4567edb089 fix: unify CLI version resolver across TUI and dashboard
The TUI splash/footer and the dashboard /api/health + /api/updates/check
each had their own walk-up resolver with different rules, so they could
report different versions and trigger spurious update-available banners.
Dashboard now uses a direct ancestor walk (matching the TUI's old logic)
and only falls back to the sibling-cli probe for dashboard-source dev
mode; logo.ts delegates to it so there is one source of truth.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 22:37:52 -07:00

42 lines
3.3 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// FUSION block-letter logos using Unicode box-drawing + full blocks.
// The caller picks a size based on terminal dimensions and applies an
// all-blue vertical gradient.
import { getCliPackageVersion } from "@fusion/dashboard";
// ANSI Shadow font — 47 cols × 6 rows.
export const FUSION_LOGO_LINES = [
"███████╗██╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗",
"██╔════╝██║ ██║██╔════╝██║██╔═══██╗████╗ ██║",
"█████╗ ██║ ██║███████╗██║██║ ██║██╔██╗ ██║",
"██╔══╝ ██║ ██║╚════██║██║██║ ██║██║╚██╗██║",
"██║ ╚██████╔╝███████║██║╚██████╔╝██║ ╚████║",
"╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝",
];
// ANSI Shadow doubled vertically — each row of FUSION_LOGO_LINES rendered
// twice for a 2× taller block logo (47 cols × 12 rows). Preserves the same
// block-letter aesthetic; just scaled up. Used when the terminal has room.
export const FUSION_LOGO_LARGE_LINES = [
"███████╗██╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗",
"███████╗██╗ ██╗███████╗██╗ ██████╗ ███╗ ██╗",
"██╔════╝██║ ██║██╔════╝██║██╔═══██╗████╗ ██║",
"██╔════╝██║ ██║██╔════╝██║██╔═══██╗████╗ ██║",
"█████╗ ██║ ██║███████╗██║██║ ██║██╔██╗ ██║",
"█████╗ ██║ ██║███████╗██║██║ ██║██╔██╗ ██║",
"██╔══╝ ██║ ██║╚════██║██║██║ ██║██║╚██╗██║",
"██╔══╝ ██║ ██║╚════██║██║██║ ██║██║╚██╗██║",
"██║ ╚██████╔╝███████║██║╚██████╔╝██║ ╚████║",
"██║ ╚██████╔╝███████║██║╚██████╔╝██║ ╚████║",
"╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝",
"╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═══╝",
];
export const FUSION_TAGLINE = "multi node agent orchestrator";
export const FUSION_URL = "runfusion.ai";
// Single source of truth: the dashboard's resolver also powers /api/health and
// /api/updates/check, so the splash/footer version and the Settings UI version
// (and the update-available banner) are guaranteed to agree.
export const FUSION_VERSION = getCliPackageVersion(import.meta.url);