'use client' // Next Imports import dynamic from 'next/dynamic' import { useTranslations } from 'next-intl' // MUI Imports import Card from '@mui/material/Card' import CardHeader from '@mui/material/CardHeader' import CardContent from '@mui/material/CardContent' import { useTheme } from '@mui/material/styles' // Third Party Imports import type { ApexOptions } from 'apexcharts' // Component Imports import OptionMenu from '@core/components/option-menu' // Styled Component Imports const AppReactApexCharts = dynamic(() => import('@/libs/styles/AppReactApexCharts')) interface SensorRadarChartProps { data?: Record } const SensorRadarChart = ({ data }: SensorRadarChartProps) => { const t = useTranslations('farmDashboard') const series = (data?.series as Array<{ name: string; data: number[] }>) ?? [] const labels = (data?.labels as string[]) ?? [] const theme = useTheme() const textDisabled = 'var(--mui-palette-text-disabled)' const divider = 'var(--mui-palette-divider)' if (series.length === 0) return null const options: ApexOptions = { chart: { parentHeightOffset: 0, toolbar: { show: false } }, colors: ['var(--mui-palette-primary-main)', 'var(--mui-palette-success-main)'], plotOptions: { radar: { polygons: { connectorColors: divider, strokeColors: divider } } }, stroke: { width: 0 }, fill: { opacity: [1, 0.5] }, labels, markers: { size: 0 }, legend: { fontSize: '13px', labels: { colors: 'var(--mui-palette-text-secondary)' }, markers: { offsetY: -1, offsetX: theme.direction === 'rtl' ? 7 : -4 }, itemMargin: { horizontal: 9 } }, grid: { show: false }, xaxis: { labels: { show: true, style: { fontSize: '13px', colors: Array(labels.length || 6).fill(textDisabled) } } }, yaxis: { show: false } } return ( } /> ) } export default SensorRadarChart