import React from 'react'; import { motion } from 'framer-motion'; import { Check, Package, Upload, BarChart3 } from 'lucide-react'; import clsx from 'clsx'; interface Step { id: number; label: string; icon: React.ElementType; } interface ProgressStepperProps { currentStep: number; } const steps: Step[] = [ { id: 1, label: 'Seleccionar Tier', icon: Package }, { id: 2, label: 'Subir Datos', icon: Upload }, { id: 3, label: 'Ver Resultados', icon: BarChart3 }, ]; const ProgressStepper: React.FC = ({ currentStep }) => { return (
{steps.map((step, index) => { const Icon = step.icon; const isCompleted = currentStep > step.id; const isCurrent = currentStep === step.id; const isUpcoming = currentStep < step.id; return ( {/* Step Circle */}
{isCompleted ? ( ) : ( )} {/* Step Label */} {step.label}
{/* Connector Line */} {index < steps.length - 1 && (
step.id ? '100%' : '0%', }} transition={{ duration: 0.5, delay: index * 0.1 }} />
)}
); })}
); }; export default ProgressStepper;