kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
76 lines (75 loc) • 5.22 kB
TypeScript
import React from 'react';
import VisConfigByFieldSelectorFactory from './vis-config-by-field-selector';
import LayerColumnConfigFactory from './layer-column-config';
import LayerTypeSelectorFactory from './layer-type-selector';
import SourceDataSelectorFactory from '../common/source-data-selector';
import VisConfigSwitchFactory from './vis-config-switch';
import VisConfigSliderFactory from './vis-config-slider';
import LayerConfigGroupFactory from './layer-config-group';
import TextLabelPanelFactory from './text-label-panel';
import { LayerColorSelectorFactory, LayerColorRangeSelectorFactory, ArcLayerColorSelectorFactory } from './layer-color-selector';
import { Layer, LayerBaseConfig, VisualChannel, AggregationLayer } from '@kepler.gl/layers';
import { NestedPartial, LayerVisConfig, ColorUI, Field } from '@kepler.gl/types';
import { toggleModal, ActionHandler } from '@kepler.gl/actions';
import { Datasets } from '@kepler.gl/table';
declare type LayerConfiguratorProps = {
layer: Layer;
datasets: Datasets;
layerTypeOptions: {
id: string;
label: string;
icon: React.ElementType;
requireData: boolean;
}[];
openModal: ActionHandler<typeof toggleModal>;
updateLayerConfig: (newConfig: Partial<LayerBaseConfig>) => void;
updateLayerType: (newType: string) => void;
updateLayerVisConfig: (newVisConfig: Partial<LayerVisConfig>) => void;
updateLayerVisualChannelConfig: (newConfig: Partial<LayerBaseConfig>, channel: string, newVisConfig?: Partial<LayerVisConfig>) => void;
updateLayerColorUI: (prop: string, newConfig: NestedPartial<ColorUI>) => void;
updateLayerTextLabel: (idx: number | 'all', prop: string, value: any) => void;
disableTypeSelect?: boolean;
};
declare type ChannelByValueSelectorProps = {
layer: Layer;
channel: VisualChannel;
onChange: (val: Record<string, string | number | boolean | object | readonly (string | number | boolean | object)[] | null>, key: string) => void;
fields: Field[];
description: string;
};
declare type AggregationSelectorProps = {
channel: VisualChannel;
layer: AggregationLayer;
onChange: (val: Record<string, string | number | boolean | object | readonly (string | number | boolean | object)[] | null>, key: string) => void;
};
export declare const getLayerFields: (datasets: Datasets, layer: Layer) => Field[];
/** Return any to be able to customize the Dataset entity */
export declare const getLayerDataset: (datasets: Datasets, layer: Layer) => any;
export declare const getLayerConfiguratorProps: (props: LayerConfiguratorProps) => {
layer: Layer;
fields: Field[];
onChange: (newConfig: Partial<LayerBaseConfig>) => void;
setColorUI: (prop: string, newConfig: NestedPartial<ColorUI>) => void;
};
export declare const getVisConfiguratorProps: (props: LayerConfiguratorProps) => {
layer: Layer;
fields: Field[];
onChange: (newVisConfig: Partial<LayerVisConfig>) => void;
setColorUI: (prop: string, newConfig: NestedPartial<ColorUI>) => void;
};
export declare const getLayerChannelConfigProps: (props: LayerConfiguratorProps) => {
layer: Layer;
fields: Field[];
onChange: (newConfig: Partial<LayerBaseConfig>, channel: string, newVisConfig?: Partial<LayerVisConfig> | undefined) => void;
};
declare function LayerConfiguratorFactory(SourceDataSelector: ReturnType<typeof SourceDataSelectorFactory>, VisConfigSlider: ReturnType<typeof VisConfigSliderFactory>, TextLabelPanel: ReturnType<typeof TextLabelPanelFactory>, LayerConfigGroup: ReturnType<typeof LayerConfigGroupFactory>, ChannelByValueSelector: ReturnType<typeof ChannelByValueSelectorFactory>, LayerColumnConfig: ReturnType<typeof LayerColumnConfigFactory>, LayerTypeSelector: ReturnType<typeof LayerTypeSelectorFactory>, VisConfigSwitch: ReturnType<typeof VisConfigSwitchFactory>, LayerColorSelector: ReturnType<typeof LayerColorSelectorFactory>, LayerColorRangeSelector: ReturnType<typeof LayerColorRangeSelectorFactory>, ArcLayerColorSelector: ReturnType<typeof ArcLayerColorSelectorFactory>): React.ComponentType<LayerConfiguratorProps>;
declare namespace LayerConfiguratorFactory {
var deps: (typeof LayerColumnConfigFactory | typeof LayerTypeSelectorFactory | typeof VisConfigSliderFactory | typeof VisConfigSwitchFactory | typeof LayerConfigGroupFactory | typeof LayerColorSelectorFactory | typeof LayerColorRangeSelectorFactory | typeof ArcLayerColorSelectorFactory | typeof SourceDataSelectorFactory | typeof TextLabelPanelFactory | typeof ChannelByValueSelectorFactory)[];
}
export default LayerConfiguratorFactory;
export declare function ChannelByValueSelectorFactory(VisConfigByFieldSelector: ReturnType<typeof VisConfigByFieldSelectorFactory>): ({ layer, channel, onChange, fields, description }: ChannelByValueSelectorProps) => React.JSX.Element;
export declare namespace ChannelByValueSelectorFactory {
var deps: (typeof VisConfigByFieldSelectorFactory)[];
}
export declare const AggregationScaleSelector: ({ channel, layer, onChange }: AggregationSelectorProps) => React.JSX.Element | null;
export declare const AggregationTypeSelector: ({ channel, layer, onChange }: AggregationSelectorProps) => React.JSX.Element;