import React, { useEffect, useState } from 'react'; interface Props { percentage: number; radius?: number; progressColor?: string; bgColor?: string; label?: string; } function CircleProgress({ percentage = 0, radius = 18, progressColor = '#394eff', bgColor = '#9fa8da', label = '', }: Props) { const [offset, setOffset] = useState(0); useEffect(() => { const progress = percentage / 100; const _radius = radius * 0.8; const circumference = 2 * Math.PI * _radius; const offsetValue = circumference * (1 - progress); setOffset(offsetValue); }, [percentage, radius]); const strokeWidth = radius * 0.3; const _radius = radius * 0.8; const circumference = 2 * Math.PI * _radius; const dashOffset = circumference * (1 - percentage / 100); const circleStyle = { transition: 'stroke-dashoffset 1s ease-in-out', }; return ( {label} ); } export default CircleProgress;