Fix organization setup flow: redirect to onboarding for incomplete setup
This commit is contained in:
24
components/ui/Progress.tsx
Normal file
24
components/ui/Progress.tsx
Normal file
@@ -0,0 +1,24 @@
|
||||
import React from 'react';
|
||||
|
||||
export const LinearProgress: React.FC<{ value: number; className?: string; }> = ({ value, className }) => (
|
||||
<div className={`w-full h-2 rounded-full bg-[--background-tertiary] overflow-hidden ${className || ''}`}>
|
||||
<div className="h-full bg-blue-500 transition-all" style={{ width: `${Math.min(100, Math.max(0, value))}%` }} />
|
||||
</div>
|
||||
);
|
||||
|
||||
export interface StepProgressProps { current: number; total: number; labels?: string[]; }
|
||||
export const StepProgress: React.FC<StepProgressProps> = ({ current, total, labels }) => (
|
||||
<div>
|
||||
<div className="flex justify-between mb-2">
|
||||
{Array.from({ length: total }).map((_, i) => (
|
||||
<div key={i} className="flex-1 flex flex-col items-center">
|
||||
<div className={`w-8 h-8 rounded-full flex items-center justify-center text-xs font-semibold mb-1 ${i <= current ? 'bg-blue-500 text-white' : 'bg-[--background-tertiary] text-[--text-secondary]'}`}>{i + 1}</div>
|
||||
{labels && labels[i] && <span className="text-[10px] text-center px-1 text-[--text-secondary] truncate max-w-[72px]">{labels[i]}</span>}
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
<LinearProgress value={((current + 1) / total) * 100} />
|
||||
</div>
|
||||
);
|
||||
|
||||
export default { LinearProgress, StepProgress };
|
||||
Reference in New Issue
Block a user