kepler.gl 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -132
- package/dist/src/common-utils/src/data-type.d.ts +9 -1
- package/dist/src/components/src/common/data-table/header-cell.d.ts +1 -0
- package/dist/src/components/src/common/data-table/index.d.ts +1 -0
- package/dist/src/components/src/common/file-uploader/file-drop.d.ts +1 -32
- package/dist/src/components/src/common/item-selector/dropdown-list.d.ts +2 -2
- package/dist/src/components/src/common/item-selector/item-selector.d.ts +1 -1
- package/dist/src/components/src/common/item-selector/typeahead.d.ts +1 -1
- package/dist/src/components/src/geocoder/geocoder.d.ts +7 -0
- package/dist/src/components/src/geocoder-panel.d.ts +2 -2
- package/dist/src/components/src/hooks/use-fetch-vector-tile-metadata.d.ts +4 -3
- package/dist/src/constants/src/default-settings.d.ts +14 -1
- package/dist/src/deckgl-arrow-layers/src/constants.d.ts +0 -12
- package/dist/src/deckgl-arrow-layers/src/index.d.ts +0 -1
- package/dist/src/deckgl-arrow-layers/src/utils/utils.d.ts +12 -1
- package/dist/src/duckdb/src/components/preview-data-panel.d.ts +7 -2
- package/dist/src/duckdb/src/components/schema-panel.d.ts +12 -3
- package/dist/src/duckdb/src/processors/data-processor.d.ts +1 -0
- package/dist/src/duckdb/src/table/duckdb-table-utils.d.ts +106 -0
- package/dist/src/duckdb/src/table/duckdb-table.d.ts +5 -3
- package/dist/src/processors/src/data-processor.d.ts +15 -1
- package/dist/src/reducers/src/provider-state-updaters.d.ts +1 -0
- package/dist/src/reducers/src/vis-state-updaters.d.ts +1 -1
- package/dist/src/table/src/dataset-utils.d.ts +1 -1
- package/dist/src/table/src/tileset/vector-tile-utils.d.ts +17 -1
- package/dist/src/utils/src/application-config.d.ts +4 -3
- package/dist/src/utils/src/data-utils.d.ts +9 -3
- package/dist/src/utils/src/indexed-data-container.d.ts +2 -2
- package/dist/src/utils/src/map-style-utils/mapbox-utils.d.ts +1 -1
- package/dist/src/utils/src/map-utils.d.ts +1 -1
- package/dist/src/utils/src/plot.d.ts +2 -2
- package/package.json +5 -5
- package/src/actions/package.json +8 -8
- package/src/ai-assistant/dist/components/ai-assistant-component.js +2 -1
- package/src/ai-assistant/package.json +7 -7
- package/src/ai-assistant/src/components/ai-assistant-component.tsx +1 -0
- package/src/cloud-providers/package.json +2 -2
- package/src/common-utils/dist/data-type.d.ts +9 -1
- package/src/common-utils/dist/data-type.js +50 -1
- package/src/common-utils/package.json +3 -3
- package/src/common-utils/src/data-type.ts +49 -1
- package/src/components/dist/common/data-table/header-cell.d.ts +1 -0
- package/src/components/dist/common/data-table/header-cell.js +2 -2
- package/src/components/dist/common/data-table/index.d.ts +1 -0
- package/src/components/dist/common/data-table/index.js +5 -1
- package/src/components/dist/common/file-uploader/file-drop.d.ts +1 -32
- package/src/components/dist/common/file-uploader/file-drop.js +152 -167
- package/src/components/dist/common/item-selector/dropdown-list.d.ts +2 -2
- package/src/components/dist/common/item-selector/dropdown-list.js +2 -3
- package/src/components/dist/common/item-selector/item-selector.d.ts +1 -1
- package/src/components/dist/common/item-selector/typeahead.d.ts +1 -1
- package/src/components/dist/common/range-brush.js +3 -3
- package/src/components/dist/geocoder/geocoder.d.ts +7 -0
- package/src/components/dist/geocoder/geocoder.js +19 -11
- package/src/components/dist/geocoder-panel.d.ts +2 -2
- package/src/components/dist/geocoder-panel.js +64 -91
- package/src/components/dist/hooks/use-fetch-vector-tile-metadata.d.ts +4 -3
- package/src/components/dist/hooks/use-fetch-vector-tile-metadata.js +35 -26
- package/src/components/dist/hooks/use-legend-position.js +8 -4
- package/src/components/dist/map/map-legend-panel.js +2 -3
- package/src/components/dist/modal-container.js +8 -8
- package/src/components/dist/modals/tilesets-modals/tileset-vector-form.js +31 -12
- package/src/components/dist/side-panel/layer-panel/color-palette-preset.js +2 -2
- package/src/components/dist/side-panel/layer-panel/color-range-selector.js +10 -11
- package/src/components/dist/side-panel/layer-panel/color-selector.js +3 -3
- package/src/components/dist/side-panel/layer-panel/custom-palette.js +1 -2
- package/src/components/dist/side-panel/layer-panel/layer-configurator.js +6 -8
- package/src/components/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +1 -2
- package/src/components/package.json +16 -16
- package/src/components/src/common/data-table/header-cell.tsx +2 -1
- package/src/components/src/common/data-table/index.tsx +4 -0
- package/src/components/src/common/file-uploader/file-drop.tsx +186 -161
- package/src/components/src/common/item-selector/dropdown-list.tsx +1 -6
- package/src/components/src/common/range-brush.tsx +2 -2
- package/src/components/src/geocoder/geocoder.tsx +16 -8
- package/src/components/src/geocoder-panel.tsx +95 -85
- package/src/components/src/hooks/use-fetch-vector-tile-metadata.ts +27 -25
- package/src/components/src/hooks/use-legend-position.ts +5 -2
- package/src/components/src/map/map-legend-panel.tsx +1 -2
- package/src/components/src/modal-container.tsx +7 -7
- package/src/components/src/modals/tilesets-modals/tileset-vector-form.tsx +12 -3
- package/src/components/src/side-panel/layer-panel/color-palette-preset.tsx +1 -1
- package/src/components/src/side-panel/layer-panel/color-range-selector.tsx +6 -11
- package/src/components/src/side-panel/layer-panel/color-selector.tsx +2 -2
- package/src/components/src/side-panel/layer-panel/custom-palette.tsx +0 -1
- package/src/components/src/side-panel/layer-panel/layer-configurator.tsx +23 -33
- package/src/components/src/side-panel/layer-panel/vector-tile-layer-configurator.tsx +0 -1
- package/src/constants/dist/default-settings.d.ts +14 -1
- package/src/constants/dist/default-settings.js +20 -5
- package/src/constants/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/91/4f/6c65f3a1eba584ffd2d892cabc25ab5804d4a9ef53694c98707372a83e56343a274bec04f15927a6fe7602615f0f23f73ccf599f524ef97ad6c77c8832ea +1 -0
- package/src/constants/node_modules/.cache/terser-webpack-plugin/index-v5/a6/b2/5424aa4477192fb44cc90fd80892efdc96731f2ff0f48e8f28abf64243cc +2 -0
- package/src/constants/package.json +2 -2
- package/src/constants/src/default-settings.ts +16 -1
- package/src/constants/umd/keplergl.min.js +2 -2
- package/src/deckgl-arrow-layers/dist/constants.d.ts +0 -12
- package/src/deckgl-arrow-layers/dist/constants.js +4 -15
- package/src/deckgl-arrow-layers/dist/index.d.ts +0 -1
- package/src/deckgl-arrow-layers/dist/index.js +1 -8
- package/src/deckgl-arrow-layers/dist/layers/geo-arrow-scatterplot-layer.js +4 -4
- package/src/deckgl-arrow-layers/dist/layers/geo-arrow-text-layer.js +5 -5
- package/src/deckgl-arrow-layers/dist/utils/utils.d.ts +12 -1
- package/src/deckgl-arrow-layers/dist/utils/utils.js +7 -5
- package/src/deckgl-arrow-layers/package.json +2 -1
- package/src/deckgl-arrow-layers/src/constants.ts +0 -13
- package/src/deckgl-arrow-layers/src/index.ts +0 -2
- package/src/deckgl-arrow-layers/src/layers/geo-arrow-scatterplot-layer.ts +5 -3
- package/src/deckgl-arrow-layers/src/layers/geo-arrow-text-layer.ts +8 -4
- package/src/deckgl-arrow-layers/src/utils/utils.ts +7 -5
- package/src/deckgl-layers/dist/deckgl-extensions/filter-arrow-layer.d.ts +1 -1
- package/src/deckgl-layers/dist/deckgl-extensions/filter-shader-module.d.ts +1 -1
- package/src/deckgl-layers/dist/deckgl-extensions/filter-shader-module.js +3 -3
- package/src/deckgl-layers/package.json +5 -5
- package/src/deckgl-layers/src/deckgl-extensions/filter-shader-module.ts +4 -3
- package/src/duckdb/dist/components/monaco-editor.js +4 -5
- package/src/duckdb/dist/components/preview-data-panel.d.ts +7 -2
- package/src/duckdb/dist/components/preview-data-panel.js +7 -8
- package/src/duckdb/dist/components/schema-panel.d.ts +12 -3
- package/src/duckdb/dist/components/schema-panel.js +41 -24
- package/src/duckdb/dist/components/sql-panel.js +245 -56
- package/src/duckdb/dist/init.js +20 -14
- package/src/duckdb/dist/processors/data-processor.d.ts +1 -0
- package/src/duckdb/dist/processors/data-processor.js +4 -4
- package/src/duckdb/dist/table/duckdb-table-utils.d.ts +106 -0
- package/src/duckdb/dist/table/duckdb-table-utils.js +493 -2
- package/src/duckdb/dist/table/duckdb-table.d.ts +5 -3
- package/src/duckdb/dist/table/duckdb-table.js +153 -261
- package/src/duckdb/package.json +6 -6
- package/src/duckdb/src/components/monaco-editor.tsx +3 -3
- package/src/duckdb/src/components/preview-data-panel.tsx +15 -8
- package/src/duckdb/src/components/schema-panel.tsx +92 -21
- package/src/duckdb/src/components/sql-panel.tsx +160 -22
- package/src/duckdb/src/init.ts +4 -1
- package/src/duckdb/src/processors/data-processor.ts +2 -2
- package/src/duckdb/src/table/duckdb-table-utils.ts +407 -1
- package/src/duckdb/src/table/duckdb-table.ts +61 -92
- package/src/effects/package.json +5 -5
- package/src/layers/dist/arc-layer/arc-layer.d.ts +1 -1
- package/src/layers/dist/arc-layer/arc-layer.js +2 -3
- package/src/layers/dist/base-layer.d.ts +7 -6
- package/src/layers/dist/base-layer.js +36 -19
- package/src/layers/dist/geojson-layer/geojson-layer.js +4 -2
- package/src/layers/dist/geojson-layer/geojson-utils.js +10 -3
- package/src/layers/dist/heatmap-layer/heatmap-layer.d.ts +2 -0
- package/src/layers/dist/heatmap-layer/heatmap-layer.js +16 -9
- package/src/layers/dist/icon-layer/icon-layer.d.ts +6 -3
- package/src/layers/dist/icon-layer/icon-layer.js +19 -11
- package/src/layers/dist/index.d.ts +1 -1
- package/src/layers/dist/index.js +1 -1
- package/src/layers/dist/layer-text-label.d.ts +9 -0
- package/src/layers/dist/layer-text-label.js +51 -6
- package/src/layers/dist/layer-utils.d.ts +39 -30
- package/src/layers/dist/layer-utils.js +69 -9
- package/src/layers/dist/line-layer/line-layer.d.ts +1 -1
- package/src/layers/dist/line-layer/line-layer.js +2 -3
- package/src/layers/dist/point-layer/point-layer.d.ts +10 -7
- package/src/layers/dist/point-layer/point-layer.js +16 -8
- package/src/layers/dist/trip-layer/trip-layer.d.ts +2 -2
- package/src/layers/dist/trip-layer/trip-layer.js +4 -2
- package/src/layers/dist/vector-tile/abstract-tile-layer.d.ts +3 -7
- package/src/layers/dist/vector-tile/abstract-tile-layer.js +7 -6
- package/src/layers/dist/vector-tile/vector-tile-layer.d.ts +5 -7
- package/src/layers/dist/vector-tile/vector-tile-layer.js +23 -2
- package/src/layers/package.json +11 -10
- package/src/layers/src/arc-layer/arc-layer.ts +1 -1
- package/src/layers/src/base-layer.ts +50 -9
- package/src/layers/src/geojson-layer/geojson-layer.ts +3 -1
- package/src/layers/src/geojson-layer/geojson-utils.ts +4 -1
- package/src/layers/src/heatmap-layer/heatmap-layer.ts +17 -12
- package/src/layers/src/icon-layer/icon-layer.ts +7 -3
- package/src/layers/src/index.ts +1 -2
- package/src/layers/src/layer-text-label.ts +53 -4
- package/src/layers/src/layer-utils.ts +88 -9
- package/src/layers/src/line-layer/line-layer.ts +1 -1
- package/src/layers/src/point-layer/point-layer.ts +15 -11
- package/src/layers/src/trip-layer/trip-layer.ts +4 -2
- package/src/layers/src/vector-tile/abstract-tile-layer.ts +11 -5
- package/src/layers/src/vector-tile/vector-tile-layer.ts +33 -4
- package/src/localization/package.json +1 -1
- package/src/processors/dist/data-processor.d.ts +15 -1
- package/src/processors/dist/data-processor.js +104 -11
- package/src/processors/package.json +8 -7
- package/src/processors/src/data-processor.ts +116 -13
- package/src/reducers/dist/export-utils.js +2 -2
- package/src/reducers/dist/layer-utils.js +1 -1
- package/src/reducers/dist/provider-state-updaters.d.ts +1 -0
- package/src/reducers/dist/provider-state-updaters.js +5 -2
- package/src/reducers/dist/vis-state-updaters.d.ts +1 -1
- package/src/reducers/dist/vis-state-updaters.js +23 -12
- package/src/reducers/package.json +16 -16
- package/src/reducers/src/export-utils.ts +1 -1
- package/src/reducers/src/layer-utils.ts +2 -1
- package/src/reducers/src/provider-state-updaters.ts +4 -1
- package/src/reducers/src/vis-state-updaters.ts +45 -10
- package/src/schemas/dist/dataset-schema.js +35 -6
- package/src/schemas/package.json +7 -7
- package/src/schemas/src/dataset-schema.ts +36 -8
- package/src/styles/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/a3/a9/7f26bbc52905b0e21e9366a30ef0ba98f4ccf9aa8dd8326d90ba90191ba2e305323f505bf134c825356156c793bf9386ed2cef2aeb48eb327c26d106f69a +1 -0
- package/src/styles/node_modules/.cache/terser-webpack-plugin/index-v5/7e/51/b8756555a0e2e696d944445ac23f7febf769006013fbc8419f39a701649d +2 -0
- package/src/styles/package.json +2 -2
- package/src/styles/umd/keplergl.min.js +2 -2
- package/src/table/dist/dataset-utils.js +23 -14
- package/src/table/dist/src/table/src/dataset-utils.d.ts +1 -1
- package/src/table/dist/src/table/src/tileset/vector-tile-utils.d.ts +17 -1
- package/src/table/dist/tileset/vector-tile-utils.js +122 -2
- package/src/table/package.json +5 -5
- package/src/table/src/dataset-utils.ts +16 -6
- package/src/table/src/tileset/vector-tile-utils.ts +131 -8
- package/src/tasks/package.json +2 -2
- package/src/types/actions.d.ts +1 -0
- package/src/types/layers.d.ts +1 -0
- package/src/types/package.json +1 -1
- package/src/types/types.d.ts +17 -0
- package/src/utils/dist/application-config.d.ts +4 -3
- package/src/utils/dist/application-config.js +3 -2
- package/src/utils/dist/data-scale-utils.js +4 -4
- package/src/utils/dist/data-utils.d.ts +9 -3
- package/src/utils/dist/data-utils.js +40 -7
- package/src/utils/dist/dataset-utils.js +23 -8
- package/src/utils/dist/indexed-data-container.d.ts +2 -2
- package/src/utils/dist/indexed-data-container.js +1 -1
- package/src/utils/dist/map-style-utils/mapbox-utils.d.ts +1 -1
- package/src/utils/dist/map-style-utils/mapbox-utils.js +3 -3
- package/src/utils/dist/plot.d.ts +2 -2
- package/src/utils/dist/plot.js +6 -6
- package/src/utils/map-utils.spec.js +1 -2
- package/src/utils/package.json +5 -4
- package/src/utils/src/application-config.ts +11 -8
- package/src/utils/src/data-scale-utils.ts +3 -3
- package/src/utils/src/data-utils.ts +36 -7
- package/src/utils/src/dataset-utils.ts +41 -9
- package/src/utils/src/indexed-data-container.ts +1 -1
- package/src/utils/src/map-style-utils/mapbox-utils.ts +2 -2
- package/src/utils/src/plot.ts +5 -5
- package/umd/keplergl.min.js +1279 -1295
|
@@ -19,6 +19,7 @@ var _constants = require("@kepler.gl/constants");
|
|
|
19
19
|
var _mapboxglLayer = _interopRequireDefault(require("../mapboxgl-layer"));
|
|
20
20
|
var _heatmapLayerIcon = _interopRequireDefault(require("./heatmap-layer-icon"));
|
|
21
21
|
var _utils = require("@kepler.gl/utils");
|
|
22
|
+
var _layerUtils = require("../layer-utils");
|
|
22
23
|
var _excluded = ["colorField", "colorDomain", "colorScale"];
|
|
23
24
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
24
25
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -87,15 +88,12 @@ var DEFAULT_COLUMN_MODE = COLUMN_MODE_POINTS;
|
|
|
87
88
|
* ]
|
|
88
89
|
*/
|
|
89
90
|
var heatmapDensity = function heatmapDensity(colorRange) {
|
|
90
|
-
var scaleFunction = _constants.SCALE_FUNC.quantize;
|
|
91
91
|
var colors = ['#000000'].concat((0, _toConsumableArray2["default"])(colorRange.colors));
|
|
92
|
-
var
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
]);
|
|
98
|
-
}, []);
|
|
92
|
+
var colorDensity = [];
|
|
93
|
+
colors.forEach(function (color, index) {
|
|
94
|
+
colorDensity.push(index / colors.length);
|
|
95
|
+
colorDensity.push("rgb(".concat((0, _utils.hexToRgb)(color).join(','), ")"));
|
|
96
|
+
});
|
|
99
97
|
colorDensity[1] = 'rgba(0,0,0,0)';
|
|
100
98
|
return colorDensity;
|
|
101
99
|
};
|
|
@@ -263,7 +261,16 @@ var HeatmapLayer = /*#__PURE__*/function (_MapboxGLLayer) {
|
|
|
263
261
|
getPosition: getPosition
|
|
264
262
|
};
|
|
265
263
|
}
|
|
264
|
+
}], [{
|
|
265
|
+
key: "findDefaultLayerProps",
|
|
266
|
+
value: function findDefaultLayerProps(dataset) {
|
|
267
|
+
var altProps = (0, _layerUtils.getGeoArrowPointLayerProps)(dataset);
|
|
268
|
+
return {
|
|
269
|
+
props: [],
|
|
270
|
+
altProps: altProps
|
|
271
|
+
};
|
|
272
|
+
}
|
|
266
273
|
}]);
|
|
267
274
|
}(_mapboxglLayer["default"]);
|
|
268
275
|
var _default = exports["default"] = HeatmapLayer;
|
|
269
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVzZWxlY3QiLCJyZXF1aXJlIiwiX2NvbnN0YW50cyIsIl9tYXBib3hnbExheWVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9oZWF0bWFwTGF5ZXJJY29uIiwiX3V0aWxzIiwiX2V4Y2x1ZGVkIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwicCIsIl9nZXQyIiwiTUFYX1pPT01fTEVWRUwiLCJleHBvcnRzIiwicG9pbnRQb3NBY2Nlc3NvciIsIl9yZWYiLCJsYXQiLCJsbmciLCJkYyIsImQiLCJ2YWx1ZUF0IiwiaW5kZXgiLCJmaWVsZElkeCIsImdlb2Fycm93UG9zQWNjZXNzb3IiLCJfcmVmMiIsImdlb2Fycm93Iiwicm93IiwiZ2V0IiwicG9pbnRDb2xSZXNvbHZlciIsIl9yZWYzIiwiY29sdW1uTW9kZSIsIkNPTFVNTl9NT0RFX1BPSU5UUyIsImNvbmNhdCIsImhlYXRtYXBWaXNDb25maWdzIiwib3BhY2l0eSIsImNvbG9yUmFuZ2UiLCJyYWRpdXMiLCJwb2ludFJlcXVpcmVkQ29sdW1ucyIsImdlb2Fycm93UmVxdWlyZWRDb2x1bW5zIiwiQ09MVU1OX01PREVfR0VPQVJST1ciLCJTVVBQT1JURURfQ09MVU1OX01PREVTIiwia2V5IiwibGFiZWwiLCJyZXF1aXJlZENvbHVtbnMiLCJERUZBVUxUX0NPTFVNTl9NT0RFIiwiaGVhdG1hcERlbnNpdHkiLCJzY2FsZUZ1bmN0aW9uIiwiU0NBTEVfRlVOQyIsInF1YW50aXplIiwiY29sb3JzIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInNjYWxlIiwiZG9tYWluIiwicmFuZ2UiLCJjb2xvckRlbnNpdHkiLCJyZWR1Y2UiLCJiYW5kcyIsImxldmVsIiwiaW52ZXJ0IiwiaW52ZXJ0RXh0ZW50IiwiaGV4VG9SZ2IiLCJqb2luIiwiSGVhdG1hcExheWVyIiwiX01hcGJveEdMTGF5ZXIiLCJwcm9wcyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsImNvbmZpZyIsImNvbHVtbnMiLCJ2aXNDb25maWciLCJ3ZWlnaHRGaWVsZCIsIm5hbWUiLCJ3ZWlnaHREb21haW4iLCJjcmVhdGVTZWxlY3RvciIsInZpc0NvbmZpZ1NlbGVjdG9yIiwid2VpZ2h0RmllbGRTZWxlY3RvciIsIndlaWdodERvbWFpblNlbGVjdG9yIiwic291cmNlU2VsZWN0b3IiLCJmaWx0ZXJTZWxlY3RvciIsInBhaW50U2VsZWN0b3IiLCJzb3VyY2UiLCJwYWludCIsInR5cGUiLCJpZCIsImxheW91dCIsInZpc2liaWxpdHkiLCJpc1ZhbGlkRmlsdGVyIiwicmVnaXN0ZXJWaXNDb25maWciLCJnZXRQb3NpdGlvbkFjY2Vzc29yIiwiZGF0YUNvbnRhaW5lciIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwidmFsdWUiLCJoYXNBbGxDb2x1bW5zIiwiX3RoaXMkY29uZmlnIiwiaGFzQ29sdW1uVmFsdWUiLCJ3ZWlnaHQiLCJwcm9wZXJ0eSIsImZpZWxkIiwiZGVmYXVsdE1lYXN1cmUiLCJzdXBwb3J0ZWRGaWVsZFR5cGVzIiwiQUxMX0ZJRUxEX1RZUEVTIiwicmVhbCIsImludGVnZXIiLCJjaGFubmVsU2NhbGVUeXBlIiwiQ0hBTk5FTF9TQ0FMRVMiLCJzaXplIiwiSGVhdG1hcExheWVySWNvbiIsImdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbiIsImNoYW5uZWwiLCJtZWFzdXJlIiwiZ2V0RGVmYXVsdExheWVyQ29uZmlnIiwiX3Byb3BzJGNvbHVtbk1vZGUiLCJfc3VwZXJQcm9wR2V0JGNvbHVtbk0iLCJ3ZWlnaHRTY2FsZSIsImNvbG9yRmllbGQiLCJjb2xvckRvbWFpbiIsImNvbG9yU2NhbGUiLCJsYXllckNvbmZpZyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJ1cGRhdGVMYXllck1ldGEiLCJkYXRhc2V0IiwiZ2V0UG9zaXRpb24iLCJib3VuZHMiLCJnZXRQb2ludHNCb3VuZHMiLCJ1cGRhdGVNZXRhIiwiZm9ybWF0TGF5ZXJEYXRhIiwiZGF0YXNldHMiLCJvbGRMYXllckRhdGEiLCJkYXRhSWQiLCJfdGhpcyR1cGRhdGVEYXRhIiwidXBkYXRlRGF0YSIsImRhdGEiLCJuZXdDb25maWciLCJjb21wdXRlSGVhdG1hcENvbmZpZ3VyYXRpb24iLCJNYXBib3hHTExheWVyIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVhdG1hcC1sYXllci9oZWF0bWFwLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7Y3JlYXRlU2VsZWN0b3J9IGZyb20gJ3Jlc2VsZWN0JztcbmltcG9ydCB7Q0hBTk5FTF9TQ0FMRVMsIFNDQUxFX0ZVTkMsIEFMTF9GSUVMRF9UWVBFU30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IE1hcGJveEdMTGF5ZXIsIHtNYXBib3hMYXllckdMQ29uZmlnfSBmcm9tICcuLi9tYXBib3hnbC1sYXllcic7XG5pbXBvcnQgSGVhdG1hcExheWVySWNvbiBmcm9tICcuL2hlYXRtYXAtbGF5ZXItaWNvbic7XG5pbXBvcnQge0xheWVyQmFzZUNvbmZpZ1BhcnRpYWwsIExheWVyV2VpZ2h0Q29uZmlnLCBWaXN1YWxDaGFubmVsc30gZnJvbSAnLi4vYmFzZS1sYXllcic7XG5pbXBvcnQge1xuICBDb2xvclJhbmdlLFxuICBWaXNDb25maWdDb2xvclJhbmdlLFxuICBWaXNDb25maWdOdW1iZXIsXG4gIEhleENvbG9yLFxuICBNZXJnZSxcbiAgTGF5ZXJDb2x1bW5cbn0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge2hleFRvUmdiLCBEYXRhQ29udGFpbmVySW50ZXJmYWNlfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7S2VwbGVyVGFibGV9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuXG5leHBvcnQgdHlwZSBIZWF0bWFwTGF5ZXJWaXNDb25maWdTZXR0aW5ncyA9IHtcbiAgb3BhY2l0eTogVmlzQ29uZmlnTnVtYmVyO1xuICBjb2xvclJhbmdlOiBWaXNDb25maWdDb2xvclJhbmdlO1xuICByYWRpdXM6IFZpc0NvbmZpZ051bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEhlYXRtYXBMYXllckNvbHVtbnNDb25maWcgPSB7XG4gIC8vIENPTFVNTl9NT0RFX1BPSU5UU1xuICBsYXQ6IExheWVyQ29sdW1uO1xuICBsbmc6IExheWVyQ29sdW1uO1xuXG4gIC8vIENPTFVNTl9NT0RFX0dFT0FSUk9XXG4gIGdlb2Fycm93OiBMYXllckNvbHVtbjtcbn07XG5cbmV4cG9ydCB0eXBlIEhlYXRtYXBMYXllclZpc0NvbmZpZyA9IHtcbiAgb3BhY2l0eTogbnVtYmVyO1xuICBjb2xvclJhbmdlOiBDb2xvclJhbmdlO1xuICByYWRpdXM6IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEhlYXRtYXBMYXllclZpc3VhbENoYW5uZWxDb25maWcgPSBMYXllcldlaWdodENvbmZpZztcbmV4cG9ydCB0eXBlIEhlYXRtYXBMYXllckNvbmZpZyA9IE1lcmdlPFxuICBNYXBib3hMYXllckdMQ29uZmlnLFxuICB7Y29sdW1uczogSGVhdG1hcExheWVyQ29sdW1uc0NvbmZpZzsgdmlzQ29uZmlnOiBIZWF0bWFwTGF5ZXJWaXNDb25maWd9XG4+ICZcbiAgSGVhdG1hcExheWVyVmlzdWFsQ2hhbm5lbENvbmZpZztcblxuZXhwb3J0IGNvbnN0IE1BWF9aT09NX0xFVkVMID0gMTg7XG5cbmV4cG9ydCBjb25zdCBwb2ludFBvc0FjY2Vzc29yID1cbiAgKHtsYXQsIGxuZ306IEhlYXRtYXBMYXllckNvbHVtbnNDb25maWcpID0+XG4gIChkYzogRGF0YUNvbnRhaW5lckludGVyZmFjZSkgPT5cbiAgKGQ6IHtpbmRleDogbnVtYmVyfSk6IG51bWJlcltdID0+XG4gICAgW2RjLnZhbHVlQXQoZC5pbmRleCwgbG5nLmZpZWxkSWR4KSwgZGMudmFsdWVBdChkLmluZGV4LCBsYXQuZmllbGRJZHgpXTtcblxuZXhwb3J0IGNvbnN0IGdlb2Fycm93UG9zQWNjZXNzb3IgPVxuICAoe2dlb2Fycm93fTogSGVhdG1hcExheWVyQ29sdW1uc0NvbmZpZykgPT5cbiAgKGRjOiBEYXRhQ29udGFpbmVySW50ZXJmYWNlKSA9PlxuICAoZDoge2luZGV4OiBudW1iZXJ9KTogbnVtYmVyW10gPT4ge1xuICAgIGNvbnN0IHJvdyA9IGRjLnZhbHVlQXQoZC5pbmRleCwgZ2VvYXJyb3cuZmllbGRJZHgpO1xuICAgIHJldHVybiBbcm93LmdldCgwKSwgcm93LmdldCgxKV07XG4gIH07XG5cbmV4cG9ydCBjb25zdCBwb2ludENvbFJlc29sdmVyID0gKHtsYXQsIGxuZywgZ2VvYXJyb3d9OiBIZWF0bWFwTGF5ZXJDb2x1bW5zQ29uZmlnLCBjb2x1bW5Nb2RlKSA9PiB7XG4gIGlmIChjb2x1bW5Nb2RlID09PSBDT0xVTU5fTU9ERV9QT0lOVFMpIHtcbiAgICByZXR1cm4gYCR7bGF0LmZpZWxkSWR4fS0ke2xuZy5maWVsZElkeH1gO1xuICB9XG4gIHJldHVybiBgZ2VvYXJyb3ctJHtnZW9hcnJvdy5maWVsZElkeH1gO1xufTtcblxuZXhwb3J0IGNvbnN0IGhlYXRtYXBWaXNDb25maWdzOiB7XG4gIG9wYWNpdHk6ICdvcGFjaXR5JztcbiAgY29sb3JSYW5nZTogJ2NvbG9yUmFuZ2UnO1xuICByYWRpdXM6ICdoZWF0bWFwUmFkaXVzJztcbn0gPSB7XG4gIG9wYWNpdHk6ICdvcGFjaXR5JyxcbiAgY29sb3JSYW5nZTogJ2NvbG9yUmFuZ2UnLFxuICByYWRpdXM6ICdoZWF0bWFwUmFkaXVzJ1xufTtcblxuZXhwb3J0IGNvbnN0IHBvaW50UmVxdWlyZWRDb2x1bW5zID0gWydsYXQnLCAnbG5nJ107XG5leHBvcnQgY29uc3QgZ2VvYXJyb3dSZXF1aXJlZENvbHVtbnMgPSBbJ2dlb2Fycm93J107XG5cbmV4cG9ydCBjb25zdCBDT0xVTU5fTU9ERV9QT0lOVFMgPSAncG9pbnRzJztcbmV4cG9ydCBjb25zdCBDT0xVTU5fTU9ERV9HRU9BUlJPVyA9ICdnZW9hcnJvdyc7XG5jb25zdCBTVVBQT1JURURfQ09MVU1OX01PREVTID0gW1xuICB7XG4gICAga2V5OiBDT0xVTU5fTU9ERV9QT0lOVFMsXG4gICAgbGFiZWw6ICdQb2ludHMnLFxuICAgIHJlcXVpcmVkQ29sdW1uczogcG9pbnRSZXF1aXJlZENvbHVtbnNcbiAgfSxcbiAge1xuICAgIGtleTogQ09MVU1OX01PREVfR0VPQVJST1csXG4gICAgbGFiZWw6ICdHZW9hcnJvdyBQb2ludHMnLFxuICAgIHJlcXVpcmVkQ29sdW1uczogZ2VvYXJyb3dSZXF1aXJlZENvbHVtbnNcbiAgfVxuXTtcbmNvbnN0IERFRkFVTFRfQ09MVU1OX01PREUgPSBDT0xVTU5fTU9ERV9QT0lOVFM7XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBjb2xvclJhbmdlXG4gKiBAcmV0dXJuIFtcbiAqICAwLCBcInJnYmEoMzMsMTAyLDE3MiwwKVwiLFxuICogIDAuMiwgXCJyZ2IoMTAzLDE2OSwyMDcpXCIsXG4gKiAgMC40LCBcInJnYigyMDksMjI5LDI0MClcIixcbiAqICAwLjYsIFwicmdiKDI1MywyMTksMTk5KVwiLFxuICogIDAuOCwgXCJyZ2IoMjM5LDEzOCw5OClcIixcbiAqICAxLCBcInJnYigxNzgsMjQsNDMpXCJcbiAqIF1cbiAqL1xuY29uc3QgaGVhdG1hcERlbnNpdHkgPSAoY29sb3JSYW5nZTogQ29sb3JSYW5nZSk6IChzdHJpbmcgfCBudW1iZXIpW10gPT4ge1xuICBjb25zdCBzY2FsZUZ1bmN0aW9uID0gU0NBTEVfRlVOQy5xdWFudGl6ZTtcblxuICBjb25zdCBjb2xvcnM6IEhleENvbG9yW10gPSBbJyMwMDAwMDAnLCAuLi5jb2xvclJhbmdlLmNvbG9yc107XG5cbiAgY29uc3Qgc2NhbGUgPSBzY2FsZUZ1bmN0aW9uPEhleENvbG9yPigpLmRvbWFpbihbMCwgMV0pLnJhbmdlKGNvbG9ycyk7XG5cbiAgY29uc3QgY29sb3JEZW5zaXR5ID0gc2NhbGUucmFuZ2UoKS5yZWR1Y2UoKGJhbmRzOiAoc3RyaW5nIHwgbnVtYmVyKVtdLCBsZXZlbCkgPT4ge1xuICAgIGNvbnN0IGludmVydCA9IHNjYWxlLmludmVydEV4dGVudChsZXZlbCk7XG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLmJhbmRzLFxuICAgICAgaW52ZXJ0WzBdLCAvLyBmaXJzdCB2YWx1ZSBpbiB0aGUgcmFuZ2VcbiAgICAgIGByZ2IoJHtoZXhUb1JnYihsZXZlbCkuam9pbignLCcpfSlgIC8vIGNvbG9yXG4gICAgXTtcbiAgfSwgW10pO1xuICBjb2xvckRlbnNpdHlbMV0gPSAncmdiYSgwLDAsMCwwKSc7XG4gIHJldHVybiBjb2xvckRlbnNpdHk7XG59O1xuXG5jbGFzcyBIZWF0bWFwTGF5ZXIgZXh0ZW5kcyBNYXBib3hHTExheWVyIHtcbiAgZGVjbGFyZSB2aXNDb25maWdTZXR0aW5nczogSGVhdG1hcExheWVyVmlzQ29uZmlnU2V0dGluZ3M7XG4gIGRlY2xhcmUgY29uZmlnOiBIZWF0bWFwTGF5ZXJDb25maWc7XG5cbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gICAgdGhpcy5yZWdpc3RlclZpc0NvbmZpZyhoZWF0bWFwVmlzQ29uZmlncyk7XG5cbiAgICB0aGlzLmdldFBvc2l0aW9uQWNjZXNzb3IgPSAoZGF0YUNvbnRhaW5lcjogRGF0YUNvbnRhaW5lckludGVyZmFjZSkgPT4ge1xuICAgICAgc3dpdGNoICh0aGlzLmNvbmZpZy5jb2x1bW5Nb2RlKSB7XG4gICAgICAgIGNhc2UgQ09MVU1OX01PREVfR0VPQVJST1c6XG4gICAgICAgICAgcmV0dXJuIGdlb2Fycm93UG9zQWNjZXNzb3IodGhpcy5jb25maWcuY29sdW1ucykoZGF0YUNvbnRhaW5lcik7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgLy8gQ09MVU1OX01PREVfUE9JTlRTXG4gICAgICAgICAgcmV0dXJuIHBvaW50UG9zQWNjZXNzb3IodGhpcy5jb25maWcuY29sdW1ucykoZGF0YUNvbnRhaW5lcik7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIGdldCB0eXBlKCk6ICdoZWF0bWFwJyB7XG4gICAgcmV0dXJuICdoZWF0bWFwJztcbiAgfVxuXG4gIGdldCBzdXBwb3J0ZWRDb2x1bW5Nb2RlcygpIHtcbiAgICByZXR1cm4gU1VQUE9SVEVEX0NPTFVNTl9NT0RFUztcbiAgfVxuXG4gIGhhc0FsbENvbHVtbnMoKSB7XG4gICAgY29uc3Qge2NvbHVtbnMsIGNvbHVtbk1vZGV9ID0gdGhpcy5jb25maWc7XG4gICAgaWYgKGNvbHVtbk1vZGUgPT09IENPTFVNTl9NT0RFX0dFT0FSUk9XKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNDb2x1bW5WYWx1ZShjb2x1bW5zLmdlb2Fycm93KTtcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLmhhc0FsbENvbHVtbnMoKTtcbiAgfVxuXG4gIGdldCB2aXN1YWxDaGFubmVscygpOiBWaXN1YWxDaGFubmVscyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgIHdlaWdodDoge1xuICAgICAgICBwcm9wZXJ0eTogJ3dlaWdodCcsXG4gICAgICAgIGZpZWxkOiAnd2VpZ2h0RmllbGQnLFxuICAgICAgICBzY2FsZTogJ3dlaWdodFNjYWxlJyxcbiAgICAgICAgZG9tYWluOiAnd2VpZ2h0RG9tYWluJyxcbiAgICAgICAga2V5OiAnd2VpZ2h0JyxcbiAgICAgICAgLy8gc3VwcG9ydGVkRmllbGRUeXBlcyBjYW4gYmUgZGV0ZXJtaW5lZCBieSBjaGFubmVsU2NhbGVUeXBlXG4gICAgICAgIC8vIG9yIHNwZWNpZmllZCBoZXJlXG4gICAgICAgIGRlZmF1bHRNZWFzdXJlOiAncHJvcGVydHkuZGVuc2l0eScsXG4gICAgICAgIHN1cHBvcnRlZEZpZWxkVHlwZXM6IFtBTExfRklFTERfVFlQRVMucmVhbCwgQUxMX0ZJRUxEX1RZUEVTLmludGVnZXJdLFxuICAgICAgICBjaGFubmVsU2NhbGVUeXBlOiBDSEFOTkVMX1NDQUxFUy5zaXplXG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIGdldCBsYXllckljb24oKSB7XG4gICAgcmV0dXJuIEhlYXRtYXBMYXllckljb247XG4gIH1cblxuICBnZXRWaXN1YWxDaGFubmVsRGVzY3JpcHRpb24oY2hhbm5lbCkge1xuICAgIHJldHVybiBjaGFubmVsID09PSAnY29sb3InXG4gICAgICA/IHtcbiAgICAgICAgICBsYWJlbDogJ3Byb3BlcnR5LmNvbG9yJyxcbiAgICAgICAgICBtZWFzdXJlOiAncHJvcGVydHkuZGVuc2l0eSdcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgbGFiZWw6ICdwcm9wZXJ0eS53ZWlnaHQnLFxuICAgICAgICAgIG1lYXN1cmU6IHRoaXMuY29uZmlnLndlaWdodEZpZWxkID8gdGhpcy5jb25maWcud2VpZ2h0RmllbGQubmFtZSA6ICdwcm9wZXJ0eS5kZW5zaXR5J1xuICAgICAgICB9O1xuICB9XG5cbiAgZ2V0RGVmYXVsdExheWVyQ29uZmlnKHByb3BzOiBMYXllckJhc2VDb25maWdQYXJ0aWFsKTogSGVhdG1hcExheWVyQ29uZmlnIHtcbiAgICAvLyBtYXBib3ggaGVhdG1hcCBsYXllciBjb2xvciBpcyBhbHdheXMgYmFzZWQgb24gZGVuc2l0eVxuICAgIC8vIG5vIG5lZWQgdG8gc2V0IGNvbG9yRmllbGQsIGNvbG9yRG9tYWluIGFuZCBjb2xvclNjYWxlXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgY29uc3Qge2NvbG9yRmllbGQsIGNvbG9yRG9tYWluLCBjb2xvclNjYWxlLCAuLi5sYXllckNvbmZpZ30gPSB7XG4gICAgICAuLi5zdXBlci5nZXREZWZhdWx0TGF5ZXJDb25maWcocHJvcHMpLFxuICAgICAgY29sdW1uTW9kZTogcHJvcHM/LmNvbHVtbk1vZGUgPz8gREVGQVVMVF9DT0xVTU5fTU9ERSxcblxuICAgICAgd2VpZ2h0RmllbGQ6IG51bGwsXG4gICAgICB3ZWlnaHREb21haW46IFswLCAxXSxcbiAgICAgIHdlaWdodFNjYWxlOiAnbGluZWFyJ1xuICAgIH07XG5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgcmV0dXJuIGxheWVyQ29uZmlnO1xuICB9XG5cbiAgdXBkYXRlTGF5ZXJNZXRhKGRhdGFzZXQ6IEtlcGxlclRhYmxlKSB7XG4gICAgY29uc3Qge2RhdGFDb250YWluZXJ9ID0gZGF0YXNldDtcblxuICAgIGNvbnN0IGdldFBvc2l0aW9uID0gdGhpcy5nZXRQb3NpdGlvbkFjY2Vzc29yKGRhdGFDb250YWluZXIpO1xuICAgIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0UG9pbnRzQm91bmRzKGRhdGFDb250YWluZXIsIGdldFBvc2l0aW9uKTtcbiAgICB0aGlzLnVwZGF0ZU1ldGEoe2JvdW5kc30pO1xuICB9XG5cbiAgY29sdW1uc1NlbGVjdG9yID0gY29uZmlnID0+IHBvaW50Q29sUmVzb2x2ZXIoY29uZmlnLmNvbHVtbnMsIGNvbmZpZy5jb2x1bW5Nb2RlKTtcbiAgdmlzQ29uZmlnU2VsZWN0b3IgPSBjb25maWcgPT4gY29uZmlnLnZpc0NvbmZpZztcbiAgd2VpZ2h0RmllbGRTZWxlY3RvciA9IGNvbmZpZyA9PiAoY29uZmlnLndlaWdodEZpZWxkID8gY29uZmlnLndlaWdodEZpZWxkLm5hbWUgOiBudWxsKTtcbiAgd2VpZ2h0RG9tYWluU2VsZWN0b3IgPSBjb25maWcgPT4gY29uZmlnLndlaWdodERvbWFpbjtcblxuICBwYWludFNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgdGhpcy52aXNDb25maWdTZWxlY3RvcixcbiAgICB0aGlzLndlaWdodEZpZWxkU2VsZWN0b3IsXG4gICAgdGhpcy53ZWlnaHREb21haW5TZWxlY3RvcixcbiAgICAodmlzQ29uZmlnLCB3ZWlnaHRGaWVsZCwgd2VpZ2h0RG9tYWluKSA9PiAoe1xuICAgICAgJ2hlYXRtYXAtd2VpZ2h0Jzogd2VpZ2h0RmllbGRcbiAgICAgICAgPyBbJ2ludGVycG9sYXRlJywgWydsaW5lYXInXSwgWydnZXQnLCB3ZWlnaHRGaWVsZF0sIHdlaWdodERvbWFpblswXSwgMCwgd2VpZ2h0RG9tYWluWzFdLCAxXVxuICAgICAgICA6IDEsXG4gICAgICAnaGVhdG1hcC1pbnRlbnNpdHknOiBbJ2ludGVycG9sYXRlJywgWydsaW5lYXInXSwgWyd6b29tJ10sIDAsIDEsIE1BWF9aT09NX0xFVkVMLCAzXSxcbiAgICAgICdoZWF0bWFwLWNvbG9yJzogW1xuICAgICAgICAnaW50ZXJwb2xhdGUnLFxuICAgICAgICBbJ2xpbmVhciddLFxuICAgICAgICBbJ2hlYXRtYXAtZGVuc2l0eSddLFxuICAgICAgICAuLi5oZWF0bWFwRGVuc2l0eSh2aXNDb25maWcuY29sb3JSYW5nZSlcbiAgICAgIF0sXG4gICAgICAnaGVhdG1hcC1yYWRpdXMnOiBbXG4gICAgICAgICdpbnRlcnBvbGF0ZScsXG4gICAgICAgIFsnbGluZWFyJ10sXG4gICAgICAgIFsnem9vbSddLFxuICAgICAgICAwLFxuICAgICAgICAyLFxuICAgICAgICBNQVhfWk9PTV9MRVZFTCxcbiAgICAgICAgdmlzQ29uZmlnLnJhZGl1cyAvLyByYWRpdXNcbiAgICAgIF0sXG4gICAgICAnaGVhdG1hcC1vcGFjaXR5JzogdmlzQ29uZmlnLm9wYWNpdHlcbiAgICB9KVxuICApO1xuXG4gIGNvbXB1dGVIZWF0bWFwQ29uZmlndXJhdGlvbiA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHRoaXMuc291cmNlU2VsZWN0b3IsXG4gICAgdGhpcy5maWx0ZXJTZWxlY3RvcixcbiAgICB0aGlzLnBhaW50U2VsZWN0b3IsXG4gICAgKHNvdXJjZSwgZmlsdGVyLCBwYWludCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogJ2hlYXRtYXAnLFxuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgc291cmNlLFxuICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiAndmlzaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgcGFpbnQsXG4gICAgICAgIC4uLih0aGlzLmlzVmFsaWRGaWx0ZXIoZmlsdGVyKSA/IHtmaWx0ZXJ9IDoge30pXG4gICAgICB9O1xuICAgIH1cbiAgKTtcblxuICBmb3JtYXRMYXllckRhdGEoZGF0YXNldHMsIG9sZExheWVyRGF0YSkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5kYXRhSWQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgY29uc3Qge3dlaWdodEZpZWxkfSA9IHRoaXMuY29uZmlnO1xuICAgIGNvbnN0IHtkYXRhQ29udGFpbmVyfSA9IGRhdGFzZXRzW3RoaXMuY29uZmlnLmRhdGFJZF07XG4gICAgY29uc3QgZ2V0UG9zaXRpb24gPSB0aGlzLmdldFBvc2l0aW9uQWNjZXNzb3IoZGF0YUNvbnRhaW5lcik7XG4gICAgY29uc3Qge2RhdGF9ID0gdGhpcy51cGRhdGVEYXRhKGRhdGFzZXRzLCBvbGRMYXllckRhdGEpO1xuXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IG5ld0NvbmZpZyA9IHRoaXMuY29tcHV0ZUhlYXRtYXBDb25maWd1cmF0aW9uKHRoaXMuY29uZmlnLCBkYXRhc2V0cyk7XG4gICAgbmV3Q29uZmlnLmlkID0gdGhpcy5pZDtcblxuICAgIHJldHVybiB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmNvbmZpZy5jb2x1bW5zLFxuICAgICAgY29uZmlnOiBuZXdDb25maWcsXG4gICAgICBkYXRhLFxuICAgICAgd2VpZ2h0RmllbGQsXG4gICAgICBnZXRQb3NpdGlvblxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSGVhdG1hcExheWVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsU0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsY0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUgsT0FBQTtBQVVBLElBQUFLLE1BQUEsR0FBQUwsT0FBQTtBQUFrRSxJQUFBTSxTQUFBO0FBQUEsU0FBQUMsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNBQUEsQ0FBQUMsTUFBQSxFQUFBYixDQUFBLFVBQUFDLENBQUEsV0FBQVcsU0FBQSxDQUFBWixDQUFBLElBQUFZLFNBQUEsQ0FBQVosQ0FBQSxRQUFBQSxDQUFBLE9BQUFGLE9BQUEsQ0FB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
|
|
276
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVzZWxlY3QiLCJyZXF1aXJlIiwiX2NvbnN0YW50cyIsIl9tYXBib3hnbExheWVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9oZWF0bWFwTGF5ZXJJY29uIiwiX3V0aWxzIiwiX2xheWVyVXRpbHMiLCJfZXhjbHVkZWQiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiY2FsbCIsIl9zdXBlclByb3BHZXQiLCJwIiwiX2dldDIiLCJNQVhfWk9PTV9MRVZFTCIsImV4cG9ydHMiLCJwb2ludFBvc0FjY2Vzc29yIiwiX3JlZiIsImxhdCIsImxuZyIsImRjIiwiZCIsInZhbHVlQXQiLCJpbmRleCIsImZpZWxkSWR4IiwiZ2VvYXJyb3dQb3NBY2Nlc3NvciIsIl9yZWYyIiwiZ2VvYXJyb3ciLCJyb3ciLCJnZXQiLCJwb2ludENvbFJlc29sdmVyIiwiX3JlZjMiLCJjb2x1bW5Nb2RlIiwiQ09MVU1OX01PREVfUE9JTlRTIiwiY29uY2F0IiwiaGVhdG1hcFZpc0NvbmZpZ3MiLCJvcGFjaXR5IiwiY29sb3JSYW5nZSIsInJhZGl1cyIsInBvaW50UmVxdWlyZWRDb2x1bW5zIiwiZ2VvYXJyb3dSZXF1aXJlZENvbHVtbnMiLCJDT0xVTU5fTU9ERV9HRU9BUlJPVyIsIlNVUFBPUlRFRF9DT0xVTU5fTU9ERVMiLCJrZXkiLCJsYWJlbCIsInJlcXVpcmVkQ29sdW1ucyIsIkRFRkFVTFRfQ09MVU1OX01PREUiLCJoZWF0bWFwRGVuc2l0eSIsImNvbG9ycyIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJjb2xvckRlbnNpdHkiLCJjb2xvciIsImhleFRvUmdiIiwiam9pbiIsIkhlYXRtYXBMYXllciIsIl9NYXBib3hHTExheWVyIiwicHJvcHMiLCJfdGhpcyIsIl9jbGFzc0NhbGxDaGVjazIiLCJjb25maWciLCJjb2x1bW5zIiwidmlzQ29uZmlnIiwid2VpZ2h0RmllbGQiLCJuYW1lIiwid2VpZ2h0RG9tYWluIiwiY3JlYXRlU2VsZWN0b3IiLCJ2aXNDb25maWdTZWxlY3RvciIsIndlaWdodEZpZWxkU2VsZWN0b3IiLCJ3ZWlnaHREb21haW5TZWxlY3RvciIsInNvdXJjZVNlbGVjdG9yIiwiZmlsdGVyU2VsZWN0b3IiLCJwYWludFNlbGVjdG9yIiwic291cmNlIiwicGFpbnQiLCJ0eXBlIiwiaWQiLCJsYXlvdXQiLCJ2aXNpYmlsaXR5IiwiaXNWYWxpZEZpbHRlciIsInJlZ2lzdGVyVmlzQ29uZmlnIiwiZ2V0UG9zaXRpb25BY2Nlc3NvciIsImRhdGFDb250YWluZXIiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsInZhbHVlIiwiaGFzQWxsQ29sdW1ucyIsIl90aGlzJGNvbmZpZyIsImhhc0NvbHVtblZhbHVlIiwid2VpZ2h0IiwicHJvcGVydHkiLCJmaWVsZCIsInNjYWxlIiwiZG9tYWluIiwiZGVmYXVsdE1lYXN1cmUiLCJzdXBwb3J0ZWRGaWVsZFR5cGVzIiwiQUxMX0ZJRUxEX1RZUEVTIiwicmVhbCIsImludGVnZXIiLCJjaGFubmVsU2NhbGVUeXBlIiwiQ0hBTk5FTF9TQ0FMRVMiLCJzaXplIiwiSGVhdG1hcExheWVySWNvbiIsImdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbiIsImNoYW5uZWwiLCJtZWFzdXJlIiwiZ2V0RGVmYXVsdExheWVyQ29uZmlnIiwiX3Byb3BzJGNvbHVtbk1vZGUiLCJfc3VwZXJQcm9wR2V0JGNvbHVtbk0iLCJ3ZWlnaHRTY2FsZSIsImNvbG9yRmllbGQiLCJjb2xvckRvbWFpbiIsImNvbG9yU2NhbGUiLCJsYXllckNvbmZpZyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJ1cGRhdGVMYXllck1ldGEiLCJkYXRhc2V0IiwiZ2V0UG9zaXRpb24iLCJib3VuZHMiLCJnZXRQb2ludHNCb3VuZHMiLCJ1cGRhdGVNZXRhIiwiZm9ybWF0TGF5ZXJEYXRhIiwiZGF0YXNldHMiLCJvbGRMYXllckRhdGEiLCJkYXRhSWQiLCJfdGhpcyR1cGRhdGVEYXRhIiwidXBkYXRlRGF0YSIsImRhdGEiLCJuZXdDb25maWciLCJjb21wdXRlSGVhdG1hcENvbmZpZ3VyYXRpb24iLCJmaW5kRGVmYXVsdExheWVyUHJvcHMiLCJhbHRQcm9wcyIsImdldEdlb0Fycm93UG9pbnRMYXllclByb3BzIiwiTWFwYm94R0xMYXllciIsIl9kZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlYXRtYXAtbGF5ZXIvaGVhdG1hcC1sYXllci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5pbXBvcnQge0NIQU5ORUxfU0NBTEVTLCBBTExfRklFTERfVFlQRVN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCBNYXBib3hHTExheWVyLCB7TWFwYm94TGF5ZXJHTENvbmZpZ30gZnJvbSAnLi4vbWFwYm94Z2wtbGF5ZXInO1xuaW1wb3J0IEhlYXRtYXBMYXllckljb24gZnJvbSAnLi9oZWF0bWFwLWxheWVyLWljb24nO1xuaW1wb3J0IHtMYXllckJhc2VDb25maWdQYXJ0aWFsLCBMYXllcldlaWdodENvbmZpZywgVmlzdWFsQ2hhbm5lbHN9IGZyb20gJy4uL2Jhc2UtbGF5ZXInO1xuaW1wb3J0IHtcbiAgQ29sb3JSYW5nZSxcbiAgVmlzQ29uZmlnQ29sb3JSYW5nZSxcbiAgVmlzQ29uZmlnTnVtYmVyLFxuICBIZXhDb2xvcixcbiAgTWVyZ2UsXG4gIExheWVyQ29sdW1uXG59IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtoZXhUb1JnYiwgRGF0YUNvbnRhaW5lckludGVyZmFjZX0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge0tlcGxlclRhYmxlfSBmcm9tICdAa2VwbGVyLmdsL3RhYmxlJztcblxuaW1wb3J0IHtnZXRHZW9BcnJvd1BvaW50TGF5ZXJQcm9wcywgRmluZERlZmF1bHRMYXllclByb3BzUmV0dXJuVmFsdWV9IGZyb20gJy4uL2xheWVyLXV0aWxzJztcblxuZXhwb3J0IHR5cGUgSGVhdG1hcExheWVyVmlzQ29uZmlnU2V0dGluZ3MgPSB7XG4gIG9wYWNpdHk6IFZpc0NvbmZpZ051bWJlcjtcbiAgY29sb3JSYW5nZTogVmlzQ29uZmlnQ29sb3JSYW5nZTtcbiAgcmFkaXVzOiBWaXNDb25maWdOdW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBIZWF0bWFwTGF5ZXJDb2x1bW5zQ29uZmlnID0ge1xuICAvLyBDT0xVTU5fTU9ERV9QT0lOVFNcbiAgbGF0OiBMYXllckNvbHVtbjtcbiAgbG5nOiBMYXllckNvbHVtbjtcblxuICAvLyBDT0xVTU5fTU9ERV9HRU9BUlJPV1xuICBnZW9hcnJvdzogTGF5ZXJDb2x1bW47XG59O1xuXG5leHBvcnQgdHlwZSBIZWF0bWFwTGF5ZXJWaXNDb25maWcgPSB7XG4gIG9wYWNpdHk6IG51bWJlcjtcbiAgY29sb3JSYW5nZTogQ29sb3JSYW5nZTtcbiAgcmFkaXVzOiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBIZWF0bWFwTGF5ZXJWaXN1YWxDaGFubmVsQ29uZmlnID0gTGF5ZXJXZWlnaHRDb25maWc7XG5leHBvcnQgdHlwZSBIZWF0bWFwTGF5ZXJDb25maWcgPSBNZXJnZTxcbiAgTWFwYm94TGF5ZXJHTENvbmZpZyxcbiAge2NvbHVtbnM6IEhlYXRtYXBMYXllckNvbHVtbnNDb25maWc7IHZpc0NvbmZpZzogSGVhdG1hcExheWVyVmlzQ29uZmlnfVxuPiAmXG4gIEhlYXRtYXBMYXllclZpc3VhbENoYW5uZWxDb25maWc7XG5cbmV4cG9ydCBjb25zdCBNQVhfWk9PTV9MRVZFTCA9IDE4O1xuXG5leHBvcnQgY29uc3QgcG9pbnRQb3NBY2Nlc3NvciA9XG4gICh7bGF0LCBsbmd9OiBIZWF0bWFwTGF5ZXJDb2x1bW5zQ29uZmlnKSA9PlxuICAoZGM6IERhdGFDb250YWluZXJJbnRlcmZhY2UpID0+XG4gIChkOiB7aW5kZXg6IG51bWJlcn0pOiBudW1iZXJbXSA9PlxuICAgIFtkYy52YWx1ZUF0KGQuaW5kZXgsIGxuZy5maWVsZElkeCksIGRjLnZhbHVlQXQoZC5pbmRleCwgbGF0LmZpZWxkSWR4KV07XG5cbmV4cG9ydCBjb25zdCBnZW9hcnJvd1Bvc0FjY2Vzc29yID1cbiAgKHtnZW9hcnJvd306IEhlYXRtYXBMYXllckNvbHVtbnNDb25maWcpID0+XG4gIChkYzogRGF0YUNvbnRhaW5lckludGVyZmFjZSkgPT5cbiAgKGQ6IHtpbmRleDogbnVtYmVyfSk6IG51bWJlcltdID0+IHtcbiAgICBjb25zdCByb3cgPSBkYy52YWx1ZUF0KGQuaW5kZXgsIGdlb2Fycm93LmZpZWxkSWR4KTtcbiAgICByZXR1cm4gW3Jvdy5nZXQoMCksIHJvdy5nZXQoMSldO1xuICB9O1xuXG5leHBvcnQgY29uc3QgcG9pbnRDb2xSZXNvbHZlciA9ICh7bGF0LCBsbmcsIGdlb2Fycm93fTogSGVhdG1hcExheWVyQ29sdW1uc0NvbmZpZywgY29sdW1uTW9kZSkgPT4ge1xuICBpZiAoY29sdW1uTW9kZSA9PT0gQ09MVU1OX01PREVfUE9JTlRTKSB7XG4gICAgcmV0dXJuIGAke2xhdC5maWVsZElkeH0tJHtsbmcuZmllbGRJZHh9YDtcbiAgfVxuICByZXR1cm4gYGdlb2Fycm93LSR7Z2VvYXJyb3cuZmllbGRJZHh9YDtcbn07XG5cbmV4cG9ydCBjb25zdCBoZWF0bWFwVmlzQ29uZmlnczoge1xuICBvcGFjaXR5OiAnb3BhY2l0eSc7XG4gIGNvbG9yUmFuZ2U6ICdjb2xvclJhbmdlJztcbiAgcmFkaXVzOiAnaGVhdG1hcFJhZGl1cyc7XG59ID0ge1xuICBvcGFjaXR5OiAnb3BhY2l0eScsXG4gIGNvbG9yUmFuZ2U6ICdjb2xvclJhbmdlJyxcbiAgcmFkaXVzOiAnaGVhdG1hcFJhZGl1cydcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludFJlcXVpcmVkQ29sdW1ucyA9IFsnbGF0JywgJ2xuZyddO1xuZXhwb3J0IGNvbnN0IGdlb2Fycm93UmVxdWlyZWRDb2x1bW5zID0gWydnZW9hcnJvdyddO1xuXG5leHBvcnQgY29uc3QgQ09MVU1OX01PREVfUE9JTlRTID0gJ3BvaW50cyc7XG5leHBvcnQgY29uc3QgQ09MVU1OX01PREVfR0VPQVJST1cgPSAnZ2VvYXJyb3cnO1xuY29uc3QgU1VQUE9SVEVEX0NPTFVNTl9NT0RFUyA9IFtcbiAge1xuICAgIGtleTogQ09MVU1OX01PREVfUE9JTlRTLFxuICAgIGxhYmVsOiAnUG9pbnRzJyxcbiAgICByZXF1aXJlZENvbHVtbnM6IHBvaW50UmVxdWlyZWRDb2x1bW5zXG4gIH0sXG4gIHtcbiAgICBrZXk6IENPTFVNTl9NT0RFX0dFT0FSUk9XLFxuICAgIGxhYmVsOiAnR2VvYXJyb3cgUG9pbnRzJyxcbiAgICByZXF1aXJlZENvbHVtbnM6IGdlb2Fycm93UmVxdWlyZWRDb2x1bW5zXG4gIH1cbl07XG5jb25zdCBERUZBVUxUX0NPTFVNTl9NT0RFID0gQ09MVU1OX01PREVfUE9JTlRTO1xuXG4vKipcbiAqXG4gKiBAcGFyYW0gY29sb3JSYW5nZVxuICogQHJldHVybiBbXG4gKiAgMCwgXCJyZ2JhKDMzLDEwMiwxNzIsMClcIixcbiAqICAwLjIsIFwicmdiKDEwMywxNjksMjA3KVwiLFxuICogIDAuNCwgXCJyZ2IoMjA5LDIyOSwyNDApXCIsXG4gKiAgMC42LCBcInJnYigyNTMsMjE5LDE5OSlcIixcbiAqICAwLjgsIFwicmdiKDIzOSwxMzgsOTgpXCIsXG4gKiAgMSwgXCJyZ2IoMTc4LDI0LDQzKVwiXG4gKiBdXG4gKi9cbmNvbnN0IGhlYXRtYXBEZW5zaXR5ID0gKGNvbG9yUmFuZ2U6IENvbG9yUmFuZ2UpOiAoc3RyaW5nIHwgbnVtYmVyKVtdID0+IHtcbiAgY29uc3QgY29sb3JzOiBIZXhDb2xvcltdID0gWycjMDAwMDAwJywgLi4uY29sb3JSYW5nZS5jb2xvcnNdO1xuXG4gIGNvbnN0IGNvbG9yRGVuc2l0eTogKHN0cmluZyB8IG51bWJlcilbXSA9IFtdO1xuICBjb2xvcnMuZm9yRWFjaCgoY29sb3IsIGluZGV4KSA9PiB7XG4gICAgY29sb3JEZW5zaXR5LnB1c2goaW5kZXggLyBjb2xvcnMubGVuZ3RoKTtcbiAgICBjb2xvckRlbnNpdHkucHVzaChgcmdiKCR7aGV4VG9SZ2IoY29sb3IpLmpvaW4oJywnKX0pYCk7XG4gIH0pO1xuXG4gIGNvbG9yRGVuc2l0eVsxXSA9ICdyZ2JhKDAsMCwwLDApJztcbiAgcmV0dXJuIGNvbG9yRGVuc2l0eTtcbn07XG5cbmNsYXNzIEhlYXRtYXBMYXllciBleHRlbmRzIE1hcGJveEdMTGF5ZXIge1xuICBkZWNsYXJlIHZpc0NvbmZpZ1NldHRpbmdzOiBIZWF0bWFwTGF5ZXJWaXNDb25maWdTZXR0aW5ncztcbiAgZGVjbGFyZSBjb25maWc6IEhlYXRtYXBMYXllckNvbmZpZztcblxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgICB0aGlzLnJlZ2lzdGVyVmlzQ29uZmlnKGhlYXRtYXBWaXNDb25maWdzKTtcblxuICAgIHRoaXMuZ2V0UG9zaXRpb25BY2Nlc3NvciA9IChkYXRhQ29udGFpbmVyOiBEYXRhQ29udGFpbmVySW50ZXJmYWNlKSA9PiB7XG4gICAgICBzd2l0Y2ggKHRoaXMuY29uZmlnLmNvbHVtbk1vZGUpIHtcbiAgICAgICAgY2FzZSBDT0xVTU5fTU9ERV9HRU9BUlJPVzpcbiAgICAgICAgICByZXR1cm4gZ2VvYXJyb3dQb3NBY2Nlc3Nvcih0aGlzLmNvbmZpZy5jb2x1bW5zKShkYXRhQ29udGFpbmVyKTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAvLyBDT0xVTU5fTU9ERV9QT0lOVFNcbiAgICAgICAgICByZXR1cm4gcG9pbnRQb3NBY2Nlc3Nvcih0aGlzLmNvbmZpZy5jb2x1bW5zKShkYXRhQ29udGFpbmVyKTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgZ2V0IHR5cGUoKTogJ2hlYXRtYXAnIHtcbiAgICByZXR1cm4gJ2hlYXRtYXAnO1xuICB9XG5cbiAgZ2V0IHN1cHBvcnRlZENvbHVtbk1vZGVzKCkge1xuICAgIHJldHVybiBTVVBQT1JURURfQ09MVU1OX01PREVTO1xuICB9XG5cbiAgaGFzQWxsQ29sdW1ucygpIHtcbiAgICBjb25zdCB7Y29sdW1ucywgY29sdW1uTW9kZX0gPSB0aGlzLmNvbmZpZztcbiAgICBpZiAoY29sdW1uTW9kZSA9PT0gQ09MVU1OX01PREVfR0VPQVJST1cpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhc0NvbHVtblZhbHVlKGNvbHVtbnMuZ2VvYXJyb3cpO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuaGFzQWxsQ29sdW1ucygpO1xuICB9XG5cbiAgc3RhdGljIGZpbmREZWZhdWx0TGF5ZXJQcm9wcyhkYXRhc2V0OiBLZXBsZXJUYWJsZSk6IEZpbmREZWZhdWx0TGF5ZXJQcm9wc1JldHVyblZhbHVlIHtcbiAgICBjb25zdCBhbHRQcm9wcyA9IGdldEdlb0Fycm93UG9pbnRMYXllclByb3BzKGRhdGFzZXQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHByb3BzOiBbXSxcbiAgICAgIGFsdFByb3BzXG4gICAgfTtcbiAgfVxuXG4gIGdldCB2aXN1YWxDaGFubmVscygpOiBWaXN1YWxDaGFubmVscyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgIHdlaWdodDoge1xuICAgICAgICBwcm9wZXJ0eTogJ3dlaWdodCcsXG4gICAgICAgIGZpZWxkOiAnd2VpZ2h0RmllbGQnLFxuICAgICAgICBzY2FsZTogJ3dlaWdodFNjYWxlJyxcbiAgICAgICAgZG9tYWluOiAnd2VpZ2h0RG9tYWluJyxcbiAgICAgICAga2V5OiAnd2VpZ2h0JyxcbiAgICAgICAgLy8gc3VwcG9ydGVkRmllbGRUeXBlcyBjYW4gYmUgZGV0ZXJtaW5lZCBieSBjaGFubmVsU2NhbGVUeXBlXG4gICAgICAgIC8vIG9yIHNwZWNpZmllZCBoZXJlXG4gICAgICAgIGRlZmF1bHRNZWFzdXJlOiAncHJvcGVydHkuZGVuc2l0eScsXG4gICAgICAgIHN1cHBvcnRlZEZpZWxkVHlwZXM6IFtBTExfRklFTERfVFlQRVMucmVhbCwgQUxMX0ZJRUxEX1RZUEVTLmludGVnZXJdLFxuICAgICAgICBjaGFubmVsU2NhbGVUeXBlOiBDSEFOTkVMX1NDQUxFUy5zaXplXG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIGdldCBsYXllckljb24oKSB7XG4gICAgcmV0dXJuIEhlYXRtYXBMYXllckljb247XG4gIH1cblxuICBnZXRWaXN1YWxDaGFubmVsRGVzY3JpcHRpb24oY2hhbm5lbCkge1xuICAgIHJldHVybiBjaGFubmVsID09PSAnY29sb3InXG4gICAgICA/IHtcbiAgICAgICAgICBsYWJlbDogJ3Byb3BlcnR5LmNvbG9yJyxcbiAgICAgICAgICBtZWFzdXJlOiAncHJvcGVydHkuZGVuc2l0eSdcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgbGFiZWw6ICdwcm9wZXJ0eS53ZWlnaHQnLFxuICAgICAgICAgIG1lYXN1cmU6IHRoaXMuY29uZmlnLndlaWdodEZpZWxkID8gdGhpcy5jb25maWcud2VpZ2h0RmllbGQubmFtZSA6ICdwcm9wZXJ0eS5kZW5zaXR5J1xuICAgICAgICB9O1xuICB9XG5cbiAgZ2V0RGVmYXVsdExheWVyQ29uZmlnKHByb3BzOiBMYXllckJhc2VDb25maWdQYXJ0aWFsKTogSGVhdG1hcExheWVyQ29uZmlnIHtcbiAgICAvLyBtYXBib3ggaGVhdG1hcCBsYXllciBjb2xvciBpcyBhbHdheXMgYmFzZWQgb24gZGVuc2l0eVxuICAgIC8vIG5vIG5lZWQgdG8gc2V0IGNvbG9yRmllbGQsIGNvbG9yRG9tYWluIGFuZCBjb2xvclNjYWxlXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgY29uc3Qge2NvbG9yRmllbGQsIGNvbG9yRG9tYWluLCBjb2xvclNjYWxlLCAuLi5sYXllckNvbmZpZ30gPSB7XG4gICAgICAuLi5zdXBlci5nZXREZWZhdWx0TGF5ZXJDb25maWcocHJvcHMpLFxuICAgICAgY29sdW1uTW9kZTogcHJvcHM/LmNvbHVtbk1vZGUgPz8gREVGQVVMVF9DT0xVTU5fTU9ERSxcblxuICAgICAgd2VpZ2h0RmllbGQ6IG51bGwsXG4gICAgICB3ZWlnaHREb21haW46IFswLCAxXSxcbiAgICAgIHdlaWdodFNjYWxlOiAnbGluZWFyJ1xuICAgIH07XG5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgcmV0dXJuIGxheWVyQ29uZmlnO1xuICB9XG5cbiAgdXBkYXRlTGF5ZXJNZXRhKGRhdGFzZXQ6IEtlcGxlclRhYmxlKSB7XG4gICAgY29uc3Qge2RhdGFDb250YWluZXJ9ID0gZGF0YXNldDtcblxuICAgIGNvbnN0IGdldFBvc2l0aW9uID0gdGhpcy5nZXRQb3NpdGlvbkFjY2Vzc29yKGRhdGFDb250YWluZXIpO1xuICAgIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0UG9pbnRzQm91bmRzKGRhdGFDb250YWluZXIsIGdldFBvc2l0aW9uKTtcbiAgICB0aGlzLnVwZGF0ZU1ldGEoe2JvdW5kc30pO1xuICB9XG5cbiAgY29sdW1uc1NlbGVjdG9yID0gY29uZmlnID0+IHBvaW50Q29sUmVzb2x2ZXIoY29uZmlnLmNvbHVtbnMsIGNvbmZpZy5jb2x1bW5Nb2RlKTtcbiAgdmlzQ29uZmlnU2VsZWN0b3IgPSBjb25maWcgPT4gY29uZmlnLnZpc0NvbmZpZztcbiAgd2VpZ2h0RmllbGRTZWxlY3RvciA9IGNvbmZpZyA9PiAoY29uZmlnLndlaWdodEZpZWxkID8gY29uZmlnLndlaWdodEZpZWxkLm5hbWUgOiBudWxsKTtcbiAgd2VpZ2h0RG9tYWluU2VsZWN0b3IgPSBjb25maWcgPT4gY29uZmlnLndlaWdodERvbWFpbjtcblxuICBwYWludFNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgdGhpcy52aXNDb25maWdTZWxlY3RvcixcbiAgICB0aGlzLndlaWdodEZpZWxkU2VsZWN0b3IsXG4gICAgdGhpcy53ZWlnaHREb21haW5TZWxlY3RvcixcbiAgICAodmlzQ29uZmlnLCB3ZWlnaHRGaWVsZCwgd2VpZ2h0RG9tYWluKSA9PiAoe1xuICAgICAgJ2hlYXRtYXAtd2VpZ2h0Jzogd2VpZ2h0RmllbGRcbiAgICAgICAgPyBbJ2ludGVycG9sYXRlJywgWydsaW5lYXInXSwgWydnZXQnLCB3ZWlnaHRGaWVsZF0sIHdlaWdodERvbWFpblswXSwgMCwgd2VpZ2h0RG9tYWluWzFdLCAxXVxuICAgICAgICA6IDEsXG4gICAgICAnaGVhdG1hcC1pbnRlbnNpdHknOiBbJ2ludGVycG9sYXRlJywgWydsaW5lYXInXSwgWyd6b29tJ10sIDAsIDEsIE1BWF9aT09NX0xFVkVMLCAzXSxcbiAgICAgICdoZWF0bWFwLWNvbG9yJzogW1xuICAgICAgICAnaW50ZXJwb2xhdGUnLFxuICAgICAgICBbJ2xpbmVhciddLFxuICAgICAgICBbJ2hlYXRtYXAtZGVuc2l0eSddLFxuICAgICAgICAuLi5oZWF0bWFwRGVuc2l0eSh2aXNDb25maWcuY29sb3JSYW5nZSlcbiAgICAgIF0sXG4gICAgICAnaGVhdG1hcC1yYWRpdXMnOiBbXG4gICAgICAgICdpbnRlcnBvbGF0ZScsXG4gICAgICAgIFsnbGluZWFyJ10sXG4gICAgICAgIFsnem9vbSddLFxuICAgICAgICAwLFxuICAgICAgICAyLFxuICAgICAgICBNQVhfWk9PTV9MRVZFTCxcbiAgICAgICAgdmlzQ29uZmlnLnJhZGl1cyAvLyByYWRpdXNcbiAgICAgIF0sXG4gICAgICAnaGVhdG1hcC1vcGFjaXR5JzogdmlzQ29uZmlnLm9wYWNpdHlcbiAgICB9KVxuICApO1xuXG4gIGNvbXB1dGVIZWF0bWFwQ29uZmlndXJhdGlvbiA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgIHRoaXMuc291cmNlU2VsZWN0b3IsXG4gICAgdGhpcy5maWx0ZXJTZWxlY3RvcixcbiAgICB0aGlzLnBhaW50U2VsZWN0b3IsXG4gICAgKHNvdXJjZSwgZmlsdGVyLCBwYWludCkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogJ2hlYXRtYXAnLFxuICAgICAgICBpZDogdGhpcy5pZCxcbiAgICAgICAgc291cmNlLFxuICAgICAgICBsYXlvdXQ6IHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiAndmlzaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgcGFpbnQsXG4gICAgICAgIC4uLih0aGlzLmlzVmFsaWRGaWx0ZXIoZmlsdGVyKSA/IHtmaWx0ZXJ9IDoge30pXG4gICAgICB9O1xuICAgIH1cbiAgKTtcblxuICBmb3JtYXRMYXllckRhdGEoZGF0YXNldHMsIG9sZExheWVyRGF0YSkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5kYXRhSWQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgY29uc3Qge3dlaWdodEZpZWxkfSA9IHRoaXMuY29uZmlnO1xuICAgIGNvbnN0IHtkYXRhQ29udGFpbmVyfSA9IGRhdGFzZXRzW3RoaXMuY29uZmlnLmRhdGFJZF07XG4gICAgY29uc3QgZ2V0UG9zaXRpb24gPSB0aGlzLmdldFBvc2l0aW9uQWNjZXNzb3IoZGF0YUNvbnRhaW5lcik7XG4gICAgY29uc3Qge2RhdGF9ID0gdGhpcy51cGRhdGVEYXRhKGRhdGFzZXRzLCBvbGRMYXllckRhdGEpO1xuXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IG5ld0NvbmZpZyA9IHRoaXMuY29tcHV0ZUhlYXRtYXBDb25maWd1cmF0aW9uKHRoaXMuY29uZmlnLCBkYXRhc2V0cyk7XG4gICAgbmV3Q29uZmlnLmlkID0gdGhpcy5pZDtcblxuICAgIHJldHVybiB7XG4gICAgICBjb2x1bW5zOiB0aGlzLmNvbmZpZy5jb2x1bW5zLFxuICAgICAgY29uZmlnOiBuZXdDb25maWcsXG4gICAgICBkYXRhLFxuICAgICAgd2VpZ2h0RmllbGQsXG4gICAgICBnZXRQb3NpdGlvblxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSGVhdG1hcExheWVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsU0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsY0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUgsT0FBQTtBQVVBLElBQUFLLE1BQUEsR0FBQUwsT0FBQTtBQUdBLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBQUE0RixJQUFBTyxTQUFBO0FBQUEsU0FBQUMsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFB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
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import IconLayerIcon from './icon-layer-icon';
|
|
3
3
|
import Layer, { LayerBaseConfig, LayerBaseConfigPartial } from '../base-layer';
|
|
4
|
+
import { FindDefaultLayerPropsReturnValue } from '../layer-utils';
|
|
4
5
|
import { default as KeplerTable } from '@kepler.gl/table';
|
|
5
6
|
import { DataContainerInterface } from '@kepler.gl/utils';
|
|
6
7
|
import { ColorRange, VisConfigBoolean, VisConfigColorRange, VisConfigNumber, VisConfigRange, Merge, LayerColumn } from '@kepler.gl/types';
|
|
@@ -109,11 +110,13 @@ export default class IconLayer extends Layer {
|
|
|
109
110
|
title: string;
|
|
110
111
|
};
|
|
111
112
|
};
|
|
113
|
+
getZoomFactor({ zoom, zoomOffset }: {
|
|
114
|
+
zoom: number;
|
|
115
|
+
zoomOffset?: number;
|
|
116
|
+
}): number;
|
|
112
117
|
getSvgIcons(): void;
|
|
113
118
|
setSvgIcons(svgIcons?: any[]): void;
|
|
114
|
-
static findDefaultLayerProps({ fieldPairs, fields }: KeplerTable):
|
|
115
|
-
props: any;
|
|
116
|
-
};
|
|
119
|
+
static findDefaultLayerProps({ fieldPairs, fields }: KeplerTable): FindDefaultLayerPropsReturnValue;
|
|
117
120
|
getFilteredItemCount(): number | null;
|
|
118
121
|
calculateDataAttribute({ dataContainer, filteredIndex }: KeplerTable, getPosition: any): IconLayerData[];
|
|
119
122
|
formatLayerData(datasets: any, oldLayerData: any): {};
|
|
@@ -159,6 +159,14 @@ var IconLayer = exports["default"] = /*#__PURE__*/function (_Layer) {
|
|
|
159
159
|
}
|
|
160
160
|
};
|
|
161
161
|
}
|
|
162
|
+
}, {
|
|
163
|
+
key: "getZoomFactor",
|
|
164
|
+
value: function getZoomFactor(_ref3) {
|
|
165
|
+
var zoom = _ref3.zoom,
|
|
166
|
+
_ref3$zoomOffset = _ref3.zoomOffset,
|
|
167
|
+
zoomOffset = _ref3$zoomOffset === void 0 ? 0 : _ref3$zoomOffset;
|
|
168
|
+
return Math.pow(2, 14 - zoom + zoomOffset);
|
|
169
|
+
}
|
|
162
170
|
}, {
|
|
163
171
|
key: "getSvgIcons",
|
|
164
172
|
value: function getSvgIcons() {
|
|
@@ -199,9 +207,9 @@ var IconLayer = exports["default"] = /*#__PURE__*/function (_Layer) {
|
|
|
199
207
|
}
|
|
200
208
|
}, {
|
|
201
209
|
key: "calculateDataAttribute",
|
|
202
|
-
value: function calculateDataAttribute(
|
|
203
|
-
var dataContainer =
|
|
204
|
-
filteredIndex =
|
|
210
|
+
value: function calculateDataAttribute(_ref4, getPosition) {
|
|
211
|
+
var dataContainer = _ref4.dataContainer,
|
|
212
|
+
filteredIndex = _ref4.filteredIndex;
|
|
205
213
|
var getIcon = this.getIconAccessor(dataContainer);
|
|
206
214
|
var data = [];
|
|
207
215
|
for (var i = 0; i < filteredIndex.length; i++) {
|
|
@@ -335,19 +343,19 @@ var IconLayer = exports["default"] = /*#__PURE__*/function (_Layer) {
|
|
|
335
343
|
}
|
|
336
344
|
}], [{
|
|
337
345
|
key: "findDefaultLayerProps",
|
|
338
|
-
value: function findDefaultLayerProps(
|
|
339
|
-
var
|
|
340
|
-
fieldPairs =
|
|
341
|
-
|
|
342
|
-
fields =
|
|
346
|
+
value: function findDefaultLayerProps(_ref5) {
|
|
347
|
+
var _ref5$fieldPairs = _ref5.fieldPairs,
|
|
348
|
+
fieldPairs = _ref5$fieldPairs === void 0 ? [] : _ref5$fieldPairs,
|
|
349
|
+
_ref5$fields = _ref5.fields,
|
|
350
|
+
fields = _ref5$fields === void 0 ? [] : _ref5$fields;
|
|
343
351
|
var notFound = {
|
|
344
352
|
props: []
|
|
345
353
|
};
|
|
346
354
|
if (!fieldPairs.length || !fields.length) {
|
|
347
355
|
return notFound;
|
|
348
356
|
}
|
|
349
|
-
var iconFields = fields.filter(function (
|
|
350
|
-
var name =
|
|
357
|
+
var iconFields = fields.filter(function (_ref6) {
|
|
358
|
+
var name = _ref6.name;
|
|
351
359
|
return name.replace(/[_,.]+/g, ' ').trim().split(' ').some(function (seg) {
|
|
352
360
|
return _constants2.ICON_FIELDS.icon.some(function (t) {
|
|
353
361
|
return t.includes(seg);
|
|
@@ -379,4 +387,4 @@ var IconLayer = exports["default"] = /*#__PURE__*/function (_Layer) {
|
|
|
379
387
|
}
|
|
380
388
|
}]);
|
|
381
389
|
}(_baseLayer["default"]);
|
|
382
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2luZG93IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZXh0ZW5zaW9ucyIsIl9jb25zdGFudHMiLCJfZGVja2dsTGF5ZXJzIiwiX2ljb25MYXllckljb24iLCJfY29uc3RhbnRzMiIsIl9pY29uSW5mb01vZGFsIiwiX2Jhc2VMYXllciIsIl9sYXllclV0aWxzIiwiX3V0aWxzIiwiX2xheWVyVGV4dExhYmVsIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwicCIsIl9nZXQyIiwiYnJ1c2hpbmdFeHRlbnNpb24iLCJCcnVzaGluZ0V4dGVuc2lvbiIsIlNWR19JQ09OX1VSTCIsImV4cG9ydHMiLCJjb25jYXQiLCJLRVBMRVJfVU5GT0xERURfQlVDS0VUIiwiaWNvblBvc0FjY2Vzc29yIiwiX3JlZiIsImxhdCIsImxuZyIsImFsdGl0dWRlIiwiZGMiLCJkIiwidmFsdWVBdCIsImluZGV4IiwiZmllbGRJZHgiLCJpY29uQWNjZXNzb3IiLCJfcmVmMiIsImljb24iLCJpY29uUmVxdWlyZWRDb2x1bW5zIiwiaWNvbk9wdGlvbmFsQ29sdW1ucyIsInBvaW50VmlzQ29uZmlncyIsInJhZGl1cyIsImZpeGVkUmFkaXVzIiwib3BhY2l0eSIsImNvbG9yUmFuZ2UiLCJyYWRpdXNSYW5nZSIsImJpbGxib2FyZCIsImZsYXR0ZXJJY29uUG9zaXRpb25zIiwibWVzaCIsImNlbGxzIiwicmVkdWNlIiwicHJldiIsImNlbGwiLCJwb3NpdGlvbnMiLCJJY29uTGF5ZXIiLCJfTGF5ZXIiLCJwcm9wcyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsInJlZ2lzdGVyVmlzQ29uZmlnIiwiZ2V0UG9zaXRpb25BY2Nlc3NvciIsImRhdGFDb250YWluZXIiLCJjb25maWciLCJjb2x1bW5zIiwiZ2V0SWNvbkFjY2Vzc29yIiwiX2xheWVySW5mb01vZGFsIiwiSWNvbkluZm9Nb2RhbEZhY3RvcnkiLCJzdmdJY29ucyIsImljb25HZW9tZXRyeSIsImlzVGVzdCIsInNldFN2Z0ljb25zIiwiZ2V0U3ZnSWNvbnMiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsImdldCIsImRlZmF1bHRQb2ludENvbHVtblBhaXJzIiwiSWNvbkxheWVySWNvbiIsImNvbG9yIiwiYWNjZXNzb3IiLCJkZWZhdWx0VmFsdWUiLCJzaXplIiwicHJvcGVydHkiLCJyYW5nZSIsImNoYW5uZWxTY2FsZVR5cGUiLCJpZCIsInRlbXBsYXRlIiwibW9kYWxQcm9wcyIsInRpdGxlIiwidmFsdWUiLCJfdGhpczIiLCJmZXRjaENvbmZpZyIsIm1ldGhvZCIsIm1vZGUiLCJjYWNoZSIsIldpbmRvdyIsImZldGNoIiwic3ZnSWNvblVybCIsInRoZW4iLCJyZXNwb25zZSIsImpzb24iLCJwYXJzZWQiLCJ1bmRlZmluZWQiLCJhY2N1IiwiY3VyciIsImdldEZpbHRlcmVkSXRlbUNvdW50IiwiZmlsdGVyZWRJdGVtQ291bnQiLCJ2YWx1ZXMiLCJ0b3RhbCIsIk51bWJlciIsImlzRmluaXRlIiwiY2FsY3VsYXRlRGF0YUF0dHJpYnV0ZSIsIl9yZWYzIiwiZ2V0UG9zaXRpb24iLCJmaWx0ZXJlZEluZGV4IiwiZ2V0SWNvbiIsImRhdGEiLCJpIiwicm93SW5kZXgiLCJwb3MiLCJldmVyeSIsImZvcm1hdExheWVyRGF0YSIsImRhdGFzZXRzIiwib2xkTGF5ZXJEYXRhIiwiZGF0YUlkIiwidGV4dExhYmVsIiwiX2RhdGFzZXRzJHRoaXMkY29uZmlnIiwiZ3B1RmlsdGVyIiwiX3RoaXMkdXBkYXRlRGF0YSIsInVwZGF0ZURhdGEiLCJ0cmlnZ2VyQ2hhbmdlZCIsInRleHRMYWJlbHMiLCJmb3JtYXRUZXh0TGFiZWxEYXRhIiwiYWNjZXNzb3JzIiwiZ2V0QXR0cmlidXRlQWNjZXNzb3JzIiwiZ2V0RmlsdGVyVmFsdWUiLCJmaWx0ZXJWYWx1ZUFjY2Vzc29yIiwidXBkYXRlTGF5ZXJNZXRhIiwiZGF0YXNldCIsImJvdW5kcyIsImdldFBvaW50c0JvdW5kcyIsInVwZGF0ZU1ldGEiLCJyZW5kZXJMYXllciIsIm9wdHMiLCJfdGhpcyRjb25maWckY29sdW1ucyQiLCJfdGhpczMiLCJvYmplY3RIb3ZlcmVkIiwibWFwU3RhdGUiLCJpbnRlcmFjdGlvbkNvbmZpZyIsInJhZGl1c1NjYWxlIiwiZ2V0UmFkaXVzU2NhbGVCeVpvb20iLCJsYXllclByb3BzIiwidmlzQ29uZmlnIiwicmFkaXVzTWF4UGl4ZWxzIiwidXBkYXRlVHJpZ2dlcnMiLCJmaWx0ZXJWYWx1ZVVwZGF0ZVRyaWdnZXJzIiwiZ2V0VmlzdWFsQ2hhbm5lbFVwZGF0ZVRyaWdnZXJzIiwiZGVmYXVsdExheWVyUHJvcHMiLCJnZXREZWZhdWx0RGVja0xheWVyUHJvcHMiLCJicnVzaGluZ1Byb3BzIiwiZ2V0QnJ1c2hpbmdFeHRlbnNpb25Qcm9wcyIsImdldFBpeGVsT2Zmc2V0IiwiZ2V0VGV4dE9mZnNldEJ5UmFkaXVzIiwiZ2V0UmFkaXVzIiwiZXh0ZW5zaW9ucyIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJzaGFyZWRQcm9wcyIsImZpbHRlclJhbmdlIiwibGFiZWxMYXllcnMiLCJyZW5kZXJUZXh0TGFiZWxMYXllciIsImhvdmVyZWRPYmplY3QiLCJoYXNIb3ZlcmVkT2JqZWN0IiwicGFyYW1ldGVycyIsImRlcHRoVGVzdCIsImN1bGxGYWNlIiwiR0wiLCJGUk9OVCIsIlN2Z0ljb25MYXllciIsImdldEljb25HZW9tZXRyeSIsIl90aGlzMyRpY29uR2VvbWV0cnkiLCJnZXREZWZhdWx0SG92ZXJMYXllclByb3BzIiwidmlzaWJsZSIsImdldEZpbGxDb2xvciIsImhpZ2hsaWdodENvbG9yIiwiX3RoaXMzJGljb25HZW9tZXRyeTIiLCJmaW5kRGVmYXVsdExheWVyUHJvcHMiLCJfcmVmNCIsIl9yZWY0JGZpZWxkUGFpcnMiLCJmaWVsZFBhaXJzIiwiX3JlZjQkZmllbGRzIiwiZmllbGRzIiwibm90Rm91bmQiLCJpY29uRmllbGRzIiwiX3JlZjUiLCJuYW1lIiwicmVwbGFjZSIsInRyaW0iLCJzcGxpdCIsInNvbWUiLCJzZWciLCJJQ09OX0ZJRUxEUyIsImluY2x1ZGVzIiwicHRQYWlyIiwiYXNzaWduUG9pbnRQYWlyVG9MYXllckNvbHVtbiIsIm1hcCIsImljb25GaWVsZCIsImxhYmVsIiwiaXNWaXNpYmxlIiwiTGF5ZXIiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaWNvbi1sYXllci9pY29uLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBXaW5kb3cgZnJvbSAnZ2xvYmFsL3dpbmRvdyc7XG5pbXBvcnQge0JydXNoaW5nRXh0ZW5zaW9ufSBmcm9tICdAZGVjay5nbC9leHRlbnNpb25zJztcbmltcG9ydCBHTCBmcm9tICdAbHVtYS5nbC9jb25zdGFudHMnO1xuXG5pbXBvcnQge1N2Z0ljb25MYXllcn0gZnJvbSAnQGtlcGxlci5nbC9kZWNrZ2wtbGF5ZXJzJztcbmltcG9ydCBJY29uTGF5ZXJJY29uIGZyb20gJy4vaWNvbi1sYXllci1pY29uJztcbmltcG9ydCB7SUNPTl9GSUVMRFMsIEtFUExFUl9VTkZPTERFRF9CVUNLRVR9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCBJY29uSW5mb01vZGFsRmFjdG9yeSBmcm9tICcuL2ljb24taW5mby1tb2RhbCc7XG5pbXBvcnQgTGF5ZXIsIHtMYXllckJhc2VDb25maWcsIExheWVyQmFzZUNvbmZpZ1BhcnRpYWx9IGZyb20gJy4uL2Jhc2UtbGF5ZXInO1xuaW1wb3J0IHthc3NpZ25Qb2ludFBhaXJUb0xheWVyQ29sdW1ufSBmcm9tICcuLi9sYXllci11dGlscyc7XG5pbXBvcnQge2lzVGVzdH0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge2dldFRleHRPZmZzZXRCeVJhZGl1cywgZm9ybWF0VGV4dExhYmVsRGF0YX0gZnJvbSAnLi4vbGF5ZXItdGV4dC1sYWJlbCc7XG5pbXBvcnQge2RlZmF1bHQgYXMgS2VwbGVyVGFibGV9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuaW1wb3J0IHtEYXRhQ29udGFpbmVySW50ZXJmYWNlfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7XG4gIENvbG9yUmFuZ2UsXG4gIFZpc0NvbmZpZ0Jvb2xlYW4sXG4gIFZpc0NvbmZpZ0NvbG9yUmFuZ2UsXG4gIFZpc0NvbmZpZ051bWJlcixcbiAgVmlzQ29uZmlnUmFuZ2UsXG4gIE1lcmdlLFxuICBMYXllckNvbHVtblxufSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuZXhwb3J0IHR5cGUgSWNvbkxheWVyQ29sdW1uc0NvbmZpZyA9IHtcbiAgbGF0OiBMYXllckNvbHVtbjtcbiAgbG5nOiBMYXllckNvbHVtbjtcbiAgYWx0aXR1ZGU6IExheWVyQ29sdW1uO1xuICBpY29uOiBMYXllckNvbHVtbjtcbn07XG5cbnR5cGUgSWNvbkdlb21ldHJ5ID0gb2JqZWN0IHwgbnVsbDtcblxuZXhwb3J0IHR5cGUgSWNvbkxheWVyVmlzQ29uZmlnU2V0dGluZ3MgPSB7XG4gIHJhZGl1czogVmlzQ29uZmlnTnVtYmVyO1xuICBmaXhlZFJhZGl1czogVmlzQ29uZmlnQm9vbGVhbjtcbiAgb3BhY2l0eTogVmlzQ29uZmlnTnVtYmVyO1xuICBjb2xvclJhbmdlOiBWaXNDb25maWdDb2xvclJhbmdlO1xuICByYWRpdXNSYW5nZTogVmlzQ29uZmlnUmFuZ2U7XG59O1xuXG5leHBvcnQgdHlwZSBJY29uTGF5ZXJWaXNDb25maWcgPSB7XG4gIHJhZGl1czogbnVtYmVyO1xuICBmaXhlZFJhZGl1czogYm9vbGVhbjtcbiAgb3BhY2l0eTogbnVtYmVyO1xuICBjb2xvclJhbmdlOiBDb2xvclJhbmdlO1xuICByYWRpdXNSYW5nZTogW251bWJlciwgbnVtYmVyXTtcbiAgYmlsbGJvYXJkOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgSWNvbkxheWVyQ29uZmlnID0gTWVyZ2U8XG4gIExheWVyQmFzZUNvbmZpZyxcbiAge2NvbHVtbnM6IEljb25MYXllckNvbHVtbnNDb25maWc7IHZpc0NvbmZpZzogSWNvbkxheWVyVmlzQ29uZmlnfVxuPjtcblxuZXhwb3J0IHR5cGUgSWNvbkxheWVyRGF0YSA9IHtpbmRleDogbnVtYmVyOyBpY29uOiBzdHJpbmd9O1xuXG5jb25zdCBicnVzaGluZ0V4dGVuc2lvbiA9IG5ldyBCcnVzaGluZ0V4dGVuc2lvbigpO1xuXG5leHBvcnQgY29uc3QgU1ZHX0lDT05fVVJMID0gYCR7S0VQTEVSX1VORk9MREVEX0JVQ0tFVH0vaWNvbnMvc3ZnLWljb25zLmpzb25gO1xuXG5leHBvcnQgY29uc3QgaWNvblBvc0FjY2Vzc29yID1cbiAgKHtsYXQsIGxuZywgYWx0aXR1ZGV9OiBJY29uTGF5ZXJDb2x1bW5zQ29uZmlnKSA9PlxuICAoZGM6IERhdGFDb250YWluZXJJbnRlcmZhY2UpID0+XG4gIGQgPT4gW1xuICAgIGRjLnZhbHVlQXQoZC5pbmRleCwgbG5nLmZpZWxkSWR4KSxcbiAgICBkYy52YWx1ZUF0KGQuaW5kZXgsIGxhdC5maWVsZElkeCksXG4gICAgYWx0aXR1ZGU/LmZpZWxkSWR4ID4gLTEgPyBkYy52YWx1ZUF0KGQuaW5kZXgsIGFsdGl0dWRlLmZpZWxkSWR4KSA6IDBcbiAgXTtcblxuZXhwb3J0IGNvbnN0IGljb25BY2Nlc3NvciA9XG4gICh7aWNvbn06IEljb25MYXllckNvbHVtbnNDb25maWcpID0+XG4gIChkYzogRGF0YUNvbnRhaW5lckludGVyZmFjZSkgPT5cbiAgZCA9PlxuICAgIGRjLnZhbHVlQXQoZC5pbmRleCwgaWNvbi5maWVsZElkeCk7XG5cbmV4cG9ydCBjb25zdCBpY29uUmVxdWlyZWRDb2x1bW5zOiBbJ2xhdCcsICdsbmcnLCAnaWNvbiddID0gWydsYXQnLCAnbG5nJywgJ2ljb24nXTtcbmV4cG9ydCBjb25zdCBpY29uT3B0aW9uYWxDb2x1bW5zOiBbJ2FsdGl0dWRlJ10gPSBbJ2FsdGl0dWRlJ107XG5cbmV4cG9ydCBjb25zdCBwb2ludFZpc0NvbmZpZ3M6IHtcbiAgcmFkaXVzOiAncmFkaXVzJztcbiAgZml4ZWRSYWRpdXM6ICdmaXhlZFJhZGl1cyc7XG4gIG9wYWNpdHk6ICdvcGFjaXR5JztcbiAgY29sb3JSYW5nZTogJ2NvbG9yUmFuZ2UnO1xuICByYWRpdXNSYW5nZTogJ3JhZGl1c1JhbmdlJztcbiAgYmlsbGJvYXJkOiAnYmlsbGJvYXJkJztcbn0gPSB7XG4gIHJhZGl1czogJ3JhZGl1cycsXG4gIGZpeGVkUmFkaXVzOiAnZml4ZWRSYWRpdXMnLFxuICBvcGFjaXR5OiAnb3BhY2l0eScsXG4gIGNvbG9yUmFuZ2U6ICdjb2xvclJhbmdlJyxcbiAgcmFkaXVzUmFuZ2U6ICdyYWRpdXNSYW5nZScsXG4gIGJpbGxib2FyZDogJ2JpbGxib2FyZCdcbn07XG5cbmZ1bmN0aW9uIGZsYXR0ZXJJY29uUG9zaXRpb25zKGljb24pIHtcbiAgLy8gaGFkIHRvIGZsaXAgeSwgc2luY2UgQGx1bWEgbW9kYWwgaGFzIGNoYW5nZWRcbiAgcmV0dXJuIGljb24ubWVzaC5jZWxscy5yZWR1Y2UoKHByZXYsIGNlbGwpID0+IHtcbiAgICBjZWxsLmZvckVhY2gocCA9PiB7XG4gICAgICBwcmV2LnB1c2goXG4gICAgICAgIC4uLltpY29uLm1lc2gucG9zaXRpb25zW3BdWzBdLCAtaWNvbi5tZXNoLnBvc2l0aW9uc1twXVsxXSwgaWNvbi5tZXNoLnBvc2l0aW9uc1twXVsyXV1cbiAgICAgICk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHByZXY7XG4gIH0sIFtdKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSWNvbkxheWVyIGV4dGVuZHMgTGF5ZXIge1xuICBnZXRJY29uQWNjZXNzb3I6IChkYXRhQ29udGFpbmVyOiBEYXRhQ29udGFpbmVySW50ZXJmYWNlKSA9PiAoZDogYW55KSA9PiBhbnk7XG4gIF9sYXllckluZm9Nb2RhbDogKCkgPT4gSlNYLkVsZW1lbnQ7XG4gIGljb25HZW9tZXRyeTogSWNvbkdlb21ldHJ5O1xuXG4gIGRlY2xhcmUgdmlzQ29uZmlnU2V0dGluZ3M6IEljb25MYXllclZpc0NvbmZpZ1NldHRpbmdzO1xuICBkZWNsYXJlIGNvbmZpZzogSWNvbkxheWVyQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3BzOiB7XG4gICAgICBpZD86IHN0cmluZztcbiAgICAgIGljb25HZW9tZXRyeT86IEljb25HZW9tZXRyeTtcbiAgICAgIHN2Z0ljb25zPzogYW55W107XG4gICAgfSAmIExheWVyQmFzZUNvbmZpZ1BhcnRpYWxcbiAgKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuXG4gICAgdGhpcy5yZWdpc3RlclZpc0NvbmZpZyhwb2ludFZpc0NvbmZpZ3MpO1xuICAgIHRoaXMuZ2V0UG9zaXRpb25BY2Nlc3NvciA9IChkYXRhQ29udGFpbmVyOiBEYXRhQ29udGFpbmVySW50ZXJmYWNlKSA9PlxuICAgICAgaWNvblBvc0FjY2Vzc29yKHRoaXMuY29uZmlnLmNvbHVtbnMpKGRhdGFDb250YWluZXIpO1xuICAgIHRoaXMuZ2V0SWNvbkFjY2Vzc29yID0gZGF0YUNvbnRhaW5lciA9PiBpY29uQWNjZXNzb3IodGhpcy5jb25maWcuY29sdW1ucykoZGF0YUNvbnRhaW5lcik7XG5cbiAgICB0aGlzLl9sYXllckluZm9Nb2RhbCA9IEljb25JbmZvTW9kYWxGYWN0b3J5KHByb3BzLnN2Z0ljb25zKTtcbiAgICB0aGlzLmljb25HZW9tZXRyeSA9IHByb3BzLmljb25HZW9tZXRyeSB8fCBudWxsO1xuXG4gICAgaWYgKGlzVGVzdCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChwcm9wcy5zdmdJY29ucykge1xuICAgICAgLy8gaWYgc3ZnIGljb25zIGFyZSBwYXNzZWQgaW4gdGhlbiBieXBhc3MgZmV0Y2hpbmcgb2YgcmVtb3RlIHN2ZyBpY29uc1xuICAgICAgdGhpcy5zZXRTdmdJY29ucyhwcm9wcy5zdmdJY29ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHByZXBhcmUgbGF5ZXIgaW5mbyBtb2RhbCBhbmQgZmV0Y2ggcmVtb3RlIHN2ZyBpY29uc1xuICAgICAgdGhpcy5nZXRTdmdJY29ucygpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzdmdJY29uVXJsKCkge1xuICAgIHJldHVybiBTVkdfSUNPTl9VUkw7XG4gIH1cblxuICBnZXQgdHlwZSgpOiAnaWNvbicge1xuICAgIHJldHVybiAnaWNvbic7XG4gIH1cblxuICBnZXQgcmVxdWlyZWRMYXllckNvbHVtbnMoKSB7XG4gICAgcmV0dXJuIGljb25SZXF1aXJlZENvbHVtbnM7XG4gIH1cblxuICBnZXQgb3B0aW9uYWxDb2x1bW5zKCkge1xuICAgIHJldHVybiBpY29uT3B0aW9uYWxDb2x1bW5zO1xuICB9XG5cbiAgZ2V0IGNvbHVtblBhaXJzKCkge1xuICAgIHJldHVybiB0aGlzLmRlZmF1bHRQb2ludENvbHVtblBhaXJzO1xuICB9XG5cbiAgZ2V0IGxheWVySWNvbigpIHtcbiAgICByZXR1cm4gSWNvbkxheWVySWNvbjtcbiAgfVxuXG4gIGdldCB2aXN1YWxDaGFubmVscygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29sb3I6IHtcbiAgICAgICAgLi4uc3VwZXIudmlzdWFsQ2hhbm5lbHMuY29sb3IsXG4gICAgICAgIGFjY2Vzc29yOiAnZ2V0RmlsbENvbG9yJyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBjb25maWcgPT4gY29uZmlnLmNvbG9yXG4gICAgICB9LFxuICAgICAgc2l6ZToge1xuICAgICAgICAuLi5zdXBlci52aXN1YWxDaGFubmVscy5zaXplLFxuICAgICAgICBwcm9wZXJ0eTogJ3JhZGl1cycsXG4gICAgICAgIHJhbmdlOiAncmFkaXVzUmFuZ2UnLFxuICAgICAgICBjaGFubmVsU2NhbGVUeXBlOiAncmFkaXVzJyxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRSYWRpdXMnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IDFcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgZ2V0IGxheWVySW5mb01vZGFsKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpZDogJ2ljb25JbmZvJyxcbiAgICAgIHRlbXBsYXRlOiB0aGlzLl9sYXllckluZm9Nb2RhbCxcbiAgICAgIG1vZGFsUHJvcHM6IHtcbiAgICAgICAgdGl0bGU6ICdtb2RhbC5pY29uSW5mby50aXRsZSdcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgZ2V0U3ZnSWNvbnMoKSB7XG4gICAgY29uc3QgZmV0Y2hDb25maWcgPSB7XG4gICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgbW9kZTogJ2NvcnMnLFxuICAgICAgY2FjaGU6ICduby1jYWNoZSdcbiAgICB9O1xuXG4gICAgaWYgKFdpbmRvdy5mZXRjaCAmJiB0aGlzLnN2Z0ljb25VcmwpIHtcbiAgICAgIFdpbmRvdy5mZXRjaCh0aGlzLnN2Z0ljb25VcmwsIGZldGNoQ29uZmlnKVxuICAgICAgICAudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC50aGVuKChwYXJzZWQ6IHtzdmdJY29ucz86IGFueVtdfSA9IHt9KSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRTdmdJY29ucyhwYXJzZWQuc3ZnSWNvbnMpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXRTdmdJY29ucyhzdmdJY29uczogYW55W10gPSBbXSkge1xuICAgIHRoaXMuaWNvbkdlb21ldHJ5ID0gc3ZnSWNvbnMucmVkdWNlKFxuICAgICAgKGFjY3UsIGN1cnIpID0+ICh7XG4gICAgICAgIC4uLmFjY3UsXG4gICAgICAgIFtjdXJyLmlkXTogZmxhdHRlckljb25Qb3NpdGlvbnMoY3VycilcbiAgICAgIH0pLFxuICAgICAge31cbiAgICApO1xuXG4gICAgdGhpcy5fbGF5ZXJJbmZvTW9kYWwgPSBJY29uSW5mb01vZGFsRmFjdG9yeShzdmdJY29ucyk7XG4gIH1cblxuICBzdGF0aWMgZmluZERlZmF1bHRMYXllclByb3BzKHtmaWVsZFBhaXJzID0gW10sIGZpZWxkcyA9IFtdfTogS2VwbGVyVGFibGUpIHtcbiAgICBjb25zdCBub3RGb3VuZCA9IHtwcm9wczogW119O1xuICAgIGlmICghZmllbGRQYWlycy5sZW5ndGggfHwgIWZpZWxkcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBub3RGb3VuZDtcbiAgICB9XG5cbiAgICBjb25zdCBpY29uRmllbGRzID0gZmllbGRzLmZpbHRlcigoe25hbWV9KSA9PlxuICAgICAgbmFtZVxuICAgICAgICAucmVwbGFjZSgvW18sLl0rL2csICcgJylcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAuc3BsaXQoJyAnKVxuICAgICAgICAuc29tZShzZWcgPT4gSUNPTl9GSUVMRFMuaWNvbi5zb21lKHQgPT4gdC5pbmNsdWRlcyhzZWcpKSlcbiAgICApO1xuXG4gICAgaWYgKCFpY29uRmllbGRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG5vdEZvdW5kO1xuICAgIH1cblxuICAgIC8vIGNyZWF0ZSBpY29uIGxheWVycyBmb3IgZmlyc3QgcG9pbnQgcGFpclxuICAgIGNvbnN0IHB0UGFpciA9IGZpZWxkUGFpcnNbMF07XG4gICAgY29uc3QgY29sdW1ucyA9IGFzc2lnblBvaW50UGFpclRvTGF5ZXJDb2x1bW4ocHRQYWlyLCB0cnVlKTtcblxuICAgIGNvbnN0IHByb3BzID0gaWNvbkZpZWxkcy5tYXAoaWNvbkZpZWxkID0+ICh7XG4gICAgICBsYWJlbDogaWNvbkZpZWxkLm5hbWUucmVwbGFjZSgvW18sLl0rL2csICcgJykudHJpbSgpLFxuICAgICAgY29sdW1uczoge1xuICAgICAgICAuLi5jb2x1bW5zLFxuICAgICAgICBpY29uOiB7XG4gICAgICAgICAgdmFsdWU6IGljb25GaWVsZC5uYW1lLFxuICAgICAgICAgIGZpZWxkSWR4OiBpY29uRmllbGQuZmllbGRJZHhcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGlzVmlzaWJsZTogdHJ1ZVxuICAgIH0pKTtcblxuICAgIHJldHVybiB7cHJvcHN9O1xuICB9XG5cbiAgZ2V0RmlsdGVyZWRJdGVtQ291bnQoKSB7XG4gICAgLy8gdXNlIHRvdGFsXG4gICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuZmlsdGVyZWRJdGVtQ291bnQpLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy5maWx0ZXJlZEl0ZW1Db3VudCkucmVkdWNlKFxuICAgICAgICAodG90YWwsIGN1cnIpID0+IChOdW1iZXIuaXNGaW5pdGUoY3VycikgPyB0b3RhbCArIGN1cnIgOiB0b3RhbCksXG4gICAgICAgIDBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjYWxjdWxhdGVEYXRhQXR0cmlidXRlKHtkYXRhQ29udGFpbmVyLCBmaWx0ZXJlZEluZGV4fTogS2VwbGVyVGFibGUsIGdldFBvc2l0aW9uKSB7XG4gICAgY29uc3QgZ2V0SWNvbiA9IHRoaXMuZ2V0SWNvbkFjY2Vzc29yKGRhdGFDb250YWluZXIpO1xuICAgIGNvbnN0IGRhdGE6IEljb25MYXllckRhdGFbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWx0ZXJlZEluZGV4Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBpbmRleCA9IGZpbHRlcmVkSW5kZXhbaV07XG4gICAgICBjb25zdCByb3dJbmRleCA9IHtpbmRleH07XG4gICAgICBjb25zdCBwb3MgPSBnZXRQb3NpdGlvbihyb3dJbmRleCk7XG4gICAgICBjb25zdCBpY29uID0gZ2V0SWNvbihyb3dJbmRleCk7XG5cbiAgICAgIC8vIGlmIGRvZXNuJ3QgaGF2ZSBwb2ludCBsYXQgb3IgbG5nLCBkbyBub3QgYWRkIHRoZSBwb2ludFxuICAgICAgLy8gZGVjay5nbCBjYW4ndCBoYW5kbGUgcG9zaXRpb24gPSBudWxsXG4gICAgICBpZiAocG9zLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkgJiYgdHlwZW9mIGljb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGRhdGEucHVzaCh7XG4gICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgaWNvblxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIGZvcm1hdExheWVyRGF0YShkYXRhc2V0cywgb2xkTGF5ZXJEYXRhKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmRhdGFJZCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCB7dGV4dExhYmVsfSA9IHRoaXMuY29uZmlnO1xuICAgIGNvbnN0IHtncHVGaWx0ZXIsIGRhdGFDb250YWluZXJ9ID0gZGF0YXNldHNbdGhpcy5jb25maWcuZGF0YUlkXTtcblxuICAgIGNvbnN0IGdldFBvc2l0aW9uID0gdGhpcy5nZXRQb3NpdGlvbkFjY2Vzc29yKGRhdGFDb250YWluZXIpO1xuXG4gICAgY29uc3Qge2RhdGEsIHRyaWdnZXJDaGFuZ2VkfSA9IHRoaXMudXBkYXRlRGF0YShkYXRhc2V0cywgb2xkTGF5ZXJEYXRhKTtcblxuICAgIC8vIGdldCBhbGwgZGlzdGluY3QgY2hhcmFjdGVycyBpbiB0aGUgdGV4dCBsYWJlbHNcbiAgICBjb25zdCB0ZXh0TGFiZWxzID0gZm9ybWF0VGV4dExhYmVsRGF0YSh7XG4gICAgICB0ZXh0TGFiZWwsXG4gICAgICB0cmlnZ2VyQ2hhbmdlZCxcbiAgICAgIG9sZExheWVyRGF0YSxcbiAgICAgIGRhdGEsXG4gICAgICBkYXRhQ29udGFpbmVyXG4gICAgfSk7XG5cbiAgICBjb25zdCBhY2Nlc3NvcnMgPSB0aGlzLmdldEF0dHJpYnV0ZUFjY2Vzc29ycyh7ZGF0YUNvbnRhaW5lcn0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGEsXG4gICAgICBnZXRQb3NpdGlvbixcbiAgICAgIGdldEZpbHRlclZhbHVlOiBncHVGaWx0ZXIuZmlsdGVyVmFsdWVBY2Nlc3NvcihkYXRhQ29udGFpbmVyKSgpLFxuICAgICAgdGV4dExhYmVscyxcbiAgICAgIC4uLmFjY2Vzc29yc1xuICAgIH07XG4gIH1cblxuICB1cGRhdGVMYXllck1ldGEoZGF0YXNldDogS2VwbGVyVGFibGUsIGdldFBvc2l0aW9uKSB7XG4gICAgY29uc3Qge2RhdGFDb250YWluZXJ9ID0gZGF0YXNldDtcbiAgICBjb25zdCBib3VuZHMgPSB0aGlzLmdldFBvaW50c0JvdW5kcyhkYXRhQ29udGFpbmVyLCBnZXRQb3NpdGlvbik7XG4gICAgdGhpcy51cGRhdGVNZXRhKHtib3VuZHN9KTtcbiAgfVxuXG4gIHJlbmRlckxheWVyKG9wdHMpIHtcbiAgICBjb25zdCB7ZGF0YSwgZ3B1RmlsdGVyLCBvYmplY3RIb3ZlcmVkLCBtYXBTdGF0ZSwgaW50ZXJhY3Rpb25Db25maWd9ID0gb3B0cztcblxuICAgIGNvbnN0IHJhZGl1c1NjYWxlID0gdGhpcy5nZXRSYWRpdXNTY2FsZUJ5Wm9vbShtYXBTdGF0ZSk7XG5cbiAgICBjb25zdCBsYXllclByb3BzID0ge1xuICAgICAgcmFkaXVzU2NhbGUsXG4gICAgICBiaWxsYm9hcmQ6IHRoaXMuY29uZmlnLnZpc0NvbmZpZy5iaWxsYm9hcmQsXG4gICAgICAuLi4odGhpcy5jb25maWcudmlzQ29uZmlnLmZpeGVkUmFkaXVzID8ge30gOiB7cmFkaXVzTWF4UGl4ZWxzOiA1MDB9KVxuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVUcmlnZ2VycyA9IHtcbiAgICAgIGdldFBvc2l0aW9uOiB0aGlzLmNvbmZpZy5jb2x1bW5zLFxuICAgICAgZ2V0RmlsdGVyVmFsdWU6IGdwdUZpbHRlci5maWx0ZXJWYWx1ZVVwZGF0ZVRyaWdnZXJzLFxuICAgICAgLi4udGhpcy5nZXRWaXN1YWxDaGFubmVsVXBkYXRlVHJpZ2dlcnMoKVxuICAgIH07XG5cbiAgICBjb25zdCBkZWZhdWx0TGF5ZXJQcm9wcyA9IHRoaXMuZ2V0RGVmYXVsdERlY2tMYXllclByb3BzKG9wdHMpO1xuICAgIGNvbnN0IGJydXNoaW5nUHJvcHMgPSB0aGlzLmdldEJydXNoaW5nRXh0ZW5zaW9uUHJvcHMoaW50ZXJhY3Rpb25Db25maWcpO1xuICAgIGNvbnN0IGdldFBpeGVsT2Zmc2V0ID0gZ2V0VGV4dE9mZnNldEJ5UmFkaXVzKHJhZGl1c1NjYWxlLCBkYXRhLmdldFJhZGl1cywgbWFwU3RhdGUpO1xuICAgIGNvbnN0IGV4dGVuc2lvbnMgPSBbLi4uZGVmYXVsdExheWVyUHJvcHMuZXh0ZW5zaW9ucywgYnJ1c2hpbmdFeHRlbnNpb25dO1xuXG4gICAgLy8gc2hhcmVkIFByb3BzIGJldHdlZW4gbGF5ZXIgYW5kIGxhYmVsIGxheWVyXG4gICAgY29uc3Qgc2hhcmVkUHJvcHMgPSB7XG4gICAgICBnZXRGaWx0ZXJWYWx1ZTogZGF0YS5nZXRGaWx0ZXJWYWx1ZSxcbiAgICAgIGV4dGVuc2lvbnMsXG4gICAgICBmaWx0ZXJSYW5nZTogZGVmYXVsdExheWVyUHJvcHMuZmlsdGVyUmFuZ2UsXG4gICAgICAuLi5icnVzaGluZ1Byb3BzXG4gICAgfTtcblxuICAgIGNvbnN0IGxhYmVsTGF5ZXJzID0gW1xuICAgICAgLi4udGhpcy5yZW5kZXJUZXh0TGFiZWxMYXllcihcbiAgICAgICAge1xuICAgICAgICAgIGdldFBvc2l0aW9uOiBkYXRhLmdldFBvc2l0aW9uLFxuICAgICAgICAgIHNoYXJlZFByb3BzLFxuICAgICAgICAgIGdldFBpeGVsT2Zmc2V0LFxuICAgICAgICAgIHVwZGF0ZVRyaWdnZXJzXG4gICAgICAgIH0sXG4gICAgICAgIG9wdHNcbiAgICAgIClcbiAgICBdO1xuICAgIGNvbnN0IGhvdmVyZWRPYmplY3QgPSB0aGlzLmhhc0hvdmVyZWRPYmplY3Qob2JqZWN0SG92ZXJlZCk7XG5cbiAgICBjb25zdCBwYXJhbWV0ZXJzID0ge1xuICAgICAgLy8gaWNvbnMgd2lsbCBiZSBmbGF0IG9uIHRoZSBtYXAgd2hlbiB0aGUgYWx0aXR1ZGUgY29sdW1uIGlzIG5vdCB1c2VkXG4gICAgICBkZXB0aFRlc3Q6IHRoaXMuY29uZmlnLmNvbHVtbnMuYWx0aXR1ZGU/LmZpZWxkSWR4ID4gLTEsXG4gICAgICBjdWxsRmFjZTogR0wuRlJPTlRcbiAgICB9O1xuXG4gICAgcmV0dXJuICF0aGlzLmljb25HZW9tZXRyeVxuICAgICAgPyBbXVxuICAgICAgOiBbXG4gICAgICAgICAgbmV3IFN2Z0ljb25MYXllcih7XG4gICAgICAgICAgICAuLi5kZWZhdWx0TGF5ZXJQcm9wcyxcbiAgICAgICAgICAgIC4uLmJydXNoaW5nUHJvcHMsXG4gICAgICAgICAgICAuLi5sYXllclByb3BzLFxuICAgICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAgIHBhcmFtZXRlcnMsXG4gICAgICAgICAgICBnZXRJY29uR2VvbWV0cnk6IGlkID0+IHRoaXMuaWNvbkdlb21ldHJ5Py5baWRdLFxuXG4gICAgICAgICAgICAvLyB1cGRhdGUgdHJpZ2dlcnNcbiAgICAgICAgICAgIHVwZGF0ZVRyaWdnZXJzLFxuICAgICAgICAgICAgZXh0ZW5zaW9uc1xuICAgICAgICAgIH0pLFxuXG4gICAgICAgICAgLy8gaG92ZXIgbGF5ZXJcbiAgICAgICAgICAuLi4oaG92ZXJlZE9iamVjdFxuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBTdmdJY29uTGF5ZXJQcm9wcyBuZWVkcyBnZXRJY29uIEZpZWxkXG4gICAgICAgICAgICAgICAgbmV3IFN2Z0ljb25MYXllcih7XG4gICAgICAgICAgICAgICAgICAuLi50aGlzLmdldERlZmF1bHRIb3ZlckxheWVyUHJvcHMoKSxcbiAgICAgICAgICAgICAgICAgIC4uLmxheWVyUHJvcHMsXG4gICAgICAgICAgICAgICAgICB2aXNpYmxlOiBkZWZhdWx0TGF5ZXJQcm9wcy52aXNpYmxlLFxuICAgICAgICAgICAgICAgICAgZGF0YTogW2hvdmVyZWRPYmplY3RdLFxuICAgICAgICAgICAgICAgICAgcGFyYW1ldGVycyxcbiAgICAgICAgICAgICAgICAgIGdldFBvc2l0aW9uOiBkYXRhLmdldFBvc2l0aW9uLFxuICAgICAgICAgICAgICAgICAgZ2V0UmFkaXVzOiBkYXRhLmdldFJhZGl1cyxcbiAgICAgICAgICAgICAgICAgIGdldEZpbGxDb2xvcjogdGhpcy5jb25maWcuaGlnaGxpZ2h0Q29sb3IsXG4gICAgICAgICAgICAgICAgICBnZXRJY29uR2VvbWV0cnk6IGlkID0+IHRoaXMuaWNvbkdlb21ldHJ5Py5baWRdXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgOiBbXSksXG5cbiAgICAgICAgICAvLyB0ZXh0IGxhYmVsIGxheWVyXG4gICAgICAgICAgLi4ubGFiZWxMYXllcnNcbiAgICAgICAgXTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRyxhQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxjQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxjQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTyxVQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxXQUFBLEdBQUFSLE9B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
|
|
390
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2luZG93IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZXh0ZW5zaW9ucyIsIl9jb25zdGFudHMiLCJfZGVja2dsTGF5ZXJzIiwiX2ljb25MYXllckljb24iLCJfY29uc3RhbnRzMiIsIl9pY29uSW5mb01vZGFsIiwiX2Jhc2VMYXllciIsIl9sYXllclV0aWxzIiwiX3V0aWxzIiwiX2xheWVyVGV4dExhYmVsIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwicCIsIl9nZXQyIiwiYnJ1c2hpbmdFeHRlbnNpb24iLCJCcnVzaGluZ0V4dGVuc2lvbiIsIlNWR19JQ09OX1VSTCIsImV4cG9ydHMiLCJjb25jYXQiLCJLRVBMRVJfVU5GT0xERURfQlVDS0VUIiwiaWNvblBvc0FjY2Vzc29yIiwiX3JlZiIsImxhdCIsImxuZyIsImFsdGl0dWRlIiwiZGMiLCJkIiwidmFsdWVBdCIsImluZGV4IiwiZmllbGRJZHgiLCJpY29uQWNjZXNzb3IiLCJfcmVmMiIsImljb24iLCJpY29uUmVxdWlyZWRDb2x1bW5zIiwiaWNvbk9wdGlvbmFsQ29sdW1ucyIsInBvaW50VmlzQ29uZmlncyIsInJhZGl1cyIsImZpeGVkUmFkaXVzIiwib3BhY2l0eSIsImNvbG9yUmFuZ2UiLCJyYWRpdXNSYW5nZSIsImJpbGxib2FyZCIsImZsYXR0ZXJJY29uUG9zaXRpb25zIiwibWVzaCIsImNlbGxzIiwicmVkdWNlIiwicHJldiIsImNlbGwiLCJwb3NpdGlvbnMiLCJJY29uTGF5ZXIiLCJfTGF5ZXIiLCJwcm9wcyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsInJlZ2lzdGVyVmlzQ29uZmlnIiwiZ2V0UG9zaXRpb25BY2Nlc3NvciIsImRhdGFDb250YWluZXIiLCJjb25maWciLCJjb2x1bW5zIiwiZ2V0SWNvbkFjY2Vzc29yIiwiX2xheWVySW5mb01vZGFsIiwiSWNvbkluZm9Nb2RhbEZhY3RvcnkiLCJzdmdJY29ucyIsImljb25HZW9tZXRyeSIsImlzVGVzdCIsInNldFN2Z0ljb25zIiwiZ2V0U3ZnSWNvbnMiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsImdldCIsImRlZmF1bHRQb2ludENvbHVtblBhaXJzIiwiSWNvbkxheWVySWNvbiIsImNvbG9yIiwiYWNjZXNzb3IiLCJkZWZhdWx0VmFsdWUiLCJzaXplIiwicHJvcGVydHkiLCJyYW5nZSIsImNoYW5uZWxTY2FsZVR5cGUiLCJpZCIsInRlbXBsYXRlIiwibW9kYWxQcm9wcyIsInRpdGxlIiwidmFsdWUiLCJnZXRab29tRmFjdG9yIiwiX3JlZjMiLCJ6b29tIiwiX3JlZjMkem9vbU9mZnNldCIsInpvb21PZmZzZXQiLCJNYXRoIiwicG93IiwiX3RoaXMyIiwiZmV0Y2hDb25maWciLCJtZXRob2QiLCJtb2RlIiwiY2FjaGUiLCJXaW5kb3ciLCJmZXRjaCIsInN2Z0ljb25VcmwiLCJ0aGVuIiwicmVzcG9uc2UiLCJqc29uIiwicGFyc2VkIiwidW5kZWZpbmVkIiwiYWNjdSIsImN1cnIiLCJnZXRGaWx0ZXJlZEl0ZW1Db3VudCIsImZpbHRlcmVkSXRlbUNvdW50IiwidmFsdWVzIiwidG90YWwiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsImNhbGN1bGF0ZURhdGFBdHRyaWJ1dGUiLCJfcmVmNCIsImdldFBvc2l0aW9uIiwiZmlsdGVyZWRJbmRleCIsImdldEljb24iLCJkYXRhIiwiaSIsInJvd0luZGV4IiwicG9zIiwiZXZlcnkiLCJmb3JtYXRMYXllckRhdGEiLCJkYXRhc2V0cyIsIm9sZExheWVyRGF0YSIsImRhdGFJZCIsInRleHRMYWJlbCIsIl9kYXRhc2V0cyR0aGlzJGNvbmZpZyIsImdwdUZpbHRlciIsIl90aGlzJHVwZGF0ZURhdGEiLCJ1cGRhdGVEYXRhIiwidHJpZ2dlckNoYW5nZWQiLCJ0ZXh0TGFiZWxzIiwiZm9ybWF0VGV4dExhYmVsRGF0YSIsImFjY2Vzc29ycyIsImdldEF0dHJpYnV0ZUFjY2Vzc29ycyIsImdldEZpbHRlclZhbHVlIiwiZmlsdGVyVmFsdWVBY2Nlc3NvciIsInVwZGF0ZUxheWVyTWV0YSIsImRhdGFzZXQiLCJib3VuZHMiLCJnZXRQb2ludHNCb3VuZHMiLCJ1cGRhdGVNZXRhIiwicmVuZGVyTGF5ZXIiLCJvcHRzIiwiX3RoaXMkY29uZmlnJGNvbHVtbnMkIiwiX3RoaXMzIiwib2JqZWN0SG92ZXJlZCIsIm1hcFN0YXRlIiwiaW50ZXJhY3Rpb25Db25maWciLCJyYWRpdXNTY2FsZSIsImdldFJhZGl1c1NjYWxlQnlab29tIiwibGF5ZXJQcm9wcyIsInZpc0NvbmZpZyIsInJhZGl1c01heFBpeGVscyIsInVwZGF0ZVRyaWdnZXJzIiwiZmlsdGVyVmFsdWVVcGRhdGVUcmlnZ2VycyIsImdldFZpc3VhbENoYW5uZWxVcGRhdGVUcmlnZ2VycyIsImRlZmF1bHRMYXllclByb3BzIiwiZ2V0RGVmYXVsdERlY2tMYXllclByb3BzIiwiYnJ1c2hpbmdQcm9wcyIsImdldEJydXNoaW5nRXh0ZW5zaW9uUHJvcHMiLCJnZXRQaXhlbE9mZnNldCIsImdldFRleHRPZmZzZXRCeVJhZGl1cyIsImdldFJhZGl1cyIsImV4dGVuc2lvbnMiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwic2hhcmVkUHJvcHMiLCJmaWx0ZXJSYW5nZSIsImxhYmVsTGF5ZXJzIiwicmVuZGVyVGV4dExhYmVsTGF5ZXIiLCJob3ZlcmVkT2JqZWN0IiwiaGFzSG92ZXJlZE9iamVjdCIsInBhcmFtZXRlcnMiLCJkZXB0aFRlc3QiLCJjdWxsRmFjZSIsIkdMIiwiRlJPTlQiLCJTdmdJY29uTGF5ZXIiLCJnZXRJY29uR2VvbWV0cnkiLCJfdGhpczMkaWNvbkdlb21ldHJ5IiwiZ2V0RGVmYXVsdEhvdmVyTGF5ZXJQcm9wcyIsInZpc2libGUiLCJnZXRGaWxsQ29sb3IiLCJoaWdobGlnaHRDb2xvciIsIl90aGlzMyRpY29uR2VvbWV0cnkyIiwiZmluZERlZmF1bHRMYXllclByb3BzIiwiX3JlZjUiLCJfcmVmNSRmaWVsZFBhaXJzIiwiZmllbGRQYWlycyIsIl9yZWY1JGZpZWxkcyIsImZpZWxkcyIsIm5vdEZvdW5kIiwiaWNvbkZpZWxkcyIsIl9yZWY2IiwibmFtZSIsInJlcGxhY2UiLCJ0cmltIiwic3BsaXQiLCJzb21lIiwic2VnIiwiSUNPTl9GSUVMRFMiLCJpbmNsdWRlcyIsInB0UGFpciIsImFzc2lnblBvaW50UGFpclRvTGF5ZXJDb2x1bW4iLCJtYXAiLCJpY29uRmllbGQiLCJsYWJlbCIsImlzVmlzaWJsZSIsIkxheWVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ljb24tbGF5ZXIvaWNvbi1sYXllci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgV2luZG93IGZyb20gJ2dsb2JhbC93aW5kb3cnO1xuaW1wb3J0IHtCcnVzaGluZ0V4dGVuc2lvbn0gZnJvbSAnQGRlY2suZ2wvZXh0ZW5zaW9ucyc7XG5pbXBvcnQgR0wgZnJvbSAnQGx1bWEuZ2wvY29uc3RhbnRzJztcblxuaW1wb3J0IHtTdmdJY29uTGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvZGVja2dsLWxheWVycyc7XG5pbXBvcnQgSWNvbkxheWVySWNvbiBmcm9tICcuL2ljb24tbGF5ZXItaWNvbic7XG5pbXBvcnQge0lDT05fRklFTERTLCBLRVBMRVJfVU5GT0xERURfQlVDS0VUfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQgSWNvbkluZm9Nb2RhbEZhY3RvcnkgZnJvbSAnLi9pY29uLWluZm8tbW9kYWwnO1xuaW1wb3J0IExheWVyLCB7TGF5ZXJCYXNlQ29uZmlnLCBMYXllckJhc2VDb25maWdQYXJ0aWFsfSBmcm9tICcuLi9iYXNlLWxheWVyJztcbmltcG9ydCB7YXNzaWduUG9pbnRQYWlyVG9MYXllckNvbHVtbiwgRmluZERlZmF1bHRMYXllclByb3BzUmV0dXJuVmFsdWV9IGZyb20gJy4uL2xheWVyLXV0aWxzJztcbmltcG9ydCB7aXNUZXN0fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7Z2V0VGV4dE9mZnNldEJ5UmFkaXVzLCBmb3JtYXRUZXh0TGFiZWxEYXRhfSBmcm9tICcuLi9sYXllci10ZXh0LWxhYmVsJztcbmltcG9ydCB7ZGVmYXVsdCBhcyBLZXBsZXJUYWJsZX0gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5pbXBvcnQge0RhdGFDb250YWluZXJJbnRlcmZhY2V9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtcbiAgQ29sb3JSYW5nZSxcbiAgVmlzQ29uZmlnQm9vbGVhbixcbiAgVmlzQ29uZmlnQ29sb3JSYW5nZSxcbiAgVmlzQ29uZmlnTnVtYmVyLFxuICBWaXNDb25maWdSYW5nZSxcbiAgTWVyZ2UsXG4gIExheWVyQ29sdW1uXG59IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBJY29uTGF5ZXJDb2x1bW5zQ29uZmlnID0ge1xuICBsYXQ6IExheWVyQ29sdW1uO1xuICBsbmc6IExheWVyQ29sdW1uO1xuICBhbHRpdHVkZTogTGF5ZXJDb2x1bW47XG4gIGljb246IExheWVyQ29sdW1uO1xufTtcblxudHlwZSBJY29uR2VvbWV0cnkgPSBvYmplY3QgfCBudWxsO1xuXG5leHBvcnQgdHlwZSBJY29uTGF5ZXJWaXNDb25maWdTZXR0aW5ncyA9IHtcbiAgcmFkaXVzOiBWaXNDb25maWdOdW1iZXI7XG4gIGZpeGVkUmFkaXVzOiBWaXNDb25maWdCb29sZWFuO1xuICBvcGFjaXR5OiBWaXNDb25maWdOdW1iZXI7XG4gIGNvbG9yUmFuZ2U6IFZpc0NvbmZpZ0NvbG9yUmFuZ2U7XG4gIHJhZGl1c1JhbmdlOiBWaXNDb25maWdSYW5nZTtcbn07XG5cbmV4cG9ydCB0eXBlIEljb25MYXllclZpc0NvbmZpZyA9IHtcbiAgcmFkaXVzOiBudW1iZXI7XG4gIGZpeGVkUmFkaXVzOiBib29sZWFuO1xuICBvcGFjaXR5OiBudW1iZXI7XG4gIGNvbG9yUmFuZ2U6IENvbG9yUmFuZ2U7XG4gIHJhZGl1c1JhbmdlOiBbbnVtYmVyLCBudW1iZXJdO1xuICBiaWxsYm9hcmQ6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBJY29uTGF5ZXJDb25maWcgPSBNZXJnZTxcbiAgTGF5ZXJCYXNlQ29uZmlnLFxuICB7Y29sdW1uczogSWNvbkxheWVyQ29sdW1uc0NvbmZpZzsgdmlzQ29uZmlnOiBJY29uTGF5ZXJWaXNDb25maWd9XG4+O1xuXG5leHBvcnQgdHlwZSBJY29uTGF5ZXJEYXRhID0ge2luZGV4OiBudW1iZXI7IGljb246IHN0cmluZ307XG5cbmNvbnN0IGJydXNoaW5nRXh0ZW5zaW9uID0gbmV3IEJydXNoaW5nRXh0ZW5zaW9uKCk7XG5cbmV4cG9ydCBjb25zdCBTVkdfSUNPTl9VUkwgPSBgJHtLRVBMRVJfVU5GT0xERURfQlVDS0VUfS9pY29ucy9zdmctaWNvbnMuanNvbmA7XG5cbmV4cG9ydCBjb25zdCBpY29uUG9zQWNjZXNzb3IgPVxuICAoe2xhdCwgbG5nLCBhbHRpdHVkZX06IEljb25MYXllckNvbHVtbnNDb25maWcpID0+XG4gIChkYzogRGF0YUNvbnRhaW5lckludGVyZmFjZSkgPT5cbiAgZCA9PiBbXG4gICAgZGMudmFsdWVBdChkLmluZGV4LCBsbmcuZmllbGRJZHgpLFxuICAgIGRjLnZhbHVlQXQoZC5pbmRleCwgbGF0LmZpZWxkSWR4KSxcbiAgICBhbHRpdHVkZT8uZmllbGRJZHggPiAtMSA/IGRjLnZhbHVlQXQoZC5pbmRleCwgYWx0aXR1ZGUuZmllbGRJZHgpIDogMFxuICBdO1xuXG5leHBvcnQgY29uc3QgaWNvbkFjY2Vzc29yID1cbiAgKHtpY29ufTogSWNvbkxheWVyQ29sdW1uc0NvbmZpZykgPT5cbiAgKGRjOiBEYXRhQ29udGFpbmVySW50ZXJmYWNlKSA9PlxuICBkID0+XG4gICAgZGMudmFsdWVBdChkLmluZGV4LCBpY29uLmZpZWxkSWR4KTtcblxuZXhwb3J0IGNvbnN0IGljb25SZXF1aXJlZENvbHVtbnM6IFsnbGF0JywgJ2xuZycsICdpY29uJ10gPSBbJ2xhdCcsICdsbmcnLCAnaWNvbiddO1xuZXhwb3J0IGNvbnN0IGljb25PcHRpb25hbENvbHVtbnM6IFsnYWx0aXR1ZGUnXSA9IFsnYWx0aXR1ZGUnXTtcblxuZXhwb3J0IGNvbnN0IHBvaW50VmlzQ29uZmlnczoge1xuICByYWRpdXM6ICdyYWRpdXMnO1xuICBmaXhlZFJhZGl1czogJ2ZpeGVkUmFkaXVzJztcbiAgb3BhY2l0eTogJ29wYWNpdHknO1xuICBjb2xvclJhbmdlOiAnY29sb3JSYW5nZSc7XG4gIHJhZGl1c1JhbmdlOiAncmFkaXVzUmFuZ2UnO1xuICBiaWxsYm9hcmQ6ICdiaWxsYm9hcmQnO1xufSA9IHtcbiAgcmFkaXVzOiAncmFkaXVzJyxcbiAgZml4ZWRSYWRpdXM6ICdmaXhlZFJhZGl1cycsXG4gIG9wYWNpdHk6ICdvcGFjaXR5JyxcbiAgY29sb3JSYW5nZTogJ2NvbG9yUmFuZ2UnLFxuICByYWRpdXNSYW5nZTogJ3JhZGl1c1JhbmdlJyxcbiAgYmlsbGJvYXJkOiAnYmlsbGJvYXJkJ1xufTtcblxuZnVuY3Rpb24gZmxhdHRlckljb25Qb3NpdGlvbnMoaWNvbikge1xuICAvLyBoYWQgdG8gZmxpcCB5LCBzaW5jZSBAbHVtYSBtb2RhbCBoYXMgY2hhbmdlZFxuICByZXR1cm4gaWNvbi5tZXNoLmNlbGxzLnJlZHVjZSgocHJldiwgY2VsbCkgPT4ge1xuICAgIGNlbGwuZm9yRWFjaChwID0+IHtcbiAgICAgIHByZXYucHVzaChcbiAgICAgICAgLi4uW2ljb24ubWVzaC5wb3NpdGlvbnNbcF1bMF0sIC1pY29uLm1lc2gucG9zaXRpb25zW3BdWzFdLCBpY29uLm1lc2gucG9zaXRpb25zW3BdWzJdXVxuICAgICAgKTtcbiAgICB9KTtcbiAgICByZXR1cm4gcHJldjtcbiAgfSwgW10pO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJY29uTGF5ZXIgZXh0ZW5kcyBMYXllciB7XG4gIGdldEljb25BY2Nlc3NvcjogKGRhdGFDb250YWluZXI6IERhdGFDb250YWluZXJJbnRlcmZhY2UpID0+IChkOiBhbnkpID0+IGFueTtcbiAgX2xheWVySW5mb01vZGFsOiAoKSA9PiBKU1guRWxlbWVudDtcbiAgaWNvbkdlb21ldHJ5OiBJY29uR2VvbWV0cnk7XG5cbiAgZGVjbGFyZSB2aXNDb25maWdTZXR0aW5nczogSWNvbkxheWVyVmlzQ29uZmlnU2V0dGluZ3M7XG4gIGRlY2xhcmUgY29uZmlnOiBJY29uTGF5ZXJDb25maWc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvcHM6IHtcbiAgICAgIGlkPzogc3RyaW5nO1xuICAgICAgaWNvbkdlb21ldHJ5PzogSWNvbkdlb21ldHJ5O1xuICAgICAgc3ZnSWNvbnM/OiBhbnlbXTtcbiAgICB9ICYgTGF5ZXJCYXNlQ29uZmlnUGFydGlhbFxuICApIHtcbiAgICBzdXBlcihwcm9wcyk7XG5cbiAgICB0aGlzLnJlZ2lzdGVyVmlzQ29uZmlnKHBvaW50VmlzQ29uZmlncyk7XG4gICAgdGhpcy5nZXRQb3NpdGlvbkFjY2Vzc29yID0gKGRhdGFDb250YWluZXI6IERhdGFDb250YWluZXJJbnRlcmZhY2UpID0+XG4gICAgICBpY29uUG9zQWNjZXNzb3IodGhpcy5jb25maWcuY29sdW1ucykoZGF0YUNvbnRhaW5lcik7XG4gICAgdGhpcy5nZXRJY29uQWNjZXNzb3IgPSBkYXRhQ29udGFpbmVyID0+IGljb25BY2Nlc3Nvcih0aGlzLmNvbmZpZy5jb2x1bW5zKShkYXRhQ29udGFpbmVyKTtcblxuICAgIHRoaXMuX2xheWVySW5mb01vZGFsID0gSWNvbkluZm9Nb2RhbEZhY3RvcnkocHJvcHMuc3ZnSWNvbnMpO1xuICAgIHRoaXMuaWNvbkdlb21ldHJ5ID0gcHJvcHMuaWNvbkdlb21ldHJ5IHx8IG51bGw7XG5cbiAgICBpZiAoaXNUZXN0KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHByb3BzLnN2Z0ljb25zKSB7XG4gICAgICAvLyBpZiBzdmcgaWNvbnMgYXJlIHBhc3NlZCBpbiB0aGVuIGJ5cGFzcyBmZXRjaGluZyBvZiByZW1vdGUgc3ZnIGljb25zXG4gICAgICB0aGlzLnNldFN2Z0ljb25zKHByb3BzLnN2Z0ljb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcHJlcGFyZSBsYXllciBpbmZvIG1vZGFsIGFuZCBmZXRjaCByZW1vdGUgc3ZnIGljb25zXG4gICAgICB0aGlzLmdldFN2Z0ljb25zKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHN2Z0ljb25VcmwoKSB7XG4gICAgcmV0dXJuIFNWR19JQ09OX1VSTDtcbiAgfVxuXG4gIGdldCB0eXBlKCk6ICdpY29uJyB7XG4gICAgcmV0dXJuICdpY29uJztcbiAgfVxuXG4gIGdldCByZXF1aXJlZExheWVyQ29sdW1ucygpIHtcbiAgICByZXR1cm4gaWNvblJlcXVpcmVkQ29sdW1ucztcbiAgfVxuXG4gIGdldCBvcHRpb25hbENvbHVtbnMoKSB7XG4gICAgcmV0dXJuIGljb25PcHRpb25hbENvbHVtbnM7XG4gIH1cblxuICBnZXQgY29sdW1uUGFpcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFBvaW50Q29sdW1uUGFpcnM7XG4gIH1cblxuICBnZXQgbGF5ZXJJY29uKCkge1xuICAgIHJldHVybiBJY29uTGF5ZXJJY29uO1xuICB9XG5cbiAgZ2V0IHZpc3VhbENoYW5uZWxzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjb2xvcjoge1xuICAgICAgICAuLi5zdXBlci52aXN1YWxDaGFubmVscy5jb2xvcixcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRGaWxsQ29sb3InLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGNvbmZpZyA9PiBjb25maWcuY29sb3JcbiAgICAgIH0sXG4gICAgICBzaXplOiB7XG4gICAgICAgIC4uLnN1cGVyLnZpc3VhbENoYW5uZWxzLnNpemUsXG4gICAgICAgIHByb3BlcnR5OiAncmFkaXVzJyxcbiAgICAgICAgcmFuZ2U6ICdyYWRpdXNSYW5nZScsXG4gICAgICAgIGNoYW5uZWxTY2FsZVR5cGU6ICdyYWRpdXMnLFxuICAgICAgICBhY2Nlc3NvcjogJ2dldFJhZGl1cycsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogMVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBnZXQgbGF5ZXJJbmZvTW9kYWwoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiAnaWNvbkluZm8nLFxuICAgICAgdGVtcGxhdGU6IHRoaXMuX2xheWVySW5mb01vZGFsLFxuICAgICAgbW9kYWxQcm9wczoge1xuICAgICAgICB0aXRsZTogJ21vZGFsLmljb25JbmZvLnRpdGxlJ1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBnZXRab29tRmFjdG9yKHt6b29tLCB6b29tT2Zmc2V0ID0gMH06IHt6b29tOiBudW1iZXIsIHpvb21PZmZzZXQ/OiBudW1iZXJ9KSB7XG4gICAgcmV0dXJuIE1hdGgucG93KDIsIDE0IC0gem9vbSArIHpvb21PZmZzZXQpO1xuICB9XG5cbiAgZ2V0U3ZnSWNvbnMoKSB7XG4gICAgY29uc3QgZmV0Y2hDb25maWcgPSB7XG4gICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgbW9kZTogJ2NvcnMnLFxuICAgICAgY2FjaGU6ICduby1jYWNoZSdcbiAgICB9O1xuXG4gICAgaWYgKFdpbmRvdy5mZXRjaCAmJiB0aGlzLnN2Z0ljb25VcmwpIHtcbiAgICAgIFdpbmRvdy5mZXRjaCh0aGlzLnN2Z0ljb25VcmwsIGZldGNoQ29uZmlnKVxuICAgICAgICAudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC50aGVuKChwYXJzZWQ6IHtzdmdJY29ucz86IGFueVtdfSA9IHt9KSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRTdmdJY29ucyhwYXJzZWQuc3ZnSWNvbnMpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXRTdmdJY29ucyhzdmdJY29uczogYW55W10gPSBbXSkge1xuICAgIHRoaXMuaWNvbkdlb21ldHJ5ID0gc3ZnSWNvbnMucmVkdWNlKFxuICAgICAgKGFjY3UsIGN1cnIpID0+ICh7XG4gICAgICAgIC4uLmFjY3UsXG4gICAgICAgIFtjdXJyLmlkXTogZmxhdHRlckljb25Qb3NpdGlvbnMoY3VycilcbiAgICAgIH0pLFxuICAgICAge31cbiAgICApO1xuXG4gICAgdGhpcy5fbGF5ZXJJbmZvTW9kYWwgPSBJY29uSW5mb01vZGFsRmFjdG9yeShzdmdJY29ucyk7XG4gIH1cblxuICBzdGF0aWMgZmluZERlZmF1bHRMYXllclByb3BzKHtmaWVsZFBhaXJzID0gW10sIGZpZWxkcyA9IFtdfTogS2VwbGVyVGFibGUpOiBGaW5kRGVmYXVsdExheWVyUHJvcHNSZXR1cm5WYWx1ZSB7XG4gICAgY29uc3Qgbm90Rm91bmQ6IEZpbmREZWZhdWx0TGF5ZXJQcm9wc1JldHVyblZhbHVlID0ge3Byb3BzOiBbXX07XG4gICAgaWYgKCFmaWVsZFBhaXJzLmxlbmd0aCB8fCAhZmllbGRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG5vdEZvdW5kO1xuICAgIH1cblxuICAgIGNvbnN0IGljb25GaWVsZHMgPSBmaWVsZHMuZmlsdGVyKCh7bmFtZX0pID0+XG4gICAgICBuYW1lXG4gICAgICAgIC5yZXBsYWNlKC9bXywuXSsvZywgJyAnKVxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC5zcGxpdCgnICcpXG4gICAgICAgIC5zb21lKHNlZyA9PiBJQ09OX0ZJRUxEUy5pY29uLnNvbWUodCA9PiB0LmluY2x1ZGVzKHNlZykpKVxuICAgICk7XG5cbiAgICBpZiAoIWljb25GaWVsZHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gbm90Rm91bmQ7XG4gICAgfVxuXG4gICAgLy8gY3JlYXRlIGljb24gbGF5ZXJzIGZvciBmaXJzdCBwb2ludCBwYWlyXG4gICAgY29uc3QgcHRQYWlyID0gZmllbGRQYWlyc1swXTtcbiAgICBjb25zdCBjb2x1bW5zID0gYXNzaWduUG9pbnRQYWlyVG9MYXllckNvbHVtbihwdFBhaXIsIHRydWUpO1xuXG4gICAgY29uc3QgcHJvcHMgPSBpY29uRmllbGRzLm1hcChpY29uRmllbGQgPT4gKHtcbiAgICAgIGxhYmVsOiBpY29uRmllbGQubmFtZS5yZXBsYWNlKC9bXywuXSsvZywgJyAnKS50cmltKCksXG4gICAgICBjb2x1bW5zOiB7XG4gICAgICAgIC4uLmNvbHVtbnMsXG4gICAgICAgIGljb246IHtcbiAgICAgICAgICB2YWx1ZTogaWNvbkZpZWxkLm5hbWUsXG4gICAgICAgICAgZmllbGRJZHg6IGljb25GaWVsZC5maWVsZElkeFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaXNWaXNpYmxlOiB0cnVlXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIHtwcm9wc307XG4gIH1cblxuICBnZXRGaWx0ZXJlZEl0ZW1Db3VudCgpIHtcbiAgICAvLyB1c2UgdG90YWxcbiAgICBpZiAoT2JqZWN0LmtleXModGhpcy5maWx0ZXJlZEl0ZW1Db3VudCkubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLmZpbHRlcmVkSXRlbUNvdW50KS5yZWR1Y2UoXG4gICAgICAgICh0b3RhbCwgY3VycikgPT4gKE51bWJlci5pc0Zpbml0ZShjdXJyKSA/IHRvdGFsICsgY3VyciA6IHRvdGFsKSxcbiAgICAgICAgMFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNhbGN1bGF0ZURhdGFBdHRyaWJ1dGUoe2RhdGFDb250YWluZXIsIGZpbHRlcmVkSW5kZXh9OiBLZXBsZXJUYWJsZSwgZ2V0UG9zaXRpb24pIHtcbiAgICBjb25zdCBnZXRJY29uID0gdGhpcy5nZXRJY29uQWNjZXNzb3IoZGF0YUNvbnRhaW5lcik7XG4gICAgY29uc3QgZGF0YTogSWNvbkxheWVyRGF0YVtdID0gW107XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpbHRlcmVkSW5kZXgubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gZmlsdGVyZWRJbmRleFtpXTtcbiAgICAgIGNvbnN0IHJvd0luZGV4ID0ge2luZGV4fTtcbiAgICAgIGNvbnN0IHBvcyA9IGdldFBvc2l0aW9uKHJvd0luZGV4KTtcbiAgICAgIGNvbnN0IGljb24gPSBnZXRJY29uKHJvd0luZGV4KTtcblxuICAgICAgLy8gaWYgZG9lc24ndCBoYXZlIHBvaW50IGxhdCBvciBsbmcsIGRvIG5vdCBhZGQgdGhlIHBvaW50XG4gICAgICAvLyBkZWNrLmdsIGNhbid0IGhhbmRsZSBwb3NpdGlvbiA9IG51bGxcbiAgICAgIGlmIChwb3MuZXZlcnkoTnVtYmVyLmlzRmluaXRlKSAmJiB0eXBlb2YgaWNvbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgZGF0YS5wdXNoKHtcbiAgICAgICAgICBpbmRleCxcbiAgICAgICAgICBpY29uXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgZm9ybWF0TGF5ZXJEYXRhKGRhdGFzZXRzLCBvbGRMYXllckRhdGEpIHtcbiAgICBpZiAodGhpcy5jb25maWcuZGF0YUlkID09PSBudWxsKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IHt0ZXh0TGFiZWx9ID0gdGhpcy5jb25maWc7XG4gICAgY29uc3Qge2dwdUZpbHRlciwgZGF0YUNvbnRhaW5lcn0gPSBkYXRhc2V0c1t0aGlzLmNvbmZpZy5kYXRhSWRdO1xuXG4gICAgY29uc3QgZ2V0UG9zaXRpb24gPSB0aGlzLmdldFBvc2l0aW9uQWNjZXNzb3IoZGF0YUNvbnRhaW5lcik7XG5cbiAgICBjb25zdCB7ZGF0YSwgdHJpZ2dlckNoYW5nZWR9ID0gdGhpcy51cGRhdGVEYXRhKGRhdGFzZXRzLCBvbGRMYXllckRhdGEpO1xuXG4gICAgLy8gZ2V0IGFsbCBkaXN0aW5jdCBjaGFyYWN0ZXJzIGluIHRoZSB0ZXh0IGxhYmVsc1xuICAgIGNvbnN0IHRleHRMYWJlbHMgPSBmb3JtYXRUZXh0TGFiZWxEYXRhKHtcbiAgICAgIHRleHRMYWJlbCxcbiAgICAgIHRyaWdnZXJDaGFuZ2VkLFxuICAgICAgb2xkTGF5ZXJEYXRhLFxuICAgICAgZGF0YSxcbiAgICAgIGRhdGFDb250YWluZXJcbiAgICB9KTtcblxuICAgIGNvbnN0IGFjY2Vzc29ycyA9IHRoaXMuZ2V0QXR0cmlidXRlQWNjZXNzb3JzKHtkYXRhQ29udGFpbmVyfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGF0YSxcbiAgICAgIGdldFBvc2l0aW9uLFxuICAgICAgZ2V0RmlsdGVyVmFsdWU6IGdwdUZpbHRlci5maWx0ZXJWYWx1ZUFjY2Vzc29yKGRhdGFDb250YWluZXIpKCksXG4gICAgICB0ZXh0TGFiZWxzLFxuICAgICAgLi4uYWNjZXNzb3JzXG4gICAgfTtcbiAgfVxuXG4gIHVwZGF0ZUxheWVyTWV0YShkYXRhc2V0OiBLZXBsZXJUYWJsZSwgZ2V0UG9zaXRpb24pIHtcbiAgICBjb25zdCB7ZGF0YUNvbnRhaW5lcn0gPSBkYXRhc2V0O1xuICAgIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0UG9pbnRzQm91bmRzKGRhdGFDb250YWluZXIsIGdldFBvc2l0aW9uKTtcbiAgICB0aGlzLnVwZGF0ZU1ldGEoe2JvdW5kc30pO1xuICB9XG5cbiAgcmVuZGVyTGF5ZXIob3B0cykge1xuICAgIGNvbnN0IHtkYXRhLCBncHVGaWx0ZXIsIG9iamVjdEhvdmVyZWQsIG1hcFN0YXRlLCBpbnRlcmFjdGlvbkNvbmZpZ30gPSBvcHRzO1xuXG4gICAgY29uc3QgcmFkaXVzU2NhbGUgPSB0aGlzLmdldFJhZGl1c1NjYWxlQnlab29tKG1hcFN0YXRlKTtcblxuICAgIGNvbnN0IGxheWVyUHJvcHMgPSB7XG4gICAgICByYWRpdXNTY2FsZSxcbiAgICAgIGJpbGxib2FyZDogdGhpcy5jb25maWcudmlzQ29uZmlnLmJpbGxib2FyZCxcbiAgICAgIC4uLih0aGlzLmNvbmZpZy52aXNDb25maWcuZml4ZWRSYWRpdXMgPyB7fSA6IHtyYWRpdXNNYXhQaXhlbHM6IDUwMH0pXG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZVRyaWdnZXJzID0ge1xuICAgICAgZ2V0UG9zaXRpb246IHRoaXMuY29uZmlnLmNvbHVtbnMsXG4gICAgICBnZXRGaWx0ZXJWYWx1ZTogZ3B1RmlsdGVyLmZpbHRlclZhbHVlVXBkYXRlVHJpZ2dlcnMsXG4gICAgICAuLi50aGlzLmdldFZpc3VhbENoYW5uZWxVcGRhdGVUcmlnZ2VycygpXG4gICAgfTtcblxuICAgIGNvbnN0IGRlZmF1bHRMYXllclByb3BzID0gdGhpcy5nZXREZWZhdWx0RGVja0xheWVyUHJvcHMob3B0cyk7XG4gICAgY29uc3QgYnJ1c2hpbmdQcm9wcyA9IHRoaXMuZ2V0QnJ1c2hpbmdFeHRlbnNpb25Qcm9wcyhpbnRlcmFjdGlvbkNvbmZpZyk7XG4gICAgY29uc3QgZ2V0UGl4ZWxPZmZzZXQgPSBnZXRUZXh0T2Zmc2V0QnlSYWRpdXMocmFkaXVzU2NhbGUsIGRhdGEuZ2V0UmFkaXVzLCBtYXBTdGF0ZSk7XG4gICAgY29uc3QgZXh0ZW5zaW9ucyA9IFsuLi5kZWZhdWx0TGF5ZXJQcm9wcy5leHRlbnNpb25zLCBicnVzaGluZ0V4dGVuc2lvbl07XG5cbiAgICAvLyBzaGFyZWQgUHJvcHMgYmV0d2VlbiBsYXllciBhbmQgbGFiZWwgbGF5ZXJcbiAgICBjb25zdCBzaGFyZWRQcm9wcyA9IHtcbiAgICAgIGdldEZpbHRlclZhbHVlOiBkYXRhLmdldEZpbHRlclZhbHVlLFxuICAgICAgZXh0ZW5zaW9ucyxcbiAgICAgIGZpbHRlclJhbmdlOiBkZWZhdWx0TGF5ZXJQcm9wcy5maWx0ZXJSYW5nZSxcbiAgICAgIC4uLmJydXNoaW5nUHJvcHNcbiAgICB9O1xuXG4gICAgY29uc3QgbGFiZWxMYXllcnMgPSBbXG4gICAgICAuLi50aGlzLnJlbmRlclRleHRMYWJlbExheWVyKFxuICAgICAgICB7XG4gICAgICAgICAgZ2V0UG9zaXRpb246IGRhdGEuZ2V0UG9zaXRpb24sXG4gICAgICAgICAgc2hhcmVkUHJvcHMsXG4gICAgICAgICAgZ2V0UGl4ZWxPZmZzZXQsXG4gICAgICAgICAgdXBkYXRlVHJpZ2dlcnNcbiAgICAgICAgfSxcbiAgICAgICAgb3B0c1xuICAgICAgKVxuICAgIF07XG4gICAgY29uc3QgaG92ZXJlZE9iamVjdCA9IHRoaXMuaGFzSG92ZXJlZE9iamVjdChvYmplY3RIb3ZlcmVkKTtcblxuICAgIGNvbnN0IHBhcmFtZXRlcnMgPSB7XG4gICAgICAvLyBpY29ucyB3aWxsIGJlIGZsYXQgb24gdGhlIG1hcCB3aGVuIHRoZSBhbHRpdHVkZSBjb2x1bW4gaXMgbm90IHVzZWRcbiAgICAgIGRlcHRoVGVzdDogdGhpcy5jb25maWcuY29sdW1ucy5hbHRpdHVkZT8uZmllbGRJZHggPiAtMSxcbiAgICAgIGN1bGxGYWNlOiBHTC5GUk9OVFxuICAgIH07XG5cbiAgICByZXR1cm4gIXRoaXMuaWNvbkdlb21ldHJ5XG4gICAgICA/IFtdXG4gICAgICA6IFtcbiAgICAgICAgICBuZXcgU3ZnSWNvbkxheWVyKHtcbiAgICAgICAgICAgIC4uLmRlZmF1bHRMYXllclByb3BzLFxuICAgICAgICAgICAgLi4uYnJ1c2hpbmdQcm9wcyxcbiAgICAgICAgICAgIC4uLmxheWVyUHJvcHMsXG4gICAgICAgICAgICAuLi5kYXRhLFxuICAgICAgICAgICAgcGFyYW1ldGVycyxcbiAgICAgICAgICAgIGdldEljb25HZW9tZXRyeTogaWQgPT4gdGhpcy5pY29uR2VvbWV0cnk/LltpZF0sXG5cbiAgICAgICAgICAgIC8vIHVwZGF0ZSB0cmlnZ2Vyc1xuICAgICAgICAgICAgdXBkYXRlVHJpZ2dlcnMsXG4gICAgICAgICAgICBleHRlbnNpb25zXG4gICAgICAgICAgfSksXG5cbiAgICAgICAgICAvLyBob3ZlciBsYXllclxuICAgICAgICAgIC4uLihob3ZlcmVkT2JqZWN0XG4gICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFN2Z0ljb25MYXllclByb3BzIG5lZWRzIGdldEljb24gRmllbGRcbiAgICAgICAgICAgICAgICBuZXcgU3ZnSWNvbkxheWVyKHtcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMuZ2V0RGVmYXVsdEhvdmVyTGF5ZXJQcm9wcygpLFxuICAgICAgICAgICAgICAgICAgLi4ubGF5ZXJQcm9wcyxcbiAgICAgICAgICAgICAgICAgIHZpc2libGU6IGRlZmF1bHRMYXllclByb3BzLnZpc2libGUsXG4gICAgICAgICAgICAgICAgICBkYXRhOiBbaG92ZXJlZE9iamVjdF0sXG4gICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzLFxuICAgICAgICAgICAgICAgICAgZ2V0UG9zaXRpb246IGRhdGEuZ2V0UG9zaXRpb24sXG4gICAgICAgICAgICAgICAgICBnZXRSYWRpdXM6IGRhdGEuZ2V0UmFkaXVzLFxuICAgICAgICAgICAgICAgICAgZ2V0RmlsbENvbG9yOiB0aGlzLmNvbmZpZy5oaWdobGlnaHRDb2xvcixcbiAgICAgICAgICAgICAgICAgIGdldEljb25HZW9tZXRyeTogaWQgPT4gdGhpcy5pY29uR2VvbWV0cnk/LltpZF1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICA6IFtdKSxcblxuICAgICAgICAgIC8vIHRleHQgbGFiZWwgbGF5ZXJcbiAgICAgICAgICAuLi5sYWJlbExheWVyc1xuICAgICAgICBdO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7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
|
|
@@ -25,7 +25,7 @@ import { default as VectorTileLayer } from './vector-tile/vector-tile-layer';
|
|
|
25
25
|
export { default as VectorTileIcon } from './vector-tile/vector-tile-icon';
|
|
26
26
|
export { default as VectorTileLayer } from './vector-tile/vector-tile-layer';
|
|
27
27
|
export { parseGeoJsonRawFeature } from './geojson-layer/geojson-utils';
|
|
28
|
-
export type { LayerBaseConfig, VisualChannelDomain, VisualChannel, VisualChannelDescription
|
|
28
|
+
export type { LayerBaseConfig, VisualChannelDomain, VisualChannel, VisualChannelDescription } from './base-layer';
|
|
29
29
|
export * from './base-layer';
|
|
30
30
|
export declare const KeplerGlLayers: {
|
|
31
31
|
PointLayer: typeof PointLayer;
|
package/src/layers/dist/index.js
CHANGED
|
@@ -332,4 +332,4 @@ var EditorLayerUtils = exports.EditorLayerUtils = {
|
|
|
332
332
|
getTooltip: _editorLayerUtils.getTooltip,
|
|
333
333
|
getCursor: _editorLayerUtils.getCursor
|
|
334
334
|
};
|
|
335
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYmFzZUxheWVyIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJfZXhwb3J0TmFtZXMiLCJleHBvcnRzIiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX3BvaW50TGF5ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FyY0xheWVyIiwiX2xpbmVMYXllciIsIl9ncmlkTGF5ZXIiLCJfZ3JpZFV0aWxzIiwiX2hleGFnb25MYXllciIsIl9nZW9qc29uTGF5ZXIiLCJfY2x1c3RlckxheWVyIiwiX2ljb25MYXllciIsIl9oZWF0bWFwTGF5ZXIiLCJfaDNIZXhhZ29uTGF5ZXIiLCJfc2NlbmVncmFwaExheWVyIiwiX3RyaXBMYXllciIsIl90cmlwVXRpbHMiLCJfczJHZW9tZXRyeUxheWVyIiwiX3MyVXRpbHMiLCJfYWdncmVnYXRpb25MYXllciIsIl92ZWN0b3JUaWxlTGF5ZXIiLCJfdmVjdG9yVGlsZUljb24iLCJfY29uc3RhbnRzIiwiX2dlb2pzb25VdGlscyIsIl9tYXBib3hVdGlscyIsIl9oM0hleGFnb25MYXllcjIiLCJfdGFibGUiLCJfZWRpdG9yTGF5ZXIiLCJfc2NlbmVncmFwaExheWVySWNvbiIsIl9lZGl0b3JMYXllclV0aWxzIiwiX2xheWVyVXBkYXRlIiwiX2xheWVyVXRpbHMiLCJfTGF5ZXJDbGFzc2VzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwibiIsIl9fcHJvdG9fXyIsImEiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaSIsInNldCIsIktlcGxlckdsTGF5ZXJzIiwiUG9pbnRMYXllciIsIkFyY0xheWVyIiwiTGluZUxheWVyIiwiR3JpZExheWVyIiwiSGV4YWdvbkxheWVyIiwiR2VvanNvbkxheWVyIiwiQ2x1c3RlckxheWVyIiwiSWNvbkxheWVyIiwiSGVhdG1hcExheWVyIiwiSDNMYXllciIsIlNjZW5lZ3JhcGhMYXllciIsIlRyaXBMYXllciIsIlMyR2VvbWV0cnlMYXllciIsIlZlY3RvclRpbGVMYXllciIsIkxheWVyQ2xhc3NlcyIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJMQVlFUl9UWVBFUyIsInBvaW50IiwiYXJjIiwibGluZSIsImdyaWQiLCJoZXhhZ29uIiwiZ2VvanNvbiIsImNsdXN0ZXIiLCJpY29uIiwiaGVhdG1hcCIsImhleGFnb25JZCIsInRyaXAiLCJzMiIsIkVkaXRvckxheWVyVXRpbHMiLCJpc0RyYXdpbmdBY3RpdmUiLCJvbkNsaWNrIiwib25Ib3ZlciIsImdldFRvb2x0aXAiLCJnZXRDdXJzb3IiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBMYXllcixcbiAgT1ZFUkxBWV9UWVBFX0NPTlNULFxuICBMQVlFUl9JRF9MRU5HVEgsXG4gIGNvbG9yTWFrZXIsXG4gIGxheWVyQ29sb3JzXG59IGZyb20gJy4vYmFzZS1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgUG9pbnRMYXllcn0gZnJvbSAnLi9wb2ludC1sYXllci9wb2ludC1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgQXJjTGF5ZXJ9IGZyb20gJy4vYXJjLWxheWVyL2FyYy1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgTGluZUxheWVyfSBmcm9tICcuL2xpbmUtbGF5ZXIvbGluZS1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgR3JpZExheWVyfSBmcm9tICcuL2dyaWQtbGF5ZXIvZ3JpZC1sYXllcic7XG5leHBvcnQge3BvaW50VG9Qb2x5Z29uR2VvfSBmcm9tICcuL2dyaWQtbGF5ZXIvZ3JpZC11dGlscyc7XG5pbXBvcnQge2RlZmF1bHQgYXMgSGV4YWdvbkxheWVyfSBmcm9tICcuL2hleGFnb24tbGF5ZXIvaGV4YWdvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgR2VvanNvbkxheWVyfSBmcm9tICcuL2dlb2pzb24tbGF5ZXIvZ2VvanNvbi1sYXllcic7XG5leHBvcnQge1xuICBkZWZhdWx0RWxldmF0aW9uLFxuICBkZWZhdWx0TGluZVdpZHRoLFxuICBkZWZhdWx0UmFkaXVzLFxuICBDT0xVTU5fTU9ERV9UQUJMRVxufSBmcm9tICcuL2dlb2pzb24tbGF5ZXIvZ2VvanNvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgQ2x1c3RlckxheWVyfSBmcm9tICcuL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSWNvbkxheWVyfSBmcm9tICcuL2ljb24tbGF5ZXIvaWNvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSGVhdG1hcExheWVyfSBmcm9tICcuL2hlYXRtYXAtbGF5ZXIvaGVhdG1hcC1sYXllcic7XG5leHBvcnQge01BWF9aT09NX0xFVkVMfSBmcm9tICcuL2hlYXRtYXAtbGF5ZXIvaGVhdG1hcC1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSDNMYXllcn0gZnJvbSAnLi9oMy1oZXhhZ29uLWxheWVyL2gzLWhleGFnb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0RWxldmF0aW9uIGFzIGgzRGVmYXVsdEVsZXZhdGlvbn0gZnJvbSAnLi9oMy1oZXhhZ29uLWxheWVyL2gzLWhleGFnb24tbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFNjZW5lZ3JhcGhMYXllcn0gZnJvbSAnLi9zY2VuZWdyYXBoLWxheWVyL3NjZW5lZ3JhcGgtbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFRyaXBMYXllcn0gZnJvbSAnLi90cmlwLWxheWVyL3RyaXAtbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0TGluZVdpZHRoIGFzIHRyaXBEZWZhdWx0TGluZVdpZHRofSBmcm9tICcuL3RyaXAtbGF5ZXIvdHJpcC1sYXllcic7XG5leHBvcnQge1xuICBjb29yZEhhc0xlbmd0aDQsXG4gIGlzVHJpcEdlb0pzb25GaWVsZCxcbiAgcGFyc2VUcmlwR2VvSnNvblRpbWVzdGFtcCxcbiAgZ2V0QW5pbWF0aW9uRG9tYWluRnJvbVRpbWVzdGFtcHNcbn0gZnJvbSAnLi90cmlwLWxheWVyL3RyaXAtdXRpbHMnO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFMyR2VvbWV0cnlMYXllcn0gZnJvbSAnLi9zMi1nZW9tZXRyeS1sYXllci9zMi1nZW9tZXRyeS1sYXllcic7XG5leHBvcnQge2RlZmF1bHRFbGV2YXRpb24gYXMgczJEZWZhdWx0RWxldmF0aW9ufSBmcm9tICcuL3MyLWdlb21ldHJ5LWxheWVyL3MyLWdlb21ldHJ5LWxheWVyJztcbmV4cG9ydCB7Z2V0UzJDZW50ZXJ9IGZyb20gJy4vczItZ2VvbWV0cnktbGF5ZXIvczItdXRpbHMnO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEFnZ3JlZ2F0aW9uTGF5ZXJ9IGZyb20gJy4vYWdncmVnYXRpb24tbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFZlY3RvclRpbGVMYXllcn0gZnJvbSAnLi92ZWN0b3ItdGlsZS92ZWN0b3ItdGlsZS1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBWZWN0b3JUaWxlSWNvbn0gZnJvbSAnLi92ZWN0b3ItdGlsZS92ZWN0b3ItdGlsZS1pY29uJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBWZWN0b3JUaWxlTGF5ZXJ9IGZyb20gJy4vdmVjdG9yLXRpbGUvdmVjdG9yLXRpbGUtbGF5ZXInO1xuXG5pbXBvcnQge0xBWUVSX1RZUEVTfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5leHBvcnQge3BhcnNlR2VvSnNvblJhd0ZlYXR1cmV9IGZyb20gJy4vZ2VvanNvbi1sYXllci9nZW9qc29uLXV0aWxzJztcbi8vIGJhc2UgbGF5ZXJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmV0dGllci9wcmV0dGllclxuZXhwb3J0IHR5cGUge1xuICBMYXllckJhc2VDb25maWcsXG4gIFZpc3VhbENoYW5uZWxEb21haW4sXG4gIFZpc3VhbENoYW5uZWwsXG4gIFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbixcbiAgRmluZERlZmF1bHRMYXllclByb3BzUmV0dXJuVmFsdWVcbn0gZnJvbSAnLi9iYXNlLWxheWVyJztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZS1sYXllcic7XG5cbi8vIGluZGl2aWR1YWwgbGF5ZXJzXG5leHBvcnQgY29uc3QgS2VwbGVyR2xMYXllcnMgPSB7XG4gIFBvaW50TGF5ZXIsXG4gIEFyY0xheWVyLFxuICBMaW5lTGF5ZXIsXG4gIEdyaWRMYXllcixcbiAgSGV4YWdvbkxheWVyLFxuICBHZW9qc29uTGF5ZXIsXG4gIENsdXN0ZXJMYXllcixcbiAgSWNvbkxheWVyLFxuICBIZWF0bWFwTGF5ZXIsXG4gIEgzTGF5ZXIsXG4gIFNjZW5lZ3JhcGhMYXllcixcbiAgVHJpcExheWVyLFxuICBTMkdlb21ldHJ5TGF5ZXIsXG4gIFZlY3RvclRpbGVMYXllclxufTtcblxuZXhwb3J0IHR5cGUgTGF5ZXJDbGFzc2VzVHlwZSA9IHR5cGVvZiBMYXllckNsYXNzZXM7XG5leHBvcnQgY29uc3QgTGF5ZXJDbGFzc2VzID0ge1xuICBbTEFZRVJfVFlQRVMucG9pbnRdOiBQb2ludExheWVyLFxuICBbTEFZRVJfVFlQRVMuYXJjXTogQXJjTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5saW5lXTogTGluZUxheWVyLFxuICBbTEFZRVJfVFlQRVMuZ3JpZF06IEdyaWRMYXllcixcbiAgW0xBWUVSX1RZUEVTLmhleGFnb25dOiBIZXhhZ29uTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5nZW9qc29uXTogR2VvanNvbkxheWVyLFxuICBbTEFZRVJfVFlQRVMuY2x1c3Rlcl06IENsdXN0ZXJMYXllcixcbiAgW0xBWUVSX1RZUEVTLmljb25dOiBJY29uTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5oZWF0bWFwXTogSGVhdG1hcExheWVyLFxuICBbTEFZRVJfVFlQRVMuaGV4YWdvbklkXTogSDNMYXllcixcbiAgW0xBWUVSX1RZUEVTWyczRCddXTogU2NlbmVncmFwaExheWVyLFxuICBbTEFZRVJfVFlQRVMudHJpcF06IFRyaXBMYXllcixcbiAgW0xBWUVSX1RZUEVTLnMyXTogUzJHZW9tZXRyeUxheWVyLFxuICBbTEFZRVJfVFlQRVNbJ3ZlY3RvclRpbGUnXV06IFZlY3RvclRpbGVMYXllclxufTtcblxuZXhwb3J0ICogZnJvbSAnLi9tYXBib3gtdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9oMy1oZXhhZ29uLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBUYWJsZX0gZnJvbSAnLi90YWJsZSc7XG5cbmV4cG9ydCB7Z2V0RWRpdG9yTGF5ZXJ9IGZyb20gJy4vZWRpdG9yLWxheWVyL2VkaXRvci1sYXllcic7XG5cbmV4cG9ydCB7XG4gIGRlZmF1bHQgYXMgU2NlbmVncmFwaExheWVyLFxuICBzY2VuZWdyYXBoVmlzQ29uZmlnc1xufSBmcm9tICcuL3NjZW5lZ3JhcGgtbGF5ZXIvc2NlbmVncmFwaC1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgU2NlbmVncmFwaExheWVySWNvbn0gZnJvbSAnLi9zY2VuZWdyYXBoLWxheWVyL3NjZW5lZ3JhcGgtbGF5ZXItaWNvbic7XG5cbmltcG9ydCB7XG4gIGlzRHJhd2luZ0FjdGl2ZSxcbiAgb25DbGljayxcbiAgb25Ib3ZlcixcbiAgZ2V0VG9vbHRpcCxcbiAgZ2V0Q3Vyc29yXG59IGZyb20gJy4vZWRpdG9yLWxheWVyL2VkaXRvci1sYXllci11dGlscyc7XG5leHBvcnQgY29uc3QgRWRpdG9yTGF5ZXJVdGlscyA9IHtcbiAgaXNEcmF3aW5nQWN0aXZlLFxuICBvbkNsaWNrLFxuICBvbkhvdmVyLFxuICBnZXRUb29sdGlwLFxuICBnZXRDdXJzb3Jcbn07XG5cbmV4cG9ydCB7Z2V0RmlsdGVyRGF0YUZ1bmN9IGZyb20gJy4vYWdncmVnYXRpb24tbGF5ZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2xheWVyLXVwZGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xheWVyLXV0aWxzJztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxVQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUF1REFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixVQUFBLEVBQUFLLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFDLFlBQUEsRUFBQUosR0FBQTtFQUFBLElBQUFBLEdBQUEsSUFBQUssT0FBQSxJQUFBQSxPQUFBLENBQUFMLEdBQUEsTUFBQU4sVUFBQSxDQUFBTSxHQUFBO0VBQUFILE1BQUEsQ0FBQVMsY0FBQSxDQUFBRCxPQUFBLEVBQUFMLEdBQUE7SUFBQU8sVUFBQTtJQUFBQyxHQUFBLFdBQUFBLElBQUE7TUFBQSxPQUFBZCxVQUFBLENBQUFNLEdBQUE7SUFBQTtFQUFBO0FBQUE7QUFoREEsSUFBQVMsV0FBQSxHQUFBQyxzQkFBQSxDQUFBZCxPQUFBO0FBQ0EsSUFBQWUsU0FBQSxHQUFBRCxzQkFBQSxDQUFBZCxPQUFBO0FBQ0EsSUFBQWdCLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQWQsT0FBQTtBQUNBLElBQUFpQixVQUFBLEdBQUFILHNCQUFBLENBQUFkLE9BQUE7QUFDQSxJQUFBa0IsVUFB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
|
|
335
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYmFzZUxheWVyIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJfZXhwb3J0TmFtZXMiLCJleHBvcnRzIiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX3BvaW50TGF5ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2FyY0xheWVyIiwiX2xpbmVMYXllciIsIl9ncmlkTGF5ZXIiLCJfZ3JpZFV0aWxzIiwiX2hleGFnb25MYXllciIsIl9nZW9qc29uTGF5ZXIiLCJfY2x1c3RlckxheWVyIiwiX2ljb25MYXllciIsIl9oZWF0bWFwTGF5ZXIiLCJfaDNIZXhhZ29uTGF5ZXIiLCJfc2NlbmVncmFwaExheWVyIiwiX3RyaXBMYXllciIsIl90cmlwVXRpbHMiLCJfczJHZW9tZXRyeUxheWVyIiwiX3MyVXRpbHMiLCJfYWdncmVnYXRpb25MYXllciIsIl92ZWN0b3JUaWxlTGF5ZXIiLCJfdmVjdG9yVGlsZUljb24iLCJfY29uc3RhbnRzIiwiX2dlb2pzb25VdGlscyIsIl9tYXBib3hVdGlscyIsIl9oM0hleGFnb25MYXllcjIiLCJfdGFibGUiLCJfZWRpdG9yTGF5ZXIiLCJfc2NlbmVncmFwaExheWVySWNvbiIsIl9lZGl0b3JMYXllclV0aWxzIiwiX2xheWVyVXBkYXRlIiwiX2xheWVyVXRpbHMiLCJfTGF5ZXJDbGFzc2VzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwibiIsIl9fcHJvdG9fXyIsImEiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaSIsInNldCIsIktlcGxlckdsTGF5ZXJzIiwiUG9pbnRMYXllciIsIkFyY0xheWVyIiwiTGluZUxheWVyIiwiR3JpZExheWVyIiwiSGV4YWdvbkxheWVyIiwiR2VvanNvbkxheWVyIiwiQ2x1c3RlckxheWVyIiwiSWNvbkxheWVyIiwiSGVhdG1hcExheWVyIiwiSDNMYXllciIsIlNjZW5lZ3JhcGhMYXllciIsIlRyaXBMYXllciIsIlMyR2VvbWV0cnlMYXllciIsIlZlY3RvclRpbGVMYXllciIsIkxheWVyQ2xhc3NlcyIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJMQVlFUl9UWVBFUyIsInBvaW50IiwiYXJjIiwibGluZSIsImdyaWQiLCJoZXhhZ29uIiwiZ2VvanNvbiIsImNsdXN0ZXIiLCJpY29uIiwiaGVhdG1hcCIsImhleGFnb25JZCIsInRyaXAiLCJzMiIsIkVkaXRvckxheWVyVXRpbHMiLCJpc0RyYXdpbmdBY3RpdmUiLCJvbkNsaWNrIiwib25Ib3ZlciIsImdldFRvb2x0aXAiLCJnZXRDdXJzb3IiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBMYXllcixcbiAgT1ZFUkxBWV9UWVBFX0NPTlNULFxuICBMQVlFUl9JRF9MRU5HVEgsXG4gIGNvbG9yTWFrZXIsXG4gIGxheWVyQ29sb3JzXG59IGZyb20gJy4vYmFzZS1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgUG9pbnRMYXllcn0gZnJvbSAnLi9wb2ludC1sYXllci9wb2ludC1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgQXJjTGF5ZXJ9IGZyb20gJy4vYXJjLWxheWVyL2FyYy1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgTGluZUxheWVyfSBmcm9tICcuL2xpbmUtbGF5ZXIvbGluZS1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgR3JpZExheWVyfSBmcm9tICcuL2dyaWQtbGF5ZXIvZ3JpZC1sYXllcic7XG5leHBvcnQge3BvaW50VG9Qb2x5Z29uR2VvfSBmcm9tICcuL2dyaWQtbGF5ZXIvZ3JpZC11dGlscyc7XG5pbXBvcnQge2RlZmF1bHQgYXMgSGV4YWdvbkxheWVyfSBmcm9tICcuL2hleGFnb24tbGF5ZXIvaGV4YWdvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgR2VvanNvbkxheWVyfSBmcm9tICcuL2dlb2pzb24tbGF5ZXIvZ2VvanNvbi1sYXllcic7XG5leHBvcnQge1xuICBkZWZhdWx0RWxldmF0aW9uLFxuICBkZWZhdWx0TGluZVdpZHRoLFxuICBkZWZhdWx0UmFkaXVzLFxuICBDT0xVTU5fTU9ERV9UQUJMRVxufSBmcm9tICcuL2dlb2pzb24tbGF5ZXIvZ2VvanNvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgQ2x1c3RlckxheWVyfSBmcm9tICcuL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSWNvbkxheWVyfSBmcm9tICcuL2ljb24tbGF5ZXIvaWNvbi1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSGVhdG1hcExheWVyfSBmcm9tICcuL2hlYXRtYXAtbGF5ZXIvaGVhdG1hcC1sYXllcic7XG5leHBvcnQge01BWF9aT09NX0xFVkVMfSBmcm9tICcuL2hlYXRtYXAtbGF5ZXIvaGVhdG1hcC1sYXllcic7XG5pbXBvcnQge2RlZmF1bHQgYXMgSDNMYXllcn0gZnJvbSAnLi9oMy1oZXhhZ29uLWxheWVyL2gzLWhleGFnb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0RWxldmF0aW9uIGFzIGgzRGVmYXVsdEVsZXZhdGlvbn0gZnJvbSAnLi9oMy1oZXhhZ29uLWxheWVyL2gzLWhleGFnb24tbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFNjZW5lZ3JhcGhMYXllcn0gZnJvbSAnLi9zY2VuZWdyYXBoLWxheWVyL3NjZW5lZ3JhcGgtbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFRyaXBMYXllcn0gZnJvbSAnLi90cmlwLWxheWVyL3RyaXAtbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0TGluZVdpZHRoIGFzIHRyaXBEZWZhdWx0TGluZVdpZHRofSBmcm9tICcuL3RyaXAtbGF5ZXIvdHJpcC1sYXllcic7XG5leHBvcnQge1xuICBjb29yZEhhc0xlbmd0aDQsXG4gIGlzVHJpcEdlb0pzb25GaWVsZCxcbiAgcGFyc2VUcmlwR2VvSnNvblRpbWVzdGFtcCxcbiAgZ2V0QW5pbWF0aW9uRG9tYWluRnJvbVRpbWVzdGFtcHNcbn0gZnJvbSAnLi90cmlwLWxheWVyL3RyaXAtdXRpbHMnO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFMyR2VvbWV0cnlMYXllcn0gZnJvbSAnLi9zMi1nZW9tZXRyeS1sYXllci9zMi1nZW9tZXRyeS1sYXllcic7XG5leHBvcnQge2RlZmF1bHRFbGV2YXRpb24gYXMgczJEZWZhdWx0RWxldmF0aW9ufSBmcm9tICcuL3MyLWdlb21ldHJ5LWxheWVyL3MyLWdlb21ldHJ5LWxheWVyJztcbmV4cG9ydCB7Z2V0UzJDZW50ZXJ9IGZyb20gJy4vczItZ2VvbWV0cnktbGF5ZXIvczItdXRpbHMnO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEFnZ3JlZ2F0aW9uTGF5ZXJ9IGZyb20gJy4vYWdncmVnYXRpb24tbGF5ZXInO1xuaW1wb3J0IHtkZWZhdWx0IGFzIFZlY3RvclRpbGVMYXllcn0gZnJvbSAnLi92ZWN0b3ItdGlsZS92ZWN0b3ItdGlsZS1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBWZWN0b3JUaWxlSWNvbn0gZnJvbSAnLi92ZWN0b3ItdGlsZS92ZWN0b3ItdGlsZS1pY29uJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBWZWN0b3JUaWxlTGF5ZXJ9IGZyb20gJy4vdmVjdG9yLXRpbGUvdmVjdG9yLXRpbGUtbGF5ZXInO1xuXG5pbXBvcnQge0xBWUVSX1RZUEVTfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5leHBvcnQge3BhcnNlR2VvSnNvblJhd0ZlYXR1cmV9IGZyb20gJy4vZ2VvanNvbi1sYXllci9nZW9qc29uLXV0aWxzJztcbi8vIGJhc2UgbGF5ZXJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmV0dGllci9wcmV0dGllclxuZXhwb3J0IHR5cGUge1xuICBMYXllckJhc2VDb25maWcsXG4gIFZpc3VhbENoYW5uZWxEb21haW4sXG4gIFZpc3VhbENoYW5uZWwsXG4gIFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvblxufSBmcm9tICcuL2Jhc2UtbGF5ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWxheWVyJztcblxuLy8gaW5kaXZpZHVhbCBsYXllcnNcbmV4cG9ydCBjb25zdCBLZXBsZXJHbExheWVycyA9IHtcbiAgUG9pbnRMYXllcixcbiAgQXJjTGF5ZXIsXG4gIExpbmVMYXllcixcbiAgR3JpZExheWVyLFxuICBIZXhhZ29uTGF5ZXIsXG4gIEdlb2pzb25MYXllcixcbiAgQ2x1c3RlckxheWVyLFxuICBJY29uTGF5ZXIsXG4gIEhlYXRtYXBMYXllcixcbiAgSDNMYXllcixcbiAgU2NlbmVncmFwaExheWVyLFxuICBUcmlwTGF5ZXIsXG4gIFMyR2VvbWV0cnlMYXllcixcbiAgVmVjdG9yVGlsZUxheWVyXG59O1xuXG5leHBvcnQgdHlwZSBMYXllckNsYXNzZXNUeXBlID0gdHlwZW9mIExheWVyQ2xhc3NlcztcbmV4cG9ydCBjb25zdCBMYXllckNsYXNzZXMgPSB7XG4gIFtMQVlFUl9UWVBFUy5wb2ludF06IFBvaW50TGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5hcmNdOiBBcmNMYXllcixcbiAgW0xBWUVSX1RZUEVTLmxpbmVdOiBMaW5lTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5ncmlkXTogR3JpZExheWVyLFxuICBbTEFZRVJfVFlQRVMuaGV4YWdvbl06IEhleGFnb25MYXllcixcbiAgW0xBWUVSX1RZUEVTLmdlb2pzb25dOiBHZW9qc29uTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5jbHVzdGVyXTogQ2x1c3RlckxheWVyLFxuICBbTEFZRVJfVFlQRVMuaWNvbl06IEljb25MYXllcixcbiAgW0xBWUVSX1RZUEVTLmhlYXRtYXBdOiBIZWF0bWFwTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy5oZXhhZ29uSWRdOiBIM0xheWVyLFxuICBbTEFZRVJfVFlQRVNbJzNEJ11dOiBTY2VuZWdyYXBoTGF5ZXIsXG4gIFtMQVlFUl9UWVBFUy50cmlwXTogVHJpcExheWVyLFxuICBbTEFZRVJfVFlQRVMuczJdOiBTMkdlb21ldHJ5TGF5ZXIsXG4gIFtMQVlFUl9UWVBFU1sndmVjdG9yVGlsZSddXTogVmVjdG9yVGlsZUxheWVyXG59O1xuXG5leHBvcnQgKiBmcm9tICcuL21hcGJveC11dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2gzLWhleGFnb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIFRhYmxlfSBmcm9tICcuL3RhYmxlJztcblxuZXhwb3J0IHtnZXRFZGl0b3JMYXllcn0gZnJvbSAnLi9lZGl0b3ItbGF5ZXIvZWRpdG9yLWxheWVyJztcblxuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBTY2VuZWdyYXBoTGF5ZXIsXG4gIHNjZW5lZ3JhcGhWaXNDb25maWdzXG59IGZyb20gJy4vc2NlbmVncmFwaC1sYXllci9zY2VuZWdyYXBoLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBTY2VuZWdyYXBoTGF5ZXJJY29ufSBmcm9tICcuL3NjZW5lZ3JhcGgtbGF5ZXIvc2NlbmVncmFwaC1sYXllci1pY29uJztcblxuaW1wb3J0IHtcbiAgaXNEcmF3aW5nQWN0aXZlLFxuICBvbkNsaWNrLFxuICBvbkhvdmVyLFxuICBnZXRUb29sdGlwLFxuICBnZXRDdXJzb3Jcbn0gZnJvbSAnLi9lZGl0b3ItbGF5ZXIvZWRpdG9yLWxheWVyLXV0aWxzJztcbmV4cG9ydCBjb25zdCBFZGl0b3JMYXllclV0aWxzID0ge1xuICBpc0RyYXdpbmdBY3RpdmUsXG4gIG9uQ2xpY2ssXG4gIG9uSG92ZXIsXG4gIGdldFRvb2x0aXAsXG4gIGdldEN1cnNvclxufTtcblxuZXhwb3J0IHtnZXRGaWx0ZXJEYXRhRnVuY30gZnJvbSAnLi9hZ2dyZWdhdGlvbi1sYXllcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItdXBkYXRlJztcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItdXRpbHMnO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLFVBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQXNEQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLFVBQUEsRUFBQUssT0FBQSxXQUFBQyxHQUFBO0VBQUEsSUFBQUEsR0FBQSxrQkFBQUEsR0FBQTtFQUFBLElBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQUMsWUFBQSxFQUFBSixHQUFBO0VBQUEsSUFBQUEsR0FBQSxJQUFBSyxPQUFBLElBQUFBLE9BQUEsQ0FBQUwsR0FBQSxNQUFBTixVQUFBLENBQUFNLEdBQUE7RUFBQUgsTUFBQSxDQUFBUyxjQUFBLENBQUFELE9BQUEsRUFBQUwsR0FBQTtJQUFBTyxVQUFBO0lBQUFDLEdBQUEsV0FBQUEsSUFBQTtNQUFBLE9BQUFkLFVBQUEsQ0FBQU0sR0FBQTtJQUFBO0VBQUE7QUFBQTtBQS9DQSxJQUFBUyxXQUFBLEdBQUFDLHNCQUFBLENBQUFkLE9BQUE7QUFDQSxJQUFBZSxTQUFBLEdBQUFELHNCQUFBLENBQUFkLE9BQUE7QUFDQSxJQUFBZ0IsVUFBQSxHQUFBRixzQkFBQSxDQUFBZCxPQUFBO0FBQ0EsSUFBQWlCLFVBQUEsR0FBQUgsc0JBQUEsQ0FBQWQsT0FBQTtBQUNBLElBQUFrQixVQUFBLEdBQUFsQixPQUFBO0FBQ0EsSUFBQW1CLGFBQUEsR0FBQUws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
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as arrow from 'apache-arrow';
|
|
1
2
|
import { DataContainerInterface } from '@kepler.gl/utils';
|
|
2
3
|
export declare const defaultPadding = 20;
|
|
3
4
|
export declare function getTextOffsetByRadius(radiusScale: any, getRadius: any, mapState: any): (textLabel: any) => number[] | ((d: any) => number[]);
|
|
@@ -12,3 +13,11 @@ export declare const formatTextLabelData: ({ textLabel, triggerChanged, oldLayer
|
|
|
12
13
|
dataContainer: DataContainerInterface;
|
|
13
14
|
filteredIndex?: Uint8ClampedArray | null | undefined;
|
|
14
15
|
}) => any;
|
|
16
|
+
/**
|
|
17
|
+
* Get an arrow vector suitable to render text labels with arrow layers.
|
|
18
|
+
* @param getText A candidate arrow vector to use for text labels.
|
|
19
|
+
* @param getTextAccessor Text label accessor.
|
|
20
|
+
*/
|
|
21
|
+
export declare const getArrowTextVector: (candidateTextVector: arrow.Vector, getTextAccessor: ({ index }: {
|
|
22
|
+
index: number;
|
|
23
|
+
}) => string) => arrow.Vector;
|