generated from nhcarrigan/template
20 lines
530 B
TypeScript
20 lines
530 B
TypeScript
interface ProgressBarProps {
|
|
progress: number; // 0-100
|
|
label?: string;
|
|
}
|
|
|
|
export function ProgressBar({ progress, label }: ProgressBarProps) {
|
|
return (
|
|
<div className="progress-container">
|
|
{label && <div className="progress-label">{label}</div>}
|
|
<div className="progress-bar">
|
|
<div
|
|
className="progress-fill"
|
|
style={{ width: `${Math.min(100, Math.max(0, progress))}%` }}
|
|
/>
|
|
</div>
|
|
<div className="progress-text">{Math.round(progress)}%</div>
|
|
</div>
|
|
);
|
|
}
|