/** * Pipeline Status Component * Отображает прогресс обработки pipeline */ import { cn } from "@/lib/utils" import type { PipelineProgress } from "../../shared/types" import { ProcessingStatus } from "../../shared/types" interface PipelineStatusProps { progress: PipelineProgress | null className?: string } export function PipelineStatus({ progress, className }: PipelineStatusProps) { if (!progress) return null const getStatusColor = (status: ProcessingStatus) => { switch (status) { case ProcessingStatus.COMPLETED: return "bg-green-500" case ProcessingStatus.RUNNING: return "bg-blue-500" case ProcessingStatus.FAILED: return "bg-red-500" case ProcessingStatus.SKIPPED: return "bg-gray-400" default: return "bg-gray-300" } } const getStatusIcon = (status: ProcessingStatus) => { switch (status) { case ProcessingStatus.COMPLETED: return "✓" case ProcessingStatus.RUNNING: return "⟳" case ProcessingStatus.FAILED: return "✗" case ProcessingStatus.SKIPPED: return "⊘" default: return "○" } } return (