Files
CHIEFSOFT\ameye 5f95d857d4 first commit
2023-10-14 22:02:57 -04:00

142 lines
3.5 KiB
JavaScript

import React, { Component } from "react";
import { Box, Typography } from "@mui/material";
import ArrowDownwardIcon from "@mui/icons-material/ArrowDownward";
import ArrowUpwardIcon from "@mui/icons-material/ArrowUpward";
import dynamic from "next/dynamic";
const Chart = dynamic(() => import("react-apexcharts"), {
ssr: false,
});
class TasksPerformanceChart extends Component {
constructor(props) {
super(props);
this.state = {
series: [76, 67, 61, 90],
options: {
plotOptions: {
radialBar: {
offsetY: 0,
startAngle: 0,
endAngle: 270,
hollow: {
margin: 5,
size: "25%",
background: "transparent",
image: undefined,
},
dataLabels: {
name: {
show: false,
},
value: {
show: false,
},
},
},
},
colors: ["#757FEF", "#9EA5F4", "#C8CCF9", "#F1F2FD"],
labels: ["Completed", "Active", "Assigned", "Pending"],
legend: {
show: true,
floating: true,
fontSize: "13px",
position: "left",
offsetY: 0,
labels: {
color: "#5B5B98"
},
markers: {
size: 0,
},
formatter: function (seriesName, opts) {
return seriesName + ": " + opts.w.globals.series[opts.seriesIndex];
},
itemMargin: {
vertical: 3,
},
},
responsive: [
{
breakpoint: 480,
options: {
chart: {
height: 280
},
legend: {
show: false,
},
},
},
],
fill: {
opacity: 1,
},
},
};
}
render() {
return (
<>
<Chart
options={this.state.options}
series={this.state.series}
type="radialBar"
height={300}
/>
<Box
sx={{
display: "flex",
alignItems: "center",
justifyContent: "space-around",
textAlign: "center",
mt: "22px",
}}
>
<Box>
<Typography color="#A9A9C8" mb={1} fontSize="14px">
Target
</Typography>
<Typography fontWeight="500" fontSize="18px" as="h4">
<ArrowDownwardIcon
color="danger"
style={{ position: "relative", top: "3px" }}
/>{" "}
30k
</Typography>
</Box>
<Box>
<Typography color="#A9A9C8" mb={1} fontSize="14px">
Last Week
</Typography>
<Typography fontWeight="500" fontSize="18px" as="h4">
<ArrowUpwardIcon
color="success"
style={{ position: "relative", top: "3px" }}
/>{" "}
40k
</Typography>
</Box>
<Box>
<Typography color="#A9A9C8" mb={1} fontSize="14px">
Last Month
</Typography>
<Typography fontWeight="500" fontSize="18px" as="h4">
<ArrowUpwardIcon
color="success"
style={{ position: "relative", top: "3px" }}
/>{" "}
60k
</Typography>
</Box>
</Box>
</>
);
}
}
export default TasksPerformanceChart;