nsc-react-component 1.3.16 → 1.3.19

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/form/Form.js CHANGED
@@ -334,10 +334,9 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
334
334
  centered: true
335
335
  }, newModalProps);
336
336
  return /*#__PURE__*/React.createElement(_Modal, _extends({
337
- onCancel: this.hideForm.bind(this)
338
- }, newModalProps, {
337
+ onCancel: this.hideForm.bind(this),
339
338
  visible: formVisible
340
- }), /*#__PURE__*/React.createElement(_Form, _extends({
339
+ }, newModalProps), /*#__PURE__*/React.createElement(_Form, _extends({
341
340
  ref: this.formRef
342
341
  }, layout, props, {
343
342
  preserve: false
@@ -345,10 +344,9 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
345
344
  } else if (showModel && showModel == "drawer") {
346
345
  var newDrawerProps = omit(drawerProps, ["visible"]);
347
346
  return /*#__PURE__*/React.createElement(_Drawer, _extends({
348
- onClose: this.hideForm.bind(this)
349
- }, newDrawerProps, {
347
+ onClose: this.hideForm.bind(this),
350
348
  visible: formVisible
351
- }), /*#__PURE__*/React.createElement(_Form, _extends({
349
+ }, newDrawerProps), /*#__PURE__*/React.createElement(_Form, _extends({
352
350
  ref: this.formRef
353
351
  }, layout, props), newChildren));
354
352
  } else {
@@ -387,7 +385,7 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
387
385
  };
388
386
 
389
387
  if ((modalProps === null || modalProps === void 0 ? void 0 : modalProps.visible) !== null || (modalProps === null || modalProps === void 0 ? void 0 : modalProps.visible) !== undefined) {
390
- newState.formVisibale = modalProps === null || modalProps === void 0 ? void 0 : modalProps.visible;
388
+ newState.formVisible = modalProps === null || modalProps === void 0 ? void 0 : modalProps.visible;
391
389
  }
392
390
 
393
391
  return newState;
@@ -399,7 +397,7 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
399
397
  };
400
398
 
401
399
  if ((drawerProps === null || drawerProps === void 0 ? void 0 : drawerProps.visible) !== null || (drawerProps === null || drawerProps === void 0 ? void 0 : drawerProps.visible) !== undefined) {
402
- _newState.formVisibale = drawerProps === null || drawerProps === void 0 ? void 0 : drawerProps.visible;
400
+ _newState.formVisible = drawerProps === null || drawerProps === void 0 ? void 0 : drawerProps.visible;
403
401
  }
404
402
 
405
403
  return _newState;
@@ -414,4 +412,4 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
414
412
  }(PureComponent);
415
413
 
416
414
  export default NscForm;
417
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2Zvcm0vRm9ybS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwicmVxdWVzdCIsIm9taXQiLCJOc2NGb3JtIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJmb3JtVmlzaWJsZSIsImZvcm1Nb2RhbFByb3BzIiwiZm9ybURyYXdlclByb3BzIiwibmFtZSIsImZvcm1SZWYiLCJjdXJyZW50IiwiZ2V0RmllbGRFcnJvciIsImdldEZpZWxkSW5zdGFuY2UiLCJnZXRGaWVsZHNFcnJvciIsImdldEZpZWxkc1ZhbHVlIiwiZ2V0RmllbGRWYWx1ZSIsImlzRmllbGRzVG91Y2hlZCIsImlzRmllbGRUb3VjaGVkIiwiaXNGaWVsZFZhbGlkYXRpbmciLCJyZXNldEZpZWxkcyIsIm9wdGlvbnMiLCJzY3JvbGxUb0ZpZWxkIiwiZmlsZHMiLCJzZXRGaWVsZHMiLCJ2YWx1ZXMiLCJzZXRGaWVsZHNWYWx1ZSIsInN1Ym1pdCIsInVybCIsImNhbGxiYWNrIiwibXNnIiwicHJvcHNVcmwiLCJlbmNyeXB0RmllbGRzIiwiZW5jcnlwdFByb3BwcyIsIkVycm9yIiwibWV0aG9kIiwicmVxdWVzdFVybCIsInJlcXVlc3REYXRhIiwicmVxdWVzdEVuY3J5cHQiLCJyZXF1ZXN0UGFyYW0iLCJkYXRhIiwicGFyYW1zIiwidG9Mb3dlckNhc2UiLCJ0aGVuIiwicmVzIiwiY29kZSIsInN1Y2Nlc3MiLCJlcnJvciIsImNhdGNoIiwiY29uc29sZSIsImxvZyIsInZhbGlkYXRlRmllbGRzIiwicmVzZXRWYWx1ZSIsInNldFN0YXRlIiwidmFsdWUiLCJpdGVtIiwiaW5kZXgiLCJfdGhpcyIsImtleSIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsImNsb25lRWxlbWVudCIsImUiLCJuZXdDaGlsZHJlbiIsInNob3dNb2RlbCIsImRyYXdlclByb3BzIiwibW9kYWxQcm9wcyIsInN0YXRlIiwibGF5b3V0IiwibGFiZWxDb2wiLCJzcGFuIiwid3JhcHBlckNvbCIsIm5ld01vZGFsUHJvcHMiLCJjZW50ZXJlZCIsImhpZGVGb3JtIiwiYmluZCIsIm5ld0RyYXdlclByb3BzIiwicmVuZGVyUGFuZWwiLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJKU09OIiwic3RyaW5naWZ5IiwibmV3U3RhdGUiLCJ2aXNpYmxlIiwidW5kZWZpbmVkIiwiZm9ybVZpc2liYWxlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQVdBLFNBQVNDLE9BQVQsUUFBd0IsdUJBQXhCO0FBQ0EsT0FBT0MsSUFBUCxNQUFpQixTQUFqQjs7SUFVTUMsTzs7Ozs7QUFRSixtQkFBWUMsS0FBWixFQUFtQjtBQUFBOztBQUFBOztBQUNqQiwrQkFBTUEsS0FBTjs7QUFEaUIsNEVBUFRMLEtBQUssQ0FBQ00sU0FBTixFQU9TOztBQUFBLDZEQU5YO0FBQ05DLE1BQUFBLFdBQVcsRUFBRSxLQURQO0FBRU5DLE1BQUFBLGNBQWMsRUFBRSxFQUZWO0FBR05DLE1BQUFBLGVBQWUsRUFBRTtBQUhYLEtBTVc7O0FBQUE7QUFFbEI7Ozs7V0FpQ0Q7QUFDQSwyQkFBY0MsSUFBZCxFQUFvQjtBQUFBOztBQUNsQixzQ0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDBEQUFPLHNCQUFzQkMsYUFBdEIsQ0FBb0NILElBQXBDLENBQVA7QUFDRCxLLENBRUQ7Ozs7V0FDQSwwQkFBaUJBLElBQWpCLEVBQXVCO0FBQUE7O0FBQ3JCLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCRSxnQkFBdEIsQ0FBdUNKLElBQXZDLENBQVA7QUFDRCxLLENBRUQ7Ozs7V0FDQSwwQkFBaUI7QUFBQTs7QUFDZix1Q0FBTyxLQUFLQyxPQUFMLENB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QixhQUF3QkEsVUFBeEIsdUJBQXdCQSxVQUFVLENBQUVpQixPQUFwQztBQUNEOztBQUNELGlCQUFPRCxRQUFQO0FBQ0Q7QUFDRixPQVZELE1BVU8sSUFBSWxCLFNBQVMsSUFBSSxRQUFqQixFQUEyQjtBQUNoQyxZQUFJZ0IsSUFBSSxDQUFDQyxTQUFMLENBQWU3RSxlQUFmLE1BQW9DNEUsSUFBSSxDQUFDQyxTQUFMLENBQWVoQixXQUFmLENBQXhDLEVBQXFFO0FBQ25FLGNBQUlpQixTQUFRLEdBQUc7QUFDYjlFLFlBQUFBLGVBQWUsRUFBRTZEO0FBREosV0FBZjs7QUFHQSxjQUNFLENBQUFBLFdBQVcsU0FBWCxJQUFBQSxXQUFXLFdBQVgsWUFBQUEsV0FBVyxDQUFFa0IsT0FBYixNQUF5QixJQUF6QixJQUNBLENBQUFsQixXQUFXLFNBQVgsSUFBQUEsV0FBVyxXQUFYLFlBQUFBLFdBQVcsQ0FBRWtCLE9BQWIsTUFBeUJDLFNBRjNCLEVBR0U7QUFDQUYsWUFBQUEsU0FBUSxDQUFDRyxZQUFULEdBQXdCcEIsV0FBeEIsYUFBd0JBLFdBQXhCLHVCQUF3QkEsV0FBVyxDQUFFa0IsT0FBckM7QUFDRDs7QUFFRCxpQkFBT0QsU0FBUDtBQUNEO0FBQ0Y7O0FBQ0QsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUF6Q21CdEYsYTs7QUE4UXRCLGVBQWVHLE9BQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOuihqOWNlee7hOS7tlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMDkgMDk6MTg6MzRcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIzIDE1OjIzOjU0XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQge1xyXG4gIEZvcm0sXHJcbiAgRm9ybVByb3BzLFxyXG4gIE1vZGFsLFxyXG4gIERyYXdlcixcclxuICBNb2RhbFByb3BzLFxyXG4gIERyYXdlclByb3BzLFxyXG4gIG1lc3NhZ2UsXHJcbn0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IHsgRm9ybUluc3RhbmNlIH0gZnJvbSBcImFudGQvbGliL2Zvcm1cIjtcclxuaW1wb3J0IHsgcmVxdWVzdCB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuXHJcbmludGVyZmFjZSBJRm9ybVByb3BzIGV4dGVuZHMgRm9ybVByb3BzIHtcclxuICBzaG93TW9kZWw/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIG1vZGFsUHJvcHM/OiBNb2RhbFByb3BzO1xyXG4gIGRyYXdlclByb3BzPzogRHJhd2VyUHJvcHM7XHJcbiAgdXJsPzogc3RyaW5nO1xyXG4gIGVuY3J5cHRGaWVsZHM/OiBBcnJheTxTdHJpbmc+O1xyXG59XHJcblxyXG5jbGFzcyBOc2NGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJRm9ybVByb3BzPiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxGb3JtSW5zdGFuY2U+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICBmb3JtTW9kYWxQcm9wczoge30sXHJcbiAgICBmb3JtRHJhd2VyUHJvcHM6IHt9LFxyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKG5leHRQcm9wcywgcHJldlN0YXRlKSB7XHJcbiAgICBjb25zdCB7IG1vZGFsUHJvcHMsIGRyYXdlclByb3BzLCBzaG93TW9kZWwgfSA9IG5leHRQcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybU1vZGFsUHJvcHMsIGZvcm1EcmF3ZXJQcm9wcyB9ID0gcHJldlN0YXRlO1xyXG4gICAgaWYgKHNob3dNb2RlbCA9PSBcIm1vZGFsXCIpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGZvcm1Nb2RhbFByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkobW9kYWxQcm9wcykpIHtcclxuICAgICAgICBsZXQgbmV3U3RhdGUgPSB7XHJcbiAgICAgICAgICBmb3JtRHJhd2VyUHJvcHM6IG1vZGFsUHJvcHMsXHJcbiAgICAgICAgfSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKG1vZGFsUHJvcHM/LnZpc2libGUgIT09IG51bGwgfHwgbW9kYWxQcm9wcz8udmlzaWJsZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBuZXdTdGF0ZS5mb3JtVmlzaWJhbGUgPSBtb2RhbFByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3U3RhdGU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGZvcm1EcmF3ZXJQcm9wcykgIT09IEpTT04uc3RyaW5naWZ5KGRyYXdlclByb3BzKSkge1xyXG4gICAgICAgIGxldCBuZXdTdGF0ZSA9IHtcclxuICAgICAgICAgIGZvcm1EcmF3ZXJQcm9wczogZHJhd2VyUHJvcHMsXHJcbiAgICAgICAgfSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZHJhd2VyUHJvcHM/LnZpc2libGUgIT09IG51bGwgfHxcclxuICAgICAgICAgIGRyYXdlclByb3BzPy52aXNpYmxlICE9PSB1bmRlZmluZWRcclxuICAgICAgICApIHtcclxuICAgICAgICAgIG5ld1N0YXRlLmZvcm1WaXNpYmFsZSA9IGRyYXdlclByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615ZCN55qE6ZSZ6K+v5L+h5oGvXHJcbiAgZ2V0RmllbGRFcnJvcihuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkRXJyb3IobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWunuS+i1xyXG4gIGdldEZpZWxkSW5zdGFuY2UobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZEluc3RhbmNlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5bkuIDnu4TlrZfmrrXlkI3lr7nlupTnmoTplJnor6/kv6Hmga/vvIzov5Tlm57kuLrmlbDnu4TlvaLlvI9cclxuICBnZXRGaWVsZHNFcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5LiA57uE5a2X5q615ZCN5a+55bqU55qE5YC877yM5Lya5oyJ54Wn5a+55bqU57uT5p6E6L+U5ZueXHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWQjeeahOWAvFxyXG4gIGdldEZpZWxkVmFsdWUobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZFZhbHVlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkc1RvdWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRzVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6Xlr7nlupTlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkVG91Y2hlZChuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRUb3VjaGVkKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbmraPlnKjmoKHpqoxcclxuICBpc0ZpZWxkVmFsaWRhdGluZyhuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRWYWxpZGF0aW5nKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ph43nva7kuIDnu4TlrZfmrrXliLBcclxuICByZXNldEZpZWxkcygpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNldEZpZWxkcyhmaWxkcykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkcyhmaWxkcyk7XHJcbiAgfVxyXG5cclxuICBzZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnN1Ym1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoXHJcbiAgICB1cmw/OiBzdHJpbmcsXHJcbiAgICBvcHRpb25zPzogYW55LFxyXG4gICAgY2FsbGJhY2s/OiAocmVzPzogYW55KSA9PiB2b2lkLFxyXG4gICAgbXNnPzogYm9vbGVhblxyXG4gICkge1xyXG4gICAgY29uc3QgeyB1cmw6IHByb3BzVXJsLCBlbmNyeXB0RmllbGRzOiBlbmNyeXB0UHJvcHBzID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIXVybCAmJiAhcHJvcHNVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwi5rKh5pyJ5LiK5Lyg55qEdXJsIVwiKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgbWV0aG9kID0gXCJwb3N0XCIgfSA9IG9wdGlvbnM7XHJcbiAgICBsZXQgcmVxdWVzdFVybCA9IHVybCA/IHVybCA6IHByb3BzVXJsO1xyXG4gICAgbGV0IHJlcXVlc3REYXRhID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQuZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCByZXF1ZXN0RW5jcnlwdCA9IGVuY3J5cHRQcm9wcHM7XHJcbiAgICBsZXQgcmVxdWVzdFBhcmFtID0geyBtZXRob2Q6IG1ldGhvZCwgZGF0YTogcmVxdWVzdERhdGEgfSBhcyB7IGRhdGE6IGFueSB9O1xyXG4gICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgY29uc3QgeyBkYXRhLCBlbmNyeXB0RmllbGRzLCAuLi5wYXJhbXMgfSA9IG9wdGlvbnM7XHJcbiAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMgfTtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICBkZWxldGUgcmVxdWVzdFBhcmFtLmRhdGE7XHJcbiAgICAgICAgaWYgKG1ldGhvZC50b0xvd2VyQ2FzZSgpID09IFwiZ2V0XCIpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMsIHBhcmFtczogZGF0YSB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zLCBkYXRhOiBkYXRhIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbmNyeXB0RmllbGRzKSB7XHJcbiAgICAgICAgcmVxdWVzdEVuY3J5cHQgPSBlbmNyeXB0RmllbGRzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVxdWVzdChyZXF1ZXN0VXJsLCB7XHJcbiAgICAgIC4uLnJlcXVlc3RQYXJhbSxcclxuICAgICAgZW5jcnlwdEZpZWxkczogcmVxdWVzdEVuY3J5cHQsXHJcbiAgICB9KVxyXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzOiBhbnkpIHtcclxuICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICBpZiAobXNnKSB7XHJcbiAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuaPkOS6pOaIkOWKn1wiKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UuZXJyb3IoXCLmj5DkuqTlpLHotKVcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKHJlcyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlRmllbGRzKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudC52YWxpZGF0ZUZpZWxkcyhuYW1lKTtcclxuICB9XHJcblxyXG4gIGhpZGVGb3JtKHJlc2V0VmFsdWUgPSB0cnVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICB7XHJcbiAgICAgICAgZm9ybVZpc2libGU6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCByZXNldFZhbHVlID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAge1xyXG4gICAgICAgIGZvcm1WaXNpYmxlOiB0cnVlLFxyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2V0RmllbGRzVmFsdWUodmFsdWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAocmVzZXRWYWx1ZSkgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgY2xvbmVFbGVtZW50KGl0ZW0sIGluZGV4ID0gMCkge1xyXG4gICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgIGlmICh0eXBlb2YgaXRlbSA9PSBcInN0cmluZ1wiKSByZXR1cm4gaXRlbTtcclxuICAgIGxldCBwcm9wcyA9IHt9IGFzIHsga2V5OiBudW1iZXI7IGNoaWxkcmVuOiBhbnkgfTtcclxuICAgIHByb3BzLmtleSA9IGluZGV4O1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKGl0ZW0ucHJvcHMgJiYgaXRlbS5wcm9wcy5jaGlsZHJlbikge1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW0ucHJvcHMuY2hpbGRyZW4pKSB7XHJcbiAgICAgICAgICBwcm9wcy5jaGlsZHJlbiA9IFJlYWN0LkNoaWxkcmVuLm1hcChcclxuICAgICAgICAgICAgaXRlbS5wcm9wcy5jaGlsZHJlbixcclxuICAgICAgICAgICAgZnVuY3Rpb24gKGNoaWxkLCBpbmRleCkge1xyXG4gICAgICAgICAgICAgIHJldHVybiBfdGhpcy5jbG9uZUVsZW1lbnQoY2hpbGQsIGluZGV4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcHJvcHMuY2hpbGRyZW4gPSB0aGlzLmNsb25lRWxlbWVudChpdGVtLnByb3BzLmNoaWxkcmVuLCAwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChpdGVtLCBwcm9wcyk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXJQYW5lbChuZXdDaGlsZHJlbiwgcHJvcHMpIHtcclxuICAgIGNvbnN0IHsgc2hvd01vZGVsLCBkcmF3ZXJQcm9wcywgbW9kYWxQcm9wcyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybVZpc2libGUgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBsYXlvdXQgPSB7XHJcbiAgICAgIGxhYmVsQ29sOiB7IHNwYW46IDQgfSxcclxuICAgICAgd3JhcHBlckNvbDogeyBzcGFuOiAyMCB9LFxyXG4gICAgfTtcclxuICAgIGlmIChzaG93TW9kZWwgJiYgc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICBsZXQgbmV3TW9kYWxQcm9wcyA9IG9taXQobW9kYWxQcm9wcywgW1widmlzaWJsZVwiXSk7XHJcbiAgICAgIG5ld01vZGFsUHJvcHMgPSB7IGNlbnRlcmVkOiB0cnVlLCAuLi5uZXdNb2RhbFByb3BzIH07XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPE1vZGFsXHJcbiAgICAgICAgICBvbkNhbmNlbD17dGhpcy5oaWRlRm9ybS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgey4uLm5ld01vZGFsUHJvcHN9XHJcbiAgICAgICAgICB2aXNpYmxlPXtmb3JtVmlzaWJsZX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8Rm9ybSByZWY9e3RoaXMuZm9ybVJlZn0gey4uLmxheW91dH0gey4uLnByb3BzfSBwcmVzZXJ2ZT17ZmFsc2V9PlxyXG4gICAgICAgICAgICB7bmV3Q2hpbGRyZW59XHJcbiAgICAgICAgICA8L0Zvcm0+XHJcbiAgICAgICAgPC9Nb2RhbD5cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsICYmIHNob3dNb2RlbCA9PSBcImRyYXdlclwiKSB7XHJcbiAgICAgIGxldCBuZXdEcmF3ZXJQcm9wcyA9IG9taXQoZHJhd2VyUHJvcHMsIFtcInZpc2libGVcIl0pO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxEcmF3ZXJcclxuICAgICAgICAgIG9uQ2xvc2U9e3RoaXMuaGlkZUZvcm0uYmluZCh0aGlzKX1cclxuICAgICAgICAgIHsuLi5uZXdEcmF3ZXJQcm9wc31cclxuICAgICAgICAgIHZpc2libGU9e2Zvcm1WaXNpYmxlfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxGb3JtIHJlZj17dGhpcy5mb3JtUmVmfSB7Li4ubGF5b3V0fSB7Li4ucHJvcHN9PlxyXG4gICAgICAgICAgICB7bmV3Q2hpbGRyZW59XHJcbiAgICAgICAgICA8L0Zvcm0+XHJcbiAgICAgICAgPC9EcmF3ZXI+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxGb3JtIHJlZj17dGhpcy5mb3JtUmVmfSB7Li4ubGF5b3V0fSB7Li4ucHJvcHN9PlxyXG4gICAgICAgICAge25ld0NoaWxkcmVufVxyXG4gICAgICAgIDwvRm9ybT5cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgX3RoaXMgPSB0aGlzLFxyXG4gICAgICB7IGNoaWxkcmVuLCBzaG93TW9kZWwgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBuZXdDaGlsZHJlbiA9IFJlYWN0LkNoaWxkcmVuLm1hcChjaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkLCBpbmRleCkge1xyXG4gICAgICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXHJcbiAgICAgIFwiZm9ybVwiLFxyXG4gICAgICBcInNob3dNb2RlbFwiLFxyXG4gICAgICBcIm1vZGFsUHJvcHNcIixcclxuICAgICAgXCJkcmF3ZXJQcm9wc1wiLFxyXG4gICAgICBcInVybFwiLFxyXG4gICAgICBcImVuY3J5cHRGaWVsZHNcIixcclxuICAgIF0pO1xyXG5cclxuICAgIHJldHVybiA8Pnt0aGlzLnJlbmRlclBhbmVsKG5ld0NoaWxkcmVuLCBwcm9wcyl9PC8+O1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBOc2NGb3JtO1xyXG4iXX0=
415
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2Zvcm0vRm9ybS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwicmVxdWVzdCIsIm9taXQiLCJOc2NGb3JtIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJmb3JtVmlzaWJsZSIsImZvcm1Nb2RhbFByb3BzIiwiZm9ybURyYXdlclByb3BzIiwibmFtZSIsImZvcm1SZWYiLCJjdXJyZW50IiwiZ2V0RmllbGRFcnJvciIsImdldEZpZWxkSW5zdGFuY2UiLCJnZXRGaWVsZHNFcnJvciIsImdldEZpZWxkc1ZhbHVlIiwiZ2V0RmllbGRWYWx1ZSIsImlzRmllbGRzVG91Y2hlZCIsImlzRmllbGRUb3VjaGVkIiwiaXNGaWVsZFZhbGlkYXRpbmciLCJyZXNldEZpZWxkcyIsIm9wdGlvbnMiLCJzY3JvbGxUb0ZpZWxkIiwiZmlsZHMiLCJzZXRGaWVsZHMiLCJ2YWx1ZXMiLCJzZXRGaWVsZHNWYWx1ZSIsInN1Ym1pdCIsInVybCIsImNhbGxiYWNrIiwibXNnIiwicHJvcHNVcmwiLCJlbmNyeXB0RmllbGRzIiwiZW5jcnlwdFByb3BwcyIsIkVycm9yIiwibWV0aG9kIiwicmVxdWVzdFVybCIsInJlcXVlc3REYXRhIiwicmVxdWVzdEVuY3J5cHQiLCJyZXF1ZXN0UGFyYW0iLCJkYXRhIiwicGFyYW1zIiwidG9Mb3dlckNhc2UiLCJ0aGVuIiwicmVzIiwiY29kZSIsInN1Y2Nlc3MiLCJlcnJvciIsImNhdGNoIiwiY29uc29sZSIsImxvZyIsInZhbGlkYXRlRmllbGRzIiwicmVzZXRWYWx1ZSIsInNldFN0YXRlIiwidmFsdWUiLCJpdGVtIiwiaW5kZXgiLCJfdGhpcyIsImtleSIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsImNsb25lRWxlbWVudCIsImUiLCJuZXdDaGlsZHJlbiIsInNob3dNb2RlbCIsImRyYXdlclByb3BzIiwibW9kYWxQcm9wcyIsInN0YXRlIiwibGF5b3V0IiwibGFiZWxDb2wiLCJzcGFuIiwid3JhcHBlckNvbCIsIm5ld01vZGFsUHJvcHMiLCJjZW50ZXJlZCIsImhpZGVGb3JtIiwiYmluZCIsIm5ld0RyYXdlclByb3BzIiwicmVuZGVyUGFuZWwiLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJKU09OIiwic3RyaW5naWZ5IiwibmV3U3RhdGUiLCJ2aXNpYmxlIiwidW5kZWZpbmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQVdBLFNBQVNDLE9BQVQsUUFBd0IsdUJBQXhCO0FBQ0EsT0FBT0MsSUFBUCxNQUFpQixTQUFqQjs7SUFVTUMsTzs7Ozs7QUFRSixtQkFBWUMsS0FBWixFQUFtQjtBQUFBOztBQUFBOztBQUNqQiwrQkFBTUEsS0FBTjs7QUFEaUIsNEVBUFRMLEtBQUssQ0FBQ00sU0FBTixFQU9TOztBQUFBLDZEQU5YO0FBQ05DLE1BQUFBLFdBQVcsRUFBRSxLQURQO0FBRU5DLE1BQUFBLGNBQWMsRUFBRSxFQUZWO0FBR05DLE1BQUFBLGVBQWUsRUFBRTtBQUhYLEtBTVc7O0FBQUE7QUFFbEI7Ozs7V0FpQ0Q7QUFDQSwyQkFBY0MsSUFBZCxFQUFvQjtBQUFBOztBQUNsQixzQ0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDBEQUFPLHNCQUFzQkMsYUFBdEIsQ0FBb0NILElBQXBDLENBQVA7QUFDRCxLLENBRUQ7Ozs7V0FDQSwwQkFBaUJBLElBQWpCLEVBQXVCO0FBQUE7O0FBQ3JCLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCRSxnQkFBdEIsQ0FBdUNKLElBQXZDLENBQVA7QUFDRCxLLENBRUQ7Ozs7V0FDQSwwQkFBaUI7QUFBQTs7QUFDZix1Q0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQkcsY0FBdEIsRUFBUDtBQUNELEssQ0FFRDs7OztXQUNBLDBCQUFpQjtBQUFBOztBQUNmLHVDQUFPLEtBQUtKLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCSSxjQUF0QixFQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsdUJBQWNOLElBQWQsRUFBb0I7QUFBQTs7QUFDbEIsdUNBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwyREFBTyx1QkFBc0JLLGFBQXRCLENBQW9DUCxJQUFwQyxDQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsMkJBQWtCO0FBQUE7O0FBQ2hCLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCTSxlQUF0QixFQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0Esd0JBQWVSLElBQWYsRUFBcUI7QUFBQTs7QUFDbkIsdUNBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwyREFBTyx1QkFBc0JPLGNBQXRCLENBQXFDVCxJQUFyQyxDQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsMkJBQWtCQSxJQUFsQixFQUF3QjtBQUFBOztBQUN0Qix1Q0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQlEsaUJBQXRCLENBQXdDVixJQUF4QyxDQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsdUJBQWM7QUFBQTs7QUFDWixxQ0FBS0MsT0FBTCxDQUFhQyxPQUFiLGtGQUFzQlMsV0FBdEI7QUFDRDs7O1dBRUQsdUJBQWNYLElBQWQsRUFBb0JZLE9BQXBCLEVBQTZCO0FBQUE7O0FBQzNCLHNDQUFLWCxPQUFMLENBQWFDLE9BQWIsb0ZBQXNCVyxhQUF0QixDQUFvQ2IsSUFBcEMsRUFBMENZLE9BQTFDO0FBQ0Q7OztXQUVELG1CQUFVRSxLQUFWLEVBQWlCO0FBQUE7O0FBQ2Ysc0NBQUtiLE9BQUwsQ0FBYUMsT0FBYixvRkFBc0JhLFNBQXRCLENBQWdDRCxLQUFoQztBQUNEOzs7V0FFRCx3QkFBZUUsTUFBZixFQUF1QjtBQUFBOztBQUNyQixzQ0FBS2YsT0FBTCxDQUFhQyxPQUFiLG9GQUFzQmUsY0FBdEIsQ0FBcUNELE1BQXJDO0FBQ0Q7OztXQUVELGtCQUFTO0FBQUE7O0FBQ1Asc0NBQUtmLE9BQUwsQ0FBYUMsT0FBYixvRkFBc0JnQixNQUF0QjtBQUNEOzs7V0FFRCxrQkFDRUMsR0FERixFQUVFUCxPQUZGLEVBR0VRLFFBSEYsRUFJRUMsR0FKRixFQUtFO0FBQ0Esd0JBQTZELEtBQUsxQixLQUFsRTtBQUFBLFVBQWEyQixRQUFiLGVBQVFILEdBQVI7QUFBQSw4Q0FBdUJJLGFBQXZCO0FBQUEsVUFBc0NDLGFBQXRDLHNDQUFzRCxFQUF0RDs7QUFDQSxVQUFJLENBQUNMLEdBQUQsSUFBUSxDQUFDRyxRQUFiLEVBQXVCO0FBQ3JCLGNBQU0sSUFBSUcsS0FBSixDQUFVLFdBQVYsQ0FBTjtBQUNEOztBQUNELDRCQUE0QmIsT0FBNUIsQ0FBUWMsTUFBUjtBQUFBLFVBQVFBLE1BQVIsZ0NBQWlCLE1BQWpCO0FBQ0EsVUFBSUMsVUFBVSxHQUFHUixHQUFHLEdBQUdBLEdBQUgsR0FBU0csUUFBN0I7QUFDQSxVQUFJTSxXQUFXLEdBQUcsS0FBSzNCLE9BQUwsQ0FBYUMsT0FBYixDQUFxQkksY0FBckIsRUFBbEI7QUFDQSxVQUFJdUIsY0FBYyxHQUFHTCxhQUFyQjtBQUNBLFVBQUlNLFlBQVksR0FBRztBQUFFSixRQUFBQSxNQUFNLEVBQUVBLE1BQVY7QUFBa0JLLFFBQUFBLElBQUksRUFBRUg7QUFBeEIsT0FBbkI7O0FBQ0EsVUFBSWhCLE9BQUosRUFBYTtBQUNYLFlBQVFtQixJQUFSLEdBQTJDbkIsT0FBM0MsQ0FBUW1CLElBQVI7QUFBQSxZQUFjUixhQUFkLEdBQTJDWCxPQUEzQyxDQUFjVyxhQUFkO0FBQUEsWUFBZ0NTLE1BQWhDLDRCQUEyQ3BCLE9BQTNDOztBQUNBa0IsUUFBQUEsWUFBWSxtQ0FBUUEsWUFBUixHQUF5QkUsTUFBekIsQ0FBWjs7QUFDQSxZQUFJRCxJQUFKLEVBQVU7QUFDUixpQkFBT0QsWUFBWSxDQUFDQyxJQUFwQjs7QUFDQSxjQUFJTCxNQUFNLENBQUNPLFdBQVAsTUFBd0IsS0FBNUIsRUFBbUM7QUFDakNILFlBQUFBLFlBQVksaURBQVFBLFlBQVIsR0FBeUJFLE1BQXpCO0FBQWlDQSxjQUFBQSxNQUFNLEVBQUVEO0FBQXpDLGNBQVo7QUFDRCxXQUZELE1BRU87QUFDTEQsWUFBQUEsWUFBWSxpREFBUUEsWUFBUixHQUF5QkUsTUFBekI7QUFBaUNELGNBQUFBLElBQUksRUFBRUE7QUFBdkMsY0FBWjtBQUNEO0FBQ0Y7O0FBQ0QsWUFBSVIsYUFBSixFQUFtQjtBQUNqQk0sVUFBQUEsY0FBYyxHQUFHTixhQUFqQjtBQUNEO0FBQ0Y7O0FBRUQvQixNQUFBQSxPQUFPLENBQUNtQyxVQUFELGtDQUNGRyxZQURFO0FBRUxQLFFBQUFBLGFBQWEsRUFBRU07QUFGVixTQUFQLENBSUdLLElBSkgsQ0FJUSxVQUFVQyxHQUFWLEVBQW9CO0FBQ3hCLFlBQVFDLElBQVIsR0FBaUJELEdBQWpCLENBQVFDLElBQVI7O0FBQ0EsWUFBSWYsR0FBSixFQUFTO0FBQ1AsY0FBSWUsSUFBSSxLQUFLLEdBQWIsRUFBa0I7QUFDaEIscUJBQVFDLE9BQVIsQ0FBZ0IsTUFBaEI7QUFDRCxXQUZELE1BRU87QUFDTCxxQkFBUUMsS0FBUixDQUFjLE1BQWQ7QUFDRDtBQUNGOztBQUNEbEIsUUFBQUEsUUFBUSxJQUFJQSxRQUFRLENBQUNlLEdBQUQsQ0FBcEI7QUFDRCxPQWRILEVBZUdJLEtBZkgsQ0FlUyxVQUFVRCxLQUFWLEVBQXNCO0FBQzNCRSxRQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBWSxPQUFaLEVBQXFCSCxLQUFyQjtBQUNELE9BakJIO0FBa0JEOzs7V0FFRCx3QkFBZXRDLElBQWYsRUFBcUI7QUFDbkIsYUFBTyxLQUFLQyxPQUFMLENBQWFDLE9BQWIsQ0FBcUJ3QyxjQUFyQixDQUFvQzFDLElBQXBDLENBQVA7QUFDRDs7O1dBRUQsb0JBQTRCO0FBQUE7O0FBQUEsVUFBbkIyQyxVQUFtQix1RUFBTixJQUFNO0FBQzFCLFdBQUtDLFFBQUwsQ0FDRTtBQUNFL0MsUUFBQUEsV0FBVyxFQUFFO0FBRGYsT0FERixFQUlFLFlBQU07QUFDSixZQUFJOEMsVUFBSixFQUFnQjtBQUFBOztBQUNkLG1DQUFBLE1BQUksQ0FBQzFDLE9BQUwsQ0FBYUMsT0FBYixnRkFBc0JTLFdBQXRCO0FBQ0Q7QUFDRixPQVJIO0FBVUQ7OztXQUVELGtCQUFTa0MsS0FBVCxFQUF5QztBQUFBOztBQUFBLFVBQW5CRixVQUFtQix1RUFBTixJQUFNO0FBQ3ZDLFdBQUtDLFFBQUwsQ0FDRTtBQUNFL0MsUUFBQUEsV0FBVyxFQUFFO0FBRGYsT0FERixFQUlFLFlBQU07QUFDSixZQUFJZ0QsS0FBSixFQUFXO0FBQUE7O0FBQ1QsbUNBQUEsTUFBSSxDQUFDNUMsT0FBTCxDQUFhQyxPQUFiLGdGQUFzQmUsY0FBdEIsQ0FBcUM0QixLQUFyQztBQUNELFNBRkQsTUFFTztBQUFBOztBQUNMLGNBQUlGLFVBQUosRUFBZ0IsMEJBQUEsTUFBSSxDQUFDMUMsT0FBTCxDQUFhQyxPQUFiLGtGQUFzQlMsV0FBdEI7QUFDakI7QUFDRixPQVZIO0FBWUQ7OztXQUVELHNCQUFhbUMsSUFBYixFQUE4QjtBQUFBLFVBQVhDLEtBQVcsdUVBQUgsQ0FBRzs7QUFDNUIsVUFBSUMsS0FBSyxHQUFHLElBQVo7O0FBQ0EsVUFBSSxPQUFPRixJQUFQLElBQWUsUUFBbkIsRUFBNkIsT0FBT0EsSUFBUDtBQUM3QixVQUFJbkQsS0FBSyxHQUFHLEVBQVo7QUFDQUEsTUFBQUEsS0FBSyxDQUFDc0QsR0FBTixHQUFZRixLQUFaOztBQUNBLFVBQUk7QUFDRixZQUFJRCxJQUFJLENBQUNuRCxLQUFMLElBQWNtRCxJQUFJLENBQUNuRCxLQUFMLENBQVd1RCxRQUE3QixFQUF1QztBQUNyQyxjQUFJQyxLQUFLLENBQUNDLE9BQU4sQ0FBY04sSUFBSSxDQUFDbkQsS0FBTCxDQUFXdUQsUUFBekIsQ0FBSixFQUF3QztBQUN0Q3ZELFlBQUFBLEtBQUssQ0FBQ3VELFFBQU4sR0FBaUI1RCxLQUFLLENBQUMrRCxRQUFOLENBQWVDLEdBQWYsQ0FDZlIsSUFBSSxDQUFDbkQsS0FBTCxDQUFXdUQsUUFESSxFQUVmLFVBQVVLLEtBQVYsRUFBaUJSLEtBQWpCLEVBQXdCO0FBQ3RCLHFCQUFPQyxLQUFLLENBQUNRLFlBQU4sQ0FBbUJELEtBQW5CLEVBQTBCUixLQUExQixDQUFQO0FBQ0QsYUFKYyxDQUFqQjtBQU1ELFdBUEQsTUFPTztBQUNMcEQsWUFBQUEsS0FBSyxDQUFDdUQsUUFBTixHQUFpQixLQUFLTSxZQUFMLENBQWtCVixJQUFJLENBQUNuRCxLQUFMLENBQVd1RCxRQUE3QixFQUF1QyxDQUF2QyxDQUFqQjtBQUNEO0FBQ0Y7O0FBQ0QsNEJBQU81RCxLQUFLLENBQUNrRSxZQUFOLENBQW1CVixJQUFuQixFQUF5Qm5ELEtBQXpCLENBQVA7QUFDRCxPQWRELENBY0UsT0FBTzhELENBQVAsRUFBVTtBQUNWLGVBQU8sSUFBUDtBQUNEO0FBQ0Y7OztXQUNELHFCQUFZQyxXQUFaLEVBQXlCL0QsS0FBekIsRUFBZ0M7QUFDOUIseUJBQStDLEtBQUtBLEtBQXBEO0FBQUEsVUFBUWdFLFNBQVIsZ0JBQVFBLFNBQVI7QUFBQSxVQUFtQkMsV0FBbkIsZ0JBQW1CQSxXQUFuQjtBQUFBLFVBQWdDQyxVQUFoQyxnQkFBZ0NBLFVBQWhDO0FBQ0EsVUFBUWhFLFdBQVIsR0FBd0IsS0FBS2lFLEtBQTdCLENBQVFqRSxXQUFSO0FBQ0EsVUFBTWtFLE1BQU0sR0FBRztBQUNiQyxRQUFBQSxRQUFRLEVBQUU7QUFBRUMsVUFBQUEsSUFBSSxFQUFFO0FBQVIsU0FERztBQUViQyxRQUFBQSxVQUFVLEVBQUU7QUFBRUQsVUFBQUEsSUFBSSxFQUFFO0FBQVI7QUFGQyxPQUFmOztBQUlBLFVBQUlOLFNBQVMsSUFBSUEsU0FBUyxJQUFJLE9BQTlCLEVBQXVDO0FBQ3JDLFlBQUlRLGFBQWEsR0FBRzFFLElBQUksQ0FBQ29FLFVBQUQsRUFBYSxDQUFDLFNBQUQsQ0FBYixDQUF4QjtBQUNBTSxRQUFBQSxhQUFhO0FBQUtDLFVBQUFBLFFBQVEsRUFBRTtBQUFmLFdBQXdCRCxhQUF4QixDQUFiO0FBQ0EsNEJBQ0U7QUFDRSxVQUFBLFFBQVEsRUFBRSxLQUFLRSxRQUFMLENBQWNDLElBQWQsQ0FBbUIsSUFBbkIsQ0FEWjtBQUVFLFVBQUEsT0FBTyxFQUFFekU7QUFGWCxXQUdNc0UsYUFITixnQkFLRTtBQUFNLFVBQUEsR0FBRyxFQUFFLEtBQUtsRTtBQUFoQixXQUE2QjhELE1BQTdCLEVBQXlDcEUsS0FBekM7QUFBZ0QsVUFBQSxRQUFRLEVBQUU7QUFBMUQsWUFDRytELFdBREgsQ0FMRixDQURGO0FBV0QsT0FkRCxNQWNPLElBQUlDLFNBQVMsSUFBSUEsU0FBUyxJQUFJLFFBQTlCLEVBQXdDO0FBQzdDLFlBQUlZLGNBQWMsR0FBRzlFLElBQUksQ0FBQ21FLFdBQUQsRUFBYyxDQUFDLFNBQUQsQ0FBZCxDQUF6QjtBQUNBLDRCQUNFO0FBQ0UsVUFBQSxPQUFPLEVBQUUsS0FBS1MsUUFBTCxDQUFjQyxJQUFkLENBQW1CLElBQW5CLENBRFg7QUFFRSxVQUFBLE9BQU8sRUFBRXpFO0FBRlgsV0FHTTBFLGNBSE4sZ0JBS0U7QUFBTSxVQUFBLEdBQUcsRUFBRSxLQUFLdEU7QUFBaEIsV0FBNkI4RCxNQUE3QixFQUF5Q3BFLEtBQXpDLEdBQ0crRCxXQURILENBTEYsQ0FERjtBQVdELE9BYk0sTUFhQTtBQUNMLDRCQUNFO0FBQU0sVUFBQSxHQUFHLEVBQUUsS0FBS3pEO0FBQWhCLFdBQTZCOEQsTUFBN0IsRUFBeUNwRSxLQUF6QyxHQUNHK0QsV0FESCxDQURGO0FBS0Q7QUFDRjs7O1dBQ0Qsa0JBQVM7QUFDRCxVQUFBVixLQUFLLEdBQUcsSUFBUjtBQUFBLHlCQUNzQixLQUFLckQsS0FEM0I7QUFBQSxVQUNGdUQsUUFERSxnQkFDRkEsUUFERTtBQUFBLFVBQ1FTLFNBRFIsZ0JBQ1FBLFNBRFI7O0FBRU4sVUFBTUQsV0FBVyxHQUFHcEUsS0FBSyxDQUFDK0QsUUFBTixDQUFlQyxHQUFmLENBQW1CSixRQUFuQixFQUE2QixVQUFVSyxLQUFWLEVBQWlCUixLQUFqQixFQUF3QjtBQUN2RSxlQUFPQyxLQUFLLENBQUNRLFlBQU4sQ0FBbUJELEtBQW5CLEVBQTBCUixLQUExQixDQUFQO0FBQ0QsT0FGbUIsQ0FBcEI7QUFHQSxVQUFNcEQsS0FBSyxHQUFHRixJQUFJLENBQUMsS0FBS0UsS0FBTixFQUFhLENBQzdCLE1BRDZCLEVBRTdCLFdBRjZCLEVBRzdCLFlBSDZCLEVBSTdCLGFBSjZCLEVBSzdCLEtBTDZCLEVBTTdCLGVBTjZCLENBQWIsQ0FBbEI7QUFTQSwwQkFBTywwQ0FBRyxLQUFLNkUsV0FBTCxDQUFpQmQsV0FBakIsRUFBOEIvRCxLQUE5QixDQUFILENBQVA7QUFDRDs7O1dBaFFELGtDQUFnQzhFLFNBQWhDLEVBQTJDQyxTQUEzQyxFQUFzRDtBQUNwRCxVQUFRYixVQUFSLEdBQStDWSxTQUEvQyxDQUFRWixVQUFSO0FBQUEsVUFBb0JELFdBQXBCLEdBQStDYSxTQUEvQyxDQUFvQmIsV0FBcEI7QUFBQSxVQUFpQ0QsU0FBakMsR0FBK0NjLFNBQS9DLENBQWlDZCxTQUFqQztBQUNBLFVBQVE3RCxjQUFSLEdBQTRDNEUsU0FBNUMsQ0FBUTVFLGNBQVI7QUFBQSxVQUF3QkMsZUFBeEIsR0FBNEMyRSxTQUE1QyxDQUF3QjNFLGVBQXhCOztBQUNBLFVBQUk0RCxTQUFTLElBQUksT0FBakIsRUFBMEI7QUFDeEIsWUFBSWdCLElBQUksQ0FBQ0MsU0FBTCxDQUFlOUUsY0FBZixNQUFtQzZFLElBQUksQ0FBQ0MsU0FBTCxDQUFlZixVQUFmLENBQXZDLEVBQW1FO0FBQ2pFLGNBQUlnQixRQUFRLEdBQUc7QUFDYjlFLFlBQUFBLGVBQWUsRUFBRThEO0FBREosV0FBZjs7QUFHQSxjQUFJLENBQUFBLFVBQVUsU0FBVixJQUFBQSxVQUFVLFdBQVYsWUFBQUEsVUFBVSxDQUFFaUIsT0FBWixNQUF3QixJQUF4QixJQUFnQyxDQUFBakIsVUFBVSxTQUFWLElBQUFBLFVBQVUsV0FBVixZQUFBQSxVQUFVLENBQUVpQixPQUFaLE1BQXdCQyxTQUE1RCxFQUF1RTtBQUNyRUYsWUFBQUEsUUFBUSxDQUFDaEYsV0FBVCxHQUF1QmdFLFVBQXZCLGFBQXVCQSxVQUF2Qix1QkFBdUJBLFVBQVUsQ0FBRWlCLE9BQW5DO0FBQ0Q7O0FBQ0QsaUJBQU9ELFFBQVA7QUFDRDtBQUNGLE9BVkQsTUFVTyxJQUFJbEIsU0FBUyxJQUFJLFFBQWpCLEVBQTJCO0FBQ2hDLFlBQUlnQixJQUFJLENBQUNDLFNBQUwsQ0FBZTdFLGVBQWYsTUFBb0M0RSxJQUFJLENBQUNDLFNBQUwsQ0FBZWhCLFdBQWYsQ0FBeEMsRUFBcUU7QUFDbkUsY0FBSWlCLFNBQVEsR0FBRztBQUNiOUUsWUFBQUEsZUFBZSxFQUFFNkQ7QUFESixXQUFmOztBQUdBLGNBQ0UsQ0FBQUEsV0FBVyxTQUFYLElBQUFBLFdBQVcsV0FBWCxZQUFBQSxXQUFXLENBQUVrQixPQUFiLE1BQXlCLElBQXpCLElBQ0EsQ0FBQWxCLFdBQVcsU0FBWCxJQUFBQSxXQUFXLFdBQVgsWUFBQUEsV0FBVyxDQUFFa0IsT0FBYixNQUF5QkMsU0FGM0IsRUFHRTtBQUNBRixZQUFBQSxTQUFRLENBQUNoRixXQUFULEdBQXVCK0QsV0FBdkIsYUFBdUJBLFdBQXZCLHVCQUF1QkEsV0FBVyxDQUFFa0IsT0FBcEM7QUFDRDs7QUFFRCxpQkFBT0QsU0FBUDtBQUNEO0FBQ0Y7O0FBQ0QsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUF6Q21CdEYsYTs7QUE4UXRCLGVBQWVHLE9BQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOuihqOWNlee7hOS7tlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMDkgMDk6MTg6MzRcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIzIDE1OjIzOjU0XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQge1xyXG4gIEZvcm0sXHJcbiAgRm9ybVByb3BzLFxyXG4gIE1vZGFsLFxyXG4gIERyYXdlcixcclxuICBNb2RhbFByb3BzLFxyXG4gIERyYXdlclByb3BzLFxyXG4gIG1lc3NhZ2UsXHJcbn0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IHsgRm9ybUluc3RhbmNlIH0gZnJvbSBcImFudGQvbGliL2Zvcm1cIjtcclxuaW1wb3J0IHsgcmVxdWVzdCB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuXHJcbmludGVyZmFjZSBJRm9ybVByb3BzIGV4dGVuZHMgRm9ybVByb3BzIHtcclxuICBzaG93TW9kZWw/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIG1vZGFsUHJvcHM/OiBNb2RhbFByb3BzO1xyXG4gIGRyYXdlclByb3BzPzogRHJhd2VyUHJvcHM7XHJcbiAgdXJsPzogc3RyaW5nO1xyXG4gIGVuY3J5cHRGaWVsZHM/OiBBcnJheTxTdHJpbmc+O1xyXG59XHJcblxyXG5jbGFzcyBOc2NGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJRm9ybVByb3BzPiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxGb3JtSW5zdGFuY2U+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICBmb3JtTW9kYWxQcm9wczoge30sXHJcbiAgICBmb3JtRHJhd2VyUHJvcHM6IHt9LFxyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKG5leHRQcm9wcywgcHJldlN0YXRlKSB7XHJcbiAgICBjb25zdCB7IG1vZGFsUHJvcHMsIGRyYXdlclByb3BzLCBzaG93TW9kZWwgfSA9IG5leHRQcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybU1vZGFsUHJvcHMsIGZvcm1EcmF3ZXJQcm9wcyB9ID0gcHJldlN0YXRlO1xyXG4gICAgaWYgKHNob3dNb2RlbCA9PSBcIm1vZGFsXCIpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGZvcm1Nb2RhbFByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkobW9kYWxQcm9wcykpIHtcclxuICAgICAgICBsZXQgbmV3U3RhdGUgPSB7XHJcbiAgICAgICAgICBmb3JtRHJhd2VyUHJvcHM6IG1vZGFsUHJvcHMsXHJcbiAgICAgICAgfSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKG1vZGFsUHJvcHM/LnZpc2libGUgIT09IG51bGwgfHwgbW9kYWxQcm9wcz8udmlzaWJsZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBuZXdTdGF0ZS5mb3JtVmlzaWJsZSA9IG1vZGFsUHJvcHM/LnZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBuZXdTdGF0ZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIikge1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZm9ybURyYXdlclByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoZHJhd2VyUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBkcmF3ZXJQcm9wcyxcclxuICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBkcmF3ZXJQcm9wcz8udmlzaWJsZSAhPT0gbnVsbCB8fFxyXG4gICAgICAgICAgZHJhd2VyUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBkcmF3ZXJQcm9wcz8udmlzaWJsZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBuZXdTdGF0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWQjeeahOmUmeivr+S/oeaBr1xyXG4gIGdldEZpZWxkRXJyb3IobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZEVycm9yKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5blr7nlupTlrZfmrrXlrp7kvotcclxuICBnZXRGaWVsZEluc3RhbmNlKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRJbnN0YW5jZShuYW1lKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5LiA57uE5a2X5q615ZCN5a+55bqU55qE6ZSZ6K+v5L+h5oGv77yM6L+U5Zue5Li65pWw57uE5b2i5byPXHJcbiAgZ2V0RmllbGRzRXJyb3IoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc0Vycm9yKCk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluS4gOe7hOWtl+auteWQjeWvueW6lOeahOWAvO+8jOS8muaMieeFp+WvueW6lOe7k+aehOi/lOWbnlxyXG4gIGdldEZpZWxkc1ZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5blr7nlupTlrZfmrrXlkI3nmoTlgLxcclxuICBnZXRGaWVsZFZhbHVlKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRWYWx1ZShuYW1lKTtcclxuICB9XHJcblxyXG4gIC8v5qOA5p+l5LiA57uE5a2X5q615piv5ZCm6KKr55So5oi35pON5L2c6L+HXHJcbiAgaXNGaWVsZHNUb3VjaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5pc0ZpZWxkc1RvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIC8v5qOA5p+l5a+55bqU5a2X5q615piv5ZCm6KKr55So5oi35pON5L2c6L+HXHJcbiAgaXNGaWVsZFRvdWNoZWQobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5pc0ZpZWxkVG91Y2hlZChuYW1lKTtcclxuICB9XHJcblxyXG4gIC8v5qOA5p+l5LiA57uE5a2X5q615piv5ZCm5q2j5Zyo5qCh6aqMXHJcbiAgaXNGaWVsZFZhbGlkYXRpbmcobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5pc0ZpZWxkVmFsaWRhdGluZyhuYW1lKTtcclxuICB9XHJcblxyXG4gIC8v6YeN572u5LiA57uE5a2X5q615YiwXHJcbiAgcmVzZXRGaWVsZHMoKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8ucmVzZXRGaWVsZHMoKTtcclxuICB9XHJcblxyXG4gIHNjcm9sbFRvRmllbGQobmFtZSwgb3B0aW9ucykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNjcm9sbFRvRmllbGQobmFtZSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBzZXRGaWVsZHMoZmlsZHMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHMoZmlsZHMpO1xyXG4gIH1cclxuXHJcbiAgc2V0RmllbGRzVmFsdWUodmFsdWVzKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2V0RmllbGRzVmFsdWUodmFsdWVzKTtcclxuICB9XHJcblxyXG4gIHN1Ym1pdCgpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zdWJtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KFxyXG4gICAgdXJsPzogc3RyaW5nLFxyXG4gICAgb3B0aW9ucz86IGFueSxcclxuICAgIGNhbGxiYWNrPzogKHJlcz86IGFueSkgPT4gdm9pZCxcclxuICAgIG1zZz86IGJvb2xlYW5cclxuICApIHtcclxuICAgIGNvbnN0IHsgdXJsOiBwcm9wc1VybCwgZW5jcnlwdEZpZWxkczogZW5jcnlwdFByb3BwcyA9IFtdIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCF1cmwgJiYgIXByb3BzVXJsKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIuayoeacieS4iuS8oOeahHVybCFcIik7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IG1ldGhvZCA9IFwicG9zdFwiIH0gPSBvcHRpb25zO1xyXG4gICAgbGV0IHJlcXVlc3RVcmwgPSB1cmwgPyB1cmwgOiBwcm9wc1VybDtcclxuICAgIGxldCByZXF1ZXN0RGF0YSA9IHRoaXMuZm9ybVJlZi5jdXJyZW50LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBsZXQgcmVxdWVzdEVuY3J5cHQgPSBlbmNyeXB0UHJvcHBzO1xyXG4gICAgbGV0IHJlcXVlc3RQYXJhbSA9IHsgbWV0aG9kOiBtZXRob2QsIGRhdGE6IHJlcXVlc3REYXRhIH0gYXMgeyBkYXRhOiBhbnkgfTtcclxuICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgIGNvbnN0IHsgZGF0YSwgZW5jcnlwdEZpZWxkcywgLi4ucGFyYW1zIH0gPSBvcHRpb25zO1xyXG4gICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zIH07XHJcbiAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgZGVsZXRlIHJlcXVlc3RQYXJhbS5kYXRhO1xyXG4gICAgICAgIGlmIChtZXRob2QudG9Mb3dlckNhc2UoKSA9PSBcImdldFwiKSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zLCBwYXJhbXM6IGRhdGEgfTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVxdWVzdFBhcmFtID0geyAuLi5yZXF1ZXN0UGFyYW0sIC4uLnBhcmFtcywgZGF0YTogZGF0YSB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoZW5jcnlwdEZpZWxkcykge1xyXG4gICAgICAgIHJlcXVlc3RFbmNyeXB0ID0gZW5jcnlwdEZpZWxkcztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJlcXVlc3QocmVxdWVzdFVybCwge1xyXG4gICAgICAuLi5yZXF1ZXN0UGFyYW0sXHJcbiAgICAgIGVuY3J5cHRGaWVsZHM6IHJlcXVlc3RFbmNyeXB0LFxyXG4gICAgfSlcclxuICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlczogYW55KSB7XHJcbiAgICAgICAgY29uc3QgeyBjb2RlIH0gPSByZXM7XHJcbiAgICAgICAgaWYgKG1zZykge1xyXG4gICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICBtZXNzYWdlLnN1Y2Nlc3MoXCLmj5DkuqTmiJDlip9cIik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5o+Q5Lqk5aSx6LSlXCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBjYWxsYmFjayAmJiBjYWxsYmFjayhyZXMpO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goZnVuY3Rpb24gKGVycm9yOiBhbnkpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcImVycm9yXCIsIGVycm9yKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZUZpZWxkcyhuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQudmFsaWRhdGVGaWVsZHMobmFtZSk7XHJcbiAgfVxyXG5cclxuICBoaWRlRm9ybShyZXNldFZhbHVlID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAge1xyXG4gICAgICAgIGZvcm1WaXNpYmxlOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNldFZhbHVlKSB7XHJcbiAgICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8ucmVzZXRGaWVsZHMoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzaG93Rm9ybSh2YWx1ZT86IGFueSwgcmVzZXRWYWx1ZSA9IHRydWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgIHtcclxuICAgICAgICBmb3JtVmlzaWJsZTogdHJ1ZSxcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKHZhbHVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNsb25lRWxlbWVudChpdGVtLCBpbmRleCA9IDApIHtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT0gXCJzdHJpbmdcIikgcmV0dXJuIGl0ZW07XHJcbiAgICBsZXQgcHJvcHMgPSB7fSBhcyB7IGtleTogbnVtYmVyOyBjaGlsZHJlbjogYW55IH07XHJcbiAgICBwcm9wcy5rZXkgPSBpbmRleDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmIChpdGVtLnByb3BzICYmIGl0ZW0ucHJvcHMuY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtLnByb3BzLmNoaWxkcmVuKSkge1xyXG4gICAgICAgICAgcHJvcHMuY2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0ucHJvcHMuY2hpbGRyZW4sXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3BzLmNoaWxkcmVuID0gdGhpcy5jbG9uZUVsZW1lbnQoaXRlbS5wcm9wcy5jaGlsZHJlbiwgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoaXRlbSwgcHJvcHMpO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgcmVuZGVyUGFuZWwobmV3Q2hpbGRyZW4sIHByb3BzKSB7XHJcbiAgICBjb25zdCB7IHNob3dNb2RlbCwgZHJhd2VyUHJvcHMsIG1vZGFsUHJvcHMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGZvcm1WaXNpYmxlIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgbGF5b3V0ID0ge1xyXG4gICAgICBsYWJlbENvbDogeyBzcGFuOiA0IH0sXHJcbiAgICAgIHdyYXBwZXJDb2w6IHsgc3BhbjogMjAgfSxcclxuICAgIH07XHJcbiAgICBpZiAoc2hvd01vZGVsICYmIHNob3dNb2RlbCA9PSBcIm1vZGFsXCIpIHtcclxuICAgICAgbGV0IG5ld01vZGFsUHJvcHMgPSBvbWl0KG1vZGFsUHJvcHMsIFtcInZpc2libGVcIl0pO1xyXG4gICAgICBuZXdNb2RhbFByb3BzID0geyBjZW50ZXJlZDogdHJ1ZSwgLi4ubmV3TW9kYWxQcm9wcyB9O1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxNb2RhbFxyXG4gICAgICAgICAgb25DYW5jZWw9e3RoaXMuaGlkZUZvcm0uYmluZCh0aGlzKX1cclxuICAgICAgICAgIHZpc2libGU9e2Zvcm1WaXNpYmxlfVxyXG4gICAgICAgICAgey4uLm5ld01vZGFsUHJvcHN9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPEZvcm0gcmVmPXt0aGlzLmZvcm1SZWZ9IHsuLi5sYXlvdXR9IHsuLi5wcm9wc30gcHJlc2VydmU9e2ZhbHNlfT5cclxuICAgICAgICAgICAge25ld0NoaWxkcmVufVxyXG4gICAgICAgICAgPC9Gb3JtPlxyXG4gICAgICAgIDwvTW9kYWw+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKHNob3dNb2RlbCAmJiBzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIikge1xyXG4gICAgICBsZXQgbmV3RHJhd2VyUHJvcHMgPSBvbWl0KGRyYXdlclByb3BzLCBbXCJ2aXNpYmxlXCJdKTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8RHJhd2VyXHJcbiAgICAgICAgICBvbkNsb3NlPXt0aGlzLmhpZGVGb3JtLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICB2aXNpYmxlPXtmb3JtVmlzaWJsZX1cclxuICAgICAgICAgIHsuLi5uZXdEcmF3ZXJQcm9wc31cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8Rm9ybSByZWY9e3RoaXMuZm9ybVJlZn0gey4uLmxheW91dH0gey4uLnByb3BzfT5cclxuICAgICAgICAgICAge25ld0NoaWxkcmVufVxyXG4gICAgICAgICAgPC9Gb3JtPlxyXG4gICAgICAgIDwvRHJhd2VyPlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8Rm9ybSByZWY9e3RoaXMuZm9ybVJlZn0gey4uLmxheW91dH0gey4uLnByb3BzfT5cclxuICAgICAgICAgIHtuZXdDaGlsZHJlbn1cclxuICAgICAgICA8L0Zvcm0+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IF90aGlzID0gdGhpcyxcclxuICAgICAgeyBjaGlsZHJlbiwgc2hvd01vZGVsIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgbmV3Q2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoY2hpbGRyZW4sIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgICAgcmV0dXJuIF90aGlzLmNsb25lRWxlbWVudChjaGlsZCwgaW5kZXgpO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBwcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICBcImZvcm1cIixcclxuICAgICAgXCJzaG93TW9kZWxcIixcclxuICAgICAgXCJtb2RhbFByb3BzXCIsXHJcbiAgICAgIFwiZHJhd2VyUHJvcHNcIixcclxuICAgICAgXCJ1cmxcIixcclxuICAgICAgXCJlbmNyeXB0RmllbGRzXCIsXHJcbiAgICBdKTtcclxuXHJcbiAgICByZXR1cm4gPD57dGhpcy5yZW5kZXJQYW5lbChuZXdDaGlsZHJlbiwgcHJvcHMpfTwvPjtcclxuICB9XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgTnNjRm9ybTtcclxuIl19
package/lib/menu/index.js CHANGED
@@ -132,7 +132,15 @@ var NSCMenu = /*#__PURE__*/function (_PureComponent) {
132
132
  return /*#__PURE__*/React.createElement(_Menu.Item, {
133
133
  key: item[keyField],
134
134
  disabled: disabled
135
- }, showIcon && icon ? /*#__PURE__*/React.createElement("span", null, getIcon(icon), spantitle) : spantitle);
135
+ }, showIcon && icon ? /*#__PURE__*/React.createElement("span", null, getIcon(icon), tooltip ? /*#__PURE__*/React.createElement(_Tooltip, {
136
+ title: spantitle
137
+ }, spantitle) : {
138
+ spantitle: spantitle
139
+ }) : /*#__PURE__*/React.createElement("span", null, tooltip ? /*#__PURE__*/React.createElement(_Tooltip, {
140
+ title: spantitle
141
+ }, spantitle) : {
142
+ spantitle: spantitle
143
+ }));
136
144
  }
137
145
  });
