UNPKG

@qn-pandora/pandora-visualization

Version:

Pandora 通用可视化库

64 lines (63 loc) 3.19 kB
/// <reference types="lodash" /> import { IChartDataset } from '@qn-pandora/app-sdk'; import Store from '../../../stores/store'; import { IChartContainerService } from '../../../services/chart-container'; import ChartStyleService from '../../../base-pandora-visualization/services/chart-style/charts/base'; import { IAnalysisService } from '../../../base-pandora-visualization/services'; import { ISearchConditionService } from '../../../services'; import { EThemeTypes, TThemeOption } from '../../../constants'; import { DrillDownType } from '../../../constants/drill-down'; import { IClickPosition } from '../../../constants/common-action'; import { ChartDrillDownService } from '../../../services/chart-drill-down'; import { ChartCommonActionService } from '../../../services/chart-common-action'; import ChartActionService from '../../../services/chart-action'; import { IBaseAnalysisChartsProps } from '../constants/model'; export interface IOnEvents extends IKeyValues<(e: any) => void> { } /** * 所有图表的基础Store */ export default abstract class BaseChartStore<T extends ChartStyleService = ChartStyleService> extends Store { abstract chartDataset: IChartDataset; onEvents: IOnEvents; echartInst: any; chartWidth: number; chartHeight: number; chartStyleService: T; chartContainerService: IChartContainerService; position: IClickPosition; getProps: () => IBaseAnalysisChartsProps; searchConditionService: ISearchConditionService; analysisServices: IAnalysisService; chartActionService?: ChartActionService; private chartConditionService; private _canvasCtx; debounceHandleClient: import("lodash").DebouncedFunc<(client: any) => void>; onBrushAction?: (params: any) => void; onLegendSelectChangedAction?: (params: any) => void; get isLowPerfDevice(): boolean; get actionEnable(): boolean | undefined; get drillDownType(): DrillDownType | undefined; get searchTime(): import("../../../services").ITimeRange; get dataset(): IChartDataset; get originDataset(): IChartDataset; get fields(): import("@qn-pandora/app-sdk").IChartField[]; get rows(): import("@qn-pandora/app-sdk").TChartFieldDataItem[][]; get hasData(): number; get theme(): EThemeTypes; get themeOption(): TThemeOption; get chartCanClick(): boolean; setPosition(position: IClickPosition): void; getCanvasCtx(): any; measureText(txt: string): any; handleChartClient(client: any): void; setChartWidth(width: number): void; setChartHeight(height: number): void; setEchartInst(echart: any): void; onChartReadyCallback(echart: any): void; onAction<T>(eventParams: T, ChartDrillService: new (type: DrillDownType) => ChartDrillDownService<T>, ChartCommonActionService: new () => ChartCommonActionService): Promise<void>; onCommonAction<T>(eventParams: T, ChartCommonActionService: new () => ChartCommonActionService): Promise<void>; onDrillDown<T>(eventParams: T, ChartDrillService: new (type: DrillDownType) => ChartDrillDownService<T>): Promise<void>; getCurrentDomRect(): DOMRect | null; constructor(getProps: () => IBaseAnalysisChartsProps); }