@carto/kepler.gl 0.0.85 → 0.0.86-alpha.deck9.1
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.js +36 -41
- package/dist/actions/actions.js +15 -21
- package/dist/actions/identity-actions.js +14 -20
- package/dist/actions/index.js +16 -16
- package/dist/actions/map-state-actions.js +12 -18
- package/dist/actions/map-style-actions.js +30 -46
- package/dist/actions/provider-actions.js +49 -73
- package/dist/actions/ui-state-actions.js +73 -113
- package/dist/actions/vis-state-actions.js +152 -148
- package/dist/cloud-providers/index.js +6 -7
- package/dist/cloud-providers/provider.js +189 -279
- package/dist/components/bottom-widget.js +105 -117
- package/dist/components/common/action-panel.js +122 -74
- package/dist/components/common/animation-control/animation-control.js +69 -54
- package/dist/components/common/animation-control/animation-controller.js +134 -160
- package/dist/components/common/animation-control/animation-speed-slider.js +47 -54
- package/dist/components/common/animation-control/floating-time-display.js +120 -100
- package/dist/components/common/animation-control/playback-controls.js +147 -144
- package/dist/components/common/animation-control/speed-control.js +31 -23
- package/dist/components/common/checkbox.js +56 -70
- package/dist/components/common/color-legend.js +83 -110
- package/dist/components/common/data-table/button.js +31 -23
- package/dist/components/common/data-table/canvas.js +11 -5
- package/dist/components/common/data-table/cell-size.js +51 -61
- package/dist/components/common/data-table/grid.js +40 -59
- package/dist/components/common/data-table/index.js +464 -348
- package/dist/components/common/data-table/option-dropdown.js +50 -33
- package/dist/components/common/dataset-label.js +17 -13
- package/dist/components/common/error-boundary.js +27 -45
- package/dist/components/common/field-selector.js +99 -139
- package/dist/components/common/field-token.js +24 -9
- package/dist/components/common/file-uploader/file-drop.js +96 -115
- package/dist/components/common/file-uploader/file-upload-progress.js +68 -45
- package/dist/components/common/file-uploader/file-upload.js +215 -187
- package/dist/components/common/file-uploader/upload-button.js +35 -22
- package/dist/components/common/histogram-plot.js +47 -58
- package/dist/components/common/icons/add.js +14 -27
- package/dist/components/common/icons/anchor_window.js +16 -18
- package/dist/components/common/icons/arrow-down-alt.js +14 -27
- package/dist/components/common/icons/arrow-down-solid.js +14 -27
- package/dist/components/common/icons/arrow-down.js +14 -27
- package/dist/components/common/icons/arrow-left.js +17 -30
- package/dist/components/common/icons/arrow-right.js +14 -27
- package/dist/components/common/icons/arrow-up-alt.js +15 -28
- package/dist/components/common/icons/arrow-up-solid.js +14 -27
- package/dist/components/common/icons/arrow-up.js +14 -27
- package/dist/components/common/icons/base.js +39 -57
- package/dist/components/common/icons/bug.js +16 -29
- package/dist/components/common/icons/cancel.js +14 -27
- package/dist/components/common/icons/checkmark.js +18 -31
- package/dist/components/common/icons/chevron-right.js +20 -33
- package/dist/components/common/icons/clipboard.js +15 -28
- package/dist/components/common/icons/clock.js +16 -29
- package/dist/components/common/icons/close.js +19 -32
- package/dist/components/common/icons/code-alt.js +16 -29
- package/dist/components/common/icons/copy.js +18 -31
- package/dist/components/common/icons/crosshairs.js +16 -29
- package/dist/components/common/icons/cube-3d.js +18 -31
- package/dist/components/common/icons/cursor-click.js +18 -31
- package/dist/components/common/icons/data-table.js +15 -28
- package/dist/components/common/icons/db.js +15 -28
- package/dist/components/common/icons/delete.js +16 -29
- package/dist/components/common/icons/docs.js +30 -43
- package/dist/components/common/icons/drag-n-drop.js +16 -29
- package/dist/components/common/icons/draw-polygon.js +33 -46
- package/dist/components/common/icons/email.js +18 -31
- package/dist/components/common/icons/expand.js +16 -29
- package/dist/components/common/icons/eye-seen.js +16 -29
- package/dist/components/common/icons/eye-unseen.js +16 -29
- package/dist/components/common/icons/file-type.js +35 -19
- package/dist/components/common/icons/file.js +14 -27
- package/dist/components/common/icons/files.js +14 -26
- package/dist/components/common/icons/filter-funnel.js +14 -27
- package/dist/components/common/icons/free-window.js +16 -18
- package/dist/components/common/icons/gear.js +16 -29
- package/dist/components/common/icons/hash.js +14 -27
- package/dist/components/common/icons/histogram.js +15 -27
- package/dist/components/common/icons/index.js +156 -156
- package/dist/components/common/icons/info.js +25 -38
- package/dist/components/common/icons/layers.js +14 -27
- package/dist/components/common/icons/left-arrow.js +16 -29
- package/dist/components/common/icons/legend.js +14 -27
- package/dist/components/common/icons/line-chart.js +14 -27
- package/dist/components/common/icons/login.js +17 -30
- package/dist/components/common/icons/logout.js +16 -29
- package/dist/components/common/icons/map-icon.js +18 -32
- package/dist/components/common/icons/map.js +18 -32
- package/dist/components/common/icons/messages.js +14 -27
- package/dist/components/common/icons/minus.js +14 -27
- package/dist/components/common/icons/order-by-dataset.js +15 -17
- package/dist/components/common/icons/order-by-list.js +7 -9
- package/dist/components/common/icons/pause.js +14 -27
- package/dist/components/common/icons/picture.js +14 -26
- package/dist/components/common/icons/pin.js +17 -30
- package/dist/components/common/icons/play.js +14 -27
- package/dist/components/common/icons/polygon.js +35 -48
- package/dist/components/common/icons/rectangle.js +36 -49
- package/dist/components/common/icons/reduce.js +17 -30
- package/dist/components/common/icons/reset.js +14 -27
- package/dist/components/common/icons/rocket.js +14 -27
- package/dist/components/common/icons/save.js +16 -29
- package/dist/components/common/icons/save2.js +20 -33
- package/dist/components/common/icons/search.js +16 -29
- package/dist/components/common/icons/settings.js +16 -29
- package/dist/components/common/icons/share.js +14 -27
- package/dist/components/common/icons/split.js +42 -55
- package/dist/components/common/icons/square-select.js +16 -29
- package/dist/components/common/icons/swap-horizontal.js +18 -31
- package/dist/components/common/icons/table.js +14 -27
- package/dist/components/common/icons/trash.js +16 -29
- package/dist/components/common/icons/upload.js +14 -27
- package/dist/components/common/icons/vert-dots.js +52 -65
- package/dist/components/common/icons/vert-three-dots.js +27 -40
- package/dist/components/common/icons/warning.js +26 -39
- package/dist/components/common/image-preview.js +71 -33
- package/dist/components/common/info-helper.js +36 -29
- package/dist/components/common/item-selector/accessor.js +7 -13
- package/dist/components/common/item-selector/chickleted-input.js +72 -56
- package/dist/components/common/item-selector/dropdown-list.js +182 -214
- package/dist/components/common/item-selector/item-selector-submenu.js +34 -55
- package/dist/components/common/item-selector/item-selector.js +183 -194
- package/dist/components/common/item-selector/typeahead.js +236 -248
- package/dist/components/common/line-chart.js +80 -58
- package/dist/components/common/loading-spinner.js +46 -31
- package/dist/components/common/logo.js +61 -48
- package/dist/components/common/map-layer-selector.js +31 -25
- package/dist/components/common/modal.js +167 -106
- package/dist/components/common/portaled.js +169 -189
- package/dist/components/common/progress-bar.js +27 -24
- package/dist/components/common/range-brush.js +176 -215
- package/dist/components/common/range-plot.js +52 -63
- package/dist/components/common/range-slider.js +206 -231
- package/dist/components/common/slider/mouse-event.js +59 -66
- package/dist/components/common/slider/slider-bar-handle.js +51 -61
- package/dist/components/common/slider/slider-handle.js +127 -102
- package/dist/components/common/slider/slider.js +143 -162
- package/dist/components/common/styled-components.js +518 -256
- package/dist/components/common/switch.js +11 -11
- package/dist/components/common/time-range-slider-time-title.js +49 -32
- package/dist/components/common/time-range-slider.js +56 -45
- package/dist/components/common/time-slider-marker.js +71 -52
- package/dist/components/common/tippy-tooltip.js +89 -59
- package/dist/components/common/toolbar-item.js +53 -45
- package/dist/components/common/toolbar.js +24 -18
- package/dist/components/common/vertical-toolbar.js +13 -6
- package/dist/components/container.js +87 -119
- package/dist/components/context.js +6 -8
- package/dist/components/editor/constants.js +4 -4
- package/dist/components/editor/editor.js +122 -157
- package/dist/components/editor/feature-action-panel.js +52 -59
- package/dist/components/editor/feature-styles.js +46 -29
- package/dist/components/editor/handle-style.js +38 -29
- package/dist/components/filters/components.js +8 -4
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +33 -43
- package/dist/components/filters/filter-panels/multi-select-filter-panel.js +20 -21
- package/dist/components/filters/filter-panels/new-filter-panel.js +24 -31
- package/dist/components/filters/filter-panels/polygon-filter-panel.js +26 -31
- package/dist/components/filters/filter-panels/range-filter-panel.js +20 -21
- package/dist/components/filters/filter-panels/single-select-filter-panel.js +20 -21
- package/dist/components/filters/filter-panels/time-range-filter-panel.js +28 -31
- package/dist/components/filters/index.js +10 -10
- package/dist/components/filters/multi-select-filter.js +11 -9
- package/dist/components/filters/polygon-filter.js +26 -41
- package/dist/components/filters/range-filter.js +9 -7
- package/dist/components/filters/single-select-filter.js +11 -13
- package/dist/components/filters/time-range-filter.js +16 -14
- package/dist/components/filters/time-widget.js +125 -84
- package/dist/components/geocoder/geocoder.js +158 -177
- package/dist/components/geocoder-panel.js +66 -87
- package/dist/components/index.js +328 -329
- package/dist/components/injector.js +44 -63
- package/dist/components/kepler-gl.js +325 -361
- package/dist/components/map/coordinate-info.js +18 -16
- package/dist/components/map/layer-hover-info.js +108 -86
- package/dist/components/map/layer-selector-panel.js +50 -48
- package/dist/components/map/locale-panel.js +38 -44
- package/dist/components/map/map-control-panel.js +70 -47
- package/dist/components/map/map-control-toolbar.js +9 -6
- package/dist/components/map/map-control-tooltip.js +10 -8
- package/dist/components/map/map-control.js +35 -27
- package/dist/components/map/map-draw-panel.js +38 -48
- package/dist/components/map/map-legend-panel.js +47 -50
- package/dist/components/map/map-legend.js +133 -116
- package/dist/components/map/map-popover.js +155 -100
- package/dist/components/map/split-map-button.js +30 -34
- package/dist/components/map/toggle-3d-button.js +25 -27
- package/dist/components/map-container.js +313 -359
- package/dist/components/maps-layout.js +16 -26
- package/dist/components/modal-container.js +359 -355
- package/dist/components/modals/add-map-style-modal.js +233 -194
- package/dist/components/modals/cloud-tile.js +96 -67
- package/dist/components/modals/data-table-modal.js +155 -152
- package/dist/components/modals/delete-data-modal.js +20 -20
- package/dist/components/modals/error-display.js +9 -7
- package/dist/components/modals/export-data-modal.js +118 -140
- package/dist/components/modals/export-image-modal.js +82 -69
- package/dist/components/modals/export-map-modal/components.js +20 -18
- package/dist/components/modals/export-map-modal/export-html-map.js +82 -74
- package/dist/components/modals/export-map-modal/export-json-map.js +65 -45
- package/dist/components/modals/export-map-modal/export-map-modal.js +42 -47
- package/dist/components/modals/image-modal-container.js +20 -21
- package/dist/components/modals/load-data-modal.js +28 -30
- package/dist/components/modals/load-storage-map.js +277 -178
- package/dist/components/modals/loading-dialog.js +41 -19
- package/dist/components/modals/modal-dialog.js +4 -6
- package/dist/components/modals/modal-tabs.js +83 -48
- package/dist/components/modals/overwrite-map-modal.js +41 -30
- package/dist/components/modals/provider-modal-container.js +23 -42
- package/dist/components/modals/save-map-modal.js +107 -83
- package/dist/components/modals/share-map-modal.js +101 -95
- package/dist/components/modals/status-panel.js +63 -43
- package/dist/components/modals/storage-map-viewer.js +133 -70
- package/dist/components/notification-panel/notification-item.js +94 -97
- package/dist/components/notification-panel.js +35 -43
- package/dist/components/performance.js +49 -53
- package/dist/components/plot-container.js +151 -169
- package/dist/components/side-panel/cloud-storage-dropdown.js +13 -15
- package/dist/components/side-panel/common/dataset-info.js +16 -12
- package/dist/components/side-panel/common/dataset-tag.js +48 -27
- package/dist/components/side-panel/common/dataset-title.js +119 -116
- package/dist/components/side-panel/common/source-data-catalog.js +31 -32
- package/dist/components/side-panel/common/source-data-selector.js +52 -77
- package/dist/components/side-panel/custom-panel.js +6 -8
- package/dist/components/side-panel/filter-manager.js +48 -62
- package/dist/components/side-panel/filter-panel/filter-panel-header.js +35 -25
- package/dist/components/side-panel/filter-panel/filter-panel.js +46 -64
- package/dist/components/side-panel/interaction-manager.js +20 -18
- package/dist/components/side-panel/interaction-panel/brush-config.js +17 -17
- package/dist/components/side-panel/interaction-panel/interaction-panel.js +76 -95
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +118 -143
- package/dist/components/side-panel/interaction-panel/tooltip-config.js +95 -76
- package/dist/components/side-panel/layer-manager.js +105 -115
- package/dist/components/side-panel/layer-panel/add-layer-button.js +92 -54
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +5 -5
- package/dist/components/side-panel/layer-panel/color-palette.js +50 -37
- package/dist/components/side-panel/layer-panel/color-range-selector.js +196 -207
- package/dist/components/side-panel/layer-panel/color-selector.js +104 -110
- package/dist/components/side-panel/layer-panel/column-selector.js +34 -22
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +4 -4
- package/dist/components/side-panel/layer-panel/custom-palette.js +248 -205
- package/dist/components/side-panel/layer-panel/custom-picker.js +51 -69
- package/dist/components/side-panel/layer-panel/dataset-layer-group.js +37 -42
- package/dist/components/side-panel/layer-panel/dataset-layer-section.js +31 -27
- package/dist/components/side-panel/layer-panel/dataset-section.js +45 -35
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +14 -13
- package/dist/components/side-panel/layer-panel/hex-column-config.js +32 -55
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +5 -5
- package/dist/components/side-panel/layer-panel/layer-column-config.js +42 -46
- package/dist/components/side-panel/layer-panel/layer-config-group.js +178 -144
- package/dist/components/side-panel/layer-panel/layer-configurator.js +826 -830
- package/dist/components/side-panel/layer-panel/layer-list.js +101 -94
- package/dist/components/side-panel/layer-panel/layer-panel-header.js +124 -82
- package/dist/components/side-panel/layer-panel/layer-panel.js +111 -105
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +67 -58
- package/dist/components/side-panel/layer-panel/layer-type-list-item.js +47 -32
- package/dist/components/side-panel/layer-panel/layer-type-selector.js +30 -41
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +42 -43
- package/dist/components/side-panel/layer-panel/panel-view-list-toggle.js +55 -57
- package/dist/components/side-panel/layer-panel/single-color-palette.js +48 -33
- package/dist/components/side-panel/layer-panel/text-label-panel.js +81 -116
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +88 -102
- package/dist/components/side-panel/layer-panel/vis-config-slider.js +99 -85
- package/dist/components/side-panel/layer-panel/vis-config-switch.js +38 -29
- package/dist/components/side-panel/map-manager.js +70 -89
- package/dist/components/side-panel/map-style-panel/map-layer-selector.js +72 -60
- package/dist/components/side-panel/map-style-panel/map-style-selector.js +64 -42
- package/dist/components/side-panel/panel-dropdown.js +21 -37
- package/dist/components/side-panel/panel-header-action.js +60 -65
- package/dist/components/side-panel/panel-header.js +165 -184
- package/dist/components/side-panel/panel-tab.js +35 -29
- package/dist/components/side-panel/panel-title.js +15 -18
- package/dist/components/side-panel/panel-toggle.js +30 -31
- package/dist/components/side-panel/side-bar.js +100 -91
- package/dist/components/side-panel.js +108 -123
- package/dist/connect/keplergl-connect.js +17 -26
- package/dist/connect/with-local-selector.js +31 -63
- package/dist/constants/action-types.js +113 -115
- package/dist/constants/color-palette.js +14 -16
- package/dist/constants/color-ranges.js +23 -28
- package/dist/constants/custom-color-ranges.js +12 -12
- package/dist/constants/default-settings.js +323 -254
- package/dist/constants/index.js +63 -63
- package/dist/constants/keyevent.js +4 -4
- package/dist/constants/tooltip.js +5 -5
- package/dist/constants/user-feedbacks.js +9 -5
- package/dist/constants/user-guides.js +10 -10
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +37 -63
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +52 -56
- package/dist/deckgl-layers/cluster-layer/cluster-layer.js +165 -168
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +24 -43
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.d.ts +2 -2
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +27 -40
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +27 -40
- package/dist/deckgl-layers/layer-utils/cluster-utils.js +60 -68
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.d.ts +4 -4
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +281 -282
- package/dist/deckgl-layers/layer-utils/shader-utils.js +2 -2
- package/dist/deckgl-layers/line-layer/line-layer.js +62 -70
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +37 -51
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +65 -85
- package/dist/index.js +15 -16
- package/dist/layers/aggregation-layer.js +299 -331
- package/dist/layers/arc-layer/arc-layer-icon.js +27 -41
- package/dist/layers/arc-layer/arc-layer.js +174 -201
- package/dist/layers/base-layer.d.ts +1 -1
- package/dist/layers/base-layer.js +1371 -1544
- package/dist/layers/cluster-layer/cluster-layer-icon.js +30 -44
- package/dist/layers/cluster-layer/cluster-layer.js +89 -103
- package/dist/layers/default-layer-icon.js +39 -53
- package/dist/layers/geojson-layer/geojson-layer-icon.js +42 -55
- package/dist/layers/geojson-layer/geojson-layer.js +292 -353
- package/dist/layers/geojson-layer/geojson-utils.js +31 -36
- package/dist/layers/grid-layer/grid-layer-icon.js +87 -100
- package/dist/layers/grid-layer/grid-layer.js +51 -61
- package/dist/layers/grid-layer/grid-utils.js +13 -9
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +21 -35
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +225 -260
- package/dist/layers/h3-hexagon-layer/h3-utils.js +16 -16
- package/dist/layers/heatmap-layer/heatmap-layer-icon.js +39 -52
- package/dist/layers/heatmap-layer/heatmap-layer.js +140 -171
- package/dist/layers/hexagon-layer/hexagon-layer-icon.js +51 -64
- package/dist/layers/hexagon-layer/hexagon-layer.js +49 -63
- package/dist/layers/hexagon-layer/hexagon-utils.js +15 -14
- package/dist/layers/icon-layer/icon-info-modal.js +82 -75
- package/dist/layers/icon-layer/icon-layer-icon.js +24 -37
- package/dist/layers/icon-layer/icon-layer.js +274 -303
- package/dist/layers/index.js +43 -29
- package/dist/layers/layer-factory.js +25 -41
- package/dist/layers/layer-text-label.js +21 -23
- package/dist/layers/layer-update.js +16 -18
- package/dist/layers/line-layer/line-layer-icon.js +30 -43
- package/dist/layers/line-layer/line-layer.js +123 -142
- package/dist/layers/mapbox-utils.js +61 -62
- package/dist/layers/mapboxgl-layer.js +124 -169
- package/dist/layers/point-layer/point-layer-icon.js +45 -59
- package/dist/layers/point-layer/point-layer.d.ts +2 -2
- package/dist/layers/point-layer/point-layer.js +355 -386
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +208 -238
- package/dist/layers/s2-geometry-layer/s2-layer-icon.js +21 -35
- package/dist/layers/s2-geometry-layer/s2-utils.js +9 -8
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +24 -25
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +102 -115
- package/dist/layers/scenegraph-layer/scenegraph-layer.js +148 -172
- package/dist/layers/trip-layer/trip-info-modal.js +50 -30
- package/dist/layers/trip-layer/trip-layer-icon.js +40 -53
- package/dist/layers/trip-layer/trip-layer.js +239 -307
- package/dist/layers/trip-layer/trip-utils.js +34 -50
- package/dist/layers/types.js +2 -2
- package/dist/localization/formatted-message.js +8 -10
- package/dist/localization/index.js +7 -7
- package/dist/localization/locales.js +6 -9
- package/dist/localization/messages.js +13 -10
- package/dist/localization/translations/ca.js +11 -13
- package/dist/localization/translations/cn.js +11 -13
- package/dist/localization/translations/en.js +11 -13
- package/dist/localization/translations/es.js +11 -13
- package/dist/localization/translations/fi.js +11 -13
- package/dist/localization/translations/ja.js +11 -13
- package/dist/localization/translations/pt.js +11 -13
- package/dist/localization/translations/ru.js +11 -13
- package/dist/middleware/index.js +3 -5
- package/dist/processors/data-processor.js +164 -201
- package/dist/processors/file-handler.js +111 -233
- package/dist/processors/index.js +4 -4
- package/dist/reducers/combined-updaters.js +41 -41
- package/dist/reducers/composer-helpers.js +20 -45
- package/dist/reducers/composers.js +9 -8
- package/dist/reducers/core.js +31 -35
- package/dist/reducers/index.js +21 -22
- package/dist/reducers/map-state-updaters.js +65 -47
- package/dist/reducers/map-state.js +23 -15
- package/dist/reducers/map-style-updaters.js +233 -159
- package/dist/reducers/map-style.js +30 -16
- package/dist/reducers/provider-state-updaters.js +217 -229
- package/dist/reducers/provider-state.js +29 -17
- package/dist/reducers/root.js +86 -58
- package/dist/reducers/ui-state-updaters.js +337 -218
- package/dist/reducers/ui-state.js +45 -16
- package/dist/reducers/vis-state-merger.js +205 -209
- package/dist/reducers/vis-state-selectors.js +5 -19
- package/dist/reducers/vis-state-updaters.js +1003 -876
- package/dist/reducers/vis-state.js +75 -16
- package/dist/schemas/dataset-schema.js +84 -108
- package/dist/schemas/index.js +28 -29
- package/dist/schemas/map-state-schema.js +21 -18
- package/dist/schemas/map-style-schema.js +47 -55
- package/dist/schemas/schema-manager.js +147 -161
- package/dist/schemas/schema-utils.js +8 -9
- package/dist/schemas/schema.js +72 -87
- package/dist/schemas/versions.js +3 -3
- package/dist/schemas/vis-state-schema.js +441 -583
- package/dist/styles/base.js +1217 -1021
- package/dist/styles/index.js +3 -3
- package/dist/styles/media-breakpoints.js +23 -18
- package/dist/tasks/tasks.js +36 -39
- package/dist/templates/export-map-html.js +233 -4
- package/dist/utils/aggregate-utils.js +13 -16
- package/dist/utils/color-utils.js +29 -37
- package/dist/utils/custom-scales.js +3 -3
- package/dist/utils/data-scale-utils.js +6 -13
- package/dist/utils/data-utils.js +60 -83
- package/dist/utils/dataset-utils.js +48 -77
- package/dist/utils/dom-to-image.js +108 -163
- package/dist/utils/dom-utils.js +88 -105
- package/dist/utils/export-utils.js +116 -103
- package/dist/utils/filter-utils.js +379 -374
- package/dist/utils/gl-utils.js +16 -15
- package/dist/utils/gpu-filter-utils.js +54 -73
- package/dist/utils/index.js +47 -48
- package/dist/utils/interaction-utils.js +53 -46
- package/dist/utils/layer-utils.js +89 -78
- package/dist/utils/locale-utils.js +24 -16
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +67 -76
- package/dist/utils/map-style-utils/mapbox-utils.js +4 -3
- package/dist/utils/mapbox-utils.js +3 -4
- package/dist/utils/notifications-utils.js +33 -38
- package/dist/utils/observe-dimensions.js +42 -54
- package/dist/utils/projection-utils.js +14 -11
- package/dist/utils/split-map-utils.js +30 -33
- package/dist/utils/table-utils/data-container-utils.js +15 -14
- package/dist/utils/table-utils/data-row.js +58 -65
- package/dist/utils/table-utils/index.js +2 -2
- package/dist/utils/table-utils/indexed-data-container.js +105 -173
- package/dist/utils/table-utils/kepler-table.js +362 -386
- package/dist/utils/table-utils/row-data-container.js +99 -164
- package/dist/utils/utils.js +29 -30
- package/package.json +21 -21
- package/src/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.ts +2 -2
- package/src/deckgl-layers/layer-utils/cpu-aggregator.ts +21 -11
- package/src/layers/base-layer.ts +17 -10
|
@@ -1,20 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports.preventCloseSelector = exports
|
|
7
|
+
exports.preventCloseSelector = exports.default = exports.StyledDropdownSelect = exports.ItemSelectorListen = void 0;
|
|
9
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
16
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
18
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
11
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
20
12
|
var _uniqBy = _interopRequireDefault(require("lodash/uniqBy"));
|
|
@@ -29,7 +21,9 @@ var _dropdownList = _interopRequireWildcard(require("./dropdown-list"));
|
|
|
29
21
|
var _utils = require("../../../utils/utils");
|
|
30
22
|
var _reactIntl = require("react-intl");
|
|
31
23
|
var _localization = require("../../../localization");
|
|
32
|
-
var
|
|
24
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
25
|
+
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; }
|
|
26
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
33
27
|
//
|
|
34
28
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
35
29
|
// of this software and associated documentation files (the "Software"), to deal
|
|
@@ -48,235 +42,230 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4; // Co
|
|
|
48
42
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
49
43
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
50
44
|
// THE SOFTWARE.
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
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)); }
|
|
54
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
55
|
-
var StyledDropdownSelect = exports.StyledDropdownSelect = _styledComponents["default"].div.attrs({
|
|
45
|
+
|
|
46
|
+
const StyledDropdownSelect = exports.StyledDropdownSelect = _styledComponents.default.div.attrs({
|
|
56
47
|
className: 'item-selector__dropdown'
|
|
57
|
-
})
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
48
|
+
})`
|
|
49
|
+
${props => props.inputTheme === 'secondary' ? props.theme.secondaryInput : props.inputTheme === 'light' ? props.theme.inputLT : props.theme.input};
|
|
50
|
+
|
|
51
|
+
height: ${props => props.size === 'small' ? props.theme.inputBoxHeightSmall : props.theme.inputBoxHeight};
|
|
52
|
+
|
|
53
|
+
.list__item__anchor {
|
|
54
|
+
${props => props.theme.dropdownListAnchor};
|
|
55
|
+
}
|
|
56
|
+
`;
|
|
57
|
+
const DropdownSelectValue = _styledComponents.default.span`
|
|
58
|
+
color: ${props => props.hasPlaceholder && props.inputTheme === 'light' ? props.theme.selectColorPlaceHolderLT : props.hasPlaceholder ? props.theme.selectColorPlaceHolder : props.inputTheme === 'light' ? props.theme.selectColorLT : props.theme.selectColor};
|
|
59
|
+
overflow: hidden;
|
|
60
|
+
text-overflow: ellipsis;
|
|
61
|
+
white-space: nowrap;
|
|
62
|
+
|
|
63
|
+
.list__item {
|
|
64
|
+
${props => props.inputTheme === 'light' ? props.theme.dropdownListItemLT : props.theme.dropdownListItem};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.list__item__anchor {
|
|
68
|
+
${props => props.inputTheme === 'light' ? props.theme.dropdownListAnchorLT : props.theme.dropdownListAnchor};
|
|
69
|
+
}
|
|
70
|
+
`;
|
|
71
|
+
const DropdownSelectActionRight = _styledComponents.default.div`
|
|
72
|
+
margin-right: 6px;
|
|
73
|
+
display: flex;
|
|
74
|
+
color: ${props => props.theme.subtextColor};
|
|
75
|
+
|
|
76
|
+
:hover {
|
|
77
|
+
color: ${props => props.theme.textColor};
|
|
78
|
+
}
|
|
79
|
+
`;
|
|
80
|
+
const DropdownWrapper = _styledComponents.default.div`
|
|
81
|
+
border: 0;
|
|
82
|
+
width: 100%;
|
|
83
|
+
left: 0;
|
|
84
|
+
z-index: ${props => props.theme.dropdownWrapperZ};
|
|
85
|
+
position: absolute;
|
|
86
|
+
bottom: ${props => props.placement === 'top' ? props.theme.inputBoxHeight : 'auto'};
|
|
87
|
+
margin-top: ${props => props.placement === 'bottom' ? `${props.theme.dropdownWapperMargin}px` : 'auto'};
|
|
88
|
+
margin-bottom: ${props => props.placement === 'top' ? `${props.theme.dropdownWapperMargin}px` : 'auto'};
|
|
89
|
+
`;
|
|
85
90
|
|
|
86
91
|
// The item-selector component dismount all its children if you click outside of the component because of listensToClickOutside function.
|
|
87
92
|
// If you want to prevent this behaviour when you click on a child add this class to it.
|
|
88
93
|
// It is useful for example, when you add the child component on the top of tree with a Portal as dropdown-list does with item-selector-submenu
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
(0,
|
|
94
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
95
|
-
args[_key] = arguments[_key];
|
|
96
|
-
}
|
|
97
|
-
_this = _callSuper(this, ItemSelector, [].concat(args));
|
|
98
|
-
(0, _defineProperty2["default"])(_this, "state", {
|
|
94
|
+
const preventCloseSelector = exports.preventCloseSelector = 'prevent__close__selector';
|
|
95
|
+
class ItemSelector extends _react.Component {
|
|
96
|
+
constructor() {
|
|
97
|
+
super(...arguments);
|
|
98
|
+
(0, _defineProperty2.default)(this, "state", {
|
|
99
99
|
showTypeahead: false
|
|
100
100
|
});
|
|
101
|
-
(0, _defineProperty2
|
|
101
|
+
(0, _defineProperty2.default)(this, "handleClickOutside", e => {
|
|
102
102
|
var _e$target, _e$target$classList;
|
|
103
103
|
if (e !== null && e !== void 0 && (_e$target = e.target) !== null && _e$target !== void 0 && (_e$target$classList = _e$target.classList) !== null && _e$target$classList !== void 0 && _e$target$classList.contains(preventCloseSelector)) {
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
|
-
|
|
106
|
+
this._hideTypeahead();
|
|
107
107
|
});
|
|
108
|
-
(0, _defineProperty2
|
|
108
|
+
(0, _defineProperty2.default)(this, "_onBlur", () => {
|
|
109
109
|
// note: chickleted input is not a real form element so we call onBlur()
|
|
110
110
|
// when we feel the events are appropriate
|
|
111
|
-
if (
|
|
112
|
-
|
|
111
|
+
if (this.props.onBlur) {
|
|
112
|
+
this.props.onBlur();
|
|
113
113
|
}
|
|
114
114
|
});
|
|
115
|
-
(0, _defineProperty2
|
|
115
|
+
(0, _defineProperty2.default)(this, "_removeItem", (item, e) => {
|
|
116
116
|
// only used when multiSelect = true
|
|
117
117
|
e.preventDefault();
|
|
118
118
|
e.stopPropagation();
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
return t === item;
|
|
122
|
-
});
|
|
119
|
+
const multiSelectedItems = (0, _utils.toArray)(this.props.selectedItems);
|
|
120
|
+
const index = multiSelectedItems.findIndex(t => t === item);
|
|
123
121
|
if (index < 0) {
|
|
124
122
|
return;
|
|
125
123
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if (
|
|
129
|
-
|
|
124
|
+
const items = [...multiSelectedItems.slice(0, index), ...multiSelectedItems.slice(index + 1, multiSelectedItems.length)];
|
|
125
|
+
this.props.onChange(items);
|
|
126
|
+
if (this.props.closeOnSelect) {
|
|
127
|
+
this.setState({
|
|
130
128
|
showTypeahead: false
|
|
131
129
|
});
|
|
132
|
-
|
|
130
|
+
this._onBlur();
|
|
133
131
|
}
|
|
134
132
|
});
|
|
135
|
-
(0, _defineProperty2
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
if (
|
|
139
|
-
|
|
140
|
-
|
|
133
|
+
(0, _defineProperty2.default)(this, "_selectItem", item => {
|
|
134
|
+
const getValue = _accessor.default.generateOptionToStringFor(this.props.getOptionValue || this.props.displayOption);
|
|
135
|
+
const previousSelected = (0, _utils.toArray)(this.props.selectedItems);
|
|
136
|
+
if (this.props.multiSelect) {
|
|
137
|
+
const items = (0, _uniqBy.default)(previousSelected.concat((0, _utils.toArray)(item)), getValue);
|
|
138
|
+
this.props.onChange(items);
|
|
141
139
|
} else {
|
|
142
|
-
|
|
140
|
+
this.props.onChange(getValue(item));
|
|
143
141
|
}
|
|
144
|
-
if (
|
|
145
|
-
|
|
142
|
+
if (this.props.closeOnSelect) {
|
|
143
|
+
this.setState({
|
|
146
144
|
showTypeahead: false
|
|
147
145
|
});
|
|
148
|
-
|
|
146
|
+
this._onBlur();
|
|
149
147
|
}
|
|
150
148
|
});
|
|
151
|
-
(0, _defineProperty2
|
|
149
|
+
(0, _defineProperty2.default)(this, "_onErase", e => {
|
|
152
150
|
e.stopPropagation();
|
|
153
|
-
|
|
151
|
+
this.props.onChange(null);
|
|
154
152
|
});
|
|
155
|
-
(0, _defineProperty2
|
|
153
|
+
(0, _defineProperty2.default)(this, "_showTypeahead", e => {
|
|
156
154
|
e.stopPropagation();
|
|
157
|
-
if (!
|
|
158
|
-
if (!
|
|
159
|
-
|
|
155
|
+
if (!this.props.disabled && !this.props.isLoading) {
|
|
156
|
+
if (!this.state.showTypeahead && this.props.onFocus) {
|
|
157
|
+
this.props.onFocus();
|
|
160
158
|
}
|
|
161
|
-
|
|
159
|
+
this.setState({
|
|
162
160
|
showTypeahead: true
|
|
163
161
|
});
|
|
164
162
|
}
|
|
165
163
|
});
|
|
166
|
-
return _this;
|
|
167
164
|
}
|
|
168
|
-
(
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
})) : this.props.showArrow ? /*#__PURE__*/_react["default"].createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react["default"].createElement(_icons.ArrowDown, {
|
|
265
|
-
height: "14px",
|
|
266
|
-
onClick: this._showTypeahead
|
|
267
|
-
})) : null), this.state.showTypeahead && this._renderDropdown(intl)));
|
|
268
|
-
}
|
|
269
|
-
}]);
|
|
270
|
-
}(_react.Component);
|
|
271
|
-
(0, _defineProperty2["default"])(ItemSelector, "defaultProps", {
|
|
165
|
+
_hideTypeahead() {
|
|
166
|
+
this.setState({
|
|
167
|
+
showTypeahead: false
|
|
168
|
+
});
|
|
169
|
+
this._onBlur();
|
|
170
|
+
}
|
|
171
|
+
_renderDropdown(intl) {
|
|
172
|
+
const {
|
|
173
|
+
placement = 'bottom'
|
|
174
|
+
} = this.props;
|
|
175
|
+
return /*#__PURE__*/_react.default.createElement(DropdownWrapper, {
|
|
176
|
+
placement: placement
|
|
177
|
+
}, /*#__PURE__*/_react.default.createElement(_typeahead.default, {
|
|
178
|
+
customClasses: {
|
|
179
|
+
results: 'list-selector',
|
|
180
|
+
input: 'typeahead__input',
|
|
181
|
+
listItem: 'list__item',
|
|
182
|
+
listAnchor: 'list__item__anchor'
|
|
183
|
+
},
|
|
184
|
+
options: this.props.options,
|
|
185
|
+
filterOption: this.props.filterOption,
|
|
186
|
+
fixedOptions: this.props.fixedOptions,
|
|
187
|
+
placeholder: this.props.typeaheadPlaceholder || intl ? intl.formatMessage({
|
|
188
|
+
id: 'placeholder.search'
|
|
189
|
+
}) : 'Search',
|
|
190
|
+
onOptionSelected: this._selectItem,
|
|
191
|
+
customListComponent: this.props.DropDownRenderComponent,
|
|
192
|
+
customListHeaderComponent: this.props.DropdownHeaderComponent,
|
|
193
|
+
customListItemComponent: this.props.DropDownLineItemRenderComponent,
|
|
194
|
+
displayOption: _accessor.default.generateOptionToStringFor(this.props.displayOption),
|
|
195
|
+
searchable: this.props.searchable,
|
|
196
|
+
showOptionsWhenEmpty: true,
|
|
197
|
+
selectedItems: (0, _utils.toArray)(this.props.selectedItems),
|
|
198
|
+
light: this.props.inputTheme === 'light',
|
|
199
|
+
withSubOptions: this.props.withSubOptions
|
|
200
|
+
}));
|
|
201
|
+
}
|
|
202
|
+
render() {
|
|
203
|
+
const selected = (0, _utils.toArray)(this.props.selectedItems);
|
|
204
|
+
const hasValue = selected.length;
|
|
205
|
+
const displayOption = _accessor.default.generateOptionToStringFor(this.props.displayOption);
|
|
206
|
+
const {
|
|
207
|
+
inputTheme = 'primary',
|
|
208
|
+
DropDownLineItemRenderComponent = _dropdownList.ListItem
|
|
209
|
+
} = this.props;
|
|
210
|
+
const dropdownSelectProps = {
|
|
211
|
+
className: (0, _classnames.default)({
|
|
212
|
+
active: this.state.showTypeahead
|
|
213
|
+
}),
|
|
214
|
+
displayOption,
|
|
215
|
+
disabled: this.props.disabled,
|
|
216
|
+
onClick: this._showTypeahead,
|
|
217
|
+
error: this.props.isError,
|
|
218
|
+
inputTheme: inputTheme,
|
|
219
|
+
size: this.props.size
|
|
220
|
+
};
|
|
221
|
+
const intl = this.props.intl;
|
|
222
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
223
|
+
className: "item-selector"
|
|
224
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
225
|
+
style: {
|
|
226
|
+
position: 'relative'
|
|
227
|
+
}
|
|
228
|
+
}, this.props.multiSelect ? /*#__PURE__*/_react.default.createElement(_chickletedInput.default, (0, _extends2.default)({}, dropdownSelectProps, {
|
|
229
|
+
selectedItems: (0, _utils.toArray)(this.props.selectedItems),
|
|
230
|
+
placeholder: this.props.placeholder,
|
|
231
|
+
removeItem: this._removeItem,
|
|
232
|
+
CustomChickletComponent: this.props.CustomChickletComponent,
|
|
233
|
+
inputTheme: inputTheme
|
|
234
|
+
})) :
|
|
235
|
+
/*#__PURE__*/
|
|
236
|
+
// @ts-expect-error
|
|
237
|
+
_react.default.createElement(StyledDropdownSelect, dropdownSelectProps, /*#__PURE__*/_react.default.createElement(DropdownSelectValue, {
|
|
238
|
+
hasPlaceholder: !hasValue,
|
|
239
|
+
inputTheme: inputTheme,
|
|
240
|
+
className: "item-selector__dropdown__value"
|
|
241
|
+
}, hasValue ? /*#__PURE__*/_react.default.createElement(DropDownLineItemRenderComponent, {
|
|
242
|
+
displayOption: displayOption,
|
|
243
|
+
value: selected[0],
|
|
244
|
+
light: inputTheme === 'light'
|
|
245
|
+
}) : /*#__PURE__*/_react.default.createElement(_localization.FormattedMessage, {
|
|
246
|
+
id: this.props.placeholder || 'placeholder.selectValue'
|
|
247
|
+
})), this.props.erasable && hasValue ? /*#__PURE__*/_react.default.createElement(DropdownSelectActionRight, null, this.props.isLoading ? /*#__PURE__*/_react.default.createElement(_loadingSpinner.default, {
|
|
248
|
+
size: 18,
|
|
249
|
+
strokeWidth: 2,
|
|
250
|
+
gap: 0
|
|
251
|
+
}) : /*#__PURE__*/_react.default.createElement(_icons.Delete, {
|
|
252
|
+
height: "12px",
|
|
253
|
+
onClick: this._onErase
|
|
254
|
+
})) : this.props.showArrow ? /*#__PURE__*/_react.default.createElement(DropdownSelectActionRight, null, /*#__PURE__*/_react.default.createElement(_icons.ArrowDown, {
|
|
255
|
+
height: "14px",
|
|
256
|
+
onClick: this._showTypeahead
|
|
257
|
+
})) : null), this.state.showTypeahead && this._renderDropdown(intl)));
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
(0, _defineProperty2.default)(ItemSelector, "defaultProps", {
|
|
272
261
|
multiSelect: true,
|
|
273
262
|
placeholder: 'placeholder.enterValue',
|
|
274
263
|
closeOnSelect: true,
|
|
275
264
|
searchable: true,
|
|
276
|
-
DropDownRenderComponent: _dropdownList
|
|
265
|
+
DropDownRenderComponent: _dropdownList.default,
|
|
277
266
|
DropDownLineItemRenderComponent: _dropdownList.ListItem,
|
|
278
267
|
withSubOptions: false
|
|
279
268
|
});
|
|
280
|
-
|
|
281
|
-
var _default = exports
|
|
282
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdW5pcUJ5IiwiX3JlYWN0T25jbGlja291dHNpZGUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9hY2Nlc3NvciIsIl9jaGlja2xldGVkSW5wdXQiLCJfdHlwZWFoZWFkIiwiX2ljb25zIiwiX2xvYWRpbmdTcGlubmVyIiwiX2Ryb3Bkb3duTGlzdCIsIl91dGlscyIsIl9yZWFjdEludGwiLCJfbG9jYWxpemF0aW9uIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX2NhbGxTdXBlciIsIm8iLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsImFwcGx5IiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJTdHlsZWREcm9wZG93blNlbGVjdCIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJpbnB1dFRoZW1lIiwidGhlbWUiLCJzZWNvbmRhcnlJbnB1dCIsImlucHV0TFQiLCJpbnB1dCIsInNpemUiLCJpbnB1dEJveEhlaWdodFNtYWxsIiwiaW5wdXRCb3hIZWlnaHQiLCJkcm9wZG93bkxpc3RBbmNob3IiLCJEcm9wZG93blNlbGVjdFZhbHVlIiwic3BhbiIsImhhc1BsYWNlaG9sZGVyIiwic2VsZWN0Q29sb3JQbGFjZUhvbGRlckxUIiwic2VsZWN0Q29sb3JQbGFjZUhvbGRlciIsInNlbGVjdENvbG9yTFQiLCJzZWxlY3RDb2xvciIsImRyb3Bkb3duTGlzdEl0ZW1MVCIsImRyb3Bkb3duTGlzdEl0ZW0iLCJkcm9wZG93bkxpc3RBbmNob3JMVCIsIkRyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQiLCJzdWJ0ZXh0Q29sb3IiLCJ0ZXh0Q29sb3IiLCJEcm9wZG93bldyYXBwZXIiLCJkcm9wZG93bldyYXBwZXJaIiwicGxhY2VtZW50IiwiY29uY2F0IiwiZHJvcGRvd25XYXBwZXJNYXJnaW4iLCJwcmV2ZW50Q2xvc2VTZWxlY3RvciIsIkl0ZW1TZWxlY3RvciIsIl9Db21wb25lbnQiLCJfdGhpcyIsIl9jbGFzc0NhbGxDaGVjazIiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJzaG93VHlwZWFoZWFkIiwiX2UkdGFyZ2V0IiwiX2UkdGFyZ2V0JGNsYXNzTGlzdCIsInRhcmdldCIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwiX2hpZGVUeXBlYWhlYWQiLCJvbkJsdXIiLCJpdGVtIiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJtdWx0aVNlbGVjdGVkSXRlbXMiLCJ0b0FycmF5Iiwic2VsZWN0ZWRJdGVtcyIsImluZGV4IiwiZmluZEluZGV4IiwiaXRlbXMiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwic2xpY2UiLCJvbkNoYW5nZSIsImNsb3NlT25TZWxlY3QiLCJzZXRTdGF0ZSIsIl9vbkJsdXIiLCJnZXRWYWx1ZSIsIkFjY2Vzc29yIiwiZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvciIsImdldE9wdGlvblZhbHVlIiwiZGlzcGxheU9wdGlvbiIsInByZXZpb3VzU2VsZWN0ZWQiLCJtdWx0aVNlbGVjdCIsInVuaXFCeSIsImRpc2FibGVkIiwiaXNMb2FkaW5nIiwic3RhdGUiLCJvbkZvY3VzIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsIl9yZW5kZXJEcm9wZG93biIsImludGwiLCJfdGhpcyRwcm9wcyRwbGFjZW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiY3VzdG9tQ2xhc3NlcyIsInJlc3VsdHMiLCJsaXN0SXRlbSIsImxpc3RBbmNob3IiLCJvcHRpb25zIiwiZmlsdGVyT3B0aW9uIiwiZml4ZWRPcHRpb25zIiwicGxhY2Vob2xkZXIiLCJ0eXBlYWhlYWRQbGFjZWhvbGRlciIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsIm9uT3B0aW9uU2VsZWN0ZWQiLCJfc2VsZWN0SXRlbSIsImN1c3RvbUxpc3RDb21wb25lbnQiLCJEcm9wRG93blJlbmRlckNvbXBvbmVudCIsImN1c3RvbUxpc3RIZWFkZXJDb21wb25lbnQiLCJEcm9wZG93bkhlYWRlckNvbXBvbmVudCIsImN1c3RvbUxpc3RJdGVtQ29tcG9uZW50IiwiRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudCIsInNlYXJjaGFibGUiLCJzaG93T3B0aW9uc1doZW5FbXB0eSIsImxpZ2h0Iiwid2l0aFN1Yk9wdGlvbnMiLCJyZW5kZXIiLCJzZWxlY3RlZCIsImhhc1ZhbHVlIiwiX3RoaXMkcHJvcHMiLCJfdGhpcyRwcm9wcyRpbnB1dFRoZW0iLCJfdGhpcyRwcm9wcyREcm9wRG93bkwiLCJMaXN0SXRlbSIsImRyb3Bkb3duU2VsZWN0UHJvcHMiLCJjbGFzc25hbWVzIiwiYWN0aXZlIiwib25DbGljayIsIl9zaG93VHlwZWFoZWFkIiwiZXJyb3IiLCJpc0Vycm9yIiwic3R5bGUiLCJwb3NpdGlvbiIsIl9leHRlbmRzMiIsInJlbW92ZUl0ZW0iLCJfcmVtb3ZlSXRlbSIsIkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50IiwiRm9ybWF0dGVkTWVzc2FnZSIsImVyYXNhYmxlIiwic3Ryb2tlV2lkdGgiLCJnYXAiLCJEZWxldGUiLCJoZWlnaHQiLCJfb25FcmFzZSIsInNob3dBcnJvdyIsIkFycm93RG93biIsIkNvbXBvbmVudCIsIkRyb3Bkb3duTGlzdCIsIkl0ZW1TZWxlY3Rvckxpc3RlbiIsImxpc3RlbnNUb0NsaWNrT3V0c2lkZSIsIl9kZWZhdWx0IiwiaW5qZWN0SW50bCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudCwgQ29tcG9uZW50VHlwZSwgTW91c2VFdmVudEhhbmRsZXJ9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcbmltcG9ydCBsaXN0ZW5zVG9DbGlja091dHNpZGUgZnJvbSAncmVhY3Qtb25jbGlja291dHNpZGUnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCBBY2Nlc3NvciBmcm9tICcuL2FjY2Vzc29yJztcbmltcG9ydCBDaGlja2xldGVkSW5wdXQgZnJvbSAnLi9jaGlja2xldGVkLWlucHV0JztcbmltcG9ydCBUeXBlYWhlYWQgZnJvbSAnLi90eXBlYWhlYWQnO1xuaW1wb3J0IHtEZWxldGUsIEFycm93RG93bn0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vaWNvbnMnO1xuaW1wb3J0IExvYWRpbmdTcGlubmVyIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2xvYWRpbmctc3Bpbm5lcic7XG5pbXBvcnQgRHJvcGRvd25MaXN0LCB7TGlzdEl0ZW19IGZyb20gJy4vZHJvcGRvd24tbGlzdCc7XG5cbmltcG9ydCB7dG9BcnJheX0gZnJvbSAndXRpbHMvdXRpbHMnO1xuaW1wb3J0IHtpbmplY3RJbnRsLCBJbnRsU2hhcGV9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdsb2NhbGl6YXRpb24nO1xuXG5pbnRlcmZhY2UgU3R5bGVkRHJvcGRvd25TZWxlY3Qge1xuICBpbnB1dFRoZW1lPzogc3RyaW5nO1xuICBzaXplPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd25TZWxlY3QgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd24nXG59KTxTdHlsZWREcm9wZG93blNlbGVjdD5gXG4gICR7cHJvcHMgPT5cbiAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnc2Vjb25kYXJ5J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dFxuICAgICAgOiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0TFRcbiAgICAgIDogcHJvcHMudGhlbWUuaW5wdXR9O1xuXG4gIGhlaWdodDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNpemUgPT09ICdzbWFsbCcgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodFNtYWxsIDogcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHR9O1xuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuYDtcblxuaW50ZXJmYWNlIERyb3Bkb3duU2VsZWN0VmFsdWVQcm9wcyB7XG4gIGhhc1BsYWNlaG9sZGVyPzogYm9vbGVhbjtcbiAgaW5wdXRUaGVtZT86IHN0cmluZztcbn1cblxuY29uc3QgRHJvcGRvd25TZWxlY3RWYWx1ZSA9IHN0eWxlZC5zcGFuPERyb3Bkb3duU2VsZWN0VmFsdWVQcm9wcz5gXG4gIGNvbG9yOiAke3Byb3BzID0+XG4gICAgcHJvcHMuaGFzUGxhY2Vob2xkZXIgJiYgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvclBsYWNlSG9sZGVyTFRcbiAgICAgIDogcHJvcHMuaGFzUGxhY2Vob2xkZXJcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JQbGFjZUhvbGRlclxuICAgICAgOiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFRcbiAgICAgIDogcHJvcHMudGhlbWUuc2VsZWN0Q29sb3J9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAubGlzdF9faXRlbSB7XG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0JyA/IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW1MVCA6IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEl0ZW19O1xuICB9XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgICA/IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEFuY2hvckxUXG4gICAgICAgIDogcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuYDtcblxuY29uc3QgRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodCA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1yaWdodDogNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3J9O1xuXG4gIDpob3ZlciB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgfVxuYDtcblxuaW50ZXJmYWNlIERyb3Bkb3duV3JhcHBlclByb3BzIHtcbiAgcGxhY2VtZW50Pzogc3RyaW5nO1xufVxuXG5jb25zdCBEcm9wZG93bldyYXBwZXIgPSBzdHlsZWQuZGl2PERyb3Bkb3duV3JhcHBlclByb3BzPmBcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bldyYXBwZXJafTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206ICR7cHJvcHMgPT4gKHByb3BzLnBsYWNlbWVudCA9PT0gJ3RvcCcgPyBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodCA6ICdhdXRvJyl9O1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+XG4gICAgcHJvcHMucGxhY2VtZW50ID09PSAnYm90dG9tJyA/IGAke3Byb3BzLnRoZW1lLmRyb3Bkb3duV2FwcGVyTWFyZ2lufXB4YCA6ICdhdXRvJ307XG4gIG1hcmdpbi1ib3R0b206ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5wbGFjZW1lbnQgPT09ICd0b3AnID8gYCR7cHJvcHMudGhlbWUuZHJvcGRvd25XYXBwZXJNYXJnaW59cHhgIDogJ2F1dG8nfTtcbmA7XG5cbi8vIFRoZSBpdGVtLXNlbGVjdG9yIGNvbXBvbmVudCBkaXNtb3VudCBhbGwgaXRzIGNoaWxkcmVuIGlmIHlvdSBjbGljayBvdXRzaWRlIG9mIHRoZSBjb21wb25lbnQgYmVjYXVzZSBvZiBsaXN0ZW5zVG9DbGlja091dHNpZGUgZnVuY3Rpb24uXG4vLyBJZiB5b3Ugd2FudCB0byBwcmV2ZW50IHRoaXMgYmVoYXZpb3VyIHdoZW4geW91IGNsaWNrIG9uIGEgY2hpbGQgYWRkIHRoaXMgY2xhc3MgdG8gaXQuXG4vLyBJdCBpcyB1c2VmdWwgZm9yIGV4YW1wbGUsIHdoZW4geW91IGFkZCB0aGUgY2hpbGQgY29tcG9uZW50IG9uIHRoZSB0b3Agb2YgdHJlZSB3aXRoIGEgUG9ydGFsIGFzIGRyb3Bkb3duLWxpc3QgZG9lcyB3aXRoIGl0ZW0tc2VsZWN0b3Itc3VibWVudVxuZXhwb3J0IGNvbnN0IHByZXZlbnRDbG9zZVNlbGVjdG9yID0gJ3ByZXZlbnRfX2Nsb3NlX19zZWxlY3Rvcic7XG5cbnR5cGUgSXRlbVNlbGVjdG9yUHJvcHMgPSB7XG4gIHNlbGVjdGVkSXRlbXM/OlxuICAgIHwgUmVhZG9ubHlBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0PlxuICAgIHwgc3RyaW5nXG4gICAgfCBudW1iZXJcbiAgICB8IGJvb2xlYW5cbiAgICB8IG9iamVjdFxuICAgIHwgbnVsbDtcbiAgb3B0aW9uczogUmVhZG9ubHlBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0PjtcbiAgb25DaGFuZ2U6IChcbiAgICBpdGVtczpcbiAgICAgIHwgUmVhZG9ubHlBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgb2JqZWN0PlxuICAgICAgfCBzdHJpbmdcbiAgICAgIHwgbnVtYmVyXG4gICAgICB8IGJvb2xlYW5cbiAgICAgIHwgb2JqZWN0XG4gICAgICB8IG51bGxcbiAgKSA9PiB2b2lkO1xuICBmaXhlZE9wdGlvbnM/OiBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBvYmplY3Q+IHwgbnVsbDtcbiAgZXJhc2FibGU/OiBib29sZWFuO1xuICBzaG93QXJyb3c/OiBib29sZWFuO1xuICBzZWFyY2hhYmxlPzogYm9vbGVhbjtcbiAgZGlzcGxheU9wdGlvbj86IHN0cmluZyB8ICgob3B0OiBhbnkpID0+IGFueSk7XG4gIGdldE9wdGlvblZhbHVlPzogc3RyaW5nIHwgKChvcHQ6IGFueSkgPT4gYW55KTtcbiAgZmlsdGVyT3B0aW9uPzogc3RyaW5nIHwgKChvcHQ6IGFueSkgPT4gYW55KTtcbiAgcGxhY2VtZW50Pzogc3RyaW5nO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGlzRXJyb3I/OiBib29sZWFuO1xuICBpc0xvYWRpbmc/OiBib29sZWFuO1xuICBtdWx0aVNlbGVjdD86IGJvb2xlYW47XG4gIGlucHV0VGhlbWU/OiBzdHJpbmc7XG4gIHNpemU/OiBzdHJpbmc7XG4gIG9uQmx1cj86ICgpID0+IHZvaWQ7XG4gIG9uRm9jdXM/OiAoKSA9PiB2b2lkO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgY2xvc2VPblNlbGVjdD86IGJvb2xlYW47XG4gIHR5cGVhaGVhZFBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBEcm9wZG93bkhlYWRlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU8YW55PiB8IG51bGw7XG4gIERyb3BEb3duUmVuZGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTxhbnk+O1xuICBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTxhbnk+O1xuICBDdXN0b21DaGlja2xldENvbXBvbmVudD86IENvbXBvbmVudFR5cGU8YW55PjtcbiAgaW50bDogSW50bFNoYXBlO1xuICB3aXRoU3ViT3B0aW9ucz86IGJvb2xlYW47XG59O1xuXG5jbGFzcyBJdGVtU2VsZWN0b3IgZXh0ZW5kcyBDb21wb25lbnQ8SXRlbVNlbGVjdG9yUHJvcHM+IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBtdWx0aVNlbGVjdDogdHJ1ZSxcbiAgICBwbGFjZWhvbGRlcjogJ3BsYWNlaG9sZGVyLmVudGVyVmFsdWUnLFxuICAgIGNsb3NlT25TZWxlY3Q6IHRydWUsXG4gICAgc2VhcmNoYWJsZTogdHJ1ZSxcbiAgICBEcm9wRG93blJlbmRlckNvbXBvbmVudDogRHJvcGRvd25MaXN0LFxuICAgIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ6IExpc3RJdGVtLFxuICAgIHdpdGhTdWJPcHRpb25zOiBmYWxzZVxuICB9O1xuXG4gIHN0YXRlID0ge1xuICAgIHNob3dUeXBlYWhlYWQ6IGZhbHNlXG4gIH07XG5cbiAgaGFuZGxlQ2xpY2tPdXRzaWRlID0gZSA9PiB7XG4gICAgaWYgKGU/LnRhcmdldD8uY2xhc3NMaXN0Py5jb250YWlucyhwcmV2ZW50Q2xvc2VTZWxlY3RvcikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5faGlkZVR5cGVhaGVhZCgpO1xuICB9O1xuXG4gIF9oaWRlVHlwZWFoZWFkKCkge1xuICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgdGhpcy5fb25CbHVyKCk7XG4gIH1cblxuICBfb25CbHVyID0gKCkgPT4ge1xuICAgIC8vIG5vdGU6IGNoaWNrbGV0ZWQgaW5wdXQgaXMgbm90IGEgcmVhbCBmb3JtIGVsZW1lbnQgc28gd2UgY2FsbCBvbkJsdXIoKVxuICAgIC8vIHdoZW4gd2UgZmVlbCB0aGUgZXZlbnRzIGFyZSBhcHByb3ByaWF0ZVxuICAgIGlmICh0aGlzLnByb3BzLm9uQmx1cikge1xuICAgICAgdGhpcy5wcm9wcy5vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbW92ZUl0ZW0gPSAoaXRlbSwgZSkgPT4ge1xuICAgIC8vIG9ubHkgdXNlZCB3aGVuIG11bHRpU2VsZWN0ID0gdHJ1ZVxuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IG11bHRpU2VsZWN0ZWRJdGVtcyA9IHRvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICBjb25zdCBpbmRleCA9IG11bHRpU2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgodCA9PiB0ID09PSBpdGVtKTtcblxuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpdGVtcyA9IFtcbiAgICAgIC4uLm11bHRpU2VsZWN0ZWRJdGVtcy5zbGljZSgwLCBpbmRleCksXG4gICAgICAuLi5tdWx0aVNlbGVjdGVkSXRlbXMuc2xpY2UoaW5kZXggKyAxLCBtdWx0aVNlbGVjdGVkSXRlbXMubGVuZ3RoKVxuICAgIF07XG5cbiAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGl0ZW1zKTtcblxuICAgIGlmICh0aGlzLnByb3BzLmNsb3NlT25TZWxlY3QpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe3Nob3dUeXBlYWhlYWQ6IGZhbHNlfSk7XG4gICAgICB0aGlzLl9vbkJsdXIoKTtcbiAgICB9XG4gIH07XG5cbiAgX3NlbGVjdEl0ZW0gPSBpdGVtID0+IHtcbiAgICBjb25zdCBnZXRWYWx1ZSA9IEFjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IoXG4gICAgICB0aGlzLnByb3BzLmdldE9wdGlvblZhbHVlIHx8IHRoaXMucHJvcHMuZGlzcGxheU9wdGlvblxuICAgICk7XG5cbiAgICBjb25zdCBwcmV2aW91c1NlbGVjdGVkID0gdG9BcnJheSh0aGlzLnByb3BzLnNlbGVjdGVkSXRlbXMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMubXVsdGlTZWxlY3QpIHtcbiAgICAgIGNvbnN0IGl0ZW1zID0gdW5pcUJ5KHByZXZpb3VzU2VsZWN0ZWQuY29uY2F0KHRvQXJyYXkoaXRlbSkpLCBnZXRWYWx1ZSk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGl0ZW1zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZShnZXRWYWx1ZShpdGVtKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvcHMuY2xvc2VPblNlbGVjdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX29uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfb25FcmFzZTogTW91c2VFdmVudEhhbmRsZXIgPSBlID0+IHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucHJvcHMub25DaGFuZ2UobnVsbCk7XG4gIH07XG5cbiAgX3Nob3dUeXBlYWhlYWQ6IE1vdXNlRXZlbnRIYW5kbGVyID0gZSA9PiB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBpZiAoIXRoaXMucHJvcHMuZGlzYWJsZWQgJiYgIXRoaXMucHJvcHMuaXNMb2FkaW5nKSB7XG4gICAgICBpZiAoIXRoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZCAmJiB0aGlzLnByb3BzLm9uRm9jdXMpIHtcbiAgICAgICAgdGhpcy5wcm9wcy5vbkZvY3VzKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgc2hvd1R5cGVhaGVhZDogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIF9yZW5kZXJEcm9wZG93bihpbnRsOiBJbnRsU2hhcGUpIHtcbiAgICBjb25zdCB7cGxhY2VtZW50ID0gJ2JvdHRvbSd9ID0gdGhpcy5wcm9wcztcbiAgICByZXR1cm4gKFxuICAgICAgPERyb3Bkb3duV3JhcHBlciBwbGFjZW1lbnQ9e3BsYWNlbWVudH0+XG4gICAgICAgIDxUeXBlYWhlYWRcbiAgICAgICAgICBjdXN0b21DbGFzc2VzPXt7XG4gICAgICAgICAgICByZXN1bHRzOiAnbGlzdC1zZWxlY3RvcicsXG4gICAgICAgICAgICBpbnB1dDogJ3R5cGVhaGVhZF9faW5wdXQnLFxuICAgICAgICAgICAgbGlzdEl0ZW06ICdsaXN0X19pdGVtJyxcbiAgICAgICAgICAgIGxpc3RBbmNob3I6ICdsaXN0X19pdGVtX19hbmNob3InXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvcHRpb25zPXt0aGlzLnByb3BzLm9wdGlvbnN9XG4gICAgICAgICAgZmlsdGVyT3B0aW9uPXt0aGlzLnByb3BzLmZpbHRlck9wdGlvbn1cbiAgICAgICAgICBmaXhlZE9wdGlvbnM9e3RoaXMucHJvcHMuZml4ZWRPcHRpb25zfVxuICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgIHRoaXMucHJvcHMudHlwZWFoZWFkUGxhY2Vob2xkZXIgfHwgaW50bFxuICAgICAgICAgICAgICA/IGludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdwbGFjZWhvbGRlci5zZWFyY2gnfSlcbiAgICAgICAgICAgICAgOiAnU2VhcmNoJ1xuICAgICAgICAgIH1cbiAgICAgICAgICBvbk9wdGlvblNlbGVjdGVkPXt0aGlzLl9zZWxlY3RJdGVtfVxuICAgICAgICAgIGN1c3RvbUxpc3RDb21wb25lbnQ9e3RoaXMucHJvcHMuRHJvcERvd25SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgY3VzdG9tTGlzdEhlYWRlckNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wZG93bkhlYWRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SXRlbUNvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGRpc3BsYXlPcHRpb249e0FjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKX1cbiAgICAgICAgICBzZWFyY2hhYmxlPXt0aGlzLnByb3BzLnNlYXJjaGFibGV9XG4gICAgICAgICAgc2hvd09wdGlvbnNXaGVuRW1wdHlcbiAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgbGlnaHQ9e3RoaXMucHJvcHMuaW5wdXRUaGVtZSA9PT0gJ2xpZ2h0J31cbiAgICAgICAgICB3aXRoU3ViT3B0aW9ucz17dGhpcy5wcm9wcy53aXRoU3ViT3B0aW9uc31cbiAgICAgICAgLz5cbiAgICAgIDwvRHJvcGRvd25XcmFwcGVyPlxuICAgICk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgY29uc3QgaGFzVmFsdWUgPSBzZWxlY3RlZC5sZW5ndGg7XG4gICAgY29uc3QgZGlzcGxheU9wdGlvbiA9IEFjY2Vzc29yLmdlbmVyYXRlT3B0aW9uVG9TdHJpbmdGb3IodGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uKTtcbiAgICBjb25zdCB7aW5wdXRUaGVtZSA9ICdwcmltYXJ5JywgRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudCA9IExpc3RJdGVtfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBkcm9wZG93blNlbGVjdFByb3BzID0ge1xuICAgICAgY2xhc3NOYW1lOiBjbGFzc25hbWVzKHtcbiAgICAgICAgYWN0aXZlOiB0aGlzLnN0YXRlLnNob3dUeXBlYWhlYWRcbiAgICAgIH0pLFxuICAgICAgZGlzcGxheU9wdGlvbixcbiAgICAgIGRpc2FibGVkOiB0aGlzLnByb3BzLmRpc2FibGVkLFxuICAgICAgb25DbGljazogdGhpcy5fc2hvd1R5cGVhaGVhZCxcbiAgICAgIGVycm9yOiB0aGlzLnByb3BzLmlzRXJyb3IsXG4gICAgICBpbnB1dFRoZW1lOiBpbnB1dFRoZW1lLFxuICAgICAgc2l6ZTogdGhpcy5wcm9wcy5zaXplXG4gICAgfTtcbiAgICBjb25zdCBpbnRsID0gdGhpcy5wcm9wcy5pbnRsO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3RvclwiPlxuICAgICAgICA8ZGl2IHN0eWxlPXt7cG9zaXRpb246ICdyZWxhdGl2ZSd9fT5cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgbGFiZWwgKi99XG4gICAgICAgICAge3RoaXMucHJvcHMubXVsdGlTZWxlY3QgPyAoXG4gICAgICAgICAgICA8Q2hpY2tsZXRlZElucHV0XG4gICAgICAgICAgICAgIHsuLi5kcm9wZG93blNlbGVjdFByb3BzfVxuICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyl9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXt0aGlzLnByb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICByZW1vdmVJdGVtPXt0aGlzLl9yZW1vdmVJdGVtfVxuICAgICAgICAgICAgICBDdXN0b21DaGlja2xldENvbXBvbmVudD17dGhpcy5wcm9wcy5DdXN0b21DaGlja2xldENvbXBvbmVudH1cbiAgICAgICAgICAgICAgaW5wdXRUaGVtZT17aW5wdXRUaGVtZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgICAgICAgIDxTdHlsZWREcm9wZG93blNlbGVjdCB7Li4uZHJvcGRvd25TZWxlY3RQcm9wc30+XG4gICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdFZhbHVlXG4gICAgICAgICAgICAgICAgaGFzUGxhY2Vob2xkZXI9eyFoYXNWYWx1ZX1cbiAgICAgICAgICAgICAgICBpbnB1dFRoZW1lPXtpbnB1dFRoZW1lfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIml0ZW0tc2VsZWN0b3JfX2Ryb3Bkb3duX192YWx1ZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aGFzVmFsdWUgPyAoXG4gICAgICAgICAgICAgICAgICA8RHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5T3B0aW9uPXtkaXNwbGF5T3B0aW9ufVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZT17c2VsZWN0ZWRbMF19XG4gICAgICAgICAgICAgICAgICAgIGxpZ2h0PXtpbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9e3RoaXMucHJvcHMucGxhY2Vob2xkZXIgfHwgJ3BsYWNlaG9sZGVyLnNlbGVjdFZhbHVlJ30gLz5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0VmFsdWU+XG4gICAgICAgICAgICAgIHt0aGlzLnByb3BzLmVyYXNhYmxlICYmIGhhc1ZhbHVlID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAge3RoaXMucHJvcHMuaXNMb2FkaW5nID8gKFxuICAgICAgICAgICAgICAgICAgICA8TG9hZGluZ1NwaW5uZXIgc2l6ZT17MTh9IHN0cm9rZVdpZHRoPXsyfSBnYXA9ezB9IC8+XG4gICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICA8RGVsZXRlIGhlaWdodD1cIjEycHhcIiBvbkNsaWNrPXt0aGlzLl9vbkVyYXNlfSAvPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiB0aGlzLnByb3BzLnNob3dBcnJvdyA/IChcbiAgICAgICAgICAgICAgICA8RHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgICAgIDxBcnJvd0Rvd24gaGVpZ2h0PVwiMTRweFwiIG9uQ2xpY2s9e3RoaXMuX3Nob3dUeXBlYWhlYWR9IC8+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDwvU3R5bGVkRHJvcGRvd25TZWxlY3Q+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7LyogdGhpcyBwYXJ0IGlzIHVzZWQgdG8gYnVpbHQgdGhlIGxpc3QgKi99XG4gICAgICAgICAge3RoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZCAmJiB0aGlzLl9yZW5kZXJEcm9wZG93bihpbnRsKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBJdGVtU2VsZWN0b3JMaXN0ZW4gPSBsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKTtcbmV4cG9ydCBkZWZhdWx0IGluamVjdEludGwobGlzdGVuc1RvQ2xpY2tPdXRzaWRlKEl0ZW1TZWxlY3RvcikpO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxPQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSxvQkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssaUJBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFNLFNBQUEsR0FBQUosc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFPLGdCQUFBLEdBQUFMLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBUSxVQUFBLEdBQUFOLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBUyxNQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxlQUFBLEdBQUFSLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBVyxhQUFBLEdBQUFaLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBWSxNQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxVQUFBLEdBQUFiLE9BQUE7QUFDQSxJQUFBYyxhQUFBLEdBQUFkLE9BQUE7QUFBOEMsSUFBQWUsZUFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQW5DOUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMs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
|
|
269
|
+
const ItemSelectorListen = exports.ItemSelectorListen = (0, _reactOnclickoutside.default)(ItemSelector);
|
|
270
|
+
var _default = exports.default = (0, _reactIntl.injectIntl)((0, _reactOnclickoutside.default)(ItemSelector));
|
|
271
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdW5pcUJ5IiwiX3JlYWN0T25jbGlja291dHNpZGUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9hY2Nlc3NvciIsIl9jaGlja2xldGVkSW5wdXQiLCJfdHlwZWFoZWFkIiwiX2ljb25zIiwiX2xvYWRpbmdTcGlubmVyIiwiX2Ryb3Bkb3duTGlzdCIsIl91dGlscyIsIl9yZWFjdEludGwiLCJfbG9jYWxpemF0aW9uIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiU3R5bGVkRHJvcGRvd25TZWxlY3QiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2IiwiYXR0cnMiLCJjbGFzc05hbWUiLCJwcm9wcyIsImlucHV0VGhlbWUiLCJ0aGVtZSIsInNlY29uZGFyeUlucHV0IiwiaW5wdXRMVCIsImlucHV0Iiwic2l6ZSIsImlucHV0Qm94SGVpZ2h0U21hbGwiLCJpbnB1dEJveEhlaWdodCIsImRyb3Bkb3duTGlzdEFuY2hvciIsIkRyb3Bkb3duU2VsZWN0VmFsdWUiLCJzcGFuIiwiaGFzUGxhY2Vob2xkZXIiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyTFQiLCJzZWxlY3RDb2xvclBsYWNlSG9sZGVyIiwic2VsZWN0Q29sb3JMVCIsInNlbGVjdENvbG9yIiwiZHJvcGRvd25MaXN0SXRlbUxUIiwiZHJvcGRvd25MaXN0SXRlbSIsImRyb3Bkb3duTGlzdEFuY2hvckxUIiwiRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodCIsInN1YnRleHRDb2xvciIsInRleHRDb2xvciIsIkRyb3Bkb3duV3JhcHBlciIsImRyb3Bkb3duV3JhcHBlcloiLCJwbGFjZW1lbnQiLCJkcm9wZG93bldhcHBlck1hcmdpbiIsInByZXZlbnRDbG9zZVNlbGVjdG9yIiwiSXRlbVNlbGVjdG9yIiwiQ29tcG9uZW50IiwiY29uc3RydWN0b3IiLCJhcmd1bWVudHMiLCJfZGVmaW5lUHJvcGVydHkyIiwic2hvd1R5cGVhaGVhZCIsIl9lJHRhcmdldCIsIl9lJHRhcmdldCRjbGFzc0xpc3QiLCJ0YXJnZXQiLCJjbGFzc0xpc3QiLCJjb250YWlucyIsIl9oaWRlVHlwZWFoZWFkIiwib25CbHVyIiwiaXRlbSIsInByZXZlbnREZWZhdWx0Iiwic3RvcFByb3BhZ2F0aW9uIiwibXVsdGlTZWxlY3RlZEl0ZW1zIiwidG9BcnJheSIsInNlbGVjdGVkSXRlbXMiLCJpbmRleCIsImZpbmRJbmRleCIsIml0ZW1zIiwic2xpY2UiLCJsZW5ndGgiLCJvbkNoYW5nZSIsImNsb3NlT25TZWxlY3QiLCJzZXRTdGF0ZSIsIl9vbkJsdXIiLCJnZXRWYWx1ZSIsIkFjY2Vzc29yIiwiZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvciIsImdldE9wdGlvblZhbHVlIiwiZGlzcGxheU9wdGlvbiIsInByZXZpb3VzU2VsZWN0ZWQiLCJtdWx0aVNlbGVjdCIsInVuaXFCeSIsImNvbmNhdCIsImRpc2FibGVkIiwiaXNMb2FkaW5nIiwic3RhdGUiLCJvbkZvY3VzIiwiX3JlbmRlckRyb3Bkb3duIiwiaW50bCIsImNyZWF0ZUVsZW1lbnQiLCJjdXN0b21DbGFzc2VzIiwicmVzdWx0cyIsImxpc3RJdGVtIiwibGlzdEFuY2hvciIsIm9wdGlvbnMiLCJmaWx0ZXJPcHRpb24iLCJmaXhlZE9wdGlvbnMiLCJwbGFjZWhvbGRlciIsInR5cGVhaGVhZFBsYWNlaG9sZGVyIiwiZm9ybWF0TWVzc2FnZSIsImlkIiwib25PcHRpb25TZWxlY3RlZCIsIl9zZWxlY3RJdGVtIiwiY3VzdG9tTGlzdENvbXBvbmVudCIsIkRyb3BEb3duUmVuZGVyQ29tcG9uZW50IiwiY3VzdG9tTGlzdEhlYWRlckNvbXBvbmVudCIsIkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50IiwiY3VzdG9tTGlzdEl0ZW1Db21wb25lbnQiLCJEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50Iiwic2VhcmNoYWJsZSIsInNob3dPcHRpb25zV2hlbkVtcHR5IiwibGlnaHQiLCJ3aXRoU3ViT3B0aW9ucyIsInJlbmRlciIsInNlbGVjdGVkIiwiaGFzVmFsdWUiLCJMaXN0SXRlbSIsImRyb3Bkb3duU2VsZWN0UHJvcHMiLCJjbGFzc25hbWVzIiwiYWN0aXZlIiwib25DbGljayIsIl9zaG93VHlwZWFoZWFkIiwiZXJyb3IiLCJpc0Vycm9yIiwic3R5bGUiLCJwb3NpdGlvbiIsIl9leHRlbmRzMiIsInJlbW92ZUl0ZW0iLCJfcmVtb3ZlSXRlbSIsIkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50IiwidmFsdWUiLCJGb3JtYXR0ZWRNZXNzYWdlIiwiZXJhc2FibGUiLCJzdHJva2VXaWR0aCIsImdhcCIsIkRlbGV0ZSIsImhlaWdodCIsIl9vbkVyYXNlIiwic2hvd0Fycm93IiwiQXJyb3dEb3duIiwiRHJvcGRvd25MaXN0IiwiSXRlbVNlbGVjdG9yTGlzdGVuIiwibGlzdGVuc1RvQ2xpY2tPdXRzaWRlIiwiX2RlZmF1bHQiLCJpbmplY3RJbnRsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvY29tbW9uL2l0ZW0tc2VsZWN0b3IvaXRlbS1zZWxlY3Rvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50LCBDb21wb25lbnRUeXBlLCBNb3VzZUV2ZW50SGFuZGxlcn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgdW5pcUJ5IGZyb20gJ2xvZGFzaC91bmlxQnknO1xuaW1wb3J0IGxpc3RlbnNUb0NsaWNrT3V0c2lkZSBmcm9tICdyZWFjdC1vbmNsaWNrb3V0c2lkZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IEFjY2Vzc29yIGZyb20gJy4vYWNjZXNzb3InO1xuaW1wb3J0IENoaWNrbGV0ZWRJbnB1dCBmcm9tICcuL2NoaWNrbGV0ZWQtaW5wdXQnO1xuaW1wb3J0IFR5cGVhaGVhZCBmcm9tICcuL3R5cGVhaGVhZCc7XG5pbXBvcnQge0RlbGV0ZSwgQXJyb3dEb3dufSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgTG9hZGluZ1NwaW5uZXIgZnJvbSAnY29tcG9uZW50cy9jb21tb24vbG9hZGluZy1zcGlubmVyJztcbmltcG9ydCBEcm9wZG93bkxpc3QsIHtMaXN0SXRlbX0gZnJvbSAnLi9kcm9wZG93bi1saXN0JztcblxuaW1wb3J0IHt0b0FycmF5fSBmcm9tICd1dGlscy91dGlscyc7XG5pbXBvcnQge2luamVjdEludGwsIEludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ2xvY2FsaXphdGlvbic7XG5cbmludGVyZmFjZSBTdHlsZWREcm9wZG93blNlbGVjdCB7XG4gIGlucHV0VGhlbWU/OiBzdHJpbmc7XG4gIHNpemU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBTdHlsZWREcm9wZG93blNlbGVjdCA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdpdGVtLXNlbGVjdG9yX19kcm9wZG93bidcbn0pPFN0eWxlZERyb3Bkb3duU2VsZWN0PmBcbiAgJHtwcm9wcyA9PlxuICAgIHByb3BzLmlucHV0VGhlbWUgPT09ICdzZWNvbmRhcnknXG4gICAgICA/IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0XG4gICAgICA6IHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRMVFxuICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dH07XG5cbiAgaGVpZ2h0OiAke3Byb3BzID0+XG4gICAgcHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJyA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0U21hbGwgOiBwcm9wcy50aGVtZS5pbnB1dEJveEhlaWdodH07XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5gO1xuXG5pbnRlcmZhY2UgRHJvcGRvd25TZWxlY3RWYWx1ZVByb3BzIHtcbiAgaGFzUGxhY2Vob2xkZXI/OiBib29sZWFuO1xuICBpbnB1dFRoZW1lPzogc3RyaW5nO1xufVxuXG5jb25zdCBEcm9wZG93blNlbGVjdFZhbHVlID0gc3R5bGVkLnNwYW48RHJvcGRvd25TZWxlY3RWYWx1ZVByb3BzPmBcbiAgY29sb3I6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5oYXNQbGFjZWhvbGRlciAmJiBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICA/IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVFxuICAgICAgOiBwcm9wcy5oYXNQbGFjZWhvbGRlclxuICAgICAgPyBwcm9wcy50aGVtZS5zZWxlY3RDb2xvclBsYWNlSG9sZGVyXG4gICAgICA6IHByb3BzLmlucHV0VGhlbWUgPT09ICdsaWdodCdcbiAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVFxuICAgICAgOiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvcn07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC5saXN0X19pdGVtIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbUxUIDogcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SXRlbX07XG4gIH1cblxuICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnXG4gICAgICAgID8gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yTFRcbiAgICAgICAgOiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3J9O1xuICB9XG5gO1xuXG5jb25zdCBEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0ID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvcn07XG5cbiAgOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICB9XG5gO1xuXG5pbnRlcmZhY2UgRHJvcGRvd25XcmFwcGVyUHJvcHMge1xuICBwbGFjZW1lbnQ/OiBzdHJpbmc7XG59XG5cbmNvbnN0IERyb3Bkb3duV3JhcHBlciA9IHN0eWxlZC5kaXY8RHJvcGRvd25XcmFwcGVyUHJvcHM+YFxuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duV3JhcHBlclp9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJHtwcm9wcyA9PiAocHJvcHMucGxhY2VtZW50ID09PSAndG9wJyA/IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0IDogJ2F1dG8nKX07XG4gIG1hcmdpbi10b3A6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5wbGFjZW1lbnQgPT09ICdib3R0b20nID8gYCR7cHJvcHMudGhlbWUuZHJvcGRvd25XYXBwZXJNYXJnaW59cHhgIDogJ2F1dG8nfTtcbiAgbWFyZ2luLWJvdHRvbTogJHtwcm9wcyA9PlxuICAgIHByb3BzLnBsYWNlbWVudCA9PT0gJ3RvcCcgPyBgJHtwcm9wcy50aGVtZS5kcm9wZG93bldhcHBlck1hcmdpbn1weGAgOiAnYXV0byd9O1xuYDtcblxuLy8gVGhlIGl0ZW0tc2VsZWN0b3IgY29tcG9uZW50IGRpc21vdW50IGFsbCBpdHMgY2hpbGRyZW4gaWYgeW91IGNsaWNrIG91dHNpZGUgb2YgdGhlIGNvbXBvbmVudCBiZWNhdXNlIG9mIGxpc3RlbnNUb0NsaWNrT3V0c2lkZSBmdW5jdGlvbi5cbi8vIElmIHlvdSB3YW50IHRvIHByZXZlbnQgdGhpcyBiZWhhdmlvdXIgd2hlbiB5b3UgY2xpY2sgb24gYSBjaGlsZCBhZGQgdGhpcyBjbGFzcyB0byBpdC5cbi8vIEl0IGlzIHVzZWZ1bCBmb3IgZXhhbXBsZSwgd2hlbiB5b3UgYWRkIHRoZSBjaGlsZCBjb21wb25lbnQgb24gdGhlIHRvcCBvZiB0cmVlIHdpdGggYSBQb3J0YWwgYXMgZHJvcGRvd24tbGlzdCBkb2VzIHdpdGggaXRlbS1zZWxlY3Rvci1zdWJtZW51XG5leHBvcnQgY29uc3QgcHJldmVudENsb3NlU2VsZWN0b3IgPSAncHJldmVudF9fY2xvc2VfX3NlbGVjdG9yJztcblxudHlwZSBJdGVtU2VsZWN0b3JQcm9wcyA9IHtcbiAgc2VsZWN0ZWRJdGVtcz86XG4gICAgfCBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBvYmplY3Q+XG4gICAgfCBzdHJpbmdcbiAgICB8IG51bWJlclxuICAgIHwgYm9vbGVhblxuICAgIHwgb2JqZWN0XG4gICAgfCBudWxsO1xuICBvcHRpb25zOiBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBvYmplY3Q+O1xuICBvbkNoYW5nZTogKFxuICAgIGl0ZW1zOlxuICAgICAgfCBSZWFkb25seUFycmF5PHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBvYmplY3Q+XG4gICAgICB8IHN0cmluZ1xuICAgICAgfCBudW1iZXJcbiAgICAgIHwgYm9vbGVhblxuICAgICAgfCBvYmplY3RcbiAgICAgIHwgbnVsbFxuICApID0+IHZvaWQ7XG4gIGZpeGVkT3B0aW9ucz86IFJlYWRvbmx5QXJyYXk8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IG9iamVjdD4gfCBudWxsO1xuICBlcmFzYWJsZT86IGJvb2xlYW47XG4gIHNob3dBcnJvdz86IGJvb2xlYW47XG4gIHNlYXJjaGFibGU/OiBib29sZWFuO1xuICBkaXNwbGF5T3B0aW9uPzogc3RyaW5nIHwgKChvcHQ6IGFueSkgPT4gYW55KTtcbiAgZ2V0T3B0aW9uVmFsdWU/OiBzdHJpbmcgfCAoKG9wdDogYW55KSA9PiBhbnkpO1xuICBmaWx0ZXJPcHRpb24/OiBzdHJpbmcgfCAoKG9wdDogYW55KSA9PiBhbnkpO1xuICBwbGFjZW1lbnQ/OiBzdHJpbmc7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgaXNFcnJvcj86IGJvb2xlYW47XG4gIGlzTG9hZGluZz86IGJvb2xlYW47XG4gIG11bHRpU2VsZWN0PzogYm9vbGVhbjtcbiAgaW5wdXRUaGVtZT86IHN0cmluZztcbiAgc2l6ZT86IHN0cmluZztcbiAgb25CbHVyPzogKCkgPT4gdm9pZDtcbiAgb25Gb2N1cz86ICgpID0+IHZvaWQ7XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBjbG9zZU9uU2VsZWN0PzogYm9vbGVhbjtcbiAgdHlwZWFoZWFkUGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIERyb3Bkb3duSGVhZGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTxhbnk+IHwgbnVsbDtcbiAgRHJvcERvd25SZW5kZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlPGFueT47XG4gIERyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlPGFueT47XG4gIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50PzogQ29tcG9uZW50VHlwZTxhbnk+O1xuICBpbnRsOiBJbnRsU2hhcGU7XG4gIHdpdGhTdWJPcHRpb25zPzogYm9vbGVhbjtcbn07XG5cbmNsYXNzIEl0ZW1TZWxlY3RvciBleHRlbmRzIENvbXBvbmVudDxJdGVtU2VsZWN0b3JQcm9wcz4ge1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIG11bHRpU2VsZWN0OiB0cnVlLFxuICAgIHBsYWNlaG9sZGVyOiAncGxhY2Vob2xkZXIuZW50ZXJWYWx1ZScsXG4gICAgY2xvc2VPblNlbGVjdDogdHJ1ZSxcbiAgICBzZWFyY2hhYmxlOiB0cnVlLFxuICAgIERyb3BEb3duUmVuZGVyQ29tcG9uZW50OiBEcm9wZG93bkxpc3QsXG4gICAgRHJvcERvd25MaW5lSXRlbVJlbmRlckNvbXBvbmVudDogTGlzdEl0ZW0sXG4gICAgd2l0aFN1Yk9wdGlvbnM6IGZhbHNlXG4gIH07XG5cbiAgc3RhdGUgPSB7XG4gICAgc2hvd1R5cGVhaGVhZDogZmFsc2VcbiAgfTtcblxuICBoYW5kbGVDbGlja091dHNpZGUgPSBlID0+IHtcbiAgICBpZiAoZT8udGFyZ2V0Py5jbGFzc0xpc3Q/LmNvbnRhaW5zKHByZXZlbnRDbG9zZVNlbGVjdG9yKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9oaWRlVHlwZWFoZWFkKCk7XG4gIH07XG5cbiAgX2hpZGVUeXBlYWhlYWQoKSB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICB0aGlzLl9vbkJsdXIoKTtcbiAgfVxuXG4gIF9vbkJsdXIgPSAoKSA9PiB7XG4gICAgLy8gbm90ZTogY2hpY2tsZXRlZCBpbnB1dCBpcyBub3QgYSByZWFsIGZvcm0gZWxlbWVudCBzbyB3ZSBjYWxsIG9uQmx1cigpXG4gICAgLy8gd2hlbiB3ZSBmZWVsIHRoZSBldmVudHMgYXJlIGFwcHJvcHJpYXRlXG4gICAgaWYgKHRoaXMucHJvcHMub25CbHVyKSB7XG4gICAgICB0aGlzLnByb3BzLm9uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfcmVtb3ZlSXRlbSA9IChpdGVtLCBlKSA9PiB7XG4gICAgLy8gb25seSB1c2VkIHdoZW4gbXVsdGlTZWxlY3QgPSB0cnVlXG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgY29uc3QgbXVsdGlTZWxlY3RlZEl0ZW1zID0gdG9BcnJheSh0aGlzLnByb3BzLnNlbGVjdGVkSXRlbXMpO1xuICAgIGNvbnN0IGluZGV4ID0gbXVsdGlTZWxlY3RlZEl0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IGl0ZW0pO1xuXG4gICAgaWYgKGluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGl0ZW1zID0gW1xuICAgICAgLi4ubXVsdGlTZWxlY3RlZEl0ZW1zLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgIC4uLm11bHRpU2VsZWN0ZWRJdGVtcy5zbGljZShpbmRleCArIDEsIG11bHRpU2VsZWN0ZWRJdGVtcy5sZW5ndGgpXG4gICAgXTtcblxuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMuY2xvc2VPblNlbGVjdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7c2hvd1R5cGVhaGVhZDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX29uQmx1cigpO1xuICAgIH1cbiAgfTtcblxuICBfc2VsZWN0SXRlbSA9IGl0ZW0gPT4ge1xuICAgIGNvbnN0IGdldFZhbHVlID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0ZvcihcbiAgICAgIHRoaXMucHJvcHMuZ2V0T3B0aW9uVmFsdWUgfHwgdGhpcy5wcm9wcy5kaXNwbGF5T3B0aW9uXG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpb3VzU2VsZWN0ZWQgPSB0b0FycmF5KHRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5tdWx0aVNlbGVjdCkge1xuICAgICAgY29uc3QgaXRlbXMgPSB1bmlxQnkocHJldmlvdXNTZWxlY3RlZC5jb25jYXQodG9BcnJheShpdGVtKSksIGdldFZhbHVlKTtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoaXRlbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGdldFZhbHVlKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5jbG9zZU9uU2VsZWN0KSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtzaG93VHlwZWFoZWFkOiBmYWxzZX0pO1xuICAgICAgdGhpcy5fb25CbHVyKCk7XG4gICAgfVxuICB9O1xuXG4gIF9vbkVyYXNlOiBNb3VzZUV2ZW50SGFuZGxlciA9IGUgPT4ge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5wcm9wcy5vbkNoYW5nZShudWxsKTtcbiAgfTtcblxuICBfc2hvd1R5cGVhaGVhZDogTW91c2VFdmVudEhhbmRsZXIgPSBlID0+IHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGlmICghdGhpcy5wcm9wcy5kaXNhYmxlZCAmJiAhdGhpcy5wcm9wcy5pc0xvYWRpbmcpIHtcbiAgICAgIGlmICghdGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkICYmIHRoaXMucHJvcHMub25Gb2N1cykge1xuICAgICAgICB0aGlzLnByb3BzLm9uRm9jdXMoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBzaG93VHlwZWFoZWFkOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgX3JlbmRlckRyb3Bkb3duKGludGw6IEludGxTaGFwZSkge1xuICAgIGNvbnN0IHtwbGFjZW1lbnQgPSAnYm90dG9tJ30gPSB0aGlzLnByb3BzO1xuICAgIHJldHVybiAoXG4gICAgICA8RHJvcGRvd25XcmFwcGVyIHBsYWNlbWVudD17cGxhY2VtZW50fT5cbiAgICAgICAgPFR5cGVhaGVhZFxuICAgICAgICAgIGN1c3RvbUNsYXNzZXM9e3tcbiAgICAgICAgICAgIHJlc3VsdHM6ICdsaXN0LXNlbGVjdG9yJyxcbiAgICAgICAgICAgIGlucHV0OiAndHlwZWFoZWFkX19pbnB1dCcsXG4gICAgICAgICAgICBsaXN0SXRlbTogJ2xpc3RfX2l0ZW0nLFxuICAgICAgICAgICAgbGlzdEFuY2hvcjogJ2xpc3RfX2l0ZW1fX2FuY2hvcidcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9wdGlvbnM9e3RoaXMucHJvcHMub3B0aW9uc31cbiAgICAgICAgICBmaWx0ZXJPcHRpb249e3RoaXMucHJvcHMuZmlsdGVyT3B0aW9ufVxuICAgICAgICAgIGZpeGVkT3B0aW9ucz17dGhpcy5wcm9wcy5maXhlZE9wdGlvbnN9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9e1xuICAgICAgICAgICAgdGhpcy5wcm9wcy50eXBlYWhlYWRQbGFjZWhvbGRlciB8fCBpbnRsXG4gICAgICAgICAgICAgID8gaW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ3BsYWNlaG9sZGVyLnNlYXJjaCd9KVxuICAgICAgICAgICAgICA6ICdTZWFyY2gnXG4gICAgICAgICAgfVxuICAgICAgICAgIG9uT3B0aW9uU2VsZWN0ZWQ9e3RoaXMuX3NlbGVjdEl0ZW19XG4gICAgICAgICAgY3VzdG9tTGlzdENvbXBvbmVudD17dGhpcy5wcm9wcy5Ecm9wRG93blJlbmRlckNvbXBvbmVudH1cbiAgICAgICAgICBjdXN0b21MaXN0SGVhZGVyQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3Bkb3duSGVhZGVyQ29tcG9uZW50fVxuICAgICAgICAgIGN1c3RvbUxpc3RJdGVtQ29tcG9uZW50PXt0aGlzLnByb3BzLkRyb3BEb3duTGluZUl0ZW1SZW5kZXJDb21wb25lbnR9XG4gICAgICAgICAgZGlzcGxheU9wdGlvbj17QWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pfVxuICAgICAgICAgIHNlYXJjaGFibGU9e3RoaXMucHJvcHMuc2VhcmNoYWJsZX1cbiAgICAgICAgICBzaG93T3B0aW9uc1doZW5FbXB0eVxuICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3RvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKX1cbiAgICAgICAgICBsaWdodD17dGhpcy5wcm9wcy5pbnB1dFRoZW1lID09PSAnbGlnaHQnfVxuICAgICAgICAgIHdpdGhTdWJPcHRpb25zPXt0aGlzLnByb3BzLndpdGhTdWJPcHRpb25zfVxuICAgICAgICAvPlxuICAgICAgPC9Ecm9wZG93bldyYXBwZXI+XG4gICAgKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICBjb25zdCBoYXNWYWx1ZSA9IHNlbGVjdGVkLmxlbmd0aDtcbiAgICBjb25zdCBkaXNwbGF5T3B0aW9uID0gQWNjZXNzb3IuZ2VuZXJhdGVPcHRpb25Ub1N0cmluZ0Zvcih0aGlzLnByb3BzLmRpc3BsYXlPcHRpb24pO1xuICAgIGNvbnN0IHtpbnB1dFRoZW1lID0gJ3ByaW1hcnknLCBEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50ID0gTGlzdEl0ZW19ID0gdGhpcy5wcm9wcztcblxuICAgIGNvbnN0IGRyb3Bkb3duU2VsZWN0UHJvcHMgPSB7XG4gICAgICBjbGFzc05hbWU6IGNsYXNzbmFtZXMoe1xuICAgICAgICBhY3RpdmU6IHRoaXMuc3RhdGUuc2hvd1R5cGVhaGVhZFxuICAgICAgfSksXG4gICAgICBkaXNwbGF5T3B0aW9uLFxuICAgICAgZGlzYWJsZWQ6IHRoaXMucHJvcHMuZGlzYWJsZWQsXG4gICAgICBvbkNsaWNrOiB0aGlzLl9zaG93VHlwZWFoZWFkLFxuICAgICAgZXJyb3I6IHRoaXMucHJvcHMuaXNFcnJvcixcbiAgICAgIGlucHV0VGhlbWU6IGlucHV0VGhlbWUsXG4gICAgICBzaXplOiB0aGlzLnByb3BzLnNpemVcbiAgICB9O1xuICAgIGNvbnN0IGludGwgPSB0aGlzLnByb3BzLmludGw7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJpdGVtLXNlbGVjdG9yXCI+XG4gICAgICAgIDxkaXYgc3R5bGU9e3twb3NpdGlvbjogJ3JlbGF0aXZlJ319PlxuICAgICAgICAgIHsvKiB0aGlzIHBhcnQgaXMgdXNlZCB0byBkaXNwbGF5IHRoZSBsYWJlbCAqL31cbiAgICAgICAgICB7dGhpcy5wcm9wcy5tdWx0aVNlbGVjdCA/IChcbiAgICAgICAgICAgIDxDaGlja2xldGVkSW5wdXRcbiAgICAgICAgICAgICAgey4uLmRyb3Bkb3duU2VsZWN0UHJvcHN9XG4gICAgICAgICAgICAgIHNlbGVjdGVkSXRlbXM9e3RvQXJyYXkodGhpcy5wcm9wcy5zZWxlY3RlZEl0ZW1zKX1cbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3RoaXMucHJvcHMucGxhY2Vob2xkZXJ9XG4gICAgICAgICAgICAgIHJlbW92ZUl0ZW09e3RoaXMuX3JlbW92ZUl0ZW19XG4gICAgICAgICAgICAgIEN1c3RvbUNoaWNrbGV0Q29tcG9uZW50PXt0aGlzLnByb3BzLkN1c3RvbUNoaWNrbGV0Q29tcG9uZW50fVxuICAgICAgICAgICAgICBpbnB1dFRoZW1lPXtpbnB1dFRoZW1lfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgICAgICAgICAgPFN0eWxlZERyb3Bkb3duU2VsZWN0IHsuLi5kcm9wZG93blNlbGVjdFByb3BzfT5cbiAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0VmFsdWVcbiAgICAgICAgICAgICAgICBoYXNQbGFjZWhvbGRlcj17IWhhc1ZhbHVlfVxuICAgICAgICAgICAgICAgIGlucHV0VGhlbWU9e2lucHV0VGhlbWV9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd25fX3ZhbHVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtoYXNWYWx1ZSA/IChcbiAgICAgICAgICAgICAgICAgIDxEcm9wRG93bkxpbmVJdGVtUmVuZGVyQ29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXlPcHRpb249e2Rpc3BsYXlPcHRpb259XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlPXtzZWxlY3RlZFswXX1cbiAgICAgICAgICAgICAgICAgICAgbGlnaHQ9e2lucHV0VGhlbWUgPT09ICdsaWdodCd9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17dGhpcy5wcm9wcy5wbGFjZWhvbGRlciB8fCAncGxhY2Vob2xkZXIuc2VsZWN0VmFsdWUnfSAvPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RWYWx1ZT5cbiAgICAgICAgICAgICAge3RoaXMucHJvcHMuZXJhc2FibGUgJiYgaGFzVmFsdWUgPyAoXG4gICAgICAgICAgICAgICAgPERyb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICAgICB7dGhpcy5wcm9wcy5pc0xvYWRpbmcgPyAoXG4gICAgICAgICAgICAgICAgICAgIDxMb2FkaW5nU3Bpbm5lciBzaXplPXsxOH0gc3Ryb2tlV2lkdGg9ezJ9IGdhcD17MH0gLz5cbiAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIDxEZWxldGUgaGVpZ2h0PVwiMTJweFwiIG9uQ2xpY2s9e3RoaXMuX29uRXJhc2V9IC8+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd25TZWxlY3RBY3Rpb25SaWdodD5cbiAgICAgICAgICAgICAgKSA6IHRoaXMucHJvcHMuc2hvd0Fycm93ID8gKFxuICAgICAgICAgICAgICAgIDxEcm9wZG93blNlbGVjdEFjdGlvblJpZ2h0PlxuICAgICAgICAgICAgICAgICAgPEFycm93RG93biBoZWlnaHQ9XCIxNHB4XCIgb25DbGljaz17dGhpcy5fc2hvd1R5cGVhaGVhZH0gLz5cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duU2VsZWN0QWN0aW9uUmlnaHQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPC9TdHlsZWREcm9wZG93blNlbGVjdD5cbiAgICAgICAgICApfVxuICAgICAgICAgIHsvKiB0aGlzIHBhcnQgaXMgdXNlZCB0byBidWlsdCB0aGUgbGlzdCAqL31cbiAgICAgICAgICB7dGhpcy5zdGF0ZS5zaG93VHlwZWFoZWFkICYmIHRoaXMuX3JlbmRlckRyb3Bkb3duKGludGwpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEl0ZW1TZWxlY3Rvckxpc3RlbiA9IGxpc3RlbnNUb0NsaWNrT3V0c2lkZShJdGVtU2VsZWN0b3IpO1xuZXhwb3J0IGRlZmF1bHQgaW5qZWN0SW50bChsaXN0ZW5zVG9DbGlja091dHNpZGUoSXRlbVNlbGVjdG9yKSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQW9CQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxPQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSxvQkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssaUJBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFNLFNBQUEsR0FBQUosc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFPLGdCQUFBLEdBQUFMLHNCQUFBLENBQUFG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
|