@carto/kepler.gl 0.0.73 → 0.0.75-alpha.deckv9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/action-wrapper.js +20 -48
- package/dist/actions/actions.js +10 -19
- package/dist/actions/identity-actions.js +8 -17
- package/dist/actions/index.js +7 -24
- package/dist/actions/map-state-actions.js +10 -19
- package/dist/actions/map-style-actions.js +20 -35
- package/dist/actions/provider-actions.js +26 -42
- package/dist/actions/ui-state-actions.js +42 -70
- package/dist/actions/vis-state-actions.js +102 -162
- package/dist/cloud-providers/index.js +8 -8
- package/dist/cloud-providers/provider.js +55 -94
- package/dist/components/bottom-widget.js +47 -48
- package/dist/components/common/action-panel.js +39 -38
- package/dist/components/common/animation-control/animation-control.js +40 -38
- package/dist/components/common/animation-control/animation-controller.js +47 -70
- package/dist/components/common/animation-control/animation-speed-slider.js +28 -38
- package/dist/components/common/animation-control/floating-time-display.js +56 -67
- package/dist/components/common/animation-control/playback-controls.js +64 -80
- package/dist/components/common/animation-control/speed-control.js +26 -24
- package/dist/components/common/checkbox.js +31 -52
- package/dist/components/common/color-legend.js +40 -72
- package/dist/components/common/data-table/button.js +29 -22
- package/dist/components/common/data-table/canvas.js +21 -10
- package/dist/components/common/data-table/cell-size.js +54 -58
- package/dist/components/common/data-table/grid.js +30 -31
- package/dist/components/common/data-table/index.js +91 -133
- package/dist/components/common/data-table/option-dropdown.js +29 -33
- package/dist/components/common/dataset-label.js +21 -13
- package/dist/components/common/error-boundary.js +25 -30
- package/dist/components/common/field-selector.js +35 -69
- package/dist/components/common/field-token.js +21 -16
- package/dist/components/common/file-uploader/file-drop.js +40 -55
- package/dist/components/common/file-uploader/file-upload-progress.js +32 -30
- package/dist/components/common/file-uploader/file-upload.js +52 -91
- package/dist/components/common/file-uploader/upload-button.js +31 -42
- package/dist/components/common/histogram-plot.js +32 -27
- package/dist/components/common/icons/add.js +27 -27
- package/dist/components/common/icons/anchor_window.js +3 -9
- package/dist/components/common/icons/arrow-down-alt.js +27 -27
- package/dist/components/common/icons/arrow-down-solid .js +27 -27
- package/dist/components/common/icons/arrow-down.js +27 -27
- package/dist/components/common/icons/arrow-left.js +27 -27
- package/dist/components/common/icons/arrow-right.js +27 -27
- package/dist/components/common/icons/arrow-up-alt.js +27 -27
- package/dist/components/common/icons/arrow-up-solid.js +27 -27
- package/dist/components/common/icons/arrow-up.js +27 -27
- package/dist/components/common/icons/base.js +38 -42
- package/dist/components/common/icons/bug.js +27 -27
- package/dist/components/common/icons/cancel.js +27 -27
- package/dist/components/common/icons/checkmark.js +27 -28
- package/dist/components/common/icons/chevron-right.js +27 -27
- package/dist/components/common/icons/clipboard.js +27 -27
- package/dist/components/common/icons/clock.js +27 -27
- package/dist/components/common/icons/close.js +27 -27
- package/dist/components/common/icons/code-alt.js +27 -28
- package/dist/components/common/icons/copy.js +27 -28
- package/dist/components/common/icons/crosshairs.js +27 -28
- package/dist/components/common/icons/cube-3d.js +27 -27
- package/dist/components/common/icons/cursor-click.js +27 -27
- package/dist/components/common/icons/data-table.js +27 -27
- package/dist/components/common/icons/db.js +27 -27
- package/dist/components/common/icons/delete.js +27 -27
- package/dist/components/common/icons/docs.js +27 -27
- package/dist/components/common/icons/drag-n-drop.js +27 -27
- package/dist/components/common/icons/draw-polygon.js +27 -27
- package/dist/components/common/icons/email.js +27 -27
- package/dist/components/common/icons/expand.js +27 -27
- package/dist/components/common/icons/eye-seen.js +27 -27
- package/dist/components/common/icons/eye-unseen.js +27 -27
- package/dist/components/common/icons/file-type.js +23 -16
- package/dist/components/common/icons/file.js +27 -27
- package/dist/components/common/icons/files.js +24 -26
- package/dist/components/common/icons/filter-funnel.js +27 -27
- package/dist/components/common/icons/free-window.js +3 -9
- package/dist/components/common/icons/gear.js +27 -27
- package/dist/components/common/icons/hash.js +27 -27
- package/dist/components/common/icons/histogram.js +24 -25
- package/dist/components/common/icons/index.js +63 -138
- package/dist/components/common/icons/info.js +27 -28
- package/dist/components/common/icons/layers.js +27 -27
- package/dist/components/common/icons/left-arrow.js +27 -28
- package/dist/components/common/icons/legend.js +27 -27
- package/dist/components/common/icons/line-chart.js +27 -27
- package/dist/components/common/icons/login.js +27 -27
- package/dist/components/common/icons/logout.js +27 -27
- package/dist/components/common/icons/map-icon.js +27 -28
- package/dist/components/common/icons/map.js +27 -28
- package/dist/components/common/icons/messages.js +27 -27
- package/dist/components/common/icons/minus.js +27 -27
- package/dist/components/common/icons/pause.js +27 -27
- package/dist/components/common/icons/picture.js +24 -26
- package/dist/components/common/icons/pin.js +27 -27
- package/dist/components/common/icons/play.js +27 -27
- package/dist/components/common/icons/polygon.js +27 -27
- package/dist/components/common/icons/rectangle.js +27 -27
- package/dist/components/common/icons/reduce.js +27 -27
- package/dist/components/common/icons/reset.js +27 -27
- package/dist/components/common/icons/rocket.js +27 -27
- package/dist/components/common/icons/save.js +27 -27
- package/dist/components/common/icons/save2.js +27 -27
- package/dist/components/common/icons/search.js +27 -27
- package/dist/components/common/icons/settings.js +27 -27
- package/dist/components/common/icons/share.js +27 -27
- package/dist/components/common/icons/split.js +27 -27
- package/dist/components/common/icons/square-select.js +27 -27
- package/dist/components/common/icons/swap-horizontal.js +27 -28
- package/dist/components/common/icons/table.js +27 -27
- package/dist/components/common/icons/trash.js +27 -27
- package/dist/components/common/icons/upload.js +27 -27
- package/dist/components/common/icons/vert-dots.js +27 -27
- package/dist/components/common/icons/vert-three-dots.js +27 -27
- package/dist/components/common/icons/warning.js +27 -28
- package/dist/components/common/image-preview.js +36 -29
- package/dist/components/common/info-helper.js +26 -25
- package/dist/components/common/item-selector/accessor.js +3 -5
- package/dist/components/common/item-selector/chickleted-input.js +41 -43
- package/dist/components/common/item-selector/dropdown-list.js +44 -74
- package/dist/components/common/item-selector/item-selector-submenu.js +29 -38
- package/dist/components/common/item-selector/item-selector.js +36 -84
- package/dist/components/common/item-selector/typeahead.js +37 -83
- package/dist/components/common/line-chart.js +39 -36
- package/dist/components/common/loading-spinner.js +33 -25
- package/dist/components/common/logo.js +24 -22
- package/dist/components/common/map-layer-selector.js +23 -16
- package/dist/components/common/modal.js +36 -61
- package/dist/components/common/portaled.js +56 -97
- package/dist/components/common/progress-bar.js +29 -20
- package/dist/components/common/range-brush.js +63 -104
- package/dist/components/common/range-plot.js +47 -52
- package/dist/components/common/range-slider.js +52 -78
- package/dist/components/common/slider/mouse-event.js +11 -37
- package/dist/components/common/slider/slider-bar-handle.js +31 -39
- package/dist/components/common/slider/slider-handle.js +35 -44
- package/dist/components/common/slider/slider.js +55 -82
- package/dist/components/common/styled-components.js +64 -169
- package/dist/components/common/switch.js +22 -16
- package/dist/components/common/time-range-slider-time-title.js +24 -19
- package/dist/components/common/time-range-slider.js +41 -38
- package/dist/components/common/time-slider-marker.js +36 -41
- package/dist/components/common/toolbar-item.js +22 -16
- package/dist/components/common/toolbar.js +21 -10
- package/dist/components/common/vertical-toolbar.js +21 -10
- package/dist/components/container.js +49 -70
- package/dist/components/context.js +6 -10
- package/dist/components/editor/constants.js +6 -8
- package/dist/components/editor/editor.js +40 -72
- package/dist/components/editor/feature-action-panel.js +35 -43
- package/dist/components/editor/feature-styles.js +35 -40
- package/dist/components/editor/handle-style.js +35 -37
- package/dist/components/filters/components.js +21 -10
- package/dist/components/filters/filter-panels/filter-panel-with-field-select.js +14 -25
- package/dist/components/filters/filter-panels/multi-select-filter-panel.js +14 -21
- package/dist/components/filters/filter-panels/new-filter-panel.js +13 -23
- package/dist/components/filters/filter-panels/polygon-filter-panel.js +13 -25
- package/dist/components/filters/filter-panels/range-filter-panel.js +14 -21
- package/dist/components/filters/filter-panels/single-select-filter-panel.js +14 -21
- package/dist/components/filters/filter-panels/time-range-filter-panel.js +14 -23
- package/dist/components/filters/index.js +11 -17
- package/dist/components/filters/multi-select-filter.js +3 -9
- package/dist/components/filters/polygon-filter.js +8 -18
- package/dist/components/filters/range-filter.js +3 -8
- package/dist/components/filters/single-select-filter.js +3 -9
- package/dist/components/filters/time-range-filter.js +7 -18
- package/dist/components/filters/time-widget.js +41 -51
- package/dist/components/geocoder/geocoder.js +95 -128
- package/dist/components/geocoder-panel.js +37 -62
- package/dist/components/index.js +356 -498
- package/dist/components/injector.js +42 -58
- package/dist/components/kepler-gl.js +65 -158
- package/dist/components/map/coordinate-info.js +4 -13
- package/dist/components/map/layer-hover-info.js +40 -48
- package/dist/components/map/layer-selector-panel.js +17 -30
- package/dist/components/map/locale-panel.js +13 -27
- package/dist/components/map/map-control-panel.js +27 -24
- package/dist/components/map/map-control-toolbar.js +21 -11
- package/dist/components/map/map-control-tooltip.js +4 -11
- package/dist/components/map/map-control.js +26 -27
- package/dist/components/map/map-draw-panel.js +12 -29
- package/dist/components/map/map-legend-panel.js +17 -34
- package/dist/components/map/map-legend.js +52 -70
- package/dist/components/map/map-popover.js +41 -57
- package/dist/components/map/split-map-button.js +13 -25
- package/dist/components/map/toggle-3d-button.js +10 -21
- package/dist/components/map-container.js +98 -145
- package/dist/components/maps-layout.js +24 -26
- package/dist/components/modal-container.js +60 -112
- package/dist/components/modals/add-map-style-modal.js +37 -67
- package/dist/components/modals/cloud-tile.js +36 -36
- package/dist/components/modals/data-table-modal.js +51 -81
- package/dist/components/modals/delete-data-modal.js +24 -20
- package/dist/components/modals/error-display.js +3 -10
- package/dist/components/modals/export-data-modal.js +37 -54
- package/dist/components/modals/export-image-modal.js +31 -28
- package/dist/components/modals/export-map-modal/components.js +27 -27
- package/dist/components/modals/export-map-modal/export-html-map.js +27 -27
- package/dist/components/modals/export-map-modal/export-json-map.js +22 -22
- package/dist/components/modals/export-map-modal/export-map-modal.js +20 -40
- package/dist/components/modals/image-modal-container.js +9 -16
- package/dist/components/modals/load-data-modal.js +29 -33
- package/dist/components/modals/load-storage-map.js +42 -77
- package/dist/components/modals/loading-dialog.js +24 -18
- package/dist/components/modals/modal-dialog.js +3 -7
- package/dist/components/modals/modal-tabs.js +29 -29
- package/dist/components/modals/overwrite-map-modal.js +29 -28
- package/dist/components/modals/provider-modal-container.js +27 -27
- package/dist/components/modals/save-map-modal.js +43 -48
- package/dist/components/modals/share-map-modal.js +42 -53
- package/dist/components/modals/status-panel.js +24 -25
- package/dist/components/modals/storage-map-viewer.js +30 -43
- package/dist/components/notification-panel/notification-item.js +33 -47
- package/dist/components/notification-panel.js +30 -36
- package/dist/components/performance.js +11 -36
- package/dist/components/plot-container.js +42 -72
- package/dist/components/side-panel/cloud-storage-dropdown.js +4 -10
- package/dist/components/side-panel/common/dataset-info.js +20 -13
- package/dist/components/side-panel/common/dataset-tag.js +21 -12
- package/dist/components/side-panel/common/dataset-title.js +37 -52
- package/dist/components/side-panel/common/source-data-catalog.js +26 -22
- package/dist/components/side-panel/common/source-data-selector.js +34 -40
- package/dist/components/side-panel/custom-panel.js +5 -9
- package/dist/components/side-panel/filter-manager.js +18 -29
- package/dist/components/side-panel/filter-panel/filter-panel-header.js +30 -30
- package/dist/components/side-panel/filter-panel/filter-panel.js +36 -55
- package/dist/components/side-panel/interaction-manager.js +5 -12
- package/dist/components/side-panel/interaction-panel/brush-config.js +23 -19
- package/dist/components/side-panel/interaction-panel/interaction-panel.js +36 -59
- package/dist/components/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +34 -74
- package/dist/components/side-panel/interaction-panel/tooltip-config.js +28 -40
- package/dist/components/side-panel/layer-manager.js +51 -82
- package/dist/components/side-panel/layer-panel/color-dimension-scale-selector.js +3 -10
- package/dist/components/side-panel/layer-panel/color-palette.js +27 -23
- package/dist/components/side-panel/layer-panel/color-range-selector.js +52 -98
- package/dist/components/side-panel/layer-panel/color-selector.js +36 -67
- package/dist/components/side-panel/layer-panel/column-selector.js +26 -25
- package/dist/components/side-panel/layer-panel/custom-markers-config-group.js +2 -6
- package/dist/components/side-panel/layer-panel/custom-palette.js +37 -71
- package/dist/components/side-panel/layer-panel/custom-picker.js +32 -45
- package/dist/components/side-panel/layer-panel/dimension-scale-selector.js +8 -16
- package/dist/components/side-panel/layer-panel/hex-column-config.js +12 -34
- package/dist/components/side-panel/layer-panel/layer-aggregation-resolution.js +2 -10
- package/dist/components/side-panel/layer-panel/layer-column-config.js +31 -27
- package/dist/components/side-panel/layer-panel/layer-config-group.js +46 -80
- package/dist/components/side-panel/layer-panel/layer-configurator.js +162 -250
- package/dist/components/side-panel/layer-panel/layer-panel-header.js +52 -66
- package/dist/components/side-panel/layer-panel/layer-panel.js +33 -54
- package/dist/components/side-panel/layer-panel/layer-type-dropdown-list.js +28 -22
- package/dist/components/side-panel/layer-panel/layer-type-list-item.js +22 -18
- package/dist/components/side-panel/layer-panel/layer-type-selector.js +29 -32
- package/dist/components/side-panel/layer-panel/layer-visibility-by-zoom.js +35 -40
- package/dist/components/side-panel/layer-panel/single-color-palette.js +32 -42
- package/dist/components/side-panel/layer-panel/text-label-panel.js +31 -42
- package/dist/components/side-panel/layer-panel/vis-config-by-field-selector.js +39 -52
- package/dist/components/side-panel/layer-panel/vis-config-slider.js +10 -19
- package/dist/components/side-panel/layer-panel/vis-config-switch.js +28 -29
- package/dist/components/side-panel/map-manager.js +32 -46
- package/dist/components/side-panel/map-style-panel/map-layer-selector.js +28 -31
- package/dist/components/side-panel/map-style-panel/map-style-selector.js +26 -24
- package/dist/components/side-panel/panel-dropdown.js +28 -35
- package/dist/components/side-panel/panel-header-action.js +38 -43
- package/dist/components/side-panel/panel-header.js +54 -92
- package/dist/components/side-panel/panel-tab.js +24 -20
- package/dist/components/side-panel/panel-title.js +21 -10
- package/dist/components/side-panel/panel-toggle.js +26 -23
- package/dist/components/side-panel/side-bar.js +37 -53
- package/dist/components/side-panel.js +56 -65
- package/dist/connect/keplergl-connect.js +5 -14
- package/dist/connect/with-local-selector.js +33 -38
- package/dist/constants/action-types.js +5 -6
- package/dist/constants/color-palette.js +12 -23
- package/dist/constants/color-ranges.js +32 -31
- package/dist/constants/custom-color-ranges.js +9 -14
- package/dist/constants/default-settings.js +154 -239
- package/dist/constants/index.js +95 -103
- package/dist/constants/keyevent.js +3 -7
- package/dist/constants/tooltip.js +7 -10
- package/dist/constants/user-feedbacks.js +5 -6
- package/dist/constants/user-guides.js +12 -20
- package/dist/deckgl-layers/3d-building-layer/3d-building-layer.js +29 -32
- package/dist/deckgl-layers/3d-building-layer/3d-building-utils.js +10 -43
- package/dist/deckgl-layers/cluster-layer/cluster-layer.js +54 -75
- package/dist/deckgl-layers/column-layer/enhanced-column-layer.js +29 -32
- package/dist/deckgl-layers/grid-layer/enhanced-cpu-grid-layer.js +29 -30
- package/dist/deckgl-layers/hexagon-layer/enhanced-hexagon-layer.js +29 -30
- package/dist/deckgl-layers/layer-utils/cluster-utils.js +10 -21
- package/dist/deckgl-layers/layer-utils/cpu-aggregator.js +75 -132
- package/dist/deckgl-layers/layer-utils/shader-utils.js +1 -5
- package/dist/deckgl-layers/line-layer/line-layer.js +27 -34
- package/dist/deckgl-layers/svg-icon-layer/scatterplot-icon-layer.js +26 -30
- package/dist/deckgl-layers/svg-icon-layer/svg-icon-layer.js +33 -39
- package/dist/index.js +4 -23
- package/dist/layers/aggregation-layer.js +63 -97
- package/dist/layers/arc-layer/arc-layer-icon.js +27 -27
- package/dist/layers/arc-layer/arc-layer.js +48 -73
- package/dist/layers/base-layer.js +257 -406
- package/dist/layers/cluster-layer/cluster-layer-icon.js +27 -27
- package/dist/layers/cluster-layer/cluster-layer.js +33 -44
- package/dist/layers/default-layer-icon.js +27 -27
- package/dist/layers/geojson-layer/geojson-layer-icon.js +27 -27
- package/dist/layers/geojson-layer/geojson-layer.js +54 -87
- package/dist/layers/geojson-layer/geojson-utils.js +35 -47
- package/dist/layers/grid-layer/grid-layer-icon.js +27 -27
- package/dist/layers/grid-layer/grid-layer.js +30 -41
- package/dist/layers/grid-layer/grid-utils.js +6 -9
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer-icon.js +27 -27
- package/dist/layers/h3-hexagon-layer/h3-hexagon-layer.js +48 -80
- package/dist/layers/h3-hexagon-layer/h3-utils.js +10 -21
- package/dist/layers/heatmap-layer/heatmap-layer-icon.js +27 -27
- package/dist/layers/heatmap-layer/heatmap-layer.js +45 -72
- package/dist/layers/hexagon-layer/hexagon-layer-icon.js +27 -27
- package/dist/layers/hexagon-layer/hexagon-layer.js +30 -42
- package/dist/layers/hexagon-layer/hexagon-utils.js +3 -15
- package/dist/layers/icon-layer/icon-info-modal.js +23 -26
- package/dist/layers/icon-layer/icon-layer-icon.js +27 -27
- package/dist/layers/icon-layer/icon-layer.js +59 -97
- package/dist/layers/index.js +38 -39
- package/dist/layers/layer-factory.js +38 -42
- package/dist/layers/layer-text-label.js +7 -17
- package/dist/layers/layer-update.js +3 -14
- package/dist/layers/line-layer/line-layer-icon.js +27 -27
- package/dist/layers/line-layer/line-layer.js +46 -66
- package/dist/layers/mapbox-utils.js +38 -51
- package/dist/layers/mapboxgl-layer.js +43 -58
- package/dist/layers/point-layer/point-layer-icon.js +27 -27
- package/dist/layers/point-layer/point-layer.js +57 -90
- package/dist/layers/s2-geometry-layer/s2-geometry-layer.js +41 -73
- package/dist/layers/s2-geometry-layer/s2-layer-icon.js +27 -27
- package/dist/layers/s2-geometry-layer/s2-utils.js +5 -11
- package/dist/layers/scenegraph-layer/scenegraph-info-modal.js +21 -15
- package/dist/layers/scenegraph-layer/scenegraph-layer-icon.js +27 -27
- package/dist/layers/scenegraph-layer/scenegraph-layer.js +52 -75
- package/dist/layers/trip-layer/trip-info-modal.js +21 -16
- package/dist/layers/trip-layer/trip-layer-icon.js +27 -27
- package/dist/layers/trip-layer/trip-layer.js +51 -93
- package/dist/layers/trip-layer/trip-utils.js +16 -39
- package/dist/layers/types.js +3 -6
- package/dist/localization/en.js +22 -11
- package/dist/localization/formatted-message.js +5 -10
- package/dist/localization/index.js +7 -13
- package/dist/localization/locales.js +7 -12
- package/dist/middleware/index.js +2 -5
- package/dist/processors/data-processor.js +113 -177
- package/dist/processors/file-handler.js +200 -276
- package/dist/processors/index.js +33 -35
- package/dist/reducers/combined-updaters.js +35 -46
- package/dist/reducers/composer-helpers.js +28 -27
- package/dist/reducers/composers.js +25 -12
- package/dist/reducers/core.js +13 -46
- package/dist/reducers/index.js +24 -38
- package/dist/reducers/map-state-updaters.js +53 -65
- package/dist/reducers/map-state.js +31 -26
- package/dist/reducers/map-style-updaters.js +92 -136
- package/dist/reducers/map-style.js +31 -26
- package/dist/reducers/provider-state-updaters.js +92 -167
- package/dist/reducers/provider-state.js +32 -25
- package/dist/reducers/root.js +44 -50
- package/dist/reducers/ui-state-updaters.js +102 -202
- package/dist/reducers/ui-state.js +32 -26
- package/dist/reducers/vis-state-merger.js +102 -166
- package/dist/reducers/vis-state-selectors.js +5 -10
- package/dist/reducers/vis-state-updaters.js +386 -663
- package/dist/reducers/vis-state.js +32 -25
- package/dist/schemas/dataset-schema.js +36 -56
- package/dist/schemas/index.js +38 -45
- package/dist/schemas/map-state-schema.js +28 -24
- package/dist/schemas/map-style-schema.js +34 -48
- package/dist/schemas/schema-manager.js +44 -62
- package/dist/schemas/schema-utils.js +11 -15
- package/dist/schemas/schema.js +32 -27
- package/dist/schemas/versions.js +5 -9
- package/dist/schemas/vis-state-schema.js +109 -309
- package/dist/styles/base.js +367 -640
- package/dist/styles/index.js +1 -5
- package/dist/styles/media-breakpoints.js +21 -9
- package/dist/tasks/tasks.js +22 -50
- package/dist/templates/export-map-html.js +3 -6
- package/dist/utils/aggregate-utils.js +23 -27
- package/dist/utils/color-utils.js +36 -38
- package/dist/utils/custom-scales.js +1 -7
- package/dist/utils/data-scale-utils.js +11 -20
- package/dist/utils/data-utils.js +78 -137
- package/dist/utils/dataset-utils.js +71 -88
- package/dist/utils/dom-to-image.js +15 -93
- package/dist/utils/dom-utils.js +34 -116
- package/dist/utils/export-utils.js +65 -102
- package/dist/utils/filter-utils.js +170 -320
- package/dist/utils/gl-utils.js +39 -23
- package/dist/utils/gpu-filter-utils.js +46 -59
- package/dist/utils/index.js +68 -80
- package/dist/utils/interaction-utils.js +26 -50
- package/dist/utils/layer-utils.js +58 -63
- package/dist/utils/locale-utils.js +23 -21
- package/dist/utils/map-info-utils.js +2 -3
- package/dist/utils/map-style-utils/mapbox-gl-style-editor.js +72 -71
- package/dist/utils/map-style-utils/mapbox-utils.js +3 -5
- package/dist/utils/mapbox-utils.js +2 -5
- package/dist/utils/notifications-utils.js +36 -35
- package/dist/utils/observe-dimensions.js +36 -41
- package/dist/utils/projection-utils.js +9 -20
- package/dist/utils/searcher-utils.js +1 -4
- package/dist/utils/split-map-utils.js +36 -32
- package/dist/utils/table-utils/data-container-utils.js +27 -23
- package/dist/utils/table-utils/data-row.js +2 -13
- package/dist/utils/table-utils/index.js +1 -2
- package/dist/utils/table-utils/indexed-data-container.js +65 -84
- package/dist/utils/table-utils/kepler-table.js +83 -126
- package/dist/utils/table-utils/row-data-container.js +62 -87
- package/dist/utils/utils.js +51 -69
- package/package.json +4 -3
- package/src/components/kepler-gl.d.ts +0 -1
- package/src/components/kepler-gl.js +0 -7
- package/src/components/map-container.js +0 -3
- package/src/components/modal-container.d.ts +0 -1
- package/src/components/modal-container.js +0 -2
- package/src/components/modals/add-map-style-modal.js +0 -3
- package/src/components/side-panel/layer-panel/layer-configurator.js +11 -9
- package/src/layers/base-layer.js +1 -1
- package/src/utils/gl-utils.js +16 -15
- package/CHANGELOG.md +0 -948
|
@@ -1,46 +1,53 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
6
|
-
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
exports["default"] =
|
|
11
|
-
|
|
8
|
+
exports.visStateReducerFactory = exports["default"] = void 0;
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _actionTypes = _interopRequireDefault(require("../constants/action-types"));
|
|
15
|
-
|
|
16
11
|
var _reduxActions = require("redux-actions");
|
|
17
|
-
|
|
18
12
|
var visStateUpdaters = _interopRequireWildcard(require("./vis-state-updaters"));
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
13
|
+
var _actionHandler; // Copyright (c) 2022 Uber Technologies, Inc.
|
|
14
|
+
//
|
|
15
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
16
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
17
|
+
// in the Software without restriction, including without limitation the rights
|
|
18
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
19
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
20
|
+
// furnished to do so, subject to the following conditions:
|
|
21
|
+
//
|
|
22
|
+
// The above copyright notice and this permission notice shall be included in
|
|
23
|
+
// all copies or substantial portions of the Software.
|
|
24
|
+
//
|
|
25
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
26
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
27
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
28
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
29
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
30
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
31
|
+
// THE SOFTWARE.
|
|
32
|
+
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); }
|
|
33
|
+
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 && Object.prototype.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; }
|
|
34
|
+
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; }
|
|
35
|
+
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; }
|
|
26
36
|
/**
|
|
27
37
|
* Important: Do not rename `actionHandler` or the assignment pattern of property value.
|
|
28
38
|
* It is used to generate documentation
|
|
29
39
|
*/
|
|
30
|
-
var actionHandler = (_actionHandler = {}, (0, _defineProperty2["default"])(
|
|
40
|
+
var actionHandler = (_actionHandler = {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].ADD_FILTER, visStateUpdaters.addFilterUpdater), _actionTypes["default"].ADD_LAYER, visStateUpdaters.addLayerUpdater), _actionTypes["default"].DUPLICATE_LAYER, visStateUpdaters.duplicateLayerUpdater), _actionTypes["default"].ENLARGE_FILTER, visStateUpdaters.enlargeFilterUpdater), _actionTypes["default"].INTERACTION_CONFIG_CHANGE, visStateUpdaters.interactionConfigChangeUpdater), _actionTypes["default"].LAYER_CLICK, visStateUpdaters.layerClickUpdater), _actionTypes["default"].LAYER_CONFIG_CHANGE, visStateUpdaters.layerConfigChangeUpdater), _actionTypes["default"].LAYER_HOVER, visStateUpdaters.layerHoverUpdater), _actionTypes["default"].LAYER_TYPE_CHANGE, visStateUpdaters.layerTypeChangeUpdater), _actionTypes["default"].LAYER_VIS_CONFIG_CHANGE, visStateUpdaters.layerVisConfigChangeUpdater), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].LAYER_TEXT_LABEL_CHANGE, visStateUpdaters.layerTextLabelChangeUpdater), _actionTypes["default"].LAYER_VISUAL_CHANNEL_CHANGE, visStateUpdaters.layerVisualChannelChangeUpdater), _actionTypes["default"].LAYER_COLOR_UI_CHANGE, visStateUpdaters.layerColorUIChangeUpdater), _actionTypes["default"].TOGGLE_LAYER_ANIMATION, visStateUpdaters.toggleLayerAnimationUpdater), _actionTypes["default"].TOGGLE_LAYER_ANIMATION_CONTROL, visStateUpdaters.toggleLayerAnimationControlUpdater), _actionTypes["default"].LOAD_FILES, visStateUpdaters.loadFilesUpdater), _actionTypes["default"].LOAD_FILES_ERR, visStateUpdaters.loadFilesErrUpdater), _actionTypes["default"].LOAD_NEXT_FILE, visStateUpdaters.loadNextFileUpdater), _actionTypes["default"].LOAD_FILE_STEP_SUCCESS, visStateUpdaters.loadFileStepSuccessUpdater), _actionTypes["default"].MAP_CLICK, visStateUpdaters.mapClickUpdater), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].MOUSE_MOVE, visStateUpdaters.mouseMoveUpdater), _actionTypes["default"].RECEIVE_MAP_CONFIG, visStateUpdaters.receiveMapConfigUpdater), _actionTypes["default"].REMOVE_DATASET, visStateUpdaters.removeDatasetUpdater), _actionTypes["default"].REMOVE_FILTER, visStateUpdaters.removeFilterUpdater), _actionTypes["default"].REMOVE_LAYER, visStateUpdaters.removeLayerUpdater), _actionTypes["default"].REORDER_LAYER, visStateUpdaters.reorderLayerUpdater), _actionTypes["default"].RESET_MAP_CONFIG, visStateUpdaters.resetMapConfigUpdater), _actionTypes["default"].SET_FILTER, visStateUpdaters.setFilterUpdater), _actionTypes["default"].SET_FILTER_ANIMATION_TIME, visStateUpdaters.setFilterAnimationTimeUpdater), _actionTypes["default"].SET_FILTER_ANIMATION_TIME_CONFIG, visStateUpdaters.setFilterAnimationTimeConfigUpdater), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].SET_FILTER_ANIMATION_WINDOW, visStateUpdaters.setFilterAnimationWindowUpdater), _actionTypes["default"].SET_FILTER_PLOT, visStateUpdaters.setFilterPlotUpdater), _actionTypes["default"].SET_MAP_INFO, visStateUpdaters.setMapInfoUpdater), _actionTypes["default"].SHOW_DATASET_TABLE, visStateUpdaters.showDatasetTableUpdater), _actionTypes["default"].TOGGLE_FILTER_ANIMATION, visStateUpdaters.toggleFilterAnimationUpdater), _actionTypes["default"].UPDATE_FILTER_ANIMATION_SPEED, visStateUpdaters.updateFilterAnimationSpeedUpdater), _actionTypes["default"].SET_LAYER_ANIMATION_TIME, visStateUpdaters.setLayerAnimationTimeUpdater), _actionTypes["default"].UPDATE_LAYER_ANIMATION_SPEED, visStateUpdaters.updateLayerAnimationSpeedUpdater), _actionTypes["default"].TOGGLE_LAYER_FOR_MAP, visStateUpdaters.toggleLayerForMapUpdater), _actionTypes["default"].TOGGLE_SPLIT_MAP, visStateUpdaters.toggleSplitMapUpdater), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].UPDATE_LAYER_BLENDING, visStateUpdaters.updateLayerBlendingUpdater), _actionTypes["default"].UPDATE_VIS_DATA, visStateUpdaters.updateVisDataUpdater), _actionTypes["default"].RENAME_DATASET, visStateUpdaters.renameDatasetUpdater), _actionTypes["default"].SET_FEATURES, visStateUpdaters.setFeaturesUpdater), _actionTypes["default"].DELETE_FEATURE, visStateUpdaters.deleteFeatureUpdater), _actionTypes["default"].SET_POLYGON_FILTER_LAYER, visStateUpdaters.setPolygonFilterLayerUpdater), _actionTypes["default"].SET_SELECTED_FEATURE, visStateUpdaters.setSelectedFeatureUpdater), _actionTypes["default"].SET_EDITOR_MODE, visStateUpdaters.setEditorModeUpdater), _actionTypes["default"].TOGGLE_EDITOR_VISIBILITY, visStateUpdaters.toggleEditorVisibilityUpdater), _actionTypes["default"].TOGGLE_FILTER_FEATURE, visStateUpdaters.toggleFilterFeatureUpdater), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_actionHandler, _actionTypes["default"].APPLY_CPU_FILTER, visStateUpdaters.applyCPUFilterUpdater), _actionTypes["default"].SORT_TABLE_COLUMN, visStateUpdaters.sortTableColumnUpdater), _actionTypes["default"].PIN_TABLE_COLUMN, visStateUpdaters.pinTableColumnUpdater), _actionTypes["default"].COPY_TABLE_COLUMN, visStateUpdaters.copyTableColumnUpdater), _actionTypes["default"].NEXT_FILE_BATCH, visStateUpdaters.nextFileBatchUpdater), _actionTypes["default"].PROCESS_FILE_CONTENT, visStateUpdaters.processFileContentUpdater), _actionTypes["default"].SET_LAYER_ANIMATION_TIME_CONFIG, visStateUpdaters.setLayerAnimationTimeConfigUpdater));
|
|
31
41
|
|
|
32
|
-
|
|
42
|
+
// construct vis-state reducer
|
|
43
|
+
var visStateReducerFactory = exports.visStateReducerFactory = function visStateReducerFactory() {
|
|
33
44
|
var initialState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
34
|
-
return (
|
|
45
|
+
return (
|
|
46
|
+
// @ts-ignore
|
|
35
47
|
(0, _reduxActions.handleActions)(actionHandler, _objectSpread(_objectSpread(_objectSpread({}, visStateUpdaters.INITIAL_VIS_STATE), initialState), {}, {
|
|
36
48
|
initialState: initialState
|
|
37
49
|
}))
|
|
38
50
|
);
|
|
39
51
|
};
|
|
40
|
-
|
|
41
|
-
exports.visStateReducerFactory = visStateReducerFactory;
|
|
42
|
-
|
|
43
|
-
var _default = visStateReducerFactory();
|
|
44
|
-
|
|
45
|
-
exports["default"] = _default;
|
|
46
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWR1Y2Vycy92aXMtc3RhdGUuanMiXSwibmFtZXMiOlsiYWN0aW9uSGFuZGxlciIsIkFjdGlvblR5cGVzIiwiQUREX0ZJTFRFUiIsInZpc1N0YXRlVXBkYXRlcnMiLCJhZGRGaWx0ZXJVcGRhdGVyIiwiQUREX0xBWUVSIiwiYWRkTGF5ZXJVcGRhdGVyIiwiRFVQTElDQVRFX0xBWUVSIiwiZHVwbGljYXRlTGF5ZXJVcGRhdGVyIiwiRU5MQVJHRV9GSUxURVIiLCJlbmxhcmdlRmlsdGVyVXBkYXRlciIsIklOVEVSQUNUSU9OX0NPTkZJR19DSEFOR0UiLCJpbnRlcmFjdGlvbkNvbmZpZ0NoYW5nZVVwZGF0ZXIiLCJMQVlFUl9DTElDSyIsImxheWVyQ2xpY2tVcGRhdGVyIiwiTEFZRVJfQ09ORklHX0NIQU5HRSIsImxheWVyQ29uZmlnQ2hhbmdlVXBkYXRlciIsIkxBWUVSX0hPVkVSIiwibGF5ZXJIb3ZlclVwZGF0ZXIiLCJMQVlFUl9UWVBFX0NIQU5HRSIsImxheWVyVHlwZUNoYW5nZVVwZGF0ZXIiLCJMQVlFUl9WSVNfQ09ORklHX0NIQU5HRSIsImxheWVyVmlzQ29uZmlnQ2hhbmdlVXBkYXRlciIsIkxBWUVSX1RFWFRfTEFCRUxfQ0hBTkdFIiwibGF5ZXJUZXh0TGFiZWxDaGFuZ2VVcGRhdGVyIiwiTEFZRVJfVklTVUFMX0NIQU5ORUxfQ0hBTkdFIiwibGF5ZXJWaXN1YWxDaGFubmVsQ2hhbmdlVXBkYXRlciIsIkxBWUVSX0NPTE9SX1VJX0NIQU5HRSIsImxheWVyQ29sb3JVSUNoYW5nZVVwZGF0ZXIiLCJUT0dHTEVfTEFZRVJfQU5JTUFUSU9OIiwidG9nZ2xlTGF5ZXJBbmltYXRpb25VcGRhdGVyIiwiVE9HR0xFX0xBWUVSX0FOSU1BVElPTl9DT05UUk9MIiwidG9nZ2xlTGF5ZXJBbmltYXRpb25Db250cm9sVXBkYXRlciIsIkxPQURfRklMRVMiLCJsb2FkRmlsZXNVcGRhdGVyIiwiTE9BRF9GSUxFU19FUlIiLCJsb2FkRmlsZXNFcnJVcGRhdGVyIiwiTE9BRF9ORVhUX0ZJTEUiLCJsb2FkTmV4dEZpbGVVcGRhdGVyIiwiTE9BRF9GSUxFX1NURVBfU1VDQ0VTUyIsImxvYWRGaWxlU3RlcFN1Y2Nlc3NVcGRhdGVyIiwiTUFQX0NMSUNLIiwibWFwQ2xpY2tVcGRhdGVyIiwiTU9VU0VfTU9WRSIsIm1vdXNlTW92ZVVwZGF0ZXIiLCJSRUNFSVZFX01BUF9DT05GSUciLCJyZWNlaXZlTWFwQ29uZmlnVXBkYXRlciIsIlJFTU9WRV9EQVRBU0VUIiwicmVtb3ZlRGF0YXNldFVwZGF0ZXIiLCJSRU1PVkVfRklMVEVSIiwicmVtb3ZlRmlsdGVyVXBkYXRlciIsIlJFTU9WRV9MQVlFUiIsInJlbW92ZUxheWVyVXBkYXRlciIsIlJFT1JERVJfTEFZRVIiLCJyZW9yZGVyTGF5ZXJVcGRhdGVyIiwiUkVTRVRfTUFQX0NPTkZJRyIsInJlc2V0TWFwQ29uZmlnVXBkYXRlciIsIlNFVF9GSUxURVIiLCJzZXRGaWx0ZXJVcGRhdGVyIiwiU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRSIsInNldEZpbHRlckFuaW1hdGlvblRpbWVVcGRhdGVyIiwiU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRV9DT05GSUciLCJzZXRGaWx0ZXJBbmltYXRpb25UaW1lQ29uZmlnVXBkYXRlciIsIlNFVF9GSUxURVJfQU5JTUFUSU9OX1dJTkRPVyIsInNldEZpbHRlckFuaW1hdGlvbldpbmRvd1VwZGF0ZXIiLCJTRVRfRklMVEVSX1BMT1QiLCJzZXRGaWx0ZXJQbG90VXBkYXRlciIsIlNFVF9NQVBfSU5GTyIsInNldE1hcEluZm9VcGRhdGVyIiwiU0hPV19EQVRBU0VUX1RBQkxFIiwic2hvd0RhdGFzZXRUYWJsZVVwZGF0ZXIiLCJUT0dHTEVfRklMVEVSX0FOSU1BVElPTiIsInRvZ2dsZUZpbHRlckFuaW1hdGlvblVwZGF0ZXIiLCJVUERBVEVfRklMVEVSX0FOSU1BVElPTl9TUEVFRCIsInVwZGF0ZUZpbHRlckFuaW1hdGlvblNwZWVkVXBkYXRlciIsIlNFVF9MQVlFUl9BTklNQVRJT05fVElNRSIsInNldExheWVyQW5pbWF0aW9uVGltZVVwZGF0ZXIiLCJVUERBVEVfTEFZRVJfQU5JTUFUSU9OX1NQRUVEIiwidXBkYXRlTGF5ZXJBbmltYXRpb25TcGVlZFVwZGF0ZXIiLCJUT0dHTEVfTEFZRVJfRk9SX01BUCIsInRvZ2dsZUxheWVyRm9yTWFwVXBkYXRlciIsIlRPR0dMRV9TUExJVF9NQVAiLCJ0b2dnbGVTcGxpdE1hcFVwZGF0ZXIiLCJVUERBVEVfTEFZRVJfQkxFTkRJTkciLCJ1cGRhdGVMYXllckJsZW5kaW5nVXBkYXRlciIsIlVQREFURV9WSVNfREFUQSIsInVwZGF0ZVZpc0RhdGFVcGRhdGVyIiwiUkVOQU1FX0RBVEFTRVQiLCJyZW5hbWVEYXRhc2V0VXBkYXRlciIsIlNFVF9GRUFUVVJFUyIsInNldEZlYXR1cmVzVXBkYXRlciIsIkRFTEVURV9GRUFUVVJFIiwiZGVsZXRlRmVhdHVyZVVwZGF0ZXIiLCJTRVRfUE9MWUdPTl9GSUxURVJfTEFZRVIiLCJzZXRQb2x5Z29uRmlsdGVyTGF5ZXJVcGRhdGVyIiwiU0VUX1NFTEVDVEVEX0ZFQVRVUkUiLCJzZXRTZWxlY3RlZEZlYXR1cmVVcGRhdGVyIiwiU0VUX0VESVRPUl9NT0RFIiwic2V0RWRpdG9yTW9kZVVwZGF0ZXIiLCJUT0dHTEVfRURJVE9SX1ZJU0lCSUxJVFkiLCJ0b2dnbGVFZGl0b3JWaXNpYmlsaXR5VXBkYXRlciIsIlRPR0dMRV9GSUxURVJfRkVBVFVSRSIsInRvZ2dsZUZpbHRlckZlYXR1cmVVcGRhdGVyIiwiQVBQTFlfQ1BVX0ZJTFRFUiIsImFwcGx5Q1BVRmlsdGVyVXBkYXRlciIsIlNPUlRfVEFCTEVfQ09MVU1OIiwic29ydFRhYmxlQ29sdW1uVXBkYXRlciIsIlBJTl9UQUJMRV9DT0xVTU4iLCJwaW5UYWJsZUNvbHVtblVwZGF0ZXIiLCJDT1BZX1RBQkxFX0NPTFVNTiIsImNvcHlUYWJsZUNvbHVtblVwZGF0ZXIiLCJORVhUX0ZJTEVfQkFUQ0giLCJuZXh0RmlsZUJhdGNoVXBkYXRlciIsIlBST0NFU1NfRklMRV9DT05URU5UIiwicHJvY2Vzc0ZpbGVDb250ZW50VXBkYXRlciIsIlNFVF9MQVlFUl9BTklNQVRJT05fVElNRV9DT05GSUciLCJzZXRMYXllckFuaW1hdGlvblRpbWVDb25maWdVcGRhdGVyIiwidmlzU3RhdGVSZWR1Y2VyRmFjdG9yeSIsImluaXRpYWxTdGF0ZSIsIklOSVRJQUxfVklTX1NUQVRFIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOzs7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUEsYUFBYSwwRUFDaEJDLHdCQUFZQyxVQURJLEVBQ1NDLGdCQUFnQixDQUFDQyxnQkFEMUIsb0RBR2hCSCx3QkFBWUksU0FISSxFQUdRRixnQkFBZ0IsQ0FBQ0csZUFIekIsb0RBS2hCTCx3QkFBWU0sZUFMSSxFQUtjSixnQkFBZ0IsQ0FBQ0sscUJBTC9CLG9EQU9oQlAsd0JBQVlRLGNBUEksRUFPYU4sZ0JBQWdCLENBQUNPLG9CQVA5QixvREFTaEJULHdCQUFZVSx5QkFUSSxFQVN3QlIsZ0JBQWdCLENBQUNTLDhCQVR6QyxvREFXaEJYLHdCQUFZWSxXQVhJLEVBV1VWLGdCQUFnQixDQUFDVyxpQkFYM0Isb0RBYWhCYix3QkFBWWMsbUJBYkksRUFha0JaLGdCQUFnQixDQUFDYSx3QkFibkMsb0RBZWhCZix3QkFBWWdCLFdBZkksRUFlVWQsZ0JBQWdCLENBQUNlLGlCQWYzQixvREFpQmhCakIsd0JBQVlrQixpQkFqQkksRUFpQmdCaEIsZ0JBQWdCLENBQUNpQixzQkFqQmpDLG9EQW1CaEJuQix3QkFBWW9CLHVCQW5CSSxFQW1Cc0JsQixnQkFBZ0IsQ0FBQ21CLDJCQW5CdkMsb0RBcUJoQnJCLHdCQUFZc0IsdUJBckJJLEVBcUJzQnBCLGdCQUFnQixDQUFDcUIsMkJBckJ2QyxvREF1QmhCdkIsd0JBQVl3QiwyQkF2QkksRUF1QjBCdEIsZ0JBQWdCLENBQUN1QiwrQkF2QjNDLG9EQXlCaEJ6Qix3QkFBWTBCLHFCQXpCSSxFQXlCb0J4QixnQkFBZ0IsQ0FBQ3lC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ZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgQWN0aW9uVHlwZXMgZnJvbSAnY29uc3RhbnRzL2FjdGlvbi10eXBlcyc7XG5pbXBvcnQge2hhbmRsZUFjdGlvbnN9IGZyb20gJ3JlZHV4LWFjdGlvbnMnO1xuaW1wb3J0ICogYXMgdmlzU3RhdGVVcGRhdGVycyBmcm9tICcuL3Zpcy1zdGF0ZS11cGRhdGVycyc7XG5cbi8qKlxuICogSW1wb3J0YW50OiBEbyBub3QgcmVuYW1lIGBhY3Rpb25IYW5kbGVyYCBvciB0aGUgYXNzaWdubWVudCBwYXR0ZXJuIG9mIHByb3BlcnR5IHZhbHVlLlxuICogSXQgaXMgdXNlZCB0byBnZW5lcmF0ZSBkb2N1bWVudGF0aW9uXG4gKi9cbmNvbnN0IGFjdGlvbkhhbmRsZXIgPSB7XG4gIFtBY3Rpb25UeXBlcy5BRERfRklMVEVSXTogdmlzU3RhdGVVcGRhdGVycy5hZGRGaWx0ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5BRERfTEFZRVJdOiB2aXNTdGF0ZVVwZGF0ZXJzLmFkZExheWVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuRFVQTElDQVRFX0xBWUVSXTogdmlzU3RhdGVVcGRhdGVycy5kdXBsaWNhdGVMYXllclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkVOTEFSR0VfRklMVEVSXTogdmlzU3RhdGVVcGRhdGVycy5lbmxhcmdlRmlsdGVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuSU5URVJBQ1RJT05fQ09ORklHX0NIQU5HRV06IHZpc1N0YXRlVXBkYXRlcnMuaW50ZXJhY3Rpb25Db25maWdDaGFuZ2VVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MQVlFUl9DTElDS106IHZpc1N0YXRlVXBkYXRlcnMubGF5ZXJDbGlja1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxBWUVSX0NPTkZJR19DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyQ29uZmlnQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfSE9WRVJdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVySG92ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MQVlFUl9UWVBFX0NIQU5HRV06IHZpc1N0YXRlVXBkYXRlcnMubGF5ZXJUeXBlQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfVklTX0NPTkZJR19DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyVmlzQ29uZmlnQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfVEVYVF9MQUJFTF9DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyVGV4dExhYmVsQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfVklTVUFMX0NIQU5ORUxfQ0hBTkdFXTogdmlzU3RhdGVVcGRhdGVycy5sYXllclZpc3VhbENoYW5uZWxDaGFuZ2VVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MQVlFUl9DT0xPUl9VSV9DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyQ29sb3JVSUNoYW5nZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9MQVlFUl9BTklNQVRJT05dOiB2aXNTdGF0ZVVwZGF0ZXJzLnRvZ2dsZUxheWVyQW5pbWF0aW9uVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVE9HR0xFX0xBWUVSX0FOSU1BVElPTl9DT05UUk9MXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVMYXllckFuaW1hdGlvbkNvbnRyb2xVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MT0FEX0ZJTEVTXTogdmlzU3RhdGVVcGRhdGVycy5sb2FkRmlsZXNVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MT0FEX0ZJTEVTX0VSUl06IHZpc1N0YXRlVXBkYXRlcnMubG9hZEZpbGVzRXJyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTE9BRF9ORVhUX0ZJTEVdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxvYWROZXh0RmlsZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxPQURfRklMRV9TVEVQX1NVQ0NFU1NdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxvYWRGaWxlU3RlcFN1Y2Nlc3NVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5NQVBfQ0xJQ0tdOiB2aXNTdGF0ZVVwZGF0ZXJzLm1hcENsaWNrVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTU9VU0VfTU9WRV06IHZpc1N0YXRlVXBkYXRlcnMubW91c2VNb3ZlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVDRUlWRV9NQVBfQ09ORklHXTogdmlzU3RhdGVVcGRhdGVycy5yZWNlaXZlTWFwQ29uZmlnVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVNT1ZFX0RBVEFTRVRdOiB2aXNTdGF0ZVVwZGF0ZXJzLnJlbW92ZURhdGFzZXRVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5SRU1PVkVfRklMVEVSXTogdmlzU3RhdGVVcGRhdGVycy5yZW1vdmVGaWx0ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5SRU1PVkVfTEFZRVJdOiB2aXNTdGF0ZVVwZGF0ZXJzLnJlbW92ZUxheWVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVPUkRFUl9MQVlFUl06IHZpc1N0YXRlVXBkYXRlcnMucmVvcmRlckxheWVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVTRVRfTUFQX0NPTkZJR106IHZpc1N0YXRlVXBkYXRlcnMucmVzZXRNYXBDb25maWdVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfRklMVEVSXTogdmlzU3RhdGVVcGRhdGVycy5zZXRGaWx0ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfRklMVEVSX0FOSU1BVElPTl9USU1FXTogdmlzU3RhdGVVcGRhdGVycy5zZXRGaWx0ZXJBbmltYXRpb25UaW1lVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRV9DT05GSUddOlxuICAgIHZpc1N0YXRlVXBkYXRlcnMuc2V0RmlsdGVyQW5pbWF0aW9uVGltZUNvbmZpZ1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9GSUxURVJfQU5JTUFUSU9OX1dJTkRPV106IHZpc1N0YXRlVXBkYXRlcnMuc2V0RmlsdGVyQW5pbWF0aW9uV2luZG93VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0ZJTFRFUl9QTE9UXTogdmlzU3RhdGVVcGRhdGVycy5zZXRGaWx0ZXJQbG90VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX01BUF9JTkZPXTogdmlzU3RhdGVVcGRhdGVycy5zZXRNYXBJbmZvVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0hPV19EQVRBU0VUX1RBQkxFXTogdmlzU3RhdGVVcGRhdGVycy5zaG93RGF0YXNldFRhYmxlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVE9HR0xFX0ZJTFRFUl9BTklNQVRJT05dOiB2aXNTdGF0ZVVwZGF0ZXJzLnRvZ2dsZUZpbHRlckFuaW1hdGlvblVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlVQREFURV9GSUxURVJfQU5JTUFUSU9OX1NQRUVEXTogdmlzU3RhdGVVcGRhdGVycy51cGRhdGVGaWx0ZXJBbmltYXRpb25TcGVlZFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9MQVlFUl9BTklNQVRJT05fVElNRV06IHZpc1N0YXRlVXBkYXRlcnMuc2V0TGF5ZXJBbmltYXRpb25UaW1lVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVVBEQVRFX0xBWUVSX0FOSU1BVElPTl9TUEVFRF06IHZpc1N0YXRlVXBkYXRlcnMudXBkYXRlTGF5ZXJBbmltYXRpb25TcGVlZFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9MQVlFUl9GT1JfTUFQXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVMYXllckZvck1hcFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9TUExJVF9NQVBdOiB2aXNTdGF0ZVVwZGF0ZXJzLnRvZ2dsZVNwbGl0TWFwVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVVBEQVRFX0xBWUVSX0JMRU5ESU5HXTogdmlzU3RhdGVVcGRhdGVycy51cGRhdGVMYXllckJsZW5kaW5nVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVVBEQVRFX1ZJU19EQVRBXTogdmlzU3RhdGVVcGRhdGVycy51cGRhdGVWaXNEYXRhVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVOQU1FX0RBVEFTRVRdOiB2aXNTdGF0ZVVwZGF0ZXJzLnJlbmFtZURhdGFzZXRVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfRkVBVFVSRVNdOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldEZlYXR1cmVzVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuREVMRVRFX0ZFQVRVUkVdOiB2aXNTdGF0ZVVwZGF0ZXJzLmRlbGV0ZUZlYXR1cmVVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfUE9MWUdPTl9GSUxURVJfTEFZRVJdOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldFBvbHlnb25GaWx0ZXJMYXllclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9TRUxFQ1RFRF9GRUFUVVJFXTogdmlzU3RhdGVVcGRhdGVycy5zZXRTZWxlY3RlZEZlYXR1cmVVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfRURJVE9SX01PREVdOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldEVkaXRvck1vZGVVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5UT0dHTEVfRURJVE9SX1ZJU0lCSUxJVFldOiB2aXNTdGF0ZVVwZGF0ZXJzLnRvZ2dsZUVkaXRvclZpc2liaWxpdHlVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5UT0dHTEVfRklMVEVSX0ZFQVRVUkVdOiB2aXNTdGF0ZVVwZGF0ZXJzLnRvZ2dsZUZpbHRlckZlYXR1cmVVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5BUFBMWV9DUFVfRklMVEVSXTogdmlzU3RhdGVVcGRhdGVycy5hcHBseUNQVUZpbHRlclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNPUlRfVEFCTEVfQ09MVU1OXTogdmlzU3RhdGVVcGRhdGVycy5zb3J0VGFibGVDb2x1bW5VcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5QSU5fVEFCTEVfQ09MVU1OXTogdmlzU3RhdGVVcGRhdGVycy5waW5UYWJsZUNvbHVtblVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkNPUFlfVEFCTEVfQ09MVU1OXTogdmlzU3RhdGVVcGRhdGVycy5jb3B5VGFibGVDb2x1bW5VcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5ORVhUX0ZJTEVfQkFUQ0hdOiB2aXNTdGF0ZVVwZGF0ZXJzLm5leHRGaWxlQmF0Y2hVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5QUk9DRVNTX0ZJTEVfQ09OVEVOVF06IHZpc1N0YXRlVXBkYXRlcnMucHJvY2Vzc0ZpbGVDb250ZW50VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0xBWUVSX0FOSU1BVElPTl9USU1FX0NPTkZJR106IHZpc1N0YXRlVXBkYXRlcnMuc2V0TGF5ZXJBbmltYXRpb25UaW1lQ29uZmlnVXBkYXRlclxufTtcblxuLy8gY29uc3RydWN0IHZpcy1zdGF0ZSByZWR1Y2VyXG5leHBvcnQgY29uc3QgdmlzU3RhdGVSZWR1Y2VyRmFjdG9yeSA9IChpbml0aWFsU3RhdGUgPSB7fSkgPT5cbiAgLy8gQHRzLWlnbm9yZVxuICBoYW5kbGVBY3Rpb25zKGFjdGlvbkhhbmRsZXIsIHtcbiAgICAuLi52aXNTdGF0ZVVwZGF0ZXJzLklOSVRJQUxfVklTX1NUQVRFLFxuICAgIC4uLmluaXRpYWxTdGF0ZSxcbiAgICBpbml0aWFsU3RhdGVcbiAgfSk7XG5cbmV4cG9ydCBkZWZhdWx0IHZpc1N0YXRlUmVkdWNlckZhY3RvcnkoKTtcbiJdfQ==
|
|
52
|
+
var _default = exports["default"] = visStateReducerFactory();
|
|
53
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWN0aW9uVHlwZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWR1eEFjdGlvbnMiLCJ2aXNTdGF0ZVVwZGF0ZXJzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfYWN0aW9uSGFuZGxlciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImFjdGlvbkhhbmRsZXIiLCJBY3Rpb25UeXBlcyIsIkFERF9GSUxURVIiLCJhZGRGaWx0ZXJVcGRhdGVyIiwiQUREX0xBWUVSIiwiYWRkTGF5ZXJVcGRhdGVyIiwiRFVQTElDQVRFX0xBWUVSIiwiZHVwbGljYXRlTGF5ZXJVcGRhdGVyIiwiRU5MQVJHRV9GSUxURVIiLCJlbmxhcmdlRmlsdGVyVXBkYXRlciIsIklOVEVSQUNUSU9OX0NPTkZJR19DSEFOR0UiLCJpbnRlcmFjdGlvbkNvbmZpZ0NoYW5nZVVwZGF0ZXIiLCJMQVlFUl9DTElDSyIsImxheWVyQ2xpY2tVcGRhdGVyIiwiTEFZRVJfQ09ORklHX0NIQU5HRSIsImxheWVyQ29uZmlnQ2hhbmdlVXBkYXRlciIsIkxBWUVSX0hPVkVSIiwibGF5ZXJIb3ZlclVwZGF0ZXIiLCJMQVlFUl9UWVBFX0NIQU5HRSIsImxheWVyVHlwZUNoYW5nZVVwZGF0ZXIiLCJMQVlFUl9WSVNfQ09ORklHX0NIQU5HRSIsImxheWVyVmlzQ29uZmlnQ2hhbmdlVXBkYXRlciIsIkxBWUVSX1RFWFRfTEFCRUxfQ0hBTkdFIiwibGF5ZXJUZXh0TGFiZWxDaGFuZ2VVcGRhdGVyIiwiTEFZRVJfVklTVUFMX0NIQU5ORUxfQ0hBTkdFIiwibGF5ZXJWaXN1YWxDaGFubmVsQ2hhbmdlVXBkYXRlciIsIkxBWUVSX0NPTE9SX1VJX0NIQU5HRSIsImxheWVyQ29sb3JVSUNoYW5nZVVwZGF0ZXIiLCJUT0dHTEVfTEFZRVJfQU5JTUFUSU9OIiwidG9nZ2xlTGF5ZXJBbmltYXRpb25VcGRhdGVyIiwiVE9HR0xFX0xBWUVSX0FOSU1BVElPTl9DT05UUk9MIiwidG9nZ2xlTGF5ZXJBbmltYXRpb25Db250cm9sVXBkYXRlciIsIkxPQURfRklMRVMiLCJsb2FkRmlsZXNVcGRhdGVyIiwiTE9BRF9GSUxFU19FUlIiLCJsb2FkRmlsZXNFcnJVcGRhdGVyIiwiTE9BRF9ORVhUX0ZJTEUiLCJsb2FkTmV4dEZpbGVVcGRhdGVyIiwiTE9BRF9GSUxFX1NURVBfU1VDQ0VTUyIsImxvYWRGaWxlU3RlcFN1Y2Nlc3NVcGRhdGVyIiwiTUFQX0NMSUNLIiwibWFwQ2xpY2tVcGRhdGVyIiwiTU9VU0VfTU9WRSIsIm1vdXNlTW92ZVVwZGF0ZXIiLCJSRUNFSVZFX01BUF9DT05GSUciLCJyZWNlaXZlTWFwQ29uZmlnVXBkYXRlciIsIlJFTU9WRV9EQVRBU0VUIiwicmVtb3ZlRGF0YXNldFVwZGF0ZXIiLCJSRU1PVkVfRklMVEVSIiwicmVtb3ZlRmlsdGVyVXBkYXRlciIsIlJFTU9WRV9MQVlFUiIsInJlbW92ZUxheWVyVXBkYXRlciIsIlJFT1JERVJfTEFZRVIiLCJyZW9yZGVyTGF5ZXJVcGRhdGVyIiwiUkVTRVRfTUFQX0NPTkZJRyIsInJlc2V0TWFwQ29uZmlnVXBkYXRlciIsIlNFVF9GSUxURVIiLCJzZXRGaWx0ZXJVcGRhdGVyIiwiU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRSIsInNldEZpbHRlckFuaW1hdGlvblRpbWVVcGRhdGVyIiwiU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRV9DT05GSUciLCJzZXRGaWx0ZXJBbmltYXRpb25UaW1lQ29uZmlnVXBkYXRlciIsIlNFVF9GSUxURVJfQU5JTUFUSU9OX1dJTkRPVyIsInNldEZpbHRlckFuaW1hdGlvbldpbmRvd1VwZGF0ZXIiLCJTRVRfRklMVEVSX1BMT1QiLCJzZXRGaWx0ZXJQbG90VXBkYXRlciIsIlNFVF9NQVBfSU5GTyIsInNldE1hcEluZm9VcGRhdGVyIiwiU0hPV19EQVRBU0VUX1RBQkxFIiwic2hvd0RhdGFzZXRUYWJsZVVwZGF0ZXIiLCJUT0dHTEVfRklMVEVSX0FOSU1BVElPTiIsInRvZ2dsZUZpbHRlckFuaW1hdGlvblVwZGF0ZXIiLCJVUERBVEVfRklMVEVSX0FOSU1BVElPTl9TUEVFRCIsInVwZGF0ZUZpbHRlckFuaW1hdGlvblNwZWVkVXBkYXRlciIsIlNFVF9MQVlFUl9BTklNQVRJT05fVElNRSIsInNldExheWVyQW5pbWF0aW9uVGltZVVwZGF0ZXIiLCJVUERBVEVfTEFZRVJfQU5JTUFUSU9OX1NQRUVEIiwidXBkYXRlTGF5ZXJBbmltYXRpb25TcGVlZFVwZGF0ZXIiLCJUT0dHTEVfTEFZRVJfRk9SX01BUCIsInRvZ2dsZUxheWVyRm9yTWFwVXBkYXRlciIsIlRPR0dMRV9TUExJVF9NQVAiLCJ0b2dnbGVTcGxpdE1hcFVwZGF0ZXIiLCJVUERBVEVfTEFZRVJfQkxFTkRJTkciLCJ1cGRhdGVMYXllckJsZW5kaW5nVXBkYXRlciIsIlVQREFURV9WSVNfREFUQSIsInVwZGF0ZVZpc0RhdGFVcGRhdGVyIiwiUkVOQU1FX0RBVEFTRVQiLCJyZW5hbWVEYXRhc2V0VXBkYXRlciIsIlNFVF9GRUFUVVJFUyIsInNldEZlYXR1cmVzVXBkYXRlciIsIkRFTEVURV9GRUFUVVJFIiwiZGVsZXRlRmVhdHVyZVVwZGF0ZXIiLCJTRVRfUE9MWUdPTl9GSUxURVJfTEFZRVIiLCJzZXRQb2x5Z29uRmlsdGVyTGF5ZXJVcGRhdGVyIiwiU0VUX1NFTEVDVEVEX0ZFQVRVUkUiLCJzZXRTZWxlY3RlZEZlYXR1cmVVcGRhdGVyIiwiU0VUX0VESVRPUl9NT0RFIiwic2V0RWRpdG9yTW9kZVVwZGF0ZXIiLCJUT0dHTEVfRURJVE9SX1ZJU0lCSUxJVFkiLCJ0b2dnbGVFZGl0b3JWaXNpYmlsaXR5VXBkYXRlciIsIlRPR0dMRV9GSUxURVJfRkVBVFVSRSIsInRvZ2dsZUZpbHRlckZlYXR1cmVVcGRhdGVyIiwiQVBQTFlfQ1BVX0ZJTFRFUiIsImFwcGx5Q1BVRmlsdGVyVXBkYXRlciIsIlNPUlRfVEFCTEVfQ09MVU1OIiwic29ydFRhYmxlQ29sdW1uVXBkYXRlciIsIlBJTl9UQUJMRV9DT0xVTU4iLCJwaW5UYWJsZUNvbHVtblVwZGF0ZXIiLCJDT1BZX1RBQkxFX0NPTFVNTiIsImNvcHlUYWJsZUNvbHVtblVwZGF0ZXIiLCJORVhUX0ZJTEVfQkFUQ0giLCJuZXh0RmlsZUJhdGNoVXBkYXRlciIsIlBST0NFU1NfRklMRV9DT05URU5UIiwicHJvY2Vzc0ZpbGVDb250ZW50VXBkYXRlciIsIlNFVF9MQVlFUl9BTklNQVRJT05fVElNRV9DT05GSUciLCJzZXRMYXllckFuaW1hdGlvblRpbWVDb25maWdVcGRhdGVyIiwidmlzU3RhdGVSZWR1Y2VyRmFjdG9yeSIsImV4cG9ydHMiLCJpbml0aWFsU3RhdGUiLCJ1bmRlZmluZWQiLCJoYW5kbGVBY3Rpb25zIiwiSU5JVElBTF9WSVNfU1RBVEUiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWR1Y2Vycy92aXMtc3RhdGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IEFjdGlvblR5cGVzIGZyb20gJ2NvbnN0YW50cy9hY3Rpb24tdHlwZXMnO1xuaW1wb3J0IHtoYW5kbGVBY3Rpb25zfSBmcm9tICdyZWR1eC1hY3Rpb25zJztcbmltcG9ydCAqIGFzIHZpc1N0YXRlVXBkYXRlcnMgZnJvbSAnLi92aXMtc3RhdGUtdXBkYXRlcnMnO1xuXG4vKipcbiAqIEltcG9ydGFudDogRG8gbm90IHJlbmFtZSBgYWN0aW9uSGFuZGxlcmAgb3IgdGhlIGFzc2lnbm1lbnQgcGF0dGVybiBvZiBwcm9wZXJ0eSB2YWx1ZS5cbiAqIEl0IGlzIHVzZWQgdG8gZ2VuZXJhdGUgZG9jdW1lbnRhdGlvblxuICovXG5jb25zdCBhY3Rpb25IYW5kbGVyID0ge1xuICBbQWN0aW9uVHlwZXMuQUREX0ZJTFRFUl06IHZpc1N0YXRlVXBkYXRlcnMuYWRkRmlsdGVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuQUREX0xBWUVSXTogdmlzU3RhdGVVcGRhdGVycy5hZGRMYXllclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkRVUExJQ0FURV9MQVlFUl06IHZpc1N0YXRlVXBkYXRlcnMuZHVwbGljYXRlTGF5ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5FTkxBUkdFX0ZJTFRFUl06IHZpc1N0YXRlVXBkYXRlcnMuZW5sYXJnZUZpbHRlclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLklOVEVSQUNUSU9OX0NPTkZJR19DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmludGVyYWN0aW9uQ29uZmlnQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfQ0xJQ0tdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyQ2xpY2tVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MQVlFUl9DT05GSUdfQ0hBTkdFXTogdmlzU3RhdGVVcGRhdGVycy5sYXllckNvbmZpZ0NoYW5nZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxBWUVSX0hPVkVSXTogdmlzU3RhdGVVcGRhdGVycy5sYXllckhvdmVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfVFlQRV9DSEFOR0VdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxheWVyVHlwZUNoYW5nZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxBWUVSX1ZJU19DT05GSUdfQ0hBTkdFXTogdmlzU3RhdGVVcGRhdGVycy5sYXllclZpc0NvbmZpZ0NoYW5nZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxBWUVSX1RFWFRfTEFCRUxfQ0hBTkdFXTogdmlzU3RhdGVVcGRhdGVycy5sYXllclRleHRMYWJlbENoYW5nZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxBWUVSX1ZJU1VBTF9DSEFOTkVMX0NIQU5HRV06IHZpc1N0YXRlVXBkYXRlcnMubGF5ZXJWaXN1YWxDaGFubmVsQ2hhbmdlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTEFZRVJfQ09MT1JfVUlfQ0hBTkdFXTogdmlzU3RhdGVVcGRhdGVycy5sYXllckNvbG9yVUlDaGFuZ2VVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5UT0dHTEVfTEFZRVJfQU5JTUFUSU9OXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVMYXllckFuaW1hdGlvblVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9MQVlFUl9BTklNQVRJT05fQ09OVFJPTF06IHZpc1N0YXRlVXBkYXRlcnMudG9nZ2xlTGF5ZXJBbmltYXRpb25Db250cm9sVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTE9BRF9GSUxFU106IHZpc1N0YXRlVXBkYXRlcnMubG9hZEZpbGVzVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTE9BRF9GSUxFU19FUlJdOiB2aXNTdGF0ZVVwZGF0ZXJzLmxvYWRGaWxlc0VyclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkxPQURfTkVYVF9GSUxFXTogdmlzU3RhdGVVcGRhdGVycy5sb2FkTmV4dEZpbGVVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5MT0FEX0ZJTEVfU1RFUF9TVUNDRVNTXTogdmlzU3RhdGVVcGRhdGVycy5sb2FkRmlsZVN0ZXBTdWNjZXNzVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTUFQX0NMSUNLXTogdmlzU3RhdGVVcGRhdGVycy5tYXBDbGlja1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLk1PVVNFX01PVkVdOiB2aXNTdGF0ZVVwZGF0ZXJzLm1vdXNlTW92ZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlJFQ0VJVkVfTUFQX0NPTkZJR106IHZpc1N0YXRlVXBkYXRlcnMucmVjZWl2ZU1hcENvbmZpZ1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlJFTU9WRV9EQVRBU0VUXTogdmlzU3RhdGVVcGRhdGVycy5yZW1vdmVEYXRhc2V0VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVNT1ZFX0ZJTFRFUl06IHZpc1N0YXRlVXBkYXRlcnMucmVtb3ZlRmlsdGVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUkVNT1ZFX0xBWUVSXTogdmlzU3RhdGVVcGRhdGVycy5yZW1vdmVMYXllclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlJFT1JERVJfTEFZRVJdOiB2aXNTdGF0ZVVwZGF0ZXJzLnJlb3JkZXJMYXllclVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlJFU0VUX01BUF9DT05GSUddOiB2aXNTdGF0ZVVwZGF0ZXJzLnJlc2V0TWFwQ29uZmlnVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0ZJTFRFUl06IHZpc1N0YXRlVXBkYXRlcnMuc2V0RmlsdGVyVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0ZJTFRFUl9BTklNQVRJT05fVElNRV06IHZpc1N0YXRlVXBkYXRlcnMuc2V0RmlsdGVyQW5pbWF0aW9uVGltZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9GSUxURVJfQU5JTUFUSU9OX1RJTUVfQ09ORklHXTpcbiAgICB2aXNTdGF0ZVVwZGF0ZXJzLnNldEZpbHRlckFuaW1hdGlvblRpbWVDb25maWdVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfRklMVEVSX0FOSU1BVElPTl9XSU5ET1ddOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldEZpbHRlckFuaW1hdGlvbldpbmRvd1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9GSUxURVJfUExPVF06IHZpc1N0YXRlVXBkYXRlcnMuc2V0RmlsdGVyUGxvdFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9NQVBfSU5GT106IHZpc1N0YXRlVXBkYXRlcnMuc2V0TWFwSW5mb1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNIT1dfREFUQVNFVF9UQUJMRV06IHZpc1N0YXRlVXBkYXRlcnMuc2hvd0RhdGFzZXRUYWJsZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlRPR0dMRV9GSUxURVJfQU5JTUFUSU9OXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVGaWx0ZXJBbmltYXRpb25VcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5VUERBVEVfRklMVEVSX0FOSU1BVElPTl9TUEVFRF06IHZpc1N0YXRlVXBkYXRlcnMudXBkYXRlRmlsdGVyQW5pbWF0aW9uU3BlZWRVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfTEFZRVJfQU5JTUFUSU9OX1RJTUVdOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldExheWVyQW5pbWF0aW9uVGltZVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlVQREFURV9MQVlFUl9BTklNQVRJT05fU1BFRURdOiB2aXNTdGF0ZVVwZGF0ZXJzLnVwZGF0ZUxheWVyQW5pbWF0aW9uU3BlZWRVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5UT0dHTEVfTEFZRVJfRk9SX01BUF06IHZpc1N0YXRlVXBkYXRlcnMudG9nZ2xlTGF5ZXJGb3JNYXBVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5UT0dHTEVfU1BMSVRfTUFQXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVTcGxpdE1hcFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlVQREFURV9MQVlFUl9CTEVORElOR106IHZpc1N0YXRlVXBkYXRlcnMudXBkYXRlTGF5ZXJCbGVuZGluZ1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlVQREFURV9WSVNfREFUQV06IHZpc1N0YXRlVXBkYXRlcnMudXBkYXRlVmlzRGF0YVVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlJFTkFNRV9EQVRBU0VUXTogdmlzU3RhdGVVcGRhdGVycy5yZW5hbWVEYXRhc2V0VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0ZFQVRVUkVTXTogdmlzU3RhdGVVcGRhdGVycy5zZXRGZWF0dXJlc1VwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLkRFTEVURV9GRUFUVVJFXTogdmlzU3RhdGVVcGRhdGVycy5kZWxldGVGZWF0dXJlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX1BPTFlHT05fRklMVEVSX0xBWUVSXTogdmlzU3RhdGVVcGRhdGVycy5zZXRQb2x5Z29uRmlsdGVyTGF5ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TRVRfU0VMRUNURURfRkVBVFVSRV06IHZpc1N0YXRlVXBkYXRlcnMuc2V0U2VsZWN0ZWRGZWF0dXJlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuU0VUX0VESVRPUl9NT0RFXTogdmlzU3RhdGVVcGRhdGVycy5zZXRFZGl0b3JNb2RlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVE9HR0xFX0VESVRPUl9WSVNJQklMSVRZXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVFZGl0b3JWaXNpYmlsaXR5VXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuVE9HR0xFX0ZJTFRFUl9GRUFUVVJFXTogdmlzU3RhdGVVcGRhdGVycy50b2dnbGVGaWx0ZXJGZWF0dXJlVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuQVBQTFlfQ1BVX0ZJTFRFUl06IHZpc1N0YXRlVXBkYXRlcnMuYXBwbHlDUFVGaWx0ZXJVcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5TT1JUX1RBQkxFX0NPTFVNTl06IHZpc1N0YXRlVXBkYXRlcnMuc29ydFRhYmxlQ29sdW1uVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUElOX1RBQkxFX0NPTFVNTl06IHZpc1N0YXRlVXBkYXRlcnMucGluVGFibGVDb2x1bW5VcGRhdGVyLFxuXG4gIFtBY3Rpb25UeXBlcy5DT1BZX1RBQkxFX0NPTFVNTl06IHZpc1N0YXRlVXBkYXRlcnMuY29weVRhYmxlQ29sdW1uVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuTkVYVF9GSUxFX0JBVENIXTogdmlzU3RhdGVVcGRhdGVycy5uZXh0RmlsZUJhdGNoVXBkYXRlcixcblxuICBbQWN0aW9uVHlwZXMuUFJPQ0VTU19GSUxFX0NPTlRFTlRdOiB2aXNTdGF0ZVVwZGF0ZXJzLnByb2Nlc3NGaWxlQ29udGVudFVwZGF0ZXIsXG5cbiAgW0FjdGlvblR5cGVzLlNFVF9MQVlFUl9BTklNQVRJT05fVElNRV9DT05GSUddOiB2aXNTdGF0ZVVwZGF0ZXJzLnNldExheWVyQW5pbWF0aW9uVGltZUNvbmZpZ1VwZGF0ZXJcbn07XG5cbi8vIGNvbnN0cnVjdCB2aXMtc3RhdGUgcmVkdWNlclxuZXhwb3J0IGNvbnN0IHZpc1N0YXRlUmVkdWNlckZhY3RvcnkgPSAoaW5pdGlhbFN0YXRlID0ge30pID0+XG4gIC8vIEB0cy1pZ25vcmVcbiAgaGFuZGxlQWN0aW9ucyhhY3Rpb25IYW5kbGVyLCB7XG4gICAgLi4udmlzU3RhdGVVcGRhdGVycy5JTklUSUFMX1ZJU19TVEFURSxcbiAgICAuLi5pbml0aWFsU3RhdGUsXG4gICAgaW5pdGlhbFN0YXRlXG4gIH0pO1xuXG5leHBvcnQgZGVmYXVsdCB2aXNTdGF0ZVJlZHVjZXJGYWN0b3J5KCk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQW9CQSxJQUFBQSxZQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9B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
|
|
@@ -1,46 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
11
|
-
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
19
|
-
|
|
20
12
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
-
|
|
22
13
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
-
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
24
15
|
var _lodash = _interopRequireDefault(require("lodash.pick"));
|
|
25
|
-
|
|
26
16
|
var _window = require("global/window");
|
|
27
|
-
|
|
28
17
|
var _versions = require("./versions");
|
|
29
|
-
|
|
30
18
|
var _schema = _interopRequireDefault(require("./schema"));
|
|
31
|
-
|
|
32
19
|
var _dataProcessor = require("../processors/data-processor");
|
|
33
|
-
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
20
|
+
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; }
|
|
21
|
+
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; }
|
|
22
|
+
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)); }
|
|
23
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } // Copyright (c) 2022 Uber Technologies, Inc.
|
|
24
|
+
//
|
|
25
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
26
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
27
|
+
// in the Software without restriction, including without limitation the rights
|
|
28
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
29
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
30
|
+
// furnished to do so, subject to the following conditions:
|
|
31
|
+
//
|
|
32
|
+
// The above copyright notice and this permission notice shall be included in
|
|
33
|
+
// all copies or substantial portions of the Software.
|
|
34
|
+
//
|
|
35
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
36
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
37
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
38
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
39
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
40
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
41
|
+
// THE SOFTWARE.
|
|
44
42
|
// version v0
|
|
45
43
|
var fieldPropertiesV0 = {
|
|
46
44
|
name: null,
|
|
@@ -52,22 +50,16 @@ var fieldPropertiesV1 = {
|
|
|
52
50
|
format: null,
|
|
53
51
|
analyzerType: null
|
|
54
52
|
};
|
|
55
|
-
|
|
56
53
|
var FieldSchema = /*#__PURE__*/function (_Schema) {
|
|
57
54
|
(0, _inherits2["default"])(FieldSchema, _Schema);
|
|
58
|
-
|
|
59
|
-
var _super = _createSuper(FieldSchema);
|
|
60
|
-
|
|
61
55
|
function FieldSchema() {
|
|
62
56
|
(0, _classCallCheck2["default"])(this, FieldSchema);
|
|
63
|
-
return
|
|
57
|
+
return _callSuper(this, FieldSchema, arguments);
|
|
64
58
|
}
|
|
65
|
-
|
|
66
59
|
(0, _createClass2["default"])(FieldSchema, [{
|
|
67
60
|
key: "save",
|
|
68
61
|
value: function save(fields) {
|
|
69
62
|
var _this = this;
|
|
70
|
-
|
|
71
63
|
return (0, _defineProperty2["default"])({}, this.key, fields.map(function (f) {
|
|
72
64
|
return _this.savePropertiesOrApplySchema(f)[_this.key];
|
|
73
65
|
}));
|
|
@@ -80,7 +72,6 @@ var FieldSchema = /*#__PURE__*/function (_Schema) {
|
|
|
80
72
|
}]);
|
|
81
73
|
return FieldSchema;
|
|
82
74
|
}(_schema["default"]);
|
|
83
|
-
|
|
84
75
|
var propertiesV0 = {
|
|
85
76
|
id: null,
|
|
86
77
|
label: null,
|
|
@@ -92,7 +83,6 @@ var propertiesV0 = {
|
|
|
92
83
|
properties: fieldPropertiesV0
|
|
93
84
|
})
|
|
94
85
|
};
|
|
95
|
-
|
|
96
86
|
var propertiesV1 = _objectSpread(_objectSpread({}, propertiesV0), {}, {
|
|
97
87
|
fields: new FieldSchema({
|
|
98
88
|
key: 'fields',
|
|
@@ -100,26 +90,18 @@ var propertiesV1 = _objectSpread(_objectSpread({}, propertiesV0), {}, {
|
|
|
100
90
|
properties: fieldPropertiesV1
|
|
101
91
|
})
|
|
102
92
|
});
|
|
103
|
-
|
|
104
93
|
var DatasetSchema = /*#__PURE__*/function (_Schema2) {
|
|
105
94
|
(0, _inherits2["default"])(DatasetSchema, _Schema2);
|
|
106
|
-
|
|
107
|
-
var _super2 = _createSuper(DatasetSchema);
|
|
108
|
-
|
|
109
95
|
function DatasetSchema() {
|
|
110
96
|
var _this2;
|
|
111
|
-
|
|
112
97
|
(0, _classCallCheck2["default"])(this, DatasetSchema);
|
|
113
|
-
|
|
114
98
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
115
99
|
args[_key] = arguments[_key];
|
|
116
100
|
}
|
|
117
|
-
|
|
118
|
-
_this2 = _super2.call.apply(_super2, [this].concat(args));
|
|
101
|
+
_this2 = _callSuper(this, DatasetSchema, [].concat(args));
|
|
119
102
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "key", 'dataset');
|
|
120
103
|
return _this2;
|
|
121
104
|
}
|
|
122
|
-
|
|
123
105
|
(0, _createClass2["default"])(DatasetSchema, [{
|
|
124
106
|
key: "save",
|
|
125
107
|
value: function save(dataset) {
|
|
@@ -132,13 +114,13 @@ var DatasetSchema = /*#__PURE__*/function (_Schema2) {
|
|
|
132
114
|
key: "load",
|
|
133
115
|
value: function load(dataset) {
|
|
134
116
|
var fields = dataset.fields,
|
|
135
|
-
|
|
136
|
-
var updatedFields = fields;
|
|
117
|
+
allData = dataset.allData;
|
|
118
|
+
var updatedFields = fields;
|
|
119
|
+
|
|
120
|
+
// recalculate field type
|
|
137
121
|
// because we have updated type-analyzer
|
|
138
122
|
// we need to add format to each field
|
|
139
|
-
|
|
140
123
|
var needCalculateMeta = fields[0] && (!fields[0].hasOwnProperty('format') || !fields[0].hasOwnProperty('analyzerType'));
|
|
141
|
-
|
|
142
124
|
if (needCalculateMeta) {
|
|
143
125
|
var fieldOrder = fields.map(function (f) {
|
|
144
126
|
return f.name;
|
|
@@ -160,9 +142,9 @@ var DatasetSchema = /*#__PURE__*/function (_Schema2) {
|
|
|
160
142
|
_window.console.warn("detect ".concat(f.name, " type is now ").concat(f.type, " instead of ").concat(fields[i].type));
|
|
161
143
|
}
|
|
162
144
|
});
|
|
163
|
-
}
|
|
164
|
-
|
|
145
|
+
}
|
|
165
146
|
|
|
147
|
+
// get format of all fields
|
|
166
148
|
return {
|
|
167
149
|
data: {
|
|
168
150
|
fields: updatedFields,
|
|
@@ -174,16 +156,14 @@ var DatasetSchema = /*#__PURE__*/function (_Schema2) {
|
|
|
174
156
|
}]);
|
|
175
157
|
return DatasetSchema;
|
|
176
158
|
}(_schema["default"]);
|
|
177
|
-
|
|
178
|
-
var datasetSchema = (_datasetSchema = {}, (0, _defineProperty2["default"])(_datasetSchema, _versions.VERSIONS.v0, new DatasetSchema({
|
|
159
|
+
var datasetSchema = (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _versions.VERSIONS.v0, new DatasetSchema({
|
|
179
160
|
key: 'dataset',
|
|
180
161
|
version: _versions.VERSIONS.v0,
|
|
181
162
|
properties: propertiesV0
|
|
182
|
-
})),
|
|
163
|
+
})), _versions.VERSIONS.v1, new DatasetSchema({
|
|
183
164
|
key: 'dataset',
|
|
184
165
|
version: _versions.VERSIONS.v1,
|
|
185
166
|
properties: propertiesV1
|
|
186
|
-
}))
|
|
187
|
-
var _default = datasetSchema;
|
|
188
|
-
exports["default"] = _default;
|
|
189
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWFzL2RhdGFzZXQtc2NoZW1hLmpzIl0sIm5hbWVzIjpbImZpZWxkUHJvcGVydGllc1YwIiwibmFtZSIsInR5cGUiLCJmaWVsZFByb3BlcnRpZXNWMSIsImZvcm1hdCIsImFuYWx5emVyVHlwZSIsIkZpZWxkU2NoZW1hIiwiZmllbGRzIiwia2V5IiwibWFwIiwiZiIsInNhdmVQcm9wZXJ0aWVzT3JBcHBseVNjaGVtYSIsIlNjaGVtYSIsInByb3BlcnRpZXNWMCIsImlkIiwibGFiZWwiLCJjb2xvciIsImFsbERhdGEiLCJ2ZXJzaW9uIiwiVkVSU0lPTlMiLCJ2MCIsInByb3BlcnRpZXMiLCJwcm9wZXJ0aWVzVjEiLCJ2MSIsIkRhdGFzZXRTY2hlbWEiLCJkYXRhc2V0IiwiZGF0YXNldEZsYXR0ZW5lZCIsImRhdGFDb250YWluZXIiLCJmbGF0dGVuRGF0YSIsInVwZGF0ZWRGaWVsZHMiLCJuZWVkQ2FsY3VsYXRlTWV0YSIsImhhc093blByb3BlcnR5IiwiZmllbGRPcmRlciIsInNhbXBsZURhdGEiLCJyb3dzIiwibWV0YSIsImkiLCJmb3JFYWNoIiwiZ2xvYmFsQ29uc29sZSIsIndhcm4iLCJkYXRhIiwiaW5mbyIsImRhdGFzZXRTY2hlbWEiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7QUFFQTtBQUNBLElBQU1BLGlCQUFpQixHQUFHO0FBQ3hCQyxFQUFBQSxJQUFJLEVBQUUsSUFEa0I7QUFFeEJDLEVBQUFBLElBQUksRUFBRTtBQUZrQixDQUExQjtBQUtBLElBQU1DLGlCQUFpQixHQUFHO0FBQ3hCRixFQUFBQSxJQUFJLEVBQUUsSUFEa0I7QUFFeEJDLEVBQUFBLElBQUksRUFBRSxJQUZrQjtBQUd4QkUsRUFBQUEsTUFBTSxFQUFFLElBSGdCO0FBSXhCQyxFQUFBQSxZQUFZLEVBQUU7QUFKVSxDQUExQjs7SUFPTUMsVzs7Ozs7Ozs7Ozs7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YmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBwaWNrIGZyb20gJ2xvZGFzaC5waWNrJztcbmltcG9ydCB7Y29uc29sZSBhcyBnbG9iYWxDb25zb2xlfSBmcm9tICdnbG9iYWwvd2luZG93JztcblxuaW1wb3J0IHtWRVJTSU9OU30gZnJvbSAnLi92ZXJzaW9ucyc7XG5pbXBvcnQgU2NoZW1hIGZyb20gJy4vc2NoZW1hJztcbmltcG9ydCB7Z2V0RmllbGRzRnJvbURhdGEsIGdldFNhbXBsZUZvclR5cGVBbmFseXplfSBmcm9tICdwcm9jZXNzb3JzL2RhdGEtcHJvY2Vzc29yJztcblxuLy8gdmVyc2lvbiB2MFxuY29uc3QgZmllbGRQcm9wZXJ0aWVzVjAgPSB7XG4gIG5hbWU6IG51bGwsXG4gIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IGZpZWxkUHJvcGVydGllc1YxID0ge1xuICBuYW1lOiBudWxsLFxuICB0eXBlOiBudWxsLFxuICBmb3JtYXQ6IG51bGwsXG4gIGFuYWx5emVyVHlwZTogbnVsbFxufTtcblxuY2xhc3MgRmllbGRTY2hlbWEgZXh0ZW5kcyBTY2hlbWEge1xuICBzYXZlKGZpZWxkcykge1xuICAgIHJldHVybiB7XG4gICAgICBbdGhpcy5rZXldOiBmaWVsZHMubWFwKGYgPT4gdGhpcy5zYXZlUHJvcGVydGllc09yQXBwbHlTY2hlbWEoZilbdGhpcy5rZXldKVxuICAgIH07XG4gIH1cbiAgbG9hZChmaWVsZHMpIHtcbiAgICByZXR1cm4ge1t0aGlzLmtleV06IGZpZWxkc307XG4gIH1cbn1cblxuY29uc3QgcHJvcGVydGllc1YwID0ge1xuICBpZDogbnVsbCxcbiAgbGFiZWw6IG51bGwsXG4gIGNvbG9yOiBudWxsLFxuICBhbGxEYXRhOiBudWxsLFxuICBmaWVsZHM6IG5ldyBGaWVsZFNjaGVtYSh7XG4gICAga2V5OiAnZmllbGRzJyxcbiAgICB2ZXJzaW9uOiBWRVJTSU9OUy52MCxcbiAgICBwcm9wZXJ0aWVzOiBmaWVsZFByb3BlcnRpZXNWMFxuICB9KVxufTtcblxuY29uc3QgcHJvcGVydGllc1YxID0ge1xuICAuLi5wcm9wZXJ0aWVzVjAsXG4gIGZpZWxkczogbmV3IEZpZWxkU2NoZW1hKHtcbiAgICBrZXk6ICdmaWVsZHMnLFxuICAgIHZlcnNpb246IFZFUlNJT05TLnYxLFxuICAgIHByb3BlcnRpZXM6IGZpZWxkUHJvcGVydGllc1YxXG4gIH0pXG59O1xuXG5jbGFzcyBEYXRhc2V0U2NoZW1hIGV4dGVuZHMgU2NoZW1hIHtcbiAga2V5ID0gJ2RhdGFzZXQnO1xuXG4gIHNhdmUoZGF0YXNldCkge1xuICAgIGNvbnN0IGRhdGFzZXRGbGF0dGVuZWQgPSBkYXRhc2V0LmRhdGFDb250YWluZXJcbiAgICAgID8ge1xuICAgICAgICAgIC4uLmRhdGFzZXQsXG4gICAgICAgICAgYWxsRGF0YTogZGF0YXNldC5kYXRhQ29udGFpbmVyLmZsYXR0ZW5EYXRhKClcbiAgICAgICAgfVxuICAgICAgOiBkYXRhc2V0O1xuXG4gICAgcmV0dXJuIHRoaXMuc2F2ZVByb3BlcnRpZXNPckFwcGx5U2NoZW1hKGRhdGFzZXRGbGF0dGVuZWQpW3RoaXMua2V5XTtcbiAgfVxuICBsb2FkKGRhdGFzZXQpIHtcbiAgICBjb25zdCB7ZmllbGRzLCBhbGxEYXRhfSA9IGRhdGFzZXQ7XG4gICAgbGV0IHVwZGF0ZWRGaWVsZHMgPSBmaWVsZHM7XG5cbiAgICAvLyByZWNhbGN1bGF0ZSBmaWVsZCB0eXBlXG4gICAgLy8gYmVjYXVzZSB3ZSBoYXZlIHVwZGF0ZWQgdHlwZS1hbmFseXplclxuICAgIC8vIHdlIG5lZWQgdG8gYWRkIGZvcm1hdCB0byBlYWNoIGZpZWxkXG4gICAgY29uc3QgbmVlZENhbGN1bGF0ZU1ldGEgPVxuICAgICAgZmllbGRzWzBdICYmXG4gICAgICAoIWZpZWxkc1swXS5oYXNPd25Qcm9wZXJ0eSgnZm9ybWF0JykgfHwgIWZpZWxkc1swXS5oYXNPd25Qcm9wZXJ0eSgnYW5hbHl6ZXJUeXBlJykpO1xuXG4gICAgaWYgKG5lZWRDYWxjdWxhdGVNZXRhKSB7XG4gICAgICBjb25zdCBmaWVsZE9yZGVyID0gZmllbGRzLm1hcChmID0+IGYubmFtZSk7XG5cbiAgICAgIGNvbnN0IHNhbXBsZURhdGEgPSBnZXRTYW1wbGVGb3JUeXBlQW5hbHl6ZSh7XG4gICAgICAgIGZpZWxkczogZmllbGRPcmRlcixcbiAgICAgICAgcm93czogYWxsRGF0YVxuICAgICAgfSk7XG4gICAgICBjb25zdCBtZXRhID0gZ2V0RmllbGRzRnJvbURhdGEoc2FtcGxlRGF0YSwgZmllbGRPcmRlcik7XG5cbiAgICAgIHVwZGF0ZWRGaWVsZHMgPSBtZXRhLm1hcCgoZiwgaSkgPT4gKHtcbiAgICAgICAgLi4ucGljayhtZXRhW2ldLCBbJ25hbWUnLCAndHlwZScsICdmb3JtYXQnXSksXG4gICAgICAgIGFuYWx5emVyVHlwZTogbWV0YVtpXS5hbmFseXplclR5cGVcbiAgICAgIH0pKTtcblxuICAgICAgdXBkYXRlZEZpZWxkcy5mb3JFYWNoKChmLCBpKSA9PiB7XG4gICAgICAgIGlmIChmaWVsZHNbaV0udHlwZSAhPT0gZi50eXBlKSB7XG4gICAgICAgICAgLy8gaWYgbmV3bHkgZGV0ZWN0ZWQgZmllbGQgdHlwZSBpcyBkaWZmZXJlbnQgZnJvbSBzYXZlZCB0eXBlXG4gICAgICAgICAgLy8gd2UgbG9nIGl0IGJ1dCB3b24ndCB1cGRhdGUgaXQsIGNhdXNlIHdlIGRvbid0IHdhbnQgdG8gYnJlYWsgcGVvcGxlJ3MgbWFwXG4gICAgICAgICAgZ2xvYmFsQ29uc29sZS53YXJuKGBkZXRlY3QgJHtmLm5hbWV9IHR5cGUgaXMgbm93ICR7Zi50eXBlfSBpbnN0ZWFkIG9mICR7ZmllbGRzW2ldLnR5cGV9YCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIGdldCBmb3JtYXQgb2YgYWxsIGZpZWxkc1xuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiB7ZmllbGRzOiB1cGRhdGVkRmllbGRzLCByb3dzOiBkYXRhc2V0LmFsbERhdGF9LFxuICAgICAgaW5mbzogcGljayhkYXRhc2V0LCBbJ2lkJywgJ2xhYmVsJywgJ2NvbG9yJ10pXG4gICAgfTtcbiAgfVxufVxuXG5jb25zdCBkYXRhc2V0U2NoZW1hID0ge1xuICBbVkVSU0lPTlMudjBdOiBuZXcgRGF0YXNldFNjaGVtYSh7XG4gICAga2V5OiAnZGF0YXNldCcsXG4gICAgdmVyc2lvbjogVkVSU0lPTlMudjAsXG4gICAgcHJvcGVydGllczogcHJvcGVydGllc1YwXG4gIH0pLFxuICBbVkVSU0lPTlMudjFdOiBuZXcgRGF0YXNldFNjaGVtYSh7XG4gICAga2V5OiAnZGF0YXNldCcsXG4gICAgdmVyc2lvbjogVkVSU0lPTlMudjEsXG4gICAgcHJvcGVydGllczogcHJvcGVydGllc1YxXG4gIH0pXG59O1xuXG5leHBvcnQgZGVmYXVsdCBkYXRhc2V0U2NoZW1hO1xuIl19
|
|
167
|
+
}));
|
|
168
|
+
var _default = exports["default"] = datasetSchema;
|
|
169
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfd2luZG93IiwiX3ZlcnNpb25zIiwiX3NjaGVtYSIsIl9kYXRhUHJvY2Vzc29yIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJmaWVsZFByb3BlcnRpZXNWMCIsIm5hbWUiLCJ0eXBlIiwiZmllbGRQcm9wZXJ0aWVzVjEiLCJmb3JtYXQiLCJhbmFseXplclR5cGUiLCJGaWVsZFNjaGVtYSIsIl9TY2hlbWEiLCJfaW5oZXJpdHMyIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsInNhdmUiLCJmaWVsZHMiLCJfdGhpcyIsIm1hcCIsImYiLCJzYXZlUHJvcGVydGllc09yQXBwbHlTY2hlbWEiLCJsb2FkIiwiU2NoZW1hIiwicHJvcGVydGllc1YwIiwiaWQiLCJsYWJlbCIsImNvbG9yIiwiYWxsRGF0YSIsInZlcnNpb24iLCJWRVJTSU9OUyIsInYwIiwicHJvcGVydGllcyIsInByb3BlcnRpZXNWMSIsInYxIiwiRGF0YXNldFNjaGVtYSIsIl9TY2hlbWEyIiwiX3RoaXMyIiwiX2xlbiIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjb25jYXQiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemVkMiIsImRhdGFzZXQiLCJkYXRhc2V0RmxhdHRlbmVkIiwiZGF0YUNvbnRhaW5lciIsImZsYXR0ZW5EYXRhIiwidXBkYXRlZEZpZWxkcyIsIm5lZWRDYWxjdWxhdGVNZXRhIiwiaGFzT3duUHJvcGVydHkiLCJmaWVsZE9yZGVyIiwic2FtcGxlRGF0YSIsImdldFNhbXBsZUZvclR5cGVBbmFseXplIiwicm93cyIsIm1ldGEiLCJnZXRGaWVsZHNGcm9tRGF0YSIsImkiLCJwaWNrIiwiZ2xvYmFsQ29uc29sZSIsIndhcm4iLCJkYXRhIiwiaW5mbyIsImRhdGFzZXRTY2hlbWEiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NoZW1hcy9kYXRhc2V0LXNjaGVtYS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgcGljayBmcm9tICdsb2Rhc2gucGljayc7XG5pbXBvcnQge2NvbnNvbGUgYXMgZ2xvYmFsQ29uc29sZX0gZnJvbSAnZ2xvYmFsL3dpbmRvdyc7XG5cbmltcG9ydCB7VkVSU0lPTlN9IGZyb20gJy4vdmVyc2lvbnMnO1xuaW1wb3J0IFNjaGVtYSBmcm9tICcuL3NjaGVtYSc7XG5pbXBvcnQge2dldEZpZWxkc0Zyb21EYXRhLCBnZXRTYW1wbGVGb3JUeXBlQW5hbHl6ZX0gZnJvbSAncHJvY2Vzc29ycy9kYXRhLXByb2Nlc3Nvcic7XG5cbi8vIHZlcnNpb24gdjBcbmNvbnN0IGZpZWxkUHJvcGVydGllc1YwID0ge1xuICBuYW1lOiBudWxsLFxuICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBmaWVsZFByb3BlcnRpZXNWMSA9IHtcbiAgbmFtZTogbnVsbCxcbiAgdHlwZTogbnVsbCxcbiAgZm9ybWF0OiBudWxsLFxuICBhbmFseXplclR5cGU6IG51bGxcbn07XG5cbmNsYXNzIEZpZWxkU2NoZW1hIGV4dGVuZHMgU2NoZW1hIHtcbiAgc2F2ZShmaWVsZHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgW3RoaXMua2V5XTogZmllbGRzLm1hcChmID0+IHRoaXMuc2F2ZVByb3BlcnRpZXNPckFwcGx5U2NoZW1hKGYpW3RoaXMua2V5XSlcbiAgICB9O1xuICB9XG4gIGxvYWQoZmllbGRzKSB7XG4gICAgcmV0dXJuIHtbdGhpcy5rZXldOiBmaWVsZHN9O1xuICB9XG59XG5cbmNvbnN0IHByb3BlcnRpZXNWMCA9IHtcbiAgaWQ6IG51bGwsXG4gIGxhYmVsOiBudWxsLFxuICBjb2xvcjogbnVsbCxcbiAgYWxsRGF0YTogbnVsbCxcbiAgZmllbGRzOiBuZXcgRmllbGRTY2hlbWEoe1xuICAgIGtleTogJ2ZpZWxkcycsXG4gICAgdmVyc2lvbjogVkVSU0lPTlMudjAsXG4gICAgcHJvcGVydGllczogZmllbGRQcm9wZXJ0aWVzVjBcbiAgfSlcbn07XG5cbmNvbnN0IHByb3BlcnRpZXNWMSA9IHtcbiAgLi4ucHJvcGVydGllc1YwLFxuICBmaWVsZHM6IG5ldyBGaWVsZFNjaGVtYSh7XG4gICAga2V5OiAnZmllbGRzJyxcbiAgICB2ZXJzaW9uOiBWRVJTSU9OUy52MSxcbiAgICBwcm9wZXJ0aWVzOiBmaWVsZFByb3BlcnRpZXNWMVxuICB9KVxufTtcblxuY2xhc3MgRGF0YXNldFNjaGVtYSBleHRlbmRzIFNjaGVtYSB7XG4gIGtleSA9ICdkYXRhc2V0JztcblxuICBzYXZlKGRhdGFzZXQpIHtcbiAgICBjb25zdCBkYXRhc2V0RmxhdHRlbmVkID0gZGF0YXNldC5kYXRhQ29udGFpbmVyXG4gICAgICA/IHtcbiAgICAgICAgICAuLi5kYXRhc2V0LFxuICAgICAgICAgIGFsbERhdGE6IGRhdGFzZXQuZGF0YUNvbnRhaW5lci5mbGF0dGVuRGF0YSgpXG4gICAgICAgIH1cbiAgICAgIDogZGF0YXNldDtcblxuICAgIHJldHVybiB0aGlzLnNhdmVQcm9wZXJ0aWVzT3JBcHBseVNjaGVtYShkYXRhc2V0RmxhdHRlbmVkKVt0aGlzLmtleV07XG4gIH1cbiAgbG9hZChkYXRhc2V0KSB7XG4gICAgY29uc3Qge2ZpZWxkcywgYWxsRGF0YX0gPSBkYXRhc2V0O1xuICAgIGxldCB1cGRhdGVkRmllbGRzID0gZmllbGRzO1xuXG4gICAgLy8gcmVjYWxjdWxhdGUgZmllbGQgdHlwZVxuICAgIC8vIGJlY2F1c2Ugd2UgaGF2ZSB1cGRhdGVkIHR5cGUtYW5hbHl6ZXJcbiAgICAvLyB3ZSBuZWVkIHRvIGFkZCBmb3JtYXQgdG8gZWFjaCBmaWVsZFxuICAgIGNvbnN0IG5lZWRDYWxjdWxhdGVNZXRhID1cbiAgICAgIGZpZWxkc1swXSAmJlxuICAgICAgKCFmaWVsZHNbMF0uaGFzT3duUHJvcGVydHkoJ2Zvcm1hdCcpIHx8ICFmaWVsZHNbMF0uaGFzT3duUHJvcGVydHkoJ2FuYWx5emVyVHlwZScpKTtcblxuICAgIGlmIChuZWVkQ2FsY3VsYXRlTWV0YSkge1xuICAgICAgY29uc3QgZmllbGRPcmRlciA9IGZpZWxkcy5tYXAoZiA9PiBmLm5hbWUpO1xuXG4gICAgICBjb25zdCBzYW1wbGVEYXRhID0gZ2V0U2FtcGxlRm9yVHlwZUFuYWx5emUoe1xuICAgICAgICBmaWVsZHM6IGZpZWxkT3JkZXIsXG4gICAgICAgIHJvd3M6IGFsbERhdGFcbiAgICAgIH0pO1xuICAgICAgY29uc3QgbWV0YSA9IGdldEZpZWxkc0Zyb21EYXRhKHNhbXBsZURhdGEsIGZpZWxkT3JkZXIpO1xuXG4gICAgICB1cGRhdGVkRmllbGRzID0gbWV0YS5tYXAoKGYsIGkpID0+ICh7XG4gICAgICAgIC4uLnBpY2sobWV0YVtpXSwgWyduYW1lJywgJ3R5cGUnLCAnZm9ybWF0J10pLFxuICAgICAgICBhbmFseXplclR5cGU6IG1ldGFbaV0uYW5hbHl6ZXJUeXBlXG4gICAgICB9KSk7XG5cbiAgICAgIHVwZGF0ZWRGaWVsZHMuZm9yRWFjaCgoZiwgaSkgPT4ge1xuICAgICAgICBpZiAoZmllbGRzW2ldLnR5cGUgIT09IGYudHlwZSkge1xuICAgICAgICAgIC8vIGlmIG5ld2x5IGRldGVjdGVkIGZpZWxkIHR5cGUgaXMgZGlmZmVyZW50IGZyb20gc2F2ZWQgdHlwZVxuICAgICAgICAgIC8vIHdlIGxvZyBpdCBidXQgd29uJ3QgdXBkYXRlIGl0LCBjYXVzZSB3ZSBkb24ndCB3YW50IHRvIGJyZWFrIHBlb3BsZSdzIG1hcFxuICAgICAgICAgIGdsb2JhbENvbnNvbGUud2FybihgZGV0ZWN0ICR7Zi5uYW1lfSB0eXBlIGlzIG5vdyAke2YudHlwZX0gaW5zdGVhZCBvZiAke2ZpZWxkc1tpXS50eXBlfWApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBnZXQgZm9ybWF0IG9mIGFsbCBmaWVsZHNcbiAgICByZXR1cm4ge1xuICAgICAgZGF0YToge2ZpZWxkczogdXBkYXRlZEZpZWxkcywgcm93czogZGF0YXNldC5hbGxEYXRhfSxcbiAgICAgIGluZm86IHBpY2soZGF0YXNldCwgWydpZCcsICdsYWJlbCcsICdjb2xvciddKVxuICAgIH07XG4gIH1cbn1cblxuY29uc3QgZGF0YXNldFNjaGVtYSA9IHtcbiAgW1ZFUlNJT05TLnYwXTogbmV3IERhdGFzZXRTY2hlbWEoe1xuICAgIGtleTogJ2RhdGFzZXQnLFxuICAgIHZlcnNpb246IFZFUlNJT05TLnYwLFxuICAgIHByb3BlcnRpZXM6IHByb3BlcnRpZXNWMFxuICB9KSxcbiAgW1ZFUlNJT05TLnYxXTogbmV3IERhdGFzZXRTY2hlbWEoe1xuICAgIGtleTogJ2RhdGFzZXQnLFxuICAgIHZlcnNpb246IFZFUlNJT05TLnYxLFxuICAgIHByb3BlcnRpZXM6IHByb3BlcnRpZXNWMVxuICB9KVxufTtcblxuZXhwb3J0IGRlZmF1bHQgZGF0YXNldFNjaGVtYTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFvQkEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsU0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksY0FBQSxHQUFBSixPQUFBO0FBQXFGLFNBQUFLLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRixPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdBQUFkLENBQUEsUUFBQWUsZ0JBQUEsYUFBQWhCLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLENBQUFELENBQUEsU0FBQUUsTUFBQSxDQUFBYyx5QkFBQSxHQUFBZCxNQUFBLENB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
|