diff --git a/packages/cli/src/ui/components/AsciiArt.ts b/packages/cli/src/ui/components/AsciiArt.ts index e1cb5e058b..79eb522c80 100644 --- a/packages/cli/src/ui/components/AsciiArt.ts +++ b/packages/cli/src/ui/components/AsciiArt.ts @@ -36,42 +36,3 @@ export const tinyAsciiLogo = ` ███░ ░░█████████ ░░░ ░░░░░░░░░ `; - -export const shortAsciiLogoIde = ` - ░░░░░░░░░ ░░░░░░░░░░ ░░░░░░ ░░░░░░ ░░░░░ ░░░░░░ ░░░░░ ░░░░░ - ░░░ ░░░ ░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░░ ░░░░░ ░░░ - ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ - █████████░░██████████ ██████ ░░██████░█████░██████ ░░█████ █████░ - ███░░ ███░███░░ ██████ ░██████░░███░░██████ ░█████ ███░░ - ███░░ ░░███░░ ███░███ ███ ███░░███░░███░███ ███░░ ███░░ - ███░░░░████░██████░░░░░███░░█████ ███░░███░░███░░███ ███░░░ ███░░░ - ███ ███ ███ ███ ███ ███ ███ ███ ██████ ███ - ███ ███ ███ ███ ███ ███ ███ █████ ███ - █████████ ██████████ ███ ███ █████ ███ █████ █████ -`; - -export const longAsciiLogoIde = ` - ░░░ ░░░░░░░░░ ░░░░░░░░░░ ░░░░░░ ░░░░░░ ░░░░░ ░░░░░░ ░░░░░ ░░░░░ - ░░░ ░░░ ░░░ ░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░░ ░░░░░ ░░░ - ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ ░░░ - ███ ░░░ █████████░░██████████ ██████ ░░██████░█████░██████ ░░█████ █████░ - ███ ░░░ ███░ ███░███░░ ██████ ░██████░░███░░██████ ░█████ ███░░ - ███ ███░░░ ░░███░░ ███░███ ███ ███░░███░░███░███ ███░░ ███░░ - ░░░ ███ ███ ░░░█████░██████░░░░░███░░█████ ███░░███░░███░░███ ███░░░ ███░░░ - ███ ███ ███ ███ ███ ███ ███ ███ ███ ██████ ███ - ███ ███ ███ ███ ███ ███ ███ ███ █████ ███ - ███ █████████ ██████████ ███ ███ █████ ███ █████ █████ -`; - -export const tinyAsciiLogoIde = ` - ░░░ ░░░░░░░░░ - ░░░ ░░░ ░░░ - ░░░ ░░░ - ███ ░░░ █████████░░░ - ███ ░░░ ███░░ ███░░ - ███ ███░░ ░░░ - ░░░ ███ ███░░░░████░ - ███ ███ ███ - ███ ███ ███ - ███ █████████ -`; diff --git a/packages/cli/src/ui/components/Header.test.tsx b/packages/cli/src/ui/components/Header.test.tsx index 5200db17d4..59c04e9938 100644 --- a/packages/cli/src/ui/components/Header.test.tsx +++ b/packages/cli/src/ui/components/Header.test.tsx @@ -8,9 +8,8 @@ import { render } from '../../test-utils/render.js'; import { describe, it, expect, vi, beforeEach, type Mock } from 'vitest'; import { Header } from './Header.js'; import * as useTerminalSize from '../hooks/useTerminalSize.js'; -import { longAsciiLogo, longAsciiLogoIde } from './AsciiArt.js'; +import { longAsciiLogo } from './AsciiArt.js'; import * as semanticColors from '../semantic-colors.js'; -import * as terminalSetup from '../utils/terminalSetup.js'; import { Text } from 'ink'; import type React from 'react'; @@ -18,9 +17,6 @@ vi.mock('../hooks/useTerminalSize.js'); vi.mock('../hooks/useSnowfall.js', () => ({ useSnowfall: vi.fn((art) => art), })); -vi.mock('../utils/terminalSetup.js', () => ({ - getTerminalProgram: vi.fn(), -})); vi.mock('ink-gradient', () => { const MockGradient = ({ children }: { children: React.ReactNode }) => ( <>{children} @@ -41,7 +37,6 @@ vi.mock('ink', async () => { describe('
', () => { beforeEach(() => { vi.clearAllMocks(); - vi.mocked(terminalSetup.getTerminalProgram).mockReturnValue(null); }); it('renders the long logo on a wide terminal', () => { @@ -58,22 +53,6 @@ describe('
', () => { ); }); - it('uses the IDE logo when running in an IDE', () => { - vi.spyOn(useTerminalSize, 'useTerminalSize').mockReturnValue({ - columns: 120, - rows: 20, - }); - vi.mocked(terminalSetup.getTerminalProgram).mockReturnValue('vscode'); - - render(
); - expect(Text).toHaveBeenCalledWith( - expect.objectContaining({ - children: longAsciiLogoIde, - }), - undefined, - ); - }); - it('renders custom ASCII art when provided', () => { const customArt = 'CUSTOM ART'; render( @@ -87,24 +66,13 @@ describe('
', () => { ); }); - it('renders custom ASCII art as is when running in an IDE', () => { - const customArt = 'CUSTOM ART'; - vi.mocked(terminalSetup.getTerminalProgram).mockReturnValue('vscode'); - render( -
, - ); - expect(Text).toHaveBeenCalledWith( - expect.objectContaining({ - children: customArt, - }), - undefined, - ); - }); - it('displays the version number when nightly is true', () => { render(
); const textCalls = (Text as Mock).mock.calls; - expect(textCalls[1][0].children.join('')).toBe('v1.0.0'); + const versionText = Array.isArray(textCalls[1][0].children) + ? textCalls[1][0].children.join('') + : textCalls[1][0].children; + expect(versionText).toBe('v1.0.0'); }); it('does not display the version number when nightly is false', () => { diff --git a/packages/cli/src/ui/components/Header.tsx b/packages/cli/src/ui/components/Header.tsx index 52fd0175c5..2bf260148e 100644 --- a/packages/cli/src/ui/components/Header.tsx +++ b/packages/cli/src/ui/components/Header.tsx @@ -7,17 +7,9 @@ import type React from 'react'; import { Box } from 'ink'; import { ThemedGradient } from './ThemedGradient.js'; -import { - shortAsciiLogo, - longAsciiLogo, - tinyAsciiLogo, - shortAsciiLogoIde, - longAsciiLogoIde, - tinyAsciiLogoIde, -} from './AsciiArt.js'; +import { shortAsciiLogo, longAsciiLogo, tinyAsciiLogo } from './AsciiArt.js'; import { getAsciiArtWidth } from '../utils/textUtils.js'; import { useTerminalSize } from '../hooks/useTerminalSize.js'; -import { getTerminalProgram } from '../utils/terminalSetup.js'; import { useSnowfall } from '../hooks/useSnowfall.js'; interface HeaderProps { @@ -32,7 +24,6 @@ export const Header: React.FC = ({ nightly, }) => { const { columns: terminalWidth } = useTerminalSize(); - const isIde = getTerminalProgram(); let displayTitle; const widthOfLongLogo = getAsciiArtWidth(longAsciiLogo); const widthOfShortLogo = getAsciiArtWidth(shortAsciiLogo); @@ -40,11 +31,11 @@ export const Header: React.FC = ({ if (customAsciiArt) { displayTitle = customAsciiArt; } else if (terminalWidth >= widthOfLongLogo) { - displayTitle = isIde ? longAsciiLogoIde : longAsciiLogo; + displayTitle = longAsciiLogo; } else if (terminalWidth >= widthOfShortLogo) { - displayTitle = isIde ? shortAsciiLogoIde : shortAsciiLogo; + displayTitle = shortAsciiLogo; } else { - displayTitle = isIde ? tinyAsciiLogoIde : tinyAsciiLogo; + displayTitle = tinyAsciiLogo; } const artWidth = getAsciiArtWidth(displayTitle);