UNPKG

ag-charts-community

Version:

Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue

110 lines (109 loc) 5.09 kB
import { AgDocument, type StrictHTMLElement } from 'ag-charts-core'; import type { AgChartThemeParams } from 'ag-charts-types'; import type { EventsHub } from '../core/eventsHub'; import { BBox } from '../scene/bbox'; import { BaseManager } from '../util/baseManager'; import { type Size } from '../util/sizeMonitor'; import { DOMElementProxy } from './domElementProxy'; declare const DOM_ELEMENT_CLASSES: readonly ["styles", "canvas", "canvas-background", "canvas-center", "canvas-container", "canvas-overlay", "canvas-proxy", "series-area", "tooltip-container"]; type DOMElementClass = (typeof DOM_ELEMENT_CLASSES)[number]; type DOMInsertOption = { where: InsertPosition; query: string; }; export declare class DOMManager extends BaseManager { private readonly eventsHub; private readonly chart; private readonly agDocument; private readonly styleContainer?; private readonly skipCss?; readonly mode: 'normal' | 'minimal'; static readonly className = "DOMManager"; private static readonly batchedUpdateContainer; private static readonly headStyles; readonly anchorName: string; private readonly rootElements; private readonly styles; private readonly element; private pendingContainer?; private container?; private documentRoot?; private initiallyConnected?; containerSize?: Size; private readonly tabGuards?; private readonly observer?; private readonly sizeMonitor; private readonly cursorState; private _lastCursor; private _lastCenterSize; private readonly deferredProxies; private readonly elementProxy; private readonly deferredMode; private minWidth; private minHeight; private enableRtl?; private _isRtl; private _cachedCanvasRect; private _cachedRawOverlayRect; private _cachedScrollableContainer; private _pendingFlush?; private _deferring; constructor(eventsHub: EventsHub, chart: { styleNonce?: string; }, agDocument: AgDocument, initialContainer?: HTMLElement, styleContainer?: HTMLElement | undefined, skipCss?: boolean | undefined, mode?: 'normal' | 'minimal'); private initDOM; private initRootElements; destroy(): void; private scheduleFlush; private flushDeferredProxies; private applyBatchedUpdateContainer; private updateStylesLocation; setSizeOptions(minWidth?: number, minHeight?: number, optionsWidth?: number, optionsHeight?: number): void; private updateContainerSize; setTabGuardIndex(tabIndex: number): void; setContainer(newContainer?: HTMLElement): void; updateContainer(): void; setThemeClass(themeClassName: string): void; setThemeParameters(params: AgChartThemeParams): void; setModuleCSSVariables(module: string, component: string | undefined, modifier: string | undefined, variables: Record<string, string | number>, numericKeys?: string[]): void; private setCSSVariables; updateCanvasLabel(ariaLabel: string): void; private getEventElement; addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): () => void; removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; /** Get the main chart area client bound rect. */ getBoundingClientRect(): DOMRect; /** * Get the client bounding rect for overlay elements that might float outside the bounds of the * main chart area. */ getOverlayClientRect(): DOMRect; private findScrollableContainer; private getRawOverlayClientRect; private getShadowDocumentRoot; getParent(domElementClass: DOMElementClass): HTMLElement; getChildBoundingClientRect(type: DOMElementClass): BBox; isManagedChildDOMElement(el: HTMLElement, domElementClass: DOMElementClass, id: string): boolean; contains(element: HTMLElement, domElementClass?: DOMElementClass): boolean; addStyles(id: string, styles: string): void; removeStyles(id: string): void; updateCursor(callerId: string, style?: string): void; getCursor(): string; get isRtl(): boolean; setEnableRtl(enableRtl?: boolean): void; private updateRtl; addChild(domElementClass: DOMElementClass, id: string, child?: HTMLElement, insert?: DOMInsertOption): StrictHTMLElement; addProxyChild(domElementClass: DOMElementClass, id: string): DOMElementProxy; addDeferredProxyChild(domElementClass: DOMElementClass, id: string): DOMElementProxy; setDeferring(active: boolean): void; removeChild(domElementClass: DOMElementClass, id: string): void; incrementDataCounter(name: string): void; setDataBoolean(name: string, value: boolean): void; setDataNumber(name: string, value: number): void; getDocument(): AgDocument; private invalidateRectCaches; private invalidateAllCaches; private setupGlobalListeners; private updateContainerClassName; } export {};