ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
38 lines (37 loc) • 1.54 kB
TypeScript
import { AbstractModuleInstance, type DynamicContext, type Point } from 'ag-charts-core';
import type { ChartRegistry } from '../../module/moduleContext';
import type { ExpandableWidget, ExpansionControllerWidget } from '../../widget/expandableWidget';
export interface PopoverConstructorOptions {
detached?: boolean;
}
export interface PopoverOptions {
ariaLabel?: string;
class?: string;
initialFocus?: HTMLElement;
minWidth?: number;
sourceEvent?: Event;
onHide?: () => void;
}
/**
* A non-modal element that overlays the chart.
*/
export declare abstract class Popover<Options extends PopoverOptions = PopoverOptions> extends AbstractModuleInstance {
protected readonly ctx: DynamicContext<ChartRegistry>;
protected readonly hideFns: Array<() => void>;
private readonly moduleId;
private readonly element;
private lastFocus?;
private initialFocus?;
constructor(ctx: DynamicContext<ChartRegistry>, id: string, options?: PopoverConstructorOptions);
private readonly setOwnedWidget;
attachTo(popover: Popover): void;
hide(opts?: {
lastFocus?: null;
}): void;
protected removeChildren(): void;
private initPopoverElement;
protected showWidget(controller: ExpansionControllerWidget, owns: ExpandableWidget, options: Options): void;
protected showWithChildren(children: Array<HTMLElement>, options: Options): HTMLElement;
protected getPopoverElement(): HTMLDivElement | undefined;
protected updatePosition(position: Partial<Point>): void;
}