@carto/kepler.gl 0.0.81 → 0.0.82
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/action-wrapper.d.ts +115 -0
- package/dist/actions/action-wrapper.js +5 -5
- package/dist/actions/actions.d.ts +195 -0
- package/dist/actions/actions.js +20 -15
- package/dist/actions/identity-actions.d.ts +61 -0
- package/dist/actions/identity-actions.js +15 -10
- package/dist/actions/index.d.ts +9 -0
- package/dist/actions/index.js +1 -1
- package/dist/actions/map-state-actions.d.ts +69 -0
- package/dist/actions/map-state-actions.js +15 -12
- package/dist/actions/map-style-actions.d.ts +146 -0
- package/dist/actions/map-style-actions.js +53 -29
- package/dist/actions/provider-actions.d.ts +153 -0
- package/dist/actions/provider-actions.js +73 -42
- package/dist/actions/ui-state-actions.d.ts +300 -0
- package/dist/actions/ui-state-actions.js +135 -67
- package/dist/actions/vis-state-actions.d.ts +821 -0
- package/dist/actions/vis-state-actions.js +26 -111
- package/dist/cloud-providers/index.d.ts +2 -0
- package/dist/cloud-providers/index.js +2 -2
- package/dist/cloud-providers/provider.d.ts +176 -0
- package/dist/cloud-providers/provider.js +15 -16
- package/dist/components/bottom-widget.d.ts +47 -0
- package/dist/components/bottom-widget.js +10 -7
- package/dist/components/common/action-panel.d.ts +27 -0
- package/dist/components/common/action-panel.js +5 -7
- package/dist/components/common/animation-control/animation-control.d.ts +24 -0
- package/dist/components/common/animation-control/animation-control.js +7 -6
- package/dist/components/common/animation-control/animation-controller.d.ts +16 -0
- package/dist/components/common/animation-control/animation-controller.js +51 -31
- package/dist/components/common/animation-control/animation-speed-slider.d.ts +12 -0
- package/dist/components/common/animation-control/animation-speed-slider.js +6 -9
- package/dist/components/common/animation-control/floating-time-display.d.ts +9 -0
- package/dist/components/common/animation-control/floating-time-display.js +7 -4
- package/dist/components/common/animation-control/playback-controls.d.ts +72 -0
- package/dist/components/common/animation-control/playback-controls.js +4 -5
- package/dist/components/common/animation-control/speed-control.d.ts +13 -0
- package/dist/components/common/animation-control/speed-control.js +1 -1
- package/dist/components/common/checkbox.d.ts +35 -0
- package/dist/components/common/checkbox.js +10 -27
- package/dist/components/common/color-legend.d.ts +43 -0
- package/dist/components/common/color-legend.js +11 -23
- package/dist/components/common/data-table/button.d.ts +8 -0
- package/dist/components/common/data-table/button.js +2 -2
- package/dist/components/common/data-table/canvas.d.ts +2 -0
- package/dist/components/common/data-table/canvas.js +1 -1
- package/dist/components/common/data-table/cell-size.d.ts +36 -0
- package/dist/components/common/data-table/cell-size.js +1 -1
- package/dist/components/common/data-table/grid.d.ts +7 -0
- package/dist/components/common/data-table/grid.js +18 -11
- package/dist/components/common/data-table/index.d.ts +143 -0
- package/dist/components/common/data-table/index.js +44 -47
- package/dist/components/common/data-table/option-dropdown.d.ts +14 -0
- package/dist/components/common/data-table/option-dropdown.js +2 -2
- package/dist/components/common/dataset-label.d.ts +10 -0
- package/dist/components/common/dataset-label.js +3 -3
- package/dist/components/common/error-boundary.d.ts +16 -0
- package/dist/components/common/error-boundary.js +4 -6
- package/dist/components/common/field-selector.d.ts +47 -0
- package/dist/components/common/field-selector.js +14 -48
- package/dist/components/common/field-token.d.ts +45 -0
- package/dist/components/common/field-token.js +2 -2
- package/dist/components/common/file-uploader/file-drop.d.ts +54 -0
- package/dist/components/common/file-uploader/file-drop.js +22 -21
- package/dist/components/common/file-uploader/file-upload-progress.d.ts +8 -0
- package/dist/components/common/file-uploader/file-upload-progress.js +7 -8
- package/dist/components/common/file-uploader/file-upload.d.ts +27 -0
- package/dist/components/common/file-uploader/file-upload.js +12 -14
- package/dist/components/common/file-uploader/upload-button.d.ts +8 -0
- package/dist/components/common/file-uploader/upload-button.js +37 -61
- package/dist/components/common/histogram-plot.d.ts +3 -0
- package/dist/components/common/histogram-plot.js +10 -5
- package/dist/components/common/icons/add.d.ts +9 -0
- package/dist/components/common/icons/add.js +4 -10
- package/dist/components/common/icons/anchor_window.d.ts +11 -0
- package/dist/components/common/icons/anchor_window.js +1 -6
- package/dist/components/common/icons/arrow-down-alt.d.ts +9 -0
- package/dist/components/common/icons/arrow-down-alt.js +4 -10
- package/dist/components/common/icons/arrow-down-solid.d.ts +9 -0
- package/dist/components/common/icons/arrow-down-solid.js +58 -0
- package/dist/components/common/icons/arrow-down.d.ts +9 -0
- package/dist/components/common/icons/arrow-down.js +4 -10
- package/dist/components/common/icons/arrow-left.d.ts +9 -0
- package/dist/components/common/icons/arrow-left.js +4 -10
- package/dist/components/common/icons/arrow-right.d.ts +9 -0
- package/dist/components/common/icons/arrow-right.js +4 -10
- package/dist/components/common/icons/arrow-up-alt.d.ts +9 -0
- package/dist/components/common/icons/arrow-up-alt.js +4 -10
- package/dist/components/common/icons/arrow-up-solid.d.ts +9 -0
- package/dist/components/common/icons/arrow-up-solid.js +4 -10
- package/dist/components/common/icons/arrow-up.d.ts +9 -0
- package/dist/components/common/icons/arrow-up.js +4 -10
- package/dist/components/common/icons/base.d.ts +29 -0
- package/dist/components/common/icons/base.js +7 -19
- package/dist/components/common/icons/bug.d.ts +9 -0
- package/dist/components/common/icons/bug.js +4 -10
- package/dist/components/common/icons/cancel.d.ts +9 -0
- package/dist/components/common/icons/cancel.js +4 -10
- package/dist/components/common/icons/checkmark.d.ts +10 -0
- package/dist/components/common/icons/checkmark.js +4 -10
- package/dist/components/common/icons/chevron-right.js +5 -6
- package/dist/components/common/icons/clipboard.d.ts +9 -0
- package/dist/components/common/icons/clipboard.js +4 -10
- package/dist/components/common/icons/clock.d.ts +9 -0
- package/dist/components/common/icons/clock.js +4 -10
- package/dist/components/common/icons/close.d.ts +9 -0
- package/dist/components/common/icons/close.js +4 -10
- package/dist/components/common/icons/code-alt.d.ts +9 -0
- package/dist/components/common/icons/code-alt.js +4 -10
- package/dist/components/common/icons/copy.d.ts +9 -0
- package/dist/components/common/icons/copy.js +4 -10
- package/dist/components/common/icons/crosshairs.d.ts +9 -0
- package/dist/components/common/icons/crosshairs.js +4 -10
- package/dist/components/common/icons/cube-3d.d.ts +9 -0
- package/dist/components/common/icons/cube-3d.js +4 -10
- package/dist/components/common/icons/cursor-click.d.ts +9 -0
- package/dist/components/common/icons/cursor-click.js +4 -10
- package/dist/components/common/icons/data-table.d.ts +10 -0
- package/dist/components/common/icons/data-table.js +4 -10
- package/dist/components/common/icons/db.d.ts +10 -0
- package/dist/components/common/icons/db.js +4 -10
- package/dist/components/common/icons/delete.d.ts +9 -0
- package/dist/components/common/icons/delete.js +4 -9
- package/dist/components/common/icons/docs.d.ts +9 -0
- package/dist/components/common/icons/docs.js +4 -10
- package/dist/components/common/icons/drag-n-drop.d.ts +9 -0
- package/dist/components/common/icons/drag-n-drop.js +4 -10
- package/dist/components/common/icons/draw-polygon.d.ts +10 -0
- package/dist/components/common/icons/draw-polygon.js +4 -13
- package/dist/components/common/icons/email.d.ts +9 -0
- package/dist/components/common/icons/email.js +4 -10
- package/dist/components/common/icons/expand.d.ts +9 -0
- package/dist/components/common/icons/expand.js +4 -10
- package/dist/components/common/icons/eye-seen.d.ts +9 -0
- package/dist/components/common/icons/eye-seen.js +4 -10
- package/dist/components/common/icons/eye-unseen.d.ts +9 -0
- package/dist/components/common/icons/eye-unseen.js +4 -10
- package/dist/components/common/icons/file-type.d.ts +8 -0
- package/dist/components/common/icons/file-type.js +1 -1
- package/dist/components/common/icons/file.d.ts +9 -0
- package/dist/components/common/icons/file.js +4 -10
- package/dist/components/common/icons/files.d.ts +9 -0
- package/dist/components/common/icons/files.js +3 -9
- package/dist/components/common/icons/filter-funnel.d.ts +9 -0
- package/dist/components/common/icons/filter-funnel.js +4 -10
- package/dist/components/common/icons/free-window.d.ts +11 -0
- package/dist/components/common/icons/free-window.js +1 -6
- package/dist/components/common/icons/gear.d.ts +9 -0
- package/dist/components/common/icons/gear.js +4 -10
- package/dist/components/common/icons/hash.d.ts +9 -0
- package/dist/components/common/icons/hash.js +4 -10
- package/dist/components/common/icons/histogram.d.ts +9 -0
- package/dist/components/common/icons/histogram.js +3 -8
- package/dist/components/common/icons/index.d.ts +78 -0
- package/dist/components/common/icons/index.js +15 -1
- package/dist/components/common/icons/info.d.ts +12 -0
- package/dist/components/common/icons/info.js +4 -10
- package/dist/components/common/icons/layers.d.ts +9 -0
- package/dist/components/common/icons/layers.js +4 -10
- package/dist/components/common/icons/left-arrow.d.ts +9 -0
- package/dist/components/common/icons/left-arrow.js +4 -10
- package/dist/components/common/icons/legend.d.ts +9 -0
- package/dist/components/common/icons/legend.js +4 -10
- package/dist/components/common/icons/line-chart.d.ts +9 -0
- package/dist/components/common/icons/line-chart.js +4 -9
- package/dist/components/common/icons/login.d.ts +9 -0
- package/dist/components/common/icons/login.js +4 -9
- package/dist/components/common/icons/logout.d.ts +9 -0
- package/dist/components/common/icons/logout.js +4 -9
- package/dist/components/common/icons/map-icon.d.ts +11 -0
- package/dist/components/common/icons/map-icon.js +4 -11
- package/dist/components/common/icons/map.d.ts +11 -0
- package/dist/components/common/icons/map.js +4 -11
- package/dist/components/common/icons/messages.d.ts +9 -0
- package/dist/components/common/icons/messages.js +4 -10
- package/dist/components/common/icons/minus.d.ts +9 -0
- package/dist/components/common/icons/minus.js +4 -10
- package/dist/components/common/icons/order-by-dataset.d.ts +12 -0
- package/dist/components/common/icons/order-by-dataset.js +51 -0
- package/dist/components/common/icons/order-by-list.d.ts +12 -0
- package/dist/components/common/icons/order-by-list.js +43 -0
- package/dist/components/common/icons/pause.d.ts +9 -0
- package/dist/components/common/icons/pause.js +4 -10
- package/dist/components/common/icons/picture.d.ts +9 -0
- package/dist/components/common/icons/picture.js +3 -9
- package/dist/components/common/icons/pin.d.ts +9 -0
- package/dist/components/common/icons/pin.js +12 -14
- package/dist/components/common/icons/play.d.ts +9 -0
- package/dist/components/common/icons/play.js +4 -10
- package/dist/components/common/icons/polygon.d.ts +10 -0
- package/dist/components/common/icons/polygon.js +4 -13
- package/dist/components/common/icons/rectangle.d.ts +10 -0
- package/dist/components/common/icons/rectangle.js +4 -13
- package/dist/components/common/icons/reduce.d.ts +9 -0
- package/dist/components/common/icons/reduce.js +4 -10
- package/dist/components/common/icons/reset.d.ts +9 -0
- package/dist/components/common/icons/reset.js +4 -10
- package/dist/components/common/icons/rocket.d.ts +9 -0
- package/dist/components/common/icons/rocket.js +4 -10
- package/dist/components/common/icons/save.d.ts +9 -0
- package/dist/components/common/icons/save.js +4 -10
- package/dist/components/common/icons/save2.d.ts +9 -0
- package/dist/components/common/icons/save2.js +4 -10
- package/dist/components/common/icons/search.d.ts +9 -0
- package/dist/components/common/icons/search.js +4 -10
- package/dist/components/common/icons/settings.d.ts +9 -0
- package/dist/components/common/icons/settings.js +4 -10
- package/dist/components/common/icons/share.d.ts +9 -0
- package/dist/components/common/icons/share.js +4 -10
- package/dist/components/common/icons/split.d.ts +9 -0
- package/dist/components/common/icons/split.js +4 -10
- package/dist/components/common/icons/square-select.d.ts +9 -0
- package/dist/components/common/icons/square-select.js +4 -10
- package/dist/components/common/icons/swap-horizontal.js +5 -6
- package/dist/components/common/icons/table.d.ts +9 -0
- package/dist/components/common/icons/table.js +4 -9
- package/dist/components/common/icons/trash.d.ts +9 -0
- package/dist/components/common/icons/trash.js +4 -10
- package/dist/components/common/icons/upload.d.ts +9 -0
- package/dist/components/common/icons/upload.js +4 -11
- package/dist/components/common/icons/vert-dots.d.ts +9 -0
- package/dist/components/common/icons/vert-dots.js +4 -10
- package/dist/components/common/icons/vert-three-dots.d.ts +9 -0
- package/dist/components/common/icons/vert-three-dots.js +4 -10
- package/dist/components/common/icons/warning.d.ts +10 -0
- package/dist/components/common/icons/warning.js +4 -10
- package/dist/components/common/image-preview.d.ts +15 -0
- package/dist/components/common/image-preview.js +1 -2
- package/dist/components/common/info-helper.d.ts +11 -0
- package/dist/components/common/info-helper.js +1 -7
- package/dist/components/common/item-selector/accessor.d.ts +7 -0
- package/dist/components/common/item-selector/accessor.js +1 -1
- package/dist/components/common/item-selector/chickleted-input.d.ts +21 -0
- package/dist/components/common/item-selector/chickleted-input.js +4 -24
- package/dist/components/common/item-selector/dropdown-list.d.ts +68 -0
- package/dist/components/common/item-selector/dropdown-list.js +30 -40
- package/dist/components/common/item-selector/item-selector-submenu.js +8 -9
- package/dist/components/common/item-selector/item-selector.d.ts +91 -0
- package/dist/components/common/item-selector/item-selector.js +33 -66
- package/dist/components/common/item-selector/typeahead.d.ts +115 -0
- package/dist/components/common/item-selector/typeahead.js +47 -72
- package/dist/components/common/line-chart.d.ts +34 -0
- package/dist/components/common/line-chart.js +9 -10
- package/dist/components/common/loading-spinner.d.ts +9 -0
- package/dist/components/common/loading-spinner.js +2 -4
- package/dist/components/common/logo.d.ts +8 -0
- package/dist/components/common/logo.js +5 -14
- package/dist/components/common/map-layer-selector.d.ts +13 -0
- package/dist/components/common/map-layer-selector.js +1 -2
- package/dist/components/common/modal.d.ts +49 -0
- package/dist/components/common/modal.js +7 -21
- package/dist/components/common/portaled.d.ts +527 -0
- package/dist/components/common/portaled.js +29 -28
- package/dist/components/common/progress-bar.d.ts +12 -0
- package/dist/components/common/progress-bar.js +1 -2
- package/dist/components/common/range-brush.d.ts +19 -0
- package/dist/components/common/range-brush.js +29 -30
- package/dist/components/common/range-plot.d.ts +35 -0
- package/dist/components/common/range-plot.js +2 -15
- package/dist/components/common/range-slider.d.ts +32 -0
- package/dist/components/common/range-slider.js +31 -46
- package/dist/components/common/slider/mouse-event.d.ts +27 -0
- package/dist/components/common/slider/mouse-event.js +49 -44
- package/dist/components/common/slider/slider-bar-handle.d.ts +29 -0
- package/dist/components/common/slider/slider-bar-handle.js +7 -16
- package/dist/components/common/slider/slider-handle.d.ts +33 -0
- package/dist/components/common/slider/slider-handle.js +12 -19
- package/dist/components/common/slider/slider.d.ts +70 -0
- package/dist/components/common/slider/slider.js +42 -62
- package/dist/components/common/styled-components.d.ts +119 -0
- package/dist/components/common/styled-components.js +21 -11
- package/dist/components/common/switch.d.ts +16 -0
- package/dist/components/common/switch.js +1 -16
- package/dist/components/common/time-range-slider-time-title.d.ts +9 -0
- package/dist/components/common/time-range-slider-time-title.js +1 -1
- package/dist/components/common/time-range-slider.d.ts +32 -0
- package/dist/components/common/time-range-slider.js +4 -22
- package/dist/components/common/time-slider-marker.d.ts +21 -0
- package/dist/components/common/time-slider-marker.js +2 -2
- package/dist/components/common/tippy-tooltip.d.ts +4 -0
- package/dist/components/common/tippy-tooltip.js +115 -0
- package/dist/components/common/toolbar-item.d.ts +14 -0
- package/dist/components/common/toolbar-item.js +8 -6
- package/dist/components/common/toolbar.d.ts +5 -0
- package/dist/components/common/toolbar.js +1 -1
- package/dist/components/common/vertical-toolbar.d.ts +3 -0
- package/dist/components/common/vertical-toolbar.js +1 -1
- package/dist/components/container.d.ts +39 -0
- package/dist/components/container.js +38 -31
- package/dist/components/context.d.ts +7 -0
- package/dist/components/context.js +1 -1
- package/dist/components/editor/constants.d.ts +17 -0
- package/dist/components/editor/constants.js +1 -1
- package/dist/components/editor/editor.d.ts +29 -0
- package/dist/components/editor/editor.js +26 -42
- package/dist/components/editor/feature-action-panel.d.ts +27 -0
- package/dist/components/editor/feature-action-panel.js +13 -18
- package/dist/components/editor/feature-styles.d.ts +24 -0
- package/dist/components/editor/feature-styles.js +3 -3
- package/dist/components/editor/handle-style.d.ts +38 -0
- package/dist/components/editor/handle-style.js +3 -3
- package/dist/components/filters/components.d.ts +1 -0
- package/dist/components/filters/components.js +1 -1
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -0
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +5 -8
- package/dist/components/filters/filter-panels/multi-select-filter-panel.d.ts +9 -0
- package/dist/components/filters/filter-panels/multi-select-filter-panel.js +3 -10
- package/dist/components/filters/filter-panels/new-filter-panel.d.ts +12 -0
- package/dist/components/filters/filter-panels/new-filter-panel.js +4 -10
- package/dist/components/filters/filter-panels/polygon-filter-panel.d.ts +9 -0
- package/dist/components/filters/filter-panels/polygon-filter-panel.js +6 -11
- package/dist/components/filters/filter-panels/range-filter-panel.d.ts +9 -0
- package/dist/components/filters/filter-panels/range-filter-panel.js +3 -10
- package/dist/components/filters/filter-panels/single-select-filter-panel.d.ts +9 -0
- package/dist/components/filters/filter-panels/single-select-filter-panel.js +3 -10
- package/dist/components/filters/filter-panels/time-range-filter-panel.d.ts +8 -0
- package/dist/components/filters/filter-panels/time-range-filter-panel.js +6 -9
- package/dist/components/filters/filter-panels/types.d.ts +36 -0
- package/dist/components/filters/filter-panels/types.js +6 -0
- package/dist/components/filters/index.d.ts +5 -0
- package/dist/components/filters/index.js +1 -1
- package/dist/components/filters/multi-select-filter.d.ts +3 -0
- package/dist/components/filters/multi-select-filter.js +1 -1
- package/dist/components/filters/polygon-filter.d.ts +4 -0
- package/dist/components/filters/polygon-filter.js +3 -4
- package/dist/components/filters/range-filter.d.ts +8 -0
- package/dist/components/filters/range-filter.js +2 -2
- package/dist/components/filters/single-select-filter.d.ts +3 -0
- package/dist/components/filters/single-select-filter.js +1 -1
- package/dist/components/filters/time-range-filter.d.ts +28 -0
- package/dist/components/filters/time-range-filter.js +1 -1
- package/dist/components/filters/time-widget.d.ts +14 -0
- package/dist/components/filters/time-widget.js +2 -3
- package/dist/components/filters/types.d.ts +53 -0
- package/dist/components/filters/types.js +6 -0
- package/dist/components/geocoder/geocoder.d.ts +33 -0
- package/dist/components/geocoder/geocoder.js +17 -17
- package/dist/components/geocoder-panel.d.ts +28 -0
- package/dist/components/geocoder-panel.js +24 -31
- package/dist/components/index.d.ts +165 -0
- package/dist/components/index.js +98 -15
- package/dist/components/injector.d.ts +25 -0
- package/dist/components/injector.js +4 -4
- package/dist/components/kepler-gl.d.ts +302 -0
- package/dist/components/kepler-gl.js +60 -43
- package/dist/components/map/coordinate-info.d.ts +7 -0
- package/dist/components/map/coordinate-info.js +1 -1
- package/dist/components/map/layer-hover-info.d.ts +13 -0
- package/dist/components/map/layer-hover-info.js +1 -2
- package/dist/components/map/layer-selector-panel.d.ts +22 -0
- package/dist/components/map/layer-selector-panel.js +2 -2
- package/dist/components/map/locale-panel.d.ts +16 -0
- package/dist/components/map/locale-panel.js +17 -13
- package/dist/components/map/map-control-panel.d.ts +14 -0
- package/dist/components/map/map-control-panel.js +20 -5
- package/dist/components/map/map-control-toolbar.d.ts +2 -0
- package/dist/components/map/map-control-toolbar.js +1 -1
- package/dist/components/map/map-control-tooltip.d.ts +7 -0
- package/dist/components/map/map-control-tooltip.js +3 -3
- package/dist/components/map/map-control.d.ts +44 -0
- package/dist/components/map/map-control.js +2 -2
- package/dist/components/map/map-draw-panel.d.ts +21 -0
- package/dist/components/map/map-draw-panel.js +19 -13
- package/dist/components/map/map-legend-panel.d.ts +23 -0
- package/dist/components/map/map-legend-panel.js +101 -56
- package/dist/components/map/map-legend.d.ts +55 -0
- package/dist/components/map/map-legend.js +20 -12
- package/dist/components/map/map-popover.d.ts +37 -0
- package/dist/components/map/map-popover.js +7 -4
- package/dist/components/map/split-map-button.d.ts +19 -0
- package/dist/components/map/split-map-button.js +18 -15
- package/dist/components/map/toggle-3d-button.d.ts +16 -0
- package/dist/components/map/toggle-3d-button.js +19 -15
- package/dist/components/map-container.d.ts +58 -0
- package/dist/components/map-container.js +60 -73
- package/dist/components/maps-layout.d.ts +10 -0
- package/dist/components/maps-layout.js +6 -5
- package/dist/components/modal-container.d.ts +65 -0
- package/dist/components/modal-container.js +29 -54
- package/dist/components/modals/add-map-style-modal.d.ts +17 -0
- package/dist/components/modals/add-map-style-modal.js +10 -18
- package/dist/components/modals/cloud-tile.d.ts +15 -0
- package/dist/components/modals/cloud-tile.js +1 -1
- package/dist/components/modals/data-table-modal.d.ts +29 -0
- package/dist/components/modals/data-table-modal.js +33 -29
- package/dist/components/modals/delete-data-modal.d.ts +10 -0
- package/dist/components/modals/delete-data-modal.js +1 -1
- package/dist/components/modals/error-display.d.ts +6 -0
- package/dist/components/modals/error-display.js +1 -1
- package/dist/components/modals/export-data-modal.d.ts +25 -0
- package/dist/components/modals/export-data-modal.js +12 -28
- package/dist/components/modals/export-image-modal.d.ts +18 -0
- package/dist/components/modals/export-image-modal.js +2 -2
- package/dist/components/modals/export-map-modal/components.d.ts +8 -0
- package/dist/components/modals/export-map-modal/components.js +1 -1
- package/dist/components/modals/export-map-modal/export-html-map.d.ts +12 -0
- package/dist/components/modals/export-map-modal/export-html-map.js +1 -2
- package/dist/components/modals/export-map-modal/export-json-map.d.ts +9 -0
- package/dist/components/modals/export-map-modal/export-json-map.js +20 -9
- package/dist/components/modals/export-map-modal/export-map-modal.d.ts +27 -0
- package/dist/components/modals/export-map-modal/export-map-modal.js +6 -18
- package/dist/components/modals/image-modal-container.d.ts +18 -0
- package/dist/components/modals/image-modal-container.js +5 -5
- package/dist/components/modals/load-data-modal.d.ts +33 -0
- package/dist/components/modals/load-data-modal.js +4 -4
- package/dist/components/modals/load-storage-map.d.ts +26 -0
- package/dist/components/modals/load-storage-map.js +10 -12
- package/dist/components/modals/loading-dialog.d.ts +7 -0
- package/dist/components/modals/loading-dialog.js +1 -1
- package/dist/components/modals/modal-dialog.d.ts +2 -0
- package/dist/components/modals/modal-dialog.js +1 -1
- package/dist/components/modals/modal-tabs.d.ts +27 -0
- package/dist/components/modals/modal-tabs.js +2 -2
- package/dist/components/modals/overwrite-map-modal.d.ts +16 -0
- package/dist/components/modals/overwrite-map-modal.js +1 -1
- package/dist/components/modals/provider-modal-container.d.ts +23 -0
- package/dist/components/modals/provider-modal-container.js +8 -13
- package/dist/components/modals/save-map-modal.d.ts +29 -0
- package/dist/components/modals/save-map-modal.js +5 -6
- package/dist/components/modals/share-map-modal.d.ts +30 -0
- package/dist/components/modals/share-map-modal.js +19 -22
- package/dist/components/modals/status-panel.d.ts +13 -0
- package/dist/components/modals/status-panel.js +1 -1
- package/dist/components/modals/storage-map-viewer.d.ts +21 -0
- package/dist/components/modals/storage-map-viewer.js +5 -12
- package/dist/components/notification-panel/notification-item.d.ts +66 -0
- package/dist/components/notification-panel/notification-item.js +7 -18
- package/dist/components/notification-panel.d.ts +61 -0
- package/dist/components/notification-panel.js +6 -13
- package/dist/components/performance.d.ts +4 -0
- package/dist/components/performance.js +2 -1
- package/dist/components/plot-container.d.ts +24 -0
- package/dist/components/plot-container.js +35 -40
- package/dist/components/side-panel/cloud-storage-dropdown.d.ts +6 -0
- package/dist/components/side-panel/cloud-storage-dropdown.js +1 -1
- package/dist/components/side-panel/common/dataset-info.d.ts +3 -0
- package/dist/components/side-panel/common/dataset-info.js +1 -1
- package/dist/components/side-panel/common/dataset-tag.d.ts +3 -0
- package/dist/components/side-panel/common/dataset-tag.js +37 -13
- package/dist/components/side-panel/common/dataset-title.d.ts +8 -0
- package/dist/components/side-panel/common/dataset-title.js +49 -19
- package/dist/components/side-panel/common/source-data-catalog.d.ts +9 -0
- package/dist/components/side-panel/common/source-data-catalog.js +5 -3
- package/dist/components/side-panel/common/source-data-selector.d.ts +8 -0
- package/dist/components/side-panel/common/source-data-selector.js +18 -13
- package/dist/components/side-panel/common/types.d.ts +58 -0
- package/dist/components/side-panel/common/types.js +6 -0
- package/dist/components/side-panel/custom-panel.d.ts +9 -0
- package/dist/components/side-panel/custom-panel.js +1 -1
- package/dist/components/side-panel/filter-manager.d.ts +20 -0
- package/dist/components/side-panel/filter-manager.js +7 -15
- package/dist/components/side-panel/filter-panel/filter-panel-header.d.ts +21 -0
- package/dist/components/side-panel/filter-panel/filter-panel-header.js +3 -6
- package/dist/components/side-panel/filter-panel/filter-panel.d.ts +23 -0
- package/dist/components/side-panel/filter-panel/filter-panel.js +15 -31
- package/dist/components/side-panel/interaction-manager.d.ts +14 -0
- package/dist/components/side-panel/interaction-manager.js +1 -1
- package/dist/components/side-panel/interaction-panel/brush-config.d.ts +15 -0
- package/dist/components/side-panel/interaction-panel/brush-config.js +1 -1
- package/dist/components/side-panel/interaction-panel/interaction-panel.d.ts +19 -0
- package/dist/components/side-panel/interaction-panel/interaction-panel.js +9 -17
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +28 -0
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +15 -21
- package/dist/components/side-panel/interaction-panel/tooltip-config.d.ts +38 -0
- package/dist/components/side-panel/interaction-panel/tooltip-config.js +7 -3
- package/dist/components/side-panel/layer-manager.d.ts +46 -0
- package/dist/components/side-panel/layer-manager.js +87 -192
- package/dist/components/side-panel/layer-panel/add-layer-button.d.ts +10 -0
- package/dist/components/side-panel/layer-panel/add-layer-button.js +147 -0
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.d.ts +8 -0
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +2 -2
- package/dist/components/side-panel/layer-panel/color-palette.d.ts +13 -0
- package/dist/components/side-panel/layer-panel/color-palette.js +7 -15
- package/dist/components/side-panel/layer-panel/color-range-selector.d.ts +129 -0
- package/dist/components/side-panel/layer-panel/color-range-selector.js +105 -142
- package/dist/components/side-panel/layer-panel/color-selector.d.ts +101 -0
- package/dist/components/side-panel/layer-panel/color-selector.js +16 -37
- package/dist/components/side-panel/layer-panel/column-selector.d.ts +22 -0
- package/dist/components/side-panel/layer-panel/column-selector.js +3 -3
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.d.ts +6 -0
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +2 -2
- package/dist/components/side-panel/layer-panel/custom-palette.d.ts +38 -0
- package/dist/components/side-panel/layer-panel/custom-palette.js +55 -61
- package/dist/components/side-panel/layer-panel/custom-picker.d.ts +67 -0
- package/dist/components/side-panel/layer-panel/custom-picker.js +7 -16
- package/dist/components/side-panel/layer-panel/dataset-layer-group.d.ts +24 -0
- package/dist/components/side-panel/layer-panel/dataset-layer-group.js +81 -0
- package/dist/components/side-panel/layer-panel/dataset-layer-section.d.ts +25 -0
- package/dist/components/side-panel/layer-panel/dataset-layer-section.js +74 -0
- package/dist/components/side-panel/layer-panel/dataset-section.d.ts +26 -0
- package/dist/components/side-panel/layer-panel/dataset-section.js +91 -0
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.d.ts +10 -0
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +1 -1
- package/dist/components/side-panel/layer-panel/hex-column-config.d.ts +62 -0
- package/dist/components/side-panel/layer-panel/hex-column-config.js +4 -5
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.d.ts +8 -0
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +1 -1
- package/dist/components/side-panel/layer-panel/layer-column-config.d.ts +20 -0
- package/dist/components/side-panel/layer-panel/layer-column-config.js +2 -13
- package/dist/components/side-panel/layer-panel/layer-config-group.d.ts +37 -0
- package/dist/components/side-panel/layer-panel/layer-config-group.js +11 -13
- package/dist/components/side-panel/layer-panel/layer-configurator.d.ts +415 -0
- package/dist/components/side-panel/layer-panel/layer-configurator.js +70 -63
- package/dist/components/side-panel/layer-panel/layer-list.d.ts +20 -0
- package/dist/components/side-panel/layer-panel/layer-list.js +168 -0
- package/dist/components/side-panel/layer-panel/layer-panel-header.d.ts +43 -0
- package/dist/components/side-panel/layer-panel/layer-panel-header.js +10 -24
- package/dist/components/side-panel/layer-panel/layer-panel.d.ts +40 -0
- package/dist/components/side-panel/layer-panel/layer-panel.js +19 -38
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.d.ts +17 -0
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +2 -2
- package/dist/components/side-panel/layer-panel/layer-type-list-item.d.ts +11 -0
- package/dist/components/side-panel/layer-panel/layer-type-list-item.js +1 -1
- package/dist/components/side-panel/layer-panel/layer-type-selector.d.ts +23 -0
- package/dist/components/side-panel/layer-panel/layer-type-selector.js +2 -8
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.d.ts +23 -0
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +3 -3
- package/dist/components/side-panel/layer-panel/panel-view-list-toggle.d.ts +36 -0
- package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +116 -0
- package/dist/components/side-panel/layer-panel/single-color-palette.d.ts +12 -0
- package/dist/components/side-panel/layer-panel/single-color-palette.js +27 -58
- package/dist/components/side-panel/layer-panel/text-label-panel.d.ts +18 -0
- package/dist/components/side-panel/layer-panel/text-label-panel.js +9 -16
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.d.ts +35 -0
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +22 -35
- package/dist/components/side-panel/layer-panel/vis-config-slider.d.ts +20 -0
- package/dist/components/side-panel/layer-panel/vis-config-slider.js +130 -34
- package/dist/components/side-panel/layer-panel/vis-config-switch.d.ts +16 -0
- package/dist/components/side-panel/layer-panel/vis-config-switch.js +1 -11
- package/dist/components/side-panel/map-manager.d.ts +21 -0
- package/dist/components/side-panel/map-manager.js +9 -17
- package/dist/components/side-panel/map-style-panel/map-layer-selector.d.ts +19 -0
- package/dist/components/side-panel/map-style-panel/map-layer-selector.js +1 -1
- package/dist/components/side-panel/map-style-panel/map-style-selector.d.ts +16 -0
- package/dist/components/side-panel/map-style-panel/map-style-selector.js +1 -1
- package/dist/components/side-panel/panel-dropdown.d.ts +18 -0
- package/dist/components/side-panel/panel-dropdown.js +5 -13
- package/dist/components/side-panel/panel-header-action.d.ts +20 -0
- package/dist/components/side-panel/panel-header-action.js +5 -18
- package/dist/components/side-panel/panel-header.d.ts +78 -0
- package/dist/components/side-panel/panel-header.js +17 -29
- package/dist/components/side-panel/panel-tab.d.ts +20 -0
- package/dist/components/side-panel/panel-tab.js +1 -1
- package/dist/components/side-panel/panel-title.d.ts +4 -0
- package/dist/components/side-panel/panel-title.js +7 -2
- package/dist/components/side-panel/panel-toggle.d.ts +14 -0
- package/dist/components/side-panel/panel-toggle.js +2 -9
- package/dist/components/side-panel/side-bar.d.ts +76 -0
- package/dist/components/side-panel/side-bar.js +6 -14
- package/dist/components/side-panel.d.ts +134 -0
- package/dist/components/side-panel.js +19 -17
- package/dist/components/types.d.ts +44 -0
- package/dist/components/types.js +6 -0
- package/dist/connect/keplergl-connect.d.ts +5 -0
- package/dist/connect/keplergl-connect.js +1 -1
- package/dist/connect/with-local-selector.d.ts +6 -0
- package/dist/connect/with-local-selector.js +10 -13
- package/dist/constants/action-types.d.ts +111 -0
- package/dist/constants/action-types.js +8 -3
- package/dist/constants/color-palette.d.ts +491 -0
- package/dist/constants/color-palette.js +1 -1
- package/dist/constants/color-ranges.d.ts +24 -0
- package/dist/constants/color-ranges.js +3 -1
- package/dist/constants/custom-color-ranges.d.ts +37 -0
- package/dist/constants/custom-color-ranges.js +1 -1
- package/dist/constants/default-settings.d.ts +773 -0
- package/dist/constants/default-settings.js +25 -13
- package/dist/constants/index.d.ts +9 -0
- package/dist/constants/index.js +1 -1
- package/dist/constants/keyevent.d.ts +2 -0
- package/dist/constants/keyevent.js +1 -1
- package/dist/constants/tooltip.d.ts +165 -0
- package/dist/constants/tooltip.js +1 -1
- package/dist/constants/user-feedbacks.d.ts +5 -0
- package/dist/constants/user-feedbacks.js +1 -1
- package/dist/constants/user-guides.d.ts +9 -0
- package/dist/constants/user-guides.js +1 -1
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.d.ts +13 -0
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +13 -6
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.d.ts +7 -0
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +1 -1
- package/dist/deckgl-layers/3d-building-layer/types.d.ts +37 -0
- package/dist/deckgl-layers/3d-building-layer/types.js +6 -0
- package/dist/deckgl-layers/cluster-layer/cluster-layer.js +4 -5
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.d.ts +6 -0
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +9 -9
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.d.ts +13 -0
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +15 -14
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.d.ts +13 -0
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +15 -14
- package/dist/deckgl-layers/layer-utils/cluster-utils.js +4 -5
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.d.ts +91 -0
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +9 -10
- package/dist/deckgl-layers/layer-utils/shader-utils.d.ts +1 -0
- package/dist/deckgl-layers/layer-utils/shader-utils.js +1 -1
- package/dist/deckgl-layers/line-layer/line-layer.d.ts +12 -0
- package/dist/deckgl-layers/line-layer/line-layer.js +17 -15
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.d.ts +8 -0
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +18 -12
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.d.ts +18 -0
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +14 -5
- package/dist/index.d.ts +11 -0
- package/dist/index.js +2 -2
- package/dist/layers/aggregation-layer.d.ts +70 -0
- package/dist/layers/aggregation-layer.js +34 -24
- package/dist/layers/arc-layer/arc-layer-icon.d.ts +16 -0
- package/dist/layers/arc-layer/arc-layer-icon.js +4 -5
- package/dist/layers/arc-layer/arc-layer.d.ts +143 -0
- package/dist/layers/arc-layer/arc-layer.js +21 -19
- package/dist/layers/base-layer.d.ts +436 -0
- package/dist/layers/base-layer.js +96 -80
- package/dist/layers/cluster-layer/cluster-layer-icon.d.ts +16 -0
- package/dist/layers/cluster-layer/cluster-layer-icon.js +4 -5
- package/dist/layers/cluster-layer/cluster-layer.d.ts +39 -0
- package/dist/layers/cluster-layer/cluster-layer.js +4 -5
- package/dist/layers/default-layer-icon.d.ts +14 -0
- package/dist/layers/default-layer-icon.js +4 -5
- package/dist/layers/geojson-layer/geojson-layer-icon.d.ts +15 -0
- package/dist/layers/geojson-layer/geojson-layer-icon.js +4 -5
- package/dist/layers/geojson-layer/geojson-layer.d.ts +227 -0
- package/dist/layers/geojson-layer/geojson-layer.js +25 -15
- package/dist/layers/geojson-layer/geojson-utils.d.ts +44 -0
- package/dist/layers/geojson-layer/geojson-utils.js +19 -6
- package/dist/layers/grid-layer/grid-layer-icon.d.ts +15 -0
- package/dist/layers/grid-layer/grid-layer-icon.js +4 -5
- package/dist/layers/grid-layer/grid-layer.d.ts +74 -0
- package/dist/layers/grid-layer/grid-layer.js +5 -5
- package/dist/layers/grid-layer/grid-utils.d.ts +24 -0
- package/dist/layers/grid-layer/grid-utils.js +7 -7
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.d.ts +16 -0
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +4 -5
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.d.ts +170 -0
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +15 -8
- package/dist/layers/h3-hexagon-layer/h3-utils.d.ts +20 -0
- package/dist/layers/h3-hexagon-layer/h3-utils.js +2 -2
- package/dist/layers/heatmap-layer/heatmap-layer-icon.d.ts +15 -0
- package/dist/layers/heatmap-layer/heatmap-layer-icon.js +4 -5
- package/dist/layers/heatmap-layer/heatmap-layer.d.ts +144 -0
- package/dist/layers/heatmap-layer/heatmap-layer.js +26 -32
- package/dist/layers/hexagon-layer/hexagon-layer-icon.d.ts +15 -0
- package/dist/layers/hexagon-layer/hexagon-layer-icon.js +4 -5
- package/dist/layers/hexagon-layer/hexagon-layer.d.ts +78 -0
- package/dist/layers/hexagon-layer/hexagon-layer.js +5 -5
- package/dist/layers/hexagon-layer/hexagon-utils.d.ts +7 -0
- package/dist/layers/hexagon-layer/hexagon-utils.js +1 -1
- package/dist/layers/icon-layer/icon-info-modal.d.ts +3 -0
- package/dist/layers/icon-layer/icon-info-modal.js +3 -2
- package/dist/layers/icon-layer/icon-layer-icon.d.ts +15 -0
- package/dist/layers/icon-layer/icon-layer-icon.js +4 -5
- package/dist/layers/icon-layer/icon-layer.d.ts +119 -0
- package/dist/layers/icon-layer/icon-layer.js +24 -12
- package/dist/layers/index.d.ts +53 -0
- package/dist/layers/index.js +3 -3
- package/dist/layers/layer-factory.d.ts +150 -0
- package/dist/layers/layer-factory.js +54 -39
- package/dist/layers/layer-text-label.d.ts +7 -0
- package/dist/layers/layer-text-label.js +1 -3
- package/dist/layers/layer-update.d.ts +9 -0
- package/dist/layers/layer-update.js +1 -2
- package/dist/layers/line-layer/line-layer-icon.d.ts +15 -0
- package/dist/layers/line-layer/line-layer-icon.js +4 -5
- package/dist/layers/line-layer/line-layer.d.ts +136 -0
- package/dist/layers/line-layer/line-layer.js +28 -26
- package/dist/layers/mapbox-utils.d.ts +57 -0
- package/dist/layers/mapbox-utils.js +9 -14
- package/dist/layers/mapboxgl-layer.d.ts +87 -0
- package/dist/layers/mapboxgl-layer.js +19 -13
- package/dist/layers/point-layer/point-layer-icon.d.ts +15 -0
- package/dist/layers/point-layer/point-layer-icon.js +4 -5
- package/dist/layers/point-layer/point-layer.d.ts +272 -0
- package/dist/layers/point-layer/point-layer.js +31 -17
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.d.ts +189 -0
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +15 -11
- package/dist/layers/s2-geometry-layer/s2-layer-icon.d.ts +15 -0
- package/dist/layers/s2-geometry-layer/s2-layer-icon.js +4 -5
- package/dist/layers/s2-geometry-layer/s2-utils.d.ts +7 -0
- package/dist/layers/s2-geometry-layer/s2-utils.js +7 -1
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.d.ts +3 -0
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +1 -1
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.d.ts +15 -0
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +4 -5
- package/dist/layers/scenegraph-layer/scenegraph-layer.d.ts +80 -0
- package/dist/layers/scenegraph-layer/scenegraph-layer.js +9 -6
- package/dist/layers/trip-layer/trip-info-modal.d.ts +3 -0
- package/dist/layers/trip-layer/trip-info-modal.js +1 -1
- package/dist/layers/trip-layer/trip-layer-icon.d.ts +15 -0
- package/dist/layers/trip-layer/trip-layer-icon.js +4 -5
- package/dist/layers/trip-layer/trip-layer.d.ts +157 -0
- package/dist/layers/trip-layer/trip-layer.js +21 -13
- package/dist/layers/trip-layer/trip-utils.d.ts +31 -0
- package/dist/layers/trip-layer/trip-utils.js +13 -14
- package/dist/layers/types.d.ts +15 -0
- package/dist/layers/types.js +1 -1
- package/dist/localization/formatted-message.d.ts +12 -0
- package/dist/localization/formatted-message.js +6 -7
- package/dist/localization/index.d.ts +5 -0
- package/dist/localization/index.js +2 -2
- package/dist/localization/locales.d.ts +27 -0
- package/dist/localization/locales.js +1 -1
- package/dist/localization/messages.d.ts +4 -0
- package/dist/localization/messages.js +37 -0
- package/dist/localization/translations/ca.d.ts +438 -0
- package/dist/localization/translations/ca.js +466 -0
- package/dist/localization/translations/cn.d.ts +441 -0
- package/dist/localization/translations/cn.js +469 -0
- package/dist/localization/translations/en.d.ts +466 -0
- package/dist/localization/translations/en.js +494 -0
- package/dist/localization/translations/es.d.ts +438 -0
- package/dist/localization/translations/es.js +466 -0
- package/dist/localization/translations/fi.d.ts +410 -0
- package/dist/localization/translations/fi.js +438 -0
- package/dist/localization/translations/ja.d.ts +439 -0
- package/dist/localization/translations/ja.js +467 -0
- package/dist/localization/translations/pt.d.ts +410 -0
- package/dist/localization/translations/pt.js +438 -0
- package/dist/localization/translations/ru.d.ts +447 -0
- package/dist/localization/translations/ru.js +475 -0
- package/dist/middleware/index.d.ts +8 -0
- package/dist/middleware/index.js +3 -3
- package/dist/processors/data-processor.d.ts +242 -0
- package/dist/processors/data-processor.js +44 -43
- package/dist/processors/file-handler.d.ts +28 -0
- package/dist/processors/file-handler.js +18 -17
- package/dist/processors/index.d.ts +3 -0
- package/dist/processors/index.js +12 -1
- package/dist/processors/types.d.ts +21 -0
- package/dist/processors/types.js +6 -0
- package/dist/reducers/combined-updaters.d.ts +52 -0
- package/dist/reducers/combined-updaters.js +3 -7
- package/dist/reducers/composer-helpers.d.ts +21 -0
- package/dist/reducers/composer-helpers.js +7 -7
- package/dist/reducers/composers.d.ts +12 -0
- package/dist/reducers/composers.js +2 -2
- package/dist/reducers/core.d.ts +65 -0
- package/dist/reducers/core.js +2 -6
- package/dist/reducers/index.d.ts +19 -0
- package/dist/reducers/index.js +14 -2
- package/dist/reducers/map-state-updaters.d.ts +96 -0
- package/dist/reducers/map-state-updaters.js +4 -11
- package/dist/reducers/map-state.d.ts +4 -0
- package/dist/reducers/map-state.js +3 -3
- package/dist/reducers/map-style-updaters.d.ts +204 -0
- package/dist/reducers/map-style-updaters.js +23 -37
- package/dist/reducers/map-style.d.ts +16 -0
- package/dist/reducers/map-style.js +3 -3
- package/dist/reducers/provider-state-updaters.d.ts +41 -0
- package/dist/reducers/provider-state-updaters.js +27 -72
- package/dist/reducers/provider-state.d.ts +4 -0
- package/dist/reducers/provider-state.js +3 -3
- package/dist/reducers/root.d.ts +24 -0
- package/dist/reducers/root.js +4 -4
- package/dist/reducers/types.d.ts +16 -0
- package/dist/reducers/types.js +6 -0
- package/dist/reducers/ui-state-updaters.d.ts +434 -0
- package/dist/reducers/ui-state-updaters.js +27 -38
- package/dist/reducers/ui-state.d.ts +3 -0
- package/dist/reducers/ui-state.js +5 -4
- package/dist/reducers/vis-state-merger.d.ts +110 -0
- package/dist/reducers/vis-state-merger.js +47 -43
- package/dist/reducers/vis-state-selectors.d.ts +10 -0
- package/dist/reducers/vis-state-selectors.js +1 -1
- package/dist/reducers/vis-state-updaters.d.ts +645 -0
- package/dist/reducers/vis-state-updaters.js +72 -126
- package/dist/reducers/vis-state.d.ts +4 -0
- package/dist/reducers/vis-state.js +4 -4
- package/dist/schemas/dataset-schema.d.ts +17 -0
- package/dist/schemas/dataset-schema.js +9 -12
- package/dist/schemas/index.d.ts +8 -0
- package/dist/schemas/index.js +2 -2
- package/dist/schemas/map-state-schema.d.ts +23 -0
- package/dist/schemas/map-state-schema.js +1 -1
- package/dist/schemas/map-style-schema.d.ts +38 -0
- package/dist/schemas/map-style-schema.js +5 -7
- package/dist/schemas/schema-manager.d.ts +271 -0
- package/dist/schemas/schema-manager.js +7 -5
- package/dist/schemas/schema-utils.d.ts +11 -0
- package/dist/schemas/schema-utils.js +1 -1
- package/dist/schemas/schema.d.ts +37 -0
- package/dist/schemas/schema.js +4 -4
- package/dist/schemas/versions.d.ts +5 -0
- package/dist/schemas/versions.js +1 -1
- package/dist/schemas/vis-state-schema.d.ts +214 -0
- package/dist/schemas/vis-state-schema.js +57 -77
- package/dist/styles/base.d.ts +1530 -0
- package/dist/styles/base.js +8 -4
- package/dist/styles/index.d.ts +2 -0
- package/dist/styles/index.js +1 -1
- package/dist/styles/media-breakpoints.d.ts +13 -0
- package/dist/styles/media-breakpoints.js +26 -7
- package/dist/tasks/tasks.d.ts +15 -0
- package/dist/tasks/tasks.js +12 -12
- package/dist/templates/export-map-html.d.ts +9 -0
- package/dist/templates/export-map-html.js +1 -1
- package/dist/utils/aggregate-utils.d.ts +3 -0
- package/dist/utils/aggregate-utils.js +1 -1
- package/dist/utils/color-utils.d.ts +44 -0
- package/dist/utils/color-utils.js +24 -9
- package/dist/utils/custom-scales.js +1 -1
- package/dist/utils/data-scale-utils.d.ts +23 -0
- package/dist/utils/data-scale-utils.js +1 -6
- package/dist/utils/data-utils.d.ts +115 -0
- package/dist/utils/data-utils.js +18 -39
- package/dist/utils/dataset-utils.d.ts +38 -0
- package/dist/utils/dataset-utils.js +4 -5
- package/dist/utils/dom-to-image.d.ts +73 -0
- package/dist/utils/dom-to-image.js +5 -5
- package/dist/utils/dom-utils.d.ts +20 -0
- package/dist/utils/dom-utils.js +1 -1
- package/dist/utils/export-utils.d.ts +56 -0
- package/dist/utils/export-utils.js +31 -25
- package/dist/utils/filter-utils.d.ts +267 -0
- package/dist/utils/filter-utils.js +40 -95
- package/dist/utils/gl-utils.d.ts +1 -0
- package/dist/utils/gl-utils.js +1 -1
- package/dist/utils/gpu-filter-utils.d.ts +28 -0
- package/dist/utils/gpu-filter-utils.js +13 -20
- package/dist/utils/index.d.ts +22 -0
- package/dist/utils/index.js +136 -38
- package/dist/utils/interaction-utils.d.ts +36 -0
- package/dist/utils/interaction-utils.js +10 -17
- package/dist/utils/layer-utils.d.ts +54 -0
- package/dist/utils/layer-utils.js +2 -3
- package/dist/utils/locale-utils.d.ts +2 -0
- package/dist/utils/locale-utils.js +5 -5
- package/dist/utils/map-info-utils.d.ts +1 -0
- package/dist/utils/map-info-utils.js +1 -1
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.d.ts +64 -0
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +18 -18
- package/dist/utils/map-style-utils/mapbox-utils.d.ts +3 -0
- package/dist/utils/map-style-utils/mapbox-utils.js +1 -1
- package/dist/utils/mapbox-utils.d.ts +7 -0
- package/dist/utils/mapbox-utils.js +1 -1
- package/dist/utils/notifications-utils.d.ts +54 -0
- package/dist/utils/notifications-utils.js +8 -8
- package/dist/utils/observe-dimensions.d.ts +15 -0
- package/dist/utils/observe-dimensions.js +8 -8
- package/dist/utils/projection-utils.d.ts +12 -0
- package/dist/utils/projection-utils.js +1 -1
- package/dist/utils/searcher-utils.d.ts +1 -0
- package/dist/utils/searcher-utils.js +1 -1
- package/dist/utils/split-map-utils.d.ts +29 -0
- package/dist/utils/split-map-utils.js +4 -4
- package/dist/utils/table-utils/data-container-interface.d.ts +115 -0
- package/dist/utils/table-utils/data-container-interface.js +6 -0
- package/dist/utils/table-utils/data-container-utils.d.ts +29 -0
- package/dist/utils/table-utils/data-container-utils.js +18 -7
- package/dist/utils/table-utils/data-row.d.ts +59 -0
- package/dist/utils/table-utils/data-row.js +61 -8
- package/dist/utils/table-utils/index.d.ts +1 -0
- package/dist/utils/table-utils/index.js +1 -1
- package/dist/utils/table-utils/indexed-data-container.d.ts +34 -0
- package/dist/utils/table-utils/indexed-data-container.js +18 -12
- package/dist/utils/table-utils/kepler-table.d.ts +168 -0
- package/dist/utils/table-utils/kepler-table.js +56 -22
- package/dist/utils/table-utils/row-data-container.d.ts +31 -0
- package/dist/utils/table-utils/row-data-container.js +11 -8
- package/dist/utils/utils.d.ts +98 -0
- package/dist/utils/utils.js +28 -4
- package/package.json +139 -60
- package/src/actions/action-wrapper.ts +183 -0
- package/src/actions/actions.ts +259 -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 +276 -0
- package/src/components/bottom-widget.tsx +277 -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 +250 -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 +47 -0
- package/src/components/common/field-selector.tsx +242 -0
- package/src/components/common/field-token.tsx +60 -0
- package/src/components/common/file-uploader/file-drop.tsx +209 -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 +89 -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 +2 -2
- 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 +91 -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 +2 -1
- package/src/components/common/item-selector/item-selector.d.ts +24 -27
- package/src/components/common/item-selector/item-selector.tsx +373 -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 +311 -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 +714 -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 +189 -0
- package/src/components/context.ts +32 -0
- package/src/components/editor/editor.tsx +234 -0
- package/src/components/editor/feature-action-panel.tsx +155 -0
- package/src/components/editor/feature-styles.ts +76 -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 +40 -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 +269 -0
- package/src/components/injector.d.ts +33 -0
- package/src/components/injector.tsx +171 -0
- package/src/components/kepler-gl.d.ts +1 -2
- package/src/components/kepler-gl.tsx +585 -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 +122 -0
- package/src/components/map/locale-panel.tsx +110 -0
- package/src/components/map/map-control-panel.tsx +142 -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 +284 -0
- package/src/components/map/map-popover.tsx +268 -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 +549 -0
- package/src/components/maps-layout.tsx +45 -0
- package/src/components/modal-container.tsx +555 -0
- package/src/components/modals/add-map-style-modal.tsx +304 -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 +86 -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 +62 -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/performance.tsx +105 -0
- package/src/components/plot-container.tsx +243 -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 +187 -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.tsx +33 -0
- package/src/components/side-panel/layer-panel/color-palette.tsx +98 -0
- package/src/components/side-panel/layer-panel/color-range-selector.tsx +388 -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.tsx +30 -0
- package/src/components/side-panel/layer-panel/custom-palette.tsx +301 -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/hex-column-config.tsx +53 -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 +259 -0
- package/src/components/side-panel/layer-panel/layer-configurator.tsx +1419 -0
- package/src/components/side-panel/layer-panel/layer-list.tsx +193 -0
- package/src/components/side-panel/layer-panel/layer-panel-header.tsx +273 -0
- package/src/components/side-panel/layer-panel/layer-panel.tsx +197 -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.tsx +123 -0
- 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 +189 -0
- package/src/components/side-panel/layer-panel/vis-config-by-field-selector.tsx +187 -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 +54 -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 +141 -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 +1051 -0
- package/src/deckgl-layers/3d-building-layer/3d-building-layer.ts +63 -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 +70 -0
- package/src/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.ts +70 -0
- package/src/deckgl-layers/layer-utils/cluster-utils.ts +78 -0
- package/src/deckgl-layers/layer-utils/cpu-aggregator.ts +671 -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 +68 -0
- package/src/deckgl-layers/svg-icon-layer/svg-icon-layer.ts +102 -0
- package/src/index.ts +52 -0
- package/src/layers/aggregation-layer.ts +400 -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 +1744 -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 +462 -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 +154 -0
- package/src/layers/grid-layer/grid-utils.ts +84 -0
- package/src/layers/h3-hexagon-layer/h3-hexagon-layer.ts +340 -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 +157 -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 +396 -0
- package/src/layers/index.ts +81 -0
- package/src/layers/layer-factory.ts +707 -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 +223 -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 +507 -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 +250 -0
- package/src/processors/index.ts +23 -0
- package/src/processors/types.ts +22 -0
- package/src/reducers/combined-updaters.ts +215 -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 +638 -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 +230 -0
- package/src/reducers/types.ts +18 -0
- package/src/reducers/ui-state-updaters.ts +925 -0
- package/src/reducers/ui-state.ts +75 -0
- package/src/reducers/vis-state-merger.ts +625 -0
- package/src/reducers/vis-state-selectors.ts +35 -0
- package/src/reducers/vis-state-updaters.ts +2567 -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 +445 -0
- package/src/schemas/schema.ts +122 -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/tasks/tasks.ts +92 -0
- package/src/typedefs/deckgl.d.ts +25 -0
- package/src/utils/aggregate-utils.ts +71 -0
- package/src/utils/color-utils.ts +135 -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 +1181 -0
- package/src/utils/gpu-filter-utils.ts +249 -0
- package/src/utils/index.ts +72 -0
- package/src/utils/interaction-utils.ts +212 -0
- package/src/utils/layer-utils.ts +248 -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-interface.ts +140 -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 +638 -0
- package/src/utils/table-utils/row-data-container.ts +178 -0
- package/src/utils/utils.ts +228 -0
- package/actions.js +0 -21
- package/cloud-providers.js +0 -21
- package/components.js +0 -21
- package/constants.js +0 -21
- package/dist/components/common/icons/arrow-down-solid .js +0 -64
- package/dist/localization/en.js +0 -494
- package/layers.js +0 -21
- package/localization.js +0 -21
- package/middleware.js +0 -21
- package/processors.js +0 -21
- package/reducers.js +0 -21
- package/schemas.js +0 -21
- 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 -254
- package/src/components/injector.js +0 -161
- package/src/components/kepler-gl.js +0 -518
- 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 -499
- 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 -37
- package/src/components/modal-container.js +0 -543
- package/src/components/modals/add-map-style-modal.js +0 -298
- 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/performance.js +0 -103
- 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-dimension-scale-selector.js +0 -33
- package/src/components/side-panel/layer-panel/color-palette.js +0 -90
- package/src/components/side-panel/layer-panel/color-range-selector.js +0 -359
- 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-markers-config-group.js +0 -30
- 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/hex-column-config.js +0 -45
- 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-configurator.js +0 -1412
- 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/layer-visibility-by-zoom.js +0 -123
- 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/index.js +0 -52
- 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 -76
- package/src/layers/layer-factory.d.ts +0 -149
- package/src/layers/layer-factory.js +0 -487
- 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 -412
- 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 -22
- 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/tasks/tasks.js +0 -92
- 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/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 -57
- 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-interface.d.ts +0 -140
- 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/styles.js +0 -21
- /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-aggregation-resolution.js → layer-aggregation-resolution.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/templates/{export-map-html.js → export-map-html.ts} +0 -0
- /package/src/utils/{gl-utils.js → gl-utils.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/{index.js → index.ts} +0 -0
|
@@ -8,20 +8,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.ALL_TYPES = exports.ALL_STEPS = void 0;
|
|
9
9
|
exports.ColorPaletteGroupFactory = ColorPaletteGroupFactory;
|
|
10
10
|
exports.PaletteConfigFactory = PaletteConfigFactory;
|
|
11
|
-
exports["default"] =
|
|
11
|
+
exports["default"] = ColorRangeSelectorFactory;
|
|
12
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
13
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
14
14
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
15
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
16
16
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
17
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
18
17
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
18
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
20
19
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
21
20
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
22
21
|
var _react = _interopRequireWildcard(require("react"));
|
|
23
|
-
var
|
|
24
|
-
var _uniq = _interopRequireDefault(require("lodash/uniq"));
|
|
22
|
+
var _lodash = _interopRequireDefault(require("lodash.uniq"));
|
|
25
23
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
26
24
|
var _reselect = require("reselect");
|
|
27
25
|
var _itemSelector = _interopRequireDefault(require("../../common/item-selector/item-selector"));
|
|
@@ -55,12 +53,12 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4; // Co
|
|
|
55
53
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
56
54
|
// THE SOFTWARE.
|
|
57
55
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
58
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u &&
|
|
56
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
59
57
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
60
58
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
61
59
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
62
60
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
63
|
-
var ALL_TYPES = exports.ALL_TYPES = (0,
|
|
61
|
+
var ALL_TYPES = exports.ALL_TYPES = (0, _lodash["default"])(['all'].concat((0, _toConsumableArray2["default"])(_colorRanges.COLOR_RANGES.map(function (c) {
|
|
64
62
|
return c.type;
|
|
65
63
|
}).filter(function (ctype) {
|
|
66
64
|
return ctype;
|
|
@@ -68,7 +66,7 @@ var ALL_TYPES = exports.ALL_TYPES = (0, _uniq["default"])(['all'].concat((0, _to
|
|
|
68
66
|
value: _colorRanges.hexColor,
|
|
69
67
|
divider: true
|
|
70
68
|
}]));
|
|
71
|
-
var ALL_STEPS = exports.ALL_STEPS = (0,
|
|
69
|
+
var ALL_STEPS = exports.ALL_STEPS = (0, _lodash["default"])(_colorRanges.COLOR_RANGES.map(function (d) {
|
|
72
70
|
return d.colors.length;
|
|
73
71
|
})).sort(_dataUtils.numberSort);
|
|
74
72
|
var StyledColorConfig = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding: 12px 12px 0 12px;\n"])));
|
|
@@ -93,34 +91,33 @@ var CONFIG_SETTINGS = {
|
|
|
93
91
|
options: [true, false]
|
|
94
92
|
}
|
|
95
93
|
};
|
|
96
|
-
|
|
97
|
-
function
|
|
98
|
-
var
|
|
99
|
-
(
|
|
100
|
-
function ColorRangeSelect() {
|
|
94
|
+
ColorRangeSelectorFactory.deps = [ColorPaletteGroupFactory, PaletteConfigFactory, _hexColumnConfig.HexColumnConfigFactory];
|
|
95
|
+
function ColorRangeSelectorFactory(ColorPaletteGroup, PaletteConfig, HexColumnConfig) {
|
|
96
|
+
var ColorRangeSelector = /*#__PURE__*/function (_Component) {
|
|
97
|
+
function ColorRangeSelector() {
|
|
101
98
|
var _this;
|
|
102
|
-
(0, _classCallCheck2["default"])(this,
|
|
99
|
+
(0, _classCallCheck2["default"])(this, ColorRangeSelector);
|
|
103
100
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
104
101
|
args[_key] = arguments[_key];
|
|
105
102
|
}
|
|
106
|
-
_this = _callSuper(this,
|
|
107
|
-
(0, _defineProperty2["default"])(
|
|
103
|
+
_this = _callSuper(this, ColorRangeSelector, [].concat(args));
|
|
104
|
+
(0, _defineProperty2["default"])(_this, "colorRangesSelector", function (props) {
|
|
108
105
|
return props.colorRanges;
|
|
109
106
|
});
|
|
110
|
-
(0, _defineProperty2["default"])(
|
|
107
|
+
(0, _defineProperty2["default"])(_this, "configTypeSelector", function (props) {
|
|
111
108
|
return props.colorPaletteUI.colorRangeConfig.type;
|
|
112
109
|
});
|
|
113
|
-
(0, _defineProperty2["default"])(
|
|
110
|
+
(0, _defineProperty2["default"])(_this, "configStepSelector", function (props) {
|
|
114
111
|
return props.colorPaletteUI.colorRangeConfig.steps;
|
|
115
112
|
});
|
|
116
|
-
(0, _defineProperty2["default"])(
|
|
117
|
-
return
|
|
113
|
+
(0, _defineProperty2["default"])(_this, "filteredColorRange", (0, _reselect.createSelector)(_this.colorRangesSelector, _this.configTypeSelector, _this.configStepSelector, function (colorRanges, type, steps) {
|
|
114
|
+
return _colorRanges.COLOR_RANGES.filter(function (colorRange) {
|
|
118
115
|
var isType = type === 'all' || type === colorRange.type;
|
|
119
116
|
var isStep = Number(steps) === colorRange.colors.length;
|
|
120
117
|
return isType && isStep;
|
|
121
118
|
});
|
|
122
119
|
}));
|
|
123
|
-
(0, _defineProperty2["default"])(
|
|
120
|
+
(0, _defineProperty2["default"])(_this, "_updateConfig", function (_ref) {
|
|
124
121
|
var key = _ref.key,
|
|
125
122
|
value = _ref.value;
|
|
126
123
|
var steps = {};
|
|
@@ -138,17 +135,17 @@ function ColorRangeSelectFactory(ColorPaletteGroup, PaletteConfig, HexColumnConf
|
|
|
138
135
|
hexColumn: null
|
|
139
136
|
}), steps));
|
|
140
137
|
});
|
|
141
|
-
(0, _defineProperty2["default"])(
|
|
138
|
+
(0, _defineProperty2["default"])(_this, "_onSetCustomPalette", function (config) {
|
|
142
139
|
_this.props.setColorPaletteUI({
|
|
143
140
|
customPalette: config
|
|
144
141
|
});
|
|
145
142
|
});
|
|
146
|
-
(0, _defineProperty2["default"])(
|
|
143
|
+
(0, _defineProperty2["default"])(_this, "_setColorRangeConfig", function (newConfig) {
|
|
147
144
|
_this.props.setColorPaletteUI({
|
|
148
145
|
colorRangeConfig: newConfig
|
|
149
146
|
});
|
|
150
147
|
});
|
|
151
|
-
(0, _defineProperty2["default"])(
|
|
148
|
+
(0, _defineProperty2["default"])(_this, "_onCustomPaletteCancel", function () {
|
|
152
149
|
_this.props.setColorPaletteUI({
|
|
153
150
|
showSketcher: false,
|
|
154
151
|
colorRangeConfig: {
|
|
@@ -157,12 +154,12 @@ function ColorRangeSelectFactory(ColorPaletteGroup, PaletteConfig, HexColumnConf
|
|
|
157
154
|
}
|
|
158
155
|
});
|
|
159
156
|
});
|
|
160
|
-
(0, _defineProperty2["default"])(
|
|
157
|
+
(0, _defineProperty2["default"])(_this, "_onToggleSketcher", function (val) {
|
|
161
158
|
_this.props.setColorPaletteUI({
|
|
162
159
|
showSketcher: val
|
|
163
160
|
});
|
|
164
161
|
});
|
|
165
|
-
(0, _defineProperty2["default"])(
|
|
162
|
+
(0, _defineProperty2["default"])(_this, "_onSelectColumn", function (column) {
|
|
166
163
|
_this.props.onSelectColorColumn(column);
|
|
167
164
|
_this._setColorRangeConfig({
|
|
168
165
|
type: _colorRanges.hexColor,
|
|
@@ -171,7 +168,8 @@ function ColorRangeSelectFactory(ColorPaletteGroup, PaletteConfig, HexColumnConf
|
|
|
171
168
|
});
|
|
172
169
|
return _this;
|
|
173
170
|
}
|
|
174
|
-
(0,
|
|
171
|
+
(0, _inherits2["default"])(ColorRangeSelector, _Component);
|
|
172
|
+
return (0, _createClass2["default"])(ColorRangeSelector, [{
|
|
175
173
|
key: "render",
|
|
176
174
|
value: function render() {
|
|
177
175
|
var _this2 = this;
|
|
@@ -208,8 +206,9 @@ function ColorRangeSelectFactory(ColorPaletteGroup, PaletteConfig, HexColumnConf
|
|
|
208
206
|
});
|
|
209
207
|
})), colorRangeConfig.custom ? /*#__PURE__*/_react["default"].createElement(_customPalette["default"], {
|
|
210
208
|
customPalette: customPalette,
|
|
211
|
-
showSketcher: showSketcher
|
|
212
|
-
selected
|
|
209
|
+
showSketcher: showSketcher
|
|
210
|
+
// selected={this.props.selectedColorRange} // TODO: does not exist?
|
|
211
|
+
,
|
|
213
212
|
onApply: this.props.onSelectColorRange,
|
|
214
213
|
onToggleSketcher: this._onToggleSketcher,
|
|
215
214
|
setCustomPalette: this._onSetCustomPalette,
|
|
@@ -232,86 +231,62 @@ function ColorRangeSelectFactory(ColorPaletteGroup, PaletteConfig, HexColumnConf
|
|
|
232
231
|
}));
|
|
233
232
|
}
|
|
234
233
|
}]);
|
|
235
|
-
return ColorRangeSelect;
|
|
236
234
|
}(_react.Component);
|
|
237
|
-
(0, _defineProperty2["default"])(
|
|
238
|
-
fields: _propTypes["default"].arrayOf(_propTypes["default"].any),
|
|
239
|
-
colorPaletteUI: _propTypes["default"].object.isRequired,
|
|
240
|
-
selectedColorRange: _propTypes["default"].object.isRequired,
|
|
241
|
-
onSelectColorRange: _propTypes["default"].func.isRequired,
|
|
242
|
-
onSelectColorColumn: _propTypes["default"].func.isRequired,
|
|
243
|
-
setColorPaletteUI: _propTypes["default"].func.isRequired,
|
|
244
|
-
// optional
|
|
245
|
-
colorRanges: _propTypes["default"].arrayOf(_propTypes["default"].any),
|
|
246
|
-
noHexColor: _propTypes["default"].bool
|
|
247
|
-
});
|
|
248
|
-
(0, _defineProperty2["default"])(ColorRangeSelect, "defaultProps", {
|
|
235
|
+
(0, _defineProperty2["default"])(ColorRangeSelector, "defaultProps", {
|
|
249
236
|
colorRanges: _colorRanges.COLOR_RANGES,
|
|
250
237
|
onSelectColorRange: function onSelectColorRange() {},
|
|
251
238
|
setColorPaletteUI: function setColorPaletteUI() {}
|
|
252
239
|
});
|
|
253
|
-
return
|
|
240
|
+
return ColorRangeSelector;
|
|
254
241
|
}
|
|
255
242
|
function PaletteConfigFactory() {
|
|
256
|
-
var PaletteConfig =
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
value = _this$props.value,
|
|
268
|
-
_this$props$config = _this$props.config,
|
|
269
|
-
type = _this$props$config.type,
|
|
270
|
-
options = _this$props$config.options,
|
|
271
|
-
_onChange = _this$props.onChange;
|
|
272
|
-
return /*#__PURE__*/_react["default"].createElement(StyledPaletteConfig, {
|
|
273
|
-
className: "color-palette__config color-palette__config--".concat(label),
|
|
274
|
-
onClick: function onClick(e) {
|
|
275
|
-
return e.stopPropagation();
|
|
276
|
-
}
|
|
277
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
278
|
-
className: "color-palette__config__label"
|
|
279
|
-
}, type !== CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
|
|
280
|
-
id: "color.".concat(label)
|
|
281
|
-
}))), type === 'select' && /*#__PURE__*/_react["default"].createElement("div", {
|
|
282
|
-
className: "color-palette__config__select"
|
|
283
|
-
}, /*#__PURE__*/_react["default"].createElement(_itemSelector["default"], {
|
|
284
|
-
selectedItems: value,
|
|
285
|
-
options: options,
|
|
286
|
-
multiSelect: false,
|
|
287
|
-
searchable: false,
|
|
288
|
-
onChange: _onChange
|
|
289
|
-
})), type === 'switch' && /*#__PURE__*/_react["default"].createElement(_switch["default"], {
|
|
290
|
-
checked: value,
|
|
291
|
-
id: "".concat(label, "-toggle"),
|
|
292
|
-
onChange: function onChange() {
|
|
293
|
-
return _onChange(!value);
|
|
294
|
-
},
|
|
295
|
-
secondary: true
|
|
296
|
-
}), type === CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, (0, _extends2["default"])({
|
|
297
|
-
className: "color-palette__config__button ".concat(value ? 'color-palette__config__button--active' : ''),
|
|
298
|
-
"data-tip": true,
|
|
299
|
-
"data-for": "".concat(label, "-tooltip")
|
|
300
|
-
}, !value && {
|
|
301
|
-
link: true
|
|
302
|
-
}, {
|
|
303
|
-
onClick: function onClick() {
|
|
304
|
-
return _onChange(!value);
|
|
305
|
-
}
|
|
306
|
-
}), /*#__PURE__*/_react["default"].createElement(_icons.SwapHorizontal, null), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
307
|
-
id: "".concat(label, "-tooltip"),
|
|
308
|
-
effect: "solid",
|
|
309
|
-
place: "top"
|
|
310
|
-
}, label)));
|
|
243
|
+
var PaletteConfig = function PaletteConfig(_ref2) {
|
|
244
|
+
var label = _ref2.label,
|
|
245
|
+
value = _ref2.value,
|
|
246
|
+
_ref2$config = _ref2.config,
|
|
247
|
+
type = _ref2$config.type,
|
|
248
|
+
options = _ref2$config.options,
|
|
249
|
+
_onChange = _ref2.onChange;
|
|
250
|
+
return /*#__PURE__*/_react["default"].createElement(StyledPaletteConfig, {
|
|
251
|
+
className: "color-palette__config color-palette__config--".concat(label),
|
|
252
|
+
onClick: function onClick(e) {
|
|
253
|
+
return e.stopPropagation();
|
|
311
254
|
}
|
|
312
|
-
}]
|
|
313
|
-
|
|
314
|
-
|
|
255
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
256
|
+
className: "color-palette__config__label"
|
|
257
|
+
}, type !== CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
|
|
258
|
+
id: "color.".concat(label)
|
|
259
|
+
}))), type === 'select' && /*#__PURE__*/_react["default"].createElement("div", {
|
|
260
|
+
className: "color-palette__config__select"
|
|
261
|
+
}, /*#__PURE__*/_react["default"].createElement(_itemSelector["default"], {
|
|
262
|
+
selectedItems: value,
|
|
263
|
+
options: options,
|
|
264
|
+
multiSelect: false,
|
|
265
|
+
searchable: false,
|
|
266
|
+
onChange: _onChange
|
|
267
|
+
})), type === 'switch' && /*#__PURE__*/_react["default"].createElement(_switch["default"], {
|
|
268
|
+
checked: Boolean(value),
|
|
269
|
+
id: "".concat(label, "-toggle"),
|
|
270
|
+
onChange: function onChange() {
|
|
271
|
+
return _onChange(!value);
|
|
272
|
+
},
|
|
273
|
+
secondary: true
|
|
274
|
+
}), type === CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, (0, _extends2["default"])({
|
|
275
|
+
className: "color-palette__config__button ".concat(value ? 'color-palette__config__button--active' : ''),
|
|
276
|
+
"data-tip": true,
|
|
277
|
+
"data-for": "".concat(label, "-tooltip")
|
|
278
|
+
}, !value && {
|
|
279
|
+
link: true
|
|
280
|
+
}, {
|
|
281
|
+
onClick: function onClick() {
|
|
282
|
+
return _onChange(!value);
|
|
283
|
+
}
|
|
284
|
+
}), /*#__PURE__*/_react["default"].createElement(_icons.SwapHorizontal, null), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
285
|
+
id: "".concat(label, "-tooltip"),
|
|
286
|
+
effect: "solid",
|
|
287
|
+
place: "top"
|
|
288
|
+
}, label)));
|
|
289
|
+
};
|
|
315
290
|
return PaletteConfig;
|
|
316
291
|
}
|
|
317
292
|
var StyledColorRange = _styledComponents["default"].div.attrs({
|
|
@@ -320,47 +295,35 @@ var StyledColorRange = _styledComponents["default"].div.attrs({
|
|
|
320
295
|
return props.theme.panelBackgroundHover;
|
|
321
296
|
});
|
|
322
297
|
function ColorPaletteGroupFactory() {
|
|
323
|
-
var ColorPaletteGroup =
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
'data-for': "color-range-".concat(i, "-tooltip")
|
|
353
|
-
}
|
|
354
|
-
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
355
|
-
id: "color-range-".concat(i, "-tooltip"),
|
|
356
|
-
effect: "solid",
|
|
357
|
-
place: "top"
|
|
358
|
-
}, colorRange.name)));
|
|
359
|
-
}));
|
|
360
|
-
}
|
|
361
|
-
}]);
|
|
362
|
-
return ColorPaletteGroup;
|
|
363
|
-
}(_react.Component);
|
|
298
|
+
var ColorPaletteGroup = function ColorPaletteGroup(_ref3) {
|
|
299
|
+
var reversed = _ref3.reversed,
|
|
300
|
+
onSelect = _ref3.onSelect,
|
|
301
|
+
selected = _ref3.selected,
|
|
302
|
+
colorRanges = _ref3.colorRanges,
|
|
303
|
+
title = _ref3.title;
|
|
304
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
305
|
+
className: "color-palette__group"
|
|
306
|
+
}, title && title, colorRanges.map(function (colorRange, i) {
|
|
307
|
+
return /*#__PURE__*/_react["default"].createElement(StyledColorRange, {
|
|
308
|
+
key: "".concat(colorRange.name, "-").concat(i),
|
|
309
|
+
onClick: function onClick(e) {
|
|
310
|
+
return onSelect(reversed ? (0, _colorUtils.reverseColorRange)(true, colorRange) : colorRange, e);
|
|
311
|
+
}
|
|
312
|
+
}, /*#__PURE__*/_react["default"].createElement(_colorPalette["default"], {
|
|
313
|
+
colors: colorRange.colors,
|
|
314
|
+
isReversed: reversed,
|
|
315
|
+
isSelected: colorRange.name === selected.name,
|
|
316
|
+
rootProps: {
|
|
317
|
+
'data-tip': true,
|
|
318
|
+
'data-for': "color-range-".concat(i, "-tooltip")
|
|
319
|
+
}
|
|
320
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
321
|
+
id: "color-range-".concat(i, "-tooltip"),
|
|
322
|
+
effect: "solid",
|
|
323
|
+
place: "top"
|
|
324
|
+
}, colorRange.name)));
|
|
325
|
+
}));
|
|
326
|
+
};
|
|
364
327
|
return ColorPaletteGroup;
|
|
365
328
|
}
|
|
366
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcHJvcFR5cGVzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl91bmlxIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfcmVzZWxlY3QiLCJfaXRlbVNlbGVjdG9yIiwiX3N0eWxlZENvbXBvbmVudHMyIiwiX3N3aXRjaCIsIl9jb2xvclBhbGV0dGUiLCJfY3VzdG9tUGFsZXR0ZSIsIl9jb2xvclJhbmdlcyIsIl9kYXRhVXRpbHMiLCJfY29sb3JVdGlscyIsIl9sb2NhbGl6YXRpb24iLCJfaWNvbnMiLCJfaGV4Q29sdW1uQ29uZmlnIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInZhbHVlT2YiLCJBTExfVFlQRVMiLCJleHBvcnRzIiwidW5pcSIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJDT0xPUl9SQU5HRVMiLCJtYXAiLCJjIiwidHlwZSIsImN0eXBlIiwidmFsdWUiLCJoZXhDb2xvciIsImRpdmlkZXIiLCJBTExfU1RFUFMiLCJkIiwiY29sb3JzIiwic29ydCIsIm51bWJlclNvcnQiLCJTdHlsZWRDb2xvckNvbmZpZyIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJTdHlsZWRQYWxldHRlQ29uZmlnIiwicHJvcHMiLCJ0aGVtZSIsInNlY29uZGFyeUlucHV0IiwiQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSIsIkNPTkZJR19TRVRUSU5HUyIsIm9wdGlvbnMiLCJzdGVwcyIsInJldmVyc2VkIiwiQ29sb3JSYW5nZVNlbGVjdEZhY3RvcnkiLCJkZXBzIiwiQ29sb3JQYWxldHRlR3JvdXBGYWN0b3J5IiwiUGFsZXR0ZUNvbmZpZ0ZhY3RvcnkiLCJIZXhDb2x1bW5Db25maWdGYWN0b3J5IiwiQ29sb3JQYWxldHRlR3JvdXAiLCJQYWxldHRlQ29uZmlnIiwiSGV4Q29sdW1uQ29uZmlnIiwiQ29sb3JSYW5nZVNlbGVjdCIsIl9Db21wb25lbnQiLCJfaW5oZXJpdHMyIiwiX3RoaXMiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2xlbiIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkMiIsImNvbG9yUmFuZ2VzIiwiY29sb3JQYWxldHRlVUkiLCJjb2xvclJhbmdlQ29uZmlnIiwiY3JlYXRlU2VsZWN0b3IiLCJjb2xvclJhbmdlc1NlbGVjdG9yIiwiY29uZmlnVHlwZVNlbGVjdG9yIiwiY29uZmlnU3RlcFNlbGVjdG9yIiwiY29sb3JSYW5nZSIsImlzVHlwZSIsImlzU3RlcCIsIk51bWJlciIsIl9yZWYiLCJrZXkiLCJpc0hleENvbHVtbiIsIl9zZXRDb2xvclJhbmdlQ29uZmlnIiwiY3VzdG9tIiwiaGV4Q29sdW1uIiwiY29uZmlnIiwic2V0Q29sb3JQYWxldHRlVUkiLCJjdXN0b21QYWxldHRlIiwibmV3Q29uZmlnIiwic2hvd1NrZXRjaGVyIiwidmFsIiwiY29sdW1uIiwib25TZWxlY3RDb2xvckNvbHVtbiIsIm5hbWUiLCJfY3JlYXRlQ2xhc3MyIiwicmVuZGVyIiwiX3RoaXMyIiwibm9IZXhDb2xvciIsIl90aGlzJHByb3BzJGNvbG9yUGFsZSIsImZpbHRlcmVkQ29sb3JSYW5nZXMiLCJmaWx0ZXJlZENvbG9yUmFuZ2UiLCJjcmVhdGVFbGVtZW50IiwibGFiZWwiLCJvbkNoYW5nZSIsIl91cGRhdGVDb25maWciLCJzZWxlY3RlZCIsInNlbGVjdGVkQ29sb3JSYW5nZSIsIm9uQXBwbHkiLCJvblNlbGVjdENvbG9yUmFuZ2UiLCJvblRvZ2dsZVNrZXRjaGVyIiwiX29uVG9nZ2xlU2tldGNoZXIiLCJzZXRDdXN0b21QYWxldHRlIiwiX29uU2V0Q3VzdG9tUGFsZXR0ZSIsIm9uQ2FuY2VsIiwiX29uQ3VzdG9tUGFsZXR0ZUNhbmNlbCIsImZpZWxkcyIsIm9uU2VsZWN0Q29sdW1uIiwiX29uU2VsZWN0Q29sdW1uIiwib25TZWxlY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwiYW55Iiwib2JqZWN0IiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJib29sIiwiX0NvbXBvbmVudDIiLCJfdGhpcyRwcm9wcyIsIl90aGlzJHByb3BzJGNvbmZpZyIsIm9uQ2xpY2siLCJzdG9wUHJvcGFnYXRpb24iLCJQYW5lbExhYmVsIiwiRm9ybWF0dGVkTWVzc2FnZSIsImlkIiwic2VsZWN0ZWRJdGVtcyIsIm11bHRpU2VsZWN0Iiwic2VhcmNoYWJsZSIsImNoZWNrZWQiLCJzZWNvbmRhcnkiLCJCdXR0b24iLCJfZXh0ZW5kczIiLCJsaW5rIiwiU3dhcEhvcml6b250YWwiLCJUb29sdGlwIiwiZWZmZWN0IiwicGxhY2UiLCJTdHlsZWRDb2xvclJhbmdlIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJfQ29tcG9uZW50MyIsIl90aGlzJHByb3BzMiIsInRpdGxlIiwicmV2ZXJzZUNvbG9yUmFuZ2UiLCJpc1JldmVyc2VkIiwiaXNTZWxlY3RlZCIsInJvb3RQcm9wcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY29sb3ItcmFuZ2Utc2VsZWN0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHVuaXEgZnJvbSAnbG9kYXNoL3VuaXEnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5cbmltcG9ydCBJdGVtU2VsZWN0b3IgZnJvbSAnY29tcG9uZW50cy9jb21tb24vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7UGFuZWxMYWJlbCwgQnV0dG9uLCBUb29sdGlwfSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgU3dpdGNoIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N3aXRjaCc7XG5pbXBvcnQgQ29sb3JQYWxldHRlIGZyb20gJy4vY29sb3ItcGFsZXR0ZSc7XG5pbXBvcnQgQ3VzdG9tUGFsZXR0ZSBmcm9tICcuL2N1c3RvbS1wYWxldHRlJztcbmltcG9ydCB7Q09MT1JfUkFOR0VTLCBoZXhDb2xvcn0gZnJvbSAnY29uc3RhbnRzL2NvbG9yLXJhbmdlcyc7XG5pbXBvcnQge251bWJlclNvcnR9IGZyb20gJ3V0aWxzL2RhdGEtdXRpbHMnO1xuaW1wb3J0IHtyZXZlcnNlQ29sb3JSYW5nZX0gZnJvbSAndXRpbHMvY29sb3ItdXRpbHMnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdsb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtTd2FwSG9yaXpvbnRhbH0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IHtIZXhDb2x1bW5Db25maWdGYWN0b3J5fSBmcm9tICcuL2hleC1jb2x1bW4tY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IEFMTF9UWVBFUyA9IHVuaXEoW1xuICAnYWxsJyxcbiAgLi4uQ09MT1JfUkFOR0VTLm1hcChjID0+IGMudHlwZSkuZmlsdGVyKGN0eXBlID0+IGN0eXBlKSxcbiAgJ2N1c3RvbScsXG4gIHt2YWx1ZTogaGV4Q29sb3IsIGRpdmlkZXI6IHRydWV9XG5dKTtcblxuZXhwb3J0IGNvbnN0IEFMTF9TVEVQUyA9IHVuaXEoQ09MT1JfUkFOR0VTLm1hcChkID0+IGQuY29sb3JzLmxlbmd0aCkpLnNvcnQobnVtYmVyU29ydCk7XG5cbmNvbnN0IFN0eWxlZENvbG9yQ29uZmlnID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTJweCAxMnB4IDAgMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2VTZWxlY3RvciA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1yYW5nZS1zZWxlY3Rvcidcbn0pYFxuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZFBhbGV0dGVDb25maWcgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLmNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fbGFiZWwge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuY29sb3ItcGFsZXR0ZV9fY29uZmlnX19zZWxlY3Qge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuaXRlbS1zZWxlY3RvciAuaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd24ge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXR9O1xuICB9XG4gIC5jb2xvci1wYWxldHRlX19jb25maWdfX2J1dHRvbiB7XG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IENPTkZJR19TRVRUSU5HU19DVVNUT01fUkVWRVJTRURfQlVUVE9OX1RZUEUgPSAnY3VzdG9tLXJldmVyc2VkLWJ1dHRvbic7XG5cbmNvbnN0IENPTkZJR19TRVRUSU5HUyA9IHtcbiAgdHlwZToge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9UWVBFU1xuICB9LFxuICBzdGVwczoge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9TVEVQU1xuICB9LFxuICByZXZlcnNlZDoge1xuICAgIHR5cGU6IENPTkZJR19TRVRUSU5HU19DVVNUT01fUkVWRVJTRURfQlVUVE9OX1RZUEUsXG4gICAgb3B0aW9uczogW3RydWUsIGZhbHNlXVxuICB9XG59O1xuXG5Db2xvclJhbmdlU2VsZWN0RmFjdG9yeS5kZXBzID0gW1xuICBDb2xvclBhbGV0dGVHcm91cEZhY3RvcnksXG4gIFBhbGV0dGVDb25maWdGYWN0b3J5LFxuICBIZXhDb2x1bW5Db25maWdGYWN0b3J5XG5dO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gQ29sb3JSYW5nZVNlbGVjdEZhY3RvcnkoQ29sb3JQYWxldHRlR3JvdXAsIFBhbGV0dGVDb25maWcsIEhleENvbHVtbkNvbmZpZykge1xuICBjbGFzcyBDb2xvclJhbmdlU2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGRzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICAgIGNvbG9yUGFsZXR0ZVVJOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBzZWxlY3RlZENvbG9yUmFuZ2U6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIG9uU2VsZWN0Q29sb3JSYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uU2VsZWN0Q29sb3JDb2x1bW46IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBzZXRDb2xvclBhbGV0dGVVSTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIC8vIG9wdGlvbmFsXG4gICAgICBjb2xvclJhbmdlczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgICBub0hleENvbG9yOiBQcm9wVHlwZXMuYm9vbFxuICAgIH07XG5cbiAgICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgICAgY29sb3JSYW5nZXM6IENPTE9SX1JBTkdFUyxcbiAgICAgIG9uU2VsZWN0Q29sb3JSYW5nZTogKCkgPT4ge30sXG4gICAgICBzZXRDb2xvclBhbGV0dGVVSTogKCkgPT4ge31cbiAgICB9O1xuXG4gICAgY29sb3JSYW5nZXNTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmNvbG9yUmFuZ2VzO1xuICAgIGNvbmZpZ1R5cGVTZWxlY3RvciA9IHByb3BzID0+IHByb3BzLmNvbG9yUGFsZXR0ZVVJLmNvbG9yUmFuZ2VDb25maWcudHlwZTtcbiAgICBjb25maWdTdGVwU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5jb2xvclBhbGV0dGVVSS5jb2xvclJhbmdlQ29uZmlnLnN0ZXBzO1xuICAgIGZpbHRlcmVkQ29sb3JSYW5nZSA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgdGhpcy5jb2xvclJhbmdlc1NlbGVjdG9yLFxuICAgICAgdGhpcy5jb25maWdUeXBlU2VsZWN0b3IsXG4gICAgICB0aGlzLmNvbmZpZ1N0ZXBTZWxlY3RvcixcbiAgICAgIChjb2xvclJhbmdlcywgdHlwZSwgc3RlcHMpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbG9yUmFuZ2VzLmZpbHRlcihjb2xvclJhbmdlID0+IHtcbiAgICAgICAgICBjb25zdCBpc1R5cGUgPSB0eXBlID09PSAnYWxsJyB8fCB0eXBlID09PSBjb2xvclJhbmdlLnR5cGU7XG4gICAgICAgICAgY29uc3QgaXNTdGVwID0gTnVtYmVyKHN0ZXBzKSA9PT0gY29sb3JSYW5nZS5jb2xvcnMubGVuZ3RoO1xuXG4gICAgICAgICAgcmV0dXJuIGlzVHlwZSAmJiBpc1N0ZXA7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICk7XG5cbiAgICBfdXBkYXRlQ29uZmlnID0gKHtrZXksIHZhbHVlfSkgPT4ge1xuICAgICAgbGV0IHN0ZXBzID0ge307XG4gICAgICBjb25zdCB7Y29sb3JSYW5nZUNvbmZpZ30gPSB0aGlzLnByb3BzLmNvbG9yUGFsZXR0ZVVJO1xuICAgICAgaWYgKGtleSA9PT0gJ3R5cGUnICYmIGNvbG9yUmFuZ2VDb25maWcuaXNIZXhDb2x1bW4pIHtcbiAgICAgICAgLy8gSWYgeW91J3JlIGNoYW5naW5nIGZyb20gSEVYIHRvIGEgZGlmZmVyZW50IG9uZSwgdGhlbiByZXNldCBzdGVwcyB0byA2XG4gICAgICAgIHN0ZXBzID0ge3N0ZXBzOiA2fTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX3NldENvbG9yUmFuZ2VDb25maWcoe1xuICAgICAgICBba2V5XTogdmFsdWUsXG4gICAgICAgIC4uLihrZXkgPT09ICd0eXBlJyAmJiB7Y3VzdG9tOiB2YWx1ZSA9PT0gJ2N1c3RvbScsIGlzSGV4Q29sdW1uOiB2YWx1ZSA9PT0gaGV4Q29sb3J9KSxcbiAgICAgICAgLi4uKGtleSA9PT0gJ3R5cGUnICYmIHZhbHVlICE9PSBoZXhDb2xvciAmJiB7aGV4Q29sdW1uOiBudWxsfSksXG4gICAgICAgIC4uLnN0ZXBzXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgX29uU2V0Q3VzdG9tUGFsZXR0ZSA9IGNvbmZpZyA9PiB7XG4gICAgICB0aGlzLnByb3BzLnNldENvbG9yUGFsZXR0ZVVJKHtcbiAgICAgICAgY3VzdG9tUGFsZXR0ZTogY29uZmlnXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgX3NldENvbG9yUmFuZ2VDb25maWcgPSBuZXdDb25maWcgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICAgIGNvbG9yUmFuZ2VDb25maWc6IG5ld0NvbmZpZ1xuICAgICAgfSk7XG4gICAgfTtcblxuICAgIF9vbkN1c3RvbVBhbGV0dGVDYW5jZWwgPSBuZXdDb25maWcgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICAgIHNob3dTa2V0Y2hlcjogZmFsc2UsXG4gICAgICAgIGNvbG9yUmFuZ2VDb25maWc6IHtjdXN0b206IGZhbHNlLCBpc0hleENvbHVtbjogZmFsc2V9XG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgX29uVG9nZ2xlU2tldGNoZXIgPSB2YWwgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICAgIHNob3dTa2V0Y2hlcjogdmFsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgX29uU2VsZWN0Q29sdW1uID0gY29sdW1uID0+IHtcbiAgICAgIHRoaXMucHJvcHMub25TZWxlY3RDb2xvckNvbHVtbihjb2x1bW4pO1xuICAgICAgdGhpcy5fc2V0Q29sb3JSYW5nZUNvbmZpZyh7XG4gICAgICAgIHR5cGU6IGhleENvbG9yLFxuICAgICAgICBoZXhDb2x1bW46IGNvbHVtbj8ubmFtZVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtub0hleENvbG9yfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7Y3VzdG9tUGFsZXR0ZSwgc2hvd1NrZXRjaGVyLCBjb2xvclJhbmdlQ29uZmlnfSA9IHRoaXMucHJvcHMuY29sb3JQYWxldHRlVUk7XG4gICAgICBjb25zdCBmaWx0ZXJlZENvbG9yUmFuZ2VzID0gdGhpcy5maWx0ZXJlZENvbG9yUmFuZ2UodGhpcy5wcm9wcyk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3I+XG4gICAgICAgICAgPFN0eWxlZENvbG9yQ29uZmlnIGNsYXNzTmFtZT1cImNvbG9yLXJhbmdlLXNlbGVjdG9yX19jb25maWdcIj5cbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyhjb2xvclJhbmdlQ29uZmlnKVxuICAgICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAgIGtleSA9PlxuICAgICAgICAgICAgICAgICAgQm9vbGVhbihDT05GSUdfU0VUVElOR1Nba2V5XSkgJiZcbiAgICAgICAgICAgICAgICAgIChjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSB8fCBjb2xvclJhbmdlQ29uZmlnLmlzSGV4Q29sdW1uID8ga2V5ID09PSAndHlwZScgOiB0cnVlKVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgY29uZmlnID0gQ09ORklHX1NFVFRJTkdTW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKG5vSGV4Q29sb3IpIHtcbiAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IHsuLi5jb25maWcsIG9wdGlvbnM6IGNvbmZpZy5vcHRpb25zLmZpbHRlcihjID0+IGMudmFsdWUgIT09IGhleENvbG9yKX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICA8UGFsZXR0ZUNvbmZpZ1xuICAgICAgICAgICAgICAgICAgICBrZXk9e2tleX1cbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9e0NPTkZJR19TRVRUSU5HU1trZXldLmxhYmVsIHx8IGtleX1cbiAgICAgICAgICAgICAgICAgICAgY29uZmlnPXtjb25maWd9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlPXtjb2xvclJhbmdlQ29uZmlnW2tleV19XG4gICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXt2YWx1ZSA9PiB0aGlzLl91cGRhdGVDb25maWcoe2tleSwgdmFsdWV9KX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPC9TdHlsZWRDb2xvckNvbmZpZz5cblxuICAgICAgICAgIHtjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSA/IChcbiAgICAgICAgICAgIDxDdXN0b21QYWxldHRlXG4gICAgICAgICAgICAgIGN1c3RvbVBhbGV0dGU9e2N1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICAgIHNob3dTa2V0Y2hlcj17c2hvd1NrZXRjaGVyfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17dGhpcy5wcm9wcy5zZWxlY3RlZENvbG9yUmFuZ2V9XG4gICAgICAgICAgICAgIG9uQXBwbHk9e3RoaXMucHJvcHMub25TZWxlY3RDb2xvclJhbmdlfVxuICAgICAgICAgICAgICBvblRvZ2dsZVNrZXRjaGVyPXt0aGlzLl9vblRvZ2dsZVNrZXRjaGVyfVxuICAgICAgICAgICAgICBzZXRDdXN0b21QYWxldHRlPXt0aGlzLl9vblNldEN1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLl9vbkN1c3RvbVBhbGV0dGVDYW5jZWx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiBjb2xvclJhbmdlQ29uZmlnLmlzSGV4Q29sdW1uID8gKFxuICAgICAgICAgICAgPEhleENvbHVtbkNvbmZpZ1xuICAgICAgICAgICAgICBmaWVsZHM9e3RoaXMucHJvcHMuZmllbGRzfVxuICAgICAgICAgICAgICB2YWx1ZT17Y29sb3JSYW5nZUNvbmZpZy5oZXhDb2x1bW59XG4gICAgICAgICAgICAgIG9uU2VsZWN0Q29sdW1uPXt0aGlzLl9vblNlbGVjdENvbHVtbn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxDb2xvclBhbGV0dGVHcm91cFxuICAgICAgICAgICAgICBjb2xvclJhbmdlcz17ZmlsdGVyZWRDb2xvclJhbmdlc31cbiAgICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMucHJvcHMub25TZWxlY3RDb2xvclJhbmdlfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17dGhpcy5wcm9wcy5zZWxlY3RlZENvbG9yUmFuZ2V9XG4gICAgICAgICAgICAgIHJldmVyc2VkPXtjb2xvclJhbmdlQ29uZmlnLnJldmVyc2VkfVxuICAgICAgICAgICAgICBjb25maWdUeXBlU2VsZWN0b3I9eygpID0+IHRoaXMucHJvcHMuY29sb3JQYWxldHRlVUkuY29sb3JSYW5nZUNvbmZpZy50eXBlfVxuICAgICAgICAgICAgICBjb25maWdTdGVwU2VsZWN0b3I9eygpID0+IHRoaXMucHJvcHMuY29sb3JQYWxldHRlVUkuY29sb3JSYW5nZUNvbmZpZy5zdGVwc31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRDb2xvclJhbmdlU2VsZWN0b3I+XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBDb2xvclJhbmdlU2VsZWN0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUGFsZXR0ZUNvbmZpZ0ZhY3RvcnkoKSB7XG4gIGNsYXNzIFBhbGV0dGVDb25maWcgZXh0ZW5kcyBDb21wb25lbnQge1xuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgbGFiZWwsXG4gICAgICAgIHZhbHVlLFxuICAgICAgICBjb25maWc6IHt0eXBlLCBvcHRpb25zfSxcbiAgICAgICAgb25DaGFuZ2VcbiAgICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkUGFsZXR0ZUNvbmZpZ1xuICAgICAgICAgIGNsYXNzTmFtZT17YGNvbG9yLXBhbGV0dGVfX2NvbmZpZyBjb2xvci1wYWxldHRlX19jb25maWctLSR7bGFiZWx9YH1cbiAgICAgICAgICBvbkNsaWNrPXtlID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fbGFiZWxcIj5cbiAgICAgICAgICAgIHt0eXBlICE9PSBDT05GSUdfU0VUVElOR1NfQ1VTVE9NX1JFVkVSU0VEX0JVVFRPTl9UWVBFICYmIChcbiAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9e2Bjb2xvci4ke2xhYmVsfWB9IC8+XG4gICAgICAgICAgICAgIDwvUGFuZWxMYWJlbD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAge3R5cGUgPT09ICdzZWxlY3QnICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sb3ItcGFsZXR0ZV9fY29uZmlnX19zZWxlY3RcIj5cbiAgICAgICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3ZhbHVlfVxuICAgICAgICAgICAgICAgIG9wdGlvbnM9e29wdGlvbnN9XG4gICAgICAgICAgICAgICAgbXVsdGlTZWxlY3Q9e2ZhbHNlfVxuICAgICAgICAgICAgICAgIHNlYXJjaGFibGU9e2ZhbHNlfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgICAge3R5cGUgPT09ICdzd2l0Y2gnICYmIChcbiAgICAgICAgICAgIDxTd2l0Y2hcbiAgICAgICAgICAgICAgY2hlY2tlZD17dmFsdWV9XG4gICAgICAgICAgICAgIGlkPXtgJHtsYWJlbH0tdG9nZ2xlYH1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eygpID0+IG9uQ2hhbmdlKCF2YWx1ZSl9XG4gICAgICAgICAgICAgIHNlY29uZGFyeVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHt0eXBlID09PSBDT05GSUdfU0VUVElOR1NfQ1VTVE9NX1JFVkVSU0VEX0JVVFRPTl9UWVBFICYmIChcbiAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgY29sb3ItcGFsZXR0ZV9fY29uZmlnX19idXR0b24gJHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA/ICdjb2xvci1wYWxldHRlX19jb25maWdfX2J1dHRvbi0tYWN0aXZlJyA6ICcnXG4gICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICBkYXRhLXRpcFxuICAgICAgICAgICAgICBkYXRhLWZvcj17YCR7bGFiZWx9LXRvb2x0aXBgfVxuICAgICAgICAgICAgICB7Li4uKCF2YWx1ZSAmJiB7bGluazogdHJ1ZX0pfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZSghdmFsdWUpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8U3dhcEhvcml6b250YWwgLz5cbiAgICAgICAgICAgICAgPFRvb2x0aXAgaWQ9e2Ake2xhYmVsfS10b29sdGlwYH0gZWZmZWN0PVwic29saWRcIiBwbGFjZT1cInRvcFwiPlxuICAgICAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRQYWxldHRlQ29uZmlnPlxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFBhbGV0dGVDb25maWc7XG59XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2UgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY29sb3ItcGFsZXR0ZS1vdXRlcidcbn0pYFxuICBwYWRkaW5nOiAwIDhweDtcbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmV4cG9ydCBmdW5jdGlvbiBDb2xvclBhbGV0dGVHcm91cEZhY3RvcnkoKSB7XG4gIGNsYXNzIENvbG9yUGFsZXR0ZUdyb3VwIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7cmV2ZXJzZWQsIG9uU2VsZWN0LCBzZWxlY3RlZCwgY29sb3JSYW5nZXMsIHRpdGxlfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2dyb3VwXCI+XG4gICAgICAgICAge3RpdGxlICYmIHRpdGxlfVxuICAgICAgICAgIHtjb2xvclJhbmdlcy5tYXAoKGNvbG9yUmFuZ2UsIGkpID0+IChcbiAgICAgICAgICAgIDxTdHlsZWRDb2xvclJhbmdlXG4gICAgICAgICAgICAgIGtleT17YCR7Y29sb3JSYW5nZS5uYW1lfS0ke2l9YH1cbiAgICAgICAgICAgICAgb25DbGljaz17ZSA9PlxuICAgICAgICAgICAgICAgIG9uU2VsZWN0KHJldmVyc2VkID8gcmV2ZXJzZUNvbG9yUmFuZ2UodHJ1ZSwgY29sb3JSYW5nZSkgOiBjb2xvclJhbmdlLCBlKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxDb2xvclBhbGV0dGVcbiAgICAgICAgICAgICAgICBjb2xvcnM9e2NvbG9yUmFuZ2UuY29sb3JzfVxuICAgICAgICAgICAgICAgIGlzUmV2ZXJzZWQ9e3JldmVyc2VkfVxuICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ9e2NvbG9yUmFuZ2UubmFtZSA9PT0gc2VsZWN0ZWQubmFtZX1cbiAgICAgICAgICAgICAgICByb290UHJvcHM9e3tcbiAgICAgICAgICAgICAgICAgICdkYXRhLXRpcCc6IHRydWUsXG4gICAgICAgICAgICAgICAgICAnZGF0YS1mb3InOiBgY29sb3ItcmFuZ2UtJHtpfS10b29sdGlwYFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8VG9vbHRpcCBpZD17YGNvbG9yLXJhbmdlLSR7aX0tdG9vbHRpcGB9IGVmZmVjdD1cInNvbGlkXCIgcGxhY2U9XCJ0b3BcIj5cbiAgICAgICAgICAgICAgICAgIHtjb2xvclJhbmdlLm5hbWV9XG4gICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICA8L0NvbG9yUGFsZXR0ZT5cbiAgICAgICAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfVxuICByZXR1cm4gQ29sb3JQYWxldHRlR3JvdXA7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxLQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSxpQkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBRUEsSUFBQU0sYUFBQSxHQUFBSixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU8sa0JBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLE9BQUEsR0FBQU4sc0JBQUEsQ0FB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
|
|
329
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9zdHlsZWRDb21wb25lbnRzIiwiX3Jlc2VsZWN0IiwiX2l0ZW1TZWxlY3RvciIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9zd2l0Y2giLCJfY29sb3JQYWxldHRlIiwiX2N1c3RvbVBhbGV0dGUiLCJfY29sb3JSYW5nZXMiLCJfZGF0YVV0aWxzIiwiX2NvbG9yVXRpbHMiLCJfbG9jYWxpemF0aW9uIiwiX2ljb25zIiwiX2hleENvbHVtbkNvbmZpZyIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX3RlbXBsYXRlT2JqZWN0NCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiQUxMX1RZUEVTIiwiZXhwb3J0cyIsInVuaXEiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiQ09MT1JfUkFOR0VTIiwibWFwIiwiYyIsInR5cGUiLCJjdHlwZSIsInZhbHVlIiwiaGV4Q29sb3IiLCJkaXZpZGVyIiwiQUxMX1NURVBTIiwiZCIsImNvbG9ycyIsInNvcnQiLCJudW1iZXJTb3J0IiwiU3R5bGVkQ29sb3JDb25maWciLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlN0eWxlZENvbG9yUmFuZ2VTZWxlY3RvciIsImF0dHJzIiwiY2xhc3NOYW1lIiwiU3R5bGVkUGFsZXR0ZUNvbmZpZyIsInByb3BzIiwidGhlbWUiLCJzZWNvbmRhcnlJbnB1dCIsIkNPTkZJR19TRVRUSU5HU19DVVNUT01fUkVWRVJTRURfQlVUVE9OX1RZUEUiLCJDT05GSUdfU0VUVElOR1MiLCJvcHRpb25zIiwic3RlcHMiLCJyZXZlcnNlZCIsIkNvbG9yUmFuZ2VTZWxlY3RvckZhY3RvcnkiLCJkZXBzIiwiQ29sb3JQYWxldHRlR3JvdXBGYWN0b3J5IiwiUGFsZXR0ZUNvbmZpZ0ZhY3RvcnkiLCJIZXhDb2x1bW5Db25maWdGYWN0b3J5IiwiQ29sb3JQYWxldHRlR3JvdXAiLCJQYWxldHRlQ29uZmlnIiwiSGV4Q29sdW1uQ29uZmlnIiwiQ29sb3JSYW5nZVNlbGVjdG9yIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29sb3JSYW5nZXMiLCJjb2xvclBhbGV0dGVVSSIsImNvbG9yUmFuZ2VDb25maWciLCJjcmVhdGVTZWxlY3RvciIsImNvbG9yUmFuZ2VzU2VsZWN0b3IiLCJjb25maWdUeXBlU2VsZWN0b3IiLCJjb25maWdTdGVwU2VsZWN0b3IiLCJjb2xvclJhbmdlIiwiaXNUeXBlIiwiaXNTdGVwIiwiTnVtYmVyIiwiX3JlZiIsImtleSIsImlzSGV4Q29sdW1uIiwiX3NldENvbG9yUmFuZ2VDb25maWciLCJjdXN0b20iLCJoZXhDb2x1bW4iLCJjb25maWciLCJzZXRDb2xvclBhbGV0dGVVSSIsImN1c3RvbVBhbGV0dGUiLCJuZXdDb25maWciLCJzaG93U2tldGNoZXIiLCJ2YWwiLCJjb2x1bW4iLCJvblNlbGVjdENvbG9yQ29sdW1uIiwibmFtZSIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwicmVuZGVyIiwiX3RoaXMyIiwibm9IZXhDb2xvciIsIl90aGlzJHByb3BzJGNvbG9yUGFsZSIsImZpbHRlcmVkQ29sb3JSYW5nZXMiLCJmaWx0ZXJlZENvbG9yUmFuZ2UiLCJjcmVhdGVFbGVtZW50IiwibGFiZWwiLCJvbkNoYW5nZSIsIl91cGRhdGVDb25maWciLCJvbkFwcGx5Iiwib25TZWxlY3RDb2xvclJhbmdlIiwib25Ub2dnbGVTa2V0Y2hlciIsIl9vblRvZ2dsZVNrZXRjaGVyIiwic2V0Q3VzdG9tUGFsZXR0ZSIsIl9vblNldEN1c3RvbVBhbGV0dGUiLCJvbkNhbmNlbCIsIl9vbkN1c3RvbVBhbGV0dGVDYW5jZWwiLCJmaWVsZHMiLCJvblNlbGVjdENvbHVtbiIsIl9vblNlbGVjdENvbHVtbiIsIm9uU2VsZWN0Iiwic2VsZWN0ZWQiLCJzZWxlY3RlZENvbG9yUmFuZ2UiLCJDb21wb25lbnQiLCJfcmVmMiIsIl9yZWYyJGNvbmZpZyIsIm9uQ2xpY2siLCJzdG9wUHJvcGFnYXRpb24iLCJQYW5lbExhYmVsIiwiRm9ybWF0dGVkTWVzc2FnZSIsImlkIiwic2VsZWN0ZWRJdGVtcyIsIm11bHRpU2VsZWN0Iiwic2VhcmNoYWJsZSIsImNoZWNrZWQiLCJzZWNvbmRhcnkiLCJCdXR0b24iLCJfZXh0ZW5kczIiLCJsaW5rIiwiU3dhcEhvcml6b250YWwiLCJUb29sdGlwIiwiZWZmZWN0IiwicGxhY2UiLCJTdHlsZWRDb2xvclJhbmdlIiwicGFuZWxCYWNrZ3JvdW5kSG92ZXIiLCJfcmVmMyIsInRpdGxlIiwicmV2ZXJzZUNvbG9yUmFuZ2UiLCJpc1JldmVyc2VkIiwiaXNTZWxlY3RlZCIsInJvb3RQcm9wcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY29sb3ItcmFuZ2Utc2VsZWN0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudCwgTW91c2VFdmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHVuaXEgZnJvbSAnbG9kYXNoLnVuaXEnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5cbmltcG9ydCBJdGVtU2VsZWN0b3IgZnJvbSAnY29tcG9uZW50cy9jb21tb24vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7UGFuZWxMYWJlbCwgQnV0dG9uLCBUb29sdGlwfSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgU3dpdGNoIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N3aXRjaCc7XG5pbXBvcnQgQ29sb3JQYWxldHRlIGZyb20gJy4vY29sb3ItcGFsZXR0ZSc7XG5pbXBvcnQgQ3VzdG9tUGFsZXR0ZSBmcm9tICcuL2N1c3RvbS1wYWxldHRlJztcbmltcG9ydCB7Q09MT1JfUkFOR0VTLCBDb2xvclJhbmdlLCBoZXhDb2xvcn0gZnJvbSAnY29uc3RhbnRzL2NvbG9yLXJhbmdlcyc7XG5pbXBvcnQge251bWJlclNvcnR9IGZyb20gJ3V0aWxzL2RhdGEtdXRpbHMnO1xuaW1wb3J0IHtyZXZlcnNlQ29sb3JSYW5nZX0gZnJvbSAndXRpbHMvY29sb3ItdXRpbHMnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdsb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtDb2xvclVJfSBmcm9tICdsYXllcnMvbGF5ZXItZmFjdG9yeSc7XG5pbXBvcnQge05lc3RlZFBhcnRpYWx9IGZyb20gJ3JlZHVjZXJzJztcbmltcG9ydCB7U3dhcEhvcml6b250YWx9IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2ljb25zJztcbmltcG9ydCB7SGV4Q29sdW1uQ29uZmlnRmFjdG9yeX0gZnJvbSAnLi9oZXgtY29sdW1uLWNvbmZpZyc7XG5cbnR5cGUgQ29sb3JSYW5nZVNlbGVjdG9yUHJvcHMgPSB7XG4gIGZpZWxkczogYW55W107XG4gIGNvbG9yUGFsZXR0ZVVJOiBDb2xvclVJO1xuICBzZWxlY3RlZENvbG9yUmFuZ2U6IENvbG9yUmFuZ2U7XG4gIG9uU2VsZWN0Q29sb3JSYW5nZTogKHA6IENvbG9yUmFuZ2UsIGU6IE1vdXNlRXZlbnQpID0+IHZvaWQ7XG4gIG9uU2VsZWN0Q29sb3JDb2x1bW46IEZ1bmN0aW9uO1xuICBzZXRDb2xvclBhbGV0dGVVSTogKG5ld0NvbmZpZzogTmVzdGVkUGFydGlhbDxDb2xvclVJPikgPT4gdm9pZDtcbiAgbm9IZXhDb2xvcj86IGJvb2xlYW47XG59O1xuXG50eXBlIFBhbGV0dGVDb25maWdQcm9wcyA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW47XG4gIGNvbmZpZzoge1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBvcHRpb25zOiAoc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbilbXTtcbiAgfTtcbiAgb25DaGFuZ2U6ICh2OiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0IHwgbnVsbCkgPT4gdm9pZDtcbn07XG5cbnR5cGUgQ29sb3JQYWxldHRlR3JvdXBQcm9wcyA9IHtcbiAgcmV2ZXJzZWQ/OiBib29sZWFuO1xuICBzZWxlY3RlZDogQ29sb3JSYW5nZTtcbiAgY29sb3JSYW5nZXM6IENvbG9yUmFuZ2VbXTtcbiAgb25TZWxlY3Q6IChwOiBDb2xvclJhbmdlLCBlOiBNb3VzZUV2ZW50KSA9PiB2b2lkO1xuICB0aXRsZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBjb25zdCBBTExfVFlQRVMgPSB1bmlxKFtcbiAgJ2FsbCcsXG4gIC4uLkNPTE9SX1JBTkdFUy5tYXAoYyA9PiBjLnR5cGUpLmZpbHRlcihjdHlwZSA9PiBjdHlwZSksXG4gICdjdXN0b20nLFxuICB7dmFsdWU6IGhleENvbG9yLCBkaXZpZGVyOiB0cnVlfVxuXSk7XG5cbmV4cG9ydCBjb25zdCBBTExfU1RFUFM6IG51bWJlcltdID0gdW5pcShDT0xPUl9SQU5HRVMubWFwKGQgPT4gZC5jb2xvcnMubGVuZ3RoKSkuc29ydChudW1iZXJTb3J0KTtcblxuY29uc3QgU3R5bGVkQ29sb3JDb25maWcgPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAxMnB4IDEycHggMCAxMnB4O1xuYDtcblxuY29uc3QgU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NvbG9yLXJhbmdlLXNlbGVjdG9yJ1xufSlgXG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgU3R5bGVkUGFsZXR0ZUNvbmZpZyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAuY29sb3ItcGFsZXR0ZV9fY29uZmlnX19sYWJlbCB7XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG4gIC5jb2xvci1wYWxldHRlX19jb25maWdfX3NlbGVjdCB7XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG4gIC5pdGVtLXNlbGVjdG9yIC5pdGVtLXNlbGVjdG9yX19kcm9wZG93biB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dH07XG4gIH1cbiAgLmNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fYnV0dG9uIHtcbiAgICBzdmcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSA9ICdjdXN0b20tcmV2ZXJzZWQtYnV0dG9uJztcblxuY29uc3QgQ09ORklHX1NFVFRJTkdTID0ge1xuICB0eXBlOiB7XG4gICAgdHlwZTogJ3NlbGVjdCcsXG4gICAgb3B0aW9uczogQUxMX1RZUEVTXG4gIH0sXG4gIHN0ZXBzOiB7XG4gICAgdHlwZTogJ3NlbGVjdCcsXG4gICAgb3B0aW9uczogQUxMX1NURVBTXG4gIH0sXG4gIHJldmVyc2VkOiB7XG4gICAgdHlwZTogQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSxcbiAgICBvcHRpb25zOiBbdHJ1ZSwgZmFsc2VdXG4gIH1cbn07XG5cbkNvbG9yUmFuZ2VTZWxlY3RvckZhY3RvcnkuZGVwcyA9IFtcbiAgQ29sb3JQYWxldHRlR3JvdXBGYWN0b3J5LFxuICBQYWxldHRlQ29uZmlnRmFjdG9yeSxcbiAgSGV4Q29sdW1uQ29uZmlnRmFjdG9yeVxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gQ29sb3JSYW5nZVNlbGVjdG9yRmFjdG9yeShcbiAgQ29sb3JQYWxldHRlR3JvdXAsXG4gIFBhbGV0dGVDb25maWcsXG4gIEhleENvbHVtbkNvbmZpZ1xuKSB7XG4gIGNsYXNzIENvbG9yUmFuZ2VTZWxlY3RvciBleHRlbmRzIENvbXBvbmVudDxDb2xvclJhbmdlU2VsZWN0b3JQcm9wcz4ge1xuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBjb2xvclJhbmdlczogQ09MT1JfUkFOR0VTLFxuICAgICAgb25TZWxlY3RDb2xvclJhbmdlOiAoKSA9PiB7fSxcbiAgICAgIHNldENvbG9yUGFsZXR0ZVVJOiAoKSA9PiB7fVxuICAgIH07XG5cbiAgICBjb2xvclJhbmdlc1NlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuY29sb3JSYW5nZXM7XG4gICAgY29uZmlnVHlwZVNlbGVjdG9yID0gKHByb3BzOiBDb2xvclJhbmdlU2VsZWN0b3JQcm9wcykgPT5cbiAgICAgIHByb3BzLmNvbG9yUGFsZXR0ZVVJLmNvbG9yUmFuZ2VDb25maWcudHlwZTtcbiAgICBjb25maWdTdGVwU2VsZWN0b3IgPSAocHJvcHM6IENvbG9yUmFuZ2VTZWxlY3RvclByb3BzKSA9PlxuICAgICAgcHJvcHMuY29sb3JQYWxldHRlVUkuY29sb3JSYW5nZUNvbmZpZy5zdGVwcztcbiAgICBmaWx0ZXJlZENvbG9yUmFuZ2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIHRoaXMuY29sb3JSYW5nZXNTZWxlY3RvcixcbiAgICAgIHRoaXMuY29uZmlnVHlwZVNlbGVjdG9yLFxuICAgICAgdGhpcy5jb25maWdTdGVwU2VsZWN0b3IsXG4gICAgICAoY29sb3JSYW5nZXMsIHR5cGUsIHN0ZXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBDT0xPUl9SQU5HRVMuZmlsdGVyKGNvbG9yUmFuZ2UgPT4ge1xuICAgICAgICAgIGNvbnN0IGlzVHlwZSA9IHR5cGUgPT09ICdhbGwnIHx8IHR5cGUgPT09IGNvbG9yUmFuZ2UudHlwZTtcbiAgICAgICAgICBjb25zdCBpc1N0ZXAgPSBOdW1iZXIoc3RlcHMpID09PSBjb2xvclJhbmdlLmNvbG9ycy5sZW5ndGg7XG5cbiAgICAgICAgICByZXR1cm4gaXNUeXBlICYmIGlzU3RlcDtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgKTtcblxuICAgIF91cGRhdGVDb25maWcgPSAoe1xuICAgICAga2V5LFxuICAgICAgdmFsdWVcbiAgICB9OiB7XG4gICAgICBrZXk6IHN0cmluZztcbiAgICAgIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0IHwgbnVsbDtcbiAgICB9KSA9PiB7XG4gICAgICBsZXQgc3RlcHMgPSB7fTtcbiAgICAgIGNvbnN0IHtjb2xvclJhbmdlQ29uZmlnfSA9IHRoaXMucHJvcHMuY29sb3JQYWxldHRlVUk7XG4gICAgICBpZiAoa2V5ID09PSAndHlwZScgJiYgY29sb3JSYW5nZUNvbmZpZy5pc0hleENvbHVtbikge1xuICAgICAgICAvLyBJZiB5b3UncmUgY2hhbmdpbmcgZnJvbSBIRVggdG8gYSBkaWZmZXJlbnQgb25lLCB0aGVuIHJlc2V0IHN0ZXBzIHRvIDZcbiAgICAgICAgc3RlcHMgPSB7c3RlcHM6IDZ9O1xuICAgICAgfVxuICAgICAgdGhpcy5fc2V0Q29sb3JSYW5nZUNvbmZpZyh7XG4gICAgICAgIFtrZXldOiB2YWx1ZSxcbiAgICAgICAgLi4uKGtleSA9PT0gJ3R5cGUnICYmIHtjdXN0b206IHZhbHVlID09PSAnY3VzdG9tJywgaXNIZXhDb2x1bW46IHZhbHVlID09PSBoZXhDb2xvcn0pLFxuICAgICAgICAuLi4oa2V5ID09PSAndHlwZScgJiYgdmFsdWUgIT09IGhleENvbG9yICYmIHtoZXhDb2x1bW46IG51bGx9KSxcbiAgICAgICAgLi4uc3RlcHNcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBfb25TZXRDdXN0b21QYWxldHRlID0gKGNvbmZpZzogTmVzdGVkUGFydGlhbDxDb2xvclJhbmdlPikgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICAgIGN1c3RvbVBhbGV0dGU6IGNvbmZpZ1xuICAgICAgfSk7XG4gICAgfTtcblxuICAgIF9zZXRDb2xvclJhbmdlQ29uZmlnID0gKFxuICAgICAgbmV3Q29uZmlnOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0IHwgbnVsbD5cbiAgICApID0+IHtcbiAgICAgIHRoaXMucHJvcHMuc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgICBjb2xvclJhbmdlQ29uZmlnOiBuZXdDb25maWdcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBfb25DdXN0b21QYWxldHRlQ2FuY2VsID0gKCkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICAgIHNob3dTa2V0Y2hlcjogZmFsc2UsXG4gICAgICAgIGNvbG9yUmFuZ2VDb25maWc6IHtjdXN0b206IGZhbHNlLCBpc0hleENvbHVtbjogZmFsc2V9XG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgX29uVG9nZ2xlU2tldGNoZXIgPSAodmFsOiBib29sZWFuIHwgbnVtYmVyKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLnNldENvbG9yUGFsZXR0ZVVJKHtcbiAgICAgICAgc2hvd1NrZXRjaGVyOiB2YWxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBfb25TZWxlY3RDb2x1bW4gPSAoY29sdW1uOiBhbnkpID0+IHtcbiAgICAgIHRoaXMucHJvcHMub25TZWxlY3RDb2xvckNvbHVtbihjb2x1bW4pO1xuICAgICAgdGhpcy5fc2V0Q29sb3JSYW5nZUNvbmZpZyh7XG4gICAgICAgIHR5cGU6IGhleENvbG9yLFxuICAgICAgICBoZXhDb2x1bW46IGNvbHVtbj8ubmFtZVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtub0hleENvbG9yfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7Y3VzdG9tUGFsZXR0ZSwgc2hvd1NrZXRjaGVyLCBjb2xvclJhbmdlQ29uZmlnfSA9IHRoaXMucHJvcHMuY29sb3JQYWxldHRlVUk7XG4gICAgICBjb25zdCBmaWx0ZXJlZENvbG9yUmFuZ2VzID0gdGhpcy5maWx0ZXJlZENvbG9yUmFuZ2UodGhpcy5wcm9wcyk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3I+XG4gICAgICAgICAgPFN0eWxlZENvbG9yQ29uZmlnIGNsYXNzTmFtZT1cImNvbG9yLXJhbmdlLXNlbGVjdG9yX19jb25maWdcIj5cbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyhjb2xvclJhbmdlQ29uZmlnKVxuICAgICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAgIGtleSA9PlxuICAgICAgICAgICAgICAgICAgQm9vbGVhbihDT05GSUdfU0VUVElOR1Nba2V5XSkgJiZcbiAgICAgICAgICAgICAgICAgIChjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSB8fCBjb2xvclJhbmdlQ29uZmlnLmlzSGV4Q29sdW1uID8ga2V5ID09PSAndHlwZScgOiB0cnVlKVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgY29uZmlnID0gQ09ORklHX1NFVFRJTkdTW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKG5vSGV4Q29sb3IpIHtcbiAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IHsuLi5jb25maWcsIG9wdGlvbnM6IGNvbmZpZy5vcHRpb25zLmZpbHRlcihjID0+IGMudmFsdWUgIT09IGhleENvbG9yKX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICA8UGFsZXR0ZUNvbmZpZ1xuICAgICAgICAgICAgICAgICAgICBrZXk9e2tleX1cbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9e0NPTkZJR19TRVRUSU5HU1trZXldLmxhYmVsIHx8IGtleX1cbiAgICAgICAgICAgICAgICAgICAgY29uZmlnPXtjb25maWd9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlPXtjb2xvclJhbmdlQ29uZmlnW2tleV19XG4gICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXt2YWx1ZSA9PiB0aGlzLl91cGRhdGVDb25maWcoe2tleSwgdmFsdWV9KX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPC9TdHlsZWRDb2xvckNvbmZpZz5cblxuICAgICAgICAgIHtjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSA/IChcbiAgICAgICAgICAgIDxDdXN0b21QYWxldHRlXG4gICAgICAgICAgICAgIGN1c3RvbVBhbGV0dGU9e2N1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICAgIHNob3dTa2V0Y2hlcj17c2hvd1NrZXRjaGVyfVxuICAgICAgICAgICAgICAvLyBzZWxlY3RlZD17dGhpcy5wcm9wcy5zZWxlY3RlZENvbG9yUmFuZ2V9IC8vIFRPRE86IGRvZXMgbm90IGV4aXN0P1xuICAgICAgICAgICAgICBvbkFwcGx5PXt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3JSYW5nZX1cbiAgICAgICAgICAgICAgb25Ub2dnbGVTa2V0Y2hlcj17dGhpcy5fb25Ub2dnbGVTa2V0Y2hlcn1cbiAgICAgICAgICAgICAgc2V0Q3VzdG9tUGFsZXR0ZT17dGhpcy5fb25TZXRDdXN0b21QYWxldHRlfVxuICAgICAgICAgICAgICBvbkNhbmNlbD17dGhpcy5fb25DdXN0b21QYWxldHRlQ2FuY2VsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogY29sb3JSYW5nZUNvbmZpZy5pc0hleENvbHVtbiA/IChcbiAgICAgICAgICAgIDxIZXhDb2x1bW5Db25maWdcbiAgICAgICAgICAgICAgZmllbGRzPXt0aGlzLnByb3BzLmZpZWxkc31cbiAgICAgICAgICAgICAgdmFsdWU9e2NvbG9yUmFuZ2VDb25maWcuaGV4Q29sdW1ufVxuICAgICAgICAgICAgICBvblNlbGVjdENvbHVtbj17dGhpcy5fb25TZWxlY3RDb2x1bW59XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8Q29sb3JQYWxldHRlR3JvdXBcbiAgICAgICAgICAgICAgY29sb3JSYW5nZXM9e2ZpbHRlcmVkQ29sb3JSYW5nZXN9XG4gICAgICAgICAgICAgIG9uU2VsZWN0PXt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3JSYW5nZX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3RoaXMucHJvcHMuc2VsZWN0ZWRDb2xvclJhbmdlfVxuICAgICAgICAgICAgICByZXZlcnNlZD17Y29sb3JSYW5nZUNvbmZpZy5yZXZlcnNlZH1cbiAgICAgICAgICAgICAgY29uZmlnVHlwZVNlbGVjdG9yPXsoKSA9PiB0aGlzLnByb3BzLmNvbG9yUGFsZXR0ZVVJLmNvbG9yUmFuZ2VDb25maWcudHlwZX1cbiAgICAgICAgICAgICAgY29uZmlnU3RlcFNlbGVjdG9yPXsoKSA9PiB0aGlzLnByb3BzLmNvbG9yUGFsZXR0ZVVJLmNvbG9yUmFuZ2VDb25maWcuc3RlcHN9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gQ29sb3JSYW5nZVNlbGVjdG9yO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUGFsZXR0ZUNvbmZpZ0ZhY3RvcnkoKSB7XG4gIGNvbnN0IFBhbGV0dGVDb25maWc6IFJlYWN0LkZDPFBhbGV0dGVDb25maWdQcm9wcz4gPSAoe1xuICAgIGxhYmVsLFxuICAgIHZhbHVlLFxuICAgIGNvbmZpZzoge3R5cGUsIG9wdGlvbnN9LFxuICAgIG9uQ2hhbmdlXG4gIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZFBhbGV0dGVDb25maWdcbiAgICAgICAgY2xhc3NOYW1lPXtgY29sb3ItcGFsZXR0ZV9fY29uZmlnIGNvbG9yLXBhbGV0dGVfX2NvbmZpZy0tJHtsYWJlbH1gfVxuICAgICAgICBvbkNsaWNrPXtlID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sb3ItcGFsZXR0ZV9fY29uZmlnX19sYWJlbFwiPlxuICAgICAgICAgIHt0eXBlICE9PSBDT05GSUdfU0VUVElOR1NfQ1VTVE9NX1JFVkVSU0VEX0JVVFRPTl9UWVBFICYmIChcbiAgICAgICAgICAgIDxQYW5lbExhYmVsPlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17YGNvbG9yLiR7bGFiZWx9YH0gLz5cbiAgICAgICAgICAgIDwvUGFuZWxMYWJlbD5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge3R5cGUgPT09ICdzZWxlY3QnICYmIChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fc2VsZWN0XCI+XG4gICAgICAgICAgICA8SXRlbVNlbGVjdG9yXG4gICAgICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3ZhbHVlfVxuICAgICAgICAgICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgICAgICAgICBtdWx0aVNlbGVjdD17ZmFsc2V9XG4gICAgICAgICAgICAgIHNlYXJjaGFibGU9e2ZhbHNlfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgICB7dHlwZSA9PT0gJ3N3aXRjaCcgJiYgKFxuICAgICAgICAgIDxTd2l0Y2hcbiAgICAgICAgICAgIGNoZWNrZWQ9e0Jvb2xlYW4odmFsdWUpfVxuICAgICAgICAgICAgaWQ9e2Ake2xhYmVsfS10b2dnbGVgfVxuICAgICAgICAgICAgb25DaGFuZ2U9eygpID0+IG9uQ2hhbmdlKCF2YWx1ZSl9XG4gICAgICAgICAgICBzZWNvbmRhcnlcbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7dHlwZSA9PT0gQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSAmJiAoXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgY2xhc3NOYW1lPXtgY29sb3ItcGFsZXR0ZV9fY29uZmlnX19idXR0b24gJHtcbiAgICAgICAgICAgICAgdmFsdWUgPyAnY29sb3ItcGFsZXR0ZV9fY29uZmlnX19idXR0b24tLWFjdGl2ZScgOiAnJ1xuICAgICAgICAgICAgfWB9XG4gICAgICAgICAgICBkYXRhLXRpcFxuICAgICAgICAgICAgZGF0YS1mb3I9e2Ake2xhYmVsfS10b29sdGlwYH1cbiAgICAgICAgICAgIHsuLi4oIXZhbHVlICYmIHtsaW5rOiB0cnVlfSl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZSghdmFsdWUpfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTd2FwSG9yaXpvbnRhbCAvPlxuICAgICAgICAgICAgPFRvb2x0aXAgaWQ9e2Ake2xhYmVsfS10b29sdGlwYH0gZWZmZWN0PVwic29saWRcIiBwbGFjZT1cInRvcFwiPlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZFBhbGV0dGVDb25maWc+XG4gICAgKTtcbiAgfTtcbiAgcmV0dXJuIFBhbGV0dGVDb25maWc7XG59XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2UgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY29sb3ItcGFsZXR0ZS1vdXRlcidcbn0pYFxuICBwYWRkaW5nOiAwIDhweDtcbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmV4cG9ydCBmdW5jdGlvbiBDb2xvclBhbGV0dGVHcm91cEZhY3RvcnkoKSB7XG4gIGNvbnN0IENvbG9yUGFsZXR0ZUdyb3VwOiBSZWFjdC5GQzxDb2xvclBhbGV0dGVHcm91cFByb3BzPiA9ICh7XG4gICAgcmV2ZXJzZWQsXG4gICAgb25TZWxlY3QsXG4gICAgc2VsZWN0ZWQsXG4gICAgY29sb3JSYW5nZXMsXG4gICAgdGl0bGVcbiAgfSkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2dyb3VwXCI+XG4gICAgICAgIHt0aXRsZSAmJiB0aXRsZX1cbiAgICAgICAge2NvbG9yUmFuZ2VzLm1hcCgoY29sb3JSYW5nZSwgaSkgPT4gKFxuICAgICAgICAgIDxTdHlsZWRDb2xvclJhbmdlXG4gICAgICAgICAgICBrZXk9e2Ake2NvbG9yUmFuZ2UubmFtZX0tJHtpfWB9XG4gICAgICAgICAgICBvbkNsaWNrPXtlID0+IG9uU2VsZWN0KHJldmVyc2VkID8gcmV2ZXJzZUNvbG9yUmFuZ2UodHJ1ZSwgY29sb3JSYW5nZSkgOiBjb2xvclJhbmdlLCBlKX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Q29sb3JQYWxldHRlXG4gICAgICAgICAgICAgIGNvbG9ycz17Y29sb3JSYW5nZS5jb2xvcnN9XG4gICAgICAgICAgICAgIGlzUmV2ZXJzZWQ9e3JldmVyc2VkfVxuICAgICAgICAgICAgICBpc1NlbGVjdGVkPXtjb2xvclJhbmdlLm5hbWUgPT09IHNlbGVjdGVkLm5hbWV9XG4gICAgICAgICAgICAgIHJvb3RQcm9wcz17e1xuICAgICAgICAgICAgICAgICdkYXRhLXRpcCc6IHRydWUsXG4gICAgICAgICAgICAgICAgJ2RhdGEtZm9yJzogYGNvbG9yLXJhbmdlLSR7aX0tdG9vbHRpcGBcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPFRvb2x0aXAgaWQ9e2Bjb2xvci1yYW5nZS0ke2l9LXRvb2x0aXBgfSBlZmZlY3Q9XCJzb2xpZFwiIHBsYWNlPVwidG9wXCI+XG4gICAgICAgICAgICAgICAge2NvbG9yUmFuZ2UubmFtZX1cbiAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgPC9Db2xvclBhbGV0dGU+XG4gICAgICAgICAgPC9TdHlsZWRDb2xvclJhbmdlPlxuICAgICAgICApKX1cbiAg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
|