const steps = [ { id: 'read', label: 'Reading from cloud storage' }, { id: 'parse', label: 'Parsing with Docling' }, { id: 'chunk', label: 'Chunking in your browser' }, { id: 'clear', label: 'Clearing old index data' }, { id: 'embed', label: 'Generating embeddings' }, { id: 'discard', label: 'Text discarded (never stored)' }, { id: 'save', label: 'Embeddings + file positions saved' }, ]; export default function ProcessingStatus({ currentStep, fileName, progress }) { const getStepStatus = (stepId) => { const stepIndex = steps.findIndex(s => s.id === stepId); const currentIndex = steps.findIndex(s => s.id === currentStep); if (stepIndex < currentIndex) return 'completed'; if (stepIndex === currentIndex) return 'active'; return 'pending'; }; return (
Indexing: {fileName}
{steps.map((step) => { const status = getStepStatus(step.id); return (
{status === 'completed' && (
)} {status === 'active' && (
)} {status === 'pending' && (
)} {step.label}
); })}
{progress !== undefined && (
)}
); }