import { getLightColor, getLightCrosshairLine, getLightCrosshairRect, getLightLabel, getLightLegend, getLightPivotChartGridConfig, getLightTableConfig } from "../common/index.js";
import { getLightTooltip } from "../common/tooltip.js";
import { getLightBandAxis, getLightLinearAxis } from "../common/axes.js";
import { getLightAnnotation } from "../common/annotaion.js";
import { getLightFunnelTransformTheme } from "../common/funnelTransform.js";
import { getLightHeatmapCellTheme } from "../common/heatmapCell.js";
import { getLightRegressionLine } from "../common/regressionLine.js";
const lightTheme = ()=>{
    const linearAxis = getLightLinearAxis();
    const bandAxis = getLightBandAxis();
    const barBandAxis = {
        ...bandAxis,
        labelAutoHide: false,
        labelAutoHideGap: 1,
        labelAutoLimit: false,
        labelAutoLimitLength: void 0,
        labelAutoRotate: false,
        labelAutoRotateAngleRange: [
            0,
            -45,
            -90
        ]
    };
    const crosshairLine = getLightCrosshairLine();
    const crosshairRect = getLightCrosshairRect();
    const baseConfig = {
        backgroundColor: 'transparent',
        color: getLightColor(),
        label: getLightLabel(),
        legend: getLightLegend(),
        tooltip: getLightTooltip()
    };
    const tableConfig = getLightTableConfig();
    return {
        config: {
            table: tableConfig,
            pivotTable: tableConfig,
            line: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: linearAxis,
                crosshairLine,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            column: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: linearAxis,
                crosshairRect,
                stackCornerRadius: [
                    4,
                    4,
                    0,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation(),
                regressionLine: getLightRegressionLine()
            },
            columnParallel: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: linearAxis,
                crosshairRect,
                stackCornerRadius: [
                    4,
                    4,
                    0,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            columnPercent: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: {
                    ...linearAxis
                },
                crosshairRect,
                stackCornerRadius: [
                    4,
                    4,
                    0,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            bar: {
                ...baseConfig,
                xAxis: linearAxis,
                yAxis: barBandAxis,
                crosshairRect,
                stackCornerRadius: [
                    0,
                    4,
                    4,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            barParallel: {
                ...baseConfig,
                xAxis: linearAxis,
                yAxis: barBandAxis,
                crosshairRect,
                stackCornerRadius: [
                    0,
                    4,
                    4,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            barPercent: {
                ...baseConfig,
                xAxis: {
                    ...linearAxis
                },
                yAxis: barBandAxis,
                crosshairRect,
                stackCornerRadius: [
                    0,
                    4,
                    4,
                    0
                ],
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            area: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: linearAxis,
                crosshairLine,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            areaPercent: {
                ...baseConfig,
                xAxis: bandAxis,
                yAxis: {
                    ...linearAxis
                },
                crosshairLine,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            scatter: {
                ...baseConfig,
                crosshairLine,
                sizeRange: [
                    8,
                    24
                ],
                xAxis: {
                    ...linearAxis,
                    line: {
                        ...linearAxis.line,
                        visible: true
                    }
                },
                yAxis: {
                    ...linearAxis,
                    line: {
                        ...linearAxis.line,
                        visible: true
                    }
                },
                label: {
                    ...baseConfig.label,
                    showValue: false,
                    showValuePercent: false
                },
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation(),
                regressionLine: getLightRegressionLine()
            },
            dualAxis: {
                ...baseConfig,
                xAxis: bandAxis,
                primaryYAxis: linearAxis,
                secondaryYAxis: {
                    ...linearAxis,
                    grid: {
                        visible: false
                    }
                },
                dualChartType: {
                    primary: 'column',
                    secondary: 'line'
                },
                crosshairRect,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            },
            pie: {
                ...baseConfig,
                label: {
                    ...baseConfig.label,
                    showValuePercent: true,
                    labelLayout: 'arc',
                    showDimension: true
                },
                pivotGrid: getLightPivotChartGridConfig()
            },
            donut: {
                ...baseConfig,
                label: {
                    ...baseConfig.label,
                    showValuePercent: true,
                    labelLayout: 'arc',
                    showDimension: true
                },
                pivotGrid: getLightPivotChartGridConfig()
            },
            radar: {
                ...baseConfig,
                pivotGrid: getLightPivotChartGridConfig()
            },
            rose: {
                ...baseConfig,
                label: {
                    ...baseConfig.label,
                    showValuePercent: true,
                    showDimension: true
                },
                pivotGrid: getLightPivotChartGridConfig()
            },
            roseParallel: {
                ...baseConfig,
                label: {
                    ...baseConfig.label,
                    showValuePercent: true,
                    showDimension: true
                },
                pivotGrid: getLightPivotChartGridConfig()
            },
            funnel: {
                ...baseConfig,
                transform: getLightFunnelTransformTheme(),
                pivotGrid: getLightPivotChartGridConfig()
            },
            heatmap: {
                ...baseConfig,
                label: {
                    ...baseConfig.label,
                    labelColorSmartInvert: true
                },
                cell: getLightHeatmapCellTheme(),
                pivotGrid: getLightPivotChartGridConfig()
            },
            histogram: {
                ...baseConfig,
                xAxis: linearAxis,
                yAxis: linearAxis,
                crosshairRect,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation(),
                regressionLine: getLightRegressionLine()
            },
            boxPlot: {
                ...baseConfig,
                xAxis: linearAxis,
                yAxis: linearAxis,
                crosshairRect,
                pivotGrid: getLightPivotChartGridConfig(),
                annotation: getLightAnnotation()
            }
        }
    };
};
export { lightTheme };

//# sourceMappingURL=light.js.map