import { LucideIcon } from 'lucide-react'; import { Box } from './Box'; import { Icon } from './Icon'; import { Surface } from './Surface'; import { Text } from './Text'; export interface InfoBoxProps { title: string; description: string; icon: LucideIcon; intent?: 'primary' | 'success' | 'warning' | 'critical' | 'telemetry'; variant?: string; // Alias for intent } export const InfoBox = ({ title, description, icon, intent = 'primary', variant }: InfoBoxProps) => { const activeIntent = (variant || intent) as any; const configMap: any = { primary: { bg: 'rgba(25, 140, 255, 0.05)', border: 'rgba(25, 140, 255, 0.2)', }, success: { bg: 'rgba(111, 227, 122, 0.05)', border: 'rgba(111, 227, 122, 0.2)', }, warning: { bg: 'rgba(255, 190, 77, 0.05)', border: 'rgba(255, 190, 77, 0.2)', }, critical: { bg: 'rgba(227, 92, 92, 0.05)', border: 'rgba(227, 92, 92, 0.2)', }, telemetry: { bg: 'rgba(78, 212, 224, 0.05)', border: 'rgba(78, 212, 224, 0.2)', }, }; const config = configMap[activeIntent] || configMap.primary; return ( {title} {description} ); };