@kepler.gl/components 3.3.0-alpha.6 → 3.3.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/common/data-table/cell-size.js +40 -23
- package/dist/cjs/common/data-table/column-statistics-categoric.js +40 -0
- package/dist/cjs/common/data-table/column-statistics-components.js +65 -0
- package/dist/cjs/common/data-table/column-statistics-numeric.js +87 -0
- package/dist/cjs/common/data-table/column-statistics-time.js +69 -0
- package/dist/cjs/common/data-table/grid.js +2 -2
- package/dist/cjs/common/data-table/header-cell.js +123 -44
- package/dist/cjs/common/data-table/index.js +104 -31
- package/dist/cjs/common/file-uploader/file-upload.js +250 -40
- package/dist/cjs/common/histogram-plot.js +1 -1
- package/dist/cjs/common/icons/circle.js +54 -0
- package/dist/cjs/common/icons/{arrow-down-solid.js → draw-point.js} +21 -11
- package/dist/cjs/common/icons/index.js +22 -1
- package/dist/cjs/common/icons/line-string.js +60 -0
- package/dist/cjs/common/item-selector/item-selector.js +2 -2
- package/dist/cjs/common/portaled.js +3 -3
- package/dist/cjs/common/time-range-slider.js +2 -2
- package/dist/cjs/common/timeline-slider.js +2 -2
- package/dist/cjs/common/toolbar-item.js +24 -3
- package/dist/cjs/editor/editor.js +27 -9
- package/dist/cjs/editor/feature-action-panel.js +34 -12
- package/dist/cjs/editor/feature-properties-editor.js +215 -0
- package/dist/cjs/editor/filter-feature-badges.js +92 -0
- package/dist/cjs/filters/filter-panels/polygon-filter-panel.js +2 -2
- package/dist/cjs/filters/time-widget.js +2 -2
- package/dist/cjs/index.js +33 -1
- package/dist/cjs/kepler-gl.js +20 -3
- package/dist/cjs/map/layer-hover-info.js +2 -2
- package/dist/cjs/map/map-control-toolbar.js +2 -2
- package/dist/cjs/map/map-control.js +14 -8
- package/dist/cjs/map/map-draw-panel.js +74 -15
- package/dist/cjs/map/theme-toggle-button.js +64 -0
- package/dist/cjs/map-container.js +17 -6
- package/dist/cjs/map-view-state-context.js +3 -3
- package/dist/cjs/modal-container.js +3 -2
- package/dist/cjs/modals/cloud-components/cloud-item.js +55 -7
- package/dist/cjs/modals/cloud-components/cloud-item.spec.js +75 -3
- package/dist/cjs/modals/cloud-components/cloud-maps.js +2 -1
- package/dist/cjs/modals/cloud-components/cloud-storage-disclaimer.js +24 -0
- package/dist/cjs/modals/cloud-tile.js +82 -39
- package/dist/cjs/modals/data-table-modal.js +37 -25
- package/dist/cjs/modals/export-video-modal.js +28 -1
- package/dist/cjs/modals/export-video-modal.spec.js +56 -10
- package/dist/cjs/modals/globe-export-video-container.js +19 -3
- package/dist/cjs/modals/globe-export-video-preview.js +25 -7
- package/dist/cjs/modals/hubble-utils.js +8 -3
- package/dist/cjs/modals/image-modal-container.js +2 -2
- package/dist/cjs/modals/load-data-modal.js +3 -3
- package/dist/cjs/modals/load-storage-map.js +9 -6
- package/dist/cjs/modals/save-map-modal.js +4 -3
- package/dist/cjs/modals/share-map-modal.js +5 -4
- package/dist/cjs/modals/swipe-composite-utils.js +9 -1
- package/dist/cjs/modals/swipe-composite-utils.spec.js +69 -0
- package/dist/cjs/modals/swipe-export-video-preview.js +9 -5
- package/dist/cjs/plot-container.js +12 -5
- package/dist/cjs/side-panel/common/dataset-info.js +2 -2
- package/dist/cjs/side-panel/filter-panel/filter-panel.js +2 -2
- package/dist/cjs/side-panel/layer-manager.js +11 -3
- package/dist/cjs/side-panel/layer-panel/custom-palette.js +2 -2
- package/dist/cjs/side-panel/layer-panel/dataset-layer-section.js +11 -3
- package/dist/cjs/side-panel/layer-panel/layer-configurator.js +74 -31
- package/dist/cjs/side-panel/map-style-panel/globe-config-panel.js +90 -25
- package/dist/common/data-table/column-statistics-categoric.d.ts +9 -0
- package/dist/common/data-table/column-statistics-components.d.ts +31 -0
- package/dist/common/data-table/column-statistics-numeric.d.ts +18 -0
- package/dist/common/data-table/column-statistics-time.d.ts +19 -0
- package/dist/common/data-table/header-cell.d.ts +7 -5
- package/dist/common/data-table/index.d.ts +7 -24
- package/dist/common/histogram-plot.d.ts +24 -1
- package/dist/common/icons/{arrow-down-solid.d.ts → circle.d.ts} +2 -1
- package/dist/common/icons/draw-point.d.ts +10 -0
- package/dist/common/icons/index.d.ts +3 -0
- package/dist/common/icons/line-string.d.ts +10 -0
- package/dist/common/toolbar-item.d.ts +2 -0
- package/dist/editor/editor.d.ts +1 -0
- package/dist/editor/feature-action-panel.d.ts +1 -0
- package/dist/editor/feature-properties-editor.d.ts +8 -0
- package/dist/editor/filter-feature-badges.d.ts +12 -0
- package/dist/esm/common/data-table/cell-size.js +40 -23
- package/dist/esm/common/data-table/column-statistics-categoric.js +33 -0
- package/dist/esm/common/data-table/column-statistics-components.js +59 -0
- package/dist/esm/common/data-table/column-statistics-numeric.js +78 -0
- package/dist/esm/common/data-table/column-statistics-time.js +60 -0
- package/dist/esm/common/data-table/grid.js +2 -2
- package/dist/esm/common/data-table/header-cell.js +125 -46
- package/dist/esm/common/data-table/index.js +104 -31
- package/dist/esm/common/file-uploader/file-upload.js +251 -41
- package/dist/esm/common/histogram-plot.js +1 -1
- package/dist/esm/common/icons/circle.js +48 -0
- package/dist/esm/common/icons/draw-point.js +44 -0
- package/dist/esm/common/icons/index.js +4 -1
- package/dist/esm/common/icons/line-string.js +54 -0
- package/dist/esm/common/item-selector/item-selector.js +2 -2
- package/dist/esm/common/portaled.js +3 -3
- package/dist/esm/common/time-range-slider.js +2 -2
- package/dist/esm/common/timeline-slider.js +2 -2
- package/dist/esm/common/toolbar-item.js +24 -3
- package/dist/esm/editor/editor.js +27 -9
- package/dist/esm/editor/feature-action-panel.js +37 -15
- package/dist/esm/editor/feature-properties-editor.js +208 -0
- package/dist/esm/editor/filter-feature-badges.js +85 -0
- package/dist/esm/filters/filter-panels/polygon-filter-panel.js +2 -2
- package/dist/esm/filters/time-widget.js +2 -2
- package/dist/esm/index.js +5 -1
- package/dist/esm/kepler-gl.js +20 -3
- package/dist/esm/map/layer-hover-info.js +2 -2
- package/dist/esm/map/map-control-toolbar.js +2 -2
- package/dist/esm/map/map-control.js +14 -8
- package/dist/esm/map/map-draw-panel.js +72 -11
- package/dist/esm/map/theme-toggle-button.js +55 -0
- package/dist/esm/map-container.js +17 -6
- package/dist/esm/map-view-state-context.js +3 -3
- package/dist/esm/modal-container.js +3 -2
- package/dist/esm/modals/cloud-components/cloud-item.js +53 -7
- package/dist/esm/modals/cloud-components/cloud-item.spec.js +76 -4
- package/dist/esm/modals/cloud-components/cloud-maps.js +2 -1
- package/dist/esm/modals/cloud-components/cloud-storage-disclaimer.js +19 -0
- package/dist/esm/modals/cloud-tile.js +82 -39
- package/dist/esm/modals/data-table-modal.js +38 -26
- package/dist/esm/modals/export-video-modal.js +29 -2
- package/dist/esm/modals/export-video-modal.spec.js +56 -10
- package/dist/esm/modals/globe-export-video-container.js +20 -4
- package/dist/esm/modals/globe-export-video-preview.js +26 -8
- package/dist/esm/modals/hubble-utils.js +8 -3
- package/dist/esm/modals/image-modal-container.js +2 -2
- package/dist/esm/modals/load-data-modal.js +3 -3
- package/dist/esm/modals/load-storage-map.js +8 -3
- package/dist/esm/modals/save-map-modal.js +4 -3
- package/dist/esm/modals/share-map-modal.js +5 -4
- package/dist/esm/modals/swipe-composite-utils.js +9 -1
- package/dist/esm/modals/swipe-composite-utils.spec.js +67 -0
- package/dist/esm/modals/swipe-export-video-preview.js +8 -4
- package/dist/esm/plot-container.js +12 -5
- package/dist/esm/side-panel/common/dataset-info.js +2 -2
- package/dist/esm/side-panel/filter-panel/filter-panel.js +2 -2
- package/dist/esm/side-panel/layer-manager.js +11 -3
- package/dist/esm/side-panel/layer-panel/custom-palette.js +2 -2
- package/dist/esm/side-panel/layer-panel/dataset-layer-section.js +11 -3
- package/dist/esm/side-panel/layer-panel/layer-configurator.js +74 -31
- package/dist/esm/side-panel/map-style-panel/globe-config-panel.js +90 -25
- package/dist/index.d.ts +8 -0
- package/dist/kepler-gl.d.ts +3 -0
- package/dist/map/map-control.d.ts +6 -2
- package/dist/map/map-draw-panel.d.ts +1 -0
- package/dist/map/theme-toggle-button.d.ts +18 -0
- package/dist/map-container.d.ts +1 -0
- package/dist/modals/cloud-components/cloud-item.d.ts +2 -1
- package/dist/modals/cloud-components/cloud-storage-disclaimer.d.ts +2 -0
- package/dist/modals/data-table-modal.d.ts +1 -0
- package/dist/modals/globe-export-video-container.d.ts +2 -0
- package/dist/modals/globe-export-video-preview.d.ts +3 -0
- package/dist/modals/hubble-utils.d.ts +2 -1
- package/dist/modals/swipe-composite-utils.d.ts +1 -1
- package/dist/modals/swipe-composite-utils.spec.d.ts +1 -0
- package/package.json +20 -21
- package/dist/cjs/modals/cloud-components/provider-loading.js +0 -20
- package/dist/cjs/modals/storage-map-viewer.js +0 -98
- package/dist/cjs/side-panel/cloud-storage-dropdown.js +0 -40
- package/dist/esm/common/icons/arrow-down-solid.js +0 -34
- package/dist/esm/modals/cloud-components/provider-loading.js +0 -15
- package/dist/esm/modals/storage-map-viewer.js +0 -93
- package/dist/esm/side-panel/cloud-storage-dropdown.js +0 -33
- package/dist/modals/cloud-components/provider-loading.d.ts +0 -2
- package/dist/modals/storage-map-viewer.d.ts +0 -21
- package/dist/side-panel/cloud-storage-dropdown.d.ts +0 -6
|
@@ -12,7 +12,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
12
12
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
15
|
-
var _truncate = _interopRequireDefault(require("
|
|
15
|
+
var _truncate = _interopRequireDefault(require("es-toolkit/compat/truncate"));
|
|
16
16
|
var _styledComponents2 = require("../common/styled-components");
|
|
17
17
|
var _icons = require("../common/icons");
|
|
18
18
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -315,4 +315,4 @@ var LayerHoverInfoFactory = function LayerHoverInfoFactory() {
|
|
|
315
315
|
return LayerHoverInfo;
|
|
316
316
|
};
|
|
317
317
|
var _default = exports["default"] = LayerHoverInfoFactory;
|
|
318
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdHJ1bmNhdGUiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfaWNvbnMiLCJfcHJvcFR5cGVzIiwiX2NvbW1vblV0aWxzIiwiX3V0aWxzIiwiX3JlZHVjZXJzIiwiX3JlYWN0SW50bCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZjMiLCJoYXMiLCJnZXQiLCJzZXQiLCJfdCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiU3R5bGVkTGF5ZXJOYW1lIiwiZXhwb3J0cyIsInN0eWxlZCIsIkNlbnRlckZsZXhib3giLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JIbCIsIlN0eWxlZFRhYmxlIiwidGFibGUiLCJub3RpZmljYXRpb25Db2xvcnMiLCJzdWNjZXNzIiwibmVnYXRpdmVCdG5BY3RCZ2QiLCJTdHlsZWREaXZpZGVyIiwiZGl2IiwicGFuZWxCb3JkZXJDb2xvciIsIlRPT0xUSVBfVkFMVUVfTUFYX0xFTkdUSCIsIlRvb2x0aXBJbWFnZSIsIl9yZWYiLCJzcmMiLCJpbWdSZWYiLCJ1c2VSZWYiLCJ1c2VFZmZlY3QiLCJzdGFydHNXaXRoIiwiVVJMIiwicmV2b2tlT2JqZWN0VVJMIiwiY3VycmVudCIsImNyZWF0ZUVsZW1lbnQiLCJyZWYiLCJSb3ciLCJfcmVmMiIsIm5hbWUiLCJ2YWx1ZSIsImRlbHRhVmFsdWUiLCJ1cmwiLCJpc0NvbXBhcmluZyIsIm1hdGNoIiwiZGlzcGxheVZhbHVlIiwibGVuZ3RoIiwidHJ1bmNhdGUiLCJhc0ltZyIsInRlc3QiLCJjbGFzc05hbWUiLCJrZXkiLCJyZXBsYWNlIiwidGFyZ2V0IiwicmVsIiwiaHJlZiIsImNvbmNhdCIsIm5vdE51bGxvclVuZGVmaW5lZCIsInRvU3RyaW5nIiwiY2hhckF0IiwiRW50cnlJbmZvIiwiX3JlZjMiLCJmaWVsZHNUb1Nob3ciLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwibWFwIiwiaXRlbSIsIkVudHJ5SW5mb1JvdyIsIl9leHRlbmRzMiIsIl9yZWY0IiwibGF5ZXIiLCJmaWVsZHMiLCJkYXRhIiwicHJpbWFyeURhdGEiLCJjb21wYXJlVHlwZSIsImN1cnJlbnRUaW1lIiwiZmllbGRJZHgiLCJmaW5kSW5kZXgiLCJmaWVsZCIsImZpZWxkVmFsdWVBY2Nlc3NvciIsImFjY2Vzc1ZTRmllbGRWYWx1ZSIsIkRhdGFSb3ciLCJpbmRleCIsIl9yb3dJbmRleCIsInByaW1hcnlWYWx1ZSIsImRpc3BsYXlEZWx0YVZhbHVlIiwiQXJyYXkiLCJpc0FycmF5IiwiX3R5cGVvZjIiLCJnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUiLCJlcnJvciIsImdldFRvb2x0aXBEaXNwbGF5VmFsdWUiLCJkaXNwbGF5TmFtZSIsIkJvb2xlYW4iLCJDZWxsSW5mbyIsIl9yZWY1IiwiX3JlZjYiLCJjb25maWciLCJjb2xvckZpZWxkIiwic2l6ZUZpZWxkIiwiY29sb3JWYWx1ZSIsInVzZU1lbW8iLCJ2aXN1YWxDaGFubmVscyIsImNvbG9yIiwiZmluZCIsImVsZXZhdGlvblZhbHVlIiwic2l6ZSIsImNvbG9yRGVsdGEiLCJlbGV2YXRpb25EZWx0YSIsImFnZ3JlZ2F0ZWREYXRhIiwicmVkdWNlIiwiYWNjIiwiX2RhdGEkYWdncmVnYXRlZERhdGEiLCJkYXRhRm9yRmllbGQiLCJtZWFzdXJlIiwiX3ByaW1hcnlEYXRhJGFnZ3JlZ2F0IiwicHJpbWFyeURhdGFGb3JGaWVsZCIsInR5cGUiLCJOdW1iZXIiLCJwdXNoIiwiY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIiwiY29sb3JNZWFzdXJlIiwiZ2V0VmlzdWFsQ2hhbm5lbERlc2NyaXB0aW9uIiwic2l6ZU1lYXN1cmUiLCJTdHJpbmciLCJwb2ludHMiLCJpZHgiLCJMYXllckhvdmVySW5mb0ZhY3RvcnkiLCJMYXllckhvdmVySW5mbyIsImludGwiLCJ1c2VJbnRsIiwiaGFzRmllbGRzVG9TaG93IiwiZmllbGRWYWx1ZXMiLCJrZXlzIiwid21zRmVhdHVyZURhdGEiLCJMYXllcnMiLCJoZWlnaHQiLCJsYWJlbCIsInVuZGVmaW5lZCIsIl9yZWY3IiwiX3JlZjgiLCJsYWJlbE1lc3NhZ2UiLCJmb3JtYXRNZXNzYWdlIiwiaWQiLCJpc0FnZ3JlZ2F0ZWQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwiYW55Iiwib2JqZWN0Iiwib25lT2ZUeXBlIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWFwL2xheWVyLWhvdmVyLWluZm8udHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB0cnVuY2F0ZSBmcm9tICdsb2Rhc2gvdHJ1bmNhdGUnO1xuaW1wb3J0IHtDb21wYXJlVHlwZSwgRmllbGQsIE1lcmdlLCBUb29sdGlwRmllbGR9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtDZW50ZXJGbGV4Ym94fSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtMYXllcnN9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtub3ROdWxsb3JVbmRlZmluZWR9IGZyb20gJ0BrZXBsZXIuZ2wvY29tbW9uLXV0aWxzJztcbmltcG9ydCB7RGF0YVJvd30gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge0xheWVyfSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge1xuICBBZ2dyZWdhdGlvbkxheWVySG92ZXJEYXRhLFxuICBMYXllckhvdmVyUHJvcCxcbiAgZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlLFxuICBnZXRUb29sdGlwRGlzcGxheVZhbHVlXG59IGZyb20gJ0BrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuaW1wb3J0IHt1c2VJbnRsfSBmcm9tICdyZWFjdC1pbnRsJztcbmltcG9ydCB7VmlzU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvc2NoZW1hcyc7XG5pbXBvcnQge2NhcGl0YWxpemVGaXJzdExldHRlcn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRMYXllck5hbWUgPSBzdHlsZWQoQ2VudGVyRmxleGJveClgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC40M3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRUYWJsZSA9IHN0eWxlZC50YWJsZWBcbiAgJiAucm93X19kZWx0YS12YWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcblxuICAgICYucG9zaXRpdmUge1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uQ29sb3JzLnN1Y2Nlc3N9O1xuICAgIH1cblxuICAgICYubmVnYXRpdmUge1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5BY3RCZ2R9O1xuICAgIH1cbiAgfVxuICAmIC5yb3dfX25hbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICAmIC5yb3dfX3ZhbHVlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWREaXZpZGVyID0gc3R5bGVkLmRpdmBcbiAgLy8gb2Zmc2V0IGRpdmlkZXIgdG8gcmVhY2ggcG9wb3ZlciBlZGdlXG4gIG1hcmdpbi1sZWZ0OiAtMTRweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCb3JkZXJDb2xvcn07XG5gO1xuXG5pbnRlcmZhY2UgUm93UHJvcHMge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGRlbHRhVmFsdWU/OiBzdHJpbmcgfCBudWxsO1xuICB1cmw/OiBzdHJpbmc7XG4gIGlzQ29tcGFyaW5nPzogYm9vbGVhbjtcbn1cblxuY29uc3QgVE9PTFRJUF9WQUxVRV9NQVhfTEVOR1RIID0gMjU2O1xuXG4vKipcbiAqIEltYWdlIGNvbXBvbmVudCB0aGF0IGNsZWFucyB1cCByZXNvdXJjZXMgb24gdW5tb3VudCB0byBwcmV2ZW50IG1lbW9yeSBsZWFrcy5cbiAqIFJldm9rZXMgYmxvYi9vYmplY3QgVVJMcyBhbmQgY2xlYXJzIHRoZSBpbWFnZSBzcmMgdG8gcmVsZWFzZSBtZW1vcnkuXG4gKi9cbmNvbnN0IFRvb2x0aXBJbWFnZTogUmVhY3QuRkM8e3NyYzogc3RyaW5nfT4gPSAoe3NyY30pID0+IHtcbiAgY29uc3QgaW1nUmVmID0gdXNlUmVmPEhUTUxJbWFnZUVsZW1lbnQ+KG51bGwpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIC8vIFJldm9rZSBibG9iIFVSTHMgdG8gZnJlZSBtZW1vcnlcbiAgICAgIGlmIChzcmMgJiYgKHNyYy5zdGFydHNXaXRoKCdibG9iOicpIHx8IHNyYy5zdGFydHNXaXRoKCdkYXRhOicpKSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwoc3JjKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIC8vIGlnbm9yZSBlcnJvcnMgZnJvbSBub24tb2JqZWN0IFVSTHNcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gQ2xlYXIgdGhlIGltYWdlIHNyYyB0byByZWxlYXNlIHRoZSBkZWNvZGVkIGltYWdlIGZyb20gbWVtb3J5XG4gICAgICBpZiAoaW1nUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgaW1nUmVmLmN1cnJlbnQuc3JjID0gJyc7XG4gICAgICB9XG4gICAgfTtcbiAgfSwgW3NyY10pO1xuXG4gIHJldHVybiA8aW1nIHJlZj17aW1nUmVmfSBzcmM9e3NyY30gLz47XG59O1xuXG5jb25zdCBSb3c6IFJlYWN0LkZDPFJvd1Byb3BzPiA9ICh7bmFtZSwgdmFsdWUsIGRlbHRhVmFsdWUsIHVybCwgaXNDb21wYXJpbmd9KSA9PiB7XG4gIC8vIFNldCAndXJsJyB0byAndmFsdWUnIGlmIGl0IGxvb2tzIGxpa2UgYSB1cmxcbiAgaWYgKCF1cmwgJiYgdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiB2YWx1ZS5tYXRjaCgvXmh0dHAvKSkge1xuICAgIHVybCA9IHZhbHVlO1xuICB9XG5cbiAgY29uc3QgZGlzcGxheVZhbHVlID1cbiAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmxlbmd0aCA+IFRPT0xUSVBfVkFMVUVfTUFYX0xFTkdUSFxuICAgICAgPyB0cnVuY2F0ZSh2YWx1ZSwge2xlbmd0aDogVE9PTFRJUF9WQUxVRV9NQVhfTEVOR1RIfSlcbiAgICAgIDogdmFsdWU7XG5cbiAgY29uc3QgYXNJbWcgPSAvPGltZz4vLnRlc3QobmFtZSk7XG4gIHJldHVybiAoXG4gICAgPHRyIGNsYXNzTmFtZT1cImxheWVyLWhvdmVyLWluZm9fX3Jvd1wiIGtleT17bmFtZX0+XG4gICAgICA8dGQgY2xhc3NOYW1lPVwicm93X19uYW1lXCI+e2FzSW1nID8gbmFtZS5yZXBsYWNlKCc8aW1nPicsICcnKSA6IG5hbWV9PC90ZD5cbiAgICAgIDx0ZCBjbGFzc05hbWU9XCJyb3dfX3ZhbHVlXCI+XG4gICAgICAgIHthc0ltZyA/IChcbiAgICAgICAgICA8VG9vbHRpcEltYWdlIHNyYz17dmFsdWV9IC8+XG4gICAgICAgICkgOiB1cmwgPyAoXG4gICAgICAgICAgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiIGhyZWY9e3VybH0+XG4gICAgICAgICAgICB7ZGlzcGxheVZhbHVlfVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8c3Bhbj57ZGlzcGxheVZhbHVlfTwvc3Bhbj5cbiAgICAgICAgKX1cbiAgICAgIDwvdGQ+XG4gICAgICB7aXNDb21wYXJpbmcgPyAoXG4gICAgICAgIDx0ZFxuICAgICAgICAgIGNsYXNzTmFtZT17YHJvd19fZGVsdGEtdmFsdWUgJHtcbiAgICAgICAgICAgIG5vdE51bGxvclVuZGVmaW5lZChkZWx0YVZhbHVlKVxuICAgICAgICAgICAgICA/IGRlbHRhVmFsdWU/LnRvU3RyaW5nKCkuY2hhckF0KDApID09PSAnKydcbiAgICAgICAgICAgICAgICA/ICdwb3NpdGl2ZSdcbiAgICAgICAgICAgICAgICA6ICduZWdhdGl2ZSdcbiAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgIH1gfVxuICAgICAgICA+XG4gICAgICAgICAge2RlbHRhVmFsdWUgPz8gJyd9XG4gICAgICAgIDwvdGQ+XG4gICAgICApIDogbnVsbH1cbiAgICA8L3RyPlxuICApO1xufTtcblxuZXhwb3J0IHR5cGUgRW50cnlJbmZvUHJvcHMgPSBNZXJnZTxMYXllckhvdmVyUHJvcCwge2ZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW119PjtcblxuY29uc3QgRW50cnlJbmZvOiBSZWFjdC5GQzxFbnRyeUluZm9Qcm9wcz4gPSAoe2ZpZWxkc1RvU2hvdywgLi4ucHJvcHN9KSA9PiAoXG4gIDx0Ym9keT5cbiAgICB7ZmllbGRzVG9TaG93Lm1hcChpdGVtID0+IChcbiAgICAgIDxFbnRyeUluZm9Sb3cga2V5PXtpdGVtLm5hbWV9IGl0ZW09e2l0ZW19IHsuLi5wcm9wc30gLz5cbiAgICApKX1cbiAgPC90Ym9keT5cbik7XG5cbmV4cG9ydCB0eXBlIEVudHJ5SW5mb1Jvd1Byb3BzID0ge1xuICBkYXRhOiBMYXllckhvdmVyUHJvcFsnZGF0YSddO1xuICBmaWVsZHM6IEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbiAgcHJpbWFyeURhdGE/OiBMYXllckhvdmVyUHJvcFsncHJpbWFyeURhdGEnXTtcbiAgY29tcGFyZVR5cGU/OiBDb21wYXJlVHlwZTtcbiAgY3VycmVudFRpbWU/OiBWaXNTdGF0ZVsnYW5pbWF0aW9uQ29uZmlnJ11bJ2N1cnJlbnRUaW1lJ107XG4gIGl0ZW06IFRvb2x0aXBGaWVsZDtcbn07XG5cbmNvbnN0IEVudHJ5SW5mb1JvdzogUmVhY3QuRkM8RW50cnlJbmZvUm93UHJvcHM+ID0gKHtcbiAgbGF5ZXIsXG4gIGl0ZW0sXG4gIGZpZWxkcyxcbiAgZGF0YSxcbiAgcHJpbWFyeURhdGEsXG4gIGNvbXBhcmVUeXBlLFxuICBjdXJyZW50VGltZVxufSkgPT4ge1xuICBjb25zdCBmaWVsZElkeCA9IGZpZWxkcy5maW5kSW5kZXgoZiA9PiBmLm5hbWUgPT09IGl0ZW0ubmFtZSk7XG4gIGlmIChmaWVsZElkeCA8IDApIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBmaWVsZCA9IGZpZWxkc1tmaWVsZElkeF07XG4gIGNvbnN0IGZpZWxkVmFsdWVBY2Nlc3NvciA9IGxheWVyLmFjY2Vzc1ZTRmllbGRWYWx1ZShmaWVsZCwgY3VycmVudFRpbWUpO1xuICBjb25zdCB2YWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihmaWVsZCwgZGF0YSBpbnN0YW5jZW9mIERhdGFSb3cgPyB7aW5kZXg6IGRhdGEuX3Jvd0luZGV4fSA6IGRhdGEpO1xuXG4gIGxldCBwcmltYXJ5VmFsdWUgPSBudWxsO1xuICBsZXQgZGlzcGxheURlbHRhVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIGlmIChwcmltYXJ5RGF0YSkge1xuICAgIHRyeSB7XG4gICAgICBpZiAocHJpbWFyeURhdGEgaW5zdGFuY2VvZiBEYXRhUm93KSB7XG4gICAgICAgIHByaW1hcnlWYWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihmaWVsZCwge2luZGV4OiBwcmltYXJ5RGF0YS5fcm93SW5kZXh9KTtcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwcmltYXJ5RGF0YSkgfHwgKHR5cGVvZiBwcmltYXJ5RGF0YSA9PT0gJ29iamVjdCcgJiYgcHJpbWFyeURhdGEpKSB7XG4gICAgICAgIHByaW1hcnlWYWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihmaWVsZCwgcHJpbWFyeURhdGEpO1xuICAgICAgfVxuXG4gICAgICBkaXNwbGF5RGVsdGFWYWx1ZSA9IGdldFRvb2x0aXBEaXNwbGF5RGVsdGFWYWx1ZSh7XG4gICAgICAgIGZpZWxkLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgcHJpbWFyeVZhbHVlLFxuICAgICAgICBjb21wYXJlVHlwZVxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHByaW1hcnlWYWx1ZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZGlzcGxheVZhbHVlID0gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQsIHZhbHVlfSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Um93XG4gICAgICBuYW1lPXtmaWVsZC5kaXNwbGF5TmFtZSB8fCBmaWVsZC5uYW1lfVxuICAgICAgdmFsdWU9e2Rpc3BsYXlWYWx1ZX1cbiAgICAgIGRlbHRhVmFsdWU9e2Rpc3BsYXlEZWx0YVZhbHVlfVxuICAgICAgaXNDb21wYXJpbmc9e0Jvb2xlYW4ocHJpbWFyeURhdGEpfVxuICAgIC8+XG4gICk7XG59O1xuXG5jb25zdCBDZWxsSW5mbyA9ICh7XG4gIGZpZWxkc1RvU2hvdyxcbiAgZGF0YSxcbiAgbGF5ZXIsXG4gIHByaW1hcnlEYXRhLFxuICBjb21wYXJlVHlwZVxufToge1xuICBkYXRhOiBBZ2dyZWdhdGlvbkxheWVySG92ZXJEYXRhO1xuICBmaWVsZHNUb1Nob3c6IFRvb2x0aXBGaWVsZFtdO1xuICBsYXllcjogTGF5ZXI7XG4gIHByaW1hcnlEYXRhPzogQWdncmVnYXRpb25MYXllckhvdmVyRGF0YSB8IG51bGw7XG4gIGNvbXBhcmVUeXBlPzogQ29tcGFyZVR5cGU7XG59KSA9PiB7XG4gIGNvbnN0IHtjb2xvckZpZWxkLCBzaXplRmllbGR9ID0gbGF5ZXIuY29uZmlnIGFzIGFueTtcbiAgY29uc3QgaXNDb21wYXJpbmcgPSBCb29sZWFuKHByaW1hcnlEYXRhKTtcblxuICBjb25zdCBjb2xvclZhbHVlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGNvbG9yRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuY29sb3IpIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSBmaWVsZHNUb1Nob3cuZmluZChmaWVsZCA9PiBmaWVsZC5uYW1lID09PSBjb2xvckZpZWxkLm5hbWUpO1xuICAgICAgcmV0dXJuIGdldFRvb2x0aXBEaXNwbGF5VmFsdWUoe2l0ZW0sIGZpZWxkOiBjb2xvckZpZWxkLCB2YWx1ZTogZGF0YS5jb2xvclZhbHVlfSk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9LCBbZmllbGRzVG9TaG93LCBjb2xvckZpZWxkLCBsYXllciwgZGF0YS5jb2xvclZhbHVlXSk7XG5cbiAgY29uc3QgZWxldmF0aW9uVmFsdWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoc2l6ZUZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLnNpemUpIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSBmaWVsZHNUb1Nob3cuZmluZChmaWVsZCA9PiBmaWVsZC5uYW1lID09PSBzaXplRmllbGQubmFtZSk7XG4gICAgICByZXR1cm4gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQ6IHNpemVGaWVsZCwgdmFsdWU6IGRhdGEuZWxldmF0aW9uVmFsdWV9KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH0sIFtmaWVsZHNUb1Nob3csIHNpemVGaWVsZCwgbGF5ZXIsIGRhdGEuZWxldmF0aW9uVmFsdWVdKTtcblxuICBjb25zdCBjb2xvckRlbHRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKCFwcmltYXJ5RGF0YSB8fCAhY29sb3JGaWVsZCB8fCAhKCdjb2xvclZhbHVlJyBpbiBwcmltYXJ5RGF0YSkpIHJldHVybiBudWxsO1xuICAgIHJldHVybiBnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUoe1xuICAgICAgZmllbGQ6IGNvbG9yRmllbGQsXG4gICAgICB2YWx1ZTogZGF0YS5jb2xvclZhbHVlLFxuICAgICAgcHJpbWFyeVZhbHVlOiBwcmltYXJ5RGF0YS5jb2xvclZhbHVlLFxuICAgICAgY29tcGFyZVR5cGVcbiAgICB9KTtcbiAgfSwgW3ByaW1hcnlEYXRhLCBjb2xvckZpZWxkLCBkYXRhLmNvbG9yVmFsdWUsIGNvbXBhcmVUeXBlXSk7XG5cbiAgY29uc3QgZWxldmF0aW9uRGVsdGEgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXByaW1hcnlEYXRhIHx8ICFzaXplRmllbGQgfHwgISgnZWxldmF0aW9uVmFsdWUnIGluIHByaW1hcnlEYXRhKSkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIGdldFRvb2x0aXBEaXNwbGF5RGVsdGFWYWx1ZSh7XG4gICAgICBmaWVsZDogc2l6ZUZpZWxkLFxuICAgICAgdmFsdWU6IGRhdGEuZWxldmF0aW9uVmFsdWUsXG4gICAgICBwcmltYXJ5VmFsdWU6IHByaW1hcnlEYXRhLmVsZXZhdGlvblZhbHVlLFxuICAgICAgY29tcGFyZVR5cGVcbiAgICB9KTtcbiAgfSwgW3ByaW1hcnlEYXRhLCBzaXplRmllbGQsIGRhdGEuZWxldmF0aW9uVmFsdWUsIGNvbXBhcmVUeXBlXSk7XG5cbiAgY29uc3QgYWdncmVnYXRlZERhdGEgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZGF0YS5hZ2dyZWdhdGVkRGF0YSAmJiBmaWVsZHNUb1Nob3cpIHtcbiAgICAgIHJldHVybiBmaWVsZHNUb1Nob3cucmVkdWNlKFxuICAgICAgICAoYWNjLCBmaWVsZCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGFGb3JGaWVsZCA9IGRhdGEuYWdncmVnYXRlZERhdGE/LltmaWVsZC5uYW1lXTtcbiAgICAgICAgICBpZiAoZGF0YUZvckZpZWxkPy5tZWFzdXJlICYmIGZpZWxkLm5hbWUgIT09IGNvbG9yRmllbGQ/Lm5hbWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHByaW1hcnlEYXRhRm9yRmllbGQgPSBwcmltYXJ5RGF0YT8uYWdncmVnYXRlZERhdGE/LltmaWVsZC5uYW1lXTtcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhVmFsdWUgPSBwcmltYXJ5RGF0YUZvckZpZWxkXG4gICAgICAgICAgICAgID8gZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlKHtcbiAgICAgICAgICAgICAgICAgIGZpZWxkOiB7dHlwZTogJ3JlYWwnLCBuYW1lOiBmaWVsZC5uYW1lfSBhcyBGaWVsZCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBkYXRhRm9yRmllbGQudmFsdWUgIT0gbnVsbCA/IE51bWJlcihkYXRhRm9yRmllbGQudmFsdWUpIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgIHByaW1hcnlWYWx1ZTpcbiAgICAgICAgICAgICAgICAgICAgcHJpbWFyeURhdGFGb3JGaWVsZC52YWx1ZSAhPSBudWxsID8gTnVtYmVyKHByaW1hcnlEYXRhRm9yRmllbGQudmFsdWUpIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgIGNvbXBhcmVUeXBlXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgYWNjLnB1c2goe1xuICAgICAgICAgICAgICBuYW1lOiBgJHtjYXBpdGFsaXplRmlyc3RMZXR0ZXIoZGF0YUZvckZpZWxkLm1lYXN1cmUpfSBvZiAke2ZpZWxkLm5hbWV9YCxcbiAgICAgICAgICAgICAgdmFsdWU6IGRhdGFGb3JGaWVsZC52YWx1ZSxcbiAgICAgICAgICAgICAgZGVsdGFWYWx1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgIH0sXG4gICAgICAgIFtdIGFzIHtuYW1lOiBzdHJpbmc7IHZhbHVlPzogc3RyaW5nOyBkZWx0YVZhbHVlOiBzdHJpbmcgfCBudWxsfVtdXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH0sIFtkYXRhLmFnZ3JlZ2F0ZWREYXRhLCBmaWVsZHNUb1Nob3csIGNvbG9yRmllbGQ/Lm5hbWUsIHByaW1hcnlEYXRhLCBjb21wYXJlVHlwZV0pO1xuXG4gIGNvbnN0IGNvbG9yTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignY29sb3InKS5tZWFzdXJlO1xuICBjb25zdCBzaXplTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignc2l6ZScpLm1lYXN1cmU7XG4gIHJldHVybiAoXG4gICAgPHRib2R5PlxuICAgICAgPFJvd1xuICAgICAgICBuYW1lPXsndG90YWwgcG9pbnRzJ31cbiAgICAgICAga2V5PVwiY291bnRcIlxuICAgICAgICB2YWx1ZT17U3RyaW5nKGRhdGEucG9pbnRzICYmIGRhdGEucG9pbnRzLmxlbmd0aCl9XG4gICAgICAgIGlzQ29tcGFyaW5nPXtpc0NvbXBhcmluZ31cbiAgICAgIC8+XG4gICAgICB7Y29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvciAmJiBjb2xvck1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3dcbiAgICAgICAgICBuYW1lPXtjb2xvck1lYXN1cmV9XG4gICAgICAgICAga2V5PVwiY29sb3JcIlxuICAgICAgICAgIHZhbHVlPXtjb2xvclZhbHVlIHx8ICdOL0EnfVxuICAgICAgICAgIGRlbHRhVmFsdWU9e2NvbG9yRGVsdGF9XG4gICAgICAgICAgaXNDb21wYXJpbmc9e2lzQ29tcGFyaW5nfVxuICAgICAgICAvPlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7c2l6ZUZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLnNpemUgJiYgc2l6ZU1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3dcbiAgICAgICAgICBuYW1lPXtzaXplTWVhc3VyZX1cbiAgICAgICAgICBrZXk9XCJzaXplXCJcbiAgICAgICAgICB2YWx1ZT17ZWxldmF0aW9uVmFsdWUgfHwgJ04vQSd9XG4gICAgICAgICAgZGVsdGFWYWx1ZT17ZWxldmF0aW9uRGVsdGF9XG4gICAgICAgICAgaXNDb21wYXJpbmc9e2lzQ29tcGFyaW5nfVxuICAgICAgICAvPlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7YWdncmVnYXRlZERhdGEubWFwKChkYXRhRm9yRmllbGQsIGlkeCkgPT4gKFxuICAgICAgICA8Um93XG4gICAgICAgICAgbmFtZT17ZGF0YUZvckZpZWxkLm5hbWV9XG4gICAgICAgICAga2V5PXtgZGF0YV8ke2lkeH1gfVxuICAgICAgICAgIHZhbHVlPXtkYXRhRm9yRmllbGQudmFsdWUgIT0gbnVsbCA/IFN0cmluZyhkYXRhRm9yRmllbGQudmFsdWUpIDogJ04vQSd9XG4gICAgICAgICAgZGVsdGFWYWx1ZT17ZGF0YUZvckZpZWxkLmRlbHRhVmFsdWV9XG4gICAgICAgICAgaXNDb21wYXJpbmc9e2lzQ29tcGFyaW5nfVxuICAgICAgICAvPlxuICAgICAgKSl9XG4gICAgPC90Ym9keT5cbiAgKTtcbn07XG5cbmNvbnN0IExheWVySG92ZXJJbmZvRmFjdG9yeSA9ICgpID0+IHtcbiAgY29uc3QgTGF5ZXJIb3ZlckluZm8gPSBwcm9wcyA9PiB7XG4gICAgY29uc3Qge2RhdGEsIGxheWVyfSA9IHByb3BzO1xuICAgIGNvbnN0IGludGwgPSB1c2VJbnRsKCk7XG4gICAgaWYgKCFkYXRhIHx8ICFsYXllcikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgaGFzRmllbGRzVG9TaG93ID1cbiAgICAgIChkYXRhLmZpZWxkVmFsdWVzICYmIE9iamVjdC5rZXlzKGRhdGEuZmllbGRWYWx1ZXMpLmxlbmd0aCA+IDApIHx8XG4gICAgICAoZGF0YS53bXNGZWF0dXJlRGF0YSAmJiBkYXRhLndtc0ZlYXR1cmVEYXRhLmxlbmd0aCA+IDApIHx8XG4gICAgICAocHJvcHMuZmllbGRzVG9TaG93ICYmIHByb3BzLmZpZWxkc1RvU2hvdy5sZW5ndGggPiAwKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1hcC1wb3BvdmVyX19sYXllci1pbmZvXCI+XG4gICAgICAgIDxTdHlsZWRMYXllck5hbWUgY2xhc3NOYW1lPVwibWFwLXBvcG92ZXJfX2xheWVyLW5hbWVcIj5cbiAgICAgICAgICA8TGF5ZXJzIGhlaWdodD1cIjEycHhcIiAvPlxuICAgICAgICAgIHtwcm9wcy5sYXllci5jb25maWcubGFiZWx9XG4gICAgICAgIDwvU3R5bGVkTGF5ZXJOYW1lPlxuICAgICAgICB7aGFzRmllbGRzVG9TaG93ICYmIDxTdHlsZWREaXZpZGVyIC8+fVxuICAgICAgICA8U3R5bGVkVGFibGUgY2xhc3NOYW1lPXtwcm9wcy5wcmltYXJ5RGF0YSA/ICdjb21wYXJpbmcnIDogdW5kZWZpbmVkfT5cbiAgICAgICAgICB7ZGF0YS53bXNGZWF0dXJlRGF0YSA/IChcbiAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAge2RhdGEud21zRmVhdHVyZURhdGEubWFwKCh7bmFtZSwgdmFsdWV9LCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgPFJvdyBrZXk9e2l9IG5hbWU9e25hbWV9IHZhbHVlPXt2YWx1ZX0gLz5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICkgOiBkYXRhLmZpZWxkVmFsdWVzID8gKFxuICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICB7ZGF0YS5maWVsZFZhbHVlcy5tYXAoKHtsYWJlbE1lc3NhZ2UsIHZhbHVlfSwgaSkgPT4gKFxuICAgICAgICAgICAgICAgIDxSb3cga2V5PXtpfSBuYW1lPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiBsYWJlbE1lc3NhZ2V9KX0gdmFsdWU9e3ZhbHVlfSAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgKSA6IHByb3BzLmxheWVyLmlzQWdncmVnYXRlZCA/IChcbiAgICAgICAgICAgIDxDZWxsSW5mbyB7Li4ucHJvcHN9IC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxFbnRyeUluZm8gey4uLnByb3BzfSAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgIHtoYXNGaWVsZHNUb1Nob3cgJiYgPFN0eWxlZERpdmlkZXIgLz59XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9O1xuXG4gIExheWVySG92ZXJJbmZvLnByb3BUeXBlcyA9IHtcbiAgICBmaWVsZHM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpLFxuICAgIGZpZWxkc1RvU2hvdzogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgbGF5ZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgZGF0YTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksIFByb3BUeXBlcy5vYmplY3RdKVxuICB9O1xuICByZXR1cm4gTGF5ZXJIb3ZlckluZm87XG59O1xuXG5leHBvcnQgZGVmYXVsdCBMYXllckhvdmVySW5mb0ZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxTQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBSSxrQkFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sVUFBQSxHQUFBSixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU8sWUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBRUEsSUFBQVMsU0FBQSxHQUFBVCxPQUFBO0FBTUEsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBQW1DLElBQUFXLFNBQUE7QUFBQSxJQUFBQyxlQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBbkJuQztBQUNBO0FBQUEsU0FBQWYsd0JBQUFnQixDQUFBLEVBQUFDLENBQUEsNkJBQUFDLE9BQUEsTUFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBbEIsdUJBQUEsWUFBQUEsd0JBQUFnQixDQUFBLEVBQUFDLENBQUEsU0FBQUEsQ0FBQSxJQUFBRCxDQUFBLElBQUFBLENBQUEsQ0FBQUssVUFBQSxTQUFBTCxDQUFBLE1BQUFNLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLEtBQUFDLFNBQUEsbUJBQUFULENBQUEsaUJBQUFBLENBQUEsZ0JBQUFVLFFBQUEsQ0FBQVYsQ0FBQSwwQkFBQUEsQ0FBQSxTQUFBUSxDQUFBLE1BQUFGLENBQUEsR0FBQUwsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsUUFBQUcsQ0FBQSxDQUFBSyxHQUFBLENBQUFYLENBQUEsVUFBQU0sQ0FB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
|
|
318
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdHJ1bmNhdGUiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfaWNvbnMiLCJfcHJvcFR5cGVzIiwiX2NvbW1vblV0aWxzIiwiX3V0aWxzIiwiX3JlZHVjZXJzIiwiX3JlYWN0SW50bCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZjMiLCJoYXMiLCJnZXQiLCJzZXQiLCJfdCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiU3R5bGVkTGF5ZXJOYW1lIiwiZXhwb3J0cyIsInN0eWxlZCIsIkNlbnRlckZsZXhib3giLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JIbCIsIlN0eWxlZFRhYmxlIiwidGFibGUiLCJub3RpZmljYXRpb25Db2xvcnMiLCJzdWNjZXNzIiwibmVnYXRpdmVCdG5BY3RCZ2QiLCJTdHlsZWREaXZpZGVyIiwiZGl2IiwicGFuZWxCb3JkZXJDb2xvciIsIlRPT0xUSVBfVkFMVUVfTUFYX0xFTkdUSCIsIlRvb2x0aXBJbWFnZSIsIl9yZWYiLCJzcmMiLCJpbWdSZWYiLCJ1c2VSZWYiLCJ1c2VFZmZlY3QiLCJzdGFydHNXaXRoIiwiVVJMIiwicmV2b2tlT2JqZWN0VVJMIiwiY3VycmVudCIsImNyZWF0ZUVsZW1lbnQiLCJyZWYiLCJSb3ciLCJfcmVmMiIsIm5hbWUiLCJ2YWx1ZSIsImRlbHRhVmFsdWUiLCJ1cmwiLCJpc0NvbXBhcmluZyIsIm1hdGNoIiwiZGlzcGxheVZhbHVlIiwibGVuZ3RoIiwidHJ1bmNhdGUiLCJhc0ltZyIsInRlc3QiLCJjbGFzc05hbWUiLCJrZXkiLCJyZXBsYWNlIiwidGFyZ2V0IiwicmVsIiwiaHJlZiIsImNvbmNhdCIsIm5vdE51bGxvclVuZGVmaW5lZCIsInRvU3RyaW5nIiwiY2hhckF0IiwiRW50cnlJbmZvIiwiX3JlZjMiLCJmaWVsZHNUb1Nob3ciLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwibWFwIiwiaXRlbSIsIkVudHJ5SW5mb1JvdyIsIl9leHRlbmRzMiIsIl9yZWY0IiwibGF5ZXIiLCJmaWVsZHMiLCJkYXRhIiwicHJpbWFyeURhdGEiLCJjb21wYXJlVHlwZSIsImN1cnJlbnRUaW1lIiwiZmllbGRJZHgiLCJmaW5kSW5kZXgiLCJmaWVsZCIsImZpZWxkVmFsdWVBY2Nlc3NvciIsImFjY2Vzc1ZTRmllbGRWYWx1ZSIsIkRhdGFSb3ciLCJpbmRleCIsIl9yb3dJbmRleCIsInByaW1hcnlWYWx1ZSIsImRpc3BsYXlEZWx0YVZhbHVlIiwiQXJyYXkiLCJpc0FycmF5IiwiX3R5cGVvZjIiLCJnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUiLCJlcnJvciIsImdldFRvb2x0aXBEaXNwbGF5VmFsdWUiLCJkaXNwbGF5TmFtZSIsIkJvb2xlYW4iLCJDZWxsSW5mbyIsIl9yZWY1IiwiX3JlZjYiLCJjb25maWciLCJjb2xvckZpZWxkIiwic2l6ZUZpZWxkIiwiY29sb3JWYWx1ZSIsInVzZU1lbW8iLCJ2aXN1YWxDaGFubmVscyIsImNvbG9yIiwiZmluZCIsImVsZXZhdGlvblZhbHVlIiwic2l6ZSIsImNvbG9yRGVsdGEiLCJlbGV2YXRpb25EZWx0YSIsImFnZ3JlZ2F0ZWREYXRhIiwicmVkdWNlIiwiYWNjIiwiX2RhdGEkYWdncmVnYXRlZERhdGEiLCJkYXRhRm9yRmllbGQiLCJtZWFzdXJlIiwiX3ByaW1hcnlEYXRhJGFnZ3JlZ2F0IiwicHJpbWFyeURhdGFGb3JGaWVsZCIsInR5cGUiLCJOdW1iZXIiLCJwdXNoIiwiY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIiwiY29sb3JNZWFzdXJlIiwiZ2V0VmlzdWFsQ2hhbm5lbERlc2NyaXB0aW9uIiwic2l6ZU1lYXN1cmUiLCJTdHJpbmciLCJwb2ludHMiLCJpZHgiLCJMYXllckhvdmVySW5mb0ZhY3RvcnkiLCJMYXllckhvdmVySW5mbyIsImludGwiLCJ1c2VJbnRsIiwiaGFzRmllbGRzVG9TaG93IiwiZmllbGRWYWx1ZXMiLCJrZXlzIiwid21zRmVhdHVyZURhdGEiLCJMYXllcnMiLCJoZWlnaHQiLCJsYWJlbCIsInVuZGVmaW5lZCIsIl9yZWY3IiwiX3JlZjgiLCJsYWJlbE1lc3NhZ2UiLCJmb3JtYXRNZXNzYWdlIiwiaWQiLCJpc0FnZ3JlZ2F0ZWQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwiYW55Iiwib2JqZWN0Iiwib25lT2ZUeXBlIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWFwL2xheWVyLWhvdmVyLWluZm8udHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUVmZmVjdCwgdXNlUmVmLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB0cnVuY2F0ZSBmcm9tICdlcy10b29sa2l0L2NvbXBhdC90cnVuY2F0ZSc7XG5pbXBvcnQge0NvbXBhcmVUeXBlLCBGaWVsZCwgTWVyZ2UsIFRvb2x0aXBGaWVsZH0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0NlbnRlckZsZXhib3h9IGZyb20gJy4uL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0xheWVyc30gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQge25vdE51bGxvclVuZGVmaW5lZH0gZnJvbSAnQGtlcGxlci5nbC9jb21tb24tdXRpbHMnO1xuaW1wb3J0IHtEYXRhUm93fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uTGF5ZXJIb3ZlckRhdGEsXG4gIExheWVySG92ZXJQcm9wLFxuICBnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUsXG4gIGdldFRvb2x0aXBEaXNwbGF5VmFsdWVcbn0gZnJvbSAnQGtlcGxlci5nbC9yZWR1Y2Vycyc7XG5pbXBvcnQge3VzZUludGx9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtWaXNTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC9zY2hlbWFzJztcbmltcG9ydCB7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFN0eWxlZExheWVyTmFtZSA9IHN0eWxlZChDZW50ZXJGbGV4Ym94KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZFRhYmxlID0gc3R5bGVkLnRhYmxlYFxuICAmIC5yb3dfX2RlbHRhLXZhbHVlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogNnB4O1xuXG4gICAgJi5wb3NpdGl2ZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ub3RpZmljYXRpb25Db2xvcnMuc3VjY2Vzc307XG4gICAgfVxuXG4gICAgJi5uZWdhdGl2ZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkFjdEJnZH07XG4gICAgfVxuICB9XG4gICYgLnJvd19fbmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gICYgLnJvd19fdmFsdWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IHByZS1saW5lO1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZERpdmlkZXIgPSBzdHlsZWQuZGl2YFxuICAvLyBvZmZzZXQgZGl2aWRlciB0byByZWFjaCBwb3BvdmVyIGVkZ2VcbiAgbWFyZ2luLWxlZnQ6IC0xNHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJvcmRlckNvbG9yfTtcbmA7XG5cbmludGVyZmFjZSBSb3dQcm9wcyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbiAgZGVsdGFWYWx1ZT86IHN0cmluZyB8IG51bGw7XG4gIHVybD86IHN0cmluZztcbiAgaXNDb21wYXJpbmc/OiBib29sZWFuO1xufVxuXG5jb25zdCBUT09MVElQX1ZBTFVFX01BWF9MRU5HVEggPSAyNTY7XG5cbi8qKlxuICogSW1hZ2UgY29tcG9uZW50IHRoYXQgY2xlYW5zIHVwIHJlc291cmNlcyBvbiB1bm1vdW50IHRvIHByZXZlbnQgbWVtb3J5IGxlYWtzLlxuICogUmV2b2tlcyBibG9iL29iamVjdCBVUkxzIGFuZCBjbGVhcnMgdGhlIGltYWdlIHNyYyB0byByZWxlYXNlIG1lbW9yeS5cbiAqL1xuY29uc3QgVG9vbHRpcEltYWdlOiBSZWFjdC5GQzx7c3JjOiBzdHJpbmd9PiA9ICh7c3JjfSkgPT4ge1xuICBjb25zdCBpbWdSZWYgPSB1c2VSZWY8SFRNTEltYWdlRWxlbWVudD4obnVsbCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgLy8gUmV2b2tlIGJsb2IgVVJMcyB0byBmcmVlIG1lbW9yeVxuICAgICAgaWYgKHNyYyAmJiAoc3JjLnN0YXJ0c1dpdGgoJ2Jsb2I6JykgfHwgc3JjLnN0YXJ0c1dpdGgoJ2RhdGE6JykpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChzcmMpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gaWdub3JlIGVycm9ycyBmcm9tIG5vbi1vYmplY3QgVVJMc1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBDbGVhciB0aGUgaW1hZ2Ugc3JjIHRvIHJlbGVhc2UgdGhlIGRlY29kZWQgaW1hZ2UgZnJvbSBtZW1vcnlcbiAgICAgIGlmIChpbWdSZWYuY3VycmVudCkge1xuICAgICAgICBpbWdSZWYuY3VycmVudC5zcmMgPSAnJztcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbc3JjXSk7XG5cbiAgcmV0dXJuIDxpbWcgcmVmPXtpbWdSZWZ9IHNyYz17c3JjfSAvPjtcbn07XG5cbmNvbnN0IFJvdzogUmVhY3QuRkM8Um93UHJvcHM+ID0gKHtuYW1lLCB2YWx1ZSwgZGVsdGFWYWx1ZSwgdXJsLCBpc0NvbXBhcmluZ30pID0+IHtcbiAgLy8gU2V0ICd1cmwnIHRvICd2YWx1ZScgaWYgaXQgbG9va3MgbGlrZSBhIHVybFxuICBpZiAoIXVybCAmJiB2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLm1hdGNoKC9eaHR0cC8pKSB7XG4gICAgdXJsID0gdmFsdWU7XG4gIH1cblxuICBjb25zdCBkaXNwbGF5VmFsdWUgPVxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUubGVuZ3RoID4gVE9PTFRJUF9WQUxVRV9NQVhfTEVOR1RIXG4gICAgICA/IHRydW5jYXRlKHZhbHVlLCB7bGVuZ3RoOiBUT09MVElQX1ZBTFVFX01BWF9MRU5HVEh9KVxuICAgICAgOiB2YWx1ZTtcblxuICBjb25zdCBhc0ltZyA9IC88aW1nPi8udGVzdChuYW1lKTtcbiAgcmV0dXJuIChcbiAgICA8dHIgY2xhc3NOYW1lPVwibGF5ZXItaG92ZXItaW5mb19fcm93XCIga2V5PXtuYW1lfT5cbiAgICAgIDx0ZCBjbGFzc05hbWU9XCJyb3dfX25hbWVcIj57YXNJbWcgPyBuYW1lLnJlcGxhY2UoJzxpbWc+JywgJycpIDogbmFtZX08L3RkPlxuICAgICAgPHRkIGNsYXNzTmFtZT1cInJvd19fdmFsdWVcIj5cbiAgICAgICAge2FzSW1nID8gKFxuICAgICAgICAgIDxUb29sdGlwSW1hZ2Ugc3JjPXt2YWx1ZX0gLz5cbiAgICAgICAgKSA6IHVybCA/IChcbiAgICAgICAgICA8YSB0YXJnZXQ9XCJfYmxhbmtcIiByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIHtkaXNwbGF5VmFsdWV9XG4gICAgICAgICAgPC9hPlxuICAgICAgICApIDogKFxuICAgICAgICAgIDxzcGFuPntkaXNwbGF5VmFsdWV9PC9zcGFuPlxuICAgICAgICApfVxuICAgICAgPC90ZD5cbiAgICAgIHtpc0NvbXBhcmluZyA/IChcbiAgICAgICAgPHRkXG4gICAgICAgICAgY2xhc3NOYW1lPXtgcm93X19kZWx0YS12YWx1ZSAke1xuICAgICAgICAgICAgbm90TnVsbG9yVW5kZWZpbmVkKGRlbHRhVmFsdWUpXG4gICAgICAgICAgICAgID8gZGVsdGFWYWx1ZT8udG9TdHJpbmcoKS5jaGFyQXQoMCkgPT09ICcrJ1xuICAgICAgICAgICAgICAgID8gJ3Bvc2l0aXZlJ1xuICAgICAgICAgICAgICAgIDogJ25lZ2F0aXZlJ1xuICAgICAgICAgICAgICA6ICcnXG4gICAgICAgICAgfWB9XG4gICAgICAgID5cbiAgICAgICAgICB7ZGVsdGFWYWx1ZSA/PyAnJ31cbiAgICAgICAgPC90ZD5cbiAgICAgICkgOiBudWxsfVxuICAgIDwvdHI+XG4gICk7XG59O1xuXG5leHBvcnQgdHlwZSBFbnRyeUluZm9Qcm9wcyA9IE1lcmdlPExheWVySG92ZXJQcm9wLCB7ZmllbGRzVG9TaG93OiBUb29sdGlwRmllbGRbXX0+O1xuXG5jb25zdCBFbnRyeUluZm86IFJlYWN0LkZDPEVudHJ5SW5mb1Byb3BzPiA9ICh7ZmllbGRzVG9TaG93LCAuLi5wcm9wc30pID0+IChcbiAgPHRib2R5PlxuICAgIHtmaWVsZHNUb1Nob3cubWFwKGl0ZW0gPT4gKFxuICAgICAgPEVudHJ5SW5mb1JvdyBrZXk9e2l0ZW0ubmFtZX0gaXRlbT17aXRlbX0gey4uLnByb3BzfSAvPlxuICAgICkpfVxuICA8L3Rib2R5PlxuKTtcblxuZXhwb3J0IHR5cGUgRW50cnlJbmZvUm93UHJvcHMgPSB7XG4gIGRhdGE6IExheWVySG92ZXJQcm9wWydkYXRhJ107XG4gIGZpZWxkczogRmllbGRbXTtcbiAgbGF5ZXI6IExheWVyO1xuICBwcmltYXJ5RGF0YT86IExheWVySG92ZXJQcm9wWydwcmltYXJ5RGF0YSddO1xuICBjb21wYXJlVHlwZT86IENvbXBhcmVUeXBlO1xuICBjdXJyZW50VGltZT86IFZpc1N0YXRlWydhbmltYXRpb25Db25maWcnXVsnY3VycmVudFRpbWUnXTtcbiAgaXRlbTogVG9vbHRpcEZpZWxkO1xufTtcblxuY29uc3QgRW50cnlJbmZvUm93OiBSZWFjdC5GQzxFbnRyeUluZm9Sb3dQcm9wcz4gPSAoe1xuICBsYXllcixcbiAgaXRlbSxcbiAgZmllbGRzLFxuICBkYXRhLFxuICBwcmltYXJ5RGF0YSxcbiAgY29tcGFyZVR5cGUsXG4gIGN1cnJlbnRUaW1lXG59KSA9PiB7XG4gIGNvbnN0IGZpZWxkSWR4ID0gZmllbGRzLmZpbmRJbmRleChmID0+IGYubmFtZSA9PT0gaXRlbS5uYW1lKTtcbiAgaWYgKGZpZWxkSWR4IDwgMCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IGZpZWxkID0gZmllbGRzW2ZpZWxkSWR4XTtcbiAgY29uc3QgZmllbGRWYWx1ZUFjY2Vzc29yID0gbGF5ZXIuYWNjZXNzVlNGaWVsZFZhbHVlKGZpZWxkLCBjdXJyZW50VGltZSk7XG4gIGNvbnN0IHZhbHVlID0gZmllbGRWYWx1ZUFjY2Vzc29yKGZpZWxkLCBkYXRhIGluc3RhbmNlb2YgRGF0YVJvdyA/IHtpbmRleDogZGF0YS5fcm93SW5kZXh9IDogZGF0YSk7XG5cbiAgbGV0IHByaW1hcnlWYWx1ZSA9IG51bGw7XG4gIGxldCBkaXNwbGF5RGVsdGFWYWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgaWYgKHByaW1hcnlEYXRhKSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChwcmltYXJ5RGF0YSBpbnN0YW5jZW9mIERhdGFSb3cpIHtcbiAgICAgICAgcHJpbWFyeVZhbHVlID0gZmllbGRWYWx1ZUFjY2Vzc29yKGZpZWxkLCB7aW5kZXg6IHByaW1hcnlEYXRhLl9yb3dJbmRleH0pO1xuICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHByaW1hcnlEYXRhKSB8fCAodHlwZW9mIHByaW1hcnlEYXRhID09PSAnb2JqZWN0JyAmJiBwcmltYXJ5RGF0YSkpIHtcbiAgICAgICAgcHJpbWFyeVZhbHVlID0gZmllbGRWYWx1ZUFjY2Vzc29yKGZpZWxkLCBwcmltYXJ5RGF0YSk7XG4gICAgICB9XG5cbiAgICAgIGRpc3BsYXlEZWx0YVZhbHVlID0gZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlKHtcbiAgICAgICAgZmllbGQsXG4gICAgICAgIHZhbHVlLFxuICAgICAgICBwcmltYXJ5VmFsdWUsXG4gICAgICAgIGNvbXBhcmVUeXBlXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgcHJpbWFyeVZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkaXNwbGF5VmFsdWUgPSBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZCwgdmFsdWV9KTtcblxuICByZXR1cm4gKFxuICAgIDxSb3dcbiAgICAgIG5hbWU9e2ZpZWxkLmRpc3BsYXlOYW1lIHx8IGZpZWxkLm5hbWV9XG4gICAgICB2YWx1ZT17ZGlzcGxheVZhbHVlfVxuICAgICAgZGVsdGFWYWx1ZT17ZGlzcGxheURlbHRhVmFsdWV9XG4gICAgICBpc0NvbXBhcmluZz17Qm9vbGVhbihwcmltYXJ5RGF0YSl9XG4gICAgLz5cbiAgKTtcbn07XG5cbmNvbnN0IENlbGxJbmZvID0gKHtcbiAgZmllbGRzVG9TaG93LFxuICBkYXRhLFxuICBsYXllcixcbiAgcHJpbWFyeURhdGEsXG4gIGNvbXBhcmVUeXBlXG59OiB7XG4gIGRhdGE6IEFnZ3JlZ2F0aW9uTGF5ZXJIb3ZlckRhdGE7XG4gIGZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbiAgcHJpbWFyeURhdGE/OiBBZ2dyZWdhdGlvbkxheWVySG92ZXJEYXRhIHwgbnVsbDtcbiAgY29tcGFyZVR5cGU/OiBDb21wYXJlVHlwZTtcbn0pID0+IHtcbiAgY29uc3Qge2NvbG9yRmllbGQsIHNpemVGaWVsZH0gPSBsYXllci5jb25maWcgYXMgYW55O1xuICBjb25zdCBpc0NvbXBhcmluZyA9IEJvb2xlYW4ocHJpbWFyeURhdGEpO1xuXG4gIGNvbnN0IGNvbG9yVmFsdWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoY29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvcikge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IGNvbG9yRmllbGQubmFtZSk7XG4gICAgICByZXR1cm4gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQ6IGNvbG9yRmllbGQsIHZhbHVlOiBkYXRhLmNvbG9yVmFsdWV9KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH0sIFtmaWVsZHNUb1Nob3csIGNvbG9yRmllbGQsIGxheWVyLCBkYXRhLmNvbG9yVmFsdWVdKTtcblxuICBjb25zdCBlbGV2YXRpb25WYWx1ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChzaXplRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuc2l6ZSkge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IHNpemVGaWVsZC5uYW1lKTtcbiAgICAgIHJldHVybiBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZDogc2l6ZUZpZWxkLCB2YWx1ZTogZGF0YS5lbGV2YXRpb25WYWx1ZX0pO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfSwgW2ZpZWxkc1RvU2hvdywgc2l6ZUZpZWxkLCBsYXllciwgZGF0YS5lbGV2YXRpb25WYWx1ZV0pO1xuXG4gIGNvbnN0IGNvbG9yRGVsdGEgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIXByaW1hcnlEYXRhIHx8ICFjb2xvckZpZWxkIHx8ICEoJ2NvbG9yVmFsdWUnIGluIHByaW1hcnlEYXRhKSkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIGdldFRvb2x0aXBEaXNwbGF5RGVsdGFWYWx1ZSh7XG4gICAgICBmaWVsZDogY29sb3JGaWVsZCxcbiAgICAgIHZhbHVlOiBkYXRhLmNvbG9yVmFsdWUsXG4gICAgICBwcmltYXJ5VmFsdWU6IHByaW1hcnlEYXRhLmNvbG9yVmFsdWUsXG4gICAgICBjb21wYXJlVHlwZVxuICAgIH0pO1xuICB9LCBbcHJpbWFyeURhdGEsIGNvbG9yRmllbGQsIGRhdGEuY29sb3JWYWx1ZSwgY29tcGFyZVR5cGVdKTtcblxuICBjb25zdCBlbGV2YXRpb25EZWx0YSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghcHJpbWFyeURhdGEgfHwgIXNpemVGaWVsZCB8fCAhKCdlbGV2YXRpb25WYWx1ZScgaW4gcHJpbWFyeURhdGEpKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlKHtcbiAgICAgIGZpZWxkOiBzaXplRmllbGQsXG4gICAgICB2YWx1ZTogZGF0YS5lbGV2YXRpb25WYWx1ZSxcbiAgICAgIHByaW1hcnlWYWx1ZTogcHJpbWFyeURhdGEuZWxldmF0aW9uVmFsdWUsXG4gICAgICBjb21wYXJlVHlwZVxuICAgIH0pO1xuICB9LCBbcHJpbWFyeURhdGEsIHNpemVGaWVsZCwgZGF0YS5lbGV2YXRpb25WYWx1ZSwgY29tcGFyZVR5cGVdKTtcblxuICBjb25zdCBhZ2dyZWdhdGVkRGF0YSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChkYXRhLmFnZ3JlZ2F0ZWREYXRhICYmIGZpZWxkc1RvU2hvdykge1xuICAgICAgcmV0dXJuIGZpZWxkc1RvU2hvdy5yZWR1Y2UoXG4gICAgICAgIChhY2MsIGZpZWxkKSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YUZvckZpZWxkID0gZGF0YS5hZ2dyZWdhdGVkRGF0YT8uW2ZpZWxkLm5hbWVdO1xuICAgICAgICAgIGlmIChkYXRhRm9yRmllbGQ/Lm1lYXN1cmUgJiYgZmllbGQubmFtZSAhPT0gY29sb3JGaWVsZD8ubmFtZSkge1xuICAgICAgICAgICAgY29uc3QgcHJpbWFyeURhdGFGb3JGaWVsZCA9IHByaW1hcnlEYXRhPy5hZ2dyZWdhdGVkRGF0YT8uW2ZpZWxkLm5hbWVdO1xuICAgICAgICAgICAgY29uc3QgZGVsdGFWYWx1ZSA9IHByaW1hcnlEYXRhRm9yRmllbGRcbiAgICAgICAgICAgICAgPyBnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUoe1xuICAgICAgICAgICAgICAgICAgZmllbGQ6IHt0eXBlOiAncmVhbCcsIG5hbWU6IGZpZWxkLm5hbWV9IGFzIEZpZWxkLFxuICAgICAgICAgICAgICAgICAgdmFsdWU6IGRhdGFGb3JGaWVsZC52YWx1ZSAhPSBudWxsID8gTnVtYmVyKGRhdGFGb3JGaWVsZC52YWx1ZSkgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgcHJpbWFyeVZhbHVlOlxuICAgICAgICAgICAgICAgICAgICBwcmltYXJ5RGF0YUZvckZpZWxkLnZhbHVlICE9IG51bGwgPyBOdW1iZXIocHJpbWFyeURhdGFGb3JGaWVsZC52YWx1ZSkgOiBudWxsLFxuICAgICAgICAgICAgICAgICAgY29tcGFyZVR5cGVcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICAgIG5hbWU6IGAke2NhcGl0YWxpemVGaXJzdExldHRlcihkYXRhRm9yRmllbGQubWVhc3VyZSl9IG9mICR7ZmllbGQubmFtZX1gLFxuICAgICAgICAgICAgICB2YWx1ZTogZGF0YUZvckZpZWxkLnZhbHVlLFxuICAgICAgICAgICAgICBkZWx0YVZhbHVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSxcbiAgICAgICAgW10gYXMge25hbWU6IHN0cmluZzsgdmFsdWU/OiBzdHJpbmc7IGRlbHRhVmFsdWU6IHN0cmluZyB8IG51bGx9W11cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfSwgW2RhdGEuYWdncmVnYXRlZERhdGEsIGZpZWxkc1RvU2hvdywgY29sb3JGaWVsZD8ubmFtZSwgcHJpbWFyeURhdGEsIGNvbXBhcmVUeXBlXSk7XG5cbiAgY29uc3QgY29sb3JNZWFzdXJlID0gbGF5ZXIuZ2V0VmlzdWFsQ2hhbm5lbERlc2NyaXB0aW9uKCdjb2xvcicpLm1lYXN1cmU7XG4gIGNvbnN0IHNpemVNZWFzdXJlID0gbGF5ZXIuZ2V0VmlzdWFsQ2hhbm5lbERlc2NyaXB0aW9uKCdzaXplJykubWVhc3VyZTtcbiAgcmV0dXJuIChcbiAgICA8dGJvZHk+XG4gICAgICA8Um93XG4gICAgICAgIG5hbWU9eyd0b3RhbCBwb2ludHMnfVxuICAgICAgICBrZXk9XCJjb3VudFwiXG4gICAgICAgIHZhbHVlPXtTdHJpbmcoZGF0YS5wb2ludHMgJiYgZGF0YS5wb2ludHMubGVuZ3RoKX1cbiAgICAgICAgaXNDb21wYXJpbmc9e2lzQ29tcGFyaW5nfVxuICAgICAgLz5cbiAgICAgIHtjb2xvckZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLmNvbG9yICYmIGNvbG9yTWVhc3VyZSA/IChcbiAgICAgICAgPFJvd1xuICAgICAgICAgIG5hbWU9e2NvbG9yTWVhc3VyZX1cbiAgICAgICAgICBrZXk9XCJjb2xvclwiXG4gICAgICAgICAgdmFsdWU9e2NvbG9yVmFsdWUgfHwgJ04vQSd9XG4gICAgICAgICAgZGVsdGFWYWx1ZT17Y29sb3JEZWx0YX1cbiAgICAgICAgICBpc0NvbXBhcmluZz17aXNDb21wYXJpbmd9XG4gICAgICAgIC8+XG4gICAgICApIDogbnVsbH1cbiAgICAgIHtzaXplRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuc2l6ZSAmJiBzaXplTWVhc3VyZSA/IChcbiAgICAgICAgPFJvd1xuICAgICAgICAgIG5hbWU9e3NpemVNZWFzdXJlfVxuICAgICAgICAgIGtleT1cInNpemVcIlxuICAgICAgICAgIHZhbHVlPXtlbGV2YXRpb25WYWx1ZSB8fCAnTi9BJ31cbiAgICAgICAgICBkZWx0YVZhbHVlPXtlbGV2YXRpb25EZWx0YX1cbiAgICAgICAgICBpc0NvbXBhcmluZz17aXNDb21wYXJpbmd9XG4gICAgICAgIC8+XG4gICAgICApIDogbnVsbH1cbiAgICAgIHthZ2dyZWdhdGVkRGF0YS5tYXAoKGRhdGFGb3JGaWVsZCwgaWR4KSA9PiAoXG4gICAgICAgIDxSb3dcbiAgICAgICAgICBuYW1lPXtkYXRhRm9yRmllbGQubmFtZX1cbiAgICAgICAgICBrZXk9e2BkYXRhXyR7aWR4fWB9XG4gICAgICAgICAgdmFsdWU9e2RhdGFGb3JGaWVsZC52YWx1ZSAhPSBudWxsID8gU3RyaW5nKGRhdGFGb3JGaWVsZC52YWx1ZSkgOiAnTi9BJ31cbiAgICAgICAgICBkZWx0YVZhbHVlPXtkYXRhRm9yRmllbGQuZGVsdGFWYWx1ZX1cbiAgICAgICAgICBpc0NvbXBhcmluZz17aXNDb21wYXJpbmd9XG4gICAgICAgIC8+XG4gICAgICApKX1cbiAgICA8L3Rib2R5PlxuICApO1xufTtcblxuY29uc3QgTGF5ZXJIb3ZlckluZm9GYWN0b3J5ID0gKCkgPT4ge1xuICBjb25zdCBMYXllckhvdmVySW5mbyA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7ZGF0YSwgbGF5ZXJ9ID0gcHJvcHM7XG4gICAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgICBpZiAoIWRhdGEgfHwgIWxheWVyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBoYXNGaWVsZHNUb1Nob3cgPVxuICAgICAgKGRhdGEuZmllbGRWYWx1ZXMgJiYgT2JqZWN0LmtleXMoZGF0YS5maWVsZFZhbHVlcykubGVuZ3RoID4gMCkgfHxcbiAgICAgIChkYXRhLndtc0ZlYXR1cmVEYXRhICYmIGRhdGEud21zRmVhdHVyZURhdGEubGVuZ3RoID4gMCkgfHxcbiAgICAgIChwcm9wcy5maWVsZHNUb1Nob3cgJiYgcHJvcHMuZmllbGRzVG9TaG93Lmxlbmd0aCA+IDApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWFwLXBvcG92ZXJfX2xheWVyLWluZm9cIj5cbiAgICAgICAgPFN0eWxlZExheWVyTmFtZSBjbGFzc05hbWU9XCJtYXAtcG9wb3Zlcl9fbGF5ZXItbmFtZVwiPlxuICAgICAgICAgIDxMYXllcnMgaGVpZ2h0PVwiMTJweFwiIC8+XG4gICAgICAgICAge3Byb3BzLmxheWVyLmNvbmZpZy5sYWJlbH1cbiAgICAgICAgPC9TdHlsZWRMYXllck5hbWU+XG4gICAgICAgIHtoYXNGaWVsZHNUb1Nob3cgJiYgPFN0eWxlZERpdmlkZXIgLz59XG4gICAgICAgIDxTdHlsZWRUYWJsZSBjbGFzc05hbWU9e3Byb3BzLnByaW1hcnlEYXRhID8gJ2NvbXBhcmluZycgOiB1bmRlZmluZWR9PlxuICAgICAgICAgIHtkYXRhLndtc0ZlYXR1cmVEYXRhID8gKFxuICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICB7ZGF0YS53bXNGZWF0dXJlRGF0YS5tYXAoKHtuYW1lLCB2YWx1ZX0sIGkpID0+IChcbiAgICAgICAgICAgICAgICA8Um93IGtleT17aX0gbmFtZT17bmFtZX0gdmFsdWU9e3ZhbHVlfSAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgKSA6IGRhdGEuZmllbGRWYWx1ZXMgPyAoXG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgIHtkYXRhLmZpZWxkVmFsdWVzLm1hcCgoe2xhYmVsTWVzc2FnZSwgdmFsdWV9LCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgPFJvdyBrZXk9e2l9IG5hbWU9e2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6IGxhYmVsTWVzc2FnZX0pfSB2YWx1ZT17dmFsdWV9IC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICApIDogcHJvcHMubGF5ZXIuaXNBZ2dyZWdhdGVkID8gKFxuICAgICAgICAgICAgPENlbGxJbmZvIHsuLi5wcm9wc30gLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPEVudHJ5SW5mbyB7Li4ucHJvcHN9IC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgICAge2hhc0ZpZWxkc1RvU2hvdyAmJiA8U3R5bGVkRGl2aWRlciAvPn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgTGF5ZXJIb3ZlckluZm8ucHJvcFR5cGVzID0ge1xuICAgIGZpZWxkczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgZmllbGRzVG9TaG93OiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBsYXllcjogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBkYXRhOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSwgUHJvcFR5cGVzLm9iamVjdF0pXG4gIH07XG4gIHJldHVybiBMYXllckhvdmVySW5mbztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExheWVySG92ZXJJbmZvRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFJLGtCQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxVQUFBLEdBQUFKLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBTyxZQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxNQUFBLEdBQUFSLE9BQUE7QUFFQSxJQUFBUyxTQUFBLEdBQUFULE9BQUE7QUFNQSxJQUFBVSxVQUFBLEdBQUFWLE9BQUE7QUFBbUMsSUFBQVcsU0FBQTtBQUFBLElBQUFDLGVBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFuQm5DO0FBQ0E7QUFBQSxTQUFBZix3QkFBQWdCLENBQUEsRUFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFsQix1QkFBQSxZQUFBQSx3QkFBQWdCLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFELENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsTUFBQU0sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxtQkFBQVQsQ0FBQSxpQkFBQUEsQ0FBQSxnQkFBQVUsUUFBQSxDQUFBVixDQUFBLDBCQUFBQSxDQUFBLFNBQUFRLENBQUEsTUFBQUYsQ0FBQSxHQUFBTCxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxRQUFBRyxDQUFBLENBQUFLLEdBQUEsQ0FBQVgsQ0FB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QUFFQTtNQUFNLENBQUUsQ0FBQztJQUFBLENBQzFDLENBQ0ksQ0FBQyxHQUNOK0IsSUFBSSxDQUFDNEQsV0FBVyxnQkFDbEJoSyxNQUFBLFlBQUFnRSxhQUFBLGdCQUNHb0MsSUFBSSxDQUFDNEQsV0FBVyxDQUFDbkUsR0FBRyxDQUFDLFVBQUEyRSxLQUFBLEVBQXdCaEosQ0FBQztNQUFBLElBQXZCaUosWUFBWSxHQUFBRCxLQUFBLENBQVpDLFlBQVk7UUFBRXBHLEtBQUssR0FBQW1HLEtBQUEsQ0FBTG5HLEtBQUs7TUFBQSxvQkFDekNyRSxNQUFBLFlBQUFnRSxhQUFBLENBQUNFLEdBQUc7UUFBQ2MsR0FBRyxFQUFFeEQsQ0FBRTtRQUFDNEMsSUFBSSxFQUFFeUYsSUFBSSxDQUFDYSxhQUFhLENBQUM7VUFBQ0MsRUFBRSxFQUFFRjtRQUFZLENBQUMsQ0FBRTtRQUFDcEcsS0FBSyxFQUFFQTtNQUFNLENBQUUsQ0FBQztJQUFBLENBQzVFLENBQ0ksQ0FBQyxHQUNOM0IsS0FBSyxDQUFDd0QsS0FBSyxDQUFDMEUsWUFBWSxnQkFDMUI1SyxNQUFBLFlBQUFnRSxhQUFBLENBQUMwRCxRQUFRLEVBQUtoRixLQUFRLENBQUMsZ0JBRXZCMUMsTUFBQSxZQUFBZ0UsYUFBQSxDQUFDeUIsU0FBUyxFQUFLL0MsS0FBUSxDQUVkLENBQUMsRUFDYnFILGVBQWUsaUJBQUkvSixNQUFBLFlBQUFnRSxhQUFBLENBQUNkLGFBQWEsTUFBRSxDQUNqQyxDQUFDO0VBRVYsQ0FBQztFQUVEMEcsY0FBYyxDQUFDaUIsU0FBUyxHQUFHO0lBQ3pCMUUsTUFBTSxFQUFFMkUscUJBQVMsQ0FBQ0MsT0FBTyxDQUFDRCxxQkFBUyxDQUFDRSxHQUFHLENBQUM7SUFDeENyRixZQUFZLEVBQUVtRixxQkFBUyxDQUFDQyxPQUFPLENBQUNELHFCQUFTLENBQUNFLEdBQUcsQ0FBQztJQUM5QzlFLEtBQUssRUFBRTRFLHFCQUFTLENBQUNHLE1BQU07SUFDdkI3RSxJQUFJLEVBQUUwRSxxQkFBUyxDQUFDSSxTQUFTLENBQUMsQ0FBQ0oscUJBQVMsQ0FBQ0MsT0FBTyxDQUFDRCxxQkFBUyxDQUFDRSxHQUFHLENBQUMsRUFBRUYscUJBQVMsQ0FBQ0csTUFBTSxDQUFDO0VBQ2hGLENBQUM7RUFDRCxPQUFPckIsY0FBYztBQUN2QixDQUFDO0FBQUMsSUFBQXVCLFFBQUEsR0FBQTdJLE9BQUEsY0FFYXFILHFCQUFxQiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -11,8 +11,8 @@ var _verticalToolbar = _interopRequireDefault(require("../common/vertical-toolba
|
|
|
11
11
|
var _templateObject; // SPDX-License-Identifier: MIT
|
|
12
12
|
// Copyright contributors to the kepler.gl project
|
|
13
13
|
function MapControlToolbar() {
|
|
14
|
-
var StyledToolbar = (0, _styledComponents["default"])(_verticalToolbar["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n right: 32px;\n transform: translateX(calc(-50% + 45px));\n\n .toolbar-item {\n width: 120px;\n padding: 13px 16px;\n flex-direction: row;\n justify-content: flex-start;\n\n .toolbar-item__svg-container {\n width: 16px;\n height: 16px;\n margin-right: 10px;\n }\n\n .toolbar-item__title {\n margin-left: auto;\n margin-right: auto;\n }\n }\n "])));
|
|
14
|
+
var StyledToolbar = (0, _styledComponents["default"])(_verticalToolbar["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n right: 32px;\n transform: translateX(calc(-50% + 45px));\n\n .toolbar-item {\n width: 120px;\n padding: 13px 16px;\n flex-direction: row;\n justify-content: flex-start;\n\n .toolbar-item__svg-container {\n width: 16px;\n height: 16px;\n margin-right: 10px;\n flex-shrink: 0;\n overflow: hidden;\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n width: 16px;\n height: 16px;\n }\n }\n\n .toolbar-item__title {\n margin-left: auto;\n margin-right: auto;\n }\n }\n "])));
|
|
15
15
|
return StyledToolbar;
|
|
16
16
|
}
|
|
17
17
|
var _default = exports["default"] = MapControlToolbar;
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3ZlcnRpY2FsVG9vbGJhciIsIl90ZW1wbGF0ZU9iamVjdCIsIk1hcENvbnRyb2xUb29sYmFyIiwiU3R5bGVkVG9vbGJhciIsInN0eWxlZCIsIlZlcnRpY2FsVG9vbGJhciIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21hcC9tYXAtY29udHJvbC10b29sYmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBWZXJ0aWNhbFRvb2xiYXIgZnJvbSAnLi4vY29tbW9uL3ZlcnRpY2FsLXRvb2xiYXInO1xuaW1wb3J0IHtCYXNlQ29tcG9uZW50UHJvcHN9IGZyb20gJy4uL3R5cGVzJztcblxuZnVuY3Rpb24gTWFwQ29udHJvbFRvb2xiYXIoKSB7XG4gIGNvbnN0IFN0eWxlZFRvb2xiYXIgPSBzdHlsZWQoVmVydGljYWxUb29sYmFyKTxCYXNlQ29tcG9uZW50UHJvcHM+
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3ZlcnRpY2FsVG9vbGJhciIsIl90ZW1wbGF0ZU9iamVjdCIsIk1hcENvbnRyb2xUb29sYmFyIiwiU3R5bGVkVG9vbGJhciIsInN0eWxlZCIsIlZlcnRpY2FsVG9vbGJhciIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21hcC9tYXAtY29udHJvbC10b29sYmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBWZXJ0aWNhbFRvb2xiYXIgZnJvbSAnLi4vY29tbW9uL3ZlcnRpY2FsLXRvb2xiYXInO1xuaW1wb3J0IHtCYXNlQ29tcG9uZW50UHJvcHN9IGZyb20gJy4uL3R5cGVzJztcblxuZnVuY3Rpb24gTWFwQ29udHJvbFRvb2xiYXIoKSB7XG4gIGNvbnN0IFN0eWxlZFRvb2xiYXIgPSBzdHlsZWQoVmVydGljYWxUb29sYmFyKTxCYXNlQ29tcG9uZW50UHJvcHM+YFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMzJweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNTAlICsgNDVweCkpO1xuXG4gICAgLnRvb2xiYXItaXRlbSB7XG4gICAgICB3aWR0aDogMTIwcHg7XG4gICAgICBwYWRkaW5nOiAxM3B4IDE2cHg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAudG9vbGJhci1pdGVtX19zdmctY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRvb2xiYXItaXRlbV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgYDtcblxuICByZXR1cm4gU3R5bGVkVG9vbGJhcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwQ29udHJvbFRvb2xiYXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGdCQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFBeUQsSUFBQUUsZUFBQSxFQUp6RDtBQUNBO0FBTUEsU0FBU0MsaUJBQWlCQSxDQUFBLEVBQUc7RUFDM0IsSUFBTUMsYUFBYSxHQUFHLElBQUFDLDRCQUFNLEVBQUNDLDJCQUFlLENBQUMsQ0FBQUosZUFBQSxLQUFBQSxlQUFBLE9BQUFLLHVCQUFBLHNyQkFnQzVDO0VBRUQsT0FBT0gsYUFBYTtBQUN0QjtBQUFDLElBQUFJLFFBQUEsR0FBQUMsT0FBQSxjQUVjTixpQkFBaUIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -17,10 +17,11 @@ var _toggle3dButton = _interopRequireDefault(require("./toggle-3d-button"));
|
|
|
17
17
|
var _mapLegendPanel = _interopRequireDefault(require("./map-legend-panel"));
|
|
18
18
|
var _mapDrawPanel = _interopRequireDefault(require("./map-draw-panel"));
|
|
19
19
|
var _localePanel = _interopRequireDefault(require("./locale-panel"));
|
|
20
|
+
var _themeToggleButton = _interopRequireDefault(require("./theme-toggle-button"));
|
|
20
21
|
var _mapNavigationControl = _interopRequireDefault(require("./map-navigation-control"));
|
|
21
22
|
var _utils = require("@kepler.gl/utils");
|
|
22
23
|
var _annotationControl = _interopRequireDefault(require("./annotations/annotation-control"));
|
|
23
|
-
var _excluded = ["actionComponents", "isSplit", "top", "mapIndex", "logoComponent", "mapState", "mapStateActions"];
|
|
24
|
+
var _excluded = ["actionComponents", "isSplit", "top", "mapIndex", "logoComponent", "mapState", "mapStateActions", "themeName", "onSetTheme"];
|
|
24
25
|
var _templateObject; // SPDX-License-Identifier: MIT
|
|
25
26
|
// Copyright contributors to the kepler.gl project
|
|
26
27
|
// factories
|
|
@@ -35,9 +36,9 @@ var LegendLogo = /*#__PURE__*/_react["default"].createElement(_logo["default"],
|
|
|
35
36
|
version: false,
|
|
36
37
|
appName: "kepler.gl"
|
|
37
38
|
});
|
|
38
|
-
MapControlFactory.deps = [_splitMapButton["default"], _toggle3dButton["default"], _mapLegendPanel["default"], _mapDrawPanel["default"], _localePanel["default"], _annotationControl["default"], _mapNavigationControl["default"]];
|
|
39
|
-
function MapControlFactory(SplitMapButton, Toggle3dButton, MapLegendPanel, MapDrawPanel, LocalePanel, AnnotationControl, MapNavigationControl) {
|
|
40
|
-
var DEFAULT_ACTIONS = [SplitMapButton, Toggle3dButton, MapDrawPanel, AnnotationControl, LocalePanel, MapLegendPanel];
|
|
39
|
+
MapControlFactory.deps = [_splitMapButton["default"], _toggle3dButton["default"], _mapLegendPanel["default"], _mapDrawPanel["default"], _localePanel["default"], _themeToggleButton["default"], _annotationControl["default"], _mapNavigationControl["default"]];
|
|
40
|
+
function MapControlFactory(SplitMapButton, Toggle3dButton, MapLegendPanel, MapDrawPanel, LocalePanel, ThemeToggleButton, AnnotationControl, MapNavigationControl) {
|
|
41
|
+
var DEFAULT_ACTIONS = [SplitMapButton, Toggle3dButton, MapDrawPanel, AnnotationControl, LocalePanel, ThemeToggleButton, MapLegendPanel];
|
|
41
42
|
var MapControl = function MapControl(_ref) {
|
|
42
43
|
var _ref$actionComponents = _ref.actionComponents,
|
|
43
44
|
actionComponents = _ref$actionComponents === void 0 ? DEFAULT_ACTIONS : _ref$actionComponents,
|
|
@@ -51,14 +52,19 @@ function MapControlFactory(SplitMapButton, Toggle3dButton, MapLegendPanel, MapDr
|
|
|
51
52
|
logoComponent = _ref$logoComponent === void 0 ? LegendLogo : _ref$logoComponent,
|
|
52
53
|
mapState = _ref.mapState,
|
|
53
54
|
mapStateActions = _ref.mapStateActions,
|
|
55
|
+
themeName = _ref.themeName,
|
|
56
|
+
onSetTheme = _ref.onSetTheme,
|
|
54
57
|
restProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
55
|
-
var actionComponentProps = _objectSpread({
|
|
58
|
+
var actionComponentProps = _objectSpread(_objectSpread({
|
|
56
59
|
isSplit: isSplit,
|
|
57
60
|
mapIndex: mapIndex,
|
|
58
61
|
logoComponent: logoComponent,
|
|
59
62
|
mapState: mapState,
|
|
60
63
|
onSetMapSplitMode: (0, _utils.getApplicationConfig)().enableSwipeMode ? mapStateActions === null || mapStateActions === void 0 ? void 0 : mapStateActions.setMapSplitMode : undefined
|
|
61
|
-
}, restProps)
|
|
64
|
+
}, restProps), {}, {
|
|
65
|
+
themeName: themeName,
|
|
66
|
+
onSetTheme: onSetTheme
|
|
67
|
+
});
|
|
62
68
|
return /*#__PURE__*/_react["default"].createElement(StyledMapControl, {
|
|
63
69
|
className: "map-control",
|
|
64
70
|
$top: top
|
|
@@ -67,7 +73,7 @@ function MapControlFactory(SplitMapButton, Toggle3dButton, MapLegendPanel, MapDr
|
|
|
67
73
|
key: index,
|
|
68
74
|
className: "map-control-action"
|
|
69
75
|
}, actionComponentProps));
|
|
70
|
-
}), mapState && mapStateActions ? /*#__PURE__*/_react["default"].createElement(MapNavigationControl, {
|
|
76
|
+
}), mapState && mapStateActions && !restProps.isExport ? /*#__PURE__*/_react["default"].createElement(MapNavigationControl, {
|
|
71
77
|
mapState: mapState,
|
|
72
78
|
mapIndex: mapIndex,
|
|
73
79
|
mapStateActions: mapStateActions
|
|
@@ -78,4 +84,4 @@ function MapControlFactory(SplitMapButton, Toggle3dButton, MapLegendPanel, MapDr
|
|
|
78
84
|
return MapControl;
|
|
79
85
|
}
|
|
80
86
|
var _default = exports["default"] = MapControlFactory;
|
|
81
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2xvZ28iLCJfc3BsaXRNYXBCdXR0b24iLCJfdG9nZ2xlM2RCdXR0b24iLCJfbWFwTGVnZW5kUGFuZWwiLCJfbWFwRHJhd1BhbmVsIiwiX2xvY2FsZVBhbmVsIiwiX21hcE5hdmlnYXRpb25Db250cm9sIiwiX3V0aWxzIiwiX2Fubm90YXRpb25Db250cm9sIiwiX2V4Y2x1ZGVkIiwiX3RlbXBsYXRlT2JqZWN0Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJTdHlsZWRNYXBDb250cm9sIiwic3R5bGVkIiwiZGl2IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsInRoZW1lIiwibWFwQ29udHJvbCIsInBhZGRpbmciLCIkdG9wIiwiTGVnZW5kTG9nbyIsImNyZWF0ZUVsZW1lbnQiLCJ2ZXJzaW9uIiwiYXBwTmFtZSIsIk1hcENvbnRyb2xGYWN0b3J5IiwiZGVwcyIsIlNwbGl0TWFwQnV0dG9uRmFjdG9yeSIsIlRvZ2dsZTNkQnV0dG9uRmFjdG9yeSIsIk1hcExlZ2VuZFBhbmVsRmFjdG9yeSIsIk1hcERyYXdQYW5lbEZhY3RvcnkiLCJMb2NhbGVQYW5lbEZhY3RvcnkiLCJBbm5vdGF0aW9uQ29udHJvbEZhY3RvcnkiLCJNYXBOYXZpZ2F0aW9uQ29udHJvbEZhY3RvcnkiLCJTcGxpdE1hcEJ1dHRvbiIsIlRvZ2dsZTNkQnV0dG9uIiwiTWFwTGVnZW5kUGFuZWwiLCJNYXBEcmF3UGFuZWwiLCJMb2NhbGVQYW5lbCIsIkFubm90YXRpb25Db250cm9sIiwiTWFwTmF2aWdhdGlvbkNvbnRyb2wiLCJERUZBVUxUX0FDVElPTlMiLCJNYXBDb250cm9sIiwiX3JlZiIsIl9yZWYkYWN0aW9uQ29tcG9uZW50cyIsImFjdGlvbkNvbXBvbmVudHMiLCJfcmVmJGlzU3BsaXQiLCJpc1NwbGl0IiwiX3JlZiR0b3AiLCJ0b3AiLCJfcmVmJG1hcEluZGV4IiwibWFwSW5kZXgiLCJfcmVmJGxvZ29Db21wb25lbnQiLCJsb2dvQ29tcG9uZW50IiwibWFwU3RhdGUiLCJtYXBTdGF0ZUFjdGlvbnMiLCJyZXN0UHJvcHMiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwiYWN0aW9uQ29tcG9uZW50UHJvcHMiLCJvblNldE1hcFNwbGl0TW9kZSIsImdldEFwcGxpY2F0aW9uQ29uZmlnIiwiZW5hYmxlU3dpcGVNb2RlIiwic2V0TWFwU3BsaXRNb2RlIiwidW5kZWZpbmVkIiwiY2xhc3NOYW1lIiwibWFwIiwiQWN0aW9uQ29tcG9uZW50IiwiaW5kZXgiLCJfZXh0ZW5kczIiLCJrZXkiLCJkZWZhdWx0QWN0aW9uQ29tcG9uZW50cyIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21hcC9tYXAtY29udHJvbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IEtlcGxlckdsTG9nbyBmcm9tICcuLi9jb21tb24vbG9nbyc7XG5cbi8vIGZhY3Rvcmllc1xuaW1wb3J0IFNwbGl0TWFwQnV0dG9uRmFjdG9yeSBmcm9tICcuL3NwbGl0LW1hcC1idXR0b24nO1xuaW1wb3J0IFRvZ2dsZTNkQnV0dG9uRmFjdG9yeSBmcm9tICcuL3RvZ2dsZS0zZC1idXR0b24nO1xuaW1wb3J0IE1hcExlZ2VuZFBhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1sZWdlbmQtcGFuZWwnO1xuaW1wb3J0IE1hcERyYXdQYW5lbEZhY3RvcnkgZnJvbSAnLi9tYXAtZHJhdy1wYW5lbCc7XG5pbXBvcnQgTG9jYWxlUGFuZWxGYWN0b3J5IGZyb20gJy4vbG9jYWxlLXBhbmVsJztcbmltcG9ydCBNYXBOYXZpZ2F0aW9uQ29udHJvbEZhY3RvcnkgZnJvbSAnLi9tYXAtbmF2aWdhdGlvbi1jb250cm9sJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7RWRpdG9yLCBMYXllclZpc0NvbmZpZywgTGF5ZXJPcmRlciwgTWFwQ29udHJvbHMsIE1hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7RGF0YXNldHN9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuaW1wb3J0IHtNYXBTdGF0ZUFjdGlvbnMsIFVJU3RhdGVBY3Rpb25zfSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtnZXRBcHBsaWNhdGlvbkNvbmZpZ30gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge01hcFZpZXdNb2RlfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5cbmltcG9ydCBBbm5vdGF0aW9uQ29udHJvbEZhY3RvcnkgZnJvbSAnLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLWNvbnRyb2wnO1xuXG5pbnRlcmZhY2UgU3R5bGVkTWFwQ29udHJvbFByb3BzIHtcbiAgJHRvcD86IG51bWJlcjtcbn1cblxuY29uc3QgU3R5bGVkTWFwQ29udHJvbCA9IHN0eWxlZC5kaXY8U3R5bGVkTWFwQ29udHJvbFByb3BzPmBcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubWFwQ29udHJvbC5wYWRkaW5nfXB4O1xuICB6LWluZGV4OiAxMDtcbiAgbWFyZ2luLXRvcDogJHtwcm9wcyA9PiBwcm9wcy4kdG9wIHx8IDB9cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcm93LWdhcDogOHB4O1xuICBqdXN0aWZ5LWl0ZW1zOiBlbmQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyAvKiBwcmV2ZW50IHBhZGRpbmcgZnJvbSBibG9ja2luZyBpbnB1dCAqL1xuICAmID4gKiB7XG4gICAgLyogYWxsIGNoaWxkcmVuIHNob3VsZCBhbGxvdyBpbnB1dCAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbmA7XG5cbmNvbnN0IExlZ2VuZExvZ28gPSA8S2VwbGVyR2xMb2dvIHZlcnNpb249e2ZhbHNlfSBhcHBOYW1lPVwia2VwbGVyLmdsXCIgLz47XG5cbmV4cG9ydCB0eXBlIE1hcENvbnRyb2xQcm9wcyA9IHtcbiAgZGF0YXNldHM6IERhdGFzZXRzO1xuICBkcmFnUm90YXRlOiBib29sZWFuO1xuICBpc1NwbGl0OiBib29sZWFuO1xuICBwcmltYXJ5OiBib29sZWFuO1xuICBsYXllcnM6IExheWVyW107XG4gIGxheWVyT3JkZXI/OiBMYXllck9yZGVyO1xuICBsYXllcnNUb1JlbmRlcjoge1trZXk6IHN0cmluZ106IGJvb2xlYW59O1xuICBtYXBJbmRleDogbnVtYmVyO1xuICBtYXBDb250cm9sczogTWFwQ29udHJvbHM7XG4gIG9uVG9nZ2xlUGVyc3BlY3RpdmU6ICgpID0+IHZvaWQ7XG4gIG9uU2V0TWFwVmlld01vZGU/OiAobW9kZTogTWFwVmlld01vZGUpID0+IHZvaWQ7XG4gIG1hcFZpZXdNb2RlPzogTWFwVmlld01vZGU7XG4gIG9uVG9nZ2xlU3BsaXRNYXA6IHR5cGVvZiBNYXBTdGF0ZUFjdGlvbnMudG9nZ2xlU3BsaXRNYXA7XG4gIG9uU2V0TWFwU3BsaXRNb2RlPzogdHlwZW9mIE1hcFN0YXRlQWN0aW9ucy5zZXRNYXBTcGxpdE1vZGU7XG4gIG9uVG9nZ2xlU3BsaXRNYXBWaWV3cG9ydDogKHtcbiAgICBpc1ZpZXdwb3J0U3luY2VkLFxuICAgIGlzWm9vbUxvY2tlZFxuICB9OiB7XG4gICAgaXNWaWV3cG9ydFN5bmNlZDogYm9vbGVhbjtcbiAgICBpc1pvb21Mb2NrZWQ6IGJvb2xlYW47XG4gIH0pID0+IHZvaWQ7XG4gIG9uTWFwVG9nZ2xlTGF5ZXI6IChsYXllcklkOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uVG9nZ2xlTWFwQ29udHJvbDogKGNvbnRyb2w6IHN0cmluZykgPT4gdm9pZDtcbiAgb25TZXRFZGl0b3JNb2RlOiAobW9kZTogc3RyaW5nKSA9PiB2b2lkO1xuICBvblRvZ2dsZUVkaXRvclZpc2liaWxpdHk6ICgpID0+IHZvaWQ7XG4gIG9uTGF5ZXJWaXNDb25maWdDaGFuZ2U6IChvbGRMYXllcjogTGF5ZXIsIG5ld1Zpc0NvbmZpZzogUGFydGlhbDxMYXllclZpc0NvbmZpZz4pID0+IHZvaWQ7XG4gIG9uVG9nZ2xlTGF5ZXJWaXNpYmlsaXR5PzogKGxheWVyOiBMYXllcikgPT4gdm9pZDtcbiAgdG9wOiBudW1iZXI7XG4gIG9uU2V0TG9jYWxlOiB0eXBlb2YgVUlTdGF0ZUFjdGlvbnMuc2V0TG9jYWxlO1xuICBhdmFpbGFibGVMb2NhbGVzOiBzdHJpbmdbXTtcbiAgbG9jYWxlOiBzdHJpbmc7XG4gIGxvZ29Db21wb25lbnQ/OiBSZWFjdC5GQyB8IFJlYWN0LlJlYWN0Tm9kZTtcbiAgaXNFeHBvcnQ/OiBib29sZWFuO1xuXG4gIHNldE1hcENvbnRyb2xTZXR0aW5nczogdHlwZW9mIFVJU3RhdGVBY3Rpb25zLnNldE1hcENvbnRyb2xTZXR0aW5ncztcbiAgYWN0aXZlU2lkZVBhbmVsOiBzdHJpbmcgfCBudWxsO1xuXG4gIC8vIG9wdGlvbmFsXG4gIG1hcFN0YXRlPzogTWFwU3RhdGU7XG4gIG1hcFN0YXRlQWN0aW9ucz86IHR5cGVvZiBNYXBTdGF0ZUFjdGlvbnM7XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbiAgc2NhbGU/OiBudW1iZXI7XG4gIG1hcExheWVycz86IHtba2V5OiBzdHJpbmddOiBib29sZWFufTtcbiAgZWRpdG9yOiBFZGl0b3I7XG4gIGFjdGlvbkNvbXBvbmVudHM/OiBSZWFjdC5Db21wb25lbnRUeXBlPGFueT5bXTtcbiAgbWFwSGVpZ2h0PzogbnVtYmVyO1xuICBzcGxpdE1hcHM/OiB7bGF5ZXJzOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn19W107XG4gIG9uVG9nZ2xlTGF5ZXJGb3JNYXA/OiAobWFwSW5kZXg6IG51bWJlciwgbGF5ZXJJZDogc3RyaW5nKSA9PiB2b2lkO1xufTtcblxuTWFwQ29udHJvbEZhY3RvcnkuZGVwcyA9IFtcbiAgU3BsaXRNYXBCdXR0b25GYWN0b3J5LFxuICBUb2dnbGUzZEJ1dHRvbkZhY3RvcnksXG4gIE1hcExlZ2VuZFBhbmVsRmFjdG9yeSxcbiAgTWFwRHJhd1BhbmVsRmFjdG9yeSxcbiAgTG9jYWxlUGFuZWxGYWN0b3J5LFxuICBBbm5vdGF0aW9uQ29udHJvbEZhY3RvcnksXG4gIE1hcE5hdmlnYXRpb25Db250cm9sRmFjdG9yeVxuXTtcblxuZnVuY3Rpb24gTWFwQ29udHJvbEZhY3RvcnkoXG4gIFNwbGl0TWFwQnV0dG9uOiBSZXR1cm5UeXBlPHR5cGVvZiBTcGxpdE1hcEJ1dHRvbkZhY3Rvcnk+LFxuICBUb2dnbGUzZEJ1dHRvbjogUmV0dXJuVHlwZTx0eXBlb2YgVG9nZ2xlM2RCdXR0b25GYWN0b3J5PixcbiAgTWFwTGVnZW5kUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIE1hcExlZ2VuZFBhbmVsRmFjdG9yeT4sXG4gIE1hcERyYXdQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwRHJhd1BhbmVsRmFjdG9yeT4sXG4gIExvY2FsZVBhbmVsOiBSZXR1cm5UeXBlPHR5cGVvZiBMb2NhbGVQYW5lbEZhY3Rvcnk+LFxuICBBbm5vdGF0aW9uQ29udHJvbDogUmV0dXJuVHlwZTx0eXBlb2YgQW5ub3RhdGlvbkNvbnRyb2xGYWN0b3J5PixcbiAgTWFwTmF2aWdhdGlvbkNvbnRyb2w6IFJldHVyblR5cGU8dHlwZW9mIE1hcE5hdmlnYXRpb25Db250cm9sRmFjdG9yeT5cbikge1xuICBjb25zdCBERUZBVUxUX0FDVElPTlMgPSBbXG4gICAgU3BsaXRNYXBCdXR0b24sXG4gICAgVG9nZ2xlM2RCdXR0b24sXG4gICAgTWFwRHJhd1BhbmVsLFxuICAgIEFubm90YXRpb25Db250cm9sLFxuICAgIExvY2FsZVBhbmVsLFxuICAgIE1hcExlZ2VuZFBhbmVsXG4gIF07XG5cbiAgY29uc3QgTWFwQ29udHJvbDogUmVhY3QuRkM8TWFwQ29udHJvbFByb3BzPiAmIHtcbiAgICBkZWZhdWx0QWN0aW9uQ29tcG9uZW50czogTWFwQ29udHJvbFByb3BzWydhY3Rpb25Db21wb25lbnRzJ107XG4gIH0gPSAoe1xuICAgIGFjdGlvbkNvbXBvbmVudHMgPSBERUZBVUxUX0FDVElPTlMsXG4gICAgaXNTcGxpdCA9IGZhbHNlLFxuICAgIHRvcCA9IDAsXG4gICAgbWFwSW5kZXggPSAwLFxuICAgIGxvZ29Db21wb25lbnQgPSBMZWdlbmRMb2dvLFxuICAgIG1hcFN0YXRlLFxuICAgIG1hcFN0YXRlQWN0aW9ucyxcbiAgICAuLi5yZXN0UHJvcHNcbiAgfSkgPT4ge1xuICAgIGNvbnN0IGFjdGlvbkNvbXBvbmVudFByb3BzID0ge1xuICAgICAgaXNTcGxpdCxcbiAgICAgIG1hcEluZGV4LFxuICAgICAgbG9nb0NvbXBvbmVudCxcbiAgICAgIG1hcFN0YXRlLFxuICAgICAgb25TZXRNYXBTcGxpdE1vZGU6IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuZW5hYmxlU3dpcGVNb2RlXG4gICAgICAgID8gbWFwU3RhdGVBY3Rpb25zPy5zZXRNYXBTcGxpdE1vZGVcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAuLi5yZXN0UHJvcHNcbiAgICB9O1xuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkTWFwQ29udHJvbCBjbGFzc05hbWU9XCJtYXAtY29udHJvbFwiICR0b3A9e3RvcH0+XG4gICAgICAgIHthY3Rpb25Db21wb25lbnRzLm1hcCgoQWN0aW9uQ29tcG9uZW50LCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxBY3Rpb25Db21wb25lbnQga2V5PXtpbmRleH0gY2xhc3NOYW1lPVwibWFwLWNvbnRyb2wtYWN0aW9uXCIgey4uLmFjdGlvbkNvbXBvbmVudFByb3BzfSAvPlxuICAgICAgICApKX1cbiAgICAgICAge21hcFN0YXRlICYmIG1hcFN0YXRlQWN0aW9ucyA/IChcbiAgICAgICAgICA8TWFwTmF2aWdhdGlvbkNvbnRyb2xcbiAgICAgICAgICAgIG1hcFN0YXRlPXttYXBTdGF0ZX1cbiAgICAgICAgICAgIG1hcEluZGV4PXttYXBJbmRleH1cbiAgICAgICAgICAgIG1hcFN0YXRlQWN0aW9ucz17bWFwU3RhdGVBY3Rpb25zfVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9TdHlsZWRNYXBDb250cm9sPlxuICAgICk7XG4gIH07XG5cbiAgTWFwQ29udHJvbC5kZWZhdWx0QWN0aW9uQ29tcG9uZW50cyA9IERFRkFVTFRfQUNUSU9OUztcblxuICBNYXBDb250cm9sLmRpc3BsYXlOYW1lID0gJ01hcENvbnRyb2wnO1xuXG4gIHJldHVybiBNYXBDb250cm9sO1xufVxuXG5leHBvcnQgZGVmYXVsdCBNYXBDb250cm9sRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUcsZUFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssZUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBUCxzQkFB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
|
|
87
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2xvZ28iLCJfc3BsaXRNYXBCdXR0b24iLCJfdG9nZ2xlM2RCdXR0b24iLCJfbWFwTGVnZW5kUGFuZWwiLCJfbWFwRHJhd1BhbmVsIiwiX2xvY2FsZVBhbmVsIiwiX3RoZW1lVG9nZ2xlQnV0dG9uIiwiX21hcE5hdmlnYXRpb25Db250cm9sIiwiX3V0aWxzIiwiX2Fubm90YXRpb25Db250cm9sIiwiX2V4Y2x1ZGVkIiwiX3RlbXBsYXRlT2JqZWN0Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJTdHlsZWRNYXBDb250cm9sIiwic3R5bGVkIiwiZGl2IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsInRoZW1lIiwibWFwQ29udHJvbCIsInBhZGRpbmciLCIkdG9wIiwiTGVnZW5kTG9nbyIsImNyZWF0ZUVsZW1lbnQiLCJ2ZXJzaW9uIiwiYXBwTmFtZSIsIk1hcENvbnRyb2xGYWN0b3J5IiwiZGVwcyIsIlNwbGl0TWFwQnV0dG9uRmFjdG9yeSIsIlRvZ2dsZTNkQnV0dG9uRmFjdG9yeSIsIk1hcExlZ2VuZFBhbmVsRmFjdG9yeSIsIk1hcERyYXdQYW5lbEZhY3RvcnkiLCJMb2NhbGVQYW5lbEZhY3RvcnkiLCJUaGVtZVRvZ2dsZUJ1dHRvbkZhY3RvcnkiLCJBbm5vdGF0aW9uQ29udHJvbEZhY3RvcnkiLCJNYXBOYXZpZ2F0aW9uQ29udHJvbEZhY3RvcnkiLCJTcGxpdE1hcEJ1dHRvbiIsIlRvZ2dsZTNkQnV0dG9uIiwiTWFwTGVnZW5kUGFuZWwiLCJNYXBEcmF3UGFuZWwiLCJMb2NhbGVQYW5lbCIsIlRoZW1lVG9nZ2xlQnV0dG9uIiwiQW5ub3RhdGlvbkNvbnRyb2wiLCJNYXBOYXZpZ2F0aW9uQ29udHJvbCIsIkRFRkFVTFRfQUNUSU9OUyIsIk1hcENvbnRyb2wiLCJfcmVmIiwiX3JlZiRhY3Rpb25Db21wb25lbnRzIiwiYWN0aW9uQ29tcG9uZW50cyIsIl9yZWYkaXNTcGxpdCIsImlzU3BsaXQiLCJfcmVmJHRvcCIsInRvcCIsIl9yZWYkbWFwSW5kZXgiLCJtYXBJbmRleCIsIl9yZWYkbG9nb0NvbXBvbmVudCIsImxvZ29Db21wb25lbnQiLCJtYXBTdGF0ZSIsIm1hcFN0YXRlQWN0aW9ucyIsInRoZW1lTmFtZSIsIm9uU2V0VGhlbWUiLCJyZXN0UHJvcHMiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwiYWN0aW9uQ29tcG9uZW50UHJvcHMiLCJvblNldE1hcFNwbGl0TW9kZSIsImdldEFwcGxpY2F0aW9uQ29uZmlnIiwiZW5hYmxlU3dpcGVNb2RlIiwic2V0TWFwU3BsaXRNb2RlIiwidW5kZWZpbmVkIiwiY2xhc3NOYW1lIiwibWFwIiwiQWN0aW9uQ29tcG9uZW50IiwiaW5kZXgiLCJfZXh0ZW5kczIiLCJrZXkiLCJpc0V4cG9ydCIsImRlZmF1bHRBY3Rpb25Db21wb25lbnRzIiwiZGlzcGxheU5hbWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWFwL21hcC1jb250cm9sLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgS2VwbGVyR2xMb2dvIGZyb20gJy4uL2NvbW1vbi9sb2dvJztcblxuLy8gZmFjdG9yaWVzXG5pbXBvcnQgU3BsaXRNYXBCdXR0b25GYWN0b3J5IGZyb20gJy4vc3BsaXQtbWFwLWJ1dHRvbic7XG5pbXBvcnQgVG9nZ2xlM2RCdXR0b25GYWN0b3J5IGZyb20gJy4vdG9nZ2xlLTNkLWJ1dHRvbic7XG5pbXBvcnQgTWFwTGVnZW5kUGFuZWxGYWN0b3J5IGZyb20gJy4vbWFwLWxlZ2VuZC1wYW5lbCc7XG5pbXBvcnQgTWFwRHJhd1BhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1kcmF3LXBhbmVsJztcbmltcG9ydCBMb2NhbGVQYW5lbEZhY3RvcnkgZnJvbSAnLi9sb2NhbGUtcGFuZWwnO1xuaW1wb3J0IFRoZW1lVG9nZ2xlQnV0dG9uRmFjdG9yeSBmcm9tICcuL3RoZW1lLXRvZ2dsZS1idXR0b24nO1xuaW1wb3J0IE1hcE5hdmlnYXRpb25Db250cm9sRmFjdG9yeSBmcm9tICcuL21hcC1uYXZpZ2F0aW9uLWNvbnRyb2wnO1xuaW1wb3J0IHtMYXllcn0gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuaW1wb3J0IHtFZGl0b3IsIExheWVyVmlzQ29uZmlnLCBMYXllck9yZGVyLCBNYXBDb250cm9scywgTWFwU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtEYXRhc2V0c30gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5pbXBvcnQge01hcFN0YXRlQWN0aW9ucywgVUlTdGF0ZUFjdGlvbnN9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge2dldEFwcGxpY2F0aW9uQ29uZmlnfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7TWFwVmlld01vZGV9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcblxuaW1wb3J0IEFubm90YXRpb25Db250cm9sRmFjdG9yeSBmcm9tICcuL2Fubm90YXRpb25zL2Fubm90YXRpb24tY29udHJvbCc7XG5cbmludGVyZmFjZSBTdHlsZWRNYXBDb250cm9sUHJvcHMge1xuICAkdG9wPzogbnVtYmVyO1xufVxuXG5jb25zdCBTdHlsZWRNYXBDb250cm9sID0gc3R5bGVkLmRpdjxTdHlsZWRNYXBDb250cm9sUHJvcHM+YFxuICByaWdodDogMDtcbiAgcGFkZGluZzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tYXBDb250cm9sLnBhZGRpbmd9cHg7XG4gIHotaW5kZXg6IDEwO1xuICBtYXJnaW4tdG9wOiAke3Byb3BzID0+IHByb3BzLiR0b3AgfHwgMH1weDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBncmlkO1xuICByb3ctZ2FwOiA4cHg7XG4gIGp1c3RpZnktaXRlbXM6IGVuZDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8qIHByZXZlbnQgcGFkZGluZyBmcm9tIGJsb2NraW5nIGlucHV0ICovXG4gICYgPiAqIHtcbiAgICAvKiBhbGwgY2hpbGRyZW4gc2hvdWxkIGFsbG93IGlucHV0ICovXG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxuYDtcblxuY29uc3QgTGVnZW5kTG9nbyA9IDxLZXBsZXJHbExvZ28gdmVyc2lvbj17ZmFsc2V9IGFwcE5hbWU9XCJrZXBsZXIuZ2xcIiAvPjtcblxuZXhwb3J0IHR5cGUgTWFwQ29udHJvbFByb3BzID0ge1xuICBkYXRhc2V0czogRGF0YXNldHM7XG4gIGRyYWdSb3RhdGU6IGJvb2xlYW47XG4gIGlzU3BsaXQ6IGJvb2xlYW47XG4gIHByaW1hcnk6IGJvb2xlYW47XG4gIGxheWVyczogTGF5ZXJbXTtcbiAgbGF5ZXJPcmRlcj86IExheWVyT3JkZXI7XG4gIGxheWVyc1RvUmVuZGVyOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn07XG4gIG1hcEluZGV4OiBudW1iZXI7XG4gIG1hcENvbnRyb2xzOiBNYXBDb250cm9scztcbiAgb25Ub2dnbGVQZXJzcGVjdGl2ZTogKCkgPT4gdm9pZDtcbiAgb25TZXRNYXBWaWV3TW9kZT86IChtb2RlOiBNYXBWaWV3TW9kZSkgPT4gdm9pZDtcbiAgbWFwVmlld01vZGU/OiBNYXBWaWV3TW9kZTtcbiAgb25Ub2dnbGVTcGxpdE1hcDogdHlwZW9mIE1hcFN0YXRlQWN0aW9ucy50b2dnbGVTcGxpdE1hcDtcbiAgb25TZXRNYXBTcGxpdE1vZGU/OiB0eXBlb2YgTWFwU3RhdGVBY3Rpb25zLnNldE1hcFNwbGl0TW9kZTtcbiAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0OiAoe1xuICAgIGlzVmlld3BvcnRTeW5jZWQsXG4gICAgaXNab29tTG9ja2VkXG4gIH06IHtcbiAgICBpc1ZpZXdwb3J0U3luY2VkOiBib29sZWFuO1xuICAgIGlzWm9vbUxvY2tlZDogYm9vbGVhbjtcbiAgfSkgPT4gdm9pZDtcbiAgb25NYXBUb2dnbGVMYXllcjogKGxheWVySWQ6IHN0cmluZykgPT4gdm9pZDtcbiAgb25Ub2dnbGVNYXBDb250cm9sOiAoY29udHJvbDogc3RyaW5nKSA9PiB2b2lkO1xuICBvblNldEVkaXRvck1vZGU6IChtb2RlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uVG9nZ2xlRWRpdG9yVmlzaWJpbGl0eTogKCkgPT4gdm9pZDtcbiAgb25Db252ZXJ0RWRpdG9yRmVhdHVyZXNUb0xheWVyPzogKCkgPT4gdm9pZDtcbiAgb25MYXllclZpc0NvbmZpZ0NoYW5nZTogKG9sZExheWVyOiBMYXllciwgbmV3VmlzQ29uZmlnOiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPikgPT4gdm9pZDtcbiAgb25Ub2dnbGVMYXllclZpc2liaWxpdHk/OiAobGF5ZXI6IExheWVyKSA9PiB2b2lkO1xuICB0b3A6IG51bWJlcjtcbiAgb25TZXRMb2NhbGU6IHR5cGVvZiBVSVN0YXRlQWN0aW9ucy5zZXRMb2NhbGU7XG4gIG9uU2V0VGhlbWU6IHR5cGVvZiBVSVN0YXRlQWN0aW9ucy5zZXRUaGVtZTtcbiAgYXZhaWxhYmxlTG9jYWxlczogc3RyaW5nW107XG4gIGxvY2FsZTogc3RyaW5nO1xuICB0aGVtZU5hbWU/OiBzdHJpbmc7XG4gIGxvZ29Db21wb25lbnQ/OiBSZWFjdC5GQyB8IFJlYWN0LlJlYWN0Tm9kZTtcbiAgaXNFeHBvcnQ/OiBib29sZWFuO1xuXG4gIHNldE1hcENvbnRyb2xTZXR0aW5nczogdHlwZW9mIFVJU3RhdGVBY3Rpb25zLnNldE1hcENvbnRyb2xTZXR0aW5ncztcbiAgYWN0aXZlU2lkZVBhbmVsOiBzdHJpbmcgfCBudWxsO1xuXG4gIC8vIG9wdGlvbmFsXG4gIG1hcFN0YXRlPzogTWFwU3RhdGU7XG4gIG1hcFN0YXRlQWN0aW9ucz86IHR5cGVvZiBNYXBTdGF0ZUFjdGlvbnM7XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbiAgc2NhbGU/OiBudW1iZXI7XG4gIG1hcExheWVycz86IHtba2V5OiBzdHJpbmddOiBib29sZWFufTtcbiAgZWRpdG9yOiBFZGl0b3I7XG4gIGFjdGlvbkNvbXBvbmVudHM/OiBSZWFjdC5Db21wb25lbnRUeXBlPGFueT5bXTtcbiAgbWFwSGVpZ2h0PzogbnVtYmVyO1xuICBzcGxpdE1hcHM/OiB7bGF5ZXJzOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn19W107XG4gIG9uVG9nZ2xlTGF5ZXJGb3JNYXA/OiAobWFwSW5kZXg6IG51bWJlciwgbGF5ZXJJZDogc3RyaW5nKSA9PiB2b2lkO1xufTtcblxuTWFwQ29udHJvbEZhY3RvcnkuZGVwcyA9IFtcbiAgU3BsaXRNYXBCdXR0b25GYWN0b3J5LFxuICBUb2dnbGUzZEJ1dHRvbkZhY3RvcnksXG4gIE1hcExlZ2VuZFBhbmVsRmFjdG9yeSxcbiAgTWFwRHJhd1BhbmVsRmFjdG9yeSxcbiAgTG9jYWxlUGFuZWxGYWN0b3J5LFxuICBUaGVtZVRvZ2dsZUJ1dHRvbkZhY3RvcnksXG4gIEFubm90YXRpb25Db250cm9sRmFjdG9yeSxcbiAgTWFwTmF2aWdhdGlvbkNvbnRyb2xGYWN0b3J5XG5dO1xuXG5mdW5jdGlvbiBNYXBDb250cm9sRmFjdG9yeShcbiAgU3BsaXRNYXBCdXR0b246IFJldHVyblR5cGU8dHlwZW9mIFNwbGl0TWFwQnV0dG9uRmFjdG9yeT4sXG4gIFRvZ2dsZTNkQnV0dG9uOiBSZXR1cm5UeXBlPHR5cGVvZiBUb2dnbGUzZEJ1dHRvbkZhY3Rvcnk+LFxuICBNYXBMZWdlbmRQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwTGVnZW5kUGFuZWxGYWN0b3J5PixcbiAgTWFwRHJhd1BhbmVsOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBEcmF3UGFuZWxGYWN0b3J5PixcbiAgTG9jYWxlUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIExvY2FsZVBhbmVsRmFjdG9yeT4sXG4gIFRoZW1lVG9nZ2xlQnV0dG9uOiBSZXR1cm5UeXBlPHR5cGVvZiBUaGVtZVRvZ2dsZUJ1dHRvbkZhY3Rvcnk+LFxuICBBbm5vdGF0aW9uQ29udHJvbDogUmV0dXJuVHlwZTx0eXBlb2YgQW5ub3RhdGlvbkNvbnRyb2xGYWN0b3J5PixcbiAgTWFwTmF2aWdhdGlvbkNvbnRyb2w6IFJldHVyblR5cGU8dHlwZW9mIE1hcE5hdmlnYXRpb25Db250cm9sRmFjdG9yeT5cbikge1xuICBjb25zdCBERUZBVUxUX0FDVElPTlMgPSBbXG4gICAgU3BsaXRNYXBCdXR0b24sXG4gICAgVG9nZ2xlM2RCdXR0b24sXG4gICAgTWFwRHJhd1BhbmVsLFxuICAgIEFubm90YXRpb25Db250cm9sLFxuICAgIExvY2FsZVBhbmVsLFxuICAgIFRoZW1lVG9nZ2xlQnV0dG9uLFxuICAgIE1hcExlZ2VuZFBhbmVsXG4gIF07XG5cbiAgY29uc3QgTWFwQ29udHJvbDogUmVhY3QuRkM8TWFwQ29udHJvbFByb3BzPiAmIHtcbiAgICBkZWZhdWx0QWN0aW9uQ29tcG9uZW50czogTWFwQ29udHJvbFByb3BzWydhY3Rpb25Db21wb25lbnRzJ107XG4gIH0gPSAoe1xuICAgIGFjdGlvbkNvbXBvbmVudHMgPSBERUZBVUxUX0FDVElPTlMsXG4gICAgaXNTcGxpdCA9IGZhbHNlLFxuICAgIHRvcCA9IDAsXG4gICAgbWFwSW5kZXggPSAwLFxuICAgIGxvZ29Db21wb25lbnQgPSBMZWdlbmRMb2dvLFxuICAgIG1hcFN0YXRlLFxuICAgIG1hcFN0YXRlQWN0aW9ucyxcbiAgICB0aGVtZU5hbWUsXG4gICAgb25TZXRUaGVtZSxcbiAgICAuLi5yZXN0UHJvcHNcbiAgfSkgPT4ge1xuICAgIGNvbnN0IGFjdGlvbkNvbXBvbmVudFByb3BzID0ge1xuICAgICAgaXNTcGxpdCxcbiAgICAgIG1hcEluZGV4LFxuICAgICAgbG9nb0NvbXBvbmVudCxcbiAgICAgIG1hcFN0YXRlLFxuICAgICAgb25TZXRNYXBTcGxpdE1vZGU6IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuZW5hYmxlU3dpcGVNb2RlXG4gICAgICAgID8gbWFwU3RhdGVBY3Rpb25zPy5zZXRNYXBTcGxpdE1vZGVcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAuLi5yZXN0UHJvcHMsXG4gICAgICB0aGVtZU5hbWUsXG4gICAgICBvblNldFRoZW1lXG4gICAgfTtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZE1hcENvbnRyb2wgY2xhc3NOYW1lPVwibWFwLWNvbnRyb2xcIiAkdG9wPXt0b3B9PlxuICAgICAgICB7YWN0aW9uQ29tcG9uZW50cy5tYXAoKEFjdGlvbkNvbXBvbmVudCwgaW5kZXgpID0+IChcbiAgICAgICAgICA8QWN0aW9uQ29tcG9uZW50IGtleT17aW5kZXh9IGNsYXNzTmFtZT1cIm1hcC1jb250cm9sLWFjdGlvblwiIHsuLi5hY3Rpb25Db21wb25lbnRQcm9wc30gLz5cbiAgICAgICAgKSl9XG4gICAgICAgIHttYXBTdGF0ZSAmJiBtYXBTdGF0ZUFjdGlvbnMgJiYgIXJlc3RQcm9wcy5pc0V4cG9ydCA/IChcbiAgICAgICAgICA8TWFwTmF2aWdhdGlvbkNvbnRyb2xcbiAgICAgICAgICAgIG1hcFN0YXRlPXttYXBTdGF0ZX1cbiAgICAgICAgICAgIG1hcEluZGV4PXttYXBJbmRleH1cbiAgICAgICAgICAgIG1hcFN0YXRlQWN0aW9ucz17bWFwU3RhdGVBY3Rpb25zfVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9TdHlsZWRNYXBDb250cm9sPlxuICAgICk7XG4gIH07XG5cbiAgTWFwQ29udHJvbC5kZWZhdWx0QWN0aW9uQ29tcG9uZW50cyA9IERFRkFVTFRfQUNUSU9OUztcblxuICBNYXBDb250cm9sLmRpc3BsYXlOYW1lID0gJ01hcENvbnRyb2wnO1xuXG4gIHJldHVybiBNYXBDb250cm9sO1xufVxuXG5leHBvcnQgZGVmYXVsdCBNYXBDb250cm9sRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUcsZUFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssZUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU8sWUFBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVEsa0JBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFTLHFCQUFBLEdBQUFWLHNCQUFBLENBQUFDLE9BQUE7QUFLQSxJQUFBVSxNQUFBLEdBQUFWLE9BQUE7QUFHQSxJQUFBVyxrQkFBQSxHQUFBWixzQkFBQSxDQUFBQyxPQUFBO0FBQXdFLElBQUFZLFNBQUE7QUFBQSxJQUFBQyxlQUFBLEVBdEJ4RTtBQUNBO0FBTUE7QUFBQSxTQUFBQyxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENB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YUFBYSxHQUFBRCxrQkFBQSxjQUFHakMsVUFBVSxHQUFBaUMsa0JBQUE7TUFDMUJFLFFBQVEsR0FBQVgsSUFBQSxDQUFSVyxRQUFRO01BQ1JDLGVBQWUsR0FBQVosSUFBQSxDQUFmWSxlQUFlO01BQ2ZDLFNBQVMsR0FBQWIsSUFBQSxDQUFUYSxTQUFTO01BQ1RDLFVBQVUsR0FBQWQsSUFBQSxDQUFWYyxVQUFVO01BQ1BDLFNBQVMsT0FBQUMseUJBQUEsYUFBQWhCLElBQUEsRUFBQXhELFNBQUE7SUFFWixJQUFNeUUsb0JBQW9CLEdBQUExRCxhQUFBLENBQUFBLGFBQUE7TUFDeEI2QyxPQUFPLEVBQVBBLE9BQU87TUFDUEksUUFBUSxFQUFSQSxRQUFRO01BQ1JFLGFBQWEsRUFBYkEsYUFBYTtNQUNiQyxRQUFRLEVBQVJBLFFBQVE7TUFDUk8saUJBQWlCLEVBQUUsSUFBQUMsMkJBQW9CLEVBQUMsQ0FBQyxDQUFDQyxlQUFlLEdBQ3JEUixlQUFlLGFBQWZBLGVBQWUsdUJBQWZBLGVBQWUsQ0FBRVMsZUFBZSxHQUNoQ0M7SUFBUyxHQUNWUCxTQUFTO01BQ1pGLFNBQVMsRUFBVEEsU0FBUztNQUNUQyxVQUFVLEVBQVZBO0lBQVUsRUFDWDtJQUNELG9CQUNFcEYsTUFBQSxZQUFBK0MsYUFBQSxDQUFDVixnQkFBZ0I7TUFBQ3dELFNBQVMsRUFBQyxhQUFhO01BQUNoRCxJQUFJLEVBQUUrQjtJQUFJLEdBQ2pESixnQkFBZ0IsQ0FBQ3NCLEdBQUcsQ0FBQyxVQUFDQyxlQUFlLEVBQUVDLEtBQUs7TUFBQSxvQkFDM0NoRyxNQUFBLFlBQUErQyxhQUFBLENBQUNnRCxlQUFlLE1BQUFFLFNBQUE7UUFBQ0MsR0FBRyxFQUFFRixLQUFNO1FBQUNILFNBQVMsRUFBQztNQUFvQixHQUFLTixvQkFBb0IsQ0FBRyxDQUFDO0lBQUEsQ0FDekYsQ0FBQyxFQUNETixRQUFRLElBQUlDLGVBQWUsSUFBSSxDQUFDRyxTQUFTLENBQUNjLFFBQVEsZ0JBQ2pEbkcsTUFBQSxZQUFBK0MsYUFBQSxDQUFDb0Isb0JBQW9CO01BQ25CYyxRQUFRLEVBQUVBLFFBQVM7TUFDbkJILFFBQVEsRUFBRUEsUUFBUztNQUNuQkksZUFBZSxFQUFFQTtJQUFnQixDQUNsQyxDQUFDLEdBQ0EsSUFDWSxDQUFDO0VBRXZCLENBQUM7RUFFRGIsVUFBVSxDQUFDK0IsdUJBQXVCLEdBQUdoQyxlQUFlO0VBRXBEQyxVQUFVLENBQUNnQyxXQUFXLEdBQUcsWUFBWTtFQUVyQyxPQUFPaEMsVUFBVTtBQUNuQjtBQUFDLElBQUFpQyxRQUFBLEdBQUFDLE9BQUEsY0FFY3JELGlCQUFpQiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -6,18 +6,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
11
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
12
|
+
var _copyToClipboard = _interopRequireDefault(require("copy-to-clipboard"));
|
|
13
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
11
14
|
var _constants = require("@kepler.gl/constants");
|
|
15
|
+
var _utils = require("@kepler.gl/utils");
|
|
12
16
|
var _icons = require("../common/icons");
|
|
13
|
-
var
|
|
17
|
+
var _styledComponents2 = require("../common/styled-components");
|
|
14
18
|
var _toolbarItem = _interopRequireDefault(require("../common/toolbar-item"));
|
|
15
19
|
var _mapControlTooltip = _interopRequireDefault(require("./map-control-tooltip"));
|
|
16
20
|
var _mapControlToolbar = _interopRequireDefault(require("./map-control-toolbar"));
|
|
17
|
-
|
|
18
|
-
// SPDX-License-Identifier: MIT
|
|
21
|
+
var _templateObject, _templateObject2; // SPDX-License-Identifier: MIT
|
|
19
22
|
// Copyright contributors to the kepler.gl project
|
|
20
|
-
|
|
23
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
24
|
+
var ToolbarSeparator = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n height: 1px;\n margin: 4px 12px;\n background-color: ", ";\n opacity: 0.2;\n"])), function (props) {
|
|
25
|
+
return props.theme.panelHeaderIcon;
|
|
26
|
+
});
|
|
27
|
+
var DrawControls = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n\n .convert-to-layer .toolbar-item__title {\n flex: 1;\n min-width: 0;\n white-space: pre;\n text-align: center;\n line-height: 1.25;\n overflow: hidden;\n font-size: 11px;\n }\n"])));
|
|
21
28
|
MapDrawPanelFactory.deps = [_mapControlTooltip["default"], _mapControlToolbar["default"]];
|
|
22
29
|
function MapDrawPanelFactory(MapControlTooltip, MapControlToolbar) {
|
|
23
30
|
var defaultActionIcons = {
|
|
@@ -26,31 +33,43 @@ function MapDrawPanelFactory(MapControlTooltip, MapControlToolbar) {
|
|
|
26
33
|
polygon: _icons.DrawPolygon,
|
|
27
34
|
cursor: _icons.CursorClick,
|
|
28
35
|
innerPolygon: _icons.Polygon,
|
|
29
|
-
rectangle: _icons.Rectangle
|
|
36
|
+
rectangle: _icons.Rectangle,
|
|
37
|
+
circle: _icons.Circle,
|
|
38
|
+
point: _icons.DrawPoint,
|
|
39
|
+
line: _icons.LineString,
|
|
40
|
+
copy: _icons.Copy,
|
|
41
|
+
layers: _icons.Layers
|
|
30
42
|
};
|
|
31
43
|
var MapDrawPanel = /*#__PURE__*/_react["default"].memo(function (_ref) {
|
|
32
|
-
var _mapControls$mapDraw, _mapControls$mapDraw2;
|
|
44
|
+
var _mapControls$mapDraw, _editor$features, _mapControls$mapDraw2;
|
|
33
45
|
var editor = _ref.editor,
|
|
34
46
|
mapControls = _ref.mapControls,
|
|
35
47
|
onToggleMapControl = _ref.onToggleMapControl,
|
|
36
48
|
onSetEditorMode = _ref.onSetEditorMode,
|
|
49
|
+
onConvertEditorFeaturesToLayer = _ref.onConvertEditorFeaturesToLayer,
|
|
37
50
|
_ref$actionIcons = _ref.actionIcons,
|
|
38
51
|
actionIcons = _ref$actionIcons === void 0 ? defaultActionIcons : _ref$actionIcons;
|
|
39
52
|
var isActive = mapControls === null || mapControls === void 0 || (_mapControls$mapDraw = mapControls.mapDraw) === null || _mapControls$mapDraw === void 0 ? void 0 : _mapControls$mapDraw.active;
|
|
53
|
+
var hasSketchFeatures = Boolean(editor === null || editor === void 0 || (_editor$features = editor.features) === null || _editor$features === void 0 ? void 0 : _editor$features.length);
|
|
54
|
+
var enableSketches = (0, _utils.getApplicationConfig)().enableDrawOnMapSketches;
|
|
40
55
|
var onToggleMenuPanel = (0, _react.useCallback)(function () {
|
|
41
56
|
if (!isActive) {
|
|
42
57
|
onSetEditorMode(_constants.EDITOR_MODES.DRAW_RECTANGLE);
|
|
43
58
|
}
|
|
44
59
|
onToggleMapControl('mapDraw');
|
|
45
60
|
}, [isActive, onToggleMapControl, onSetEditorMode]);
|
|
61
|
+
var onCopyAllGeometry = (0, _react.useCallback)(function () {
|
|
62
|
+
var _editor$features2;
|
|
63
|
+
if (!(editor !== null && editor !== void 0 && (_editor$features2 = editor.features) !== null && _editor$features2 !== void 0 && _editor$features2.length)) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
(0, _copyToClipboard["default"])(JSON.stringify((0, _utils.editorFeaturesToFeatureCollection)(editor.features)));
|
|
67
|
+
}, [editor === null || editor === void 0 ? void 0 : editor.features]);
|
|
46
68
|
if (!(mapControls !== null && mapControls !== void 0 && (_mapControls$mapDraw2 = mapControls.mapDraw) !== null && _mapControls$mapDraw2 !== void 0 && _mapControls$mapDraw2.show)) {
|
|
47
69
|
return null;
|
|
48
70
|
}
|
|
49
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
50
|
-
className: "map-draw-controls"
|
|
51
|
-
style: {
|
|
52
|
-
position: 'relative'
|
|
53
|
-
}
|
|
71
|
+
return /*#__PURE__*/_react["default"].createElement(DrawControls, {
|
|
72
|
+
className: "map-draw-controls"
|
|
54
73
|
}, isActive ? /*#__PURE__*/_react["default"].createElement(MapControlToolbar, {
|
|
55
74
|
$show: isActive
|
|
56
75
|
}, /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
@@ -61,7 +80,23 @@ function MapDrawPanelFactory(MapControlTooltip, MapControlToolbar) {
|
|
|
61
80
|
label: "toolbar.select",
|
|
62
81
|
icon: actionIcons.cursor,
|
|
63
82
|
active: editor.mode === _constants.EDITOR_MODES.EDIT
|
|
64
|
-
}), /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
83
|
+
}), enableSketches ? /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
84
|
+
className: "draw-point",
|
|
85
|
+
onClick: function onClick() {
|
|
86
|
+
return onSetEditorMode(_constants.EDITOR_MODES.DRAW_POINT);
|
|
87
|
+
},
|
|
88
|
+
label: "toolbar.point",
|
|
89
|
+
icon: actionIcons.point,
|
|
90
|
+
active: editor.mode === _constants.EDITOR_MODES.DRAW_POINT
|
|
91
|
+
}) : null, enableSketches ? /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
92
|
+
className: "draw-line",
|
|
93
|
+
onClick: function onClick() {
|
|
94
|
+
return onSetEditorMode(_constants.EDITOR_MODES.DRAW_LINESTRING);
|
|
95
|
+
},
|
|
96
|
+
label: "toolbar.line",
|
|
97
|
+
icon: actionIcons.line,
|
|
98
|
+
active: editor.mode === _constants.EDITOR_MODES.DRAW_LINESTRING
|
|
99
|
+
}) : null, /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
65
100
|
className: "draw-feature",
|
|
66
101
|
onClick: function onClick() {
|
|
67
102
|
return onSetEditorMode(_constants.EDITOR_MODES.DRAW_POLYGON);
|
|
@@ -77,10 +112,34 @@ function MapDrawPanelFactory(MapControlTooltip, MapControlToolbar) {
|
|
|
77
112
|
label: "toolbar.rectangle",
|
|
78
113
|
icon: actionIcons.rectangle,
|
|
79
114
|
active: editor.mode === _constants.EDITOR_MODES.DRAW_RECTANGLE
|
|
80
|
-
})
|
|
115
|
+
}), /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
116
|
+
className: "draw-circle",
|
|
117
|
+
onClick: function onClick() {
|
|
118
|
+
return onSetEditorMode(_constants.EDITOR_MODES.DRAW_CIRCLE);
|
|
119
|
+
},
|
|
120
|
+
label: "toolbar.circle",
|
|
121
|
+
icon: actionIcons.circle,
|
|
122
|
+
active: editor.mode === _constants.EDITOR_MODES.DRAW_CIRCLE
|
|
123
|
+
}), enableSketches ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(ToolbarSeparator, null), /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
124
|
+
className: "copy-all-geometry",
|
|
125
|
+
onClick: onCopyAllGeometry,
|
|
126
|
+
label: "toolbar.copyAll",
|
|
127
|
+
tooltip: "tooltip.copyAllSketches",
|
|
128
|
+
icon: actionIcons.copy,
|
|
129
|
+
disabled: !hasSketchFeatures
|
|
130
|
+
}), /*#__PURE__*/_react["default"].createElement(_toolbarItem["default"], {
|
|
131
|
+
className: "convert-to-layer",
|
|
132
|
+
onClick: function onClick() {
|
|
133
|
+
return onConvertEditorFeaturesToLayer === null || onConvertEditorFeaturesToLayer === void 0 ? void 0 : onConvertEditorFeaturesToLayer();
|
|
134
|
+
},
|
|
135
|
+
label: "toolbar.convertToLayer",
|
|
136
|
+
tooltip: "tooltip.convertToLayer",
|
|
137
|
+
icon: actionIcons.layers,
|
|
138
|
+
disabled: !hasSketchFeatures
|
|
139
|
+
})) : null) : null, /*#__PURE__*/_react["default"].createElement(MapControlTooltip, {
|
|
81
140
|
id: "map-draw",
|
|
82
141
|
message: "tooltip.DrawOnMap"
|
|
83
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
142
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.MapControlButton, {
|
|
84
143
|
className: (0, _classnames["default"])('map-control-button', 'map-draw', {
|
|
85
144
|
isActive: isActive
|
|
86
145
|
}),
|
|
@@ -97,4 +156,4 @@ function MapDrawPanelFactory(MapControlTooltip, MapControlToolbar) {
|
|
|
97
156
|
return MapDrawPanel;
|
|
98
157
|
}
|
|
99
158
|
var _default = exports["default"] = MapDrawPanelFactory;
|
|
100
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX2ljb25zIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfdG9vbGJhckl0ZW0iLCJfbWFwQ29udHJvbFRvb2x0aXAiLCJfbWFwQ29udHJvbFRvb2xiYXIiLCJlIiwidCIsIldlYWtNYXAiLCJyIiwibiIsIl9fZXNNb2R1bGUiLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJfdHlwZW9mIiwiaGFzIiwiZ2V0Iiwic2V0IiwiX3QiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIk1hcERyYXdQYW5lbEZhY3RvcnkiLCJkZXBzIiwiTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5IiwiTWFwQ29udHJvbFRvb2xiYXJGYWN0b3J5IiwiTWFwQ29udHJvbFRvb2x0aXAiLCJNYXBDb250cm9sVG9vbGJhciIsImRlZmF1bHRBY3Rpb25JY29ucyIsInZpc2libGUiLCJFeWVTZWVuIiwiaGlkZGVuIiwiRXllVW5zZWVuIiwicG9seWdvbiIsIkRyYXdQb2x5Z29uIiwiY3Vyc29yIiwiQ3Vyc29yQ2xpY2siLCJpbm5lclBvbHlnb24iLCJQb2x5Z29uIiwicmVjdGFuZ2xlIiwiUmVjdGFuZ2xlIiwiTWFwRHJhd1BhbmVsIiwiUmVhY3QiLCJtZW1vIiwiX3JlZiIsIl9tYXBDb250cm9scyRtYXBEcmF3IiwiX21hcENvbnRyb2xzJG1hcERyYXcyIiwiZWRpdG9yIiwibWFwQ29udHJvbHMiLCJvblRvZ2dsZU1hcENvbnRyb2wiLCJvblNldEVkaXRvck1vZGUiLCJfcmVmJGFjdGlvbkljb25zIiwiYWN0aW9uSWNvbnMiLCJpc0FjdGl2ZSIsIm1hcERyYXciLCJhY3RpdmUiLCJvblRvZ2dsZU1lbnVQYW5lbCIsInVzZUNhbGxiYWNrIiwiRURJVE9SX01PREVTIiwiRFJBV19SRUNUQU5HTEUiLCJzaG93IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsInN0eWxlIiwicG9zaXRpb24iLCIkc2hvdyIsIm9uQ2xpY2siLCJFRElUIiwibGFiZWwiLCJpY29uIiwibW9kZSIsIkRSQVdfUE9MWUdPTiIsImlkIiwibWVzc2FnZSIsIk1hcENvbnRyb2xCdXR0b24iLCJjbGFzc25hbWVzIiwicHJldmVudERlZmF1bHQiLCJoZWlnaHQiLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXAvbWFwLWRyYXctcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IHtFRElUT1JfTU9ERVN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7Q3Vyc29yQ2xpY2ssIERyYXdQb2x5Z29uLCBFeWVTZWVuLCBFeWVVbnNlZW4sIFBvbHlnb24sIFJlY3RhbmdsZX0gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCB7TWFwQ29udHJvbEJ1dHRvbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBUb29sYmFySXRlbSBmcm9tICcuLi9jb21tb24vdG9vbGJhci1pdGVtJztcbmltcG9ydCBNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sdGlwJztcbmltcG9ydCBNYXBDb250cm9sVG9vbGJhckZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sYmFyJztcbmltcG9ydCB7RWRpdG9yLCBNYXBDb250cm9sc30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0Jhc2VQcm9wc30gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcblxuTWFwRHJhd1BhbmVsRmFjdG9yeS5kZXBzID0gW01hcENvbnRyb2xUb29sdGlwRmFjdG9yeSwgTWFwQ29udHJvbFRvb2xiYXJGYWN0b3J5XTtcblxuZXhwb3J0IHR5cGUgTWFwRHJhd1BhbmVsUHJvcHMgPSB7XG4gIGVkaXRvcjogRWRpdG9yO1xuICBtYXBDb250cm9sczogTWFwQ29udHJvbHM7XG4gIG9uVG9nZ2xlTWFwQ29udHJvbDogKGNvbnRyb2w6IHN0cmluZykgPT4gdm9pZDtcbiAgb25TZXRFZGl0b3JNb2RlOiAobW9kZTogc3RyaW5nKSA9PiB2b2lkO1xuICBvblRvZ2dsZUVkaXRvclZpc2liaWxpdHk6ICgpID0+IHZvaWQ7XG4gIGFjdGlvbkljb25zOiB7W2lkOiBzdHJpbmddOiBSZWFjdC5Db21wb25lbnRUeXBlPFBhcnRpYWw8QmFzZVByb3BzPj59O1xufTtcblxuZnVuY3Rpb24gTWFwRHJhd1BhbmVsRmFjdG9yeShcbiAgTWFwQ29udHJvbFRvb2x0aXA6IFJldHVyblR5cGU8dHlwZW9mIE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeT4sXG4gIE1hcENvbnRyb2xUb29sYmFyOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBDb250cm9sVG9vbGJhckZhY3Rvcnk+XG4pIHtcbiAgY29uc3QgZGVmYXVsdEFjdGlvbkljb25zID0ge1xuICAgIHZpc2libGU6IEV5ZVNlZW4sXG4gICAgaGlkZGVuOiBFeWVVbnNlZW4sXG4gICAgcG9seWdvbjogRHJhd1BvbHlnb24sXG4gICAgY3Vyc29yOiBDdXJzb3JDbGljayxcbiAgICBpbm5lclBvbHlnb246IFBvbHlnb24sXG4gICAgcmVjdGFuZ2xlOiBSZWN0YW5nbGVcbiAgfTtcblxuICBjb25zdCBNYXBEcmF3UGFuZWw6IFJlYWN0LkZDPE1hcERyYXdQYW5lbFByb3BzPiA9IFJlYWN0Lm1lbW8oXG4gICAgKHtcbiAgICAgIGVkaXRvcixcbiAgICAgIG1hcENvbnRyb2xzLFxuICAgICAgb25Ub2dnbGVNYXBDb250cm9sLFxuICAgICAgb25TZXRFZGl0b3JNb2RlLFxuICAgICAgYWN0aW9uSWNvbnMgPSBkZWZhdWx0QWN0aW9uSWNvbnNcbiAgICB9KSA9PiB7XG4gICAgICBjb25zdCBpc0FjdGl2ZSA9IG1hcENvbnRyb2xzPy5tYXBEcmF3Py5hY3RpdmU7XG4gICAgICBjb25zdCBvblRvZ2dsZU1lbnVQYW5lbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgaWYgKCFpc0FjdGl2ZSkge1xuICAgICAgICAgIG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19SRUNUQU5HTEUpO1xuICAgICAgICB9XG4gICAgICAgIG9uVG9nZ2xlTWFwQ29udHJvbCgnbWFwRHJhdycpO1xuICAgICAgfSwgW2lzQWN0aXZlLCBvblRvZ2dsZU1hcENvbnRyb2wsIG9uU2V0RWRpdG9yTW9kZV0pO1xuICAgICAgaWYgKCFtYXBDb250cm9scz8ubWFwRHJhdz8uc2hvdykge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWFwLWRyYXctY29udHJvbHNcIiBzdHlsZT17e3Bvc2l0aW9uOiAncmVsYXRpdmUnfX0+XG4gICAgICAgICAge2lzQWN0aXZlID8gKFxuICAgICAgICAgICAgPE1hcENvbnRyb2xUb29sYmFyICRzaG93PXtpc0FjdGl2ZX0+XG4gICAgICAgICAgICAgIDxUb29sYmFySXRlbVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImVkaXQtZmVhdHVyZVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25TZXRFZGl0b3JNb2RlKEVESVRPUl9NT0RFUy5FRElUKX1cbiAgICAgICAgICAgICAgICBsYWJlbD1cInRvb2xiYXIuc2VsZWN0XCJcbiAgICAgICAgICAgICAgICBpY29uPXthY3Rpb25JY29ucy5jdXJzb3J9XG4gICAgICAgICAgICAgICAgYWN0aXZlPXtlZGl0b3IubW9kZSA9PT0gRURJVE9SX01PREVTLkVESVR9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxUb29sYmFySXRlbVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImRyYXctZmVhdHVyZVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25TZXRFZGl0b3JNb2RlKEVESVRPUl9NT0RFUy5EUkFXX1BPTFlHT04pfVxuICAgICAgICAgICAgICAgIGxhYmVsPVwidG9vbGJhci5wb2x5Z29uXCJcbiAgICAgICAgICAgICAgICBpY29uPXthY3Rpb25JY29ucy5pbm5lclBvbHlnb259XG4gICAgICAgICAgICAgICAgYWN0aXZlPXtlZGl0b3IubW9kZSA9PT0gRURJVE9SX01PREVTLkRSQVdfUE9MWUdPTn1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPFRvb2xiYXJJdGVtXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZHJhdy1yZWN0YW5nbGVcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19SRUNUQU5HTEUpfVxuICAgICAgICAgICAgICAgIGxhYmVsPVwidG9vbGJhci5yZWN0YW5nbGVcIlxuICAgICAgICAgICAgICAgIGljb249e2FjdGlvbkljb25zLnJlY3RhbmdsZX1cbiAgICAgICAgICAgICAgICBhY3RpdmU9e2VkaXRvci5tb2RlID09PSBFRElUT1JfTU9ERVMuRFJBV19SRUNUQU5HTEV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L01hcENvbnRyb2xUb29sYmFyPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDxNYXBDb250cm9sVG9vbHRpcCBpZD1cIm1hcC1kcmF3XCIgbWVzc2FnZT1cInRvb2x0aXAuRHJhd09uTWFwXCI+XG4gICAgICAgICAgICA8TWFwQ29udHJvbEJ1dHRvblxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ21hcC1jb250cm9sLWJ1dHRvbicsICdtYXAtZHJhdycsIHtpc0FjdGl2ZX0pfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgb25Ub2dnbGVNZW51UGFuZWwoKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgYWN0aXZlPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGFjdGlvbkljb25zLnBvbHlnb24gaGVpZ2h0PVwiMThweFwiIC8+XG4gICAgICAgICAgICA8L01hcENvbnRyb2xCdXR0b24+XG4gICAgICAgICAgPC9NYXBDb250cm9sVG9vbHRpcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgKTtcblxuICBNYXBEcmF3UGFuZWwuZGlzcGxheU5hbWUgPSAnTWFwRHJhd1BhbmVsJztcbiAgcmV0dXJuIE1hcERyYXdQYW5lbDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwRHJhd1BhbmVsRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxVQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxpQkFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sWUFBQSxHQUFBSixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU8sa0JBQUEsR0FBQUwsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFRLGtCQUFBLEdBQUFOLHNCQUFBLENBQUFGLE9BQUE7QUFBNkQsU0FBQUQsd0JBQUFVLENBQUEsRUFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFB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
|
|
159
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29weVRvQ2xpcGJvYXJkIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfY29uc3RhbnRzIiwiX3V0aWxzIiwiX2ljb25zIiwiX3N0eWxlZENvbXBvbmVudHMyIiwiX3Rvb2xiYXJJdGVtIiwiX21hcENvbnRyb2xUb29sdGlwIiwiX21hcENvbnRyb2xUb29sYmFyIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsImUiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwiX19lc01vZHVsZSIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJzZXQiLCJfdCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiVG9vbGJhclNlcGFyYXRvciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsInBhbmVsSGVhZGVySWNvbiIsIkRyYXdDb250cm9scyIsIk1hcERyYXdQYW5lbEZhY3RvcnkiLCJkZXBzIiwiTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5IiwiTWFwQ29udHJvbFRvb2xiYXJGYWN0b3J5IiwiTWFwQ29udHJvbFRvb2x0aXAiLCJNYXBDb250cm9sVG9vbGJhciIsImRlZmF1bHRBY3Rpb25JY29ucyIsInZpc2libGUiLCJFeWVTZWVuIiwiaGlkZGVuIiwiRXllVW5zZWVuIiwicG9seWdvbiIsIkRyYXdQb2x5Z29uIiwiY3Vyc29yIiwiQ3Vyc29yQ2xpY2siLCJpbm5lclBvbHlnb24iLCJQb2x5Z29uIiwicmVjdGFuZ2xlIiwiUmVjdGFuZ2xlIiwiY2lyY2xlIiwiQ2lyY2xlIiwicG9pbnQiLCJEcmF3UG9pbnQiLCJsaW5lIiwiTGluZVN0cmluZyIsImNvcHkiLCJDb3B5IiwibGF5ZXJzIiwiTGF5ZXJzIiwiTWFwRHJhd1BhbmVsIiwiUmVhY3QiLCJtZW1vIiwiX3JlZiIsIl9tYXBDb250cm9scyRtYXBEcmF3IiwiX2VkaXRvciRmZWF0dXJlcyIsIl9tYXBDb250cm9scyRtYXBEcmF3MiIsImVkaXRvciIsIm1hcENvbnRyb2xzIiwib25Ub2dnbGVNYXBDb250cm9sIiwib25TZXRFZGl0b3JNb2RlIiwib25Db252ZXJ0RWRpdG9yRmVhdHVyZXNUb0xheWVyIiwiX3JlZiRhY3Rpb25JY29ucyIsImFjdGlvbkljb25zIiwiaXNBY3RpdmUiLCJtYXBEcmF3IiwiYWN0aXZlIiwiaGFzU2tldGNoRmVhdHVyZXMiLCJCb29sZWFuIiwiZmVhdHVyZXMiLCJsZW5ndGgiLCJlbmFibGVTa2V0Y2hlcyIsImdldEFwcGxpY2F0aW9uQ29uZmlnIiwiZW5hYmxlRHJhd09uTWFwU2tldGNoZXMiLCJvblRvZ2dsZU1lbnVQYW5lbCIsInVzZUNhbGxiYWNrIiwiRURJVE9SX01PREVTIiwiRFJBV19SRUNUQU5HTEUiLCJvbkNvcHlBbGxHZW9tZXRyeSIsIl9lZGl0b3IkZmVhdHVyZXMyIiwiSlNPTiIsInN0cmluZ2lmeSIsImVkaXRvckZlYXR1cmVzVG9GZWF0dXJlQ29sbGVjdGlvbiIsInNob3ciLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiJHNob3ciLCJvbkNsaWNrIiwiRURJVCIsImxhYmVsIiwiaWNvbiIsIm1vZGUiLCJEUkFXX1BPSU5UIiwiRFJBV19MSU5FU1RSSU5HIiwiRFJBV19QT0xZR09OIiwiRFJBV19DSVJDTEUiLCJGcmFnbWVudCIsInRvb2x0aXAiLCJkaXNhYmxlZCIsImlkIiwibWVzc2FnZSIsIk1hcENvbnRyb2xCdXR0b24iLCJjbGFzc25hbWVzIiwicHJldmVudERlZmF1bHQiLCJoZWlnaHQiLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tYXAvbWFwLWRyYXctcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCBjb3B5IGZyb20gJ2NvcHktdG8tY2xpcGJvYXJkJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge0VESVRPUl9NT0RFU30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtlZGl0b3JGZWF0dXJlc1RvRmVhdHVyZUNvbGxlY3Rpb24sIGdldEFwcGxpY2F0aW9uQ29uZmlnfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7XG4gIENvcHksXG4gIEN1cnNvckNsaWNrLFxuICBEcmF3UG9pbnQsXG4gIERyYXdQb2x5Z29uLFxuICBFeWVTZWVuLFxuICBFeWVVbnNlZW4sXG4gIExheWVycyxcbiAgTGluZVN0cmluZyxcbiAgUG9seWdvbixcbiAgUmVjdGFuZ2xlLFxuICBDaXJjbGVcbn0gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCB7TWFwQ29udHJvbEJ1dHRvbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBUb29sYmFySXRlbSBmcm9tICcuLi9jb21tb24vdG9vbGJhci1pdGVtJztcbmltcG9ydCBNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sdGlwJztcbmltcG9ydCBNYXBDb250cm9sVG9vbGJhckZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sYmFyJztcbmltcG9ydCB7RWRpdG9yLCBNYXBDb250cm9sc30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0Jhc2VQcm9wc30gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcblxuY29uc3QgVG9vbGJhclNlcGFyYXRvciA9IHN0eWxlZC5kaXZgXG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDRweCAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsSGVhZGVySWNvbn07XG4gIG9wYWNpdHk6IDAuMjtcbmA7XG5cbmNvbnN0IERyYXdDb250cm9scyA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY29udmVydC10by1sYXllciAudG9vbGJhci1pdGVtX190aXRsZSB7XG4gICAgZmxleDogMTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LXNpemU6IDExcHg7XG4gIH1cbmA7XG5cbk1hcERyYXdQYW5lbEZhY3RvcnkuZGVwcyA9IFtNYXBDb250cm9sVG9vbHRpcEZhY3RvcnksIE1hcENvbnRyb2xUb29sYmFyRmFjdG9yeV07XG5cbmV4cG9ydCB0eXBlIE1hcERyYXdQYW5lbFByb3BzID0ge1xuICBlZGl0b3I6IEVkaXRvcjtcbiAgbWFwQ29udHJvbHM6IE1hcENvbnRyb2xzO1xuICBvblRvZ2dsZU1hcENvbnRyb2w6IChjb250cm9sOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uU2V0RWRpdG9yTW9kZTogKG1vZGU6IHN0cmluZykgPT4gdm9pZDtcbiAgb25Ub2dnbGVFZGl0b3JWaXNpYmlsaXR5OiAoKSA9PiB2b2lkO1xuICBvbkNvbnZlcnRFZGl0b3JGZWF0dXJlc1RvTGF5ZXI/OiAoKSA9PiB2b2lkO1xuICBhY3Rpb25JY29uczoge1tpZDogc3RyaW5nXTogUmVhY3QuQ29tcG9uZW50VHlwZTxQYXJ0aWFsPEJhc2VQcm9wcz4+fTtcbn07XG5cbmZ1bmN0aW9uIE1hcERyYXdQYW5lbEZhY3RvcnkoXG4gIE1hcENvbnRyb2xUb29sdGlwOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBDb250cm9sVG9vbHRpcEZhY3Rvcnk+LFxuICBNYXBDb250cm9sVG9vbGJhcjogUmV0dXJuVHlwZTx0eXBlb2YgTWFwQ29udHJvbFRvb2xiYXJGYWN0b3J5PlxuKSB7XG4gIGNvbnN0IGRlZmF1bHRBY3Rpb25JY29ucyA9IHtcbiAgICB2aXNpYmxlOiBFeWVTZWVuLFxuICAgIGhpZGRlbjogRXllVW5zZWVuLFxuICAgIHBvbHlnb246IERyYXdQb2x5Z29uLFxuICAgIGN1cnNvcjogQ3Vyc29yQ2xpY2ssXG4gICAgaW5uZXJQb2x5Z29uOiBQb2x5Z29uLFxuICAgIHJlY3RhbmdsZTogUmVjdGFuZ2xlLFxuICAgIGNpcmNsZTogQ2lyY2xlLFxuICAgIHBvaW50OiBEcmF3UG9pbnQsXG4gICAgbGluZTogTGluZVN0cmluZyxcbiAgICBjb3B5OiBDb3B5LFxuICAgIGxheWVyczogTGF5ZXJzXG4gIH07XG5cbiAgY29uc3QgTWFwRHJhd1BhbmVsOiBSZWFjdC5GQzxNYXBEcmF3UGFuZWxQcm9wcz4gPSBSZWFjdC5tZW1vKFxuICAgICh7XG4gICAgICBlZGl0b3IsXG4gICAgICBtYXBDb250cm9scyxcbiAgICAgIG9uVG9nZ2xlTWFwQ29udHJvbCxcbiAgICAgIG9uU2V0RWRpdG9yTW9kZSxcbiAgICAgIG9uQ29udmVydEVkaXRvckZlYXR1cmVzVG9MYXllcixcbiAgICAgIGFjdGlvbkljb25zID0gZGVmYXVsdEFjdGlvbkljb25zXG4gICAgfSkgPT4ge1xuICAgICAgY29uc3QgaXNBY3RpdmUgPSBtYXBDb250cm9scz8ubWFwRHJhdz8uYWN0aXZlO1xuICAgICAgY29uc3QgaGFzU2tldGNoRmVhdHVyZXMgPSBCb29sZWFuKGVkaXRvcj8uZmVhdHVyZXM/Lmxlbmd0aCk7XG4gICAgICBjb25zdCBlbmFibGVTa2V0Y2hlcyA9IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuZW5hYmxlRHJhd09uTWFwU2tldGNoZXM7XG4gICAgICBjb25zdCBvblRvZ2dsZU1lbnVQYW5lbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgaWYgKCFpc0FjdGl2ZSkge1xuICAgICAgICAgIG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19SRUNUQU5HTEUpO1xuICAgICAgICB9XG4gICAgICAgIG9uVG9nZ2xlTWFwQ29udHJvbCgnbWFwRHJhdycpO1xuICAgICAgfSwgW2lzQWN0aXZlLCBvblRvZ2dsZU1hcENvbnRyb2wsIG9uU2V0RWRpdG9yTW9kZV0pO1xuICAgICAgY29uc3Qgb25Db3B5QWxsR2VvbWV0cnkgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIGlmICghZWRpdG9yPy5mZWF0dXJlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvcHkoSlNPTi5zdHJpbmdpZnkoZWRpdG9yRmVhdHVyZXNUb0ZlYXR1cmVDb2xsZWN0aW9uKGVkaXRvci5mZWF0dXJlcykpKTtcbiAgICAgIH0sIFtlZGl0b3I/LmZlYXR1cmVzXSk7XG4gICAgICBpZiAoIW1hcENvbnRyb2xzPy5tYXBEcmF3Py5zaG93KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPERyYXdDb250cm9scyBjbGFzc05hbWU9XCJtYXAtZHJhdy1jb250cm9sc1wiPlxuICAgICAgICAgIHtpc0FjdGl2ZSA/IChcbiAgICAgICAgICAgIDxNYXBDb250cm9sVG9vbGJhciAkc2hvdz17aXNBY3RpdmV9PlxuICAgICAgICAgICAgICA8VG9vbGJhckl0ZW1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJlZGl0LWZlYXR1cmVcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRURJVCl9XG4gICAgICAgICAgICAgICAgbGFiZWw9XCJ0b29sYmFyLnNlbGVjdFwiXG4gICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMuY3Vyc29yfVxuICAgICAgICAgICAgICAgIGFjdGl2ZT17ZWRpdG9yLm1vZGUgPT09IEVESVRPUl9NT0RFUy5FRElUfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICB7ZW5hYmxlU2tldGNoZXMgPyAoXG4gICAgICAgICAgICAgICAgPFRvb2xiYXJJdGVtXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJkcmF3LXBvaW50XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19QT0lOVCl9XG4gICAgICAgICAgICAgICAgICBsYWJlbD1cInRvb2xiYXIucG9pbnRcIlxuICAgICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMucG9pbnR9XG4gICAgICAgICAgICAgICAgICBhY3RpdmU9e2VkaXRvci5tb2RlID09PSBFRElUT1JfTU9ERVMuRFJBV19QT0lOVH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAge2VuYWJsZVNrZXRjaGVzID8gKFxuICAgICAgICAgICAgICAgIDxUb29sYmFySXRlbVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZHJhdy1saW5lXCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19MSU5FU1RSSU5HKX1cbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwidG9vbGJhci5saW5lXCJcbiAgICAgICAgICAgICAgICAgIGljb249e2FjdGlvbkljb25zLmxpbmV9XG4gICAgICAgICAgICAgICAgICBhY3RpdmU9e2VkaXRvci5tb2RlID09PSBFRElUT1JfTU9ERVMuRFJBV19MSU5FU1RSSU5HfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8VG9vbGJhckl0ZW1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJkcmF3LWZlYXR1cmVcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uU2V0RWRpdG9yTW9kZShFRElUT1JfTU9ERVMuRFJBV19QT0xZR09OKX1cbiAgICAgICAgICAgICAgICBsYWJlbD1cInRvb2xiYXIucG9seWdvblwiXG4gICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMuaW5uZXJQb2x5Z29ufVxuICAgICAgICAgICAgICAgIGFjdGl2ZT17ZWRpdG9yLm1vZGUgPT09IEVESVRPUl9NT0RFUy5EUkFXX1BPTFlHT059XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxUb29sYmFySXRlbVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImRyYXctcmVjdGFuZ2xlXCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvblNldEVkaXRvck1vZGUoRURJVE9SX01PREVTLkRSQVdfUkVDVEFOR0xFKX1cbiAgICAgICAgICAgICAgICBsYWJlbD1cInRvb2xiYXIucmVjdGFuZ2xlXCJcbiAgICAgICAgICAgICAgICBpY29uPXthY3Rpb25JY29ucy5yZWN0YW5nbGV9XG4gICAgICAgICAgICAgICAgYWN0aXZlPXtlZGl0b3IubW9kZSA9PT0gRURJVE9SX01PREVTLkRSQVdfUkVDVEFOR0xFfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8VG9vbGJhckl0ZW1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJkcmF3LWNpcmNsZVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25TZXRFZGl0b3JNb2RlKEVESVRPUl9NT0RFUy5EUkFXX0NJUkNMRSl9XG4gICAgICAgICAgICAgICAgbGFiZWw9XCJ0b29sYmFyLmNpcmNsZVwiXG4gICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMuY2lyY2xlfVxuICAgICAgICAgICAgICAgIGFjdGl2ZT17ZWRpdG9yLm1vZGUgPT09IEVESVRPUl9NT0RFUy5EUkFXX0NJUkNMRX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAge2VuYWJsZVNrZXRjaGVzID8gKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8VG9vbGJhclNlcGFyYXRvciAvPlxuICAgICAgICAgICAgICAgICAgPFRvb2xiYXJJdGVtXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImNvcHktYWxsLWdlb21ldHJ5XCJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17b25Db3B5QWxsR2VvbWV0cnl9XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwidG9vbGJhci5jb3B5QWxsXCJcbiAgICAgICAgICAgICAgICAgICAgdG9vbHRpcD1cInRvb2x0aXAuY29weUFsbFNrZXRjaGVzXCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMuY29weX1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFoYXNTa2V0Y2hGZWF0dXJlc31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8VG9vbGJhckl0ZW1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiY29udmVydC10by1sYXllclwiXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ29udmVydEVkaXRvckZlYXR1cmVzVG9MYXllcj8uKCl9XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwidG9vbGJhci5jb252ZXJ0VG9MYXllclwiXG4gICAgICAgICAgICAgICAgICAgIHRvb2x0aXA9XCJ0b29sdGlwLmNvbnZlcnRUb0xheWVyXCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj17YWN0aW9uSWNvbnMubGF5ZXJzfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17IWhhc1NrZXRjaEZlYXR1cmVzfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8L01hcENvbnRyb2xUb29sYmFyPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDxNYXBDb250cm9sVG9vbHRpcCBpZD1cIm1hcC1kcmF3XCIgbWVzc2FnZT1cInRvb2x0aXAuRHJhd09uTWFwXCI+XG4gICAgICAgICAgICA8TWFwQ29udHJvbEJ1dHRvblxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ21hcC1jb250cm9sLWJ1dHRvbicsICdtYXAtZHJhdycsIHtpc0FjdGl2ZX0pfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgb25Ub2dnbGVNZW51UGFuZWwoKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgYWN0aXZlPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGFjdGlvbkljb25zLnBvbHlnb24gaGVpZ2h0PVwiMThweFwiIC8+XG4gICAgICAgICAgICA8L01hcENvbnRyb2xCdXR0b24+XG4gICAgICAgICAgPC9NYXBDb250cm9sVG9vbHRpcD5cbiAgICAgICAgPC9EcmF3Q29udHJvbHM+XG4gICAgICApO1xuICAgIH1cbiAgKTtcblxuICBNYXBEcmF3UGFuZWwuZGlzcGxheU5hbWUgPSAnTWFwRHJhd1BhbmVsJztcbiAgcmV0dXJuIE1hcERyYXdQYW5lbDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwRHJhd1BhbmVsRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsZ0JBQUEsR0FBQUQsc0JBQUEsQ0FBQUYs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
|