@carto/kepler.gl 0.0.1-alpha.map-libre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +939 -0
- package/LICENSE +19 -0
- package/README.md +63 -0
- package/actions.js +21 -0
- package/cloud-providers.js +21 -0
- package/components.js +21 -0
- package/constants.js +21 -0
- package/dist/actions/action-wrapper.js +218 -0
- package/dist/actions/actions.js +198 -0
- package/dist/actions/identity-actions.js +105 -0
- package/dist/actions/index.js +161 -0
- package/dist/actions/map-state-actions.js +112 -0
- package/dist/actions/map-style-actions.js +167 -0
- package/dist/actions/provider-actions.js +129 -0
- package/dist/actions/ui-state-actions.js +316 -0
- package/dist/actions/vis-state-actions.js +1045 -0
- package/dist/cloud-providers/index.js +22 -0
- package/dist/cloud-providers/provider.js +386 -0
- package/dist/components/bottom-widget.js +215 -0
- package/dist/components/common/action-panel.js +134 -0
- package/dist/components/common/animation-control/animation-control.js +126 -0
- package/dist/components/common/animation-control/animation-controller.js +273 -0
- package/dist/components/common/animation-control/animation-speed-slider.js +101 -0
- package/dist/components/common/animation-control/floating-time-display.js +157 -0
- package/dist/components/common/animation-control/playback-controls.js +278 -0
- package/dist/components/common/animation-control/speed-control.js +68 -0
- package/dist/components/common/checkbox.js +155 -0
- package/dist/components/common/color-legend.js +249 -0
- package/dist/components/common/data-table/button.js +46 -0
- package/dist/components/common/data-table/canvas.js +32 -0
- package/dist/components/common/data-table/cell-size.js +174 -0
- package/dist/components/common/data-table/grid.js +84 -0
- package/dist/components/common/data-table/index.js +514 -0
- package/dist/components/common/data-table/option-dropdown.js +103 -0
- package/dist/components/common/dataset-label.js +36 -0
- package/dist/components/common/error-boundary.js +83 -0
- package/dist/components/common/field-selector.js +282 -0
- package/dist/components/common/field-token.js +42 -0
- package/dist/components/common/file-uploader/file-drop.js +227 -0
- package/dist/components/common/file-uploader/file-upload-progress.js +102 -0
- package/dist/components/common/file-uploader/file-upload.js +304 -0
- package/dist/components/common/file-uploader/upload-button.js +111 -0
- package/dist/components/common/histogram-plot.js +102 -0
- package/dist/components/common/icons/add.js +64 -0
- package/dist/components/common/icons/anchor_window.js +62 -0
- package/dist/components/common/icons/arrow-down-alt.js +64 -0
- package/dist/components/common/icons/arrow-down-solid .js +64 -0
- package/dist/components/common/icons/arrow-down.js +64 -0
- package/dist/components/common/icons/arrow-left.js +67 -0
- package/dist/components/common/icons/arrow-right.js +64 -0
- package/dist/components/common/icons/arrow-up-alt.js +65 -0
- package/dist/components/common/icons/arrow-up-solid.js +64 -0
- package/dist/components/common/icons/arrow-up.js +64 -0
- package/dist/components/common/icons/base.js +110 -0
- package/dist/components/common/icons/bug.js +66 -0
- package/dist/components/common/icons/cancel.js +64 -0
- package/dist/components/common/icons/checkmark.js +71 -0
- package/dist/components/common/icons/chevron-right.js +69 -0
- package/dist/components/common/icons/clipboard.js +65 -0
- package/dist/components/common/icons/clock.js +66 -0
- package/dist/components/common/icons/close.js +69 -0
- package/dist/components/common/icons/code-alt.js +68 -0
- package/dist/components/common/icons/copy.js +70 -0
- package/dist/components/common/icons/crosshairs.js +68 -0
- package/dist/components/common/icons/cube-3d.js +68 -0
- package/dist/components/common/icons/cursor-click.js +68 -0
- package/dist/components/common/icons/data-table.js +65 -0
- package/dist/components/common/icons/db.js +65 -0
- package/dist/components/common/icons/delete.js +65 -0
- package/dist/components/common/icons/docs.js +80 -0
- package/dist/components/common/icons/drag-n-drop.js +66 -0
- package/dist/components/common/icons/draw-polygon.js +87 -0
- package/dist/components/common/icons/email.js +68 -0
- package/dist/components/common/icons/expand.js +66 -0
- package/dist/components/common/icons/eye-seen.js +66 -0
- package/dist/components/common/icons/eye-unseen.js +66 -0
- package/dist/components/common/icons/file-type.js +45 -0
- package/dist/components/common/icons/file.js +64 -0
- package/dist/components/common/icons/files.js +66 -0
- package/dist/components/common/icons/filter-funnel.js +64 -0
- package/dist/components/common/icons/free-window.js +62 -0
- package/dist/components/common/icons/gear.js +66 -0
- package/dist/components/common/icons/hash.js +64 -0
- package/dist/components/common/icons/histogram.js +64 -0
- package/dist/components/common/icons/index.js +612 -0
- package/dist/components/common/icons/info.js +78 -0
- package/dist/components/common/icons/layers.js +64 -0
- package/dist/components/common/icons/left-arrow.js +68 -0
- package/dist/components/common/icons/legend.js +64 -0
- package/dist/components/common/icons/line-chart.js +63 -0
- package/dist/components/common/icons/login.js +66 -0
- package/dist/components/common/icons/logout.js +65 -0
- package/dist/components/common/icons/map-icon.js +73 -0
- package/dist/components/common/icons/map.js +73 -0
- package/dist/components/common/icons/messages.js +64 -0
- package/dist/components/common/icons/minus.js +64 -0
- package/dist/components/common/icons/pause.js +64 -0
- package/dist/components/common/icons/picture.js +66 -0
- package/dist/components/common/icons/pin.js +64 -0
- package/dist/components/common/icons/play.js +64 -0
- package/dist/components/common/icons/polygon.js +89 -0
- package/dist/components/common/icons/rectangle.js +90 -0
- package/dist/components/common/icons/reduce.js +67 -0
- package/dist/components/common/icons/reset.js +64 -0
- package/dist/components/common/icons/rocket.js +64 -0
- package/dist/components/common/icons/save.js +66 -0
- package/dist/components/common/icons/save2.js +70 -0
- package/dist/components/common/icons/search.js +66 -0
- package/dist/components/common/icons/settings.js +66 -0
- package/dist/components/common/icons/share.js +64 -0
- package/dist/components/common/icons/split.js +92 -0
- package/dist/components/common/icons/square-select.js +66 -0
- package/dist/components/common/icons/swap-horizontal.js +68 -0
- package/dist/components/common/icons/table.js +63 -0
- package/dist/components/common/icons/trash.js +66 -0
- package/dist/components/common/icons/upload.js +65 -0
- package/dist/components/common/icons/vert-dots.js +102 -0
- package/dist/components/common/icons/vert-three-dots.js +77 -0
- package/dist/components/common/icons/warning.js +79 -0
- package/dist/components/common/image-preview.js +73 -0
- package/dist/components/common/info-helper.js +84 -0
- package/dist/components/common/item-selector/accessor.js +56 -0
- package/dist/components/common/item-selector/chickleted-input.js +118 -0
- package/dist/components/common/item-selector/dropdown-list.js +316 -0
- package/dist/components/common/item-selector/item-selector-submenu.js +99 -0
- package/dist/components/common/item-selector/item-selector.js +363 -0
- package/dist/components/common/item-selector/typeahead.js +496 -0
- package/dist/components/common/line-chart.js +125 -0
- package/dist/components/common/loading-spinner.js +58 -0
- package/dist/components/common/logo.js +92 -0
- package/dist/components/common/map-layer-selector.js +50 -0
- package/dist/components/common/modal.js +204 -0
- package/dist/components/common/portaled.js +317 -0
- package/dist/components/common/progress-bar.js +56 -0
- package/dist/components/common/range-brush.js +319 -0
- package/dist/components/common/range-plot.js +148 -0
- package/dist/components/common/range-slider.js +346 -0
- package/dist/components/common/slider/mouse-event.js +136 -0
- package/dist/components/common/slider/slider-bar-handle.js +122 -0
- package/dist/components/common/slider/slider-handle.js +167 -0
- package/dist/components/common/slider/slider.js +268 -0
- package/dist/components/common/styled-components.js +395 -0
- package/dist/components/common/switch.js +47 -0
- package/dist/components/common/time-range-slider-time-title.js +74 -0
- package/dist/components/common/time-range-slider.js +131 -0
- package/dist/components/common/time-slider-marker.js +141 -0
- package/dist/components/common/toolbar-item.js +67 -0
- package/dist/components/common/toolbar.js +33 -0
- package/dist/components/common/vertical-toolbar.js +22 -0
- package/dist/components/container.js +217 -0
- package/dist/components/context.js +42 -0
- package/dist/components/editor/constants.js +47 -0
- package/dist/components/editor/editor.js +274 -0
- package/dist/components/editor/feature-action-panel.js +154 -0
- package/dist/components/editor/feature-styles.js +72 -0
- package/dist/components/editor/handle-style.js +80 -0
- package/dist/components/filters/components.js +20 -0
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +110 -0
- package/dist/components/filters/filter-panels/multi-select-filter-panel.js +80 -0
- package/dist/components/filters/filter-panels/new-filter-panel.js +101 -0
- package/dist/components/filters/filter-panels/polygon-filter-panel.js +102 -0
- package/dist/components/filters/filter-panels/range-filter-panel.js +80 -0
- package/dist/components/filters/filter-panels/single-select-filter-panel.js +80 -0
- package/dist/components/filters/filter-panels/time-range-filter-panel.js +92 -0
- package/dist/components/filters/index.js +48 -0
- package/dist/components/filters/multi-select-filter.js +54 -0
- package/dist/components/filters/polygon-filter.js +96 -0
- package/dist/components/filters/range-filter.js +53 -0
- package/dist/components/filters/single-select-filter.js +63 -0
- package/dist/components/filters/time-range-filter.js +86 -0
- package/dist/components/filters/time-widget.js +173 -0
- package/dist/components/geocoder/geocoder.js +315 -0
- package/dist/components/geocoder-panel.js +224 -0
- package/dist/components/index.js +1485 -0
- package/dist/components/injector.js +178 -0
- package/dist/components/kepler-gl.js +563 -0
- package/dist/components/map/coordinate-info.js +68 -0
- package/dist/components/map/layer-hover-info.js +176 -0
- package/dist/components/map/layer-selector-panel.js +116 -0
- package/dist/components/map/locale-panel.js +113 -0
- package/dist/components/map/map-control-panel.js +79 -0
- package/dist/components/map/map-control-toolbar.js +25 -0
- package/dist/components/map/map-control-tooltip.js +55 -0
- package/dist/components/map/map-control.js +80 -0
- package/dist/components/map/map-draw-panel.js +142 -0
- package/dist/components/map/map-legend-panel.js +124 -0
- package/dist/components/map/map-legend.js +244 -0
- package/dist/components/map/map-popover.js +204 -0
- package/dist/components/map/split-map-button.js +98 -0
- package/dist/components/map/toggle-3d-button.js +86 -0
- package/dist/components/map-container.js +562 -0
- package/dist/components/maps-layout.js +58 -0
- package/dist/components/modal-container.js +536 -0
- package/dist/components/modals/add-map-style-modal.js +288 -0
- package/dist/components/modals/cloud-tile.js +124 -0
- package/dist/components/modals/data-table-modal.js +249 -0
- package/dist/components/modals/delete-data-modal.js +54 -0
- package/dist/components/modals/error-display.js +51 -0
- package/dist/components/modals/export-data-modal.js +227 -0
- package/dist/components/modals/export-image-modal.js +136 -0
- package/dist/components/modals/export-map-modal/components.js +51 -0
- package/dist/components/modals/export-map-modal/export-html-map.js +141 -0
- package/dist/components/modals/export-map-modal/export-json-map.js +87 -0
- package/dist/components/modals/export-map-modal/export-map-modal.js +133 -0
- package/dist/components/modals/image-modal-container.js +90 -0
- package/dist/components/modals/load-data-modal.js +97 -0
- package/dist/components/modals/load-storage-map.js +288 -0
- package/dist/components/modals/loading-dialog.js +48 -0
- package/dist/components/modals/modal-dialog.js +37 -0
- package/dist/components/modals/modal-tabs.js +99 -0
- package/dist/components/modals/overwrite-map-modal.js +80 -0
- package/dist/components/modals/provider-modal-container.js +84 -0
- package/dist/components/modals/save-map-modal.js +207 -0
- package/dist/components/modals/share-map-modal.js +202 -0
- package/dist/components/modals/status-panel.js +83 -0
- package/dist/components/modals/storage-map-viewer.js +135 -0
- package/dist/components/notification-panel/notification-item.js +164 -0
- package/dist/components/notification-panel.js +87 -0
- package/dist/components/performance.js +134 -0
- package/dist/components/plot-container.js +275 -0
- package/dist/components/side-panel/cloud-storage-dropdown.js +63 -0
- package/dist/components/side-panel/common/dataset-info.js +43 -0
- package/dist/components/side-panel/common/dataset-tag.js +42 -0
- package/dist/components/side-panel/common/dataset-title.js +170 -0
- package/dist/components/side-panel/common/source-data-catalog.js +60 -0
- package/dist/components/side-panel/common/source-data-selector.js +120 -0
- package/dist/components/side-panel/custom-panel.js +60 -0
- package/dist/components/side-panel/filter-manager.js +132 -0
- package/dist/components/side-panel/filter-panel/filter-panel-header.js +70 -0
- package/dist/components/side-panel/filter-panel/filter-panel.js +145 -0
- package/dist/components/side-panel/interaction-manager.js +58 -0
- package/dist/components/side-panel/interaction-panel/brush-config.js +54 -0
- package/dist/components/side-panel/interaction-panel/interaction-panel.js +168 -0
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +250 -0
- package/dist/components/side-panel/interaction-panel/tooltip-config.js +163 -0
- package/dist/components/side-panel/layer-manager.js +321 -0
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +45 -0
- package/dist/components/side-panel/layer-panel/color-palette.js +83 -0
- package/dist/components/side-panel/layer-panel/color-range-selector.js +370 -0
- package/dist/components/side-panel/layer-panel/color-selector.js +226 -0
- package/dist/components/side-panel/layer-panel/column-selector.js +65 -0
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +40 -0
- package/dist/components/side-panel/layer-panel/custom-palette.js +318 -0
- package/dist/components/side-panel/layer-panel/custom-picker.js +128 -0
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +61 -0
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +26 -0
- package/dist/components/side-panel/layer-panel/layer-column-config.js +93 -0
- package/dist/components/side-panel/layer-panel/layer-config-group.js +245 -0
- package/dist/components/side-panel/layer-panel/layer-configurator.js +977 -0
- package/dist/components/side-panel/layer-panel/layer-panel-header.js +222 -0
- package/dist/components/side-panel/layer-panel/layer-panel.js +201 -0
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +89 -0
- package/dist/components/side-panel/layer-panel/layer-type-list-item.js +71 -0
- package/dist/components/side-panel/layer-panel/layer-type-selector.js +96 -0
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +111 -0
- package/dist/components/side-panel/layer-panel/single-color-palette.js +109 -0
- package/dist/components/side-panel/layer-panel/text-label-panel.js +175 -0
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +174 -0
- package/dist/components/side-panel/layer-panel/vis-config-slider.js +90 -0
- package/dist/components/side-panel/layer-panel/vis-config-switch.js +84 -0
- package/dist/components/side-panel/map-manager.js +155 -0
- package/dist/components/side-panel/map-style-panel/map-layer-selector.js +106 -0
- package/dist/components/side-panel/map-style-panel/map-style-selector.js +78 -0
- package/dist/components/side-panel/panel-dropdown.js +86 -0
- package/dist/components/side-panel/panel-header-action.js +121 -0
- package/dist/components/side-panel/panel-header.js +351 -0
- package/dist/components/side-panel/panel-tab.js +68 -0
- package/dist/components/side-panel/panel-title.js +28 -0
- package/dist/components/side-panel/panel-toggle.js +69 -0
- package/dist/components/side-panel/side-bar.js +164 -0
- package/dist/components/side-panel.js +242 -0
- package/dist/connect/keplergl-connect.js +68 -0
- package/dist/connect/with-local-selector.js +110 -0
- package/dist/constants/action-types.js +180 -0
- package/dist/constants/color-palette.js +547 -0
- package/dist/constants/color-ranges.js +70 -0
- package/dist/constants/custom-color-ranges.js +415 -0
- package/dist/constants/default-settings.js +902 -0
- package/dist/constants/index.js +370 -0
- package/dist/constants/keyevent.js +47 -0
- package/dist/constants/tooltip.js +205 -0
- package/dist/constants/user-feedbacks.js +33 -0
- package/dist/constants/user-guides.js +44 -0
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +88 -0
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +214 -0
- package/dist/deckgl-layers/cluster-layer/cluster-layer.js +334 -0
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +78 -0
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +96 -0
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +96 -0
- package/dist/deckgl-layers/layer-utils/cluster-utils.js +119 -0
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +643 -0
- package/dist/deckgl-layers/layer-utils/shader-utils.js +50 -0
- package/dist/deckgl-layers/line-layer/line-layer.js +111 -0
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +78 -0
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +120 -0
- package/dist/index.js +155 -0
- package/dist/layers/aggregation-layer.js +416 -0
- package/dist/layers/arc-layer/arc-layer-icon.js +77 -0
- package/dist/layers/arc-layer/arc-layer.js +275 -0
- package/dist/layers/base-layer.js +1688 -0
- package/dist/layers/cluster-layer/cluster-layer-icon.js +80 -0
- package/dist/layers/cluster-layer/cluster-layer.js +151 -0
- package/dist/layers/default-layer-icon.js +87 -0
- package/dist/layers/geojson-layer/geojson-layer-icon.js +91 -0
- package/dist/layers/geojson-layer/geojson-layer.js +446 -0
- package/dist/layers/geojson-layer/geojson-utils.js +183 -0
- package/dist/layers/grid-layer/grid-layer-icon.js +136 -0
- package/dist/layers/grid-layer/grid-layer.js +115 -0
- package/dist/layers/grid-layer/grid-utils.js +62 -0
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +71 -0
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +346 -0
- package/dist/layers/h3-hexagon-layer/h3-utils.js +97 -0
- package/dist/layers/heatmap-layer/heatmap-layer-icon.js +88 -0
- package/dist/layers/heatmap-layer/heatmap-layer.js +269 -0
- package/dist/layers/hexagon-layer/hexagon-layer-icon.js +100 -0
- package/dist/layers/hexagon-layer/hexagon-layer.js +120 -0
- package/dist/layers/hexagon-layer/hexagon-utils.js +74 -0
- package/dist/layers/icon-layer/icon-info-modal.js +117 -0
- package/dist/layers/icon-layer/icon-layer-icon.js +73 -0
- package/dist/layers/icon-layer/icon-layer.js +392 -0
- package/dist/layers/index.js +97 -0
- package/dist/layers/layer-factory.js +499 -0
- package/dist/layers/layer-text-label.js +72 -0
- package/dist/layers/layer-update.js +85 -0
- package/dist/layers/line-layer/line-layer-icon.js +79 -0
- package/dist/layers/line-layer/line-layer.js +209 -0
- package/dist/layers/mapbox-utils.js +204 -0
- package/dist/layers/mapboxgl-layer.js +210 -0
- package/dist/layers/point-layer/point-layer-icon.js +94 -0
- package/dist/layers/point-layer/point-layer.js +475 -0
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +334 -0
- package/dist/layers/s2-geometry-layer/s2-layer-icon.js +70 -0
- package/dist/layers/s2-geometry-layer/s2-utils.js +51 -0
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +48 -0
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +151 -0
- package/dist/layers/scenegraph-layer/scenegraph-layer.js +250 -0
- package/dist/layers/trip-layer/trip-info-modal.js +54 -0
- package/dist/layers/trip-layer/trip-layer-icon.js +89 -0
- package/dist/layers/trip-layer/trip-layer.js +403 -0
- package/dist/layers/trip-layer/trip-utils.js +204 -0
- package/dist/layers/types.js +47 -0
- package/dist/localization/en.js +480 -0
- package/dist/localization/formatted-message.js +45 -0
- package/dist/localization/index.js +60 -0
- package/dist/localization/locales.js +64 -0
- package/dist/middleware/index.js +47 -0
- package/dist/processors/data-processor.js +784 -0
- package/dist/processors/file-handler.js +432 -0
- package/dist/processors/index.js +106 -0
- package/dist/reducers/combined-updaters.js +195 -0
- package/dist/reducers/composer-helpers.js +110 -0
- package/dist/reducers/composers.js +27 -0
- package/dist/reducers/core.js +156 -0
- package/dist/reducers/index.js +139 -0
- package/dist/reducers/map-state-updaters.js +239 -0
- package/dist/reducers/map-state.js +47 -0
- package/dist/reducers/map-style-updaters.js +531 -0
- package/dist/reducers/map-style.js +46 -0
- package/dist/reducers/provider-state-updaters.js +541 -0
- package/dist/reducers/provider-state.js +46 -0
- package/dist/reducers/root.js +218 -0
- package/dist/reducers/ui-state-updaters.js +855 -0
- package/dist/reducers/ui-state.js +47 -0
- package/dist/reducers/vis-state-merger.js +615 -0
- package/dist/reducers/vis-state-selectors.js +52 -0
- package/dist/reducers/vis-state-updaters.js +2433 -0
- package/dist/reducers/vis-state.js +46 -0
- package/dist/schemas/dataset-schema.js +189 -0
- package/dist/schemas/index.js +132 -0
- package/dist/schemas/map-state-schema.js +49 -0
- package/dist/schemas/map-style-schema.js +122 -0
- package/dist/schemas/schema-manager.js +262 -0
- package/dist/schemas/schema-utils.js +62 -0
- package/dist/schemas/schema.js +114 -0
- package/dist/schemas/versions.js +38 -0
- package/dist/schemas/vis-state-schema.js +1071 -0
- package/dist/styles/base.js +1570 -0
- package/dist/styles/index.js +32 -0
- package/dist/styles/media-breakpoints.js +39 -0
- package/dist/tasks/tasks.js +122 -0
- package/dist/templates/export-map-html.js +45 -0
- package/dist/utils/aggregate-utils.js +75 -0
- package/dist/utils/color-utils.js +135 -0
- package/dist/utils/data-scale-utils.js +84 -0
- package/dist/utils/data-utils.js +491 -0
- package/dist/utils/dataset-utils.js +254 -0
- package/dist/utils/dom-to-image.js +557 -0
- package/dist/utils/dom-utils.js +425 -0
- package/dist/utils/export-utils.js +297 -0
- package/dist/utils/filter-utils.js +1286 -0
- package/dist/utils/gl-utils.js +35 -0
- package/dist/utils/gpu-filter-utils.js +261 -0
- package/dist/utils/index.js +226 -0
- package/dist/utils/interaction-utils.js +201 -0
- package/dist/utils/layer-utils.js +205 -0
- package/dist/utils/locale-utils.js +54 -0
- package/dist/utils/map-info-utils.js +32 -0
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +212 -0
- package/dist/utils/map-style-utils/mapbox-utils.js +35 -0
- package/dist/utils/mapbox-utils.js +39 -0
- package/dist/utils/notifications-utils.js +89 -0
- package/dist/utils/observe-dimensions.js +147 -0
- package/dist/utils/projection-utils.js +83 -0
- package/dist/utils/searcher-utils.js +45 -0
- package/dist/utils/split-map-utils.js +108 -0
- package/dist/utils/table-utils/data-container-utils.js +69 -0
- package/dist/utils/table-utils/data-row.js +82 -0
- package/dist/utils/table-utils/index.js +20 -0
- package/dist/utils/table-utils/indexed-data-container.js +241 -0
- package/dist/utils/table-utils/kepler-table.js +544 -0
- package/dist/utils/table-utils/row-data-container.js +242 -0
- package/dist/utils/utils.js +234 -0
- package/layers.js +21 -0
- package/localization.js +21 -0
- package/middleware.js +21 -0
- package/package.json +281 -0
- package/processors.js +21 -0
- package/reducers.js +21 -0
- package/schemas.js +21 -0
- package/src/actions/action-wrapper.js +183 -0
- package/src/actions/actions.d.ts +104 -0
- package/src/actions/actions.js +178 -0
- package/src/actions/identity-actions.d.ts +53 -0
- package/src/actions/identity-actions.js +83 -0
- package/src/actions/index.d.ts +23 -0
- package/src/actions/index.js +42 -0
- package/src/actions/map-state-actions.d.ts +46 -0
- package/src/actions/map-state-actions.js +90 -0
- package/src/actions/map-style-actions.d.ts +116 -0
- package/src/actions/map-style-actions.js +135 -0
- package/src/actions/provider-actions.d.ts +203 -0
- package/src/actions/provider-actions.js +94 -0
- package/src/actions/ui-state-actions.d.ts +200 -0
- package/src/actions/ui-state-actions.js +272 -0
- package/src/actions/vis-state-actions.d.ts +502 -0
- package/src/actions/vis-state-actions.js +919 -0
- package/src/cloud-providers/index.d.ts +53 -0
- package/src/cloud-providers/index.js +21 -0
- package/src/cloud-providers/provider.js +233 -0
- package/src/components/bottom-widget.d.ts +33 -0
- package/src/components/bottom-widget.js +235 -0
- package/src/components/common/action-panel.d.ts +24 -0
- package/src/components/common/action-panel.js +177 -0
- package/src/components/common/animation-control/animation-control.js +155 -0
- package/src/components/common/animation-control/animation-controller.js +224 -0
- package/src/components/common/animation-control/animation-speed-slider.js +79 -0
- package/src/components/common/animation-control/floating-time-display.js +192 -0
- package/src/components/common/animation-control/playback-controls.js +278 -0
- package/src/components/common/animation-control/speed-control.js +71 -0
- package/src/components/common/checkbox.js +128 -0
- package/src/components/common/color-legend.js +198 -0
- package/src/components/common/data-table/button.js +47 -0
- package/src/components/common/data-table/canvas.js +43 -0
- package/src/components/common/data-table/cell-size.js +180 -0
- package/src/components/common/data-table/grid.js +55 -0
- package/src/components/common/data-table/index.js +620 -0
- package/src/components/common/data-table/option-dropdown.js +110 -0
- package/src/components/common/dataset-label.js +40 -0
- package/src/components/common/error-boundary.js +43 -0
- package/src/components/common/field-selector.js +233 -0
- package/src/components/common/field-token.js +56 -0
- package/src/components/common/file-uploader/file-drop.d.ts +19 -0
- package/src/components/common/file-uploader/file-drop.js +196 -0
- package/src/components/common/file-uploader/file-upload-progress.d.ts +11 -0
- package/src/components/common/file-uploader/file-upload-progress.js +110 -0
- package/src/components/common/file-uploader/file-upload.d.ts +22 -0
- package/src/components/common/file-uploader/file-upload.js +301 -0
- package/src/components/common/file-uploader/upload-button.d.ts.wip +11 -0
- package/src/components/common/file-uploader/upload-button.js +83 -0
- package/src/components/common/histogram-plot.js +102 -0
- package/src/components/common/icons/add.js +43 -0
- package/src/components/common/icons/anchor_window.js +53 -0
- package/src/components/common/icons/arrow-down-alt.js +43 -0
- package/src/components/common/icons/arrow-down-solid .js +43 -0
- package/src/components/common/icons/arrow-down.js +46 -0
- package/src/components/common/icons/arrow-left.js +48 -0
- package/src/components/common/icons/arrow-right.js +46 -0
- package/src/components/common/icons/arrow-up-alt.js +46 -0
- package/src/components/common/icons/arrow-up-solid.js +43 -0
- package/src/components/common/icons/arrow-up.js +46 -0
- package/src/components/common/icons/base.js +90 -0
- package/src/components/common/icons/bug.js +46 -0
- package/src/components/common/icons/cancel.js +43 -0
- package/src/components/common/icons/checkmark.js +45 -0
- package/src/components/common/icons/chevron-right.js +47 -0
- package/src/components/common/icons/clipboard.js +46 -0
- package/src/components/common/icons/clock.js +44 -0
- package/src/components/common/icons/close.js +49 -0
- package/src/components/common/icons/code-alt.js +43 -0
- package/src/components/common/icons/copy.js +44 -0
- package/src/components/common/icons/crosshairs.js +43 -0
- package/src/components/common/icons/cube-3d.js +45 -0
- package/src/components/common/icons/cursor-click.js +49 -0
- package/src/components/common/icons/data-table.js +45 -0
- package/src/components/common/icons/db.js +45 -0
- package/src/components/common/icons/delete.js +44 -0
- package/src/components/common/icons/docs.js +46 -0
- package/src/components/common/icons/drag-n-drop.js +44 -0
- package/src/components/common/icons/draw-polygon.js +60 -0
- package/src/components/common/icons/email.js +45 -0
- package/src/components/common/icons/expand.js +45 -0
- package/src/components/common/icons/eye-seen.js +44 -0
- package/src/components/common/icons/eye-unseen.js +44 -0
- package/src/components/common/icons/file-type.js +57 -0
- package/src/components/common/icons/file.js +43 -0
- package/src/components/common/icons/files.js +42 -0
- package/src/components/common/icons/filter-funnel.js +43 -0
- package/src/components/common/icons/free-window.js +53 -0
- package/src/components/common/icons/gear.js +45 -0
- package/src/components/common/icons/hash.js +43 -0
- package/src/components/common/icons/histogram.js +47 -0
- package/src/components/common/icons/index.js +96 -0
- package/src/components/common/icons/info.js +54 -0
- package/src/components/common/icons/layers.js +43 -0
- package/src/components/common/icons/left-arrow.js +43 -0
- package/src/components/common/icons/legend.js +43 -0
- package/src/components/common/icons/line-chart.js +45 -0
- package/src/components/common/icons/login.js +46 -0
- package/src/components/common/icons/logout.js +43 -0
- package/src/components/common/icons/map-icon.js +69 -0
- package/src/components/common/icons/map.js +69 -0
- package/src/components/common/icons/messages.js +43 -0
- package/src/components/common/icons/minus.js +45 -0
- package/src/components/common/icons/pause.js +43 -0
- package/src/components/common/icons/picture.js +43 -0
- package/src/components/common/icons/pin.js +43 -0
- package/src/components/common/icons/play.js +43 -0
- package/src/components/common/icons/polygon.js +74 -0
- package/src/components/common/icons/rectangle.js +75 -0
- package/src/components/common/icons/reduce.js +48 -0
- package/src/components/common/icons/reset.js +43 -0
- package/src/components/common/icons/rocket.js +43 -0
- package/src/components/common/icons/save.js +44 -0
- package/src/components/common/icons/save2.js +47 -0
- package/src/components/common/icons/search.js +44 -0
- package/src/components/common/icons/settings.js +45 -0
- package/src/components/common/icons/share.js +43 -0
- package/src/components/common/icons/split.js +63 -0
- package/src/components/common/icons/square-select.js +44 -0
- package/src/components/common/icons/swap-horizontal.js +43 -0
- package/src/components/common/icons/table.js +46 -0
- package/src/components/common/icons/trash.js +51 -0
- package/src/components/common/icons/upload.js +44 -0
- package/src/components/common/icons/vert-dots.js +50 -0
- package/src/components/common/icons/vert-three-dots.js +45 -0
- package/src/components/common/icons/warning.js +46 -0
- package/src/components/common/image-preview.js +111 -0
- package/src/components/common/info-helper.js +84 -0
- package/src/components/common/item-selector/accessor.js +45 -0
- package/src/components/common/item-selector/chickleted-input.js +143 -0
- package/src/components/common/item-selector/dropdown-list.js +250 -0
- package/src/components/common/item-selector/item-selector-submenu.js +68 -0
- package/src/components/common/item-selector/item-selector.d.ts +34 -0
- package/src/components/common/item-selector/item-selector.js +360 -0
- package/src/components/common/item-selector/typeahead.js +507 -0
- package/src/components/common/line-chart.js +134 -0
- package/src/components/common/loading-spinner.js +64 -0
- package/src/components/common/logo.js +92 -0
- package/src/components/common/map-layer-selector.d.ts +10 -0
- package/src/components/common/map-layer-selector.js +54 -0
- package/src/components/common/modal.js +233 -0
- package/src/components/common/portaled.js +264 -0
- package/src/components/common/progress-bar.d.ts +13 -0
- package/src/components/common/progress-bar.js +49 -0
- package/src/components/common/range-brush.js +256 -0
- package/src/components/common/range-plot.js +139 -0
- package/src/components/common/range-slider.js +299 -0
- package/src/components/common/slider/mouse-event.js +97 -0
- package/src/components/common/slider/slider-bar-handle.js +97 -0
- package/src/components/common/slider/slider-handle.js +181 -0
- package/src/components/common/slider/slider.js +213 -0
- package/src/components/common/styled-components.js +657 -0
- package/src/components/common/switch.js +50 -0
- package/src/components/common/time-range-slider-time-title.js +76 -0
- package/src/components/common/time-range-slider.js +163 -0
- package/src/components/common/time-slider-marker.js +168 -0
- package/src/components/common/toolbar-item.d.ts +14 -0
- package/src/components/common/toolbar-item.js +83 -0
- package/src/components/common/toolbar.js +45 -0
- package/src/components/common/vertical-toolbar.js +35 -0
- package/src/components/container.js +173 -0
- package/src/components/context.d.ts +10 -0
- package/src/components/context.js +32 -0
- package/src/components/editor/constants.js +39 -0
- package/src/components/editor/editor.js +218 -0
- package/src/components/editor/feature-action-panel.js +143 -0
- package/src/components/editor/feature-styles.js +75 -0
- package/src/components/editor/handle-style.js +89 -0
- package/src/components/filters/components.js +28 -0
- package/src/components/filters/filter-panels/filter-panel-types.d.ts +28 -0
- package/src/components/filters/filter-panels/filter-panel-with-field-select.js +124 -0
- package/src/components/filters/filter-panels/multi-select-filter-panel.js +75 -0
- package/src/components/filters/filter-panels/new-filter-panel.js +99 -0
- package/src/components/filters/filter-panels/polygon-filter-panel.js +96 -0
- package/src/components/filters/filter-panels/range-filter-panel.js +75 -0
- package/src/components/filters/filter-panels/single-select-filter-panel.js +75 -0
- package/src/components/filters/filter-panels/time-range-filter-panel.js +95 -0
- package/src/components/filters/index.js +25 -0
- package/src/components/filters/multi-select-filter.js +36 -0
- package/src/components/filters/polygon-filter.d.ts +13 -0
- package/src/components/filters/polygon-filter.js +73 -0
- package/src/components/filters/range-filter.js +43 -0
- package/src/components/filters/single-select-filter.js +49 -0
- package/src/components/filters/time-range-filter.js +68 -0
- package/src/components/filters/time-widget.js +228 -0
- package/src/components/geocoder/geocoder.d.ts +33 -0
- package/src/components/geocoder/geocoder.js +272 -0
- package/src/components/geocoder-panel.js +191 -0
- package/src/components/index.js +247 -0
- package/src/components/injector.js +161 -0
- package/src/components/kepler-gl.d.ts +60 -0
- package/src/components/kepler-gl.js +525 -0
- package/src/components/map/coordinate-info.js +53 -0
- package/src/components/map/layer-hover-info.d.ts +12 -0
- package/src/components/map/layer-hover-info.js +185 -0
- package/src/components/map/layer-selector-panel.d.ts +16 -0
- package/src/components/map/layer-selector-panel.js +106 -0
- package/src/components/map/locale-panel.d.ts +12 -0
- package/src/components/map/locale-panel.js +91 -0
- package/src/components/map/map-control-panel.d.ts +11 -0
- package/src/components/map/map-control-panel.js +98 -0
- package/src/components/map/map-control-toolbar.js +33 -0
- package/src/components/map/map-control-tooltip.d.ts +8 -0
- package/src/components/map/map-control-tooltip.js +40 -0
- package/src/components/map/map-control.d.ts +37 -0
- package/src/components/map/map-control.js +100 -0
- package/src/components/map/map-draw-panel.d.ts +16 -0
- package/src/components/map/map-draw-panel.js +125 -0
- package/src/components/map/map-legend-panel.d.ts +20 -0
- package/src/components/map/map-legend-panel.js +100 -0
- package/src/components/map/map-legend.d.ts +58 -0
- package/src/components/map/map-legend.js +228 -0
- package/src/components/map/map-popover.d.ts +28 -0
- package/src/components/map/map-popover.js +250 -0
- package/src/components/map/split-map-button.d.ts +19 -0
- package/src/components/map/split-map-button.js +82 -0
- package/src/components/map/toggle-3d-button.d.ts +16 -0
- package/src/components/map/toggle-3d-button.js +75 -0
- package/src/components/map-container.d.ts +18 -0
- package/src/components/map-container.js +502 -0
- package/src/components/maps-layout.d.ts +5 -0
- package/src/components/maps-layout.js +40 -0
- package/src/components/modal-container.d.ts +38 -0
- package/src/components/modal-container.js +545 -0
- package/src/components/modals/add-map-style-modal.js +301 -0
- package/src/components/modals/cloud-tile.js +147 -0
- package/src/components/modals/data-table-modal.js +217 -0
- package/src/components/modals/delete-data-modal.js +48 -0
- package/src/components/modals/error-display.js +39 -0
- package/src/components/modals/export-data-modal.js +193 -0
- package/src/components/modals/export-image-modal.d.ts +21 -0
- package/src/components/modals/export-image-modal.js +144 -0
- package/src/components/modals/export-map-modal/components.js +42 -0
- package/src/components/modals/export-map-modal/export-html-map.d.ts +21 -0
- package/src/components/modals/export-map-modal/export-html-map.js +145 -0
- package/src/components/modals/export-map-modal/export-json-map.js +100 -0
- package/src/components/modals/export-map-modal/export-map-modal.js +114 -0
- package/src/components/modals/image-modal-container.d.ts +13 -0
- package/src/components/modals/image-modal-container.js +76 -0
- package/src/components/modals/load-data-modal.d.ts +30 -0
- package/src/components/modals/load-data-modal.js +94 -0
- package/src/components/modals/load-storage-map.js +381 -0
- package/src/components/modals/loading-dialog.js +69 -0
- package/src/components/modals/modal-dialog.js +25 -0
- package/src/components/modals/modal-tabs.js +126 -0
- package/src/components/modals/overwrite-map-modal.d.ts +18 -0
- package/src/components/modals/overwrite-map-modal.js +97 -0
- package/src/components/modals/provider-modal-container.d.ts +12 -0
- package/src/components/modals/provider-modal-container.js +60 -0
- package/src/components/modals/save-map-modal.d.ts +32 -0
- package/src/components/modals/save-map-modal.js +244 -0
- package/src/components/modals/share-map-modal.js +208 -0
- package/src/components/modals/status-panel.js +95 -0
- package/src/components/modals/storage-map-viewer.js +177 -0
- package/src/components/notification-panel/notification-item.js +132 -0
- package/src/components/notification-panel.js +72 -0
- package/src/components/performance.js +103 -0
- package/src/components/plot-container.js +228 -0
- package/src/components/side-panel/cloud-storage-dropdown.js +52 -0
- package/src/components/side-panel/common/dataset-info.js +45 -0
- package/src/components/side-panel/common/dataset-tag.js +55 -0
- package/src/components/side-panel/common/dataset-title.js +146 -0
- package/src/components/side-panel/common/source-data-catalog.js +61 -0
- package/src/components/side-panel/common/source-data-selector.js +79 -0
- package/src/components/side-panel/custom-panel.js +50 -0
- package/src/components/side-panel/filter-manager.js +105 -0
- package/src/components/side-panel/filter-panel/filter-panel-header.js +83 -0
- package/src/components/side-panel/filter-panel/filter-panel.js +126 -0
- package/src/components/side-panel/interaction-manager.js +46 -0
- package/src/components/side-panel/interaction-panel/brush-config.js +51 -0
- package/src/components/side-panel/interaction-panel/interaction-panel.js +115 -0
- package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +199 -0
- package/src/components/side-panel/interaction-panel/tooltip-config.js +190 -0
- package/src/components/side-panel/layer-manager.js +290 -0
- package/src/components/side-panel/layer-panel/color-dimension-scale-selector.js +33 -0
- package/src/components/side-panel/layer-panel/color-palette.js +90 -0
- package/src/components/side-panel/layer-panel/color-range-selector.js +322 -0
- package/src/components/side-panel/layer-panel/color-selector.js +193 -0
- package/src/components/side-panel/layer-panel/column-selector.js +70 -0
- package/src/components/side-panel/layer-panel/custom-markers-config-group.js +30 -0
- package/src/components/side-panel/layer-panel/custom-palette.js +296 -0
- package/src/components/side-panel/layer-panel/custom-picker.js +88 -0
- package/src/components/side-panel/layer-panel/dimension-scale-selector.js +48 -0
- package/src/components/side-panel/layer-panel/layer-aggregation-resolution.js +13 -0
- package/src/components/side-panel/layer-panel/layer-column-config.js +113 -0
- package/src/components/side-panel/layer-panel/layer-config-group.js +237 -0
- package/src/components/side-panel/layer-panel/layer-configurator.js +1317 -0
- package/src/components/side-panel/layer-panel/layer-panel-header.js +236 -0
- package/src/components/side-panel/layer-panel/layer-panel.js +171 -0
- package/src/components/side-panel/layer-panel/layer-type-dropdown-list.js +105 -0
- package/src/components/side-panel/layer-panel/layer-type-list-item.js +83 -0
- package/src/components/side-panel/layer-panel/layer-type-selector.js +89 -0
- package/src/components/side-panel/layer-panel/layer-visibility-by-zoom.js +123 -0
- package/src/components/side-panel/layer-panel/single-color-palette.js +98 -0
- package/src/components/side-panel/layer-panel/text-label-panel.js +179 -0
- package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +163 -0
- package/src/components/side-panel/layer-panel/vis-config-slider.js +82 -0
- package/src/components/side-panel/layer-panel/vis-config-switch.js +87 -0
- package/src/components/side-panel/map-manager.js +114 -0
- package/src/components/side-panel/map-style-panel/map-layer-selector.js +128 -0
- package/src/components/side-panel/map-style-panel/map-style-selector.js +111 -0
- package/src/components/side-panel/panel-dropdown.js +53 -0
- package/src/components/side-panel/panel-header-action.js +106 -0
- package/src/components/side-panel/panel-header.js +321 -0
- package/src/components/side-panel/panel-tab.js +62 -0
- package/src/components/side-panel/panel-title.js +32 -0
- package/src/components/side-panel/panel-toggle.js +70 -0
- package/src/components/side-panel/side-bar.js +136 -0
- package/src/components/side-panel.d.ts +33 -0
- package/src/components/side-panel.js +253 -0
- package/src/connect/keplergl-connect.js +47 -0
- package/src/connect/with-local-selector.d.ts +11 -0
- package/src/connect/with-local-selector.js +67 -0
- package/src/constants/action-types.d.ts +135 -0
- package/src/constants/action-types.js +184 -0
- package/src/constants/color-palette.js +553 -0
- package/src/constants/color-ranges.js +63 -0
- package/src/constants/custom-color-ranges.js +551 -0
- package/src/constants/default-settings.js +991 -0
- package/src/constants/index.js +80 -0
- package/src/constants/keyevent.js +36 -0
- package/src/constants/tooltip.js +198 -0
- package/src/constants/user-feedbacks.js +32 -0
- package/src/constants/user-guides.js +32 -0
- package/src/deckgl-layers/3d-building-layer/3d-building-layer.js +56 -0
- package/src/deckgl-layers/3d-building-layer/3d-building-utils.js +192 -0
- package/src/deckgl-layers/cluster-layer/cluster-layer.js +255 -0
- package/src/deckgl-layers/column-layer/enhanced-column-layer.js +63 -0
- package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +70 -0
- package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +70 -0
- package/src/deckgl-layers/layer-utils/cluster-utils.js +76 -0
- package/src/deckgl-layers/layer-utils/cpu-aggregator.js +583 -0
- package/src/deckgl-layers/layer-utils/shader-utils.js +41 -0
- package/src/deckgl-layers/line-layer/line-layer.js +122 -0
- package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +57 -0
- package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.js +85 -0
- package/src/index.js +52 -0
- package/src/layers/aggregation-layer.js +356 -0
- package/src/layers/arc-layer/arc-layer-icon.js +67 -0
- package/src/layers/arc-layer/arc-layer.js +221 -0
- package/src/layers/base-layer.js +1439 -0
- package/src/layers/cluster-layer/cluster-layer-icon.js +71 -0
- package/src/layers/cluster-layer/cluster-layer.js +125 -0
- package/src/layers/default-layer-icon.js +50 -0
- package/src/layers/geojson-layer/geojson-layer-icon.js +68 -0
- package/src/layers/geojson-layer/geojson-layer.js +344 -0
- package/src/layers/geojson-layer/geojson-utils.js +179 -0
- package/src/layers/grid-layer/grid-layer-icon.js +53 -0
- package/src/layers/grid-layer/grid-layer.js +95 -0
- package/src/layers/grid-layer/grid-utils.js +71 -0
- package/src/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +48 -0
- package/src/layers/h3-hexagon-layer/h3-hexagon-layer.js +264 -0
- package/src/layers/h3-hexagon-layer/h3-utils.js +65 -0
- package/src/layers/heatmap-layer/heatmap-layer-icon.js +64 -0
- package/src/layers/heatmap-layer/heatmap-layer.js +226 -0
- package/src/layers/hexagon-layer/hexagon-layer-icon.js +74 -0
- package/src/layers/hexagon-layer/hexagon-layer.js +95 -0
- package/src/layers/hexagon-layer/hexagon-utils.js +63 -0
- package/src/layers/icon-layer/icon-info-modal.js +155 -0
- package/src/layers/icon-layer/icon-layer-icon.js +56 -0
- package/src/layers/icon-layer/icon-layer.js +324 -0
- package/src/layers/index.d.ts +126 -0
- package/src/layers/index.js +72 -0
- package/src/layers/layer-factory.d.ts +148 -0
- package/src/layers/layer-factory.js +480 -0
- package/src/layers/layer-text-label.js +62 -0
- package/src/layers/layer-update.js +71 -0
- package/src/layers/line-layer/line-layer-icon.js +69 -0
- package/src/layers/line-layer/line-layer.js +161 -0
- package/src/layers/mapbox-utils.js +195 -0
- package/src/layers/mapboxgl-layer.js +154 -0
- package/src/layers/point-layer/point-layer-icon.js +51 -0
- package/src/layers/point-layer/point-layer.js +414 -0
- package/src/layers/s2-geometry-layer/s2-geometry-layer.js +265 -0
- package/src/layers/s2-geometry-layer/s2-layer-icon.js +47 -0
- package/src/layers/s2-geometry-layer/s2-utils.js +36 -0
- package/src/layers/scenegraph-layer/scenegraph-info-modal.js +97 -0
- package/src/layers/scenegraph-layer/scenegraph-layer-icon.js +144 -0
- package/src/layers/scenegraph-layer/scenegraph-layer.js +182 -0
- package/src/layers/trip-layer/trip-info-modal.js +82 -0
- package/src/layers/trip-layer/trip-layer-icon.js +62 -0
- package/src/layers/trip-layer/trip-layer.js +295 -0
- package/src/layers/trip-layer/trip-utils.js +169 -0
- package/src/layers/types.js +37 -0
- package/src/localization/en.js +501 -0
- package/src/localization/formatted-message.js +33 -0
- package/src/localization/index.js +32 -0
- package/src/localization/locales.js +46 -0
- package/src/middleware/index.js +34 -0
- package/src/processors/data-processor.d.ts +57 -0
- package/src/processors/data-processor.js +684 -0
- package/src/processors/file-handler.d.ts +46 -0
- package/src/processors/file-handler.js +220 -0
- package/src/processors/index.js +44 -0
- package/src/reducers/combined-updaters.d.ts +26 -0
- package/src/reducers/combined-updaters.js +198 -0
- package/src/reducers/composer-helpers.d.ts +32 -0
- package/src/reducers/composer-helpers.js +70 -0
- package/src/reducers/composers.js +33 -0
- package/src/reducers/core.d.ts +25 -0
- package/src/reducers/core.js +97 -0
- package/src/reducers/index.d.ts +118 -0
- package/src/reducers/index.js +53 -0
- package/src/reducers/map-state-updaters.d.ts +64 -0
- package/src/reducers/map-state-updaters.js +224 -0
- package/src/reducers/map-state.js +47 -0
- package/src/reducers/map-style-updaters.d.ts +76 -0
- package/src/reducers/map-style-updaters.js +541 -0
- package/src/reducers/map-style.js +53 -0
- package/src/reducers/provider-state-updaters.d.ts +88 -0
- package/src/reducers/provider-state-updaters.js +428 -0
- package/src/reducers/provider-state.js +53 -0
- package/src/reducers/root.js +230 -0
- package/src/reducers/types.d.ts +10 -0
- package/src/reducers/ui-state-updaters.d.ts +198 -0
- package/src/reducers/ui-state-updaters.js +766 -0
- package/src/reducers/ui-state.js +73 -0
- package/src/reducers/vis-state-merger.d.ts +78 -0
- package/src/reducers/vis-state-merger.js +545 -0
- package/src/reducers/vis-state-selectors.js +35 -0
- package/src/reducers/vis-state-updaters.d.ts +534 -0
- package/src/reducers/vis-state-updaters.js +2137 -0
- package/src/reducers/vis-state.js +155 -0
- package/src/schemas/dataset-schema.js +141 -0
- package/src/schemas/index.d.ts +24 -0
- package/src/schemas/index.js +42 -0
- package/src/schemas/map-state-schema.js +52 -0
- package/src/schemas/map-style-schema.js +95 -0
- package/src/schemas/schema-manager.d.ts +229 -0
- package/src/schemas/schema-manager.js +228 -0
- package/src/schemas/schema-utils.js +54 -0
- package/src/schemas/schema.d.ts +47 -0
- package/src/schemas/schema.js +90 -0
- package/src/schemas/versions.d.ts +23 -0
- package/src/schemas/versions.js +28 -0
- package/src/schemas/vis-state-schema.js +731 -0
- package/src/styles/base.js +1620 -0
- package/src/styles/index.js +22 -0
- package/src/styles/media-breakpoints.js +47 -0
- package/src/tasks/tasks.js +92 -0
- package/src/templates/export-map-html.js +262 -0
- package/src/typedefs/README.md +3 -0
- package/src/typedefs/deck.gl__core.d.ts +64 -0
- package/src/typedefs/deck.gl__mesh-layers.d.ts +33 -0
- package/src/utils/aggregate-utils.js +71 -0
- package/src/utils/color-utils.js +106 -0
- package/src/utils/data-scale-utils.d.ts +26 -0
- package/src/utils/data-scale-utils.js +61 -0
- package/src/utils/data-utils.d.ts +45 -0
- package/src/utils/data-utils.js +428 -0
- package/src/utils/dataset-utils.d.ts +10 -0
- package/src/utils/dataset-utils.js +255 -0
- package/src/utils/dom-to-image.js +533 -0
- package/src/utils/dom-utils.js +354 -0
- package/src/utils/export-utils.js +247 -0
- package/src/utils/filter-utils.d.ts +192 -0
- package/src/utils/filter-utils.js +1114 -0
- package/src/utils/gl-utils.js +42 -0
- package/src/utils/gpu-filter-utils.d.ts +28 -0
- package/src/utils/gpu-filter-utils.js +253 -0
- package/src/utils/index.d.ts +5 -0
- package/src/utils/index.js +55 -0
- package/src/utils/interaction-utils.d.ts +36 -0
- package/src/utils/interaction-utils.js +185 -0
- package/src/utils/layer-utils.d.ts +78 -0
- package/src/utils/layer-utils.js +205 -0
- package/src/utils/locale-utils.js +59 -0
- package/src/utils/map-info-utils.js +29 -0
- package/src/utils/map-style-utils/mapbox-gl-style-editor.js +201 -0
- package/src/utils/map-style-utils/mapbox-utils.js +28 -0
- package/src/utils/mapbox-utils.js +27 -0
- package/src/utils/notifications-utils.js +83 -0
- package/src/utils/observe-dimensions.d.ts +18 -0
- package/src/utils/observe-dimensions.js +115 -0
- package/src/utils/projection-utils.js +72 -0
- package/src/utils/searcher-utils.js +37 -0
- package/src/utils/split-map-utils.js +104 -0
- package/src/utils/table-utils/UPGRADE-data-container.md +38 -0
- package/src/utils/table-utils/data-container-interface.d.ts +140 -0
- package/src/utils/table-utils/data-container-utils.d.ts +43 -0
- package/src/utils/table-utils/data-container-utils.js +61 -0
- package/src/utils/table-utils/data-row.d.ts +65 -0
- package/src/utils/table-utils/data-row.js +54 -0
- package/src/utils/table-utils/index.d.ts +1 -0
- package/src/utils/table-utils/index.js +21 -0
- package/src/utils/table-utils/indexed-data-container.d.ts +26 -0
- package/src/utils/table-utils/indexed-data-container.js +152 -0
- package/src/utils/table-utils/kepler-table.d.ts +114 -0
- package/src/utils/table-utils/kepler-table.js +486 -0
- package/src/utils/table-utils/row-data-container.d.ts +30 -0
- package/src/utils/table-utils/row-data-container.js +151 -0
- package/src/utils/utils.js +202 -0
- package/styles.js +21 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
import React, {Component} from 'react';
|
|
22
|
+
import PropTypes from 'prop-types';
|
|
23
|
+
import styled from 'styled-components';
|
|
24
|
+
import Processors from 'processors';
|
|
25
|
+
import {FlyToInterpolator} from '@deck.gl/core';
|
|
26
|
+
import KeplerGlSchema from 'schemas';
|
|
27
|
+
import {getCenterAndZoomFromBounds} from 'utils/projection-utils';
|
|
28
|
+
|
|
29
|
+
import Geocoder from './geocoder/geocoder';
|
|
30
|
+
import {
|
|
31
|
+
GEOCODER_DATASET_NAME,
|
|
32
|
+
GEOCODER_LAYER_ID,
|
|
33
|
+
GEOCODER_GEO_OFFSET,
|
|
34
|
+
GEOCODER_ICON_COLOR,
|
|
35
|
+
GEOCODER_ICON_SIZE
|
|
36
|
+
} from 'constants/default-settings';
|
|
37
|
+
|
|
38
|
+
const ICON_LAYER = {
|
|
39
|
+
id: GEOCODER_LAYER_ID,
|
|
40
|
+
type: 'icon',
|
|
41
|
+
config: {
|
|
42
|
+
label: 'Geocoder Layer',
|
|
43
|
+
color: GEOCODER_ICON_COLOR,
|
|
44
|
+
dataId: GEOCODER_DATASET_NAME,
|
|
45
|
+
columns: {
|
|
46
|
+
lat: 'lt',
|
|
47
|
+
lng: 'ln',
|
|
48
|
+
icon: 'icon',
|
|
49
|
+
label: 'text'
|
|
50
|
+
},
|
|
51
|
+
isVisible: true,
|
|
52
|
+
hidden: true,
|
|
53
|
+
visConfig: {
|
|
54
|
+
radius: GEOCODER_ICON_SIZE
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
const PARSED_CONFIG = KeplerGlSchema.parseSavedConfig({
|
|
60
|
+
version: 'v1',
|
|
61
|
+
config: {
|
|
62
|
+
visState: {
|
|
63
|
+
layers: [ICON_LAYER]
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
const StyledGeocoderPanel = styled.div`
|
|
69
|
+
position: absolute;
|
|
70
|
+
top: ${props => props.theme.geocoderTop}px;
|
|
71
|
+
right: ${props => props.theme.geocoderRight}px;
|
|
72
|
+
width: ${props => (Number.isFinite(props.width) ? props.width : props.theme.geocoderWidth)}px;
|
|
73
|
+
box-shadow: ${props => props.theme.boxShadow};
|
|
74
|
+
z-index: 100;
|
|
75
|
+
`;
|
|
76
|
+
|
|
77
|
+
function generateGeocoderDataset(lat, lon, text) {
|
|
78
|
+
return {
|
|
79
|
+
data: Processors.processRowObject([
|
|
80
|
+
{
|
|
81
|
+
lt: lat,
|
|
82
|
+
ln: lon,
|
|
83
|
+
icon: 'place',
|
|
84
|
+
text
|
|
85
|
+
}
|
|
86
|
+
]),
|
|
87
|
+
id: GEOCODER_DATASET_NAME,
|
|
88
|
+
info: {
|
|
89
|
+
hidden: true,
|
|
90
|
+
id: GEOCODER_DATASET_NAME,
|
|
91
|
+
label: GEOCODER_DATASET_NAME
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
function isValid(key) {
|
|
97
|
+
return /pk\..*\..*/.test(key);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export default function GeocoderPanelFactory() {
|
|
101
|
+
class GeocoderPanel extends Component {
|
|
102
|
+
static propTypes = {
|
|
103
|
+
isGeocoderEnabled: PropTypes.bool.isRequired,
|
|
104
|
+
mapboxApiAccessToken: PropTypes.string.isRequired,
|
|
105
|
+
mapState: PropTypes.object.isRequired,
|
|
106
|
+
updateVisData: PropTypes.func.isRequired,
|
|
107
|
+
removeDataset: PropTypes.func.isRequired,
|
|
108
|
+
updateMap: PropTypes.func.isRequired,
|
|
109
|
+
|
|
110
|
+
transitionDuration: PropTypes.number,
|
|
111
|
+
width: PropTypes.number
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
removeGeocoderDataset() {
|
|
115
|
+
this.props.removeDataset(GEOCODER_DATASET_NAME);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
onSelected = (viewport = null, geoItem) => {
|
|
119
|
+
const {
|
|
120
|
+
center: [lon, lat],
|
|
121
|
+
text,
|
|
122
|
+
bbox
|
|
123
|
+
} = geoItem;
|
|
124
|
+
this.removeGeocoderDataset();
|
|
125
|
+
this.props.updateVisData(
|
|
126
|
+
[generateGeocoderDataset(lat, lon, text)],
|
|
127
|
+
{
|
|
128
|
+
keepExistingConfig: true
|
|
129
|
+
},
|
|
130
|
+
PARSED_CONFIG
|
|
131
|
+
);
|
|
132
|
+
const bounds = bbox || [
|
|
133
|
+
lon - GEOCODER_GEO_OFFSET,
|
|
134
|
+
lat - GEOCODER_GEO_OFFSET,
|
|
135
|
+
lon + GEOCODER_GEO_OFFSET,
|
|
136
|
+
lat + GEOCODER_GEO_OFFSET
|
|
137
|
+
];
|
|
138
|
+
const centerAndZoom = getCenterAndZoomFromBounds(bounds, {
|
|
139
|
+
width: this.props.mapState.width,
|
|
140
|
+
height: this.props.mapState.height
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
if (!centerAndZoom) {
|
|
144
|
+
// failed to fit bounds
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
this.props.updateMap({
|
|
149
|
+
latitude: centerAndZoom.center[1],
|
|
150
|
+
longitude: centerAndZoom.center[0],
|
|
151
|
+
// For marginal or invalid bounds, zoom may be NaN. Make sure to provide a valid value in order
|
|
152
|
+
// to avoid corrupt state and potential crashes as zoom is expected to be a number
|
|
153
|
+
...(Number.isFinite(centerAndZoom.zoom) ? {zoom: centerAndZoom.zoom} : {}),
|
|
154
|
+
pitch: 0,
|
|
155
|
+
bearing: 0,
|
|
156
|
+
transitionDuration: this.props.transitionDuration,
|
|
157
|
+
transitionInterpolator: new FlyToInterpolator()
|
|
158
|
+
});
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
removeMarker = () => {
|
|
162
|
+
this.removeGeocoderDataset();
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
render() {
|
|
166
|
+
const {isGeocoderEnabled, mapboxApiAccessToken, width} = this.props;
|
|
167
|
+
return (
|
|
168
|
+
<StyledGeocoderPanel
|
|
169
|
+
className="geocoder-panel"
|
|
170
|
+
width={width}
|
|
171
|
+
style={{display: isGeocoderEnabled ? 'block' : 'none'}}
|
|
172
|
+
>
|
|
173
|
+
{isValid(mapboxApiAccessToken) && (
|
|
174
|
+
<Geocoder
|
|
175
|
+
mapboxApiAccessToken={mapboxApiAccessToken}
|
|
176
|
+
onSelected={this.onSelected}
|
|
177
|
+
onDeleteMarker={this.removeMarker}
|
|
178
|
+
width={width}
|
|
179
|
+
/>
|
|
180
|
+
)}
|
|
181
|
+
</StyledGeocoderPanel>
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
GeocoderPanel.defaultProps = {
|
|
187
|
+
transitionDuration: 3000
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
return GeocoderPanel;
|
|
191
|
+
}
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
import TimeRangeSliderFactory from './common/time-range-slider';
|
|
22
|
+
import RangeSliderFactory from './common/range-slider';
|
|
23
|
+
import VisConfigSliderFactory from './side-panel/layer-panel/vis-config-slider';
|
|
24
|
+
import VisConfigSwitchFactory from './side-panel/layer-panel/vis-config-switch';
|
|
25
|
+
import LayerConfigGroupFactory from './side-panel/layer-panel/layer-config-group';
|
|
26
|
+
import {
|
|
27
|
+
LayerColorRangeSelectorFactory,
|
|
28
|
+
LayerColorSelectorFactory,
|
|
29
|
+
ArcLayerColorSelectorFactory,
|
|
30
|
+
ChannelByValueSelectorFactory
|
|
31
|
+
} from './side-panel/layer-panel/layer-configurator';
|
|
32
|
+
import ColorDimensionScaleSelectorFactory from './side-panel/layer-panel/color-dimension-scale-selector';
|
|
33
|
+
import FieldSelectorFactory, {FieldListItemFactoryFactory} from './common/field-selector';
|
|
34
|
+
import FieldTokenFactory from './common/field-token';
|
|
35
|
+
import PanelHeaderActionFactory from './side-panel/panel-header-action';
|
|
36
|
+
import InfoHelperFactory from 'components/common/info-helper';
|
|
37
|
+
import {appInjector} from './container';
|
|
38
|
+
|
|
39
|
+
// Components
|
|
40
|
+
export {default as KeplerGl, default, injectComponents, ContainerFactory} from './container';
|
|
41
|
+
|
|
42
|
+
// factories
|
|
43
|
+
export {default as KeplerGlFactory, DEFAULT_KEPLER_GL_PROPS} from './kepler-gl';
|
|
44
|
+
export {default as SidePanelFactory} from './side-panel';
|
|
45
|
+
export {default as PanelTitleFactory} from './side-panel/panel-title';
|
|
46
|
+
export {default as MapContainerFactory, Attribution} from './map-container';
|
|
47
|
+
export {default as MapsLayoutFactory} from './maps-layout';
|
|
48
|
+
export {
|
|
49
|
+
default as BottomWidgetFactory,
|
|
50
|
+
LayerAnimationControllerFactory,
|
|
51
|
+
FilterAnimationControllerFactory
|
|
52
|
+
} from './bottom-widget';
|
|
53
|
+
export {default as ModalContainerFactory} from './modal-container';
|
|
54
|
+
export {default as PlotContainerFactory} from './plot-container';
|
|
55
|
+
export {default as GeocoderPanelFactory} from './geocoder-panel';
|
|
56
|
+
|
|
57
|
+
// // side panel factories
|
|
58
|
+
export {
|
|
59
|
+
default as PanelHeaderFactory,
|
|
60
|
+
SaveExportDropdownFactory,
|
|
61
|
+
PanelHeaderDropdownFactory
|
|
62
|
+
} from './side-panel/panel-header';
|
|
63
|
+
export {default as PanelHeaderActionFactory} from './side-panel/panel-header-action';
|
|
64
|
+
export {CollapseButtonFactory, default as SidebarFactory} from './side-panel/side-bar';
|
|
65
|
+
export {default as PanelToggleFactory} from './side-panel/panel-toggle';
|
|
66
|
+
export {default as PanelTabFactory} from './side-panel/panel-tab';
|
|
67
|
+
|
|
68
|
+
export {
|
|
69
|
+
AddDataButtonFactory,
|
|
70
|
+
LayerBlendingSelectorFactory,
|
|
71
|
+
default as LayerManagerFactory
|
|
72
|
+
} from './side-panel/layer-manager';
|
|
73
|
+
export {default as LayerPanelFactory} from './side-panel/layer-panel/layer-panel';
|
|
74
|
+
export {default as LayerPanelHeaderFactory} from './side-panel/layer-panel/layer-panel-header';
|
|
75
|
+
export {default as LayerConfiguratorFactory} from './side-panel/layer-panel/layer-configurator';
|
|
76
|
+
export {default as CustomMarkersConfigGroupFactory} from './side-panel/layer-panel/custom-markers-config-group';
|
|
77
|
+
export {default as TextLabelPanelFactory} from './side-panel/layer-panel/text-label-panel';
|
|
78
|
+
export {LayerConfigGroupLabelFactory} from './side-panel/layer-panel/layer-config-group';
|
|
79
|
+
export {default as LayerVisibilityByZoomFactory} from './side-panel/layer-panel/layer-visibility-by-zoom';
|
|
80
|
+
export {default as LayerAggregationResolutionFactory} from './side-panel/layer-panel/layer-aggregation-resolution';
|
|
81
|
+
|
|
82
|
+
export {default as SourceDataCatalogFactory} from './side-panel/common/source-data-catalog';
|
|
83
|
+
export {default as SourceDataSelectorFactory} from './side-panel/common/source-data-selector';
|
|
84
|
+
export {default as DatasetTitleFactory} from './side-panel/common/dataset-title';
|
|
85
|
+
export {default as DatasetInfoFactory} from './side-panel/common/dataset-info';
|
|
86
|
+
export {default as DatasetTagFactory} from './side-panel/common/dataset-tag';
|
|
87
|
+
|
|
88
|
+
export {default as FilterManagerFactory} from './side-panel/filter-manager';
|
|
89
|
+
export {default as FilterPanelFactory} from './side-panel/filter-panel/filter-panel';
|
|
90
|
+
|
|
91
|
+
export {default as InteractionManagerFactory} from './side-panel/interaction-manager';
|
|
92
|
+
export {default as BrushConfigFactory} from './side-panel/interaction-panel/brush-config';
|
|
93
|
+
export {default as TooltipConfigFactory} from './side-panel/interaction-panel/tooltip-config';
|
|
94
|
+
|
|
95
|
+
export {default as MapManagerFactory} from './side-panel/map-manager';
|
|
96
|
+
export {default as LayerGroupSelectorFactory} from './side-panel/map-style-panel/map-layer-selector';
|
|
97
|
+
export {default as MapStyleSelectorFactory} from './side-panel/map-style-panel/map-style-selector';
|
|
98
|
+
export {default as CustomPanelsFactory} from './side-panel/custom-panel';
|
|
99
|
+
// // map factories
|
|
100
|
+
export {default as MapPopoverFactory} from './map/map-popover';
|
|
101
|
+
export {default as MapControlFactory} from './map/map-control';
|
|
102
|
+
export {default as LayerHoverInfoFactory} from './map/layer-hover-info';
|
|
103
|
+
export {default as CoordinateInfoFactory} from './map/coordinate-info';
|
|
104
|
+
export {default as LayerSelectorPanelFactory} from './map/layer-selector-panel';
|
|
105
|
+
export {default as LocalePanelFactory} from './map/locale-panel';
|
|
106
|
+
export {default as MapControlPanelFactory} from './map/map-control-panel';
|
|
107
|
+
export {default as MapControlTooltipFactory} from './map/map-control-tooltip';
|
|
108
|
+
export {
|
|
109
|
+
default as MapLegendFactory,
|
|
110
|
+
LayerLegendHeaderFactory,
|
|
111
|
+
LayerLegendContentFactory
|
|
112
|
+
} from './map/map-legend';
|
|
113
|
+
export {default as MapDrawPanelFactory} from './map/map-draw-panel';
|
|
114
|
+
export {default as SplitMapButtonFactory} from './map/split-map-button';
|
|
115
|
+
export {default as MapLegendPanelFactory} from './map/map-legend-panel';
|
|
116
|
+
export {default as Toggle3dButtonFactory} from './map/toggle-3d-button';
|
|
117
|
+
export {default as MapControlToolbarFactory} from './map/map-control-toolbar';
|
|
118
|
+
|
|
119
|
+
// // modal factories
|
|
120
|
+
export {default as ModalDialogFactory} from './modals/modal-dialog';
|
|
121
|
+
export {default as DeleteDatasetModalFactory} from './modals/delete-data-modal';
|
|
122
|
+
export {default as DataTableModalFactory} from './modals/data-table-modal';
|
|
123
|
+
export {default as LoadDataModalFactory} from './modals/load-data-modal';
|
|
124
|
+
export {default as ExportImageModalFactory} from './modals/export-image-modal';
|
|
125
|
+
export {default as ExportDataModalFactory} from './modals/export-data-modal';
|
|
126
|
+
export {default as AddMapStyleModalFactory} from './modals/add-map-style-modal';
|
|
127
|
+
export {default as ExportMapModalFactory} from './modals/export-map-modal/export-map-modal';
|
|
128
|
+
export {default as ModalTabsFactory} from './modals/modal-tabs';
|
|
129
|
+
export {default as LoadStorageMapFactory} from './modals/load-storage-map';
|
|
130
|
+
export {default as ExportJsonMapFactory} from './modals/export-map-modal/export-json-map';
|
|
131
|
+
export {default as ExportHtmlMapFactory} from './modals/export-map-modal/export-html-map';
|
|
132
|
+
|
|
133
|
+
// // common factory
|
|
134
|
+
export {default as AnimationControlFactory} from './common/animation-control/animation-control';
|
|
135
|
+
export {default as AnimationControllerFactory} from './common/animation-control/animation-controller';
|
|
136
|
+
export {default as SpeedControlFactory} from './common/animation-control/speed-control';
|
|
137
|
+
export {default as PlaybackControlsFactory} from './common/animation-control/playback-controls';
|
|
138
|
+
export {default as FloatingTimeDisplayFactory} from './common/animation-control/floating-time-display';
|
|
139
|
+
export {default as AnimationSpeedSliderFactory} from './common/animation-control/animation-speed-slider';
|
|
140
|
+
export {default as RangePlotFactory} from './common/range-plot';
|
|
141
|
+
export {default as HistogramPlotFactory} from './common/histogram-plot';
|
|
142
|
+
export {default as LineChartFactory} from './common/line-chart';
|
|
143
|
+
export {default as RangeBrushFactory} from './common/range-brush';
|
|
144
|
+
export {default as TimeSliderMarkerFactory} from './common/time-slider-marker';
|
|
145
|
+
export {default as TimeRangeSliderTimeTitleFactory} from './common/time-range-slider-time-title';
|
|
146
|
+
|
|
147
|
+
// // Filters factory
|
|
148
|
+
export {default as TimeWidgetFactory, TimeWidgetTopFactory} from './filters/time-widget';
|
|
149
|
+
export {default as SingleSelectFilterFactory} from './filters/single-select-filter';
|
|
150
|
+
export {default as MultiSelectFilterFactory} from './filters/multi-select-filter';
|
|
151
|
+
export {
|
|
152
|
+
timeRangeSliderFieldsSelector,
|
|
153
|
+
default as TimeRangeFilterFactory
|
|
154
|
+
} from './filters/time-range-filter';
|
|
155
|
+
export {default as RangeFilterFactory} from './filters/range-filter';
|
|
156
|
+
|
|
157
|
+
// // Editor Factory
|
|
158
|
+
export {default as EditorFactory} from './editor/editor';
|
|
159
|
+
export {default as FeatureActionPanelFactory} from './editor/feature-action-panel';
|
|
160
|
+
|
|
161
|
+
// Injector
|
|
162
|
+
export {injector, provideRecipesToInjector, withState} from './injector';
|
|
163
|
+
|
|
164
|
+
// Common Components
|
|
165
|
+
export {default as CloudTile} from './modals/cloud-tile';
|
|
166
|
+
export {default as FileUploadFactory, FileUpload} from './common/file-uploader/file-upload';
|
|
167
|
+
export {default as DatasetLabel} from './common/dataset-label';
|
|
168
|
+
export {default as ItemSelector} from './common/item-selector/item-selector';
|
|
169
|
+
export {default as Typeahead} from './common/item-selector/typeahead';
|
|
170
|
+
export {default as DropdownList} from './common/item-selector/dropdown-list';
|
|
171
|
+
export {default as FieldSelectorFactory} from './common/field-selector';
|
|
172
|
+
export {default as Modal, ModalFooter, ModalTitle} from './common/modal';
|
|
173
|
+
export {default as AppLogo} from './common/logo';
|
|
174
|
+
export {default as Switch} from './common/switch';
|
|
175
|
+
export {default as Checkbox} from './common/checkbox';
|
|
176
|
+
export {default as LoadingSpinner} from './common/loading-spinner';
|
|
177
|
+
export {default as LoadingDialog} from './modals/loading-dialog';
|
|
178
|
+
export {default as FieldTokenFactory} from './common/field-token';
|
|
179
|
+
export {default as Portaled} from './common/portaled';
|
|
180
|
+
export {default as ProgressBar} from './common/progress-bar';
|
|
181
|
+
export {default as FileUploadProgress} from './common/file-uploader/file-upload-progress';
|
|
182
|
+
export {default as Slider} from './common/slider/slider';
|
|
183
|
+
export {DatasetSquare} from './common/styled-components';
|
|
184
|
+
export {default as ActionPanel, ActionPanelItem} from './common/action-panel';
|
|
185
|
+
export {default as DataTableFactory} from './common/data-table';
|
|
186
|
+
export {default as CanvasHack} from './common/data-table/canvas';
|
|
187
|
+
export {default as MapLayerSelector} from './common/map-layer-selector';
|
|
188
|
+
export {default as VerticalToolbar} from './common/vertical-toolbar';
|
|
189
|
+
export {default as ToolbarItem} from './common/toolbar-item';
|
|
190
|
+
|
|
191
|
+
// side pane components
|
|
192
|
+
export {default as LayerTypeSelectorFactory} from './side-panel/layer-panel/layer-type-selector';
|
|
193
|
+
export {default as LayerTypeDropdownListFactory} from './side-panel/layer-panel/layer-type-dropdown-list';
|
|
194
|
+
export {default as LayerTypeListItemFactory} from './side-panel/layer-panel/layer-type-list-item';
|
|
195
|
+
export {ConfigGroupCollapsibleContent} from './side-panel/layer-panel/layer-config-group';
|
|
196
|
+
export {default as ColumnSelectorFactory} from './side-panel/layer-panel/column-selector';
|
|
197
|
+
export {default as FilterPanelHeaderFactory} from './side-panel/filter-panel/filter-panel-header';
|
|
198
|
+
export {default as StyledDropdownSelect} from './common/item-selector/item-selector';
|
|
199
|
+
export {
|
|
200
|
+
LayerLabelEditor,
|
|
201
|
+
LayerTitleSectionFactory
|
|
202
|
+
} from './side-panel/layer-panel/layer-panel-header';
|
|
203
|
+
|
|
204
|
+
export {HowToButton, AggregationTypeSelector} from './side-panel/layer-panel/layer-configurator';
|
|
205
|
+
|
|
206
|
+
export {default as ColorPalette} from './side-panel/layer-panel/color-palette';
|
|
207
|
+
|
|
208
|
+
export * from './common/styled-components';
|
|
209
|
+
import * as Icons from './common/icons';
|
|
210
|
+
|
|
211
|
+
export {Icons};
|
|
212
|
+
|
|
213
|
+
// Individual Component from Dependency Tree
|
|
214
|
+
export const LayerColorSelector = appInjector.get(LayerColorSelectorFactory);
|
|
215
|
+
export const LayerColorRangeSelector = appInjector.get(LayerColorRangeSelectorFactory);
|
|
216
|
+
export const ArcLayerColorSelector = appInjector.get(ArcLayerColorSelectorFactory);
|
|
217
|
+
export const TimeRangeSlider = appInjector.get(TimeRangeSliderFactory);
|
|
218
|
+
export const RangeSlider = appInjector.get(RangeSliderFactory);
|
|
219
|
+
export const VisConfigSlider = appInjector.get(VisConfigSliderFactory);
|
|
220
|
+
export const VisConfigSwitch = appInjector.get(VisConfigSwitchFactory);
|
|
221
|
+
export const LayerConfigGroup = appInjector.get(LayerConfigGroupFactory);
|
|
222
|
+
export const ChannelByValueSelector = appInjector.get(ChannelByValueSelectorFactory);
|
|
223
|
+
export const ColorDimensionScaleSelector = appInjector.get(ColorDimensionScaleSelectorFactory);
|
|
224
|
+
export const FieldSelector = appInjector.get(FieldSelectorFactory);
|
|
225
|
+
export const FieldToken = appInjector.get(FieldTokenFactory);
|
|
226
|
+
export const PanelHeaderAction = appInjector.get(PanelHeaderActionFactory);
|
|
227
|
+
export const FieldListItemFactory = appInjector.get(FieldListItemFactoryFactory);
|
|
228
|
+
export const InfoHelper = appInjector.get(InfoHelperFactory);
|
|
229
|
+
|
|
230
|
+
export {
|
|
231
|
+
appInjector,
|
|
232
|
+
TimeRangeSliderFactory,
|
|
233
|
+
RangeSliderFactory,
|
|
234
|
+
VisConfigSliderFactory,
|
|
235
|
+
VisConfigSwitchFactory,
|
|
236
|
+
LayerConfigGroupFactory,
|
|
237
|
+
ChannelByValueSelectorFactory,
|
|
238
|
+
ColorDimensionScaleSelectorFactory,
|
|
239
|
+
FieldListItemFactoryFactory,
|
|
240
|
+
InfoHelperFactory,
|
|
241
|
+
LayerColorSelectorFactory,
|
|
242
|
+
LayerColorRangeSelectorFactory,
|
|
243
|
+
ArcLayerColorSelectorFactory
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
// Context
|
|
247
|
+
export {default as KeplerGlContext, RootContext} from 'components/context';
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
import React from 'react';
|
|
22
|
+
import {connect} from 'react-redux';
|
|
23
|
+
import {bindActionCreators} from 'redux';
|
|
24
|
+
import {console as Console} from 'global/window';
|
|
25
|
+
import KeplerGlContext from 'components/context';
|
|
26
|
+
|
|
27
|
+
const MissingComp = () => <div />;
|
|
28
|
+
|
|
29
|
+
export const ERROR_MSG = {
|
|
30
|
+
wrongRecipeType:
|
|
31
|
+
`injectComponents takes an array of factories replacement pairs as input, ` +
|
|
32
|
+
`each pair be a array as [originalFactory, replacement].`,
|
|
33
|
+
|
|
34
|
+
noDep: (fac, parent) =>
|
|
35
|
+
`${fac.name} is required as a dependency of ${parent.name}, ` +
|
|
36
|
+
`but is not provided to injectComponents. It will not be rendered.`,
|
|
37
|
+
|
|
38
|
+
notFunc: 'factory and its replacement should be a function'
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export function injector(map = new Map()) {
|
|
42
|
+
const cache = new Map(); // map<factory, factory -> ?>
|
|
43
|
+
const get = (fac, parent) => {
|
|
44
|
+
const factory = map.get(fac);
|
|
45
|
+
// factory is not injected
|
|
46
|
+
if (!factory) {
|
|
47
|
+
Console.error(ERROR_MSG.noDep(fac, parent));
|
|
48
|
+
return MissingComp;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// check if custom factory deps is declared
|
|
52
|
+
const instances =
|
|
53
|
+
cache.get(factory) ||
|
|
54
|
+
factory(...(factory.deps ? factory.deps.map(dep => get(dep, factory)) : []));
|
|
55
|
+
|
|
56
|
+
cache.set(fac, instances);
|
|
57
|
+
return instances;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
// if you have two functions that happen to have the exactly same text
|
|
61
|
+
// it will be override: 2018-02-05
|
|
62
|
+
return {
|
|
63
|
+
provide: (factory, replacement) => {
|
|
64
|
+
if (!typeCheckRecipe([factory, replacement])) {
|
|
65
|
+
return injector(map);
|
|
66
|
+
}
|
|
67
|
+
return injector(new Map(map).set(factory, replacement));
|
|
68
|
+
},
|
|
69
|
+
get
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// entryPoint
|
|
74
|
+
export function flattenDeps(allDeps, factory) {
|
|
75
|
+
const addToDeps = allDeps.concat([factory]);
|
|
76
|
+
return Array.isArray(factory.deps) && factory.deps.length
|
|
77
|
+
? factory.deps.reduce((accu, dep) => flattenDeps(accu, dep), addToDeps)
|
|
78
|
+
: addToDeps;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export function provideRecipesToInjector(recipes, appInjector) {
|
|
82
|
+
const provided = new Map();
|
|
83
|
+
|
|
84
|
+
return recipes.reduce((inj, recipe) => {
|
|
85
|
+
if (!typeCheckRecipe(recipe)) {
|
|
86
|
+
return inj;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// collect dependencies of custom factories, if there is any.
|
|
90
|
+
// Add them to the appInjector
|
|
91
|
+
const customDependencies = flattenDeps([], recipe[1]);
|
|
92
|
+
inj = customDependencies.reduce((ij, factory) => {
|
|
93
|
+
if (provided.get(factory)) {
|
|
94
|
+
Console.warn(
|
|
95
|
+
`${factory.name} already injected from ${provided.get(factory).name}, injecting ${
|
|
96
|
+
recipe[0].name
|
|
97
|
+
} after ${provided.get(factory).name} will override it`
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
return ij.provide(factory, factory);
|
|
101
|
+
}, inj);
|
|
102
|
+
|
|
103
|
+
provided.set(recipe[0], recipe[1]);
|
|
104
|
+
return inj.provide(...recipe);
|
|
105
|
+
}, appInjector);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export function typeCheckRecipe(recipe) {
|
|
109
|
+
if (!Array.isArray(recipe) || recipe.length < 2) {
|
|
110
|
+
Console.error('Error injecting [factory, replacement]', recipe);
|
|
111
|
+
Console.error(ERROR_MSG.wrongRecipeType);
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const [factory, replacement] = recipe;
|
|
116
|
+
if (typeof factory !== 'function') {
|
|
117
|
+
Console.error('Error injecting factory: ', factory);
|
|
118
|
+
Console.error(ERROR_MSG.notFunc);
|
|
119
|
+
return false;
|
|
120
|
+
} else if (typeof replacement !== 'function') {
|
|
121
|
+
Console.error('Error injecting replacement for: ', factory);
|
|
122
|
+
Console.error(ERROR_MSG.notFunc);
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
return true;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
const identity = state => state;
|
|
130
|
+
// Helper to add reducer state to custom component
|
|
131
|
+
export function withState(lenses = [], mapStateToProps = identity, actions = {}) {
|
|
132
|
+
return Component => {
|
|
133
|
+
const WrappedComponent = ({state, ...props}) => (
|
|
134
|
+
<KeplerGlContext.Consumer>
|
|
135
|
+
{context => (
|
|
136
|
+
<Component
|
|
137
|
+
{...lenses.reduce(
|
|
138
|
+
(totalState, lens) => ({
|
|
139
|
+
...totalState,
|
|
140
|
+
...lens(context.selector(state))
|
|
141
|
+
}),
|
|
142
|
+
props
|
|
143
|
+
)}
|
|
144
|
+
/>
|
|
145
|
+
)}
|
|
146
|
+
</KeplerGlContext.Consumer>
|
|
147
|
+
);
|
|
148
|
+
|
|
149
|
+
return connect(
|
|
150
|
+
state => ({...mapStateToProps(state), state}),
|
|
151
|
+
dispatch =>
|
|
152
|
+
Object.keys(actions).reduce(
|
|
153
|
+
(accu, key) => ({
|
|
154
|
+
...accu,
|
|
155
|
+
[key]: bindActionCreators(actions[key], dispatch)
|
|
156
|
+
}),
|
|
157
|
+
{}
|
|
158
|
+
)
|
|
159
|
+
)(WrappedComponent);
|
|
160
|
+
};
|
|
161
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import {ComponentClass} from 'react';
|
|
2
|
+
import {OnErrorCallBack, OnSuccessCallBack} from 'actions/provider-actions';
|
|
3
|
+
import {MapState} from 'reducers/map-state-updaters';
|
|
4
|
+
import {MapStyle} from 'reducers/map-style-updaters';
|
|
5
|
+
import {UiState} from 'reducers/ui-state-updaters';
|
|
6
|
+
import {VisState} from 'reducers/vis-state-updaters';
|
|
7
|
+
import {ProviderState} from 'reducers/provider-state-updaters';
|
|
8
|
+
import * as VisStateActions from 'actions/vis-state-actions';
|
|
9
|
+
import * as MapStateActions from 'actions/map-state-actions';
|
|
10
|
+
import * as MapStyleActions from 'actions/map-style-actions';
|
|
11
|
+
import * as UIStateActions from 'actions/ui-state-actions';
|
|
12
|
+
import * as ProviderActions from 'actions/provider-actions';
|
|
13
|
+
|
|
14
|
+
export type KeplerGlProps = {
|
|
15
|
+
id: string;
|
|
16
|
+
appWebsite: any;
|
|
17
|
+
onSaveMap?: () => void;
|
|
18
|
+
onViewStateChange?: () => void;
|
|
19
|
+
onDeckInitialized?: () => void;
|
|
20
|
+
onKeplerGlInitialized?: () => void;
|
|
21
|
+
mapboxApiAccessToken: string;
|
|
22
|
+
mapboxApiUrl: string;
|
|
23
|
+
getMapboxRef: () => React.RefType<any>;
|
|
24
|
+
mapStyles: {id: string; style?: object}[];
|
|
25
|
+
mapStylesReplaceDefault: boolean;
|
|
26
|
+
mapboxApiUrl: string;
|
|
27
|
+
width: number;
|
|
28
|
+
height: number;
|
|
29
|
+
appName: string;
|
|
30
|
+
version: string;
|
|
31
|
+
sidePanelWidth: number;
|
|
32
|
+
theme: object;
|
|
33
|
+
cloudProviders: object[];
|
|
34
|
+
deckGlProps?: object;
|
|
35
|
+
onLoadCloudMapSuccess?: OnSuccessCallBack;
|
|
36
|
+
onLoadCloudMapError?: OnErrorCallBack;
|
|
37
|
+
onExportToCloudSuccess?: OnSuccessCallBack;
|
|
38
|
+
onExportToCloudError?: OnErrorCallBack;
|
|
39
|
+
readOnly?: boolean;
|
|
40
|
+
maskPolygon?: Array<Array<number>>;
|
|
41
|
+
popupSettings: any;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export type UnconnectedKeplerGlProps = KeplerGlProps & {
|
|
45
|
+
mapState: MapState;
|
|
46
|
+
mapStyle: MapStyle;
|
|
47
|
+
uiState: UiState;
|
|
48
|
+
visState: VisState;
|
|
49
|
+
providerState: ProviderState;
|
|
50
|
+
visStateActions: typeof VisStateActions;
|
|
51
|
+
uiStateActions: typeof UIStateActions;
|
|
52
|
+
mapStateActions: typeof MapStateActions;
|
|
53
|
+
mapStyleActions: typeof MapStyleActions;
|
|
54
|
+
providerActions: typeof ProviderActions;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export type KeplerGlComponent = ComponentClass<UnconnectedKeplerGlProps>;
|
|
58
|
+
export const DEFAULT_KEPLER_GL_PROPS: Partial<KeplerGlProps>;
|
|
59
|
+
|
|
60
|
+
export default function KeplerGlFactory(): ComponentClass<KeplerGlProps>;
|