nsc-react-component 1.1.16 → 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 +3 -1
- package/lib/chart/index.js +10 -5
- package/lib/select/index.d.ts +1 -1
- package/lib/select/index.js +7 -7
- package/package.json +1 -1
package/lib/chart/index.d.ts
CHANGED
|
@@ -8,7 +8,9 @@ interface ChartProps {
|
|
|
8
8
|
width: number | string;
|
|
9
9
|
height: number | string;
|
|
10
10
|
autoLoad?: boolean;
|
|
11
|
-
OnClick?: (params: any) => void;
|
|
11
|
+
OnClick?: (params: any, e?: any) => void;
|
|
12
|
+
OnZrClick?: (params: any, e?: any) => void;
|
|
13
|
+
[proNames: string]: any;
|
|
12
14
|
}
|
|
13
15
|
/**
|
|
14
16
|
数组:
|
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;
|
|
@@ -308,11 +311,13 @@ var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
|
308
311
|
var myChart = this.myChart = echarts.init(this.chartRef.current); //初始化echarts,通过ref属性获取dom
|
|
309
312
|
|
|
310
313
|
myChart.clear();
|
|
314
|
+
myChart.off("click");
|
|
311
315
|
myChart.setOption(newOption);
|
|
312
316
|
myChart.on("click", function (params) {
|
|
313
|
-
myChart
|
|
314
|
-
|
|
315
|
-
|
|
317
|
+
OnClick && OnClick(params, myChart);
|
|
318
|
+
});
|
|
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);
|
|
316
321
|
});
|
|
317
322
|
window.addEventListener("resize", this.handleChartResize.bind(this));
|
|
318
323
|
}
|
|
@@ -344,4 +349,4 @@ var NscChart = /*#__PURE__*/function (_PureComponent) {
|
|
|
344
349
|
}(PureComponent);
|
|
345
350
|
|
|
346
351
|
export default NscChart;
|
|
347
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NoYXJ0L2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJlY2hhcnRzIiwiU3RvcmUiLCJ1dGlscyIsInB4MnZ3IiwiaXNBcnJheSIsImlzT2JqZWN0IiwiTnNjQ2hhcnQiLCJwcm9wcyIsImNyZWF0ZVJlZiIsImRhdGFTb3VyY2UiLCJkYXRhIiwic3RvcmUiLCJjaGlsZHJlbiIsIm9wdGlvbnMiLCJvcHRpb24iLCJhdXRvTG9hZCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJzdG9yZXMiLCJFcnJvciIsIl90aGlzIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwic2V0U3RhdGUiLCJpc0ZpcnN0IiwiaW5pdCIsImRhdGFDaGFuZ2VkIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic25hcHNob3QiLCJKU09OIiwic3RyaW5naWZ5IiwidiIsIndpbmRvdyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJoYW5kbGVDaGFydFJlc2l6ZSIsImJpbmQiLCJ0ZXN0Iiwic3Vic3RyaW5nIiwibGVuZ3RoIiwiZGF0YXMiLCJkYXRhTWFwIiwicmVzdWx0IiwiaXNTdHJpbmciLCJpc1JlcGxhY2UiLCJyZXBsYWNlIiwibWFwIiwiaXRlbSIsInZhbHVlIiwiZGF0YUNvbnZlcnNpb24iLCJ0ZW1wT2JqIiwia2V5IiwicHVzaCIsIm9iaiIsIk9uQ2xpY2siLCJzdGF0ZSIsIm5ld0RhdGFzIiwibmV3T3B0aW9uIiwieEF4aXMiLCJvYmplY3RDb252ZXJzaW9uIiwieUF4aXMiLCJzZXJpZXMiLCJteUNoYXJ0IiwiY2hhcnRSZWYiLCJjdXJyZW50IiwiY2xlYXIiLCJzZXRPcHRpb24iLCJvbiIsInBhcmFtcyIsIm9mZiIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZXNpemUiLCJ3aWR0aCIsImhlaWdo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QUFLLFFBQUEsS0FBSyxFQUFFQyxRQUFaO0FBQXNCLFFBQUEsR0FBRyxFQUFFLEtBQUtYO0FBQWhDLFFBQVA7QUFDRDs7OztFQXJOb0J0RSxhOztBQXdOdkIsZUFBZU8sUUFBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCAqIGFzIGVjaGFydHMgZnJvbSBcImVjaGFydHNcIjtcclxuaW1wb3J0IHsgRUNoYXJ0cyB9IGZyb20gXCJlY2hhcnRzL2xpYi9lY2hhcnRzXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgeyBweDJ2dyB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgeyBpc0FycmF5LCBpc09iamVjdCB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbnRlcmZhY2UgQ2hhcnRQcm9wcyB7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIG9wdGlvbjogYW55O1xyXG4gIGRhdGE/OiBBcnJheTxPYmplY3Q+IHwgT2JqZWN0O1xyXG4gIHdpZHRoOiBudW1iZXIgfCBzdHJpbmc7IC8v5Zu+6KGo5a695bqmXHJcbiAgaGVpZ2h0OiBudW1iZXIgfCBzdHJpbmc7IC8v5Zu+6KGo6ZW/5bqmXHJcbiAgYXV0b0xvYWQ/OiBib29sZWFuOyAvL+aVsOaNruaUueWPmO+8jOiHquWKqOWIt+aWsOWbvuihqCzpu5jorqR0cnVlXHJcbiAgT25DbGljaz86IChwYXJhbXM6IGFueSkgPT4gdm9pZDsgLy/lm77ooajngrnlh7vkuovku7ZcclxufVxyXG5cclxuLy9kYXRh56S65L6LXHJcbi8qKlxyXG4g5pWw57uE77yaXHJcbiBkYXRhPVt7bmFtZTonMeaciCcsdmFsdWU6MjB9LHtuYW1lOicy5pyIJyx2YWx1ZToxMH0se25hbWU6JzPmnIgnLHZhbHVlOjI1fV1cclxuIOWvueixoVxyXG4gZGF0YT17bmFtZTpbJzHmnIgnLCcy5pyIJywnM+aciCddLHZhbHVlOlsyMCwzMCw0MF19XHJcbiAqL1xyXG5jbGFzcyBOc2NDaGFydCBleHRlbmRzIFB1cmVDb21wb25lbnQ8Q2hhcnRQcm9wcz4ge1xyXG4gIGNoYXJ0UmVmID0gUmVhY3QuY3JlYXRlUmVmPEhUTUxEaXZFbGVtZW50PigpO1xyXG4gIG15Q2hhcnQ6IEVDaGFydHMgfCBudWxsID0gbnVsbDtcclxuICBzdG9yZSA9IHt9IGFzIFN0b3JlUHJvcHM7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRhU291cmNlOiBudWxsLFxyXG4gIH07XHJcbiAgaXNGaXJzdCA9IHRydWU7XHJcbiAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgZGF0YSxcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIG9wdGlvbjogb3B0aW9ucyxcclxuICAgICAgYXV0b0xvYWQgPSB0cnVlLFxyXG4gICAgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgeyB1cmwsIGxpc3RlbmVyczogbGlzdGVuZXJzUG9wcyA9IHt9LCAuLi5zdG9yZXMgfSA9IHN0b3JlO1xyXG4gICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICBpZiAoIShkYXRhIHx8IHVybCB8fCBvcHRpb25zKSkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOOAgWRhdGHjgIFvcHRpb27kuI3og73pg73kuLrnqbrvvIFcIik7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgICAgbGV0IHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgbW9kZWw6IFwibW9kZWxcIixcclxuICAgICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgICAgbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgICBvbkJlZm9yZUxvYWQ6IGZ1bmN0aW9uIChzdG9yZSwgb3B0aW9ucykge1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLm9uQmVmb3JlTG9hZCwgX3RoaXMsIFtzdG9yZSwgb3B0aW9uc10pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxvYWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbW9kZWxEYXRhIH0sICgpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoX3RoaXMuaXNGaXJzdCAmJiBhdXRvTG9hZCkge1xyXG4gICAgICAgICAgICAgICAgX3RoaXMuaW5pdCgpO1xyXG4gICAgICAgICAgICAgICAgX3RoaXMuaXNGaXJzdCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMubG9hZCwgX3RoaXMsIFtkYXRhLCBtb2RlbERhdGEsIHN0b3JlXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZGF0YUNoYW5nZWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbW9kZWxEYXRhIH0sICgpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoYXV0b0xvYWQpIHtcclxuICAgICAgICAgICAgICAgIF90aGlzLmluaXQoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICh1cmwgJiYgZGF0YSA9PSBudWxsKSB7XHJcbiAgICAgICAgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgYXV0b0xvYWQ6IHRydWUsXHJcbiAgICAgICAgICAgIHVybDogdXJsLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIGF1dG9Mb2FkID0gdHJ1ZSwgc3RvcmUsIG9wdGlvbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChkYXRhICYmIGF1dG9Mb2FkKSB7XHJcbiAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgfSBlbHNlIGlmICghZGF0YSAmJiAhc3RvcmU/LnVybCAmJiBvcHRpb24pIHtcclxuICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRVcGRhdGUoXHJcbiAgICBwcmV2UHJvcHM6IFJlYWRvbmx5PENoYXJ0UHJvcHM+LFxyXG4gICAgcHJldlN0YXRlOiBSZWFkb25seTx7fT4sXHJcbiAgICBzbmFwc2hvdD86IGFueVxyXG4gICk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBhdXRvTG9hZCA9IHRydWUgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoYXV0b0xvYWQpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHByZXZQcm9wcy5kYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcy5kYXRhKSkge1xyXG4gICAgICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHByZXZQcm9wcy5vcHRpb24pICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLm9wdGlvbilcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlU2V0Q2hhcnQoKSB7XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICB9XHJcbiAgaXNTdHJpbmcodikge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiO1xyXG4gIH1cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwicmVzaXplXCIsIHRoaXMuaGFuZGxlQ2hhcnRSZXNpemUuYmluZCh0aGlzKSk7XHJcbiAgfVxyXG5cclxuICBpc1JlcGxhY2Uodikge1xyXG4gICAgcmV0dXJuIC9eey4qfSQvZ2kudGVzdCh2KTtcclxuICB9XHJcbiAgcmVwbGFjZSh2KSB7XHJcbiAgICByZXR1cm4gdi5zdWJzdHJpbmcoMSwgdi5sZW5ndGggLSAxKTtcclxuICB9XHJcblxyXG4gIGRhdGFDb252ZXJzaW9uKGRhdGEsIGRhdGFzLCBkYXRhTWFwKSB7XHJcbiAgICBsZXQgcmVzdWx0O1xyXG4gICAgaWYgKGRhdGEpIHtcclxuICAgICAgaWYgKHRoaXMuaXNTdHJpbmcoZGF0YSkgJiYgdGhpcy5pc1JlcGxhY2UoZGF0YSkpIHtcclxuICAgICAgICByZXN1bHQgPSBkYXRhTWFwW3RoaXMucmVwbGFjZShkYXRhKV07XHJcbiAgICAgIH0gZWxzZSBpZiAoaXNBcnJheShkYXRhKSkge1xyXG4gICAgICAgIGRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBsZXQgdiA9IGl0ZW0udmFsdWU7XHJcbiAgICAgICAgICBpZiAodiAmJiB0aGlzLmlzUmVwbGFjZSh2KSkge1xyXG4gICAgICAgICAgICBpdGVtLnZhbHVlID0gdGhpcy5kYXRhQ29udmVyc2lvbih2LCBkYXRhcywgZGF0YU1hcCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmVzdWx0ID0gZGF0YTtcclxuICAgICAgfSBlbHNlIGlmIChpc09iamVjdChkYXRhKSkge1xyXG4gICAgICAgIHJlc3VsdCA9IFtdO1xyXG4gICAgICAgIGlmIChpc0FycmF5KGRhdGFzKSkge1xyXG4gICAgICAgICAgZGF0YXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIHZhciB0ZW1wT2JqID0ge307XHJcbiAgICAgICAgICAgIGZvciAobGV0IGtleSBpbiBpdGVtKSB7XHJcbiAgICAgICAgICAgICAgbGV0IHYgPSBpdGVtW2tleV07XHJcbiAgICAgICAgICAgICAgaWYgKHRoaXMuaXNSZXBsYWNlKHYpKSB7XHJcbiAgICAgICAgICAgICAgICB0ZW1wT2JqW2tleV0gPSBpdGVtW3RoaXMucmVwbGFjZSh2KV07XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRlbXBPYmpba2V5XSA9IHY7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHRlbXBPYmopO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuICBvYmplY3RDb252ZXJzaW9uKG9iaiwgZGF0YXMsIGRhdGFNYXApIHtcclxuICAgIGxldCB0ZW1wT2JqOiBhbnk7XHJcbiAgICBpZiAob2JqKSB7XHJcbiAgICAgIGlmIChpc0FycmF5KG9iaikpIHtcclxuICAgICAgICB0ZW1wT2JqID0gWy4uLm9ial07XHJcbiAgICAgICAgdGVtcE9iai5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgIGlmIChpdGVtLmRhdGEpIHtcclxuICAgICAgICAgICAgaXRlbS5kYXRhID0gdGhpcy5kYXRhQ29udmVyc2lvbihpdGVtLmRhdGEsIGRhdGFzLCBkYXRhTWFwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIGlmICh0aGlzLmlzU3RyaW5nKG9iaikpIHtcclxuICAgICAgICB0ZW1wT2JqID0gb2JqO1xyXG4gICAgICAgIHRlbXBPYmouZGF0YSA9IHRoaXMuZGF0YUNvbnZlcnNpb24odGVtcE9iaiwgZGF0YXMsIGRhdGFNYXApO1xyXG4gICAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KG9iaikpIHtcclxuICAgICAgICB0ZW1wT2JqID0geyAuLi5vYmogfTtcclxuICAgICAgICB0ZW1wT2JqLmRhdGEgPSB0aGlzLmRhdGFDb252ZXJzaW9uKHRlbXBPYmouZGF0YSwgZGF0YXMsIGRhdGFNYXApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGVtcE9iajtcclxuICB9XHJcbiAgaW5pdCgpIHtcclxuICAgIGNvbnN0IHsgb3B0aW9uLCBkYXRhLCBPbkNsaWNrIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IGRhdGFNYXA6IGFueSA9IHt9O1xyXG4gICAgY29uc3QgbmV3RGF0YXMgPSBkYXRhIHx8IGRhdGFTb3VyY2U7XHJcbiAgICBsZXQgbmV3T3B0aW9uOiBhbnkgPSB7IC4uLm9wdGlvbiB9O1xyXG4gICAgaWYgKGlzQXJyYXkobmV3RGF0YXMpKSB7XHJcbiAgICAgIG5ld0RhdGFzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIGZvciAobGV0IGtleSBpbiBpdGVtKSB7XHJcbiAgICAgICAgICBpZiAoZGF0YU1hcFtrZXldID09IG51bGwpIHtcclxuICAgICAgICAgICAgZGF0YU1hcFtrZXldID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBkYXRhTWFwW2tleV0ucHVzaChpdGVtW2tleV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KG5ld0RhdGFzKSkge1xyXG4gICAgICBkYXRhTWFwID0gbmV3RGF0YXM7XHJcbiAgICB9XHJcbiAgICBuZXdPcHRpb24ueEF4aXMgPSB0aGlzLm9iamVjdENvbnZlcnNpb24obmV3T3B0aW9uLnhBeGlzLCBuZXdEYXRhcywgZGF0YU1hcCk7XHJcbiAgICBuZXdPcHRpb24ueUF4aXMgPSB0aGlzLm9iamVjdENvbnZlcnNpb24obmV3T3B0aW9uLnlBeGlzLCBuZXdEYXRhcywgZGF0YU1hcCk7XHJcbiAgICBuZXdPcHRpb24uc2VyaWVzID0gdGhpcy5vYmplY3RDb252ZXJzaW9uKFxyXG4gICAgICBuZXdPcHRpb24uc2VyaWVzLFxyXG4gICAgICBuZXdEYXRhcyxcclxuICAgICAgZGF0YU1hcFxyXG4gICAgKTtcclxuICAgIGNvbnN0IG15Q2hhcnQgPSAodGhpcy5teUNoYXJ0ID0gZWNoYXJ0cy5pbml0KFxyXG4gICAgICB0aGlzLmNoYXJ0UmVmLmN1cnJlbnQgYXMgSFRNTERpdkVsZW1lbnRcclxuICAgICkpOyAvL+WIneWni+WMlmVjaGFydHPvvIzpgJrov4dyZWblsZ7mgKfojrflj5Zkb21cclxuICAgIG15Q2hhcnQuY2xlYXIoKTtcclxuICAgIG15Q2hhcnQuc2V0T3B0aW9uKG5ld09wdGlvbik7XHJcbiAgICBteUNoYXJ0Lm9uKFwiY2xpY2tcIiwgZnVuY3Rpb24gKHBhcmFtcykge1xyXG4gICAgICBteUNoYXJ0Lm9mZihcImNsaWNrXCIpOyAvLyDov5nph4zlvojph43opoEg77yM6Ziy5q2i6YeN5aSN54K55Ye75LqL5Lu277yB77yB77yBXHJcbiAgICAgIE9uQ2xpY2sgJiYgT25DbGljayhwYXJhbXMpO1xyXG4gICAgfSk7XHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCB0aGlzLmhhbmRsZUNoYXJ0UmVzaXplLmJpbmQodGhpcykpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQ2hhcnRSZXNpemUoKSB7XHJcbiAgICBpZiAodGhpcy5teUNoYXJ0KSB7XHJcbiAgICAgIHRoaXMubXlDaGFydC5yZXNpemUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGJveFN0eWxlID0ge1xyXG4gICAgICB3aWR0aDogdHlwZW9mIHdpZHRoID09IFwibnVtYmVyXCIgPyBweDJ2dyh3aWR0aCkgOiB3aWR0aCxcclxuICAgICAgaGVpZ2h0OiB0eXBlb2YgaGVpZ2h0ID09IFwibnVtYmVyXCIgPyBweDJ2dyhoZWlnaHQpIDogaGVpZ2h0LFxyXG4gICAgfTtcclxuICAgIHJldHVybiA8ZGl2IHN0eWxlPXtib3hTdHlsZX0gcmVmPXt0aGlzLmNoYXJ0UmVmfT48L2Rpdj47XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBOc2NDaGFydDtcclxuIl19
|
|
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
|
package/lib/select/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ interface ISelectProps extends SelectProps<any> {
|
|
|
7
7
|
labelField?: string;
|
|
8
8
|
valueField?: string;
|
|
9
9
|
defaultStyle?: boolean;
|
|
10
|
-
|
|
10
|
+
showGroup?: boolean;
|
|
11
11
|
}
|
|
12
12
|
export default class NSCSelect extends PureComponent<ISelectProps> {
|
|
13
13
|
static Option: import("rc-select/lib/Option").OptionFC;
|
package/lib/select/index.js
CHANGED
|
@@ -3,7 +3,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
|
3
3
|
import "antd/es/select/style/css";
|
|
4
4
|
import _Select from "antd/es/select";
|
|
5
5
|
var _excluded = ["url", "listeners", "viewname", "cached", "cacheKey"],
|
|
6
|
-
_excluded2 = ["children", "store", "data", "onChange", "options", "labelField", "valueField", "defaultStyle", "
|
|
6
|
+
_excluded2 = ["children", "store", "data", "onChange", "options", "labelField", "valueField", "defaultStyle", "showGroup"];
|
|
7
7
|
|
|
8
8
|
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
9
9
|
|
|
@@ -183,8 +183,8 @@ var NSCSelect = /*#__PURE__*/function (_PureComponent) {
|
|
|
183
183
|
|
|
184
184
|
var _this$props3 = this.props,
|
|
185
185
|
children = _this$props3.children,
|
|
186
|
-
_this$props3$
|
|
187
|
-
|
|
186
|
+
_this$props3$showGrou = _this$props3.showGroup,
|
|
187
|
+
showGroup = _this$props3$showGrou === void 0 ? true : _this$props3$showGrou;
|
|
188
188
|
var dataSource = this.state.dataSource;
|
|
189
189
|
|
|
190
190
|
if (children) {
|
|
@@ -195,7 +195,7 @@ var NSCSelect = /*#__PURE__*/function (_PureComponent) {
|
|
|
195
195
|
dataSource.forEach(function (item) {
|
|
196
196
|
var label = item.groupName;
|
|
197
197
|
|
|
198
|
-
if (label &&
|
|
198
|
+
if (label && showGroup) {
|
|
199
199
|
if (!optGroupData[label]) optGroupData[label] = [];
|
|
200
200
|
optGroupData[label].push(item);
|
|
201
201
|
} else {
|
|
@@ -237,8 +237,8 @@ var NSCSelect = /*#__PURE__*/function (_PureComponent) {
|
|
|
237
237
|
valueField = _this$props4.valueField,
|
|
238
238
|
_this$props4$defaultS = _this$props4.defaultStyle,
|
|
239
239
|
defaultStyle = _this$props4$defaultS === void 0 ? true : _this$props4$defaultS,
|
|
240
|
-
_this$props4$
|
|
241
|
-
|
|
240
|
+
_this$props4$showGrou = _this$props4.showGroup,
|
|
241
|
+
showGroup = _this$props4$showGrou === void 0 ? true : _this$props4$showGrou,
|
|
242
242
|
params = _objectWithoutProperties(_this$props4, _excluded2);
|
|
243
243
|
|
|
244
244
|
var props = {
|
|
@@ -290,4 +290,4 @@ _defineProperty(NSCSelect, "Option", Option);
|
|
|
290
290
|
_defineProperty(NSCSelect, "OptGroup", OptGroup);
|
|
291
291
|
|
|
292
292
|
export { NSCSelect as default };
|
|
293
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3NlbGVjdC9pbmRleC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiU3RvcmUiLCJ1dGlscyIsImNvbmZpZyIsInN0eWxlcyIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiTlNDU2VsZWN0IiwicHJvcHMiLCJkYXRhU291cmNlIiwiZGF0YSIsInN0b3JlIiwiY2hpbGRyZW4iLCJvcHRpb25zIiwidXJsIiwibGlzdGVuZXJzIiwibGlzdGVuZXJzUG9wcyIsInZpZXduYW1lIiwiY2FjaGVkIiwiY2FjaGVLZXkiLCJzdG9yZXMiLCJ2aWV3VXJsIiwiRXJyb3IiLCJfdGhpcyIsInN0b3JlUHJvcHMiLCJtb2RlbCIsImNvbXBvbmVudCIsIm9uQmVmb3JlTG9hZCIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInN0YXRlIiwib3B0aW9uRGF0YSIsImxhYmVsRmllbGQiLCJ2YWx1ZUZpZWxkIiwibWFwIiwiaXRlbSIsImtleSIsImlkIiwiZGlzYWJsZWQiLCJzaG93R3JvcCIsIm9wdEdyb3VwRGF0YSIsImZvckVhY2giLCJsYWJlbCIsImdyb3VwTmFtZSIsInB1c2giLCJvcHRpb24iLCJyZW5kZXJPcHRpb24iLCJvcHRHcm91cCIsIk9iamVjdCIsImtleXMiLCJ2YWx1ZSIsIm9uQ2hhbmdlIiwic2VsZWN0VmFsdWUiLCJkZWZhdWx0U3R5bGUiLCJwYXJhbXMiLCJzaG93U2VhcmNoIiwib3B0aW9uRmlsdGVyUHJvcCIsInBsYWNlaG9sZGVyIiwiYWxsb3dDbGVhciIsImJpbmQiLCJyZW5kZXJDaGlsZHJlbiIsIm5leHRQcm9wcyIsInByZXZTdGF0ZSIsIm5ld0RhdGEiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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QjJELFNBQXZCLENBQVEzRCxVQUFSO0FBQ0EsVUFBUUMsSUFBUixHQUFpQ3lELFNBQWpDLENBQVF6RCxJQUFSO0FBQUEsVUFBY0csT0FBZCxHQUFpQ3NELFNBQWpDLENBQWN0RCxPQUFkO0FBQUEsVUFBdUJGLEtBQXZCLEdBQWlDd0QsU0FBakMsQ0FBdUJ4RCxLQUF2Qjs7QUFDQSxVQUFJRCxJQUFJLElBQUlHLE9BQVosRUFBcUI7QUFDbkIsWUFBTXdELE9BQU8sR0FBRzNELElBQUksR0FBR0EsSUFBSCxHQUFVRyxPQUE5Qjs7QUFDQSxZQUFJeUQsSUFBSSxDQUFDQyxTQUFMLENBQWU5RCxVQUFmLE1BQStCNkQsSUFBSSxDQUFDQyxTQUFMLENBQWVGLE9BQWYsQ0FBbkMsRUFBNEQ7QUFDMUQsaUJBQU87QUFDTDVELFlBQUFBLFVBQVUsRUFBRTREO0FBRFAsV0FBUDtBQUdEO0FBQ0Y7O0FBQ0QsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUFuQm9DckUsYTs7Z0JBQWxCTyxTLFlBQ0hGLE07O2dCQURHRSxTLGNBRURELFE7O1NBRkNDLFMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBTZWxlY3QsIFNlbGVjdFByb3BzIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFN0b3JlUHJvcHMgfSBmcm9tIFwiQGJqLW5zYy9tc25cIjtcclxuaW1wb3J0IHsgdXRpbHMgfSBmcm9tIFwiQGJqLW5zYy9tc24vbGliL3V0aWxzXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lmxlc3NcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5cclxuY29uc3QgeyBPcHRpb24sIE9wdEdyb3VwIH0gPSBTZWxlY3Q7XHJcblxyXG5pbnRlcmZhY2UgSVNlbGVjdFByb3BzIGV4dGVuZHMgU2VsZWN0UHJvcHM8YW55PiB7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIGRhdGE/OiBBcnJheTxPYmplY3Q+OyAvL+m7mOiupOaVsOaNrlxyXG4gIGxhYmVsRmllbGQ/OiBzdHJpbmc7XHJcbiAgdmFsdWVGaWVsZD86IHN0cmluZztcclxuICBkZWZhdWx0U3R5bGU/OiBib29sZWFuO1xyXG4gIHNob3dHcm9wPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbnu4RcclxufVxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NTZWxlY3QgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PElTZWxlY3RQcm9wcz4ge1xyXG4gIHN0YXRpYyBPcHRpb24gPSBPcHRpb247XHJcbiAgc3RhdGljIE9wdEdyb3VwID0gT3B0R3JvdXA7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRhU291cmNlOiBbXSxcclxuICB9O1xyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKG5leHRQcm9wcywgcHJldlN0YXRlOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gcHJldlN0YXRlO1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCBzdG9yZSB9ID0gbmV4dFByb3BzO1xyXG4gICAgaWYgKGRhdGEgfHwgb3B0aW9ucykge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gZGF0YSA/IGRhdGEgOiBvcHRpb25zO1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KG5ld0RhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7IGRhdGEsIHN0b3JlID0ge30sIGNoaWxkcmVuLCBvcHRpb25zIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgdXJsLFxyXG4gICAgICBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSxcclxuICAgICAgdmlld25hbWUsXHJcbiAgICAgIGNhY2hlZCxcclxuICAgICAgY2FjaGVLZXksXHJcbiAgICAgIC4uLnN0b3Jlc1xyXG4gICAgfSA9IHN0b3JlO1xyXG4gICAgbGV0IHsgdmlld1VybCB9ID0gY29uZmlnKCk7XHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdmlld25hbWUgfHwgdXJsIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs44CBdmlld25hbWXjgIFkYXRh44CBb3B0aW9uc+S4jeiDvemDveS4uuepuu+8gVwiKTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgICBsZXQgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICBtb2RlbDogXCJtb2RlbFwiLFxyXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgICBsaXN0ZW5lcnM6IHtcclxuICAgICAgICAgIG9uQmVmb3JlTG9hZDogZnVuY3Rpb24gKHN0b3JlLCBvcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMub25CZWZvcmVMb2FkLCBfdGhpcywgW3N0b3JlLCBvcHRpb25zXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgbG9hZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMubG9hZCwgX3RoaXMsIFtkYXRhLCBtb2RlbERhdGEsIHN0b3JlXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZGF0YUNoYW5nZWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbW9kZWxEYXRhIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICgodmlld25hbWUgfHwgdXJsKSAmJiBkYXRhID09IG51bGwgJiYgb3B0aW9ucyA9PSBudWxsKSB7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVkID0gY2FjaGVkO1xyXG4gICAgICAgIGxldCBpc0NhY2hlS2V5ID0gY2FjaGVLZXk7XHJcbiAgICAgICAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGNhY2hlZCAhPT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgaXNDYWNoZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICBpc0NhY2hlS2V5ID0gaXNDYWNoZUtleSA/IGlzQ2FjaGVLZXkgOiB2aWV3bmFtZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgYXV0b0xvYWQ6IHRydWUsXHJcbiAgICAgICAgICAgIHVybDogdXJsIHx8IHZpZXdVcmwgKyB2aWV3bmFtZSwgLy/or7vlrZflhbjvvIx1cmzlm7rlrprvvIx2aWV3bmFtZVxyXG4gICAgICAgICAgICBjYWNoZWQ6IGlzQ2FjaGVkLFxyXG4gICAgICAgICAgICBjYWNoZUtleTogaXNDYWNoZUtleSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5kYXRhU291cmNlO1xyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpIHtcclxuICAgIGxldCB7IGxhYmVsRmllbGQgPSBcImxhYmVsXCIsIHZhbHVlRmllbGQgPSBcInZhbHVlXCIsIHN0b3JlID0ge30gfSA9IHRoaXMucHJvcHM7XHJcbiAgICByZXR1cm4gb3B0aW9uRGF0YS5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgbGV0IGtleSA9IGl0ZW0uaWRcclxuICAgICAgICA/IGl0ZW0uaWQgIT09IFwidW5kZWZpbmVkXCJcclxuICAgICAgICAgID8gaXRlbS5pZFxyXG4gICAgICAgICAgOiBpdGVtW3ZhbHVlRmllbGRdXHJcbiAgICAgICAgOiBpdGVtW3ZhbHVlRmllbGRdO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxPcHRpb25cclxuICAgICAgICAgIGtleT17a2V5fVxyXG4gICAgICAgICAgdmFsdWU9e2l0ZW1bdmFsdWVGaWVsZF19XHJcbiAgICAgICAgICBsYWJlbD17aXRlbVtsYWJlbEZpZWxkXX1cclxuICAgICAgICAgIGRpc2FibGVkPXtpdGVtLmRpc2FibGVkID8gdHJ1ZSA6IGZhbHNlfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtpdGVtW2xhYmVsRmllbGRdfVxyXG4gICAgICAgIDwvT3B0aW9uPlxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJlbmRlckNoaWxkcmVuKCkge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiwgc2hvd0dyb3AgPSB0cnVlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHJldHVybiA8PntjaGlsZHJlbn08Lz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgb3B0R3JvdXBEYXRhID0ge30sXHJcbiAgICAgICAgb3B0aW9uRGF0YSA9IFtdO1xyXG4gICAgICBkYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICBsZXQgbGFiZWwgPSBpdGVtLmdyb3VwTmFtZTtcclxuICAgICAgICBpZiAobGFiZWwgJiYgc2hvd0dyb3ApIHtcclxuICAgICAgICAgIGlmICghb3B0R3JvdXBEYXRhW2xhYmVsXSkgb3B0R3JvdXBEYXRhW2xhYmVsXSA9IFtdO1xyXG4gICAgICAgICAgb3B0R3JvdXBEYXRhW2xhYmVsXS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBvcHRpb25EYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgbGV0IG9wdGlvbiA9IHRoaXMucmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpO1xyXG4gICAgICBsZXQgb3B0R3JvdXAgPSBPYmplY3Qua2V5cyhvcHRHcm91cERhdGEpLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxPcHRHcm91cCBrZXk9e2tleX0gbGFiZWw9e2tleX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlck9wdGlvbihvcHRHcm91cERhdGFba2V5XSl9XHJcbiAgICAgICAgICA8L09wdEdyb3VwPlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICB7b3B0aW9ufVxyXG4gICAgICAgICAge29wdEdyb3VwfVxyXG4gICAgICAgIDwvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGlmIChvbkNoYW5nZSkge1xyXG4gICAgICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIHN0b3JlLFxyXG4gICAgICBkYXRhLFxyXG4gICAgICBvbkNoYW5nZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgbGFiZWxGaWVsZCxcclxuICAgICAgdmFsdWVGaWVsZCxcclxuICAgICAgZGVmYXVsdFN0eWxlID0gdHJ1ZSxcclxuICAgICAgc2hvd0dyb3AgPSB0cnVlLFxyXG4gICAgICAuLi5wYXJhbXNcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgcHJvcHMgPSB7XHJcbiAgICAgIHNob3dTZWFyY2g6IHRydWUsXHJcbiAgICAgIG9wdGlvbkZpbHRlclByb3A6IFwibGFiZWxcIixcclxuICAgICAgcGxhY2Vob2xkZXI6IFwi6K+36YCJ5oupXCIsXHJcbiAgICAgIGFsbG93Q2xlYXI6IHRydWUsXHJcbiAgICB9O1xyXG4gICAgaWYgKGRlZmF1bHRTdHlsZSkge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXNbXCJuc2Nfc2VsZWN0XCJdfT5cclxuICAgICAgICAgIDxTZWxlY3Qgey4uLnByb3BzfSB7Li4ucGFyYW1zfSBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfT5cclxuICAgICAgICAgICAge3RoaXMucmVuZGVyQ2hpbGRyZW4oKX1cclxuICAgICAgICAgIDwvU2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8U2VsZWN0IHsuLi5wcm9wc30gey4uLnBhcmFtc30gb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX0+XHJcbiAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgIDwvU2VsZWN0PlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
293
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3NlbGVjdC9pbmRleC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiU3RvcmUiLCJ1dGlscyIsImNvbmZpZyIsInN0eWxlcyIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiTlNDU2VsZWN0IiwicHJvcHMiLCJkYXRhU291cmNlIiwiZGF0YSIsInN0b3JlIiwiY2hpbGRyZW4iLCJvcHRpb25zIiwidXJsIiwibGlzdGVuZXJzIiwibGlzdGVuZXJzUG9wcyIsInZpZXduYW1lIiwiY2FjaGVkIiwiY2FjaGVLZXkiLCJzdG9yZXMiLCJ2aWV3VXJsIiwiRXJyb3IiLCJfdGhpcyIsInN0b3JlUHJvcHMiLCJtb2RlbCIsImNvbXBvbmVudCIsIm9uQmVmb3JlTG9hZCIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInN0YXRlIiwib3B0aW9uRGF0YSIsImxhYmVsRmllbGQiLCJ2YWx1ZUZpZWxkIiwibWFwIiwiaXRlbSIsImtleSIsImlkIiwiZGlzYWJsZWQiLCJzaG93R3JvdXAiLCJvcHRHcm91cERhdGEiLCJmb3JFYWNoIiwibGFiZWwiLCJncm91cE5hbWUiLCJwdXNoIiwib3B0aW9uIiwicmVuZGVyT3B0aW9uIiwib3B0R3JvdXAiLCJPYmplY3QiLCJrZXlzIiwidmFsdWUiLCJvbkNoYW5nZSIsInNlbGVjdFZhbHVlIiwiZGVmYXVsdFN0eWxlIiwicGFyYW1zIiwic2hvd1NlYXJjaCIsIm9wdGlvbkZpbHRlclByb3AiLCJwbGFjZWhvbGRlciIsImFsbG93Q2xlYXIiLCJiaW5kIiwicmVuZGVyQ2hpbGRyZW4iLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJuZXdEYXRhIiwiSlNPTiIsInN0cmluZ2lmeSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFFQSxPQUFPQyxLQUFQLE1BQWtDLGFBQWxDO0FBQ0EsU0FBU0MsS0FBVCxRQUFzQix1QkFBdEI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFdBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUdBLElBQVFDLE1BQVIsV0FBUUEsTUFBUjtBQUFBLElBQWdCQyxRQUFoQixXQUFnQkEsUUFBaEI7O0lBVXFCQyxTOzs7OztBQW9CbkIscUJBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQTs7QUFDakIsK0JBQU1BLEtBQU47O0FBRGlCLDZEQWpCWDtBQUNOQyxNQUFBQSxVQUFVLEVBQUU7QUFETixLQWlCVzs7QUFBQSw2REFkWCxFQWNXOztBQUVqQixRQUFRQyxJQUFSLEdBQWdERixLQUFoRCxDQUFRRSxJQUFSO0FBQUEsdUJBQWdERixLQUFoRCxDQUFjRyxLQUFkO0FBQUEsUUFBY0EsS0FBZCw2QkFBc0IsRUFBdEI7QUFBQSxRQUEwQkMsUUFBMUIsR0FBZ0RKLEtBQWhELENBQTBCSSxRQUExQjtBQUFBLFFBQW9DQyxPQUFwQyxHQUFnREwsS0FBaEQsQ0FBb0NLLE9BQXBDOztBQUNBLFFBQ0VDLEdBREYsR0FPSUgsS0FQSixDQUNFRyxHQURGO0FBQUEsMkJBT0lILEtBUEosQ0FFRUksU0FGRjtBQUFBLFFBRWFDLGFBRmIsaUNBRTZCLEVBRjdCO0FBQUEsUUFHRUMsUUFIRixHQU9JTixLQVBKLENBR0VNLFFBSEY7QUFBQSxRQUlFQyxNQUpGLEdBT0lQLEtBUEosQ0FJRU8sTUFKRjtBQUFBLFFBS0VDLFFBTEYsR0FPSVIsS0FQSixDQUtFUSxRQUxGO0FBQUEsUUFNS0MsTUFOTCw0QkFPSVQsS0FQSjs7QUFRQSxrQkFBa0JSLE1BQU0sRUFBeEI7QUFBQSxRQUFNa0IsT0FBTixXQUFNQSxPQUFOOztBQUNBLFFBQUksQ0FBQ1QsUUFBTCxFQUFlO0FBQ2IsVUFBSSxFQUFFRixJQUFJLElBQUlPLFFBQVIsSUFBb0JILEdBQXBCLElBQTJCRCxPQUE3QixDQUFKLEVBQTJDO0FBQ3pDLGNBQU0sSUFBSVMsS0FBSixDQUFVLGlDQUFWLENBQU47QUFDRDs7QUFDRCxVQUFJQyxLQUFLLGlDQUFUOztBQUNBLFVBQUlDLFVBQVU7QUFDWkMsUUFBQUEsS0FBSyxFQUFFLE9BREs7QUFFWkMsUUFBQUEsU0FBUyxnQ0FGRztBQUdaWCxRQUFBQSxTQUFTLEVBQUU7QUFDVFksVUFBQUEsWUFBWSxFQUFFLHNCQUFVaEIsS0FBVixFQUFpQkUsT0FBakIsRUFBMEI7QUFDdENYLFlBQUFBLEtBQUssQ0FBQzBCLFFBQU4sQ0FBZVosYUFBYSxDQUFDVyxZQUE3QixFQUEyQ0osS0FBM0MsRUFBa0QsQ0FBQ1osS0FBRCxFQUFRRSxPQUFSLENBQWxEO0FBQ0QsV0FIUTtBQUlUZ0IsVUFBQUEsSUFBSSxFQUFFLGNBQVVuQixJQUFWLEVBQWdCb0IsU0FBaEIsRUFBMkJuQixLQUEzQixFQUFrQztBQUN0Q1ksWUFBQUEsS0FBSyxDQUFDUSxRQUFOLENBQWU7QUFBRXRCLGNBQUFBLFVBQVUsRUFBRXFCO0FBQWQsYUFBZjs7QUFDQTVCLFlBQUFBLEtBQUssQ0FBQzBCLFFBQU4sQ0FBZVosYUFBYSxDQUFDYSxJQUE3QixFQUFtQ04sS0FBbkMsRUFBMEMsQ0FBQ2IsSUFBRCxFQUFPb0IsU0FBUCxFQUFrQm5CLEtBQWxCLENBQTFDO0FBQ0QsV0FQUTtBQVFUcUIsVUFBQUEsV0FBVyxFQUFFLHFCQUFVdEIsSUFBVixFQUFnQm9CLFNBQWhCLEVBQTJCbkIsS0FBM0IsRUFBa0M7QUFDN0NZLFlBQUFBLEtBQUssQ0FBQ1EsUUFBTixDQUFlO0FBQUV0QixjQUFBQSxVQUFVLEVBQUVxQjtBQUFkLGFBQWY7O0FBQ0E1QixZQUFBQSxLQUFLLENBQUMwQixRQUFOLENBQWVaLGFBQWEsQ0FBQ2dCLFdBQTdCLEVBQTBDVCxLQUExQyxFQUFpRCxDQUMvQ2IsSUFEK0MsRUFFL0NvQixTQUYrQyxFQUcvQ25CLEtBSCtDLENBQWpEO0FBS0Q7QUFmUTtBQUhDLFNBb0JUUyxNQXBCUyxDQUFkOztBQXNCQSxVQUFJLENBQUNILFFBQVEsSUFBSUgsR0FBYixLQUFxQkosSUFBSSxJQUFJLElBQTdCLElBQXFDRyxPQUFPLElBQUksSUFBcEQsRUFBMEQ7QUFDeEQsWUFBSW9CLFFBQVEsR0FBR2YsTUFBZjtBQUNBLFlBQUlnQixVQUFVLEdBQUdmLFFBQWpCOztBQUNBLFlBQUlGLFFBQUosRUFBYztBQUNaLGNBQUksT0FBT0MsTUFBUCxLQUFrQixTQUF0QixFQUFpQztBQUMvQmUsWUFBQUEsUUFBUSxHQUFHLElBQVg7QUFDQUMsWUFBQUEsVUFBVSxHQUFHQSxVQUFVLEdBQUdBLFVBQUgsR0FBZ0JqQixRQUF2QztBQUNEO0FBQ0Y7O0FBQ0RPLFFBQUFBLFVBQVUsbUNBQ0w7QUFDRFcsVUFBQUEsUUFBUSxFQUFFLElBRFQ7QUFFRHJCLFVBQUFBLEdBQUcsRUFBRUEsR0FBRyxJQUFJTyxPQUFPLEdBQUdKLFFBRnJCO0FBRStCO0FBQ2hDQyxVQUFBQSxNQUFNLEVBQUVlLFFBSFA7QUFJRGQsVUFBQUEsUUFBUSxFQUFFZTtBQUpULFNBREssR0FPTFYsVUFQSyxDQUFWO0FBU0Q7O0FBQ0QsYUFBS2IsS0FBTCxHQUFhLElBQUlWLEtBQUosQ0FBVXVCLFVBQVYsQ0FBYjtBQUNEOztBQTNEZ0I7QUE0RGxCOzs7O1dBRUQsbUJBQVU7QUFDUixhQUFPLEtBQUtZLEtBQUwsQ0FBVzNCLFVBQWxCO0FBQ0Q7OztXQUVELDZCQUFvQjtBQUNsQix3QkFBb0MsS0FBS0QsS0FBekM7QUFBQSxVQUFRRSxJQUFSLGVBQVFBLElBQVI7QUFBQSxVQUFjRyxPQUFkLGVBQWNBLE9BQWQ7QUFBQSxVQUF1QkQsUUFBdkIsZUFBdUJBLFFBQXZCOztBQUNBLFVBQUksQ0FBQ0EsUUFBRCxLQUFjRixJQUFJLElBQUlHLE9BQXRCLENBQUosRUFBb0M7QUFDbEMsYUFBS2tCLFFBQUwsQ0FBYztBQUNadEIsVUFBQUEsVUFBVSxFQUFFQyxJQUFJLEdBQUdBLElBQUgsR0FBVUc7QUFEZCxTQUFkO0FBR0Q7QUFDRjs7O1dBRUQsc0JBQWF3QixVQUFiLEVBQXlCO0FBQ3ZCLHlCQUFpRSxLQUFLN0IsS0FBdEU7QUFBQSwrQ0FBTThCLFVBQU47QUFBQSxVQUFNQSxVQUFOLHNDQUFtQixPQUFuQjtBQUFBLCtDQUE0QkMsVUFBNUI7QUFBQSxVQUE0QkEsVUFBNUIsc0NBQXlDLE9BQXpDO0FBQUEsNENBQWtENUIsS0FBbEQ7QUFBQSxVQUFrREEsS0FBbEQsbUNBQTBELEVBQTFEO0FBQ0EsYUFBTzBCLFVBQVUsQ0FBQ0csR0FBWCxDQUFlLFVBQUNDLElBQUQsRUFBVTtBQUM5QixZQUFJQyxHQUFHLEdBQUdELElBQUksQ0FBQ0UsRUFBTCxHQUNORixJQUFJLENBQUNFLEVBQUwsS0FBWSxXQUFaLEdBQ0VGLElBQUksQ0FBQ0UsRUFEUCxHQUVFRixJQUFJLENBQUNGLFVBQUQsQ0FIQSxHQUlORSxJQUFJLENBQUNGLFVBQUQsQ0FKUjtBQUtBLDRCQUNFLG9CQUFDLE1BQUQ7QUFDRSxVQUFBLEdBQUcsRUFBRUcsR0FEUDtBQUVFLFVBQUEsS0FBSyxFQUFFRCxJQUFJLENBQUNGLFVBQUQsQ0FGYjtBQUdFLFVBQUEsS0FBSyxFQUFFRSxJQUFJLENBQUNILFVBQUQsQ0FIYjtBQUlFLFVBQUEsUUFBUSxFQUFFRyxJQUFJLENBQUNHLFFBQUwsR0FBZ0IsSUFBaEIsR0FBdUI7QUFKbkMsV0FNR0gsSUFBSSxDQUFDSCxVQUFELENBTlAsQ0FERjtBQVVELE9BaEJNLENBQVA7QUFpQkQ7OztXQUNELDBCQUFpQjtBQUFBOztBQUNmLHlCQUF1QyxLQUFLOUIsS0FBNUM7QUFBQSxVQUFRSSxRQUFSLGdCQUFRQSxRQUFSO0FBQUEsK0NBQWtCaUMsU0FBbEI7QUFBQSxVQUFrQkEsU0FBbEIsc0NBQThCLElBQTlCO0FBQ0EsVUFBUXBDLFVBQVIsR0FBdUIsS0FBSzJCLEtBQTVCLENBQVEzQixVQUFSOztBQUNBLFVBQUlHLFFBQUosRUFBYztBQUNaLDRCQUFPLDBDQUFHQSxRQUFILENBQVA7QUFDRCxPQUZELE1BRU87QUFDTCxZQUFJa0MsWUFBWSxHQUFHLEVBQW5CO0FBQUEsWUFDRVQsVUFBVSxHQUFHLEVBRGY7QUFFQTVCLFFBQUFBLFVBQVUsQ0FBQ3NDLE9BQVgsQ0FBbUIsVUFBQ04sSUFBRCxFQUFVO0FBQzNCLGNBQUlPLEtBQUssR0FBR1AsSUFBSSxDQUFDUSxTQUFqQjs7QUFDQSxjQUFJRCxLQUFLLElBQUlILFNBQWIsRUFBd0I7QUFDdEIsZ0JBQUksQ0FBQ0MsWUFBWSxDQUFDRSxLQUFELENBQWpCLEVBQTBCRixZQUFZLENBQUNFLEtBQUQsQ0FBWixHQUFzQixFQUF0QjtBQUMxQkYsWUFBQUEsWUFBWSxDQUFDRSxLQUFELENBQVosQ0FBb0JFLElBQXBCLENBQXlCVCxJQUF6QjtBQUNELFdBSEQsTUFHTztBQUNMSixZQUFBQSxVQUFVLENBQUNhLElBQVgsQ0FBZ0JULElBQWhCO0FBQ0Q7QUFDRixTQVJEO0FBU0EsWUFBSVUsTUFBTSxHQUFHLEtBQUtDLFlBQUwsQ0FBa0JmLFVBQWxCLENBQWI7QUFDQSxZQUFJZ0IsUUFBUSxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWVQsWUFBWixFQUEwQk4sR0FBMUIsQ0FBOEIsVUFBQ0UsR0FBRCxFQUFTO0FBQ3BELDhCQUNFLG9CQUFDLFFBQUQ7QUFBVSxZQUFBLEdBQUcsRUFBRUEsR0FBZjtBQUFvQixZQUFBLEtBQUssRUFBRUE7QUFBM0IsYUFDRyxNQUFJLENBQUNVLFlBQUwsQ0FBa0JOLFlBQVksQ0FBQ0osR0FBRCxDQUE5QixDQURILENBREY7QUFLRCxTQU5jLENBQWY7QUFPQSw0QkFDRSwwQ0FDR1MsTUFESCxFQUVHRSxRQUZILENBREY7QUFNRDtBQUNGOzs7V0FDRCxrQkFBU0csS0FBVCxFQUFnQjNDLE9BQWhCLEVBQXlCO0FBQ3ZCLFVBQVE0QyxRQUFSLEdBQXFCLEtBQUtqRCxLQUExQixDQUFRaUQsUUFBUjtBQUNBLFdBQUsxQixRQUFMLENBQWM7QUFDWjJCLFFBQUFBLFdBQVcsRUFBRUY7QUFERCxPQUFkOztBQUdBLFVBQUlDLFFBQUosRUFBYztBQUNaQSxRQUFBQSxRQUFRLENBQUNELEtBQUQsRUFBUTNDLE9BQVIsQ0FBUjtBQUNEO0FBQ0Y7OztXQUNELGtCQUFTO0FBQ1AseUJBV0ksS0FBS0wsS0FYVDtBQUFBLFVBQ0VJLFFBREYsZ0JBQ0VBLFFBREY7QUFBQSxVQUVFRCxLQUZGLGdCQUVFQSxLQUZGO0FBQUEsVUFHRUQsSUFIRixnQkFHRUEsSUFIRjtBQUFBLFVBSUUrQyxRQUpGLGdCQUlFQSxRQUpGO0FBQUEsVUFLRTVDLE9BTEYsZ0JBS0VBLE9BTEY7QUFBQSxVQU1FeUIsVUFORixnQkFNRUEsVUFORjtBQUFBLFVBT0VDLFVBUEYsZ0JBT0VBLFVBUEY7QUFBQSwrQ0FRRW9CLFlBUkY7QUFBQSxVQVFFQSxZQVJGLHNDQVFpQixJQVJqQjtBQUFBLCtDQVNFZCxTQVRGO0FBQUEsVUFTRUEsU0FURixzQ0FTYyxJQVRkO0FBQUEsVUFVS2UsTUFWTDs7QUFZQSxVQUFNcEQsS0FBSyxHQUFHO0FBQ1pxRCxRQUFBQSxVQUFVLEVBQUUsSUFEQTtBQUVaQyxRQUFBQSxnQkFBZ0IsRUFBRSxPQUZOO0FBR1pDLFFBQUFBLFdBQVcsRUFBRSxLQUhEO0FBSVpDLFFBQUFBLFVBQVUsRUFBRTtBQUpBLE9BQWQ7O0FBTUEsVUFBSUwsWUFBSixFQUFrQjtBQUNoQiw0QkFDRTtBQUFLLFVBQUEsU0FBUyxFQUFFdkQsTUFBTSxDQUFDLFlBQUQ7QUFBdEIsd0JBQ0UsMENBQVlJLEtBQVosRUFBdUJvRCxNQUF2QjtBQUErQixVQUFBLFFBQVEsRUFBRSxLQUFLSCxRQUFMLENBQWNRLElBQWQsQ0FBbUIsSUFBbkI7QUFBekMsWUFDRyxLQUFLQyxjQUFMLEVBREgsQ0FERixDQURGO0FBT0QsT0FSRCxNQVFPO0FBQ0wsNEJBQ0UsMENBQVkxRCxLQUFaLEVBQXVCb0QsTUFBdkI7QUFBK0IsVUFBQSxRQUFRLEVBQUUsS0FBS0gsUUFBTCxDQUFjUSxJQUFkLENBQW1CLElBQW5CO0FBQXpDLFlBQ0csS0FBS0MsY0FBTCxFQURILENBREY7QUFLRDtBQUNGOzs7V0F4TEQsa0NBQWdDQyxTQUFoQyxFQUEyQ0MsU0FBM0MsRUFBMkQ7QUFDekQsVUFBUTNELFVBQVIsR0FBdUIyRCxTQUF2QixDQUFRM0QsVUFBUjtBQUNBLFVBQVFDLElBQVIsR0FBaUN5RCxTQUFqQyxDQUFRekQsSUFBUjtBQUFBLFVBQWNHLE9BQWQsR0FBaUNzRCxTQUFqQyxDQUFjdEQsT0FBZDtBQUFBLFVBQXVCRixLQUF2QixHQUFpQ3dELFNBQWpDLENBQXVCeEQsS0FBdkI7O0FBQ0EsVUFBSUQsSUFBSSxJQUFJRyxPQUFaLEVBQXFCO0FBQ25CLFlBQU13RCxPQUFPLEdBQUczRCxJQUFJLEdBQUdBLElBQUgsR0FBVUcsT0FBOUI7O0FBQ0EsWUFBSXlELElBQUksQ0FBQ0MsU0FBTCxDQUFlOUQsVUFBZixNQUErQjZELElBQUksQ0FBQ0MsU0FBTCxDQUFlRixPQUFmLENBQW5DLEVBQTREO0FBQzFELGlCQUFPO0FBQ0w1RCxZQUFBQSxVQUFVLEVBQUU0RDtBQURQLFdBQVA7QUFHRDtBQUNGOztBQUNELGFBQU8sSUFBUDtBQUNEOzs7O0VBbkJvQ3JFLGE7O2dCQUFsQk8sUyxZQUNIRixNOztnQkFER0UsUyxjQUVERCxROztTQUZDQyxTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IHsgU2VsZWN0LCBTZWxlY3RQcm9wcyB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi9jb25maWdcIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuXHJcbmNvbnN0IHsgT3B0aW9uLCBPcHRHcm91cCB9ID0gU2VsZWN0O1xyXG5cclxuaW50ZXJmYWNlIElTZWxlY3RQcm9wcyBleHRlbmRzIFNlbGVjdFByb3BzPGFueT4ge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/pu5jorqTmlbDmja5cclxuICBsYWJlbEZpZWxkPzogc3RyaW5nO1xyXG4gIHZhbHVlRmllbGQ/OiBzdHJpbmc7XHJcbiAgZGVmYXVsdFN0eWxlPzogYm9vbGVhbjtcclxuICBzaG93R3JvdXA/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekuuWIhue7hFxyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5TQ1NlbGVjdCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SVNlbGVjdFByb3BzPiB7XHJcbiAgc3RhdGljIE9wdGlvbiA9IE9wdGlvbjtcclxuICBzdGF0aWMgT3B0R3JvdXAgPSBPcHRHcm91cDtcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIHN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMobmV4dFByb3BzLCBwcmV2U3RhdGU6IGFueSkge1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSBwcmV2U3RhdGU7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIHN0b3JlIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBpZiAoZGF0YSB8fCBvcHRpb25zKSB7XHJcbiAgICAgIGNvbnN0IG5ld0RhdGEgPSBkYXRhID8gZGF0YSA6IG9wdGlvbnM7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShkYXRhU291cmNlKSAhPT0gSlNPTi5zdHJpbmdpZnkobmV3RGF0YSkpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICAgIGNvbnN0IHsgZGF0YSwgc3RvcmUgPSB7fSwgY2hpbGRyZW4sIG9wdGlvbnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICB1cmwsXHJcbiAgICAgIGxpc3RlbmVyczogbGlzdGVuZXJzUG9wcyA9IHt9LFxyXG4gICAgICB2aWV3bmFtZSxcclxuICAgICAgY2FjaGVkLFxyXG4gICAgICBjYWNoZUtleSxcclxuICAgICAgLi4uc3RvcmVzXHJcbiAgICB9ID0gc3RvcmU7XHJcbiAgICBsZXQgeyB2aWV3VXJsIH0gPSBjb25maWcoKTtcclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB2aWV3bmFtZSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIF2aWV3bmFtZeOAgWRhdGHjgIFvcHRpb25z5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgaWYgKCh2aWV3bmFtZSB8fCB1cmwpICYmIGRhdGEgPT0gbnVsbCAmJiBvcHRpb25zID09IG51bGwpIHtcclxuICAgICAgICBsZXQgaXNDYWNoZWQgPSBjYWNoZWQ7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVLZXkgPSBjYWNoZUtleTtcclxuICAgICAgICBpZiAodmlld25hbWUpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgY2FjaGVkICE9PSBcImJvb2xlYW5cIikge1xyXG4gICAgICAgICAgICBpc0NhY2hlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIGlzQ2FjaGVLZXkgPSBpc0NhY2hlS2V5ID8gaXNDYWNoZUtleSA6IHZpZXduYW1lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgICAgLi4ue1xyXG4gICAgICAgICAgICBhdXRvTG9hZDogdHJ1ZSxcclxuICAgICAgICAgICAgdXJsOiB1cmwgfHwgdmlld1VybCArIHZpZXduYW1lLCAvL+ivu+Wtl+WFuO+8jHVybOWbuuWumu+8jHZpZXduYW1lXHJcbiAgICAgICAgICAgIGNhY2hlZDogaXNDYWNoZWQsXHJcbiAgICAgICAgICAgIGNhY2hlS2V5OiBpc0NhY2hlS2V5LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0RGF0YSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLmRhdGFTb3VyY2U7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIWNoaWxkcmVuICYmIChkYXRhIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW5kZXJPcHRpb24ob3B0aW9uRGF0YSkge1xyXG4gICAgbGV0IHsgbGFiZWxGaWVsZCA9IFwibGFiZWxcIiwgdmFsdWVGaWVsZCA9IFwidmFsdWVcIiwgc3RvcmUgPSB7fSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHJldHVybiBvcHRpb25EYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBsZXQga2V5ID0gaXRlbS5pZFxyXG4gICAgICAgID8gaXRlbS5pZCAhPT0gXCJ1bmRlZmluZWRcIlxyXG4gICAgICAgICAgPyBpdGVtLmlkXHJcbiAgICAgICAgICA6IGl0ZW1bdmFsdWVGaWVsZF1cclxuICAgICAgICA6IGl0ZW1bdmFsdWVGaWVsZF07XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPE9wdGlvblxyXG4gICAgICAgICAga2V5PXtrZXl9XHJcbiAgICAgICAgICB2YWx1ZT17aXRlbVt2YWx1ZUZpZWxkXX1cclxuICAgICAgICAgIGxhYmVsPXtpdGVtW2xhYmVsRmllbGRdfVxyXG4gICAgICAgICAgZGlzYWJsZWQ9e2l0ZW0uZGlzYWJsZWQgPyB0cnVlIDogZmFsc2V9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge2l0ZW1bbGFiZWxGaWVsZF19XHJcbiAgICAgICAgPC9PcHRpb24+XHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcmVuZGVyQ2hpbGRyZW4oKSB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBzaG93R3JvdXAgPSB0cnVlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHJldHVybiA8PntjaGlsZHJlbn08Lz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgb3B0R3JvdXBEYXRhID0ge30sXHJcbiAgICAgICAgb3B0aW9uRGF0YSA9IFtdO1xyXG4gICAgICBkYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICBsZXQgbGFiZWwgPSBpdGVtLmdyb3VwTmFtZTtcclxuICAgICAgICBpZiAobGFiZWwgJiYgc2hvd0dyb3VwKSB7XHJcbiAgICAgICAgICBpZiAoIW9wdEdyb3VwRGF0YVtsYWJlbF0pIG9wdEdyb3VwRGF0YVtsYWJlbF0gPSBbXTtcclxuICAgICAgICAgIG9wdEdyb3VwRGF0YVtsYWJlbF0ucHVzaChpdGVtKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgb3B0aW9uRGF0YS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGxldCBvcHRpb24gPSB0aGlzLnJlbmRlck9wdGlvbihvcHRpb25EYXRhKTtcclxuICAgICAgbGV0IG9wdEdyb3VwID0gT2JqZWN0LmtleXMob3B0R3JvdXBEYXRhKS5tYXAoKGtleSkgPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8T3B0R3JvdXAga2V5PXtrZXl9IGxhYmVsPXtrZXl9PlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJPcHRpb24ob3B0R3JvdXBEYXRhW2tleV0pfVxyXG4gICAgICAgICAgPC9PcHRHcm91cD5cclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAge29wdGlvbn1cclxuICAgICAgICAgIHtvcHRHcm91cH1cclxuICAgICAgICA8Lz5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMpIHtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0VmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBzdG9yZSxcclxuICAgICAgZGF0YSxcclxuICAgICAgb25DaGFuZ2UsXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICAgIGRlZmF1bHRTdHlsZSA9IHRydWUsXHJcbiAgICAgIHNob3dHcm91cCA9IHRydWUsXHJcbiAgICAgIC4uLnBhcmFtc1xyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBwcm9wcyA9IHtcclxuICAgICAgc2hvd1NlYXJjaDogdHJ1ZSxcclxuICAgICAgb3B0aW9uRmlsdGVyUHJvcDogXCJsYWJlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlcjogXCLor7fpgInmi6lcIixcclxuICAgICAgYWxsb3dDbGVhcjogdHJ1ZSxcclxuICAgIH07XHJcbiAgICBpZiAoZGVmYXVsdFN0eWxlKSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlc1tcIm5zY19zZWxlY3RcIl19PlxyXG4gICAgICAgICAgPFNlbGVjdCB7Li4ucHJvcHN9IHsuLi5wYXJhbXN9IG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9PlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxTZWxlY3Qgey4uLnByb3BzfSB7Li4ucGFyYW1zfSBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfT5cclxuICAgICAgICAgIHt0aGlzLnJlbmRlckNoaWxkcmVuKCl9XHJcbiAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|