import React from 'react'; import { CheckCircle2, AlertTriangle, XCircle, Clock, Radio, ShieldAlert, Smartphone, Server, Zap, } from 'lucide-react'; export type StatusBadgeVariant = | 'active' | 'trial' | 'grace' | 'suspended' | 'closed' | 'normal' | 'overdue' | 'expiring_7d' | 'expiring_30d' | 'healthy' | 'degraded' | 'warning' | 'critical' | 'offline' | 'unknown' | 'supported' | 'outdated' | 'blocked' | 'revoked' | 'pilot' | 'draft' | 'percentage' | 'general_availability' | 'paused' | 'rolled_back' | 'open' | 'mitigating' | 'resolved'; interface StatusBadgeProps { status: StatusBadgeVariant; customLabel?: string; size?: 'sm' | 'md'; } interface BadgeConfig { label: string; className: string; icon: React.ReactNode; } export const StatusBadge: React.FC = ({ status, customLabel, size = 'md' }) => { const isSmall = size === 'sm'; const iconSize = isSmall ? 'w-3 h-3' : 'w-3.5 h-3.5'; const configs: Record = { // Platform & tenant active: { label: 'Активна', className: 'bg-emerald-950/80 text-emerald-400 border-emerald-700/50', icon: