import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { Box, Text } from "ink";
const wordmark = [
    "██████╗  █████╗ ████████╗ ██████╗██╗  ██╗██████╗ ██╗██╗      ██████╗ ████████╗",
    "██╔══██╗██╔══██╗╚══██╔══╝██╔════╝██║  ██║██╔══██╗██║██║     ██╔═══██╗╚══██╔══╝",
    "██████╔╝███████║   ██║   ██║     ███████║██████╔╝██║██║     ██║   ██║   ██║",
    "██╔═══╝ ██╔══██║   ██║   ██║     ██╔══██║██╔═══╝ ██║██║     ██║   ██║   ██║",
    "██║     ██║  ██║   ██║   ╚██████╗██║  ██║██║     ██║███████╗╚██████╔╝   ██║",
    "╚═╝     ╚═╝  ╚═╝   ╚═╝    ╚═════╝╚═╝  ╚═╝╚═╝     ╚═╝╚══════╝ ╚═════╝    ╚═╝",
];
const wordmarkWidth = Math.max(...wordmark.map((line) => line.length));
// Small robot + wrench, kept compact so it clips gracefully on narrow terminals.
const robot = [
    "  ╭───────╮",
    "  │ ◠   ◠ │  ⚡",
    "  │   ▿   │ ╱",
    "  ╰──┬─┬──╯╱",
    "  ┌──┴─┴──┐",
];
/**
 * Claude-Code-style welcome banner for the experimental shell. Renders the
 * full PATCHPILOT wordmark when there is room, and degrades responsively to a
 * compact heading on narrow terminals instead of forcing a clipped block.
 */
export function ExperimentalBanner(props) {
    const showWordmark = props.width >= wordmarkWidth + 2 && props.height >= 12;
    const showRobot = props.width >= wordmarkWidth + 16 && props.height >= 14;
    if (!showWordmark) {
        return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsxs(Text, { color: "cyan", bold: true, children: ["\u25B8 PatchPilot ", _jsx(Text, { color: "gray", children: "\u2014 experimental shell" })] }), _jsx(Text, { color: "gray", children: "Local-first coding agent. Visible tools, explicit permissions." }), _jsx(Text, { color: "gray", children: "Type a task, or press / for the command palette." })] }));
    }
    return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { flexDirection: "column", children: wordmark.map((line, index) => (_jsx(Text, { color: "cyan", bold: true, children: line }, `wm-${index}`))) }), showRobot ? (_jsx(Box, { flexDirection: "column", marginLeft: 2, children: robot.map((line, index) => (_jsx(Text, { color: index === 1 ? "cyan" : "gray", children: line }, `bot-${index}`))) })) : null] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: "white", bold: true, children: "Welcome to the experimental shell." }), _jsx(Text, { color: "gray", children: "Local-first coding agent \u2014 every read, write, command, and model route stays visible." }), _jsxs(Text, { color: "gray", children: [_jsx(Text, { color: "cyan", children: "/" }), " command palette ", _jsx(Text, { color: "gray", children: "\u00B7" }), " ", _jsx(Text, { color: "cyan", children: "tab" }), " plan / build / bypass ", _jsx(Text, { color: "gray", children: "\u00B7" }), " ", _jsx(Text, { color: "cyan", children: "/help" }), " for everything"] })] })] }));
}
//# sourceMappingURL=Banner.js.map