nsc-react-component 1.4.5 → 1.4.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.
@@ -0,0 +1,3 @@
1
+ {
2
+ "typescript.tsdk": "node_modules\\typescript\\lib"
3
+ }
@@ -77,6 +77,8 @@ var NSCDatePicker = /*#__PURE__*/function (_PureComponent) {
77
77
  date: date,
78
78
  dateString: dateString
79
79
  });
80
+ var onChange = this.props.onChange;
81
+ onChange && onChange(date, dateString);
80
82
  }
81
83
  }, {
82
84
  key: "getValue",
@@ -114,4 +116,4 @@ var NSCDatePicker = /*#__PURE__*/function (_PureComponent) {
114
116
  _defineProperty(NSCDatePicker, "RangePicker", NscRangePicker);
115
117
 
116
118
  export default NSCDatePicker;
117
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2RhdGVwaWNrL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJOc2NSYW5nZVBpY2tlciIsImxvY2FsZSIsIk5TQ0RhdGVQaWNrZXIiLCJkYXRlU3RyaW5nIiwiZGF0ZSIsInNldFN0YXRlIiwic3RhdGUiLCJwcm9wcyIsInBpY2tlciIsIm9uQ2hhbmdlIiwicGFyYW1zIiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsY0FBUCxNQUEyQixlQUEzQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsa0NBQW5COztJQUtNQyxhOzs7Ozs7Ozs7Ozs7Ozs7OzREQUVJO0FBQ05DLE1BQUFBLFVBQVUsRUFBRSxFQUROO0FBRU5DLE1BQUFBLElBQUksRUFBRTtBQUZBLEs7Ozs7Ozs7V0FJUixrQkFBU0EsSUFBVCxFQUFvQkQsVUFBcEIsRUFBd0M7QUFDdEMsV0FBS0UsUUFBTCxDQUFjO0FBQ1pELFFBQUFBLElBQUksRUFBRUEsSUFETTtBQUVaRCxRQUFBQSxVQUFVLEVBQUVBO0FBRkEsT0FBZDtBQUlEOzs7V0FDRCxvQkFBVztBQUNULGFBQU87QUFDTEMsUUFBQUEsSUFBSSxFQUFFLEtBQUtFLEtBQUwsQ0FBV0YsSUFEWjtBQUVMRCxRQUFBQSxVQUFVLEVBQUUsS0FBS0csS0FBTCxDQUFXSDtBQUZsQixPQUFQO0FBSUQ7OztXQUNELGtCQUFTO0FBQ1Asd0JBQXdDLEtBQUtJLEtBQTdDO0FBQUEsVUFBUUMsTUFBUixlQUFRQSxNQUFSO0FBQUEsVUFBZ0JDLFFBQWhCLGVBQWdCQSxRQUFoQjtBQUFBLFVBQTZCQyxNQUE3Qjs7QUFDQSxVQUFJRixNQUFNLElBQUksTUFBZCxFQUFzQjtBQUNwQiw0QkFBTztBQUFZLFVBQUEsUUFBUSxFQUFFLEtBQUtDLFFBQUwsQ0FBY0UsSUFBZCxDQUFtQixJQUFuQjtBQUF0QixXQUFvREQsTUFBcEQsRUFBUDtBQUNELE9BRkQsTUFFTztBQUNMLDRCQUNFO0FBQ0UsVUFBQSxNQUFNLEVBQUVGLE1BRFY7QUFFRSxVQUFBLFFBQVEsRUFBRSxLQUFLQyxRQUFMLENBQWNFLElBQWQsQ0FBbUIsSUFBbkIsQ0FGWjtBQUdFLFVBQUEsTUFBTSxFQUFFVjtBQUhWLFdBSU1TLE1BSk4sRUFERjtBQVFEO0FBQ0Y7Ozs7RUFoQ3lCWCxhOztnQkFBdEJHLGEsaUJBQ2lCRixjOztBQWtDdkIsZUFBZUUsYUFBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246IOaXpeacn+e7hOS7tlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjYgMDg6NTI6NTJcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTE0IDIxOjM5OjI5XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgRGF0ZVBpY2tlciwgVGltZVBpY2tlciB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBOc2NSYW5nZVBpY2tlciBmcm9tIFwiLi9SYW5nZXBpY2tlclwiO1xyXG5pbXBvcnQgbG9jYWxlIGZyb20gXCJhbnRkL2VzL2RhdGUtcGlja2VyL2xvY2FsZS96aF9DTlwiO1xyXG5pbnRlcmZhY2UgSURhdGVQaWNrZXJQcm9wcyB7XHJcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbmNsYXNzIE5TQ0RhdGVQaWNrZXIgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PGFueT4ge1xyXG4gIHN0YXRpYyBSYW5nZVBpY2tlciA9IE5zY1JhbmdlUGlja2VyO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0ZVN0cmluZzogXCJcIixcclxuICAgIGRhdGU6IG51bGwsXHJcbiAgfTtcclxuICBvbkNoYW5nZShkYXRlOiBhbnksIGRhdGVTdHJpbmc6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIGRhdGU6IGRhdGUsXHJcbiAgICAgIGRhdGVTdHJpbmc6IGRhdGVTdHJpbmcsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBkYXRlOiB0aGlzLnN0YXRlLmRhdGUsXHJcbiAgICAgIGRhdGVTdHJpbmc6IHRoaXMuc3RhdGUuZGF0ZVN0cmluZyxcclxuICAgIH07XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgcGlja2VyLCBvbkNoYW5nZSwgLi4ucGFyYW1zIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKHBpY2tlciA9PSBcInRpbWVcIikge1xyXG4gICAgICByZXR1cm4gPFRpbWVQaWNrZXIgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX0gey4uLnBhcmFtc30gLz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxEYXRlUGlja2VyXHJcbiAgICAgICAgICBwaWNrZXI9e3BpY2tlcn1cclxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBsb2NhbGU9e2xvY2FsZX1cclxuICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgLz5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IE5TQ0RhdGVQaWNrZXI7XHJcbiJdfQ==
119
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2RhdGVwaWNrL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJOc2NSYW5nZVBpY2tlciIsImxvY2FsZSIsIk5TQ0RhdGVQaWNrZXIiLCJkYXRlU3RyaW5nIiwiZGF0ZSIsInNldFN0YXRlIiwib25DaGFuZ2UiLCJwcm9wcyIsInN0YXRlIiwicGlja2VyIiwicGFyYW1zIiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsY0FBUCxNQUEyQixlQUEzQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsa0NBQW5COztJQUtNQyxhOzs7Ozs7Ozs7Ozs7Ozs7OzREQUVJO0FBQ05DLE1BQUFBLFVBQVUsRUFBRSxFQUROO0FBRU5DLE1BQUFBLElBQUksRUFBRTtBQUZBLEs7Ozs7Ozs7V0FJUixrQkFBU0EsSUFBVCxFQUFvQkQsVUFBcEIsRUFBd0M7QUFDdEMsV0FBS0UsUUFBTCxDQUFjO0FBQ1pELFFBQUFBLElBQUksRUFBRUEsSUFETTtBQUVaRCxRQUFBQSxVQUFVLEVBQUVBO0FBRkEsT0FBZDtBQUlBLFVBQVFHLFFBQVIsR0FBcUIsS0FBS0MsS0FBMUIsQ0FBUUQsUUFBUjtBQUNBQSxNQUFBQSxRQUFRLElBQUlBLFFBQVEsQ0FBQ0YsSUFBRCxFQUFPRCxVQUFQLENBQXBCO0FBQ0Q7OztXQUNELG9CQUFXO0FBQ1QsYUFBTztBQUNMQyxRQUFBQSxJQUFJLEVBQUUsS0FBS0ksS0FBTCxDQUFXSixJQURaO0FBRUxELFFBQUFBLFVBQVUsRUFBRSxLQUFLSyxLQUFMLENBQVdMO0FBRmxCLE9BQVA7QUFJRDs7O1dBQ0Qsa0JBQVM7QUFDUCx3QkFBd0MsS0FBS0ksS0FBN0M7QUFBQSxVQUFRRSxNQUFSLGVBQVFBLE1BQVI7QUFBQSxVQUFnQkgsUUFBaEIsZUFBZ0JBLFFBQWhCO0FBQUEsVUFBNkJJLE1BQTdCOztBQUNBLFVBQUlELE1BQU0sSUFBSSxNQUFkLEVBQXNCO0FBQ3BCLDRCQUFPO0FBQVksVUFBQSxRQUFRLEVBQUUsS0FBS0gsUUFBTCxDQUFjSyxJQUFkLENBQW1CLElBQW5CO0FBQXRCLFdBQW9ERCxNQUFwRCxFQUFQO0FBQ0QsT0FGRCxNQUVPO0FBQ0wsNEJBQ0U7QUFDRSxVQUFBLE1BQU0sRUFBRUQsTUFEVjtBQUVFLFVBQUEsUUFBUSxFQUFFLEtBQUtILFFBQUwsQ0FBY0ssSUFBZCxDQUFtQixJQUFuQixDQUZaO0FBR0UsVUFBQSxNQUFNLEVBQUVWO0FBSFYsV0FJTVMsTUFKTixFQURGO0FBUUQ7QUFDRjs7OztFQWxDeUJYLGE7O2dCQUF0QkcsYSxpQkFDaUJGLGM7O0FBb0N2QixlQUFlRSxhQUFmIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjog5pel5pyf57uE5Lu2XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wMy0yNiAwODo1Mjo1MlxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMTQgMjE6Mzk6MjlcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5pbXBvcnQgeyBEYXRlUGlja2VyLCBUaW1lUGlja2VyIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IE5zY1JhbmdlUGlja2VyIGZyb20gXCIuL1JhbmdlcGlja2VyXCI7XHJcbmltcG9ydCBsb2NhbGUgZnJvbSBcImFudGQvZXMvZGF0ZS1waWNrZXIvbG9jYWxlL3poX0NOXCI7XHJcbmludGVyZmFjZSBJRGF0ZVBpY2tlclByb3BzIHtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuY2xhc3MgTlNDRGF0ZVBpY2tlciBleHRlbmRzIFB1cmVDb21wb25lbnQ8YW55PiB7XHJcbiAgc3RhdGljIFJhbmdlUGlja2VyID0gTnNjUmFuZ2VQaWNrZXI7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRlU3RyaW5nOiBcIlwiLFxyXG4gICAgZGF0ZTogbnVsbCxcclxuICB9O1xyXG4gIG9uQ2hhbmdlKGRhdGU6IGFueSwgZGF0ZVN0cmluZzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgZGF0ZTogZGF0ZSxcclxuICAgICAgZGF0ZVN0cmluZzogZGF0ZVN0cmluZyxcclxuICAgIH0pO1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIG9uQ2hhbmdlICYmIG9uQ2hhbmdlKGRhdGUsIGRhdGVTdHJpbmcpO1xyXG4gIH1cclxuICBnZXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRhdGU6IHRoaXMuc3RhdGUuZGF0ZSxcclxuICAgICAgZGF0ZVN0cmluZzogdGhpcy5zdGF0ZS5kYXRlU3RyaW5nLFxyXG4gICAgfTtcclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBwaWNrZXIsIG9uQ2hhbmdlLCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAocGlja2VyID09IFwidGltZVwiKSB7XHJcbiAgICAgIHJldHVybiA8VGltZVBpY2tlciBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfSB7Li4ucGFyYW1zfSAvPjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPERhdGVQaWNrZXJcclxuICAgICAgICAgIHBpY2tlcj17cGlja2VyfVxyXG4gICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIGxvY2FsZT17bG9jYWxlfVxyXG4gICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgTlNDRGF0ZVBpY2tlcjtcclxuIl19
@@ -13,7 +13,6 @@ interface IMenuProps extends MenuProps {
13
13
  export default class NSCMenu extends PureComponent<IMenuProps> {
14
14
  static SubMenu: typeof import("antd/lib/menu/SubMenu").default;
15
15
  static Item: typeof import("antd/lib/menu/MenuItem").default;
16
- static ItemGroup: typeof import("rc-menu").MenuItemGroup;
17
16
  state: {
18
17
  dataSource: any[];
19
18
  };
package/lib/menu/index.js CHANGED
@@ -218,7 +218,8 @@ var NSCMenu = /*#__PURE__*/function (_PureComponent) {
218
218
  }
219
219
  }], [{
220
220
  key: "getDerivedStateFromProps",
221
- value: function getDerivedStateFromProps(nextProps, prevState) {
221
+ value: // static ItemGroup = ItemGroup;
222
+ function getDerivedStateFromProps(nextProps, prevState) {
222
223
  var dataSource = prevState.dataSource;
223
224
  var data = nextProps.data;
224
225
 
@@ -241,7 +242,5 @@ _defineProperty(NSCMenu, "SubMenu", SubMenu);
241
242
 
242
243
  _defineProperty(NSCMenu, "Item", Item);
243
244
 
244
- _defineProperty(NSCMenu, "ItemGroup", ItemGroup);
245
-
246
245
  export { NSCMenu as default };
247
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJnZXRJY29uIiwib21pdCIsIlN1Yk1lbnUiLCJJdGVtIiwiSXRlbUdyb3VwIiwiTlNDTWVudSIsInByb3BzIiwiZGF0YVNvdXJjZSIsIm1lbnVzRGF0YSIsIkFycmF5IiwiaXNBcnJheSIsInRpdGxlRmllbGQiLCJrZXlGaWVsZCIsInNob3dJY29uIiwic3ViTWVudVByb3BzIiwidG9vbHRpcCIsIm1hcCIsIml0ZW0iLCJzdHlsZSIsImljb24iLCJkaXNhYmxlZCIsInRpdGxlIiwic3BhbnRpdGxlIiwidG9vbHRpcHRpdGxlIiwibmV3dGl0bGUiLCJtZW51R3JvdXBEYXRhIiwibWVudURhdGEiLCJjaGlsZERhdGEiLCJncnVvcHRpdGxlIiwiZ3JvdXBOYW1lIiwicHVzaCIsIk9iamVjdCIsImtleXMiLCJrZXkiLCJyZW5kZXJNZW51SXRlbSIsImNoaWxkcmVuIiwic3RhdGUiLCJkYXRhIiwic3RvcmUiLCJ1cmwiLCJsaXN0ZW5lcnMiLCJsaXN0ZW5lcnNQb3BzIiwidmlld25hbWUiLCJzdG9yZXMiLCJFcnJvciIsIl90aGlzIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwib3B0aW9ucyIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJhdXRvTG9hZCIsIm1lbnVQcm9wcyIsInJlbmRlckNoaWxkcmVuIiwibmV4dFByb3BzIiwicHJldlN0YXRlIiwiSlNPTiIsInN0cmluZ2lmeSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFx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SUFBUjs7QUFDQSxVQUFJQSxJQUFKLEVBQVU7QUFDUixZQUFJd0IsSUFBSSxDQUFDQyxTQUFMLENBQWV2RCxVQUFmLE1BQStCc0QsSUFBSSxDQUFDQyxTQUFMLENBQWV6QixJQUFmLENBQW5DLEVBQXlEO0FBQ3ZELGlCQUFPO0FBQ0w5QixZQUFBQSxVQUFVLEVBQUU4QjtBQURQLFdBQVA7QUFHRDtBQUNGOztBQUNELGFBQU8sSUFBUDtBQUNEOzs7O0VBckJrQ3hDLGE7O2dCQUFoQlEsTyxhQUNGSCxPOztnQkFERUcsTyxVQUVMRixJOztnQkFGS0UsTyxlQUdBRCxTOztTQUhBQyxPIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjpcclxuICogQHZlcnNpb246XHJcbiAqIEBBdXRob3I6IHJ4emh1XHJcbiAqIEBEYXRlOiAyMDIxLTA0LTE2IDA5OjQzOjI4XHJcbiAqIEBMYXN0RWRpdG9yczogUGxlYXNlIHNldCBMYXN0RWRpdG9yc1xyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIyLTAyLTI2IDE1OjEzOjIyXHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgTWVudSwgTWVudVByb3BzLCBTdWJNZW51UHJvcHMsIFRvb2x0aXAgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IHsgZ2V0SWNvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5cclxuaW50ZXJmYWNlIElNZW51UHJvcHMgZXh0ZW5kcyBNZW51UHJvcHMge1xyXG4gIGRhdGE/OiBBcnJheTxvYmplY3Q+O1xyXG4gIHRpdGxlRmllbGQ/OiBzdHJpbmc7XHJcbiAga2V5RmllbGQ/OiBzdHJpbmc7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIHNob3dJY29uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLppY29uICzpu5jorqR0cnVlXHJcbiAgc3ViTWVudVByb3BzPzogU3ViTWVudVByb3BzO1xyXG4gIHRvb2x0aXA/OiBib29sZWFuO1xyXG59XHJcbmNvbnN0IHsgU3ViTWVudSwgSXRlbSwgSXRlbUdyb3VwIH0gPSBNZW51O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDTWVudSBleHRlbmRzIFB1cmVDb21wb25lbnQ8SU1lbnVQcm9wcz4ge1xyXG4gIHN0YXRpYyBTdWJNZW51ID0gU3ViTWVudTtcclxuICBzdGF0aWMgSXRlbSA9IEl0ZW07XHJcbiAgc3RhdGljIEl0ZW1Hcm91cCA9IEl0ZW1Hcm91cDtcclxuXHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRhU291cmNlOiBbXSxcclxuICB9O1xyXG5cclxuICBzdG9yZSA9IHt9IGFzIFN0b3JlUHJvcHM7XHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZTogYW55KSB7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UgfSA9IHByZXZTdGF0ZTtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gbmV4dFByb3BzO1xyXG4gICAgaWYgKGRhdGEpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGRhdGFTb3VyY2UpICE9PSBKU09OLnN0cmluZ2lmeShkYXRhKSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBkYXRhLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgY29uc3QgeyBkYXRhLCBzdG9yZSA9IHt9LCBjaGlsZHJlbiB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7IHVybCwgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sIHZpZXduYW1lLCAuLi5zdG9yZXMgfSA9IHN0b3JlO1xyXG4gICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICBpZiAoIShkYXRhIHx8IHVybCkpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIFkYXRh5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgaWYgKHVybCAmJiBkYXRhID09IG51bGwpIHtcclxuICAgICAgICBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgICAgLi4ue1xyXG4gICAgICAgICAgICBhdXRvTG9hZDogdHJ1ZSxcclxuICAgICAgICAgICAgdXJsOiB1cmwsIC8v6K+75a2X5YW477yMdXJs5Zu65a6a77yMdmlld25hbWVcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBpZiAodGhpcy5wcm9wcy5kYXRhKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IHRoaXMucHJvcHMuZGF0YSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlck1lbnVJdGVtID0gKG1lbnVzRGF0YSkgPT4ge1xyXG4gICAgaWYgKCFtZW51c0RhdGEgfHwgIUFycmF5LmlzQXJyYXkobWVudXNEYXRhKSkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHRpdGxlRmllbGQgPSBcInRpdGxlXCIsXHJcbiAgICAgIGtleUZpZWxkID0gXCJrZXlcIixcclxuICAgICAgc2hvd0ljb24gPSB0cnVlLFxyXG4gICAgICBzdWJNZW51UHJvcHMgPSB7fSxcclxuICAgICAgdG9vbHRpcCA9IGZhbHNlLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICByZXR1cm4gbWVudXNEYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBjb25zdCB7IHN0eWxlLCBpY29uLCBkaXNhYmxlZCB9ID0gaXRlbTtcclxuXHJcbiAgICAgIGNvbnN0IHRpdGxlID0gaXRlbVt0aXRsZUZpZWxkXTtcclxuICAgICAgY29uc3Qgc3BhbnRpdGxlID0gPHNwYW4gc3R5bGU9e3N0eWxlfT57dGl0bGV9PC9zcGFuPjtcclxuICAgICAgY29uc3QgdG9vbHRpcHRpdGxlID0gPFRvb2x0aXAgdGl0bGU9e3RpdGxlfT57dGl0bGV9PC9Ub29sdGlwPjtcclxuICAgICAgY29uc3QgbmV3dGl0bGUgPSB0b29sdGlwP3Rvb2x0aXB0aXRsZTpzcGFudGl0bGVcclxuICAgICAgaWYgKGl0ZW1bXCJjaGlsZE5vZGVzXCJdIHx8IGl0ZW1bXCJjaGlsZHJlblwiXSkge1xyXG4gICAgICAgIGxldCBtZW51R3JvdXBEYXRhID0ge30sXHJcbiAgICAgICAgICBtZW51RGF0YSA9IFtdO1xyXG4gICAgICAgIGxldCBjaGlsZERhdGEgPSBpdGVtW1wiY2hpbGROb2Rlc1wiXSB8fCBpdGVtW1wiY2hpbGRyZW5cIl07XHJcbiAgICAgICAgY2hpbGREYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgbGV0IGdydW9wdGl0bGUgPSBpdGVtLmdyb3VwTmFtZTtcclxuICAgICAgICAgIGlmIChncnVvcHRpdGxlKSB7XHJcbiAgICAgICAgICAgIGlmICghbWVudUdyb3VwRGF0YVtncnVvcHRpdGxlXSkgbWVudUdyb3VwRGF0YVtncnVvcHRpdGxlXSA9IFtdO1xyXG4gICAgICAgICAgICBtZW51R3JvdXBEYXRhW2dydW9wdGl0bGVdLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBtZW51RGF0YS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8U3ViTWVudVxyXG4gICAgICAgICAgICBrZXk9e2l0ZW1ba2V5RmllbGRdfVxyXG4gICAgICAgICAgICB0aXRsZT17XHJcbiAgICAgICAgICAgICAgc2hvd0ljb24gJiYgaWNvbiA/IChcclxuICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICB7Z2V0SWNvbihpY29uKX1cclxuICAgICAgICAgICAgICAgICAge25ld3RpdGxlfVxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICBuZXd0aXRsZVxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB7Li4uc3ViTWVudVByb3BzfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7T2JqZWN0LmtleXMobWVudUdyb3VwRGF0YSkubWFwKChrZXkpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgPEl0ZW1Hcm91cCBrZXk9e2tleX0gdGl0bGU9e2tleX0+XHJcbiAgICAgICAgICAgICAgICAgIHt0aGlzLnJlbmRlck1lbnVJdGVtKG1lbnVHcm91cERhdGFba2V5XSl9XHJcbiAgICAgICAgICAgICAgICA8L0l0ZW1Hcm91cD5cclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAge3RoaXMucmVuZGVyTWVudUl0ZW0obWVudURhdGEpfVxyXG4gICAgICAgICAgPC9TdWJNZW51PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxNZW51Lkl0ZW0ga2V5PXtpdGVtW2tleUZpZWxkXX0gZGlzYWJsZWQ9e2Rpc2FibGVkfT5cclxuICAgICAgICAgICAge3Nob3dJY29uICYmIGljb24gPyAoXHJcbiAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICB7Z2V0SWNvbihpY29uKX1cclxuICAgICAgICAgICAgICAgIHtuZXd0aXRsZX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgbmV3dGl0bGVcclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgIDwvTWVudS5JdGVtPlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH07XHJcbiAgcmVuZGVyQ2hpbGRyZW4gPSAoKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHJldHVybiA8PntjaGlsZHJlbn08Lz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJNZW51SXRlbShkYXRhU291cmNlKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCBtZW51UHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcclxuICAgICAgXCJkYXRhXCIsXHJcbiAgICAgIFwic3RvcmVcIixcclxuICAgICAgXCJ0aXRsZUZpZWxkXCIsXHJcbiAgICAgIFwia2V5RmllbGRcIixcclxuICAgICAgXCJzaG93SWNvblwiLFxyXG4gICAgICBcInRvb2x0aXBcIixcclxuICAgIF0pO1xyXG4gICAgcmV0dXJuIDxNZW51IHsuLi5tZW51UHJvcHN9Pnt0aGlzLnJlbmRlckNoaWxkcmVuKCl9PC9NZW51PjtcclxuICB9XHJcbn1cclxuIl19
246
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJnZXRJY29uIiwib21pdCIsIlN1Yk1lbnUiLCJJdGVtIiwiSXRlbUdyb3VwIiwiTlNDTWVudSIsInByb3BzIiwiZGF0YVNvdXJjZSIsIm1lbnVzRGF0YSIsIkFycmF5IiwiaXNBcnJheSIsInRpdGxlRmllbGQiLCJrZXlGaWVsZCIsInNob3dJY29uIiwic3ViTWVudVByb3BzIiwidG9vbHRpcCIsIm1hcCIsIml0ZW0iLCJzdHlsZSIsImljb24iLCJkaXNhYmxlZCIsInRpdGxlIiwic3BhbnRpdGxlIiwidG9vbHRpcHRpdGxlIiwibmV3dGl0bGUiLCJtZW51R3JvdXBEYXRhIiwibWVudURhdGEiLCJjaGlsZERhdGEiLCJncnVvcHRpdGxlIiwiZ3JvdXBOYW1lIiwicHVzaCIsIk9iamVjdCIsImtleXMiLCJrZXkiLCJyZW5kZXJNZW51SXRlbSIsImNoaWxkcmVuIiwic3RhdGUiLCJkYXRhIiwic3RvcmUiLCJ1cmwiLCJsaXN0ZW5lcnMiLCJsaXN0ZW5lcnNQb3BzIiwidmlld25hbWUiLCJzdG9yZXMiLCJFcnJvciIsIl90aGlzIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwib3B0aW9ucyIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJhdXRvTG9hZCIsIm1lbnVQcm9wcyIsInJlbmRlckNoaWxkcmVuIiwibmV4dFByb3BzIiwicHJldlN0YXRlIiwiSlNPTiIsInN0cmluZ2lmeSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQUdBLE9BQU9DLEtBQVAsTUFBa0MsYUFBbEM7QUFDQSxTQUFTQyxLQUFULFFBQXNCLHVCQUF0QjtBQUNBLFNBQVNDLE9BQVQsUUFBd0IsVUFBeEI7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLFNBQWpCO0FBV0EsSUFBUUMsT0FBUixTQUFRQSxPQUFSO0FBQUEsSUFBaUJDLElBQWpCLFNBQWlCQSxJQUFqQjtBQUFBLElBQXVCQyxTQUF2QixTQUF1QkEsU0FBdkI7O0lBRXFCQyxPOzs7OztBQXNCbkIsbUJBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQTs7QUFDakIsK0JBQU1BLEtBQU47O0FBRGlCLDZEQWpCWDtBQUNOQyxNQUFBQSxVQUFVLEVBQUU7QUFETixLQWlCVzs7QUFBQSw2REFiWCxFQWFXOztBQUFBLHNFQWtERixVQUFDQyxTQUFELEVBQWU7QUFDOUIsVUFBSSxDQUFDQSxTQUFELElBQWMsQ0FBQ0MsS0FBSyxDQUFDQyxPQUFOLENBQWNGLFNBQWQsQ0FBbkIsRUFBNkM7QUFDM0MsZUFBTyxFQUFQO0FBQ0Q7O0FBQ0QseUJBTUksT0FBS0YsS0FOVDtBQUFBLCtDQUNFSyxVQURGO0FBQUEsVUFDRUEsVUFERixzQ0FDZSxPQURmO0FBQUEsK0NBRUVDLFFBRkY7QUFBQSxVQUVFQSxRQUZGLHNDQUVhLEtBRmI7QUFBQSwrQ0FHRUMsUUFIRjtBQUFBLFVBR0VBLFFBSEYsc0NBR2EsSUFIYjtBQUFBLCtDQUlFQyxZQUpGO0FBQUEsVUFJRUEsWUFKRixzQ0FJaUIsRUFKakI7QUFBQSw4Q0FLRUMsT0FMRjtBQUFBLFVBS0VBLE9BTEYscUNBS1ksS0FMWjtBQU9BLGFBQU9QLFNBQVMsQ0FBQ1EsR0FBVixDQUFjLFVBQUNDLElBQUQsRUFBVTtBQUM3QixZQUFRQyxLQUFSLEdBQWtDRCxJQUFsQyxDQUFRQyxLQUFSO0FBQUEsWUFBZUMsSUFBZixHQUFrQ0YsSUFBbEMsQ0FBZUUsSUFBZjtBQUFBLFlBQXFCQyxRQUFyQixHQUFrQ0gsSUFBbEMsQ0FBcUJHLFFBQXJCO0FBRUEsWUFBTUMsS0FBSyxHQUFHSixJQUFJLENBQUNOLFVBQUQsQ0FBbEI7QUFDQSxZQUFNVyxTQUFTLGdCQUFHO0FBQU0sVUFBQSxLQUFLLEVBQUVKO0FBQWIsV0FBcUJHLEtBQXJCLENBQWxCO0FBQ0EsWUFBTUUsWUFBWSxnQkFBRztBQUFTLFVBQUEsS0FBSyxFQUFFRjtBQUFoQixXQUF3QkEsS0FBeEIsQ0FBckI7QUFDQSxZQUFNRyxRQUFRLEdBQUdULE9BQU8sR0FBQ1EsWUFBRCxHQUFjRCxTQUF0Qzs7QUFDQSxZQUFJTCxJQUFJLENBQUMsWUFBRCxDQUFKLElBQXNCQSxJQUFJLENBQUMsVUFBRCxDQUE5QixFQUE0QztBQUMxQyxjQUFJUSxhQUFhLEdBQUcsRUFBcEI7QUFBQSxjQUNFQyxRQUFRLEdBQUcsRUFEYjtBQUVBLGNBQUlDLFNBQVMsR0FBR1YsSUFBSSxDQUFDLFlBQUQsQ0FBSixJQUFzQkEsSUFBSSxDQUFDLFVBQUQsQ0FBMUM7QUFDQVUsVUFBQUEsU0FBUyxDQUFDWCxHQUFWLENBQWMsVUFBQ0MsSUFBRCxFQUFVO0FBQ3RCLGdCQUFJVyxVQUFVLEdBQUdYLElBQUksQ0FBQ1ksU0FBdEI7O0FBQ0EsZ0JBQUlELFVBQUosRUFBZ0I7QUFDZCxrQkFBSSxDQUFDSCxhQUFhLENBQUNHLFVBQUQsQ0FBbEIsRUFBZ0NILGFBQWEsQ0FBQ0csVUFBRCxDQUFiLEdBQTRCLEVBQTVCO0FBQ2hDSCxjQUFBQSxhQUFhLENBQUNHLFVBQUQsQ0FBYixDQUEwQkUsSUFBMUIsQ0FBK0JiLElBQS9CO0FBQ0QsYUFIRCxNQUdPO0FBQ0xTLGNBQUFBLFFBQVEsQ0FBQ0ksSUFBVCxDQUFjYixJQUFkO0FBQ0Q7QUFDRixXQVJEO0FBU0EsOEJBQ0Usb0JBQUMsT0FBRDtBQUNFLFlBQUEsR0FBRyxFQUFFQSxJQUFJLENBQUNMLFFBQUQsQ0FEWDtBQUVFLFlBQUEsS0FBSyxFQUNIQyxRQUFRLElBQUlNLElBQVosZ0JBQ0Usa0NBQ0duQixPQUFPLENBQUNtQixJQUFELENBRFYsRUFFR0ssUUFGSCxDQURGLEdBTUVBO0FBVE4sYUFZTVYsWUFaTixHQWNHaUIsTUFBTSxDQUFDQyxJQUFQLENBQVlQLGFBQVosRUFBMkJULEdBQTNCLENBQStCLFVBQUNpQixHQUFELEVBQVM7QUFDdkMsZ0NBQ0Usb0JBQUMsU0FBRDtBQUFXLGNBQUEsR0FBRyxFQUFFQSxHQUFoQjtBQUFxQixjQUFBLEtBQUssRUFBRUE7QUFBNUIsZUFDRyxPQUFLQyxjQUFMLENBQW9CVCxhQUFhLENBQUNRLEdBQUQsQ0FBakMsQ0FESCxDQURGO0FBS0QsV0FOQSxDQWRILEVBcUJHLE9BQUtDLGNBQUwsQ0FBb0JSLFFBQXBCLENBckJILENBREY7QUF5QkQsU0F0Q0QsTUFzQ087QUFDTCw4QkFDRSwwQkFBTSxJQUFOO0FBQVcsWUFBQSxHQUFHLEVBQUVULElBQUksQ0FBQ0wsUUFBRCxDQUFwQjtBQUFnQyxZQUFBLFFBQVEsRUFBRVE7QUFBMUMsYUFDR1AsUUFBUSxJQUFJTSxJQUFaLGdCQUNDLGtDQUNHbkIsT0FBTyxDQUFDbUIsSUFBRCxDQURWLEVBRUdLLFFBRkgsQ0FERCxHQU1DQSxRQVBKLENBREY7QUFZRDtBQUNGLE9BM0RNLENBQVA7QUE0REQsS0F6SGtCOztBQUFBLHNFQTBIRixZQUFNO0FBQ3JCLFVBQVFXLFFBQVIsR0FBcUIsT0FBSzdCLEtBQTFCLENBQVE2QixRQUFSO0FBQ0EsVUFBUTVCLFVBQVIsR0FBdUIsT0FBSzZCLEtBQTVCLENBQVE3QixVQUFSOztBQUNBLFVBQUk0QixRQUFKLEVBQWM7QUFDWiw0QkFBTywwQ0FBR0EsUUFBSCxDQUFQO0FBQ0QsT0FGRCxNQUVPO0FBQ0wsZUFBTyxPQUFLRCxjQUFMLENBQW9CM0IsVUFBcEIsQ0FBUDtBQUNEO0FBQ0YsS0FsSWtCOztBQUVqQixRQUFROEIsSUFBUixHQUF1Qy9CLEtBQXZDLENBQVErQixJQUFSO0FBQUEsdUJBQXVDL0IsS0FBdkMsQ0FBY2dDLEtBQWQ7QUFBQSxRQUFjQSxLQUFkLDZCQUFzQixFQUF0QjtBQUFBLFFBQTBCSCxTQUExQixHQUF1QzdCLEtBQXZDLENBQTBCNkIsUUFBMUI7O0FBQ0EsUUFBUUksR0FBUixHQUFvRUQsS0FBcEUsQ0FBUUMsR0FBUjtBQUFBLDJCQUFvRUQsS0FBcEUsQ0FBYUUsU0FBYjtBQUFBLFFBQXdCQyxhQUF4QixpQ0FBd0MsRUFBeEM7QUFBQSxRQUE0Q0MsUUFBNUMsR0FBb0VKLEtBQXBFLENBQTRDSSxRQUE1QztBQUFBLFFBQXlEQyxNQUF6RCw0QkFBb0VMLEtBQXBFOztBQUNBLFFBQUksQ0FBQ0gsU0FBTCxFQUFlO0FBQ2IsVUFBSSxFQUFFRSxJQUFJLElBQUlFLEdBQVYsQ0FBSixFQUFvQjtBQUNsQixjQUFNLElBQUlLLEtBQUosQ0FBVSxnQkFBVixDQUFOO0FBQ0Q7O0FBQ0QsVUFBSUMsS0FBSyxpQ0FBVDs7QUFDQSxVQUFJQyxVQUFVO0FBQ1pDLFFBQUFBLEtBQUssRUFBRSxPQURLO0FBRVpDLFFBQUFBLFNBQVMsZ0NBRkc7QUFHWlIsUUFBQUEsU0FBUyxFQUFFO0FBQ1RTLFVBQUFBLFlBQVksRUFBRSxzQkFBVVgsS0FBVixFQUFpQlksT0FBakIsRUFBMEI7QUFDdENuRCxZQUFBQSxLQUFLLENBQUNvRCxRQUFOLENBQWVWLGFBQWEsQ0FBQ1EsWUFBN0IsRUFBMkNKLEtBQTNDLEVBQWtELENBQUNQLEtBQUQsRUFBUVksT0FBUixDQUFsRDtBQUNELFdBSFE7QUFJVEUsVUFBQUEsSUFBSSxFQUFFLGNBQVVmLElBQVYsRUFBZ0JnQixTQUFoQixFQUEyQmYsS0FBM0IsRUFBa0M7QUFDdENPLFlBQUFBLEtBQUssQ0FBQ1MsUUFBTixDQUFlO0FBQUUvQyxjQUFBQSxVQUFVLEVBQUU4QztBQUFkLGFBQWY7O0FBQ0F0RCxZQUFBQSxLQUFLLENBQUNvRCxRQUFOLENBQWVWLGFBQWEsQ0FBQ1csSUFBN0IsRUFBbUNQLEtBQW5DLEVBQTBDLENBQUNSLElBQUQsRUFBT2dCLFNBQVAsRUFBa0JmLEtBQWxCLENBQTFDO0FBQ0QsV0FQUTtBQVFUaUIsVUFBQUEsV0FBVyxFQUFFLHFCQUFVbEIsSUFBVixFQUFnQmdCLFNBQWhCLEVBQTJCZixLQUEzQixFQUFrQztBQUM3Q08sWUFBQUEsS0FBSyxDQUFDUyxRQUFOLENBQWU7QUFBRS9DLGNBQUFBLFVBQVUsRUFBRThDO0FBQWQsYUFBZjs7QUFDQXRELFlBQUFBLEtBQUssQ0FBQ29ELFFBQU4sQ0FBZVYsYUFBYSxDQUFDYyxXQUE3QixFQUEwQ1YsS0FBMUMsRUFBaUQsQ0FDL0NSLElBRCtDLEVBRS9DZ0IsU0FGK0MsRUFHL0NmLEtBSCtDLENBQWpEO0FBS0Q7QUFmUTtBQUhDLFNBb0JUSyxNQXBCUyxDQUFkOztBQXNCQSxVQUFJSixHQUFHLElBQUlGLElBQUksSUFBSSxJQUFuQixFQUF5QjtBQUN2QlMsUUFBQUEsVUFBVSxtQ0FDTDtBQUNEVSxVQUFBQSxRQUFRLEVBQUUsSUFEVDtBQUVEakIsVUFBQUEsR0FBRyxFQUFFQSxHQUZKLENBRVM7O0FBRlQsU0FESyxHQUtMTyxVQUxLLENBQVY7QUFPRDs7QUFDRCxhQUFLUixLQUFMLEdBQWEsSUFBSXhDLEtBQUosQ0FBVWdELFVBQVYsQ0FBYjtBQUNEOztBQXpDZ0I7QUEwQ2xCOzs7O1dBQ0QsNkJBQW9CO0FBQ2xCLFVBQUksS0FBS3hDLEtBQUwsQ0FBVytCLElBQWYsRUFBcUI7QUFDbkIsYUFBS2lCLFFBQUwsQ0FBYztBQUNaL0MsVUFBQUEsVUFBVSxFQUFFLEtBQUtELEtBQUwsQ0FBVytCO0FBRFgsU0FBZDtBQUdEO0FBQ0Y7OztXQW1GRCxrQkFBUztBQUNQLFVBQU1vQixTQUFTLEdBQUd4RCxJQUFJLENBQUMsS0FBS0ssS0FBTixFQUFhLENBQ2pDLE1BRGlDLEVBRWpDLE9BRmlDLEVBR2pDLFlBSGlDLEVBSWpDLFVBSmlDLEVBS2pDLFVBTGlDLEVBTWpDLFNBTmlDLENBQWIsQ0FBdEI7QUFRQSwwQkFBTywyQkFBVW1ELFNBQVYsRUFBc0IsS0FBS0MsY0FBTCxFQUF0QixDQUFQO0FBQ0Q7OztXQWpLRDtBQU9BLHNDQUFnQ0MsU0FBaEMsRUFBMkNDLFNBQTNDLEVBQTJEO0FBQ3pELFVBQVFyRCxVQUFSLEdBQXVCcUQsU0FBdkIsQ0FBUXJELFVBQVI7QUFDQSxVQUFROEIsSUFBUixHQUFpQnNCLFNBQWpCLENBQVF0QixJQUFSOztBQUNBLFVBQUlBLElBQUosRUFBVTtBQUNSLFlBQUl3QixJQUFJLENBQUNDLFNBQUwsQ0FBZXZELFVBQWYsTUFBK0JzRCxJQUFJLENBQUNDLFNBQUwsQ0FBZXpCLElBQWYsQ0FBbkMsRUFBeUQ7QUFDdkQsaUJBQU87QUFDTDlCLFlBQUFBLFVBQVUsRUFBRThCO0FBRFAsV0FBUDtBQUdEO0FBQ0Y7O0FBQ0QsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUFyQmtDeEMsYTs7Z0JBQWhCUSxPLGFBQ0ZILE87O2dCQURFRyxPLFVBRUxGLEk7O1NBRktFLE8iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMTYgMDk6NDM6MjhcclxuICogQExhc3RFZGl0b3JzOiBQbGVhc2Ugc2V0IExhc3RFZGl0b3JzXHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjItMDItMjYgMTU6MTM6MjJcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5pbXBvcnQgeyBNZW51LCBNZW51UHJvcHMsIFN1Yk1lbnVQcm9wcywgVG9vbHRpcCB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgeyBnZXRJY29uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcblxyXG5pbnRlcmZhY2UgSU1lbnVQcm9wcyBleHRlbmRzIE1lbnVQcm9wcyB7XHJcbiAgZGF0YT86IEFycmF5PG9iamVjdD47XHJcbiAgdGl0bGVGaWVsZD86IHN0cmluZztcclxuICBrZXlGaWVsZD86IHN0cmluZztcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgc2hvd0ljb24/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekumljb24gLOm7mOiupHRydWVcclxuICBzdWJNZW51UHJvcHM/OiBTdWJNZW51UHJvcHM7XHJcbiAgdG9vbHRpcD86IGJvb2xlYW47XHJcbn1cclxuY29uc3QgeyBTdWJNZW51LCBJdGVtLCBJdGVtR3JvdXAgfSA9IE1lbnU7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NNZW51IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJTWVudVByb3BzPiB7XHJcbiAgc3RhdGljIFN1Yk1lbnUgPSBTdWJNZW51O1xyXG4gIHN0YXRpYyBJdGVtID0gSXRlbTtcclxuICAvLyBzdGF0aWMgSXRlbUdyb3VwID0gSXRlbUdyb3VwO1xyXG5cclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gIH07XHJcblxyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKG5leHRQcm9wcywgcHJldlN0YXRlOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gcHJldlN0YXRlO1xyXG4gICAgY29uc3QgeyBkYXRhIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KGRhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGFTb3VyY2U6IGRhdGEsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7IGRhdGEsIHN0b3JlID0ge30sIGNoaWxkcmVuIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHsgdXJsLCBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSwgdmlld25hbWUsIC4uLnN0b3JlcyB9ID0gc3RvcmU7XHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdXJsKSkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOOAgWRhdGHkuI3og73pg73kuLrnqbrvvIFcIik7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgICAgbGV0IHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgbW9kZWw6IFwibW9kZWxcIixcclxuICAgICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgICAgbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgICBvbkJlZm9yZUxvYWQ6IGZ1bmN0aW9uIChzdG9yZSwgb3B0aW9ucykge1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLm9uQmVmb3JlTG9hZCwgX3RoaXMsIFtzdG9yZSwgb3B0aW9uc10pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxvYWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbW9kZWxEYXRhIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICBpZiAodXJsICYmIGRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCwgLy/or7vlrZflhbjvvIx1cmzlm7rlrprvvIx2aWV3bmFtZVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGlmICh0aGlzLnByb3BzLmRhdGEpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5wcm9wcy5kYXRhLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgcmVuZGVyTWVudUl0ZW0gPSAobWVudXNEYXRhKSA9PiB7XHJcbiAgICBpZiAoIW1lbnVzRGF0YSB8fCAhQXJyYXkuaXNBcnJheShtZW51c0RhdGEpKSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICAgIGNvbnN0IHtcclxuICAgICAgdGl0bGVGaWVsZCA9IFwidGl0bGVcIixcclxuICAgICAga2V5RmllbGQgPSBcImtleVwiLFxyXG4gICAgICBzaG93SWNvbiA9IHRydWUsXHJcbiAgICAgIHN1Yk1lbnVQcm9wcyA9IHt9LFxyXG4gICAgICB0b29sdGlwID0gZmFsc2UsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIHJldHVybiBtZW51c0RhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgc3R5bGUsIGljb24sIGRpc2FibGVkIH0gPSBpdGVtO1xyXG5cclxuICAgICAgY29uc3QgdGl0bGUgPSBpdGVtW3RpdGxlRmllbGRdO1xyXG4gICAgICBjb25zdCBzcGFudGl0bGUgPSA8c3BhbiBzdHlsZT17c3R5bGV9Pnt0aXRsZX08L3NwYW4+O1xyXG4gICAgICBjb25zdCB0b29sdGlwdGl0bGUgPSA8VG9vbHRpcCB0aXRsZT17dGl0bGV9Pnt0aXRsZX08L1Rvb2x0aXA+O1xyXG4gICAgICBjb25zdCBuZXd0aXRsZSA9IHRvb2x0aXA/dG9vbHRpcHRpdGxlOnNwYW50aXRsZVxyXG4gICAgICBpZiAoaXRlbVtcImNoaWxkTm9kZXNcIl0gfHwgaXRlbVtcImNoaWxkcmVuXCJdKSB7XHJcbiAgICAgICAgbGV0IG1lbnVHcm91cERhdGEgPSB7fSxcclxuICAgICAgICAgIG1lbnVEYXRhID0gW107XHJcbiAgICAgICAgbGV0IGNoaWxkRGF0YSA9IGl0ZW1bXCJjaGlsZE5vZGVzXCJdIHx8IGl0ZW1bXCJjaGlsZHJlblwiXTtcclxuICAgICAgICBjaGlsZERhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBsZXQgZ3J1b3B0aXRsZSA9IGl0ZW0uZ3JvdXBOYW1lO1xyXG4gICAgICAgICAgaWYgKGdydW9wdGl0bGUpIHtcclxuICAgICAgICAgICAgaWYgKCFtZW51R3JvdXBEYXRhW2dydW9wdGl0bGVdKSBtZW51R3JvdXBEYXRhW2dydW9wdGl0bGVdID0gW107XHJcbiAgICAgICAgICAgIG1lbnVHcm91cERhdGFbZ3J1b3B0aXRsZV0ucHVzaChpdGVtKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lbnVEYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxTdWJNZW51XHJcbiAgICAgICAgICAgIGtleT17aXRlbVtrZXlGaWVsZF19XHJcbiAgICAgICAgICAgIHRpdGxlPXtcclxuICAgICAgICAgICAgICBzaG93SWNvbiAmJiBpY29uID8gKFxyXG4gICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHtnZXRJY29uKGljb24pfVxyXG4gICAgICAgICAgICAgICAgICB7bmV3dGl0bGV9XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICAgIG5ld3RpdGxlXHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHsuLi5zdWJNZW51UHJvcHN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyhtZW51R3JvdXBEYXRhKS5tYXAoKGtleSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICA8SXRlbUdyb3VwIGtleT17a2V5fSB0aXRsZT17a2V5fT5cclxuICAgICAgICAgICAgICAgICAge3RoaXMucmVuZGVyTWVudUl0ZW0obWVudUdyb3VwRGF0YVtrZXldKX1cclxuICAgICAgICAgICAgICAgIDwvSXRlbUdyb3VwPlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJNZW51SXRlbShtZW51RGF0YSl9XHJcbiAgICAgICAgICA8L1N1Yk1lbnU+XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPE1lbnUuSXRlbSBrZXk9e2l0ZW1ba2V5RmllbGRdfSBkaXNhYmxlZD17ZGlzYWJsZWR9PlxyXG4gICAgICAgICAgICB7c2hvd0ljb24gJiYgaWNvbiA/IChcclxuICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgIHtnZXRJY29uKGljb24pfVxyXG4gICAgICAgICAgICAgICAge25ld3RpdGxlfVxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICBuZXd0aXRsZVxyXG4gICAgICAgICAgICApfVxyXG4gICAgICAgICAgPC9NZW51Lkl0ZW0+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfTtcclxuICByZW5kZXJDaGlsZHJlbiA9ICgpID0+IHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgcmV0dXJuIDw+e2NoaWxkcmVufTwvPjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlck1lbnVJdGVtKGRhdGFTb3VyY2UpO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IG1lbnVQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICBcImRhdGFcIixcclxuICAgICAgXCJzdG9yZVwiLFxyXG4gICAgICBcInRpdGxlRmllbGRcIixcclxuICAgICAgXCJrZXlGaWVsZFwiLFxyXG4gICAgICBcInNob3dJY29uXCIsXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgXSk7XHJcbiAgICByZXR1cm4gPE1lbnUgey4uLm1lbnVQcm9wc30+e3RoaXMucmVuZGVyQ2hpbGRyZW4oKX08L01lbnU+O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -16,7 +16,7 @@ export interface NscTreeProps extends ITreePanelProps {
16
16
  nodeProps?: TreeNodeProps;
17
17
  }
18
18
  declare class NscTree extends TreePanel<NscTreeProps & TreeCommonProps> {
19
- nscTreeRef: React.RefObject<RcTree & TreeProps>;
19
+ nscTreeRef: React.RefObject<RcTree<DataNode> & TreeProps<DataNode>>;
20
20
  constructor(props: any);
21
21
  static defaultProps: {
22
22
  store: {};
package/lib/tree/index.js CHANGED
@@ -92,7 +92,6 @@ var NscTree = /*#__PURE__*/function (_TreePanel) {
92
92
  restNodeProps = _objectWithoutProperties(nodeProps, _excluded);
93
93
 
94
94
  var nodes = data.map(function (item) {
95
- console.log("item", item);
96
95
  var props = {
97
96
  dataref: item
98
97
  };
@@ -110,26 +109,31 @@ var NscTree = /*#__PURE__*/function (_TreePanel) {
110
109
  props = utils.callback(renderFn, _assertThisInitialized(_this2), [props, item]);
111
110
  }
112
111
 
113
- if (item.childNodes) {
114
- return /*#__PURE__*/React.createElement(TreeNode, _extends({}, props, {
115
- key: item.attribute.key
116
- }), _this2.renderTreeNodes(item.childNodes, renderFn));
117
- }
118
-
119
112
  var titleNode = null;
120
113
 
121
- if (item.attribute.subtitle) {
122
- titleNode = /*#__PURE__*/React.createElement("span", {
123
- title: item.title + "" + item.attribute.subtitle + ")"
124
- }, /*#__PURE__*/React.createElement("span", null, item.title), /*#__PURE__*/React.createElement("span", {
125
- style: {
126
- color: "rgba(0,0,0,.45)"
127
- }
128
- }, "\uFF08".concat(item.attribute.subtitle, "\uFF09")));
114
+ if (typeof item.title == "string") {
115
+ if (item.attribute.subtitle) {
116
+ titleNode = /*#__PURE__*/React.createElement("span", {
117
+ title: item.title + "" + item.attribute.subtitle + ""
118
+ }, /*#__PURE__*/React.createElement("span", null, item.title), /*#__PURE__*/React.createElement("span", {
119
+ style: {
120
+ color: "rgba(0,0,0,.45)"
121
+ }
122
+ }, "\uFF08".concat(item.attribute.subtitle, "\uFF09")));
123
+ } else {
124
+ titleNode = /*#__PURE__*/React.createElement("span", {
125
+ title: item.title
126
+ }, item.title);
127
+ }
129
128
  } else {
130
- titleNode = /*#__PURE__*/React.createElement("span", {
131
- title: item.title
132
- }, item.title);
129
+ titleNode = item.title;
130
+ }
131
+
132
+ if (item.childNodes) {
133
+ return /*#__PURE__*/React.createElement(TreeNode, _extends({}, props, {
134
+ key: item.attribute.key,
135
+ title: titleNode
136
+ }), _this2.renderTreeNodes(item.childNodes, renderFn));
133
137
  }
134
138
 
135
139
  return /*#__PURE__*/React.createElement(TreeNode, _extends({}, props, {
@@ -308,4 +312,4 @@ _defineProperty(NscTree, "defaultProps", {
308
312
  });
309
313
 
310
314
  export default NscTree;
311
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3RyZWUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiVHJlZVBhbmVsIiwidXRpbHMiLCJTdG9yZSIsIlN0b3JlQ29uZmlnVHlwZSIsIlRyZWVTZWFyY2giLCJzdHlsZXMiLCJUcmVlTm9kZSIsIk5zY1RyZWUiLCJwcm9wcyIsImNyZWF0ZVJlZiIsIm5vZGUiLCJoYW5kbGVBZGQiLCJoYW5kbGVFZGl0IiwiaGFuZGxlRGVsZXRlIiwidHJlZU5vZGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsIl90aGlzIiwiZGF0YXJlZiIsInN0b3JlIiwibGF6eUxvYWQiLCJmb3JjZVVwZGF0ZSIsImRhdGEiLCJyZW5kZXJGbiIsIm5vZGVQcm9wcyIsIm5vZGVLZXkiLCJrZXkiLCJyZXN0Tm9kZVByb3BzIiwibm9kZXMiLCJtYXAiLCJpdGVtIiwiY29uc29sZSIsImxvZyIsImNvbmZpZyIsImZpZWxkcyIsImZvckVhY2giLCJmaWVsZCIsIm5hbWUiLCJPYmplY3QiLCJhc3NpZ24iLCJjYWxsYmFjayIsImNoaWxkTm9kZXMiLCJhdHRyaWJ1dGUiLCJyZW5kZXJUcmVlTm9kZXMiLCJ0aXRsZU5vZGUiLCJzdWJ0aXRsZSIsInRpdGxlIiwiY29sb3IiLCJyZW5kZXJUZW1wbGF0ZSIsImJpbmQiLCJtb2RlbERhdGEiLCJjaGVja2VkS2V5cyIsImNoZWNrZWQiLCJoYWxmQ2hlY2tlZCIsImZvckVhY2hUcmVlIiwicHVzaCIsIm5zY1RyZWVSZWYiLCJjdXJyZW50Iiwic3RhdGUiLCJrZXlFbnRpdGllcyIsImhhbGZDaGVja2VkS2V5cyIsImNvbmNhdCIsImNoZWNrZWRLZXlzQWxsIiwidHJlZVByb3BzIiwibmV3TWVudURhdGFzIiwidHJlZURhdGEiLCJvcGVuS2V5cyIsImNoZWNrUHJvcGFnYXRpb24iLCJjaGVja1N0cmljdGx5Iiwic2hvd0ljb24iLCJsYXp5bG9hZCIsImxvYWREYXRhIiwiX29uTG9hZERhdGEiLCJvbkNoZWNrRm4iLCJvbkNoZWNrIiwiZSIsInNldFN0YXRlIiwib25TZWxlY3RGbiIsIm9uU2VsZWN0Iiwic2VsZWN0ZWRLZXlzIiwibm9kZUluZm8iLCJzZWxlY3ROb2RlIiwic2VsZWN0ZWQiLCJzZWxlY3RlZE5vZGVzIiwiZXhwYW5kZWRLZXlzIiwibG9hZGluZyIsImVkaXRhYmxlIiwic2VhcmNoYWJsZSIsImhhbmRsZUFkZE1vZHVsZSIsImhhbmRsZUVkaXRNb2R1bGUiLCJoYW5kbGVEZWxldGVNb2R1bGUiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJyZW5kZXJUcmVlTm9kZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsTUFBa0IsT0FBbEI7QUFFQSxPQUFPQyxTQUFQLE1BR08scUJBSFA7QUFJQSxTQUFTQyxLQUFULFFBQXNCLHVCQUF0QjtBQUdBLFNBQVNDLEtBQVQsRUFBZ0JDLGVBQWhCLFFBQXVDLGFBQXZDO0FBQ0EsT0FBT0MsVUFBUCxNQUF1QixjQUF2QjtBQUVBLE9BQU9DLE1BQVAsTUFBbUIsY0FBbkI7QUFDQSxJQUFRQyxRQUFSLFNBQVFBLFFBQVIsQyxDQUNBOztJQVVNQyxPOzs7OztBQUdKLG1CQUFZQyxNQUFaLEVBQW1CO0FBQUE7O0FBQUE7O0FBQ2pCLCtCQUFNQSxNQUFOOztBQURpQiwrRUFGTlQsS0FBSyxDQUFDVSxTQUFOLEVBRU07O0FBQUEsdUVBMEVELFVBQUNDLElBQUQsRUFBVTtBQUMxQixVQUFNQyxTQUFTLEdBQUcsT0FBS0gsS0FBTCxDQUFXRyxTQUE3QjtBQUNBQSxNQUFBQSxTQUFTLElBQUlBLFNBQVMsQ0FBQ0QsSUFBRCxDQUF0QjtBQUNELEtBN0VrQjs7QUFBQSx3RUErRUEsVUFBQ0EsSUFBRCxFQUFVO0FBQzNCLFVBQU1FLFVBQVUsR0FBRyxPQUFLSixLQUFMLENBQVdJLFVBQTlCO0FBQ0FBLE1BQUFBLFVBQVUsSUFBSUEsVUFBVSxDQUFDRixJQUFELENBQXhCO0FBQ0QsS0FsRmtCOztBQUFBLDBF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QWIsR0FBc0IsQ0FBckQsaUJBQ0M7QUFBTSxRQUFBLEdBQUcsRUFBRSxLQUFLckMsVUFBaEI7QUFBNEIsUUFBQSxTQUFTO0FBQXJDLFNBQTBDaEQsS0FBMUMsR0FDRyxLQUFLbUMsZUFBTCxDQUFxQnFCLFlBQXJCLEVBQW1DeEQsS0FBSyxDQUFDc0YsY0FBekMsQ0FESCxDQVZKLENBREYsQ0FERjtBQW1CRDs7OztFQTFKbUI5RixTOztnQkFBaEJPLE8sa0JBUWlDO0FBQUVZLEVBQUFBLEtBQUssRUFBRTtBQUFULEM7O0FBa012QyxlQUFlWixPQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBUcmVlLCBUcmVlUHJvcHMsIFNwaW4sIFRyZWVOb2RlUHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgVHJlZVBhbmVsLCB7XHJcbiAgSVRyZWVQYW5lbFByb3BzLFxyXG4gIFRyZWVDb21tb25Qcm9wcyxcclxufSBmcm9tIFwiLi4vY29tbW9uL1RyZWVQYW5lbFwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IFJjVHJlZSBmcm9tIFwicmMtdHJlZVwiO1xyXG5pbXBvcnQgeyBEYXRhTm9kZSwgRXZlbnREYXRhTm9kZSB9IGZyb20gXCJyYy10cmVlL2xpYi9pbnRlcmZhY2VcIjtcclxuZXhwb3J0IHsgU3RvcmUsIFN0b3JlQ29uZmlnVHlwZSB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgVHJlZVNlYXJjaCBmcm9tIFwiLi9UcmVlU2VhcmNoXCI7XHJcbmltcG9ydCBnZXRDb25maWcgZnJvbSBcIi4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lmxlc3NcIjtcclxuY29uc3QgeyBUcmVlTm9kZSB9ID0gVHJlZTtcclxuLy8gaW1wb3J0IFRyZWVOb2RlIGZyb20gXCIuL05zY1RyZWVOb2RlXCI7XHJcbnR5cGUgTnNjRGF0YU5vZGVQcm9wcyA9IERhdGFOb2RlICYgeyBwcm9wczogeyBkYXRhcmVmOiBhbnkgfSB9O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBOc2NUcmVlUHJvcHMgZXh0ZW5kcyBJVHJlZVBhbmVsUHJvcHMge1xyXG4gIGVkaXRhYmxlPzogYm9vbGVhbjtcclxuICB0cmVlRGF0YT86IGFueVtdO1xyXG4gIHNlYXJjaGFibGU/OiBib29sZWFuO1xyXG4gIG5vZGVQcm9wcz86IFRyZWVOb2RlUHJvcHM7XHJcbn1cclxuXHJcbmNsYXNzIE5zY1RyZWUgZXh0ZW5kcyBUcmVlUGFuZWw8TnNjVHJlZVByb3BzICYgVHJlZUNvbW1vblByb3BzPiB7XHJcbiAgbnNjVHJlZVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxSY1RyZWUgJiBUcmVlUHJvcHM+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICB0aGlzLnJlbmRlclRlbXBsYXRlID0gdGhpcy5yZW5kZXJUZW1wbGF0ZS5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGRlZmF1bHRQcm9wczogeyBzdG9yZToge30gfSA9IHsgc3RvcmU6IHt9IH07XHJcblxyXG4gIF9kYXRhVG9DaGVja2VkS2V5cyhtb2RlbERhdGEpOiBhbnkge1xyXG4gICAgbGV0IGNoZWNrZWRLZXlzID0geyBjaGVja2VkOiBbXSwgaGFsZkNoZWNrZWQ6IFtdIH07XHJcbiAgICB1dGlscy5mb3JFYWNoVHJlZShtb2RlbERhdGEsIGZ1bmN0aW9uIChub2RlKSB7XHJcbiAgICAgIGlmIChub2RlLmNoZWNrZWQgPT0gdHJ1ZSkge1xyXG4gICAgICAgIGNoZWNrZWRLZXlzLmNoZWNrZWQucHVzaChub2RlLmF0dHJpYnV0ZS5rZXkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjaGVja2VkS2V5cztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOagkeaQnOe0olxyXG4gICAqL1xyXG4gIC8vIGhhbmRsZVNlYXJjaCA9ICh2YWx1ZSkgPT4ge1xyXG4gIC8vICAgdGhpcy5zZXRTdGF0ZSh7IHNlYXJjaFRleHQ6IHZhbHVlIH0pO1xyXG4gIC8vIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIOiOt+WPlumAieS4reiKgueCuUlE5pWw57uEXHJcbiAgICogQHJldHVybiBTdHJpbmdbXVxyXG4gICAqL1xyXG4gIGdldENoZWNrZWRLZXlzKCkge1xyXG4gICAgY29uc3QgeyBjaGVja2VkS2V5cyB9ID0gdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQ7XHJcbiAgICByZXR1cm4gY2hlY2tlZEtleXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDojrflj5bpgInkuK3oioLngrnlr7nosaHmlbDnu4RcclxuICAgKiBAcmV0dXJuIG5vZGVbXVxyXG4gICAqL1xyXG4gIGdldENoZWNrZWROb2RlcygpIHtcclxuICAgIGNvbnN0IHsgY2hlY2tlZEtleXMsIGtleUVudGl0aWVzIH0gPSB0aGlzLm5zY1RyZWVSZWYuY3VycmVudC5zdGF0ZTtcclxuICAgIGxldCBub2RlcyA9IFtdIGFzIE5zY0RhdGFOb2RlUHJvcHNbXTtcclxuICAgIGNoZWNrZWRLZXlzLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgIC8vIG5vZGVzLnB1c2goa2V5RW50aXRpZXNba2V5XS5ub2RlLnByb3BzLmRhdGFyZWYpO1xyXG4gICAgICBjb25zdCBub2RlID0ga2V5RW50aXRpZXNba2V5XS5ub2RlIGFzIE5zY0RhdGFOb2RlUHJvcHM7XHJcbiAgICAgIG5vZGVzLnB1c2gobm9kZS5wcm9wcy5kYXRhcmVmKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG5vZGVzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICog6I635Y+W5YWo6YOo6YCJ5Lit6IqC54K5SUTvvIzljIXlkKvljYrpgInkuK3oioLngrlJRFxyXG4gICAqIEByZXR1cm4gU3RyaW5nW11cclxuICAgKi9cclxuICBnZXRDaGVja2VkQWxsS2V5cygpIHtcclxuICAgIGNvbnN0IHsgY2hlY2tlZEtleXMsIGhhbGZDaGVja2VkS2V5cyB9ID0gdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQuc3RhdGU7XHJcbiAgICByZXR1cm4gY2hlY2tlZEtleXMuY29uY2F0KGhhbGZDaGVja2VkS2V5cyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDojrflj5blhajpg6jpgInkuK3oioLngrlOb2Rl5a+56LGh77yM5YyF5ZCr5Y2K6YCJ5Lit6IqC54K5Tm9kZeWvueixoVxyXG4gICAqIEByZXR1cm4gbm9kZVtdXHJcbiAgICovXHJcbiAgZ2V0Q2hlY2tlZEFsbE5vZGVzKCkge1xyXG4gICAgY29uc3QgeyBjaGVja2VkS2V5cywgaGFsZkNoZWNrZWRLZXlzLCBrZXlFbnRpdGllcyB9ID1cclxuICAgICAgdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQuc3RhdGU7XHJcbiAgICBsZXQgY2hlY2tlZEtleXNBbGwgPSBjaGVja2VkS2V5cy5jb25jYXQoaGFsZkNoZWNrZWRLZXlzKTtcclxuICAgIGxldCBub2RlcyA9IFtdO1xyXG4gICAgY2hlY2tlZEtleXNBbGwubWFwKChrZXkpID0+IHtcclxuICAgICAgY29uc3Qgbm9kZSA9IGtleUVudGl0aWVzW2tleV0ubm9kZSBhcyBOc2NEYXRhTm9kZVByb3BzO1xyXG4gICAgICBub2Rlcy5wdXNoKG5vZGUucHJvcHMuZGF0YXJlZik7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBub2RlcztcclxuICB9XHJcblxyXG4gIC8vIOa3u+WKoOaooeWdl1xyXG4gIGhhbmRsZUFkZE1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVBZGQgPSB0aGlzLnByb3BzLmhhbmRsZUFkZDtcclxuICAgIGhhbmRsZUFkZCAmJiBoYW5kbGVBZGQobm9kZSk7XHJcbiAgfTtcclxuXHJcbiAgaGFuZGxlRWRpdE1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVFZGl0ID0gdGhpcy5wcm9wcy5oYW5kbGVFZGl0O1xyXG4gICAgaGFuZGxlRWRpdCAmJiBoYW5kbGVFZGl0KG5vZGUpO1xyXG4gIH07XHJcblxyXG4gIGhhbmRsZURlbGV0ZU1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVEZWxldGUgPSB0aGlzLnByb3BzLmhhbmRsZURlbGV0ZTtcclxuICAgIGhhbmRsZURlbGV0ZSAmJiBoYW5kbGVEZWxldGUobm9kZSk7XHJcbiAgfTtcclxuXHJcbiAgX29uTG9hZERhdGEgPSAodHJlZU5vZGU6IEV2ZW50RGF0YU5vZGUgJiB7IHByb3BzOiB7IGRhdGFyZWYgfSB9KSA9PlxyXG4gICAgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcclxuICAgICAgY29uc3QgX3RoaXMgPSB0aGlzLFxyXG4gICAgICAgIG5vZGUgPSB0cmVlTm9kZS5wcm9wcy5kYXRhcmVmO1xyXG4gICAgICB0aGlzLnN0b3JlLmxhenlMb2FkKG5vZGUsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICByZXNvbHZlKG5vZGUpO1xyXG4gICAgICAgIF90aGlzLmZvcmNlVXBkYXRlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gIHJlbmRlclRlbXBsYXRlKHRyZWVQcm9wcyA9IHt9IGFzIElUcmVlUGFuZWxQcm9wcywgbmV3TWVudURhdGFzID0gW10pIHtcclxuICAgIGNvbnN0IHsgdHJlZURhdGEsIG9wZW5LZXlzLCAuLi5wcm9wcyB9ID0gdHJlZVByb3BzO1xyXG4gICAgY29uc3QgX3RoaXMgPSB0aGlzO1xyXG4gICAgaWYgKHByb3BzLmNoZWNrUHJvcGFnYXRpb24pIHtcclxuICAgICAgcHJvcHMuY2hlY2tTdHJpY3RseSA9IHRydWU7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuc2hvd0ljb24gPT0gbnVsbCkge1xyXG4gICAgICBwcm9wcy5zaG93SWNvbiA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHsgbGF6eWxvYWQgfSA9IHRoaXMuc3RvcmUuY29uZmlnO1xyXG4gICAgaWYgKGxhenlsb2FkKSB7XHJcbiAgICAgIHByb3BzLmxvYWREYXRhID0gdGhpcy5fb25Mb2FkRGF0YTtcclxuICAgIH1cclxuICAgIGNvbnN0IG9uQ2hlY2tGbiA9IHByb3BzLm9uQ2hlY2s7XHJcbiAgICBwcm9wcy5vbkNoZWNrID0gZnVuY3Rpb24gKGNoZWNrZWRLZXlzLCBlKSB7XHJcbiAgICAgIF90aGlzLnNldFN0YXRlKHsgY2hlY2tlZEtleXM6IGNoZWNrZWRLZXlzIH0pO1xyXG4gICAgICB1dGlscy5jYWxsYmFjayhvbkNoZWNrRm4sIF90aGlzLCBbY2hlY2tlZEtleXMsIGVdKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBvblNlbGVjdEZuID0gcHJvcHMub25TZWxlY3Q7XHJcbiAgICBwcm9wcy5vblNlbGVjdCA9IChzZWxlY3RlZEtleXMsIG5vZGVJbmZvKSA9PiB7XHJcbiAgICAgIHV0aWxzLmNhbGxiYWNrKG9uU2VsZWN0Rm4sIF90aGlzLCBbc2VsZWN0ZWRLZXlzLCBub2RlSW5mb10pO1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBzZWxlY3ROb2RlOiBub2RlSW5mby5zZWxlY3RlZCA/IG5vZGVJbmZvLnNlbGVjdGVkTm9kZXNbMF0gOiBudWxsLFxyXG4gICAgICAgIHNlbGVjdGVkS2V5cyxcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChvcGVuS2V5cykge1xyXG4gICAgICBwcm9wcy5leHBhbmRlZEtleXMgPSBvcGVuS2V5cztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRlbGV0ZSBwcm9wcy5leHBhbmRlZEtleXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8U3BpbiBzcGlubmluZz17dGhpcy5zdGF0ZS5sb2FkaW5nfT5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzW1wibnNjLXRyZWUtYm94XCJdfT5cclxuICAgICAgICAgIHsoX3RoaXMucHJvcHMuZWRpdGFibGUgfHwgX3RoaXMucHJvcHMuc2VhcmNoYWJsZSkgJiYgKFxyXG4gICAgICAgICAgICA8VHJlZVNlYXJjaFxyXG4gICAgICAgICAgICAgIHRyZWVJbnN0YW5jZT17dGhpc31cclxuICAgICAgICAgICAgICBoYW5kbGVBZGRNb2R1bGU9e3RoaXMuaGFuZGxlQWRkTW9kdWxlfVxyXG4gICAgICAgICAgICAgIGhhbmRsZUVkaXRNb2R1bGU9e3RoaXMuaGFuZGxlRWRpdE1vZHVsZX1cclxuICAgICAgICAgICAgICBoYW5kbGVEZWxldGVNb2R1bGU9e3RoaXMuaGFuZGxlRGVsZXRlTW9kdWxlfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtBcnJheS5pc0FycmF5KG5ld01lbnVEYXRhcykgJiYgbmV3TWVudURhdGFzLmxlbmd0aCA+IDAgJiYgKFxyXG4gICAgICAgICAgICA8VHJlZSByZWY9e3RoaXMubnNjVHJlZVJlZn0gY2hlY2thYmxlIHsuLi5wcm9wc30+XHJcbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyVHJlZU5vZGVzKG5ld01lbnVEYXRhcywgcHJvcHMucmVuZGVyVHJlZU5vZGUpfVxyXG4gICAgICAgICAgICA8L1RyZWU+XHJcbiAgICAgICAgICApfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L1NwaW4+XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVuZGVyVHJlZU5vZGVzID0gKGRhdGEsIHJlbmRlckZuKSA9PiB7XHJcbiAgICBjb25zdCBub2RlUHJvcHMgPSB0aGlzLnByb3BzLm5vZGVQcm9wcyB8fCB7fTtcclxuICAgIGNvbnN0IHsga2V5OiBub2RlS2V5LCAuLi5yZXN0Tm9kZVByb3BzIH0gPSBub2RlUHJvcHM7XHJcbiAgICBjb25zdCBub2RlcyA9IGRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaXRlbVwiLCBpdGVtKTtcclxuICAgICAgbGV0IHByb3BzID0geyBkYXRhcmVmOiBpdGVtIH0gYXMgVHJlZU5vZGVQcm9wcztcclxuICAgICAgaXRlbS5jb25maWcuZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGZpZWxkLm5hbWUgPT09IFwia2V5XCIgJiYgbm9kZUtleSkge1xyXG4gICAgICAgICAgcHJvcHMua2V5ID0gaXRlbVtub2RlS2V5XTtcclxuICAgICAgICAgIGl0ZW0ua2V5ID0gaXRlbVtub2RlS2V5XTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcHJvcHNbZmllbGQubmFtZV0gPSBpdGVtW2ZpZWxkLm5hbWVdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24ocHJvcHMsIHJlc3ROb2RlUHJvcHMpO1xyXG4gICAgICBpZiAocmVuZGVyRm4pIHtcclxuICAgICAgICBwcm9wcyA9IHV0aWxzLmNhbGxiYWNrKHJlbmRlckZuLCB0aGlzLCBbcHJvcHMsIGl0ZW1dKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGl0ZW0uY2hpbGROb2Rlcykge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8VHJlZU5vZGUgey4uLnByb3BzfSBrZXk9e2l0ZW0uYXR0cmlidXRlLmtleX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlclRyZWVOb2RlcyhpdGVtLmNoaWxkTm9kZXMsIHJlbmRlckZuKX1cclxuICAgICAgICAgIDwvVHJlZU5vZGU+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgdGl0bGVOb2RlID0gbnVsbDtcclxuICAgICAgaWYgKGl0ZW0uYXR0cmlidXRlLnN1YnRpdGxlKSB7XHJcbiAgICAgICAgdGl0bGVOb2RlID0gKFxyXG4gICAgICAgICAgPHNwYW4gdGl0bGU9e2l0ZW0udGl0bGUgKyBcIu+8iFwiICsgaXRlbS5hdHRyaWJ1dGUuc3VidGl0bGUgKyBcIu+8iVwifT5cclxuICAgICAgICAgICAgPHNwYW4+e2l0ZW0udGl0bGV9PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IGNvbG9yOiBcInJnYmEoMCwwLDAsLjQ1KVwiIH19XHJcbiAgICAgICAgICAgID57YO+8iCR7aXRlbS5hdHRyaWJ1dGUuc3VidGl0bGV977yJYH08L3NwYW4+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aXRsZU5vZGUgPSA8c3BhbiB0aXRsZT17aXRlbS50aXRsZX0+e2l0ZW0udGl0bGV9PC9zcGFuPjtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gPFRyZWVOb2RlIHsuLi5wcm9wc30ga2V5PXtpdGVtLmF0dHJpYnV0ZS5rZXl9IHRpdGxlPXt0aXRsZU5vZGV9IC8+O1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5vZGVzO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IE5zY1RyZWU7XHJcbiJdfQ==
315
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3RyZWUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiVHJlZVBhbmVsIiwidXRpbHMiLCJTdG9yZSIsIlN0b3JlQ29uZmlnVHlwZSIsIlRyZWVTZWFyY2giLCJzdHlsZXMiLCJUcmVlTm9kZSIsIk5zY1RyZWUiLCJwcm9wcyIsImNyZWF0ZVJlZiIsIm5vZGUiLCJoYW5kbGVBZGQiLCJoYW5kbGVFZGl0IiwiaGFuZGxlRGVsZXRlIiwidHJlZU5vZGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsIl90aGlzIiwiZGF0YXJlZiIsInN0b3JlIiwibGF6eUxvYWQiLCJmb3JjZVVwZGF0ZSIsImRhdGEiLCJyZW5kZXJGbiIsIm5vZGVQcm9wcyIsIm5vZGVLZXkiLCJrZXkiLCJyZXN0Tm9kZVByb3BzIiwibm9kZXMiLCJtYXAiLCJpdGVtIiwiY29uZmlnIiwiZmllbGRzIiwiZm9yRWFjaCIsImZpZWxkIiwibmFtZSIsIk9iamVjdCIsImFzc2lnbiIsImNhbGxiYWNrIiwidGl0bGVOb2RlIiwidGl0bGUiLCJhdHRyaWJ1dGUiLCJzdWJ0aXRsZSIsImNvbG9yIiwiY2hpbGROb2RlcyIsInJlbmRlclRyZWVOb2RlcyIsInJlbmRlclRlbXBsYXRlIiwiYmluZCIsIm1vZGVsRGF0YSIsImNoZWNrZWRLZXlzIiwiY2hlY2tlZCIsImhhbGZDaGVja2VkIiwiZm9yRWFjaFRyZWUiLCJwdXNoIiwibnNjVHJlZVJlZiIsImN1cnJlbnQiLCJzdGF0ZSIsImtleUVudGl0aWVzIiwiaGFsZkNoZWNrZWRLZXlzIiwiY29uY2F0IiwiY2hlY2tlZEtleXNBbGwiLCJ0cmVlUHJvcHMiLCJuZXdNZW51RGF0YXMiLCJ0cmVlRGF0YSIsIm9wZW5LZXlzIiwiY2hlY2tQcm9wYWdhdGlvbiIsImNoZWNrU3RyaWN0bHkiLCJzaG93SWNvbiIsImxhenlsb2FkIiwibG9hZERhdGEiLCJfb25Mb2FkRGF0YSIsIm9uQ2hlY2tGbiIsIm9uQ2hlY2siLCJlIiwic2V0U3RhdGUiLCJvblNlbGVjdEZuIiwib25TZWxlY3QiLCJzZWxlY3RlZEtleXMiLCJub2RlSW5mbyIsInNlbGVjdE5vZGUiLCJzZWxlY3RlZCIsInNlbGVjdGVkTm9kZXMiLCJleHBhbmRlZEtleXMiLCJsb2FkaW5nIiwiZWRpdGFibGUiLCJzZWFyY2hhYmxlIiwiaGFuZGxlQWRkTW9kdWxlIiwiaGFuZGxlRWRpdE1vZHVsZSIsImhhbmRsZURlbGV0ZU1vZHVsZSIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsInJlbmRlclRyZWVOb2RlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxNQUFrQixPQUFsQjtBQUVBLE9BQU9DLFNBQVAsTUFHTyxxQkFIUDtBQUlBLFNBQVNDLEtBQVQsUUFBc0IsdUJBQXRCO0FBR0EsU0FBU0MsS0FBVCxFQUFnQkMsZUFBaEIsUUFBdUMsYUFBdkM7QUFDQSxPQUFPQyxVQUFQLE1BQXVCLGNBQXZCO0FBRUEsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLElBQVFDLFFBQVIsU0FBUUEsUUFBUixDLENBQ0E7O0lBVU1DLE87Ozs7O0FBR0osbUJBQVlDLE1BQVosRUFBbUI7QUFBQTs7QUFBQTs7QUFDakIsK0JBQU1BLE1BQU47O0FBRGlCLCtFQUZOVCxLQUFLLENBQUNVLFNBQU4sRUFFTTs7QUFBQSx1RUEwRUQsVUFBQ0MsSUFBRCxFQUFVO0FBQzFCLFVBQU1DLFNBQVMsR0FBRyxPQUFLSCxLQUFMLENBQVdHLFNBQTdCO0FBQ0FBLE1BQUFBLFNBQVMsSUFBSUEsU0FBUyxDQUFDRCxJQUFELENBQXRCO0FBQ0QsS0E3RWtCOztBQUFBLHdFQStFQSxVQUFDQSxJQUFELEVBQVU7QUFDM0IsVUFBTUUsVUFBVSxHQUFHLE9BQUtKLEtBQUwsQ0FBV0ksVUFBOUI7QUFDQUEsTUFBQUEsVUFBVSxJQUFJQSxVQUFVLENBQUNGLElBQUQsQ0FBeEI7QUFDRCxLQWxGa0I7O0FBQUEsMEVBb0ZFLFVBQUNBLElBQUQs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SixFQVNHQyxLQUFLLENBQUNDLE9BQU4sQ0FBYzVCLFlBQWQsS0FBK0JBLFlBQVksQ0FBQzZCLE1BQWIsR0FBc0IsQ0FBckQsaUJBQ0M7QUFBTSxRQUFBLEdBQUcsRUFBRSxLQUFLckMsVUFBaEI7QUFBNEIsUUFBQSxTQUFTO0FBQXJDLFNBQTBDOUMsS0FBMUMsR0FDRyxLQUFLcUMsZUFBTCxDQUFxQmlCLFlBQXJCLEVBQW1DdEQsS0FBSyxDQUFDb0YsY0FBekMsQ0FESCxDQVZKLENBREYsQ0FERjtBQW1CRDs7OztFQTFKbUI1RixTOztnQkFBaEJPLE8sa0JBUWlDO0FBQUVZLEVBQUFBLEtBQUssRUFBRTtBQUFULEM7O0FBdU12QyxlQUFlWixPQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBUcmVlLCBUcmVlUHJvcHMsIFNwaW4sIFRyZWVOb2RlUHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgVHJlZVBhbmVsLCB7XHJcbiAgSVRyZWVQYW5lbFByb3BzLFxyXG4gIFRyZWVDb21tb25Qcm9wcyxcclxufSBmcm9tIFwiLi4vY29tbW9uL1RyZWVQYW5lbFwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IFJjVHJlZSBmcm9tIFwicmMtdHJlZVwiO1xyXG5pbXBvcnQgeyBEYXRhTm9kZSwgRXZlbnREYXRhTm9kZSB9IGZyb20gXCJyYy10cmVlL2xpYi9pbnRlcmZhY2VcIjtcclxuZXhwb3J0IHsgU3RvcmUsIFN0b3JlQ29uZmlnVHlwZSB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgVHJlZVNlYXJjaCBmcm9tIFwiLi9UcmVlU2VhcmNoXCI7XHJcbmltcG9ydCBnZXRDb25maWcgZnJvbSBcIi4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lmxlc3NcIjtcclxuY29uc3QgeyBUcmVlTm9kZSB9ID0gVHJlZTtcclxuLy8gaW1wb3J0IFRyZWVOb2RlIGZyb20gXCIuL05zY1RyZWVOb2RlXCI7XHJcbnR5cGUgTnNjRGF0YU5vZGVQcm9wcyA9IERhdGFOb2RlICYgeyBwcm9wczogeyBkYXRhcmVmOiBhbnkgfSB9O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBOc2NUcmVlUHJvcHMgZXh0ZW5kcyBJVHJlZVBhbmVsUHJvcHMge1xyXG4gIGVkaXRhYmxlPzogYm9vbGVhbjtcclxuICB0cmVlRGF0YT86IGFueVtdO1xyXG4gIHNlYXJjaGFibGU/OiBib29sZWFuO1xyXG4gIG5vZGVQcm9wcz86IFRyZWVOb2RlUHJvcHM7XHJcbn1cclxuXHJcbmNsYXNzIE5zY1RyZWUgZXh0ZW5kcyBUcmVlUGFuZWw8TnNjVHJlZVByb3BzICYgVHJlZUNvbW1vblByb3BzPiB7XHJcbiAgbnNjVHJlZVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxSY1RyZWUgJiBUcmVlUHJvcHM+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICB0aGlzLnJlbmRlclRlbXBsYXRlID0gdGhpcy5yZW5kZXJUZW1wbGF0ZS5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGRlZmF1bHRQcm9wczogeyBzdG9yZToge30gfSA9IHsgc3RvcmU6IHt9IH07XHJcblxyXG4gIF9kYXRhVG9DaGVja2VkS2V5cyhtb2RlbERhdGEpOiBhbnkge1xyXG4gICAgbGV0IGNoZWNrZWRLZXlzID0geyBjaGVja2VkOiBbXSwgaGFsZkNoZWNrZWQ6IFtdIH07XHJcbiAgICB1dGlscy5mb3JFYWNoVHJlZShtb2RlbERhdGEsIGZ1bmN0aW9uIChub2RlKSB7XHJcbiAgICAgIGlmIChub2RlLmNoZWNrZWQgPT0gdHJ1ZSkge1xyXG4gICAgICAgIGNoZWNrZWRLZXlzLmNoZWNrZWQucHVzaChub2RlLmF0dHJpYnV0ZS5rZXkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBjaGVja2VkS2V5cztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOagkeaQnOe0olxyXG4gICAqL1xyXG4gIC8vIGhhbmRsZVNlYXJjaCA9ICh2YWx1ZSkgPT4ge1xyXG4gIC8vICAgdGhpcy5zZXRTdGF0ZSh7IHNlYXJjaFRleHQ6IHZhbHVlIH0pO1xyXG4gIC8vIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIOiOt+WPlumAieS4reiKgueCuUlE5pWw57uEXHJcbiAgICogQHJldHVybiBTdHJpbmdbXVxyXG4gICAqL1xyXG4gIGdldENoZWNrZWRLZXlzKCkge1xyXG4gICAgY29uc3QgeyBjaGVja2VkS2V5cyB9ID0gdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQ7XHJcbiAgICByZXR1cm4gY2hlY2tlZEtleXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDojrflj5bpgInkuK3oioLngrnlr7nosaHmlbDnu4RcclxuICAgKiBAcmV0dXJuIG5vZGVbXVxyXG4gICAqL1xyXG4gIGdldENoZWNrZWROb2RlcygpIHtcclxuICAgIGNvbnN0IHsgY2hlY2tlZEtleXMsIGtleUVudGl0aWVzIH0gPSB0aGlzLm5zY1RyZWVSZWYuY3VycmVudC5zdGF0ZTtcclxuICAgIGxldCBub2RlcyA9IFtdIGFzIE5zY0RhdGFOb2RlUHJvcHNbXTtcclxuICAgIGNoZWNrZWRLZXlzLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgIC8vIG5vZGVzLnB1c2goa2V5RW50aXRpZXNba2V5XS5ub2RlLnByb3BzLmRhdGFyZWYpO1xyXG4gICAgICBjb25zdCBub2RlID0ga2V5RW50aXRpZXNba2V5XS5ub2RlIGFzIE5zY0RhdGFOb2RlUHJvcHM7XHJcbiAgICAgIG5vZGVzLnB1c2gobm9kZS5wcm9wcy5kYXRhcmVmKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG5vZGVzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICog6I635Y+W5YWo6YOo6YCJ5Lit6IqC54K5SUTvvIzljIXlkKvljYrpgInkuK3oioLngrlJRFxyXG4gICAqIEByZXR1cm4gU3RyaW5nW11cclxuICAgKi9cclxuICBnZXRDaGVja2VkQWxsS2V5cygpIHtcclxuICAgIGNvbnN0IHsgY2hlY2tlZEtleXMsIGhhbGZDaGVja2VkS2V5cyB9ID0gdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQuc3RhdGU7XHJcbiAgICByZXR1cm4gY2hlY2tlZEtleXMuY29uY2F0KGhhbGZDaGVja2VkS2V5cyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDojrflj5blhajpg6jpgInkuK3oioLngrlOb2Rl5a+56LGh77yM5YyF5ZCr5Y2K6YCJ5Lit6IqC54K5Tm9kZeWvueixoVxyXG4gICAqIEByZXR1cm4gbm9kZVtdXHJcbiAgICovXHJcbiAgZ2V0Q2hlY2tlZEFsbE5vZGVzKCkge1xyXG4gICAgY29uc3QgeyBjaGVja2VkS2V5cywgaGFsZkNoZWNrZWRLZXlzLCBrZXlFbnRpdGllcyB9ID1cclxuICAgICAgdGhpcy5uc2NUcmVlUmVmLmN1cnJlbnQuc3RhdGU7XHJcbiAgICBsZXQgY2hlY2tlZEtleXNBbGwgPSBjaGVja2VkS2V5cy5jb25jYXQoaGFsZkNoZWNrZWRLZXlzKTtcclxuICAgIGxldCBub2RlcyA9IFtdO1xyXG4gICAgY2hlY2tlZEtleXNBbGwubWFwKChrZXkpID0+IHtcclxuICAgICAgY29uc3Qgbm9kZSA9IGtleUVudGl0aWVzW2tleV0ubm9kZSBhcyBOc2NEYXRhTm9kZVByb3BzO1xyXG4gICAgICBub2Rlcy5wdXNoKG5vZGUucHJvcHMuZGF0YXJlZik7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBub2RlcztcclxuICB9XHJcblxyXG4gIC8vIOa3u+WKoOaooeWdl1xyXG4gIGhhbmRsZUFkZE1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVBZGQgPSB0aGlzLnByb3BzLmhhbmRsZUFkZDtcclxuICAgIGhhbmRsZUFkZCAmJiBoYW5kbGVBZGQobm9kZSk7XHJcbiAgfTtcclxuXHJcbiAgaGFuZGxlRWRpdE1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVFZGl0ID0gdGhpcy5wcm9wcy5oYW5kbGVFZGl0O1xyXG4gICAgaGFuZGxlRWRpdCAmJiBoYW5kbGVFZGl0KG5vZGUpO1xyXG4gIH07XHJcblxyXG4gIGhhbmRsZURlbGV0ZU1vZHVsZSA9IChub2RlKSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVEZWxldGUgPSB0aGlzLnByb3BzLmhhbmRsZURlbGV0ZTtcclxuICAgIGhhbmRsZURlbGV0ZSAmJiBoYW5kbGVEZWxldGUobm9kZSk7XHJcbiAgfTtcclxuXHJcbiAgX29uTG9hZERhdGEgPSAodHJlZU5vZGU6IEV2ZW50RGF0YU5vZGUgJiB7IHByb3BzOiB7IGRhdGFyZWYgfSB9KSA9PlxyXG4gICAgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcclxuICAgICAgY29uc3QgX3RoaXMgPSB0aGlzLFxyXG4gICAgICAgIG5vZGUgPSB0cmVlTm9kZS5wcm9wcy5kYXRhcmVmO1xyXG4gICAgICB0aGlzLnN0b3JlLmxhenlMb2FkKG5vZGUsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICByZXNvbHZlKG5vZGUpO1xyXG4gICAgICAgIF90aGlzLmZvcmNlVXBkYXRlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gIHJlbmRlclRlbXBsYXRlKHRyZWVQcm9wcyA9IHt9IGFzIElUcmVlUGFuZWxQcm9wcywgbmV3TWVudURhdGFzID0gW10pIHtcclxuICAgIGNvbnN0IHsgdHJlZURhdGEsIG9wZW5LZXlzLCAuLi5wcm9wcyB9ID0gdHJlZVByb3BzO1xyXG4gICAgY29uc3QgX3RoaXMgPSB0aGlzO1xyXG4gICAgaWYgKHByb3BzLmNoZWNrUHJvcGFnYXRpb24pIHtcclxuICAgICAgcHJvcHMuY2hlY2tTdHJpY3RseSA9IHRydWU7XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMuc2hvd0ljb24gPT0gbnVsbCkge1xyXG4gICAgICBwcm9wcy5zaG93SWNvbiA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHsgbGF6eWxvYWQgfSA9IHRoaXMuc3RvcmUuY29uZmlnO1xyXG4gICAgaWYgKGxhenlsb2FkKSB7XHJcbiAgICAgIHByb3BzLmxvYWREYXRhID0gdGhpcy5fb25Mb2FkRGF0YTtcclxuICAgIH1cclxuICAgIGNvbnN0IG9uQ2hlY2tGbiA9IHByb3BzLm9uQ2hlY2s7XHJcbiAgICBwcm9wcy5vbkNoZWNrID0gZnVuY3Rpb24gKGNoZWNrZWRLZXlzLCBlKSB7XHJcbiAgICAgIF90aGlzLnNldFN0YXRlKHsgY2hlY2tlZEtleXM6IGNoZWNrZWRLZXlzIH0pO1xyXG4gICAgICB1dGlscy5jYWxsYmFjayhvbkNoZWNrRm4sIF90aGlzLCBbY2hlY2tlZEtleXMsIGVdKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBvblNlbGVjdEZuID0gcHJvcHMub25TZWxlY3Q7XHJcbiAgICBwcm9wcy5vblNlbGVjdCA9IChzZWxlY3RlZEtleXMsIG5vZGVJbmZvKSA9PiB7XHJcbiAgICAgIHV0aWxzLmNhbGxiYWNrKG9uU2VsZWN0Rm4sIF90aGlzLCBbc2VsZWN0ZWRLZXlzLCBub2RlSW5mb10pO1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBzZWxlY3ROb2RlOiBub2RlSW5mby5zZWxlY3RlZCA/IG5vZGVJbmZvLnNlbGVjdGVkTm9kZXNbMF0gOiBudWxsLFxyXG4gICAgICAgIHNlbGVjdGVkS2V5cyxcclxuICAgICAgfSk7XHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChvcGVuS2V5cykge1xyXG4gICAgICBwcm9wcy5leHBhbmRlZEtleXMgPSBvcGVuS2V5cztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRlbGV0ZSBwcm9wcy5leHBhbmRlZEtleXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8U3BpbiBzcGlubmluZz17dGhpcy5zdGF0ZS5sb2FkaW5nfT5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzW1wibnNjLXRyZWUtYm94XCJdfT5cclxuICAgICAgICAgIHsoX3RoaXMucHJvcHMuZWRpdGFibGUgfHwgX3RoaXMucHJvcHMuc2VhcmNoYWJsZSkgJiYgKFxyXG4gICAgICAgICAgICA8VHJlZVNlYXJjaFxyXG4gICAgICAgICAgICAgIHRyZWVJbnN0YW5jZT17dGhpc31cclxuICAgICAgICAgICAgICBoYW5kbGVBZGRNb2R1bGU9e3RoaXMuaGFuZGxlQWRkTW9kdWxlfVxyXG4gICAgICAgICAgICAgIGhhbmRsZUVkaXRNb2R1bGU9e3RoaXMuaGFuZGxlRWRpdE1vZHVsZX1cclxuICAgICAgICAgICAgICBoYW5kbGVEZWxldGVNb2R1bGU9e3RoaXMuaGFuZGxlRGVsZXRlTW9kdWxlfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtBcnJheS5pc0FycmF5KG5ld01lbnVEYXRhcykgJiYgbmV3TWVudURhdGFzLmxlbmd0aCA+IDAgJiYgKFxyXG4gICAgICAgICAgICA8VHJlZSByZWY9e3RoaXMubnNjVHJlZVJlZn0gY2hlY2thYmxlIHsuLi5wcm9wc30+XHJcbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyVHJlZU5vZGVzKG5ld01lbnVEYXRhcywgcHJvcHMucmVuZGVyVHJlZU5vZGUpfVxyXG4gICAgICAgICAgICA8L1RyZWU+XHJcbiAgICAgICAgICApfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L1NwaW4+XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVuZGVyVHJlZU5vZGVzID0gKGRhdGEsIHJlbmRlckZuKSA9PiB7XHJcbiAgICBjb25zdCBub2RlUHJvcHMgPSB0aGlzLnByb3BzLm5vZGVQcm9wcyB8fCB7fTtcclxuICAgIGNvbnN0IHsga2V5OiBub2RlS2V5LCAuLi5yZXN0Tm9kZVByb3BzIH0gPSBub2RlUHJvcHM7XHJcbiAgICBjb25zdCBub2RlcyA9IGRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGxldCBwcm9wcyA9IHsgZGF0YXJlZjogaXRlbSB9IGFzIFRyZWVOb2RlUHJvcHM7XHJcbiAgICAgIGl0ZW0uY29uZmlnLmZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xyXG4gICAgICAgIGlmIChmaWVsZC5uYW1lID09PSBcImtleVwiICYmIG5vZGVLZXkpIHtcclxuICAgICAgICAgIHByb3BzLmtleSA9IGl0ZW1bbm9kZUtleV07XHJcbiAgICAgICAgICBpdGVtLmtleSA9IGl0ZW1bbm9kZUtleV07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3BzW2ZpZWxkLm5hbWVdID0gaXRlbVtmaWVsZC5uYW1lXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBPYmplY3QuYXNzaWduKHByb3BzLCByZXN0Tm9kZVByb3BzKTtcclxuICAgICAgaWYgKHJlbmRlckZuKSB7XHJcbiAgICAgICAgcHJvcHMgPSB1dGlscy5jYWxsYmFjayhyZW5kZXJGbiwgdGhpcywgW3Byb3BzLCBpdGVtXSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGxldCB0aXRsZU5vZGUgPSBudWxsO1xyXG4gICAgICBpZiAodHlwZW9mIGl0ZW0udGl0bGUgPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgIGlmIChpdGVtLmF0dHJpYnV0ZS5zdWJ0aXRsZSkge1xyXG4gICAgICAgICAgdGl0bGVOb2RlID0gKFxyXG4gICAgICAgICAgICA8c3BhbiB0aXRsZT17aXRlbS50aXRsZSArIFwi77yIXCIgKyBpdGVtLmF0dHJpYnV0ZS5zdWJ0aXRsZSArIFwi77yJXCJ9PlxyXG4gICAgICAgICAgICAgIDxzcGFuPntpdGVtLnRpdGxlfTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgY29sb3I6IFwicmdiYSgwLDAsMCwuNDUpXCIgfX1cclxuICAgICAgICAgICAgICA+e2DvvIgke2l0ZW0uYXR0cmlidXRlLnN1YnRpdGxlfe+8iWB9PC9zcGFuPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aXRsZU5vZGUgPSA8c3BhbiB0aXRsZT17aXRlbS50aXRsZX0+e2l0ZW0udGl0bGV9PC9zcGFuPjtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGl0bGVOb2RlID0gaXRlbS50aXRsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGl0ZW0uY2hpbGROb2Rlcykge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8VHJlZU5vZGUgey4uLnByb3BzfSBrZXk9e2l0ZW0uYXR0cmlidXRlLmtleX0gdGl0bGU9e3RpdGxlTm9kZX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlclRyZWVOb2RlcyhpdGVtLmNoaWxkTm9kZXMsIHJlbmRlckZuKX1cclxuICAgICAgICAgIDwvVHJlZU5vZGU+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIDxUcmVlTm9kZSB7Li4ucHJvcHN9IGtleT17aXRlbS5hdHRyaWJ1dGUua2V5fSB0aXRsZT17dGl0bGVOb2RlfSAvPjtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBub2RlcztcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBOc2NUcmVlO1xyXG4iXX0=
package/lib/treeUtils.js CHANGED
@@ -108,7 +108,9 @@ export function getEffectiveMenuDatas(menusDatas, keys, searchText) {
108
108
  color: color
109
109
  }
110
110
  }, searchText);
111
- item.set(fieldOption.titleField, /*#__PURE__*/React.createElement("span", null, before, font, after));
111
+ item.set(fieldOption.titleField, /*#__PURE__*/React.createElement("span", {
112
+ title: title
113
+ }, before, font, after));
112
114
  }
113
115
 
114
116
  if (isExist && item.childNodes) {
@@ -171,4 +173,4 @@ export default {
171
173
  getEffectiveMenuDatas: getEffectiveMenuDatas,
172
174
  getSearchMenuDatas: getSearchMenuDatas
173
175
  };
174
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL3RyZWVVdGlscy50c3giXSwibmFtZXMiOlsiaXNFcXVhbCIsIlJlYWN0IiwiZ2V0QnJlYWRjcnVtYk1hcCIsIm1lbnVEYXRhcyIsImZpZWxkT3B0aW9uIiwia2V5RmllbGQiLCJ0aXRsZUZpZWxkIiwicGF0aHNGaWVsZCIsInRpdGxlTWFwIiwiZmxhdHRlbk1lbnVEYXRhIiwiZGF0YSIsInBhdGhzIiwiZm9yRWFjaCIsIm1lbnVJdGVtIiwic2V0IiwiY29uY2F0IiwiZ2V0IiwiY2hpbGROb2RlcyIsImdldEVmZmVjdGl2ZU5vZGVLZXlzIiwiYnJlYWRjcnVtYk1hcCIsInNlYXJjaFRleHQiLCJrZXlzIiwiT2JqZWN0Iiwia2V5IiwiaSIsIml0ZW0iLCJTdHJpbmciLCJpbmRleE9mIiwibWFwIiwidiIsImdldEVmZmVjdGl2ZU1lbnVEYXRhcyIsIm1lbnVzRGF0YXMiLCJjb2xvciIsIm5ld01lbnVzRGF0YXMiLCJsZW5ndGgiLCJpc0V4aXN0IiwidGl0bGUiLCJzcGxpY2UiLCJzdGFydEluZGV4IiwiZW5kSW5kZXgiLCJiZWZvcmUiLCJzdWJzdHJpbmciLCJhZnRlciIsImZvbnQiLCJnZXRTZWFyY2hNZW51RGF0YXMiLCJ0aGl6IiwiY2FjaGVrZXkiLCJnZXRNb2RlbCIsImdldENsb25lTW9kZWxEYXRhIiwidHJlZURhdGFzIiwiZGF0YXMiLCJvcGVuS2V5cyIsInB1c2giXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE9BQVAsTUFBb0IsZ0JBQXBCO0FBQ0EsT0FBT0MsS0FBUCxNQUFrQixPQUFsQjtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxTQUFTQyxnQkFBVCxDQUNMQyxTQURLLEVBR0w7QUFBQSxNQURBQyxXQUNBLHVFQURjO0FBQUVDLElBQUFBLFFBQVEsRUFBRSxLQUFaO0FBQW1CQyxJQUFBQSxVQUFVLEVBQUUsT0FBL0I7QUFBd0NDLElBQUFB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ZTNCLGFBQS9CO0FBQ0Q7QUFDRixHQVhELE1BV087QUFDTEEsSUFBQUEsYUFBYSxHQUFHakIsZ0JBQWdCLENBQUM2QixVQUFELEVBQWEzQixXQUFiLENBQWhDO0FBQ0Q7O0FBQ0QsTUFBTWlCLElBQUksR0FBR0gsb0JBQW9CLENBQUNDLGFBQUQsRUFBZ0JDLFVBQWhCLEVBQTRCaEIsV0FBNUIsQ0FBakM7QUFDQSxNQUFNOEMsS0FBSyxHQUFHcEIscUJBQXFCLENBQ2pDQyxVQURpQyxFQUVqQ1YsSUFGaUMsRUFHakNXLEtBQUssR0FBR1osVUFBSCxHQUFnQixJQUhZLEVBSWpDaEIsV0FKaUMsRUFLakM0QixLQUxpQyxDQUFuQztBQU9BLE1BQUltQixRQUFRLEdBQUcsRUFBZjtBQUNBN0IsRUFBQUEsTUFBTSxDQUFDRCxJQUFQLENBQVlBLElBQVosRUFBa0JULE9BQWxCLENBQTBCLFVBQUNXLEdBQUQsRUFBTUMsQ0FBTixFQUFZO0FBQ3BDMkIsSUFBQUEsUUFBUSxDQUFDQyxJQUFULENBQWM3QixHQUFkO0FBQ0QsR0FGRDtBQUdBLFNBQU87QUFDTDRCLElBQUFBLFFBQVEsRUFBRUEsUUFETDtBQUVMRixJQUFBQSxTQUFTLEVBQUVDO0FBRk4sR0FBUDtBQUlEO0FBRUQsZUFBZTtBQUNiaEQsRUFBQUEsZ0JBQWdCLEVBQWhCQSxnQkFEYTtBQUViZ0IsRUFBQUEsb0JBQW9CLEVBQXBCQSxvQkFGYTtBQUdiWSxFQUFBQSxxQkFBcUIsRUFBckJBLHFCQUhhO0FBSWJjLEVBQUFBLGtCQUFrQixFQUFsQkE7QUFKYSxDQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGlzRXF1YWwgZnJvbSBcImxvZGFzaC9pc0VxdWFsXCI7XHJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcclxuXHJcbi8qKlxyXG4gKiDojrflj5bpnaLljIXlsZHmmKDlsIRcclxuICoge1xyXG4gKiAgICBrZXkxOntwYXRoczpbJ2tleTEnXSx0aXRsZTon57O757uf566h55CGJ31cclxuICogICAga2V5Mjp7cGF0aHM6WydrZXkxJywna2V5MiddLHRpdGxlOiflip/og73phY3nva4nfVxyXG4gKiAgICBrZXkzOntwYXRoczpbJ2tleTEnLCdrZXkyJywna2V5MyddLHRpdGxlOifoj5zljZXnrqHnkIYnLHBhdGg6Jy9wbGF0Zm9ybS9tZW51J31cclxuICogfVxyXG4gKiBAcGFyYW0ge29iamVjdFtdfSBtZW51RGF0YXMgIOagkeW9oue7k+aehOaVsOaNrlxyXG4gKiBAcGFyYW0ge09iamVjdH0gZmllbGRPcHRpb24gIOWFs+mUruWtl+auteWQjeensO+8jOe8uuecgXsga2V5RmllbGQ6ICdrZXknLCB0aXRsZUZpZWxkOiAndGl0bGUnLHBhdGhzRmllbGQ6J3BhdGhzJyB9XHJcbiAqIEByZXR1cm5zIHtNYXB9XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QnJlYWRjcnVtYk1hcChcclxuICBtZW51RGF0YXMsXHJcbiAgZmllbGRPcHRpb24gPSB7IGtleUZpZWxkOiBcImtleVwiLCB0aXRsZUZpZWxkOiBcInRpdGxlXCIsIHBhdGhzRmllbGQ6IFwicGF0aHNcIiB9XHJcbikge1xyXG4gIGNvbnN0IHRpdGxlTWFwID0ge307XHJcbiAgY29uc3QgZmxhdHRlbk1lbnVEYXRhID0gKGRhdGEsIHBhdGhzID0gW10pID0+IHtcclxuICAgIGRhdGEuZm9yRWFjaCgobWVudUl0ZW0pID0+IHtcclxuICAgICAgbWVudUl0ZW0uc2V0KFxyXG4gICAgICAgIGZpZWxkT3B0aW9uLnBhdGhzRmllbGQsXHJcbiAgICAgICAgcGF0aHMuY29uY2F0KG1lbnVJdGVtLmdldChmaWVsZE9wdGlvbi5rZXlGaWVsZCkpXHJcbiAgICAgICk7XHJcbiAgICAgIGlmIChtZW51SXRlbS5jaGlsZE5vZGVzKSB7XHJcbiAgICAgICAgZmxhdHRlbk1lbnVEYXRhKFxyXG4gICAgICAgICAgbWVudUl0ZW0uY2hpbGROb2RlcyxcclxuICAgICAgICAgIG1lbnVJdGVtLmdldChmaWVsZE9wdGlvbi5wYXRoc0ZpZWxkKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKG1lbnVJdGVtLmdldChmaWVsZE9wdGlvbi5rZXlGaWVsZCkpIHtcclxuICAgICAgICB0aXRsZU1hcFttZW51SXRlbS5nZXQoZmllbGRPcHRpb24ua2V5RmllbGQpXSA9IG1lbnVJdGVtO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9O1xyXG4gIGZsYXR0ZW5NZW51RGF0YShtZW51RGF0YXMpO1xyXG4gIHJldHVybiB0aXRsZU1hcDtcclxufVxyXG5cclxuLyoqXHJcbiAqIOWIpOaWreiPnOWNlU1hcOWvueixoeS4reespuWQiOadoeS7tueahOWvueixoVxyXG4gKiAgICBrZXkxOntwYXRoczpbJ2tleTEnXSx0aXRsZTon57O757uf566h55CGJ31cclxuICogICAga2V5Mjp7cGF0aHM6WydrZXkxJywna2V5MiddLHRpdGxlOiflip/og73phY3nva4nfVxyXG4gKiAgICBrZXkzOntwYXRoczpbJ2tleTEnLCdrZXkyJywna2V5MyddLHRpdGxlOifoj5zljZXnrqHnkIYnLHBhdGg6Jy9wbGF0Zm9ybS9tZW51J31cclxuICog5pCc57Si44CK566h55CG44CL5ZCO6L+U5ZueXHJcbiAqICAgIHtrZXkxOidrZXkxJyxrZXkyOidrZXkyJyxrZXkzOidrZXkzJ31cclxuICogQHBhcmFtIHtNYXA8U3RyaW5nLE9iamVjdD59IGJyZWFkY3J1bWJNYXAgIOiPnOWNlemdouWMheWxkVxyXG4gKiBAcGFyYW0geyBTdHJpbmcgfSBzZWFyY2hUZXh0ICDmkJzntKLlhoXlrrlcclxuICogQHBhcmFtIHtPYmplY3R9IGZpZWxkT3B0aW9uICDlhbPplK7lrZfmrrXlkI3np7DvvIznvLrnnIF7IGtleUZpZWxkOiAna2V5JywgdGl0bGVGaWVsZDogJ3RpdGxlJyxwYXRoc0ZpZWxkOidwYXRocycgfVxyXG4gKiBAcmV0dXJucyB7TWFwPFN0cmluZyxTdHJpbmc+fVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEVmZmVjdGl2ZU5vZGVLZXlzKFxyXG4gIGJyZWFkY3J1bWJNYXAsXHJcbiAgc2VhcmNoVGV4dCxcclxuICBmaWVsZE9wdGlvbiA9IHsga2V5RmllbGQ6IFwia2V5XCIsIHRpdGxlRmllbGQ6IFwidGl0bGVcIiwgcGF0aHNGaWVsZDogXCJwYXRoc1wiIH1cclxuKSB7XHJcbiAgY29uc3Qga2V5cyA9IHt9O1xyXG4gIE9iamVjdC5rZXlzKGJyZWFkY3J1bWJNYXApLmZvckVhY2goKGtleSwgaSkgPT4ge1xyXG4gICAgY29uc3QgaXRlbSA9IGJyZWFkY3J1bWJNYXBba2V5XTtcclxuICAgIGlmIChTdHJpbmcoaXRlbS5nZXQoZmllbGRPcHRpb24udGl0bGVGaWVsZCkpLmluZGV4T2Yoc2VhcmNoVGV4dCkgIT0gLTEpIHtcclxuICAgICAgY29uc3QgcGF0aHMgPSBpdGVtLmdldChmaWVsZE9wdGlvbi5wYXRoc0ZpZWxkKTtcclxuICAgICAgcGF0aHMubWFwKCh2KSA9PiB7XHJcbiAgICAgICAga2V5c1t2XSA9IHY7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIHJldHVybiBrZXlzO1xyXG59XHJcblxyXG4vKipcclxuICog6I635Y+W6L+H5ruk5ZCO5pi+56S655qE6I+c5Y2V5pWw5o2uXHJcbiAqIEBwYXJhbSB7T2JqZWN0W119IG1lbnVzRGF0YXMgIOagkeW9oue7k+aehOaVsOaNrlxyXG4gKiBAcGFyYW0ge1N0cmluZ1tdfSBrZXlzICDmnInmlYjnmoToj5zljZXoioLngrlcclxuICogQHBhcmFtIHtTdHJpbmd9IHNlYXJjaFRleHQgIOaQnOe0ouWGheWuue+8jOmdnuW/heWhq1xyXG4gKiBAcGFyYW0ge09iamVjdH0gZmllbGRPcHRpb24gIOWFs+mUruWtl+auteWQjeensO+8jOe8uuecgXsga2V5RmllbGQ6ICdrZXknLCB0aXRsZUZpZWxkOiAndGl0bGUnLHBhdGhzRmllbGQ6J3BhdGhzJyB9XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2xvciAgIOaQnOe0ouWGheWuuemHjeeCueminOiJsuagh+ivhu+8jOmdnuW/heWhq++8jOe8uuecgXJlZFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEVmZmVjdGl2ZU1lbnVEYXRhcyhcclxuICBtZW51c0RhdGFzLFxyXG4gIGtleXMsXHJcbiAgc2VhcmNoVGV4dCxcclxuICBmaWVsZE9wdGlvbiA9IHsga2V5RmllbGQ6IFwia2V5XCIsIHRpdGxlRmllbGQ6IFwidGl0bGVcIiwgcGF0aHNGaWVsZDogXCJwYXRoc1wiIH0sXHJcbiAgY29sb3IgPSBcInJlZFwiXHJcbikge1xyXG4gIGNvbnN0IG5ld01lbnVzRGF0YXMgPSBbXTtcclxuICBjb25zdCBmbGF0dGVuTWVudURhdGEgPSAoZGF0YSkgPT4ge1xyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGl0ZW0gPSBkYXRhW2ldO1xyXG4gICAgICBjb25zdCBpc0V4aXN0ID0ga2V5c1tpdGVtLmdldChmaWVsZE9wdGlvbi5rZXlGaWVsZCldICE9IG51bGw7XHJcbiAgICAgIGNvbnN0IHRpdGxlID0gU3RyaW5nKGl0ZW0uZ2V0KGZpZWxkT3B0aW9uLnRpdGxlRmllbGQpKTtcclxuICAgICAgaWYgKCFpc0V4aXN0KSB7XHJcbiAgICAgICAgZGF0YS5zcGxpY2UoaSwgMSk7IC8vIOWwhuS9v+WQjumdoueahOWFg+e0oOS+neasoeWJjeenu++8jOaVsOe7hOmVv+W6puWHjzFcclxuICAgICAgICBpLS07IC8vIOWmguaenOS4jeWHj++8jOWwhua8j+aOieS4gOS4quWFg+e0oFxyXG4gICAgICB9IGVsc2UgaWYgKHNlYXJjaFRleHQgJiYgdGl0bGUuaW5kZXhPZihzZWFyY2hUZXh0KSAhPSAtMSkge1xyXG4gICAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSB0aXRsZS5pbmRleE9mKHNlYXJjaFRleHQpO1xyXG4gICAgICAgIGNvbnN0IGVuZEluZGV4ID0gc3RhcnRJbmRleCArIHNlYXJjaFRleHQubGVuZ3RoO1xyXG4gICAgICAgIGNvbnN0IGJlZm9yZSA9IHRpdGxlLnN1YnN0cmluZygwLCBzdGFydEluZGV4KTtcclxuICAgICAgICBjb25zdCBhZnRlciA9IHRpdGxlLnN1YnN0cmluZyhlbmRJbmRleCwgdGl0bGUubGVuZ3RoKTtcclxuICAgICAgICBjb25zdCBmb250OiBSZWFjdC5SZWFjdEVsZW1lbnQgPSAoXHJcbiAgICAgICAgICA8c3BhbiBzdHlsZT17eyBjb2xvciB9fT57c2VhcmNoVGV4dH08L3NwYW4+XHJcbiAgICAgICAgKTtcclxuICAgICAgICBpdGVtLnNldChcclxuICAgICAgICAgIGZpZWxkT3B0aW9uLnRpdGxlRmllbGQsXHJcbiAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAge2JlZm9yZX1cclxuICAgICAgICAgICAge2ZvbnR9XHJcbiAgICAgICAgICAgIHthZnRlcn1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChpc0V4aXN0ICYmIGl0ZW0uY2hpbGROb2Rlcykge1xyXG4gICAgICAgIGZsYXR0ZW5NZW51RGF0YShpdGVtLmNoaWxkTm9kZXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuICBmbGF0dGVuTWVudURhdGEobWVudXNEYXRhcyk7XHJcbiAgcmV0dXJuIG1lbnVzRGF0YXM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDmkJzntKLoj5zljZXmlbDmja7vvIznp7vpmaTkuI3nrKblkIjnmoToj5zljZXlkozkuI3pnIDopoHnmoTnm67lvZXnu5PmnoTvvIznvLrnnIHnrKblkIjlhoXlrrnmoIfnuqJcclxuICogQHBhcmFtIHtPYmplY3R9IHRoaXogIG1lbnXoj5zljZXlr7nosaHvvIznvJPlrZjml7blgJnlrZjlgqjmlbDmja7kvb/nlKhcclxuICogQHBhcmFtIHtTdHJpbmd9IHNlYXJjaFRleHQgIOaQnOe0ouWGheWuuVxyXG4gKiBAcGFyYW0ge09iamVjdH0gZmllbGRPcHRpb24gIOWFs+mUruWtl+auteWQjeensO+8jOe8uuecgXsga2V5RmllbGQ6ICdrZXknLCB0aXRsZUZpZWxkOiAndGl0bGUnLHBhdGhzRmllbGQ6J3BhdGhzJyB9XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2xvciAgIOaQnOe0ouWGheWuuemHjeeCueminOiJsuagh+ivhu+8jOmdnuW/heWhq++8jOe8uuecgXJlZCzlvZNmYWxzZeaXtuWAme+8jOS4lOS4jemHjeeCueagh+azqOminOiJslxyXG4gKiBAcGFyYW0ge1N0cmluZ30gY2FjaGVrZXkgICDnvJPlrZjmlbDmja7lrZjlgqhrZXnvvIznvLrnnIFuc2NfbWVudV9jYWNoZVxyXG4gKiBAcmV0dXJucyB7Kn0ge29wZW5LZXlzOnt9LHRyZWVEYXRhczpbXX1cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWFyY2hNZW51RGF0YXMoXHJcbiAgdGhpeixcclxuICBzZWFyY2hUZXh0LFxyXG4gIGZpZWxkT3B0aW9uID0geyBrZXlGaWVsZDogXCJrZXlcIiwgdGl0bGVGaWVsZDogXCJ0aXRsZVwiLCBwYXRoc0ZpZWxkOiBcInBhdGhzXCIgfSxcclxuICBjb2xvciA9IFwicmVkXCIsXHJcbiAgY2FjaGVrZXkgPSBcIm5zY19tZW51X2NhY2hlXCJcclxuKSB7XHJcbiAgbGV0IGJyZWFkY3J1bWJNYXAgPSB7fSxcclxuICAgIG1lbnVzRGF0YXMgPSB0aGl6LmdldE1vZGVsKCkuZ2V0Q2xvbmVNb2RlbERhdGEoKTtcclxuICBpZiAodGhpeikge1xyXG4gICAgaWYgKCF0aGl6W2NhY2hla2V5XSkgdGhpeltjYWNoZWtleV0gPSB7fTtcclxuICAgIGlmICghaXNFcXVhbChtZW51c0RhdGFzLCB0aGl6W2NhY2hla2V5XS50cmVlRGF0YXMpKSB7XHJcbiAgICAgIHRoaXpbY2FjaGVrZXldLmJyZWFkY3J1bWJNYXAgPSBicmVhZGNydW1iTWFwID0gZ2V0QnJlYWRjcnVtYk1hcChcclxuICAgICAgICBtZW51c0RhdGFzLFxyXG4gICAgICAgIGZpZWxkT3B0aW9uXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXpbY2FjaGVrZXldLnRyZWVEYXRhcyA9IG1lbnVzRGF0YXM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBicmVhZGNydW1iTWFwID0gdGhpeltjYWNoZWtleV0uYnJlYWRjcnVtYk1hcDtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgYnJlYWRjcnVtYk1hcCA9IGdldEJyZWFkY3J1bWJNYXAobWVudXNEYXRhcywgZmllbGRPcHRpb24pO1xyXG4gIH1cclxuICBjb25zdCBrZXlzID0gZ2V0RWZmZWN0aXZlTm9kZUtleXMoYnJlYWRjcnVtYk1hcCwgc2VhcmNoVGV4dCwgZmllbGRPcHRpb24pO1xyXG4gIGNvbnN0IGRhdGFzID0gZ2V0RWZmZWN0aXZlTWVudURhdGFzKFxyXG4gICAgbWVudXNEYXRhcyxcclxuICAgIGtleXMsXHJcbiAgICBjb2xvciA/IHNlYXJjaFRleHQgOiBudWxsLFxyXG4gICAgZmllbGRPcHRpb24sXHJcbiAgICBjb2xvclxyXG4gICk7XHJcbiAgbGV0IG9wZW5LZXlzID0gW107XHJcbiAgT2JqZWN0LmtleXMoa2V5cykuZm9yRWFjaCgoa2V5LCBpKSA9PiB7XHJcbiAgICBvcGVuS2V5cy5wdXNoKGtleSk7XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHtcclxuICAgIG9wZW5LZXlzOiBvcGVuS2V5cyxcclxuICAgIHRyZWVEYXRhczogZGF0YXMsXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGdldEJyZWFkY3J1bWJNYXAsXHJcbiAgZ2V0RWZmZWN0aXZlTm9kZUtleXMsXHJcbiAgZ2V0RWZmZWN0aXZlTWVudURhdGFzLFxyXG4gIGdldFNlYXJjaE1lbnVEYXRhcyxcclxufTtcclxuIl19
176
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL3RyZWVVdGlscy50c3giXSwibmFtZXMiOlsiaXNFcXVhbCIsIlJlYWN0IiwiZ2V0QnJlYWRjcnVtYk1hcCIsIm1lbnVEYXRhcyIsImZpZWxkT3B0aW9uIiwia2V5RmllbGQiLCJ0aXRsZUZpZWxkIiwicGF0aHNGaWVsZCIsInRpdGxlTWFwIiwiZmxhdHRlbk1lbnVEYXRhIiwiZGF0YSIsInBhdGhzIiwiZm9yRWFjaCIsIm1lbnVJdGVtIiwic2V0IiwiY29uY2F0IiwiZ2V0IiwiY2hpbGROb2RlcyIsImdldEVmZmVjdGl2ZU5vZGVLZXlzIiwiYnJlYWRjcnVtYk1hcCIsInNlYXJjaFRleHQiLCJrZXlzIiwiT2JqZWN0Iiwia2V5IiwiaSIsIml0ZW0iLCJTdHJpbmciLCJpbmRleE9mIiwibWFwIiwidiIsImdldEVmZmVjdGl2ZU1lbnVEYXRhcyIsIm1lbnVzRGF0YXMiLCJjb2xvciIsIm5ld01lbnVzRGF0YXMiLCJsZW5ndGgiLCJpc0V4aXN0IiwidGl0bGUiLCJzcGxpY2UiLCJzdGFydEluZGV4IiwiZW5kSW5kZXgiLCJiZWZvcmUiLCJzdWJzdHJpbmciLCJhZnRlciIsImZvbnQiLCJnZXRTZWFyY2hNZW51RGF0YXMiLCJ0aGl6IiwiY2FjaGVrZXkiLCJnZXRNb2RlbCIsImdldENsb25lTW9kZWxEYXRhIiwidHJlZURhdGFzIiwiZGF0YXMiLCJvcGVuS2V5cyIsInB1c2giXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE9BQVAsTUFBb0IsZ0JBQXBCO0FBQ0EsT0FBT0MsS0FBUCxNQUFrQixPQUFsQjtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxTQUFTQyxnQkFBVCxDQUNMQyxTQURLLEVBR0w7QUFBQSxNQURBQyxXQUNBLHVFQURjO0FBQUVDLElBQUFBLFFBQVEsRUFBRSxLQUFaO0FBQW1CQyxJQUFBQSxVQUFVLEVBQUUsT0FBL0I7QUFBd0NDLElBQUFB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LElBQUksQ0FBQ0MsUUFBRCxDQUFKLENBQWUzQixhQUEvQjtBQUNEO0FBQ0YsR0FYRCxNQVdPO0FBQ0xBLElBQUFBLGFBQWEsR0FBR2pCLGdCQUFnQixDQUFDNkIsVUFBRCxFQUFhM0IsV0FBYixDQUFoQztBQUNEOztBQUNELE1BQU1pQixJQUFJLEdBQUdILG9CQUFvQixDQUFDQyxhQUFELEVBQWdCQyxVQUFoQixFQUE0QmhCLFdBQTVCLENBQWpDO0FBQ0EsTUFBTThDLEtBQUssR0FBR3BCLHFCQUFxQixDQUNqQ0MsVUFEaUMsRUFFakNWLElBRmlDLEVBR2pDVyxLQUFLLEdBQUdaLFVBQUgsR0FBZ0IsSUFIWSxFQUlqQ2hCLFdBSmlDLEVBS2pDNEIsS0FMaUMsQ0FBbkM7QUFPQSxNQUFJbUIsUUFBUSxHQUFHLEVBQWY7QUFDQTdCLEVBQUFBLE1BQU0sQ0FBQ0QsSUFBUCxDQUFZQSxJQUFaLEVBQWtCVCxPQUFsQixDQUEwQixVQUFDVyxHQUFELEVBQU1DLENBQU4sRUFBWTtBQUNwQzJCLElBQUFBLFFBQVEsQ0FBQ0MsSUFBVCxDQUFjN0IsR0FBZDtBQUNELEdBRkQ7QUFHQSxTQUFPO0FBQ0w0QixJQUFBQSxRQUFRLEVBQUVBLFFBREw7QUFFTEYsSUFBQUEsU0FBUyxFQUFFQztBQUZOLEdBQVA7QUFJRDtBQUVELGVBQWU7QUFDYmhELEVBQUFBLGdCQUFnQixFQUFoQkEsZ0JBRGE7QUFFYmdCLEVBQUFBLG9CQUFvQixFQUFwQkEsb0JBRmE7QUFHYlksRUFBQUEscUJBQXFCLEVBQXJCQSxxQkFIYTtBQUliYyxFQUFBQSxrQkFBa0IsRUFBbEJBO0FBSmEsQ0FBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpc0VxdWFsIGZyb20gXCJsb2Rhc2gvaXNFcXVhbFwiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcblxyXG4vKipcclxuICog6I635Y+W6Z2i5YyF5bGR5pig5bCEXHJcbiAqIHtcclxuICogICAga2V5MTp7cGF0aHM6WydrZXkxJ10sdGl0bGU6J+ezu+e7n+euoeeQhid9XHJcbiAqICAgIGtleTI6e3BhdGhzOlsna2V5MScsJ2tleTInXSx0aXRsZTon5Yqf6IO96YWN572uJ31cclxuICogICAga2V5Mzp7cGF0aHM6WydrZXkxJywna2V5MicsJ2tleTMnXSx0aXRsZTon6I+c5Y2V566h55CGJyxwYXRoOicvcGxhdGZvcm0vbWVudSd9XHJcbiAqIH1cclxuICogQHBhcmFtIHtvYmplY3RbXX0gbWVudURhdGFzICDmoJHlvaLnu5PmnoTmlbDmja5cclxuICogQHBhcmFtIHtPYmplY3R9IGZpZWxkT3B0aW9uICDlhbPplK7lrZfmrrXlkI3np7DvvIznvLrnnIF7IGtleUZpZWxkOiAna2V5JywgdGl0bGVGaWVsZDogJ3RpdGxlJyxwYXRoc0ZpZWxkOidwYXRocycgfVxyXG4gKiBAcmV0dXJucyB7TWFwfVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEJyZWFkY3J1bWJNYXAoXHJcbiAgbWVudURhdGFzLFxyXG4gIGZpZWxkT3B0aW9uID0geyBrZXlGaWVsZDogXCJrZXlcIiwgdGl0bGVGaWVsZDogXCJ0aXRsZVwiLCBwYXRoc0ZpZWxkOiBcInBhdGhzXCIgfVxyXG4pIHtcclxuICBjb25zdCB0aXRsZU1hcCA9IHt9O1xyXG4gIGNvbnN0IGZsYXR0ZW5NZW51RGF0YSA9IChkYXRhLCBwYXRocyA9IFtdKSA9PiB7XHJcbiAgICBkYXRhLmZvckVhY2goKG1lbnVJdGVtKSA9PiB7XHJcbiAgICAgIG1lbnVJdGVtLnNldChcclxuICAgICAgICBmaWVsZE9wdGlvbi5wYXRoc0ZpZWxkLFxyXG4gICAgICAgIHBhdGhzLmNvbmNhdChtZW51SXRlbS5nZXQoZmllbGRPcHRpb24ua2V5RmllbGQpKVxyXG4gICAgICApO1xyXG4gICAgICBpZiAobWVudUl0ZW0uY2hpbGROb2Rlcykge1xyXG4gICAgICAgIGZsYXR0ZW5NZW51RGF0YShcclxuICAgICAgICAgIG1lbnVJdGVtLmNoaWxkTm9kZXMsXHJcbiAgICAgICAgICBtZW51SXRlbS5nZXQoZmllbGRPcHRpb24ucGF0aHNGaWVsZClcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChtZW51SXRlbS5nZXQoZmllbGRPcHRpb24ua2V5RmllbGQpKSB7XHJcbiAgICAgICAgdGl0bGVNYXBbbWVudUl0ZW0uZ2V0KGZpZWxkT3B0aW9uLmtleUZpZWxkKV0gPSBtZW51SXRlbTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfTtcclxuICBmbGF0dGVuTWVudURhdGEobWVudURhdGFzKTtcclxuICByZXR1cm4gdGl0bGVNYXA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDliKTmlq3oj5zljZVNYXDlr7nosaHkuK3nrKblkIjmnaHku7bnmoTlr7nosaFcclxuICogICAga2V5MTp7cGF0aHM6WydrZXkxJ10sdGl0bGU6J+ezu+e7n+euoeeQhid9XHJcbiAqICAgIGtleTI6e3BhdGhzOlsna2V5MScsJ2tleTInXSx0aXRsZTon5Yqf6IO96YWN572uJ31cclxuICogICAga2V5Mzp7cGF0aHM6WydrZXkxJywna2V5MicsJ2tleTMnXSx0aXRsZTon6I+c5Y2V566h55CGJyxwYXRoOicvcGxhdGZvcm0vbWVudSd9XHJcbiAqIOaQnOe0ouOAiueuoeeQhuOAi+WQjui/lOWbnlxyXG4gKiAgICB7a2V5MTona2V5MScsa2V5Mjona2V5Micsa2V5Mzona2V5Myd9XHJcbiAqIEBwYXJhbSB7TWFwPFN0cmluZyxPYmplY3Q+fSBicmVhZGNydW1iTWFwICDoj5zljZXpnaLljIXlsZFcclxuICogQHBhcmFtIHsgU3RyaW5nIH0gc2VhcmNoVGV4dCAg5pCc57Si5YaF5a65XHJcbiAqIEBwYXJhbSB7T2JqZWN0fSBmaWVsZE9wdGlvbiAg5YWz6ZSu5a2X5q615ZCN56ew77yM57y655yBeyBrZXlGaWVsZDogJ2tleScsIHRpdGxlRmllbGQ6ICd0aXRsZScscGF0aHNGaWVsZDoncGF0aHMnIH1cclxuICogQHJldHVybnMge01hcDxTdHJpbmcsU3RyaW5nPn1cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRFZmZlY3RpdmVOb2RlS2V5cyhcclxuICBicmVhZGNydW1iTWFwLFxyXG4gIHNlYXJjaFRleHQsXHJcbiAgZmllbGRPcHRpb24gPSB7IGtleUZpZWxkOiBcImtleVwiLCB0aXRsZUZpZWxkOiBcInRpdGxlXCIsIHBhdGhzRmllbGQ6IFwicGF0aHNcIiB9XHJcbikge1xyXG4gIGNvbnN0IGtleXMgPSB7fTtcclxuICBPYmplY3Qua2V5cyhicmVhZGNydW1iTWFwKS5mb3JFYWNoKChrZXksIGkpID0+IHtcclxuICAgIGNvbnN0IGl0ZW0gPSBicmVhZGNydW1iTWFwW2tleV07XHJcbiAgICBpZiAoU3RyaW5nKGl0ZW0uZ2V0KGZpZWxkT3B0aW9uLnRpdGxlRmllbGQpKS5pbmRleE9mKHNlYXJjaFRleHQpICE9IC0xKSB7XHJcbiAgICAgIGNvbnN0IHBhdGhzID0gaXRlbS5nZXQoZmllbGRPcHRpb24ucGF0aHNGaWVsZCk7XHJcbiAgICAgIHBhdGhzLm1hcCgodikgPT4ge1xyXG4gICAgICAgIGtleXNbdl0gPSB2O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9KTtcclxuICByZXR1cm4ga2V5cztcclxufVxyXG5cclxuLyoqXHJcbiAqIOiOt+WPlui/h+a7pOWQjuaYvuekuueahOiPnOWNleaVsOaNrlxyXG4gKiBAcGFyYW0ge09iamVjdFtdfSBtZW51c0RhdGFzICDmoJHlvaLnu5PmnoTmlbDmja5cclxuICogQHBhcmFtIHtTdHJpbmdbXX0ga2V5cyAg5pyJ5pWI55qE6I+c5Y2V6IqC54K5XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSBzZWFyY2hUZXh0ICDmkJzntKLlhoXlrrnvvIzpnZ7lv4XloatcclxuICogQHBhcmFtIHtPYmplY3R9IGZpZWxkT3B0aW9uICDlhbPplK7lrZfmrrXlkI3np7DvvIznvLrnnIF7IGtleUZpZWxkOiAna2V5JywgdGl0bGVGaWVsZDogJ3RpdGxlJyxwYXRoc0ZpZWxkOidwYXRocycgfVxyXG4gKiBAcGFyYW0ge1N0cmluZ30gY29sb3IgICDmkJzntKLlhoXlrrnph43ngrnpopzoibLmoIfor4bvvIzpnZ7lv4XloavvvIznvLrnnIFyZWRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRFZmZlY3RpdmVNZW51RGF0YXMoXHJcbiAgbWVudXNEYXRhcyxcclxuICBrZXlzLFxyXG4gIHNlYXJjaFRleHQsXHJcbiAgZmllbGRPcHRpb24gPSB7IGtleUZpZWxkOiBcImtleVwiLCB0aXRsZUZpZWxkOiBcInRpdGxlXCIsIHBhdGhzRmllbGQ6IFwicGF0aHNcIiB9LFxyXG4gIGNvbG9yID0gXCJyZWRcIlxyXG4pIHtcclxuICBjb25zdCBuZXdNZW51c0RhdGFzID0gW107XHJcbiAgY29uc3QgZmxhdHRlbk1lbnVEYXRhID0gKGRhdGEpID0+IHtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZGF0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBpdGVtID0gZGF0YVtpXTtcclxuICAgICAgY29uc3QgaXNFeGlzdCA9IGtleXNbaXRlbS5nZXQoZmllbGRPcHRpb24ua2V5RmllbGQpXSAhPSBudWxsO1xyXG4gICAgICBjb25zdCB0aXRsZSA9IFN0cmluZyhpdGVtLmdldChmaWVsZE9wdGlvbi50aXRsZUZpZWxkKSk7XHJcbiAgICAgIGlmICghaXNFeGlzdCkge1xyXG4gICAgICAgIGRhdGEuc3BsaWNlKGksIDEpOyAvLyDlsIbkvb/lkI7pnaLnmoTlhYPntKDkvp3mrKHliY3np7vvvIzmlbDnu4Tplb/luqblh48xXHJcbiAgICAgICAgaS0tOyAvLyDlpoLmnpzkuI3lh4/vvIzlsIbmvI/mjonkuIDkuKrlhYPntKBcclxuICAgICAgfSBlbHNlIGlmIChzZWFyY2hUZXh0ICYmIHRpdGxlLmluZGV4T2Yoc2VhcmNoVGV4dCkgIT0gLTEpIHtcclxuICAgICAgICBjb25zdCBzdGFydEluZGV4ID0gdGl0bGUuaW5kZXhPZihzZWFyY2hUZXh0KTtcclxuICAgICAgICBjb25zdCBlbmRJbmRleCA9IHN0YXJ0SW5kZXggKyBzZWFyY2hUZXh0Lmxlbmd0aDtcclxuICAgICAgICBjb25zdCBiZWZvcmUgPSB0aXRsZS5zdWJzdHJpbmcoMCwgc3RhcnRJbmRleCk7XHJcbiAgICAgICAgY29uc3QgYWZ0ZXIgPSB0aXRsZS5zdWJzdHJpbmcoZW5kSW5kZXgsIHRpdGxlLmxlbmd0aCk7XHJcbiAgICAgICAgY29uc3QgZm9udDogUmVhY3QuUmVhY3RFbGVtZW50ID0gKFxyXG4gICAgICAgICAgPHNwYW4gc3R5bGU9e3sgY29sb3IgfX0+e3NlYXJjaFRleHR9PC9zcGFuPlxyXG4gICAgICAgICk7XHJcbiAgICAgICAgaXRlbS5zZXQoXHJcbiAgICAgICAgICBmaWVsZE9wdGlvbi50aXRsZUZpZWxkLFxyXG4gICAgICAgICAgPHNwYW4gdGl0bGU9e3RpdGxlfT5cclxuICAgICAgICAgICAge2JlZm9yZX1cclxuICAgICAgICAgICAge2ZvbnR9XHJcbiAgICAgICAgICAgIHthZnRlcn1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChpc0V4aXN0ICYmIGl0ZW0uY2hpbGROb2Rlcykge1xyXG4gICAgICAgIGZsYXR0ZW5NZW51RGF0YShpdGVtLmNoaWxkTm9kZXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuICBmbGF0dGVuTWVudURhdGEobWVudXNEYXRhcyk7XHJcbiAgcmV0dXJuIG1lbnVzRGF0YXM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDmkJzntKLoj5zljZXmlbDmja7vvIznp7vpmaTkuI3nrKblkIjnmoToj5zljZXlkozkuI3pnIDopoHnmoTnm67lvZXnu5PmnoTvvIznvLrnnIHnrKblkIjlhoXlrrnmoIfnuqJcclxuICogQHBhcmFtIHtPYmplY3R9IHRoaXogIG1lbnXoj5zljZXlr7nosaHvvIznvJPlrZjml7blgJnlrZjlgqjmlbDmja7kvb/nlKhcclxuICogQHBhcmFtIHtTdHJpbmd9IHNlYXJjaFRleHQgIOaQnOe0ouWGheWuuVxyXG4gKiBAcGFyYW0ge09iamVjdH0gZmllbGRPcHRpb24gIOWFs+mUruWtl+auteWQjeensO+8jOe8uuecgXsga2V5RmllbGQ6ICdrZXknLCB0aXRsZUZpZWxkOiAndGl0bGUnLHBhdGhzRmllbGQ6J3BhdGhzJyB9XHJcbiAqIEBwYXJhbSB7U3RyaW5nfSBjb2xvciAgIOaQnOe0ouWGheWuuemHjeeCueminOiJsuagh+ivhu+8jOmdnuW/heWhq++8jOe8uuecgXJlZCzlvZNmYWxzZeaXtuWAme+8jOS4lOS4jemHjeeCueagh+azqOminOiJslxyXG4gKiBAcGFyYW0ge1N0cmluZ30gY2FjaGVrZXkgICDnvJPlrZjmlbDmja7lrZjlgqhrZXnvvIznvLrnnIFuc2NfbWVudV9jYWNoZVxyXG4gKiBAcmV0dXJucyB7Kn0ge29wZW5LZXlzOnt9LHRyZWVEYXRhczpbXX1cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWFyY2hNZW51RGF0YXMoXHJcbiAgdGhpeixcclxuICBzZWFyY2hUZXh0LFxyXG4gIGZpZWxkT3B0aW9uID0geyBrZXlGaWVsZDogXCJrZXlcIiwgdGl0bGVGaWVsZDogXCJ0aXRsZVwiLCBwYXRoc0ZpZWxkOiBcInBhdGhzXCIgfSxcclxuICBjb2xvciA9IFwicmVkXCIsXHJcbiAgY2FjaGVrZXkgPSBcIm5zY19tZW51X2NhY2hlXCJcclxuKSB7XHJcbiAgbGV0IGJyZWFkY3J1bWJNYXAgPSB7fSxcclxuICAgIG1lbnVzRGF0YXMgPSB0aGl6LmdldE1vZGVsKCkuZ2V0Q2xvbmVNb2RlbERhdGEoKTtcclxuICBpZiAodGhpeikge1xyXG4gICAgaWYgKCF0aGl6W2NhY2hla2V5XSkgdGhpeltjYWNoZWtleV0gPSB7fTtcclxuICAgIGlmICghaXNFcXVhbChtZW51c0RhdGFzLCB0aGl6W2NhY2hla2V5XS50cmVlRGF0YXMpKSB7XHJcbiAgICAgIHRoaXpbY2FjaGVrZXldLmJyZWFkY3J1bWJNYXAgPSBicmVhZGNydW1iTWFwID0gZ2V0QnJlYWRjcnVtYk1hcChcclxuICAgICAgICBtZW51c0RhdGFzLFxyXG4gICAgICAgIGZpZWxkT3B0aW9uXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXpbY2FjaGVrZXldLnRyZWVEYXRhcyA9IG1lbnVzRGF0YXM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBicmVhZGNydW1iTWFwID0gdGhpeltjYWNoZWtleV0uYnJlYWRjcnVtYk1hcDtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgYnJlYWRjcnVtYk1hcCA9IGdldEJyZWFkY3J1bWJNYXAobWVudXNEYXRhcywgZmllbGRPcHRpb24pO1xyXG4gIH1cclxuICBjb25zdCBrZXlzID0gZ2V0RWZmZWN0aXZlTm9kZUtleXMoYnJlYWRjcnVtYk1hcCwgc2VhcmNoVGV4dCwgZmllbGRPcHRpb24pO1xyXG4gIGNvbnN0IGRhdGFzID0gZ2V0RWZmZWN0aXZlTWVudURhdGFzKFxyXG4gICAgbWVudXNEYXRhcyxcclxuICAgIGtleXMsXHJcbiAgICBjb2xvciA/IHNlYXJjaFRleHQgOiBudWxsLFxyXG4gICAgZmllbGRPcHRpb24sXHJcbiAgICBjb2xvclxyXG4gICk7XHJcbiAgbGV0IG9wZW5LZXlzID0gW107XHJcbiAgT2JqZWN0LmtleXMoa2V5cykuZm9yRWFjaCgoa2V5LCBpKSA9PiB7XHJcbiAgICBvcGVuS2V5cy5wdXNoKGtleSk7XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHtcclxuICAgIG9wZW5LZXlzOiBvcGVuS2V5cyxcclxuICAgIHRyZWVEYXRhczogZGF0YXMsXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGdldEJyZWFkY3J1bWJNYXAsXHJcbiAgZ2V0RWZmZWN0aXZlTm9kZUtleXMsXHJcbiAgZ2V0RWZmZWN0aXZlTWVudURhdGFzLFxyXG4gIGdldFNlYXJjaE1lbnVEYXRhcyxcclxufTtcclxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nsc-react-component",
3
- "version": "1.4.5",
3
+ "version": "1.4.8",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {