UNPKG

@gooddata/react-components

Version:

GoodData.UI - A powerful JavaScript library for building analytical applications

59 lines (58 loc) 2.06 kB
import * as React from "react"; import { Execution } from "@gooddata/typings"; import { IDrillConfig } from "../../../interfaces/DrillEvents"; import { IGeoConfig, IGeoData, IGeoLngLat } from "../../../interfaces/GeoChart"; import { IHeaderPredicate } from "../../../interfaces/HeaderPredicate"; import "../../../../styles/css/geoChart.css"; import { IColorStrategy } from "../../visualizations/chart/colorFactory"; export interface IGeoChartRendererProps { config: IGeoConfig; drillableItems: IHeaderPredicate[]; drillConfig: IDrillConfig; execution: Execution.IExecutionResponses; geoData: IGeoData; colorStrategy: IColorStrategy; afterRender(): void; onCenterPositionChanged(center: IGeoLngLat): void; onZoomChanged(zoom: number): void; } export default class GeoChartRenderer extends React.Component<IGeoChartRendererProps> { static defaultProps: Partial<IGeoChartRendererProps>; private chart; private tooltip; private chartRef; private navigationControlButton; constructor(props: IGeoChartRendererProps); componentDidUpdate(prevProps: IGeoChartRendererProps): void; componentDidMount(): void; componentWillUnmount(): void; setChartRef: (ref: HTMLElement) => void; createMap: () => void; render(): JSX.Element; private updateMapWithConfig; private resetMap; private shouldResetMap; private isViewportFrozen; private createMapControls; private removeMapControls; private addMapControls; private toggleMapControls; private toggleInteractionEvents; private updatePanAndZoom; private updateViewport; private setFilterMap; private handleMapEvent; private handleMapIdle; private setupMap; private adjustChartHeight; private handleLayerLoaded; private createTooltip; private cleanupMap; private removeLayer; private removeMap; private handlePushpinMoveEnd; private handlePushpinZoomEnd; private handleMapClick; private handlePushpinMouseEnter; private handlePushpinMouseLeave; }