@kepler.gl/components 3.3.0-alpha.4 → 3.3.0-alpha.6
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/dist/cjs/annotations/annotation-node.js +145 -0
- package/dist/cjs/annotations/annotation-overlay.js +168 -0
- package/dist/cjs/annotations/annotation-panel.js +361 -0
- package/dist/cjs/annotations/annotation-text.js +149 -0
- package/dist/cjs/annotations/annotation-utils.js +197 -0
- package/dist/cjs/annotations/index.js +53 -0
- package/dist/cjs/annotations/lexical-editor/clickable-link-plugin.js +71 -0
- package/dist/cjs/annotations/lexical-editor/floating-link-editor.js +193 -0
- package/dist/cjs/annotations/lexical-editor/index.js +78 -0
- package/dist/cjs/annotations/lexical-editor/lexical-constants.js +22 -0
- package/dist/cjs/annotations/lexical-editor/lexical-nodes.js +13 -0
- package/dist/cjs/annotations/lexical-editor/lexical-rich-text-editor.js +121 -0
- package/dist/cjs/annotations/lexical-editor/lexical-theme.js +25 -0
- package/dist/cjs/annotations/lexical-editor/lexical-toolbar.js +292 -0
- package/dist/cjs/annotations/lexical-editor/lexical-utils.js +45 -0
- package/dist/cjs/annotations/lexical-editor/use-lexical-toolbar.js +253 -0
- package/dist/cjs/bottom-widget.js +183 -0
- package/dist/cjs/common/action-panel.js +133 -0
- package/dist/cjs/common/animation-control/animation-control.js +100 -0
- package/dist/cjs/common/animation-control/animation-controller.js +271 -0
- package/dist/cjs/common/animation-control/animation-speed-slider.js +63 -0
- package/dist/cjs/common/animation-control/animation-window-control.js +59 -0
- package/dist/cjs/common/animation-control/export-video-control.js +43 -0
- package/dist/cjs/common/animation-control/floating-time-display.js +131 -0
- package/dist/cjs/common/animation-control/play-control.js +50 -0
- package/dist/cjs/common/animation-control/playback-controls.js +164 -0
- package/dist/cjs/common/animation-control/reset-control.js +41 -0
- package/dist/cjs/common/animation-control/speed-control.js +51 -0
- package/dist/cjs/common/animation-control/window-action-control.js +57 -0
- package/dist/cjs/common/checkbox.js +101 -0
- package/dist/cjs/common/color-legend.js +272 -0
- package/dist/cjs/common/column-stats-chart.js +312 -0
- package/dist/cjs/common/data-table/button.js +38 -0
- package/dist/cjs/common/data-table/canvas.js +26 -0
- package/dist/cjs/common/data-table/cell-size.js +183 -0
- package/dist/cjs/common/data-table/display-format.js +125 -0
- package/dist/cjs/common/data-table/grid.js +106 -0
- package/dist/cjs/common/data-table/header-cell.js +148 -0
- package/dist/cjs/common/data-table/index.js +470 -0
- package/dist/cjs/common/data-table/option-dropdown.js +159 -0
- package/dist/cjs/common/dataset-label.js +27 -0
- package/dist/cjs/common/dnd-layer-items.js +22 -0
- package/dist/cjs/common/error-boundary.js +59 -0
- package/dist/cjs/common/field-selector.js +172 -0
- package/dist/cjs/common/field-token.js +43 -0
- package/dist/cjs/common/file-uploader/file-drop.js +180 -0
- package/dist/cjs/common/file-uploader/file-upload-progress.js +84 -0
- package/dist/cjs/common/file-uploader/file-upload.js +241 -0
- package/dist/cjs/common/file-uploader/upload-button.js +58 -0
- package/dist/cjs/common/flex-container.js +15 -0
- package/dist/cjs/common/histogram-plot.js +282 -0
- package/dist/cjs/common/icon-button.js +25 -0
- package/dist/cjs/common/icons/3d-models/airplane.js +103 -0
- package/dist/cjs/common/icons/3d-models/bicycle.js +425 -0
- package/dist/cjs/common/icons/3d-models/boeing.js +118 -0
- package/dist/cjs/common/icons/3d-models/car.js +109 -0
- package/dist/cjs/common/icons/3d-models/cargoship.js +245 -0
- package/dist/cjs/common/icons/3d-models/evtol.js +133 -0
- package/dist/cjs/common/icons/3d-models/glider.js +61 -0
- package/dist/cjs/common/icons/3d-models/helicopter.js +109 -0
- package/dist/cjs/common/icons/3d-models/scooter.js +158 -0
- package/dist/cjs/common/icons/3d-models/semitruck.js +176 -0
- package/dist/cjs/common/icons/3d-models/truck.js +121 -0
- package/dist/cjs/common/icons/add.js +40 -0
- package/dist/cjs/common/icons/anchor_window.js +41 -0
- package/dist/cjs/common/icons/annotation-text.js +55 -0
- package/dist/cjs/common/icons/arrow-down-alt.js +40 -0
- package/dist/cjs/common/icons/arrow-down-full.js +49 -0
- package/dist/cjs/common/icons/arrow-down-small.js +53 -0
- package/dist/cjs/common/icons/arrow-down-solid.js +40 -0
- package/dist/cjs/common/icons/arrow-down.js +50 -0
- package/dist/cjs/common/icons/arrow-left.js +43 -0
- package/dist/cjs/common/icons/arrow-right.js +40 -0
- package/dist/cjs/common/icons/arrow-up-alt.js +41 -0
- package/dist/cjs/common/icons/arrow-up-solid.js +40 -0
- package/dist/cjs/common/icons/arrow-up.js +40 -0
- package/dist/cjs/common/icons/base-map.js +56 -0
- package/dist/cjs/common/icons/base.js +78 -0
- package/dist/cjs/common/icons/bug.js +70 -0
- package/dist/cjs/common/icons/calendar.js +48 -0
- package/dist/cjs/common/icons/cancel.js +40 -0
- package/dist/cjs/common/icons/checkmark.js +46 -0
- package/dist/cjs/common/icons/clipboard.js +41 -0
- package/dist/cjs/common/icons/clock.js +42 -0
- package/dist/cjs/common/icons/close.js +46 -0
- package/dist/cjs/common/icons/cloud.js +50 -0
- package/dist/cjs/common/icons/code-alt.js +43 -0
- package/dist/cjs/common/icons/copy.js +51 -0
- package/dist/cjs/common/icons/crosshairs.js +43 -0
- package/dist/cjs/common/icons/cube-3d.js +54 -0
- package/dist/cjs/common/icons/cursor-click.js +44 -0
- package/dist/cjs/common/icons/cursor-point.js +50 -0
- package/dist/cjs/common/icons/data-table.js +76 -0
- package/dist/cjs/common/icons/db.js +58 -0
- package/dist/cjs/common/icons/delete.js +52 -0
- package/dist/cjs/common/icons/docs.js +56 -0
- package/dist/cjs/common/icons/docs2.js +50 -0
- package/dist/cjs/common/icons/drag-n-drop.js +42 -0
- package/dist/cjs/common/icons/draggable-dots.js +84 -0
- package/dist/cjs/common/icons/draw-polygon.js +60 -0
- package/dist/cjs/common/icons/edit.js +48 -0
- package/dist/cjs/common/icons/effects/brightness-contrast.js +69 -0
- package/dist/cjs/common/icons/effects/color-halftone.js +108 -0
- package/dist/cjs/common/icons/effects/distance-fog.js +78 -0
- package/dist/cjs/common/icons/effects/dot-screen.js +103 -0
- package/dist/cjs/common/icons/effects/edge-work.js +62 -0
- package/dist/cjs/common/icons/effects/hexagonal-pixelate.js +129 -0
- package/dist/cjs/common/icons/effects/hue-saturation.js +60 -0
- package/dist/cjs/common/icons/effects/ink.js +59 -0
- package/dist/cjs/common/icons/effects/light-and-shadow.js +48 -0
- package/dist/cjs/common/icons/effects/magic-wand.js +60 -0
- package/dist/cjs/common/icons/effects/magnify.js +67 -0
- package/dist/cjs/common/icons/effects/noise.js +113 -0
- package/dist/cjs/common/icons/effects/sepia.js +60 -0
- package/dist/cjs/common/icons/effects/surface-fog.js +85 -0
- package/dist/cjs/common/icons/effects/tilt-shift.js +69 -0
- package/dist/cjs/common/icons/effects/triangle-blur.js +64 -0
- package/dist/cjs/common/icons/effects/vibrance.js +60 -0
- package/dist/cjs/common/icons/effects/vignette.js +53 -0
- package/dist/cjs/common/icons/effects/zoom-blur.js +88 -0
- package/dist/cjs/common/icons/email.js +44 -0
- package/dist/cjs/common/icons/expand.js +42 -0
- package/dist/cjs/common/icons/eye-seen.js +49 -0
- package/dist/cjs/common/icons/eye-unseen.js +47 -0
- package/dist/cjs/common/icons/file-type.js +35 -0
- package/dist/cjs/common/icons/file.js +40 -0
- package/dist/cjs/common/icons/files.js +41 -0
- package/dist/cjs/common/icons/filter-funnel.js +50 -0
- package/dist/cjs/common/icons/folder.js +50 -0
- package/dist/cjs/common/icons/free-window.js +44 -0
- package/dist/cjs/common/icons/gear.js +42 -0
- package/dist/cjs/common/icons/globe.js +53 -0
- package/dist/cjs/common/icons/hash.js +40 -0
- package/dist/cjs/common/icons/help.js +50 -0
- package/dist/cjs/common/icons/histogram.js +41 -0
- package/dist/cjs/common/icons/horizontal-resize-handle.js +58 -0
- package/dist/cjs/common/icons/index.js +824 -0
- package/dist/cjs/common/icons/info.js +53 -0
- package/dist/cjs/common/icons/layers.js +54 -0
- package/dist/cjs/common/icons/left-arrow.js +43 -0
- package/dist/cjs/common/icons/legend.js +68 -0
- package/dist/cjs/common/icons/line-chart.js +40 -0
- package/dist/cjs/common/icons/location-marker.js +58 -0
- package/dist/cjs/common/icons/login.js +43 -0
- package/dist/cjs/common/icons/logout.js +42 -0
- package/dist/cjs/common/icons/map-icon.js +47 -0
- package/dist/cjs/common/icons/map-pin.js +56 -0
- package/dist/cjs/common/icons/messages.js +54 -0
- package/dist/cjs/common/icons/minus.js +40 -0
- package/dist/cjs/common/icons/moon.js +58 -0
- package/dist/cjs/common/icons/order-by-dataset.js +46 -0
- package/dist/cjs/common/icons/order-by-list.js +38 -0
- package/dist/cjs/common/icons/pause.js +60 -0
- package/dist/cjs/common/icons/picture.js +59 -0
- package/dist/cjs/common/icons/pin.js +52 -0
- package/dist/cjs/common/icons/play.js +50 -0
- package/dist/cjs/common/icons/pointer-click.js +58 -0
- package/dist/cjs/common/icons/polygon.js +62 -0
- package/dist/cjs/common/icons/rectangle.js +63 -0
- package/dist/cjs/common/icons/reduce.js +43 -0
- package/dist/cjs/common/icons/reset.js +56 -0
- package/dist/cjs/common/icons/save.js +57 -0
- package/dist/cjs/common/icons/save2.js +54 -0
- package/dist/cjs/common/icons/search.js +42 -0
- package/dist/cjs/common/icons/settings.js +60 -0
- package/dist/cjs/common/icons/share.js +70 -0
- package/dist/cjs/common/icons/speed.js +52 -0
- package/dist/cjs/common/icons/split.js +68 -0
- package/dist/cjs/common/icons/square-select.js +42 -0
- package/dist/cjs/common/icons/sun.js +74 -0
- package/dist/cjs/common/icons/sunrise.js +70 -0
- package/dist/cjs/common/icons/sunset.js +70 -0
- package/dist/cjs/common/icons/timeline-marker.js +55 -0
- package/dist/cjs/common/icons/trash.js +54 -0
- package/dist/cjs/common/icons/vert-dots.js +78 -0
- package/dist/cjs/common/icons/vert-three-dots.js +53 -0
- package/dist/cjs/common/icons/warning-sign.js +60 -0
- package/dist/cjs/common/icons/warning.js +54 -0
- package/dist/cjs/common/icons/zoom-in.js +47 -0
- package/dist/cjs/common/icons/zoom-out.js +47 -0
- package/dist/cjs/common/image-preview.js +64 -0
- package/dist/cjs/common/index.js +282 -0
- package/dist/cjs/common/info-helper.js +61 -0
- package/dist/cjs/common/item-selector/accessor.js +37 -0
- package/dist/cjs/common/item-selector/chickleted-input.js +157 -0
- package/dist/cjs/common/item-selector/dropdown-list.js +257 -0
- package/dist/cjs/common/item-selector/dropdown-select.js +84 -0
- package/dist/cjs/common/item-selector/item-selector.js +254 -0
- package/dist/cjs/common/item-selector/typeahead.js +435 -0
- package/dist/cjs/common/layout-splitter.js +230 -0
- package/dist/cjs/common/line-chart.js +286 -0
- package/dist/cjs/common/link-renderer.js +20 -0
- package/dist/cjs/common/loading-spinner.js +50 -0
- package/dist/cjs/common/logo.js +68 -0
- package/dist/cjs/common/map-layer-selector.js +38 -0
- package/dist/cjs/common/modal.js +170 -0
- package/dist/cjs/common/portaled.js +287 -0
- package/dist/cjs/common/progress-bar.js +47 -0
- package/dist/cjs/common/radius-legend.js +131 -0
- package/dist/cjs/common/range-brush.js +265 -0
- package/dist/cjs/common/range-plot.js +217 -0
- package/dist/cjs/common/range-slider-timeline-panel.js +42 -0
- package/dist/cjs/common/range-slider-timeline.js +112 -0
- package/dist/cjs/common/range-slider.js +371 -0
- package/dist/cjs/common/slider/mouse-event.js +104 -0
- package/dist/cjs/common/slider/slider-bar-handle.js +90 -0
- package/dist/cjs/common/slider/slider-handle.js +136 -0
- package/dist/cjs/common/slider/slider.js +251 -0
- package/dist/cjs/common/styled-components.js +447 -0
- package/dist/cjs/common/switch.js +21 -0
- package/dist/cjs/common/sync-timeline-control.js +61 -0
- package/dist/cjs/common/time-range-slider-time-title.js +62 -0
- package/dist/cjs/common/time-range-slider.js +143 -0
- package/dist/cjs/common/time-slider-marker.js +115 -0
- package/dist/cjs/common/timeline-helpers.js +57 -0
- package/dist/cjs/common/timeline-slider.js +140 -0
- package/dist/cjs/common/tippy-tooltip.js +134 -0
- package/dist/cjs/common/toolbar-item.js +60 -0
- package/dist/cjs/common/toolbar.js +27 -0
- package/dist/cjs/common/vertical-toolbar.js +16 -0
- package/dist/cjs/connect/keplergl-connect.js +44 -0
- package/dist/cjs/connect/with-local-selector.js +85 -0
- package/dist/cjs/container.js +180 -0
- package/dist/cjs/context.js +43 -0
- package/dist/cjs/dnd-context.js +174 -0
- package/dist/cjs/editor/editor.js +200 -0
- package/dist/cjs/editor/feature-action-panel.js +147 -0
- package/dist/cjs/effects/compact-color-picker.js +110 -0
- package/dist/cjs/effects/effect-configurator.js +473 -0
- package/dist/cjs/effects/effect-list.js +129 -0
- package/dist/cjs/effects/effect-manager.js +126 -0
- package/dist/cjs/effects/effect-panel-header.js +196 -0
- package/dist/cjs/effects/effect-panel.js +86 -0
- package/dist/cjs/effects/effect-time-configurator.js +313 -0
- package/dist/cjs/effects/effect-time-selector.js +152 -0
- package/dist/cjs/effects/effect-time-slider.js +198 -0
- package/dist/cjs/effects/effect-type-dropdown-list.js +65 -0
- package/dist/cjs/effects/effect-type-list-item.js +98 -0
- package/dist/cjs/effects/effect-type-selector.js +76 -0
- package/dist/cjs/effects/side-panel-title.js +37 -0
- package/dist/cjs/effects/surface-fog-section.js +262 -0
- package/dist/cjs/effects/timezone-selector.js +57 -0
- package/dist/cjs/filter-animation-controller.js +76 -0
- package/dist/cjs/filters/components.js +14 -0
- package/dist/cjs/filters/filter-panels/filter-panel-with-field-select.js +77 -0
- package/dist/cjs/filters/filter-panels/filter-synced-dataset-panel.js +260 -0
- package/dist/cjs/filters/filter-panels/multi-select-filter-panel.js +48 -0
- package/dist/cjs/filters/filter-panels/new-filter-panel.js +66 -0
- package/dist/cjs/filters/filter-panels/polygon-filter-panel.js +67 -0
- package/dist/cjs/filters/filter-panels/range-filter-panel.js +53 -0
- package/dist/cjs/filters/filter-panels/single-select-filter-panel.js +48 -0
- package/dist/cjs/filters/filter-panels/time-range-filter-panel.js +129 -0
- package/dist/cjs/filters/filter-panels/time-synced-field-selector.js +28 -0
- package/dist/cjs/filters/filter-panels/types.js +6 -0
- package/dist/cjs/filters/index.js +63 -0
- package/dist/cjs/filters/multi-select-filter.js +31 -0
- package/dist/cjs/filters/polygon-filter.js +76 -0
- package/dist/cjs/filters/range-filter.js +35 -0
- package/dist/cjs/filters/single-select-filter.js +40 -0
- package/dist/cjs/filters/time-range-filter.js +69 -0
- package/dist/cjs/filters/time-widget-settings.js +311 -0
- package/dist/cjs/filters/time-widget-top.js +80 -0
- package/dist/cjs/filters/time-widget.js +376 -0
- package/dist/cjs/filters/types.js +6 -0
- package/dist/cjs/geocoder/geocoder.js +327 -0
- package/dist/cjs/geocoder-panel.js +172 -0
- package/dist/cjs/hooks/use-cloud-list-provider.js +46 -0
- package/dist/cjs/hooks/use-dnd-effects.js +69 -0
- package/dist/cjs/hooks/use-dnd-layers.js +141 -0
- package/dist/cjs/hooks/use-feature-flags.js +17 -0
- package/dist/cjs/hooks/use-fetch-raster-tile-metadata.js +120 -0
- package/dist/cjs/hooks/use-fetch-vector-tile-metadata.js +133 -0
- package/dist/cjs/hooks/use-legend-position.js +176 -0
- package/dist/cjs/hooks/use-on-click-outside.js +36 -0
- package/dist/cjs/index.js +2897 -0
- package/dist/cjs/injector.js +151 -0
- package/dist/cjs/kepler-gl.js +664 -0
- package/dist/cjs/layer-animation-controller.js +53 -0
- package/dist/cjs/loading-indicator.js +76 -0
- package/dist/cjs/map/annotations/annotation-control.js +55 -0
- package/dist/cjs/map/attribution.js +391 -0
- package/dist/cjs/map/coordinate-info.js +42 -0
- package/dist/cjs/map/effects/effect-control.js +51 -0
- package/dist/cjs/map/layer-hover-info.js +318 -0
- package/dist/cjs/map/lazy-tippy.js +60 -0
- package/dist/cjs/map/locale-panel.js +76 -0
- package/dist/cjs/map/map-control-panel.js +140 -0
- package/dist/cjs/map/map-control-toolbar.js +18 -0
- package/dist/cjs/map/map-control-tooltip.js +34 -0
- package/dist/cjs/map/map-control.js +81 -0
- package/dist/cjs/map/map-draw-panel.js +100 -0
- package/dist/cjs/map/map-legend-panel.js +289 -0
- package/dist/cjs/map/map-legend.js +509 -0
- package/dist/cjs/map/map-navigation-control.js +159 -0
- package/dist/cjs/map/map-popover-content.js +28 -0
- package/dist/cjs/map/map-popover.js +189 -0
- package/dist/cjs/map/map-scale.js +162 -0
- package/dist/cjs/map/split-map-button.js +176 -0
- package/dist/cjs/map/toggle-3d-button.js +122 -0
- package/dist/cjs/map-container.js +1322 -0
- package/dist/cjs/map-view-state-context.js +98 -0
- package/dist/cjs/maps-layout.js +102 -0
- package/dist/cjs/modal-container.js +456 -0
- package/dist/cjs/modals/add-map-style-modal.js +262 -0
- package/dist/cjs/modals/cloud-components/cloud-header.js +59 -0
- package/dist/cjs/modals/cloud-components/cloud-item.js +59 -0
- package/dist/cjs/modals/cloud-components/cloud-item.spec.js +92 -0
- package/dist/cjs/modals/cloud-components/cloud-maps.js +47 -0
- package/dist/cjs/modals/cloud-components/cloud-maps.spec.js +98 -0
- package/dist/cjs/modals/cloud-components/provider-loading.js +20 -0
- package/dist/cjs/modals/cloud-components/provider-select.js +30 -0
- package/dist/cjs/modals/cloud-tile.js +202 -0
- package/dist/cjs/modals/data-table-modal.js +215 -0
- package/dist/cjs/modals/delete-data-modal.js +41 -0
- package/dist/cjs/modals/error-display.js +32 -0
- package/dist/cjs/modals/export-data-modal.js +163 -0
- package/dist/cjs/modals/export-image-modal.js +188 -0
- package/dist/cjs/modals/export-map-modal/components.js +34 -0
- package/dist/cjs/modals/export-map-modal/export-html-map.js +128 -0
- package/dist/cjs/modals/export-map-modal/export-json-map.js +81 -0
- package/dist/cjs/modals/export-map-modal/export-map-modal.js +84 -0
- package/dist/cjs/modals/export-video-modal.js +413 -0
- package/dist/cjs/modals/export-video-modal.spec.js +686 -0
- package/dist/cjs/modals/fog-height-animation.js +97 -0
- package/dist/cjs/modals/globe-export-video-container.js +626 -0
- package/dist/cjs/modals/globe-export-video-preview.js +148 -0
- package/dist/cjs/modals/hubble-utils.js +447 -0
- package/dist/cjs/modals/hubble-utils.spec.js +397 -0
- package/dist/cjs/modals/image-modal-container.js +57 -0
- package/dist/cjs/modals/load-data-modal.js +97 -0
- package/dist/cjs/modals/load-storage-map.js +79 -0
- package/dist/cjs/modals/load-storage-map.spec.js +216 -0
- package/dist/cjs/modals/loading-dialog.js +37 -0
- package/dist/cjs/modals/modal-dialog.js +16 -0
- package/dist/cjs/modals/modal-tabs.js +74 -0
- package/dist/cjs/modals/overwrite-map-modal.js +83 -0
- package/dist/cjs/modals/save-map-modal.js +179 -0
- package/dist/cjs/modals/save-map-modal.spec.js +195 -0
- package/dist/cjs/modals/share-map-modal.js +168 -0
- package/dist/cjs/modals/share-map-modal.spec.js +173 -0
- package/dist/cjs/modals/status-panel.js +65 -0
- package/dist/cjs/modals/storage-map-viewer.js +98 -0
- package/dist/cjs/modals/swipe-composite-utils.js +118 -0
- package/dist/cjs/modals/swipe-export-settings.js +372 -0
- package/dist/cjs/modals/swipe-export-video-container.js +653 -0
- package/dist/cjs/modals/swipe-export-video-preview.js +391 -0
- package/dist/cjs/modals/tilesets-modals/common.js +6 -0
- package/dist/cjs/modals/tilesets-modals/load-data-footer.js +55 -0
- package/dist/cjs/modals/tilesets-modals/load-tileset.js +168 -0
- package/dist/cjs/modals/tilesets-modals/tileset-bitmap-form.js +283 -0
- package/dist/cjs/modals/tilesets-modals/tileset-icon.js +39 -0
- package/dist/cjs/modals/tilesets-modals/tileset-raster-form.js +287 -0
- package/dist/cjs/modals/tilesets-modals/tileset-tile3d-form.js +388 -0
- package/dist/cjs/modals/tilesets-modals/tileset-vector-form.js +261 -0
- package/dist/cjs/modals/tilesets-modals/tileset-wms-form.js +206 -0
- package/dist/cjs/notification-panel/notification-item.js +119 -0
- package/dist/cjs/notification-panel.js +39 -0
- package/dist/cjs/plot-container.js +311 -0
- package/dist/cjs/side-panel/add-by-dataset-button.js +128 -0
- package/dist/cjs/side-panel/cloud-storage-dropdown.js +40 -0
- package/dist/cjs/side-panel/common/dataset-info.js +34 -0
- package/dist/cjs/side-panel/common/dataset-tag.js +62 -0
- package/dist/cjs/side-panel/common/dataset-title.js +143 -0
- package/dist/cjs/side-panel/common/source-data-catalog.js +49 -0
- package/dist/cjs/side-panel/common/source-data-selector-content.js +64 -0
- package/dist/cjs/side-panel/common/source-data-selector.js +41 -0
- package/dist/cjs/side-panel/common/source-selector.js +56 -0
- package/dist/cjs/side-panel/common/types.js +6 -0
- package/dist/cjs/side-panel/custom-panel.js +39 -0
- package/dist/cjs/side-panel/filter-manager.js +202 -0
- package/dist/cjs/side-panel/filter-panel/add-filter-button.js +27 -0
- package/dist/cjs/side-panel/filter-panel/filter-panel-header.js +67 -0
- package/dist/cjs/side-panel/filter-panel/filter-panel.js +92 -0
- package/dist/cjs/side-panel/interaction-manager.js +45 -0
- package/dist/cjs/side-panel/interaction-panel/brush-config.js +41 -0
- package/dist/cjs/side-panel/interaction-panel/geocoder-config.js +45 -0
- package/dist/cjs/side-panel/interaction-panel/interaction-panel.js +121 -0
- package/dist/cjs/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +164 -0
- package/dist/cjs/side-panel/interaction-panel/tooltip-config.js +149 -0
- package/dist/cjs/side-panel/layer-manager.js +224 -0
- package/dist/cjs/side-panel/layer-panel/add-layer-button.js +27 -0
- package/dist/cjs/side-panel/layer-panel/aggr-scale-selector.js +37 -0
- package/dist/cjs/side-panel/layer-panel/channel-by-value-selector.js +71 -0
- package/dist/cjs/side-panel/layer-panel/color-breaks-panel.js +193 -0
- package/dist/cjs/side-panel/layer-panel/color-palette-preset.js +45 -0
- package/dist/cjs/side-panel/layer-panel/color-palette.js +74 -0
- package/dist/cjs/side-panel/layer-panel/color-range-selector.js +242 -0
- package/dist/cjs/side-panel/layer-panel/color-scale-selector.js +295 -0
- package/dist/cjs/side-panel/layer-panel/color-selector.js +186 -0
- package/dist/cjs/side-panel/layer-panel/column-selector.js +59 -0
- package/dist/cjs/side-panel/layer-panel/custom-palette.js +787 -0
- package/dist/cjs/side-panel/layer-panel/custom-picker.js +83 -0
- package/dist/cjs/side-panel/layer-panel/dataset-layer-group.js +68 -0
- package/dist/cjs/side-panel/layer-panel/dataset-layer-section.js +101 -0
- package/dist/cjs/side-panel/layer-panel/dataset-section.js +74 -0
- package/dist/cjs/side-panel/layer-panel/dimension-scale-selector.js +91 -0
- package/dist/cjs/side-panel/layer-panel/how-to-button.js +27 -0
- package/dist/cjs/side-panel/layer-panel/layer-color-selector.js +105 -0
- package/dist/cjs/side-panel/layer-panel/layer-column-config.js +85 -0
- package/dist/cjs/side-panel/layer-panel/layer-column-mode-config.js +192 -0
- package/dist/cjs/side-panel/layer-panel/layer-config-group.js +143 -0
- package/dist/cjs/side-panel/layer-panel/layer-configurator.js +1073 -0
- package/dist/cjs/side-panel/layer-panel/layer-error-message.js +29 -0
- package/dist/cjs/side-panel/layer-panel/layer-group-header.js +178 -0
- package/dist/cjs/side-panel/layer-panel/layer-list.js +330 -0
- package/dist/cjs/side-panel/layer-panel/layer-panel-header.js +311 -0
- package/dist/cjs/side-panel/layer-panel/layer-panel.js +171 -0
- package/dist/cjs/side-panel/layer-panel/layer-type-dropdown-list.js +77 -0
- package/dist/cjs/side-panel/layer-panel/layer-type-list-item.js +71 -0
- package/dist/cjs/side-panel/layer-panel/layer-type-selector.js +57 -0
- package/dist/cjs/side-panel/layer-panel/raster-tile-colormap-list-item.js +60 -0
- package/dist/cjs/side-panel/layer-panel/raster-tile-layer-configurator.js +457 -0
- package/dist/cjs/side-panel/layer-panel/scenegraph-model-selector.js +122 -0
- package/dist/cjs/side-panel/layer-panel/single-color-palette.js +85 -0
- package/dist/cjs/side-panel/layer-panel/text-label-panel.js +173 -0
- package/dist/cjs/side-panel/layer-panel/vector-tile-layer-configurator.js +93 -0
- package/dist/cjs/side-panel/layer-panel/vis-config-by-field-selector.js +60 -0
- package/dist/cjs/side-panel/layer-panel/vis-config-slider.js +167 -0
- package/dist/cjs/side-panel/layer-panel/vis-config-switch.js +55 -0
- package/dist/cjs/side-panel/map-manager.js +108 -0
- package/dist/cjs/side-panel/map-style-panel/globe-config-panel.js +269 -0
- package/dist/cjs/side-panel/map-style-panel/map-layer-group-color-picker.js +76 -0
- package/dist/cjs/side-panel/map-style-panel/map-layer-group-item.js +94 -0
- package/dist/cjs/side-panel/map-style-panel/map-layer-selector.js +74 -0
- package/dist/cjs/side-panel/map-style-panel/map-style-selector.js +97 -0
- package/dist/cjs/side-panel/panel-header-action.js +73 -0
- package/dist/cjs/side-panel/panel-header.js +309 -0
- package/dist/cjs/side-panel/panel-tab.js +55 -0
- package/dist/cjs/side-panel/panel-title.js +40 -0
- package/dist/cjs/side-panel/panel-toggle.js +47 -0
- package/dist/cjs/side-panel/panel-view-list-toggle.js +97 -0
- package/dist/cjs/side-panel/side-bar.js +126 -0
- package/dist/cjs/side-panel.js +235 -0
- package/dist/cjs/types.js +6 -0
- package/dist/common/styled-components.d.ts +2 -1
- package/dist/esm/annotations/annotation-node.js +138 -0
- package/dist/esm/annotations/annotation-overlay.js +161 -0
- package/dist/esm/annotations/annotation-panel.js +355 -0
- package/dist/esm/annotations/annotation-text.js +142 -0
- package/dist/esm/annotations/annotation-utils.js +185 -0
- package/dist/esm/annotations/index.js +9 -0
- package/dist/esm/annotations/lexical-editor/clickable-link-plugin.js +64 -0
- package/dist/esm/annotations/lexical-editor/floating-link-editor.js +186 -0
- package/dist/esm/annotations/lexical-editor/index.js +9 -0
- package/dist/esm/annotations/lexical-editor/lexical-constants.js +16 -0
- package/dist/esm/annotations/lexical-editor/lexical-nodes.js +7 -0
- package/dist/esm/annotations/lexical-editor/lexical-rich-text-editor.js +114 -0
- package/dist/esm/annotations/lexical-editor/lexical-theme.js +19 -0
- package/dist/esm/annotations/lexical-editor/lexical-toolbar.js +285 -0
- package/dist/esm/annotations/lexical-editor/lexical-utils.js +37 -0
- package/dist/esm/annotations/lexical-editor/use-lexical-toolbar.js +248 -0
- package/dist/esm/bottom-widget.js +176 -0
- package/dist/esm/common/action-panel.js +126 -0
- package/dist/esm/common/animation-control/animation-control.js +95 -0
- package/dist/esm/common/animation-control/animation-controller.js +266 -0
- package/dist/esm/common/animation-control/animation-speed-slider.js +56 -0
- package/dist/esm/common/animation-control/animation-window-control.js +50 -0
- package/dist/esm/common/animation-control/export-video-control.js +36 -0
- package/dist/esm/common/animation-control/floating-time-display.js +124 -0
- package/dist/esm/common/animation-control/play-control.js +43 -0
- package/dist/esm/common/animation-control/playback-controls.js +157 -0
- package/dist/esm/common/animation-control/reset-control.js +34 -0
- package/dist/esm/common/animation-control/speed-control.js +46 -0
- package/dist/esm/common/animation-control/window-action-control.js +48 -0
- package/dist/esm/common/checkbox.js +94 -0
- package/dist/esm/common/color-legend.js +261 -0
- package/dist/esm/common/column-stats-chart.js +305 -0
- package/dist/esm/common/data-table/button.js +33 -0
- package/dist/esm/common/data-table/canvas.js +22 -0
- package/dist/esm/common/data-table/cell-size.js +177 -0
- package/dist/esm/common/data-table/display-format.js +118 -0
- package/dist/esm/common/data-table/grid.js +100 -0
- package/dist/esm/common/data-table/header-cell.js +141 -0
- package/dist/esm/common/data-table/index.js +463 -0
- package/dist/esm/common/data-table/option-dropdown.js +152 -0
- package/dist/esm/common/dataset-label.js +22 -0
- package/dist/esm/common/dnd-layer-items.js +16 -0
- package/dist/esm/common/error-boundary.js +55 -0
- package/dist/esm/common/field-selector.js +164 -0
- package/dist/esm/common/field-token.js +38 -0
- package/dist/esm/common/file-uploader/file-drop.js +170 -0
- package/dist/esm/common/file-uploader/file-upload-progress.js +77 -0
- package/dist/esm/common/file-uploader/file-upload.js +234 -0
- package/dist/esm/common/file-uploader/upload-button.js +51 -0
- package/dist/esm/common/flex-container.js +10 -0
- package/dist/esm/common/histogram-plot.js +275 -0
- package/dist/esm/common/icon-button.js +20 -0
- package/dist/esm/common/icons/3d-models/airplane.js +97 -0
- package/dist/esm/common/icons/3d-models/bicycle.js +419 -0
- package/dist/esm/common/icons/3d-models/boeing.js +112 -0
- package/dist/esm/common/icons/3d-models/car.js +103 -0
- package/dist/esm/common/icons/3d-models/cargoship.js +239 -0
- package/dist/esm/common/icons/3d-models/evtol.js +127 -0
- package/dist/esm/common/icons/3d-models/glider.js +55 -0
- package/dist/esm/common/icons/3d-models/helicopter.js +103 -0
- package/dist/esm/common/icons/3d-models/scooter.js +152 -0
- package/dist/esm/common/icons/3d-models/semitruck.js +170 -0
- package/dist/esm/common/icons/3d-models/truck.js +115 -0
- package/dist/esm/common/icons/add.js +34 -0
- package/dist/esm/common/icons/anchor_window.js +36 -0
- package/dist/esm/common/icons/annotation-text.js +49 -0
- package/dist/esm/common/icons/arrow-down-alt.js +34 -0
- package/dist/esm/common/icons/arrow-down-full.js +43 -0
- package/dist/esm/common/icons/arrow-down-small.js +47 -0
- package/dist/esm/common/icons/arrow-down-solid.js +34 -0
- package/dist/esm/common/icons/arrow-down.js +44 -0
- package/dist/esm/common/icons/arrow-left.js +37 -0
- package/dist/esm/common/icons/arrow-right.js +34 -0
- package/dist/esm/common/icons/arrow-up-alt.js +35 -0
- package/dist/esm/common/icons/arrow-up-solid.js +34 -0
- package/dist/esm/common/icons/arrow-up.js +34 -0
- package/dist/esm/common/icons/base-map.js +49 -0
- package/dist/esm/common/icons/base.js +72 -0
- package/dist/esm/common/icons/bug.js +64 -0
- package/dist/esm/common/icons/calendar.js +42 -0
- package/dist/esm/common/icons/cancel.js +34 -0
- package/dist/esm/common/icons/checkmark.js +40 -0
- package/dist/esm/common/icons/clipboard.js +35 -0
- package/dist/esm/common/icons/clock.js +36 -0
- package/dist/esm/common/icons/close.js +40 -0
- package/dist/esm/common/icons/cloud.js +44 -0
- package/dist/esm/common/icons/code-alt.js +37 -0
- package/dist/esm/common/icons/copy.js +45 -0
- package/dist/esm/common/icons/crosshairs.js +37 -0
- package/dist/esm/common/icons/cube-3d.js +48 -0
- package/dist/esm/common/icons/cursor-click.js +38 -0
- package/dist/esm/common/icons/cursor-point.js +44 -0
- package/dist/esm/common/icons/data-table.js +70 -0
- package/dist/esm/common/icons/db.js +52 -0
- package/dist/esm/common/icons/delete.js +46 -0
- package/dist/esm/common/icons/docs.js +50 -0
- package/dist/esm/common/icons/docs2.js +44 -0
- package/dist/esm/common/icons/drag-n-drop.js +36 -0
- package/dist/esm/common/icons/draggable-dots.js +78 -0
- package/dist/esm/common/icons/draw-polygon.js +54 -0
- package/dist/esm/common/icons/edit.js +42 -0
- package/dist/esm/common/icons/effects/brightness-contrast.js +63 -0
- package/dist/esm/common/icons/effects/color-halftone.js +102 -0
- package/dist/esm/common/icons/effects/distance-fog.js +72 -0
- package/dist/esm/common/icons/effects/dot-screen.js +97 -0
- package/dist/esm/common/icons/effects/edge-work.js +56 -0
- package/dist/esm/common/icons/effects/hexagonal-pixelate.js +123 -0
- package/dist/esm/common/icons/effects/hue-saturation.js +54 -0
- package/dist/esm/common/icons/effects/ink.js +53 -0
- package/dist/esm/common/icons/effects/light-and-shadow.js +42 -0
- package/dist/esm/common/icons/effects/magic-wand.js +54 -0
- package/dist/esm/common/icons/effects/magnify.js +61 -0
- package/dist/esm/common/icons/effects/noise.js +107 -0
- package/dist/esm/common/icons/effects/sepia.js +54 -0
- package/dist/esm/common/icons/effects/surface-fog.js +79 -0
- package/dist/esm/common/icons/effects/tilt-shift.js +63 -0
- package/dist/esm/common/icons/effects/triangle-blur.js +58 -0
- package/dist/esm/common/icons/effects/vibrance.js +54 -0
- package/dist/esm/common/icons/effects/vignette.js +47 -0
- package/dist/esm/common/icons/effects/zoom-blur.js +82 -0
- package/dist/esm/common/icons/email.js +38 -0
- package/dist/esm/common/icons/expand.js +36 -0
- package/dist/esm/common/icons/eye-seen.js +43 -0
- package/dist/esm/common/icons/eye-unseen.js +41 -0
- package/dist/esm/common/icons/file-type.js +30 -0
- package/dist/esm/common/icons/file.js +34 -0
- package/dist/esm/common/icons/files.js +37 -0
- package/dist/esm/common/icons/filter-funnel.js +44 -0
- package/dist/esm/common/icons/folder.js +44 -0
- package/dist/esm/common/icons/free-window.js +39 -0
- package/dist/esm/common/icons/gear.js +36 -0
- package/dist/esm/common/icons/globe.js +47 -0
- package/dist/esm/common/icons/hash.js +34 -0
- package/dist/esm/common/icons/help.js +44 -0
- package/dist/esm/common/icons/histogram.js +37 -0
- package/dist/esm/common/icons/horizontal-resize-handle.js +52 -0
- package/dist/esm/common/icons/index.js +124 -0
- package/dist/esm/common/icons/info.js +47 -0
- package/dist/esm/common/icons/layers.js +48 -0
- package/dist/esm/common/icons/left-arrow.js +37 -0
- package/dist/esm/common/icons/legend.js +62 -0
- package/dist/esm/common/icons/line-chart.js +34 -0
- package/dist/esm/common/icons/location-marker.js +52 -0
- package/dist/esm/common/icons/login.js +37 -0
- package/dist/esm/common/icons/logout.js +36 -0
- package/dist/esm/common/icons/map-icon.js +40 -0
- package/dist/esm/common/icons/map-pin.js +50 -0
- package/dist/esm/common/icons/messages.js +48 -0
- package/dist/esm/common/icons/minus.js +34 -0
- package/dist/esm/common/icons/moon.js +52 -0
- package/dist/esm/common/icons/order-by-dataset.js +41 -0
- package/dist/esm/common/icons/order-by-list.js +33 -0
- package/dist/esm/common/icons/pause.js +54 -0
- package/dist/esm/common/icons/picture.js +55 -0
- package/dist/esm/common/icons/pin.js +46 -0
- package/dist/esm/common/icons/play.js +44 -0
- package/dist/esm/common/icons/pointer-click.js +52 -0
- package/dist/esm/common/icons/polygon.js +56 -0
- package/dist/esm/common/icons/rectangle.js +57 -0
- package/dist/esm/common/icons/reduce.js +37 -0
- package/dist/esm/common/icons/reset.js +50 -0
- package/dist/esm/common/icons/save.js +51 -0
- package/dist/esm/common/icons/save2.js +48 -0
- package/dist/esm/common/icons/search.js +36 -0
- package/dist/esm/common/icons/settings.js +54 -0
- package/dist/esm/common/icons/share.js +64 -0
- package/dist/esm/common/icons/speed.js +46 -0
- package/dist/esm/common/icons/split.js +62 -0
- package/dist/esm/common/icons/square-select.js +36 -0
- package/dist/esm/common/icons/sun.js +68 -0
- package/dist/esm/common/icons/sunrise.js +64 -0
- package/dist/esm/common/icons/sunset.js +64 -0
- package/dist/esm/common/icons/timeline-marker.js +49 -0
- package/dist/esm/common/icons/trash.js +48 -0
- package/dist/esm/common/icons/vert-dots.js +72 -0
- package/dist/esm/common/icons/vert-three-dots.js +47 -0
- package/dist/esm/common/icons/warning-sign.js +54 -0
- package/dist/esm/common/icons/warning.js +48 -0
- package/dist/esm/common/icons/zoom-in.js +41 -0
- package/dist/esm/common/icons/zoom-out.js +41 -0
- package/dist/esm/common/image-preview.js +59 -0
- package/dist/esm/common/index.js +8 -0
- package/dist/esm/common/info-helper.js +56 -0
- package/dist/esm/common/item-selector/accessor.js +31 -0
- package/dist/esm/common/item-selector/chickleted-input.js +150 -0
- package/dist/esm/common/item-selector/dropdown-list.js +251 -0
- package/dist/esm/common/item-selector/dropdown-select.js +79 -0
- package/dist/esm/common/item-selector/item-selector.js +247 -0
- package/dist/esm/common/item-selector/typeahead.js +428 -0
- package/dist/esm/common/layout-splitter.js +224 -0
- package/dist/esm/common/line-chart.js +279 -0
- package/dist/esm/common/link-renderer.js +13 -0
- package/dist/esm/common/loading-spinner.js +43 -0
- package/dist/esm/common/logo.js +63 -0
- package/dist/esm/common/map-layer-selector.js +33 -0
- package/dist/esm/common/modal.js +163 -0
- package/dist/esm/common/portaled.js +280 -0
- package/dist/esm/common/progress-bar.js +43 -0
- package/dist/esm/common/radius-legend.js +124 -0
- package/dist/esm/common/range-brush.js +258 -0
- package/dist/esm/common/range-plot.js +210 -0
- package/dist/esm/common/range-slider-timeline-panel.js +35 -0
- package/dist/esm/common/range-slider-timeline.js +105 -0
- package/dist/esm/common/range-slider.js +364 -0
- package/dist/esm/common/slider/mouse-event.js +98 -0
- package/dist/esm/common/slider/slider-bar-handle.js +84 -0
- package/dist/esm/common/slider/slider-handle.js +130 -0
- package/dist/esm/common/slider/slider.js +245 -0
- package/dist/esm/common/styled-components.js +441 -0
- package/dist/esm/common/switch.js +16 -0
- package/dist/esm/common/sync-timeline-control.js +54 -0
- package/dist/esm/common/time-range-slider-time-title.js +57 -0
- package/dist/esm/common/time-range-slider.js +135 -0
- package/dist/esm/common/time-slider-marker.js +105 -0
- package/dist/esm/common/timeline-helpers.js +48 -0
- package/dist/esm/common/timeline-slider.js +133 -0
- package/dist/esm/common/tippy-tooltip.js +127 -0
- package/dist/esm/common/toolbar-item.js +55 -0
- package/dist/esm/common/toolbar.js +22 -0
- package/dist/esm/common/vertical-toolbar.js +11 -0
- package/dist/esm/connect/keplergl-connect.js +38 -0
- package/dist/esm/connect/with-local-selector.js +78 -0
- package/dist/esm/container.js +171 -0
- package/dist/esm/context.js +35 -0
- package/dist/esm/dnd-context.js +167 -0
- package/dist/esm/editor/editor.js +193 -0
- package/dist/esm/editor/feature-action-panel.js +139 -0
- package/dist/esm/effects/compact-color-picker.js +103 -0
- package/dist/esm/effects/effect-configurator.js +465 -0
- package/dist/esm/effects/effect-list.js +122 -0
- package/dist/esm/effects/effect-manager.js +119 -0
- package/dist/esm/effects/effect-panel-header.js +188 -0
- package/dist/esm/effects/effect-panel.js +79 -0
- package/dist/esm/effects/effect-time-configurator.js +306 -0
- package/dist/esm/effects/effect-time-selector.js +145 -0
- package/dist/esm/effects/effect-time-slider.js +190 -0
- package/dist/esm/effects/effect-type-dropdown-list.js +57 -0
- package/dist/esm/effects/effect-type-list-item.js +89 -0
- package/dist/esm/effects/effect-type-selector.js +69 -0
- package/dist/esm/effects/side-panel-title.js +32 -0
- package/dist/esm/effects/surface-fog-section.js +254 -0
- package/dist/esm/effects/timezone-selector.js +50 -0
- package/dist/esm/filter-animation-controller.js +67 -0
- package/dist/esm/filters/components.js +9 -0
- package/dist/esm/filters/filter-panels/filter-panel-with-field-select.js +68 -0
- package/dist/esm/filters/filter-panels/filter-synced-dataset-panel.js +253 -0
- package/dist/esm/filters/filter-panels/multi-select-filter-panel.js +39 -0
- package/dist/esm/filters/filter-panels/new-filter-panel.js +56 -0
- package/dist/esm/filters/filter-panels/polygon-filter-panel.js +58 -0
- package/dist/esm/filters/filter-panels/range-filter-panel.js +44 -0
- package/dist/esm/filters/filter-panels/single-select-filter-panel.js +39 -0
- package/dist/esm/filters/filter-panels/time-range-filter-panel.js +120 -0
- package/dist/esm/filters/filter-panels/time-synced-field-selector.js +23 -0
- package/dist/esm/filters/filter-panels/types.js +3 -0
- package/dist/esm/filters/index.js +12 -0
- package/dist/esm/filters/multi-select-filter.js +24 -0
- package/dist/esm/filters/polygon-filter.js +67 -0
- package/dist/esm/filters/range-filter.js +28 -0
- package/dist/esm/filters/single-select-filter.js +33 -0
- package/dist/esm/filters/time-range-filter.js +61 -0
- package/dist/esm/filters/time-widget-settings.js +304 -0
- package/dist/esm/filters/time-widget-top.js +73 -0
- package/dist/esm/filters/time-widget.js +369 -0
- package/dist/esm/filters/types.js +3 -0
- package/dist/esm/geocoder/geocoder.js +318 -0
- package/dist/esm/geocoder-panel.js +164 -0
- package/dist/esm/hooks/use-cloud-list-provider.js +37 -0
- package/dist/esm/hooks/use-dnd-effects.js +62 -0
- package/dist/esm/hooks/use-dnd-layers.js +136 -0
- package/dist/esm/hooks/use-feature-flags.js +11 -0
- package/dist/esm/hooks/use-fetch-raster-tile-metadata.js +113 -0
- package/dist/esm/hooks/use-fetch-vector-tile-metadata.js +128 -0
- package/dist/esm/hooks/use-legend-position.js +170 -0
- package/dist/esm/hooks/use-on-click-outside.js +29 -0
- package/dist/esm/index.js +278 -0
- package/dist/esm/injector.js +141 -0
- package/dist/esm/kepler-gl.js +651 -0
- package/dist/esm/layer-animation-controller.js +44 -0
- package/dist/esm/loading-indicator.js +69 -0
- package/dist/esm/map/annotations/annotation-control.js +46 -0
- package/dist/esm/map/attribution.js +382 -0
- package/dist/esm/map/coordinate-info.js +36 -0
- package/dist/esm/map/effects/effect-control.js +42 -0
- package/dist/esm/map/layer-hover-info.js +312 -0
- package/dist/esm/map/lazy-tippy.js +53 -0
- package/dist/esm/map/locale-panel.js +67 -0
- package/dist/esm/map/map-control-panel.js +133 -0
- package/dist/esm/map/map-control-toolbar.js +13 -0
- package/dist/esm/map/map-control-tooltip.js +27 -0
- package/dist/esm/map/map-control.js +77 -0
- package/dist/esm/map/map-draw-panel.js +91 -0
- package/dist/esm/map/map-legend-panel.js +282 -0
- package/dist/esm/map/map-legend.js +496 -0
- package/dist/esm/map/map-navigation-control.js +152 -0
- package/dist/esm/map/map-popover-content.js +21 -0
- package/dist/esm/map/map-popover.js +181 -0
- package/dist/esm/map/map-scale.js +155 -0
- package/dist/esm/map/split-map-button.js +167 -0
- package/dist/esm/map/toggle-3d-button.js +113 -0
- package/dist/esm/map-container.js +1292 -0
- package/dist/esm/map-view-state-context.js +89 -0
- package/dist/esm/maps-layout.js +95 -0
- package/dist/esm/modal-container.js +453 -0
- package/dist/esm/modals/add-map-style-modal.js +256 -0
- package/dist/esm/modals/cloud-components/cloud-header.js +52 -0
- package/dist/esm/modals/cloud-components/cloud-item.js +54 -0
- package/dist/esm/modals/cloud-components/cloud-item.spec.js +91 -0
- package/dist/esm/modals/cloud-components/cloud-maps.js +42 -0
- package/dist/esm/modals/cloud-components/cloud-maps.spec.js +94 -0
- package/dist/esm/modals/cloud-components/provider-loading.js +15 -0
- package/dist/esm/modals/cloud-components/provider-select.js +25 -0
- package/dist/esm/modals/cloud-tile.js +195 -0
- package/dist/esm/modals/data-table-modal.js +208 -0
- package/dist/esm/modals/delete-data-modal.js +36 -0
- package/dist/esm/modals/error-display.js +23 -0
- package/dist/esm/modals/export-data-modal.js +155 -0
- package/dist/esm/modals/export-image-modal.js +181 -0
- package/dist/esm/modals/export-map-modal/components.js +29 -0
- package/dist/esm/modals/export-map-modal/export-html-map.js +123 -0
- package/dist/esm/modals/export-map-modal/export-json-map.js +74 -0
- package/dist/esm/modals/export-map-modal/export-map-modal.js +77 -0
- package/dist/esm/modals/export-video-modal.js +400 -0
- package/dist/esm/modals/export-video-modal.spec.js +685 -0
- package/dist/esm/modals/fog-height-animation.js +90 -0
- package/dist/esm/modals/globe-export-video-container.js +620 -0
- package/dist/esm/modals/globe-export-video-preview.js +141 -0
- package/dist/esm/modals/hubble-utils.js +429 -0
- package/dist/esm/modals/hubble-utils.spec.js +396 -0
- package/dist/esm/modals/image-modal-container.js +48 -0
- package/dist/esm/modals/load-data-modal.js +89 -0
- package/dist/esm/modals/load-storage-map.js +70 -0
- package/dist/esm/modals/load-storage-map.spec.js +212 -0
- package/dist/esm/modals/loading-dialog.js +32 -0
- package/dist/esm/modals/modal-dialog.js +9 -0
- package/dist/esm/modals/modal-tabs.js +67 -0
- package/dist/esm/modals/overwrite-map-modal.js +76 -0
- package/dist/esm/modals/save-map-modal.js +172 -0
- package/dist/esm/modals/save-map-modal.spec.js +196 -0
- package/dist/esm/modals/share-map-modal.js +160 -0
- package/dist/esm/modals/share-map-modal.spec.js +172 -0
- package/dist/esm/modals/status-panel.js +60 -0
- package/dist/esm/modals/storage-map-viewer.js +93 -0
- package/dist/esm/modals/swipe-composite-utils.js +111 -0
- package/dist/esm/modals/swipe-export-settings.js +366 -0
- package/dist/esm/modals/swipe-export-video-container.js +646 -0
- package/dist/esm/modals/swipe-export-video-preview.js +384 -0
- package/dist/esm/modals/tilesets-modals/common.js +3 -0
- package/dist/esm/modals/tilesets-modals/load-data-footer.js +48 -0
- package/dist/esm/modals/tilesets-modals/load-tileset.js +161 -0
- package/dist/esm/modals/tilesets-modals/tileset-bitmap-form.js +275 -0
- package/dist/esm/modals/tilesets-modals/tileset-icon.js +34 -0
- package/dist/esm/modals/tilesets-modals/tileset-raster-form.js +279 -0
- package/dist/esm/modals/tilesets-modals/tileset-tile3d-form.js +380 -0
- package/dist/esm/modals/tilesets-modals/tileset-vector-form.js +253 -0
- package/dist/esm/modals/tilesets-modals/tileset-wms-form.js +199 -0
- package/dist/esm/notification-panel/notification-item.js +112 -0
- package/dist/esm/notification-panel.js +34 -0
- package/dist/esm/plot-container.js +304 -0
- package/dist/esm/side-panel/add-by-dataset-button.js +121 -0
- package/dist/esm/side-panel/cloud-storage-dropdown.js +33 -0
- package/dist/esm/side-panel/common/dataset-info.js +29 -0
- package/dist/esm/side-panel/common/dataset-tag.js +57 -0
- package/dist/esm/side-panel/common/dataset-title.js +136 -0
- package/dist/esm/side-panel/common/source-data-catalog.js +44 -0
- package/dist/esm/side-panel/common/source-data-selector-content.js +55 -0
- package/dist/esm/side-panel/common/source-data-selector.js +34 -0
- package/dist/esm/side-panel/common/source-selector.js +49 -0
- package/dist/esm/side-panel/common/types.js +3 -0
- package/dist/esm/side-panel/custom-panel.js +32 -0
- package/dist/esm/side-panel/filter-manager.js +195 -0
- package/dist/esm/side-panel/filter-panel/add-filter-button.js +20 -0
- package/dist/esm/side-panel/filter-panel/filter-panel-header.js +60 -0
- package/dist/esm/side-panel/filter-panel/filter-panel.js +85 -0
- package/dist/esm/side-panel/interaction-manager.js +38 -0
- package/dist/esm/side-panel/interaction-panel/brush-config.js +36 -0
- package/dist/esm/side-panel/interaction-panel/geocoder-config.js +40 -0
- package/dist/esm/side-panel/interaction-panel/interaction-panel.js +114 -0
- package/dist/esm/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +157 -0
- package/dist/esm/side-panel/interaction-panel/tooltip-config.js +142 -0
- package/dist/esm/side-panel/layer-manager.js +217 -0
- package/dist/esm/side-panel/layer-panel/add-layer-button.js +20 -0
- package/dist/esm/side-panel/layer-panel/aggr-scale-selector.js +29 -0
- package/dist/esm/side-panel/layer-panel/channel-by-value-selector.js +61 -0
- package/dist/esm/side-panel/layer-panel/color-breaks-panel.js +186 -0
- package/dist/esm/side-panel/layer-panel/color-palette-preset.js +40 -0
- package/dist/esm/side-panel/layer-panel/color-palette.js +67 -0
- package/dist/esm/side-panel/layer-panel/color-range-selector.js +236 -0
- package/dist/esm/side-panel/layer-panel/color-scale-selector.js +288 -0
- package/dist/esm/side-panel/layer-panel/color-selector.js +179 -0
- package/dist/esm/side-panel/layer-panel/column-selector.js +52 -0
- package/dist/esm/side-panel/layer-panel/custom-palette.js +783 -0
- package/dist/esm/side-panel/layer-panel/custom-picker.js +77 -0
- package/dist/esm/side-panel/layer-panel/dataset-layer-group.js +59 -0
- package/dist/esm/side-panel/layer-panel/dataset-layer-section.js +94 -0
- package/dist/esm/side-panel/layer-panel/dataset-section.js +68 -0
- package/dist/esm/side-panel/layer-panel/dimension-scale-selector.js +82 -0
- package/dist/esm/side-panel/layer-panel/how-to-button.js +22 -0
- package/dist/esm/side-panel/layer-panel/layer-color-selector.js +94 -0
- package/dist/esm/side-panel/layer-panel/layer-column-config.js +76 -0
- package/dist/esm/side-panel/layer-panel/layer-column-mode-config.js +184 -0
- package/dist/esm/side-panel/layer-panel/layer-config-group.js +134 -0
- package/dist/esm/side-panel/layer-panel/layer-configurator.js +1064 -0
- package/dist/esm/side-panel/layer-panel/layer-error-message.js +24 -0
- package/dist/esm/side-panel/layer-panel/layer-group-header.js +171 -0
- package/dist/esm/side-panel/layer-panel/layer-list.js +323 -0
- package/dist/esm/side-panel/layer-panel/layer-panel-header.js +302 -0
- package/dist/esm/side-panel/layer-panel/layer-panel.js +164 -0
- package/dist/esm/side-panel/layer-panel/layer-type-dropdown-list.js +69 -0
- package/dist/esm/side-panel/layer-panel/layer-type-list-item.js +63 -0
- package/dist/esm/side-panel/layer-panel/layer-type-selector.js +50 -0
- package/dist/esm/side-panel/layer-panel/raster-tile-colormap-list-item.js +55 -0
- package/dist/esm/side-panel/layer-panel/raster-tile-layer-configurator.js +450 -0
- package/dist/esm/side-panel/layer-panel/scenegraph-model-selector.js +115 -0
- package/dist/esm/side-panel/layer-panel/single-color-palette.js +78 -0
- package/dist/esm/side-panel/layer-panel/text-label-panel.js +166 -0
- package/dist/esm/side-panel/layer-panel/vector-tile-layer-configurator.js +86 -0
- package/dist/esm/side-panel/layer-panel/vis-config-by-field-selector.js +53 -0
- package/dist/esm/side-panel/layer-panel/vis-config-slider.js +160 -0
- package/dist/esm/side-panel/layer-panel/vis-config-switch.js +50 -0
- package/dist/esm/side-panel/map-manager.js +99 -0
- package/dist/esm/side-panel/map-style-panel/globe-config-panel.js +262 -0
- package/dist/esm/side-panel/map-style-panel/map-layer-group-color-picker.js +69 -0
- package/dist/esm/side-panel/map-style-panel/map-layer-group-item.js +87 -0
- package/dist/esm/side-panel/map-style-panel/map-layer-selector.js +69 -0
- package/dist/esm/side-panel/map-style-panel/map-style-selector.js +92 -0
- package/dist/esm/side-panel/panel-header-action.js +68 -0
- package/dist/esm/side-panel/panel-header.js +303 -0
- package/dist/esm/side-panel/panel-tab.js +49 -0
- package/dist/esm/side-panel/panel-title.js +35 -0
- package/dist/esm/side-panel/panel-toggle.js +40 -0
- package/dist/esm/side-panel/panel-view-list-toggle.js +90 -0
- package/dist/esm/side-panel/side-bar.js +119 -0
- package/dist/esm/side-panel.js +227 -0
- package/dist/esm/types.js +3 -0
- package/dist/index.d.ts +2 -1
- package/dist/loading-indicator.d.ts +1 -0
- package/dist/map/map-scale.d.ts +11 -0
- package/dist/map-container.d.ts +3 -2
- package/dist/modals/hubble-utils.d.ts +16 -0
- package/package.json +39 -25
- package/dist/annotations/annotation-node.js +0 -145
- package/dist/annotations/annotation-overlay.js +0 -168
- package/dist/annotations/annotation-panel.js +0 -361
- package/dist/annotations/annotation-text.js +0 -149
- package/dist/annotations/annotation-utils.js +0 -197
- package/dist/annotations/index.js +0 -53
- package/dist/annotations/lexical-editor/clickable-link-plugin.js +0 -71
- package/dist/annotations/lexical-editor/floating-link-editor.js +0 -193
- package/dist/annotations/lexical-editor/index.js +0 -78
- package/dist/annotations/lexical-editor/lexical-constants.js +0 -22
- package/dist/annotations/lexical-editor/lexical-nodes.js +0 -13
- package/dist/annotations/lexical-editor/lexical-rich-text-editor.js +0 -121
- package/dist/annotations/lexical-editor/lexical-theme.js +0 -25
- package/dist/annotations/lexical-editor/lexical-toolbar.js +0 -292
- package/dist/annotations/lexical-editor/lexical-utils.js +0 -45
- package/dist/annotations/lexical-editor/use-lexical-toolbar.js +0 -253
- package/dist/bottom-widget.js +0 -183
- package/dist/common/action-panel.js +0 -133
- package/dist/common/animation-control/animation-control.js +0 -100
- package/dist/common/animation-control/animation-controller.js +0 -271
- package/dist/common/animation-control/animation-speed-slider.js +0 -63
- package/dist/common/animation-control/animation-window-control.js +0 -59
- package/dist/common/animation-control/export-video-control.js +0 -43
- package/dist/common/animation-control/floating-time-display.js +0 -131
- package/dist/common/animation-control/play-control.js +0 -50
- package/dist/common/animation-control/playback-controls.js +0 -164
- package/dist/common/animation-control/reset-control.js +0 -41
- package/dist/common/animation-control/speed-control.js +0 -51
- package/dist/common/animation-control/window-action-control.js +0 -57
- package/dist/common/checkbox.js +0 -101
- package/dist/common/color-legend.js +0 -272
- package/dist/common/column-stats-chart.js +0 -312
- package/dist/common/data-table/button.js +0 -38
- package/dist/common/data-table/canvas.js +0 -26
- package/dist/common/data-table/cell-size.js +0 -183
- package/dist/common/data-table/display-format.js +0 -125
- package/dist/common/data-table/grid.js +0 -106
- package/dist/common/data-table/header-cell.js +0 -148
- package/dist/common/data-table/index.js +0 -470
- package/dist/common/data-table/option-dropdown.js +0 -159
- package/dist/common/dataset-label.js +0 -27
- package/dist/common/dnd-layer-items.js +0 -22
- package/dist/common/error-boundary.js +0 -59
- package/dist/common/field-selector.js +0 -172
- package/dist/common/field-token.js +0 -43
- package/dist/common/file-uploader/file-drop.js +0 -180
- package/dist/common/file-uploader/file-upload-progress.js +0 -84
- package/dist/common/file-uploader/file-upload.js +0 -241
- package/dist/common/file-uploader/upload-button.js +0 -58
- package/dist/common/flex-container.js +0 -15
- package/dist/common/histogram-plot.js +0 -282
- package/dist/common/icon-button.js +0 -25
- package/dist/common/icons/3d-models/airplane.js +0 -103
- package/dist/common/icons/3d-models/bicycle.js +0 -425
- package/dist/common/icons/3d-models/boeing.js +0 -118
- package/dist/common/icons/3d-models/car.js +0 -109
- package/dist/common/icons/3d-models/cargoship.js +0 -245
- package/dist/common/icons/3d-models/evtol.js +0 -133
- package/dist/common/icons/3d-models/glider.js +0 -61
- package/dist/common/icons/3d-models/helicopter.js +0 -109
- package/dist/common/icons/3d-models/scooter.js +0 -158
- package/dist/common/icons/3d-models/semitruck.js +0 -176
- package/dist/common/icons/3d-models/truck.js +0 -121
- package/dist/common/icons/add.js +0 -40
- package/dist/common/icons/anchor_window.js +0 -41
- package/dist/common/icons/annotation-text.js +0 -55
- package/dist/common/icons/arrow-down-alt.js +0 -40
- package/dist/common/icons/arrow-down-full.js +0 -49
- package/dist/common/icons/arrow-down-small.js +0 -53
- package/dist/common/icons/arrow-down-solid.js +0 -40
- package/dist/common/icons/arrow-down.js +0 -50
- package/dist/common/icons/arrow-left.js +0 -43
- package/dist/common/icons/arrow-right.js +0 -40
- package/dist/common/icons/arrow-up-alt.js +0 -41
- package/dist/common/icons/arrow-up-solid.js +0 -40
- package/dist/common/icons/arrow-up.js +0 -40
- package/dist/common/icons/base-map.js +0 -56
- package/dist/common/icons/base.js +0 -78
- package/dist/common/icons/bug.js +0 -70
- package/dist/common/icons/calendar.js +0 -48
- package/dist/common/icons/cancel.js +0 -40
- package/dist/common/icons/checkmark.js +0 -46
- package/dist/common/icons/clipboard.js +0 -41
- package/dist/common/icons/clock.js +0 -42
- package/dist/common/icons/close.js +0 -46
- package/dist/common/icons/cloud.js +0 -50
- package/dist/common/icons/code-alt.js +0 -43
- package/dist/common/icons/copy.js +0 -51
- package/dist/common/icons/crosshairs.js +0 -43
- package/dist/common/icons/cube-3d.js +0 -54
- package/dist/common/icons/cursor-click.js +0 -44
- package/dist/common/icons/cursor-point.js +0 -50
- package/dist/common/icons/data-table.js +0 -76
- package/dist/common/icons/db.js +0 -58
- package/dist/common/icons/delete.js +0 -52
- package/dist/common/icons/docs.js +0 -56
- package/dist/common/icons/docs2.js +0 -50
- package/dist/common/icons/drag-n-drop.js +0 -42
- package/dist/common/icons/draggable-dots.js +0 -84
- package/dist/common/icons/draw-polygon.js +0 -60
- package/dist/common/icons/edit.js +0 -48
- package/dist/common/icons/effects/brightness-contrast.js +0 -69
- package/dist/common/icons/effects/color-halftone.js +0 -108
- package/dist/common/icons/effects/distance-fog.js +0 -78
- package/dist/common/icons/effects/dot-screen.js +0 -103
- package/dist/common/icons/effects/edge-work.js +0 -62
- package/dist/common/icons/effects/hexagonal-pixelate.js +0 -129
- package/dist/common/icons/effects/hue-saturation.js +0 -60
- package/dist/common/icons/effects/ink.js +0 -59
- package/dist/common/icons/effects/light-and-shadow.js +0 -48
- package/dist/common/icons/effects/magic-wand.js +0 -60
- package/dist/common/icons/effects/magnify.js +0 -67
- package/dist/common/icons/effects/noise.js +0 -113
- package/dist/common/icons/effects/sepia.js +0 -60
- package/dist/common/icons/effects/surface-fog.js +0 -85
- package/dist/common/icons/effects/tilt-shift.js +0 -69
- package/dist/common/icons/effects/triangle-blur.js +0 -64
- package/dist/common/icons/effects/vibrance.js +0 -60
- package/dist/common/icons/effects/vignette.js +0 -53
- package/dist/common/icons/effects/zoom-blur.js +0 -88
- package/dist/common/icons/email.js +0 -44
- package/dist/common/icons/expand.js +0 -42
- package/dist/common/icons/eye-seen.js +0 -49
- package/dist/common/icons/eye-unseen.js +0 -47
- package/dist/common/icons/file-type.js +0 -35
- package/dist/common/icons/file.js +0 -40
- package/dist/common/icons/files.js +0 -41
- package/dist/common/icons/filter-funnel.js +0 -50
- package/dist/common/icons/folder.js +0 -50
- package/dist/common/icons/free-window.js +0 -44
- package/dist/common/icons/gear.js +0 -42
- package/dist/common/icons/globe.js +0 -53
- package/dist/common/icons/hash.js +0 -40
- package/dist/common/icons/help.js +0 -50
- package/dist/common/icons/histogram.js +0 -41
- package/dist/common/icons/horizontal-resize-handle.js +0 -58
- package/dist/common/icons/index.js +0 -824
- package/dist/common/icons/info.js +0 -53
- package/dist/common/icons/layers.js +0 -54
- package/dist/common/icons/left-arrow.js +0 -43
- package/dist/common/icons/legend.js +0 -68
- package/dist/common/icons/line-chart.js +0 -40
- package/dist/common/icons/location-marker.js +0 -58
- package/dist/common/icons/login.js +0 -43
- package/dist/common/icons/logout.js +0 -42
- package/dist/common/icons/map-icon.js +0 -47
- package/dist/common/icons/map-pin.js +0 -56
- package/dist/common/icons/messages.js +0 -54
- package/dist/common/icons/minus.js +0 -40
- package/dist/common/icons/moon.js +0 -58
- package/dist/common/icons/order-by-dataset.js +0 -46
- package/dist/common/icons/order-by-list.js +0 -38
- package/dist/common/icons/pause.js +0 -60
- package/dist/common/icons/picture.js +0 -59
- package/dist/common/icons/pin.js +0 -52
- package/dist/common/icons/play.js +0 -50
- package/dist/common/icons/pointer-click.js +0 -58
- package/dist/common/icons/polygon.js +0 -62
- package/dist/common/icons/rectangle.js +0 -63
- package/dist/common/icons/reduce.js +0 -43
- package/dist/common/icons/reset.js +0 -56
- package/dist/common/icons/save.js +0 -57
- package/dist/common/icons/save2.js +0 -54
- package/dist/common/icons/search.js +0 -42
- package/dist/common/icons/settings.js +0 -60
- package/dist/common/icons/share.js +0 -70
- package/dist/common/icons/speed.js +0 -52
- package/dist/common/icons/split.js +0 -68
- package/dist/common/icons/square-select.js +0 -42
- package/dist/common/icons/sun.js +0 -74
- package/dist/common/icons/sunrise.js +0 -70
- package/dist/common/icons/sunset.js +0 -70
- package/dist/common/icons/timeline-marker.js +0 -55
- package/dist/common/icons/trash.js +0 -54
- package/dist/common/icons/vert-dots.js +0 -78
- package/dist/common/icons/vert-three-dots.js +0 -53
- package/dist/common/icons/warning-sign.js +0 -60
- package/dist/common/icons/warning.js +0 -54
- package/dist/common/icons/zoom-in.js +0 -47
- package/dist/common/icons/zoom-out.js +0 -47
- package/dist/common/image-preview.js +0 -64
- package/dist/common/index.js +0 -282
- package/dist/common/info-helper.js +0 -61
- package/dist/common/item-selector/accessor.js +0 -37
- package/dist/common/item-selector/chickleted-input.js +0 -157
- package/dist/common/item-selector/dropdown-list.js +0 -257
- package/dist/common/item-selector/dropdown-select.js +0 -84
- package/dist/common/item-selector/item-selector.js +0 -254
- package/dist/common/item-selector/typeahead.js +0 -435
- package/dist/common/layout-splitter.js +0 -230
- package/dist/common/line-chart.js +0 -286
- package/dist/common/link-renderer.js +0 -20
- package/dist/common/loading-spinner.js +0 -50
- package/dist/common/logo.js +0 -68
- package/dist/common/map-layer-selector.js +0 -38
- package/dist/common/modal.js +0 -170
- package/dist/common/portaled.js +0 -287
- package/dist/common/progress-bar.js +0 -47
- package/dist/common/radius-legend.js +0 -131
- package/dist/common/range-brush.js +0 -265
- package/dist/common/range-plot.js +0 -217
- package/dist/common/range-slider-timeline-panel.js +0 -42
- package/dist/common/range-slider-timeline.js +0 -112
- package/dist/common/range-slider.js +0 -371
- package/dist/common/slider/mouse-event.js +0 -104
- package/dist/common/slider/slider-bar-handle.js +0 -90
- package/dist/common/slider/slider-handle.js +0 -136
- package/dist/common/slider/slider.js +0 -251
- package/dist/common/styled-components.js +0 -443
- package/dist/common/switch.js +0 -21
- package/dist/common/sync-timeline-control.js +0 -61
- package/dist/common/time-range-slider-time-title.js +0 -62
- package/dist/common/time-range-slider.js +0 -143
- package/dist/common/time-slider-marker.js +0 -115
- package/dist/common/timeline-helpers.js +0 -57
- package/dist/common/timeline-slider.js +0 -140
- package/dist/common/tippy-tooltip.js +0 -134
- package/dist/common/toolbar-item.js +0 -60
- package/dist/common/toolbar.js +0 -27
- package/dist/common/vertical-toolbar.js +0 -16
- package/dist/connect/keplergl-connect.js +0 -44
- package/dist/connect/with-local-selector.js +0 -85
- package/dist/container.js +0 -180
- package/dist/context.js +0 -43
- package/dist/dnd-context.js +0 -174
- package/dist/editor/editor.js +0 -200
- package/dist/editor/feature-action-panel.js +0 -147
- package/dist/effects/compact-color-picker.js +0 -110
- package/dist/effects/effect-configurator.js +0 -473
- package/dist/effects/effect-list.js +0 -129
- package/dist/effects/effect-manager.js +0 -126
- package/dist/effects/effect-panel-header.js +0 -196
- package/dist/effects/effect-panel.js +0 -86
- package/dist/effects/effect-time-configurator.js +0 -313
- package/dist/effects/effect-time-selector.js +0 -152
- package/dist/effects/effect-time-slider.js +0 -198
- package/dist/effects/effect-type-dropdown-list.js +0 -65
- package/dist/effects/effect-type-list-item.js +0 -98
- package/dist/effects/effect-type-selector.js +0 -76
- package/dist/effects/side-panel-title.js +0 -37
- package/dist/effects/surface-fog-section.js +0 -262
- package/dist/effects/timezone-selector.js +0 -57
- package/dist/filter-animation-controller.js +0 -76
- package/dist/filters/components.js +0 -14
- package/dist/filters/filter-panels/filter-panel-with-field-select.js +0 -77
- package/dist/filters/filter-panels/filter-synced-dataset-panel.js +0 -260
- package/dist/filters/filter-panels/multi-select-filter-panel.js +0 -48
- package/dist/filters/filter-panels/new-filter-panel.js +0 -66
- package/dist/filters/filter-panels/polygon-filter-panel.js +0 -67
- package/dist/filters/filter-panels/range-filter-panel.js +0 -53
- package/dist/filters/filter-panels/single-select-filter-panel.js +0 -48
- package/dist/filters/filter-panels/time-range-filter-panel.js +0 -129
- package/dist/filters/filter-panels/time-synced-field-selector.js +0 -28
- package/dist/filters/filter-panels/types.js +0 -6
- package/dist/filters/index.js +0 -63
- package/dist/filters/multi-select-filter.js +0 -31
- package/dist/filters/polygon-filter.js +0 -76
- package/dist/filters/range-filter.js +0 -35
- package/dist/filters/single-select-filter.js +0 -40
- package/dist/filters/time-range-filter.js +0 -69
- package/dist/filters/time-widget-settings.js +0 -311
- package/dist/filters/time-widget-top.js +0 -80
- package/dist/filters/time-widget.js +0 -376
- package/dist/filters/types.js +0 -6
- package/dist/geocoder/geocoder.js +0 -327
- package/dist/geocoder-panel.js +0 -172
- package/dist/hooks/use-cloud-list-provider.js +0 -46
- package/dist/hooks/use-dnd-effects.js +0 -69
- package/dist/hooks/use-dnd-layers.js +0 -141
- package/dist/hooks/use-feature-flags.js +0 -17
- package/dist/hooks/use-fetch-raster-tile-metadata.js +0 -120
- package/dist/hooks/use-fetch-vector-tile-metadata.js +0 -133
- package/dist/hooks/use-legend-position.js +0 -176
- package/dist/hooks/use-on-click-outside.js +0 -36
- package/dist/index.js +0 -2882
- package/dist/injector.js +0 -151
- package/dist/kepler-gl.js +0 -664
- package/dist/layer-animation-controller.js +0 -53
- package/dist/loading-indicator.js +0 -73
- package/dist/map/annotations/annotation-control.js +0 -55
- package/dist/map/attribution.js +0 -389
- package/dist/map/coordinate-info.js +0 -42
- package/dist/map/effects/effect-control.js +0 -51
- package/dist/map/layer-hover-info.js +0 -318
- package/dist/map/lazy-tippy.js +0 -60
- package/dist/map/locale-panel.js +0 -76
- package/dist/map/map-control-panel.js +0 -140
- package/dist/map/map-control-toolbar.js +0 -18
- package/dist/map/map-control-tooltip.js +0 -34
- package/dist/map/map-control.js +0 -81
- package/dist/map/map-draw-panel.js +0 -100
- package/dist/map/map-legend-panel.js +0 -289
- package/dist/map/map-legend.js +0 -509
- package/dist/map/map-navigation-control.js +0 -159
- package/dist/map/map-popover-content.js +0 -28
- package/dist/map/map-popover.js +0 -189
- package/dist/map/split-map-button.js +0 -176
- package/dist/map/toggle-3d-button.js +0 -122
- package/dist/map-container.js +0 -1241
- package/dist/map-view-state-context.js +0 -98
- package/dist/maps-layout.js +0 -102
- package/dist/modal-container.js +0 -456
- package/dist/modals/add-map-style-modal.js +0 -224
- package/dist/modals/cloud-components/cloud-header.js +0 -59
- package/dist/modals/cloud-components/cloud-item.js +0 -59
- package/dist/modals/cloud-components/cloud-item.spec.js +0 -92
- package/dist/modals/cloud-components/cloud-maps.js +0 -47
- package/dist/modals/cloud-components/cloud-maps.spec.js +0 -98
- package/dist/modals/cloud-components/provider-loading.js +0 -20
- package/dist/modals/cloud-components/provider-select.js +0 -30
- package/dist/modals/cloud-tile.js +0 -202
- package/dist/modals/data-table-modal.js +0 -215
- package/dist/modals/delete-data-modal.js +0 -41
- package/dist/modals/error-display.js +0 -32
- package/dist/modals/export-data-modal.js +0 -163
- package/dist/modals/export-image-modal.js +0 -188
- package/dist/modals/export-map-modal/components.js +0 -34
- package/dist/modals/export-map-modal/export-html-map.js +0 -128
- package/dist/modals/export-map-modal/export-json-map.js +0 -81
- package/dist/modals/export-map-modal/export-map-modal.js +0 -84
- package/dist/modals/export-video-modal.js +0 -413
- package/dist/modals/export-video-modal.spec.js +0 -686
- package/dist/modals/fog-height-animation.js +0 -97
- package/dist/modals/globe-export-video-container.js +0 -626
- package/dist/modals/globe-export-video-preview.js +0 -152
- package/dist/modals/hubble-utils.js +0 -422
- package/dist/modals/hubble-utils.spec.js +0 -397
- package/dist/modals/image-modal-container.js +0 -57
- package/dist/modals/load-data-modal.js +0 -97
- package/dist/modals/load-storage-map.js +0 -79
- package/dist/modals/load-storage-map.spec.js +0 -216
- package/dist/modals/loading-dialog.js +0 -37
- package/dist/modals/modal-dialog.js +0 -16
- package/dist/modals/modal-tabs.js +0 -74
- package/dist/modals/overwrite-map-modal.js +0 -83
- package/dist/modals/save-map-modal.js +0 -179
- package/dist/modals/save-map-modal.spec.js +0 -195
- package/dist/modals/share-map-modal.js +0 -168
- package/dist/modals/share-map-modal.spec.js +0 -173
- package/dist/modals/status-panel.js +0 -65
- package/dist/modals/storage-map-viewer.js +0 -98
- package/dist/modals/swipe-composite-utils.js +0 -118
- package/dist/modals/swipe-export-settings.js +0 -372
- package/dist/modals/swipe-export-video-container.js +0 -653
- package/dist/modals/swipe-export-video-preview.js +0 -401
- package/dist/modals/tilesets-modals/common.js +0 -6
- package/dist/modals/tilesets-modals/load-data-footer.js +0 -55
- package/dist/modals/tilesets-modals/load-tileset.js +0 -168
- package/dist/modals/tilesets-modals/tileset-bitmap-form.js +0 -283
- package/dist/modals/tilesets-modals/tileset-icon.js +0 -39
- package/dist/modals/tilesets-modals/tileset-raster-form.js +0 -287
- package/dist/modals/tilesets-modals/tileset-tile3d-form.js +0 -388
- package/dist/modals/tilesets-modals/tileset-vector-form.js +0 -261
- package/dist/modals/tilesets-modals/tileset-wms-form.js +0 -206
- package/dist/notification-panel/notification-item.js +0 -119
- package/dist/notification-panel.js +0 -39
- package/dist/plot-container.js +0 -311
- package/dist/side-panel/add-by-dataset-button.js +0 -128
- package/dist/side-panel/cloud-storage-dropdown.js +0 -40
- package/dist/side-panel/common/dataset-info.js +0 -34
- package/dist/side-panel/common/dataset-tag.js +0 -62
- package/dist/side-panel/common/dataset-title.js +0 -143
- package/dist/side-panel/common/source-data-catalog.js +0 -49
- package/dist/side-panel/common/source-data-selector-content.js +0 -64
- package/dist/side-panel/common/source-data-selector.js +0 -41
- package/dist/side-panel/common/source-selector.js +0 -56
- package/dist/side-panel/common/types.js +0 -6
- package/dist/side-panel/custom-panel.js +0 -39
- package/dist/side-panel/filter-manager.js +0 -202
- package/dist/side-panel/filter-panel/add-filter-button.js +0 -27
- package/dist/side-panel/filter-panel/filter-panel-header.js +0 -67
- package/dist/side-panel/filter-panel/filter-panel.js +0 -92
- package/dist/side-panel/interaction-manager.js +0 -45
- package/dist/side-panel/interaction-panel/brush-config.js +0 -41
- package/dist/side-panel/interaction-panel/geocoder-config.js +0 -45
- package/dist/side-panel/interaction-panel/interaction-panel.js +0 -121
- package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +0 -164
- package/dist/side-panel/interaction-panel/tooltip-config.js +0 -149
- package/dist/side-panel/layer-manager.js +0 -224
- package/dist/side-panel/layer-panel/add-layer-button.js +0 -27
- package/dist/side-panel/layer-panel/aggr-scale-selector.js +0 -37
- package/dist/side-panel/layer-panel/channel-by-value-selector.js +0 -71
- package/dist/side-panel/layer-panel/color-breaks-panel.js +0 -193
- package/dist/side-panel/layer-panel/color-palette-preset.js +0 -45
- package/dist/side-panel/layer-panel/color-palette.js +0 -74
- package/dist/side-panel/layer-panel/color-range-selector.js +0 -242
- package/dist/side-panel/layer-panel/color-scale-selector.js +0 -295
- package/dist/side-panel/layer-panel/color-selector.js +0 -186
- package/dist/side-panel/layer-panel/column-selector.js +0 -59
- package/dist/side-panel/layer-panel/custom-palette.js +0 -787
- package/dist/side-panel/layer-panel/custom-picker.js +0 -83
- package/dist/side-panel/layer-panel/dataset-layer-group.js +0 -68
- package/dist/side-panel/layer-panel/dataset-layer-section.js +0 -101
- package/dist/side-panel/layer-panel/dataset-section.js +0 -74
- package/dist/side-panel/layer-panel/dimension-scale-selector.js +0 -91
- package/dist/side-panel/layer-panel/how-to-button.js +0 -27
- package/dist/side-panel/layer-panel/layer-color-selector.js +0 -105
- package/dist/side-panel/layer-panel/layer-column-config.js +0 -85
- package/dist/side-panel/layer-panel/layer-column-mode-config.js +0 -192
- package/dist/side-panel/layer-panel/layer-config-group.js +0 -143
- package/dist/side-panel/layer-panel/layer-configurator.js +0 -1073
- package/dist/side-panel/layer-panel/layer-error-message.js +0 -29
- package/dist/side-panel/layer-panel/layer-group-header.js +0 -178
- package/dist/side-panel/layer-panel/layer-list.js +0 -330
- package/dist/side-panel/layer-panel/layer-panel-header.js +0 -311
- package/dist/side-panel/layer-panel/layer-panel.js +0 -171
- package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +0 -77
- package/dist/side-panel/layer-panel/layer-type-list-item.js +0 -71
- package/dist/side-panel/layer-panel/layer-type-selector.js +0 -57
- package/dist/side-panel/layer-panel/raster-tile-colormap-list-item.js +0 -60
- package/dist/side-panel/layer-panel/raster-tile-layer-configurator.js +0 -457
- package/dist/side-panel/layer-panel/scenegraph-model-selector.js +0 -122
- package/dist/side-panel/layer-panel/single-color-palette.js +0 -85
- package/dist/side-panel/layer-panel/text-label-panel.js +0 -173
- package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +0 -93
- package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +0 -60
- package/dist/side-panel/layer-panel/vis-config-slider.js +0 -167
- package/dist/side-panel/layer-panel/vis-config-switch.js +0 -55
- package/dist/side-panel/map-manager.js +0 -108
- package/dist/side-panel/map-style-panel/globe-config-panel.js +0 -269
- package/dist/side-panel/map-style-panel/map-layer-group-color-picker.js +0 -76
- package/dist/side-panel/map-style-panel/map-layer-group-item.js +0 -94
- package/dist/side-panel/map-style-panel/map-layer-selector.js +0 -74
- package/dist/side-panel/map-style-panel/map-style-selector.js +0 -97
- package/dist/side-panel/panel-header-action.js +0 -73
- package/dist/side-panel/panel-header.js +0 -309
- package/dist/side-panel/panel-tab.js +0 -55
- package/dist/side-panel/panel-title.js +0 -40
- package/dist/side-panel/panel-toggle.js +0 -47
- package/dist/side-panel/panel-view-list-toggle.js +0 -97
- package/dist/side-panel/side-bar.js +0 -126
- package/dist/side-panel.js +0 -235
- package/dist/types.js +0 -6
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
14
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
15
|
+
var _classnames3 = _interopRequireDefault(require("classnames"));
|
|
16
|
+
var _core = require("@dnd-kit/core");
|
|
17
|
+
var _sortable = require("@dnd-kit/sortable");
|
|
18
|
+
var _utilities = require("@dnd-kit/utilities");
|
|
19
|
+
var _layerPanel = _interopRequireDefault(require("./layer-panel"));
|
|
20
|
+
var _layerGroupHeader = _interopRequireDefault(require("./layer-group-header"));
|
|
21
|
+
var _reducers = require("@kepler.gl/reducers");
|
|
22
|
+
var _constants = require("@kepler.gl/constants");
|
|
23
|
+
var _dndLayerItems = require("../../common/dnd-layer-items");
|
|
24
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject0; // SPDX-License-Identifier: MIT
|
|
25
|
+
// Copyright contributors to the kepler.gl project
|
|
26
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
27
|
+
var Container = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 8px;\n"])));
|
|
28
|
+
var animateLayoutChanges = function animateLayoutChanges(args) {
|
|
29
|
+
var isSorting = args.isSorting,
|
|
30
|
+
wasDragging = args.wasDragging;
|
|
31
|
+
if (isSorting || wasDragging) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
return (0, _sortable.defaultAnimateLayoutChanges)(args);
|
|
35
|
+
};
|
|
36
|
+
var EndPlaceholder = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n height: 4px;\n"])));
|
|
37
|
+
var SortableStyledItem = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n transition: ", ";\n transform: ", ";\n &.sorting {\n opacity: 0.3;\n pointer-events: none;\n }\n &.sorting-layers .layer-panel__header {\n background-color: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n line-height: ", ";\n *,\n *:before,\n *:after {\n box-sizing: border-box;\n }\n .layer__drag-handle {\n opacity: 1;\n color: ", ";\n }\n }\n"])), function (props) {
|
|
38
|
+
return props.$transition;
|
|
39
|
+
}, function (props) {
|
|
40
|
+
return props.$transform;
|
|
41
|
+
}, function (props) {
|
|
42
|
+
return props.theme.panelBackgroundHover;
|
|
43
|
+
}, function (props) {
|
|
44
|
+
return props.theme.fontFamily;
|
|
45
|
+
}, function (props) {
|
|
46
|
+
return props.theme.fontWeight;
|
|
47
|
+
}, function (props) {
|
|
48
|
+
return props.theme.fontSize;
|
|
49
|
+
}, function (props) {
|
|
50
|
+
return props.theme.lineHeight;
|
|
51
|
+
}, function (props) {
|
|
52
|
+
return props.theme.textColorHl;
|
|
53
|
+
});
|
|
54
|
+
var CollapsibleGroupContent = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 0;\n padding: 4px 0;\n min-height: 32px;\n background-color: ", ";\n transition: background-color 0.15s ease;\n"])), function (props) {
|
|
55
|
+
return props.$isOver ? props.theme.panelBackgroundHover : 'transparent';
|
|
56
|
+
});
|
|
57
|
+
var CollapsedDropZone = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 4px;\n background-color: ", ";\n transition: background-color 0.15s ease, min-height 0.15s ease;\n ", "\n"])), function (props) {
|
|
58
|
+
return props.$isOver ? props.theme.activeColor : 'transparent';
|
|
59
|
+
}, function (props) {
|
|
60
|
+
return props.$isOver && 'min-height: 24px;';
|
|
61
|
+
});
|
|
62
|
+
var EmptyLayerGroup = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n font-size: 11px;\n align-items: center;\n justify-content: center;\n min-height: 28px;\n border: 1px dashed ", ";\n border-radius: 4px;\n margin-top: 4px;\n color: ", ";\n"])), function (props) {
|
|
63
|
+
return props.theme.labelColor;
|
|
64
|
+
}, function (props) {
|
|
65
|
+
return props.theme.subtextColor;
|
|
66
|
+
});
|
|
67
|
+
var TREE_TILE_WIDTH = 10;
|
|
68
|
+
var TREE_TILE_BORDER_WIDTH = 1;
|
|
69
|
+
var StyledColumn = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n border-left: ", "px dashed ", ";\n"])), function (props) {
|
|
70
|
+
return props.$isLast ? 0 : 1;
|
|
71
|
+
}, function (props) {
|
|
72
|
+
return props.theme.labelColor;
|
|
73
|
+
});
|
|
74
|
+
var TreeTile = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", "px;\n border-bottom: 1px dashed ", ";\n height: ", "px;\n margin-top: 2px;\n border-left: ", "px dashed ", ";\n"])), TREE_TILE_WIDTH, function (props) {
|
|
75
|
+
return props.theme.labelColor;
|
|
76
|
+
}, function (props) {
|
|
77
|
+
return (props.theme.layerPanelHeaderHeight || 32) / 2;
|
|
78
|
+
}, function (props) {
|
|
79
|
+
return props.$isLast ? 1 : 0;
|
|
80
|
+
}, function (props) {
|
|
81
|
+
return props.theme.labelColor;
|
|
82
|
+
});
|
|
83
|
+
var NestedLayerContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
|
|
84
|
+
var NestedLayerContent = _styledComponents["default"].div(_templateObject0 || (_templateObject0 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - ", "px);\n padding-top: 8px;\n"])), TREE_TILE_WIDTH + TREE_TILE_BORDER_WIDTH);
|
|
85
|
+
LayerListFactory.deps = [_layerPanel["default"], _layerGroupHeader["default"]];
|
|
86
|
+
function LayerListFactory(LayerPanel, LayerGroupHeader) {
|
|
87
|
+
var NestedLayer = function NestedLayer(_ref) {
|
|
88
|
+
var children = _ref.children,
|
|
89
|
+
isLast = _ref.isLast;
|
|
90
|
+
return /*#__PURE__*/_react["default"].createElement(NestedLayerContainer, null, /*#__PURE__*/_react["default"].createElement(StyledColumn, {
|
|
91
|
+
$isLast: isLast
|
|
92
|
+
}, /*#__PURE__*/_react["default"].createElement(TreeTile, {
|
|
93
|
+
$isLast: isLast
|
|
94
|
+
})), /*#__PURE__*/_react["default"].createElement(NestedLayerContent, null, children));
|
|
95
|
+
};
|
|
96
|
+
var SortableLayerItem = function SortableLayerItem(_ref2) {
|
|
97
|
+
var layer = _ref2.layer,
|
|
98
|
+
idx = _ref2.idx,
|
|
99
|
+
panelProps = _ref2.panelProps,
|
|
100
|
+
layerActions = _ref2.layerActions,
|
|
101
|
+
disabled = _ref2.disabled,
|
|
102
|
+
parent = _ref2.parent;
|
|
103
|
+
var _useSortable = (0, _sortable.useSortable)({
|
|
104
|
+
id: layer.id,
|
|
105
|
+
data: {
|
|
106
|
+
type: _dndLayerItems.SORTABLE_LAYER_TYPE,
|
|
107
|
+
parent: parent
|
|
108
|
+
},
|
|
109
|
+
disabled: disabled,
|
|
110
|
+
animateLayoutChanges: animateLayoutChanges
|
|
111
|
+
}),
|
|
112
|
+
attributes = _useSortable.attributes,
|
|
113
|
+
listeners = _useSortable.listeners,
|
|
114
|
+
setNodeRef = _useSortable.setNodeRef,
|
|
115
|
+
isDragging = _useSortable.isDragging,
|
|
116
|
+
transform = _useSortable.transform,
|
|
117
|
+
transition = _useSortable.transition;
|
|
118
|
+
return /*#__PURE__*/_react["default"].createElement(SortableStyledItem, (0, _extends2["default"])({
|
|
119
|
+
ref: setNodeRef,
|
|
120
|
+
className: (0, _classnames3["default"])((0, _defineProperty2["default"])({}, _constants.dataTestIds.sortableLayerItem, !disabled), (0, _defineProperty2["default"])({}, _constants.dataTestIds.staticLayerItem, disabled), {
|
|
121
|
+
sorting: isDragging
|
|
122
|
+
}),
|
|
123
|
+
"data-testid": disabled ? _constants.dataTestIds.staticLayerItem : _constants.dataTestIds.sortableLayerItem,
|
|
124
|
+
$transform: _utilities.CSS.Transform.toString(transform),
|
|
125
|
+
$transition: transition
|
|
126
|
+
}, attributes), /*#__PURE__*/_react["default"].createElement(LayerPanel, (0, _extends2["default"])({}, panelProps, layerActions, {
|
|
127
|
+
key: layer.id,
|
|
128
|
+
idx: idx,
|
|
129
|
+
layer: layer,
|
|
130
|
+
listeners: listeners,
|
|
131
|
+
isDraggable: !disabled
|
|
132
|
+
})));
|
|
133
|
+
};
|
|
134
|
+
var SortableGroupItem = function SortableGroupItem(_ref3) {
|
|
135
|
+
var layerGroup = _ref3.layerGroup,
|
|
136
|
+
layers = _ref3.layers,
|
|
137
|
+
panelProps = _ref3.panelProps,
|
|
138
|
+
layerActions = _ref3.layerActions,
|
|
139
|
+
disabled = _ref3.disabled;
|
|
140
|
+
var _useSortable2 = (0, _sortable.useSortable)({
|
|
141
|
+
id: layerGroup.id,
|
|
142
|
+
data: {
|
|
143
|
+
type: _dndLayerItems.SORTABLE_LAYER_GROUP_TYPE
|
|
144
|
+
},
|
|
145
|
+
disabled: disabled,
|
|
146
|
+
animateLayoutChanges: animateLayoutChanges
|
|
147
|
+
}),
|
|
148
|
+
attributes = _useSortable2.attributes,
|
|
149
|
+
isDragging = _useSortable2.isDragging,
|
|
150
|
+
listeners = _useSortable2.listeners,
|
|
151
|
+
setNodeRef = _useSortable2.setNodeRef,
|
|
152
|
+
transform = _useSortable2.transform,
|
|
153
|
+
transition = _useSortable2.transition;
|
|
154
|
+
var layerEntriesToShow = (0, _reducers.buildLayerOrderHierarchy)(layerGroup.layerOrder, layers);
|
|
155
|
+
var dndItems = layerEntriesToShow.map(function (entry) {
|
|
156
|
+
var _entry$1$id;
|
|
157
|
+
return (_entry$1$id = entry[1].id) !== null && _entry$1$id !== void 0 ? _entry$1$id : entry[1];
|
|
158
|
+
});
|
|
159
|
+
var _useState = (0, _react.useState)(true),
|
|
160
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
161
|
+
isSectionOpen = _useState2[0],
|
|
162
|
+
setIsSectionOpen = _useState2[1];
|
|
163
|
+
var onToggle = (0, _react.useCallback)(function () {
|
|
164
|
+
return setIsSectionOpen(function (prev) {
|
|
165
|
+
return !prev;
|
|
166
|
+
});
|
|
167
|
+
}, []);
|
|
168
|
+
var style = (0, _react.useMemo)(function () {
|
|
169
|
+
return {
|
|
170
|
+
transform: _utilities.CSS.Transform.toString(transform),
|
|
171
|
+
transition: transition,
|
|
172
|
+
opacity: isDragging ? 0.5 : 1
|
|
173
|
+
};
|
|
174
|
+
}, [isDragging, transform, transition]);
|
|
175
|
+
var _useDroppable = (0, _core.useDroppable)({
|
|
176
|
+
id: "droppable-layer-group-content-".concat(layerGroup.id),
|
|
177
|
+
data: {
|
|
178
|
+
type: _dndLayerItems.SORTABLE_LAYER_GROUP_DROPPABLE_TYPE,
|
|
179
|
+
parent: layerGroup
|
|
180
|
+
}
|
|
181
|
+
}),
|
|
182
|
+
isOver = _useDroppable.isOver,
|
|
183
|
+
droppableSetNodeRef = _useDroppable.setNodeRef;
|
|
184
|
+
var isOpen = (0, _react.useMemo)(function () {
|
|
185
|
+
return isSectionOpen && !isDragging;
|
|
186
|
+
}, [isSectionOpen, isDragging]);
|
|
187
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
188
|
+
style: style
|
|
189
|
+
}, /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
|
|
190
|
+
ref: setNodeRef
|
|
191
|
+
}, attributes), /*#__PURE__*/_react["default"].createElement(LayerGroupHeader, {
|
|
192
|
+
layerGroup: layerGroup,
|
|
193
|
+
onToggleLayerGroupContent: onToggle,
|
|
194
|
+
isLayerGroupContentOpen: isSectionOpen,
|
|
195
|
+
listeners: listeners
|
|
196
|
+
})), isOpen ? /*#__PURE__*/_react["default"].createElement(CollapsibleGroupContent, {
|
|
197
|
+
ref: droppableSetNodeRef,
|
|
198
|
+
$isOver: isOver
|
|
199
|
+
}, layerEntriesToShow.length ? /*#__PURE__*/_react["default"].createElement(_sortable.SortableContext, {
|
|
200
|
+
id: "sortable-group-".concat(layerGroup.id),
|
|
201
|
+
items: dndItems,
|
|
202
|
+
strategy: _sortable.verticalListSortingStrategy
|
|
203
|
+
}, layerEntriesToShow.map(function (_ref4, index) {
|
|
204
|
+
var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2),
|
|
205
|
+
type = _ref5[0],
|
|
206
|
+
nestedEntry = _ref5[1];
|
|
207
|
+
return type === 'layer' ? /*#__PURE__*/_react["default"].createElement(NestedLayer, {
|
|
208
|
+
key: nestedEntry.id,
|
|
209
|
+
isLast: index === layerEntriesToShow.length - 1
|
|
210
|
+
}, /*#__PURE__*/_react["default"].createElement(SortableLayerItem, {
|
|
211
|
+
layer: nestedEntry,
|
|
212
|
+
idx: layers.findIndex(function (l) {
|
|
213
|
+
return (l === null || l === void 0 ? void 0 : l.id) === nestedEntry.id;
|
|
214
|
+
}),
|
|
215
|
+
panelProps: panelProps,
|
|
216
|
+
layerActions: layerActions,
|
|
217
|
+
disabled: disabled,
|
|
218
|
+
parent: layerGroup
|
|
219
|
+
})) : null;
|
|
220
|
+
})) : /*#__PURE__*/_react["default"].createElement(EmptyLayerGroup, null, "Drag layer here")) : /*#__PURE__*/_react["default"].createElement(CollapsedDropZone, {
|
|
221
|
+
ref: droppableSetNodeRef,
|
|
222
|
+
$isOver: isOver
|
|
223
|
+
}));
|
|
224
|
+
};
|
|
225
|
+
var SortableEndPlaceholder = function SortableEndPlaceholder() {
|
|
226
|
+
var _useSortable3 = (0, _sortable.useSortable)({
|
|
227
|
+
id: _dndLayerItems.SORTABLE_LAYER_END_PLACEHOLDER,
|
|
228
|
+
data: {
|
|
229
|
+
type: _dndLayerItems.SORTABLE_LAYER_END_TYPE
|
|
230
|
+
},
|
|
231
|
+
animateLayoutChanges: animateLayoutChanges
|
|
232
|
+
}),
|
|
233
|
+
setNodeRef = _useSortable3.setNodeRef;
|
|
234
|
+
return /*#__PURE__*/_react["default"].createElement(EndPlaceholder, {
|
|
235
|
+
ref: setNodeRef
|
|
236
|
+
});
|
|
237
|
+
};
|
|
238
|
+
var LayerList = function LayerList(props) {
|
|
239
|
+
var layers = props.layers,
|
|
240
|
+
datasets = props.datasets,
|
|
241
|
+
layerOrder = props.layerOrder,
|
|
242
|
+
uiStateActions = props.uiStateActions,
|
|
243
|
+
visStateActions = props.visStateActions,
|
|
244
|
+
mapStateActions = props.mapStateActions,
|
|
245
|
+
mapState = props.mapState,
|
|
246
|
+
layerClasses = props.layerClasses,
|
|
247
|
+
_props$isSortable = props.isSortable,
|
|
248
|
+
isSortable = _props$isSortable === void 0 ? true : _props$isSortable,
|
|
249
|
+
splitMap = props.splitMap;
|
|
250
|
+
var openModal = uiStateActions.toggleModal;
|
|
251
|
+
var layerEntriesToShow = (0, _react.useMemo)(function () {
|
|
252
|
+
return (0, _reducers.buildLayerOrderHierarchy)(layerOrder, layers);
|
|
253
|
+
}, [layerOrder, layers]);
|
|
254
|
+
var sidePanelDndItems = (0, _react.useMemo)(function () {
|
|
255
|
+
var items = layerEntriesToShow.map(function (entry) {
|
|
256
|
+
var _entry$1$id2;
|
|
257
|
+
return (_entry$1$id2 = entry[1].id) !== null && _entry$1$id2 !== void 0 ? _entry$1$id2 : entry[1];
|
|
258
|
+
});
|
|
259
|
+
items.push(_dndLayerItems.SORTABLE_LAYER_END_PLACEHOLDER);
|
|
260
|
+
return items;
|
|
261
|
+
}, [layerEntriesToShow]);
|
|
262
|
+
var layerTypeOptions = (0, _react.useMemo)(function () {
|
|
263
|
+
return Object.keys(layerClasses).map(function (key) {
|
|
264
|
+
var layer = new layerClasses[key]({
|
|
265
|
+
dataId: ''
|
|
266
|
+
});
|
|
267
|
+
return {
|
|
268
|
+
id: key,
|
|
269
|
+
label: layer.name,
|
|
270
|
+
icon: layer.layerIcon,
|
|
271
|
+
requireData: layer.requireData
|
|
272
|
+
};
|
|
273
|
+
});
|
|
274
|
+
}, [layerClasses]);
|
|
275
|
+
var layerActions = (0, _react.useMemo)(function () {
|
|
276
|
+
return {
|
|
277
|
+
layerColorUIChange: visStateActions.layerColorUIChange,
|
|
278
|
+
layerConfigChange: visStateActions.layerConfigChange,
|
|
279
|
+
layerVisualChannelConfigChange: visStateActions.layerVisualChannelConfigChange,
|
|
280
|
+
layerToggleVisibility: visStateActions.layerToggleVisibility,
|
|
281
|
+
layerTypeChange: visStateActions.layerTypeChange,
|
|
282
|
+
layerVisConfigChange: visStateActions.layerVisConfigChange,
|
|
283
|
+
layerTextLabelChange: visStateActions.layerTextLabelChange,
|
|
284
|
+
removeLayer: visStateActions.removeLayer,
|
|
285
|
+
zoomToLayer: mapStateActions.fitBounds,
|
|
286
|
+
duplicateLayer: visStateActions.duplicateLayer,
|
|
287
|
+
layerSetIsValid: visStateActions.layerSetIsValid
|
|
288
|
+
};
|
|
289
|
+
}, [visStateActions, mapStateActions]);
|
|
290
|
+
var panelProps = (0, _react.useMemo)(function () {
|
|
291
|
+
return {
|
|
292
|
+
datasets: datasets,
|
|
293
|
+
openModal: openModal,
|
|
294
|
+
layerTypeOptions: layerTypeOptions,
|
|
295
|
+
splitMap: splitMap,
|
|
296
|
+
mapState: mapState
|
|
297
|
+
};
|
|
298
|
+
}, [datasets, openModal, layerTypeOptions, splitMap, mapState]);
|
|
299
|
+
return /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(_sortable.SortableContext, {
|
|
300
|
+
id: _dndLayerItems.SORTABLE_SIDE_PANEL_TYPE,
|
|
301
|
+
items: sidePanelDndItems,
|
|
302
|
+
strategy: _sortable.verticalListSortingStrategy,
|
|
303
|
+
disabled: !isSortable
|
|
304
|
+
}, layerEntriesToShow.map(function (_ref6) {
|
|
305
|
+
var _ref7 = (0, _slicedToArray2["default"])(_ref6, 2),
|
|
306
|
+
type = _ref7[0],
|
|
307
|
+
item = _ref7[1];
|
|
308
|
+
return type === 'layer' ? /*#__PURE__*/_react["default"].createElement(SortableLayerItem, {
|
|
309
|
+
key: item.id,
|
|
310
|
+
layer: item,
|
|
311
|
+
idx: layers.findIndex(function (l) {
|
|
312
|
+
return (l === null || l === void 0 ? void 0 : l.id) === item.id;
|
|
313
|
+
}),
|
|
314
|
+
panelProps: panelProps,
|
|
315
|
+
layerActions: layerActions,
|
|
316
|
+
disabled: !isSortable
|
|
317
|
+
}) : /*#__PURE__*/_react["default"].createElement(SortableGroupItem, {
|
|
318
|
+
key: item.id,
|
|
319
|
+
layerGroup: item,
|
|
320
|
+
layers: layers,
|
|
321
|
+
panelProps: panelProps,
|
|
322
|
+
layerActions: layerActions,
|
|
323
|
+
disabled: !isSortable
|
|
324
|
+
});
|
|
325
|
+
}), /*#__PURE__*/_react["default"].createElement(SortableEndPlaceholder, null)));
|
|
326
|
+
};
|
|
327
|
+
return LayerList;
|
|
328
|
+
}
|
|
329
|
+
var _default = exports["default"] = LayerListFactory;
|
|
330
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY2xhc3NuYW1lczMiLCJfY29yZSIsIl9zb3J0YWJsZSIsIl91dGlsaXRpZXMiLCJfbGF5ZXJQYW5lbCIsIl9sYXllckdyb3VwSGVhZGVyIiwiX3JlZHVjZXJzIiwiX2NvbnN0YW50cyIsIl9kbmRMYXllckl0ZW1zIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX3RlbXBsYXRlT2JqZWN0NSIsIl90ZW1wbGF0ZU9iamVjdDYiLCJfdGVtcGxhdGVPYmplY3Q3IiwiX3RlbXBsYXRlT2JqZWN0OCIsIl90ZW1wbGF0ZU9iamVjdDkiLCJfdGVtcGxhdGVPYmplY3QwIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsImFuaW1hdGVMYXlvdXRDaGFuZ2VzIiwiYXJncyIsImlzU29ydGluZyIsIndhc0RyYWdnaW5nIiwiZGVmYXVsdEFuaW1hdGVMYXlvdXRDaGFuZ2VzIiwiRW5kUGxhY2Vob2xkZXIiLCJTb3J0YWJsZVN0eWxlZEl0ZW0iLCJwcm9wcyIsIiR0cmFuc2l0aW9uIiwiJHRyYW5zZm9ybSIsInRoZW1lIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJmb250RmFtaWx5IiwiZm9udFdlaWdodCIsImZvbnRTaXplIiwibGluZUhlaWdodCIsInRleHRDb2xvckhsIiwiQ29sbGFwc2libGVHcm91cENvbnRlbnQiLCIkaXNPdmVyIiwiQ29sbGFwc2VkRHJvcFpvbmUiLCJhY3RpdmVDb2xvciIsIkVtcHR5TGF5ZXJHcm91cCIsImxhYmVsQ29sb3IiLCJzdWJ0ZXh0Q29sb3IiLCJUUkVFX1RJTEVfV0lEVEgiLCJUUkVFX1RJTEVfQk9SREVSX1dJRFRIIiwiU3R5bGVkQ29sdW1uIiwiJGlzTGFzdCIsIlRyZWVUaWxlIiwibGF5ZXJQYW5lbEhlYWRlckhlaWdodCIsIk5lc3RlZExheWVyQ29udGFpbmVyIiwiTmVzdGVkTGF5ZXJDb250ZW50IiwiTGF5ZXJMaXN0RmFjdG9yeSIsImRlcHMiLCJMYXllclBhbmVsRmFjdG9yeSIsIkxheWVyR3JvdXBIZWFkZXJGYWN0b3J5IiwiTGF5ZXJQYW5lbCIsIkxheWVyR3JvdXBIZWFkZXIiLCJOZXN0ZWRMYXllciIsIl9yZWYiLCJjaGlsZHJlbiIsImlzTGFzdCIsImNyZWF0ZUVsZW1lbnQiLCJTb3J0YWJsZUxheWVySXRlbSIsIl9yZWYyIiwibGF5ZXIiLCJpZHgiLCJwYW5lbFByb3BzIiwibGF5ZXJBY3Rpb25zIiwiZGlzYWJsZWQiLCJwYXJlbnQiLCJfdXNlU29ydGFibGUiLCJ1c2VTb3J0YWJsZSIsImlkIiwiZGF0YSIsInR5cGUiLCJTT1JUQUJMRV9MQVlFUl9UWVBFIiwiYXR0cmlidXRlcyIsImxpc3RlbmVycyIsInNldE5vZGVSZWYiLCJpc0RyYWdnaW5nIiwidHJhbnNmb3JtIiwidHJhbnNpdGlvbiIsIl9leHRlbmRzMiIsInJlZiIsImNsYXNzTmFtZSIsImNsYXNzbmFtZXMiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGF0YVRlc3RJZHMiLCJzb3J0YWJsZUxheWVySXRlbSIsInN0YXRpY0xheWVySXRlbSIsInNvcnRpbmciLCJDU1MiLCJUcmFuc2Zvcm0iLCJ0b1N0cmluZyIsImtleSIsImlzRHJhZ2dhYmxlIiwiU29ydGFibGVHcm91cEl0ZW0iLCJfcmVmMyIsImxheWVyR3JvdXAiLCJsYXllcnMiLCJfdXNlU29ydGFibGUyIiwiU09SVEFCTEVfTEFZRVJfR1JPVVBfVFlQRSIsImxheWVyRW50cmllc1RvU2hvdyIsImJ1aWxkTGF5ZXJPcmRlckhpZXJhcmNoeSIsImxheWVyT3JkZXIiLCJkbmRJdGVtcyIsIm1hcCIsImVudHJ5IiwiX2VudHJ5JDEkaWQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJpc1NlY3Rpb25PcGVuIiwic2V0SXNTZWN0aW9uT3BlbiIsIm9uVG9nZ2xlIiwidXNlQ2FsbGJhY2siLCJwcmV2Iiwic3R5bGUiLCJ1c2VNZW1vIiwib3BhY2l0eSIsIl91c2VEcm9wcGFibGUiLCJ1c2VEcm9wcGFibGUiLCJjb25jYXQiLCJTT1JUQUJMRV9MQVlFUl9HUk9VUF9EUk9QUEFCTEVfVFlQRSIsImlzT3ZlciIsImRyb3BwYWJsZVNldE5vZGVSZWYiLCJpc09wZW4iLCJvblRvZ2dsZUxheWVyR3JvdXBDb250ZW50IiwiaXNMYXllckdyb3VwQ29udGVudE9wZW4iLCJsZW5ndGgiLCJTb3J0YWJsZUNvbnRleHQiLCJpdGVtcyIsInN0cmF0ZWd5IiwidmVydGljYWxMaXN0U29ydGluZ1N0cmF0ZWd5IiwiX3JlZjQiLCJpbmRleCIsIl9yZWY1IiwibmVzdGVkRW50cnkiLCJmaW5kSW5kZXgiLCJsIiwiU29ydGFibGVFbmRQbGFjZWhvbGRlciIsIl91c2VTb3J0YWJsZTMiLCJTT1JUQUJMRV9MQVlFUl9FTkRfUExBQ0VIT0xERVIiLCJTT1JUQUJMRV9MQVlFUl9FTkRfVFlQRSIsIkxheWVyTGlzdCIsImRhdGFzZXRzIiwidWlTdGF0ZUFjdGlvbnMiLCJ2aXNTdGF0ZUFjdGlvbnMiLCJtYXBTdGF0ZUFjdGlvbnMiLCJtYXBTdGF0ZSIsImxheWVyQ2xhc3NlcyIsIl9wcm9wcyRpc1NvcnRhYmxlIiwiaXNTb3J0YWJsZSIsInNwbGl0TWFwIiwib3Blbk1vZGFsIiwidG9nZ2xlTW9kYWwiLCJzaWRlUGFuZWxEbmRJdGVtcyIsIl9lbnRyeSQxJGlkMiIsInB1c2giLCJsYXllclR5cGVPcHRpb25zIiwia2V5cyIsImRhdGFJZCIsImxhYmVsIiwibmFtZSIsImljb24iLCJsYXllckljb24iLCJyZXF1aXJlRGF0YSIsImxheWVyQ29sb3JVSUNoYW5nZSIsImxheWVyQ29uZmlnQ2hhbmdlIiwibGF5ZXJWaXN1YWxDaGFubmVsQ29uZmlnQ2hhbmdlIiwibGF5ZXJUb2dnbGVWaXNpYmlsaXR5IiwibGF5ZXJUeXBlQ2hhbmdlIiwibGF5ZXJWaXNDb25maWdDaGFuZ2UiLCJsYXllclRleHRMYWJlbENoYW5nZSIsInJlbW92ZUxheWVyIiwiem9vbVRvTGF5ZXIiLCJmaXRCb3VuZHMiLCJkdXBsaWNhdGVMYXllciIsImxheWVyU2V0SXNWYWxpZCIsIlNPUlRBQkxFX1NJREVfUEFORUxfVFlQRSIsIl9yZWY2IiwiX3JlZjciLCJpdGVtIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvbGF5ZXItbGlzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7dXNlTWVtbywgdXNlQ2FsbGJhY2ssIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuXG5pbXBvcnQge0xheWVyLCBMYXllckNsYXNzZXNUeXBlfSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge0RhdGFzZXRzfSBmcm9tICdAa2VwbGVyLmdsL3RhYmxlJztcbmltcG9ydCB7VUlTdGF0ZUFjdGlvbnMsIFZpc1N0YXRlQWN0aW9ucywgTWFwU3RhdGVBY3Rpb25zfSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtMYXllck9yZGVyR3JvdXAsIExheWVyT3JkZXIsIExheWVyT3JkZXJIaWVyYXJjaHksIE1hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuaW1wb3J0IHt1c2VEcm9wcGFibGV9IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHtcbiAgdXNlU29ydGFibGUsXG4gIFNvcnRhYmxlQ29udGV4dCxcbiAgdmVydGljYWxMaXN0U29ydGluZ1N0cmF0ZWd5LFxuICBkZWZhdWx0QW5pbWF0ZUxheW91dENoYW5nZXNcbn0gZnJvbSAnQGRuZC1raXQvc29ydGFibGUnO1xuaW1wb3J0IHtDU1N9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgTGF5ZXJQYW5lbEZhY3RvcnkgZnJvbSAnLi9sYXllci1wYW5lbCc7XG5pbXBvcnQgTGF5ZXJHcm91cEhlYWRlckZhY3RvcnkgZnJvbSAnLi9sYXllci1ncm91cC1oZWFkZXInO1xuaW1wb3J0IHtidWlsZExheWVyT3JkZXJIaWVyYXJjaHl9IGZyb20gJ0BrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuaW1wb3J0IHtkYXRhVGVzdElkc30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtTcGxpdE1hcH0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge1xuICBTT1JUQUJMRV9MQVlFUl9UWVBFLFxuICBTT1JUQUJMRV9TSURFX1BBTkVMX1RZUEUsXG4gIFNPUlRBQkxFX0xBWUVSX0dST1VQX1RZUEUsXG4gIFNPUlRBQkxFX0xBWUVSX0dST1VQX0RST1BQQUJMRV9UWVBFLFxuICBTT1JUQUJMRV9MQVlFUl9FTkRfUExBQ0VIT0xERVIsXG4gIFNPUlRBQkxFX0xBWUVSX0VORF9UWVBFXG59IGZyb20gJy4uLy4uL2NvbW1vbi9kbmQtbGF5ZXItaXRlbXMnO1xuXG5leHBvcnQgdHlwZSBMYXllckxpc3RQcm9wcyA9IHtcbiAgZGF0YXNldHM6IERhdGFzZXRzO1xuICBsYXllcnM6IExheWVyW107XG4gIGxheWVyT3JkZXI6IExheWVyT3JkZXI7XG4gIGxheWVyQ2xhc3NlczogTGF5ZXJDbGFzc2VzVHlwZTtcbiAgaXNTb3J0YWJsZT86IGJvb2xlYW47XG4gIHNwbGl0TWFwPzogU3BsaXRNYXA7XG4gIG1hcFN0YXRlPzogTWFwU3RhdGU7XG4gIHVpU3RhdGVBY3Rpb25zOiB0eXBlb2YgVUlTdGF0ZUFjdGlvbnM7XG4gIHZpc1N0YXRlQWN0aW9uczogdHlwZW9mIFZpc1N0YXRlQWN0aW9ucztcbiAgbWFwU3RhdGVBY3Rpb25zOiB0eXBlb2YgTWFwU3RhdGVBY3Rpb25zO1xufTtcblxuZXhwb3J0IHR5cGUgTGF5ZXJMaXN0RmFjdG9yeURlcHMgPSBbXG4gIHR5cGVvZiBMYXllclBhbmVsRmFjdG9yeSxcbiAgdHlwZW9mIExheWVyR3JvdXBIZWFkZXJGYWN0b3J5XG5dO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDhweDtcbmA7XG5cbmNvbnN0IGFuaW1hdGVMYXlvdXRDaGFuZ2VzID0gYXJncyA9PiB7XG4gIGNvbnN0IHtpc1NvcnRpbmcsIHdhc0RyYWdnaW5nfSA9IGFyZ3M7XG4gIGlmIChpc1NvcnRpbmcgfHwgd2FzRHJhZ2dpbmcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIGRlZmF1bHRBbmltYXRlTGF5b3V0Q2hhbmdlcyhhcmdzKTtcbn07XG5cbmNvbnN0IEVuZFBsYWNlaG9sZGVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiA0cHg7XG5gO1xuXG5pbnRlcmZhY2UgU29ydGFibGVTdHlsZWRJdGVtUHJvcHMge1xuICAkdHJhbnNpdGlvbj86IHN0cmluZztcbiAgJHRyYW5zZm9ybT86IHN0cmluZztcbn1cblxuY29uc3QgU29ydGFibGVTdHlsZWRJdGVtID0gc3R5bGVkLmRpdjxTb3J0YWJsZVN0eWxlZEl0ZW1Qcm9wcz5gXG4gIHRyYW5zaXRpb246ICR7cHJvcHMgPT4gcHJvcHMuJHRyYW5zaXRpb259O1xuICB0cmFuc2Zvcm06ICR7cHJvcHMgPT4gcHJvcHMuJHRyYW5zZm9ybX07XG4gICYuc29ydGluZyB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gICYuc29ydGluZy1sYXllcnMgLmxheWVyLXBhbmVsX19oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgIGZvbnQtZmFtaWx5OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZvbnRGYW1pbHl9O1xuICAgIGZvbnQtd2VpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZvbnRXZWlnaHR9O1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5mb250U2l6ZX07XG4gICAgbGluZS1oZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGluZUhlaWdodH07XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIC5sYXllcl9fZHJhZy1oYW5kbGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IENvbGxhcHNpYmxlR3JvdXBDb250ZW50ID0gc3R5bGVkLmRpdjx7JGlzT3Zlcj86IGJvb2xlYW59PmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwO1xuICBwYWRkaW5nOiA0cHggMDtcbiAgbWluLWhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiAocHJvcHMuJGlzT3ZlciA/IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyIDogJ3RyYW5zcGFyZW50Jyl9O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG5gO1xuXG5jb25zdCBDb2xsYXBzZWREcm9wWm9uZSA9IHN0eWxlZC5kaXY8eyRpc092ZXI/OiBib29sZWFufT5gXG4gIG1pbi1oZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiAocHJvcHMuJGlzT3ZlciA/IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yIDogJ3RyYW5zcGFyZW50Jyl9O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIG1pbi1oZWlnaHQgMC4xNXMgZWFzZTtcbiAgJHtwcm9wcyA9PiBwcm9wcy4kaXNPdmVyICYmICdtaW4taGVpZ2h0OiAyNHB4Oyd9XG5gO1xuXG5jb25zdCBFbXB0eUxheWVyR3JvdXAgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDExcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAyOHB4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvcn07XG5gO1xuXG5jb25zdCBUUkVFX1RJTEVfV0lEVEggPSAxMDtcbmNvbnN0IFRSRUVfVElMRV9CT1JERVJfV0lEVEggPSAxO1xuXG5jb25zdCBTdHlsZWRDb2x1bW4gPSBzdHlsZWQuZGl2PHskaXNMYXN0PzogYm9vbGVhbn0+YFxuICBib3JkZXItbGVmdDogJHtwcm9wcyA9PiAocHJvcHMuJGlzTGFzdCA/IDAgOiAxKX1weCBkYXNoZWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbmA7XG5cbmNvbnN0IFRyZWVUaWxlID0gc3R5bGVkLmRpdjx7JGlzTGFzdD86IGJvb2xlYW59PmBcbiAgd2lkdGg6ICR7VFJFRV9USUxFX1dJRFRIfXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gIGhlaWdodDogJHtwcm9wcyA9PiAocHJvcHMudGhlbWUubGF5ZXJQYW5lbEhlYWRlckhlaWdodCB8fCAzMikgLyAyfXB4O1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIGJvcmRlci1sZWZ0OiAke3Byb3BzID0+IChwcm9wcy4kaXNMYXN0ID8gMSA6IDApfXB4IGRhc2hlZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuYDtcblxuY29uc3QgTmVzdGVkTGF5ZXJDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgTmVzdGVkTGF5ZXJDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICR7VFJFRV9USUxFX1dJRFRIICsgVFJFRV9USUxFX0JPUkRFUl9XSURUSH1weCk7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG5gO1xuXG5MYXllckxpc3RGYWN0b3J5LmRlcHMgPSBbTGF5ZXJQYW5lbEZhY3RvcnksIExheWVyR3JvdXBIZWFkZXJGYWN0b3J5XTtcblxuZnVuY3Rpb24gTGF5ZXJMaXN0RmFjdG9yeShcbiAgTGF5ZXJQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTGF5ZXJQYW5lbEZhY3Rvcnk+LFxuICBMYXllckdyb3VwSGVhZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBMYXllckdyb3VwSGVhZGVyRmFjdG9yeT5cbikge1xuICBjb25zdCBOZXN0ZWRMYXllcjogUmVhY3QuRkM8e2NoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7IGlzTGFzdD86IGJvb2xlYW59PiA9ICh7XG4gICAgY2hpbGRyZW4sXG4gICAgaXNMYXN0XG4gIH0pID0+IChcbiAgICA8TmVzdGVkTGF5ZXJDb250YWluZXI+XG4gICAgICA8U3R5bGVkQ29sdW1uICRpc0xhc3Q9e2lzTGFzdH0+XG4gICAgICAgIDxUcmVlVGlsZSAkaXNMYXN0PXtpc0xhc3R9IC8+XG4gICAgICA8L1N0eWxlZENvbHVtbj5cbiAgICAgIDxOZXN0ZWRMYXllckNvbnRlbnQ+e2NoaWxkcmVufTwvTmVzdGVkTGF5ZXJDb250ZW50PlxuICAgIDwvTmVzdGVkTGF5ZXJDb250YWluZXI+XG4gICk7XG5cbiAgY29uc3QgU29ydGFibGVMYXllckl0ZW0gPSAoe2xheWVyLCBpZHgsIHBhbmVsUHJvcHMsIGxheWVyQWN0aW9ucywgZGlzYWJsZWQsIHBhcmVudH06IHtcbiAgICBsYXllcjogTGF5ZXI7XG4gICAgaWR4OiBudW1iZXI7XG4gICAgcGFuZWxQcm9wczogYW55O1xuICAgIGxheWVyQWN0aW9uczogYW55O1xuICAgIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgICBwYXJlbnQ/OiBMYXllck9yZGVyR3JvdXA7XG4gIH0pID0+IHtcbiAgICBjb25zdCB7YXR0cmlidXRlcywgbGlzdGVuZXJzLCBzZXROb2RlUmVmLCBpc0RyYWdnaW5nLCB0cmFuc2Zvcm0sIHRyYW5zaXRpb259ID0gdXNlU29ydGFibGUoe1xuICAgICAgaWQ6IGxheWVyLmlkLFxuICAgICAgZGF0YToge1xuICAgICAgICB0eXBlOiBTT1JUQUJMRV9MQVlFUl9UWVBFLFxuICAgICAgICBwYXJlbnRcbiAgICAgIH0sXG4gICAgICBkaXNhYmxlZCxcbiAgICAgIGFuaW1hdGVMYXlvdXRDaGFuZ2VzXG4gICAgfSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNvcnRhYmxlU3R5bGVkSXRlbVxuICAgICAgICByZWY9e3NldE5vZGVSZWZ9XG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcyhcbiAgICAgICAgICB7W2RhdGFUZXN0SWRzLnNvcnRhYmxlTGF5ZXJJdGVtXTogIWRpc2FibGVkfSxcbiAgICAgICAgICB7W2RhdGFUZXN0SWRzLnN0YXRpY0xheWVySXRlbV06IGRpc2FibGVkfSxcbiAgICAgICAgICB7c29ydGluZzogaXNEcmFnZ2luZ31cbiAgICAgICAgKX1cbiAgICAgICAgZGF0YS10ZXN0aWQ9e2Rpc2FibGVkID8gZGF0YVRlc3RJZHMuc3RhdGljTGF5ZXJJdGVtIDogZGF0YVRlc3RJZHMuc29ydGFibGVMYXllckl0ZW19XG4gICAgICAgICR0cmFuc2Zvcm09e0NTUy5UcmFuc2Zvcm0udG9TdHJpbmcodHJhbnNmb3JtKX1cbiAgICAgICAgJHRyYW5zaXRpb249e3RyYW5zaXRpb259XG4gICAgICAgIHsuLi5hdHRyaWJ1dGVzfVxuICAgICAgPlxuICAgICAgICA8TGF5ZXJQYW5lbFxuICAgICAgICAgIHsuLi5wYW5lbFByb3BzfVxuICAgICAgICAgIHsuLi5sYXllckFjdGlvbnN9XG4gICAgICAgICAga2V5PXtsYXllci5pZH1cbiAgICAgICAgICBpZHg9e2lkeH1cbiAgICAgICAgICBsYXllcj17bGF5ZXJ9XG4gICAgICAgICAgbGlzdGVuZXJzPXtsaXN0ZW5lcnN9XG4gICAgICAgICAgaXNEcmFnZ2FibGU9eyFkaXNhYmxlZH1cbiAgICAgICAgLz5cbiAgICAgIDwvU29ydGFibGVTdHlsZWRJdGVtPlxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgU29ydGFibGVHcm91cEl0ZW06IFJlYWN0LkZDPHtcbiAgICBsYXllckdyb3VwOiBMYXllck9yZGVyR3JvdXA7XG4gICAgbGF5ZXJzOiBMYXllcltdO1xuICAgIHBhbmVsUHJvcHM6IGFueTtcbiAgICBsYXllckFjdGlvbnM6IGFueTtcbiAgICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIH0+ID0gKHtsYXllckdyb3VwLCBsYXllcnMsIHBhbmVsUHJvcHMsIGxheWVyQWN0aW9ucywgZGlzYWJsZWR9KSA9PiB7XG4gICAgY29uc3Qge2F0dHJpYnV0ZXMsIGlzRHJhZ2dpbmcsIGxpc3RlbmVycywgc2V0Tm9kZVJlZiwgdHJhbnNmb3JtLCB0cmFuc2l0aW9ufSA9IHVzZVNvcnRhYmxlKHtcbiAgICAgIGlkOiBsYXllckdyb3VwLmlkLFxuICAgICAgZGF0YToge3R5cGU6IFNPUlRBQkxFX0xBWUVSX0dST1VQX1RZUEV9LFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBhbmltYXRlTGF5b3V0Q2hhbmdlc1xuICAgIH0pO1xuXG4gICAgY29uc3QgbGF5ZXJFbnRyaWVzVG9TaG93ID0gYnVpbGRMYXllck9yZGVySGllcmFyY2h5KGxheWVyR3JvdXAubGF5ZXJPcmRlciwgbGF5ZXJzKTtcbiAgICBjb25zdCBkbmRJdGVtcyA9IGxheWVyRW50cmllc1RvU2hvdy5tYXAoZW50cnkgPT4gZW50cnlbMV0uaWQgPz8gZW50cnlbMV0pO1xuXG4gICAgY29uc3QgW2lzU2VjdGlvbk9wZW4sIHNldElzU2VjdGlvbk9wZW5dID0gdXNlU3RhdGUodHJ1ZSk7XG4gICAgY29uc3Qgb25Ub2dnbGUgPSB1c2VDYWxsYmFjaygoKSA9PiBzZXRJc1NlY3Rpb25PcGVuKHByZXYgPT4gIXByZXYpLCBbXSk7XG5cbiAgICBjb25zdCBzdHlsZSA9IHVzZU1lbW8oXG4gICAgICAoKSA9PiAoe1xuICAgICAgICB0cmFuc2Zvcm06IENTUy5UcmFuc2Zvcm0udG9TdHJpbmcodHJhbnNmb3JtKSxcbiAgICAgICAgdHJhbnNpdGlvbixcbiAgICAgICAgb3BhY2l0eTogaXNEcmFnZ2luZyA/IDAuNSA6IDFcbiAgICAgIH0pLFxuICAgICAgW2lzRHJhZ2dpbmcsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbl1cbiAgICApO1xuXG4gICAgY29uc3Qge2lzT3Zlciwgc2V0Tm9kZVJlZjogZHJvcHBhYmxlU2V0Tm9kZVJlZn0gPSB1c2VEcm9wcGFibGUoe1xuICAgICAgaWQ6IGBkcm9wcGFibGUtbGF5ZXItZ3JvdXAtY29udGVudC0ke2xheWVyR3JvdXAuaWR9YCxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgdHlwZTogU09SVEFCTEVfTEFZRVJfR1JPVVBfRFJPUFBBQkxFX1RZUEUsXG4gICAgICAgIHBhcmVudDogbGF5ZXJHcm91cFxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3QgaXNPcGVuID0gdXNlTWVtbygoKSA9PiBpc1NlY3Rpb25PcGVuICYmICFpc0RyYWdnaW5nLCBbaXNTZWN0aW9uT3BlbiwgaXNEcmFnZ2luZ10pO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgc3R5bGU9e3N0eWxlfT5cbiAgICAgICAgPGRpdiByZWY9e3NldE5vZGVSZWZ9IHsuLi5hdHRyaWJ1dGVzfT5cbiAgICAgICAgICA8TGF5ZXJHcm91cEhlYWRlclxuICAgICAgICAgICAgbGF5ZXJHcm91cD17bGF5ZXJHcm91cH1cbiAgICAgICAgICAgIG9uVG9nZ2xlTGF5ZXJHcm91cENvbnRlbnQ9e29uVG9nZ2xlfVxuICAgICAgICAgICAgaXNMYXllckdyb3VwQ29udGVudE9wZW49e2lzU2VjdGlvbk9wZW59XG4gICAgICAgICAgICBsaXN0ZW5lcnM9e2xpc3RlbmVyc31cbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge2lzT3BlbiA/IChcbiAgICAgICAgICA8Q29sbGFwc2libGVHcm91cENvbnRlbnQgcmVmPXtkcm9wcGFibGVTZXROb2RlUmVmfSAkaXNPdmVyPXtpc092ZXJ9PlxuICAgICAgICAgICAge2xheWVyRW50cmllc1RvU2hvdy5sZW5ndGggPyAoXG4gICAgICAgICAgICAgIDxTb3J0YWJsZUNvbnRleHRcbiAgICAgICAgICAgICAgICBpZD17YHNvcnRhYmxlLWdyb3VwLSR7bGF5ZXJHcm91cC5pZH1gfVxuICAgICAgICAgICAgICAgIGl0ZW1zPXtkbmRJdGVtc31cbiAgICAgICAgICAgICAgICBzdHJhdGVneT17dmVydGljYWxMaXN0U29ydGluZ1N0cmF0ZWd5fVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2xheWVyRW50cmllc1RvU2hvdy5tYXAoKFt0eXBlLCBuZXN0ZWRFbnRyeV0sIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgdHlwZSA9PT0gJ2xheWVyJyA/IChcbiAgICAgICAgICAgICAgICAgICAgPE5lc3RlZExheWVyXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtuZXN0ZWRFbnRyeS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICBpc0xhc3Q9e2luZGV4ID09PSBsYXllckVudHJpZXNUb1Nob3cubGVuZ3RoIC0gMX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDxTb3J0YWJsZUxheWVySXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXI9e25lc3RlZEVudHJ5IGFzIExheWVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWR4PXtsYXllcnMuZmluZEluZGV4KGwgPT4gbD8uaWQgPT09IG5lc3RlZEVudHJ5LmlkKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHBhbmVsUHJvcHM9e3BhbmVsUHJvcHN9XG4gICAgICAgICAgICAgICAgICAgICAgICBsYXllckFjdGlvbnM9e2xheWVyQWN0aW9uc31cbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudD17bGF5ZXJHcm91cH1cbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L05lc3RlZExheWVyPlxuICAgICAgICAgICAgICAgICAgKSA6IG51bGxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxFbXB0eUxheWVyR3JvdXA+RHJhZyBsYXllciBoZXJlPC9FbXB0eUxheWVyR3JvdXA+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvQ29sbGFwc2libGVHcm91cENvbnRlbnQ+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPENvbGxhcHNlZERyb3Bab25lIHJlZj17ZHJvcHBhYmxlU2V0Tm9kZVJlZn0gJGlzT3Zlcj17aXNPdmVyfSAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBTb3J0YWJsZUVuZFBsYWNlaG9sZGVyID0gKCkgPT4ge1xuICAgIGNvbnN0IHtzZXROb2RlUmVmfSA9IHVzZVNvcnRhYmxlKHtcbiAgICAgIGlkOiBTT1JUQUJMRV9MQVlFUl9FTkRfUExBQ0VIT0xERVIsXG4gICAgICBkYXRhOiB7dHlwZTogU09SVEFCTEVfTEFZRVJfRU5EX1RZUEV9LFxuICAgICAgYW5pbWF0ZUxheW91dENoYW5nZXNcbiAgICB9KTtcbiAgICByZXR1cm4gPEVuZFBsYWNlaG9sZGVyIHJlZj17c2V0Tm9kZVJlZn0gLz47XG4gIH07XG5cbiAgY29uc3QgTGF5ZXJMaXN0OiBSZWFjdC5GQzxMYXllckxpc3RQcm9wcz4gPSBwcm9wcyA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgbGF5ZXJzLFxuICAgICAgZGF0YXNldHMsXG4gICAgICBsYXllck9yZGVyLFxuICAgICAgdWlTdGF0ZUFjdGlvbnMsXG4gICAgICB2aXNTdGF0ZUFjdGlvbnMsXG4gICAgICBtYXBTdGF0ZUFjdGlvbnMsXG4gICAgICBtYXBTdGF0ZSxcbiAgICAgIGxheWVyQ2xhc3NlcyxcbiAgICAgIGlzU29ydGFibGUgPSB0cnVlLFxuICAgICAgc3BsaXRNYXBcbiAgICB9ID0gcHJvcHM7XG4gICAgY29uc3Qge3RvZ2dsZU1vZGFsOiBvcGVuTW9kYWx9ID0gdWlTdGF0ZUFjdGlvbnM7XG5cbiAgICBjb25zdCBsYXllckVudHJpZXNUb1Nob3c6IExheWVyT3JkZXJIaWVyYXJjaHkgPSB1c2VNZW1vKFxuICAgICAgKCkgPT4gYnVpbGRMYXllck9yZGVySGllcmFyY2h5KGxheWVyT3JkZXIsIGxheWVycyksXG4gICAgICBbbGF5ZXJPcmRlciwgbGF5ZXJzXVxuICAgICk7XG5cbiAgICBjb25zdCBzaWRlUGFuZWxEbmRJdGVtcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgY29uc3QgaXRlbXMgPSBsYXllckVudHJpZXNUb1Nob3cubWFwKGVudHJ5ID0+IGVudHJ5WzFdLmlkID8/IGVudHJ5WzFdKTtcbiAgICAgIGl0ZW1zLnB1c2goU09SVEFCTEVfTEFZRVJfRU5EX1BMQUNFSE9MREVSKTtcbiAgICAgIHJldHVybiBpdGVtcztcbiAgICB9LCBbbGF5ZXJFbnRyaWVzVG9TaG93XSk7XG5cbiAgICBjb25zdCBsYXllclR5cGVPcHRpb25zID0gdXNlTWVtbyhcbiAgICAgICgpID0+XG4gICAgICAgIE9iamVjdC5rZXlzKGxheWVyQ2xhc3NlcykubWFwKGtleSA9PiB7XG4gICAgICAgICAgY29uc3QgbGF5ZXIgPSBuZXcgbGF5ZXJDbGFzc2VzW2tleV0oe2RhdGFJZDogJyd9KTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGtleSxcbiAgICAgICAgICAgIGxhYmVsOiBsYXllci5uYW1lLFxuICAgICAgICAgICAgaWNvbjogbGF5ZXIubGF5ZXJJY29uLFxuICAgICAgICAgICAgcmVxdWlyZURhdGE6IGxheWVyLnJlcXVpcmVEYXRhXG4gICAgICAgICAgfTtcbiAgICAgICAgfSksXG4gICAgICBbbGF5ZXJDbGFzc2VzXVxuICAgICk7XG5cbiAgICBjb25zdCBsYXllckFjdGlvbnMgPSB1c2VNZW1vKFxuICAgICAgKCkgPT4gKHtcbiAgICAgICAgbGF5ZXJDb2xvclVJQ2hhbmdlOiB2aXNTdGF0ZUFjdGlvbnMubGF5ZXJDb2xvclVJQ2hhbmdlLFxuICAgICAgICBsYXllckNvbmZpZ0NoYW5nZTogdmlzU3RhdGVBY3Rpb25zLmxheWVyQ29uZmlnQ2hhbmdlLFxuICAgICAgICBsYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2U6IHZpc1N0YXRlQWN0aW9ucy5sYXllclZpc3VhbENoYW5uZWxDb25maWdDaGFuZ2UsXG4gICAgICAgIGxheWVyVG9nZ2xlVmlzaWJpbGl0eTogdmlzU3RhdGVBY3Rpb25zLmxheWVyVG9nZ2xlVmlzaWJpbGl0eSxcbiAgICAgICAgbGF5ZXJUeXBlQ2hhbmdlOiB2aXNTdGF0ZUFjdGlvbnMubGF5ZXJUeXBlQ2hhbmdlLFxuICAgICAgICBsYXllclZpc0NvbmZpZ0NoYW5nZTogdmlzU3RhdGVBY3Rpb25zLmxheWVyVmlzQ29uZmlnQ2hhbmdlLFxuICAgICAgICBsYXllclRleHRMYWJlbENoYW5nZTogdmlzU3RhdGVBY3Rpb25zLmxheWVyVGV4dExhYmVsQ2hhbmdlLFxuICAgICAgICByZW1vdmVMYXllcjogdmlzU3RhdGVBY3Rpb25zLnJlbW92ZUxheWVyLFxuICAgICAgICB6b29tVG9MYXllcjogbWFwU3RhdGVBY3Rpb25zLmZpdEJvdW5kcyxcbiAgICAgICAgZHVwbGljYXRlTGF5ZXI6IHZpc1N0YXRlQWN0aW9ucy5kdXBsaWNhdGVMYXllcixcbiAgICAgICAgbGF5ZXJTZXRJc1ZhbGlkOiB2aXNTdGF0ZUFjdGlvbnMubGF5ZXJTZXRJc1ZhbGlkXG4gICAgICB9KSxcbiAgICAgIFt2aXNTdGF0ZUFjdGlvbnMsIG1hcFN0YXRlQWN0aW9uc11cbiAgICApO1xuXG4gICAgY29uc3QgcGFuZWxQcm9wcyA9IHVzZU1lbW8oXG4gICAgICAoKSA9PiAoe1xuICAgICAgICBkYXRhc2V0cyxcbiAgICAgICAgb3Blbk1vZGFsLFxuICAgICAgICBsYXllclR5cGVPcHRpb25zLFxuICAgICAgICBzcGxpdE1hcCxcbiAgICAgICAgbWFwU3RhdGVcbiAgICAgIH0pLFxuICAgICAgW2RhdGFzZXRzLCBvcGVuTW9kYWwsIGxheWVyVHlwZU9wdGlvbnMsIHNwbGl0TWFwLCBtYXBTdGF0ZV1cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxDb250YWluZXI+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHRcbiAgICAgICAgICBpZD17U09SVEFCTEVfU0lERV9QQU5FTF9UWVBFfVxuICAgICAgICAgIGl0ZW1zPXtzaWRlUGFuZWxEbmRJdGVtc31cbiAgICAgICAgICBzdHJhdGVneT17dmVydGljYWxMaXN0U29ydGluZ1N0cmF0ZWd5fVxuICAgICAgICAgIGRpc2FibGVkPXshaXNTb3J0YWJsZX1cbiAgICAgICAgPlxuICAgICAgICAgIHtsYXllckVudHJpZXNUb1Nob3cubWFwKChbdHlwZSwgaXRlbV0pID0+XG4gICAgICAgICAgICB0eXBlID09PSAnbGF5ZXInID8gKFxuICAgICAgICAgICAgICA8U29ydGFibGVMYXllckl0ZW1cbiAgICAgICAgICAgICAgICBrZXk9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgICAgbGF5ZXI9e2l0ZW0gYXMgTGF5ZXJ9XG4gICAgICAgICAgICAgICAgaWR4PXtsYXllcnMuZmluZEluZGV4KGwgPT4gbD8uaWQgPT09IGl0ZW0uaWQpfVxuICAgICAgICAgICAgICAgIHBhbmVsUHJvcHM9e3BhbmVsUHJvcHN9XG4gICAgICAgICAgICAgICAgbGF5ZXJBY3Rpb25zPXtsYXllckFjdGlvbnN9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFpc1NvcnRhYmxlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPFNvcnRhYmxlR3JvdXBJdGVtXG4gICAgICAgICAgICAgICAga2V5PXsoaXRlbSBhcyBMYXllck9yZGVyR3JvdXApLmlkfVxuICAgICAgICAgICAgICAgIGxheWVyR3JvdXA9e2l0ZW0gYXMgTGF5ZXJPcmRlckdyb3VwfVxuICAgICAgICAgICAgICAgIGxheWVycz17bGF5ZXJzfVxuICAgICAgICAgICAgICAgIHBhbmVsUHJvcHM9e3BhbmVsUHJvcHN9XG4gICAgICAgICAgICAgICAgbGF5ZXJBY3Rpb25zPXtsYXllckFjdGlvbnN9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFpc1NvcnRhYmxlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKVxuICAgICAgICAgICl9XG4gICAgICAgICAgPFNvcnRhYmxlRW5kUGxhY2Vob2xkZXIgLz5cbiAgICAgICAgPC9Tb3J0YWJsZUNvbnRleHQ+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICApO1xuICB9O1xuICByZXR1cm4gTGF5ZXJMaXN0O1xufVxuZXhwb3J0IGRlZmF1bHQgTGF5ZXJMaXN0RmFjdG9yeTtcbiJd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
|