import React from 'react';
import map from 'lodash/map';
import {
AreaChartOutlined,
LineChartOutlined,
TableOutlined,
BarChartOutlined,
PieChartOutlined,
} from "@ant-design/icons";
const AnalysisCharts = [
['line', '趋势图', LineChartOutlined],
['table', '数据表', TableOutlined],
['stack', '堆积图', AreaChartOutlined],
['lineSum', '累计图', LineChartOutlined],
['bar', '柱状分布图', BarChartOutlined],
['pie', '饼状分布图', PieChartOutlined],
] as const;
export interface ChartOption {
value: typeof AnalysisCharts[number][0];
label: typeof AnalysisCharts[number][1];
icon: React.ReactNode;
}
const generator = (ls: typeof AnalysisCharts): ChartOption[] =>
map(ls, ([value, label, Icon]): ChartOption => (
{
value,
label,
icon: <Icon />,
}
));
export const chartOption = generator(AnalysisCharts);