UNPKG

@gooddata/react-components

Version:

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

108 lines (107 loc) 3.22 kB
/// <reference types="mapbox-gl" /> import { ISeparators } from "@gooddata/numberjs"; import { VisualizationInput, VisualizationObject } from "@gooddata/typings"; import { ILegendConfig, IColorPalette, IColorMapping } from "./Config"; import { ICommonChartProps } from "../components/core/base/BaseChart"; export interface IGeoLngLat { lat: number; lng: number; } export interface IGeoLngLatBounds { northEast: IGeoLngLat; southWest: IGeoLngLat; } export interface IGeoTooltipItem { title: string; value: string | number; format?: string; } export interface IObjectMapping { [property: string]: string | number | object | null; } export interface IPushpinColor { border: string; background: string; } export interface IGeoDataItem { name: string; index: number; } export interface IGeoAttributeItem extends IGeoDataItem { data: string[]; } export interface IGeoSegmentItem extends IGeoAttributeItem { uris: string[]; } export interface IGeoLocationItem extends IGeoDataItem { data: IGeoLngLat[]; } export interface IGeoMeasureItem extends IGeoDataItem { format: string; data: number[]; } export interface IGeoData { location?: IGeoLocationItem; size?: IGeoMeasureItem; color?: IGeoMeasureItem; segment?: IGeoSegmentItem; tooltipText?: IGeoAttributeItem; } export declare type IGeoConfigViewportArea = "auto" | "continent_af" | "continent_as" | "continent_au" | "continent_eu" | "continent_na" | "continent_sa" | "world"; export interface IGeoConfigViewport { area?: IGeoConfigViewportArea; frozen?: boolean; } export interface IGeoViewports { [key: string]: mapboxgl.LngLatBoundsLike; } export declare type PushpinSizeOption = "0.5x" | "0.75x" | "normal" | "1.25x" | "1.5x"; export interface IGeoPointsConfig { minSize?: PushpinSizeOption; maxSize?: PushpinSizeOption; groupNearbyPoints?: boolean; } export interface IGeoConfig { center?: IGeoLngLat; isExportMode?: boolean; legend?: ILegendConfig; limit?: number; mdObject?: VisualizationObject.IVisualizationObjectContent; selectedSegmentItems?: string[]; tooltipText?: VisualizationInput.IAttribute; zoom?: number; mapboxToken: string; separators?: ISeparators; viewport?: IGeoConfigViewport; points?: IGeoPointsConfig; colors?: string[]; colorPalette?: IColorPalette; colorMapping?: IColorMapping[]; showLabels?: boolean; } export interface IGeoPushpinChartProps extends ICommonChartProps { config?: IGeoConfig; projectId: string; exportTitle?: string; location: VisualizationInput.IAttribute; size?: VisualizationInput.AttributeOrMeasure; color?: VisualizationInput.AttributeOrMeasure; segmentBy?: VisualizationInput.IAttribute; filters?: VisualizationInput.IFilter[]; sortBy?: VisualizationInput.ISort[]; } export interface IPushpinCategoryLegendItem { name: string; uri: string; color?: string; legendIndex: number; isVisible?: boolean; } export interface IValidationResult { isDataTooLarge: boolean; } export interface IAvailableLegends { hasCategoryLegend: boolean; hasColorLegend: boolean; hasSizeLegend: boolean; }