- 4개 검사 엔진: HTML/CSS, 접근성(WCAG), SEO, 성능/보안 (총 50개 항목) - FastAPI 백엔드 (9개 API, SSE 실시간 진행, PDF/JSON 리포트) - Next.js 15 프론트엔드 (6개 페이지, 29개 컴포넌트, 반원 게이지 차트) - Docker Compose 배포 (Backend:8011, Frontend:3011, MongoDB:27022, Redis:6392) - 전체 테스트 32/32 PASS Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
33 lines
806 B
TypeScript
33 lines
806 B
TypeScript
"use client";
|
|
|
|
import { Progress } from "@/components/ui/progress";
|
|
|
|
interface OverallProgressBarProps {
|
|
progress: number;
|
|
}
|
|
|
|
/** 전체 진행률 바 */
|
|
export function OverallProgressBar({ progress }: OverallProgressBarProps) {
|
|
return (
|
|
<div className="space-y-2">
|
|
<div className="flex items-center justify-between">
|
|
<span className="text-sm font-medium text-muted-foreground">
|
|
전체 진행률
|
|
</span>
|
|
<span className="text-sm font-bold">{Math.round(progress)}%</span>
|
|
</div>
|
|
<Progress
|
|
value={progress}
|
|
className="h-3"
|
|
indicatorClassName={
|
|
progress >= 100
|
|
? "bg-green-500"
|
|
: progress > 0
|
|
? "bg-blue-500"
|
|
: "bg-gray-300"
|
|
}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|