nsc-react-component 4.4.8 → 4.5.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/base/chart/index.js +2 -1
- package/lib/base/chart/index.js.map +1 -1
- package/lib/base/form/Form.js +5 -5
- package/lib/base/form/Form.js.map +1 -1
- package/lib/base/importData/index.d.ts +1 -0
- package/lib/base/importData/index.js +6 -5
- package/lib/base/importData/index.js.map +1 -1
- package/lib/base/table/index_old.js +1 -3
- package/lib/base/table/index_old.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/page/HeaderSearch/index.js +3 -1
- package/lib/page/HeaderSearch/index.js.map +1 -1
- package/lib/page/SettingChart/index.d.ts +6 -4
- package/lib/page/SettingChart/index.js +65 -23
- package/lib/page/SettingChart/index.js.map +1 -1
- package/lib/page/SettingTable/index.d.ts +1 -0
- package/lib/page/SettingTable/index.js +11 -4
- package/lib/page/SettingTable/index.js.map +1 -1
- package/lib/page/SettingUtil/utils.d.ts +10 -4
- package/lib/page/SettingUtil/utils.js +53 -32
- package/lib/page/SettingUtil/utils.js.map +1 -1
- package/lib/utils.d.ts +1 -0
- package/lib/utils.js +3 -2
- package/lib/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,7 +15,7 @@ import "./index.less";
|
|
|
15
15
|
import React from "react";
|
|
16
16
|
import NscRequest from "nsc-request";
|
|
17
17
|
import cls from "classnames";
|
|
18
|
-
import { defaultComFuncs, defaultUtil, ModalForm, renderSelfColumnButton, renderSelfToolButton, ModalManager } from "../SettingUtil/utils";
|
|
18
|
+
import { defaultComFuncs, defaultUtil, ModalForm, renderSelfColumnButton, renderSelfToolButton, ModalManager, ModalChart } from "../SettingUtil/utils";
|
|
19
19
|
import { deepMerge } from "../../utils";
|
|
20
20
|
const getPageData = params => {
|
|
21
21
|
return NscRequest.get("/jquick-setting/setting/table/info/", {
|
|
@@ -91,6 +91,7 @@ export default class SettingTable extends React.Component {
|
|
|
91
91
|
_defineProperty(this, "state", _objectSpread({}, defaultStateValue));
|
|
92
92
|
_defineProperty(this, "pageRef", /*#__PURE__*/React.createRef());
|
|
93
93
|
_defineProperty(this, "modalRef", /*#__PURE__*/React.createRef());
|
|
94
|
+
_defineProperty(this, "chartRef", /*#__PURE__*/React.createRef());
|
|
94
95
|
_defineProperty(this, "initData", res => {
|
|
95
96
|
const {
|
|
96
97
|
otherProps,
|
|
@@ -111,7 +112,8 @@ export default class SettingTable extends React.Component {
|
|
|
111
112
|
}
|
|
112
113
|
componentDidMount() {
|
|
113
114
|
this.getData();
|
|
114
|
-
ModalManager.register(this.modalRef);
|
|
115
|
+
ModalManager.register("form", this.modalRef);
|
|
116
|
+
ModalManager.register("chart", this.chartRef);
|
|
115
117
|
}
|
|
116
118
|
componentDidUpdate(prevProps, prevState, snapshot) {
|
|
117
119
|
if (prevProps.tableCode != this.props.tableCode) {
|
|
@@ -333,7 +335,10 @@ export default class SettingTable extends React.Component {
|
|
|
333
335
|
}
|
|
334
336
|
}, defaultComFuncs), {}, {
|
|
335
337
|
openFormModal: params => {
|
|
336
|
-
ModalManager.showModal(params);
|
|
338
|
+
ModalManager.showModal("form", params);
|
|
339
|
+
},
|
|
340
|
+
openChartModal: params => {
|
|
341
|
+
ModalManager.showModal("chart", params);
|
|
337
342
|
}
|
|
338
343
|
// getCurrentProject: () => {
|
|
339
344
|
// return getProject();
|
|
@@ -438,7 +443,9 @@ export default class SettingTable extends React.Component {
|
|
|
438
443
|
return item;
|
|
439
444
|
})), /*#__PURE__*/React.createElement(ModalForm, {
|
|
440
445
|
ref: this.modalRef
|
|
446
|
+
}), /*#__PURE__*/React.createElement(ModalChart, {
|
|
447
|
+
ref: this.chartRef
|
|
441
448
|
}));
|
|
442
449
|
}
|
|
443
450
|
}
|
|
444
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlUGFnZSIsIlNwaW4iLCJSZWFjdCIsIk5zY1JlcXVlc3QiLCJjbHMiLCJkZWZhdWx0Q29tRnVuY3MiLCJkZWZhdWx0VXRpbCIsIk1vZGFsRm9ybSIsInJlbmRlclNlbGZDb2x1bW5CdXR0b24iLCJyZW5kZXJTZWxmVG9vbEJ1dHRvbiIsIk1vZGFsTWFuYWdlciIsImRlZXBNZXJnZSIsImdldFBhZ2VEYXRhIiwicGFyYW1zIiwiZ2V0IiwieHNzRmlsdGVyIiwiYXV0b1ByZWZpeCIsInNldEZpZWxkRGlzYWJsZWQiLCJkYXRhIiwia2V5IiwiZGlzYWJsZWQiLCJjb2x1bW5zIiwibmV3Q29sdW1ucyIsIm1hcCIsIml0ZW0iLCJvYmoiLCJfb2JqZWN0U3ByZWFkIiwiZGF0YUluZGV4IiwiaW5kZXhPZiIsInByb3BzIiwicHVzaCIsInNldEZpZWxkVmlzaWJsZSIsInZpc2libGUiLCJlZGl0b3IiLCJzZXRGaWVsZFByb3BzRGF0YSIsInByb3BzRGF0YSIsImRlZmF1bHRTdGF0ZVZhbHVlIiwicGFnZVByb3BzIiwidHJlZVByb3BzIiwic3RvcmUiLCJ1cmwiLCJhdXRvTG9hZCIsInRhYmxlUHJvcHMiLCJzZWxmVG9vbEJ1dHRvbiIsInNlbGZDb2x1bW5CdXR0b24iLCJzZWxmRm9ybUJ1dHRvbiIsInBhZ2VMb2FkaW5nIiwiZGVmYXVsdENvbHVtbnMiLCJvdGhlclByb3BzIiwiYnV0dG9uTG9hZGluZyIsImZvcm1QYWdlUHJvcHMiLCJTZXR0aW5nVGFibGUiLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsImNyZWF0ZVJlZiIsInJlcyIsInN0YXRlIiwic2hvd1NlYXJjaCIsImRlZmF1bHRTZWFyY2giLCJ0YWJsZURhdGFSZXNvdXJjZSIsImZ1bmMiLCJGdW5jdGlvbiIsInBhZ2VSZWYiLCJzZXRUaW1lb3V0IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50MiIsImN1cnJlbnQiLCJ0YWJsZUxvYWQiLCJzZXRTZWFyY2hQYXJhbXMiLCJjb21wb25lbnREaWRNb3VudCIsImdldERhdGEiLCJyZWdpc3RlciIsIm1vZGFsUmVmIiwiY29tcG9uZW50RGlkVXBkYXRlIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic25hcHNob3QiLCJ0YWJsZUNvZGUiLCJzZXRTdGF0ZSIsInB1Ymxpc2hlZCIsIm1lbnVDb2RlIiwidGFiUGFyYW1zIiwiY29kZSIsImlzUHVibGlzaGVkIiwidGhlbiIsIl9wYWdlX3Byb3BzJHBlcm1pc3NpbyIsInRhYmxlX3Byb3BzIiwiSlNPTiIsInBhcnNlIiwidHJlZV9wcm9wcyIsInBhZ2VfcHJvcHMiLCJvdGhlcl9wcm9wcyIsIm90aGVyUGFyYW1zIiwiZm9ybV9wcm9wcyIsImZvcm1Qcm9wcyIsInBlcm1pc3Npb24iLCJoYXMiLCJVdGlscyIsInBhcmFtRnVuYyIsImNvbnZlclRhYlBhcmFtcyIsInJlcXVlc3RQYXJhbXMiLCJuZXdSZXF1ZXN0UGFyYW1zIiwicXVlcnlQYXJhbXMiLCJhZGRQYXJhbXMiLCJlZGl0b3JQYXJhbXMiLCJjb252ZXJQYXJhbXMiLCJvdGhlciIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsIm5ld1BhcmFtcyIsImNvbHVtbkJ1dHRvbnMiLCJ0b29sQnV0dG9ucyIsInNlbGZCdXR0b24iLCJfbWVzc2FnZSIsImVycm9yIiwiZ2V0U2VhcmNoVmFsdWVzIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50MyIsInZhbHVlIiwiY2FsbEJhY2siLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ0IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50NSIsInJlcXVlc3RDb25maWciLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJ0YWJsZVJlbG9hZCIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDYiLCJnZXRTZWxlY3RlZFJvd0tleXMiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ3IiwiZ2V0U2VsZWN0ZWRSb3dEYXRhcyIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDgiLCJyZXNldFNlbGVjdGVkUm93S2V5cyIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDkiLCJyZW5kZXIiLCJjbGFzc05hbWUiLCJmdW5jcyIsImJhc2VQcm9wcyIsInNldHRpbmdUcmVlUHJvcHMiLCJzZXR0aW5nVGFibGVQcm9wcyIsIl9leGNsdWRlZDIiLCJfdGhpcyIsImRlYXVsdEZ1bmNzIiwibmV3RGF0YSIsInNldEJ1dHRvbkxvYWRpbmciLCJsb2FkaW5nIiwib3BlbkZvcm1Nb2RhbCIsInNob3dNb2RhbCIsImNoaWxkcmVuIiwiY29kZVNlbGZCdXR0b25zIiwiY29kZWNvbHVtbkJ1dHRvbnMiLCJjb2RlRm9ybUJ1dHRvbnMiLCJBcnJheSIsImlzQXJyYXkiLCJjaGlsZCIsIl9jaGlsZCRwcm9wcyIsIl9jaGlsZCRwcm9wczIiLCJfY2hpbGQkcHJvcHMzIiwicGFnZVR5cGUiLCJfaXRlbSRwcm9wcyIsIl9pdGVtJHByb3BzMiIsIl9pdGVtJHByb3BzMyIsIm5ld1RhYmxlUHJvcHMiLCJuZXdUcmVlUHJvcHMiLCJjcmVhdGVFbGVtZW50Iiwic3R5bGUiLCJ3aWR0aCIsImhlaWdodCIsInNwaW5uaW5nIiwiX2V4dGVuZHMiLCJyZWYiLCJvbkhpZGVGb3JtIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50MTAiLCJoaWRlRm9ybSIsImluaXREYXRhIiwiZm9ybVR5cGUiLCJ0eXBlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFnZS9TZXR0aW5nVGFibGUvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlSW1wZXJhdGl2ZUhhbmRsZSwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEJhc2VQYWdlLCB7IE5TQ0Jhc2VCYWdlUHJvcHMgfSBmcm9tIFwiLi4vQmFzZVBhZ2VcIjtcclxuaW1wb3J0IFNwaW4gZnJvbSBcIi4uLy4uL2Jhc2Uvc3BpblwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgXCIuL2luZGV4Lmxlc3NcIjtcclxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgTnNjUmVxdWVzdCBmcm9tIFwibnNjLXJlcXVlc3RcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5pbXBvcnQgeyBtZXNzYWdlIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IHtcclxuICBkZWZhdWx0Q29tRnVuY3MsXHJcbiAgZGVmYXVsdFV0aWwsXHJcbiAgTW9kYWxGb3JtLFxyXG4gIHJlbmRlclNlbGZDb2x1bW5CdXR0b24sXHJcbiAgcmVuZGVyU2VsZlRvb2xCdXR0b24sXHJcbiAgTW9kYWxNYW5hZ2VyLFxyXG4gIE9wZW5QYXJtcyxcclxufSBmcm9tIFwiLi4vU2V0dGluZ1V0aWwvdXRpbHNcIjtcclxuaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcblxyXG5jb25zdCBnZXRQYWdlRGF0YSA9IChwYXJhbXM6IGFueSkgPT4ge1xyXG4gIHJldHVybiBOc2NSZXF1ZXN0LmdldChgL2pxdWljay1zZXR0aW5nL3NldHRpbmcvdGFibGUvaW5mby9gLCB7XHJcbiAgICBwYXJhbXMsXHJcbiAgICB4c3NGaWx0ZXI6IGZhbHNlLFxyXG4gICAgYXV0b1ByZWZpeDogdHJ1ZSxcclxuICB9KTtcclxufTtcclxuXHJcbi8v6K6+572u6KGo5Y2V5a2X5q615Y+q6K+7XHJcbmNvbnN0IHNldEZpZWxkRGlzYWJsZWQgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBkaXNhYmxlZCkgPT4ge1xyXG4gIGNvbnN0IGNvbHVtbnMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0NvbHVtbnMgPSBbXSBhcyBhbnk7XHJcbiAgY29sdW1ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkgfHwga2V5LmluZGV4T2YoaXRlbS5kYXRhSW5kZXgpID4gLTEpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0NvbHVtbnMucHVzaChvYmopO1xyXG4gIH0pO1xyXG4gIHJldHVybiBuZXdDb2x1bW5zO1xyXG59O1xyXG4vL+iuvue9ruihqOWNleWtl+autemakOiXj1xyXG5jb25zdCBzZXRGaWVsZFZpc2libGUgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCB2aXNpYmxlKSA9PiB7XHJcbiAgY29uc3QgY29sdW1ucyA9IFsuLi5kYXRhXTtcclxuICBsZXQgbmV3Q29sdW1ucyA9IFtdIGFzIGFueTtcclxuICBjb2x1bW5zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0uZGF0YUluZGV4ID09IGtleSB8fCBrZXkuaW5kZXhPZihpdGVtLmRhdGFJbmRleCkgPiAtMSkge1xyXG4gICAgICBvYmouZWRpdG9yID0gdmlzaWJsZTtcclxuICAgIH1cclxuICAgIG5ld0NvbHVtbnMucHVzaChvYmopO1xyXG4gIH0pO1xyXG4gIHJldHVybiBuZXdDb2x1bW5zO1xyXG59O1xyXG5cclxuY29uc3Qgc2V0RmllbGRQcm9wc0RhdGEgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBwcm9wc0RhdGEpID0+IHtcclxuICBjb25zdCBjb2x1bW5zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdDb2x1bW5zID0gW10gYXMgYW55O1xyXG4gIGNvbHVtbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5kYXRhSW5kZXggPT0ga2V5KSB7XHJcbiAgICAgIGxldCBwcm9wcyA9IG9iai5wcm9wcyA/IHsgLi4ub2JqLnByb3BzIH0gOiB7fTtcclxuICAgICAgcHJvcHMuZGF0YSA9IHByb3BzRGF0YTtcclxuICAgICAgb2JqLnByb3BzID0gcHJvcHM7XHJcbiAgICB9XHJcbiAgICBuZXdDb2x1bW5zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Q29sdW1ucztcclxufTtcclxuaW50ZXJmYWNlIElQcm9wcyB7XHJcbiAgdGFibGVDb2RlOiBzdHJpbmc7XHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIG1lbnVDb2RlPzogc3RyaW5nO1xyXG4gIGZ1bmNzPzogYW55O1xyXG4gIHB1Ymxpc2hlZD86IGJvb2xlYW47XHJcbiAgaW5zdGFuY2VSZWY/OiBhbnk7XHJcbiAgdGFiUGFyYW1zPzogYW55O1xyXG4gIG9uQ2FsbEJhY2tzPzoge1xyXG4gICAgdHJlZVNlbGVjdENhbGxCYWNrPzogYW55OyAvL+agkeeCueWHu+afpeivouWQjuWbnuiwg1xyXG4gICAgb25RdWVyeUNhbGxCYWNrPzogYW55OyAvL+afpeivouWbnuiwg++8jOafpeivouaVsOaNruWQjuWbnuiwg1xyXG4gICAgb25TdW1iaXRDYWxsQmFjaz86IGFueTsgLy/kv53lrZjlm57osIPvvIzkv53lrZjmlbDmja7miJDlip/lkI7lm57osINcclxuICAgIG9uRGVsZXRlQ2FsbEJhY2s/OiBhbnk7IC8v5Yig6Zmk5oyJ6ZKu5Zue6LCD77yM5Yig6Zmk5pWw5o2u5ZCO5omn6KGMXHJcbiAgICBvbkVkaXRvckNhbGxCYWNrPzogYW55OyAvL+e8lui+keaMiemSruWbnuiwg++8jOaJk+W8gOW8ueahhuWQjuaJp+ihjFxyXG4gICAgb25BZGRDYWxsQmFjaz86IGFueTsgLy/mt7vliqDmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICAgIG9uU2VhcmNoQ2FsbEJhY2s/OiBhbnk7IC8v5YiX6KGo5p+l6K+i5oyJ6ZKu5Zue6LCD77yM5omT5byA5by55qGG5ZCO5omn6KGMXHJcbiAgfTtcclxuICBiYXNlUHJvcHM/OiBOU0NCYXNlQmFnZVByb3BzO1xyXG4gIGF1dG9Mb2FkPzogYm9vbGVhbjtcclxufVxyXG5cclxuY29uc3QgZGVmYXVsdFN0YXRlVmFsdWUgPSB7XHJcbiAgcGFnZVByb3BzOiB7fSBhcyBhbnksXHJcbiAgdHJlZVByb3BzOiB7IHN0b3JlOiB7IHVybDogXCJcIiwgYXV0b0xvYWQ6IGZhbHNlIH0gfSBhcyBhbnksXHJcbiAgdGFibGVQcm9wczoge30gYXMgYW55LFxyXG4gIHNlbGZUb29sQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgc2VsZkNvbHVtbkJ1dHRvbjogW10gYXMgYW55LFxyXG4gIHNlbGZGb3JtQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgcGFnZUxvYWRpbmc6IHRydWUsXHJcbiAgZGVmYXVsdENvbHVtbnM6IFtdIGFzIGFueSxcclxuICBvdGhlclByb3BzOiB7fSBhcyBhbnksXHJcbiAgYnV0dG9uTG9hZGluZzoge30gYXMgYW55LFxyXG4gIGZvcm1QYWdlUHJvcHM6IHt9IGFzIGFueSxcclxufTtcclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2V0dGluZ1RhYmxlIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PElQcm9wcywgYW55PiB7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICAuLi5kZWZhdWx0U3RhdGVWYWx1ZSxcclxuICB9O1xyXG4gIHBhZ2VSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIG1vZGFsUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICAgIE1vZGFsTWFuYWdlci5yZWdpc3Rlcih0aGlzLm1vZGFsUmVmKTtcclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShcclxuICAgIHByZXZQcm9wczogUmVhZG9ubHk8SVByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8YW55PixcclxuICAgIHNuYXBzaG90PzogYW55XHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAocHJldlByb3BzLnRhYmxlQ29kZSAhPSB0aGlzLnByb3BzLnRhYmxlQ29kZSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIC4uLmRlZmF1bHRTdGF0ZVZhbHVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5nZXREYXRhKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5pdERhdGEgPSAocmVzOiBhbnkpID0+IHtcclxuICAgIGNvbnN0IHsgb3RoZXJQcm9wcywgcGFnZVByb3BzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKFxyXG4gICAgICBwYWdlUHJvcHMuc2hvd1NlYXJjaCAhPT0gZmFsc2UgJiZcclxuICAgICAgb3RoZXJQcm9wcy5kZWZhdWx0U2VhcmNoICYmXHJcbiAgICAgIG90aGVyUHJvcHMudGFibGVEYXRhUmVzb3VyY2UgPT0gXCJ1cmxcIlxyXG4gICAgKSB7XHJcbiAgICAgIGxldCBmdW5jID0gbmV3IEZ1bmN0aW9uKFwiVXRpbHMsZXZlbnRPcHRpb25cIiwgb3RoZXJQcm9wcy5kZWZhdWx0U2VhcmNoKTtcclxuICAgICAgY29uc3QgcGFyYW1zID0gZnVuYyhkZWZhdWx0VXRpbCwgeyBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYgfSk7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py50YWJsZUxvYWQoeyAuLi5wYXJhbXMgfSk7XHJcbiAgICAgICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnNldFNlYXJjaFBhcmFtcyh7IC4uLnBhcmFtcyB9KTtcclxuICAgICAgfSwgNTApOyAvL+ebtOaOpeiuvue9ru+8jHBhZ2VSZWbmsqHnu5HlrprvvIzmmoLml7bpgJrov4flu7bov5/lh73mlbDov5vooYzop6PlhrNcclxuICAgIH1cclxuICB9O1xyXG4gIC8vIOiOt+WPluaVsOaNrlxyXG4gIGdldERhdGEoKSB7XHJcbiAgICAvLyDku45wcm9wc+S4reiOt+WPlnRhYmxlQ29kZeOAgXB1Ymxpc2hlZOOAgW1lbnVDb2RlXHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgcGFnZUxvYWRpbmc6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHsgdGFibGVDb2RlLCBwdWJsaXNoZWQgPSB0cnVlLCBtZW51Q29kZSwgdGFiUGFyYW1zIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgLy8g5aaC5p6cdGFibGVDb2Rl5a2Y5ZyoXHJcbiAgICBpZiAodGFibGVDb2RlKSB7XHJcbiAgICAgIC8vIOWumuS5ieWPguaVsFxyXG4gICAgICBsZXQgcGFyYW1zID0geyBjb2RlOiB0YWJsZUNvZGUgfSBhcyBhbnk7XHJcbiAgICAgIC8vIOWmguaenHB1Ymxpc2hlZOS4unRydWVcclxuICAgICAgaWYgKHB1Ymxpc2hlZCkge1xyXG4gICAgICAgIC8vIOiuvue9ruWPguaVsGlzUHVibGlzaGVk5Li6MVxyXG4gICAgICAgIHBhcmFtcy5pc1B1Ymxpc2hlZCA9IDE7XHJcbiAgICAgIH1cclxuICAgICAgLy8g6LCD55SoZ2V0UGFnZURhdGHmlrnms5Xojrflj5bmlbDmja5cclxuICAgICAgZ2V0UGFnZURhdGEoeyAuLi5wYXJhbXMgfSkudGhlbigocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhKSB7XHJcbiAgICAgICAgICBsZXQgdGFibGVfcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnRhYmxlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCB0cmVlX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS50cmVlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCBwYWdlX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS5wYWdlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCBvdGhlcl9wcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEub3RoZXJQYXJhbXMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCBmb3JtX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS5mb3JtUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGlmIChwYWdlX3Byb3BzLnBlcm1pc3Npb24/LmhhcyA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIHBhZ2VfcHJvcHMucGVybWlzc2lvbi5tZW51Q29kZSA9IG1lbnVDb2RlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHB1Ymxpc2hlZCA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICBwYWdlX3Byb3BzLnBlcm1pc3Npb24gPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgKHBhZ2VfcHJvcHMuc2hvd1NlYXJjaCAhPT0gZmFsc2UgJiZcclxuICAgICAgICAgICAgICBvdGhlcl9wcm9wcy5kZWZhdWx0U2VhcmNoICYmXHJcbiAgICAgICAgICAgICAgb3RoZXJfcHJvcHM/LnRhYmxlRGF0YVJlc291cmNlID09IFwidXJsXCIpIHx8XHJcbiAgICAgICAgICAgIHRoaXMucHJvcHMuYXV0b0xvYWQgPT09IGZhbHNlXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgdGFibGVfcHJvcHMuc3RvcmUuYXV0b0xvYWQgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0YWJQYXJhbXMpIHtcclxuICAgICAgICAgICAgY29uc3QgVXRpbHMgPSBkZWZhdWx0VXRpbCB8fCB7fTtcclxuICAgICAgICAgICAgbGV0IHBhcmFtRnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzXCIsIHRhYlBhcmFtcyk7XHJcbiAgICAgICAgICAgIGxldCBjb252ZXJUYWJQYXJhbXMgPSBwYXJhbUZ1bmMoVXRpbHMpO1xyXG4gICAgICAgICAgICBpZiAocGFnZV9wcm9wcy5yZXF1ZXN0UGFyYW1zKSB7XHJcbiAgICAgICAgICAgICAgbGV0IHsgcmVxdWVzdFBhcmFtcyA9IHt9IH0gPSBwYWdlX3Byb3BzO1xyXG4gICAgICAgICAgICAgIGxldCBuZXdSZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgICBhZGRQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgICBlZGl0b3JQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gbmV3UmVxdWVzdFBhcmFtcykge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlcXVlc3RQYXJhbXNba2V5XSkge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgZnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzXCIsIHJlcXVlc3RQYXJhbXNba2V5XSk7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBjb252ZXJQYXJhbXMgPSBmdW5jKFV0aWxzKTtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhLCAuLi5vdGhlciB9ID0gY29udmVyUGFyYW1zO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgbmV3UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zLCAuLi5kYXRhIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgLi4ub3RoZXIsXHJcbiAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgIG5ld1JlcXVlc3RQYXJhbXNba2V5XSA9IG5ld1BhcmFtcztcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIG5ld1JlcXVlc3RQYXJhbXNba2V5XSA9IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBwYWdlX3Byb3BzLnJlcXVlc3RQYXJhbXMgPSB7IC4uLm5ld1JlcXVlc3RQYXJhbXMgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBwYWdlX3Byb3BzLnJlcXVlc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogeyBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcyB9IH0sXHJcbiAgICAgICAgICAgICAgICBhZGRQYXJhbXM6IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9LFxyXG4gICAgICAgICAgICAgICAgZWRpdG9yUGFyYW1zOiB7IGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zIH0gfSxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgcGFnZVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAuLi5wYWdlX3Byb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgdHJlZVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50cmVlX3Byb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgdGFibGVQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgLi4udGFibGVfcHJvcHMsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBvdGhlclByb3BzOiB7IC4uLm90aGVyX3Byb3BzIH0sXHJcbiAgICAgICAgICAgICAgc2VsZkNvbHVtbkJ1dHRvbjogSlNPTi5wYXJzZShyZXMuZGF0YS5jb2x1bW5CdXR0b25zKSB8fCBbXSxcclxuICAgICAgICAgICAgICBzZWxmVG9vbEJ1dHRvbjogSlNPTi5wYXJzZShyZXMuZGF0YS50b29sQnV0dG9ucykgfHwgW10sXHJcbiAgICAgICAgICAgICAgZGVmYXVsdENvbHVtbnM6IHBhZ2VfcHJvcHMuY29sdW1ucyxcclxuICAgICAgICAgICAgICBmb3JtUGFnZVByb3BzOiBmb3JtX3Byb3BzLFxyXG4gICAgICAgICAgICAgIHNlbGZGb3JtQnV0dG9uOiBmb3JtX3Byb3BzPy5zZWxmQnV0dG9uIHx8IFtdLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChyZXMuY29kZSA9PSAyMDAgJiYgcmVzLmRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgICAgbWVzc2FnZS5lcnJvcihcIuacquaJvuWIsOmFjee9ruS/oeaBr++8gVwiKTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBvblNlYXJjaCgpIHt9XHJcbiAgZ2V0U2VhcmNoVmFsdWVzKCkge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnBhZ2VSZWYuY3VycmVudD8uZ2V0U2VhcmNoVmFsdWVzKCk7XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG4gIHNldFNlYXJjaFBhcmFtcyhwYXJhbXMsIGNhbGxCYWNrKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uc2V0U2VhcmNoUGFyYW1zKHBhcmFtcyk7XHJcbiAgfVxyXG4gIHRhYmxlTG9hZChwYXJhbXM6IGFueSwgcmVxdWVzdENvbmZpZyA9IHt9KSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8udGFibGVMb2FkKHBhcmFtcywgcmVxdWVzdENvbmZpZyk7XHJcbiAgfVxyXG4gIHRhYmxlUmVsb2FkKHBhcmFtcyA9IHt9LCBhdXRvTG9hZCA9IHRydWUpIHtcclxuICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py50YWJsZVJlbG9hZChwYXJhbXMsIGF1dG9Mb2FkKTtcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRSb3dLZXlzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucGFnZVJlZi5jdXJyZW50Py5nZXRTZWxlY3RlZFJvd0tleXMoKTtcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRSb3dEYXRhcygpIHtcclxuICAgIHJldHVybiB0aGlzLnBhZ2VSZWYuY3VycmVudD8uZ2V0U2VsZWN0ZWRSb3dEYXRhcygpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRTZWxlY3RlZFJvd0tleXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnJlc2V0U2VsZWN0ZWRSb3dLZXlzKCk7XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICBmdW5jcyA9IHt9LFxyXG4gICAgICBiYXNlUHJvcHMgPSB7fSBhcyBOU0NCYXNlQmFnZVByb3BzLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHBhZ2VQcm9wcyxcclxuICAgICAgdHJlZVByb3BzLFxyXG4gICAgICB0YWJsZVByb3BzLFxyXG4gICAgICBzZWxmVG9vbEJ1dHRvbixcclxuICAgICAgc2VsZkNvbHVtbkJ1dHRvbixcclxuICAgICAgcGFnZUxvYWRpbmcsXHJcbiAgICAgIGRlZmF1bHRDb2x1bW5zLFxyXG4gICAgICBidXR0b25Mb2FkaW5nID0ge30sXHJcbiAgICAgIGZvcm1QYWdlUHJvcHMgPSB7fSxcclxuICAgICAgc2VsZkZvcm1CdXR0b24sXHJcbiAgICB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgdHJlZVByb3BzOiBzZXR0aW5nVHJlZVByb3BzID0ge30sXHJcbiAgICAgIHRhYmxlUHJvcHM6IHNldHRpbmdUYWJsZVByb3BzID0ge30sXHJcbiAgICAgIC4uLm90aGVyUHJvcHNcclxuICAgIH0gPSBiYXNlUHJvcHM7XHJcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgY29uc3QgZGVhdWx0RnVuY3MgPSB7XHJcbiAgICAgIHNldEZpZWxkRGlzYWJsZWQ6IChrZXksIGRpc2FibGVkKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YSA9IHNldEZpZWxkRGlzYWJsZWQocGFnZVByb3BzLmNvbHVtbnMsIGtleSwgZGlzYWJsZWQpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgcGFnZVByb3BzOiB7IC4uLnBhZ2VQcm9wcywgY29sdW1uczogbmV3RGF0YSB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRGaWVsZFZpc2libGU6IChrZXksIGRpc2FibGVkKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YSA9IHNldEZpZWxkVmlzaWJsZShwYWdlUHJvcHMuY29sdW1ucywga2V5LCBkaXNhYmxlZCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkUHJvcHNEYXRhOiAoa2V5LCBkYXRhKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3RGF0YSA9IHNldEZpZWxkUHJvcHNEYXRhKHBhZ2VQcm9wcy5jb2x1bW5zLCBrZXksIGRhdGEpO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgcGFnZVByb3BzOiB7IC4uLnBhZ2VQcm9wcywgY29sdW1uczogbmV3RGF0YSB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICAvLyBoaXN0b3J5OiAocGFyYW1zLCB0eXBlKSA9PiB7XHJcbiAgICAgIC8vICAganVtcFBhZ2UocGFyYW1zLCB0eXBlKTtcclxuICAgICAgLy8gfSxcclxuICAgICAgc2V0QnV0dG9uTG9hZGluZzogKGNvZGUsIGxvYWRpbmcpID0+IHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBidXR0b25Mb2FkaW5nOiB7IC4uLmJ1dHRvbkxvYWRpbmcsIFtjb2RlXTogbG9hZGluZyB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgICAuLi5kZWZhdWx0Q29tRnVuY3MsXHJcbiAgICAgIG9wZW5Gb3JtTW9kYWw6IChwYXJhbXM6IE9wZW5QYXJtcykgPT4ge1xyXG4gICAgICAgIE1vZGFsTWFuYWdlci5zaG93TW9kYWwocGFyYW1zKTtcclxuICAgICAgfSxcclxuICAgICAgLy8gZ2V0Q3VycmVudFByb2plY3Q6ICgpID0+IHtcclxuICAgICAgLy8gICByZXR1cm4gZ2V0UHJvamVjdCgpO1xyXG4gICAgICAvLyB9LFxyXG4gICAgfTtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgY29kZVNlbGZCdXR0b25zID0gW107XHJcbiAgICBsZXQgY29kZWNvbHVtbkJ1dHRvbnMgPSBbXTtcclxuICAgIGxldCBjb2RlRm9ybUJ1dHRvbnMgPSBbXTtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjaGlsZHJlbi5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW0pKSB7XHJcbiAgICAgICAgICBpdGVtLm1hcCgoY2hpbGQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGNoaWxkPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgICBjb2RlU2VsZkJ1dHRvbnMucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGQ/LnByb3BzPy5wYWdlVHlwZSA9PSBcImNvbHVtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgICAgY29kZWNvbHVtbkJ1dHRvbnMucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGQ/LnByb3BzPy5wYWdlVHlwZSA9PSBcImZvcm1CdXR0b25cIikge1xyXG4gICAgICAgICAgICAgIGNvZGVGb3JtQnV0dG9ucy5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgY29kZVNlbGZCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGl0ZW0/LnByb3BzPy5wYWdlVHlwZSA9PSBcImNvbHVtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgIGNvZGVjb2x1bW5CdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGl0ZW0/LnByb3BzPy5wYWdlVHlwZSA9PSBcImZvcm1CdXR0b25cIikge1xyXG4gICAgICAgICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICBjb25zdCB7IHByb3BzIH06IGFueSA9IGNoaWxkcmVuO1xyXG4gICAgICBpZiAocHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgY29kZVNlbGZCdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9IGVsc2UgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcImNvbHVtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgY29kZWNvbHVtbkJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICAgIH0gZWxzZSBpZiAocHJvcHM/LnBhZ2VUeXBlID09IFwiZm9ybUJ1dHRvblwiKSB7XHJcbiAgICAgICAgY29kZUZvcm1CdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBsZXQgbmV3VGFibGVQcm9wcyA9IGRlZXBNZXJnZSh7IC4uLnRhYmxlUHJvcHMgfSwgeyAuLi5zZXR0aW5nVGFibGVQcm9wcyB9KTtcclxuICAgIGxldCBuZXdUcmVlUHJvcHMgPSBkZWVwTWVyZ2UoeyAuLi50cmVlUHJvcHMgfSwgeyAuLi5zZXR0aW5nVHJlZVByb3BzIH0pO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhcIm5zYy1mcmFtZXdvcmstdGFibGVwYWdlXCIsIGNsYXNzTmFtZSl9PlxyXG4gICAgICAgIHtwYWdlTG9hZGluZyA/IChcclxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sgd2lkdGg6IFwiMTAwJVwiLCBoZWlnaHQ6IFwiMTAwJVwiIH19PlxyXG4gICAgICAgICAgICA8U3BpbiBzcGlubmluZz17cGFnZUxvYWRpbmd9PjwvU3Bpbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICkgOiAoXHJcbiAgICAgICAgICA8QmFzZVBhZ2VcclxuICAgICAgICAgICAgey4uLnBhZ2VQcm9wc31cclxuICAgICAgICAgICAgdHJlZVByb3BzPXt7IC4uLm5ld1RyZWVQcm9wcyB9fVxyXG4gICAgICAgICAgICB0YWJsZVByb3BzPXt7IC4uLm5ld1RhYmxlUHJvcHMgfX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXt7fX1cclxuICAgICAgICAgICAgVXRpbHM9e3sgLi4uZGVmYXVsdFV0aWwgfX1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICAgIHBhZ2VSZWY9e3RoaXMucGFnZVJlZn1cclxuICAgICAgICAgICAgb25IaWRlRm9ybT17KCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgcGFnZVByb3BzOiB7IC4uLnBhZ2VQcm9wcywgY29sdW1uczogZGVmYXVsdENvbHVtbnMgfSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgZnVuY3M9e3sgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH19XHJcbiAgICAgICAgICAgIGluaXREYXRhPXt0aGlzLmluaXREYXRhfVxyXG4gICAgICAgICAgICBmb3JtUGFnZVByb3BzPXt7XHJcbiAgICAgICAgICAgICAgZm9ybVR5cGU6IGZvcm1QYWdlUHJvcHMuZm9ybVR5cGUgfHwgXCJtb2RhbFwiLFxyXG4gICAgICAgICAgICAgIHByb3BzOiBmb3JtUGFnZVByb3BzPy5wcm9wcyxcclxuICAgICAgICAgICAgICAuLi5mb3JtUGFnZVByb3BzPy5vdGhlclByb3BzLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICB0YWJsZUNvZGU9e3RoaXMucHJvcHMudGFibGVDb2RlfVxyXG4gICAgICAgICAgICB7Li4ub3RoZXJQcm9wc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3JlbmRlclNlbGZUb29sQnV0dG9uKHtcclxuICAgICAgICAgICAgICBzZWxmQnV0dG9uOiBzZWxmVG9vbEJ1dHRvbixcclxuICAgICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgICAgZnVuY3M6IHsgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH0sXHJcbiAgICAgICAgICAgICAgbG9hZGluZzogdGhpcy5zdGF0ZS5idXR0b25Mb2FkaW5nLFxyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAge2NvZGVTZWxmQnV0dG9ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtyZW5kZXJTZWxmQ29sdW1uQnV0dG9uKHtcclxuICAgICAgICAgICAgICBzZWxmQ29sdW1uQnV0dG9uLFxyXG4gICAgICAgICAgICAgIHBhZ2VSZWY6IHRoaXMucGFnZVJlZixcclxuICAgICAgICAgICAgICBmdW5jczogeyAuLi5kZWF1bHRGdW5jcywgLi4uZnVuY3MgfSxcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtjb2RlY29sdW1uQnV0dG9ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtyZW5kZXJTZWxmVG9vbEJ1dHRvbih7XHJcbiAgICAgICAgICAgICAgc2VsZkJ1dHRvbjogc2VsZkZvcm1CdXR0b24sXHJcbiAgICAgICAgICAgICAgcGFnZVJlZjogdGhpcy5wYWdlUmVmLFxyXG4gICAgICAgICAgICAgIGZ1bmNzOiB7IC4uLmRlYXVsdEZ1bmNzLCAuLi5mdW5jcyB9LFxyXG4gICAgICAgICAgICAgIGxvYWRpbmc6IHRoaXMuc3RhdGUuYnV0dG9uTG9hZGluZyxcclxuICAgICAgICAgICAgICB0eXBlOiBcImZvcm1CdXR0b25cIixcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtjb2RlRm9ybUJ1dHRvbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgPC9CYXNlUGFnZT5cclxuICAgICAgICApfVxyXG4gICAgICAgIDxNb2RhbEZvcm0gcmVmPXt0aGlzLm1vZGFsUmVmfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQSxPQUFPQSxRQUFRLE1BQTRCLGFBQWE7QUFDeEQsT0FBT0MsSUFBSSxNQUFNLGlCQUFpQjtBQUVsQyxPQUFPLGNBQWM7QUFDckIsT0FBT0MsS0FBSyxNQUFNLE9BQU87QUFDekIsT0FBT0MsVUFBVSxNQUFNLGFBQWE7QUFDcEMsT0FBT0MsR0FBRyxNQUFNLFlBQVk7QUFFNUIsU0FDRUMsZUFBZSxFQUNmQyxXQUFXLEVBQ1hDLFNBQVMsRUFDVEMsc0JBQXNCLEVBQ3RCQyxvQkFBb0IsRUFDcEJDLFlBQVksUUFFUCxzQkFBc0I7QUFDN0IsU0FBU0MsU0FBUyxRQUFRLGFBQWE7QUFFdkMsTUFBTUMsV0FBVyxHQUFJQyxNQUFXLElBQUs7RUFDbkMsT0FBT1YsVUFBVSxDQUFDVyxHQUFHLHdDQUF3QztJQUMzREQsTUFBTTtJQUNORSxTQUFTLEVBQUUsS0FBSztJQUNoQkMsVUFBVSxFQUFFO0VBQ2QsQ0FBQyxDQUFDO0FBQ0osQ0FBQzs7QUFFRDtBQUNBLE1BQU1DLGdCQUFnQixHQUFHQSxDQUFDQyxJQUFnQixFQUFFQyxHQUFHLEVBQUVDLFFBQVEsS0FBSztFQUM1RCxNQUFNQyxPQUFPLEdBQUcsQ0FBQyxHQUFHSCxJQUFJLENBQUM7RUFDekIsSUFBSUksVUFBVSxHQUFHLEVBQVM7RUFDMUJELE9BQU8sQ0FBQ0UsR0FBRyxDQUFFQyxJQUFJLElBQUs7SUFDcEIsSUFBSUMsR0FBRyxHQUFBQyxhQUFBLEtBQVFGLElBQUksQ0FBRTtJQUNyQixJQUFJQSxJQUFJLENBQUNHLFNBQVMsSUFBSVIsR0FBRyxJQUFJQSxHQUFHLENBQUNTLE9BQU8sQ0FBQ0osSUFBSSxDQUFDRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtNQUM3RCxJQUFJRSxLQUFLLEdBQUdKLEdBQUcs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
|
|
451
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlUGFnZSIsIlNwaW4iLCJSZWFjdCIsIk5zY1JlcXVlc3QiLCJjbHMiLCJkZWZhdWx0Q29tRnVuY3MiLCJkZWZhdWx0VXRpbCIsIk1vZGFsRm9ybSIsInJlbmRlclNlbGZDb2x1bW5CdXR0b24iLCJyZW5kZXJTZWxmVG9vbEJ1dHRvbiIsIk1vZGFsTWFuYWdlciIsIk1vZGFsQ2hhcnQiLCJkZWVwTWVyZ2UiLCJnZXRQYWdlRGF0YSIsInBhcmFtcyIsImdldCIsInhzc0ZpbHRlciIsImF1dG9QcmVmaXgiLCJzZXRGaWVsZERpc2FibGVkIiwiZGF0YSIsImtleSIsImRpc2FibGVkIiwiY29sdW1ucyIsIm5ld0NvbHVtbnMiLCJtYXAiLCJpdGVtIiwib2JqIiwiX29iamVjdFNwcmVhZCIsImRhdGFJbmRleCIsImluZGV4T2YiLCJwcm9wcyIsInB1c2giLCJzZXRGaWVsZFZpc2libGUiLCJ2aXNpYmxlIiwiZWRpdG9yIiwic2V0RmllbGRQcm9wc0RhdGEiLCJwcm9wc0RhdGEiLCJkZWZhdWx0U3RhdGVWYWx1ZSIsInBhZ2VQcm9wcyIsInRyZWVQcm9wcyIsInN0b3JlIiwidXJsIiwiYXV0b0xvYWQiLCJ0YWJsZVByb3BzIiwic2VsZlRvb2xCdXR0b24iLCJzZWxmQ29sdW1uQnV0dG9uIiwic2VsZkZvcm1CdXR0b24iLCJwYWdlTG9hZGluZyIsImRlZmF1bHRDb2x1bW5zIiwib3RoZXJQcm9wcyIsImJ1dHRvbkxvYWRpbmciLCJmb3JtUGFnZVByb3BzIiwiU2V0dGluZ1RhYmxlIiwiQ29tcG9uZW50IiwiY29uc3RydWN0b3IiLCJhcmd1bWVudHMiLCJfZGVmaW5lUHJvcGVydHkiLCJjcmVhdGVSZWYiLCJyZXMiLCJzdGF0ZSIsInNob3dTZWFyY2giLCJkZWZhdWx0U2VhcmNoIiwidGFibGVEYXRhUmVzb3VyY2UiLCJmdW5jIiwiRnVuY3Rpb24iLCJwYWdlUmVmIiwic2V0VGltZW91dCIsIl90aGlzJHBhZ2VSZWYkY3VycmVudCIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDIiLCJjdXJyZW50IiwidGFibGVMb2FkIiwic2V0U2VhcmNoUGFyYW1zIiwiY29tcG9uZW50RGlkTW91bnQiLCJnZXREYXRhIiwicmVnaXN0ZXIiLCJtb2RhbFJlZiIsImNoYXJ0UmVmIiwiY29tcG9uZW50RGlkVXBkYXRlIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic25hcHNob3QiLCJ0YWJsZUNvZGUiLCJzZXRTdGF0ZSIsInB1Ymxpc2hlZCIsIm1lbnVDb2RlIiwidGFiUGFyYW1zIiwiY29kZSIsImlzUHVibGlzaGVkIiwidGhlbiIsIl9wYWdlX3Byb3BzJHBlcm1pc3NpbyIsInRhYmxlX3Byb3BzIiwiSlNPTiIsInBhcnNlIiwidHJlZV9wcm9wcyIsInBhZ2VfcHJvcHMiLCJvdGhlcl9wcm9wcyIsIm90aGVyUGFyYW1zIiwiZm9ybV9wcm9wcyIsImZvcm1Qcm9wcyIsInBlcm1pc3Npb24iLCJoYXMiLCJVdGlscyIsInBhcmFtRnVuYyIsImNvbnZlclRhYlBhcmFtcyIsInJlcXVlc3RQYXJhbXMiLCJuZXdSZXF1ZXN0UGFyYW1zIiwicXVlcnlQYXJhbXMiLCJhZGRQYXJhbXMiLCJlZGl0b3JQYXJhbXMiLCJjb252ZXJQYXJhbXMiLCJvdGhlciIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsIm5ld1BhcmFtcyIsImNvbHVtbkJ1dHRvbnMiLCJ0b29sQnV0dG9ucyIsInNlbGZCdXR0b24iLCJfbWVzc2FnZSIsImVycm9yIiwiZ2V0U2VhcmNoVmFsdWVzIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50MyIsInZhbHVlIiwiY2FsbEJhY2siLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ0IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50NSIsInJlcXVlc3RDb25maWciLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJ0YWJsZVJlbG9hZCIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDYiLCJnZXRTZWxlY3RlZFJvd0tleXMiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ3IiwiZ2V0U2VsZWN0ZWRSb3dEYXRhcyIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDgiLCJyZXNldFNlbGVjdGVkUm93S2V5cyIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDkiLCJyZW5kZXIiLCJjbGFzc05hbWUiLCJmdW5jcyIsImJhc2VQcm9wcyIsInNldHRpbmdUcmVlUHJvcHMiLCJzZXR0aW5nVGFibGVQcm9wcyIsIl9leGNsdWRlZDIiLCJfdGhpcyIsImRlYXVsdEZ1bmNzIiwibmV3RGF0YSIsInNldEJ1dHRvbkxvYWRpbmciLCJsb2FkaW5nIiwib3BlbkZvcm1Nb2RhbCIsInNob3dNb2RhbCIsIm9wZW5DaGFydE1vZGFsIiwiY2hpbGRyZW4iLCJjb2RlU2VsZkJ1dHRvbnMiLCJjb2RlY29sdW1uQnV0dG9ucyIsImNvZGVGb3JtQnV0dG9ucyIsIkFycmF5IiwiaXNBcnJheSIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwiX2NoaWxkJHByb3BzMiIsIl9jaGlsZCRwcm9wczMiLCJwYWdlVHlwZSIsIl9pdGVtJHByb3BzIiwiX2l0ZW0kcHJvcHMyIiwiX2l0ZW0kcHJvcHMzIiwibmV3VGFibGVQcm9wcyIsIm5ld1RyZWVQcm9wcyIsImNyZWF0ZUVsZW1lbnQiLCJzdHlsZSIsIndpZHRoIiwiaGVpZ2h0Iiwic3Bpbm5pbmciLCJfZXh0ZW5kcyIsInJlZiIsIm9uSGlkZUZvcm0iLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQxMCIsImhpZGVGb3JtIiwiaW5pdERhdGEiLCJmb3JtVHlwZSIsInR5cGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL1NldHRpbmdUYWJsZS9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9yd2FyZFJlZiwgdXNlRWZmZWN0LCB1c2VJbXBlcmF0aXZlSGFuZGxlLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgQmFzZVBhZ2UsIHsgTlNDQmFzZUJhZ2VQcm9wcyB9IGZyb20gXCIuLi9CYXNlUGFnZVwiO1xyXG5pbXBvcnQgU3BpbiBmcm9tIFwiLi4vLi4vYmFzZS9zcGluXCI7XHJcbmltcG9ydCBCdXR0b24gZnJvbSBcIi4uLy4uL2Jhc2UvYnV0dG9uXCI7XHJcbmltcG9ydCBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBOc2NSZXF1ZXN0IGZyb20gXCJuc2MtcmVxdWVzdFwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCB7IG1lc3NhZ2UsIE1vZGFsIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IHtcclxuICBkZWZhdWx0Q29tRnVuY3MsXHJcbiAgZGVmYXVsdFV0aWwsXHJcbiAgTW9kYWxGb3JtLFxyXG4gIHJlbmRlclNlbGZDb2x1bW5CdXR0b24sXHJcbiAgcmVuZGVyU2VsZlRvb2xCdXR0b24sXHJcbiAgTW9kYWxNYW5hZ2VyLFxyXG4gIE9wZW5QYXJtcyxcclxuICBNb2RhbENoYXJ0LFxyXG4gIE9wZW5DaGFydFBhcm1zLFxyXG59IGZyb20gXCIuLi9TZXR0aW5nVXRpbC91dGlsc1wiO1xyXG5pbXBvcnQgeyBkZWVwTWVyZ2UgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuXHJcbmNvbnN0IGdldFBhZ2VEYXRhID0gKHBhcmFtczogYW55KSA9PiB7XHJcbiAgcmV0dXJuIE5zY1JlcXVlc3QuZ2V0KGAvanF1aWNrLXNldHRpbmcvc2V0dGluZy90YWJsZS9pbmZvL2AsIHtcclxuICAgIHBhcmFtcyxcclxuICAgIHhzc0ZpbHRlcjogZmFsc2UsXHJcbiAgICBhdXRvUHJlZml4OiB0cnVlLFxyXG4gIH0pO1xyXG59O1xyXG5cclxuLy/orr7nva7ooajljZXlrZfmrrXlj6ror7tcclxuY29uc3Qgc2V0RmllbGREaXNhYmxlZCA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIGRpc2FibGVkKSA9PiB7XHJcbiAgY29uc3QgY29sdW1ucyA9IFsuLi5kYXRhXTtcclxuICBsZXQgbmV3Q29sdW1ucyA9IFtdIGFzIGFueTtcclxuICBjb2x1bW5zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0uZGF0YUluZGV4ID09IGtleSB8fCBrZXkuaW5kZXhPZihpdGVtLmRhdGFJbmRleCkgPiAtMSkge1xyXG4gICAgICBsZXQgcHJvcHMgPSBvYmoucHJvcHMgPyB7IC4uLm9iai5wcm9wcyB9IDoge307XHJcbiAgICAgIHByb3BzLmRpc2FibGVkID0gZGlzYWJsZWQ7XHJcbiAgICAgIG9iai5wcm9wcyA9IHByb3BzO1xyXG4gICAgfVxyXG4gICAgbmV3Q29sdW1ucy5wdXNoKG9iaik7XHJcbiAgfSk7XHJcbiAgcmV0dXJuIG5ld0NvbHVtbnM7XHJcbn07XHJcbi8v6K6+572u6KGo5Y2V5a2X5q616ZqQ6JePXHJcbmNvbnN0IHNldEZpZWxkVmlzaWJsZSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHZpc2libGUpID0+IHtcclxuICBjb25zdCBjb2x1bW5zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdDb2x1bW5zID0gW10gYXMgYW55O1xyXG4gIGNvbHVtbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5kYXRhSW5kZXggPT0ga2V5IHx8IGtleS5pbmRleE9mKGl0ZW0uZGF0YUluZGV4KSA+IC0xKSB7XHJcbiAgICAgIG9iai5lZGl0b3IgPSB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgbmV3Q29sdW1ucy5wdXNoKG9iaik7XHJcbiAgfSk7XHJcbiAgcmV0dXJuIG5ld0NvbHVtbnM7XHJcbn07XHJcblxyXG5jb25zdCBzZXRGaWVsZFByb3BzRGF0YSA9IChkYXRhOiBBcnJheTxhbnk+LCBrZXksIHByb3BzRGF0YSkgPT4ge1xyXG4gIGNvbnN0IGNvbHVtbnMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0NvbHVtbnMgPSBbXSBhcyBhbnk7XHJcbiAgY29sdW1ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kYXRhID0gcHJvcHNEYXRhO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0NvbHVtbnMucHVzaChvYmopO1xyXG4gIH0pO1xyXG4gIHJldHVybiBuZXdDb2x1bW5zO1xyXG59O1xyXG5pbnRlcmZhY2UgSVByb3BzIHtcclxuICB0YWJsZUNvZGU6IHN0cmluZztcclxuICBjbGFzc05hbWU/OiBhbnk7XHJcbiAgbWVudUNvZGU/OiBzdHJpbmc7XHJcbiAgZnVuY3M/OiBhbnk7XHJcbiAgcHVibGlzaGVkPzogYm9vbGVhbjtcclxuICBpbnN0YW5jZVJlZj86IGFueTtcclxuICB0YWJQYXJhbXM/OiBhbnk7XHJcbiAgb25DYWxsQmFja3M/OiB7XHJcbiAgICB0cmVlU2VsZWN0Q2FsbEJhY2s/OiBhbnk7IC8v5qCR54K55Ye75p+l6K+i5ZCO5Zue6LCDXHJcbiAgICBvblF1ZXJ5Q2FsbEJhY2s/OiBhbnk7IC8v5p+l6K+i5Zue6LCD77yM5p+l6K+i5pWw5o2u5ZCO5Zue6LCDXHJcbiAgICBvblN1bWJpdENhbGxCYWNrPzogYW55OyAvL+S/neWtmOWbnuiwg++8jOS/neWtmOaVsOaNruaIkOWKn+WQjuWbnuiwg1xyXG4gICAgb25EZWxldGVDYWxsQmFjaz86IGFueTsgLy/liKDpmaTmjInpkq7lm57osIPvvIzliKDpmaTmlbDmja7lkI7miafooYxcclxuICAgIG9uRWRpdG9yQ2FsbEJhY2s/OiBhbnk7IC8v57yW6L6R5oyJ6ZKu5Zue6LCD77yM5omT5byA5by55qGG5ZCO5omn6KGMXHJcbiAgICBvbkFkZENhbGxCYWNrPzogYW55OyAvL+a3u+WKoOaMiemSruWbnuiwg++8jOaJk+W8gOW8ueahhuWQjuaJp+ihjFxyXG4gICAgb25TZWFyY2hDYWxsQmFjaz86IGFueTsgLy/liJfooajmn6Xor6LmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICB9O1xyXG4gIGJhc2VQcm9wcz86IE5TQ0Jhc2VCYWdlUHJvcHM7XHJcbiAgYXV0b0xvYWQ/OiBib29sZWFuO1xyXG59XHJcblxyXG5jb25zdCBkZWZhdWx0U3RhdGVWYWx1ZSA9IHtcclxuICBwYWdlUHJvcHM6IHt9IGFzIGFueSxcclxuICB0cmVlUHJvcHM6IHsgc3RvcmU6IHsgdXJsOiBcIlwiLCBhdXRvTG9hZDogZmFsc2UgfSB9IGFzIGFueSxcclxuICB0YWJsZVByb3BzOiB7fSBhcyBhbnksXHJcbiAgc2VsZlRvb2xCdXR0b246IFtdIGFzIGFueSxcclxuICBzZWxmQ29sdW1uQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgc2VsZkZvcm1CdXR0b246IFtdIGFzIGFueSxcclxuICBwYWdlTG9hZGluZzogdHJ1ZSxcclxuICBkZWZhdWx0Q29sdW1uczogW10gYXMgYW55LFxyXG4gIG90aGVyUHJvcHM6IHt9IGFzIGFueSxcclxuICBidXR0b25Mb2FkaW5nOiB7fSBhcyBhbnksXHJcbiAgZm9ybVBhZ2VQcm9wczoge30gYXMgYW55LFxyXG59O1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZXR0aW5nVGFibGUgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8SVByb3BzLCBhbnk+IHtcclxuICBzdGF0ZSA9IHtcclxuICAgIC4uLmRlZmF1bHRTdGF0ZVZhbHVlLFxyXG4gIH07XHJcbiAgcGFnZVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgbW9kYWxSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGNoYXJ0UmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBjb21wb25lbnREaWRNb3VudCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0RGF0YSgpO1xyXG4gICAgTW9kYWxNYW5hZ2VyLnJlZ2lzdGVyKFwiZm9ybVwiLCB0aGlzLm1vZGFsUmVmKTtcclxuICAgIE1vZGFsTWFuYWdlci5yZWdpc3RlcihcImNoYXJ0XCIsIHRoaXMuY2hhcnRSZWYpO1xyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkVXBkYXRlKFxyXG4gICAgcHJldlByb3BzOiBSZWFkb25seTxJUHJvcHM+LFxyXG4gICAgcHJldlN0YXRlOiBSZWFkb25seTxhbnk+LFxyXG4gICAgc25hcHNob3Q/OiBhbnlcclxuICApOiB2b2lkIHtcclxuICAgIGlmIChwcmV2UHJvcHMudGFibGVDb2RlICE9IHRoaXMucHJvcHMudGFibGVDb2RlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgLi4uZGVmYXVsdFN0YXRlVmFsdWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmdldERhdGEoKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0RGF0YSA9IChyZXM6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgeyBvdGhlclByb3BzLCBwYWdlUHJvcHMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoXHJcbiAgICAgIHBhZ2VQcm9wcy5zaG93U2VhcmNoICE9PSBmYWxzZSAmJlxyXG4gICAgICBvdGhlclByb3BzLmRlZmF1bHRTZWFyY2ggJiZcclxuICAgICAgb3RoZXJQcm9wcy50YWJsZURhdGFSZXNvdXJjZSA9PSBcInVybFwiXHJcbiAgICApIHtcclxuICAgICAgbGV0IGZ1bmMgPSBuZXcgRnVuY3Rpb24oXCJVdGlscyxldmVudE9wdGlvblwiLCBvdGhlclByb3BzLmRlZmF1bHRTZWFyY2gpO1xyXG4gICAgICBjb25zdCBwYXJhbXMgPSBmdW5jKGRlZmF1bHRVdGlsLCB7IHBhZ2VSZWY6IHRoaXMucGFnZVJlZiB9KTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnRhYmxlTG9hZCh7IC4uLnBhcmFtcyB9KTtcclxuICAgICAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uc2V0U2VhcmNoUGFyYW1zKHsgLi4ucGFyYW1zIH0pO1xyXG4gICAgICB9LCA1MCk7IC8v55u05o6l6K6+572u77yMcGFnZVJlZuayoee7keWumu+8jOaaguaXtumAmui/h+W7tui/n+WHveaVsOi/m+ihjOino+WGs1xyXG4gICAgfVxyXG4gIH07XHJcbiAgLy8g6I635Y+W5pWw5o2uXHJcbiAgZ2V0RGF0YSgpIHtcclxuICAgIC8vIOS7jnByb3Bz5Lit6I635Y+WdGFibGVDb2Rl44CBcHVibGlzaGVk44CBbWVudUNvZGVcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBwYWdlTG9hZGluZzogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgY29uc3QgeyB0YWJsZUNvZGUsIHB1Ymxpc2hlZCA9IHRydWUsIG1lbnVDb2RlLCB0YWJQYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAvLyDlpoLmnpx0YWJsZUNvZGXlrZjlnKhcclxuICAgIGlmICh0YWJsZUNvZGUpIHtcclxuICAgICAgLy8g5a6a5LmJ5Y+C5pWwXHJcbiAgICAgIGxldCBwYXJhbXMgPSB7IGNvZGU6IHRhYmxlQ29kZSB9IGFzIGFueTtcclxuICAgICAgLy8g5aaC5p6ccHVibGlzaGVk5Li6dHJ1ZVxyXG4gICAgICBpZiAocHVibGlzaGVkKSB7XHJcbiAgICAgICAgLy8g6K6+572u5Y+C5pWwaXNQdWJsaXNoZWTkuLoxXHJcbiAgICAgICAgcGFyYW1zLmlzUHVibGlzaGVkID0gMTtcclxuICAgICAgfVxyXG4gICAgICAvLyDosIPnlKhnZXRQYWdlRGF0YeaWueazleiOt+WPluaVsOaNrlxyXG4gICAgICBnZXRQYWdlRGF0YSh7IC4uLnBhcmFtcyB9KS50aGVuKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXMuY29kZSA9PSAyMDAgJiYgcmVzLmRhdGEpIHtcclxuICAgICAgICAgIGxldCB0YWJsZV9wcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEudGFibGVQcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gICAgICAgICAgbGV0IHRyZWVfcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnRyZWVQcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gICAgICAgICAgbGV0IHBhZ2VfcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnBhZ2VQcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gICAgICAgICAgbGV0IG90aGVyX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS5vdGhlclBhcmFtcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gICAgICAgICAgbGV0IGZvcm1fcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLmZvcm1Qcm9wcyB8fCBcInt9XCIpIHx8IHt9O1xyXG4gICAgICAgICAgaWYgKHBhZ2VfcHJvcHMucGVybWlzc2lvbj8uaGFzID09IHRydWUpIHtcclxuICAgICAgICAgICAgcGFnZV9wcm9wcy5wZXJtaXNzaW9uLm1lbnVDb2RlID0gbWVudUNvZGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAocHVibGlzaGVkID09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIHBhZ2VfcHJvcHMucGVybWlzc2lvbiA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAocGFnZV9wcm9wcy5zaG93U2VhcmNoICE9PSBmYWxzZSAmJlxyXG4gICAgICAgICAgICAgIG90aGVyX3Byb3BzLmRlZmF1bHRTZWFyY2ggJiZcclxuICAgICAgICAgICAgICBvdGhlcl9wcm9wcz8udGFibGVEYXRhUmVzb3VyY2UgPT0gXCJ1cmxcIikgfHxcclxuICAgICAgICAgICAgdGhpcy5wcm9wcy5hdXRvTG9hZCA9PT0gZmFsc2VcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0YWJsZV9wcm9wcy5zdG9yZS5hdXRvTG9hZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRhYlBhcmFtcykge1xyXG4gICAgICAgICAgICBjb25zdCBVdGlscyA9IGRlZmF1bHRVdGlsIHx8IHt9O1xyXG4gICAgICAgICAgICBsZXQgcGFyYW1GdW5jID0gbmV3IEZ1bmN0aW9uKFwiVXRpbHNcIiwgdGFiUGFyYW1zKTtcclxuICAgICAgICAgICAgbGV0IGNvbnZlclRhYlBhcmFtcyA9IHBhcmFtRnVuYyhVdGlscyk7XHJcbiAgICAgICAgICAgIGlmIChwYWdlX3Byb3BzLnJlcXVlc3RQYXJhbXMpIHtcclxuICAgICAgICAgICAgICBsZXQgeyByZXF1ZXN0UGFyYW1zID0ge30gfSA9IHBhZ2VfcHJvcHM7XHJcbiAgICAgICAgICAgICAgbGV0IG5ld1JlcXVlc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogbnVsbCxcclxuICAgICAgICAgICAgICAgIGFkZFBhcmFtczogbnVsbCxcclxuICAgICAgICAgICAgICAgIGVkaXRvclBhcmFtczogbnVsbCxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIGZvciAobGV0IGtleSBpbiBuZXdSZXF1ZXN0UGFyYW1zKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVxdWVzdFBhcmFtc1trZXldKSB7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBmdW5jID0gbmV3IEZ1bmN0aW9uKFwiVXRpbHNcIiwgcmVxdWVzdFBhcmFtc1trZXldKTtcclxuICAgICAgICAgICAgICAgICAgbGV0IGNvbnZlclBhcmFtcyA9IGZ1bmMoVXRpbHMpO1xyXG4gICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGEsIC4uLm90aGVyIH0gPSBjb252ZXJQYXJhbXM7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBuZXdQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMsIC4uLmRhdGEgfSxcclxuICAgICAgICAgICAgICAgICAgICAuLi5vdGhlcixcclxuICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgbmV3UmVxdWVzdFBhcmFtc1trZXldID0gbmV3UGFyYW1zO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgbmV3UmVxdWVzdFBhcmFtc1trZXldID0geyBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcyB9IH07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHBhZ2VfcHJvcHMucmVxdWVzdFBhcmFtcyA9IHsgLi4ubmV3UmVxdWVzdFBhcmFtcyB9O1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHBhZ2VfcHJvcHMucmVxdWVzdFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7IGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zIH0gfSxcclxuICAgICAgICAgICAgICAgIGFkZFBhcmFtczogeyBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcyB9IH0sXHJcbiAgICAgICAgICAgICAgICBlZGl0b3JQYXJhbXM6IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9LFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBwYWdlUHJvcHM6IHtcclxuICAgICAgICAgICAgICAgIC4uLnBhZ2VfcHJvcHMsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB0cmVlUHJvcHM6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRyZWVfcHJvcHMsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB0YWJsZVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50YWJsZV9wcm9wcyxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIG90aGVyUHJvcHM6IHsgLi4ub3RoZXJfcHJvcHMgfSxcclxuICAgICAgICAgICAgICBzZWxmQ29sdW1uQnV0dG9uOiBKU09OLnBhcnNlKHJlcy5kYXRhLmNvbHVtbkJ1dHRvbnMpIHx8IFtdLFxyXG4gICAgICAgICAgICAgIHNlbGZUb29sQnV0dG9uOiBKU09OLnBhcnNlKHJlcy5kYXRhLnRvb2xCdXR0b25zKSB8fCBbXSxcclxuICAgICAgICAgICAgICBkZWZhdWx0Q29sdW1uczogcGFnZV9wcm9wcy5jb2x1bW5zLFxyXG4gICAgICAgICAgICAgIGZvcm1QYWdlUHJvcHM6IGZvcm1fcHJvcHMsXHJcbiAgICAgICAgICAgICAgc2VsZkZvcm1CdXR0b246IGZvcm1fcHJvcHM/LnNlbGZCdXR0b24gfHwgW10sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHJlcy5jb2RlID09IDIwMCAmJiByZXMuZGF0YSA9PSBudWxsKSB7XHJcbiAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5pyq5om+5Yiw6YWN572u5L+h5oGv77yBXCIpO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgcGFnZUxvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIG9uU2VhcmNoKCkge31cclxuICBnZXRTZWFyY2hWYWx1ZXMoKSB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFnZVJlZi5jdXJyZW50Py5nZXRTZWFyY2hWYWx1ZXMoKTtcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbiAgc2V0U2VhcmNoUGFyYW1zKHBhcmFtcywgY2FsbEJhY2spIHtcclxuICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py5zZXRTZWFyY2hQYXJhbXMocGFyYW1zKTtcclxuICB9XHJcbiAgdGFibGVMb2FkKHBhcmFtczogYW55LCByZXF1ZXN0Q29uZmlnID0ge30pIHtcclxuICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py50YWJsZUxvYWQocGFyYW1zLCByZXF1ZXN0Q29uZmlnKTtcclxuICB9XHJcbiAgdGFibGVSZWxvYWQocGFyYW1zID0ge30sIGF1dG9Mb2FkID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnRhYmxlUmVsb2FkKHBhcmFtcywgYXV0b0xvYWQpO1xyXG4gIH1cclxuICBnZXRTZWxlY3RlZFJvd0tleXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LmdldFNlbGVjdGVkUm93S2V5cygpO1xyXG4gIH1cclxuICBnZXRTZWxlY3RlZFJvd0RhdGFzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucGFnZVJlZi5jdXJyZW50Py5nZXRTZWxlY3RlZFJvd0RhdGFzKCk7XHJcbiAgfVxyXG5cclxuICByZXNldFNlbGVjdGVkUm93S2V5cygpIHtcclxuICAgIHJldHVybiB0aGlzLnBhZ2VSZWYuY3VycmVudD8ucmVzZXRTZWxlY3RlZFJvd0tleXMoKTtcclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBjbGFzc05hbWUsXHJcbiAgICAgIGZ1bmNzID0ge30sXHJcbiAgICAgIGJhc2VQcm9wcyA9IHt9IGFzIE5TQ0Jhc2VCYWdlUHJvcHMsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgcGFnZVByb3BzLFxyXG4gICAgICB0cmVlUHJvcHMsXHJcbiAgICAgIHRhYmxlUHJvcHMsXHJcbiAgICAgIHNlbGZUb29sQnV0dG9uLFxyXG4gICAgICBzZWxmQ29sdW1uQnV0dG9uLFxyXG4gICAgICBwYWdlTG9hZGluZyxcclxuICAgICAgZGVmYXVsdENvbHVtbnMsXHJcbiAgICAgIGJ1dHRvbkxvYWRpbmcgPSB7fSxcclxuICAgICAgZm9ybVBhZ2VQcm9wcyA9IHt9LFxyXG4gICAgICBzZWxmRm9ybUJ1dHRvbixcclxuICAgIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICB0cmVlUHJvcHM6IHNldHRpbmdUcmVlUHJvcHMgPSB7fSxcclxuICAgICAgdGFibGVQcm9wczogc2V0dGluZ1RhYmxlUHJvcHMgPSB7fSxcclxuICAgICAgLi4ub3RoZXJQcm9wc1xyXG4gICAgfSA9IGJhc2VQcm9wcztcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBjb25zdCBkZWF1bHRGdW5jcyA9IHtcclxuICAgICAgc2V0RmllbGREaXNhYmxlZDogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGREaXNhYmxlZChwYWdlUHJvcHMuY29sdW1ucywga2V5LCBkaXNhYmxlZCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkVmlzaWJsZTogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRWaXNpYmxlKHBhZ2VQcm9wcy5jb2x1bW5zLCBrZXksIGRpc2FibGVkKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIHBhZ2VQcm9wczogeyAuLi5wYWdlUHJvcHMsIGNvbHVtbnM6IG5ld0RhdGEgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgc2V0RmllbGRQcm9wc0RhdGE6IChrZXksIGRhdGEpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRQcm9wc0RhdGEocGFnZVByb3BzLmNvbHVtbnMsIGtleSwgZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIGhpc3Rvcnk6IChwYXJhbXMsIHR5cGUpID0+IHtcclxuICAgICAgLy8gICBqdW1wUGFnZShwYXJhbXMsIHR5cGUpO1xyXG4gICAgICAvLyB9LFxyXG4gICAgICBzZXRCdXR0b25Mb2FkaW5nOiAoY29kZSwgbG9hZGluZykgPT4ge1xyXG4gICAgICAgIF90aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGJ1dHRvbkxvYWRpbmc6IHsgLi4uYnV0dG9uTG9hZGluZywgW2NvZGVdOiBsb2FkaW5nIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC4uLmRlZmF1bHRDb21GdW5jcyxcclxuICAgICAgb3BlbkZvcm1Nb2RhbDogKHBhcmFtczogT3BlblBhcm1zKSA9PiB7XHJcbiAgICAgICAgTW9kYWxNYW5hZ2VyLnNob3dNb2RhbChcImZvcm1cIiwgcGFyYW1zKTtcclxuICAgICAgfSxcclxuICAgICAgb3BlbkNoYXJ0TW9kYWw6IChwYXJhbXM6IE9wZW5DaGFydFBhcm1zKSA9PiB7XHJcbiAgICAgICAgTW9kYWxNYW5hZ2VyLnNob3dNb2RhbChcImNoYXJ0XCIsIHBhcmFtcyk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIGdldEN1cnJlbnRQcm9qZWN0OiAoKSA9PiB7XHJcbiAgICAgIC8vICAgcmV0dXJuIGdldFByb2plY3QoKTtcclxuICAgICAgLy8gfSxcclxuICAgIH07XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IGNvZGVTZWxmQnV0dG9ucyA9IFtdO1xyXG4gICAgbGV0IGNvZGVjb2x1bW5CdXR0b25zID0gW107XHJcbiAgICBsZXQgY29kZUZvcm1CdXR0b25zID0gW107XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcclxuICAgICAgY2hpbGRyZW4ubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xyXG4gICAgICAgICAgaXRlbS5tYXAoKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChjaGlsZD8ucHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgICAgY29kZVNlbGZCdXR0b25zLnB1c2goY2hpbGQpO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJjb2x1bW5CdXR0b25cIikge1xyXG4gICAgICAgICAgICAgIGNvZGVjb2x1bW5CdXR0b25zLnB1c2goY2hpbGQpO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJmb3JtQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgICBjb2RlRm9ybUJ1dHRvbnMucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAoaXRlbT8ucHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgIGNvZGVTZWxmQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJjb2x1bW5CdXR0b25cIikge1xyXG4gICAgICAgICAgICBjb2RlY29sdW1uQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJmb3JtQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgY29kZUZvcm1CdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgY29uc3QgeyBwcm9wcyB9OiBhbnkgPSBjaGlsZHJlbjtcclxuICAgICAgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcInRvb2xCdXR0b25cIikge1xyXG4gICAgICAgIGNvZGVTZWxmQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfSBlbHNlIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJjb2x1bW5CdXR0b25cIikge1xyXG4gICAgICAgIGNvZGVjb2x1bW5CdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9IGVsc2UgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcImZvcm1CdXR0b25cIikge1xyXG4gICAgICAgIGNvZGVGb3JtQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGV0IG5ld1RhYmxlUHJvcHMgPSBkZWVwTWVyZ2UoeyAuLi50YWJsZVByb3BzIH0sIHsgLi4uc2V0dGluZ1RhYmxlUHJvcHMgfSk7XHJcbiAgICBsZXQgbmV3VHJlZVByb3BzID0gZGVlcE1lcmdlKHsgLi4udHJlZVByb3BzIH0sIHsgLi4uc2V0dGluZ1RyZWVQcm9wcyB9KTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoXCJuc2MtZnJhbWV3b3JrLXRhYmxlcGFnZVwiLCBjbGFzc05hbWUpfT5cclxuICAgICAgICB7cGFnZUxvYWRpbmcgPyAoXHJcbiAgICAgICAgICA8ZGl2IHN0eWxlPXt7IHdpZHRoOiBcIjEwMCVcIiwgaGVpZ2h0OiBcIjEwMCVcIiB9fT5cclxuICAgICAgICAgICAgPFNwaW4gc3Bpbm5pbmc9e3BhZ2VMb2FkaW5nfT48L1NwaW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApIDogKFxyXG4gICAgICAgICAgPEJhc2VQYWdlXHJcbiAgICAgICAgICAgIHsuLi5wYWdlUHJvcHN9XHJcbiAgICAgICAgICAgIHRyZWVQcm9wcz17eyAuLi5uZXdUcmVlUHJvcHMgfX1cclxuICAgICAgICAgICAgdGFibGVQcm9wcz17eyAuLi5uZXdUYWJsZVByb3BzIH19XHJcbiAgICAgICAgICAgIGZvcm1Qcm9wcz17e319XHJcbiAgICAgICAgICAgIFV0aWxzPXt7IC4uLmRlZmF1bHRVdGlsIH19XHJcbiAgICAgICAgICAgIHJlZj17dGhpcy5wYWdlUmVmfVxyXG4gICAgICAgICAgICBwYWdlUmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICAgIG9uSGlkZUZvcm09eygpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgIHBhZ2VQcm9wczogeyAuLi5wYWdlUHJvcHMsIGNvbHVtbnM6IGRlZmF1bHRDb2x1bW5zIH0sXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LmhpZGVGb3JtKCk7XHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIGZ1bmNzPXt7IC4uLmRlYXVsdEZ1bmNzLCAuLi5mdW5jcyB9fVxyXG4gICAgICAgICAgICBpbml0RGF0YT17dGhpcy5pbml0RGF0YX1cclxuICAgICAgICAgICAgZm9ybVBhZ2VQcm9wcz17e1xyXG4gICAgICAgICAgICAgIGZvcm1UeXBlOiBmb3JtUGFnZVByb3BzLmZvcm1UeXBlIHx8IFwibW9kYWxcIixcclxuICAgICAgICAgICAgICBwcm9wczogZm9ybVBhZ2VQcm9wcz8ucHJvcHMsXHJcbiAgICAgICAgICAgICAgLi4uZm9ybVBhZ2VQcm9wcz8ub3RoZXJQcm9wcyxcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgdGFibGVDb2RlPXt0aGlzLnByb3BzLnRhYmxlQ29kZX1cclxuICAgICAgICAgICAgey4uLm90aGVyUHJvcHN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHtyZW5kZXJTZWxmVG9vbEJ1dHRvbih7XHJcbiAgICAgICAgICAgICAgc2VsZkJ1dHRvbjogc2VsZlRvb2xCdXR0b24sXHJcbiAgICAgICAgICAgICAgcGFnZVJlZjogdGhpcy5wYWdlUmVmLFxyXG4gICAgICAgICAgICAgIGZ1bmNzOiB7IC4uLmRlYXVsdEZ1bmNzLCAuLi5mdW5jcyB9LFxyXG4gICAgICAgICAgICAgIGxvYWRpbmc6IHRoaXMuc3RhdGUuYnV0dG9uTG9hZGluZyxcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtjb2RlU2VsZkJ1dHRvbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7cmVuZGVyU2VsZkNvbHVtbkJ1dHRvbih7XHJcbiAgICAgICAgICAgICAgc2VsZkNvbHVtbkJ1dHRvbixcclxuICAgICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgICAgZnVuY3M6IHsgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH0sXHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7Y29kZWNvbHVtbkJ1dHRvbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7cmVuZGVyU2VsZlRvb2xCdXR0b24oe1xyXG4gICAgICAgICAgICAgIHNlbGZCdXR0b246IHNlbGZGb3JtQnV0dG9uLFxyXG4gICAgICAgICAgICAgIHBhZ2VSZWY6IHRoaXMucGFnZVJlZixcclxuICAgICAgICAgICAgICBmdW5jczogeyAuLi5kZWF1bHRGdW5jcywgLi4uZnVuY3MgfSxcclxuICAgICAgICAgICAgICBsb2FkaW5nOiB0aGlzLnN0YXRlLmJ1dHRvbkxvYWRpbmcsXHJcbiAgICAgICAgICAgICAgdHlwZTogXCJmb3JtQnV0dG9uXCIsXHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7Y29kZUZvcm1CdXR0b25zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiBpdGVtO1xyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgIDwvQmFzZVBhZ2U+XHJcbiAgICAgICAgKX1cclxuICAgICAgICA8TW9kYWxGb3JtIHJlZj17dGhpcy5tb2RhbFJlZn0gLz5cclxuICAgICAgICA8TW9kYWxDaGFydCByZWY9e3RoaXMuY2hhcnRSZWZ9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUNBLE9BQU9BLFFBQVEsTUFBNEIsYUFBYTtBQUN4RCxPQUFPQyxJQUFJLE1BQU0saUJBQWlCO0FBRWxDLE9BQU8sY0FBYztBQUNyQixPQUFPQyxLQUFLLE1BQU0sT0FBTztBQUN6QixPQUFPQyxVQUFVLE1BQU0sYUFBYTtBQUNwQyxPQUFPQyxHQUFHLE1BQU0sWUFBWTtBQUU1QixTQUNFQyxlQUFlLEVBQ2ZDLFdBQVcsRUFDWEMsU0FBUyxFQUNUQyxzQkFBc0IsRUFDdEJDLG9CQUFvQixFQUNwQkMsWUFBWSxFQUVaQyxVQUFVLFFBRUwsc0JBQXNCO0FBQzdCLFNBQVNDLFNBQVMsUUFBUSxhQUFhO0FBRXZDLE1BQU1DLFdBQVcsR0FBSUMsTUFBVyxJQUFLO0VBQ25DLE9BQU9YLFVBQVUsQ0FBQ1ksR0FBRyx3Q0FBd0M7SUFDM0RELE1BQU07SUFDTkUsU0FBUyxFQUFFLEtBQUs7SUFDaEJDLFVBQVUsRUFBRTtFQUNkLENB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["BasePage","Spin","React","NscRequest","cls","defaultComFuncs","defaultUtil","ModalForm","renderSelfColumnButton","renderSelfToolButton","ModalManager","deepMerge","getPageData","params","get","xssFilter","autoPrefix","setFieldDisabled","data","key","disabled","columns","newColumns","map","item","obj","_objectSpread","dataIndex","indexOf","props","push","setFieldVisible","visible","editor","setFieldPropsData","propsData","defaultStateValue","pageProps","treeProps","store","url","autoLoad","tableProps","selfToolButton","selfColumnButton","selfFormButton","pageLoading","defaultColumns","otherProps","buttonLoading","formPageProps","SettingTable","Component","constructor","arguments","_defineProperty","createRef","res","state","showSearch","defaultSearch","tableDataResource","func","Function","pageRef","setTimeout","_this$pageRef$current","_this$pageRef$current2","current","tableLoad","setSearchParams","componentDidMount","getData","register","modalRef","componentDidUpdate","prevProps","prevState","snapshot","tableCode","setState","published","menuCode","tabParams","code","isPublished","then","_page_props$permissio","table_props","JSON","parse","tree_props","page_props","other_props","otherParams","form_props","formProps","permission","has","Utils","paramFunc","converTabParams","requestParams","newRequestParams","queryParams","addParams","editorParams","converParams","other","_objectWithoutProperties","_excluded","newParams","columnButtons","toolButtons","selfButton","_message","error","getSearchValues","_this$pageRef$current3","value","callBack","_this$pageRef$current4","_this$pageRef$current5","requestConfig","length","undefined","tableReload","_this$pageRef$current6","getSelectedRowKeys","_this$pageRef$current7","getSelectedRowDatas","_this$pageRef$current8","resetSelectedRowKeys","_this$pageRef$current9","render","className","funcs","baseProps","settingTreeProps","settingTableProps","_excluded2","_this","deaultFuncs","newData","setButtonLoading","loading","openFormModal","showModal","children","codeSelfButtons","codecolumnButtons","codeFormButtons","Array","isArray","child","_child$props","_child$props2","_child$props3","pageType","_item$props","_item$props2","_item$props3","newTableProps","newTreeProps","createElement","style","width","height","spinning","_extends","ref","onHideForm","_this$pageRef$current10","hideForm","initData","formType","type"],"sources":["../../../src/components/page/SettingTable/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport Button from \"../../base/button\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport NscRequest from \"nsc-request\";\r\nimport cls from \"classnames\";\r\nimport { message } from \"antd\";\r\nimport {\r\n defaultComFuncs,\r\n defaultUtil,\r\n ModalForm,\r\n renderSelfColumnButton,\r\n renderSelfToolButton,\r\n ModalManager,\r\n OpenParms,\r\n} from \"../SettingUtil/utils\";\r\nimport { deepMerge } from \"../../utils\";\r\n\r\nconst getPageData = (params: any) => {\r\n return NscRequest.get(`/jquick-setting/setting/table/info/`, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n obj.editor = visible;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\ninterface IProps {\r\n tableCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n tabParams?: any;\r\n onCallBacks?: {\r\n treeSelectCallBack?: any; //树点击查询后回调\r\n onQueryCallBack?: any; //查询回调,查询数据后回调\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onDeleteCallBack?: any; //删除按钮回调,删除数据后执行\r\n onEditorCallBack?: any; //编辑按钮回调,打开弹框后执行\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n onSearchCallBack?: any; //列表查询按钮回调,打开弹框后执行\r\n };\r\n baseProps?: NSCBaseBageProps;\r\n autoLoad?: boolean;\r\n}\r\n\r\nconst defaultStateValue = {\r\n pageProps: {} as any,\r\n treeProps: { store: { url: \"\", autoLoad: false } } as any,\r\n tableProps: {} as any,\r\n selfToolButton: [] as any,\r\n selfColumnButton: [] as any,\r\n selfFormButton: [] as any,\r\n pageLoading: true,\r\n defaultColumns: [] as any,\r\n otherProps: {} as any,\r\n buttonLoading: {} as any,\r\n formPageProps: {} as any,\r\n};\r\nexport default class SettingTable extends React.Component<IProps, any> {\r\n state = {\r\n ...defaultStateValue,\r\n };\r\n pageRef = React.createRef<any>();\r\n modalRef = React.createRef<any>();\r\n\r\n componentDidMount(): void {\r\n this.getData();\r\n ModalManager.register(this.modalRef);\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.tableCode != this.props.tableCode) {\r\n this.setState(\r\n {\r\n ...defaultStateValue,\r\n },\r\n () => {\r\n this.getData();\r\n }\r\n );\r\n }\r\n }\r\n\r\n initData = (res: any) => {\r\n const { otherProps, pageProps } = this.state;\r\n if (\r\n pageProps.showSearch !== false &&\r\n otherProps.defaultSearch &&\r\n otherProps.tableDataResource == \"url\"\r\n ) {\r\n let func = new Function(\"Utils,eventOption\", otherProps.defaultSearch);\r\n const params = func(defaultUtil, { pageRef: this.pageRef });\r\n setTimeout(() => {\r\n this.pageRef.current?.tableLoad({ ...params });\r\n this.pageRef.current?.setSearchParams({ ...params });\r\n }, 50); //直接设置,pageRef没绑定,暂时通过延迟函数进行解决\r\n }\r\n };\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const { tableCode, published = true, menuCode, tabParams } = this.props;\r\n // 如果tableCode存在\r\n if (tableCode) {\r\n // 定义参数\r\n let params = { code: tableCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n let table_props = JSON.parse(res.data.tableProps || \"{}\") || {};\r\n let tree_props = JSON.parse(res.data.treeProps || \"{}\") || {};\r\n let page_props = JSON.parse(res.data.pageProps || \"{}\") || {};\r\n let other_props = JSON.parse(res.data.otherParams || \"{}\") || {};\r\n let form_props = JSON.parse(res.data.formProps || \"{}\") || {};\r\n if (page_props.permission?.has == true) {\r\n page_props.permission.menuCode = menuCode;\r\n }\r\n if (published == false) {\r\n page_props.permission = false;\r\n }\r\n if (\r\n (page_props.showSearch !== false &&\r\n other_props.defaultSearch &&\r\n other_props?.tableDataResource == \"url\") ||\r\n this.props.autoLoad === false\r\n ) {\r\n table_props.store.autoLoad = false;\r\n }\r\n if (tabParams) {\r\n const Utils = defaultUtil || {};\r\n let paramFunc = new Function(\"Utils\", tabParams);\r\n let converTabParams = paramFunc(Utils);\r\n if (page_props.requestParams) {\r\n let { requestParams = {} } = page_props;\r\n let newRequestParams = {\r\n queryParams: null,\r\n addParams: null,\r\n editorParams: null,\r\n };\r\n for (let key in newRequestParams) {\r\n if (requestParams[key]) {\r\n let func = new Function(\"Utils\", requestParams[key]);\r\n let converParams = func(Utils);\r\n const { data, ...other } = converParams;\r\n let newParams = {\r\n data: { ...converTabParams, ...data },\r\n ...other,\r\n };\r\n newRequestParams[key] = newParams;\r\n } else {\r\n newRequestParams[key] = { data: { ...converTabParams } };\r\n }\r\n }\r\n page_props.requestParams = { ...newRequestParams };\r\n } else {\r\n page_props.requestParams = {\r\n queryParams: { data: { ...converTabParams } },\r\n addParams: { data: { ...converTabParams } },\r\n editorParams: { data: { ...converTabParams } },\r\n };\r\n }\r\n }\r\n this.setState(\r\n {\r\n pageProps: {\r\n ...page_props,\r\n },\r\n treeProps: {\r\n ...tree_props,\r\n },\r\n tableProps: {\r\n ...table_props,\r\n },\r\n otherProps: { ...other_props },\r\n selfColumnButton: JSON.parse(res.data.columnButtons) || [],\r\n selfToolButton: JSON.parse(res.data.toolButtons) || [],\r\n defaultColumns: page_props.columns,\r\n formPageProps: form_props,\r\n selfFormButton: form_props?.selfButton || [],\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n getSearchValues() {\r\n const value = this.pageRef.current?.getSearchValues();\r\n return value;\r\n }\r\n setSearchParams(params, callBack) {\r\n this.pageRef.current?.setSearchParams(params);\r\n }\r\n tableLoad(params: any, requestConfig = {}) {\r\n this.pageRef.current?.tableLoad(params, requestConfig);\r\n }\r\n tableReload(params = {}, autoLoad = true) {\r\n this.pageRef.current?.tableReload(params, autoLoad);\r\n }\r\n getSelectedRowKeys() {\r\n return this.pageRef.current?.getSelectedRowKeys();\r\n }\r\n getSelectedRowDatas() {\r\n return this.pageRef.current?.getSelectedRowDatas();\r\n }\r\n\r\n resetSelectedRowKeys() {\r\n return this.pageRef.current?.resetSelectedRowKeys();\r\n }\r\n render() {\r\n const {\r\n className,\r\n funcs = {},\r\n baseProps = {} as NSCBaseBageProps,\r\n } = this.props;\r\n const {\r\n pageProps,\r\n treeProps,\r\n tableProps,\r\n selfToolButton,\r\n selfColumnButton,\r\n pageLoading,\r\n defaultColumns,\r\n buttonLoading = {},\r\n formPageProps = {},\r\n selfFormButton,\r\n } = this.state;\r\n const {\r\n treeProps: settingTreeProps = {},\r\n tableProps: settingTableProps = {},\r\n ...otherProps\r\n } = baseProps;\r\n let _this = this;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(pageProps.columns, key, data);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n // history: (params, type) => {\r\n // jumpPage(params, type);\r\n // },\r\n setButtonLoading: (code, loading) => {\r\n _this.setState({\r\n buttonLoading: { ...buttonLoading, [code]: loading },\r\n });\r\n },\r\n ...defaultComFuncs,\r\n openFormModal: (params: OpenParms) => {\r\n ModalManager.showModal(params);\r\n },\r\n // getCurrentProject: () => {\r\n // return getProject();\r\n // },\r\n };\r\n const { children } = this.props;\r\n let codeSelfButtons = [];\r\n let codecolumnButtons = [];\r\n let codeFormButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(child);\r\n } else if (child?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(child);\r\n } else if (child?.props?.pageType == \"formButton\") {\r\n codeFormButtons.push(child);\r\n }\r\n });\r\n } else {\r\n if (item?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(item);\r\n } else if (item?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(item);\r\n } else if (item?.props?.pageType == \"formButton\") {\r\n codeFormButtons.push(item);\r\n }\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(children);\r\n } else if (props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(children);\r\n } else if (props?.pageType == \"formButton\") {\r\n codeFormButtons.push(children);\r\n }\r\n }\r\n let newTableProps = deepMerge({ ...tableProps }, { ...settingTableProps });\r\n let newTreeProps = deepMerge({ ...treeProps }, { ...settingTreeProps });\r\n return (\r\n <div className={cls(\"nsc-framework-tablepage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n <BasePage\r\n {...pageProps}\r\n treeProps={{ ...newTreeProps }}\r\n tableProps={{ ...newTableProps }}\r\n formProps={{}}\r\n Utils={{ ...defaultUtil }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n onHideForm={() => {\r\n this.setState({\r\n pageProps: { ...pageProps, columns: defaultColumns },\r\n });\r\n this.pageRef.current?.hideForm();\r\n }}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n initData={this.initData}\r\n formPageProps={{\r\n formType: formPageProps.formType || \"modal\",\r\n props: formPageProps?.props,\r\n ...formPageProps?.otherProps,\r\n }}\r\n tableCode={this.props.tableCode}\r\n {...otherProps}\r\n >\r\n {renderSelfToolButton({\r\n selfButton: selfToolButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n loading: this.state.buttonLoading,\r\n })}\r\n {codeSelfButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfColumnButton({\r\n selfColumnButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n })}\r\n {codecolumnButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfToolButton({\r\n selfButton: selfFormButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n loading: this.state.buttonLoading,\r\n type: \"formButton\",\r\n })}\r\n {codeFormButtons.map((item) => {\r\n return item;\r\n })}\r\n </BasePage>\r\n )}\r\n <ModalForm ref={this.modalRef} />\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["BasePage","Spin","React","NscRequest","cls","defaultComFuncs","defaultUtil","ModalForm","renderSelfColumnButton","renderSelfToolButton","ModalManager","ModalChart","deepMerge","getPageData","params","get","xssFilter","autoPrefix","setFieldDisabled","data","key","disabled","columns","newColumns","map","item","obj","_objectSpread","dataIndex","indexOf","props","push","setFieldVisible","visible","editor","setFieldPropsData","propsData","defaultStateValue","pageProps","treeProps","store","url","autoLoad","tableProps","selfToolButton","selfColumnButton","selfFormButton","pageLoading","defaultColumns","otherProps","buttonLoading","formPageProps","SettingTable","Component","constructor","arguments","_defineProperty","createRef","res","state","showSearch","defaultSearch","tableDataResource","func","Function","pageRef","setTimeout","_this$pageRef$current","_this$pageRef$current2","current","tableLoad","setSearchParams","componentDidMount","getData","register","modalRef","chartRef","componentDidUpdate","prevProps","prevState","snapshot","tableCode","setState","published","menuCode","tabParams","code","isPublished","then","_page_props$permissio","table_props","JSON","parse","tree_props","page_props","other_props","otherParams","form_props","formProps","permission","has","Utils","paramFunc","converTabParams","requestParams","newRequestParams","queryParams","addParams","editorParams","converParams","other","_objectWithoutProperties","_excluded","newParams","columnButtons","toolButtons","selfButton","_message","error","getSearchValues","_this$pageRef$current3","value","callBack","_this$pageRef$current4","_this$pageRef$current5","requestConfig","length","undefined","tableReload","_this$pageRef$current6","getSelectedRowKeys","_this$pageRef$current7","getSelectedRowDatas","_this$pageRef$current8","resetSelectedRowKeys","_this$pageRef$current9","render","className","funcs","baseProps","settingTreeProps","settingTableProps","_excluded2","_this","deaultFuncs","newData","setButtonLoading","loading","openFormModal","showModal","openChartModal","children","codeSelfButtons","codecolumnButtons","codeFormButtons","Array","isArray","child","_child$props","_child$props2","_child$props3","pageType","_item$props","_item$props2","_item$props3","newTableProps","newTreeProps","createElement","style","width","height","spinning","_extends","ref","onHideForm","_this$pageRef$current10","hideForm","initData","formType","type"],"sources":["../../../src/components/page/SettingTable/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport Button from \"../../base/button\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport NscRequest from \"nsc-request\";\r\nimport cls from \"classnames\";\r\nimport { message, Modal } from \"antd\";\r\nimport {\r\n defaultComFuncs,\r\n defaultUtil,\r\n ModalForm,\r\n renderSelfColumnButton,\r\n renderSelfToolButton,\r\n ModalManager,\r\n OpenParms,\r\n ModalChart,\r\n OpenChartParms,\r\n} from \"../SettingUtil/utils\";\r\nimport { deepMerge } from \"../../utils\";\r\n\r\nconst getPageData = (params: any) => {\r\n return NscRequest.get(`/jquick-setting/setting/table/info/`, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n obj.editor = visible;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\ninterface IProps {\r\n tableCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n tabParams?: any;\r\n onCallBacks?: {\r\n treeSelectCallBack?: any; //树点击查询后回调\r\n onQueryCallBack?: any; //查询回调,查询数据后回调\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onDeleteCallBack?: any; //删除按钮回调,删除数据后执行\r\n onEditorCallBack?: any; //编辑按钮回调,打开弹框后执行\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n onSearchCallBack?: any; //列表查询按钮回调,打开弹框后执行\r\n };\r\n baseProps?: NSCBaseBageProps;\r\n autoLoad?: boolean;\r\n}\r\n\r\nconst defaultStateValue = {\r\n pageProps: {} as any,\r\n treeProps: { store: { url: \"\", autoLoad: false } } as any,\r\n tableProps: {} as any,\r\n selfToolButton: [] as any,\r\n selfColumnButton: [] as any,\r\n selfFormButton: [] as any,\r\n pageLoading: true,\r\n defaultColumns: [] as any,\r\n otherProps: {} as any,\r\n buttonLoading: {} as any,\r\n formPageProps: {} as any,\r\n};\r\nexport default class SettingTable extends React.Component<IProps, any> {\r\n state = {\r\n ...defaultStateValue,\r\n };\r\n pageRef = React.createRef<any>();\r\n modalRef = React.createRef<any>();\r\n chartRef = React.createRef<any>();\r\n componentDidMount(): void {\r\n this.getData();\r\n ModalManager.register(\"form\", this.modalRef);\r\n ModalManager.register(\"chart\", this.chartRef);\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.tableCode != this.props.tableCode) {\r\n this.setState(\r\n {\r\n ...defaultStateValue,\r\n },\r\n () => {\r\n this.getData();\r\n }\r\n );\r\n }\r\n }\r\n\r\n initData = (res: any) => {\r\n const { otherProps, pageProps } = this.state;\r\n if (\r\n pageProps.showSearch !== false &&\r\n otherProps.defaultSearch &&\r\n otherProps.tableDataResource == \"url\"\r\n ) {\r\n let func = new Function(\"Utils,eventOption\", otherProps.defaultSearch);\r\n const params = func(defaultUtil, { pageRef: this.pageRef });\r\n setTimeout(() => {\r\n this.pageRef.current?.tableLoad({ ...params });\r\n this.pageRef.current?.setSearchParams({ ...params });\r\n }, 50); //直接设置,pageRef没绑定,暂时通过延迟函数进行解决\r\n }\r\n };\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const { tableCode, published = true, menuCode, tabParams } = this.props;\r\n // 如果tableCode存在\r\n if (tableCode) {\r\n // 定义参数\r\n let params = { code: tableCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n let table_props = JSON.parse(res.data.tableProps || \"{}\") || {};\r\n let tree_props = JSON.parse(res.data.treeProps || \"{}\") || {};\r\n let page_props = JSON.parse(res.data.pageProps || \"{}\") || {};\r\n let other_props = JSON.parse(res.data.otherParams || \"{}\") || {};\r\n let form_props = JSON.parse(res.data.formProps || \"{}\") || {};\r\n if (page_props.permission?.has == true) {\r\n page_props.permission.menuCode = menuCode;\r\n }\r\n if (published == false) {\r\n page_props.permission = false;\r\n }\r\n if (\r\n (page_props.showSearch !== false &&\r\n other_props.defaultSearch &&\r\n other_props?.tableDataResource == \"url\") ||\r\n this.props.autoLoad === false\r\n ) {\r\n table_props.store.autoLoad = false;\r\n }\r\n if (tabParams) {\r\n const Utils = defaultUtil || {};\r\n let paramFunc = new Function(\"Utils\", tabParams);\r\n let converTabParams = paramFunc(Utils);\r\n if (page_props.requestParams) {\r\n let { requestParams = {} } = page_props;\r\n let newRequestParams = {\r\n queryParams: null,\r\n addParams: null,\r\n editorParams: null,\r\n };\r\n for (let key in newRequestParams) {\r\n if (requestParams[key]) {\r\n let func = new Function(\"Utils\", requestParams[key]);\r\n let converParams = func(Utils);\r\n const { data, ...other } = converParams;\r\n let newParams = {\r\n data: { ...converTabParams, ...data },\r\n ...other,\r\n };\r\n newRequestParams[key] = newParams;\r\n } else {\r\n newRequestParams[key] = { data: { ...converTabParams } };\r\n }\r\n }\r\n page_props.requestParams = { ...newRequestParams };\r\n } else {\r\n page_props.requestParams = {\r\n queryParams: { data: { ...converTabParams } },\r\n addParams: { data: { ...converTabParams } },\r\n editorParams: { data: { ...converTabParams } },\r\n };\r\n }\r\n }\r\n this.setState(\r\n {\r\n pageProps: {\r\n ...page_props,\r\n },\r\n treeProps: {\r\n ...tree_props,\r\n },\r\n tableProps: {\r\n ...table_props,\r\n },\r\n otherProps: { ...other_props },\r\n selfColumnButton: JSON.parse(res.data.columnButtons) || [],\r\n selfToolButton: JSON.parse(res.data.toolButtons) || [],\r\n defaultColumns: page_props.columns,\r\n formPageProps: form_props,\r\n selfFormButton: form_props?.selfButton || [],\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n getSearchValues() {\r\n const value = this.pageRef.current?.getSearchValues();\r\n return value;\r\n }\r\n setSearchParams(params, callBack) {\r\n this.pageRef.current?.setSearchParams(params);\r\n }\r\n tableLoad(params: any, requestConfig = {}) {\r\n this.pageRef.current?.tableLoad(params, requestConfig);\r\n }\r\n tableReload(params = {}, autoLoad = true) {\r\n this.pageRef.current?.tableReload(params, autoLoad);\r\n }\r\n getSelectedRowKeys() {\r\n return this.pageRef.current?.getSelectedRowKeys();\r\n }\r\n getSelectedRowDatas() {\r\n return this.pageRef.current?.getSelectedRowDatas();\r\n }\r\n\r\n resetSelectedRowKeys() {\r\n return this.pageRef.current?.resetSelectedRowKeys();\r\n }\r\n render() {\r\n const {\r\n className,\r\n funcs = {},\r\n baseProps = {} as NSCBaseBageProps,\r\n } = this.props;\r\n const {\r\n pageProps,\r\n treeProps,\r\n tableProps,\r\n selfToolButton,\r\n selfColumnButton,\r\n pageLoading,\r\n defaultColumns,\r\n buttonLoading = {},\r\n formPageProps = {},\r\n selfFormButton,\r\n } = this.state;\r\n const {\r\n treeProps: settingTreeProps = {},\r\n tableProps: settingTableProps = {},\r\n ...otherProps\r\n } = baseProps;\r\n let _this = this;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(pageProps.columns, key, data);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n // history: (params, type) => {\r\n // jumpPage(params, type);\r\n // },\r\n setButtonLoading: (code, loading) => {\r\n _this.setState({\r\n buttonLoading: { ...buttonLoading, [code]: loading },\r\n });\r\n },\r\n ...defaultComFuncs,\r\n openFormModal: (params: OpenParms) => {\r\n ModalManager.showModal(\"form\", params);\r\n },\r\n openChartModal: (params: OpenChartParms) => {\r\n ModalManager.showModal(\"chart\", params);\r\n },\r\n // getCurrentProject: () => {\r\n // return getProject();\r\n // },\r\n };\r\n const { children } = this.props;\r\n let codeSelfButtons = [];\r\n let codecolumnButtons = [];\r\n let codeFormButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(child);\r\n } else if (child?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(child);\r\n } else if (child?.props?.pageType == \"formButton\") {\r\n codeFormButtons.push(child);\r\n }\r\n });\r\n } else {\r\n if (item?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(item);\r\n } else if (item?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(item);\r\n } else if (item?.props?.pageType == \"formButton\") {\r\n codeFormButtons.push(item);\r\n }\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(children);\r\n } else if (props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(children);\r\n } else if (props?.pageType == \"formButton\") {\r\n codeFormButtons.push(children);\r\n }\r\n }\r\n let newTableProps = deepMerge({ ...tableProps }, { ...settingTableProps });\r\n let newTreeProps = deepMerge({ ...treeProps }, { ...settingTreeProps });\r\n return (\r\n <div className={cls(\"nsc-framework-tablepage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n <BasePage\r\n {...pageProps}\r\n treeProps={{ ...newTreeProps }}\r\n tableProps={{ ...newTableProps }}\r\n formProps={{}}\r\n Utils={{ ...defaultUtil }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n onHideForm={() => {\r\n this.setState({\r\n pageProps: { ...pageProps, columns: defaultColumns },\r\n });\r\n this.pageRef.current?.hideForm();\r\n }}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n initData={this.initData}\r\n formPageProps={{\r\n formType: formPageProps.formType || \"modal\",\r\n props: formPageProps?.props,\r\n ...formPageProps?.otherProps,\r\n }}\r\n tableCode={this.props.tableCode}\r\n {...otherProps}\r\n >\r\n {renderSelfToolButton({\r\n selfButton: selfToolButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n loading: this.state.buttonLoading,\r\n })}\r\n {codeSelfButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfColumnButton({\r\n selfColumnButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n })}\r\n {codecolumnButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfToolButton({\r\n selfButton: selfFormButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n loading: this.state.buttonLoading,\r\n type: \"formButton\",\r\n })}\r\n {codeFormButtons.map((item) => {\r\n return item;\r\n })}\r\n </BasePage>\r\n )}\r\n <ModalForm ref={this.modalRef} />\r\n <ModalChart ref={this.chartRef} />\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
@@ -14,16 +14,17 @@ export declare const renderSelfColumnButton: ({ selfColumnButton, pageRef, funcs
|
|
|
14
14
|
}) => any;
|
|
15
15
|
export declare const convertStringToObj: (data: any, Utils: any, eventOption: any) => any;
|
|
16
16
|
export declare const ModalManager: {
|
|
17
|
-
|
|
18
|
-
register: (ref: any) => void;
|
|
19
|
-
showModal: (props: any) => void;
|
|
20
|
-
hideModal: () => void;
|
|
17
|
+
modalRefs: {};
|
|
18
|
+
register: (name: any, ref: any) => void;
|
|
19
|
+
showModal: (name: any, props: any) => void;
|
|
20
|
+
hideModal: (name: any) => void;
|
|
21
21
|
};
|
|
22
22
|
export declare const defaultComFuncs: {
|
|
23
23
|
history: (params: any, type: any) => void;
|
|
24
24
|
getCurrentProject: () => any;
|
|
25
25
|
openFormPage: (params: any, formCode: any, type?: string) => void;
|
|
26
26
|
};
|
|
27
|
+
export declare const ModalChart: React.ForwardRefExoticComponent<Omit<any, "ref"> & React.RefAttributes<unknown>>;
|
|
27
28
|
export declare const ModalForm: React.ForwardRefExoticComponent<React.RefAttributes<unknown>>;
|
|
28
29
|
export interface OpenParms {
|
|
29
30
|
title: string;
|
|
@@ -33,3 +34,8 @@ export interface OpenParms {
|
|
|
33
34
|
footer?: boolean;
|
|
34
35
|
width?: number;
|
|
35
36
|
}
|
|
37
|
+
export interface OpenChartParms {
|
|
38
|
+
title: string;
|
|
39
|
+
cahrtCode: string;
|
|
40
|
+
option: any;
|
|
41
|
+
}
|