/* eslint-disable jsx-a11y/anchor-is-valid */ import React, {useEffect, useRef} from 'react' import ApexCharts, {ApexOptions} from 'apexcharts' import {getCSS, getCSSVariableValue} from '../../../assets/ts/_utils' type Props = { className: string } const ChartsWidget2: React.FC = ({className}) => { const chartRef = useRef(null) useEffect(() => { if (!chartRef.current) { return } const height = parseInt(getCSS(chartRef.current, 'height')) const chart = new ApexCharts(chartRef.current, getChartOptions(height)) if (chart) { chart.render() } return () => { if (chart) { chart.destroy() } } }, [chartRef]) return (
{/* begin::Header */}

Recent Orders More than 500 new orders

{/* begin::Toolbar */}
Year Month Week
{/* end::Toolbar */}
{/* end::Header */} {/* begin::Body */}
{/* begin::Chart */}
{/* end::Chart */}
{/* end::Body */}
) } export {ChartsWidget2} function getChartOptions(height: number): ApexOptions { const labelColor = getCSSVariableValue('--bs-gray-500') const borderColor = getCSSVariableValue('--bs-gray-200') const baseColor = getCSSVariableValue('--bs-warning') const secondaryColor = getCSSVariableValue('--bs-gray-300') return { series: [ { name: 'Net Profit', data: [44, 55, 57, 56, 61, 58], }, { name: 'Revenue', data: [76, 85, 101, 98, 87, 105], }, ], chart: { fontFamily: 'inherit', type: 'bar', height: height, toolbar: { show: false, }, }, plotOptions: { bar: { horizontal: false, columnWidth: '30%', borderRadius: 5, }, }, legend: { show: false, }, dataLabels: { enabled: false, }, stroke: { show: true, width: 2, colors: ['transparent'], }, xaxis: { categories: ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'], axisBorder: { show: false, }, axisTicks: { show: false, }, labels: { style: { colors: labelColor, fontSize: '12px', }, }, }, yaxis: { labels: { style: { colors: labelColor, fontSize: '12px', }, }, }, fill: { opacity: 1, }, states: { normal: { filter: { type: 'none', value: 0, }, }, hover: { filter: { type: 'none', value: 0, }, }, active: { allowMultipleDataPointsSelection: false, filter: { type: 'none', value: 0, }, }, }, tooltip: { style: { fontSize: '12px', }, y: { formatter: function (val) { return '$' + val + ' thousands' }, }, }, colors: [baseColor, secondaryColor], grid: { borderColor: borderColor, strokeDashArray: 4, yaxis: { lines: { show: true, }, }, }, } }