import { ArcElement, CategoryScale, Chart as ChartJS, Legend, Title, Tooltip } from 'chart.js' import { defineComponent } from 'vue' import { Doughnut } from 'vue-chartjs' ChartJS.register(Title, Tooltip, Legend, ArcElement, CategoryScale) export default defineComponent({ name: 'DoughnutChart', props: { chartId: { type: String, default: 'doughnut-chart', }, width: { type: Number, default: 400, }, height: { type: Number, default: 400, }, cssClasses: { default: '', type: String, }, styles: { type: Object, default: () => ({}), }, plugins: { type: Array, default: () => [], }, chartData: { type: Object, default: () => ({}), }, chartOptions: { type: Object, default: () => ({}), }, }, setup(props) { return () => h(h(Doughnut), { data: props.chartData, options: props.chartOptions, chartId: props.chartId, width: props.width, height: props.height, cssClasses: props.cssClasses, styles: props.styles, plugins: props.plugins, }) }, })