kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
94 lines (93 loc) • 3.41 kB
TypeScript
import { DatasetType, WMSDatasetMetadata } from '@kepler.gl/constants';
import { WMSLayer as DeckWMSLayer } from '@kepler.gl/deckgl-layers';
import { KeplerTable as KeplerDataset } from '@kepler.gl/table';
import { AnimationConfig, Field, LayerBaseConfig, VisConfigBoolean, VisConfigNumber, VisConfigSelection } from '@kepler.gl/types';
import { DataContainerInterface } from '@kepler.gl/utils';
import TileDataset from '../vector-tile/common-tile/tile-dataset';
import WMSLayerIcon from './wms-layer-icon';
import { FindDefaultLayerPropsReturnValue } from '../layer-utils';
import AbstractTileLayer, { AbstractTileLayerVisConfigSettings, LayerData } from '../vector-tile/abstract-tile-layer';
export declare type WMSTile = {
id: string;
url: string;
};
export declare const wmsTileVisConfigs: {
opacity: "opacity";
transparent: "transparent";
};
export declare type WMSLayerVisConfig = {
opacity: number;
transparent?: boolean;
wmsLayer: {
name: string;
title: string;
boundingBox: number[][];
queryable: boolean;
} | null;
};
export declare type WMSLayerConfig = LayerBaseConfig & {
visConfig: WMSLayerVisConfig;
};
export declare type WMSLayerVisConfigSettings = AbstractTileLayerVisConfigSettings & {
opacity: VisConfigNumber;
transparent: VisConfigBoolean;
wmsLayer: VisConfigSelection;
};
export declare type WMSLayerData = LayerData & {
tilesetDataUrl?: string | null;
metadata?: any;
};
export default class WMSLayer extends AbstractTileLayer<WMSTile, any[]> {
config: WMSLayerConfig;
visConfigSettings: WMSLayerVisConfigSettings;
private deckLayerRef;
constructor(props: ConstructorParameters<typeof AbstractTileLayer>[0] & {
layers?: WMSDatasetMetadata['layers'];
});
get type(): "wms";
get name(): string;
get layerIcon(): typeof WMSLayerIcon;
static findDefaultLayerProps(dataset: KeplerDataset): FindDefaultLayerPropsReturnValue;
get supportedDatasetTypes(): DatasetType[];
protected initTileDataset(): TileDataset<WMSTile, any[]>;
accessRowValue(_field?: Field, _indexKey?: number | null): () => null;
formatLayerData(datasets: any, oldLayerData: any, animationConfig: any): WMSLayerData;
_getCurrentServiceLayer(): {
name: string;
title: string;
boundingBox: number[][];
queryable: boolean;
} | null;
updateLayerMeta(dataset: KeplerDataset): void;
hasHoveredObject(objectInfo: any): any;
getHoverData(object: any, dataContainer: DataContainerInterface, fields: Field[], animationConfig: AnimationConfig, hoverInfo: {
index: number;
x?: number;
y?: number;
}): {
wmsFeatureData: any;
fieldValues?: undefined;
} | {
fieldValues: {
labelMessage: string;
value: string;
}[];
wmsFeatureData?: undefined;
} | null;
renderLayer(opts: any): DeckWMSLayer[];
protected _onClick(layerCallbacks: any, { bitmap, coordinate }: {
bitmap: any;
coordinate: any;
}): Promise<{
name: string;
value: string;
}[] | null>;
protected getWMSFeatureInfo(x: number, y: number): Promise<Array<{
name: string;
value: string;
}> | null>;
protected parseWMSFeatureInfo(xmlString: string): Array<{
name: string;
value: string;
}>;
}