nsc-react-component 1.2.0 → 1.2.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/lib/chart/index.d.ts +2 -0
- package/lib/chart/index.js +7 -4
- package/package.json +1 -1
package/lib/chart/index.d.ts
CHANGED
package/lib/chart/index.js
CHANGED
|
@@ -278,10 +278,13 @@ var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
|
278
278
|
}, {
|
|
279
279
|
key: "init",
|
|
280
280
|
value: function init() {
|
|
281
|
+
var _myChart$getZr;
|
|
282
|
+
|
|
281
283
|
var _this$props2 = this.props,
|
|
282
284
|
option = _this$props2.option,
|
|
283
285
|
data = _this$props2.data,
|
|
284
|
-
OnClick = _this$props2.OnClick
|
|
286
|
+
OnClick = _this$props2.OnClick,
|
|
287
|
+
OnZrClick = _this$props2.OnZrClick;
|
|
285
288
|
var dataSource = this.state.dataSource;
|
|
286
289
|
var dataMap = {};
|
|
287
290
|
var newDatas = data || dataSource;
|
|
@@ -313,8 +316,8 @@ var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
|
313
316
|
myChart.on("click", function (params) {
|
|
314
317
|
OnClick && OnClick(params, myChart);
|
|
315
318
|
});
|
|
316
|
-
myChart.getZr().on("click", function (params) {
|
|
317
|
-
|
|
319
|
+
myChart === null || myChart === void 0 ? void 0 : (_myChart$getZr = myChart.getZr()) === null || _myChart$getZr === void 0 ? void 0 : _myChart$getZr.on("click", function (params) {
|
|
320
|
+
OnZrClick && OnZrClick(params, myChart);
|
|
318
321
|
});
|
|
319
322
|
window.addEventListener("resize", this.handleChartResize.bind(this));
|
|
320
323
|
}
|
|
@@ -346,4 +349,4 @@ var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
|
346
349
|
}(PureComponent);
|
|
347
350
|
|
|
348
351
|
export default NscChart;
|
|
349
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NoYXJ0L2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJlY2hhcnRzIiwiU3RvcmUiLCJ1dGlscyIsInB4MnZ3IiwiaXNBcnJheSIsImlzT2JqZWN0IiwiTnNjQ2hhcnQiLCJwcm9wcyIsImNyZWF0ZVJlZiIsImRhdGFTb3VyY2UiLCJkYXRhIiwic3RvcmUiLCJjaGlsZHJlbiIsIm9wdGlvbnMiLCJvcHRpb24iLCJhdXRvTG9hZCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJzdG9yZXMiLCJFcnJvciIsIl90aGlzIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwic2V0U3RhdGUiLCJpc0ZpcnN0IiwiaW5pdCIsImRhdGFDaGFuZ2VkIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic25hcHNob3QiLCJKU09OIiwic3RyaW5naWZ5IiwidiIsIndpbmRvdyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJoYW5kbGVDaGFydFJlc2l6ZSIsImJpbmQiLCJ0ZXN0Iiwic3Vic3RyaW5nIiwibGVuZ3RoIiwiZGF0YXMiLCJkYXRhTWFwIiwicmVzdWx0IiwiaXNTdHJpbmciLCJpc1JlcGxhY2UiLCJyZXBsYWNlIiwibWFwIiwiaXRlbSIsInZhbHVlIiwiZGF0YUNvbnZlcnNpb24iLCJ0ZW1wT2JqIiwia2V5IiwicHVzaCIsIm9iaiIsIk9uQ2xpY2siLCJzdGF0ZSIsIm5ld0RhdGFzIiwibmV3T3B0aW9uIiwieEF4aXMiLCJvYmplY3RDb252ZXJzaW9uIiwieUF4aXMiLCJzZXJpZXMiLCJteUNoYXJ0IiwiY2hhcnRSZWYiLCJjdXJyZW50IiwiY2xlYXIiLCJvZmYiLCJzZXRPcHRpb24iLCJvbiIsInBhcmFtcyIsImdldFpyIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlc2l6ZSIsIndpZHRo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MkI1RSxLQUFLLENBQUM0RSxLQUFELENBQWhDLEdBQTBDQSxLQURsQztBQUVmQyxRQUFBQSxNQUFNLEVBQUUsT0FBT0EsTUFBUCxJQUFpQixRQUFqQixHQUE0QjdFLEtBQUssQ0FBQzZFLE1BQUQsQ0FBakMsR0FBNENBO0FBRnJDLE9BQWpCO0FBSUEsMEJBQU87QUFBSyxRQUFBLEtBQUssRUFBRUMsUUFBWjtBQUFzQixRQUFBLEdBQUcsRUFBRSxLQUFLWjtBQUFoQyxRQUFQO0FBQ0Q7Ozs7RUF6Tm9CdEUsYTs7QUE0TnZCLGVBQWVPLFFBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgKiBhcyBlY2hhcnRzIGZyb20gXCJlY2hhcnRzXCI7XHJcbmltcG9ydCB7IEVDaGFydHMgfSBmcm9tIFwiZWNoYXJ0cy9saWIvZWNoYXJ0c1wiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IHsgcHgydncgfSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuaW1wb3J0IHsgaXNBcnJheSwgaXNPYmplY3QgfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW50ZXJmYWNlIENoYXJ0UHJvcHMge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBvcHRpb246IGFueTtcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PiB8IE9iamVjdDtcclxuICB3aWR0aDogbnVtYmVyIHwgc3RyaW5nOyAvL+WbvuihqOWuveW6plxyXG4gIGhlaWdodDogbnVtYmVyIHwgc3RyaW5nOyAvL+WbvuihqOmVv+W6plxyXG4gIGF1dG9Mb2FkPzogYm9vbGVhbjsgLy/mlbDmja7mlLnlj5jvvIzoh6rliqjliLfmlrDlm77ooags6buY6K6kdHJ1ZVxyXG4gIE9uQ2xpY2s/OiAocGFyYW1zOiBhbnksIGU/OiBhbnkpID0+IHZvaWQ7IC8v5Zu+6KGo54K55Ye75LqL5Lu2XHJcbn1cclxuXHJcbi8vZGF0YeekuuS+i1xyXG4vKipcclxuIOaVsOe7hO+8mlxyXG4gZGF0YT1be25hbWU6JzHmnIgnLHZhbHVlOjIwfSx7bmFtZTonMuaciCcsdmFsdWU6MTB9LHtuYW1lOicz5pyIJyx2YWx1ZToyNX1dXHJcbiDlr7nosaFcclxuIGRhdGE9e25hbWU6Wycx5pyIJywnMuaciCcsJzPmnIgnXSx2YWx1ZTpbMjAsMzAsNDBdfVxyXG4gKi9cclxuY2xhc3MgTnNjQ2hhcnQgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PENoYXJ0UHJvcHM+IHtcclxuICBjaGFydFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcclxuICBteUNoYXJ0OiBFQ2hhcnRzIHwgbnVsbCA9IG51bGw7XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogbnVsbCxcclxuICB9O1xyXG4gIGlzRmlyc3QgPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGRhdGEsXHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBvcHRpb246IG9wdGlvbnMsXHJcbiAgICAgIGF1dG9Mb2FkID0gdHJ1ZSxcclxuICAgIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHsgdXJsLCBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSwgLi4uc3RvcmVzIH0gPSBzdG9yZTtcclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIFkYXRh44CBb3B0aW9u5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9LCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKF90aGlzLmlzRmlyc3QgJiYgYXV0b0xvYWQpIHtcclxuICAgICAgICAgICAgICAgIF90aGlzLmluaXQoKTtcclxuICAgICAgICAgICAgICAgIF90aGlzLmlzRmlyc3QgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9LCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKGF1dG9Mb2FkKSB7XHJcbiAgICAgICAgICAgICAgICBfdGhpcy5pbml0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICBpZiAodXJsICYmIGRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBhdXRvTG9hZCA9IHRydWUsIHN0b3JlLCBvcHRpb24gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoZGF0YSAmJiBhdXRvTG9hZCkge1xyXG4gICAgICB0aGlzLmluaXQoKTtcclxuICAgIH0gZWxzZSBpZiAoIWRhdGEgJiYgIXN0b3JlPy51cmwgJiYgb3B0aW9uKSB7XHJcbiAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkVXBkYXRlKFxyXG4gICAgcHJldlByb3BzOiBSZWFkb25seTxDaGFydFByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8e30+LFxyXG4gICAgc25hcHNob3Q/OiBhbnlcclxuICApOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgYXV0b0xvYWQgPSB0cnVlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKGF1dG9Mb2FkKSB7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShwcmV2UHJvcHMuZGF0YSkgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMucHJvcHMuZGF0YSkpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgICAgfSBlbHNlIGlmIChcclxuICAgICAgICBKU09OLnN0cmluZ2lmeShwcmV2UHJvcHMub3B0aW9uKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcy5vcHRpb24pXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZVNldENoYXJ0KCkge1xyXG4gICAgdGhpcy5pbml0KCk7XHJcbiAgfVxyXG4gIGlzU3RyaW5nKHYpIHtcclxuICAgIHJldHVybiB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIjtcclxuICB9XHJcbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XHJcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCB0aGlzLmhhbmRsZUNoYXJ0UmVzaXplLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgaXNSZXBsYWNlKHYpIHtcclxuICAgIHJldHVybiAvXnsuKn0kL2dpLnRlc3Qodik7XHJcbiAgfVxyXG4gIHJlcGxhY2Uodikge1xyXG4gICAgcmV0dXJuIHYuc3Vic3RyaW5nKDEsIHYubGVuZ3RoIC0gMSk7XHJcbiAgfVxyXG5cclxuICBkYXRhQ29udmVyc2lvbihkYXRhLCBkYXRhcywgZGF0YU1hcCkge1xyXG4gICAgbGV0IHJlc3VsdDtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzU3RyaW5nKGRhdGEpICYmIHRoaXMuaXNSZXBsYWNlKGRhdGEpKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gZGF0YU1hcFt0aGlzLnJlcGxhY2UoZGF0YSldO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzQXJyYXkoZGF0YSkpIHtcclxuICAgICAgICBkYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgbGV0IHYgPSBpdGVtLnZhbHVlO1xyXG4gICAgICAgICAgaWYgKHYgJiYgdGhpcy5pc1JlcGxhY2UodikpIHtcclxuICAgICAgICAgICAgaXRlbS52YWx1ZSA9IHRoaXMuZGF0YUNvbnZlcnNpb24odiwgZGF0YXMsIGRhdGFNYXApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlc3VsdCA9IGRhdGE7XHJcbiAgICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoZGF0YSkpIHtcclxuICAgICAgICByZXN1bHQgPSBbXTtcclxuICAgICAgICBpZiAoaXNBcnJheShkYXRhcykpIHtcclxuICAgICAgICAgIGRhdGFzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICB2YXIgdGVtcE9iaiA9IHt9O1xyXG4gICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gaXRlbSkge1xyXG4gICAgICAgICAgICAgIGxldCB2ID0gaXRlbVtrZXldO1xyXG4gICAgICAgICAgICAgIGlmICh0aGlzLmlzUmVwbGFjZSh2KSkge1xyXG4gICAgICAgICAgICAgICAgdGVtcE9ialtrZXldID0gaXRlbVt0aGlzLnJlcGxhY2UodildO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0ZW1wT2JqW2tleV0gPSB2O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXN1bHQucHVzaCh0ZW1wT2JqKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbiAgb2JqZWN0Q29udmVyc2lvbihvYmosIGRhdGFzLCBkYXRhTWFwKSB7XHJcbiAgICBsZXQgdGVtcE9iajogYW55O1xyXG4gICAgaWYgKG9iaikge1xyXG4gICAgICBpZiAoaXNBcnJheShvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IFsuLi5vYmpdO1xyXG4gICAgICAgIHRlbXBPYmoubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpZiAoaXRlbS5kYXRhKSB7XHJcbiAgICAgICAgICAgIGl0ZW0uZGF0YSA9IHRoaXMuZGF0YUNvbnZlcnNpb24oaXRlbS5kYXRhLCBkYXRhcywgZGF0YU1hcCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1N0cmluZyhvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IG9iajtcclxuICAgICAgICB0ZW1wT2JqLmRhdGEgPSB0aGlzLmRhdGFDb252ZXJzaW9uKHRlbXBPYmosIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgfSBlbHNlIGlmIChpc09iamVjdChvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IHsgLi4ub2JqIH07XHJcbiAgICAgICAgdGVtcE9iai5kYXRhID0gdGhpcy5kYXRhQ29udmVyc2lvbih0ZW1wT2JqLmRhdGEsIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRlbXBPYmo7XHJcbiAgfVxyXG4gIGluaXQoKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbiwgZGF0YSwgT25DbGljayB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCBkYXRhTWFwOiBhbnkgPSB7fTtcclxuICAgIGNvbnN0IG5ld0RhdGFzID0gZGF0YSB8fCBkYXRhU291cmNlO1xyXG4gICAgbGV0IG5ld09wdGlvbjogYW55ID0geyAuLi5vcHRpb24gfTtcclxuICAgIGlmIChpc0FycmF5KG5ld0RhdGFzKSkge1xyXG4gICAgICBuZXdEYXRhcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICBmb3IgKGxldCBrZXkgaW4gaXRlbSkge1xyXG4gICAgICAgICAgaWYgKGRhdGFNYXBba2V5XSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIGRhdGFNYXBba2V5XSA9IFtdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZGF0YU1hcFtrZXldLnB1c2goaXRlbVtrZXldKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChpc09iamVjdChuZXdEYXRhcykpIHtcclxuICAgICAgZGF0YU1hcCA9IG5ld0RhdGFzO1xyXG4gICAgfVxyXG4gICAgbmV3T3B0aW9uLnhBeGlzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKG5ld09wdGlvbi54QXhpcywgbmV3RGF0YXMsIGRhdGFNYXApO1xyXG4gICAgbmV3T3B0aW9uLnlBeGlzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKG5ld09wdGlvbi55QXhpcywgbmV3RGF0YXMsIGRhdGFNYXApO1xyXG4gICAgbmV3T3B0aW9uLnNlcmllcyA9IHRoaXMub2JqZWN0Q29udmVyc2lvbihcclxuICAgICAgbmV3T3B0aW9uLnNlcmllcyxcclxuICAgICAgbmV3RGF0YXMsXHJcbiAgICAgIGRhdGFNYXBcclxuICAgICk7XHJcbiAgICBjb25zdCBteUNoYXJ0ID0gKHRoaXMubXlDaGFydCA9IGVjaGFydHMuaW5pdChcclxuICAgICAgdGhpcy5jaGFydFJlZi5jdXJyZW50IGFzIEhUTUxEaXZFbGVtZW50XHJcbiAgICApKTsgLy/liJ3lp4vljJZlY2hhcnRz77yM6YCa6L+HcmVm5bGe5oCn6I635Y+WZG9tXHJcbiAgICBteUNoYXJ0LmNsZWFyKCk7XHJcbiAgICBteUNoYXJ0Lm9mZihcImNsaWNrXCIpO1xyXG4gICAgbXlDaGFydC5zZXRPcHRpb24obmV3T3B0aW9uKTtcclxuICAgIG15Q2hhcnQub24oXCJjbGlja1wiLCBmdW5jdGlvbiAocGFyYW1zKSB7XHJcbiAgICAgIE9uQ2xpY2sgJiYgT25DbGljayhwYXJhbXMsIG15Q2hhcnQpO1xyXG4gICAgfSk7XHJcbiAgICBteUNoYXJ0LmdldFpyKCkub24oXCJjbGlja1wiLCAocGFyYW1zKSA9PiB7XHJcbiAgICAgIE9uQ2xpY2sgJiYgT25DbGljayhwYXJhbXMsIG15Q2hhcnQpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIiwgdGhpcy5oYW5kbGVDaGFydFJlc2l6ZS5iaW5kKHRoaXMpKTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNoYXJ0UmVzaXplKCkge1xyXG4gICAgaWYgKHRoaXMubXlDaGFydCkge1xyXG4gICAgICB0aGlzLm15Q2hhcnQucmVzaXplKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBib3hTdHlsZSA9IHtcclxuICAgICAgd2lkdGg6IHR5cGVvZiB3aWR0aCA9PSBcIm51bWJlclwiID8gcHgydncod2lkdGgpIDogd2lkdGgsXHJcbiAgICAgIGhlaWdodDogdHlwZW9mIGhlaWdodCA9PSBcIm51bWJlclwiID8gcHgydncoaGVpZ2h0KSA6IGhlaWdodCxcclxuICAgIH07XHJcbiAgICByZXR1cm4gPGRpdiBzdHlsZT17Ym94U3R5bGV9IHJlZj17dGhpcy5jaGFydFJlZn0+PC9kaXY+O1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgTnNjQ2hhcnQ7XHJcbiJdfQ==
|
|
352
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NoYXJ0L2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJlY2hhcnRzIiwiU3RvcmUiLCJ1dGlscyIsInB4MnZ3IiwiaXNBcnJheSIsImlzT2JqZWN0IiwiTnNjQ2hhcnQiLCJwcm9wcyIsImNyZWF0ZVJlZiIsImRhdGFTb3VyY2UiLCJkYXRhIiwic3RvcmUiLCJjaGlsZHJlbiIsIm9wdGlvbnMiLCJvcHRpb24iLCJhdXRvTG9hZCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJzdG9yZXMiLCJFcnJvciIsIl90aGlzIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwic2V0U3RhdGUiLCJpc0ZpcnN0IiwiaW5pdCIsImRhdGFDaGFuZ2VkIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic25hcHNob3QiLCJKU09OIiwic3RyaW5naWZ5IiwidiIsIndpbmRvdyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJoYW5kbGVDaGFydFJlc2l6ZSIsImJpbmQiLCJ0ZXN0Iiwic3Vic3RyaW5nIiwibGVuZ3RoIiwiZGF0YXMiLCJkYXRhTWFwIiwicmVzdWx0IiwiaXNTdHJpbmciLCJpc1JlcGxhY2UiLCJyZXBsYWNlIiwibWFwIiwiaXRlbSIsInZhbHVlIiwiZGF0YUNvbnZlcnNpb24iLCJ0ZW1wT2JqIiwia2V5IiwicHVzaCIsIm9iaiIsIk9uQ2xpY2siLCJPblpyQ2xpY2siLCJzdGF0ZSIsIm5ld0RhdGFzIiwibmV3T3B0aW9uIiwieEF4aXMiLCJvYmplY3RDb252ZXJzaW9uIiwieUF4aXMiLCJzZXJpZXMiLCJteUNoYXJ0IiwiY2hhcnRSZWYiLCJjdXJyZW50IiwiY2xlYXIiLCJvZmYiLCJzZXRPcHRpb24iLCJvbiIsInBhcmFtcyIsImdldFpyIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJl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VUFBZUMsTUFBZixnQkFBZUEsTUFBZjtBQUNBLFVBQU1DLFFBQVEsR0FBRztBQUNmRixRQUFBQSxLQUFLLEVBQUUsT0FBT0EsS0FBUCxJQUFnQixRQUFoQixHQUEyQjdFLEtBQUssQ0FBQzZFLEtBQUQsQ0FBaEMsR0FBMENBLEtBRGxDO0FBRWZDLFFBQUFBLE1BQU0sRUFBRSxPQUFPQSxNQUFQLElBQWlCLFFBQWpCLEdBQTRCOUUsS0FBSyxDQUFDOEUsTUFBRCxDQUFqQyxHQUE0Q0E7QUFGckMsT0FBakI7QUFJQSwwQkFBTztBQUFLLFFBQUEsS0FBSyxFQUFFQyxRQUFaO0FBQXNCLFFBQUEsR0FBRyxFQUFFLEtBQUtaO0FBQWhDLFFBQVA7QUFDRDs7OztFQXpOb0J2RSxhOztBQTROdkIsZUFBZU8sUUFBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCAqIGFzIGVjaGFydHMgZnJvbSBcImVjaGFydHNcIjtcclxuaW1wb3J0IHsgRUNoYXJ0cyB9IGZyb20gXCJlY2hhcnRzL2xpYi9lY2hhcnRzXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgeyBweDJ2dyB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgeyBpc0FycmF5LCBpc09iamVjdCB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbnRlcmZhY2UgQ2hhcnRQcm9wcyB7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIG9wdGlvbjogYW55O1xyXG4gIGRhdGE/OiBBcnJheTxPYmplY3Q+IHwgT2JqZWN0O1xyXG4gIHdpZHRoOiBudW1iZXIgfCBzdHJpbmc7IC8v5Zu+6KGo5a695bqmXHJcbiAgaGVpZ2h0OiBudW1iZXIgfCBzdHJpbmc7IC8v5Zu+6KGo6ZW/5bqmXHJcbiAgYXV0b0xvYWQ/OiBib29sZWFuOyAvL+aVsOaNruaUueWPmO+8jOiHquWKqOWIt+aWsOWbvuihqCzpu5jorqR0cnVlXHJcbiAgT25DbGljaz86IChwYXJhbXM6IGFueSwgZT86IGFueSkgPT4gdm9pZDsgLy/lm77ooajngrnlh7vkuovku7ZcclxuICBPblpyQ2xpY2s/OiAocGFyYW1zOiBhbnksIGU/OiBhbnkpID0+IHZvaWQ7IC8v5Zu+6KGo54K55Ye75LqL5Lu2XHJcbiAgW3Byb05hbWVzOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbi8vZGF0YeekuuS+i1xyXG4vKipcclxuIOaVsOe7hO+8mlxyXG4gZGF0YT1be25hbWU6JzHmnIgnLHZhbHVlOjIwfSx7bmFtZTonMuaciCcsdmFsdWU6MTB9LHtuYW1lOicz5pyIJyx2YWx1ZToyNX1dXHJcbiDlr7nosaFcclxuIGRhdGE9e25hbWU6Wycx5pyIJywnMuaciCcsJzPmnIgnXSx2YWx1ZTpbMjAsMzAsNDBdfVxyXG4gKi9cclxuY2xhc3MgTnNjQ2hhcnQgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PENoYXJ0UHJvcHM+IHtcclxuICBjaGFydFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcclxuICBteUNoYXJ0OiBFQ2hhcnRzIHwgbnVsbCA9IG51bGw7XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogbnVsbCxcclxuICB9O1xyXG4gIGlzRmlyc3QgPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGRhdGEsXHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBvcHRpb246IG9wdGlvbnMsXHJcbiAgICAgIGF1dG9Mb2FkID0gdHJ1ZSxcclxuICAgIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHsgdXJsLCBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSwgLi4uc3RvcmVzIH0gPSBzdG9yZTtcclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIFkYXRh44CBb3B0aW9u5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9LCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKF90aGlzLmlzRmlyc3QgJiYgYXV0b0xvYWQpIHtcclxuICAgICAgICAgICAgICAgIF90aGlzLmluaXQoKTtcclxuICAgICAgICAgICAgICAgIF90aGlzLmlzRmlyc3QgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9LCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKGF1dG9Mb2FkKSB7XHJcbiAgICAgICAgICAgICAgICBfdGhpcy5pbml0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICBpZiAodXJsICYmIGRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBhdXRvTG9hZCA9IHRydWUsIHN0b3JlLCBvcHRpb24gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoZGF0YSAmJiBhdXRvTG9hZCkge1xyXG4gICAgICB0aGlzLmluaXQoKTtcclxuICAgIH0gZWxzZSBpZiAoIWRhdGEgJiYgIXN0b3JlPy51cmwgJiYgb3B0aW9uKSB7XHJcbiAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkVXBkYXRlKFxyXG4gICAgcHJldlByb3BzOiBSZWFkb25seTxDaGFydFByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8e30+LFxyXG4gICAgc25hcHNob3Q/OiBhbnlcclxuICApOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgYXV0b0xvYWQgPSB0cnVlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKGF1dG9Mb2FkKSB7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShwcmV2UHJvcHMuZGF0YSkgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMucHJvcHMuZGF0YSkpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgICAgfSBlbHNlIGlmIChcclxuICAgICAgICBKU09OLnN0cmluZ2lmeShwcmV2UHJvcHMub3B0aW9uKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcy5vcHRpb24pXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZVNldENoYXJ0KCkge1xyXG4gICAgdGhpcy5pbml0KCk7XHJcbiAgfVxyXG4gIGlzU3RyaW5nKHYpIHtcclxuICAgIHJldHVybiB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIjtcclxuICB9XHJcbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XHJcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCB0aGlzLmhhbmRsZUNoYXJ0UmVzaXplLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgaXNSZXBsYWNlKHYpIHtcclxuICAgIHJldHVybiAvXnsuKn0kL2dpLnRlc3Qodik7XHJcbiAgfVxyXG4gIHJlcGxhY2Uodikge1xyXG4gICAgcmV0dXJuIHYuc3Vic3RyaW5nKDEsIHYubGVuZ3RoIC0gMSk7XHJcbiAgfVxyXG5cclxuICBkYXRhQ29udmVyc2lvbihkYXRhLCBkYXRhcywgZGF0YU1hcCkge1xyXG4gICAgbGV0IHJlc3VsdDtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzU3RyaW5nKGRhdGEpICYmIHRoaXMuaXNSZXBsYWNlKGRhdGEpKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gZGF0YU1hcFt0aGlzLnJlcGxhY2UoZGF0YSldO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzQXJyYXkoZGF0YSkpIHtcclxuICAgICAgICBkYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgbGV0IHYgPSBpdGVtLnZhbHVlO1xyXG4gICAgICAgICAgaWYgKHYgJiYgdGhpcy5pc1JlcGxhY2UodikpIHtcclxuICAgICAgICAgICAgaXRlbS52YWx1ZSA9IHRoaXMuZGF0YUNvbnZlcnNpb24odiwgZGF0YXMsIGRhdGFNYXApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJlc3VsdCA9IGRhdGE7XHJcbiAgICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoZGF0YSkpIHtcclxuICAgICAgICByZXN1bHQgPSBbXTtcclxuICAgICAgICBpZiAoaXNBcnJheShkYXRhcykpIHtcclxuICAgICAgICAgIGRhdGFzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICB2YXIgdGVtcE9iaiA9IHt9O1xyXG4gICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gaXRlbSkge1xyXG4gICAgICAgICAgICAgIGxldCB2ID0gaXRlbVtrZXldO1xyXG4gICAgICAgICAgICAgIGlmICh0aGlzLmlzUmVwbGFjZSh2KSkge1xyXG4gICAgICAgICAgICAgICAgdGVtcE9ialtrZXldID0gaXRlbVt0aGlzLnJlcGxhY2UodildO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0ZW1wT2JqW2tleV0gPSB2O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXN1bHQucHVzaCh0ZW1wT2JqKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbiAgb2JqZWN0Q29udmVyc2lvbihvYmosIGRhdGFzLCBkYXRhTWFwKSB7XHJcbiAgICBsZXQgdGVtcE9iajogYW55O1xyXG4gICAgaWYgKG9iaikge1xyXG4gICAgICBpZiAoaXNBcnJheShvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IFsuLi5vYmpdO1xyXG4gICAgICAgIHRlbXBPYmoubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpZiAoaXRlbS5kYXRhKSB7XHJcbiAgICAgICAgICAgIGl0ZW0uZGF0YSA9IHRoaXMuZGF0YUNvbnZlcnNpb24oaXRlbS5kYXRhLCBkYXRhcywgZGF0YU1hcCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1N0cmluZyhvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IG9iajtcclxuICAgICAgICB0ZW1wT2JqLmRhdGEgPSB0aGlzLmRhdGFDb252ZXJzaW9uKHRlbXBPYmosIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgfSBlbHNlIGlmIChpc09iamVjdChvYmopKSB7XHJcbiAgICAgICAgdGVtcE9iaiA9IHsgLi4ub2JqIH07XHJcbiAgICAgICAgdGVtcE9iai5kYXRhID0gdGhpcy5kYXRhQ29udmVyc2lvbih0ZW1wT2JqLmRhdGEsIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRlbXBPYmo7XHJcbiAgfVxyXG4gIGluaXQoKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbiwgZGF0YSwgT25DbGljaywgT25ackNsaWNrIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IGRhdGFNYXA6IGFueSA9IHt9O1xyXG4gICAgY29uc3QgbmV3RGF0YXMgPSBkYXRhIHx8IGRhdGFTb3VyY2U7XHJcbiAgICBsZXQgbmV3T3B0aW9uOiBhbnkgPSB7IC4uLm9wdGlvbiB9O1xyXG4gICAgaWYgKGlzQXJyYXkobmV3RGF0YXMpKSB7XHJcbiAgICAgIG5ld0RhdGFzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIGZvciAobGV0IGtleSBpbiBpdGVtKSB7XHJcbiAgICAgICAgICBpZiAoZGF0YU1hcFtrZXldID09IG51bGwpIHtcclxuICAgICAgICAgICAgZGF0YU1hcFtrZXldID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBkYXRhTWFwW2tleV0ucHVzaChpdGVtW2tleV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KG5ld0RhdGFzKSkge1xyXG4gICAgICBkYXRhTWFwID0gbmV3RGF0YXM7XHJcbiAgICB9XHJcbiAgICBuZXdPcHRpb24ueEF4aXMgPSB0aGlzLm9iamVjdENvbnZlcnNpb24obmV3T3B0aW9uLnhBeGlzLCBuZXdEYXRhcywgZGF0YU1hcCk7XHJcbiAgICBuZXdPcHRpb24ueUF4aXMgPSB0aGlzLm9iamVjdENvbnZlcnNpb24obmV3T3B0aW9uLnlBeGlzLCBuZXdEYXRhcywgZGF0YU1hcCk7XHJcbiAgICBuZXdPcHRpb24uc2VyaWVzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKFxyXG4gICAgICBuZXdPcHRpb24uc2VyaWVzLFxyXG4gICAgICBuZXdEYXRhcyxcclxuICAgICAgZGF0YU1hcFxyXG4gICAgKTtcclxuICAgIGNvbnN0IG15Q2hhcnQgPSAodGhpcy5teUNoYXJ0ID0gZWNoYXJ0cy5pbml0KFxyXG4gICAgICB0aGlzLmNoYXJ0UmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnRcclxuICAgICkpOyAvL+WIneWni+WMlmVjaGFydHPvvIzpgJrov4dyZWblsZ7mgKfojrflj5Zkb21cclxuICAgIG15Q2hhcnQuY2xlYXIoKTtcclxuICAgIG15Q2hhcnQub2ZmKFwiY2xpY2tcIik7XHJcbiAgICBteUNoYXJ0LnNldE9wdGlvbihuZXdPcHRpb24pO1xyXG4gICAgbXlDaGFydC5vbihcImNsaWNrXCIsIGZ1bmN0aW9uIChwYXJhbXMpIHtcclxuICAgICAgT25DbGljayAmJiBPbkNsaWNrKHBhcmFtcywgbXlDaGFydCk7XHJcbiAgICB9KTtcclxuICAgIG15Q2hhcnQ/LmdldFpyKCk/Lm9uKFwiY2xpY2tcIiwgKHBhcmFtcykgPT4ge1xyXG4gICAgICBPblpyQ2xpY2sgJiYgT25ackNsaWNrKHBhcmFtcywgbXlDaGFydCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCB0aGlzLmhhbmRsZUNoYXJ0UmVzaXplLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhcnRSZXNpemUoKSB7XHJcbiAgICBpZiAodGhpcy5teUNoYXJ0KSB7XHJcbiAgICAgIHRoaXMubXlDaGFydC5yZXNpemUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGJveFN0eWxlID0ge1xyXG4gICAgICB3aWR0aDogdHlwZW9mIHdpZHRoID09IFwibnVtYmVyXCIgPyBweDJ2dyh3aWR0aCkgOiB3aWR0aCxcclxuICAgICAgaGVpZ2h0OiB0eXBlb2YgaGVpZ2h0ID09IFwibnVtYmVyXCIgPyBweDJ2dyhoZWlnaHQpIDogaGVpZ2h0LFxyXG4gICAgfTtcclxuICAgIHJldHVybiA8ZGl2IHN0eWxlPXtib3hTdHlsZX0gcmVmPXt0aGlzLmNoYXJ0UmVmfT48L2Rpdj47XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBOc2NDaGFydDtcclxuIl19
|