'use client';

import { CheckCircle2, XCircle } from 'lucide-react';
import { ICON_SIZE_MD } from '@/components/icons';
import React from 'react';
import { Tag } from 'antd';

export function getProjetoQualidadeTesteStatusTag(status: string) {
    const statusConfig: Record<
        string,
        { color: string; label: string; icon: React.ReactNode }
    > = {
        pendente: { color: 'default', label: 'Pendente', icon: null },
        em_execucao: { color: 'processing', label: 'Em Execução', icon: null },
        passou: { color: 'success', label: 'Passou', icon: <CheckCircle2 /> },
        falhou: { color: 'error', label: 'Falhou', icon: <XCircle /> },
        pulado: { color: 'warning', label: 'Pulado', icon: null },
    };
    const config = statusConfig[status] || { color: 'default', label: status, icon: null };
    return (
        <Tag color={config.color} icon={config.icon}>
            {config.label}
        </Tag>
    );
}

export function getProjetoQualidadeTesteTipoTag(tipo: string) {
    const tipoConfig: Record<string, { color: string; label: string }> = {
        unitario: { color: 'blue', label: 'Unitário' },
        integracao: { color: 'green', label: 'Integração' },
        e2e: { color: 'purple', label: 'E2E' },
        performance: { color: 'orange', label: 'Performance' },
        seguranca: { color: 'red', label: 'Segurança' },
    };
    const config = tipoConfig[tipo] || { color: 'default', label: tipo };
    return <Tag color={config.color}>{config.label}</Tag>;
}