138
146
  });
@@ -216,7 +224,7 @@ var NSCMenu = /*#__PURE__*/function (_PureComponent) {
216
224
  }, {
217
225
  key: "render",
218
226
  value: function render() {
219
- var menuProps = omit(this.props, ["data", "store", "titleField", "keyField", "showIcon"]);
227
+ var menuProps = omit(this.props, ["data", "store", "titleField", "keyField", "showIcon", "tooltip"]);
220
228
  return /*#__PURE__*/React.createElement(_Menu, menuProps, this.renderChildren());
221
229
  }
222
230
  }], [{
@@ -247,4 +255,4 @@ _defineProperty(NSCMenu, "Item", Item);
247
255
  _defineProperty(NSCMenu, "ItemGroup", ItemGroup);
248
256
 
249
257
  export { NSCMenu as default };
250
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJnZXRJY29uIiwib21pdCIsIlN1Yk1lbnUiLCJJdGVtIiwiSXRlbUdyb3VwIiwiTlNDTWVudSIsInByb3BzIiwiZGF0YVNvdXJjZSIsIm1lbnVzRGF0YSIsIkFycmF5IiwiaXNBcnJheSIsInRpdGxlRmllbGQiLCJrZXlGaWVsZCIsInNob3dJY29uIiwic3ViTWVudVByb3BzIiwidG9vbHRpcCIsIm1hcCIsIml0ZW0iLCJzdHlsZSIsImljb24iLCJkaXNhYmxlZCIsInNwYW50aXRsZSIsIm1lbnVHcm91cERhdGEiLCJtZW51RGF0YSIsImNoaWxkRGF0YSIsImdydW9wdGl0bGUiLCJncm91cE5hbWUiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsImtleSIsInJlbmRlck1lbnVJdGVtIiwiY2hpbGRyZW4iLCJzdGF0ZSIsImRhdGEiLCJzdG9yZSIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJ2aWV3bmFtZSIsInN0b3JlcyIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwibW9kZWwiLCJjb21wb25lbnQiLCJvbkJlZm9yZUxvYWQiLCJvcHRpb25zIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwic2V0U3RhdGUiLCJkYXRhQ2hhbmdlZCIsImF1dG9Mb2FkIiwibWVudVByb3BzIiwicmVuZGVyQ2hpbGRyZW4iLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsS0FBUCxNQUFrQyxhQUFs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SUFBUjs7QUFDQSxVQUFJQSxJQUFKLEVBQVU7QUFDUixZQUFJd0IsSUFBSSxDQUFDQyxTQUFMLENBQWVwRCxVQUFmLE1BQStCbUQsSUFBSSxDQUFDQyxTQUFMLENBQWV6QixJQUFmLENBQW5DLEVBQXlEO0FBQ3ZELGlCQUFPO0FBQ0wzQixZQUFBQSxVQUFVLEVBQUUyQjtBQURQLFdBQVA7QUFHRDtBQUNGOztBQUNELGFBQU8sSUFBUDtBQUNEOzs7O0VBckJrQ3JDLGE7O2dCQUFoQlEsTyxhQUNGSCxPOztnQkFERUcsTyxVQUVMRixJOztnQkFGS0UsTyxlQUdBRCxTOztTQUhBQyxPIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjpcclxuICogQHZlcnNpb246XHJcbiAqIEBBdXRob3I6IHJ4emh1XHJcbiAqIEBEYXRlOiAyMDIxLTA0LTE2IDA5OjQzOjI4XHJcbiAqIEBMYXN0RWRpdG9yczogUGxlYXNlIHNldCBMYXN0RWRpdG9yc1xyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIyLTAyLTI2IDE1OjEzOjIyXHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgTWVudSwgTWVudVByb3BzLCBTdWJNZW51UHJvcHMsIFRvb2x0aXAgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IHsgZ2V0SWNvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5cclxuaW50ZXJmYWNlIElNZW51UHJvcHMgZXh0ZW5kcyBNZW51UHJvcHMge1xyXG4gIGRhdGE/OiBBcnJheTxvYmplY3Q+O1xyXG4gIHRpdGxlRmllbGQ/OiBzdHJpbmc7XHJcbiAga2V5RmllbGQ/OiBzdHJpbmc7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIHNob3dJY29uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLppY29uICzpu5jorqR0cnVlXHJcbiAgc3ViTWVudVByb3BzPzogU3ViTWVudVByb3BzO1xyXG4gIHRvb2x0aXA/OiBib29sZWFuO1xyXG59XHJcbmNvbnN0IHsgU3ViTWVudSwgSXRlbSwgSXRlbUdyb3VwIH0gPSBNZW51O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDTWVudSBleHRlbmRzIFB1cmVDb21wb25lbnQ8SU1lbnVQcm9wcz4ge1xyXG4gIHN0YXRpYyBTdWJNZW51ID0gU3ViTWVudTtcclxuICBzdGF0aWMgSXRlbSA9IEl0ZW07XHJcbiAgc3RhdGljIEl0ZW1Hcm91cCA9IEl0ZW1Hcm91cDtcclxuXHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRhU291cmNlOiBbXSxcclxuICB9O1xyXG5cclxuICBzdG9yZSA9IHt9IGFzIFN0b3JlUHJvcHM7XHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZTogYW55KSB7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UgfSA9IHByZXZTdGF0ZTtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gbmV4dFByb3BzO1xyXG4gICAgaWYgKGRhdGEpIHtcclxuICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KGRhdGFTb3VyY2UpICE9PSBKU09OLnN0cmluZ2lmeShkYXRhKSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBkYXRhLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgY29uc3QgeyBkYXRhLCBzdG9yZSA9IHt9LCBjaGlsZHJlbiB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7IHVybCwgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sIHZpZXduYW1lLCAuLi5zdG9yZXMgfSA9IHN0b3JlO1xyXG4gICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICBpZiAoIShkYXRhIHx8IHVybCkpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIFkYXRh5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBtb2RlbERhdGEgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgaWYgKHVybCAmJiBkYXRhID09IG51bGwpIHtcclxuICAgICAgICBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgICAgLi4ue1xyXG4gICAgICAgICAgICBhdXRvTG9hZDogdHJ1ZSxcclxuICAgICAgICAgICAgdXJsOiB1cmwsIC8v6K+75a2X5YW477yMdXJs5Zu65a6a77yMdmlld25hbWVcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBpZiAodGhpcy5wcm9wcy5kYXRhKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IHRoaXMucHJvcHMuZGF0YSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlck1lbnVJdGVtID0gKG1lbnVzRGF0YSkgPT4ge1xyXG4gICAgaWYgKCFtZW51c0RhdGEgfHwgIUFycmF5LmlzQXJyYXkobWVudXNEYXRhKSkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHRpdGxlRmllbGQgPSBcInRpdGxlXCIsXHJcbiAgICAgIGtleUZpZWxkID0gXCJrZXlcIixcclxuICAgICAgc2hvd0ljb24gPSB0cnVlLFxyXG4gICAgICBzdWJNZW51UHJvcHMgPSB7fSxcclxuICAgICAgdG9vbHRpcCA9IGZhbHNlLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICByZXR1cm4gbWVudXNEYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBjb25zdCB7IHN0eWxlLCBpY29uLCBkaXNhYmxlZCB9ID0gaXRlbTtcclxuICAgICAgY29uc3Qgc3BhbnRpdGxlID0gPHNwYW4gc3R5bGU9e3N0eWxlfT57aXRlbVt0aXRsZUZpZWxkXX08L3NwYW4+O1xyXG4gICAgICBpZiAoaXRlbVtcImNoaWxkTm9kZXNcIl0gfHwgaXRlbVtcImNoaWxkcmVuXCJdKSB7XHJcbiAgICAgICAgbGV0IG1lbnVHcm91cERhdGEgPSB7fSxcclxuICAgICAgICAgIG1lbnVEYXRhID0gW107XHJcbiAgICAgICAgbGV0IGNoaWxkRGF0YSA9IGl0ZW1bXCJjaGlsZE5vZGVzXCJdIHx8IGl0ZW1bXCJjaGlsZHJlblwiXTtcclxuICAgICAgICBjaGlsZERhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBsZXQgZ3J1b3B0aXRsZSA9IGl0ZW0uZ3JvdXBOYW1lO1xyXG4gICAgICAgICAgaWYgKGdydW9wdGl0bGUpIHtcclxuICAgICAgICAgICAgaWYgKCFtZW51R3JvdXBEYXRhW2dydW9wdGl0bGVdKSBtZW51R3JvdXBEYXRhW2dydW9wdGl0bGVdID0gW107XHJcbiAgICAgICAgICAgIG1lbnVHcm91cERhdGFbZ3J1b3B0aXRsZV0ucHVzaChpdGVtKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lbnVEYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxTdWJNZW51XHJcbiAgICAgICAgICAgIGtleT17aXRlbVtrZXlGaWVsZF19XHJcbiAgICAgICAgICAgIHRpdGxlPXtcclxuICAgICAgICAgICAgICBzaG93SWNvbiAmJiBpY29uID8gKFxyXG4gICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHtnZXRJY29uKGljb24pfVxyXG4gICAgICAgICAgICAgICAgICB7dG9vbHRpcCA/IChcclxuICAgICAgICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c3BhbnRpdGxlfT57c3BhbnRpdGxlfTwvVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICAgICAgICB7IHNwYW50aXRsZSB9XHJcbiAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICB7dG9vbHRpcCA/IChcclxuICAgICAgICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c3BhbnRpdGxlfT57c3BhbnRpdGxlfTwvVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICAgICAgICB7IHNwYW50aXRsZSB9XHJcbiAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHsuLi5zdWJNZW51UHJvcHN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyhtZW51R3JvdXBEYXRhKS5tYXAoKGtleSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICA8SXRlbUdyb3VwIGtleT17a2V5fSB0aXRsZT17a2V5fT5cclxuICAgICAgICAgICAgICAgICAge3RoaXMucmVuZGVyTWVudUl0ZW0obWVudUdyb3VwRGF0YVtrZXldKX1cclxuICAgICAgICAgICAgICAgIDwvSXRlbUdyb3VwPlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJNZW51SXRlbShtZW51RGF0YSl9XHJcbiAgICAgICAgICA8L1N1Yk1lbnU+XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPE1lbnUuSXRlbSBrZXk9e2l0ZW1ba2V5RmllbGRdfSBkaXNhYmxlZD17ZGlzYWJsZWR9PlxyXG4gICAgICAgICAgICB7c2hvd0ljb24gJiYgaWNvbiA/IChcclxuICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgIHtnZXRJY29uKGljb24pfVxyXG4gICAgICAgICAgICAgICAge3NwYW50aXRsZX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgc3BhbnRpdGxlXHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICA8L01lbnUuSXRlbT5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9O1xyXG4gIHJlbmRlckNoaWxkcmVuID0gKCkgPT4ge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICByZXR1cm4gPD57Y2hpbGRyZW59PC8+O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMucmVuZGVyTWVudUl0ZW0oZGF0YVNvdXJjZSk7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgbWVudVByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXHJcbiAgICAgIFwiZGF0YVwiLFxyXG4gICAgICBcInN0b3JlXCIsXHJcbiAgICAgIFwidGl0bGVGaWVsZFwiLFxyXG4gICAgICBcImtleUZpZWxkXCIsXHJcbiAgICAgIFwic2hvd0ljb25cIixcclxuICAgIF0pO1xyXG4gICAgcmV0dXJuIDxNZW51IHsuLi5tZW51UHJvcHN9Pnt0aGlzLnJlbmRlckNoaWxkcmVuKCl9PC9NZW51PjtcclxuICB9XHJcbn1cclxuIl19
258
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL21lbnUvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJnZXRJY29uIiwib21pdCIsIlN1Yk1lbnUiLCJJdGVtIiwiSXRlbUdyb3VwIiwiTlNDTWVudSIsInByb3BzIiwiZGF0YVNvdXJjZSIsIm1lbnVzRGF0YSIsIkFycmF5IiwiaXNBcnJheSIsInRpdGxlRmllbGQiLCJrZXlGaWVsZCIsInNob3dJY29uIiwic3ViTWVudVByb3BzIiwidG9vbHRpcCIsIm1hcCIsIml0ZW0iLCJzdHlsZSIsImljb24iLCJkaXNhYmxlZCIsInNwYW50aXRsZSIsIm1lbnVHcm91cERhdGEiLCJtZW51RGF0YSIsImNoaWxkRGF0YSIsImdydW9wdGl0bGUiLCJncm91cE5hbWUiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsImtleSIsInJlbmRlck1lbnVJdGVtIiwiY2hpbGRyZW4iLCJzdGF0ZSIsImRhdGEiLCJzdG9yZSIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJ2aWV3bmFtZSIsInN0b3JlcyIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwibW9kZWwiLCJjb21wb25lbnQiLCJvbkJlZm9yZUxvYWQiLCJvcHRpb25zIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwic2V0U3RhdGUiLCJkYXRhQ2hhbmdlZCIsImF1dG9Mb2FkIiwibWVudVByb3BzIiwicmVuZGVyQ2hpbGRyZW4iLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsS0FBUCxNQUFrQyxhQUFs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RUFNakMsU0FOaUMsQ0FBYixDQUF0QjtBQVFBLDBCQUFPLDJCQUFVZ0QsU0FBVixFQUFzQixLQUFLQyxjQUFMLEVBQXRCLENBQVA7QUFDRDs7O1dBMUtELGtDQUFnQ0MsU0FBaEMsRUFBMkNDLFNBQTNDLEVBQTJEO0FBQ3pELFVBQVFsRCxVQUFSLEdBQXVCa0QsU0FBdkIsQ0FBUWxELFVBQVI7QUFDQSxVQUFRMkIsSUFBUixHQUFpQnNCLFNBQWpCLENBQVF0QixJQUFSOztBQUNBLFVBQUlBLElBQUosRUFBVTtBQUNSLFlBQUl3QixJQUFJLENBQUNDLFNBQUwsQ0FBZXBELFVBQWYsTUFBK0JtRCxJQUFJLENBQUNDLFNBQUwsQ0FBZXpCLElBQWYsQ0FBbkMsRUFBeUQ7QUFDdkQsaUJBQU87QUFDTDNCLFlBQUFBLFVBQVUsRUFBRTJCO0FBRFAsV0FBUDtBQUdEO0FBQ0Y7O0FBQ0QsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUFyQmtDckMsYTs7Z0JBQWhCUSxPLGFBQ0ZILE87O2dCQURFRyxPLFVBRUxGLEk7O2dCQUZLRSxPLGVBR0FELFM7O1NBSEFDLE8iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMTYgMDk6NDM6MjhcclxuICogQExhc3RFZGl0b3JzOiBQbGVhc2Ugc2V0IExhc3RFZGl0b3JzXHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjItMDItMjYgMTU6MTM6MjJcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5pbXBvcnQgeyBNZW51LCBNZW51UHJvcHMsIFN1Yk1lbnVQcm9wcywgVG9vbHRpcCB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgeyBnZXRJY29uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcblxyXG5pbnRlcmZhY2UgSU1lbnVQcm9wcyBleHRlbmRzIE1lbnVQcm9wcyB7XHJcbiAgZGF0YT86IEFycmF5PG9iamVjdD47XHJcbiAgdGl0bGVGaWVsZD86IHN0cmluZztcclxuICBrZXlGaWVsZD86IHN0cmluZztcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgc2hvd0ljb24/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekumljb24gLOm7mOiupHRydWVcclxuICBzdWJNZW51UHJvcHM/OiBTdWJNZW51UHJvcHM7XHJcbiAgdG9vbHRpcD86IGJvb2xlYW47XHJcbn1cclxuY29uc3QgeyBTdWJNZW51LCBJdGVtLCBJdGVtR3JvdXAgfSA9IE1lbnU7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NNZW51IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJTWVudVByb3BzPiB7XHJcbiAgc3RhdGljIFN1Yk1lbnUgPSBTdWJNZW51O1xyXG4gIHN0YXRpYyBJdGVtID0gSXRlbTtcclxuICBzdGF0aWMgSXRlbUdyb3VwID0gSXRlbUdyb3VwO1xyXG5cclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGFTb3VyY2U6IFtdLFxyXG4gIH07XHJcblxyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKG5leHRQcm9wcywgcHJldlN0YXRlOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSB9ID0gcHJldlN0YXRlO1xyXG4gICAgY29uc3QgeyBkYXRhIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KGRhdGEpKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGFTb3VyY2U6IGRhdGEsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7IGRhdGEsIHN0b3JlID0ge30sIGNoaWxkcmVuIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHsgdXJsLCBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSwgdmlld25hbWUsIC4uLnN0b3JlcyB9ID0gc3RvcmU7XHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdXJsKSkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOOAgWRhdGHkuI3og73pg73kuLrnqbrvvIFcIik7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgICAgbGV0IHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgbW9kZWw6IFwibW9kZWxcIixcclxuICAgICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgICAgbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgICBvbkJlZm9yZUxvYWQ6IGZ1bmN0aW9uIChzdG9yZSwgb3B0aW9ucykge1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLm9uQmVmb3JlTG9hZCwgX3RoaXMsIFtzdG9yZSwgb3B0aW9uc10pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxvYWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbW9kZWxEYXRhIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IG1vZGVsRGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICBpZiAodXJsICYmIGRhdGEgPT0gbnVsbCkge1xyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCwgLy/or7vlrZflhbjvvIx1cmzlm7rlrprvvIx2aWV3bmFtZVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnN0b3JlUHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGlmICh0aGlzLnByb3BzLmRhdGEpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5wcm9wcy5kYXRhLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgcmVuZGVyTWVudUl0ZW0gPSAobWVudXNEYXRhKSA9PiB7XHJcbiAgICBpZiAoIW1lbnVzRGF0YSB8fCAhQXJyYXkuaXNBcnJheShtZW51c0RhdGEpKSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICAgIGNvbnN0IHtcclxuICAgICAgdGl0bGVGaWVsZCA9IFwidGl0bGVcIixcclxuICAgICAga2V5RmllbGQgPSBcImtleVwiLFxyXG4gICAgICBzaG93SWNvbiA9IHRydWUsXHJcbiAgICAgIHN1Yk1lbnVQcm9wcyA9IHt9LFxyXG4gICAgICB0b29sdGlwID0gZmFsc2UsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIHJldHVybiBtZW51c0RhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgc3R5bGUsIGljb24sIGRpc2FibGVkIH0gPSBpdGVtO1xyXG4gICAgICBjb25zdCBzcGFudGl0bGUgPSA8c3BhbiBzdHlsZT17c3R5bGV9PntpdGVtW3RpdGxlRmllbGRdfTwvc3Bhbj47XHJcbiAgICAgIGlmIChpdGVtW1wiY2hpbGROb2Rlc1wiXSB8fCBpdGVtW1wiY2hpbGRyZW5cIl0pIHtcclxuICAgICAgICBsZXQgbWVudUdyb3VwRGF0YSA9IHt9LFxyXG4gICAgICAgICAgbWVudURhdGEgPSBbXTtcclxuICAgICAgICBsZXQgY2hpbGREYXRhID0gaXRlbVtcImNoaWxkTm9kZXNcIl0gfHwgaXRlbVtcImNoaWxkcmVuXCJdO1xyXG4gICAgICAgIGNoaWxkRGF0YS5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgIGxldCBncnVvcHRpdGxlID0gaXRlbS5ncm91cE5hbWU7XHJcbiAgICAgICAgICBpZiAoZ3J1b3B0aXRsZSkge1xyXG4gICAgICAgICAgICBpZiAoIW1lbnVHcm91cERhdGFbZ3J1b3B0aXRsZV0pIG1lbnVHcm91cERhdGFbZ3J1b3B0aXRsZV0gPSBbXTtcclxuICAgICAgICAgICAgbWVudUdyb3VwRGF0YVtncnVvcHRpdGxlXS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbWVudURhdGEucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPFN1Yk1lbnVcclxuICAgICAgICAgICAga2V5PXtpdGVtW2tleUZpZWxkXX1cclxuICAgICAgICAgICAgdGl0bGU9e1xyXG4gICAgICAgICAgICAgIHNob3dJY29uICYmIGljb24gPyAoXHJcbiAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAge2dldEljb24oaWNvbil9XHJcbiAgICAgICAgICAgICAgICAgIHt0b29sdGlwID8gKFxyXG4gICAgICAgICAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXtzcGFudGl0bGV9PntzcGFudGl0bGV9PC9Ub29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgICAgIHsgc3BhbnRpdGxlIH1cclxuICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgIHt0b29sdGlwID8gKFxyXG4gICAgICAgICAgICAgICAgICAgIDxUb29sdGlwIHRpdGxlPXtzcGFudGl0bGV9PntzcGFudGl0bGV9PC9Ub29sdGlwPlxyXG4gICAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgICAgIHsgc3BhbnRpdGxlIH1cclxuICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgey4uLnN1Yk1lbnVQcm9wc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge09iamVjdC5rZXlzKG1lbnVHcm91cERhdGEpLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgIDxJdGVtR3JvdXAga2V5PXtrZXl9IHRpdGxlPXtrZXl9PlxyXG4gICAgICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJNZW51SXRlbShtZW51R3JvdXBEYXRhW2tleV0pfVxyXG4gICAgICAgICAgICAgICAgPC9JdGVtR3JvdXA+XHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlck1lbnVJdGVtKG1lbnVEYXRhKX1cclxuICAgICAgICAgIDwvU3ViTWVudT5cclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8TWVudS5JdGVtIGtleT17aXRlbVtrZXlGaWVsZF19IGRpc2FibGVkPXtkaXNhYmxlZH0+XHJcbiAgICAgICAgICAgIHtzaG93SWNvbiAmJiBpY29uID8gKFxyXG4gICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAge2dldEljb24oaWNvbil9XHJcbiAgICAgICAgICAgICAgICB7dG9vbHRpcCA/IChcclxuICAgICAgICAgICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3NwYW50aXRsZX0+e3NwYW50aXRsZX08L1Rvb2x0aXA+XHJcbiAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgICB7IHNwYW50aXRsZSB9XHJcbiAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgKSA6IChcclxuICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgIHt0b29sdGlwID8gKFxyXG4gICAgICAgICAgICAgICAgICA8VG9vbHRpcCB0aXRsZT17c3BhbnRpdGxlfT57c3BhbnRpdGxlfTwvVG9vbHRpcD5cclxuICAgICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICAgIHsgc3BhbnRpdGxlIH1cclxuICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICApfVxyXG4gICAgICAgICAgPC9NZW51Lkl0ZW0+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfTtcclxuICByZW5kZXJDaGlsZHJlbiA9ICgpID0+IHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGRhdGFTb3VyY2UgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgcmV0dXJuIDw+e2NoaWxkcmVufTwvPjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlck1lbnVJdGVtKGRhdGFTb3VyY2UpO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IG1lbnVQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICBcImRhdGFcIixcclxuICAgICAgXCJzdG9yZVwiLFxyXG4gICAgICBcInRpdGxlRmllbGRcIixcclxuICAgICAgXCJrZXlGaWVsZFwiLFxyXG4gICAgICBcInNob3dJY29uXCIsXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgXSk7XHJcbiAgICByZXR1cm4gPE1lbnUgey4uLm1lbnVQcm9wc30+e3RoaXMucmVuZGVyQ2hpbGRyZW4oKX08L01lbnU+O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -111,6 +111,8 @@ var NSCSelect = /*#__PURE__*/function (_PureComponent) {
111
111
  newData = [].concat(_toConsumableArray(addData), _toConsumableArray(newData));
112
112
  }
113
113
 
114
+ var spliceData = _toConsumableArray(newData);
115
+
114
116
  if (deleteData.length > 0) {
115
117
  var valueFields = valueField.split(",");
116
118
  newData.map(function (item, i) {
@@ -120,12 +122,12 @@ var NSCSelect = /*#__PURE__*/function (_PureComponent) {
120
122
  });
121
123
 
122
124
  if (deleteData.indexOf(value) > -1) {
123
- newData.splice(i, 1);
125
+ spliceData.splice(i, 1);
124
126
  }
125
127
  });
126
128
  }
127
129
 
128
- return newData;
130
+ return spliceData;
129
131
  };
