UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

165 lines (164 loc) 8.24 kB
import type { IRegionConstructor } from '../../region/interface'; import { ChartData } from '../chart-meta/data'; import type { Datum, IMarkStateSpec, IRegionQuerier, MaybeArray, IPadding, IRect, StringOrNumber, IChartSpec, IDataValues, ILayoutRect, ILayoutOrientPadding } from '../../typings'; import type { ILayoutItem, LayoutCallBack } from '../../layout/interface'; import type { ILayoutModelState, IModel, IModelOption, IModelSpecInfo, IUpdateSpecResult } from '../../model/interface'; import type { IChart, IChartOption, IChartEvaluateOption, DimensionIndexOption, IChartSpecTransformerOption, IChartSpecTransformer } from '../interface'; import type { ISeries, ISeriesConstructor } from '../../series/interface'; import type { IRegion } from '../../region/interface'; import type { IComponent, IComponentConstructor } from '../../component/interface'; import type { IMark, IMarkGraphic, IRectMark } from '../../mark/interface'; import type { IEvent } from '../../event/interface'; import type { DataView } from '@visactor/vdataset'; import type { DataSet } from '@visactor/vdataset'; import type { IParserOptions } from '@visactor/vdataset'; import type { IBoundsLike, Maybe } from '@visactor/vutils'; import { CompilableBase } from '../../compile/compilable-base'; import type { IGlobalScale } from '../../scale/interface'; import type { IMorphConfig } from '../../animation/spec'; import type { IInteraction } from '../../interaction/interface/common'; export declare class BaseChart<T extends IChartSpec> extends CompilableBase implements IChart { readonly type: string; readonly seriesType: string; readonly transformerConstructor: new (option: IChartSpecTransformerOption) => IChartSpecTransformer; readonly id: number; protected _spec: T; getSpec(): T; setSpec(s: T): void; getOption(): IChartOption; protected _regions: IRegion[]; protected _series: ISeries[]; protected _components: IComponent[]; protected _layoutFunc: LayoutCallBack; protected _layoutRect: IRect; getLayoutRect(): IRect; protected _viewRect: ILayoutRect; getViewRect(): ILayoutRect; protected _viewBox: IBoundsLike; protected _layoutTag: boolean; getLayoutTag(): boolean; setLayoutTag(tag: boolean, morphConfig?: IMorphConfig, renderNextTick?: boolean): boolean; resetLayoutItemTag(): void; protected _modelOption: IModelOption; getModelOption(): IModelOption; protected _globalScale: IGlobalScale; getGlobalScale(): IGlobalScale; protected _idMap: Map<number, IModel | IMark>; protected _event: IEvent; getEvent(): IEvent; protected _dataSet: DataSet; protected _chartData: ChartData; get chartData(): ChartData; protected _option: IChartOption; readonly state: ILayoutModelState; padding: IPadding; protected _paddingSpec: ILayoutOrientPadding; protected _canvasRect: ILayoutRect; protected _backgroundMark: IRectMark; protected _interaction: IInteraction; protected _setModelOption(): void; constructor(spec: T, option: IChartOption); created(transformer: Maybe<IChartSpecTransformer>): void; _initInteractions(): void; init(): void; reDataFlow(): void; onResize(width: number, height: number, reRender?: boolean): void; updateViewBox(viewBox: IBoundsLike, reLayout: boolean): void; private _createBackground; protected _createRegion(constructor: IRegionConstructor, specInfo: IModelSpecInfo): void; protected _createSeries(constructor: ISeriesConstructor, specInfo: IModelSpecInfo): void; getAllSeries: () => ISeries[]; getSeriesById(id: number): ISeries | undefined; protected _createComponent(constructor: IComponentConstructor, specInfo: IModelSpecInfo): void; getAllComponents(): IComponent[]; getAllModels(): IModel[]; getModelInFilter(filter: string | { type: string; index: number; } | ((model: IModel) => boolean)): IModel; private _createLayout; setLayout(layout: LayoutCallBack): void; private _initLayoutFunc; layout(): void; onLayoutStart(): void; onLayoutEnd(): void; onEvaluateEnd(option: IChartEvaluateOption): void; getLayoutElements(): ILayoutItem[]; getRegionsInIndex: (index?: number[]) => IRegion[]; getAllRegions: () => IRegion[]; getRegionsInIds: (ids: number[]) => IRegion[]; getRegionsInQuerier: (region?: MaybeArray<IRegionQuerier>) => IRegion[]; getRegionsInUserId: (userId: StringOrNumber) => IRegion | undefined; getRegionsInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => IRegion[]; getComponents: () => IComponent[]; getSeriesInIndex: (index?: number[]) => ISeries[]; getSeriesInIds: (ids?: number[]) => ISeries[]; getSeriesInUserId: (userId: StringOrNumber) => ISeries | undefined; getSeriesInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => ISeries[]; getComponentByIndex: (key: string, index: number) => IComponent; getComponentsByKey: (key: string) => IComponent[]; getComponentByUserId: (userId: StringOrNumber) => IComponent; getComponentsByType: (type: string) => IComponent[]; getModelById(id: number): IModel | undefined; getModelByUserId(userId: StringOrNumber): IModel | undefined; getAllMarks(): IMark[]; getMarkById(id: number): IMark | undefined; getMarkByUserName(name: string): IMark[]; updateData(id: StringOrNumber, data: unknown, updateGlobalScale?: boolean, options?: IParserOptions): void; updateFullData(data: IDataValues | IDataValues[], updateGlobalScale?: boolean): void; setCanvasRect(width: number, height: number): void; getCanvasRect(): Omit<IRect, 'x' | 'y'>; getSeriesData(id: StringOrNumber | undefined, index: number | undefined): DataView | undefined; private _transformSpecScale; private _createGlobalScale; updateGlobalScaleDomain(): void; updateGlobalScale(result: IUpdateSpecResult): void; updateGlobalScaleTheme(): void; private _getSpecKeys; updateSpec(spec: T): { change: boolean; reMake: boolean; reRender: boolean; reSize: boolean; reCompile: boolean; }; updateChartConfig(result: IUpdateSpecResult, oldSpec: IChartSpec): void; updateDataSpec(): void; updateRegionSpec(result: IUpdateSpecResult): void; updateComponentSpec(result: IUpdateSpecResult): void; updateSeriesSpec(result: IUpdateSpecResult): void; getCanvas(): HTMLCanvasElement; private _updateLayoutRect; setCurrentTheme(): void; reInit(): void; clear(): void; compile(): void; afterCompile(): void; compileLayout(): void; compileBackground(): void; compileRegions(): void; compileSeries(): void; compileComponents(): void; release(): void; onLayout(): void; updateState(state: Record<string, Omit<IMarkStateSpec<unknown>, 'style'>>, filter?: (series: ISeries, mark: IMark, stateKey: string) => boolean): void; setSelected(datum: MaybeArray<any> | null, filter?: (series: ISeries, mark: IMark) => boolean, region?: IRegionQuerier): void; setHovered(datum: MaybeArray<Datum> | null, filter?: (series: ISeries, mark: IMark) => boolean, region?: IRegionQuerier): void; clearState(state: string): void; clearAllStates(): void; clearSelected(): void; clearHovered(): void; private _initEvent; protected _enableMarkAnimation(states: string | string[]): void; protected _disableMarkAnimation(states: string | string[]): void; filterGraphicsByDatum(datum: MaybeArray<Datum> | null, opt?: { filter?: (series: ISeries, mark: IMark) => boolean; region?: IRegionQuerier; getDatum?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => Datum; callback?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => void; regionCallback?: (pickElements: IMarkGraphic[], r: IRegion) => void; }): IMarkGraphic[]; protected _setStateInDatum(stateKey: string, d: MaybeArray<Datum> | null, filter?: (series: ISeries, mark: IMark) => boolean, region?: IRegionQuerier): void; setDimensionIndex(value: StringOrNumber, opt: DimensionIndexOption): void; getColorScheme(): any; }