feat(tui): add ASCII art banner on startup
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
// ASCII art banner for Flynn TUI startup
|
||||
|
||||
/**
|
||||
* Flynn ASCII art banner using block characters.
|
||||
* Raw art lines without any color codes — callers apply their own styling.
|
||||
*/
|
||||
export const FLYNN_BANNER = `
|
||||
███████╗██╗ ██╗ ██╗███╗ ██╗███╗ ██╗
|
||||
██╔════╝██║ ╚██╗ ██╔╝████╗ ██║████╗ ██║
|
||||
█████╗ ██║ ╚████╔╝ ██╔██╗ ██║██╔██╗ ██║
|
||||
██╔══╝ ██║ ╚██╔╝ ██║╚██╗██║██║╚██╗██║
|
||||
██║ ███████╗ ██║ ██║ ╚████║██║ ╚████║
|
||||
╚═╝ ╚══════╝ ╚═╝ ╚═╝ ╚═══╝╚═╝ ╚═══╝`;
|
||||
|
||||
/**
|
||||
* Returns the banner with ANSI color codes for terminal output.
|
||||
* Uses orange (208) for the art and dim for the box frame.
|
||||
*/
|
||||
export function getColoredBanner(): string {
|
||||
const orange = '\x1b[38;5;208m';
|
||||
const reset = '\x1b[0m';
|
||||
|
||||
return `${orange}${FLYNN_BANNER}${reset}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns plain banner lines for use in Ink/React components.
|
||||
* Each line is returned individually for flexible rendering.
|
||||
*/
|
||||
export function getBannerLines(): string[] {
|
||||
return FLYNN_BANNER.split('\n').filter((line) => line.length > 0);
|
||||
}
|
||||
Reference in New Issue
Block a user