UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

45 lines (44 loc) 2.81 kB
import type { Maybe, RenderMode } from '../../../typings'; import type { TooltipData, ITooltipActual, TooltipActiveType, ITooltipHandler, ITooltipPositionActual } from '../../../typings/tooltip'; import type { IGroup } from '@visactor/vrender-core'; import type { IContainerSize } from '@visactor/vrender-components'; import type { IChartOption } from '../../../chart/interface'; import type { ITooltipSpec, Tooltip, TooltipHandlerParams } from '../../../component/tooltip'; import { TooltipResult } from '../../../component/tooltip'; import type { IComponentPlugin, IComponentPluginService } from '../interface'; import { BasePlugin } from '../../base/base-plugin'; import type { ITooltipHandlerOptions } from './interface'; import type { ICompiler } from '../../../compile/interface/compilable-item'; type ChangeTooltipFunc = (visible: boolean, params: TooltipHandlerParams, data?: TooltipData) => TooltipResult; type ChangeTooltipPositionFunc = (params: TooltipHandlerParams, data: TooltipData) => TooltipResult; export declare abstract class BaseTooltipHandler extends BasePlugin implements ITooltipHandler, IComponentPlugin { static readonly pluginType: 'component'; static readonly specKey = "tooltip"; readonly type: string; protected _visible: boolean; protected _option: ITooltipHandlerOptions; protected _chartOption: IChartOption; protected _env: RenderMode; get env(): "desktop-browser" | "mobile-browser" | "node" | "worker" | "miniApp" | "wx" | "tt" | "harmony" | "desktop-miniApp" | "lynx"; protected _component: Tooltip; protected _chartContainer: Maybe<HTMLElement>; protected _compiler: ICompiler; protected _container: Maybe<IGroup | HTMLElement>; protected _isReleased: boolean; onAdd(service: IComponentPluginService<any>): void; showTooltip: (activeType: TooltipActiveType, data: TooltipData, params: TooltipHandlerParams) => TooltipResult; protected changeTooltip: ChangeTooltipFunc; protected changeTooltipPosition: ChangeTooltipPositionFunc; hideTooltip(params: TooltipHandlerParams): TooltipResult; release(): void; protected abstract _updateTooltip(visible: boolean, params: TooltipHandlerParams): void; protected abstract _removeTooltip(): void; protected abstract _getTooltipBoxSize(actualTooltip: ITooltipActual, changePositionOnly: boolean): IContainerSize | undefined; protected _getDefaultOption(): ITooltipHandlerOptions; protected _getActualTooltipPosition: (actualTooltip: ITooltipActual, params: TooltipHandlerParams, tooltipBoxSize: IContainerSize | undefined) => ITooltipPositionActual; protected _getParentElement(spec: ITooltipSpec): HTMLElement; getTooltipContainer(): IGroup | HTMLElement; protected _initFromSpec(): void; reInit(): void; } export {};