nsc-react-component 4.1.7 → 4.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/base/select/index.js +4 -3
- package/lib/base/select/index.js.map +1 -1
- package/lib/page/BasePage/index.js +2 -2
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/FormPage/index.d.ts +1 -0
- package/lib/page/FormPage/index.js +43 -32
- package/lib/page/FormPage/index.js.map +1 -1
- package/lib/page/HeaderSearch/index.js +11 -11
- package/lib/page/HeaderSearch/index.js.map +1 -1
- package/package.json +1 -1
package/lib/base/select/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _Select from "antd/es/select";
|
|
2
2
|
const _excluded = ["url", "listeners", "viewname", "cached", "cacheKey", "viewtype"],
|
|
3
|
-
_excluded2 = ["children", "store", "data", "onChange", "onSelect", "options", "labelField", "valueField", "defaultStyle", "showGroup", "addData", "deleteData", "valueType", "groupField"];
|
|
3
|
+
_excluded2 = ["children", "store", "data", "onChange", "onSelect", "options", "labelField", "valueField", "defaultStyle", "showGroup", "addData", "deleteData", "valueType", "groupField", "dataType"];
|
|
4
4
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
|
|
5
5
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -449,7 +449,8 @@ export default class NSCSelect extends PureComponent {
|
|
|
449
449
|
addData,
|
|
450
450
|
deleteData,
|
|
451
451
|
valueType,
|
|
452
|
-
groupField
|
|
452
|
+
groupField,
|
|
453
|
+
dataType
|
|
453
454
|
} = _this$props,
|
|
454
455
|
params = _objectWithoutProperties(_this$props, _excluded2);
|
|
455
456
|
let props = {
|
|
@@ -491,4 +492,4 @@ export default class NSCSelect extends PureComponent {
|
|
|
491
492
|
}
|
|
492
493
|
_defineProperty(NSCSelect, "Option", Option);
|
|
493
494
|
_defineProperty(NSCSelect, "OptGroup", OptGroup);
|
|
494
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJTdG9yZSIsInV0aWxzIiwiY29uZmlnIiwic3R5bGVzIiwiY2xzIiwiUGlueWluTWF0Y2giLCJnZXRGbGF0dGVuRGF0YSIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiX1NlbGVjdCIsIk5TQ1NlbGVjdCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJfZGVmaW5lUHJvcGVydHkiLCJkYXRhU291cmNlIiwic2VsZWN0VmFsdWUiLCJhbGxEYXRhU291cmNlIiwiY2hpbGRyZW4iLCJhbGxDaGlsZHJlbiIsImRhdGFTdG9yZSIsImRhdGEiLCJzdG9yZSIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInZpZXduYW1lIiwiQXJyYXkiLCJpc0FycmF5IiwibmV3RGF0YSIsImxlbmd0aCIsInNwbGljZURhdGEiLCJ2YWx1ZUZpZWxkcyIsInNwbGl0IiwibWFwIiwiaXRlbSIsImkiLCJ2YWx1ZSIsInYiLCJpbmRleCIsImluZGV4T2YiLCJwdXNoIiwib3B0aW9ucyIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJjYWNoZWQiLCJjYWNoZUtleSIsInZpZXd0eXBlIiwic3RvcmVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwidmlld1VybCIsInZpZXdCaXpVcmwiLCJyZXF1ZXN0Vmlld1VybCIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwiX29iamVjdFNwcmVhZCIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwiZ2V0QWxsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInJlc2V0RGF0YSIsInN0YXRlIiwiZ2V0RGF0YSIsImdldFZhbHVlIiwic2V0VmFsdWUiLCJnZXRTZWxlY3REYXRhIiwia2V5RmllbGQiLCJyZXMiLCJ2YWwiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsIm5ld1Byb3BzIiwibmV3U3RhdGUiLCJTbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGF0ZUNoaWxkcmVuUHJvcHMiLCJzIiwiY2hpbGRyZW5Qcm9wcyIsImMiLCJjb21wb25lbnRXaWxsVW5tb3VudCIsIm9uU2VhcmNoIiwiZmlsdGVyT3B0aW9uIiwibGFiZWxGaWVsZCIsInJlc3VsdCIsImZvckVhY2giLCJsYWJlbCIsImxhYmVsRmllbGRzIiwibCIsImZsYWciLCJtYXRjaCIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwicmVuZGVyT3B0aW9uIiwib3B0aW9uRGF0YSIsInZhbHVlVHlwZSIsIk51bWJlciIsImtleSIsImlkIiwiY3JlYXRlRWxlbWVudCIsImRpc2FibGVkIiwicmVuZGVyQ2hpbGRyZW4iLCJzaG93R3JvdXAiLCJncm91cEZpZWxkIiwiRnJhZ21lbnQiLCJvcHRHcm91cERhdGEiLCJvcHRpb24iLCJvcHRHcm91cCIsIk9iamVjdCIsImtleXMiLCJvbkNoYW5nZSIsIm9uU2VsZWN0Iiwib25Ecm9wZG93blZpc2libGVDaGFuZ2UiLCJvcGVuIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJkZWZhdWx0U3R5bGUiLCJwYXJhbXMiLCJfZXhjbHVkZWQyIiwic2hvd1NlYXJjaCIsIm9wdGlvbkZpbHRlclByb3AiLCJwbGFjZWhvbGRlciIsImFsbG93Q2xlYXIiLCJhbnRkU3R5bGUiLCJtb3VudEVsZW1lbnRJZCIsImdldFBvcHVwQ29udGFpbmVyIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImNsYXNzTmFtZSIsIl9leHRlbmRzIiwiYmluZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2Uvc2VsZWN0L2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBTZWxlY3QsIFNlbGVjdFByb3BzIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFN0b3JlUHJvcHMgfSBmcm9tIFwiQGJqLW5zYy9tc25cIjtcclxuaW1wb3J0IHsgdXRpbHMgfSBmcm9tIFwiQGJqLW5zYy9tc24vbGliL3V0aWxzXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uLy4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lmxlc3NcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgUGlueWluTWF0Y2ggZnJvbSBcInBpbnlpbi1tYXRjaFwiO1xyXG5pbXBvcnQgeyBnZXRGbGF0dGVuRGF0YSB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5jb25zdCB7IE9wdGlvbiwgT3B0R3JvdXAgfSA9IFNlbGVjdDtcclxuXHJcbmludGVyZmFjZSBJU2VsZWN0UHJvcHMgZXh0ZW5kcyBTZWxlY3RQcm9wczxhbnk+IHtcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgZGF0YT86IEFycmF5PE9iamVjdD47IC8v6buY6K6k5pWw5o2uXHJcbiAgbGFiZWxGaWVsZD86IHN0cmluZztcclxuICB2YWx1ZUZpZWxkPzogc3RyaW5nO1xyXG4gIGdyb3VwRmllbGQ/OnN0cmluZztcclxuICBkZWZhdWx0U3R5bGU/OiBib29sZWFuO1xyXG4gIHNob3dHcm91cD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65YiG57uEXHJcbiAgYWRkRGF0YT86IEFycmF5PE9iamVjdD47IC8v6YWN5ZCIc3RvcmXkvb/nlKjvvIzku47lop7liqDpop3lpJbnmoTmlbDmja5cclxuICBkZWxldGVEYXRhPzogQXJyYXk8U3RyaW5nPjsgLy/phY3lkIhzdG9yZeS9v+eUqO+8jOWIoOmZpOS7juaVsOaNruW6k+S4reiOt+WPluWIsOeahOaMh+WumuaVsOaNrlxyXG4gIHZhbHVlQnJlYWs/OiBzdHJpbmc7IC8v5aSa5LiqdmFsdWXkvb/nlKjnmoTliIbpmpTnrKZcclxuICB2YWx1ZVR5cGU/OiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIjtcclxuICBbcHJvTmFtZTogc3RyaW5nXTogYW55O1xyXG4gIG9uQ2hhbmdlPzogYW55O1xyXG4gIG9uU2VsZWN0PzogYW55O1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5TQ1NlbGVjdCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SVNlbGVjdFByb3BzPiB7XHJcbiAgc3RhdGljIE9wdGlvbiA9IE9wdGlvbjtcclxuICBzdGF0aWMgT3B0R3JvdXAgPSBPcHRHcm91cDtcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gICAgc2VsZWN0VmFsdWU6IG51bGwsXHJcbiAgICBhbGxEYXRhU291cmNlOiBbXSxcclxuICAgIGNoaWxkcmVuOiBudWxsLFxyXG4gICAgYWxsQ2hpbGRyZW46IG51bGwsXHJcbiAgICBkYXRhU3RvcmU6W11cclxuICB9O1xyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgbGV0IHtcclxuICAgICAgZGF0YSxcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGFkZERhdGEgPSBbXSxcclxuICAgICAgZGVsZXRlRGF0YSA9IFtdLFxyXG4gICAgICB2YWx1ZUZpZWxkLFxyXG4gICAgfSA9IHByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICB1cmwsXHJcbiAgICAgIGxpc3RlbmVyczogbGlzdGVuZXJzUG9wcyA9IHt9LFxyXG4gICAgICB2aWV3bmFtZSxcclxuICAgICAgY2FjaGVkLFxyXG4gICAgICBjYWNoZUtleSxcclxuICAgICAgdmlld3R5cGUgPSBcInN5c1wiLFxyXG4gICAgICAuLi5zdG9yZXNcclxuICAgIH0gPSBzdG9yZTtcclxuICAgIHZhbHVlRmllbGQgPSB2YWx1ZUZpZWxkID8gdmFsdWVGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0S2V5XCIgOiBcInZhbHVlXCI7XHJcbiAgICBsZXQgeyB2aWV3VXJsLCB2aWV3Qml6VXJsIH0gPSBjb25maWcoKTtcclxuICAgIGxldCByZXF1ZXN0Vmlld1VybCA9IHZpZXd0eXBlID09IFwic3lzXCIgPyB2aWV3VXJsIDogdmlld0JpelVybDtcclxuXHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdmlld25hbWUgfHwgdXJsIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs44CBdmlld25hbWXjgIFkYXRh44CBb3B0aW9uc+S4jeiDvemDveS4uuepuu+8gVwiKTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgICBsZXQgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICBtb2RlbDogXCJtb2RlbFwiLFxyXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgICBsaXN0ZW5lcnM6IHtcclxuICAgICAgICAgIG9uQmVmb3JlTG9hZDogZnVuY3Rpb24gKHN0b3JlLCBvcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMub25CZWZvcmVMb2FkLCBfdGhpcywgW3N0b3JlLCBvcHRpb25zXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgbG9hZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3RGF0YSA9IF90aGlzLmdldEFsbERhdGEoZGF0YSk7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbmV3RGF0YSwgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSAsZGF0YVN0b3JlOiBkYXRhfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMubG9hZCwgX3RoaXMsIFtkYXRhLCBtb2RlbERhdGEsIHN0b3JlXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZGF0YUNoYW5nZWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG5ld0RhdGEgPSBfdGhpcy5nZXRBbGxEYXRhKGRhdGEpO1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG5ld0RhdGEsIGFsbERhdGFTb3VyY2U6IG5ld0RhdGEgLGRhdGFTdG9yZTogZGF0YX0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICgodmlld25hbWUgfHwgdXJsKSAmJiBkYXRhID09IG51bGwgJiYgb3B0aW9ucyA9PSBudWxsKSB7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVkID0gY2FjaGVkO1xyXG4gICAgICAgIGxldCBpc0NhY2hlS2V5ID0gY2FjaGVLZXk7XHJcbiAgICAgICAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGNhY2hlZCAhPT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgaXNDYWNoZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICBpc0NhY2hlS2V5ID0gaXNDYWNoZUtleSA/IGlzQ2FjaGVLZXkgOiB2aWV3bmFtZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCB8fCByZXF1ZXN0Vmlld1VybCArIHZpZXduYW1lLCAvL+ivu+Wtl+WFuO+8jHVybOWbuuWumu+8jHZpZXduYW1lXHJcbiAgICAgICAgICAgIGNhY2hlZDogaXNDYWNoZWQsXHJcbiAgICAgICAgICAgIGNhY2hlS2V5OiBpc0NhY2hlS2V5LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzZXREYXRhKCkge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7IGNoaWxkcmVuOiBhbGxDaGlsZHJlbiB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGFsbERhdGFTb3VyY2UsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIGdldEFsbERhdGEgPSAoZGF0YSkgPT4ge1xyXG4gICAgbGV0IHtcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgYWRkRGF0YSA9IFtdLFxyXG4gICAgICBkZWxldGVEYXRhID0gW10sXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgdmlld25hbWUsXHJcbiAgICB9ID0gc3RvcmU7XHJcbiAgICB2YWx1ZUZpZWxkID0gdmFsdWVGaWVsZCA/IHZhbHVlRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdEtleVwiIDogXCJ2YWx1ZVwiO1xyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGRhdGEpKSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICAgIGxldCBuZXdEYXRhID0gWy4uLmRhdGFdO1xyXG4gICAgaWYgKGFkZERhdGEubGVuZ3RoID4gMCkge1xyXG4gICAgICBuZXdEYXRhID0gWy4uLmFkZERhdGEsIC4uLm5ld0RhdGFdO1xyXG4gICAgfVxyXG4gICAgaWYgKGRlbGV0ZURhdGEubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgc3BsaWNlRGF0YSA9IFtdO1xyXG4gICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgIG5ld0RhdGEubWFwKChpdGVtLCBpKSA9PiB7XHJcbiAgICAgICAgbGV0IHZhbHVlID0gXCJcIjtcclxuICAgICAgICB2YWx1ZUZpZWxkcy5tYXAoKHYsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICB2YWx1ZSA9IGluZGV4ID09IDAgPyB2YWx1ZSArIGl0ZW1bdl0gOiB2YWx1ZSArIFwiLFwiICsgaXRlbVt2XTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAoZGVsZXRlRGF0YS5pbmRleE9mKHZhbHVlKSA9PSAtMSkge1xyXG4gICAgICAgICAgc3BsaWNlRGF0YS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBzcGxpY2VEYXRhO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG5ld0RhdGE7XHJcbiAgICB9XHJcbiAgfTtcclxuICBnZXREYXRhKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuYWxsRGF0YVNvdXJjZTtcclxuICB9XHJcblxyXG4gIGdldFZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuc2VsZWN0VmFsdWU7XHJcbiAgfVxyXG4gIHNldFZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0VmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRTZWxlY3REYXRhKHZhbHVlKSB7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgeyBzdG9yZSA9IHt9LCB2YWx1ZUZpZWxkIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyB2aWV3bmFtZSB9ID0gc3RvcmU7XHJcbiAgICB2YWx1ZUZpZWxkID0gdmFsdWVGaWVsZCA/IHZhbHVlRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdEtleVwiIDogXCJ2YWx1ZVwiO1xyXG4gICAgY29uc3QgbmV3RGF0YSA9IGdldEZsYXR0ZW5EYXRhKGRhdGFTb3VyY2UsIHsga2V5RmllbGQ6IHZhbHVlRmllbGQgfSk7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgICAgbGV0IHJlcyA9IFtdIGFzIGFueTtcclxuICAgICAgdmFsdWUubWFwKCh2YWwpID0+IHtcclxuICAgICAgICByZXMucHVzaChuZXdEYXRhW3ZhbF0gfHwge30pO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHJlcztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXdEYXRhW3ZhbHVlXSB8fCB7fTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmICghY2hpbGRyZW4gJiYgKGRhdGEgfHwgb3B0aW9ucykpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogZGF0YSA/IGRhdGEgOiBvcHRpb25zLFxyXG4gICAgICAgIGFsbERhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICBhbGxDaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkVXBkYXRlKG5ld1Byb3BzLCBuZXdTdGF0ZSwgU25hcHNob3QpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuLGRhdGFTdG9yZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmICghY2hpbGRyZW4gJiYgKGRhdGEgfHwgb3B0aW9ucykpIHtcclxuICAgICAgY29uc3QgbmV3RGF0YSA9IGRhdGEgPyBkYXRhIDogb3B0aW9ucztcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGFsbERhdGFTb3VyY2UpICE9PSBKU09OLnN0cmluZ2lmeShuZXdEYXRhKSkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICAgIGFsbERhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4gJiYgQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcclxuICAgICAgY29uc3Qgc3RhdGVDaGlsZHJlblByb3BzOiBhbnkgPSBbXTtcclxuICAgICAgYWxsQ2hpbGRyZW4ubWFwKChzOiBhbnkpID0+IHtcclxuICAgICAgICBzdGF0ZUNoaWxkcmVuUHJvcHMucHVzaChzLnByb3BzKTtcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbnN0IGNoaWxkcmVuUHJvcHM6IGFueSA9IFtdO1xyXG4gICAgICBjaGlsZHJlbi5tYXAoKGM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNoaWxkcmVuUHJvcHMucHVzaChjLnByb3BzKTtcclxuICAgICAgfSk7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBKU09OLnN0cmluZ2lmeShzdGF0ZUNoaWxkcmVuUHJvcHMpICE9PSBKU09OLnN0cmluZ2lmeShjaGlsZHJlblByb3BzKVxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICAgIGFsbENoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICgoSlNPTi5zdHJpbmdpZnkobmV3UHJvcHMuZGVsZXRlRGF0YSkgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMucHJvcHMuZGVsZXRlRGF0YSkpIHx8IChKU09OLnN0cmluZ2lmeShuZXdQcm9wcy5hZGREYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcy5hZGREYXRhKSkpIHtcclxuICAgICAgY29uc3QgbmV3RGF0YSA9IHRoaXMuZ2V0QWxsRGF0YShkYXRhU3RvcmUpO1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbmV3RGF0YSwgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxkYXRhU3RvcmU6IGRhdGFTdG9yZX0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUgPSAoc3RhdGUsIGNhbGxiYWNrKSA9PiB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH07XHJcbiAgfVxyXG4gIG9uU2VhcmNoKHZhbHVlKSB7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgeyBmaWx0ZXJPcHRpb24gPSB0cnVlLCBvblNlYXJjaCwgY2hpbGRyZW4sIHN0b3JlID0ge30gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgeyBsYWJlbEZpZWxkIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyB2aWV3bmFtZSB9ID0gc3RvcmU7XHJcbiAgICBsYWJlbEZpZWxkID0gbGFiZWxGaWVsZCA/IGxhYmVsRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdFZhbHVlXCIgOiBcImxhYmVsXCI7XHJcbiAgICBpZiAoZmlsdGVyT3B0aW9uKSB7XHJcbiAgICAgIGxldCByZXN1bHQgPSBbXTtcclxuICAgICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBsYWJlbCA9IFwiXCI7XHJcbiAgICAgICAgICAgIGlmIChsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgICAgICAgIGxhYmVsID0gaXRlbVtsYWJlbEZpZWxkXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYWJlbEZpZWxkczogYW55ID0gbGFiZWxGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWwgPSBpbmRleCA9PSAwID8gbGFiZWwgKyBpdGVtW2xdIDogbGFiZWwgKyBcIi1cIiArIGl0ZW1bbF07XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGZsYWcgPSBQaW55aW5NYXRjaC5tYXRjaChsYWJlbCwgdmFsdWUpO1xyXG4gICAgICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBkYXRhU291cmNlOiByZXN1bHQsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IGFsbERhdGFTb3VyY2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhbGxDaGlsZHJlbikpIHtcclxuICAgICAgICAgICAgYWxsQ2hpbGRyZW4ubWFwKChjaGlsZDogYW55LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgIGxldCBsYWJlbCA9IGNoaWxkPy5wcm9wcz8uY2hpbGRyZW47XHJcbiAgICAgICAgICAgICAgbGV0IGZsYWcgPSBQaW55aW5NYXRjaC5tYXRjaChsYWJlbCwgdmFsdWUpO1xyXG4gICAgICAgICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBjaGlsZHJlbjogcmVzdWx0LFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIG9uU2VhcmNoICYmIG9uU2VhcmNoKHZhbHVlKTtcclxuICB9XHJcbiAgcmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpIHtcclxuICAgIGxldCB7XHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIHZhbHVlVHlwZSA9IFwic3RyaW5nXCIsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxhYmVsRmllbGQgPSBsYWJlbEZpZWxkID8gbGFiZWxGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0VmFsdWVcIiA6IFwibGFiZWxcIjtcclxuICAgIHJldHVybiBvcHRpb25EYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBsZXQgdmFsdWU6IGFueTtcclxuICAgICAgaWYgKHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgdmFsdWUgPVxyXG4gICAgICAgICAgdmFsdWVUeXBlID09PSBcIm51bWJlclwiID8gTnVtYmVyKGl0ZW1bdmFsdWVGaWVsZF0pIDogaXRlbVt2YWx1ZUZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgdmFsdWUgPSBcIlwiO1xyXG4gICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBrZXkgPSBpdGVtLmlkID8gKGl0ZW0uaWQgIT09IFwidW5kZWZpbmVkXCIgPyBpdGVtLmlkIDogdmFsdWUpIDogdmFsdWU7XHJcbiAgICAgIGxldCBsYWJlbCA9IFwiXCI7XHJcbiAgICAgIGlmIChsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIGxhYmVsID0gaXRlbVtsYWJlbEZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBsYWJlbEZpZWxkczogYW55ID0gbGFiZWxGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgbGFiZWwgPSBpbmRleCA9PSAwID8gbGFiZWwgKyBpdGVtW2xdIDogbGFiZWwgKyBcIi1cIiArIGl0ZW1bbF07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8T3B0aW9uXHJcbiAgICAgICAgICBrZXk9e2tleX1cclxuICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cclxuICAgICAgICAgIGxhYmVsPXtsYWJlbH1cclxuICAgICAgICAgIGRpc2FibGVkPXtpdGVtLmRpc2FibGVkID8gdHJ1ZSA6IGZhbHNlfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtsYWJlbH1cclxuICAgICAgICA8L09wdGlvbj5cclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICByZW5kZXJDaGlsZHJlbigpIHtcclxuICAgIGNvbnN0IHsgc2hvd0dyb3VwID0gdHJ1ZSxncm91cEZpZWxkPSdncm91cE5hbWUnIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlLCBjaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICByZXR1cm4gPD57Y2hpbGRyZW59PC8+O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IG9wdEdyb3VwRGF0YSA9IHt9LFxyXG4gICAgICAgIG9wdGlvbkRhdGEgPSBbXTtcclxuICAgICAgZGF0YVNvdXJjZS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgbGV0IGxhYmVsID0gaXRlbVtncm91cEZpZWxkXTtcclxuICAgICAgICBpZiAobGFiZWwgJiYgc2hvd0dyb3VwKSB7XHJcbiAgICAgICAgICBpZiAoIW9wdEdyb3VwRGF0YVtsYWJlbF0pIG9wdEdyb3VwRGF0YVtsYWJlbF0gPSBbXTtcclxuICAgICAgICAgIG9wdEdyb3VwRGF0YVtsYWJlbF0ucHVzaChpdGVtKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgb3B0aW9uRGF0YS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGxldCBvcHRpb24gPSB0aGlzLnJlbmRlck9wdGlvbihvcHRpb25EYXRhKTtcclxuICAgICAgbGV0IG9wdEdyb3VwID0gT2JqZWN0LmtleXMob3B0R3JvdXBEYXRhKS5tYXAoKGtleSkgPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8T3B0R3JvdXAga2V5PXtrZXl9IGxhYmVsPXtrZXl9PlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJPcHRpb24ob3B0R3JvdXBEYXRhW2tleV0pfVxyXG4gICAgICAgICAgPC9PcHRHcm91cD5cclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAge29wdGlvbn1cclxuICAgICAgICAgIHtvcHRHcm91cH1cclxuICAgICAgICA8Lz5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMpIHtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0VmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0U2VsZWN0RGF0YSh2YWx1ZSk7XHJcbiAgICAgIG9uQ2hhbmdlKHZhbHVlLCBvcHRpb25zLCBkYXRhKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25TZWxlY3QodmFsdWUsIG9wdGlvbnMpIHtcclxuICAgIGNvbnN0IHsgb25TZWxlY3QgfSA9IHRoaXMucHJvcHM7XHJcblxyXG4gICAgaWYgKG9uU2VsZWN0KSB7XHJcbiAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldFNlbGVjdERhdGEodmFsdWUpO1xyXG4gICAgICBvblNlbGVjdCh2YWx1ZSwgb3B0aW9ucywgZGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlKG9wZW4pIHtcclxuICAgIGlmICghb3Blbikge1xyXG4gICAgICB0aGlzLnJlc2V0RGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBzdG9yZSxcclxuICAgICAgZGF0YSxcclxuICAgICAgb25DaGFuZ2UsXHJcbiAgICAgIG9uU2VsZWN0LFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICBsYWJlbEZpZWxkLFxyXG4gICAgICB2YWx1ZUZpZWxkLFxyXG4gICAgICBkZWZhdWx0U3R5bGUsXHJcbiAgICAgIHNob3dHcm91cCA9IHRydWUsXHJcbiAgICAgIGFkZERhdGEsXHJcbiAgICAgIGRlbGV0ZURhdGEsXHJcbiAgICAgIHZhbHVlVHlwZSxcclxuICAgICAgZ3JvdXBGaWVsZCxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCBwcm9wcyA9IHtcclxuICAgICAgZmlsdGVyT3B0aW9uOiBmYWxzZSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJ1ZSxcclxuICAgICAgb3B0aW9uRmlsdGVyUHJvcDogXCJsYWJlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlcjogXCLor7fpgInmi6lcIixcclxuICAgICAgYWxsb3dDbGVhcjogdHJ1ZSxcclxuICAgIH0gYXMgYW55O1xyXG4gICAgbGV0IHsgYW50ZFN0eWxlLCBtb3VudEVsZW1lbnRJZCB9ID0gY29uZmlnKCk7XHJcbiAgICBpZiAobW91bnRFbGVtZW50SWQpIHtcclxuICAgICAgcHJvcHMgPSB7XHJcbiAgICAgICAgZ2V0UG9wdXBDb250YWluZXI6ICgpID0+IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG1vdW50RWxlbWVudElkKSxcclxuICAgICAgICAuLi5wcm9wcyxcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmICgoZGVmYXVsdFN0eWxlIHx8IGFudGRTdHlsZSkgJiYgZGVmYXVsdFN0eWxlID09PSB0cnVlKSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJuc2Nfc2VsZWN0XCJdLCB0aGlzLnByb3BzLmNsYXNzTmFtZSl9PlxyXG4gICAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMub25TZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxTZWxlY3RcclxuICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnNlbGVjdFZhbHVlfVxyXG4gICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBvblNlbGVjdD17dGhpcy5vblNlbGVjdC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIHsuLi5wcm9wc31cclxuICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3RoaXMucmVuZGVyQ2hpbGRyZW4oKX1cclxuICAgICAgICA8L1NlbGVjdD5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQUssSUFBSUMsYUFBYSxRQUFRLE9BQU87QUFFNUMsT0FBT0MsS0FBSyxNQUFzQixhQUFhO0FBQy9DLFNBQVNDLEtBQUssUUFBUSx1QkFBdUI7QUFDN0MsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsR0FBRyxNQUFNLFlBQVk7QUFFNUIsT0FBT0MsV0FBVyxNQUFNLGNBQWM7QUFDdEMsU0FBU0MsY0FBYyxRQUFRLG1CQUFtQjtBQUNsRCxNQUFNO0VBQUVDLE1BQU07RUFBRUM7QUFBUyxDQUFDLEdBQUFDLE9BQVM7QUFrQm5DLGVBQWUsTUFBTUMsU0FBUyxTQUFTWCxhQUFhLENBQWU7RUFZakVZLFdBQVdBLENBQUNDLEtBQUssRUFBRTtJQUNqQixLQUFLLENBQUNBLEtBQUssQ0FBQztJQUFDQyxlQUFBLGdCQVZQO01BQ05DLFVBQVUsRUFBRSxFQUFFO01BQ2RDLFdBQVcsRUFBRSxJQUFJO01BQ2pCQyxhQUFhLEVBQUUsRUFBRTtNQUNqQkMsUUFBUSxFQUFFLElBQUk7TUFDZEMsV0FBVyxFQUFFLElBQUk7TUFDakJDLFNBQVMsRUFBQztJQUNaLENBQUM7SUFBQU4sZUFBQSxnQkFDTyxD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
|
|
495
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJTdG9yZSIsInV0aWxzIiwiY29uZmlnIiwic3R5bGVzIiwiY2xzIiwiUGlueWluTWF0Y2giLCJnZXRGbGF0dGVuRGF0YSIsIk9wdGlvbiIsIk9wdEdyb3VwIiwiX1NlbGVjdCIsIk5TQ1NlbGVjdCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJfZGVmaW5lUHJvcGVydHkiLCJkYXRhU291cmNlIiwic2VsZWN0VmFsdWUiLCJhbGxEYXRhU291cmNlIiwiY2hpbGRyZW4iLCJhbGxDaGlsZHJlbiIsImRhdGFTdG9yZSIsImRhdGEiLCJzdG9yZSIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInZpZXduYW1lIiwiQXJyYXkiLCJpc0FycmF5IiwibmV3RGF0YSIsImxlbmd0aCIsInNwbGljZURhdGEiLCJ2YWx1ZUZpZWxkcyIsInNwbGl0IiwibWFwIiwiaXRlbSIsImkiLCJ2YWx1ZSIsInYiLCJpbmRleCIsImluZGV4T2YiLCJwdXNoIiwib3B0aW9ucyIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJjYWNoZWQiLCJjYWNoZUtleSIsInZpZXd0eXBlIiwic3RvcmVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwidmlld1VybCIsInZpZXdCaXpVcmwiLCJyZXF1ZXN0Vmlld1VybCIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwiX29iamVjdFNwcmVhZCIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwiZ2V0QWxsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInJlc2V0RGF0YSIsInN0YXRlIiwiZ2V0RGF0YSIsImdldFZhbHVlIiwic2V0VmFsdWUiLCJnZXRTZWxlY3REYXRhIiwia2V5RmllbGQiLCJyZXMiLCJ2YWwiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsIm5ld1Byb3BzIiwibmV3U3RhdGUiLCJTbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGF0ZUNoaWxkcmVuUHJvcHMiLCJzIiwiY2hpbGRyZW5Qcm9wcyIsImMiLCJjb21wb25lbnRXaWxsVW5tb3VudCIsIm9uU2VhcmNoIiwiZmlsdGVyT3B0aW9uIiwibGFiZWxGaWVsZCIsInJlc3VsdCIsImZvckVhY2giLCJsYWJlbCIsImxhYmVsRmllbGRzIiwibCIsImZsYWciLCJtYXRjaCIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwicmVuZGVyT3B0aW9uIiwib3B0aW9uRGF0YSIsInZhbHVlVHlwZSIsIk51bWJlciIsImtleSIsImlkIiwiY3JlYXRlRWxlbWVudCIsImRpc2FibGVkIiwicmVuZGVyQ2hpbGRyZW4iLCJzaG93R3JvdXAiLCJncm91cEZpZWxkIiwiRnJhZ21lbnQiLCJvcHRHcm91cERhdGEiLCJvcHRpb24iLCJvcHRHcm91cCIsIk9iamVjdCIsImtleXMiLCJvbkNoYW5nZSIsIm9uU2VsZWN0Iiwib25Ecm9wZG93blZpc2libGVDaGFuZ2UiLCJvcGVuIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJkZWZhdWx0U3R5bGUiLCJkYXRhVHlwZSIsInBhcmFtcyIsIl9leGNsdWRlZDIiLCJzaG93U2VhcmNoIiwib3B0aW9uRmlsdGVyUHJvcCIsInBsYWNlaG9sZGVyIiwiYWxsb3dDbGVhciIsImFudGRTdHlsZSIsIm1vdW50RWxlbWVudElkIiwiZ2V0UG9wdXBDb250YWluZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiY2xhc3NOYW1lIiwiX2V4dGVuZHMiLCJiaW5kIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYmFzZS9zZWxlY3QvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7IFNlbGVjdCwgU2VsZWN0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IGNvbmZpZyBmcm9tIFwiLi4vLi4vY29uZmlnXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcbmltcG9ydCBQaW55aW5NYXRjaCBmcm9tIFwicGlueWluLW1hdGNoXCI7XHJcbmltcG9ydCB7IGdldEZsYXR0ZW5EYXRhIH0gZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmNvbnN0IHsgT3B0aW9uLCBPcHRHcm91cCB9ID0gU2VsZWN0O1xyXG5cclxuaW50ZXJmYWNlIElTZWxlY3RQcm9wcyBleHRlbmRzIFNlbGVjdFByb3BzPGFueT4ge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/pu5jorqTmlbDmja5cclxuICBsYWJlbEZpZWxkPzogc3RyaW5nO1xyXG4gIHZhbHVlRmllbGQ/OiBzdHJpbmc7XHJcbiAgZ3JvdXBGaWVsZD86c3RyaW5nO1xyXG4gIGRlZmF1bHRTdHlsZT86IGJvb2xlYW47XHJcbiAgc2hvd0dyb3VwPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbnu4RcclxuICBhZGREYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/phY3lkIhzdG9yZeS9v+eUqO+8jOS7juWinuWKoOmineWklueahOaVsOaNrlxyXG4gIGRlbGV0ZURhdGE/OiBBcnJheTxTdHJpbmc+OyAvL+mFjeWQiHN0b3Jl5L2/55So77yM5Yig6Zmk5LuO5pWw5o2u5bqT5Lit6I635Y+W5Yiw55qE5oyH5a6a5pWw5o2uXHJcbiAgdmFsdWVCcmVhaz86IHN0cmluZzsgLy/lpJrkuKp2YWx1ZeS9v+eUqOeahOWIhumalOesplxyXG4gIHZhbHVlVHlwZT86IFwic3RyaW5nXCIgfCBcIm51bWJlclwiO1xyXG4gIFtwcm9OYW1lOiBzdHJpbmddOiBhbnk7XHJcbiAgb25DaGFuZ2U/OiBhbnk7XHJcbiAgb25TZWxlY3Q/OiBhbnk7XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDU2VsZWN0IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJU2VsZWN0UHJvcHM+IHtcclxuICBzdGF0aWMgT3B0aW9uID0gT3B0aW9uO1xyXG4gIHN0YXRpYyBPcHRHcm91cCA9IE9wdEdyb3VwO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogW10sXHJcbiAgICBzZWxlY3RWYWx1ZTogbnVsbCxcclxuICAgIGFsbERhdGFTb3VyY2U6IFtdLFxyXG4gICAgY2hpbGRyZW46IG51bGwsXHJcbiAgICBhbGxDaGlsZHJlbjogbnVsbCxcclxuICAgIGRhdGFTdG9yZTpbXVxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBsZXQge1xyXG4gICAgICBkYXRhLFxyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgYWRkRGF0YSA9IFtdLFxyXG4gICAgICBkZWxldGVEYXRhID0gW10sXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHVybCxcclxuICAgICAgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sXHJcbiAgICAgIHZpZXduYW1lLFxyXG4gICAgICBjYWNoZWQsXHJcbiAgICAgIGNhY2hlS2V5LFxyXG4gICAgICB2aWV3dHlwZSA9IFwic3lzXCIsXHJcbiAgICAgIC4uLnN0b3Jlc1xyXG4gICAgfSA9IHN0b3JlO1xyXG4gICAgdmFsdWVGaWVsZCA9IHZhbHVlRmllbGQgPyB2YWx1ZUZpZWxkIDogdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxldCB7IHZpZXdVcmwsIHZpZXdCaXpVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHJlcXVlc3RWaWV3VXJsID0gdmlld3R5cGUgPT0gXCJzeXNcIiA/IHZpZXdVcmwgOiB2aWV3Qml6VXJsO1xyXG5cclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB2aWV3bmFtZSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIF2aWV3bmFtZeOAgWRhdGHjgIFvcHRpb25z5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gX3RoaXMuZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBuZXdEYXRhLCBhbGxEYXRhU291cmNlOiBuZXdEYXRhICxkYXRhU3RvcmU6IGRhdGF9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3RGF0YSA9IF90aGlzLmdldEFsbERhdGEoZGF0YSk7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbmV3RGF0YSwgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSAsZGF0YVN0b3JlOiBkYXRhfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgaWYgKCh2aWV3bmFtZSB8fCB1cmwpICYmIGRhdGEgPT0gbnVsbCAmJiBvcHRpb25zID09IG51bGwpIHtcclxuICAgICAgICBsZXQgaXNDYWNoZWQgPSBjYWNoZWQ7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVLZXkgPSBjYWNoZUtleTtcclxuICAgICAgICBpZiAodmlld25hbWUpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgY2FjaGVkICE9PSBcImJvb2xlYW5cIikge1xyXG4gICAgICAgICAgICBpc0NhY2hlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIGlzQ2FjaGVLZXkgPSBpc0NhY2hlS2V5ID8gaXNDYWNoZUtleSA6IHZpZXduYW1lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgYXV0b0xvYWQ6IHRydWUsXHJcbiAgICAgICAgICAgIHVybDogdXJsIHx8IHJlcXVlc3RWaWV3VXJsICsgdmlld25hbWUsIC8v6K+75a2X5YW477yMdXJs5Zu65a6a77yMdmlld25hbWVcclxuICAgICAgICAgICAgY2FjaGVkOiBpc0NhY2hlZCxcclxuICAgICAgICAgICAgY2FjaGVLZXk6IGlzQ2FjaGVLZXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4uc3RvcmVQcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RvcmUgPSBuZXcgU3RvcmUoc3RvcmVQcm9wcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldERhdGEoKSB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBhbGxEYXRhU291cmNlLCBhbGxDaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHsgY2hpbGRyZW46IGFsbENoaWxkcmVuIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogYWxsRGF0YVNvdXJjZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0QWxsRGF0YSA9IChkYXRhKSA9PiB7XHJcbiAgICBsZXQge1xyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBhZGREYXRhID0gW10sXHJcbiAgICAgIGRlbGV0ZURhdGEgPSBbXSxcclxuICAgICAgdmFsdWVGaWVsZCxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICB2aWV3bmFtZSxcclxuICAgIH0gPSBzdG9yZTtcclxuICAgIHZhbHVlRmllbGQgPSB2YWx1ZUZpZWxkID8gdmFsdWVGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0S2V5XCIgOiBcInZhbHVlXCI7XHJcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoZGF0YSkpIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG4gICAgbGV0IG5ld0RhdGEgPSBbLi4uZGF0YV07XHJcbiAgICBpZiAoYWRkRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIG5ld0RhdGEgPSBbLi4uYWRkRGF0YSwgLi4ubmV3RGF0YV07XHJcbiAgICB9XHJcbiAgICBpZiAoZGVsZXRlRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBzcGxpY2VEYXRhID0gW107XHJcbiAgICAgIGNvbnN0IHZhbHVlRmllbGRzOiBhbnkgPSB2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgbmV3RGF0YS5tYXAoKGl0ZW0sIGkpID0+IHtcclxuICAgICAgICBsZXQgdmFsdWUgPSBcIlwiO1xyXG4gICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmIChkZWxldGVEYXRhLmluZGV4T2YodmFsdWUpID09IC0xKSB7XHJcbiAgICAgICAgICBzcGxpY2VEYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHNwbGljZURhdGE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbmV3RGF0YTtcclxuICAgIH1cclxuICB9O1xyXG4gIGdldERhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5hbGxEYXRhU291cmNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZTtcclxuICB9XHJcbiAgc2V0VmFsdWUodmFsdWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldFNlbGVjdERhdGEodmFsdWUpIHtcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCB7IHN0b3JlID0ge30sIHZhbHVlRmllbGQgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IHZpZXduYW1lIH0gPSBzdG9yZTtcclxuICAgIHZhbHVlRmllbGQgPSB2YWx1ZUZpZWxkID8gdmFsdWVGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0S2V5XCIgOiBcInZhbHVlXCI7XHJcbiAgICBjb25zdCBuZXdEYXRhID0gZ2V0RmxhdHRlbkRhdGEoZGF0YVNvdXJjZSwgeyBrZXlGaWVsZDogdmFsdWVGaWVsZCB9KTtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICBsZXQgcmVzID0gW10gYXMgYW55O1xyXG4gICAgICB2YWx1ZS5tYXAoKHZhbCkgPT4ge1xyXG4gICAgICAgIHJlcy5wdXNoKG5ld0RhdGFbdmFsXSB8fCB7fSk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG5ld0RhdGFbdmFsdWVdIHx8IHt9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgICAgYWxsRGF0YVNvdXJjZTogZGF0YSA/IGRhdGEgOiBvcHRpb25zLFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgIGFsbENoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRVcGRhdGUobmV3UHJvcHMsIG5ld1N0YXRlLCBTbmFwc2hvdCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4sZGF0YVN0b3JlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gZGF0YSA/IGRhdGEgOiBvcHRpb25zO1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoYWxsRGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KG5ld0RhdGEpKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbiAmJiBBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjb25zdCBzdGF0ZUNoaWxkcmVuUHJvcHM6IGFueSA9IFtdO1xyXG4gICAgICBhbGxDaGlsZHJlbi5tYXAoKHM6IGFueSkgPT4ge1xyXG4gICAgICAgIHN0YXRlQ2hpbGRyZW5Qcm9wcy5wdXNoKHMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgY29uc3QgY2hpbGRyZW5Qcm9wczogYW55ID0gW107XHJcbiAgICAgIGNoaWxkcmVuLm1hcCgoYzogYW55KSA9PiB7XHJcbiAgICAgICAgY2hpbGRyZW5Qcm9wcy5wdXNoKGMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHN0YXRlQ2hpbGRyZW5Qcm9wcykgIT09IEpTT04uc3RyaW5naWZ5KGNoaWxkcmVuUHJvcHMpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKChKU09OLnN0cmluZ2lmeShuZXdQcm9wcy5kZWxldGVEYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcy5kZWxldGVEYXRhKSkgfHwgKEpTT04uc3RyaW5naWZ5KG5ld1Byb3BzLmFkZERhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzLmFkZERhdGEpKSkge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gdGhpcy5nZXRBbGxEYXRhKGRhdGFTdG9yZSk7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBuZXdEYXRhLCBhbGxEYXRhU291cmNlOiBuZXdEYXRhLGRhdGFTdG9yZTogZGF0YVN0b3JlfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSA9IChzdGF0ZSwgY2FsbGJhY2spID0+IHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfTtcclxuICB9XHJcbiAgb25TZWFyY2godmFsdWUpIHtcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB7IGZpbHRlck9wdGlvbiA9IHRydWUsIG9uU2VhcmNoLCBjaGlsZHJlbiwgc3RvcmUgPSB7fSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCB7IGxhYmVsRmllbGQgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IHZpZXduYW1lIH0gPSBzdG9yZTtcclxuICAgIGxhYmVsRmllbGQgPSBsYWJlbEZpZWxkID8gbGFiZWxGaWVsZCA6IHZpZXduYW1lID8gXCJkaWN0VmFsdWVcIiA6IFwibGFiZWxcIjtcclxuICAgIGlmIChmaWx0ZXJPcHRpb24pIHtcclxuICAgICAgbGV0IHJlc3VsdCA9IFtdO1xyXG4gICAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBhbGxEYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgICAgICAgaWYgKGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgbGFiZWwgPSBpdGVtW2xhYmVsRmllbGRdO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGxhYmVsRmllbGRzOiBhbnkgPSBsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICAgICAgICBsYWJlbEZpZWxkcy5tYXAoKGwsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGl0ZW1bbF0gOiBsYWJlbCArIFwiLVwiICsgaXRlbVtsXTtcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQgZmxhZyA9IFBpbnlpbk1hdGNoLm1hdGNoKGxhYmVsLCB2YWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0LnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IHJlc3VsdCxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYWxsRGF0YVNvdXJjZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFsbENoaWxkcmVuKSkge1xyXG4gICAgICAgICAgICBhbGxDaGlsZHJlbi5tYXAoKGNoaWxkOiBhbnksIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgbGV0IGxhYmVsID0gY2hpbGQ/LnByb3BzPy5jaGlsZHJlbjtcclxuICAgICAgICAgICAgICBsZXQgZmxhZyA9IFBpbnlpbk1hdGNoLm1hdGNoKGxhYmVsLCB2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiByZXN1bHQsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25TZWFyY2ggJiYgb25TZWFyY2godmFsdWUpO1xyXG4gIH1cclxuICByZW5kZXJPcHRpb24ob3B0aW9uRGF0YSkge1xyXG4gICAgbGV0IHtcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgdmFsdWVUeXBlID0gXCJzdHJpbmdcIixcclxuICAgICAgbGFiZWxGaWVsZCxcclxuICAgICAgdmFsdWVGaWVsZCxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyB2aWV3bmFtZSB9ID0gc3RvcmU7XHJcbiAgICB2YWx1ZUZpZWxkID0gdmFsdWVGaWVsZCA/IHZhbHVlRmllbGQgOiB2aWV3bmFtZSA/IFwiZGljdEtleVwiIDogXCJ2YWx1ZVwiO1xyXG4gICAgbGFiZWxGaWVsZCA9IGxhYmVsRmllbGQgPyBsYWJlbEZpZWxkIDogdmlld25hbWUgPyBcImRpY3RWYWx1ZVwiIDogXCJsYWJlbFwiO1xyXG4gICAgcmV0dXJuIG9wdGlvbkRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGxldCB2YWx1ZTogYW55O1xyXG4gICAgICBpZiAodmFsdWVGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICB2YWx1ZSA9XHJcbiAgICAgICAgICB2YWx1ZVR5cGUgPT09IFwibnVtYmVyXCIgPyBOdW1iZXIoaXRlbVt2YWx1ZUZpZWxkXSkgOiBpdGVtW3ZhbHVlRmllbGRdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlRmllbGRzOiBhbnkgPSB2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBpdGVtW3ZdIDogdmFsdWUgKyBcIixcIiArIGl0ZW1bdl07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IGtleSA9IGl0ZW0uaWQgPyAoaXRlbS5pZCAhPT0gXCJ1bmRlZmluZWRcIiA/IGl0ZW0uaWQgOiB2YWx1ZSkgOiB2YWx1ZTtcclxuICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgaWYgKGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgbGFiZWwgPSBpdGVtW2xhYmVsRmllbGRdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGxhYmVsRmllbGRzOiBhbnkgPSBsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICBsYWJlbEZpZWxkcy5tYXAoKGwsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGl0ZW1bbF0gOiBsYWJlbCArIFwiLVwiICsgaXRlbVtsXTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxPcHRpb25cclxuICAgICAgICAgIGtleT17a2V5fVxyXG4gICAgICAgICAgdmFsdWU9e3ZhbHVlfVxyXG4gICAgICAgICAgbGFiZWw9e2xhYmVsfVxyXG4gICAgICAgICAgZGlzYWJsZWQ9e2l0ZW0uZGlzYWJsZWQgPyB0cnVlIDogZmFsc2V9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge2xhYmVsfVxyXG4gICAgICAgIDwvT3B0aW9uPlxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJlbmRlckNoaWxkcmVuKCkge1xyXG4gICAgY29uc3QgeyBzaG93R3JvdXAgPSB0cnVlLGdyb3VwRmllbGQ9J2dyb3VwTmFtZScgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UsIGNoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHJldHVybiA8PntjaGlsZHJlbn08Lz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgb3B0R3JvdXBEYXRhID0ge30sXHJcbiAgICAgICAgb3B0aW9uRGF0YSA9IFtdO1xyXG4gICAgICBkYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICBsZXQgbGFiZWwgPSBpdGVtW2dyb3VwRmllbGRdO1xyXG4gICAgICAgIGlmIChsYWJlbCAmJiBzaG93R3JvdXApIHtcclxuICAgICAgICAgIGlmICghb3B0R3JvdXBEYXRhW2xhYmVsXSkgb3B0R3JvdXBEYXRhW2xhYmVsXSA9IFtdO1xyXG4gICAgICAgICAgb3B0R3JvdXBEYXRhW2xhYmVsXS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBvcHRpb25EYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgbGV0IG9wdGlvbiA9IHRoaXMucmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpO1xyXG4gICAgICBsZXQgb3B0R3JvdXAgPSBPYmplY3Qua2V5cyhvcHRHcm91cERhdGEpLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxPcHRHcm91cCBrZXk9e2tleX0gbGFiZWw9e2tleX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlck9wdGlvbihvcHRHcm91cERhdGFba2V5XSl9XHJcbiAgICAgICAgICA8L09wdEdyb3VwPlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICB7b3B0aW9ufVxyXG4gICAgICAgICAge29wdEdyb3VwfVxyXG4gICAgICAgIDwvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGlmIChvbkNoYW5nZSkge1xyXG4gICAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRTZWxlY3REYXRhKHZhbHVlKTtcclxuICAgICAgb25DaGFuZ2UodmFsdWUsIG9wdGlvbnMsIGRhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvblNlbGVjdCh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvblNlbGVjdCB9ID0gdGhpcy5wcm9wcztcclxuXHJcbiAgICBpZiAob25TZWxlY3QpIHtcclxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0U2VsZWN0RGF0YSh2YWx1ZSk7XHJcbiAgICAgIG9uU2VsZWN0KHZhbHVlLCBvcHRpb25zLCBkYXRhKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25Ecm9wZG93blZpc2libGVDaGFuZ2Uob3Blbikge1xyXG4gICAgaWYgKCFvcGVuKSB7XHJcbiAgICAgIHRoaXMucmVzZXREYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIHN0b3JlLFxyXG4gICAgICBkYXRhLFxyXG4gICAgICBvbkNoYW5nZSxcclxuICAgICAgb25TZWxlY3QsXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICAgIGRlZmF1bHRTdHlsZSxcclxuICAgICAgc2hvd0dyb3VwID0gdHJ1ZSxcclxuICAgICAgYWRkRGF0YSxcclxuICAgICAgZGVsZXRlRGF0YSxcclxuICAgICAgdmFsdWVUeXBlLFxyXG4gICAgICBncm91cEZpZWxkLFxyXG4gICAgICBkYXRhVHlwZSxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCBwcm9wcyA9IHtcclxuICAgICAgZmlsdGVyT3B0aW9uOiBmYWxzZSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJ1ZSxcclxuICAgICAgb3B0aW9uRmlsdGVyUHJvcDogXCJsYWJlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlcjogXCLor7fpgInmi6lcIixcclxuICAgICAgYWxsb3dDbGVhcjogdHJ1ZSxcclxuICAgIH0gYXMgYW55O1xyXG4gICAgbGV0IHsgYW50ZFN0eWxlLCBtb3VudEVsZW1lbnRJZCB9ID0gY29uZmlnKCk7XHJcbiAgICBpZiAobW91bnRFbGVtZW50SWQpIHtcclxuICAgICAgcHJvcHMgPSB7XHJcbiAgICAgICAgZ2V0UG9wdXBDb250YWluZXI6ICgpID0+IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG1vdW50RWxlbWVudElkKSxcclxuICAgICAgICAuLi5wcm9wcyxcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmICgoZGVmYXVsdFN0eWxlIHx8IGFudGRTdHlsZSkgJiYgZGVmYXVsdFN0eWxlID09PSB0cnVlKSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJuc2Nfc2VsZWN0XCJdLCB0aGlzLnByb3BzLmNsYXNzTmFtZSl9PlxyXG4gICAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMub25TZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxTZWxlY3RcclxuICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnNlbGVjdFZhbHVlfVxyXG4gICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBvblNlbGVjdD17dGhpcy5vblNlbGVjdC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIHsuLi5wcm9wc31cclxuICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3RoaXMucmVuZGVyQ2hpbGRyZW4oKX1cclxuICAgICAgICA8L1NlbGVjdD5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQUssSUFBSUMsYUFBYSxRQUFRLE9BQU87QUFFNUMsT0FBT0MsS0FBSyxNQUFzQixhQUFhO0FBQy9DLFNBQVNDLEtBQUssUUFBUSx1QkFBdUI7QUFDN0MsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsTUFBTSxNQUFNLGNBQWM7QUFDakMsT0FBT0MsR0FBRyxNQUFNLFlBQVk7QUFFNUIsT0FBT0MsV0FBVyxNQUFNLGNBQWM7QUFDdEMsU0FBU0MsY0FBYyxRQUFRLG1CQUFtQjtBQUNsRCxNQUFNO0VBQUVDLE1BQU07RUFBRUM7QUFBUyxDQUFDLEdBQUFDLE9BQVM7QUFrQm5DLGVBQWUsTUFBTUMsU0FBUyxTQUFTWCxhQUFhLENBQWU7RUFZakVZLFdBQVdBLENBQUNDLEtBQUssRUFBRTtJQUNqQixLQUFLLENBQUNBLEtBQUssQ0FBQztJQUFDQyxlQUFBLGdCQVZQO01BQ05DLFVBQVUsRUFBRSxFQUFFO01BQ2RDLFdBQVcsRUFBRSxJQUFJO01BQ2pCQyxhQUFhLEVBQUUsRUFBRTtNQUNqQkMsUUFBUSxFQUFFLElBQUk7TUFDZEMsV0FBVyxFQUFFLElBQUk7TUFDakJDLFNBQVMsRUFBQztJQUNaLENBQUM7SUFBQU4sZUFBQSxnQkFDTyxDQUFDLENBQUM7SUFBQUEsZUFBQSxxQkEyRklPLElBQUksSUFBSztNQUNyQixJQUFJO1FBQ0ZDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDVkMsT0FBTyxHQUFHLEVBQUU7UUFDWkMsVUFBVSxHQUFHLEVBQUU7UUFDZkM7TUFDRixDQUFDLEdBQUcsSUFBSSxDQUFDWixLQUFLO01BQ2QsTUFBTTtRQUNKYTtNQUNGLENBQUMsR0FBR0osS0FBSztNQUNURyxVQUFVLEdBQUdBLFVBQVUsR0FBR0EsVUFBVSxHQUFHQyxRQUFRLEdBQUcsU0FBUyxHQUFHLE9BQU87TUFDckUsSUFBSSxDQUFDQyxLQUFLLENBQUNDLE9BQU8sQ0FBQ1AsSUFBSSxDQUFDLEVBQUU7UUFDeEIsT0FBTyxFQUFFO01BQ1g7TUFDQSxJQUFJUSxPQUFPLEdBQUcsQ0FBQyxHQUFHUixJQUFJLENBQUM7TUFDdkIsSUFBSUUsT0FBTyxDQUFDTyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3RCRCxPQUFPLEdBQUcsQ0FBQyxHQUFHTixPQUFPLEVBQUUsR0FBR00sT0FBTyxDQUFDO01BQ3BDO01BQ0EsSUFBSUwsVUFBVSxDQUFDTSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3pCLElBQUlDLFVBQVUsR0FBRyxFQUFFO1FBQ25CLE1BQU1DLFdBQWdCLEdBQUdQLFVBQVUsQ0FBQ1EsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUM5Q0osT0FBTyxDQUFDSyxHQUFHLENBQUMsQ0FBQ0MsSUFBSSxFQUFFQyxDQUFDLEtBQUs7VUFDdkIsSUFBSUMsS0FBSyxHQUFHLEVBQUU7VUFDZEwsV0FBVyxDQUFDRSxHQUFHLENBQUMsQ0FBQ0ksQ0FBQyxFQUFFQyxLQUFLLEtBQUs7WUFDNUJGLEtBQUssR0FBR0UsS0FBSyxJQUFJLENBQUMsR0FBR0YsS0FBSyxHQUFHRixJQUFJLENBQUNHLENBQUMsQ0FBQyxHQUFHRCxLQUFLLEdBQUcsR0FBRyxHQUFHRixJQUFJLENBQUNHLENBQUMsQ0FBQztVQUM5RCxDQUFDLENBQUM7VUFDRixJQUFJZCxVQUFVLENBQUNnQixPQUFPLENBQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ25DTixVQUFVLENBQUNVLElBQUksQ0FBQ04sSUFBSSxDQUFDO1VBQ3ZCO1FBQ0YsQ0FBQyxDQUFDO1FBQ0YsT0FBT0osVUFBVTtNQUNuQixDQUFDLE1BQU07UUFDTCxPQUFPRixPQUFPO01BQ2hCO0lBQ0YsQ0FBQztJQTFIQyxJQUFJO01BQ0ZSLElBQUksRUFBSkEsS0FBSTtNQUNKQyxLQUFLLEVBQUxBLE1BQUssR0FBRyxDQUFDLENBQUM7TUFDVkosUUFBUTtNQUNSd0IsT0FBTztNQUNQbkIsT0FBTyxFQUFQQSxRQUFPLEdBQUcsRUFBRTtNQUNaQyxVQUFVLEVBQVZBLFdBQVUsR0FBRyxFQUFFO01BQ2ZDLFVBQVUsRUFBVkE7SUFDRixDQUFDLEdBQUdaLEtBQUs7SUFDVCxNQUFNO1FBQ0o4QixHQUFHO1FBQ0hDLFNBQVMsRUFBRUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUM3Qm5CLFFBQVEsRUFBUkEsU0FBUTtRQUNSb0IsTUFBTTtRQUNOQyxRQUFRO1FBQ1JDLFFBQVEsR0FBRztNQUViLENBQUMsR0FBRzFCLE1BQUs7TUFESjJCLE1BQU0sR0FBQUMsd0JBQUEsQ0FDUDVCLE1BQUssRUFBQTZCLFNBQUE7SUFDVDFCLFdBQVUsR0FBR0EsV0FBVSxHQUFHQSxXQUFVLEdBQUdDLFNBQVEsR0FBRyxTQUFTLEdBQUcsT0FBTztJQUNyRSxJQUFJO01BQUUwQixPQUFPO01BQUVDO0lBQVcsQ0FBQyxHQUFHbEQsTUFBTSxDQUFDLENBQUM7SUFDdEMsSUFBSW1ELGNBQWMsR0FBR04sUUFBUSxJQUFJLEtBQUssR0FBR0ksT0FBTyxHQUFHQyxVQUFVO0lBRTdELElBQUksQ0FBQ25DLFFBQVEsRUFBRTtNQUNiLElBQUksRUFBRUcsS0FBSSxJQUFJSyxTQUFRLElBQUlpQixHQUFHLElBQUlELE9BQU8sQ0FBQyxFQUFFO1FBQ3pDLE1BQU0sSUFBSWEsS0FBSyxDQUFDLGlDQUFpQyxDQUFDO01BQ3BEO01BQ0EsSUFBSUMsS0FBSyxHQUFHLElBQUk7TUFDaEIsSUFBSUMsVUFBVSxHQUFBQyxhQUFBO1FBQ1pDLEtBQUssRUFBRSxPQUFPO1FBQ2RDLFNBQVMsRUFBRSxJQUFJO1FBQ2ZoQixTQUFTLEVBQUU7VUFDVGlCLFlBQVksRUFBRSxTQUFBQSxDQUFVdkMsS0FBSyxFQUFFb0IsT0FBTyxFQUFFO1lBQ3RDeEMsS0FBSyxDQUFDNEQsUUFBUSxDQUFDakIsYUFBYSxDQUFDZ0IsWUFBWSxFQUFFTCxLQUFLLEVBQUUsQ0FBQ2xDLEtBQUssRUFBRW9CLE9BQU8sQ0FBQyxDQUFDO1VBQ3JFLENBQUM7VUFDRHFCLElBQUksRUFBRSxTQUFBQSxDQUFVMUMsSUFBSSxFQUFFMkMsU0FBUyxFQUFFMUMsS0FBSyxFQUFFO1lBQ3RDLE1BQU1PLE9BQU8sR0FBRzJCLEtBQUssQ0FBQ1MsVUFBVSxDQUFDNUMsSUFBSSxDQUFDO1lBQ3RDbUMsS0FBSyxDQUFDVSxRQUFRLENBQUM7Y0FBRW5ELFVBQVUsRUFBRWMsT0FBTztjQUFFWixhQUFhLEVBQUVZLE9BQU87Y0FBRVQsU0FBUyxFQUFFQztZQUFJLENBQUMsQ0FBQztZQUMvRW5CLEtBQUssQ0FBQzRELFFBQVEsQ0FBQ2pCLGFBQWEsQ0FBQ2tCLElBQUksRUFBRVAsS0FBSyxFQUFFLENBQUNuQyxJQUFJLEVBQUUyQyxTQUFTLEVBQUUxQyxLQUFLLENBQUMsQ0FBQztVQUNyRSxDQUFDO1VBQ0Q2QyxXQUFXLEVBQUUsU0FBQUEsQ0FBVTlDLElBQUksRUFBRTJDLFNBQVMsRUFBRTFDLEtBQUssRUFBRTtZQUM3QyxNQUFNTyxPQUFPLEdBQUcyQixLQUFLLENBQUNTLFVBQVUsQ0FBQzVDLElBQUksQ0FBQztZQUN0Q21DLEtBQUssQ0FBQ1UsUUFBUSxDQUFDO2NBQUVuRCxVQUFVLEVBQUVjLE9BQU87Y0FBRVosYUFBYSxFQUFFWSxPQUFPO2NBQUVULFNBQVMsRUFBRUM7WUFBSSxDQUFDLENBQUM7WUFDL0VuQixLQUFLLENBQUM0RCxRQUFRLENBQUNqQixhQUFhLENBQUNzQixXQUFXLEVBQUVYLEtBQUssRUFBRSxDQUMvQ25DLElBQUksRUFDSjJDLFNBQVMsRUFDVDFDLEtBQUssQ0FDTixDQUFDO1VBQ0o7UUFDRjtNQUFDLEdBQ0UyQixNQUFNLENBQ1Y7TUFDRCxJQUFJLENBQUN2QixTQUFRLElBQUlpQixHQUFHLEtBQUt0QixLQUFJLElBQUksSUFBSSxJQUFJcUIsT0FBTyxJQUFJLElBQUksRUFBRTtRQUN4RCxJQUFJMEIsUUFBUSxHQUFHdEIsTUFBTTtRQUNyQixJQUFJdUIsVUFBVSxHQUFHdEIsUUFBUTtRQUN6QixJQUFJckIsU0FBUSxFQUFFO1VBQ1osSUFBSSxPQUFPb0IsTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUMvQnNCLFFBQVEsR0FBRyxJQUFJO1lBQ2ZDLFVBQVUsR0FBR0EsVUFBVSxHQUFHQSxVQUFVLEdBQUczQyxTQUFRO1VBQ2pEO1FBQ0Y7UUFFQStCLFVBQVUsR0FBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQ0w7VUFDRFksUUFBUSxFQUFFLElBQUk7VUFDZDNCLEdBQUcsRUFBRUEsR0FBRyxJQUFJVyxjQUFjLEdBQUc1QixTQUFRO1VBQUU7VUFDdkNvQixNQUFNLEVBQUVzQixRQUFRO1VBQ2hCckIsUUFBUSxFQUFFc0I7UUFDWixDQUFDLEdBQ0VaLFVBQVUsQ0FDZDtNQUNIO01BQ0EsSUFBSSxDQUFDbkMsS0FBSyxHQUFHLElBQUlyQixLQUFLLENBQUN3RCxVQUFVLENBQUM7SUFDcEM7RUFDRjtFQUVBYyxTQUFTQSxDQUFBLEVBQUc7SUFDVixNQUFNO01BQUVyRDtJQUFTLENBQUMsR0FBRyxJQUFJLENBQUNMLEtBQUs7SUFDL0IsTUFBTTtNQUFFSSxhQUFhO01BQUVFO0lBQVksQ0FBQyxHQUFHLElBQUksQ0FBQ3FELEtBQUs7SUFDakQsSUFBSXRELFFBQVEsRUFBRTtNQUNaLElBQUksQ0FBQ2dELFFBQVEsQ0FBQztRQUFFaEQsUUFBUSxFQUFFQztNQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDLE1BQU07TUFDTCxJQUFJLENBQUMrQyxRQUFRLENBQUM7UUFDWm5ELFVBQVUsRUFBRUU7TUFDZCxDQUFDLENBQUM7SUFDSjtFQUNGO0VBc0NBd0QsT0FBT0EsQ0FBQSxFQUFHO0lBQ1IsT0FBTyxJQUFJLENBQUNELEtBQUssQ0FBQ3ZELGFBQWE7RUFDakM7RUFFQXlELFFBQVFBLENBQUEsRUFBRztJQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLLENBQUN4RCxXQUFXO0VBQy9CO0VBQ0EyRCxRQUFRQSxDQUFDdEMsS0FBSyxFQUFFO0lBQ2QsSUFBSSxDQUFDNkIsUUFBUSxDQUFDO01BQ1psRCxXQUFXLEVBQUVxQjtJQUNmLENBQUMsQ0FBQztFQUNKO0VBRUF1QyxhQUFhQSxDQUFDdkMsS0FBSyxFQUFFO0lBQ25CLE1BQU07TUFBRXRCO0lBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQ3lELEtBQUs7SUFDakMsSUFBSTtNQUFFbEQsS0FBSyxHQUFHLENBQUMsQ0FBQztNQUFFRztJQUFXLENBQUMsR0FBRyxJQUFJLENBQUNaLEtBQUs7SUFDM0MsTUFBTTtNQUFFYTtJQUFTLENBQUMsR0FBR0osS0FBSztJQUMxQkcsVUFBVSxHQUFHQSxVQUFVLEdBQUdBLFVBQVUsR0FBR0MsUUFBUSxHQUFHLFNBQVMsR0FBRyxPQUFPO0lBQ3JFLE1BQU1HLE9BQU8sR0FBR3RCLGNBQWMsQ0FBQ1EsVUFBVSxFQUFFO01BQUU4RCxRQUFRLEVBQUVwRDtJQUFXLENBQUMsQ0FBQztJQUNwRSxJQUFJRSxLQUFLLENBQUNDLE9BQU8sQ0FBQ1MsS0FBSyxDQUFDLEVBQUU7TUFDeEIsSUFBSXlDLEdBQUcsR0FBRyxFQUFTO01BQ25CekMsS0FBSyxDQUFDSCxHQUFHLENBQUU2QyxHQUFHLElBQUs7UUFDakJELEdBQUcsQ0FBQ3JDLElBQUksQ0FBQ1osT0FBTyxDQUFDa0QsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7TUFDOUIsQ0FBQyxDQUFDO01BQ0YsT0FBT0QsR0FBRztJQUNaLENBQUMsTUFBTTtNQUNMLE9BQU9qRCxPQUFPLENBQUNRLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QjtFQUNGO0VBRUEyQyxpQkFBaUJBLENBQUEsRUFBRztJQUNsQixNQUFNO01BQUUzRCxJQUFJO01BQUVxQixPQUFPO01BQUV4QjtJQUFTLENBQUMsR0FBRyxJQUFJLENBQUNMLEtBQUs7SUFDOUMsSUFBSSxDQUFDSyxRQUFRLEtBQUtHLElBQUksSUFBSXFCLE9BQU8sQ0FBQyxFQUFFO01BQ2xDLElBQUksQ0FBQ3dCLFFBQVEsQ0FBQztRQUNabkQsVUFBVSxFQUFFTSxJQUFJLEdBQUdBLElBQUksR0FBR3FCLE9BQU87UUFDakN6QixhQUFhLEVBQUVJLElBQUksR0FBR0EsSUFBSSxHQUFHcUI7TUFDL0IsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxNQUFNLElBQUl4QixRQUFRLEVBQUU7TUFDbkIsSUFBSSxDQUFDZ0QsUUFBUSxDQUFDO1FBQ1poRCxRQUFRLEVBQUVBLFFBQVE7UUFDbEJDLFdBQVcsRUFBRUQ7TUFDZixDQUFDLENBQUM7SUFDSjtFQUNGO0VBRUErRCxrQkFBa0JBLENBQUNDLFFBQVEsRUFBRUMsUUFBUSxFQUFFQyxRQUFRLEVBQUU7SUFDL0MsTUFBTTtNQUFFL0QsSUFBSTtNQUFFcUIsT0FBTztNQUFFeEI7SUFBUyxDQUFDLEdBQUcsSUFBSSxDQUFDTCxLQUFLO0lBQzlDLE1BQU07TUFBRUksYUFBYTtNQUFFRSxXQUFXO01BQUNDO0lBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQ29ELEtBQUs7SUFDM0QsSUFBSSxDQUFDdEQsUUFBUSxLQUFLRyxJQUFJLElBQUlxQixPQUFPLENBQUMsRUFBRTtNQUNsQyxNQUFNYixPQUFPLEdBQUdSLElBQUksR0FBR0EsSUFBSSxHQUFHcUIsT0FBTztNQUNyQyxJQUFJMkMsSUFBSSxDQUFDQyxTQUFTLENBQUNyRSxhQUFhLENBQUMsS0FBS29FLElBQUksQ0FBQ0MsU0FBUyxDQUFDekQsT0FBTyxDQUFDLEVBQUU7UUFDN0QsSUFBSSxDQUFDcUMsUUFBUSxDQUFDO1VBQ1puRCxVQUFVLEVBQUVjLE9BQU87VUFDbkJaLGFBQWEsRUFBRVk7UUFDakIsQ0FBQyxDQUFDO01BQ0o7SUFDRixDQUFDLE1BQU0sSUFBSVgsUUFBUSxJQUFJUyxLQUFLLENBQUNDLE9BQU8sQ0FBQ1YsUUFBUSxDQUFDLEVBQUU7TUFDOUMsTUFBTXFFLGtCQUF1QixHQUFHLEVBQUU7TUFDbENwRSxXQUFXLENBQUNlLEdBQUcsQ0FBRXNELENBQU0sSUFBSztRQUMxQkQsa0JBQWtCLENBQUM5QyxJQUFJLENBQUMrQyxDQUFDLENBQUMzRSxLQUFLLENBQUM7TUFDbEMsQ0FBQyxDQUFDO01BQ0YsTUFBTTRFLGFBQWtCLEdBQUcsRUFBRTtNQUM3QnZFLFFBQVEsQ0FBQ2dCLEdBQUcsQ0FBRXdELENBQU0sSUFBSztRQUN2QkQsYUFBYSxDQUFDaEQsSUFBSSxDQUFDaUQsQ0FBQyxDQUFDN0UsS0FBSyxDQUFDO01BQzdCLENBQUMsQ0FBQztNQUNGLElBQ0V3RSxJQUFJLENBQUNDLFNBQVMsQ0FBQ0Msa0JBQWtCLENBQUMsS0FBS0YsSUFBSSxDQUFDQyxTQUFTLENBQUNHLGFBQWEsQ0FBQyxFQUNwRTtRQUNBLElBQUksQ0FBQ3ZCLFFBQVEsQ0FBQztVQUNaaEQsUUFBUSxFQUFFQSxRQUFRO1VBQ2xCQyxXQUFXLEVBQUVEO1FBQ2YsQ0FBQyxDQUFDO01BQ0o7SUFDRixDQUFDLE1BQU0sSUFBS21FLElBQUksQ0FBQ0MsU0FBUyxDQUFDSixRQUFRLENBQUMxRCxVQUFVLENBQUMsS0FBSzZELElBQUksQ0FBQ0MsU0FBUyxDQUFDLElBQUksQ0FBQ3pFLEtBQUssQ0FBQ1csVUFBVSxDQUFDLElBQU02RCxJQUFJLENBQUNDLFNBQVMsQ0FBQ0osUUFBUSxDQUFDM0QsT0FBTyxDQUFDLEtBQUs4RCxJQUFJLENBQUNDLFNBQVMsQ0FBQyxJQUFJLENBQUN6RSxLQUFLLENBQUNVLE9BQU8sQ0FBRSxFQUFFO01BQ3ZLLE1BQU1NLE9BQU8sR0FBRyxJQUFJLENBQUNvQyxVQUFVLENBQUM3QyxTQUFTLENBQUM7TUFDMUMsSUFBSSxDQUFDOEMsUUFBUSxDQUFDO1FBQUVuRCxVQUFVLEVBQUVjLE9BQU87UUFBRVosYUFBYSxFQUFFWSxPQUFPO1FBQUNULFNBQVMsRUFBRUE7TUFBUyxDQUFDLENBQUM7SUFDcEY7RUFDRjtFQUNBdUUsb0JBQW9CQSxDQUFBLEVBQUc7SUFDckIsSUFBSSxDQUFDekIsUUFBUSxHQUFHLENBQUNNLEtBQUssRUFBRVYsUUFBUSxLQUFLO01BQ25DO0lBQ0YsQ0FBQztFQUNIO0VBQ0E4QixRQUFRQSxDQUFDdkQsS0FBSyxFQUFFO0lBQ2QsTUFBTTtNQUFFcEIsYUFBYTtNQUFFRTtJQUFZLENBQUMsR0FBRyxJQUFJLENBQUNxRCxLQUFLO0lBQ2pELE1BQU07TUFBRXFCLFlBQVksR0FBRyxJQUFJO01BQUVELFFBQVE7TUFBRTFFLFFBQVE7TUFBRUksS0FBSyxHQUFHLENBQUM7SUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDVCxLQUFLO0lBQzFFLElBQUk7TUFBRWlGO0lBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQ2pGLEtBQUs7SUFDL0IsTUFBTTtNQUFFYTtJQUFTLENBQUMsR0FBR0osS0FBSztJQUMxQndFLFVBQVUsR0FBR0EsVUFBVSxHQUFHQSxVQUFVLEdBQUdwRSxRQUFRLEdBQUcsV0FBVyxHQUFHLE9BQU87SUFDdkUsSUFBSW1FLFlBQVksRUFBRTtNQUNoQixJQUFJRSxNQUFNLEdBQUcsRUFBRTtNQUNmLElBQUksQ0FBQzdFLFFBQVEsRUFBRTtRQUNiLElBQUltQixLQUFLLEVBQUU7VUFDVHBCLGFBQWEsQ0FBQytFLE9BQU8sQ0FBRTdELElBQUksSUFBSztZQUM5QixJQUFJOEQsS0FBSyxHQUFHLEVBQUU7WUFDZCxJQUFJSCxVQUFVLENBQUM3RCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUNILE1BQU0sSUFBSSxDQUFDLEVBQUU7Y0FDckNtRSxLQUFLLEdBQUc5RCxJQUFJLENBQUMyRCxVQUFVLENBQUM7WUFDMUIsQ0FBQyxNQUFNO2NBQ0wsTUFBTUksV0FBZ0IsR0FBR0osVUFBVSxDQUFDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQztjQUM5Q2lFLFdBQVcsQ0FBQ2hFLEdBQUcsQ0FBQyxDQUFDaUUsQ0FBQyxFQUFFNUQsS0FBSyxLQUFLO2dCQUM1QjBELEtBQUssR0FBRzFELEtBQUssSUFBSSxDQUFDLEdBQUcwRCxLQUFLLEdBQUc5RCxJQUFJLENBQUNnRSxDQUFDLENBQUMsR0FBR0YsS0FBSyxHQUFHLEdBQUcsR0FBRzlELElBQUksQ0FBQ2dFLENBQUMsQ0FBQztjQUM5RCxDQUFDLENBQUM7WUFDSjtZQUNBLElBQUlDLElBQUksR0FBRzlGLFdBQVcsQ0FBQytGLEtBQUssQ0FBQ0osS0FBSyxFQUFFNUQsS0FBSyxDQUFDO1lBQzFDLElBQUkrRCxJQUFJLEVBQUU7Y0FDUkwsTUFBTSxDQUFDdEQsSUFBSSxDQUFDTixJQUFJLENBQUM7WUFDbkI7VUFDRixDQUFDLENBQUM7VUFDRixJQUFJLENBQUMrQixRQUFRLENBQUM7WUFDWm5ELFVBQVUsRUFBRWdGO1VBQ2QsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxNQUFNO1VBQ0wsSUFBSSxDQUFDN0IsUUFBUSxDQUFDO1lBQ1puRCxVQUFVLEVBQUVFO1VBQ2QsQ0FBQyxDQUFDO1FBQ0o7TUFDRixDQUFDLE1BQU07UUFDTCxJQUFJb0IsS0FBSyxFQUFFO1VBQ1QsSUFBSVYsS0FBSyxDQUFDQyxPQUFPLENBQUNULFdBQVcsQ0FBQyxFQUFFO1lBQzlCQSxXQUFXLENBQUNlLEdBQUcsQ0FBQyxDQUFDb0UsS0FBVSxFQUFFL0QsS0FBSyxLQUFLO2NBQUEsSUFBQWdFLFlBQUE7Y0FDckMsSUFBSU4sS0FBSyxHQUFHSyxLQUFLLGFBQUxBLEtBQUssZ0JBQUFDLFlBQUEsR0FBTEQsS0FBSyxDQUFFekYsS0FBSyxjQUFBMEYsWUFBQSx1QkFBWkEsWUFBQSxDQUFjckYsUUFBUTtjQUNsQyxJQUFJa0YsSUFBSSxHQUFHOUYsV0FBVyxDQUFDK0YsS0FBSyxDQUFDSixLQUFLLEVBQUU1RCxLQUFLLENBQUM7Y0FDMUMsSUFBSStELElBQUksRUFBRTtnQkFDUkwsTUFBTSxDQUFDdEQsSUFBSSxDQUFDNkQsS0FBSyxDQUFDO2NBQ3BCO1lBQ0YsQ0FBQyxDQUFDO1VBQ0o7VUFDQSxJQUFJLENBQUNwQyxRQUFRLENBQUM7WUFDWmhELFFBQVEsRUFBRTZFO1VBQ1osQ0FBQyxDQUFDO1FBQ0osQ0FBQyxNQUFNO1VBQ0wsSUFBSSxDQUFDN0IsUUFBUSxDQUFDO1lBQ1poRCxRQUFRLEVBQUVBO1VBQ1osQ0FBQyxDQUFDO1FBQ0o7TUFDRjtJQUNGO0lBQ0EwRSxRQUFRLElBQUlBLFFBQVEsQ0FBQ3ZELEtBQUssQ0FBQztFQUM3QjtFQUNBbUUsWUFBWUEsQ0FBQ0MsVUFBVSxFQUFFO0lBQ3ZCLElBQUk7TUFDRm5GLEtBQUssR0FBRyxDQUFDLENBQUM7TUFDVm9GLFNBQVMsR0FBRyxRQUFRO01BQ3BCWixVQUFVO01BQ1ZyRTtJQUNGLENBQUMsR0FBRyxJQUFJLENBQUNaLEtBQUs7SUFDZCxNQUFNO01BQUVhO0lBQVMsQ0FBQyxHQUFHSixLQUFLO0lBQzFCRyxVQUFVLEdBQUdBLFVBQVUsR0FBR0EsVUFBVSxHQUFHQyxRQUFRLEdBQUcsU0FBUyxHQUFHLE9BQU87SUFDckVvRSxVQUFVLEdBQUdBLFVBQVUsR0FBR0EsVUFBVSxHQUFHcEUsUUFBUSxHQUFHLFdBQVcsR0FBRyxPQUFPO0lBQ3ZFLE9BQU8rRSxVQUFVLENBQUN2RSxHQUFHLENBQUVDLElBQUksSUFBSztNQUM5QixJQUFJRSxLQUFVO01BQ2QsSUFBSVosVUFBVSxDQUFDUSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUNILE1BQU0sSUFBSSxDQUFDLEVBQUU7UUFDckNPLEtBQUssR0FDSHFFLFNBQVMsS0FBSyxRQUFRLEdBQUdDLE1BQU0sQ0FBQ3hFLElBQUksQ0FBQ1YsVUFBVSxDQUFDLENBQUMsR0FBR1UsSUFBSSxDQUFDVixVQUFVLENBQUM7TUFDeEUsQ0FBQyxNQUFNO1FBQ0wsTUFBTU8sV0FBZ0IsR0FBR1AsVUFBVSxDQUFDUSxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQzlDSSxLQUFLLEdBQUcsRUFBRTtRQUNWTCxXQUFXLENBQUNFLEdBQUcsQ0FBQyxDQUFDSSxDQUFDLEVBQUVDLEtBQUssS0FBSztVQUM1QkYsS0FBSyxHQUFHRSxLQUFLLElBQUksQ0FBQyxHQUFHRixLQUFLLEdBQUdGLElBQUksQ0FBQ0csQ0FBQyxDQUFDLEdBQUdELEtBQUssR0FBRyxHQUFHLEdBQUdGLElBQUksQ0FBQ0csQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQztNQUNKO01BQ0EsSUFBSXNFLEdBQUcsR0FBR3pFLElBQUksQ0FBQzBFLEVBQUUsR0FBSTFFLElBQUksQ0FBQzBFLEVBQUUsS0FBSyxXQUFXLEdBQUcxRSxJQUFJLENBQUMwRSxFQUFFLEdBQUd4RSxLQUFLLEdBQUlBLEtBQUs7TUFDdkUsSUFBSTRELEtBQUssR0FBRyxFQUFFO01BQ2QsSUFBSUgsVUFBVSxDQUFDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDSCxNQUFNLElBQUksQ0FBQyxFQUFFO1FBQ3JDbUUsS0FBSyxHQUFHOUQsSUFBSSxDQUFDMkQsVUFBVSxDQUFDO01BQzFCLENBQUMsTUFBTTtRQUNMLE1BQU1JLFdBQWdCLEdBQUdKLFVBQVUsQ0FBQzdELEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDOUNpRSxXQUFXLENBQUNoRSxHQUFHLENBQUMsQ0FBQ2lFLENBQUMsRUFBRTVELEtBQUssS0FBSztVQUM1QjBELEtBQUssR0FBRzFELEtBQUssSUFBSSxDQUFDLEdBQUcwRCxLQUFLLEdBQUc5RCxJQUFJLENBQUNnRSxDQUFDLENBQUMsR0FBR0YsS0FBSyxHQUFHLEdBQUcsR0FBRzlELElBQUksQ0FBQ2dFLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUM7TUFDSjtNQUNBLG9CQUNFcEcsS0FBQSxDQUFBK0csYUFBQSxDQUFDdEcsTUFBTTtRQUNMb0csR0FBRyxFQUFFQSxHQUFJO1FBQ1R2RSxLQUFLLEVBQUVBLEtBQU07UUFDYjRELEtBQUssRUFBRUEsS0FBTTtRQUNiYyxRQUFRLEVBQUU1RSxJQUFJLENBQUM0RSxRQUFRLEdBQUcsSUFBSSxHQUFHO01BQU0sR0FFdENkLEtBQ0ssQ0FBQztJQUViLENBQUMsQ0FBQztFQUNKO0VBQ0FlLGNBQWNBLENBQUEsRUFBRztJQUNmLE1BQU07TUFBRUMsU0FBUyxHQUFHLElBQUk7TUFBQ0MsVUFBVSxHQUFDO0lBQVksQ0FBQyxHQUFHLElBQUksQ0FBQ3JHLEtBQUs7SUFDOUQsTUFBTTtNQUFFRSxVQUFVO01BQUVHO0lBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQ3NELEtBQUs7SUFDM0MsSUFBSXRELFFBQVEsRUFBRTtNQUNaLG9CQUFPbkIsS0FBQSxDQUFBK0csYUFBQSxDQUFBL0csS0FBQSxDQUFBb0gsUUFBQSxRQUFHakcsUUFBVyxDQUFDO0lBQ3hCLENBQUMsTUFBTTtNQUNMLElBQUlrRyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1FBQ25CWCxVQUFVLEdBQUcsRUFBRTtNQUNqQjFGLFVBQVUsQ0FBQ2lGLE9BQU8sQ0FBRTdELElBQUksSUFBSztRQUMzQixJQUFJOEQsS0FBSyxHQUFHOUQsSUFBSSxDQUFDK0UsVUFBVSxDQUFDO1FBQzVCLElBQUlqQixLQUFLLElBQUlnQixTQUFTLEVBQUU7VUFDdEIsSUFBSSxDQUFDRyxZQUFZLENBQUNuQixLQUFLLENBQUMsRUFBRW1CLFlBQVksQ0FBQ25CLEtBQUssQ0FBQyxHQUFHLEVBQUU7VUFDbERtQixZQUFZLENBQUNuQixLQUFLLENBQUMsQ0FBQ3hELElBQUksQ0FBQ04sSUFBSSxDQUFDO1FBQ2hDLENBQUMsTUFBTTtVQUNMc0UsVUFBVSxDQUFDaEUsSUFBSSxDQUFDTixJQUFJLENBQUM7UUFDdkI7TUFDRixDQUFDLENBQUM7TUFDRixJQUFJa0YsTUFBTSxHQUFHLElBQUksQ0FBQ2IsWUFBWSxDQUFDQyxVQUFVLENBQUM7TUFDMUMsSUFBSWEsUUFBUSxHQUFHQyxNQUFNLENBQUNDLElBQUksQ0FBQ0osWUFBWSxDQUFDLENBQUNsRixHQUFHLENBQUUwRSxHQUFHLElBQUs7UUFDcEQsb0JBQ0U3RyxLQUFBLENBQUErRyxhQUFBLENBQUNyRyxRQUFRO1VBQUNtRyxHQUFHLEVBQUVBLEdBQUk7VUFBQ1gsS0FBSyxFQUFFVztRQUFJLEdBQzVCLElBQUksQ0FBQ0osWUFBWSxDQUFDWSxZQUFZLENBQUNSLEdBQUcsQ0FBQyxDQUM1QixDQUFDO01BRWYsQ0FBQyxDQUFDO01BQ0Ysb0JBQ0U3RyxLQUFBLENBQUErRyxhQUFBLENBQUEvRyxLQUFBLENBQUFvSCxRQUFBLFFBQ0dFLE1BQU0sRUFDTkMsUUFDRCxDQUFDO0lBRVA7RUFDRjtFQUNBRyxRQUFRQSxDQUFDcEYsS0FBSyxFQUFFSyxPQUFPLEVBQUU7SUFDdkIsTUFBTTtNQUFFK0U7SUFBUyxDQUFDLEdBQUcsSUFBSSxDQUFDNUcsS0FBSztJQUMvQixJQUFJLENBQUNxRCxRQUFRLENBQUM7TUFDWmxELFdBQVcsRUFBRXFCO0lBQ2YsQ0FBQyxDQUFDO0lBQ0YsSUFBSW9GLFFBQVEsRUFBRTtNQUNaLE1BQU1wRyxJQUFJLEdBQUcsSUFBSSxDQUFDdUQsYUFBYSxDQUFDdkMsS0FBSyxDQUFDO01BQ3RDb0YsUUFBUSxDQUFDcEYsS0FBSyxFQUFFSyxPQUFPLEVBQUVyQixJQUFJLENBQUM7SUFDaEM7RUFDRjtFQUNBcUcsUUFBUUEsQ0FBQ3JGLEtBQUssRUFBRUssT0FBTyxFQUFFO0lBQ3ZCLE1BQU07TUFBRWdGO0lBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQzdHLEtBQUs7SUFFL0IsSUFBSTZHLFFBQVEsRUFBRTtNQUNaLE1BQU1yRyxJQUFJLEdBQUcsSUFBSSxDQUFDdUQsYUFBYSxDQUFDdkMsS0FBSyxDQUFDO01BQ3RDcUYsUUFBUSxDQUFDckYsS0FBSyxFQUFFSyxPQUFPLEVBQUVyQixJQUFJLENBQUM7SUFDaEM7RUFDRjtFQUNBc0csdUJBQXVCQSxDQUFDQyxJQUFJLEVBQUU7SUFDNUIsSUFBSSxDQUFDQSxJQUFJLEVBQUU7TUFDVCxJQUFJLENBQUNyRCxTQUFTLENBQUMsQ0FBQztJQUNsQjtFQUNGO0VBQ0FzRCxNQUFNQSxDQUFBLEVBQUc7SUFDUCxNQUFBQyxXQUFBLEdBaUJJLElBQUksQ0FBQ2pILEtBQUs7TUFqQlI7UUFDSkssUUFBUTtRQUNSSSxLQUFLO1FBQ0xELElBQUk7UUFDSm9HLFFBQVE7UUFDUkMsUUFBUTtRQUNSaEYsT0FBTztRQUNQb0QsVUFBVTtRQUNWckUsVUFBVTtRQUNWc0csWUFBWTtRQUNaZCxTQUFTLEdBQUcsSUFBSTtRQUNoQjFGLE9BQU87UUFDUEMsVUFBVTtRQUNWa0YsU0FBUztRQUNUUSxVQUFVO1FBQ1ZjO01BRUYsQ0FBQyxHQUFBRixXQUFBO01BRElHLE1BQU0sR0FBQS9FLHdCQUFBLENBQUE0RSxXQUFBLEVBQUFJLFVBQUE7SUFFWCxJQUFJckgsS0FBSyxHQUFHO01BQ1ZnRixZQUFZLEVBQUUsS0FBSztNQUNuQnNDLFVBQVUsRUFBRSxJQUFJO01BQ2hCQyxnQkFBZ0IsRUFBRSxPQUFPO01BQ3pCQyxXQUFXLEVBQUUsS0FBSztNQUNsQkMsVUFBVSxFQUFFO0lBQ2QsQ0FBUTtJQUNSLElBQUk7TUFBRUMsU0FBUztNQUFFQztJQUFlLENBQUMsR0FBR3JJLE1BQU0sQ0FBQyxDQUFDO0lBQzVDLElBQUlxSSxjQUFjLEVBQUU7TUFDbEIzSCxLQUFLLEdBQUE2QyxhQUFBO1FBQ0grRSxpQkFBaUIsRUFBRUEsQ0FBQSxLQUFNQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ0gsY0FBYztNQUFDLEdBQzdEM0gsS0FBSyxDQUNUO0lBQ0g7SUFDQSxJQUFJLENBQUNrSCxZQUFZLElBQUlRLFNBQVMsS0FBS1IsWUFBWSxLQUFLLElBQUksRUFBRTtNQUN4RCxvQkFDRWhJLEtBQUEsQ0FBQStHLGFBQUE7UUFBSzhCLFNBQVMsRUFBRXZJLEdBQUcsQ0FBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLElBQUksQ0FBQ1MsS0FBSyxDQUFDK0gsU0FBUztNQUFFLGdCQUM5RDdJLEtBQUEsQ0FBQStHLGFBQUEsQ0FBQXBHLE9BQUEsRUFBQW1JLFFBQUE7UUFDRXhHLEtBQUssRUFBRSxJQUFJLENBQUNtQyxLQUFLLENBQUN4RCxXQUFZO1FBQzlCeUcsUUFBUSxFQUFFLElBQUksQ0FBQ0EsUUFBUSxDQUFDcUIsSUFBSSxDQUFDLElBQUksQ0FBRTtRQUNuQ2xELFFBQVEsRUFBRSxJQUFJLENBQUNBLFFBQVEsQ0FBQ2tELElBQUksQ0FBQyxJQUFJLENBQUU7UUFDbkNwQixRQUFRLEVBQUUsSUFBSSxDQUFDQSxRQUFRLENBQUNvQixJQUFJLENBQUMsSUFBSSxDQUFFO1FBQ25DbkIsdUJBQXVCLEVBQUUsSUFBSSxDQUFDQSx1QkFBdUIsQ0FBQ21CLElBQUksQ0FBQyxJQUFJO01BQUUsR0FDN0RqSSxLQUFLLEVBQ0xvSCxNQUFNLEdBRVQsSUFBSSxDQUFDakIsY0FBYyxDQUFDLENBQ2YsQ0FDTCxDQUFDO0lBRVYsQ0FBQyxNQUFNO01BQ0wsb0JBQ0VqSCxLQUFBLENBQUErRyxhQUFBLENBQUFwRyxPQUFBLEVBQUFtSSxRQUFBO1FBQ0V4RyxLQUFLLEVBQUUsSUFBSSxDQUFDbUMsS0FBSyxDQUFDeEQsV0FBWTtRQUM5QjRFLFFBQVEsRUFBRSxJQUFJLENBQUNBLFFBQVEsQ0FBQ2tELElBQUksQ0FBQyxJQUFJLENBQUU7UUFDbkNyQixRQUFRLEVBQUUsSUFBSSxDQUFDQSxRQUFRLENBQUNxQixJQUFJLENBQUMsSUFBSSxDQUFFO1FBQ25DcEIsUUFBUSxFQUFFLElBQUksQ0FBQ0EsUUFBUSxDQUFDb0IsSUFBSSxDQUFDLElBQUksQ0FBRTtRQUNuQ25CLHVCQUF1QixFQUFFLElBQUksQ0FBQ0EsdUJBQXVCLENBQUNtQixJQUFJLENBQUMsSUFBSTtNQUFFLEdBQzdEakksS0FBSyxFQUNMb0gsTUFBTSxHQUVULElBQUksQ0FBQ2pCLGNBQWMsQ0FBQyxDQUNmLENBQUM7SUFFYjtFQUNGO0FBQ0Y7QUFBQ2xHLGVBQUEsQ0F6Ym9CSCxTQUFTLFlBQ1pILE1BQU07QUFBQU0sZUFBQSxDQURISCxTQUFTLGNBRVZGLFFBQVEifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PureComponent","Store","utils","config","styles","cls","PinyinMatch","getFlattenData","Option","OptGroup","_Select","NSCSelect","constructor","props","_defineProperty","dataSource","selectValue","allDataSource","children","allChildren","dataStore","data","store","addData","deleteData","valueField","viewname","Array","isArray","newData","length","spliceData","valueFields","split","map","item","i","value","v","index","indexOf","push","options","url","listeners","listenersPops","cached","cacheKey","viewtype","stores","_objectWithoutProperties","_excluded","viewUrl","viewBizUrl","requestViewUrl","Error","_this","storeProps","_objectSpread","model","component","onBeforeLoad","callback","load","modelData","getAllData","setState","dataChanged","isCached","isCacheKey","autoLoad","resetData","state","getData","getValue","setValue","getSelectData","keyField","res","val","componentDidMount","componentDidUpdate","newProps","newState","Snapshot","JSON","stringify","stateChildrenProps","s","childrenProps","c","componentWillUnmount","onSearch","filterOption","labelField","result","forEach","label","labelFields","l","flag","match","child","_child$props","renderOption","optionData","valueType","Number","key","id","createElement","disabled","renderChildren","showGroup","groupField","Fragment","optGroupData","option","optGroup","Object","keys","onChange","onSelect","onDropdownVisibleChange","open","render","_this$props","defaultStyle","params","_excluded2","showSearch","optionFilterProp","placeholder","allowClear","antdStyle","mountElementId","getPopupContainer","document","getElementById","className","_extends","bind"],"sources":["../../../src/components/base/select/index.tsx"],"sourcesContent":["import React, { PureComponent } from \"react\";\r\nimport { Select, SelectProps } from \"antd\";\r\nimport Store, { StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport styles from \"./index.less\";\r\nimport cls from \"classnames\";\r\nimport omit from \"omit.js\";\r\nimport PinyinMatch from \"pinyin-match\";\r\nimport { getFlattenData } from \"@bj-nsc/functions\";\r\nconst { Option, OptGroup } = Select;\r\n\r\ninterface ISelectProps extends SelectProps<any> {\r\n store?: StoreProps;\r\n data?: Array<Object>; //默认数据\r\n labelField?: string;\r\n valueField?: string;\r\n groupField?:string;\r\n defaultStyle?: boolean;\r\n showGroup?: boolean; //是否显示分组\r\n addData?: Array<Object>; //配合store使用,从增加额外的数据\r\n deleteData?: Array<String>; //配合store使用,删除从数据库中获取到的指定数据\r\n valueBreak?: string; //多个value使用的分隔符\r\n valueType?: \"string\" | \"number\";\r\n [proName: string]: any;\r\n onChange?: any;\r\n onSelect?: any;\r\n}\r\nexport default class NSCSelect extends PureComponent<ISelectProps> {\r\n static Option = Option;\r\n static OptGroup = OptGroup;\r\n state = {\r\n dataSource: [],\r\n selectValue: null,\r\n allDataSource: [],\r\n children: null,\r\n allChildren: null,\r\n dataStore:[]\r\n };\r\n store = {} as StoreProps;\r\n constructor(props) {\r\n super(props);\r\n let {\r\n data,\r\n store = {},\r\n children,\r\n options,\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = props;\r\n const {\r\n url,\r\n listeners: listenersPops = {},\r\n viewname,\r\n cached,\r\n cacheKey,\r\n viewtype = \"sys\",\r\n ...stores\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n let { viewUrl, viewBizUrl } = config();\r\n let requestViewUrl = viewtype == \"sys\" ? viewUrl : viewBizUrl;\r\n\r\n if (!children) {\r\n if (!(data || viewname || url || options)) {\r\n throw new Error(\"url、viewname、data、options不能都为空!\");\r\n }\r\n let _this = this;\r\n let storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: function (store, options) {\r\n utils.callback(listenersPops.onBeforeLoad, _this, [store, options]);\r\n },\r\n load: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({ dataSource: newData, allDataSource: newData ,dataStore: data});\r\n utils.callback(listenersPops.load, _this, [data, modelData, store]);\r\n },\r\n dataChanged: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({ dataSource: newData, allDataSource: newData ,dataStore: data});\r\n utils.callback(listenersPops.dataChanged, _this, [\r\n data,\r\n modelData,\r\n store,\r\n ]);\r\n },\r\n },\r\n ...stores,\r\n };\r\n if ((viewname || url) && data == null && options == null) {\r\n let isCached = cached;\r\n let isCacheKey = cacheKey;\r\n if (viewname) {\r\n if (typeof cached !== \"boolean\") {\r\n isCached = true;\r\n isCacheKey = isCacheKey ? isCacheKey : viewname;\r\n }\r\n }\r\n\r\n storeProps = {\r\n ...{\r\n autoLoad: true,\r\n url: url || requestViewUrl + viewname, //读字典,url固定,viewname\r\n cached: isCached,\r\n cacheKey: isCacheKey,\r\n },\r\n ...storeProps,\r\n };\r\n }\r\n this.store = new Store(storeProps);\r\n }\r\n }\r\n\r\n resetData() {\r\n const { children } = this.props;\r\n const { allDataSource, allChildren } = this.state;\r\n if (children) {\r\n this.setState({ children: allChildren });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n }\r\n\r\n\r\n getAllData = (data) => {\r\n let {\r\n store = {},\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = this.props;\r\n const {\r\n viewname,\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n if (!Array.isArray(data)) {\r\n return [];\r\n }\r\n let newData = [...data];\r\n if (addData.length > 0) {\r\n newData = [...addData, ...newData];\r\n }\r\n if (deleteData.length > 0) {\r\n let spliceData = [];\r\n const valueFields: any = valueField.split(\",\");\r\n newData.map((item, i) => {\r\n let value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n if (deleteData.indexOf(value) == -1) {\r\n spliceData.push(item);\r\n }\r\n });\r\n return spliceData;\r\n } else {\r\n return newData;\r\n }\r\n };\r\n getData() {\r\n return this.state.allDataSource;\r\n }\r\n\r\n getValue() {\r\n return this.state.selectValue;\r\n }\r\n setValue(value) {\r\n this.setState({\r\n selectValue: value,\r\n });\r\n }\r\n\r\n getSelectData(value) {\r\n const { dataSource } = this.state;\r\n let { store = {}, valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n const newData = getFlattenData(dataSource, { keyField: valueField });\r\n if (Array.isArray(value)) {\r\n let res = [] as any;\r\n value.map((val) => {\r\n res.push(newData[val] || {});\r\n });\r\n return res;\r\n } else {\r\n return newData[value] || {};\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const { data, options, children } = this.props;\r\n if (!children && (data || options)) {\r\n this.setState({\r\n dataSource: data ? data : options,\r\n allDataSource: data ? data : options,\r\n });\r\n } else if (children) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n }\r\n\r\n componentDidUpdate(newProps, newState, Snapshot) {\r\n const { data, options, children } = this.props;\r\n const { allDataSource, allChildren,dataStore } = this.state;\r\n if (!children && (data || options)) {\r\n const newData = data ? data : options;\r\n if (JSON.stringify(allDataSource) !== JSON.stringify(newData)) {\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n });\r\n }\r\n } else if (children && Array.isArray(children)) {\r\n const stateChildrenProps: any = [];\r\n allChildren.map((s: any) => {\r\n stateChildrenProps.push(s.props);\r\n });\r\n const childrenProps: any = [];\r\n children.map((c: any) => {\r\n childrenProps.push(c.props);\r\n });\r\n if (\r\n JSON.stringify(stateChildrenProps) !== JSON.stringify(childrenProps)\r\n ) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n } else if ((JSON.stringify(newProps.deleteData) !== JSON.stringify(this.props.deleteData)) || (JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData))) {\r\n const newData = this.getAllData(dataStore);\r\n this.setState({ dataSource: newData, allDataSource: newData,dataStore: dataStore});\r\n }\r\n }\r\n componentWillUnmount() {\r\n this.setState = (state, callback) => {\r\n return;\r\n };\r\n }\r\n onSearch(value) {\r\n const { allDataSource, allChildren } = this.state;\r\n const { filterOption = true, onSearch, children, store = {} } = this.props;\r\n let { labelField } = this.props;\r\n const { viewname } = store;\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n if (filterOption) {\r\n let result = [];\r\n if (!children) {\r\n if (value) {\r\n allDataSource.forEach((item) => {\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(item);\r\n }\r\n });\r\n this.setState({\r\n dataSource: result,\r\n });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n } else {\r\n if (value) {\r\n if (Array.isArray(allChildren)) {\r\n allChildren.map((child: any, index) => {\r\n let label = child?.props?.children;\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(child);\r\n }\r\n });\r\n }\r\n this.setState({\r\n children: result,\r\n });\r\n } else {\r\n this.setState({\r\n children: children,\r\n });\r\n }\r\n }\r\n }\r\n onSearch && onSearch(value);\r\n }\r\n renderOption(optionData) {\r\n let {\r\n store = {},\r\n valueType = \"string\",\r\n labelField,\r\n valueField,\r\n } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n return optionData.map((item) => {\r\n let value: any;\r\n if (valueField.split(\",\").length == 1) {\r\n value =\r\n valueType === \"number\" ? Number(item[valueField]) : item[valueField];\r\n } else {\r\n const valueFields: any = valueField.split(\",\");\r\n value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n }\r\n let key = item.id ? (item.id !== \"undefined\" ? item.id : value) : value;\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n return (\r\n <Option\r\n key={key}\r\n value={value}\r\n label={label}\r\n disabled={item.disabled ? true : false}\r\n >\r\n {label}\r\n </Option>\r\n );\r\n });\r\n }\r\n renderChildren() {\r\n const { showGroup = true,groupField='groupName' } = this.props;\r\n const { dataSource, children } = this.state;\r\n if (children) {\r\n return <>{children}</>;\r\n } else {\r\n let optGroupData = {},\r\n optionData = [];\r\n dataSource.forEach((item) => {\r\n let label = item[groupField];\r\n if (label && showGroup) {\r\n if (!optGroupData[label]) optGroupData[label] = [];\r\n optGroupData[label].push(item);\r\n } else {\r\n optionData.push(item);\r\n }\r\n });\r\n let option = this.renderOption(optionData);\r\n let optGroup = Object.keys(optGroupData).map((key) => {\r\n return (\r\n <OptGroup key={key} label={key}>\r\n {this.renderOption(optGroupData[key])}\r\n </OptGroup>\r\n );\r\n });\r\n return (\r\n <>\r\n {option}\r\n {optGroup}\r\n </>\r\n );\r\n }\r\n }\r\n onChange(value, options) {\r\n const { onChange } = this.props;\r\n this.setState({\r\n selectValue: value,\r\n });\r\n if (onChange) {\r\n const data = this.getSelectData(value);\r\n onChange(value, options, data);\r\n }\r\n }\r\n onSelect(value, options) {\r\n const { onSelect } = this.props;\r\n\r\n if (onSelect) {\r\n const data = this.getSelectData(value);\r\n onSelect(value, options, data);\r\n }\r\n }\r\n onDropdownVisibleChange(open) {\r\n if (!open) {\r\n this.resetData();\r\n }\r\n }\r\n render() {\r\n const {\r\n children,\r\n store,\r\n data,\r\n onChange,\r\n onSelect,\r\n options,\r\n labelField,\r\n valueField,\r\n defaultStyle,\r\n showGroup = true,\r\n addData,\r\n deleteData,\r\n valueType,\r\n groupField,\r\n ...params\r\n } = this.props;\r\n let props = {\r\n filterOption: false,\r\n showSearch: true,\r\n optionFilterProp: \"label\",\r\n placeholder: \"请选择\",\r\n allowClear: true,\r\n } as any;\r\n let { antdStyle, mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getPopupContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if ((defaultStyle || antdStyle) && defaultStyle === true) {\r\n return (\r\n <div className={cls(styles[\"nsc_select\"], this.props.className)}>\r\n <Select\r\n value={this.state.selectValue}\r\n onChange={this.onChange.bind(this)}\r\n onSearch={this.onSearch.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <Select\r\n value={this.state.selectValue}\r\n onSearch={this.onSearch.bind(this)}\r\n onChange={this.onChange.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","PureComponent","Store","utils","config","styles","cls","PinyinMatch","getFlattenData","Option","OptGroup","_Select","NSCSelect","constructor","props","_defineProperty","dataSource","selectValue","allDataSource","children","allChildren","dataStore","data","store","addData","deleteData","valueField","viewname","Array","isArray","newData","length","spliceData","valueFields","split","map","item","i","value","v","index","indexOf","push","options","url","listeners","listenersPops","cached","cacheKey","viewtype","stores","_objectWithoutProperties","_excluded","viewUrl","viewBizUrl","requestViewUrl","Error","_this","storeProps","_objectSpread","model","component","onBeforeLoad","callback","load","modelData","getAllData","setState","dataChanged","isCached","isCacheKey","autoLoad","resetData","state","getData","getValue","setValue","getSelectData","keyField","res","val","componentDidMount","componentDidUpdate","newProps","newState","Snapshot","JSON","stringify","stateChildrenProps","s","childrenProps","c","componentWillUnmount","onSearch","filterOption","labelField","result","forEach","label","labelFields","l","flag","match","child","_child$props","renderOption","optionData","valueType","Number","key","id","createElement","disabled","renderChildren","showGroup","groupField","Fragment","optGroupData","option","optGroup","Object","keys","onChange","onSelect","onDropdownVisibleChange","open","render","_this$props","defaultStyle","dataType","params","_excluded2","showSearch","optionFilterProp","placeholder","allowClear","antdStyle","mountElementId","getPopupContainer","document","getElementById","className","_extends","bind"],"sources":["../../../src/components/base/select/index.tsx"],"sourcesContent":["import React, { PureComponent } from \"react\";\r\nimport { Select, SelectProps } from \"antd\";\r\nimport Store, { StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport config from \"../../config\";\r\nimport styles from \"./index.less\";\r\nimport cls from \"classnames\";\r\nimport omit from \"omit.js\";\r\nimport PinyinMatch from \"pinyin-match\";\r\nimport { getFlattenData } from \"@bj-nsc/functions\";\r\nconst { Option, OptGroup } = Select;\r\n\r\ninterface ISelectProps extends SelectProps<any> {\r\n store?: StoreProps;\r\n data?: Array<Object>; //默认数据\r\n labelField?: string;\r\n valueField?: string;\r\n groupField?:string;\r\n defaultStyle?: boolean;\r\n showGroup?: boolean; //是否显示分组\r\n addData?: Array<Object>; //配合store使用,从增加额外的数据\r\n deleteData?: Array<String>; //配合store使用,删除从数据库中获取到的指定数据\r\n valueBreak?: string; //多个value使用的分隔符\r\n valueType?: \"string\" | \"number\";\r\n [proName: string]: any;\r\n onChange?: any;\r\n onSelect?: any;\r\n}\r\nexport default class NSCSelect extends PureComponent<ISelectProps> {\r\n static Option = Option;\r\n static OptGroup = OptGroup;\r\n state = {\r\n dataSource: [],\r\n selectValue: null,\r\n allDataSource: [],\r\n children: null,\r\n allChildren: null,\r\n dataStore:[]\r\n };\r\n store = {} as StoreProps;\r\n constructor(props) {\r\n super(props);\r\n let {\r\n data,\r\n store = {},\r\n children,\r\n options,\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = props;\r\n const {\r\n url,\r\n listeners: listenersPops = {},\r\n viewname,\r\n cached,\r\n cacheKey,\r\n viewtype = \"sys\",\r\n ...stores\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n let { viewUrl, viewBizUrl } = config();\r\n let requestViewUrl = viewtype == \"sys\" ? viewUrl : viewBizUrl;\r\n\r\n if (!children) {\r\n if (!(data || viewname || url || options)) {\r\n throw new Error(\"url、viewname、data、options不能都为空!\");\r\n }\r\n let _this = this;\r\n let storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: function (store, options) {\r\n utils.callback(listenersPops.onBeforeLoad, _this, [store, options]);\r\n },\r\n load: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({ dataSource: newData, allDataSource: newData ,dataStore: data});\r\n utils.callback(listenersPops.load, _this, [data, modelData, store]);\r\n },\r\n dataChanged: function (data, modelData, store) {\r\n const newData = _this.getAllData(data);\r\n _this.setState({ dataSource: newData, allDataSource: newData ,dataStore: data});\r\n utils.callback(listenersPops.dataChanged, _this, [\r\n data,\r\n modelData,\r\n store,\r\n ]);\r\n },\r\n },\r\n ...stores,\r\n };\r\n if ((viewname || url) && data == null && options == null) {\r\n let isCached = cached;\r\n let isCacheKey = cacheKey;\r\n if (viewname) {\r\n if (typeof cached !== \"boolean\") {\r\n isCached = true;\r\n isCacheKey = isCacheKey ? isCacheKey : viewname;\r\n }\r\n }\r\n\r\n storeProps = {\r\n ...{\r\n autoLoad: true,\r\n url: url || requestViewUrl + viewname, //读字典,url固定,viewname\r\n cached: isCached,\r\n cacheKey: isCacheKey,\r\n },\r\n ...storeProps,\r\n };\r\n }\r\n this.store = new Store(storeProps);\r\n }\r\n }\r\n\r\n resetData() {\r\n const { children } = this.props;\r\n const { allDataSource, allChildren } = this.state;\r\n if (children) {\r\n this.setState({ children: allChildren });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n }\r\n\r\n\r\n getAllData = (data) => {\r\n let {\r\n store = {},\r\n addData = [],\r\n deleteData = [],\r\n valueField,\r\n } = this.props;\r\n const {\r\n viewname,\r\n } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n if (!Array.isArray(data)) {\r\n return [];\r\n }\r\n let newData = [...data];\r\n if (addData.length > 0) {\r\n newData = [...addData, ...newData];\r\n }\r\n if (deleteData.length > 0) {\r\n let spliceData = [];\r\n const valueFields: any = valueField.split(\",\");\r\n newData.map((item, i) => {\r\n let value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n if (deleteData.indexOf(value) == -1) {\r\n spliceData.push(item);\r\n }\r\n });\r\n return spliceData;\r\n } else {\r\n return newData;\r\n }\r\n };\r\n getData() {\r\n return this.state.allDataSource;\r\n }\r\n\r\n getValue() {\r\n return this.state.selectValue;\r\n }\r\n setValue(value) {\r\n this.setState({\r\n selectValue: value,\r\n });\r\n }\r\n\r\n getSelectData(value) {\r\n const { dataSource } = this.state;\r\n let { store = {}, valueField } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n const newData = getFlattenData(dataSource, { keyField: valueField });\r\n if (Array.isArray(value)) {\r\n let res = [] as any;\r\n value.map((val) => {\r\n res.push(newData[val] || {});\r\n });\r\n return res;\r\n } else {\r\n return newData[value] || {};\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const { data, options, children } = this.props;\r\n if (!children && (data || options)) {\r\n this.setState({\r\n dataSource: data ? data : options,\r\n allDataSource: data ? data : options,\r\n });\r\n } else if (children) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n }\r\n\r\n componentDidUpdate(newProps, newState, Snapshot) {\r\n const { data, options, children } = this.props;\r\n const { allDataSource, allChildren,dataStore } = this.state;\r\n if (!children && (data || options)) {\r\n const newData = data ? data : options;\r\n if (JSON.stringify(allDataSource) !== JSON.stringify(newData)) {\r\n this.setState({\r\n dataSource: newData,\r\n allDataSource: newData,\r\n });\r\n }\r\n } else if (children && Array.isArray(children)) {\r\n const stateChildrenProps: any = [];\r\n allChildren.map((s: any) => {\r\n stateChildrenProps.push(s.props);\r\n });\r\n const childrenProps: any = [];\r\n children.map((c: any) => {\r\n childrenProps.push(c.props);\r\n });\r\n if (\r\n JSON.stringify(stateChildrenProps) !== JSON.stringify(childrenProps)\r\n ) {\r\n this.setState({\r\n children: children,\r\n allChildren: children,\r\n });\r\n }\r\n } else if ((JSON.stringify(newProps.deleteData) !== JSON.stringify(this.props.deleteData)) || (JSON.stringify(newProps.addData) !== JSON.stringify(this.props.addData))) {\r\n const newData = this.getAllData(dataStore);\r\n this.setState({ dataSource: newData, allDataSource: newData,dataStore: dataStore});\r\n }\r\n }\r\n componentWillUnmount() {\r\n this.setState = (state, callback) => {\r\n return;\r\n };\r\n }\r\n onSearch(value) {\r\n const { allDataSource, allChildren } = this.state;\r\n const { filterOption = true, onSearch, children, store = {} } = this.props;\r\n let { labelField } = this.props;\r\n const { viewname } = store;\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n if (filterOption) {\r\n let result = [];\r\n if (!children) {\r\n if (value) {\r\n allDataSource.forEach((item) => {\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(item);\r\n }\r\n });\r\n this.setState({\r\n dataSource: result,\r\n });\r\n } else {\r\n this.setState({\r\n dataSource: allDataSource,\r\n });\r\n }\r\n } else {\r\n if (value) {\r\n if (Array.isArray(allChildren)) {\r\n allChildren.map((child: any, index) => {\r\n let label = child?.props?.children;\r\n let flag = PinyinMatch.match(label, value);\r\n if (flag) {\r\n result.push(child);\r\n }\r\n });\r\n }\r\n this.setState({\r\n children: result,\r\n });\r\n } else {\r\n this.setState({\r\n children: children,\r\n });\r\n }\r\n }\r\n }\r\n onSearch && onSearch(value);\r\n }\r\n renderOption(optionData) {\r\n let {\r\n store = {},\r\n valueType = \"string\",\r\n labelField,\r\n valueField,\r\n } = this.props;\r\n const { viewname } = store;\r\n valueField = valueField ? valueField : viewname ? \"dictKey\" : \"value\";\r\n labelField = labelField ? labelField : viewname ? \"dictValue\" : \"label\";\r\n return optionData.map((item) => {\r\n let value: any;\r\n if (valueField.split(\",\").length == 1) {\r\n value =\r\n valueType === \"number\" ? Number(item[valueField]) : item[valueField];\r\n } else {\r\n const valueFields: any = valueField.split(\",\");\r\n value = \"\";\r\n valueFields.map((v, index) => {\r\n value = index == 0 ? value + item[v] : value + \",\" + item[v];\r\n });\r\n }\r\n let key = item.id ? (item.id !== \"undefined\" ? item.id : value) : value;\r\n let label = \"\";\r\n if (labelField.split(\",\").length == 1) {\r\n label = item[labelField];\r\n } else {\r\n const labelFields: any = labelField.split(\",\");\r\n labelFields.map((l, index) => {\r\n label = index == 0 ? label + item[l] : label + \"-\" + item[l];\r\n });\r\n }\r\n return (\r\n <Option\r\n key={key}\r\n value={value}\r\n label={label}\r\n disabled={item.disabled ? true : false}\r\n >\r\n {label}\r\n </Option>\r\n );\r\n });\r\n }\r\n renderChildren() {\r\n const { showGroup = true,groupField='groupName' } = this.props;\r\n const { dataSource, children } = this.state;\r\n if (children) {\r\n return <>{children}</>;\r\n } else {\r\n let optGroupData = {},\r\n optionData = [];\r\n dataSource.forEach((item) => {\r\n let label = item[groupField];\r\n if (label && showGroup) {\r\n if (!optGroupData[label]) optGroupData[label] = [];\r\n optGroupData[label].push(item);\r\n } else {\r\n optionData.push(item);\r\n }\r\n });\r\n let option = this.renderOption(optionData);\r\n let optGroup = Object.keys(optGroupData).map((key) => {\r\n return (\r\n <OptGroup key={key} label={key}>\r\n {this.renderOption(optGroupData[key])}\r\n </OptGroup>\r\n );\r\n });\r\n return (\r\n <>\r\n {option}\r\n {optGroup}\r\n </>\r\n );\r\n }\r\n }\r\n onChange(value, options) {\r\n const { onChange } = this.props;\r\n this.setState({\r\n selectValue: value,\r\n });\r\n if (onChange) {\r\n const data = this.getSelectData(value);\r\n onChange(value, options, data);\r\n }\r\n }\r\n onSelect(value, options) {\r\n const { onSelect } = this.props;\r\n\r\n if (onSelect) {\r\n const data = this.getSelectData(value);\r\n onSelect(value, options, data);\r\n }\r\n }\r\n onDropdownVisibleChange(open) {\r\n if (!open) {\r\n this.resetData();\r\n }\r\n }\r\n render() {\r\n const {\r\n children,\r\n store,\r\n data,\r\n onChange,\r\n onSelect,\r\n options,\r\n labelField,\r\n valueField,\r\n defaultStyle,\r\n showGroup = true,\r\n addData,\r\n deleteData,\r\n valueType,\r\n groupField,\r\n dataType,\r\n ...params\r\n } = this.props;\r\n let props = {\r\n filterOption: false,\r\n showSearch: true,\r\n optionFilterProp: \"label\",\r\n placeholder: \"请选择\",\r\n allowClear: true,\r\n } as any;\r\n let { antdStyle, mountElementId } = config();\r\n if (mountElementId) {\r\n props = {\r\n getPopupContainer: () => document.getElementById(mountElementId),\r\n ...props,\r\n };\r\n }\r\n if ((defaultStyle || antdStyle) && defaultStyle === true) {\r\n return (\r\n <div className={cls(styles[\"nsc_select\"], this.props.className)}>\r\n <Select\r\n value={this.state.selectValue}\r\n onChange={this.onChange.bind(this)}\r\n onSearch={this.onSearch.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <Select\r\n value={this.state.selectValue}\r\n onSearch={this.onSearch.bind(this)}\r\n onChange={this.onChange.bind(this)}\r\n onSelect={this.onSelect.bind(this)}\r\n onDropdownVisibleChange={this.onDropdownVisibleChange.bind(this)}\r\n {...props}\r\n {...params}\r\n >\r\n {this.renderChildren()}\r\n </Select>\r\n );\r\n }\r\n }\r\n}\r\n"],"mappings":"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"}
|