@carto/kepler.gl 0.0.76 → 0.0.78-0
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/README.md +652 -42
- package/dist/actions/action-wrapper.js +49 -21
- package/dist/actions/actions.js +30 -16
- package/dist/actions/identity-actions.js +28 -14
- package/dist/actions/index.js +24 -7
- package/dist/actions/map-state-actions.js +27 -12
- package/dist/actions/map-style-actions.js +69 -31
- package/dist/actions/provider-actions.js +81 -44
- package/dist/actions/ui-state-actions.js +166 -71
- package/dist/actions/vis-state-actions.js +78 -106
- package/dist/cloud-providers/index.js +8 -8
- package/dist/cloud-providers/provider.js +109 -63
- package/dist/components/bottom-widget.js +58 -53
- package/dist/components/common/action-panel.js +41 -44
- package/dist/components/common/animation-control/animation-control.js +44 -44
- package/dist/components/common/animation-control/animation-controller.js +109 -55
- package/dist/components/common/animation-control/animation-speed-slider.js +38 -29
- package/dist/components/common/animation-control/floating-time-display.js +73 -58
- package/dist/components/common/animation-control/playback-controls.js +81 -67
- package/dist/components/common/animation-control/speed-control.js +24 -26
- package/dist/components/common/checkbox.js +54 -49
- package/dist/components/common/color-legend.js +71 -51
- package/dist/components/common/data-table/button.js +23 -30
- package/dist/components/common/data-table/canvas.js +10 -21
- package/dist/components/common/data-table/cell-size.js +58 -54
- package/dist/components/common/data-table/grid.js +51 -35
- package/dist/components/common/data-table/index.js +150 -109
- package/dist/components/common/data-table/option-dropdown.js +33 -29
- package/dist/components/common/dataset-label.js +15 -23
- package/dist/components/common/error-boundary.js +30 -25
- package/dist/components/common/field-selector.js +67 -67
- package/dist/components/common/field-token.js +17 -22
- package/dist/components/common/file-uploader/file-drop.js +66 -46
- package/dist/components/common/file-uploader/file-upload-progress.js +32 -33
- package/dist/components/common/file-uploader/file-upload.js +91 -52
- package/dist/components/common/file-uploader/upload-button.js +56 -82
- package/dist/components/common/histogram-plot.js +37 -35
- package/dist/components/common/icons/add.js +26 -32
- package/dist/components/common/icons/anchor_window.js +8 -8
- package/dist/components/common/icons/arrow-down-alt.js +26 -32
- package/dist/components/common/icons/arrow-down-solid.js +58 -0
- package/dist/components/common/icons/arrow-down.js +26 -32
- package/dist/components/common/icons/arrow-left.js +26 -32
- package/dist/components/common/icons/arrow-right.js +26 -32
- package/dist/components/common/icons/arrow-up-alt.js +26 -32
- package/dist/components/common/icons/arrow-up-solid.js +26 -32
- package/dist/components/common/icons/arrow-up.js +26 -32
- package/dist/components/common/icons/base.js +42 -52
- package/dist/components/common/icons/bug.js +26 -32
- package/dist/components/common/icons/cancel.js +26 -32
- package/dist/components/common/icons/checkmark.js +27 -32
- package/dist/components/common/icons/chevron-right.js +27 -27
- package/dist/components/common/icons/clipboard.js +26 -32
- package/dist/components/common/icons/clock.js +26 -32
- package/dist/components/common/icons/close.js +26 -32
- package/dist/components/common/icons/code-alt.js +27 -32
- package/dist/components/common/icons/copy.js +27 -32
- package/dist/components/common/icons/crosshairs.js +27 -32
- package/dist/components/common/icons/cube-3d.js +26 -32
- package/dist/components/common/icons/cursor-click.js +26 -32
- package/dist/components/common/icons/data-table.js +26 -32
- package/dist/components/common/icons/db.js +26 -32
- package/dist/components/common/icons/delete.js +26 -31
- package/dist/components/common/icons/docs.js +26 -32
- package/dist/components/common/icons/drag-n-drop.js +26 -32
- package/dist/components/common/icons/draw-polygon.js +26 -35
- package/dist/components/common/icons/email.js +26 -32
- package/dist/components/common/icons/expand.js +26 -32
- package/dist/components/common/icons/eye-seen.js +26 -32
- package/dist/components/common/icons/eye-unseen.js +26 -32
- package/dist/components/common/icons/file-type.js +16 -23
- package/dist/components/common/icons/file.js +26 -32
- package/dist/components/common/icons/files.js +25 -29
- package/dist/components/common/icons/filter-funnel.js +26 -32
- package/dist/components/common/icons/free-window.js +8 -8
- package/dist/components/common/icons/gear.js +26 -32
- package/dist/components/common/icons/hash.js +26 -32
- package/dist/components/common/icons/histogram.js +24 -28
- package/dist/components/common/icons/index.js +154 -63
- package/dist/components/common/icons/info.js +27 -32
- package/dist/components/common/icons/layers.js +26 -32
- package/dist/components/common/icons/left-arrow.js +27 -32
- package/dist/components/common/icons/legend.js +26 -32
- package/dist/components/common/icons/line-chart.js +26 -31
- package/dist/components/common/icons/login.js +26 -31
- package/dist/components/common/icons/logout.js +26 -31
- package/dist/components/common/icons/map-icon.js +27 -33
- package/dist/components/common/icons/map.js +27 -33
- package/dist/components/common/icons/messages.js +26 -32
- package/dist/components/common/icons/minus.js +26 -32
- package/dist/components/common/icons/order-by-dataset.js +56 -0
- package/dist/components/common/icons/order-by-list.js +48 -0
- package/dist/components/common/icons/pause.js +26 -32
- package/dist/components/common/icons/picture.js +25 -29
- package/dist/components/common/icons/pin.js +35 -33
- package/dist/components/common/icons/play.js +26 -32
- package/dist/components/common/icons/polygon.js +26 -35
- package/dist/components/common/icons/rectangle.js +26 -35
- package/dist/components/common/icons/reduce.js +26 -32
- package/dist/components/common/icons/reset.js +26 -32
- package/dist/components/common/icons/rocket.js +26 -32
- package/dist/components/common/icons/save.js +26 -32
- package/dist/components/common/icons/save2.js +26 -32
- package/dist/components/common/icons/search.js +26 -32
- package/dist/components/common/icons/settings.js +26 -32
- package/dist/components/common/icons/share.js +26 -32
- package/dist/components/common/icons/split.js +26 -32
- package/dist/components/common/icons/square-select.js +26 -32
- package/dist/components/common/icons/swap-horizontal.js +28 -27
- package/dist/components/common/icons/table.js +26 -31
- package/dist/components/common/icons/trash.js +26 -32
- package/dist/components/common/icons/upload.js +26 -33
- package/dist/components/common/icons/vert-dots.js +26 -32
- package/dist/components/common/icons/vert-three-dots.js +26 -32
- package/dist/components/common/icons/warning.js +27 -32
- package/dist/components/common/image-preview.js +27 -35
- package/dist/components/common/info-helper.js +23 -32
- package/dist/components/common/item-selector/accessor.js +5 -3
- package/dist/components/common/item-selector/chickleted-input.js +42 -62
- package/dist/components/common/item-selector/dropdown-list.js +95 -72
- package/dist/components/common/item-selector/item-selector-submenu.js +38 -29
- package/dist/components/common/item-selector/item-selector.js +102 -89
- package/dist/components/common/item-selector/typeahead.js +118 -86
- package/dist/components/common/line-chart.js +44 -46
- package/dist/components/common/loading-spinner.js +23 -33
- package/dist/components/common/logo.js +24 -36
- package/dist/components/common/map-layer-selector.js +14 -22
- package/dist/components/common/modal.js +62 -50
- package/dist/components/common/portaled.js +109 -64
- package/dist/components/common/progress-bar.js +17 -28
- package/dist/components/common/range-brush.js +132 -84
- package/dist/components/common/range-plot.js +51 -60
- package/dist/components/common/range-slider.js +88 -76
- package/dist/components/common/slider/mouse-event.js +88 -52
- package/dist/components/common/slider/slider-bar-handle.js +40 -39
- package/dist/components/common/slider/slider-handle.js +49 -45
- package/dist/components/common/slider/slider.js +107 -104
- package/dist/components/common/styled-components.js +183 -69
- package/dist/components/common/switch.js +14 -37
- package/dist/components/common/time-range-slider-time-title.js +19 -24
- package/dist/components/common/time-range-slider.js +39 -61
- package/dist/components/common/time-slider-marker.js +41 -36
- package/dist/components/common/tippy-tooltip.js +115 -0
- package/dist/components/common/toolbar-item.js +23 -25
- package/dist/components/common/toolbar.js +10 -21
- package/dist/components/common/vertical-toolbar.js +10 -21
- package/dist/components/container.js +94 -66
- package/dist/components/context.js +10 -6
- package/dist/components/editor/constants.js +8 -6
- package/dist/components/editor/editor.js +77 -62
- package/dist/components/editor/feature-action-panel.js +50 -47
- package/dist/components/editor/feature-styles.js +42 -37
- package/dist/components/editor/handle-style.js +39 -37
- package/dist/components/filters/components.js +10 -21
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +27 -19
- package/dist/components/filters/filter-panels/multi-select-filter-panel.js +18 -18
- package/dist/components/filters/filter-panels/new-filter-panel.js +23 -19
- package/dist/components/filters/filter-panels/polygon-filter-panel.js +28 -21
- package/dist/components/filters/filter-panels/range-filter-panel.js +18 -18
- package/dist/components/filters/filter-panels/single-select-filter-panel.js +18 -18
- package/dist/components/filters/filter-panels/time-range-filter-panel.js +24 -19
- package/dist/components/filters/filter-panels/types.js +6 -0
- package/dist/components/filters/index.js +17 -11
- package/dist/components/filters/multi-select-filter.js +9 -3
- package/dist/components/filters/polygon-filter.js +19 -10
- package/dist/components/filters/range-filter.js +9 -4
- package/dist/components/filters/single-select-filter.js +9 -3
- package/dist/components/filters/time-range-filter.js +18 -7
- package/dist/components/filters/time-widget.js +51 -42
- package/dist/components/filters/types.js +6 -0
- package/dist/components/geocoder/geocoder.js +134 -100
- package/dist/components/geocoder-panel.js +79 -57
- package/dist/components/index.js +591 -356
- package/dist/components/injector.js +58 -42
- package/dist/components/kepler-gl.js +171 -91
- package/dist/components/map/coordinate-info.js +13 -4
- package/dist/components/map/layer-hover-info.js +46 -39
- package/dist/components/map/layer-selector-panel.js +30 -17
- package/dist/components/map/locale-panel.js +43 -23
- package/dist/components/map/map-control-panel.js +43 -30
- package/dist/components/map/map-control-toolbar.js +11 -21
- package/dist/components/map/map-control-tooltip.js +13 -6
- package/dist/components/map/map-control.js +28 -27
- package/dist/components/map/map-draw-panel.js +48 -23
- package/dist/components/map/map-legend-panel.js +138 -77
- package/dist/components/map/map-legend.js +82 -55
- package/dist/components/map/map-popover.js +58 -42
- package/dist/components/map/split-map-button.js +40 -25
- package/dist/components/map/toggle-3d-button.js +37 -22
- package/dist/components/map-container.js +164 -147
- package/dist/components/maps-layout.js +29 -25
- package/dist/components/modal-container.js +116 -91
- package/dist/components/modals/add-map-style-modal.js +66 -49
- package/dist/components/modals/cloud-tile.js +36 -36
- package/dist/components/modals/data-table-modal.js +96 -60
- package/dist/components/modals/delete-data-modal.js +20 -24
- package/dist/components/modals/error-display.js +10 -3
- package/dist/components/modals/export-data-modal.js +59 -57
- package/dist/components/modals/export-image-modal.js +28 -31
- package/dist/components/modals/export-map-modal/components.js +27 -27
- package/dist/components/modals/export-map-modal/export-html-map.js +27 -28
- package/dist/components/modals/export-map-modal/export-json-map.js +43 -30
- package/dist/components/modals/export-map-modal/export-map-modal.js +41 -34
- package/dist/components/modals/image-modal-container.js +19 -14
- package/dist/components/modals/load-data-modal.js +35 -31
- package/dist/components/modals/load-storage-map.js +79 -44
- package/dist/components/modals/loading-dialog.js +18 -24
- package/dist/components/modals/modal-dialog.js +7 -3
- package/dist/components/modals/modal-tabs.js +29 -29
- package/dist/components/modals/overwrite-map-modal.js +28 -29
- package/dist/components/modals/provider-modal-container.js +32 -35
- package/dist/components/modals/save-map-modal.js +51 -47
- package/dist/components/modals/share-map-modal.js +63 -55
- package/dist/components/modals/status-panel.js +25 -24
- package/dist/components/modals/storage-map-viewer.js +43 -38
- package/dist/components/notification-panel/notification-item.js +46 -41
- package/dist/components/notification-panel.js +32 -35
- package/dist/components/performance.js +36 -11
- package/dist/components/plot-container.js +76 -60
- package/dist/components/side-panel/cloud-storage-dropdown.js +10 -4
- package/dist/components/side-panel/common/dataset-info.js +13 -20
- package/dist/components/side-panel/common/dataset-tag.js +49 -31
- package/dist/components/side-panel/common/dataset-title.js +91 -44
- package/dist/components/side-panel/common/source-data-catalog.js +26 -28
- package/dist/components/side-panel/common/source-data-selector.js +51 -37
- package/dist/components/side-panel/common/types.js +6 -0
- package/dist/components/side-panel/custom-panel.js +9 -5
- package/dist/components/side-panel/filter-manager.js +32 -30
- package/dist/components/side-panel/filter-panel/filter-panel-header.js +29 -32
- package/dist/components/side-panel/filter-panel/filter-panel.js +58 -53
- package/dist/components/side-panel/interaction-manager.js +12 -5
- package/dist/components/side-panel/interaction-panel/brush-config.js +19 -23
- package/dist/components/side-panel/interaction-panel/interaction-panel.js +58 -41
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +83 -47
- package/dist/components/side-panel/interaction-panel/tooltip-config.js +46 -30
- package/dist/components/side-panel/layer-manager.js +132 -211
- package/dist/components/side-panel/layer-panel/add-layer-button.js +156 -0
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +11 -4
- package/dist/components/side-panel/layer-panel/color-palette.js +29 -41
- package/dist/components/side-panel/layer-panel/color-range-selector.js +164 -162
- package/dist/components/side-panel/layer-panel/color-selector.js +71 -60
- package/dist/components/side-panel/layer-panel/column-selector.js +27 -28
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +7 -3
- package/dist/components/side-panel/layer-panel/custom-palette.js +72 -48
- package/dist/components/side-panel/layer-panel/custom-picker.js +41 -40
- package/dist/components/side-panel/layer-panel/dataset-layer-group.js +87 -0
- package/dist/components/side-panel/layer-panel/dataset-layer-section.js +69 -0
- package/dist/components/side-panel/layer-panel/dataset-section.js +91 -0
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +16 -8
- package/dist/components/side-panel/layer-panel/hex-column-config.js +34 -12
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +10 -2
- package/dist/components/side-panel/layer-panel/layer-column-config.js +26 -42
- package/dist/components/side-panel/layer-panel/layer-config-group.js +86 -52
- package/dist/components/side-panel/layer-panel/layer-configurator.js +249 -158
- package/dist/components/side-panel/layer-panel/layer-list.js +168 -0
- package/dist/components/side-panel/layer-panel/layer-panel-header.js +70 -74
- package/dist/components/side-panel/layer-panel/layer-panel.js +58 -55
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +22 -28
- package/dist/components/side-panel/layer-panel/layer-type-list-item.js +18 -22
- package/dist/components/side-panel/layer-panel/layer-type-selector.js +30 -35
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +40 -35
- package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +123 -0
- package/dist/components/side-panel/layer-panel/single-color-palette.js +45 -77
- package/dist/components/side-panel/layer-panel/text-label-panel.js +45 -41
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +51 -60
- package/dist/components/side-panel/layer-panel/vis-config-slider.js +163 -52
- package/dist/components/side-panel/layer-panel/vis-config-switch.js +27 -38
- package/dist/components/side-panel/map-manager.js +45 -38
- package/dist/components/side-panel/map-style-panel/map-layer-selector.js +31 -28
- package/dist/components/side-panel/map-style-panel/map-style-selector.js +24 -26
- package/dist/components/side-panel/panel-dropdown.js +34 -34
- package/dist/components/side-panel/panel-header-action.js +43 -51
- package/dist/components/side-panel/panel-header.js +105 -78
- package/dist/components/side-panel/panel-tab.js +20 -24
- package/dist/components/side-panel/panel-title.js +17 -22
- package/dist/components/side-panel/panel-toggle.js +21 -33
- package/dist/components/side-panel/side-bar.js +53 -44
- package/dist/components/side-panel.js +79 -68
- package/dist/components/types.js +6 -0
- package/dist/connect/keplergl-connect.js +14 -5
- package/dist/connect/with-local-selector.js +38 -33
- package/dist/constants/action-types.js +14 -5
- package/dist/constants/color-palette.js +23 -12
- package/dist/constants/color-ranges.js +31 -32
- package/dist/constants/custom-color-ranges.js +14 -9
- package/dist/constants/default-settings.js +265 -162
- package/dist/constants/index.js +103 -95
- package/dist/constants/keyevent.js +7 -3
- package/dist/constants/tooltip.js +10 -7
- package/dist/constants/user-feedbacks.js +6 -5
- package/dist/constants/user-guides.js +20 -12
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +33 -30
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +43 -10
- package/dist/deckgl-layers/3d-building-layer/types.js +6 -0
- package/dist/deckgl-layers/cluster-layer/cluster-layer.js +75 -54
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +34 -31
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +38 -38
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +38 -38
- package/dist/deckgl-layers/layer-utils/cluster-utils.js +26 -12
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +152 -90
- package/dist/deckgl-layers/layer-utils/shader-utils.js +5 -1
- package/dist/deckgl-layers/line-layer/line-layer.js +40 -31
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +32 -27
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +42 -36
- package/dist/index.js +23 -4
- package/dist/layers/aggregation-layer.js +126 -76
- package/dist/layers/arc-layer/arc-layer-icon.js +27 -27
- package/dist/layers/arc-layer/arc-layer.js +85 -56
- package/dist/layers/base-layer.js +459 -288
- package/dist/layers/cluster-layer/cluster-layer-icon.js +27 -27
- package/dist/layers/cluster-layer/cluster-layer.js +45 -34
- package/dist/layers/default-layer-icon.js +27 -27
- package/dist/layers/geojson-layer/geojson-layer-icon.js +27 -27
- package/dist/layers/geojson-layer/geojson-layer.js +105 -60
- package/dist/layers/geojson-layer/geojson-utils.js +68 -39
- package/dist/layers/grid-layer/grid-layer-icon.js +27 -27
- package/dist/layers/grid-layer/grid-layer.js +42 -31
- package/dist/layers/grid-layer/grid-utils.js +15 -12
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +27 -27
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +92 -49
- package/dist/layers/h3-hexagon-layer/h3-utils.js +22 -11
- package/dist/layers/heatmap-layer/heatmap-layer-icon.js +27 -27
- package/dist/layers/heatmap-layer/heatmap-layer.js +81 -59
- package/dist/layers/hexagon-layer/hexagon-layer-icon.js +27 -27
- package/dist/layers/hexagon-layer/hexagon-layer.js +43 -31
- package/dist/layers/hexagon-layer/hexagon-utils.js +15 -3
- package/dist/layers/icon-layer/icon-info-modal.js +28 -24
- package/dist/layers/icon-layer/icon-layer-icon.js +27 -27
- package/dist/layers/icon-layer/icon-layer.js +115 -63
- package/dist/layers/index.js +39 -38
- package/dist/layers/layer-factory.js +83 -69
- package/dist/layers/layer-text-label.js +15 -9
- package/dist/layers/layer-update.js +21 -12
- package/dist/layers/line-layer/line-layer-icon.js +27 -27
- package/dist/layers/line-layer/line-layer.js +84 -63
- package/dist/layers/mapbox-utils.js +54 -48
- package/dist/layers/mapboxgl-layer.js +68 -45
- package/dist/layers/point-layer/point-layer-icon.js +27 -27
- package/dist/layers/point-layer/point-layer.js +100 -60
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +86 -45
- package/dist/layers/s2-geometry-layer/s2-layer-icon.js +27 -27
- package/dist/layers/s2-geometry-layer/s2-utils.js +18 -5
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +15 -21
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +27 -27
- package/dist/layers/scenegraph-layer/scenegraph-layer.js +85 -54
- package/dist/layers/trip-layer/trip-info-modal.js +16 -21
- package/dist/layers/trip-layer/trip-layer-icon.js +27 -27
- package/dist/layers/trip-layer/trip-layer.js +115 -58
- package/dist/layers/trip-layer/trip-utils.js +51 -28
- package/dist/layers/types.js +6 -3
- package/dist/localization/formatted-message.js +12 -8
- package/dist/localization/index.js +14 -8
- package/dist/localization/locales.js +12 -7
- package/dist/localization/messages.js +29 -0
- package/dist/localization/translations/ca.js +455 -0
- package/dist/localization/translations/cn.js +458 -0
- package/dist/localization/translations/en.js +483 -0
- package/dist/localization/translations/es.js +455 -0
- package/dist/localization/translations/fi.js +427 -0
- package/dist/localization/translations/ja.js +456 -0
- package/dist/localization/translations/pt.js +427 -0
- package/dist/localization/translations/ru.js +464 -0
- package/dist/middleware/index.js +5 -2
- package/dist/processors/data-processor.js +217 -149
- package/dist/processors/file-handler.js +284 -210
- package/dist/processors/index.js +25 -97
- package/dist/processors/types.js +6 -0
- package/dist/reducers/combined-updaters.js +48 -40
- package/dist/reducers/composer-helpers.js +34 -32
- package/dist/reducers/composers.js +12 -25
- package/dist/reducers/core.js +46 -19
- package/dist/reducers/index.js +52 -24
- package/dist/reducers/map-state-updaters.js +64 -61
- package/dist/reducers/map-state.js +26 -31
- package/dist/reducers/map-style-updaters.js +149 -116
- package/dist/reducers/map-style.js +26 -31
- package/dist/reducers/provider-state-updaters.js +151 -121
- package/dist/reducers/provider-state.js +25 -32
- package/dist/reducers/root.js +52 -45
- package/dist/reducers/types.js +6 -0
- package/dist/reducers/ui-state-updaters.js +231 -138
- package/dist/reducers/ui-state.js +27 -32
- package/dist/reducers/vis-state-merger.js +212 -143
- package/dist/reducers/vis-state-selectors.js +12 -5
- package/dist/reducers/vis-state-updaters.js +706 -490
- package/dist/reducers/vis-state.js +25 -32
- package/dist/schemas/dataset-schema.js +59 -39
- package/dist/schemas/index.js +45 -38
- package/dist/schemas/map-state-schema.js +24 -28
- package/dist/schemas/map-style-schema.js +48 -34
- package/dist/schemas/schema-manager.js +71 -46
- package/dist/schemas/schema-utils.js +15 -11
- package/dist/schemas/schema.js +37 -35
- package/dist/schemas/versions.js +9 -5
- package/dist/schemas/vis-state-schema.js +312 -112
- package/dist/styles/base.js +646 -367
- package/dist/styles/index.js +5 -1
- package/dist/styles/media-breakpoints.js +36 -27
- package/dist/tasks/tasks.js +50 -22
- package/dist/templates/export-map-html.js +6 -3
- package/dist/utils/aggregate-utils.js +27 -23
- package/dist/utils/color-utils.js +62 -44
- package/dist/utils/custom-scales.js +7 -1
- package/dist/utils/data-scale-utils.js +18 -14
- package/dist/utils/data-utils.js +148 -110
- package/dist/utils/dataset-utils.js +91 -75
- package/dist/utils/dom-to-image.js +97 -19
- package/dist/utils/dom-utils.js +116 -34
- package/dist/utils/export-utils.js +122 -81
- package/dist/utils/filter-utils.js +335 -242
- package/dist/utils/gl-utils.js +15 -26
- package/dist/utils/gpu-filter-utils.js +70 -61
- package/dist/utils/index.js +220 -64
- package/dist/utils/interaction-utils.js +52 -34
- package/dist/utils/layer-utils.js +65 -60
- package/dist/utils/locale-utils.js +21 -23
- package/dist/utils/map-info-utils.js +3 -2
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +85 -86
- package/dist/utils/map-style-utils/mapbox-utils.js +5 -3
- package/dist/utils/mapbox-utils.js +5 -2
- package/dist/utils/notifications-utils.js +42 -43
- package/dist/utils/observe-dimensions.js +44 -39
- package/dist/utils/projection-utils.js +20 -9
- package/dist/utils/searcher-utils.js +4 -1
- package/dist/utils/split-map-utils.js +34 -38
- package/dist/utils/table-utils/data-container-interface.js +6 -0
- package/dist/utils/table-utils/data-container-utils.js +36 -29
- package/dist/utils/table-utils/data-row.js +79 -7
- package/dist/utils/table-utils/index.js +2 -1
- package/dist/utils/table-utils/indexed-data-container.js +113 -81
- package/dist/utils/table-utils/kepler-table.js +200 -99
- package/dist/utils/table-utils/row-data-container.js +109 -74
- package/dist/utils/utils.js +94 -50
- package/package.json +71 -21
- package/src/actions/action-wrapper.ts +183 -0
- package/src/actions/actions.ts +260 -0
- package/src/actions/identity-actions.ts +116 -0
- package/src/actions/map-state-actions.ts +116 -0
- package/src/actions/map-style-actions.ts +243 -0
- package/src/actions/provider-actions.ts +218 -0
- package/src/actions/ui-state-actions.ts +490 -0
- package/src/actions/vis-state-actions.ts +1279 -0
- package/src/cloud-providers/index.ts +22 -0
- package/src/cloud-providers/provider.ts +277 -0
- package/src/components/bottom-widget.tsx +275 -0
- package/src/components/common/action-panel.tsx +207 -0
- package/src/components/common/animation-control/animation-control.tsx +157 -0
- package/src/components/common/animation-control/animation-controller.ts +249 -0
- package/src/components/common/animation-control/animation-speed-slider.tsx +86 -0
- package/src/components/common/animation-control/floating-time-display.tsx +209 -0
- package/src/components/common/animation-control/playback-controls.tsx +316 -0
- package/src/components/common/animation-control/speed-control.tsx +71 -0
- package/src/components/common/checkbox.tsx +137 -0
- package/src/components/common/color-legend.tsx +203 -0
- package/src/components/common/data-table/button.tsx +54 -0
- package/src/components/common/data-table/cell-size.ts +185 -0
- package/src/components/common/data-table/grid.tsx +57 -0
- package/src/components/common/data-table/index.tsx +693 -0
- package/src/components/common/data-table/option-dropdown.tsx +122 -0
- package/src/components/common/dataset-label.tsx +48 -0
- package/src/components/common/error-boundary.tsx +43 -0
- package/src/components/common/field-selector.tsx +237 -0
- package/src/components/common/field-token.tsx +60 -0
- package/src/components/common/file-uploader/file-drop.tsx +208 -0
- package/src/components/common/file-uploader/file-upload-progress.tsx +123 -0
- package/src/components/common/file-uploader/file-upload.tsx +319 -0
- package/src/components/common/file-uploader/upload-button.tsx +88 -0
- package/src/components/common/histogram-plot.tsx +125 -0
- package/src/components/common/icons/add.tsx +37 -0
- package/src/components/common/icons/anchor_window.tsx +49 -0
- package/src/components/common/icons/arrow-down-alt.tsx +37 -0
- package/src/components/common/icons/arrow-down-solid.tsx +37 -0
- package/src/components/common/icons/arrow-down.tsx +40 -0
- package/src/components/common/icons/arrow-left.tsx +42 -0
- package/src/components/common/icons/arrow-right.tsx +40 -0
- package/src/components/common/icons/arrow-up-alt.tsx +40 -0
- package/src/components/common/icons/arrow-up-solid.tsx +37 -0
- package/src/components/common/icons/arrow-up.tsx +40 -0
- package/src/components/common/icons/base.tsx +95 -0
- package/src/components/common/icons/bug.tsx +40 -0
- package/src/components/common/icons/cancel.tsx +37 -0
- package/src/components/common/icons/checkmark.tsx +39 -0
- package/src/components/common/icons/chevron-right.js +1 -1
- package/src/components/common/icons/clipboard.tsx +40 -0
- package/src/components/common/icons/clock.tsx +38 -0
- package/src/components/common/icons/close.tsx +43 -0
- package/src/components/common/icons/code-alt.tsx +37 -0
- package/src/components/common/icons/copy.tsx +38 -0
- package/src/components/common/icons/crosshairs.tsx +37 -0
- package/src/components/common/icons/cube-3d.tsx +39 -0
- package/src/components/common/icons/cursor-click.tsx +43 -0
- package/src/components/common/icons/data-table.tsx +40 -0
- package/src/components/common/icons/db.tsx +40 -0
- package/src/components/common/icons/delete.tsx +39 -0
- package/src/components/common/icons/docs.tsx +40 -0
- package/src/components/common/icons/drag-n-drop.tsx +38 -0
- package/src/components/common/icons/draw-polygon.tsx +51 -0
- package/src/components/common/icons/email.tsx +39 -0
- package/src/components/common/icons/expand.tsx +39 -0
- package/src/components/common/icons/eye-seen.tsx +38 -0
- package/src/components/common/icons/eye-unseen.tsx +38 -0
- package/src/components/common/icons/file-type.tsx +71 -0
- package/src/components/common/icons/file.tsx +37 -0
- package/src/components/common/icons/files.tsx +37 -0
- package/src/components/common/icons/filter-funnel.tsx +37 -0
- package/src/components/common/icons/free-window.tsx +48 -0
- package/src/components/common/icons/gear.tsx +40 -0
- package/src/components/common/icons/hash.tsx +37 -0
- package/src/components/common/icons/histogram.tsx +42 -0
- package/src/components/common/icons/index.tsx +98 -0
- package/src/components/common/icons/info.tsx +48 -0
- package/src/components/common/icons/layers.tsx +37 -0
- package/src/components/common/icons/left-arrow.tsx +37 -0
- package/src/components/common/icons/legend.tsx +37 -0
- package/src/components/common/icons/line-chart.tsx +40 -0
- package/src/components/common/icons/login.tsx +41 -0
- package/src/components/common/icons/logout.tsx +38 -0
- package/src/components/common/icons/map-icon.tsx +62 -0
- package/src/components/common/icons/map.tsx +62 -0
- package/src/components/common/icons/messages.tsx +37 -0
- package/src/components/common/icons/minus.tsx +39 -0
- package/src/components/common/icons/order-by-dataset.tsx +49 -0
- package/src/components/common/icons/order-by-list.tsx +39 -0
- package/src/components/common/icons/pause.tsx +37 -0
- package/src/components/common/icons/picture.tsx +37 -0
- package/src/components/common/icons/pin.tsx +42 -0
- package/src/components/common/icons/play.tsx +37 -0
- package/src/components/common/icons/polygon.tsx +65 -0
- package/src/components/common/icons/rectangle.tsx +66 -0
- package/src/components/common/icons/reduce.tsx +42 -0
- package/src/components/common/icons/reset.tsx +37 -0
- package/src/components/common/icons/rocket.tsx +37 -0
- package/src/components/common/icons/save.tsx +38 -0
- package/src/components/common/icons/save2.tsx +42 -0
- package/src/components/common/icons/search.tsx +38 -0
- package/src/components/common/icons/settings.tsx +39 -0
- package/src/components/common/icons/share.tsx +37 -0
- package/src/components/common/icons/split.tsx +57 -0
- package/src/components/common/icons/square-select.tsx +38 -0
- package/src/components/common/icons/swap-horizontal.js +1 -1
- package/src/components/common/icons/table.tsx +41 -0
- package/src/components/common/icons/trash.tsx +45 -0
- package/src/components/common/icons/upload.tsx +37 -0
- package/src/components/common/icons/vert-dots.tsx +44 -0
- package/src/components/common/icons/vert-three-dots.tsx +39 -0
- package/src/components/common/icons/warning.tsx +40 -0
- package/src/components/common/image-preview.tsx +118 -0
- package/src/components/common/info-helper.tsx +90 -0
- package/src/components/common/item-selector/accessor.ts +45 -0
- package/src/components/common/item-selector/chickleted-input.tsx +153 -0
- package/src/components/common/item-selector/dropdown-list.tsx +269 -0
- package/src/components/common/item-selector/item-selector-submenu.js +1 -1
- package/src/components/common/item-selector/item-selector.d.ts +24 -27
- package/src/components/common/item-selector/item-selector.tsx +372 -0
- package/src/components/common/item-selector/typeahead.tsx +533 -0
- package/src/components/common/line-chart.tsx +170 -0
- package/src/components/common/loading-spinner.tsx +75 -0
- package/src/components/common/logo.tsx +88 -0
- package/src/components/common/map-layer-selector.tsx +64 -0
- package/src/components/common/modal.tsx +238 -0
- package/src/components/common/portaled.tsx +312 -0
- package/src/components/common/progress-bar.tsx +74 -0
- package/src/components/common/range-brush.tsx +276 -0
- package/src/components/common/range-plot.tsx +145 -0
- package/src/components/common/range-slider.tsx +320 -0
- package/src/components/common/slider/mouse-event.ts +122 -0
- package/src/components/common/slider/slider-bar-handle.tsx +106 -0
- package/src/components/common/slider/slider-handle.tsx +210 -0
- package/src/components/common/slider/slider.tsx +234 -0
- package/src/components/common/styled-components.tsx +708 -0
- package/src/components/common/switch.tsx +47 -0
- package/src/components/common/time-range-slider-time-title.tsx +87 -0
- package/src/components/common/time-range-slider.tsx +171 -0
- package/src/components/common/time-slider-marker.tsx +187 -0
- package/src/components/common/tippy-tooltip.tsx +130 -0
- package/src/components/common/toolbar-item.tsx +99 -0
- package/src/components/common/toolbar.tsx +49 -0
- package/src/components/common/vertical-toolbar.tsx +35 -0
- package/src/components/container.d.ts +8 -0
- package/src/components/container.tsx +188 -0
- package/src/components/context.ts +32 -0
- package/src/components/editor/editor.tsx +231 -0
- package/src/components/editor/feature-action-panel.tsx +155 -0
- package/src/components/editor/feature-styles.ts +75 -0
- package/src/components/editor/handle-style.ts +89 -0
- package/src/components/filters/filter-panels/filter-panel-with-field-select.tsx +118 -0
- package/src/components/filters/filter-panels/multi-select-filter-panel.tsx +63 -0
- package/src/components/filters/filter-panels/new-filter-panel.tsx +100 -0
- package/src/components/filters/filter-panels/polygon-filter-panel.tsx +84 -0
- package/src/components/filters/filter-panels/range-filter-panel.tsx +63 -0
- package/src/components/filters/filter-panels/single-select-filter-panel.tsx +63 -0
- package/src/components/filters/filter-panels/time-range-filter-panel.tsx +92 -0
- package/src/components/filters/filter-panels/types.ts +39 -0
- package/src/components/filters/multi-select-filter.tsx +37 -0
- package/src/components/filters/polygon-filter.tsx +74 -0
- package/src/components/filters/range-filter.tsx +44 -0
- package/src/components/filters/single-select-filter.tsx +50 -0
- package/src/components/filters/time-range-filter.tsx +76 -0
- package/src/components/filters/time-widget.tsx +240 -0
- package/src/components/filters/types.ts +78 -0
- package/src/components/geocoder/geocoder.tsx +307 -0
- package/src/components/geocoder-panel.tsx +199 -0
- package/src/components/index.ts +262 -0
- package/src/components/injector.d.ts +33 -0
- package/src/components/injector.tsx +171 -0
- package/src/components/kepler-gl.d.ts +0 -2
- package/src/components/kepler-gl.tsx +579 -0
- package/src/components/map/coordinate-info.tsx +58 -0
- package/src/components/map/layer-hover-info.tsx +192 -0
- package/src/components/map/layer-selector-panel.tsx +121 -0
- package/src/components/map/locale-panel.tsx +110 -0
- package/src/components/map/map-control-panel.tsx +141 -0
- package/src/components/map/map-control-tooltip.tsx +45 -0
- package/src/components/map/map-control.tsx +138 -0
- package/src/components/map/map-draw-panel.tsx +145 -0
- package/src/components/map/map-legend-panel.tsx +167 -0
- package/src/components/map/map-legend.tsx +283 -0
- package/src/components/map/map-popover.tsx +266 -0
- package/src/components/map/split-map-button.tsx +98 -0
- package/src/components/map/toggle-3d-button.tsx +90 -0
- package/src/components/map-container.tsx +541 -0
- package/src/components/maps-layout.tsx +44 -0
- package/src/components/modal-container.tsx +556 -0
- package/src/components/modals/add-map-style-modal.tsx +303 -0
- package/src/components/modals/cloud-tile.tsx +181 -0
- package/src/components/modals/data-table-modal.tsx +241 -0
- package/src/components/modals/delete-data-modal.tsx +55 -0
- package/src/components/modals/error-display.tsx +43 -0
- package/src/components/modals/export-data-modal.tsx +201 -0
- package/src/components/modals/export-image-modal.tsx +155 -0
- package/src/components/modals/export-map-modal/export-html-map.tsx +164 -0
- package/src/components/modals/export-map-modal/export-json-map.tsx +112 -0
- package/src/components/modals/export-map-modal/export-map-modal.tsx +109 -0
- package/src/components/modals/image-modal-container.tsx +85 -0
- package/src/components/modals/load-data-modal.tsx +120 -0
- package/src/components/modals/load-storage-map.tsx +414 -0
- package/src/components/modals/loading-dialog.tsx +77 -0
- package/src/components/modals/modal-tabs.tsx +137 -0
- package/src/components/modals/overwrite-map-modal.tsx +113 -0
- package/src/components/modals/provider-modal-container.tsx +61 -0
- package/src/components/modals/save-map-modal.tsx +277 -0
- package/src/components/modals/share-map-modal.tsx +217 -0
- package/src/components/modals/status-panel.tsx +106 -0
- package/src/components/modals/storage-map-viewer.tsx +190 -0
- package/src/components/notification-panel/notification-item.tsx +143 -0
- package/src/components/notification-panel.tsx +75 -0
- package/src/components/plot-container.tsx +237 -0
- package/src/components/side-panel/common/dataset-info.tsx +46 -0
- package/src/components/side-panel/common/dataset-tag.tsx +86 -0
- package/src/components/side-panel/common/dataset-title.tsx +186 -0
- package/src/components/side-panel/common/source-data-catalog.tsx +67 -0
- package/src/components/side-panel/common/source-data-selector.tsx +90 -0
- package/src/components/side-panel/common/types.ts +76 -0
- package/src/components/side-panel/filter-manager.tsx +120 -0
- package/src/components/side-panel/filter-panel/filter-panel-header.tsx +96 -0
- package/src/components/side-panel/filter-panel/filter-panel.tsx +125 -0
- package/src/components/side-panel/interaction-manager.tsx +59 -0
- package/src/components/side-panel/interaction-panel/brush-config.tsx +58 -0
- package/src/components/side-panel/interaction-panel/interaction-panel.tsx +124 -0
- package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.tsx +243 -0
- package/src/components/side-panel/interaction-panel/tooltip-config.tsx +238 -0
- package/src/components/side-panel/layer-manager.tsx +242 -0
- package/src/components/side-panel/layer-panel/add-layer-button.tsx +208 -0
- package/src/components/side-panel/layer-panel/color-dimension-scale-selector.js +1 -1
- package/src/components/side-panel/layer-panel/color-palette.tsx +98 -0
- package/src/components/side-panel/layer-panel/color-range-selector.tsx +377 -0
- package/src/components/side-panel/layer-panel/color-selector.tsx +200 -0
- package/src/components/side-panel/layer-panel/column-selector.tsx +102 -0
- package/src/components/side-panel/layer-panel/custom-markers-config-group.js +1 -1
- package/src/components/side-panel/layer-panel/custom-palette.tsx +297 -0
- package/src/components/side-panel/layer-panel/custom-picker.tsx +99 -0
- package/src/components/side-panel/layer-panel/dataset-layer-group.tsx +99 -0
- package/src/components/side-panel/layer-panel/dataset-layer-section.tsx +100 -0
- package/src/components/side-panel/layer-panel/dataset-section.tsx +125 -0
- package/src/components/side-panel/layer-panel/dimension-scale-selector.tsx +64 -0
- package/src/components/side-panel/layer-panel/layer-column-config.tsx +115 -0
- package/src/components/side-panel/layer-panel/layer-config-group.tsx +256 -0
- package/src/components/side-panel/layer-panel/layer-list.tsx +191 -0
- package/src/components/side-panel/layer-panel/layer-panel-header.tsx +272 -0
- package/src/components/side-panel/layer-panel/layer-panel.tsx +196 -0
- package/src/components/side-panel/layer-panel/layer-type-dropdown-list.tsx +118 -0
- package/src/components/side-panel/layer-panel/layer-type-list-item.tsx +92 -0
- package/src/components/side-panel/layer-panel/layer-type-selector.tsx +115 -0
- package/src/components/side-panel/layer-panel/layer-visibility-by-zoom.js +1 -1
- package/src/components/side-panel/layer-panel/panel-view-list-toggle.tsx +132 -0
- package/src/components/side-panel/layer-panel/single-color-palette.tsx +94 -0
- package/src/components/side-panel/layer-panel/text-label-panel.tsx +187 -0
- package/src/components/side-panel/layer-panel/vis-config-by-field-selector.tsx +179 -0
- package/src/components/side-panel/layer-panel/vis-config-slider.tsx +237 -0
- package/src/components/side-panel/layer-panel/vis-config-switch.tsx +86 -0
- package/src/components/side-panel/map-manager.tsx +123 -0
- package/src/components/side-panel/map-style-panel/map-layer-selector.tsx +145 -0
- package/src/components/side-panel/map-style-panel/map-style-selector.tsx +122 -0
- package/src/components/side-panel/panel-dropdown.tsx +53 -0
- package/src/components/side-panel/panel-header-action.tsx +114 -0
- package/src/components/side-panel/panel-header.tsx +386 -0
- package/src/components/side-panel/panel-tab.tsx +79 -0
- package/src/components/side-panel/panel-title.tsx +35 -0
- package/src/components/side-panel/panel-toggle.tsx +72 -0
- package/src/components/side-panel/side-bar.tsx +140 -0
- package/src/components/side-panel.tsx +261 -0
- package/src/components/types.ts +41 -0
- package/src/connect/keplergl-connect.ts +48 -0
- package/src/connect/with-local-selector.tsx +70 -0
- package/src/constants/action-types.ts +188 -0
- package/src/constants/color-ranges.ts +87 -0
- package/src/constants/default-settings.ts +1049 -0
- package/src/deckgl-layers/3d-building-layer/3d-building-layer.ts +57 -0
- package/src/deckgl-layers/3d-building-layer/3d-building-utils.ts +211 -0
- package/src/deckgl-layers/3d-building-layer/types.ts +29 -0
- package/src/deckgl-layers/column-layer/enhanced-column-layer.ts +63 -0
- package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.ts +68 -0
- package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.ts +68 -0
- package/src/deckgl-layers/layer-utils/cluster-utils.ts +78 -0
- package/src/deckgl-layers/layer-utils/cpu-aggregator.ts +672 -0
- package/src/deckgl-layers/layer-utils/shader-utils.ts +41 -0
- package/src/deckgl-layers/line-layer/line-layer.ts +126 -0
- package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.ts +63 -0
- package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.ts +96 -0
- package/src/index.d.ts +1 -0
- package/src/layers/aggregation-layer.ts +402 -0
- package/src/layers/arc-layer/arc-layer-icon.tsx +67 -0
- package/src/layers/arc-layer/arc-layer.ts +294 -0
- package/src/layers/base-layer.ts +1743 -0
- package/src/layers/cluster-layer/cluster-layer.ts +162 -0
- package/src/layers/geojson-layer/geojson-layer-icon.tsx +68 -0
- package/src/layers/geojson-layer/geojson-layer.ts +461 -0
- package/src/layers/geojson-layer/geojson-utils.ts +200 -0
- package/src/layers/grid-layer/grid-layer-icon.tsx +53 -0
- package/src/layers/grid-layer/grid-layer.ts +153 -0
- package/src/layers/grid-layer/grid-utils.ts +84 -0
- package/src/layers/h3-hexagon-layer/h3-hexagon-layer.ts +339 -0
- package/src/layers/h3-hexagon-layer/h3-utils.ts +67 -0
- package/src/layers/heatmap-layer/heatmap-layer.ts +255 -0
- package/src/layers/hexagon-layer/hexagon-layer.ts +156 -0
- package/src/layers/hexagon-layer/hexagon-utils.ts +64 -0
- package/src/layers/icon-layer/icon-info-modal.tsx +155 -0
- package/src/layers/icon-layer/icon-layer.ts +392 -0
- package/src/layers/index.ts +77 -0
- package/src/layers/layer-factory.ts +695 -0
- package/src/layers/layer-text-label.ts +62 -0
- package/src/layers/layer-update.ts +70 -0
- package/src/layers/line-layer/line-layer.ts +222 -0
- package/src/layers/mapbox-utils.ts +204 -0
- package/src/layers/mapboxgl-layer.ts +176 -0
- package/src/layers/point-layer/point-layer.ts +504 -0
- package/src/layers/s2-geometry-layer/s2-geometry-layer.ts +369 -0
- package/src/layers/s2-geometry-layer/s2-utils.ts +42 -0
- package/src/layers/scenegraph-layer/scenegraph-layer.ts +237 -0
- package/src/layers/trip-layer/trip-layer.ts +356 -0
- package/src/layers/trip-layer/trip-utils.ts +177 -0
- package/src/localization/formatted-message.tsx +42 -0
- package/src/localization/index.ts +29 -0
- package/src/localization/locales.ts +53 -0
- package/src/localization/messages.ts +40 -0
- package/src/localization/translations/ca.ts +476 -0
- package/src/localization/translations/cn.ts +477 -0
- package/src/localization/translations/en.ts +504 -0
- package/src/localization/translations/es.ts +477 -0
- package/src/localization/translations/fi.ts +448 -0
- package/src/localization/translations/ja.ts +477 -0
- package/src/localization/translations/pt.ts +449 -0
- package/src/localization/translations/ru.ts +488 -0
- package/src/middleware/index.ts +35 -0
- package/src/processors/data-processor.ts +723 -0
- package/src/processors/file-handler.ts +248 -0
- package/src/processors/index.ts +22 -0
- package/src/processors/types.ts +22 -0
- package/src/reducers/combined-updaters.ts +216 -0
- package/src/reducers/composer-helpers.ts +75 -0
- package/src/reducers/core.ts +111 -0
- package/src/reducers/index.ts +116 -0
- package/src/reducers/map-state-updaters.ts +271 -0
- package/src/reducers/map-state.ts +47 -0
- package/src/reducers/map-style-updaters.ts +640 -0
- package/src/reducers/map-style.ts +53 -0
- package/src/reducers/provider-state-updaters.ts +454 -0
- package/src/reducers/provider-state.ts +53 -0
- package/src/reducers/root.ts +231 -0
- package/src/reducers/types.ts +18 -0
- package/src/reducers/ui-state-updaters.ts +926 -0
- package/src/reducers/ui-state.ts +75 -0
- package/src/reducers/vis-state-merger.ts +627 -0
- package/src/reducers/vis-state-selectors.ts +37 -0
- package/src/reducers/vis-state-updaters.ts +2568 -0
- package/src/reducers/vis-state.ts +157 -0
- package/src/schemas/dataset-schema.ts +141 -0
- package/src/schemas/index.ts +52 -0
- package/src/schemas/schema-manager.ts +446 -0
- package/src/schemas/schema.ts +124 -0
- package/src/schemas/vis-state-schema.ts +761 -0
- package/src/styles/base.ts +1642 -0
- package/src/styles/media-breakpoints.ts +56 -0
- package/src/typedefs/deckgl.d.ts +25 -0
- package/src/utils/aggregate-utils.ts +71 -0
- package/src/utils/color-utils.ts +134 -0
- package/src/utils/data-scale-utils.ts +73 -0
- package/src/utils/data-utils.ts +459 -0
- package/src/utils/dataset-utils.ts +261 -0
- package/src/utils/dom-to-image.ts +533 -0
- package/src/utils/dom-utils.ts +354 -0
- package/src/utils/export-utils.ts +265 -0
- package/src/utils/filter-utils.ts +1185 -0
- package/src/utils/gl-utils.ts +40 -0
- package/src/utils/gpu-filter-utils.ts +249 -0
- package/src/utils/index.ts +69 -0
- package/src/utils/interaction-utils.ts +212 -0
- package/src/utils/layer-utils.ts +249 -0
- package/src/utils/map-style-utils/mapbox-gl-style-editor.ts +227 -0
- package/src/utils/notifications-utils.ts +89 -0
- package/src/utils/observe-dimensions.ts +127 -0
- package/src/utils/split-map-utils.ts +104 -0
- package/src/utils/table-utils/data-container-utils.ts +90 -0
- package/src/utils/table-utils/data-row.ts +110 -0
- package/src/utils/table-utils/indexed-data-container.ts +184 -0
- package/src/utils/table-utils/kepler-table.ts +639 -0
- package/src/utils/table-utils/row-data-container.ts +178 -0
- package/src/utils/utils.ts +228 -0
- package/dist/components/common/icons/arrow-down-solid .js +0 -64
- package/dist/localization/en.js +0 -494
- package/src/actions/action-wrapper.js +0 -183
- package/src/actions/actions.d.ts +0 -104
- package/src/actions/actions.js +0 -178
- package/src/actions/identity-actions.d.ts +0 -53
- package/src/actions/identity-actions.js +0 -83
- package/src/actions/index.d.ts +0 -23
- package/src/actions/map-state-actions.d.ts +0 -46
- package/src/actions/map-state-actions.js +0 -90
- package/src/actions/map-style-actions.d.ts +0 -116
- package/src/actions/map-style-actions.js +0 -135
- package/src/actions/provider-actions.d.ts +0 -203
- package/src/actions/provider-actions.js +0 -94
- package/src/actions/ui-state-actions.d.ts +0 -200
- package/src/actions/ui-state-actions.js +0 -272
- package/src/actions/vis-state-actions.d.ts +0 -502
- package/src/actions/vis-state-actions.js +0 -919
- package/src/cloud-providers/index.d.ts +0 -53
- package/src/cloud-providers/index.js +0 -21
- package/src/cloud-providers/provider.js +0 -233
- package/src/components/bottom-widget.d.ts +0 -33
- package/src/components/bottom-widget.js +0 -235
- package/src/components/common/action-panel.d.ts +0 -24
- package/src/components/common/action-panel.js +0 -177
- package/src/components/common/animation-control/animation-control.js +0 -155
- package/src/components/common/animation-control/animation-controller.js +0 -224
- package/src/components/common/animation-control/animation-speed-slider.js +0 -79
- package/src/components/common/animation-control/floating-time-display.js +0 -192
- package/src/components/common/animation-control/playback-controls.js +0 -278
- package/src/components/common/animation-control/speed-control.js +0 -71
- package/src/components/common/checkbox.js +0 -128
- package/src/components/common/color-legend.js +0 -198
- package/src/components/common/data-table/button.js +0 -47
- package/src/components/common/data-table/cell-size.js +0 -180
- package/src/components/common/data-table/grid.js +0 -55
- package/src/components/common/data-table/index.js +0 -620
- package/src/components/common/data-table/option-dropdown.js +0 -110
- package/src/components/common/dataset-label.js +0 -40
- package/src/components/common/error-boundary.js +0 -43
- package/src/components/common/field-selector.js +0 -233
- package/src/components/common/field-token.js +0 -56
- package/src/components/common/file-uploader/file-drop.d.ts +0 -19
- package/src/components/common/file-uploader/file-drop.js +0 -196
- package/src/components/common/file-uploader/file-upload-progress.d.ts +0 -11
- package/src/components/common/file-uploader/file-upload-progress.js +0 -110
- package/src/components/common/file-uploader/file-upload.d.ts +0 -22
- package/src/components/common/file-uploader/file-upload.js +0 -301
- package/src/components/common/file-uploader/upload-button.d.ts.wip +0 -11
- package/src/components/common/file-uploader/upload-button.js +0 -83
- package/src/components/common/histogram-plot.js +0 -102
- package/src/components/common/icons/add.js +0 -43
- package/src/components/common/icons/anchor_window.js +0 -53
- package/src/components/common/icons/arrow-down-alt.js +0 -43
- package/src/components/common/icons/arrow-down-solid .js +0 -43
- package/src/components/common/icons/arrow-down.js +0 -46
- package/src/components/common/icons/arrow-left.js +0 -48
- package/src/components/common/icons/arrow-right.js +0 -46
- package/src/components/common/icons/arrow-up-alt.js +0 -46
- package/src/components/common/icons/arrow-up-solid.js +0 -43
- package/src/components/common/icons/arrow-up.js +0 -46
- package/src/components/common/icons/base.js +0 -90
- package/src/components/common/icons/bug.js +0 -46
- package/src/components/common/icons/cancel.js +0 -43
- package/src/components/common/icons/checkmark.js +0 -45
- package/src/components/common/icons/clipboard.js +0 -46
- package/src/components/common/icons/clock.js +0 -44
- package/src/components/common/icons/close.js +0 -49
- package/src/components/common/icons/code-alt.js +0 -43
- package/src/components/common/icons/copy.js +0 -44
- package/src/components/common/icons/crosshairs.js +0 -43
- package/src/components/common/icons/cube-3d.js +0 -45
- package/src/components/common/icons/cursor-click.js +0 -49
- package/src/components/common/icons/data-table.js +0 -45
- package/src/components/common/icons/db.js +0 -45
- package/src/components/common/icons/delete.js +0 -44
- package/src/components/common/icons/docs.js +0 -46
- package/src/components/common/icons/drag-n-drop.js +0 -44
- package/src/components/common/icons/draw-polygon.js +0 -60
- package/src/components/common/icons/email.js +0 -45
- package/src/components/common/icons/expand.js +0 -45
- package/src/components/common/icons/eye-seen.js +0 -44
- package/src/components/common/icons/eye-unseen.js +0 -44
- package/src/components/common/icons/file-type.js +0 -57
- package/src/components/common/icons/file.js +0 -43
- package/src/components/common/icons/files.js +0 -42
- package/src/components/common/icons/filter-funnel.js +0 -43
- package/src/components/common/icons/free-window.js +0 -53
- package/src/components/common/icons/gear.js +0 -45
- package/src/components/common/icons/hash.js +0 -43
- package/src/components/common/icons/histogram.js +0 -47
- package/src/components/common/icons/index.js +0 -96
- package/src/components/common/icons/info.js +0 -54
- package/src/components/common/icons/layers.js +0 -43
- package/src/components/common/icons/left-arrow.js +0 -43
- package/src/components/common/icons/legend.js +0 -43
- package/src/components/common/icons/line-chart.js +0 -45
- package/src/components/common/icons/login.js +0 -46
- package/src/components/common/icons/logout.js +0 -43
- package/src/components/common/icons/map-icon.js +0 -69
- package/src/components/common/icons/map.js +0 -69
- package/src/components/common/icons/messages.js +0 -43
- package/src/components/common/icons/minus.js +0 -45
- package/src/components/common/icons/pause.js +0 -43
- package/src/components/common/icons/picture.js +0 -43
- package/src/components/common/icons/pin.js +0 -43
- package/src/components/common/icons/play.js +0 -43
- package/src/components/common/icons/polygon.js +0 -74
- package/src/components/common/icons/rectangle.js +0 -75
- package/src/components/common/icons/reduce.js +0 -48
- package/src/components/common/icons/reset.js +0 -43
- package/src/components/common/icons/rocket.js +0 -43
- package/src/components/common/icons/save.js +0 -44
- package/src/components/common/icons/save2.js +0 -47
- package/src/components/common/icons/search.js +0 -44
- package/src/components/common/icons/settings.js +0 -45
- package/src/components/common/icons/share.js +0 -43
- package/src/components/common/icons/split.js +0 -63
- package/src/components/common/icons/square-select.js +0 -44
- package/src/components/common/icons/table.js +0 -46
- package/src/components/common/icons/trash.js +0 -51
- package/src/components/common/icons/upload.js +0 -44
- package/src/components/common/icons/vert-dots.js +0 -50
- package/src/components/common/icons/vert-three-dots.js +0 -45
- package/src/components/common/icons/warning.js +0 -46
- package/src/components/common/image-preview.js +0 -111
- package/src/components/common/info-helper.js +0 -84
- package/src/components/common/item-selector/accessor.js +0 -45
- package/src/components/common/item-selector/chickleted-input.js +0 -143
- package/src/components/common/item-selector/dropdown-list.js +0 -258
- package/src/components/common/item-selector/item-selector.js +0 -360
- package/src/components/common/item-selector/typeahead.js +0 -507
- package/src/components/common/line-chart.js +0 -134
- package/src/components/common/loading-spinner.js +0 -64
- package/src/components/common/logo.js +0 -92
- package/src/components/common/map-layer-selector.d.ts +0 -10
- package/src/components/common/map-layer-selector.js +0 -54
- package/src/components/common/modal.js +0 -233
- package/src/components/common/portaled.js +0 -264
- package/src/components/common/progress-bar.d.ts +0 -13
- package/src/components/common/progress-bar.js +0 -49
- package/src/components/common/range-brush.js +0 -256
- package/src/components/common/range-plot.js +0 -139
- package/src/components/common/range-slider.js +0 -299
- package/src/components/common/slider/mouse-event.js +0 -97
- package/src/components/common/slider/slider-bar-handle.js +0 -97
- package/src/components/common/slider/slider-handle.js +0 -181
- package/src/components/common/slider/slider.js +0 -213
- package/src/components/common/styled-components.js +0 -657
- package/src/components/common/switch.js +0 -50
- package/src/components/common/time-range-slider-time-title.js +0 -76
- package/src/components/common/time-range-slider.js +0 -163
- package/src/components/common/time-slider-marker.js +0 -168
- package/src/components/common/toolbar-item.d.ts +0 -14
- package/src/components/common/toolbar-item.js +0 -83
- package/src/components/common/toolbar.js +0 -45
- package/src/components/common/vertical-toolbar.js +0 -35
- package/src/components/container.js +0 -173
- package/src/components/context.d.ts +0 -10
- package/src/components/context.js +0 -32
- package/src/components/editor/editor.js +0 -218
- package/src/components/editor/feature-action-panel.js +0 -143
- package/src/components/editor/feature-styles.js +0 -75
- package/src/components/editor/handle-style.js +0 -89
- package/src/components/filters/filter-panels/filter-panel-types.d.ts +0 -28
- package/src/components/filters/filter-panels/filter-panel-with-field-select.js +0 -124
- package/src/components/filters/filter-panels/multi-select-filter-panel.js +0 -75
- package/src/components/filters/filter-panels/new-filter-panel.js +0 -99
- package/src/components/filters/filter-panels/polygon-filter-panel.js +0 -96
- package/src/components/filters/filter-panels/range-filter-panel.js +0 -75
- package/src/components/filters/filter-panels/single-select-filter-panel.js +0 -75
- package/src/components/filters/filter-panels/time-range-filter-panel.js +0 -95
- package/src/components/filters/multi-select-filter.js +0 -36
- package/src/components/filters/polygon-filter.d.ts +0 -13
- package/src/components/filters/polygon-filter.js +0 -73
- package/src/components/filters/range-filter.js +0 -43
- package/src/components/filters/single-select-filter.js +0 -49
- package/src/components/filters/time-range-filter.js +0 -68
- package/src/components/filters/time-widget.js +0 -228
- package/src/components/geocoder/geocoder.d.ts +0 -33
- package/src/components/geocoder/geocoder.js +0 -272
- package/src/components/geocoder-panel.js +0 -191
- package/src/components/index.js +0 -247
- package/src/components/injector.js +0 -161
- package/src/components/kepler-gl.js +0 -525
- package/src/components/map/coordinate-info.js +0 -53
- package/src/components/map/layer-hover-info.d.ts +0 -12
- package/src/components/map/layer-hover-info.js +0 -185
- package/src/components/map/layer-selector-panel.d.ts +0 -16
- package/src/components/map/layer-selector-panel.js +0 -106
- package/src/components/map/locale-panel.d.ts +0 -12
- package/src/components/map/locale-panel.js +0 -91
- package/src/components/map/map-control-panel.d.ts +0 -11
- package/src/components/map/map-control-panel.js +0 -98
- package/src/components/map/map-control-tooltip.d.ts +0 -8
- package/src/components/map/map-control-tooltip.js +0 -40
- package/src/components/map/map-control.d.ts +0 -37
- package/src/components/map/map-control.js +0 -100
- package/src/components/map/map-draw-panel.d.ts +0 -16
- package/src/components/map/map-draw-panel.js +0 -125
- package/src/components/map/map-legend-panel.d.ts +0 -20
- package/src/components/map/map-legend-panel.js +0 -100
- package/src/components/map/map-legend.d.ts +0 -58
- package/src/components/map/map-legend.js +0 -228
- package/src/components/map/map-popover.d.ts +0 -28
- package/src/components/map/map-popover.js +0 -250
- package/src/components/map/split-map-button.d.ts +0 -19
- package/src/components/map/split-map-button.js +0 -82
- package/src/components/map/toggle-3d-button.d.ts +0 -16
- package/src/components/map/toggle-3d-button.js +0 -75
- package/src/components/map-container.d.ts +0 -18
- package/src/components/map-container.js +0 -502
- package/src/components/maps-layout.d.ts +0 -5
- package/src/components/maps-layout.js +0 -40
- package/src/components/modal-container.d.ts +0 -38
- package/src/components/modal-container.js +0 -545
- package/src/components/modals/add-map-style-modal.js +0 -301
- package/src/components/modals/cloud-tile.js +0 -147
- package/src/components/modals/data-table-modal.js +0 -217
- package/src/components/modals/delete-data-modal.js +0 -48
- package/src/components/modals/error-display.js +0 -39
- package/src/components/modals/export-data-modal.js +0 -193
- package/src/components/modals/export-image-modal.d.ts +0 -21
- package/src/components/modals/export-image-modal.js +0 -144
- package/src/components/modals/export-map-modal/export-html-map.d.ts +0 -21
- package/src/components/modals/export-map-modal/export-html-map.js +0 -145
- package/src/components/modals/export-map-modal/export-json-map.js +0 -100
- package/src/components/modals/export-map-modal/export-map-modal.js +0 -114
- package/src/components/modals/image-modal-container.d.ts +0 -13
- package/src/components/modals/image-modal-container.js +0 -76
- package/src/components/modals/load-data-modal.d.ts +0 -30
- package/src/components/modals/load-data-modal.js +0 -94
- package/src/components/modals/load-storage-map.js +0 -381
- package/src/components/modals/loading-dialog.js +0 -69
- package/src/components/modals/modal-tabs.js +0 -126
- package/src/components/modals/overwrite-map-modal.d.ts +0 -18
- package/src/components/modals/overwrite-map-modal.js +0 -97
- package/src/components/modals/provider-modal-container.d.ts +0 -12
- package/src/components/modals/provider-modal-container.js +0 -60
- package/src/components/modals/save-map-modal.d.ts +0 -32
- package/src/components/modals/save-map-modal.js +0 -244
- package/src/components/modals/share-map-modal.js +0 -208
- package/src/components/modals/status-panel.js +0 -95
- package/src/components/modals/storage-map-viewer.js +0 -177
- package/src/components/notification-panel/notification-item.js +0 -132
- package/src/components/notification-panel.js +0 -72
- package/src/components/plot-container.js +0 -228
- package/src/components/side-panel/common/dataset-info.js +0 -45
- package/src/components/side-panel/common/dataset-tag.js +0 -55
- package/src/components/side-panel/common/dataset-title.js +0 -146
- package/src/components/side-panel/common/source-data-catalog.js +0 -61
- package/src/components/side-panel/common/source-data-selector.js +0 -79
- package/src/components/side-panel/filter-manager.js +0 -105
- package/src/components/side-panel/filter-panel/filter-panel-header.js +0 -83
- package/src/components/side-panel/filter-panel/filter-panel.js +0 -126
- package/src/components/side-panel/interaction-manager.js +0 -46
- package/src/components/side-panel/interaction-panel/brush-config.js +0 -51
- package/src/components/side-panel/interaction-panel/interaction-panel.js +0 -115
- package/src/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +0 -199
- package/src/components/side-panel/interaction-panel/tooltip-config.js +0 -190
- package/src/components/side-panel/layer-manager.js +0 -290
- package/src/components/side-panel/layer-panel/color-palette.js +0 -90
- package/src/components/side-panel/layer-panel/color-range-selector.js +0 -353
- package/src/components/side-panel/layer-panel/color-selector.js +0 -196
- package/src/components/side-panel/layer-panel/column-selector.js +0 -70
- package/src/components/side-panel/layer-panel/custom-palette.js +0 -296
- package/src/components/side-panel/layer-panel/custom-picker.js +0 -88
- package/src/components/side-panel/layer-panel/dimension-scale-selector.js +0 -48
- package/src/components/side-panel/layer-panel/layer-column-config.js +0 -113
- package/src/components/side-panel/layer-panel/layer-config-group.js +0 -237
- package/src/components/side-panel/layer-panel/layer-panel-header.js +0 -236
- package/src/components/side-panel/layer-panel/layer-panel.js +0 -171
- package/src/components/side-panel/layer-panel/layer-type-dropdown-list.js +0 -105
- package/src/components/side-panel/layer-panel/layer-type-list-item.js +0 -83
- package/src/components/side-panel/layer-panel/layer-type-selector.js +0 -89
- package/src/components/side-panel/layer-panel/single-color-palette.js +0 -98
- package/src/components/side-panel/layer-panel/text-label-panel.js +0 -179
- package/src/components/side-panel/layer-panel/vis-config-by-field-selector.js +0 -163
- package/src/components/side-panel/layer-panel/vis-config-slider.js +0 -82
- package/src/components/side-panel/layer-panel/vis-config-switch.js +0 -87
- package/src/components/side-panel/map-manager.js +0 -114
- package/src/components/side-panel/map-style-panel/map-layer-selector.js +0 -128
- package/src/components/side-panel/map-style-panel/map-style-selector.js +0 -111
- package/src/components/side-panel/panel-dropdown.js +0 -53
- package/src/components/side-panel/panel-header-action.js +0 -106
- package/src/components/side-panel/panel-header.js +0 -321
- package/src/components/side-panel/panel-tab.js +0 -62
- package/src/components/side-panel/panel-title.js +0 -32
- package/src/components/side-panel/panel-toggle.js +0 -70
- package/src/components/side-panel/side-bar.js +0 -136
- package/src/components/side-panel.d.ts +0 -33
- package/src/components/side-panel.js +0 -253
- package/src/connect/keplergl-connect.js +0 -47
- package/src/connect/with-local-selector.d.ts +0 -11
- package/src/connect/with-local-selector.js +0 -67
- package/src/constants/action-types.d.ts +0 -135
- package/src/constants/action-types.js +0 -184
- package/src/constants/color-ranges.js +0 -72
- package/src/constants/default-settings.js +0 -994
- package/src/deckgl-layers/3d-building-layer/3d-building-layer.js +0 -56
- package/src/deckgl-layers/3d-building-layer/3d-building-utils.js +0 -192
- package/src/deckgl-layers/column-layer/enhanced-column-layer.js +0 -63
- package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +0 -70
- package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +0 -70
- package/src/deckgl-layers/layer-utils/cluster-utils.js +0 -76
- package/src/deckgl-layers/layer-utils/cpu-aggregator.js +0 -583
- package/src/deckgl-layers/layer-utils/shader-utils.js +0 -41
- package/src/deckgl-layers/line-layer/line-layer.js +0 -122
- package/src/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +0 -57
- package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.js +0 -85
- package/src/layers/aggregation-layer.js +0 -356
- package/src/layers/arc-layer/arc-layer-icon.js +0 -67
- package/src/layers/arc-layer/arc-layer.js +0 -221
- package/src/layers/base-layer.js +0 -1545
- package/src/layers/cluster-layer/cluster-layer.js +0 -125
- package/src/layers/geojson-layer/geojson-layer-icon.js +0 -68
- package/src/layers/geojson-layer/geojson-layer.js +0 -344
- package/src/layers/geojson-layer/geojson-utils.js +0 -179
- package/src/layers/grid-layer/grid-layer-icon.js +0 -53
- package/src/layers/grid-layer/grid-layer.js +0 -95
- package/src/layers/grid-layer/grid-utils.js +0 -71
- package/src/layers/h3-hexagon-layer/h3-hexagon-layer.js +0 -264
- package/src/layers/h3-hexagon-layer/h3-utils.js +0 -65
- package/src/layers/heatmap-layer/heatmap-layer.js +0 -226
- package/src/layers/hexagon-layer/hexagon-layer.js +0 -95
- package/src/layers/hexagon-layer/hexagon-utils.js +0 -63
- package/src/layers/icon-layer/icon-info-modal.js +0 -155
- package/src/layers/icon-layer/icon-layer.js +0 -324
- package/src/layers/index.d.ts +0 -128
- package/src/layers/index.js +0 -72
- package/src/layers/layer-factory.d.ts +0 -149
- package/src/layers/layer-factory.js +0 -480
- package/src/layers/layer-text-label.js +0 -62
- package/src/layers/layer-update.js +0 -71
- package/src/layers/line-layer/line-layer.js +0 -161
- package/src/layers/mapbox-utils.js +0 -195
- package/src/layers/mapboxgl-layer.js +0 -154
- package/src/layers/point-layer/point-layer.js +0 -414
- package/src/layers/s2-geometry-layer/s2-geometry-layer.js +0 -265
- package/src/layers/s2-geometry-layer/s2-utils.js +0 -36
- package/src/layers/scenegraph-layer/scenegraph-layer.js +0 -182
- package/src/layers/trip-layer/trip-layer.js +0 -295
- package/src/layers/trip-layer/trip-utils.js +0 -169
- package/src/localization/en.js +0 -504
- package/src/localization/formatted-message.js +0 -33
- package/src/localization/index.js +0 -32
- package/src/localization/locales.js +0 -46
- package/src/middleware/index.js +0 -34
- package/src/processors/data-processor.d.ts +0 -57
- package/src/processors/data-processor.js +0 -684
- package/src/processors/file-handler.d.ts +0 -46
- package/src/processors/file-handler.js +0 -220
- package/src/processors/index.js +0 -44
- package/src/reducers/combined-updaters.d.ts +0 -26
- package/src/reducers/combined-updaters.js +0 -198
- package/src/reducers/composer-helpers.d.ts +0 -32
- package/src/reducers/composer-helpers.js +0 -70
- package/src/reducers/core.d.ts +0 -25
- package/src/reducers/core.js +0 -97
- package/src/reducers/index.d.ts +0 -118
- package/src/reducers/index.js +0 -53
- package/src/reducers/map-state-updaters.d.ts +0 -64
- package/src/reducers/map-state-updaters.js +0 -224
- package/src/reducers/map-state.js +0 -47
- package/src/reducers/map-style-updaters.d.ts +0 -76
- package/src/reducers/map-style-updaters.js +0 -541
- package/src/reducers/map-style.js +0 -53
- package/src/reducers/provider-state-updaters.d.ts +0 -88
- package/src/reducers/provider-state-updaters.js +0 -428
- package/src/reducers/provider-state.js +0 -53
- package/src/reducers/root.js +0 -230
- package/src/reducers/types.d.ts +0 -10
- package/src/reducers/ui-state-updaters.d.ts +0 -198
- package/src/reducers/ui-state-updaters.js +0 -766
- package/src/reducers/ui-state.js +0 -73
- package/src/reducers/vis-state-merger.d.ts +0 -78
- package/src/reducers/vis-state-merger.js +0 -557
- package/src/reducers/vis-state-selectors.js +0 -35
- package/src/reducers/vis-state-updaters.d.ts +0 -534
- package/src/reducers/vis-state-updaters.js +0 -2137
- package/src/reducers/vis-state.js +0 -155
- package/src/schemas/dataset-schema.js +0 -141
- package/src/schemas/index.d.ts +0 -24
- package/src/schemas/index.js +0 -42
- package/src/schemas/schema-manager.d.ts +0 -229
- package/src/schemas/schema-manager.js +0 -228
- package/src/schemas/schema.d.ts +0 -47
- package/src/schemas/schema.js +0 -90
- package/src/schemas/versions.d.ts +0 -23
- package/src/schemas/vis-state-schema.js +0 -754
- package/src/styles/base.js +0 -1620
- package/src/styles/media-breakpoints.js +0 -47
- package/src/typedefs/README.md +0 -3
- package/src/typedefs/deck.gl__core.d.ts +0 -64
- package/src/typedefs/deck.gl__mesh-layers.d.ts +0 -33
- package/src/utils/aggregate-utils.js +0 -71
- package/src/utils/color-utils.js +0 -115
- package/src/utils/data-scale-utils.d.ts +0 -26
- package/src/utils/data-scale-utils.js +0 -61
- package/src/utils/data-utils.d.ts +0 -46
- package/src/utils/data-utils.js +0 -447
- package/src/utils/dataset-utils.d.ts +0 -10
- package/src/utils/dataset-utils.js +0 -255
- package/src/utils/dom-to-image.js +0 -533
- package/src/utils/dom-utils.js +0 -354
- package/src/utils/export-utils.js +0 -247
- package/src/utils/filter-utils.d.ts +0 -192
- package/src/utils/filter-utils.js +0 -1114
- package/src/utils/gl-utils.js +0 -42
- package/src/utils/gpu-filter-utils.d.ts +0 -28
- package/src/utils/gpu-filter-utils.js +0 -253
- package/src/utils/index.d.ts +0 -5
- package/src/utils/index.js +0 -55
- package/src/utils/interaction-utils.d.ts +0 -36
- package/src/utils/interaction-utils.js +0 -185
- package/src/utils/layer-utils.d.ts +0 -78
- package/src/utils/layer-utils.js +0 -206
- package/src/utils/map-style-utils/mapbox-gl-style-editor.js +0 -201
- package/src/utils/notifications-utils.js +0 -83
- package/src/utils/observe-dimensions.d.ts +0 -18
- package/src/utils/observe-dimensions.js +0 -115
- package/src/utils/split-map-utils.js +0 -104
- package/src/utils/table-utils/data-container-utils.d.ts +0 -43
- package/src/utils/table-utils/data-container-utils.js +0 -61
- package/src/utils/table-utils/data-row.d.ts +0 -65
- package/src/utils/table-utils/data-row.js +0 -54
- package/src/utils/table-utils/index.d.ts +0 -1
- package/src/utils/table-utils/indexed-data-container.d.ts +0 -26
- package/src/utils/table-utils/indexed-data-container.js +0 -152
- package/src/utils/table-utils/kepler-table.d.ts +0 -114
- package/src/utils/table-utils/kepler-table.js +0 -508
- package/src/utils/table-utils/row-data-container.d.ts +0 -30
- package/src/utils/table-utils/row-data-container.js +0 -151
- package/src/utils/utils.js +0 -202
- /package/src/actions/{index.js → index.ts} +0 -0
- /package/src/components/common/data-table/{canvas.js → canvas.tsx} +0 -0
- /package/src/components/editor/{constants.js → constants.ts} +0 -0
- /package/src/components/filters/{components.js → components.ts} +0 -0
- /package/src/components/filters/{index.js → index.ts} +0 -0
- /package/src/components/map/{map-control-toolbar.js → map-control-toolbar.tsx} +0 -0
- /package/src/components/modals/export-map-modal/{components.js → components.tsx} +0 -0
- /package/src/components/modals/{modal-dialog.js → modal-dialog.tsx} +0 -0
- /package/src/components/side-panel/{cloud-storage-dropdown.js → cloud-storage-dropdown.tsx} +0 -0
- /package/src/components/side-panel/{custom-panel.js → custom-panel.tsx} +0 -0
- /package/src/components/side-panel/layer-panel/{layer-configurator.js → layer-configurator.tsx} +0 -0
- /package/src/constants/{color-palette.js → color-palette.ts} +0 -0
- /package/src/constants/{custom-color-ranges.js → custom-color-ranges.ts} +0 -0
- /package/src/constants/{index.js → index.ts} +0 -0
- /package/src/constants/{keyevent.js → keyevent.ts} +0 -0
- /package/src/constants/{tooltip.js → tooltip.ts} +0 -0
- /package/src/constants/{user-feedbacks.js → user-feedbacks.ts} +0 -0
- /package/src/constants/{user-guides.js → user-guides.ts} +0 -0
- /package/src/layers/cluster-layer/{cluster-layer-icon.js → cluster-layer-icon.tsx} +0 -0
- /package/src/layers/{default-layer-icon.js → default-layer-icon.tsx} +0 -0
- /package/src/layers/h3-hexagon-layer/{h3-hexagon-layer-icon.js → h3-hexagon-layer-icon.tsx} +0 -0
- /package/src/layers/heatmap-layer/{heatmap-layer-icon.js → heatmap-layer-icon.tsx} +0 -0
- /package/src/layers/hexagon-layer/{hexagon-layer-icon.js → hexagon-layer-icon.tsx} +0 -0
- /package/src/layers/icon-layer/{icon-layer-icon.js → icon-layer-icon.tsx} +0 -0
- /package/src/layers/line-layer/{line-layer-icon.js → line-layer-icon.tsx} +0 -0
- /package/src/layers/point-layer/{point-layer-icon.js → point-layer-icon.tsx} +0 -0
- /package/src/layers/s2-geometry-layer/{s2-layer-icon.js → s2-layer-icon.tsx} +0 -0
- /package/src/layers/scenegraph-layer/{scenegraph-info-modal.js → scenegraph-info-modal.tsx} +0 -0
- /package/src/layers/scenegraph-layer/{scenegraph-layer-icon.js → scenegraph-layer-icon.tsx} +0 -0
- /package/src/layers/trip-layer/{trip-info-modal.js → trip-info-modal.tsx} +0 -0
- /package/src/layers/trip-layer/{trip-layer-icon.js → trip-layer-icon.tsx} +0 -0
- /package/src/layers/{types.js → types.ts} +0 -0
- /package/src/reducers/{composers.js → composers.ts} +0 -0
- /package/src/schemas/{map-state-schema.js → map-state-schema.ts} +0 -0
- /package/src/schemas/{map-style-schema.js → map-style-schema.ts} +0 -0
- /package/src/schemas/{schema-utils.js → schema-utils.ts} +0 -0
- /package/src/schemas/{versions.js → versions.ts} +0 -0
- /package/src/styles/{index.js → index.ts} +0 -0
- /package/src/tasks/{tasks.js → tasks.ts} +0 -0
- /package/src/templates/{export-map-html.js → export-map-html.ts} +0 -0
- /package/src/utils/{locale-utils.js → locale-utils.ts} +0 -0
- /package/src/utils/{map-info-utils.js → map-info-utils.ts} +0 -0
- /package/src/utils/map-style-utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
- /package/src/utils/{mapbox-utils.js → mapbox-utils.ts} +0 -0
- /package/src/utils/{projection-utils.js → projection-utils.ts} +0 -0
- /package/src/utils/{searcher-utils.js → searcher-utils.ts} +0 -0
- /package/src/utils/table-utils/{data-container-interface.d.ts → data-container-interface.ts} +0 -0
- /package/src/utils/table-utils/{index.js → index.ts} +0 -0
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _locales = require("../locales");
|
|
13
|
+
|
|
14
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
+
|
|
16
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
17
|
+
|
|
18
|
+
var _default = {
|
|
19
|
+
property: {
|
|
20
|
+
weight: '权重',
|
|
21
|
+
label: '标签',
|
|
22
|
+
fillColor: '填充色',
|
|
23
|
+
color: '颜色',
|
|
24
|
+
coverage: '覆盖范围',
|
|
25
|
+
strokeColor: '线条颜色',
|
|
26
|
+
radius: '半径',
|
|
27
|
+
outline: '轮廓线',
|
|
28
|
+
stroke: '线条粗细',
|
|
29
|
+
density: '密度',
|
|
30
|
+
height: '高度',
|
|
31
|
+
sum: '总和',
|
|
32
|
+
pointCount: '点数'
|
|
33
|
+
},
|
|
34
|
+
placeholder: {
|
|
35
|
+
search: '搜索',
|
|
36
|
+
selectField: '选择区域',
|
|
37
|
+
yAxis: 'Y轴',
|
|
38
|
+
selectType: '选择类型',
|
|
39
|
+
selectValue: '选择值',
|
|
40
|
+
enterValue: '输入值',
|
|
41
|
+
empty: '未选择'
|
|
42
|
+
},
|
|
43
|
+
misc: {
|
|
44
|
+
by: '',
|
|
45
|
+
valuesIn: '值包含',
|
|
46
|
+
valueEquals: '值等于',
|
|
47
|
+
dataSource: '数据源',
|
|
48
|
+
brushRadius: '画笔半径 (km)',
|
|
49
|
+
empty: ' '
|
|
50
|
+
},
|
|
51
|
+
mapLayers: {
|
|
52
|
+
title: '图层',
|
|
53
|
+
label: '标签',
|
|
54
|
+
road: '道路',
|
|
55
|
+
border: '边界线',
|
|
56
|
+
building: '建筑物',
|
|
57
|
+
water: '水',
|
|
58
|
+
land: '地面',
|
|
59
|
+
'3dBuilding': '3D建筑'
|
|
60
|
+
},
|
|
61
|
+
panel: {
|
|
62
|
+
text: {
|
|
63
|
+
label: '标签',
|
|
64
|
+
labelWithId: '标签 {labelId}',
|
|
65
|
+
fontSize: '字体大小',
|
|
66
|
+
fontColor: '字体颜色',
|
|
67
|
+
textAnchor: '文本锚',
|
|
68
|
+
alignment: '对齐方式',
|
|
69
|
+
addMoreLabel: '添加更多标签'
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
sidebar: {
|
|
73
|
+
panels: {
|
|
74
|
+
layer: '图层',
|
|
75
|
+
filter: '过滤器',
|
|
76
|
+
interaction: '交互',
|
|
77
|
+
basemap: '底图'
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
layer: {
|
|
81
|
+
required: '必填*',
|
|
82
|
+
radius: '半径',
|
|
83
|
+
color: '颜色',
|
|
84
|
+
fillColor: '填充色',
|
|
85
|
+
outline: '轮廓线',
|
|
86
|
+
weight: '权重',
|
|
87
|
+
propertyBasedOn: '{property}的基准',
|
|
88
|
+
coverage: '覆盖范围',
|
|
89
|
+
stroke: '线条粗细',
|
|
90
|
+
strokeWidth: '线条宽度',
|
|
91
|
+
strokeColor: '线条颜色',
|
|
92
|
+
basic: '基础设置',
|
|
93
|
+
trailLength: '轨迹长度',
|
|
94
|
+
trailLengthDescription: '轨迹淡出的秒数',
|
|
95
|
+
newLayer: '新建图层',
|
|
96
|
+
elevationByDescription: '关闭时,高度取决于点数',
|
|
97
|
+
colorByDescription: '关闭时,颜色取决于点数',
|
|
98
|
+
aggregateBy: '{field}聚合如下: ',
|
|
99
|
+
'3DModel': '3D模型',
|
|
100
|
+
'3DModelOptions': '3D模型选项',
|
|
101
|
+
type: {
|
|
102
|
+
point: 'point',
|
|
103
|
+
arc: 'arc',
|
|
104
|
+
line: 'line',
|
|
105
|
+
grid: 'grid',
|
|
106
|
+
hexbin: 'hexbin',
|
|
107
|
+
polygon: 'polygon',
|
|
108
|
+
geojson: 'geojson',
|
|
109
|
+
cluster: 'cluster',
|
|
110
|
+
icon: 'icon',
|
|
111
|
+
heatmap: 'heatmap',
|
|
112
|
+
hexagon: 'hexagon',
|
|
113
|
+
hexagonid: 'H3',
|
|
114
|
+
trip: 'trip',
|
|
115
|
+
s2: 'S2',
|
|
116
|
+
'3d': '3D'
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
layerVisConfigs: {
|
|
120
|
+
angle: '角度',
|
|
121
|
+
strokeWidth: '线条宽度',
|
|
122
|
+
strokeWidthRange: '线条宽度范围',
|
|
123
|
+
radius: '半径',
|
|
124
|
+
fixedRadius: '以米为单位固定半径',
|
|
125
|
+
fixedRadiusDescription: '将半径映射到以米为单位的绝对半径(例: 5 → 5米)',
|
|
126
|
+
radiusRange: '半径范围',
|
|
127
|
+
clusterRadius: '聚类半径',
|
|
128
|
+
radiusRangePixels: '半径范围[像素]',
|
|
129
|
+
opacity: '透明度',
|
|
130
|
+
coverage: '覆盖范围',
|
|
131
|
+
outline: '轮廓',
|
|
132
|
+
colorRange: '色彩范围',
|
|
133
|
+
stroke: '线',
|
|
134
|
+
strokeColor: '线条颜色',
|
|
135
|
+
strokeColorRange: '线条色彩范围',
|
|
136
|
+
targetColor: '目标颜色',
|
|
137
|
+
colorAggregation: '颜色聚合',
|
|
138
|
+
heightAggregation: '高度聚合',
|
|
139
|
+
resolutionRange: '分辨率范围',
|
|
140
|
+
sizeScale: '大小比例',
|
|
141
|
+
worldUnitSize: '世界单位大小',
|
|
142
|
+
elevationScale: '海拔比例',
|
|
143
|
+
enableElevationZoomFactor: '使用高程缩放系数',
|
|
144
|
+
enableElevationZoomFactorDescription: '根据当前缩放系数调整海拔',
|
|
145
|
+
heightScale: '高度比例',
|
|
146
|
+
coverageRange: '覆盖范围',
|
|
147
|
+
highPrecisionRendering: '高精度渲染',
|
|
148
|
+
highPrecisionRenderingDescription: '高精度渲染会导致性能下降',
|
|
149
|
+
height: '高度',
|
|
150
|
+
heightDescription: '点击屏幕右上角的按钮切换到3D视图',
|
|
151
|
+
fill: '填充',
|
|
152
|
+
enablePolygonHeight: '启用多边形高度',
|
|
153
|
+
showWireframe: '显示线框',
|
|
154
|
+
weightIntensity: '加权强度',
|
|
155
|
+
zoomScale: '缩放比例',
|
|
156
|
+
heightRange: '高度范围'
|
|
157
|
+
},
|
|
158
|
+
layerManager: {
|
|
159
|
+
addData: '添加数据',
|
|
160
|
+
addLayer: '添加图层',
|
|
161
|
+
layerBlending: '混合图层'
|
|
162
|
+
},
|
|
163
|
+
mapManager: {
|
|
164
|
+
mapStyle: '地图样式',
|
|
165
|
+
addMapStyle: '添加地图样式',
|
|
166
|
+
'3dBuildingColor': '3D 建筑颜色'
|
|
167
|
+
},
|
|
168
|
+
layerConfiguration: {
|
|
169
|
+
defaultDescription: '根据所选字段计算 {property}',
|
|
170
|
+
howTo: '使用方法'
|
|
171
|
+
},
|
|
172
|
+
filterManager: {
|
|
173
|
+
addFilter: '添加过滤器'
|
|
174
|
+
},
|
|
175
|
+
datasetTitle: {
|
|
176
|
+
showDataTable: '显示数据表',
|
|
177
|
+
removeDataset: '删除数据集'
|
|
178
|
+
},
|
|
179
|
+
datasetInfo: {
|
|
180
|
+
rowCount: '{rowCount}行'
|
|
181
|
+
},
|
|
182
|
+
tooltip: {
|
|
183
|
+
hideLayer: '隐藏图层',
|
|
184
|
+
showLayer: '显示图层',
|
|
185
|
+
hideFeature: '隐藏特征',
|
|
186
|
+
showFeature: '显示特征',
|
|
187
|
+
hide: '隐藏',
|
|
188
|
+
show: '显示',
|
|
189
|
+
removeLayer: '删除图层',
|
|
190
|
+
duplicateLayer: '复制图层',
|
|
191
|
+
layerSettings: '图层设置',
|
|
192
|
+
closePanel: '关闭当前面板',
|
|
193
|
+
switchToDualView: '切换到双地图视图',
|
|
194
|
+
showLegend: '显示图例',
|
|
195
|
+
disable3DMap: '禁用 3D 地图',
|
|
196
|
+
DrawOnMap: '在地图上绘制',
|
|
197
|
+
selectLocale: '选择语言',
|
|
198
|
+
hideLayerPanel: '隐藏图层面板',
|
|
199
|
+
showLayerPanel: '显示图层面板',
|
|
200
|
+
moveToTop: '移至图层顶部',
|
|
201
|
+
selectBaseMapStyle: '选择底图样式',
|
|
202
|
+
"delete": '删除',
|
|
203
|
+
timePlayback: '时空回放',
|
|
204
|
+
cloudStorage: '云存储',
|
|
205
|
+
'3DMap': '3D 地图',
|
|
206
|
+
animationByWindow: '移动时间窗口',
|
|
207
|
+
animationByIncremental: '增量时间窗口',
|
|
208
|
+
speed: '速度',
|
|
209
|
+
play: '播放',
|
|
210
|
+
pause: '暂停',
|
|
211
|
+
reset: '重置'
|
|
212
|
+
},
|
|
213
|
+
toolbar: _objectSpread({
|
|
214
|
+
exportImage: '导出图片',
|
|
215
|
+
exportData: '导出数据',
|
|
216
|
+
exportMap: '导出地图',
|
|
217
|
+
shareMapURL: '分享地图网址',
|
|
218
|
+
saveMap: '保存地图',
|
|
219
|
+
select: '选择',
|
|
220
|
+
polygon: 'polygon',
|
|
221
|
+
rectangle: 'rectangle',
|
|
222
|
+
hide: '隐藏',
|
|
223
|
+
show: '显示'
|
|
224
|
+
}, _locales.LOCALES),
|
|
225
|
+
editor: {
|
|
226
|
+
filterLayer: '过滤图层',
|
|
227
|
+
copyGeometry: '复制几何图形'
|
|
228
|
+
},
|
|
229
|
+
modal: {
|
|
230
|
+
title: {
|
|
231
|
+
deleteDataset: '删除数据集',
|
|
232
|
+
addDataToMap: '添加数据到地图',
|
|
233
|
+
exportImage: '导出图片',
|
|
234
|
+
exportData: '导出数据',
|
|
235
|
+
exportMap: '导出地图',
|
|
236
|
+
addCustomMapboxStyle: '添加自定义地图',
|
|
237
|
+
saveMap: '保存地图',
|
|
238
|
+
shareURL: '分享网址'
|
|
239
|
+
},
|
|
240
|
+
button: {
|
|
241
|
+
"delete": '删除',
|
|
242
|
+
download: '下载',
|
|
243
|
+
"export": '出口',
|
|
244
|
+
addStyle: '添加样式',
|
|
245
|
+
save: '保存',
|
|
246
|
+
defaultCancel: '取消',
|
|
247
|
+
defaultConfirm: '确认'
|
|
248
|
+
},
|
|
249
|
+
exportImage: {
|
|
250
|
+
ratioTitle: '比率',
|
|
251
|
+
ratioDescription: '选择不同用途的比例。',
|
|
252
|
+
ratioOriginalScreen: '原始屏幕',
|
|
253
|
+
ratioCustom: '自定义',
|
|
254
|
+
ratio4_3: '4:3',
|
|
255
|
+
ratio16_9: '16:9',
|
|
256
|
+
resolutionTitle: '分辨率',
|
|
257
|
+
resolutionDescription: '高分辨率更适合打印。',
|
|
258
|
+
mapLegendTitle: '地图图例',
|
|
259
|
+
mapLegendAdd: '在地图上添加图例'
|
|
260
|
+
},
|
|
261
|
+
exportData: {
|
|
262
|
+
datasetTitle: '数据集',
|
|
263
|
+
datasetSubtitle: '选择要导出的数据集',
|
|
264
|
+
allDatasets: '全部',
|
|
265
|
+
dataTypeTitle: '数据类型',
|
|
266
|
+
dataTypeSubtitle: '选择要导出的数据类型',
|
|
267
|
+
filterDataTitle: '过滤数据',
|
|
268
|
+
filterDataSubtitle: '可以选择导出原始数据或过滤后的数据',
|
|
269
|
+
filteredData: '过滤数据',
|
|
270
|
+
unfilteredData: '元数据',
|
|
271
|
+
fileCount: '{fileCount} 个文件',
|
|
272
|
+
rowCount: '{rowCount} 行'
|
|
273
|
+
},
|
|
274
|
+
deleteData: {
|
|
275
|
+
warning: '确认要删除这个数据集。它会影响 {length} 个层'
|
|
276
|
+
},
|
|
277
|
+
addStyle: {
|
|
278
|
+
publishTitle: '2. 如果在步骤1中输入了 mapbox 样式的 url,需要在 mapbox 上发布样式或提供访问令牌(access token)。(可选)',
|
|
279
|
+
publishSubtitle1: '可以在以下位置创建自己的地图样式',
|
|
280
|
+
publishSubtitle2: '并',
|
|
281
|
+
publishSubtitle3: '发布',
|
|
282
|
+
publishSubtitle4: '。',
|
|
283
|
+
publishSubtitle5: '使用私有样式,需粘贴',
|
|
284
|
+
publishSubtitle6: '访问令牌(access token)',
|
|
285
|
+
publishSubtitle7: '。* Kepler.gl 是一个客户端应用程序,数据保留在您的浏览器中。',
|
|
286
|
+
exampleToken: '例) pk.abcdefg.xxxxxx',
|
|
287
|
+
pasteTitle: '1. 粘贴样式 url',
|
|
288
|
+
pasteSubtitle0: '样式 url 可以是 Mapbox 的',
|
|
289
|
+
pasteSubtitle1: '什么是',
|
|
290
|
+
pasteSubtitle2: '样式 URL,',
|
|
291
|
+
pasteSubtitle3: '还可以使用遵从Mapbox GL样式的style.json的url:',
|
|
292
|
+
pasteSubtitle4: 'Mapbox GL 样式规范',
|
|
293
|
+
namingTitle: '3. 命名你的样式'
|
|
294
|
+
},
|
|
295
|
+
shareMap: {
|
|
296
|
+
shareUriTitle: '分享地图网址',
|
|
297
|
+
shareUriSubtitle: '生成分享地图的链接',
|
|
298
|
+
cloudTitle: '云存储',
|
|
299
|
+
cloudSubtitle: '登录并将地图数据上传到个人云存储',
|
|
300
|
+
shareDisclaimer: 'kepler.gl 将创建的地图存储在个人云存储中,因此只有知道 URL 的人才能访问地图及其数据。' + '可以随时使用个人云存储帐户编辑/删除数据文件。',
|
|
301
|
+
gotoPage: '跳转到Kepler.gl的{currentProvider}页面'
|
|
302
|
+
},
|
|
303
|
+
statusPanel: {
|
|
304
|
+
mapUploading: '地图上传中',
|
|
305
|
+
error: '错误'
|
|
306
|
+
},
|
|
307
|
+
saveMap: {
|
|
308
|
+
title: '云存储',
|
|
309
|
+
subtitle: '登录以将地图保存到个人云存储'
|
|
310
|
+
},
|
|
311
|
+
exportMap: {
|
|
312
|
+
formatTitle: '地图的格式',
|
|
313
|
+
formatSubtitle: '选择导出地图的格式',
|
|
314
|
+
html: {
|
|
315
|
+
selection: '将地图导出至交互式的html文件中。',
|
|
316
|
+
tokenTitle: 'Mapbox的访问令牌(access token)',
|
|
317
|
+
tokenSubtitle: '在 html 中使用自己的 Mapbox 访问令牌(access token)(可选)',
|
|
318
|
+
tokenPlaceholder: '粘贴个人的 Mapbox 访问令牌access token)',
|
|
319
|
+
tokenMisuseWarning: '* 如果您不提供自己的令牌,则在我们更换令牌时,地图可能随时无法显示,以免被滥用。',
|
|
320
|
+
tokenDisclaimer: '可以稍后使用以下说明更改 Mapbox 令牌:',
|
|
321
|
+
tokenUpdate: '如何更新现有的地图令牌。',
|
|
322
|
+
modeTitle: '地图模式',
|
|
323
|
+
modeSubtitle1: '选择地图模式。更多的',
|
|
324
|
+
modeSubtitle2: '信息',
|
|
325
|
+
modeDescription: '允许用户{mode}地图',
|
|
326
|
+
read: '阅读',
|
|
327
|
+
edit: '编辑'
|
|
328
|
+
},
|
|
329
|
+
json: {
|
|
330
|
+
configTitle: '地图配置',
|
|
331
|
+
configDisclaimer: '地图配置将包含在 Json 文件中。如果您在自己的应用程序中使用 kepler.gl。您可以复制此配置并将其传递给',
|
|
332
|
+
selection: '将当前地图数据和配置导出到单个 Json 文件中。稍后您可以通过将此文件上传到 kepler.gl 来打开同一张地图。',
|
|
333
|
+
disclaimer: '* 地图配置与加载的数据集相结合。 “dataId”用于将图层、过滤器和工具提示绑定到特定数据集。' + '将此配置传递给 addDataToMap 时,请确保数据集 ID 与此配置中的 dataId/s 匹配。'
|
|
334
|
+
}
|
|
335
|
+
},
|
|
336
|
+
loadingDialog: {
|
|
337
|
+
loading: '加载中...'
|
|
338
|
+
},
|
|
339
|
+
loadData: {
|
|
340
|
+
upload: '上传文件',
|
|
341
|
+
storage: '从存储中加载'
|
|
342
|
+
},
|
|
343
|
+
tripInfo: {
|
|
344
|
+
title: '如何启用移动动画',
|
|
345
|
+
description1: '要路径设置动画,geoJSON 数据必须包含 `LineString` 作为要素几何。此外,LineString 的坐标有四个元素',
|
|
346
|
+
code: ' [经度,纬度,高程,时间戳] ',
|
|
347
|
+
description2: '最后一个元素是时间戳。有效的时间戳格式包括以秒为单位的 unix,例如`1564184363`或以毫秒为单位的`1564184363000`。',
|
|
348
|
+
example: '例:'
|
|
349
|
+
},
|
|
350
|
+
iconInfo: {
|
|
351
|
+
title: '如何绘制图标',
|
|
352
|
+
description1: '在您的 csv 中,创建一列,将您要绘制的图标的名称放入其中。如果不想在某些点上显示图标,可以将单元格留空。当列被命名为',
|
|
353
|
+
code: '图标',
|
|
354
|
+
description2: '时,kepler.gl 会自动为你创建一个图标层。',
|
|
355
|
+
example: '例:',
|
|
356
|
+
icons: '图标一览'
|
|
357
|
+
},
|
|
358
|
+
storageMapViewer: {
|
|
359
|
+
lastModified: '上次修改 {lastUpdated} 前',
|
|
360
|
+
back: '返回'
|
|
361
|
+
},
|
|
362
|
+
overwriteMap: {
|
|
363
|
+
title: '正在保存地图...',
|
|
364
|
+
alreadyExists: '已经存在于 {mapSaved} 中。你想覆盖吗?'
|
|
365
|
+
},
|
|
366
|
+
loadStorageMap: {
|
|
367
|
+
back: '返回',
|
|
368
|
+
goToPage: '跳转到 Kepler.gl 的 {displayName} 页面',
|
|
369
|
+
storageMaps: '存储 / 地図',
|
|
370
|
+
noSavedMaps: '还没有保存的地图'
|
|
371
|
+
}
|
|
372
|
+
},
|
|
373
|
+
header: {
|
|
374
|
+
visibleLayers: '可见图层',
|
|
375
|
+
layerLegend: '图层图例'
|
|
376
|
+
},
|
|
377
|
+
interactions: {
|
|
378
|
+
tooltip: '工具提示',
|
|
379
|
+
brush: '刷',
|
|
380
|
+
coordinate: '坐标',
|
|
381
|
+
geocoder: '地理编码器'
|
|
382
|
+
},
|
|
383
|
+
layerBlending: {
|
|
384
|
+
title: '图层混合',
|
|
385
|
+
additive: 'additive',
|
|
386
|
+
normal: 'normal',
|
|
387
|
+
subtractive: 'subtractive'
|
|
388
|
+
},
|
|
389
|
+
columns: {
|
|
390
|
+
title: '列',
|
|
391
|
+
lat: '纬度',
|
|
392
|
+
lng: '经度',
|
|
393
|
+
altitude: '海拔',
|
|
394
|
+
icon: '图标',
|
|
395
|
+
geojson: 'geojson',
|
|
396
|
+
token: '令牌',
|
|
397
|
+
arc: {
|
|
398
|
+
lat0: '起点 纬度',
|
|
399
|
+
lng0: '起点 经度',
|
|
400
|
+
lat1: '终点 纬度',
|
|
401
|
+
lng1: '终点 经度'
|
|
402
|
+
},
|
|
403
|
+
grid: {
|
|
404
|
+
worldUnitSize: '网格大小 (km)'
|
|
405
|
+
},
|
|
406
|
+
hexagon: {
|
|
407
|
+
worldUnitSize: '六边形半径 (km)'
|
|
408
|
+
},
|
|
409
|
+
hex_id: 'hex id'
|
|
410
|
+
},
|
|
411
|
+
color: {
|
|
412
|
+
customPalette: '自定义调色板',
|
|
413
|
+
steps: '步骤',
|
|
414
|
+
type: '类型',
|
|
415
|
+
reversed: '反转'
|
|
416
|
+
},
|
|
417
|
+
scale: {
|
|
418
|
+
colorScale: '色阶',
|
|
419
|
+
sizeScale: '大小比例',
|
|
420
|
+
strokeScale: '描边比例',
|
|
421
|
+
scale: '规模'
|
|
422
|
+
},
|
|
423
|
+
fileUploader: {
|
|
424
|
+
message: '将您的文件拖放到此处(可多个)',
|
|
425
|
+
chromeMessage: '*对于 Chrome 用户:文件大小最大为 250mb。如果需要上传更多文件,请尝试使用 Safari。',
|
|
426
|
+
disclaimer: '* kepler.gl 在客户端上工作。数据仅保留在您自己的设备/浏览器中。' + '没有信息或地图数据被发送到任何服务器。',
|
|
427
|
+
configUploadMessage: '上传 {fileFormatNames} 或保存的地图 **Json**。阅读更多关于[**支持的文件格式**]',
|
|
428
|
+
browseFiles: '浏览你的文件',
|
|
429
|
+
uploading: '上传',
|
|
430
|
+
fileNotSupported: '不支持文件 {errorFiles}。',
|
|
431
|
+
or: '或'
|
|
432
|
+
},
|
|
433
|
+
geocoder: {
|
|
434
|
+
title: '输入地址或坐标(例: 37.79,-122.40)'
|
|
435
|
+
},
|
|
436
|
+
fieldSelector: {
|
|
437
|
+
clearAll: '清除所有',
|
|
438
|
+
formatting: '格式化'
|
|
439
|
+
},
|
|
440
|
+
compare: {
|
|
441
|
+
modeLabel: '比较模式',
|
|
442
|
+
typeLabel: '比较类型',
|
|
443
|
+
types: {
|
|
444
|
+
absolute: '绝对',
|
|
445
|
+
relative: '相对'
|
|
446
|
+
}
|
|
447
|
+
},
|
|
448
|
+
mapPopover: {
|
|
449
|
+
primary: '主要'
|
|
450
|
+
},
|
|
451
|
+
density: '密度',
|
|
452
|
+
'Bug Report': '错误报告',
|
|
453
|
+
'User Guide': '用户指南',
|
|
454
|
+
Save: '保存',
|
|
455
|
+
Share: '分享'
|
|
456
|
+
};
|
|
457
|
+
exports["default"] = _default;
|
|
458
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbGl6YXRpb24vdHJhbnNsYXRpb25zL2NuLnRzIl0sIm5hbWVzIjpbInByb3BlcnR5Iiwid2VpZ2h0IiwibGFiZWwiLCJmaWxsQ29sb3IiLCJjb2xvciIsImNvdmVyYWdlIiwic3Ryb2tlQ29sb3IiLCJyYWRpdXMiLCJvdXRsaW5lIiwic3Ryb2tlIiwiZGVuc2l0eSIsImhlaWdodCIsInN1bSIsInBvaW50Q291bnQiLCJwbGFjZWhvbGRlciIsInNlYXJjaCIsInNlbGVjdEZpZWxkIiwieUF4aXMiLCJzZWxlY3RUeXBlIiwic2VsZWN0VmFsdWUiLCJlbnRlclZhbHVlIiwiZW1wdHkiLCJtaXNjIiwiYnkiLCJ2YWx1ZXNJbiIsInZhbHVlRXF1YWxzIiwiZGF0YVNvdXJjZSIsImJydXNoUmFkaXVzIiwibWFwTGF5ZXJzIiwidGl0bGUiLCJyb2FkIiwiYm9yZGVyIiwiYnVpbGRpbmciLCJ3YXRlciIsImxhbmQiLCJwYW5lbCIsInRleHQiLCJsYWJlbFdpdGhJZCIsImZvbnRTaXplIiwiZm9udENvbG9yIiwidGV4dEFuY2hvciIsImFsaWdubWVudCIsImFkZE1vcmVMYWJlbCIsInNpZGViYXIiLCJwYW5lbHMiLCJsYXllciIsImZpbHRlciIsImludGVyYWN0aW9uIiwiYmFzZW1hcCIsInJlcXVpcmVkIiwicHJvcGVydHlCYXNlZE9uIiwic3Ryb2tlV2lkdGgiLCJiYXNpYyIsInRyYWlsTGVuZ3RoIiwidHJhaWxMZW5ndGhEZXNjcmlwdGlvbiIsIm5ld0xheWVyIiwiZWxldmF0aW9uQnlEZXNjcmlwdGlvbiIsImNvbG9yQnlEZXNjcmlwdGlvbiIsImFnZ3JlZ2F0ZUJ5IiwidHlwZSIsInBvaW50IiwiYXJjIiwibGluZSIsImdyaWQiLCJoZXhiaW4iLCJwb2x5Z29uIiwiZ2VvanNvbiIsImNsdXN0ZXIiLCJpY29uIiwiaGVhdG1hcCIsImhleGFnb24iLCJoZXhhZ29uaWQiLCJ0cmlwIiwiczIiLCJsYXllclZpc0NvbmZpZ3MiLCJhbmdsZSIsInN0cm9rZVdpZHRoUmFuZ2UiLCJmaXhlZFJhZGl1cyIsImZpeGVkUmFkaXVzRGVzY3JpcHRpb24iLCJyYWRpdXNSYW5nZSIsImNsdXN0ZXJSYWRpdXMiLCJyYWRpdXNSYW5nZVBpeGVscyIsIm9wYWNpdHkiLCJjb2xvclJhbmdlIiwic3Ryb2tlQ29sb3JSYW5nZSIsInRhcmdldENvbG9yIiwiY29sb3JBZ2dyZWdhdGlvbiIsImhlaWdodEFnZ3JlZ2F0aW9uIiwicmVzb2x1dGlvblJhbmdlIiwic2l6ZVNjYWxlIiwid29ybGRVbml0U2l6ZSIsImVsZXZhdGlvblNjYWxlIiwiZW5hYmxlRWxldmF0aW9uWm9vbUZhY3RvciIsImVuYWJsZUVsZXZhdGlvblpvb21GYWN0b3JEZXNjcmlwdGlvbiIsImhlaWdodFNjYWxlIiwiY292ZXJhZ2VSYW5nZSIsImhpZ2hQcmVjaXNpb25SZW5kZXJpbmciLCJoaWdoUHJlY2lzaW9uUmVuZGVyaW5nRGVzY3JpcHRpb24iLCJoZWlnaHREZXNjcmlwdGlvbiIsImZpbGwiLCJlbmFibGVQb2x5Z29uSGVpZ2h0Iiwic2hvd1dpcmVmcmFtZSIsIndlaWdodEludGVuc2l0eSIsInpvb21TY2FsZSIsImhlaWdodFJhbmdlIiwibGF5ZXJNYW5hZ2VyIiwiYWRkRGF0YSIsImFkZExheWVyIiwibGF5ZXJCbGVuZGluZyIsIm1hcE1hbmFnZXIiLCJtYXBTdHlsZSIsImFkZE1hcFN0eWxlIiwibGF5ZXJDb25maWd1cmF0aW9uIiwiZGVmYXVsdERlc2NyaXB0aW9uIiwiaG93VG8iLCJmaWx0ZXJNYW5hZ2VyIiwiYWRkRmlsdGVyIiwiZGF0YXNldFRpdGxlIiwic2hvd0RhdGFUYWJsZSIsInJlbW92ZURhdGFzZXQiLCJkYXRhc2V0SW5mbyIsInJvd0NvdW50IiwidG9vbHRpcCIsImhpZGVMYXllciIsInNob3dMYXllciIsImhpZGVGZWF0dXJlIiwic2hvd0ZlYXR1cmUiLCJoaWRlIiwic2hvdyIsInJlbW92ZUxheWVyIiwiZHVwbGljYXRlTGF5ZXIiLCJsYXllclNldHRpbmdzIiwiY2xvc2VQYW5lbCIsInN3aXRjaFRvRHVhbFZpZXciLCJzaG93TGVnZW5kIiwiZGlzYWJsZTNETWFwIiwiRHJhd09uTWFwIiwic2VsZWN0TG9jYWxlIiwiaGlkZUxheWVyUGFuZWwiLCJzaG93TGF5ZXJQYW5lbCIsIm1vdmVUb1RvcCIsInNlbGVjdEJhc2VNYXBTdHlsZSIsInRpbWVQbGF5YmFjayIsImNsb3VkU3RvcmFnZSIsImFuaW1hdGlvbkJ5V2luZG93IiwiYW5pbWF0aW9uQnlJbmNyZW1lbnRhbCIsInNwZWVkIiwicGxheSIsInBhdXNlIiwicmVzZXQiLCJ0b29sYmFyIiwiZXhwb3J0SW1hZ2UiLCJleHBvcnREYXRhIiwiZXhwb3J0TWFwIiwic2hhcmVNYXBVUkwiLCJzYXZlTWFwIiwic2VsZWN0IiwicmVjdGFuZ2xlIiwiTE9DQUxFUyIsImVkaXRvciIsImZpbHRlckxheWVyIiwiY29weUdlb21ldHJ5IiwibW9kYWwiLCJkZWxldGVEYXRhc2V0IiwiYWRkRGF0YVRvTWFwIiwiYWRkQ3VzdG9tTWFwYm94U3R5bGUiLCJzaGFyZVVSTCIsImJ1dHRvbiIsImRvd25sb2FkIiwiYWRkU3R5bGUiLCJzYXZlIiwiZGVmYXVsdENhbmNlbCIsImRlZmF1bHRDb25maXJtIiwicmF0aW9UaXRsZSIsInJhdGlvRGVzY3JpcHRpb24iLCJyYXRpb09yaWdpbmFsU2NyZWVuIiwicmF0aW9DdXN0b20iLCJyYXRpbzRfMyIsInJhdGlvMTZfOSIsInJlc29sdXRpb25UaXRsZSIsInJlc29sdXRpb25EZXNjcmlwdGlvbiIsIm1hcExlZ2VuZFRpdGxlIiwibWFwTGVnZW5kQWRkIiwiZGF0YXNldFN1YnRpdGxlIiwiYWxsRGF0YXNldHMiLCJkYXRhVHlwZVRpdGxlIiwiZGF0YVR5cGVTdWJ0aXRsZSIsImZpbHRlckRhdGFUaXRsZSIsImZpbHRlckRhdGFTdWJ0aXRsZSIsImZpbHRlcmVkRGF0YSIsInVuZmlsdGVyZWREYXRhIiwiZmlsZUNvdW50IiwiZGVsZXRlRGF0YSIsIndhcm5pbmciLCJwdWJsaXNoVGl0bGUiLCJwdWJsaXNoU3VidGl0bGUxIiwicHVibGlzaFN1YnRpdGxlMiIsInB1Ymxpc2hTdWJ0aXRsZTMiLCJwdWJsaXNoU3VidGl0bGU0IiwicHVibGlzaFN1YnRpdGxlNSIsInB1Ymxpc2hTdWJ0aXRsZTYiLCJwdWJsaXNoU3VidGl0bGU3IiwiZXhhbXBsZVRva2VuIiwicGFzdGVUaXRsZSIsInBhc3RlU3VidGl0bGUwIiwicGFzdGVTdWJ0aXRsZTEiLCJwYXN0ZVN1YnRpdGxlMiIsInBhc3RlU3VidGl0bGUzIiwicGFzdGVTdWJ0aXRsZTQiLCJuYW1pbmdUaXRsZSIsInNoYXJlTWFwIiwic2hhcmVVcmlUaXRsZSIsInNoYXJlVXJpU3VidGl0bGUiLCJjbG91ZFRpdGxlIiwiY2xvdWRTdWJ0aXRsZSIsInNoYXJlRGlzY2xhaW1lciIsImdvdG9QYWdlIiwic3RhdHVzUGFuZWwiLCJtYXBVcGxvYWRpbmciLCJlcnJvciIsInN1YnRpdGxlIiwiZm9ybWF0VGl0bGUiLCJmb3JtYXRTdWJ0aXRsZSIsImh0bWwiLCJzZWxlY3Rpb24iLCJ0b2tlblRpdGxlIiwidG9rZW5TdWJ0aXRsZSIsInRva2VuUGxhY2Vob2xkZXIiLCJ0b2tlbk1pc3VzZVdhcm5pbmciLCJ0b2tlbkRpc2NsYWltZXIiLCJ0b2tlblVwZGF0ZSIsIm1vZGVUaXRsZSIsIm1vZGVTdWJ0aXRsZTEiLCJtb2RlU3VidGl0bGUyIiwibW9kZURlc2NyaXB0aW9uIiwicmVhZCIsImVkaXQiLCJqc29uIiwiY29uZmlnVGl0bGUiLCJjb25maWdEaXNjbGFpbWVyIiwiZGlzY2xhaW1lciIsImxvYWRpbmdEaWFsb2ciLCJsb2FkaW5nIiwibG9hZERhdGEiLCJ1cGxvYWQiLCJzdG9yYWdlIiwidHJpcEluZm8iLCJkZXNjcmlwdGlvbjEiLCJjb2RlIiwiZGVzY3JpcHRpb24yIiwiZXhhbXBsZSIsImljb25JbmZvIiwiaWNvbnMiLCJzdG9yYWdlTWFwVmlld2VyIiwibGFzdE1vZGlmaWVkIiwiYmFjayIsIm92ZXJ3cml0ZU1hcCIsImFscmVhZHlFeGlzdHMiLCJsb2FkU3RvcmFnZU1hcCIsImdvVG9QYWdlIiwic3RvcmFnZU1hcHMiLCJub1NhdmVkTWFwcyIsImhlYWRlciIsInZpc2libGVMYXllcnMiLCJsYXllckxlZ2VuZCIsImludGVyYWN0aW9ucyIsImJydXNoIiwiY29vcmRpbmF0ZSIsImdlb2NvZGVyIiwiYWRkaXRpdmUiLCJub3JtYWwiLCJzdWJ0cmFjdGl2ZSIsImNvbHVtbnMiLCJsYXQiLCJsbmciLCJhbHRpdHVkZSIsInRva2VuIiwibGF0MCIsImxuZzAiLCJsYXQxIiwibG5nMSIsImhleF9pZCIsImN1c3RvbVBhbGV0dGUiLCJzdGVwcyIsInJldmVyc2VkIiwic2NhbGUiLCJjb2xvclNjYWxlIiwic3Ryb2tlU2NhbGUiLCJmaWxlVXBsb2FkZXIiLCJtZXNzYWdlIiwiY2hyb21lTWVzc2FnZSIsImNvbmZpZ1VwbG9hZE1lc3NhZ2UiLCJicm93c2VGaWxlcyIsInVwbG9hZGluZyIsImZpbGVOb3RTdXBwb3J0ZWQiLCJvciIsImZpZWxkU2VsZWN0b3IiLCJjbGVhckFsbCIsImZvcm1hdHRpbmciLCJjb21wYXJlIiwibW9kZUxhYmVsIiwidHlwZUxhYmVsIiwidHlwZXMiLCJhYnNvbHV0ZSIsInJlbGF0aXZlIiwibWFwUG9wb3ZlciIsInByaW1hcnkiLCJTYXZlIiwiU2hhcmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBb0JBOzs7Ozs7ZUFFZTtBQUNiQSxFQUFBQSxRQUFRLEVBQUU7QUFDUkMsSUFBQUEsTUFBTSxFQUFFLElBREE7QUFFUkMsSUFBQUEsS0FBSyxFQUFFLElBRkM7QUFHUkMsSUFBQUEsU0FBUyxFQUFFLEtBSEg7QUFJUkMsSUFBQUEsS0FBSyxFQUFFLElBSkM7QUFLUkMsSUFBQUEsUUFBUSxFQUFFLE1BTEY7QUFNUkMsSUFBQUEsV0FBVyxFQUFFLE1BTkw7QUFPUkMsSUFBQUEsTUFBTSxFQUFFLElBUEE7QUFRUkMsSUFBQUEsT0FBTyxFQUFFLEtBUkQ7QUFTUkMsSUFBQUEsTUFBTSxFQUFFLE1BVEE7QUFVUkMsSUFBQUEsT0FBTyxFQUFF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YjJRLEVBQUFBLGFBQWEsRUFBRTtBQUNiQyxJQUFBQSxRQUFRLEVBQUUsTUFERztBQUViQyxJQUFBQSxVQUFVLEVBQUU7QUFGQyxHQWxiRjtBQXNiYkMsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLFNBQVMsRUFBRSxNQURKO0FBRVBDLElBQUFBLFNBQVMsRUFBRSxNQUZKO0FBR1BDLElBQUFBLEtBQUssRUFBRTtBQUNMQyxNQUFBQSxRQUFRLEVBQUUsSUFETDtBQUVMQyxNQUFBQSxRQUFRLEVBQUU7QUFGTDtBQUhBLEdBdGJJO0FBOGJiQyxFQUFBQSxVQUFVLEVBQUU7QUFDVkMsSUFBQUEsT0FBTyxFQUFFO0FBREMsR0E5YkM7QUFpY2J4UyxFQUFBQSxPQUFPLEVBQUUsSUFqY0k7QUFrY2IsZ0JBQWMsTUFsY0Q7QUFtY2IsZ0JBQWMsTUFuY0Q7QUFvY2J5UyxFQUFBQSxJQUFJLEVBQUUsSUFwY087QUFxY2JDLEVBQUFBLEtBQUssRUFBRTtBQXJjTSxDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtMT0NBTEVTfSBmcm9tICcuLi9sb2NhbGVzJztcblxuZXhwb3J0IGRlZmF1bHQge1xuICBwcm9wZXJ0eToge1xuICAgIHdlaWdodDogJ+adg+mHjScsXG4gICAgbGFiZWw6ICfmoIfnrb4nLFxuICAgIGZpbGxDb2xvcjogJ+Whq+WFheiJsicsXG4gICAgY29sb3I6ICfpopzoibInLFxuICAgIGNvdmVyYWdlOiAn6KaG55uW6IyD5Zu0JyxcbiAgICBzdHJva2VDb2xvcjogJ+e6v+adoeminOiJsicsXG4gICAgcmFkaXVzOiAn5Y2K5b6EJyxcbiAgICBvdXRsaW5lOiAn6L2u5buT57q/JyxcbiAgICBzdHJva2U6ICfnur/mnaHnspfnu4YnLFxuICAgIGRlbnNpdHk6ICflr4bluqYnLFxuICAgIGhlaWdodDogJ+mrmOW6picsXG4gICAgc3VtOiAn5oC75ZKMJyxcbiAgICBwb2ludENvdW50OiAn54K55pWwJ1xuICB9LFxuICBwbGFjZWhvbGRlcjoge1xuICAgIHNlYXJjaDogJ+aQnOe0oicsXG4gICAgc2VsZWN0RmllbGQ6ICfpgInmi6nljLrln58nLFxuICAgIHlBeGlzOiAnWei9tCcsXG4gICAgc2VsZWN0VHlwZTogJ+mAieaLqeexu+WeiycsXG4gICAgc2VsZWN0VmFsdWU6ICfpgInmi6nlgLwnLFxuICAgIGVudGVyVmFsdWU6ICfovpPlhaXlgLwnLFxuICAgIGVtcHR5OiAn5pyq6YCJ5oupJ1xuICB9LFxuICBtaXNjOiB7XG4gICAgYnk6ICcnLFxuICAgIHZhbHVlc0luOiAn5YC85YyF5ZCrJyxcbiAgICB2YWx1ZUVxdWFsczogJ+WAvOetieS6jicsXG4gICAgZGF0YVNvdXJjZTogJ+aVsOaNrua6kCcsXG4gICAgYnJ1c2hSYWRpdXM6ICfnlLvnrJTljYrlvoQgKGttKScsXG4gICAgZW1wdHk6ICcgJ1xuICB9LFxuICBtYXBMYXllcnM6IHtcbiAgICB0aXRsZTogJ+WbvuWxgicsXG4gICAgbGFiZWw6ICfmoIfnrb4nLFxuICAgIHJvYWQ6ICfpgZPot68nLFxuICAgIGJvcmRlcjogJ+i+ueeVjOe6vycsXG4gICAgYnVpbGRpbmc6ICflu7rnrZHniaknLFxuICAgIHdhdGVyOiAn5rC0JyxcbiAgICBsYW5kOiAn5Zyw6Z2iJyxcbiAgICAnM2RCdWlsZGluZyc6ICczROW7uuetkSdcbiAgfSxcbiAgcGFuZWw6IHtcbiAgICB0ZXh0OiB7XG4gICAgICBsYWJlbDogJ+agh+etvicsXG4gICAgICBsYWJlbFdpdGhJZDogJ+agh+etviB7bGFiZWxJZH0nLFxuICAgICAgZm9udFNpemU6ICflrZfkvZPlpKflsI8nLFxuICAgICAgZm9udENvbG9yOiAn5a2X5L2T6aKc6ImyJyxcbiAgICAgIHRleHRBbmNob3I6ICfmlofmnKzplJonLFxuICAgICAgYWxpZ25tZW50OiAn5a+56b2Q5pa55byPJyxcbiAgICAgIGFkZE1vcmVMYWJlbDogJ+a3u+WKoOabtOWkmuagh+etvidcbiAgICB9XG4gIH0sXG4gIHNpZGViYXI6IHtcbiAgICBwYW5lbHM6IHtcbiAgICAgIGxheWVyOiAn5Zu+5bGCJyxcbiAgICAgIGZpbHRlcjogJ+i/h+a7pOWZqCcsXG4gICAgICBpbnRlcmFjdGlvbjogJ+S6pOS6kicsXG4gICAgICBiYXNlbWFwOiAn5bqV5Zu+J1xuICAgIH1cbiAgfSxcbiAgbGF5ZXI6IHtcbiAgICByZXF1aXJlZDogJ+W/heWhqyonLFxuICAgIHJhZGl1czogJ+WNiuW+hCcsXG4gICAgY29sb3I6ICfpopzoibInLFxuICAgIGZpbGxDb2xvcjogJ+Whq+WFheiJsicsXG4gICAgb3V0bGluZTogJ+i9ruW7k+e6vycsXG4gICAgd2VpZ2h0OiAn5p2D6YeNJyxcbiAgICBwcm9wZXJ0eUJhc2VkT246ICd7cHJvcGVydHl955qE5Z+65YeGJyxcbiAgICBjb3ZlcmFnZTogJ+imhuebluiMg+WbtCcsXG4gICAgc3Ryb2tlOiAn57q/5p2h57KX57uGJyxcbiAgICBzdHJva2VXaWR0aDogJ+e6v+adoeWuveW6picsXG4gICAgc3Ryb2tlQ29sb3I6ICfnur/mnaHpopzoibInLFxuICAgIGJhc2ljOiAn5Z+656GA6K6+572uJyxcbiAgICB0cmFpbExlbmd0aDogJ+i9qOi/uemVv+W6picsXG4gICAgdHJhaWxMZW5ndGhEZXNjcmlwdGlvbjogJ+i9qOi/uea3oeWHuueahOenkuaVsCcsXG4gICAgbmV3TGF5ZXI6ICfmlrDlu7rlm77lsYInLFxuICAgIGVsZXZhdGlvbkJ5RGVzY3JpcHRpb246ICflhbPpl63ml7bvvIzpq5jluqblj5blhrPkuo7ngrnmlbAnLFxuICAgIGNvbG9yQnlEZXNjcmlwdGlvbjogJ+WFs+mXreaXtu+8jOminOiJsuWPluWGs+S6jueCueaVsCcsXG4gICAgYWdncmVnYXRlQnk6ICd7ZmllbGR96IGa5ZCI5aaC5LiLOiAnLFxuICAgICczRE1vZGVsJzogJzNE5qih5Z6LJyxcbiAgICAnM0RNb2RlbE9wdGlvbnMnOiAnM0TmqKHlnovpgInpobknLFxuICAgIHR5cGU6IHtcbiAgICAgIHBvaW50OiAncG9pbnQnLFxuICAgICAgYXJjOiAnYXJjJyxcbiAgICAgIGxpbmU6ICdsaW5lJyxcbiAgICAgIGdyaWQ6ICdncmlkJyxcbiAgICAgIGhleGJpbjogJ2hleGJpbicsXG4gICAgICBwb2x5Z29uOiAncG9seWdvbicsXG4gICAgICBnZW9qc29uOiAnZ2VvanNvbicsXG4gICAgICBjbHVzdGVyOiAnY2x1c3RlcicsXG4gICAgICBpY29uOiAnaWNvbicsXG4gICAgICBoZWF0bWFwOiAnaGVhdG1hcCcsXG4gICAgICBoZXhhZ29uOiAnaGV4YWdvbicsXG4gICAgICBoZXhhZ29uaWQ6ICdIMycsXG4gICAgICB0cmlwOiAndHJpcCcsXG4gICAgICBzMjogJ1MyJyxcbiAgICAgICczZCc6ICczRCdcbiAgICB9XG4gIH0sXG4gIGxheWVyVmlzQ29uZmlnczoge1xuICAgIGFuZ2xlOiAn6KeS5bqmJyxcbiAgICBzdHJva2VXaWR0aDogJ+e6v+adoeWuveW6picsXG4gICAgc3Ryb2tlV2lkdGhSYW5nZTogJ+e6v+adoeWuveW6puiMg+WbtCcsXG4gICAgcmFkaXVzOiAn5Y2K5b6EJyxcbiAgICBmaXhlZFJhZGl1czogJ+S7peexs+S4uuWNleS9jeWbuuWumuWNiuW+hCcsXG4gICAgZml4ZWRSYWRpdXNEZXNjcmlwdGlvbjogJ+WwhuWNiuW+hOaYoOWwhOWIsOS7peexs+S4uuWNleS9jeeahOe7neWvueWNiuW+hO+8iOS+izogNSDihpIgNeexs++8iScsXG4gICAgcmFkaXVzUmFuZ2U6ICfljYrlvoTojIPlm7QnLFxuICAgIGNsdXN0ZXJSYWRpdXM6ICfogZrnsbvljYrlvoQnLFxuICAgIHJhZGl1c1JhbmdlUGl4ZWxzOiAn5Y2K5b6E6IyD5Zu0W+WDj+e0oF0nLFxuICAgIG9wYWNpdHk6ICfpgI/mmI7luqYnLFxuICAgIGNvdmVyYWdlOiAn6KaG55uW6IyD5Zu0JyxcbiAgICBvdXRsaW5lOiAn6L2u5buTJyxcbiAgICBjb2xvclJhbmdlOiAn6Imy5b2p6IyD5Zu0JyxcbiAgICBzdHJva2U6ICfnur8nLFxuICAgIHN0cm9rZUNvbG9yOiAn57q/5p2h6aKc6ImyJyxcbiAgICBzdHJva2VDb2xvclJhbmdlOiAn57q/5p2h6Imy5b2p6IyD5Zu0JyxcbiAgICB0YXJnZXRDb2xvcjogJ+ebruagh+minOiJsicsXG4gICAgY29sb3JBZ2dyZWdhdGlvbjogJ+minOiJsuiBmuWQiCcsXG4gICAgaGVpZ2h0QWdncmVnYXRpb246ICfpq5jluqbogZrlkIgnLFxuICAgIHJlc29sdXRpb25SYW5nZTogJ+WIhui+qOeOh+iMg+WbtCcsXG4gICAgc2l6ZVNjYWxlOiAn5aSn5bCP5q+U5L6LJyxcbiAgICB3b3JsZFVuaXRTaXplOiAn5LiW55WM5Y2V5L2N5aSn5bCPJyxcbiAgICBlbGV2YXRpb25TY2FsZTogJ+a1t+aLlOavlOS+iycsXG4gICAgZW5hYmxlRWxldmF0aW9uWm9vbUZhY3RvcjogJ+S9v+eUqOmrmOeoi+e8qeaUvuezu+aVsCcsXG4gICAgZW5hYmxlRWxldmF0aW9uWm9vbUZhY3RvckRlc2NyaXB0aW9uOiAn5qC55o2u5b2T5YmN57yp5pS+57O75pWw6LCD5pW05rW35ouUJyxcbiAgICBoZWlnaHRTY2FsZTogJ+mrmOW6puavlOS+iycsXG4gICAgY292ZXJhZ2VSYW5nZTogJ+imhuebluiMg+WbtCcsXG4gICAgaGlnaFByZWNpc2lvblJlbmRlcmluZzogJ+mrmOeyvuW6pua4suafkycsXG4gICAgaGlnaFByZWNpc2lvblJlbmRlcmluZ0Rlc2NyaXB0aW9uOiAn6auY57K+5bqm5riy5p+T5Lya5a+86Ie05oCn6IO95LiL6ZmNJyxcbiAgICBoZWlnaHQ6ICfpq5jluqYnLFxuICAgIGhlaWdodERlc2NyaXB0aW9uOiAn54K55Ye75bGP5bmV5Y+z5LiK6KeS55qE5oyJ6ZKu5YiH5o2i5YiwM0Top4blm74nLFxuICAgIGZpbGw6ICfloavlhYUnLFxuICAgIGVuYWJsZVBvbHlnb25IZWlnaHQ6ICflkK/nlKjlpJrovrnlvaLpq5jluqYnLFxuICAgIHNob3dXaXJlZnJhbWU6ICfmmL7npLrnur/moYYnLFxuICAgIHdlaWdodEludGVuc2l0eTogJ+WKoOadg+W8uuW6picsXG4gICAgem9vbVNjYWxlOiAn57yp5pS+5q+U5L6LJyxcbiAgICBoZWlnaHRSYW5nZTogJ+mrmOW6puiMg+WbtCdcbiAgfSxcbiAgbGF5ZXJNYW5hZ2VyOiB7XG4gICAgYWRkRGF0YTogJ+a3u+WKoOaVsOaNricsXG4gICAgYWRkTGF5ZXI6ICfmt7vliqDlm77lsYInLFxuICAgIGxheWVyQmxlbmRpbmc6ICfmt7flkIjlm77lsYInXG4gIH0sXG4gIG1hcE1hbmFnZXI6IHtcbiAgICBtYXBTdHlsZTogJ+WcsOWbvuagt+W8jycsXG4gICAgYWRkTWFwU3R5bGU6ICfmt7vliqDlnLDlm77moLflvI8nLFxuICAgICczZEJ1aWxkaW5nQ29sb3InOiAnM0Qg5bu6562R6aKc6ImyJ1xuICB9LFxuICBsYXllckNvbmZpZ3VyYXRpb246IHtcbiAgICBkZWZhdWx0RGVzY3JpcHRpb246ICfmoLnmja7miYDpgInlrZfmrrXorqHnrpcge3Byb3BlcnR5fScsXG4gICAgaG93VG86ICfkvb/nlKjmlrnms5UnXG4gIH0sXG4gIGZpbHRlck1hbmFnZXI6IHtcbiAgICBhZGRGaWx0ZXI6ICfmt7vliqDov4fmu6TlmagnXG4gIH0sXG4gIGRhdGFzZXRUaXRsZToge1xuICAgIHNob3dEYXRhVGFibGU6ICfmmL7npLrmlbDmja7ooagnLFxuICAgIHJlbW92ZURhdGFzZXQ6ICfliKDpmaTmlbDmja7pm4YnXG4gIH0sXG4gIGRhdGFzZXRJbmZvOiB7XG4gICAgcm93Q291bnQ6ICd7cm93Q291bnR96KGMJ1xuICB9LFxuICB0b29sdGlwOiB7XG4gICAgaGlkZUxheWVyOiAn6ZqQ6JeP5Zu+5bGCJyxcbiAgICBzaG93TGF5ZXI6ICfmmL7npLrlm77lsYInLFxuICAgIGhpZGVGZWF0dXJlOiAn6ZqQ6JeP54m55b6BJyxcbiAgICBzaG93RmVhdHVyZTogJ+aYvuekuueJueW+gScsXG4gICAgaGlkZTogJ+makOiXjycsXG4gICAgc2hvdzogJ+aYvuekuicsXG4gICAgcmVtb3ZlTGF5ZXI6ICfliKDpmaTlm77lsYInLFxuICAgIGR1cGxpY2F0ZUxheWVyOiAn5aSN5Yi25Zu+5bGCJyxcbiAgICBsYXllclNldHRpbmdzOiAn5Zu+5bGC6K6+572uJyxcbiAgICBjbG9zZVBhbmVsOiAn5YWz6Zet5b2T5YmN6Z2i5p2/JyxcbiAgICBzd2l0Y2hUb0R1YWxWaWV3OiAn5YiH5o2i5Yiw5Y+M5Zyw5Zu+6KeG5Zu+JyxcbiAgICBzaG93TGVnZW5kOiAn5pi+56S65Zu+5L6LJyxcbiAgICBkaXNhYmxlM0RNYXA6ICfnpoHnlKggM0Qg5Zyw5Zu+JyxcbiAgICBEcmF3T25NYXA6ICflnKjlnLDlm77kuIrnu5jliLYnLFxuICAgIHNlbGVjdExvY2FsZTogJ+mAieaLqeivreiogCcsXG4gICAgaGlkZUxheWVyUGFuZWw6ICfpmpDol4/lm77lsYLpnaLmnb8nLFxuICAgIHNob3dMYXllclBhbmVsOiAn5pi+56S65Zu+5bGC6Z2i5p2/JyxcbiAgICBtb3ZlVG9Ub3A6ICfnp7voh7Plm77lsYLpobbpg6gnLFxuICAgIHNlbGVjdEJhc2VNYXBTdHlsZTogJ+mAieaLqeW6leWbvuagt+W8jycsXG4gICAgZGVsZXRlOiAn5Yig6ZmkJyxcbiAgICB0aW1lUGxheWJhY2s6ICfml7bnqbrlm57mlL4nLFxuICAgIGNsb3VkU3RvcmFnZTogJ+S6keWtmOWCqCcsXG4gICAgJzNETWFwJzogJzNEIOWcsOWbvicsXG4gICAgYW5pbWF0aW9uQnlXaW5kb3c6ICfnp7vliqjml7bpl7Tnqpflj6MnLFxuICAgIGFuaW1hdGlvbkJ5SW5jcmVtZW50YWw6ICflop7ph4/ml7bpl7Tnqpflj6MnLFxuICAgIHNwZWVkOiAn6YCf5bqmJyxcbiAgICBwbGF5OiAn5pKt5pS+JyxcbiAgICBwYXVzZTogJ+aaguWBnCcsXG4gICAgcmVzZXQ6ICfph43nva4nXG4gIH0sXG4gIHRvb2xiYXI6IHtcbiAgICBleHBvcnRJbWFnZTogJ+WvvOWHuuWbvueJhycsXG4gICAgZXhwb3J0RGF0YTogJ+WvvOWHuuaVsOaNricsXG4gICAgZXhwb3J0TWFwOiAn5a+85Ye65Zyw5Zu+JyxcbiAgICBzaGFyZU1hcFVSTDogJ+WIhuS6q+WcsOWbvue9keWdgCcsXG4gICAgc2F2ZU1hcDogJ+S/neWtmOWcsOWbvicsXG4gICAgc2VsZWN0OiAn6YCJ5oupJyxcbiAgICBwb2x5Z29uOiAncG9seWdvbicsXG4gICAgcmVjdGFuZ2xlOiAncmVjdGFuZ2xlJyxcbiAgICBoaWRlOiAn6ZqQ6JePJyxcbiAgICBzaG93OiAn5pi+56S6JyxcbiAgICAuLi5MT0NBTEVTXG4gIH0sXG4gIGVkaXRvcjoge1xuICAgIGZpbHRlckxheWVyOiAn6L+H5ruk5Zu+5bGCJyxcbiAgICBjb3B5R2VvbWV0cnk6ICflpI3liLblh6DkvZXlm77lvaInXG4gIH0sXG4gIG1vZGFsOiB7XG4gICAgdGl0bGU6IHtcbiAgICAgIGRlbGV0ZURhdGFzZXQ6ICfliKDpmaTmlbDmja7pm4YnLFxuICAgICAgYWRkRGF0YVRvTWFwOiAn5re75Yqg5pWw5o2u5Yiw5Zyw5Zu+JyxcbiAgICAgIGV4cG9ydEltYWdlOiAn5a+85Ye65Zu+54mHJyxcbiAgICAgIGV4cG9ydERhdGE6ICflr7zlh7rmlbDmja4nLFxuICAgICAgZXhwb3J0TWFwOiAn5a+85Ye65Zyw5Zu+JyxcbiAgICAgIGFkZEN1c3RvbU1hcGJveFN0eWxlOiAn5re75Yqg6Ieq5a6a5LmJ5Zyw5Zu+JyxcbiAgICAgIHNhdmVNYXA6ICfkv53lrZjlnLDlm74nLFxuICAgICAgc2hhcmVVUkw6ICfliIbkuqvnvZHlnYAnXG4gICAgfSxcbiAgICBidXR0b246IHtcbiAgICAgIGRlbGV0ZTogJ+WIoOmZpCcsXG4gICAgICBkb3dubG9hZDogJ+S4i+i9vScsXG4gICAgICBleHBvcnQ6ICflh7rlj6MnLFxuICAgICAgYWRkU3R5bGU6ICfmt7vliqDmoLflvI8nLFxuICAgICAgc2F2ZTogJ+S/neWtmCcsXG4gICAgICBkZWZhdWx0Q2FuY2VsOiAn5Y+W5raIJyxcbiAgICAgIGRlZmF1bHRDb25maXJtOiAn56Gu6K6kJ1xuICAgIH0sXG4gICAgZXhwb3J0SW1hZ2U6IHtcbiAgICAgIHJhdGlvVGl0bGU6ICfmr5TnjocnLFxuICAgICAgcmF0aW9EZXNjcmlwdGlvbjogJ+mAieaLqeS4jeWQjOeUqOmAlOeahOavlOS+i+OAgicsXG4gICAgICByYXRpb09yaWdpbmFsU2NyZWVuOiAn5Y6f5aeL5bGP5bmVJyxcbiAgICAgIHJhdGlvQ3VzdG9tOiAn6Ieq5a6a5LmJJyxcbiAgICAgIHJhdGlvNF8zOiAnNDozJyxcbiAgICAgIHJhdGlvMTZfOTogJzE2OjknLFxuICAgICAgcmVzb2x1dGlvblRpdGxlOiAn5YiG6L6o546HJyxcbiAgICAgIHJlc29sdXRpb25EZXNjcmlwdGlvbjogJ+mrmOWIhui+qOeOh+abtOmAguWQiOaJk+WNsOOAgicsXG4gICAgICBtYXBMZWdlbmRUaXRsZTogJ+WcsOWbvuWbvuS+iycsXG4gICAgICBtYXBMZWdlbmRBZGQ6ICflnKjlnLDlm77kuIrmt7vliqDlm77kvosnXG4gICAgfSxcbiAgICBleHBvcnREYXRhOiB7XG4gICAgICBkYXRhc2V0VGl0bGU6ICfmlbDmja7pm4YnLFxuICAgICAgZGF0YXNldFN1YnRpdGxlOiAn6YCJ5oup6KaB5a+85Ye655qE5pWw5o2u6ZuGJyxcbiAgICAgIGFsbERhdGFzZXRzOiAn5YWo6YOoJyxcbiAgICAgIGRhdGFUeXBlVGl0bGU6ICfmlbDmja7nsbvlnosnLFxuICAgICAgZGF0YVR5cGVTdWJ0aXRsZTogJ+mAieaLqeimgeWvvOWHuueahOaVsOaNruexu+WeiycsXG4gICAgICBmaWx0ZXJEYXRhVGl0bGU6ICfov4fmu6TmlbDmja4nLFxuICAgICAgZmlsdGVyRGF0YVN1YnRpdGxlOiAn5Y+v5Lul6YCJ5oup5a+85Ye65Y6f5aeL5pWw5o2u5oiW6L+H5ruk5ZCO55qE5pWw5o2uJyxcbiAgICAgIGZpbHRlcmVkRGF0YTogJ+i/h+a7pOaVsOaNricsXG4gICAgICB1bmZpbHRlcmVkRGF0YTogJ+WFg+aVsOaNricsXG4gICAgICBmaWxlQ291bnQ6ICd7ZmlsZUNvdW50fSDkuKrmlofku7YnLFxuICAgICAgcm93Q291bnQ6ICd7cm93Q291bnR9IOihjCdcbiAgICB9LFxuICAgIGRlbGV0ZURhdGE6IHtcbiAgICAgIHdhcm5pbmc6ICfnoa7orqTopoHliKDpmaTov5nkuKrmlbDmja7pm4bjgILlroPkvJrlvbHlk40ge2xlbmd0aH0g5Liq5bGCJ1xuICAgIH0sXG4gICAgYWRkU3R5bGU6IHtcbiAgICAgIHB1Ymxpc2hUaXRsZTpcbiAgICAgICAgJzIuIOWmguaenOWcqOatpemqpDHkuK3ovpPlhaXkuoYgbWFwYm94IOagt+W8j+eahCB1cmzvvIzpnIDopoHlnKggbWFwYm94IOS4iuWPkeW4g+agt+W8j+aIluaPkOS+m+iuv+mXruS7pOeJjO+8iGFjY2VzcyB0b2tlbu+8ieOAgu+8iOWPr+mAie+8iScsXG4gICAgICBwdWJsaXNoU3VidGl0bGUxOiAn5Y+v5Lul5Zyo5Lul5LiL5L2N572u5Yib5bu66Ieq5bex55qE5Zyw5Zu+5qC35byPJyxcbiAgICAgIHB1Ymxpc2hTdWJ0aXRsZTI6ICflubYnLFxuICAgICAgcHVibGlzaFN1YnRpdGxlMzogJ+WPkeW4gycsXG4gICAgICBwdWJsaXNoU3VidGl0bGU0OiAn44CCJyxcbiAgICAgIHB1Ymxpc2hTdWJ0aXRsZTU6ICfkvb/nlKjnp4HmnInmoLflvI/vvIzpnIDnspjotLQnLFxuICAgICAgcHVibGlzaFN1YnRpdGxlNjogJ+iuv+mXruS7pOeJjO+8iGFjY2VzcyB0b2tlbu+8iScsXG4gICAgICBwdWJsaXNoU3VidGl0bGU3OiAn44CCKiBLZXBsZXIuZ2wg5piv5LiA5Liq5a6i5oi356uv5bqU55So56iL5bqP77yM5pWw5o2u5L+d55WZ5Zyo5oKo55qE5rWP6KeI5Zmo5Lit44CCJyxcbiAgICAgIGV4YW1wbGVUb2tlbjogJ+S+iykgcGsuYWJjZGVmZy54eHh4eHgnLFxuICAgICAgcGFzdGVUaXRsZTogJzEuIOeymOi0tOagt+W8jyB1cmwnLFxuICAgICAgcGFzdGVTdWJ0aXRsZTA6ICfmoLflvI8gdXJsIOWPr+S7peaYryBNYXBib3gg55qEJyxcbiAgICAgIHBhc3RlU3VidGl0bGUxOiAn5LuA5LmI5pivJyxcbiAgICAgIHBhc3RlU3VidGl0bGUyOiAn5qC35byPIFVSTO+8jCcsXG4gICAgICBwYXN0ZVN1YnRpdGxlMzogJ+i/mOWPr+S7peS9v+eUqOmBteS7jk1hcGJveCBHTOagt+W8j+eahHN0eWxlLmpzb27nmoR1cmzvvJonLFxuICAgICAgcGFzdGVTdWJ0aXRsZTQ6ICdNYXBib3ggR0wg5qC35byP6KeE6IyDJyxcbiAgICAgIG5hbWluZ1RpdGxlOiAnMy4g5ZG95ZCN5L2g55qE5qC35byPJ1xuICAgIH0sXG4gICAgc2hhcmVNYXA6IHtcbiAgICAgIHNoYXJlVXJpVGl0bGU6ICfliIbkuqvlnLDlm77nvZHlnYAnLFxuICAgICAgc2hhcmVVcmlTdWJ0aXRsZTogJ+eUn+aIkOWIhuS6q+WcsOWbvueahOmTvuaOpScsXG4gICAgICBjbG91ZFRpdGxlOiAn5LqR5a2Y5YKoJyxcbiAgICAgIGNsb3VkU3VidGl0bGU6ICfnmbvlvZXlubblsIblnLDlm77mlbDmja7kuIrkvKDliLDkuKrkurrkupHlrZjlgqgnLFxuICAgICAgc2hhcmVEaXNjbGFpbWVyOlxuICAgICAgICAna2VwbGVyLmdsIOWwhuWIm+W7uueahOWcsOWbvuWtmOWCqOWcqOS4quS6uuS6keWtmOWCqOS4re+8jOWboOatpOWPquacieefpemBkyBVUkwg55qE5Lq65omN6IO96K6/6Zeu5Zyw5Zu+5Y+K5YW25pWw5o2u44CCJyArXG4gICAgICAgICflj6/ku6Xpmo/ml7bkvb/nlKjkuKrkurrkupHlrZjlgqjluJDmiLfnvJbovpEv5Yig6Zmk5pWw5o2u5paH5Lu244CCJyxcbiAgICAgIGdvdG9QYWdlOiAn6Lez6L2s5YiwS2VwbGVyLmds55qEe2N1cnJlbnRQcm92aWRlcn3pobXpnaInXG4gICAgfSxcbiAgICBzdGF0dXNQYW5lbDoge1xuICAgICAgbWFwVXBsb2FkaW5nOiAn5Zyw5Zu+5LiK5Lyg5LitJyxcbiAgICAgIGVycm9yOiAn6ZSZ6K+vJ1xuICAgIH0sXG4gICAgc2F2ZU1hcDoge1xuICAgICAgdGl0bGU6ICfkupHlrZjlgqgnLFxuICAgICAgc3VidGl0bGU6ICfnmbvlvZXku6XlsIblnLDlm77kv53lrZjliLDkuKrkurrkupHlrZjlgqgnXG4gICAgfSxcbiAgICBleHBvcnRNYXA6IHtcbiAgICAgIGZvcm1hdFRpdGxlOiAn5Zyw5Zu+55qE5qC85byPJyxcbiAgICAgIGZvcm1hdFN1YnRpdGxlOiAn6YCJ5oup5a+85Ye65Zyw5Zu+55qE5qC85byPJyxcbiAgICAgIGh0bWw6IHtcbiAgICAgICAgc2VsZWN0aW9uOiAn5bCG5Zyw5Zu+5a+85Ye66Iez5Lqk5LqS5byP55qEaHRtbOaWh+S7tuS4reOAgicsXG4gICAgICAgIHRva2VuVGl0bGU6ICdNYXBib3jnmoTorr/pl67ku6TniYzvvIhhY2Nlc3MgdG9rZW7vvIknLFxuICAgICAgICB0b2tlblN1YnRpdGxlOiAn5ZyoIGh0bWwg5Lit5L2/55So6Ieq5bex55qEIE1hcGJveCDorr/pl67ku6TniYzvvIhhY2Nlc3MgdG9rZW7vvInvvIjlj6/pgInvvIknLFxuICAgICAgICB0b2tlblBsYWNlaG9sZGVyOiAn57KY6LS05Liq5Lq655qEIE1hcGJveCDorr/pl67ku6TniYxhY2Nlc3MgdG9rZW7vvIknLFxuICAgICAgICB0b2tlbk1pc3VzZVdhcm5pbmc6XG4gICAgICAgICAgJyog5aaC5p6c5oKo5LiN5o+Q5L6b6Ieq5bex55qE5Luk54mM77yM5YiZ5Zyo5oiR5Lus5pu05o2i5Luk54mM5pe277yM5Zyw5Zu+5Y+v6IO96ZqP5pe25peg5rOV5pi+56S677yM5Lul5YWN6KKr5rul55So44CCJyxcbiAgICAgICAgdG9rZW5EaXNjbGFpbWVyOiAn5Y+v5Lul56iN5ZCO5L2/55So5Lul5LiL6K+05piO5pu05pS5IE1hcGJveCDku6TniYzvvJonLFxuICAgICAgICB0b2tlblVwZGF0ZTogJ+WmguS9leabtOaWsOeOsOacieeahOWcsOWbvuS7pOeJjOOAgicsXG4gICAgICAgIG1vZGVUaXRsZTogJ+WcsOWbvuaooeW8jycsXG4gICAgICAgIG1vZGVTdWJ0aXRsZTE6ICfpgInmi6nlnLDlm77mqKHlvI/jgILmm7TlpJrnmoQnLFxuICAgICAgICBtb2RlU3VidGl0bGUyOiAn5L+h5oGvJyxcbiAgICAgICAgbW9kZURlc2NyaXB0aW9uOiAn5YWB6K6455So5oi3e21vZGV95Zyw5Zu+JyxcbiAgICAgICAgcmVhZDogJ+mYheivuycsXG4gICAgICAgIGVkaXQ6ICfnvJbovpEnXG4gICAgICB9LFxuICAgICAganNvbjoge1xuICAgICAgICBjb25maWdUaXRsZTogJ+WcsOWbvumFjee9ricsXG4gICAgICAgIGNvbmZpZ0Rpc2NsYWltZXI6XG4gICAgICAgICAgJ+WcsOWbvumFjee9ruWwhuWMheWQq+WcqCBKc29uIOaWh+S7tuS4reOAguWmguaenOaCqOWcqOiHquW3seeahOW6lOeUqOeoi+W6j+S4reS9v+eUqCBrZXBsZXIuZ2zjgILmgqjlj6/ku6XlpI3liLbmraTphY3nva7lubblsIblhbbkvKDpgJLnu5knLFxuICAgICAgICBzZWxlY3Rpb246XG4gICAgICAgICAgJ+WwhuW9k+WJjeWcsOWbvuaVsOaNruWSjOmFjee9ruWvvOWHuuWIsOWNleS4qiBKc29uIOaWh+S7tuS4reOAgueojeWQjuaCqOWPr+S7pemAmui/h+WwhuatpOaWh+S7tuS4iuS8oOWIsCBrZXBsZXIuZ2wg5p2l5omT5byA5ZCM5LiA5byg5Zyw5Zu+44CCJyxcbiAgICAgICAgZGlzY2xhaW1lcjpcbiAgICAgICAgICAnKiDlnLDlm77phY3nva7kuI7liqDovb3nmoTmlbDmja7pm4bnm7jnu5PlkIjjgIIg4oCcZGF0YUlk4oCd55So5LqO5bCG5Zu+5bGC44CB6L+H5ruk5Zmo5ZKM5bel5YW35o+Q56S657uR5a6a5Yiw54m55a6a5pWw5o2u6ZuG44CCJyArXG4gICAgICAgICAgJ+WwhuatpOmFjee9ruS8oOmAkue7mSBhZGREYXRhVG9NYXAg5pe277yM6K+356Gu5L+d5pWw5o2u6ZuGIElEIOS4juatpOmFjee9ruS4reeahCBkYXRhSWQvcyDljLnphY3jgIInXG4gICAgICB9XG4gICAgfSxcbiAgICBsb2FkaW5nRGlhbG9nOiB7XG4gICAgICBsb2FkaW5nOiAn5Yqg6L295LitLi4uJ1xuICAgIH0sXG4gICAgbG9hZERhdGE6IHtcbiAgICAgIHVwbG9hZDogJ+S4iuS8oOaWh+S7ticsXG4gICAgICBzdG9yYWdlOiAn5LuO5a2Y5YKo5Lit5Yqg6L29J1xuICAgIH0sXG4gICAgdHJpcEluZm86IHtcbiAgICAgIHRpdGxlOiAn5aaC5L2V5ZCv55So56e75Yqo5Yqo55S7JyxcbiAgICAgIGRlc2NyaXB0aW9uMTpcbiAgICAgICAgJ+imgei3r+W+hOiuvue9ruWKqOeUu++8jGdlb0pTT04g5pWw5o2u5b+F6aG75YyF5ZCrIGBMaW5lU3RyaW5nYCDkvZzkuLropoHntKDlh6DkvZXjgILmraTlpJbvvIxMaW5lU3RyaW5nIOeahOWdkOagh+acieWbm+S4quWFg+e0oCcsXG4gICAgICBjb2RlOiAnIFvnu4/luqbvvIznuqzluqbvvIzpq5jnqIvvvIzml7bpl7TmiLNdICcsXG4gICAgICBkZXNjcmlwdGlvbjI6XG4gICAgICAgICfmnIDlkI7kuIDkuKrlhYPntKDmmK/ml7bpl7TmiLPjgILmnInmlYjnmoTml7bpl7TmiLPmoLzlvI/ljIXmi6zku6Xnp5LkuLrljZXkvY3nmoQgdW5peO+8jOS+i+WmgmAxNTY0MTg0MzYzYOaIluS7peavq+enkuS4uuWNleS9jeeahGAxNTY0MTg0MzYzMDAwYOOAgicsXG4gICAgICBleGFtcGxlOiAn5L6L77yaJ1xuICAgIH0sXG4gICAgaWNvbkluZm86IHtcbiAgICAgIHRpdGxlOiAn5aaC5L2V57uY5Yi25Zu+5qCHJyxcbiAgICAgIGRlc2NyaXB0aW9uMTpcbiAgICAgICAgJ+WcqOaCqOeahCBjc3Yg5Lit77yM5Yib5bu65LiA5YiX77yM5bCG5oKo6KaB57uY5Yi255qE5Zu+5qCH55qE5ZCN56ew5pS+5YWl5YW25Lit44CC5aaC5p6c5LiN5oOz5Zyo5p+Q5Lqb54K55LiK5pi+56S65Zu+5qCH77yM5Y+v5Lul5bCG5Y2V5YWD5qC855WZ56m644CC5b2T5YiX6KKr5ZG95ZCN5Li6JyxcbiAgICAgIGNvZGU6ICflm77moIcnLFxuICAgICAgZGVzY3JpcHRpb24yOiAn5pe277yMa2VwbGVyLmdsIOS8muiHquWKqOS4uuS9oOWIm+W7uuS4gOS4quWbvuagh+WxguOAgicsXG4gICAgICBleGFtcGxlOiAn5L6LOicsXG4gICAgICBpY29uczogJ+Wbvuagh+S4gOiniCdcbiAgICB9LFxuICAgIHN0b3JhZ2VNYXBWaWV3ZXI6IHtcbiAgICAgIGxhc3RNb2RpZmllZDogJ+S4iuasoeS/ruaUuSB7bGFzdFVwZGF0ZWR9IOWJjScsXG4gICAgICBiYWNrOiAn6L+U5ZueJ1xuICAgIH0sXG4gICAgb3ZlcndyaXRlTWFwOiB7XG4gICAgICB0aXRsZTogJ+ato+WcqOS/neWtmOWcsOWbvi4uLicsXG4gICAgICBhbHJlYWR5RXhpc3RzOiAn5bey57uP5a2Y5Zyo5LqOIHttYXBTYXZlZH0g5Lit44CC5L2g5oOz6KaG55uW5ZCX77yfJ1xuICAgIH0sXG4gICAgbG9hZFN0b3JhZ2VNYXA6IHtcbiAgICAgIGJhY2s6ICfov5Tlm54nLFxuICAgICAgZ29Ub1BhZ2U6ICfot7PovazliLAgS2VwbGVyLmdsIOeahCB7ZGlzcGxheU5hbWV9IOmhtemdoicsXG4gICAgICBzdG9yYWdlTWFwczogJ+WtmOWCqCAvIOWcsOWbsycsXG4gICAgICBub1NhdmVkTWFwczogJ+i/mOayoeacieS/neWtmOeahOWcsOWbvidcbiAgICB9XG4gIH0sXG4gIGhlYWRlcjoge1xuICAgIHZpc2libGVMYXllcnM6ICflj6/op4Hlm77lsYInLFxuICAgIGxheWVyTGVnZW5kOiAn5Zu+5bGC5Zu+5L6LJ1xuICB9LFxuICBpbnRlcmFjdGlvbnM6IHtcbiAgICB0b29sdGlwOiAn5bel5YW35o+Q56S6JyxcbiAgICBicnVzaDogJ+WItycsXG4gICAgY29vcmRpbmF0ZTogJ+WdkOaghycsXG4gICAgZ2VvY29kZXI6ICflnLDnkIbnvJbnoIHlmagnXG4gIH0sXG4gIGxheWVyQmxlbmRpbmc6IHtcbiAgICB0aXRsZTogJ+WbvuWxgua3t+WQiCcsXG4gICAgYWRkaXRpdmU6ICdhZGRpdGl2ZScsXG4gICAgbm9ybWFsOiAnbm9ybWFsJyxcbiAgICBzdWJ0cmFjdGl2ZTogJ3N1YnRyYWN0aXZlJ1xuICB9LFxuICBjb2x1bW5zOiB7XG4gICAgdGl0bGU6ICfliJcnLFxuICAgIGxhdDogJ+e6rOW6picsXG4gICAgbG5nOiAn57uP5bqmJyxcbiAgICBhbHRpdHVkZTogJ+a1t+aLlCcsXG4gICAgaWNvbjogJ+WbvuaghycsXG4gICAgZ2VvanNvbjogJ2dlb2pzb24nLFxuICAgIHRva2VuOiAn5Luk54mMJyxcbiAgICBhcmM6IHtcbiAgICAgIGxhdDA6ICfotbfngrkg57qs5bqmJyxcbiAgICAgIGxuZzA6ICfotbfngrkg57uP5bqmJyxcbiAgICAgIGxhdDE6ICfnu4jngrkg57qs5bqmJyxcbiAgICAgIGxuZzE6ICfnu4jngrkg57uP5bqmJ1xuICAgIH0sXG4gICAgZ3JpZDoge1xuICAgICAgd29ybGRVbml0U2l6ZTogJ+e9keagvOWkp+WwjyAoa20pJ1xuICAgIH0sXG4gICAgaGV4YWdvbjoge1xuICAgICAgd29ybGRVbml0U2l6ZTogJ+WFrei+ueW9ouWNiuW+hCAoa20pJ1xuICAgIH0sXG4gICAgaGV4X2lkOiAnaGV4IGlkJ1xuICB9LFxuICBjb2xvcjoge1xuICAgIGN1c3RvbVBhbGV0dGU6ICfoh6rlrprkuYnosIPoibLmnb8nLFxuICAgIHN0ZXBzOiAn5q2l6aqkJyxcbiAgICB0eXBlOiAn57G75Z6LJyxcbiAgICByZXZlcnNlZDogJ+WPjei9rCdcbiAgfSxcbiAgc2NhbGU6IHtcbiAgICBjb2xvclNjYWxlOiAn6Imy6Zi2JyxcbiAgICBzaXplU2NhbGU6ICflpKflsI/mr5TkvosnLFxuICAgIHN0cm9rZVNjYWxlOiAn5o+P6L655q+U5L6LJyxcbiAgICBzY2FsZTogJ+inhOaooSdcbiAgfSxcbiAgZmlsZVVwbG9hZGVyOiB7XG4gICAgbWVzc2FnZTogJ+WwhuaCqOeahOaWh+S7tuaLluaUvuWIsOatpOWkhO+8iOWPr+WkmuS4qu+8iScsXG4gICAgY2hyb21lTWVzc2FnZTpcbiAgICAgICcq5a+55LqOIENocm9tZSDnlKjmiLfvvJrmlofku7blpKflsI/mnIDlpKfkuLogMjUwbWLjgILlpoLmnpzpnIDopoHkuIrkvKDmm7TlpJrmlofku7bvvIzor7flsJ3or5Xkvb/nlKggU2FmYXJp44CCJyxcbiAgICBkaXNjbGFpbWVyOlxuICAgICAgJyoga2VwbGVyLmdsIOWcqOWuouaIt+err+S4iuW3peS9nOOAguaVsOaNruS7heS/neeVmeWcqOaCqOiHquW3seeahOiuvuWkhy/mtY/op4jlmajkuK3jgIInICtcbiAgICAgICfmsqHmnInkv6Hmga/miJblnLDlm77mlbDmja7ooqvlj5HpgIHliLDku7vkvZXmnI3liqHlmajjgIInLFxuICAgIGNvbmZpZ1VwbG9hZE1lc3NhZ2U6XG4gICAgICAn5LiK5LygIHtmaWxlRm9ybWF0TmFtZXN9IOaIluS/neWtmOeahOWcsOWbviAqKkpzb24qKuOAgumYheivu+abtOWkmuWFs+S6jlsqKuaUr+aMgeeahOaWh+S7tuagvOW8jyoqXScsXG4gICAgYnJvd3NlRmlsZXM6ICfmtY/op4jkvaDnmoTmlofku7YnLFxuICAgIHVwbG9hZGluZzogJ+S4iuS8oCcsXG4gICAgZmlsZU5vdFN1cHBvcnRlZDogJ+S4jeaUr+aMgeaWh+S7tiB7ZXJyb3JGaWxlc33jgIInLFxuICAgIG9yOiAn5oiWJ1xuICB9LFxuICBnZW9jb2Rlcjoge1xuICAgIHRpdGxlOiAn6L6T5YWl5Zyw5Z2A5oiW5Z2Q5qCH77yI5L6L77yaIDM3Ljc5LC0xMjIuNDDvvIknXG4gIH0sXG4gIGZpZWxkU2VsZWN0b3I6IHtcbiAgICBjbGVhckFsbDogJ+a4hemZpOaJgOaciScsXG4gICAgZm9ybWF0dGluZzogJ+agvOW8j+WMlidcbiAgfSxcbiAgY29tcGFyZToge1xuICAgIG1vZGVMYWJlbDogJ+avlOi+g+aooeW8jycsXG4gICAgdHlwZUxhYmVsOiAn5q+U6L6D57G75Z6LJyxcbiAgICB0eXBlczoge1xuICAgICAgYWJzb2x1dGU6ICfnu53lr7knLFxuICAgICAgcmVsYXRpdmU6ICfnm7jlr7knXG4gICAgfVxuICB9LFxuICBtYXBQb3BvdmVyOiB7XG4gICAgcHJpbWFyeTogJ+S4u+imgSdcbiAgfSxcbiAgZGVuc2l0eTogJ+WvhuW6picsXG4gICdCdWcgUmVwb3J0JzogJ+mUmeivr+aKpeWRiicsXG4gICdVc2VyIEd1aWRlJzogJ+eUqOaIt+aMh+WNlycsXG4gIFNhdmU6ICfkv53lrZgnLFxuICBTaGFyZTogJ+WIhuS6qydcbn07XG4iXX0=
|