@qn-pandora/pandora-visualization
Version:
Pandora 通用可视化库
41 lines (40 loc) • 1.75 kB
TypeScript
import { EColorMode } from '@qn-pandora/pandora-app-component';
import { ELabelType } from '../../../../../constants/chart-style';
import OneDLegend, { IOneDLegend } from '../../components/one-d-legend';
import OneDChartStyleService, { IOneDChartStyle } from '../one-d';
import ILegendChartStyleService from '../legend';
export interface IPieChartStyle extends IOneDChartStyle {
legend: IOneDLegend;
maxSlices: number[];
sectorOffset?: number;
labelTypes: ELabelType[];
colorMode: EColorMode;
tooltipAppendToBody?: boolean;
}
export default abstract class PieBaseStyleService<T extends IPieChartStyle = IPieChartStyle> extends OneDChartStyleService<T> implements ILegendChartStyleService<OneDLegend> {
legend: OneDLegend;
maxSlices: number[];
labelTypes: ELabelType[];
colorMode: EColorMode;
tooltipAppendToBody: boolean;
abstract sectorOffset?: number;
getOptions(): IPieChartStyle;
setMaxSlices(maxSlices: number[]): void;
setSectorOffset(sectorOffset: number): void;
setLabelTypes(labelTypes: ELabelType[]): void;
setColorMode(colorMode: EColorMode): void;
/**
* 批量修改styleOption装饰过的值
* WARNING: 在父级类中使用请注意,此赋值方法也会识别到子类中styleOption装饰的
* @param obj 赋值操作的map映射
* @param allowNil 对obj中的nil值是否进行赋值操作
*/
set(obj: Partial<T>, allowNil?: boolean): void;
/**
* 单独修改某个styleOption装饰过的值
* @param key 被装饰过的值的名称,如果名称不存在,或者未被装饰则函数调用无效
* @param value 值
*/
set<K extends keyof T>(key: K, value: T[K]): void;
constructor(chart: T);
}