import React from 'react'; import { Box, Text } from 'ink'; import { colors } from '../theme/index.js'; import { Mascot, type MascotExpression } from './Mascot.js'; /** * ASCII art logo for TORM */ const LOGO_LINES = [ '████████╗ ██████╗ ██████╗ ███╗ ███╗', '╚══██╔══╝██╔═══██╗██╔══██╗████╗ ████║', ' ██║ ██║ ██║██████╔╝██╔████╔██║', ' ██║ ██║ ██║██╔══██╗██║╚██╔╝██║', ' ██║ ╚██████╔╝██║ ██║██║ ╚═╝ ██║', ' ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝', ]; export interface HeaderProps { /** Mascot expression to display */ mascotExpression?: MascotExpression; /** Whether mascot is sleeping */ mascotSleeping?: boolean; /** Number of Z's to show when sleeping (0-3) */ mascotSleepZCount?: number; /** Whether downloads are active */ isDownloading?: boolean; } /** * Header component for Torm TUI * * Left-aligned ASCII art logo with animated mascot. */ export const Header: React.FC = ({ mascotExpression = 'default', mascotSleeping = false, mascotSleepZCount = 0, isDownloading = false, }) => { return ( {/* Logo */} {LOGO_LINES.map((line, index) => ( {line} ))} {/* Mascot */} ); }; export default Header;