UNPKG

@nova-ui/charts

Version:

Nova Charts is a library created to provide potential consumers with solutions for various data visualizations that conform with the Nova Design Language. It's designed to solve common patterns identified by UX designers, but also be very flexible so that

56 lines (55 loc) 2.05 kB
import moment from "moment/moment"; import { ChartPlugin } from "../common/chart-plugin"; import { TimeseriesZoomPluginsSyncService } from "./timeseries-zoom-plugin-sync.service"; export interface ITimeseriesZoomPluginConfig { collectionId?: string; enableExternalEvents?: boolean; } export interface ITimeseriesZoomPluginInspectionFrame { startDate: moment.Moment | undefined; endDate: moment.Moment | undefined; } export declare class TimeseriesZoomPlugin extends ChartPlugin { config: ITimeseriesZoomPluginConfig; private syncService?; static LAYER_NAME: string; static readonly DEFAULT_CONFIG: ITimeseriesZoomPluginConfig; private grid; private brush; private zoomBrushLayer; private brushElement; private destroy$; private interactionHandlerMap; private xScale; private brushStartXCoord?; private brushEndXCoord?; private brushStartXDate?; private brushEndXDate?; private isChartHoverd; private isPopoverDisplayed; private zoomLineLayer; private readonly openPopoverSubject; readonly openPopover$: import("rxjs").Observable<number>; private readonly closePopoverSubject; readonly closePopover$: import("rxjs").Observable<void>; private readonly zoomCreatedSubject; readonly zoomCreated$: import("rxjs").Observable<void>; private resizeHandler; constructor(config?: ITimeseriesZoomPluginConfig, syncService?: TimeseriesZoomPluginsSyncService | undefined); initialize(): void; updateDimensions(): void; destroy(): void; showPopover(): void; closePopover(): void; moveBrushByDate(startDate: moment.Moment, endDate: moment.Moment): void; moveBrushByCoord(startX: number | undefined, endX: number | undefined): void; clearBrush(): void; getInspectionFrame(): ITimeseriesZoomPluginInspectionFrame; private getDateFromCoord; private addZoomBoundaryLine; private onBrushStart; private onBrushMove; private onBrushEnd; private createBrushWithoutDrag; private moveBrush; }