import { type ModelStatus } from '@/store/useTrainingStore'; interface StatusBarProps { status: ModelStatus; } export function StatusBar({ status }: StatusBarProps) { const steps = [ { title: 'Identity', status: 'seed_identity', icon: '🌱' }, { title: 'Memory Upload', status: 'memory_upload', icon: '📝' }, { title: 'Training', status: 'training', icon: '⚡' }, { title: 'Trained', status: 'trained', icon: '✓' } ] as const; const getStepState = (stepStatus: (typeof steps)[number]['status']) => { const statusOrder = ['seed_identity', 'memory_upload', 'training', 'trained']; const currentIndex = statusOrder.indexOf(status); const stepIndex = statusOrder.indexOf(stepStatus); // If current status is trained, all previous steps should be completed if (status === 'trained') { return { isActive: stepStatus === 'trained', isCompleted: stepStatus !== 'trained' }; } // If current status is training, previous steps should be completed if ( status === 'training' && (stepStatus === 'seed_identity' || stepStatus === 'memory_upload') ) { return { isActive: false, isCompleted: true }; } return { isActive: stepStatus === status, isCompleted: currentIndex > stepIndex }; }; return (