mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	feat: coloring of health chart (#8731)
1. Now properly color the chart based on 0-25,25-75,75-100 thresholds. 2. Fix spacing 3. Fix wrong svg implementation 
This commit is contained in:
		
							parent
							
								
									b87c47d7c4
								
							
						
					
					
						commit
						b6f573c6b9
					
				| @ -10,7 +10,6 @@ const HealthContainer = styled('div')(({ theme }) => ({ | |||||||
|     padding: theme.spacing(3), |     padding: theme.spacing(3), | ||||||
|     borderRadius: theme.shape.borderRadiusExtraLarge, |     borderRadius: theme.shape.borderRadiusExtraLarge, | ||||||
|     minWidth: '300px', |     minWidth: '300px', | ||||||
|     fontSize: theme.spacing(1.75), |  | ||||||
| })); | })); | ||||||
| 
 | 
 | ||||||
| const ChartRow = styled('div')(({ theme }) => ({ | const ChartRow = styled('div')(({ theme }) => ({ | ||||||
| @ -25,6 +24,7 @@ const StyledSVG = styled('svg')({ | |||||||
| 
 | 
 | ||||||
| const DescriptionText = styled(Typography)(({ theme }) => ({ | const DescriptionText = styled(Typography)(({ theme }) => ({ | ||||||
|     color: theme.palette.text.secondary, |     color: theme.palette.text.secondary, | ||||||
|  |     marginBottom: theme.spacing(2), | ||||||
| })); | })); | ||||||
| 
 | 
 | ||||||
| export const ProjectHealth = () => { | export const ProjectHealth = () => { | ||||||
| @ -43,10 +43,17 @@ export const ProjectHealth = () => { | |||||||
|     const offset = 0.75 - gapLength / 2; |     const offset = 0.75 - gapLength / 2; | ||||||
|     const healthLength = (averageHealth / 100) * circumference * 0.7; |     const healthLength = (averageHealth / 100) * circumference * 0.7; | ||||||
| 
 | 
 | ||||||
|  |     const healthColor = | ||||||
|  |         averageHealth >= 0 && averageHealth <= 24 | ||||||
|  |             ? theme.palette.error.main | ||||||
|  |             : averageHealth >= 25 && averageHealth <= 74 | ||||||
|  |               ? theme.palette.warning.border | ||||||
|  |               : theme.palette.success.border; | ||||||
|  | 
 | ||||||
|     return ( |     return ( | ||||||
|         <HealthContainer> |         <HealthContainer> | ||||||
|             <ChartRow> |             <ChartRow> | ||||||
|                 <StyledSVG viewBox='0 0 100'> |                 <StyledSVG viewBox='0 0 100 100'> | ||||||
|                     <circle |                     <circle | ||||||
|                         cx='50' |                         cx='50' | ||||||
|                         cy='50' |                         cy='50' | ||||||
| @ -62,7 +69,7 @@ export const ProjectHealth = () => { | |||||||
|                         cy='50' |                         cy='50' | ||||||
|                         r={radius} |                         r={radius} | ||||||
|                         fill='none' |                         fill='none' | ||||||
|                         stroke={theme.palette.warning.border} |                         stroke={healthColor} | ||||||
|                         strokeWidth={strokeWidth} |                         strokeWidth={strokeWidth} | ||||||
|                         strokeDasharray={`${healthLength} ${circumference - healthLength}`} |                         strokeDasharray={`${healthLength} ${circumference - healthLength}`} | ||||||
|                         strokeDashoffset={offset * circumference} |                         strokeDashoffset={offset * circumference} | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user