import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
import { ToolCard } from './tool-card.js';
const installedIdeTool = {
    id: 'cursor',
    name: 'Cursor',
    summary: 'AI-powered code editor built on VS Code',
    description: 'Cursor is an AI-first code editor that lets you write, edit, and chat about your code. It is built on top of VS Code and integrates deeply with AI models to accelerate development workflows.',
    tags: ['ide'],
    iconUrl: 'https://cdn.simpleicons.org/cursor',
    autoInstall: false,
    required: false,
    openDirectory: '/usr/bin/cursor',
    documentationUrl: 'https://cursor.sh',
    installCommand: 'brew install --cask cursor',
    status: { status: 'available', toolName: 'cursor' },
    author: 'Anysphere',
    website: 'https://cursor.com',
    platforms: ['linux', 'darwin', 'win32'],
};
const installedNoLaunchTool = {
    id: 'claude-code',
    name: 'Claude Code',
    summary: 'Anthropic AI coding agent for the terminal',
    description: 'Claude Code is an agentic coding tool by Anthropic that lives in your terminal. It understands your codebase and helps you ship features, fix bugs, and review changes.',
    tags: ['cli-agent'],
    iconUrl: 'https://cdn.simpleicons.org/claude',
    autoInstall: true,
    required: false,
    openDirectory: undefined,
    documentationUrl: 'https://claude.ai',
    installCommand: 'npm install -g @anthropic-ai/claude-code',
    status: { status: 'available', toolName: 'claude-code' },
    author: 'Anthropic',
    website: 'https://claude.ai/code',
    platforms: ['linux', 'darwin'],
};
const missingAutoInstallTool = {
    id: 'aider',
    name: 'Aider',
    summary: 'AI pair programming in your terminal',
    description: 'Aider lets you pair program with AI in your terminal. Aider works best with Claude 3.5 Sonnet and can make coordinated changes across multiple files.',
    tags: ['cli-agent'],
    iconUrl: undefined,
    autoInstall: true,
    required: false,
    openDirectory: undefined,
    documentationUrl: 'https://aider.chat',
    installCommand: 'pip install aider-chat',
    status: { status: 'missing', toolName: 'aider' },
    author: 'Paul Gauthier',
    website: 'https://aider.chat',
    platforms: ['linux', 'darwin', 'win32'],
};
const missingManualTool = {
    id: 'vscode',
    name: 'VS Code',
    summary: 'Lightweight but powerful source code editor',
    description: 'Visual Studio Code is a lightweight but powerful source code editor from Microsoft.',
    tags: ['ide'],
    iconUrl: 'https://cdn.jsdelivr.net/gh/devicons/devicon/icons/vscode/vscode-original.svg',
    autoInstall: false,
    required: false,
    openDirectory: '/usr/bin/code',
    documentationUrl: 'https://code.visualstudio.com',
    installCommand: 'brew install --cask visual-studio-code',
    status: { status: 'missing', toolName: 'vscode' },
    author: 'Microsoft',
    website: 'https://code.visualstudio.com',
    platforms: ['linux', 'darwin', 'win32'],
};
const cliAgentTool = {
    id: 'cursor-cli',
    name: 'Cursor CLI',
    summary: 'AI-powered terminal coding agent',
    description: 'Cursor CLI is a terminal-based AI coding agent that brings conversational AI assistance directly to your command line.',
    tags: ['cli-agent'],
    iconUrl: 'https://cdn.simpleicons.org/cursor',
    autoInstall: true,
    required: false,
    openDirectory: undefined,
    documentationUrl: 'https://cursor.sh',
    installCommand: 'curl https://cursor.com/install -fsS | bash',
    status: { status: 'available', toolName: 'cursor-cli' },
    author: 'Anysphere',
    website: 'https://cursor.com',
    platforms: ['linux', 'darwin', 'win32'],
};
const vcsTool = {
    id: 'gh',
    name: 'GitHub CLI',
    summary: "GitHub's official command-line tool",
    description: 'GitHub CLI brings GitHub to your terminal. Manage pull requests, issues, repositories, workflows, and more.',
    tags: ['vcs'],
    iconUrl: 'https://cdn.simpleicons.org/github',
    autoInstall: true,
    required: true,
    openDirectory: undefined,
    documentationUrl: 'https://cli.github.com/manual/',
    installCommand: 'brew install gh',
    status: { status: 'available', toolName: 'gh' },
    author: 'GitHub',
    website: 'https://cli.github.com',
    platforms: ['linux', 'darwin', 'win32'],
};
const meta = {
    title: 'Features/ToolCard',
    component: ToolCard,
    parameters: {
        layout: 'padded',
    },
    tags: ['autodocs'],
    decorators: [
        (Story) => (_jsx("div", { className: "w-64", children: _jsx(Story, {}) })),
    ],
};
export default meta;
export const Default = {
    args: { tool: installedIdeTool },
};
export const InstalledWithLaunch = {
    args: { tool: installedIdeTool, onRefresh: async () => undefined },
};
export const InstalledNoLaunch = {
    args: { tool: installedNoLaunchTool },
};
export const MissingAutoInstall = {
    args: { tool: missingAutoInstallTool, onRefresh: async () => undefined },
};
export const MissingManualInstall = {
    args: { tool: missingManualTool },
};
export const ErrorStatus = {
    args: {
        tool: {
            ...missingAutoInstallTool,
            status: { status: 'error', toolName: 'aider', errorMessage: 'Binary check failed' },
        },
    },
};
export const CliAgent = {
    args: { tool: cliAgentTool },
};
export const VcsTool = {
    args: { tool: vcsTool },
};
export const AllStates = {
    decorators: [
        (Story) => (_jsx("div", { className: "grid grid-cols-3 gap-3", children: _jsx(Story, {}) })),
    ],
    render: () => (_jsxs(_Fragment, { children: [_jsx(ToolCard, { tool: installedIdeTool }), _jsx(ToolCard, { tool: installedNoLaunchTool }), _jsx(ToolCard, { tool: missingAutoInstallTool }), _jsx(ToolCard, { tool: missingManualTool }), _jsx(ToolCard, { tool: {
                    ...missingAutoInstallTool,
                    status: { status: 'error', toolName: 'aider', errorMessage: 'Binary check failed' },
                } }), _jsx(ToolCard, { tool: cliAgentTool }), _jsx(ToolCard, { tool: vcsTool })] })),
};