130
132
 
131
133
  if (!children) {
@@ -509,4 +511,4 @@ _defineProperty(NSCSelect, "Option", Option);
509
511
  _defineProperty(NSCSelect, "OptGroup", OptGroup);
510
512
 
511
513
  export { NSCSelect as default };
512
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3NlbGVjdC9pbmRleC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiU3RvcmUiLCJ1dGlscyIsImNvbmZpZyIsInN0eWxlcyIsImNscyIsIlBpbnlpbk1hdGNoIiwiT3B0aW9uIiwiT3B0R3JvdXAiLCJOU0NTZWxlY3QiLCJwcm9wcyIsImRhdGFTb3VyY2UiLCJzZWxlY3RWYWx1ZSIsImFsbERhdGFTb3VyY2UiLCJjaGlsZHJlbiIsImFsbENoaWxkcmVuIiwiZGF0YSIsInN0b3JlIiwib3B0aW9ucyIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJ2aWV3bmFtZSIsImNhY2hlZCIsImNhY2hlS2V5Iiwic3RvcmVzIiwidmlld1VybCIsImdldEFsbERhdGEiLCJuZXdEYXRhIiwibGVuZ3RoIiwidmFsdWVGaWVsZHMiLCJzcGxpdCIsIm1hcCIsIml0ZW0iLCJpIiwidmFsdWUiLCJ2IiwiaW5kZXgiLCJpbmRleE9mIiwic3BsaWNlIiwiRXJyb3IiLCJfdGhpcyIsInN0b3JlUHJvcHMiLCJtb2RlbCIsImNvbXBvbmVudCIsIm9uQmVmb3JlTG9hZCIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsInNldFN0YXRlIiwiZGF0YUNoYW5nZWQiLCJpc0NhY2hlZCIsImlzQ2FjaGVLZXkiLCJhdXRvTG9hZCIsInN0YXRlIiwibmV3UHJvcHMiLCJuZXdTdGF0ZSIsIlNuYXBzaG90IiwiSlNPTiIsInN0cmluZ2lmeSIsIkFycmF5IiwiaXNBcnJheSIsInN0YXRlQ2hpbGRyZW5Qcm9wcyIsInMiLCJwdXNoIiwiY2hpbGRyZW5Qcm9wcyIsImMiLCJsYWJlbEZpZWxkIiwiZmlsdGVyT3B0aW9uIiwib25TZWFyY2giLCJyZXN1bHQiLCJmb3JFYWNoIiwibGFiZWwiLCJsYWJlbEZpZWxkcyIsImwiLCJmbGFnIiwibWF0Y2giLCJjaGlsZCIsIm9wdGlvbkRhdGEiLCJrZXkiLCJpZCIsImRpc2FibGVkIiwic2hvd0dyb3VwIiwib3B0R3JvdXBEYXRhIiwiZ3JvdXBOYW1lIiwib3B0aW9uIiwicmVuZGVyT3B0aW9uIiwib3B0R3JvdXAiLCJPYmplY3QiLCJrZXlzIiwib25DaGFuZ2UiLCJvcGVuIiwicmVzZXREYXRhIiwiZGVmYXVsdFN0eWxlIiwicGFyYW1zIiwic2hvd1NlYXJjaCIsIm9wdGlvbkZpbHRlclByb3AiLCJwbGFjZWhvbGRlciIsImFsbG93Q2xlYXIiLCJjbGFzc05hbWUiLCJiaW5kIiwib25Ecm9wZG93blZpc2libGVDaGFuZ2UiLCJyZW5kZXJDaGlsZHJlbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFFQSxPQUFPQyxLQUFQLE1BQWtDLGFBQWxDO0FBQ0EsU0FBU0MsS0FBVCxRQUFzQix1QkFBdEI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFdBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLE9BQU9DLEdBQVAsTUFBZ0IsWUFBaEI7QUFFQSxPQUFPQyxXQUFQLE1BQXdCLGNBQXhCO0FBQ0EsSUFBUUMsTUFBUixXQUFRQSxNQUFSO0FBQUEsSUFBZ0JDLFFBQWhCLFdBQWdCQSxRQUFoQjs7SUFjcUJDLFM7Ozs7O0FBV25CLHFCQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUE7O0FBQ2pCLCtCQUFNQSxLQUFOOztBQURpQiw2REFSWDtBQUNOQyxNQUFBQSxVQUFVLEVBQUUsRUFETjtBQUVOQyxNQUFBQSxXQUFXLEVBQUUsSUFGUDtBQUdOQyxNQUFBQSxhQUFhLEVBQUUsRUFIVDtBQUlOQyxNQUFBQSxRQUFRLEVBQUUsSUFKSjtBQUtOQyxNQUFBQSxXQUFXLEVBQUU7QUFMUCxLQVFXOztBQUFBLDZEQURYLEVBQ1c7O0FBRWpCLFFBQ0VDLElBREYsR0FRSU4s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a0MsSUFBbEM7QUFKM0IsV0FLTTdGLEtBTE4sRUFNTXVGLE1BTk4sR0FRRyxLQUFLUSxjQUFMLEVBUkgsQ0FERjtBQVlEO0FBQ0Y7Ozs7RUF6V29DekcsYTs7Z0JBQWxCUyxTLFlBQ0hGLE07O2dCQURHRSxTLGNBRURELFE7O1NBRkNDLFMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBTZWxlY3QsIFNlbGVjdFByb3BzIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFN0b3JlUHJvcHMgfSBmcm9tIFwiQGJqLW5zYy9tc25cIjtcclxuaW1wb3J0IHsgdXRpbHMgfSBmcm9tIFwiQGJqLW5zYy9tc24vbGliL3V0aWxzXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lmxlc3NcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgUGlueWluTWF0Y2ggZnJvbSBcInBpbnlpbi1tYXRjaFwiO1xyXG5jb25zdCB7IE9wdGlvbiwgT3B0R3JvdXAgfSA9IFNlbGVjdDtcclxuXHJcbmludGVyZmFjZSBJU2VsZWN0UHJvcHMgZXh0ZW5kcyBTZWxlY3RQcm9wczxhbnk+IHtcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgZGF0YT86IEFycmF5PE9iamVjdD47IC8v6buY6K6k5pWw5o2uXHJcbiAgbGFiZWxGaWVsZD86IHN0cmluZztcclxuICB2YWx1ZUZpZWxkPzogc3RyaW5nO1xyXG4gIGRlZmF1bHRTdHlsZT86IGJvb2xlYW47XHJcbiAgc2hvd0dyb3VwPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbnu4RcclxuICBhZGREYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/phY3lkIhzdG9yZeS9v+eUqO+8jOS7juWinuWKoOmineWklueahOaVsOaNrlxyXG4gIGRlbGV0ZURhdGE/OiBBcnJheTxTdHJpbmc+OyAvL+mFjeWQiHN0b3Jl5L2/55So77yM5Yig6Zmk5LuO5pWw5o2u5bqT5Lit6I635Y+W5Yiw55qE5oyH5a6a5pWw5o2uXHJcbiAgdmFsdWVCcmVhaz86IHN0cmluZzsgLy/lpJrkuKp2YWx1ZeS9v+eUqOeahOWIhumalOesplxyXG4gIFtwcm9OYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDU2VsZWN0IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJU2VsZWN0UHJvcHM+IHtcclxuICBzdGF0aWMgT3B0aW9uID0gT3B0aW9uO1xyXG4gIHN0YXRpYyBPcHRHcm91cCA9IE9wdEdyb3VwO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogW10sXHJcbiAgICBzZWxlY3RWYWx1ZTogbnVsbCxcclxuICAgIGFsbERhdGFTb3VyY2U6IFtdLFxyXG4gICAgY2hpbGRyZW46IG51bGwsXHJcbiAgICBhbGxDaGlsZHJlbjogbnVsbCxcclxuICB9O1xyXG4gIHN0b3JlID0ge30gYXMgU3RvcmVQcm9wcztcclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBkYXRhLFxyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgYWRkRGF0YSA9IFtdLFxyXG4gICAgICBkZWxldGVEYXRhID0gW10sXHJcbiAgICAgIHZhbHVlRmllbGQgPSBcInZhbHVlXCIsXHJcbiAgICB9ID0gcHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHVybCxcclxuICAgICAgbGlzdGVuZXJzOiBsaXN0ZW5lcnNQb3BzID0ge30sXHJcbiAgICAgIHZpZXduYW1lLFxyXG4gICAgICBjYWNoZWQsXHJcbiAgICAgIGNhY2hlS2V5LFxyXG4gICAgICAuLi5zdG9yZXNcclxuICAgIH0gPSBzdG9yZTtcclxuICAgIGxldCB7IHZpZXdVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgY29uc3QgZ2V0QWxsRGF0YSA9IChkYXRhKSA9PiB7XHJcbiAgICAgIGxldCBuZXdEYXRhID0gWy4uLmRhdGFdO1xyXG4gICAgICBpZiAoYWRkRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgbmV3RGF0YSA9IFsuLi5hZGREYXRhLCAuLi5uZXdEYXRhXTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoZGVsZXRlRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVGaWVsZHM6IGFueSA9IHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgIG5ld0RhdGEubWFwKChpdGVtLCBpKSA9PiB7XHJcbiAgICAgICAgICBsZXQgdmFsdWUgPSBcIlwiO1xyXG4gICAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICB2YWx1ZSA9IGluZGV4ID09IDAgPyB2YWx1ZSArIGl0ZW1bdl0gOiB2YWx1ZSArIFwiLFwiICsgaXRlbVt2XTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgaWYgKGRlbGV0ZURhdGEuaW5kZXhPZih2YWx1ZSkgPiAtMSkge1xyXG4gICAgICAgICAgICBuZXdEYXRhLnNwbGljZShpLCAxKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbmV3RGF0YTtcclxuICAgIH07XHJcbiAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgIGlmICghKGRhdGEgfHwgdmlld25hbWUgfHwgdXJsIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs44CBdmlld25hbWXjgIFkYXRh44CBb3B0aW9uc+S4jeiDvemDveS4uuepuu+8gVwiKTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgICBsZXQgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICBtb2RlbDogXCJtb2RlbFwiLFxyXG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgICBsaXN0ZW5lcnM6IHtcclxuICAgICAgICAgIG9uQmVmb3JlTG9hZDogZnVuY3Rpb24gKHN0b3JlLCBvcHRpb25zKSB7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMub25CZWZvcmVMb2FkLCBfdGhpcywgW3N0b3JlLCBvcHRpb25zXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgbG9hZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3RGF0YSA9IGdldEFsbERhdGEoZGF0YSk7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbmV3RGF0YSwgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgY29uc3QgbmV3RGF0YSA9IGdldEFsbERhdGEoZGF0YSk7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogbmV3RGF0YSwgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICBpZiAoKHZpZXduYW1lIHx8IHVybCkgJiYgZGF0YSA9PSBudWxsICYmIG9wdGlvbnMgPT0gbnVsbCkge1xyXG4gICAgICAgIGxldCBpc0NhY2hlZCA9IGNhY2hlZDtcclxuICAgICAgICBsZXQgaXNDYWNoZUtleSA9IGNhY2hlS2V5O1xyXG4gICAgICAgIGlmICh2aWV3bmFtZSkge1xyXG4gICAgICAgICAgaWYgKHR5cGVvZiBjYWNoZWQgIT09IFwiYm9vbGVhblwiKSB7XHJcbiAgICAgICAgICAgIGlzQ2FjaGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgaXNDYWNoZUtleSA9IGlzQ2FjaGVLZXkgPyBpc0NhY2hlS2V5IDogdmlld25hbWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCB8fCB2aWV3VXJsICsgdmlld25hbWUsIC8v6K+75a2X5YW477yMdXJs5Zu65a6a77yMdmlld25hbWVcclxuICAgICAgICAgICAgY2FjaGVkOiBpc0NhY2hlZCxcclxuICAgICAgICAgICAgY2FjaGVLZXk6IGlzQ2FjaGVLZXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4uc3RvcmVQcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RvcmUgPSBuZXcgU3RvcmUoc3RvcmVQcm9wcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldERhdGEoKSB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBhbGxEYXRhU291cmNlLCBhbGxDaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHsgY2hpbGRyZW46IGFsbENoaWxkcmVuIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogYWxsRGF0YVNvdXJjZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXREYXRhKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuYWxsRGF0YVNvdXJjZTtcclxuICB9XHJcblxyXG4gIGdldFZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuc2VsZWN0VmFsdWU7XHJcbiAgfVxyXG4gIHNldFZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0VmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIWNoaWxkcmVuICYmIChkYXRhIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGRhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgICBhbGxEYXRhU291cmNlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgY29tcG9uZW50RGlkVXBkYXRlKG5ld1Byb3BzLCBuZXdTdGF0ZSwgU25hcHNob3QpIHtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucywgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICBjb25zdCBuZXdEYXRhID0gZGF0YSA/IGRhdGEgOiBvcHRpb25zO1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoYWxsRGF0YVNvdXJjZSkgIT09IEpTT04uc3RyaW5naWZ5KG5ld0RhdGEpKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgICAgYWxsRGF0YVNvdXJjZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbiAmJiBBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjb25zdCBzdGF0ZUNoaWxkcmVuUHJvcHM6IGFueSA9IFtdO1xyXG4gICAgICBhbGxDaGlsZHJlbi5tYXAoKHM6IGFueSkgPT4ge1xyXG4gICAgICAgIHN0YXRlQ2hpbGRyZW5Qcm9wcy5wdXNoKHMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgY29uc3QgY2hpbGRyZW5Qcm9wczogYW55ID0gW107XHJcbiAgICAgIGNoaWxkcmVuLm1hcCgoYzogYW55KSA9PiB7XHJcbiAgICAgICAgY2hpbGRyZW5Qcm9wcy5wdXNoKGMucHJvcHMpO1xyXG4gICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHN0YXRlQ2hpbGRyZW5Qcm9wcykgIT09IEpTT04uc3RyaW5naWZ5KGNoaWxkcmVuUHJvcHMpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgICAgYWxsQ2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uU2VhcmNoKHZhbHVlKSB7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBsYWJlbEZpZWxkID0gXCJsYWJlbFwiLFxyXG4gICAgICBmaWx0ZXJPcHRpb24gPSB0cnVlLFxyXG4gICAgICBvblNlYXJjaCxcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChmaWx0ZXJPcHRpb24pIHtcclxuICAgICAgbGV0IHJlc3VsdCA9IFtdO1xyXG4gICAgICBpZiAoIWNoaWxkcmVuKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICBhbGxEYXRhU291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgICAgICAgaWYgKGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgbGFiZWwgPSBpdGVtW2xhYmVsRmllbGRdO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGxhYmVsRmllbGRzOiBhbnkgPSBsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICAgICAgICBsYWJlbEZpZWxkcy5tYXAoKGwsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGl0ZW1bbF0gOiBsYWJlbCArIFwiLVwiICsgaXRlbVtsXTtcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQgZmxhZyA9IFBpbnlpbk1hdGNoLm1hdGNoKGxhYmVsLCB2YWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0LnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGRhdGFTb3VyY2U6IHJlc3VsdCxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgZGF0YVNvdXJjZTogYWxsRGF0YVNvdXJjZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFsbENoaWxkcmVuKSkge1xyXG4gICAgICAgICAgICBhbGxDaGlsZHJlbi5tYXAoKGNoaWxkOiBhbnksIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgbGV0IGxhYmVsID0gY2hpbGQ/LnByb3BzPy5jaGlsZHJlbjtcclxuICAgICAgICAgICAgICBsZXQgZmxhZyA9IFBpbnlpbk1hdGNoLm1hdGNoKGxhYmVsLCB2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiByZXN1bHQsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25TZWFyY2ggJiYgb25TZWFyY2godmFsdWUpO1xyXG4gIH1cclxuICByZW5kZXJPcHRpb24ob3B0aW9uRGF0YSkge1xyXG4gICAgbGV0IHsgbGFiZWxGaWVsZCA9IFwibGFiZWxcIiwgdmFsdWVGaWVsZCA9IFwidmFsdWVcIiwgc3RvcmUgPSB7fSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHJldHVybiBvcHRpb25EYXRhLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBsZXQgdmFsdWUgPSBcIlwiO1xyXG4gICAgICBpZiAodmFsdWVGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICB2YWx1ZSA9IGl0ZW1bdmFsdWVGaWVsZF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVGaWVsZHM6IGFueSA9IHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBrZXkgPSBpdGVtLmlkID8gKGl0ZW0uaWQgIT09IFwidW5kZWZpbmVkXCIgPyBpdGVtLmlkIDogdmFsdWUpIDogdmFsdWU7XHJcbiAgICAgIGxldCBsYWJlbCA9IFwiXCI7XHJcbiAgICAgIGlmIChsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIGxhYmVsID0gaXRlbVtsYWJlbEZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBsYWJlbEZpZWxkczogYW55ID0gbGFiZWxGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgbGFiZWwgPSBpbmRleCA9PSAwID8gbGFiZWwgKyBpdGVtW2xdIDogbGFiZWwgKyBcIi1cIiArIGl0ZW1bbF07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8T3B0aW9uXHJcbiAgICAgICAgICBrZXk9e2tleX1cclxuICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cclxuICAgICAgICAgIGxhYmVsPXtsYWJlbH1cclxuICAgICAgICAgIGRpc2FibGVkPXtpdGVtLmRpc2FibGVkID8gdHJ1ZSA6IGZhbHNlfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtsYWJlbH1cclxuICAgICAgICA8L09wdGlvbj5cclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICByZW5kZXJDaGlsZHJlbigpIHtcclxuICAgIGNvbnN0IHsgc2hvd0dyb3VwID0gdHJ1ZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZGF0YVNvdXJjZSwgY2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgcmV0dXJuIDw+e2NoaWxkcmVufTwvPjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxldCBvcHRHcm91cERhdGEgPSB7fSxcclxuICAgICAgICBvcHRpb25EYXRhID0gW107XHJcbiAgICAgIGRhdGFTb3VyY2UuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIGxldCBsYWJlbCA9IGl0ZW0uZ3JvdXBOYW1lO1xyXG4gICAgICAgIGlmIChsYWJlbCAmJiBzaG93R3JvdXApIHtcclxuICAgICAgICAgIGlmICghb3B0R3JvdXBEYXRhW2xhYmVsXSkgb3B0R3JvdXBEYXRhW2xhYmVsXSA9IFtdO1xyXG4gICAgICAgICAgb3B0R3JvdXBEYXRhW2xhYmVsXS5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBvcHRpb25EYXRhLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgbGV0IG9wdGlvbiA9IHRoaXMucmVuZGVyT3B0aW9uKG9wdGlvbkRhdGEpO1xyXG4gICAgICBsZXQgb3B0R3JvdXAgPSBPYmplY3Qua2V5cyhvcHRHcm91cERhdGEpLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxPcHRHcm91cCBrZXk9e2tleX0gbGFiZWw9e2tleX0+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlck9wdGlvbihvcHRHcm91cERhdGFba2V5XSl9XHJcbiAgICAgICAgICA8L09wdEdyb3VwPlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICB7b3B0aW9ufVxyXG4gICAgICAgICAge29wdEdyb3VwfVxyXG4gICAgICAgIDwvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGlmIChvbkNoYW5nZSkge1xyXG4gICAgICBvbkNoYW5nZSh2YWx1ZSwgb3B0aW9ucyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlKG9wZW4pIHtcclxuICAgIGlmICghb3Blbikge1xyXG4gICAgICB0aGlzLnJlc2V0RGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBzdG9yZSxcclxuICAgICAgZGF0YSxcclxuICAgICAgb25DaGFuZ2UsXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGxhYmVsRmllbGQsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICAgIGRlZmF1bHRTdHlsZSA9IHRydWUsXHJcbiAgICAgIHNob3dHcm91cCA9IHRydWUsXHJcbiAgICAgIGFkZERhdGEsXHJcbiAgICAgIGRlbGV0ZURhdGEsXHJcbiAgICAgIC4uLnBhcmFtc1xyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBwcm9wcyA9IHtcclxuICAgICAgZmlsdGVyT3B0aW9uOiBmYWxzZSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJ1ZSxcclxuICAgICAgb3B0aW9uRmlsdGVyUHJvcDogXCJsYWJlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlcjogXCLor7fpgInmi6lcIixcclxuICAgICAgYWxsb3dDbGVhcjogdHJ1ZSxcclxuICAgIH07XHJcbiAgICBpZiAoZGVmYXVsdFN0eWxlKSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJuc2Nfc2VsZWN0XCJdLCB0aGlzLnByb3BzLmNsYXNzTmFtZSl9PlxyXG4gICAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgb25Ecm9wZG93blZpc2libGVDaGFuZ2U9e3RoaXMub25Ecm9wZG93blZpc2libGVDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxTZWxlY3RcclxuICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnNlbGVjdFZhbHVlfVxyXG4gICAgICAgICAgb25TZWFyY2g9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBvbkRyb3Bkb3duVmlzaWJsZUNoYW5nZT17dGhpcy5vbkRyb3Bkb3duVmlzaWJsZUNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7dGhpcy5yZW5kZXJDaGlsZHJlbigpfVxyXG4gICAgICAgIDwvU2VsZWN0PlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
514
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL3NlbGVjdC9pbmRleC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiU3RvcmUiLCJ1dGlscyIsImNvbmZpZyIsInN0eWxlcyIsImNscyIsIlBpbnlpbk1hdGNoIiwiT3B0aW9uIiwiT3B0R3JvdXAiLCJOU0NTZWxlY3QiLCJwcm9wcyIsImRhdGFTb3VyY2UiLCJzZWxlY3RWYWx1ZSIsImFsbERhdGFTb3VyY2UiLCJjaGlsZHJlbiIsImFsbENoaWxkcmVuIiwiZGF0YSIsInN0b3JlIiwib3B0aW9ucyIsImFkZERhdGEiLCJkZWxldGVEYXRhIiwidmFsdWVGaWVsZCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJ2aWV3bmFtZSIsImNhY2hlZCIsImNhY2hlS2V5Iiwic3RvcmVzIiwidmlld1VybCIsImdldEFsbERhdGEiLCJuZXdEYXRhIiwibGVuZ3RoIiwic3BsaWNlRGF0YSIsInZhbHVlRmllbGRzIiwic3BsaXQiLCJtYXAiLCJpdGVtIiwiaSIsInZhbHVlIiwidiIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSIsIkVycm9yIiwiX3RoaXMiLCJzdG9yZVByb3BzIiwibW9kZWwiLCJjb21wb25lbnQiLCJvbkJlZm9yZUxvYWQiLCJjYWxsYmFjayIsImxvYWQiLCJtb2RlbERhdGEiLCJzZXRTdGF0ZSIsImRhdGFDaGFuZ2VkIiwiaXNDYWNoZWQiLCJpc0NhY2hlS2V5IiwiYXV0b0xvYWQiLCJzdGF0ZSIsIm5ld1Byb3BzIiwibmV3U3RhdGUiLCJTbmFwc2hvdCIsIkpTT04iLCJzdHJpbmdpZnkiLCJBcnJheSIsImlzQXJyYXkiLCJzdGF0ZUNoaWxkcmVuUHJvcHMiLCJzIiwicHVzaCIsImNoaWxkcmVuUHJvcHMiLCJjIiwibGFiZWxGaWVsZCIsImZpbHRlck9wdGlvbiIsIm9uU2VhcmNoIiwicmVzdWx0IiwiZm9yRWFjaCIsImxhYmVsIiwibGFiZWxGaWVsZHMiLCJsIiwiZmxhZyIsIm1hdGNoIiwiY2hpbGQiLCJvcHRpb25EYXRhIiwia2V5IiwiaWQiLCJkaXNhYmxlZCIsInNob3dHcm91cCIsIm9wdEdyb3VwRGF0YSIsImdyb3VwTmFtZSIsIm9wdGlvbiIsInJlbmRlck9wdGlvbiIsIm9wdEdyb3VwIiwiT2JqZWN0Iiwia2V5cyIsIm9uQ2hhbmdlIiwib3BlbiIsInJlc2V0RGF0YSIsImRlZmF1bHRTdHlsZSIsInBhcmFtcyIsInNob3dTZWFyY2giLCJvcHRpb25GaWx0ZXJQcm9wIiwicGxhY2Vob2xkZXIiLCJhbGxvd0NsZWFyIiwiY2xhc3NOYW1lIiwiYmluZCIsIm9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlIiwicmVuZGVyQ2hpbGRyZW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBRUEsT0FBT0MsS0FBUCxNQUFrQyxhQUFsQztBQUNBLFNBQVNDLEtBQVQsUUFBc0IsdUJBQXRCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixXQUFuQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsY0FBbkI7QUFDQSxPQUFPQyxHQUFQLE1BQWdCLFlBQWhCO0FBRUEsT0FBT0MsV0FBUCxNQUF3QixjQUF4QjtBQUNBLElBQVFDLE1BQVIsV0FBUUEsTUFBUjtBQUFBLElBQWdCQyxRQUFoQixXQUFnQkEsUUFBaEI7O0lBY3FCQyxTOzs7OztBQVduQixxQkFBWUMsS0FBWixFQUFtQjtBQUFBOztBQUFBOztBQUNqQiwrQkFBTUEsS0FBTjs7QUFEaUIsNkRBUlg7QUFDTkMsTUFBQUEsVUFBVSxFQUFFLEVBRE47QUFFTkMsTUFBQUEsV0FBVyxFQUFFLElBRlA7QUFHTkMsTUFBQUEsYUFBYSxFQUFFLEVBSFQ7QUFJTkMsTUFBQUEsUUFBUSxFQUFFLElBSko7QUFLTkMsTUFBQUEsV0FBVyxFQUFFO0FBTFAsS0FRVzs7QUFBQSw2REFEWCxFQUNXOztBQUVqQixRQUNF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QUFJRSxVQUFBLHVCQUF1QixFQUFFLEtBQUtDLHVCQUFMLENBQTZCRCxJQUE3QixDQUFrQyxJQUFsQztBQUozQixXQUtNOUYsS0FMTixFQU1Nd0YsTUFOTixHQVFHLEtBQUtRLGNBQUwsRUFSSCxDQURGO0FBWUQ7QUFDRjs7OztFQTFXb0MxRyxhOztnQkFBbEJTLFMsWUFDSEYsTTs7Z0JBREdFLFMsY0FFREQsUTs7U0FGQ0MsUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7IFNlbGVjdCwgU2VsZWN0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgU3RvcmUsIHsgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgeyB1dGlscyB9IGZyb20gXCJAYmotbnNjL21zbi9saWIvdXRpbHNcIjtcclxuaW1wb3J0IGNvbmZpZyBmcm9tIFwiLi4vY29uZmlnXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcbmltcG9ydCBQaW55aW5NYXRjaCBmcm9tIFwicGlueWluLW1hdGNoXCI7XHJcbmNvbnN0IHsgT3B0aW9uLCBPcHRHcm91cCB9ID0gU2VsZWN0O1xyXG5cclxuaW50ZXJmYWNlIElTZWxlY3RQcm9wcyBleHRlbmRzIFNlbGVjdFByb3BzPGFueT4ge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBkYXRhPzogQXJyYXk8T2JqZWN0PjsgLy/pu5jorqTmlbDmja5cclxuICBsYWJlbEZpZWxkPzogc3RyaW5nO1xyXG4gIHZhbHVlRmllbGQ/OiBzdHJpbmc7XHJcbiAgZGVmYXVsdFN0eWxlPzogYm9vbGVhbjtcclxuICBzaG93R3JvdXA/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekuuWIhue7hFxyXG4gIGFkZERhdGE/OiBBcnJheTxPYmplY3Q+OyAvL+mFjeWQiHN0b3Jl5L2/55So77yM5LuO5aKe5Yqg6aKd5aSW55qE5pWw5o2uXHJcbiAgZGVsZXRlRGF0YT86IEFycmF5PFN0cmluZz47IC8v6YWN5ZCIc3RvcmXkvb/nlKjvvIzliKDpmaTku47mlbDmja7lupPkuK3ojrflj5bliLDnmoTmjIflrprmlbDmja5cclxuICB2YWx1ZUJyZWFrPzogc3RyaW5nOyAvL+WkmuS4qnZhbHVl5L2/55So55qE5YiG6ZqU56ymXHJcbiAgW3Byb05hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NTZWxlY3QgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PElTZWxlY3RQcm9wcz4ge1xyXG4gIHN0YXRpYyBPcHRpb24gPSBPcHRpb247XHJcbiAgc3RhdGljIE9wdEdyb3VwID0gT3B0R3JvdXA7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBkYXRhU291cmNlOiBbXSxcclxuICAgIHNlbGVjdFZhbHVlOiBudWxsLFxyXG4gICAgYWxsRGF0YVNvdXJjZTogW10sXHJcbiAgICBjaGlsZHJlbjogbnVsbCxcclxuICAgIGFsbENoaWxkcmVuOiBudWxsLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGRhdGEsXHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICBhZGREYXRhID0gW10sXHJcbiAgICAgIGRlbGV0ZURhdGEgPSBbXSxcclxuICAgICAgdmFsdWVGaWVsZCA9IFwidmFsdWVcIixcclxuICAgIH0gPSBwcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgdXJsLFxyXG4gICAgICBsaXN0ZW5lcnM6IGxpc3RlbmVyc1BvcHMgPSB7fSxcclxuICAgICAgdmlld25hbWUsXHJcbiAgICAgIGNhY2hlZCxcclxuICAgICAgY2FjaGVLZXksXHJcbiAgICAgIC4uLnN0b3Jlc1xyXG4gICAgfSA9IHN0b3JlO1xyXG4gICAgbGV0IHsgdmlld1VybCB9ID0gY29uZmlnKCk7XHJcbiAgICBjb25zdCBnZXRBbGxEYXRhID0gKGRhdGEpID0+IHtcclxuICAgICAgbGV0IG5ld0RhdGEgPSBbLi4uZGF0YV07XHJcbiAgICAgIGlmIChhZGREYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBuZXdEYXRhID0gWy4uLmFkZERhdGEsIC4uLm5ld0RhdGFdO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBzcGxpY2VEYXRhID0gWy4uLm5ld0RhdGFdXHJcbiAgICAgIGlmIChkZWxldGVEYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgbmV3RGF0YS5tYXAoKGl0ZW0sIGkpID0+IHtcclxuICAgICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgICB2YWx1ZUZpZWxkcy5tYXAoKHYsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBpZiAoZGVsZXRlRGF0YS5pbmRleE9mKHZhbHVlKSA+IC0xKSB7XHJcbiAgICAgICAgICAgIHNwbGljZURhdGEuc3BsaWNlKGksIDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBzcGxpY2VEYXRhO1xyXG4gICAgfTtcclxuICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgaWYgKCEoZGF0YSB8fCB2aWV3bmFtZSB8fCB1cmwgfHwgb3B0aW9ucykpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzjgIF2aWV3bmFtZeOAgWRhdGHjgIFvcHRpb25z5LiN6IO96YO95Li656m677yBXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICAgIGxldCBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBuZXdEYXRhLCBhbGxEYXRhU291cmNlOiBuZXdEYXRhIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmxvYWQsIF90aGlzLCBbZGF0YSwgbW9kZWxEYXRhLCBzdG9yZV0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRhdGFDaGFuZ2VkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gZ2V0QWxsRGF0YShkYXRhKTtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBuZXdEYXRhLCBhbGxEYXRhU291cmNlOiBuZXdEYXRhIH0pO1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLmRhdGFDaGFuZ2VkLCBfdGhpcywgW1xyXG4gICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgbW9kZWxEYXRhLFxyXG4gICAgICAgICAgICAgIHN0b3JlLFxyXG4gICAgICAgICAgICBdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICAuLi5zdG9yZXMsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICgodmlld25hbWUgfHwgdXJsKSAmJiBkYXRhID09IG51bGwgJiYgb3B0aW9ucyA9PSBudWxsKSB7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVkID0gY2FjaGVkO1xyXG4gICAgICAgIGxldCBpc0NhY2hlS2V5ID0gY2FjaGVLZXk7XHJcbiAgICAgICAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGNhY2hlZCAhPT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgaXNDYWNoZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICBpc0NhY2hlS2V5ID0gaXNDYWNoZUtleSA/IGlzQ2FjaGVLZXkgOiB2aWV3bmFtZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc3RvcmVQcm9wcyA9IHtcclxuICAgICAgICAgIC4uLntcclxuICAgICAgICAgICAgYXV0b0xvYWQ6IHRydWUsXHJcbiAgICAgICAgICAgIHVybDogdXJsIHx8IHZpZXdVcmwgKyB2aWV3bmFtZSwgLy/or7vlrZflhbjvvIx1cmzlm7rlrprvvIx2aWV3bmFtZVxyXG4gICAgICAgICAgICBjYWNoZWQ6IGlzQ2FjaGVkLFxyXG4gICAgICAgICAgICBjYWNoZUtleTogaXNDYWNoZUtleSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlc2V0RGF0YSgpIHtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGFsbERhdGFTb3VyY2UsIGFsbENoaWxkcmVuIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBjaGlsZHJlbjogYWxsQ2hpbGRyZW4gfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiBhbGxEYXRhU291cmNlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5hbGxEYXRhU291cmNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5zZWxlY3RWYWx1ZTtcclxuICB9XHJcbiAgc2V0VmFsdWUodmFsdWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RWYWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmICghY2hpbGRyZW4gJiYgKGRhdGEgfHwgb3B0aW9ucykpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgZGF0YVNvdXJjZTogZGF0YSA/IGRhdGEgOiBvcHRpb25zLFxyXG4gICAgICAgIGFsbERhdGFTb3VyY2U6IGRhdGEgPyBkYXRhIDogb3B0aW9ucyxcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGNoaWxkcmVuOiBjaGlsZHJlbixcclxuICAgICAgICBhbGxDaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnREaWRVcGRhdGUobmV3UHJvcHMsIG5ld1N0YXRlLCBTbmFwc2hvdCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoIWNoaWxkcmVuICYmIChkYXRhIHx8IG9wdGlvbnMpKSB7XHJcbiAgICAgIGNvbnN0IG5ld0RhdGEgPSBkYXRhID8gZGF0YSA6IG9wdGlvbnM7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShhbGxEYXRhU291cmNlKSAhPT0gSlNPTi5zdHJpbmdpZnkobmV3RGF0YSkpIHtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGRhdGFTb3VyY2U6IG5ld0RhdGEsXHJcbiAgICAgICAgICBhbGxEYXRhU291cmNlOiBuZXdEYXRhLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuICYmIEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XHJcbiAgICAgIGNvbnN0IHN0YXRlQ2hpbGRyZW5Qcm9wczogYW55ID0gW107XHJcbiAgICAgIGFsbENoaWxkcmVuLm1hcCgoczogYW55KSA9PiB7XHJcbiAgICAgICAgc3RhdGVDaGlsZHJlblByb3BzLnB1c2gocy5wcm9wcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBjb25zdCBjaGlsZHJlblByb3BzOiBhbnkgPSBbXTtcclxuICAgICAgY2hpbGRyZW4ubWFwKChjOiBhbnkpID0+IHtcclxuICAgICAgICBjaGlsZHJlblByb3BzLnB1c2goYy5wcm9wcyk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoc3RhdGVDaGlsZHJlblByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoY2hpbGRyZW5Qcm9wcylcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBjaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgICBhbGxDaGlsZHJlbjogY2hpbGRyZW4sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgb25TZWFyY2godmFsdWUpIHtcclxuICAgIGNvbnN0IHsgYWxsRGF0YVNvdXJjZSwgYWxsQ2hpbGRyZW4gfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGxhYmVsRmllbGQgPSBcImxhYmVsXCIsXHJcbiAgICAgIGZpbHRlck9wdGlvbiA9IHRydWUsXHJcbiAgICAgIG9uU2VhcmNoLFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKGZpbHRlck9wdGlvbikge1xyXG4gICAgICBsZXQgcmVzdWx0ID0gW107XHJcbiAgICAgIGlmICghY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIGFsbERhdGFTb3VyY2UuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgbGFiZWwgPSBcIlwiO1xyXG4gICAgICAgICAgICBpZiAobGFiZWxGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgICBsYWJlbCA9IGl0ZW1bbGFiZWxGaWVsZF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbGFiZWxGaWVsZHM6IGFueSA9IGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgICAgICAgIGxhYmVsRmllbGRzLm1hcCgobCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgIGxhYmVsID0gaW5kZXggPT0gMCA/IGxhYmVsICsgaXRlbVtsXSA6IGxhYmVsICsgXCItXCIgKyBpdGVtW2xdO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBmbGFnID0gUGlueWluTWF0Y2gubWF0Y2gobGFiZWwsIHZhbHVlKTtcclxuICAgICAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICAgICAgICByZXN1bHQucHVzaChpdGVtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgZGF0YVNvdXJjZTogcmVzdWx0LFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBkYXRhU291cmNlOiBhbGxEYXRhU291cmNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYWxsQ2hpbGRyZW4pKSB7XHJcbiAgICAgICAgICAgIGFsbENoaWxkcmVuLm1hcCgoY2hpbGQ6IGFueSwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICBsZXQgbGFiZWwgPSBjaGlsZD8ucHJvcHM/LmNoaWxkcmVuO1xyXG4gICAgICAgICAgICAgIGxldCBmbGFnID0gUGlueWluTWF0Y2gubWF0Y2gobGFiZWwsIHZhbHVlKTtcclxuICAgICAgICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goY2hpbGQpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgY2hpbGRyZW46IHJlc3VsdCxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgY2hpbGRyZW46IGNoaWxkcmVuLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBvblNlYXJjaCAmJiBvblNlYXJjaCh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJlbmRlck9wdGlvbihvcHRpb25EYXRhKSB7XHJcbiAgICBsZXQgeyBsYWJlbEZpZWxkID0gXCJsYWJlbFwiLCB2YWx1ZUZpZWxkID0gXCJ2YWx1ZVwiLCBzdG9yZSA9IHt9IH0gPSB0aGlzLnByb3BzO1xyXG4gICAgcmV0dXJuIG9wdGlvbkRhdGEubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgIGlmICh2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKS5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgIHZhbHVlID0gaXRlbVt2YWx1ZUZpZWxkXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBpdGVtW3ZdIDogdmFsdWUgKyBcIixcIiArIGl0ZW1bdl07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IGtleSA9IGl0ZW0uaWQgPyAoaXRlbS5pZCAhPT0gXCJ1bmRlZmluZWRcIiA/IGl0ZW0uaWQgOiB2YWx1ZSkgOiB2YWx1ZTtcclxuICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgaWYgKGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgbGFiZWwgPSBpdGVtW2xhYmVsRmllbGRdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGxhYmVsRmllbGRzOiBhbnkgPSBsYWJlbEZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICBsYWJlbEZpZWxkcy5tYXAoKGwsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGl0ZW1bbF0gOiBsYWJlbCArIFwiLVwiICsgaXRlbVtsXTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxPcHRpb25cclxuICAgICAgICAgIGtleT17a2V5fVxyXG4gICAgICAgICAgdmFsdWU9e3ZhbHVlfVxyXG4gICAgICAgICAgbGFiZWw9e2xhYmVsfVxyXG4gICAgICAgICAgZGlzYWJsZWQ9e2l0ZW0uZGlzYWJsZWQgPyB0cnVlIDogZmFsc2V9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge2xhYmVsfVxyXG4gICAgICAgIDwvT3B0aW9uPlxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJlbmRlckNoaWxkcmVuKCkge1xyXG4gICAgY29uc3QgeyBzaG93R3JvdXAgPSB0cnVlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBkYXRhU291cmNlLCBjaGlsZHJlbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChjaGlsZHJlbikge1xyXG4gICAgICByZXR1cm4gPD57Y2hpbGRyZW59PC8+O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IG9wdEdyb3VwRGF0YSA9IHt9LFxyXG4gICAgICAgIG9wdGlvbkRhdGEgPSBbXTtcclxuICAgICAgZGF0YVNvdXJjZS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgbGV0IGxhYmVsID0gaXRlbS5ncm91cE5hbWU7XHJcbiAgICAgICAgaWYgKGxhYmVsICYmIHNob3dHcm91cCkge1xyXG4gICAgICAgICAgaWYgKCFvcHRHcm91cERhdGFbbGFiZWxdKSBvcHRHcm91cERhdGFbbGFiZWxdID0gW107XHJcbiAgICAgICAgICBvcHRHcm91cERhdGFbbGFiZWxdLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIG9wdGlvbkRhdGEucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBsZXQgb3B0aW9uID0gdGhpcy5yZW5kZXJPcHRpb24ob3B0aW9uRGF0YSk7XHJcbiAgICAgIGxldCBvcHRHcm91cCA9IE9iamVjdC5rZXlzKG9wdEdyb3VwRGF0YSkubWFwKChrZXkpID0+IHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPE9wdEdyb3VwIGtleT17a2V5fSBsYWJlbD17a2V5fT5cclxuICAgICAgICAgICAge3RoaXMucmVuZGVyT3B0aW9uKG9wdEdyb3VwRGF0YVtrZXldKX1cclxuICAgICAgICAgIDwvT3B0R3JvdXA+XHJcbiAgICAgICAgKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPD5cclxuICAgICAgICAgIHtvcHRpb259XHJcbiAgICAgICAgICB7b3B0R3JvdXB9XHJcbiAgICAgICAgPC8+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uQ2hhbmdlKHZhbHVlLCBvcHRpb25zKSB7XHJcbiAgICBjb25zdCB7IG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdFZhbHVlOiB2YWx1ZSxcclxuICAgIH0pO1xyXG4gICAgaWYgKG9uQ2hhbmdlKSB7XHJcbiAgICAgIG9uQ2hhbmdlKHZhbHVlLCBvcHRpb25zKTtcclxuICAgIH1cclxuICB9XHJcbiAgb25Ecm9wZG93blZpc2libGVDaGFuZ2Uob3Blbikge1xyXG4gICAgaWYgKCFvcGVuKSB7XHJcbiAgICAgIHRoaXMucmVzZXREYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIHN0b3JlLFxyXG4gICAgICBkYXRhLFxyXG4gICAgICBvbkNoYW5nZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgbGFiZWxGaWVsZCxcclxuICAgICAgdmFsdWVGaWVsZCxcclxuICAgICAgZGVmYXVsdFN0eWxlID0gdHJ1ZSxcclxuICAgICAgc2hvd0dyb3VwID0gdHJ1ZSxcclxuICAgICAgYWRkRGF0YSxcclxuICAgICAgZGVsZXRlRGF0YSxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHByb3BzID0ge1xyXG4gICAgICBmaWx0ZXJPcHRpb246IGZhbHNlLFxyXG4gICAgICBzaG93U2VhcmNoOiB0cnVlLFxyXG4gICAgICBvcHRpb25GaWx0ZXJQcm9wOiBcImxhYmVsXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyOiBcIuivt+mAieaLqVwiLFxyXG4gICAgICBhbGxvd0NsZWFyOiB0cnVlLFxyXG4gICAgfTtcclxuICAgIGlmIChkZWZhdWx0U3R5bGUpIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xzKHN0eWxlc1tcIm5zY19zZWxlY3RcIl0sIHRoaXMucHJvcHMuY2xhc3NOYW1lKX0+XHJcbiAgICAgICAgICA8U2VsZWN0XHJcbiAgICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnNlbGVjdFZhbHVlfVxyXG4gICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBvblNlYXJjaD17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBvbkRyb3Bkb3duVmlzaWJsZUNoYW5nZT17dGhpcy5vbkRyb3Bkb3duVmlzaWJsZUNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt0aGlzLnJlbmRlckNoaWxkcmVuKCl9XHJcbiAgICAgICAgICA8L1NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPFNlbGVjdFxyXG4gICAgICAgICAgdmFsdWU9e3RoaXMuc3RhdGUuc2VsZWN0VmFsdWV9XHJcbiAgICAgICAgICBvblNlYXJjaD17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIG9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlPXt0aGlzLm9uRHJvcGRvd25WaXNpYmxlQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt0aGlzLnJlbmRlckNoaWxkcmVuKCl9XHJcbiAgICAgICAgPC9TZWxlY3Q+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nsc-react-component",
3
- "version": "1.3.16",
3
+ "version": "1.3.19",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {