nsc-react-component 2.0.12 → 2.0.15

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.
@@ -94,24 +94,33 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
94
94
  addData = _props$addData === void 0 ? [] : _props$addData,
95
95
  _props$deleteData = props.deleteData,
96
96
  deleteData = _props$deleteData === void 0 ? [] : _props$deleteData,
97
- _props$valueField = props.valueField,
98
- valueField = _props$valueField === void 0 ? "value" : _props$valueField;
97
+ _props$viewtype = props.viewtype,
98
+ viewtype = _props$viewtype === void 0 ? "system" : _props$viewtype;
99
+ var viewname = store.viewname;
100
+ var valueField = viewname ? "dictKey" : "value";
99
101
 
100
102
  var _config = config(),
101
- viewUrl = _config.viewUrl;
103
+ viewUrl = _config.viewUrl,
104
+ viewBizUrl = _config.viewBizUrl;
105
+
106
+ var requestViewUrl = viewtype == "system" ? viewUrl : viewBizUrl;
102
107
 
103
108
  if (!children) {
104
109
  var url = store.url,
105
110
  _store$listeners = store.listeners,
106
111
  listenersPops = _store$listeners === void 0 ? {} : _store$listeners,
107
- viewname = store.viewname,
112
+ _viewname = store.viewname,
108
113
  cached = store.cached,
109
114
  cacheKey = store.cacheKey,
110
115
  stores = _objectWithoutProperties(store, _excluded);
111
116
 
112
- if (!url && !options && !data && !viewname) throw new Error("url、viewname、data和options不能都为空!");
117
+ if (!url && !options && !data && !_viewname) throw new Error("url、viewname、data和options不能都为空!");
113
118
 
114
119
  var getAllData = function getAllData(data) {
120
+ if (!Array.isArray(data)) {
121
+ return [];
122
+ }
123
+
115
124
  var newData = _toConsumableArray(data);
116
125
 
117
126
  if (addData.length > 0) {
@@ -169,20 +178,20 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
169
178
 
170
179
  _this2.store = new Store(storeProps);
171
180
 
172
- if ((viewname || url) && data == null && options == null) {
181
+ if ((_viewname || url) && data == null && options == null) {
173
182
  var isCached = cached;
174
183
  var isCacheKey = cacheKey;
175
184
 
176
- if (viewname) {
185
+ if (_viewname) {
177
186
  if (typeof cached !== "boolean") {
178
187
  isCached = true;
179
- isCacheKey = isCacheKey ? isCacheKey : viewname;
188
+ isCacheKey = isCacheKey ? isCacheKey : _viewname;
180
189
  }
181
190
  }
182
191
 
183
192
  storeProps = _objectSpread(_objectSpread({}, {
184
193
  autoLoad: true,
185
- url: url || viewUrl + viewname,
194
+ url: url || requestViewUrl + _viewname,
186
195
  //读字典,url固定,viewname
187
196
  cached: isCached,
188
197
  cacheKey: isCacheKey
@@ -198,13 +207,11 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
198
207
  _createClass(NSCCheckboxGroup, [{
199
208
  key: "convertData",
200
209
  value: function convertData(data) {
201
- var _this$props = this.props,
202
- _this$props$labelFiel = _this$props.labelField,
203
- labelField = _this$props$labelFiel === void 0 ? "label" : _this$props$labelFiel,
204
- _this$props$valueFiel = _this$props.valueField,
205
- valueField = _this$props$valueFiel === void 0 ? "value" : _this$props$valueFiel,
206
- _this$props$store = _this$props.store,
210
+ var _this$props$store = this.props.store,
207
211
  store = _this$props$store === void 0 ? {} : _this$props$store;
212
+ var viewname = store.viewname;
213
+ var valueField = viewname ? "dictKey" : "value";
214
+ var labelField = viewname ? "dictValue" : "label";
208
215
  var dataSoure = [];
209
216
 
210
217
  var _loop = function _loop(i) {
@@ -279,10 +286,10 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
279
286
  }, {
280
287
  key: "componentDidMount",
281
288
  value: function componentDidMount() {
282
- var _this$props2 = this.props,
283
- data = _this$props2.data,
284
- options = _this$props2.options,
285
- children = _this$props2.children;
289
+ var _this$props = this.props,
290
+ data = _this$props.data,
291
+ options = _this$props.options,
292
+ children = _this$props.children;
286
293
 
287
294
  if (!children && (data || options)) {
288
295
  this.setState({
@@ -295,9 +302,9 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
295
302
  key: "componentDidUpdate",
296
303
  value: function componentDidUpdate() {
297
304
  var dataStore = this.state.dataStore;
298
- var _this$props3 = this.props,
299
- data = _this$props3.data,
300
- options = _this$props3.options;
305
+ var _this$props2 = this.props,
306
+ data = _this$props2.data,
307
+ options = _this$props2.options;
301
308
  var newData = data ? data : options;
302
309
 
303
310
  if (data || options) {
@@ -312,10 +319,10 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
312
319
  }, {
313
320
  key: "render",
314
321
  value: function render() {
315
- var _this$props4 = this.props,
316
- data = _this$props4.data,
317
- options = _this$props4.options,
318
- params = _objectWithoutProperties(_this$props4, _excluded2);
322
+ var _this$props3 = this.props,
323
+ data = _this$props3.data,
324
+ options = _this$props3.options,
325
+ params = _objectWithoutProperties(_this$props3, _excluded2);
319
326
 
320
327
  var CheckBoxProps = omit(_objectSpread({}, params), ["store", "valueField", "labelField", "data", "onChange", "addData", "deleteData"]);
321
328
  return /*#__PURE__*/React.createElement(_Checkbox.Group, _extends({
@@ -330,4 +337,4 @@ var NSCCheckboxGroup = /*#__PURE__*/function (_PureComponent) {
330
337
  }(PureComponent);
331
338
 
332
339
  export default NSCCheckboxGroup;
333
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NoZWNrYm94L0NoZWNrYm94R3JvdXAudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJvbWl0IiwiY29uZmlnIiwiTlNDQ2hlY2tib3hHcm91cCIsInByb3BzIiwiZGF0YVNvdXJjZSIsImRhdGFTdG9yZSIsInZhbHVlIiwiX3RoaXMiLCJzdG9yZSIsIm9wdGlvbnMiLCJkYXRhIiwiY2hpbGRyZW4iLCJhZGREYXRhIiwiZGVsZXRlRGF0YSIsInZhbHVlRmllbGQiLCJ2aWV3VXJsIiwidXJsIiwibGlzdGVuZXJzIiwibGlzdGVuZXJzUG9wcyIsInZpZXduYW1lIiwiY2FjaGVkIiwiY2FjaGVLZXkiLCJzdG9yZXMiLCJFcnJvciIsImdldEFsbERhdGEiLCJuZXdEYXRhIiwibGVuZ3RoIiwidmFsdWVGaWVsZHMiLCJzcGxpdCIsIm1hcCIsIml0ZW0iLCJpIiwidiIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSIsInN0b3JlUHJvcHMiLCJtb2RlbCIsImNvbXBvbmVudCIsIm9uQmVmb3JlTG9hZCIsImNhbGxiYWNrIiwibG9hZCIsIm1vZGVsRGF0YSIsImNvbnZlcnREYXRhIiwic2V0U3RhdGUiLCJkYXRhQ2hhbmdlZCIsImlzQ2FjaGVkIiwiaXNDYWNoZUtleSIsImF1dG9Mb2FkIiwibGFiZWxGaWVsZCIsImRhdGFTb3VyZSIsIm9iaiIsImxhYmVsIiwibGFiZWxGaWVsZHMiLCJsIiwiZGlzYWJsZWQiLCJwdXNoIiwiY2hlY2tlZFZhbHVlIiwib25DaGFuZ2UiLCJzdGF0ZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJwYXJhbXMiLCJDaGVja0JveFByb3BzIiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9B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ZUFBZUssZ0JBQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMTQgMDg6NTk6MTlcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIzIDE2OjQ2OjMzXHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBDaGVja2JveCwgQ2hlY2tib3hQcm9wcyB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi9jb25maWdcIjtcclxuXHJcbmludGVyZmFjZSBJQ2hlY2tib3hHcm91cFByb3BzIGV4dGVuZHMgQ2hlY2tib3hQcm9wcyB7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIGRhdGE/OiBBcnJheTxzdHJpbmcgfCBPYmplY3Q+OyAvL+m7mOiupOaVsOaNrlxyXG4gIGxhYmVsRmllbGQ/OiBzdHJpbmc7XHJcbiAgdmFsdWVGaWVsZD86IHN0cmluZztcclxuICBhZGREYXRhPzogQXJyYXk8c3RyaW5nIHwgT2JqZWN0PjtcclxuICBkZWxldGVEYXRhPzogQXJyYXk8c3RyaW5nPjtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuY2xhc3MgTlNDQ2hlY2tib3hHcm91cCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SUNoZWNrYm94R3JvdXBQcm9wcz4ge1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogW10sXHJcbiAgICBkYXRhU3RvcmU6IFtdLFxyXG4gICAgdmFsdWU6IFtdLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCBfdGhpcyA9IHRoaXM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGRhdGEsXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBhZGREYXRhID0gW10sXHJcbiAgICAgIGRlbGV0ZURhdGEgPSBbXSxcclxuICAgICAgdmFsdWVGaWVsZCA9IFwidmFsdWVcIixcclxuICAgIH0gPSBwcm9wcztcclxuICAgIGxldCB7IHZpZXdVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICBjb25zdCB7XHJcbiAgICAgICAgdXJsLFxyXG4gICAgICAgIGxpc3RlbmVyczogbGlzdGVuZXJzUG9wcyA9IHt9LFxyXG4gICAgICAgIHZpZXduYW1lLFxyXG4gICAgICAgIGNhY2hlZCxcclxuICAgICAgICBjYWNoZUtleSxcclxuXHJcbiAgICAgICAgLi4uc3RvcmVzXHJcbiAgICAgIH0gPSBzdG9yZTtcclxuICAgICAgaWYgKCF1cmwgJiYgIW9wdGlvbnMgJiYgIWRhdGEgJiYgIXZpZXduYW1lKVxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOOAgXZpZXduYW1l44CBZGF0YeWSjG9wdGlvbnPkuI3og73pg73kuLrnqbrvvIFcIik7XHJcbiAgICAgIGNvbnN0IGdldEFsbERhdGEgPSAoZGF0YSkgPT4ge1xyXG4gICAgICAgIGxldCBuZXdEYXRhID0gWy4uLmRhdGFdO1xyXG4gICAgICAgIGlmIChhZGREYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIG5ld0RhdGEgPSBbLi4uYWRkRGF0YSwgLi4ubmV3RGF0YV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkZWxldGVEYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIGNvbnN0IHZhbHVlRmllbGRzOiBhbnkgPSB2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICAgIG5ld0RhdGEubWFwKChpdGVtLCBpKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0eXBlb2YgaXRlbSA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZHMubWFwKCh2LCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBpdGVtW3ZdIDogdmFsdWUgKyBcIixcIiArIGl0ZW1bdl07XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgaWYgKGRlbGV0ZURhdGEuaW5kZXhPZih2YWx1ZSkgPiAtMSkge1xyXG4gICAgICAgICAgICAgICAgbmV3RGF0YS5zcGxpY2UoaSwgMSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpdGVtID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgICAgICAgICAgaWYgKGRlbGV0ZURhdGEuaW5kZXhPZihpdGVtKSA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdEYXRhLnNwbGljZShpLCAxKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3RGF0YTtcclxuICAgICAgfTtcclxuICAgICAgdmFyIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgbW9kZWw6IFwibW9kZWxcIixcclxuICAgICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgICAgbGlzdGVuZXJzOiB7XHJcbiAgICAgICAgICBvbkJlZm9yZUxvYWQ6IGZ1bmN0aW9uIChzdG9yZSwgb3B0aW9ucykge1xyXG4gICAgICAgICAgICB1dGlscy5jYWxsYmFjayhsaXN0ZW5lcnNQb3BzLm9uQmVmb3JlTG9hZCwgX3RoaXMsIFtzdG9yZSwgb3B0aW9uc10pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxvYWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIGxldCBkYXRhU291cmNlID0gX3RoaXMuY29udmVydERhdGEoZ2V0QWxsRGF0YShkYXRhKSk7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogZGF0YVNvdXJjZSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5sb2FkLCBfdGhpcywgW2RhdGEsIG1vZGVsRGF0YSwgc3RvcmVdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBkYXRhQ2hhbmdlZDogZnVuY3Rpb24gKGRhdGEsIG1vZGVsRGF0YSwgc3RvcmUpIHtcclxuICAgICAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBkYXRhU291cmNlOiBfdGhpcy5jb252ZXJ0RGF0YShnZXRBbGxEYXRhKGRhdGEpKSB9KTtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5kYXRhQ2hhbmdlZCwgX3RoaXMsIFtcclxuICAgICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICAgIG1vZGVsRGF0YSxcclxuICAgICAgICAgICAgICBzdG9yZSxcclxuICAgICAgICAgICAgXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4uc3RvcmVzLFxyXG4gICAgICB9O1xyXG4gICAgICB0aGlzLnN0b3JlID0gbmV3IFN0b3JlKHN0b3JlUHJvcHMpO1xyXG4gICAgICBpZiAoKHZpZXduYW1lIHx8IHVybCkgJiYgZGF0YSA9PSBudWxsICYmIG9wdGlvbnMgPT0gbnVsbCkge1xyXG4gICAgICAgIGxldCBpc0NhY2hlZCA9IGNhY2hlZDtcclxuICAgICAgICBsZXQgaXNDYWNoZUtleSA9IGNhY2hlS2V5O1xyXG4gICAgICAgIGlmICh2aWV3bmFtZSkge1xyXG4gICAgICAgICAgaWYgKHR5cGVvZiBjYWNoZWQgIT09IFwiYm9vbGVhblwiKSB7XHJcbiAgICAgICAgICAgIGlzQ2FjaGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgaXNDYWNoZUtleSA9IGlzQ2FjaGVLZXkgPyBpc0NhY2hlS2V5IDogdmlld25hbWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN0b3JlUHJvcHMgPSB7XHJcbiAgICAgICAgICAuLi57XHJcbiAgICAgICAgICAgIGF1dG9Mb2FkOiB0cnVlLFxyXG4gICAgICAgICAgICB1cmw6IHVybCB8fCB2aWV3VXJsICsgdmlld25hbWUsIC8v6K+75a2X5YW477yMdXJs5Zu65a6a77yMdmlld25hbWVcclxuICAgICAgICAgICAgY2FjaGVkOiBpc0NhY2hlZCxcclxuICAgICAgICAgICAgY2FjaGVLZXk6IGlzQ2FjaGVLZXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4uc3RvcmVQcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc3RvcmUgPSBuZXcgU3RvcmUoc3RvcmVQcm9wcyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNvbnZlcnREYXRhKGRhdGEpIHtcclxuICAgIGxldCB7IGxhYmVsRmllbGQgPSBcImxhYmVsXCIsIHZhbHVlRmllbGQgPSBcInZhbHVlXCIsIHN0b3JlID0ge30gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgZGF0YVNvdXJlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcclxuICAgICAgaWYgKHR5cGVvZiBkYXRhW2ldID09PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHsgLi4uZGF0YVtpXSB9O1xyXG4gICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgaWYgKHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICB2YWx1ZSA9IGRhdGFbaV1bdmFsdWVGaWVsZF07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IHZhbHVlRmllbGRzOiBhbnkgPSB2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBkYXRhW2ldW3ZdIDogdmFsdWUgKyBcIixcIiArIGRhdGFbaV1bdl07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgICBpZiAobGFiZWxGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgIGxhYmVsID0gZGF0YVtpXVtsYWJlbEZpZWxkXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgbGFiZWxGaWVsZHM6IGFueSA9IGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGRhdGFbaV1bbF0gOiBsYWJlbCArIFwiLVwiICsgZGF0YVtpXVtsXTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBvYmoubGFiZWwgPSBsYWJlbDtcclxuICAgICAgICBvYmoudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICBvYmouZGlzYWJsZWQgPSBkYXRhW2ldLmRpc2FibGVkID8gZGF0YVtpXS5kaXNhYmxlZCA6IGZhbHNlO1xyXG4gICAgICAgIGRhdGFTb3VyZS5wdXNoKG9iaik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHt9IGFzIHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IGFueTsgZGlzYWJsZWQ/OiBib29sZWFuIH07XHJcbiAgICAgICAgb2JqLmxhYmVsID0gZGF0YVtpXTtcclxuICAgICAgICBvYmoudmFsdWUgPSBkYXRhW2ldO1xyXG4gICAgICAgIG9iai5kaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIGRhdGFTb3VyZS5wdXNoKG9iaik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBkYXRhU291cmU7XHJcbiAgfVxyXG4gIG9uQ2hhbmdlKGNoZWNrZWRWYWx1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHZhbHVlOiBjaGVja2VkVmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgb25DaGFuZ2UoY2hlY2tlZFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS52YWx1ZTtcclxuICB9XHJcbiAgc2V0VmFsdWUodmFsdWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICB2YWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiB0aGlzLmNvbnZlcnREYXRhKGRhdGEgPyBkYXRhIDogb3B0aW9ucyksXHJcbiAgICAgICAgZGF0YVN0b3JlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnREaWRVcGRhdGUoKSB7XHJcbiAgICBjb25zdCB7IGRhdGFTdG9yZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IG5ld0RhdGEgPSBkYXRhID8gZGF0YSA6IG9wdGlvbnM7XHJcbiAgICBpZiAoZGF0YSB8fCBvcHRpb25zKSB7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShkYXRhU3RvcmUpICE9PSBKU09OLnN0cmluZ2lmeShuZXdEYXRhKSkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5jb252ZXJ0RGF0YShuZXdEYXRhKSxcclxuICAgICAgICAgIGRhdGFTdG9yZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBDaGVja0JveFByb3BzID0gb21pdCh7IC4uLnBhcmFtcyB9LCBbXHJcbiAgICAgIFwic3RvcmVcIixcclxuICAgICAgXCJ2YWx1ZUZpZWxkXCIsXHJcbiAgICAgIFwibGFiZWxGaWVsZFwiLFxyXG4gICAgICBcImRhdGFcIixcclxuICAgICAgXCJvbkNoYW5nZVwiLFxyXG4gICAgICBcImFkZERhdGFcIixcclxuICAgICAgXCJkZWxldGVEYXRhXCIsXHJcbiAgICBdKTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxDaGVja2JveC5Hcm91cFxyXG4gICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnZhbHVlfVxyXG4gICAgICAgIG9wdGlvbnM9e3RoaXMuc3RhdGUuZGF0YVNvdXJjZX1cclxuICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgIHsuLi5DaGVja0JveFByb3BzfVxyXG4gICAgICAvPlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IE5TQ0NoZWNrYm94R3JvdXA7XHJcbiJdfQ==
340
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NoZWNrYm94L0NoZWNrYm94R3JvdXAudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlN0b3JlIiwidXRpbHMiLCJvbWl0IiwiY29uZmlnIiwiTlNDQ2hlY2tib3hHcm91cCIsInByb3BzIiwiZGF0YVNvdXJjZSIsImRhdGFTdG9yZSIsInZhbHVlIiwiX3RoaXMiLCJzdG9yZSIsIm9wdGlvbnMiLCJkYXRhIiwiY2hpbGRyZW4iLCJhZGREYXRhIiwiZGVsZXRlRGF0YSIsInZpZXd0eXBlIiwidmlld25hbWUiLCJ2YWx1ZUZpZWxkIiwidmlld1VybCIsInZpZXdCaXpVcmwiLCJyZXF1ZXN0Vmlld1VybCIsInVybCIsImxpc3RlbmVycyIsImxpc3RlbmVyc1BvcHMiLCJjYWNoZWQiLCJjYWNoZUtleSIsInN0b3JlcyIsIkVycm9yIiwiZ2V0QWxsRGF0YSIsIkFycmF5IiwiaXNBcnJheSIsIm5ld0RhdGEiLCJsZW5ndGgiLCJ2YWx1ZUZpZWxkcyIsInNwbGl0IiwibWFwIiwiaXRlbSIsImkiLCJ2IiwiaW5kZXgiLCJpbmRleE9mIiwic3BsaWNlIiwic3RvcmVQcm9wcyIsIm1vZGVsIiwiY29tcG9uZW50Iiwib25CZWZvcmVMb2FkIiwiY2FsbGJhY2siLCJsb2FkIiwibW9kZWxEYXRhIiwiY29udmVydERhdGEiLCJzZXRTdGF0ZSIsImRhdGFDaGFuZ2VkIiwiaXNDYWNoZWQiLCJpc0NhY2hlS2V5IiwiYXV0b0xvYWQiLCJsYWJlbEZpZWxkIiwiZGF0YVNvdXJlIiwib2JqIiwibGFiZWwiLCJsYWJlbEZpZWxkcyIsImwiLCJkaXNhYmxlZCIsInB1c2giLCJjaGVja2VkVmFsdWUiLCJvbkNoYW5nZSIsInN0YXRlIiwiSlNPTiIsInN0cmluZ2lmeSIsInBhcmFtcyIsIkNoZWNrQm94UHJvcHMiLCJiaW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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RCxNQUExQjs7QUFDQSxVQUFNQyxhQUFhLEdBQUdwRSxJQUFJLG1CQUFNbUUsTUFBTixHQUFnQixDQUN4QyxPQUR3QyxFQUV4QyxZQUZ3QyxFQUd4QyxZQUh3QyxFQUl4QyxNQUp3QyxFQUt4QyxVQUx3QyxFQU14QyxTQU53QyxFQU94QyxZQVB3QyxDQUFoQixDQUExQjtBQVNBLDBCQUNFLDhCQUFVLEtBQVY7QUFDRSxRQUFBLEtBQUssRUFBRSxLQUFLSCxLQUFMLENBQVcxRCxLQURwQjtBQUVFLFFBQUEsT0FBTyxFQUFFLEtBQUswRCxLQUFMLENBQVc1RCxVQUZ0QjtBQUdFLFFBQUEsUUFBUSxFQUFFLEtBQUsyRCxRQUFMLENBQWNNLElBQWQsQ0FBbUIsSUFBbkI7QUFIWixTQUlNRCxhQUpOLEVBREY7QUFRRDs7OztFQWpONEJ2RSxhOztBQW9OL0IsZUFBZUssZ0JBQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMTQgMDg6NTk6MTlcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIzIDE2OjQ2OjMzXHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBDaGVja2JveCwgQ2hlY2tib3hQcm9wcyB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBTdG9yZSwgeyBTdG9yZVByb3BzIH0gZnJvbSBcIkBiai1uc2MvbXNuXCI7XHJcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi9jb25maWdcIjtcclxuXHJcbmludGVyZmFjZSBJQ2hlY2tib3hHcm91cFByb3BzIGV4dGVuZHMgQ2hlY2tib3hQcm9wcyB7XHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIGRhdGE/OiBBcnJheTxzdHJpbmcgfCBPYmplY3Q+OyAvL+m7mOiupOaVsOaNrlxyXG4gIGxhYmVsRmllbGQ/OiBzdHJpbmc7XHJcbiAgdmFsdWVGaWVsZD86IHN0cmluZztcclxuICBhZGREYXRhPzogQXJyYXk8c3RyaW5nIHwgT2JqZWN0PjtcclxuICBkZWxldGVEYXRhPzogQXJyYXk8c3RyaW5nPjtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuY2xhc3MgTlNDQ2hlY2tib3hHcm91cCBleHRlbmRzIFB1cmVDb21wb25lbnQ8SUNoZWNrYm94R3JvdXBQcm9wcz4ge1xyXG4gIHN0YXRlID0ge1xyXG4gICAgZGF0YVNvdXJjZTogW10sXHJcbiAgICBkYXRhU3RvcmU6IFtdLFxyXG4gICAgdmFsdWU6IFtdLFxyXG4gIH07XHJcbiAgc3RvcmUgPSB7fSBhcyBTdG9yZVByb3BzO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCBfdGhpcyA9IHRoaXM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN0b3JlID0ge30sXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICAgIGRhdGEsXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBhZGREYXRhID0gW10sXHJcbiAgICAgIGRlbGV0ZURhdGEgPSBbXSxcclxuICAgICAgdmlld3R5cGUgPSBcInN5c3RlbVwiLFxyXG4gICAgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgeyB2aWV3bmFtZSB9ID0gc3RvcmU7XHJcbiAgICBjb25zdCB2YWx1ZUZpZWxkID0gdmlld25hbWUgPyBcImRpY3RLZXlcIiA6IFwidmFsdWVcIjtcclxuICAgIGxldCB7IHZpZXdVcmwsIHZpZXdCaXpVcmwgfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHJlcXVlc3RWaWV3VXJsID0gdmlld3R5cGUgPT0gXCJzeXN0ZW1cIiA/IHZpZXdVcmwgOiB2aWV3Qml6VXJsO1xyXG4gICAgaWYgKCFjaGlsZHJlbikge1xyXG4gICAgICBjb25zdCB7XHJcbiAgICAgICAgdXJsLFxyXG4gICAgICAgIGxpc3RlbmVyczogbGlzdGVuZXJzUG9wcyA9IHt9LFxyXG4gICAgICAgIHZpZXduYW1lLFxyXG4gICAgICAgIGNhY2hlZCxcclxuICAgICAgICBjYWNoZUtleSxcclxuXHJcbiAgICAgICAgLi4uc3RvcmVzXHJcbiAgICAgIH0gPSBzdG9yZTtcclxuICAgICAgaWYgKCF1cmwgJiYgIW9wdGlvbnMgJiYgIWRhdGEgJiYgIXZpZXduYW1lKVxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOOAgXZpZXduYW1l44CBZGF0YeWSjG9wdGlvbnPkuI3og73pg73kuLrnqbrvvIFcIik7XHJcbiAgICAgIGNvbnN0IGdldEFsbERhdGEgPSAoZGF0YSkgPT4ge1xyXG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShkYXRhKSkge1xyXG4gICAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgbmV3RGF0YSA9IFsuLi5kYXRhXTtcclxuICAgICAgICBpZiAoYWRkRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICBuZXdEYXRhID0gWy4uLmFkZERhdGEsIC4uLm5ld0RhdGFdO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZGVsZXRlRGF0YS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICBjb25zdCB2YWx1ZUZpZWxkczogYW55ID0gdmFsdWVGaWVsZC5zcGxpdChcIixcIik7XHJcbiAgICAgICAgICBuZXdEYXRhLm1hcCgoaXRlbSwgaSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodHlwZW9mIGl0ZW0gPT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBcIlwiO1xyXG4gICAgICAgICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgIHZhbHVlID0gaW5kZXggPT0gMCA/IHZhbHVlICsgaXRlbVt2XSA6IHZhbHVlICsgXCIsXCIgKyBpdGVtW3ZdO1xyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIGlmIChkZWxldGVEYXRhLmluZGV4T2YodmFsdWUpID4gLTEpIHtcclxuICAgICAgICAgICAgICAgIG5ld0RhdGEuc3BsaWNlKGksIDEpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgaXRlbSA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgICAgICAgIGlmIChkZWxldGVEYXRhLmluZGV4T2YoaXRlbSkgPiAtMSkge1xyXG4gICAgICAgICAgICAgICAgbmV3RGF0YS5zcGxpY2UoaSwgMSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5ld0RhdGE7XHJcbiAgICAgIH07XHJcbiAgICAgIHZhciBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgIG1vZGVsOiBcIm1vZGVsXCIsXHJcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICAgIGxpc3RlbmVyczoge1xyXG4gICAgICAgICAgb25CZWZvcmVMb2FkOiBmdW5jdGlvbiAoc3RvcmUsIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgdXRpbHMuY2FsbGJhY2sobGlzdGVuZXJzUG9wcy5vbkJlZm9yZUxvYWQsIF90aGlzLCBbc3RvcmUsIG9wdGlvbnNdKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBsb2FkOiBmdW5jdGlvbiAoZGF0YSwgbW9kZWxEYXRhLCBzdG9yZSkge1xyXG4gICAgICAgICAgICBsZXQgZGF0YVNvdXJjZSA9IF90aGlzLmNvbnZlcnREYXRhKGdldEFsbERhdGEoZGF0YSkpO1xyXG4gICAgICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGRhdGFTb3VyY2U6IGRhdGFTb3VyY2UgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMubG9hZCwgX3RoaXMsIFtkYXRhLCBtb2RlbERhdGEsIHN0b3JlXSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZGF0YUNoYW5nZWQ6IGZ1bmN0aW9uIChkYXRhLCBtb2RlbERhdGEsIHN0b3JlKSB7XHJcbiAgICAgICAgICAgIF90aGlzLnNldFN0YXRlKHsgZGF0YVNvdXJjZTogX3RoaXMuY29udmVydERhdGEoZ2V0QWxsRGF0YShkYXRhKSkgfSk7XHJcbiAgICAgICAgICAgIHV0aWxzLmNhbGxiYWNrKGxpc3RlbmVyc1BvcHMuZGF0YUNoYW5nZWQsIF90aGlzLCBbXHJcbiAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICBtb2RlbERhdGEsXHJcbiAgICAgICAgICAgICAgc3RvcmUsXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnN0b3JlcyxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgICAgaWYgKCh2aWV3bmFtZSB8fCB1cmwpICYmIGRhdGEgPT0gbnVsbCAmJiBvcHRpb25zID09IG51bGwpIHtcclxuICAgICAgICBsZXQgaXNDYWNoZWQgPSBjYWNoZWQ7XHJcbiAgICAgICAgbGV0IGlzQ2FjaGVLZXkgPSBjYWNoZUtleTtcclxuICAgICAgICBpZiAodmlld25hbWUpIHtcclxuICAgICAgICAgIGlmICh0eXBlb2YgY2FjaGVkICE9PSBcImJvb2xlYW5cIikge1xyXG4gICAgICAgICAgICBpc0NhY2hlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIGlzQ2FjaGVLZXkgPSBpc0NhY2hlS2V5ID8gaXNDYWNoZUtleSA6IHZpZXduYW1lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzdG9yZVByb3BzID0ge1xyXG4gICAgICAgICAgLi4ue1xyXG4gICAgICAgICAgICBhdXRvTG9hZDogdHJ1ZSxcclxuICAgICAgICAgICAgdXJsOiB1cmwgfHwgcmVxdWVzdFZpZXdVcmwgKyB2aWV3bmFtZSwgLy/or7vlrZflhbjvvIx1cmzlm7rlrprvvIx2aWV3bmFtZVxyXG4gICAgICAgICAgICBjYWNoZWQ6IGlzQ2FjaGVkLFxyXG4gICAgICAgICAgICBjYWNoZUtleTogaXNDYWNoZUtleSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi5zdG9yZVByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdG9yZSA9IG5ldyBTdG9yZShzdG9yZVByb3BzKTtcclxuICAgIH1cclxuICB9XHJcbiAgY29udmVydERhdGEoZGF0YSkge1xyXG4gICAgbGV0IHsgc3RvcmUgPSB7fSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgdmlld25hbWUgfSA9IHN0b3JlO1xyXG4gICAgbGV0IHZhbHVlRmllbGQgPSB2aWV3bmFtZSA/IFwiZGljdEtleVwiIDogXCJ2YWx1ZVwiO1xyXG4gICAgbGV0IGxhYmVsRmllbGQgPSB2aWV3bmFtZSA/IFwiZGljdFZhbHVlXCIgOiBcImxhYmVsXCI7XHJcbiAgICBsZXQgZGF0YVNvdXJlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcclxuICAgICAgaWYgKHR5cGVvZiBkYXRhW2ldID09PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHsgLi4uZGF0YVtpXSB9O1xyXG4gICAgICAgIGxldCB2YWx1ZSA9IFwiXCI7XHJcbiAgICAgICAgaWYgKHZhbHVlRmllbGQuc3BsaXQoXCIsXCIpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICB2YWx1ZSA9IGRhdGFbaV1bdmFsdWVGaWVsZF07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IHZhbHVlRmllbGRzOiBhbnkgPSB2YWx1ZUZpZWxkLnNwbGl0KFwiLFwiKTtcclxuICAgICAgICAgIHZhbHVlRmllbGRzLm1hcCgodiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgdmFsdWUgPSBpbmRleCA9PSAwID8gdmFsdWUgKyBkYXRhW2ldW3ZdIDogdmFsdWUgKyBcIixcIiArIGRhdGFbaV1bdl07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGxhYmVsID0gXCJcIjtcclxuICAgICAgICBpZiAobGFiZWxGaWVsZC5zcGxpdChcIixcIikubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgIGxhYmVsID0gZGF0YVtpXVtsYWJlbEZpZWxkXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgbGFiZWxGaWVsZHM6IGFueSA9IGxhYmVsRmllbGQuc3BsaXQoXCIsXCIpO1xyXG4gICAgICAgICAgbGFiZWxGaWVsZHMubWFwKChsLCBpbmRleCkgPT4ge1xyXG4gICAgICAgICAgICBsYWJlbCA9IGluZGV4ID09IDAgPyBsYWJlbCArIGRhdGFbaV1bbF0gOiBsYWJlbCArIFwiLVwiICsgZGF0YVtpXVtsXTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBvYmoubGFiZWwgPSBsYWJlbDtcclxuICAgICAgICBvYmoudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICBvYmouZGlzYWJsZWQgPSBkYXRhW2ldLmRpc2FibGVkID8gZGF0YVtpXS5kaXNhYmxlZCA6IGZhbHNlO1xyXG4gICAgICAgIGRhdGFTb3VyZS5wdXNoKG9iaik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHt9IGFzIHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IGFueTsgZGlzYWJsZWQ/OiBib29sZWFuIH07XHJcbiAgICAgICAgb2JqLmxhYmVsID0gZGF0YVtpXTtcclxuICAgICAgICBvYmoudmFsdWUgPSBkYXRhW2ldO1xyXG4gICAgICAgIG9iai5kaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIGRhdGFTb3VyZS5wdXNoKG9iaik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBkYXRhU291cmU7XHJcbiAgfVxyXG4gIG9uQ2hhbmdlKGNoZWNrZWRWYWx1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHZhbHVlOiBjaGVja2VkVmFsdWUsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgb25DaGFuZ2UoY2hlY2tlZFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS52YWx1ZTtcclxuICB9XHJcbiAgc2V0VmFsdWUodmFsdWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICB2YWx1ZTogdmFsdWUsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGRhdGEsIG9wdGlvbnMsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaWYgKCFjaGlsZHJlbiAmJiAoZGF0YSB8fCBvcHRpb25zKSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICBkYXRhU291cmNlOiB0aGlzLmNvbnZlcnREYXRhKGRhdGEgPyBkYXRhIDogb3B0aW9ucyksXHJcbiAgICAgICAgZGF0YVN0b3JlOiBkYXRhID8gZGF0YSA6IG9wdGlvbnMsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICBjb21wb25lbnREaWRVcGRhdGUoKSB7XHJcbiAgICBjb25zdCB7IGRhdGFTdG9yZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHsgZGF0YSwgb3B0aW9ucyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IG5ld0RhdGEgPSBkYXRhID8gZGF0YSA6IG9wdGlvbnM7XHJcbiAgICBpZiAoZGF0YSB8fCBvcHRpb25zKSB7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShkYXRhU3RvcmUpICE9PSBKU09OLnN0cmluZ2lmeShuZXdEYXRhKSkge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGF0YVNvdXJjZTogdGhpcy5jb252ZXJ0RGF0YShuZXdEYXRhKSxcclxuICAgICAgICAgIGRhdGFTdG9yZTogbmV3RGF0YSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBkYXRhLCBvcHRpb25zLCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBDaGVja0JveFByb3BzID0gb21pdCh7IC4uLnBhcmFtcyB9LCBbXHJcbiAgICAgIFwic3RvcmVcIixcclxuICAgICAgXCJ2YWx1ZUZpZWxkXCIsXHJcbiAgICAgIFwibGFiZWxGaWVsZFwiLFxyXG4gICAgICBcImRhdGFcIixcclxuICAgICAgXCJvbkNoYW5nZVwiLFxyXG4gICAgICBcImFkZERhdGFcIixcclxuICAgICAgXCJkZWxldGVEYXRhXCIsXHJcbiAgICBdKTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxDaGVja2JveC5Hcm91cFxyXG4gICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnZhbHVlfVxyXG4gICAgICAgIG9wdGlvbnM9e3RoaXMuc3RhdGUuZGF0YVNvdXJjZX1cclxuICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgIHsuLi5DaGVja0JveFByb3BzfVxyXG4gICAgICAvPlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IE5TQ0NoZWNrYm94R3JvdXA7XHJcbiJdfQ==
package/lib/config.d.ts CHANGED
@@ -6,6 +6,7 @@ interface IComponentConfig {
6
6
  exception403?: string;
7
7
  iconfontUrl?: string;
8
8
  viewUrl?: string;
9
+ viewBizUrl?: string;
9
10
  antdStyle?: boolean;
10
11
  allowChars?: boolean;
11
12
  }
@@ -17,6 +18,7 @@ export declare const setConfig: (config: IComponentConfig) => {
17
18
  exception403: string;
18
19
  iconfontUrl: string;
19
20
  viewUrl: string;
21
+ viewBizUrl: string;
20
22
  antdStyle: boolean;
21
23
  allowChars: boolean;
22
24
  } & IComponentConfig;
package/lib/config.js CHANGED
@@ -19,8 +19,10 @@ var configData = {
19
19
  exception403: "/exception/403",
20
20
  //阿里图标库URL
21
21
  iconfontUrl: "",
22
- //后台视图获取地址
23
- viewUrl: "/dict/v1/",
22
+ //后台系统视图获取地址
23
+ viewUrl: "/blade-system/dict/dictionary?code=",
24
+ //后台业务视图获取地址
25
+ viewBizUrl: "/blade-system/dict-biz/dictionary?code=",
24
26
  //默认antd样式
25
27
  antdStyle: true,
26
28
  //input特殊字符全局变量
@@ -32,4 +34,4 @@ export var setConfig = function setConfig(config) {
32
34
  export default (function () {
33
35
  return configData;
34
36
  });
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL2NvbmZpZy50cyJdLCJuYW1lcyI6WyJjb25maWdEYXRhIiwibG9naW5Qcm9qZWN0TmFtZSIsImF1dGhvcml6YXRpb24iLCJsb2dpblBhdGgiLCJleGNlcHRpb241MDUiLCJleGNlcHRpb240MDMiLCJpY29uZm9udFVybCIsInZpZXdVcmwiLCJhbnRkU3R5bGUiLCJhbGxvd0NoYXJzIiwic2V0Q29uZmlnIiwiY29uZmlnIiwiT2JqZWN0IiwiYXNzaWduIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBYUEsSUFBSUEsVUFBVSxHQUFHO0FBQ2Y7QUFDQUMsRUFBQUEsZ0JBQWdCLEVBQUUsZUFGSDtBQUdmO0FBQ0FDLEVBQUFBLGFBQWEsRUFBRSxvQkFKQTtBQUtmO0FBQ0FDLEVBQUFBLFNBQVMsRUFBRSxRQU5JO0FBT2Y7QUFDQUMsRUFBQUEsWUFBWSxFQUFFLGdCQVJDO0FBU2Y7QUFDQUMsRUFBQUEsWUFBWSxFQUFFLGdCQVZDO0FBV2Y7QUFDQUMsRUFBQUEsV0FBVyxFQUFFLEVBWkU7QUFhZjtBQUNBQyxFQUFBQSxPQUFPLEVBQUUsV0FkTTtBQWVmO0FBQ0FDLEVBQUFBLFNBQVMsRUFBRSxJQWhCSTtBQWlCZjtBQUNBQyxFQUFBQSxVQUFVLEVBQUU7QUFsQkcsQ0FBakI7QUFxQkEsT0FBTyxJQUFNQyxTQUFTLEdBQUcsU0FBWkEsU0FBWSxDQUFDQyxNQUFEO0FBQUEsU0FDdkJDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjYixVQUFkLEVBQTBCVyxNQUExQixDQUR1QjtBQUFBLENBQWxCO0FBRVAsZ0JBQWU7QUFBQSxTQUF3QlgsVUFBeEI7QUFBQSxDQUFmIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjpcclxuICogQHZlcnNpb246XHJcbiAqIEBBdXRob3I6IHJ4emh1XHJcbiAqIEBEYXRlOiAyMDIxLTAzLTI1IDEwOjM0OjUzXHJcbiAqIEBMYXN0RWRpdG9yczogcnh6aHVcclxuICogQExhc3RFZGl0VGltZTogMjAyMS0wNC0yMyAxNjo0NTowM1xyXG4gKi9cclxuaW50ZXJmYWNlIElDb21wb25lbnRDb25maWcge1xyXG4gIGxvZ2luUHJvamVjdE5hbWU/OiBzdHJpbmc7XHJcbiAgYXV0aG9yaXphdGlvbj86IHN0cmluZztcclxuICBsb2dpblBhdGg/OiBzdHJpbmc7XHJcbiAgZXhjZXB0aW9uNTA1Pzogc3RyaW5nO1xyXG4gIGV4Y2VwdGlvbjQwMz86IHN0cmluZztcclxuICBpY29uZm9udFVybD86IHN0cmluZztcclxuICB2aWV3VXJsPzogc3RyaW5nO1xyXG4gIGFudGRTdHlsZT86IGJvb2xlYW47XHJcbiAgYWxsb3dDaGFycz86IGJvb2xlYW47XHJcbn1cclxuXHJcbmxldCBjb25maWdEYXRhID0ge1xyXG4gIC8v55m75b2V55WM6Z2i6aG555uu5ZCN56ewXHJcbiAgbG9naW5Qcm9qZWN0TmFtZTogXCJOU0MgRnJhbWV3b3JrXCIsXHJcbiAgLy/ns7vnu5/mjIfnurnvvIznmbvlvZXml7blgJnpnIDopoHkvKDpgJJcclxuICBhdXRob3JpemF0aW9uOiBcIkJhc2ljIGJuTmpPbTV6WXc9PVwiLFxyXG4gIC8v55m76ZmG55WM6Z2iVVJMXHJcbiAgbG9naW5QYXRoOiBcIi9sb2dpblwiLFxyXG4gIC8vNTA16ZSZ6K+vVVJMXHJcbiAgZXhjZXB0aW9uNTA1OiBcIi9leGNlcHRpb24vNTAwXCIsXHJcbiAgLy80MDPplJnor69VUkxcclxuICBleGNlcHRpb240MDM6IFwiL2V4Y2VwdGlvbi80MDNcIixcclxuICAvL+mYv+mHjOWbvuagh+W6k1VSTFxyXG4gIGljb25mb250VXJsOiBcIlwiLFxyXG4gIC8v5ZCO5Y+w6KeG5Zu+6I635Y+W5Zyw5Z2AXHJcbiAgdmlld1VybDogXCIvZGljdC92MS9cIixcclxuICAvL+m7mOiupGFudGTmoLflvI9cclxuICBhbnRkU3R5bGU6IHRydWUsXHJcbiAgLy9pbnB1dOeJueauiuWtl+espuWFqOWxgOWPmOmHj1xyXG4gIGFsbG93Q2hhcnM6IGZhbHNlLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHNldENvbmZpZyA9IChjb25maWc6IElDb21wb25lbnRDb25maWcpID0+XHJcbiAgT2JqZWN0LmFzc2lnbihjb25maWdEYXRhLCBjb25maWcpO1xyXG5leHBvcnQgZGVmYXVsdCAoKTogSUNvbXBvbmVudENvbmZpZyA9PiBjb25maWdEYXRhO1xyXG4iXX0=
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL2NvbmZpZy50cyJdLCJuYW1lcyI6WyJjb25maWdEYXRhIiwibG9naW5Qcm9qZWN0TmFtZSIsImF1dGhvcml6YXRpb24iLCJsb2dpblBhdGgiLCJleGNlcHRpb241MDUiLCJleGNlcHRpb240MDMiLCJpY29uZm9udFVybCIsInZpZXdVcmwiLCJ2aWV3Qml6VXJsIiwiYW50ZFN0eWxlIiwiYWxsb3dDaGFycyIsInNldENvbmZpZyIsImNvbmZpZyIsIk9iamVjdCIsImFzc2lnbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWNBLElBQUlBLFVBQVUsR0FBRztBQUNmO0FBQ0FDLEVBQUFBLGdCQUFnQixFQUFFLGVBRkg7QUFHZjtBQUNBQyxFQUFBQSxhQUFhLEVBQUUsb0JBSkE7QUFLZjtBQUNBQyxFQUFBQSxTQUFTLEVBQUUsUUFOSTtBQU9mO0FBQ0FDLEVBQUFBLFlBQVksRUFBRSxnQkFSQztBQVNmO0FBQ0FDLEVBQUFBLFlBQVksRUFBRSxnQkFWQztBQVdmO0FBQ0FDLEVBQUFBLFdBQVcsRUFBRSxFQVpFO0FBYWY7QUFDQUMsRUFBQUEsT0FBTyxFQUFFLHFDQWRNO0FBZWY7QUFDQUMsRUFBQUEsVUFBVSxFQUFFLHlDQWhCRztBQWlCZjtBQUNBQyxFQUFBQSxTQUFTLEVBQUUsSUFsQkk7QUFtQmY7QUFDQUMsRUFBQUEsVUFBVSxFQUFFO0FBcEJHLENBQWpCO0FBdUJBLE9BQU8sSUFBTUMsU0FBUyxHQUFHLFNBQVpBLFNBQVksQ0FBQ0MsTUFBRDtBQUFBLFNBQ3ZCQyxNQUFNLENBQUNDLE1BQVAsQ0FBY2QsVUFBZCxFQUEwQlksTUFBMUIsQ0FEdUI7QUFBQSxDQUFsQjtBQUVQLGdCQUFlO0FBQUEsU0FBd0JaLFVBQXhCO0FBQUEsQ0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wMy0yNSAxMDozNDo1M1xyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTY6NDU6MDNcclxuICovXHJcbmludGVyZmFjZSBJQ29tcG9uZW50Q29uZmlnIHtcclxuICBsb2dpblByb2plY3ROYW1lPzogc3RyaW5nO1xyXG4gIGF1dGhvcml6YXRpb24/OiBzdHJpbmc7XHJcbiAgbG9naW5QYXRoPzogc3RyaW5nO1xyXG4gIGV4Y2VwdGlvbjUwNT86IHN0cmluZztcclxuICBleGNlcHRpb240MDM/OiBzdHJpbmc7XHJcbiAgaWNvbmZvbnRVcmw/OiBzdHJpbmc7XHJcbiAgdmlld1VybD86IHN0cmluZztcclxuICB2aWV3Qml6VXJsPzogc3RyaW5nO1xyXG4gIGFudGRTdHlsZT86IGJvb2xlYW47XHJcbiAgYWxsb3dDaGFycz86IGJvb2xlYW47XHJcbn1cclxuXHJcbmxldCBjb25maWdEYXRhID0ge1xyXG4gIC8v55m75b2V55WM6Z2i6aG555uu5ZCN56ewXHJcbiAgbG9naW5Qcm9qZWN0TmFtZTogXCJOU0MgRnJhbWV3b3JrXCIsXHJcbiAgLy/ns7vnu5/mjIfnurnvvIznmbvlvZXml7blgJnpnIDopoHkvKDpgJJcclxuICBhdXRob3JpemF0aW9uOiBcIkJhc2ljIGJuTmpPbTV6WXc9PVwiLFxyXG4gIC8v55m76ZmG55WM6Z2iVVJMXHJcbiAgbG9naW5QYXRoOiBcIi9sb2dpblwiLFxyXG4gIC8vNTA16ZSZ6K+vVVJMXHJcbiAgZXhjZXB0aW9uNTA1OiBcIi9leGNlcHRpb24vNTAwXCIsXHJcbiAgLy80MDPplJnor69VUkxcclxuICBleGNlcHRpb240MDM6IFwiL2V4Y2VwdGlvbi80MDNcIixcclxuICAvL+mYv+mHjOWbvuagh+W6k1VSTFxyXG4gIGljb25mb250VXJsOiBcIlwiLFxyXG4gIC8v5ZCO5Y+w57O757uf6KeG5Zu+6I635Y+W5Zyw5Z2AXHJcbiAgdmlld1VybDogXCIvYmxhZGUtc3lzdGVtL2RpY3QvZGljdGlvbmFyeT9jb2RlPVwiLFxyXG4gIC8v5ZCO5Y+w5Lia5Yqh6KeG5Zu+6I635Y+W5Zyw5Z2AXHJcbiAgdmlld0JpelVybDogXCIvYmxhZGUtc3lzdGVtL2RpY3QtYml6L2RpY3Rpb25hcnk/Y29kZT1cIixcclxuICAvL+m7mOiupGFudGTmoLflvI9cclxuICBhbnRkU3R5bGU6IHRydWUsXHJcbiAgLy9pbnB1dOeJueauiuWtl+espuWFqOWxgOWPmOmHj1xyXG4gIGFsbG93Q2hhcnM6IGZhbHNlLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHNldENvbmZpZyA9IChjb25maWc6IElDb21wb25lbnRDb25maWcpID0+XHJcbiAgT2JqZWN0LmFzc2lnbihjb25maWdEYXRhLCBjb25maWcpO1xyXG5leHBvcnQgZGVmYXVsdCAoKTogSUNvbXBvbmVudENvbmZpZyA9PiBjb25maWdEYXRhO1xyXG4iXX0=
@@ -111,21 +111,9 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
111
111
  (_this$formRef$current3 = this.formRef.current) === null || _this$formRef$current3 === void 0 ? void 0 : _this$formRef$current3.validateFields(valid).then(function () {
112
112
  var _this2$formRef$curren;
113
113
 
114
- if (onSubmit) {
115
- onSubmit && onSubmit(formValue, label);
116
- return;
117
- }
118
-
119
114
  _this2.setState({
120
115
  loading: true
121
- }); // const newValue = { ...value };
122
- // delete newValue.createDept;
123
- // delete newValue.createUser;
124
- // delete newValue.createTime;
125
- // delete newValue.key;
126
- // delete newValue.updateUser;
127
- // delete newValue.updateTime;
128
-
116
+ });
129
117
 
130
118
  var data = _objectSpread(_objectSpread({}, formValue), dictNames);
131
119
 
@@ -135,6 +123,11 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
135
123
  });
136
124
  }
137
125
 
126
+ if (onSubmit) {
127
+ onSubmit && onSubmit(data, label);
128
+ return;
129
+ }
130
+
138
131
  if (!submitUrl) {
139
132
  throw new Error("url不能为空!");
140
133
  }
@@ -248,4 +241,4 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
248
241
  }(PureComponent);
249
242
 
250
243
  export default EditorForm;
251
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2VDb21wb25lbnRzL0Jhc2VQYWdlL0Zvcm0udHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIkZvcm0iLCJnZXROb2RlIiwibWVzc2FnZSIsIkNvbCIsIlJvdyIsIkVkaXRvckZvcm0iLCJjcmVhdGVSZWYiLCJsb2FkaW5nIiwibGFiZWwiLCJlZGl0b3JGbGFnIiwidmFsdWUiLCJkaWN0TmFtZXMiLCJmbGFnIiwic2V0U3RhdGUiLCJhdHRyaWJ1dGUiLCJmb3JtUmVmIiwiY3VycmVudCIsInNob3dGb3JtIiwicHJvcHMiLCJzdWJtaXRVcmwiLCJzdWJtaXRQYXJhbXMiLCJvblN1Ym1pdCIsImNhbGxCYWNrIiwic3RhdGUiLCJmb3JtVmFsdWUiLCJnZXRGaWVsZHNWYWx1ZSIsInZhbGlkIiwidmFsaWRhdGVGaWVsZHMiLCJ0aGVuIiwiZGF0YSIsImlkIiwiRXJyb3IiLCJub1VuZGVmaW5lZCIsInJlcyIsImNvZGUiLCJzdWNjZXNzIiwiaGlkZUZvcm0iLCJjYXRjaCIsImVycm9ySW5mbyIsInZhbHVlT3B0aW9uIiwidHlwZSIsImRpY3ROYW1lIiwibmV3TmFtZXMiLCJmb3JtUHJvcHMiLCJtb2RhbFByb3BzIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImJpbmQiLCJva0J1dHRvblByb3BzIiwiY2VudGVyZWQiLCJ3aWR0aCIsIm5ld1ZhbGlkIiwiZmxleCIsIm1hcCIsIml0ZW0iLCJpbmRleCIsInJ1bGVzIiwibGVuZ3RoIiwicHVzaCIsIm5hbWUiLCJzcGFuIiwicGxhY2Vob2xkZXIiLCJkaXNhYmxlZCIsIm9uQ2hhbmdlIiwidmFsdWVDaGFuZ2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQUNBLE9BQU9DLElBQVAsTUFBaUIsWUFBakI7QUFDQSxTQUFT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LENBQVdDLE1BQVgsR0FBb0IsQ0FBdEMsRUFBeUM7QUFDdkNOLFVBQUFBLFFBQVEsQ0FBQ08sSUFBVCxDQUFjSixJQUFJLENBQUNLLElBQW5CO0FBQ0Q7O0FBQ0QsWUFBSUosS0FBSyxHQUFHLENBQVIsS0FBY2QsU0FBUyxDQUFDZ0IsTUFBNUIsRUFBb0M7QUFDbEMsVUFBQSxNQUFJLENBQUNqQyxLQUFMLEdBQWEyQixRQUFiO0FBQ0Q7O0FBQ0QsNEJBQ0Usb0JBQUMsR0FBRDtBQUFLLFVBQUEsSUFBSSxFQUFFRyxJQUFJLENBQUNNLElBQUwsSUFBYSxFQUF4QjtBQUE0QixVQUFBLEdBQUcsRUFBRUw7QUFBakMsd0JBQ0Usb0JBQUMsSUFBRCxDQUFNLElBQU47QUFDRSxVQUFBLEtBQUssRUFBRUQsSUFBSSxDQUFDaEQsS0FEZDtBQUVFLFVBQUEsSUFBSSxFQUFFZ0QsSUFBSSxDQUFDSyxJQUZiO0FBR0UsVUFBQSxLQUFLLEVBQUVMLElBQUksQ0FBQ0U7QUFIZCxXQUtHekQsT0FBTyxDQUFDdUQsSUFBSSxDQUFDaEIsSUFBTixrQ0FDSGdCLElBQUksQ0FBQ3RDLEtBREY7QUFFTjZDLFVBQUFBLFdBQVcsOEJBQVFQLElBQUksQ0FBQ2hELEtBQWIsQ0FGTDtBQUdOd0QsVUFBQUEsUUFBUSxFQUFFeEQsS0FBSyxJQUFJLElBSGI7QUFJTnlELFVBQUFBLFFBQVEsRUFBRSxNQUFJLENBQUNDLFdBQUwsQ0FBaUJqQixJQUFqQixDQUFzQixNQUF0QixFQUE0QjtBQUNwQ1QsWUFBQUEsSUFBSSxFQUFFZ0IsSUFBSSxDQUFDaEIsSUFEeUI7QUFFcENDLFlBQUFBLFFBQVEsRUFBRWUsSUFBSSxDQUFDZjtBQUZxQixXQUE1QjtBQUpKLFdBTFYsQ0FERixDQURGO0FBbUJELE9BM0JBLENBREgsQ0FQRixDQURGO0FBd0NEOzs7O0VBaEpzQjFDLGE7O0FBbUp6QixlQUFlTSxVQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Zvcm1cIjtcclxuaW1wb3J0IHsgZ2V0Tm9kZSB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vbWVzc2FnZVwiO1xyXG5pbXBvcnQgQ29sIGZyb20gXCIuLi8uLi9ncmlkL0NvbFwiO1xyXG5pbXBvcnQgUm93IGZyb20gXCIuLi8uLi9ncmlkL1Jvd1wiO1xyXG5jbGFzcyBFZGl0b3JGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxhbnk+IHtcclxuICBmb3JtUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBzdGF0ZSA9IHtcclxuICAgIGxvYWRpbmc6IGZhbHNlLFxyXG4gICAgbGFiZWw6IFwiXCIsXHJcbiAgICBlZGl0b3JGbGFnOiB0cnVlLFxyXG4gICAgdmFsdWU6IHt9IGFzIGFueSxcclxuICAgIGRpY3ROYW1lczoge30gYXMgYW55LFxyXG4gIH07XHJcbiAgdmFsaWQ6IGFueSA9IFtdO1xyXG4gIHNob3codmFsdWU/OiBhbnksIGZsYWcgPSB0cnVlKSB7XHJcbiAgICBsZXQgbGFiZWwgPSBcIuaWsOWinlwiO1xyXG4gICAgaWYgKHZhbHVlICYmIGZsYWcpIHtcclxuICAgICAgbGFiZWwgPSBcIue8lui+kVwiO1xyXG4gICAgfSBlbHNlIGlmICghZmxhZykge1xyXG4gICAgICBsYWJlbCA9IFwi5p+l55yLXCI7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgbGFiZWw6IGxhYmVsLFxyXG4gICAgICAgIGVkaXRvckZsYWc6ICFmbGFnLFxyXG4gICAgICAgIHZhbHVlOiB2YWx1ZT8uYXR0cmlidXRlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zaG93Rm9ybSh2YWx1ZT8uYXR0cmlidXRlKTtcclxuICB9XHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN1Ym1pdFVybCA9IFwiXCIsXHJcbiAgICAgIHN1Ym1pdFBhcmFtcyA9IHt9LFxyXG4gICAgICBvblN1Ym1pdCxcclxuICAgICAgY2FsbEJhY2ssXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbGFiZWwsIHZhbHVlLCBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCB2YWxpZCA9IHRoaXMudmFsaWQ7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudFxyXG4gICAgICA/LnZhbGlkYXRlRmllbGRzKHZhbGlkKVxyXG4gICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgaWYgKG9uU3VibWl0KSB7XHJcbiAgICAgICAgICBvblN1Ym1pdCAmJiBvblN1Ym1pdChmb3JtVmFsdWUsIGxhYmVsKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IHRydWUgfSk7XHJcbiAgICAgICAgLy8gY29uc3QgbmV3VmFsdWUgPSB7IC4uLnZhbHVlIH07XHJcbiAgICAgICAgLy8gZGVsZXRlIG5ld1ZhbHVlLmNyZWF0ZURlcHQ7XHJcbiAgICAgICAgLy8gZGVsZXRlIG5ld1ZhbHVlLmNyZWF0ZVVzZXI7XHJcbiAgICAgICAgLy8gZGVsZXRlIG5ld1ZhbHVlLmNyZWF0ZVRpbWU7XHJcbiAgICAgICAgLy8gZGVsZXRlIG5ld1ZhbHVlLmtleTtcclxuICAgICAgICAvLyBkZWxldGUgbmV3VmFsdWUudXBkYXRlVXNlcjtcclxuICAgICAgICAvLyBkZWxldGUgbmV3VmFsdWUudXBkYXRlVGltZTtcclxuICAgICAgICBsZXQgZGF0YSA9IHsgLi4uZm9ybVZhbHVlLCAuLi5kaWN0TmFtZXMgfTtcclxuICAgICAgICBpZiAobGFiZWwgPT0gXCLnvJbovpFcIikge1xyXG4gICAgICAgICAgZGF0YSA9IHsgLi4uZGF0YSwgaWQ6IHZhbHVlPy5pZCB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXN1Ym1pdFVybCkge1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs5LiN6IO95Li656m677yBXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8ub25TdWJtaXQoXHJcbiAgICAgICAgICBzdWJtaXRVcmwsXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGRhdGE6IHsgLi4uZGF0YSB9LFxyXG4gICAgICAgICAgICBub1VuZGVmaW5lZDogbGFiZWwgPT0gXCLnvJbovpFcIixcclxuICAgICAgICAgICAgc3VibWl0UGFyYW1zLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5zdWNjZXNzKGxhYmVsICsgXCLmiJDlip9cIik7XHJcbiAgICAgICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmhpZGVGb3JtKCk7XHJcbiAgICAgICAgICAgICAgY2FsbEJhY2sgJiYgY2FsbEJhY2soKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyb3JJbmZvOiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgdmFsdWVDaGFuZ2UoeyB0eXBlLCBkaWN0TmFtZSB9LCB2YWx1ZSwgdmFsdWVPcHRpb24pIHtcclxuICAgIGlmICh2YWx1ZU9wdGlvbikge1xyXG4gICAgICBpZiAoZGljdE5hbWUpIHtcclxuICAgICAgICBjb25zdCB7IGRpY3ROYW1lcyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgICAgICBjb25zdCBuZXdOYW1lcyA9IHsgLi4uZGljdE5hbWVzIH0gYXMgYW55O1xyXG4gICAgICAgIG5ld05hbWVzW2RpY3ROYW1lXSA9IHZhbHVlT3B0aW9uLmxhYmVsO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGljdE5hbWVzOiBuZXdOYW1lcyxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBmb3JtUHJvcHMgPSBbXSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbG9hZGluZywgbGFiZWwsIGVkaXRvckZsYWcgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBtb2RhbFByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9rVGV4dDogXCLnoa7lrppcIixcclxuICAgICAgY2FuY2VsVGV4dDogXCLlj5bmtohcIixcclxuICAgICAgb25PazogdGhpcy5vblN1Ym1pdC5iaW5kKHRoaXMpLFxyXG4gICAgICBva0J1dHRvblByb3BzOiB7IGxvYWRpbmc6IGxvYWRpbmcgfSxcclxuICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH07XHJcbiAgICBjb25zdCBuZXdWYWxpZDogYW55W10gPSBbXTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxGb3JtXHJcbiAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgc2hvd01vZGVsPXtcIm1vZGFsXCJ9XHJcbiAgICAgICAgbW9kYWxQcm9wcz17eyAuLi5tb2RhbFByb3BzIH19XHJcbiAgICAgICAgbGFiZWxDb2w9e3sgZmxleDogXCIxMDBweFwiIH19XHJcbiAgICAgICAgd3JhcHBlckNvbD17eyBmbGV4OiBcIjE1dndcIiB9fVxyXG4gICAgICA+XHJcbiAgICAgICAgPFJvdyBndXR0ZXI9ezI0fT5cclxuICAgICAgICAgIHtmb3JtUHJvcHMubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB7IC4uLml0ZW0ucHJvcHMgfTtcclxuICAgICAgICAgICAgaWYgKGl0ZW0ucnVsZXMgJiYgaXRlbS5ydWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgbmV3VmFsaWQucHVzaChpdGVtLm5hbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChpbmRleCArIDEgPT09IGZvcm1Qcm9wcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICB0aGlzLnZhbGlkID0gbmV3VmFsaWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICA8Q29sIHNwYW49e2l0ZW0uc3BhbiB8fCAxMn0ga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgIHJ1bGVzPXtpdGVtLnJ1bGVzfVxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IGxhYmVsID09IFwi5p+l55yLXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U6IHRoaXMudmFsdWVDaGFuZ2UuYmluZCh0aGlzLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBpdGVtLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICBkaWN0TmFtZTogaXRlbS5kaWN0TmFtZSxcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cclxuICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0pfVxyXG4gICAgICAgIDwvUm93PlxyXG4gICAgICA8L0Zvcm0+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgRWRpdG9yRm9ybTtcclxuIl19
244
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2VDb21wb25lbnRzL0Jhc2VQYWdlL0Zvcm0udHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIkZvcm0iLCJnZXROb2RlIiwibWVzc2FnZSIsIkNvbCIsIlJvdyIsIkVkaXRvckZvcm0iLCJjcmVhdGVSZWYiLCJsb2FkaW5nIiwibGFiZWwiLCJlZGl0b3JGbGFnIiwidmFsdWUiLCJkaWN0TmFtZXMiLCJmbGFnIiwic2V0U3RhdGUiLCJhdHRyaWJ1dGUiLCJmb3JtUmVmIiwiY3VycmVudCIsInNob3dGb3JtIiwicHJvcHMiLCJzdWJtaXRVcmwiLCJzdWJtaXRQYXJhbXMiLCJvblN1Ym1pdCIsImNhbGxCYWNrIiwic3RhdGUiLCJmb3JtVmFsdWUiLCJnZXRGaWVsZHNWYWx1ZSIsInZhbGlkIiwidmFsaWRhdGVGaWVsZHMiLCJ0aGVuIiwiZGF0YSIsImlkIiwiRXJyb3IiLCJub1VuZGVmaW5lZCIsInJlcyIsImNvZGUiLCJzdWNjZXNzIiwiaGlkZUZvcm0iLCJjYXRjaCIsImVycm9ySW5mbyIsInZhbHVlT3B0aW9uIiwidHlwZSIsImRpY3ROYW1lIiwibmV3TmFtZXMiLCJmb3JtUHJvcHMiLCJtb2RhbFByb3BzIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImJpbmQiLCJva0J1dHRvblByb3BzIiwiY2VudGVyZWQiLCJ3aWR0aCIsIm5ld1ZhbGlkIiwiZmxleCIsIm1hcCIsIml0ZW0iLCJpbmRleCIsInJ1bGVzIiwibGVuZ3RoIiwicHVzaCIsIm5hbWUiLCJzcGFuIiwicGxhY2Vob2xkZXIiLCJkaXNhYmxlZCIsIm9uQ2hhbmdlIiwidmFsdWVDaGFuZ2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQUNBLE9BQU9DLElBQVAsTUFBaUIsWUFBakI7QUFDQSxTQUFTQyxPQUFULFFBQXdCLGFBQXhCO0FBQ0EsT0FBT0MsT0FBUCxNQUFvQixlQUFwQjtBQUNBLE9BQU9DLEdBQVAsTUFBZ0IsZ0JBQWhCO0FBQ0EsT0FBT0MsR0FBUCxNQUFnQixnQkFBaEI7O0lBQ01DLFU7Ozs7Ozs7Ozs7Ozs7Ozs7MkVBQ01QLEtBQUssQ0FBQ1EsU0FBTixFOzs0REFDRjtBQUNOQyxNQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxNQUFBQSxLQUFLLEVBQUUsRUFGRDtBQUdOQyxNQUFBQSxVQUFVLEVBQUUsSUFITjtBQUlOQyxNQUFBQSxLQUFLLEVBQUUsRUFKRDtBQUtOQyxNQUFBQSxTQUFTLEVBQUU7QUFMTCxLOzs0REFPSyxFOzs7Ozs7O1dBQ2IsY0FBS0QsS0FBTCxFQUErQjtBQUFBOztBQUFBLFVBQWJFLElBQWEsdUVBQU4sSUFBTTtBQUM3QixVQUFJSixLQUFLLEdBQUcsSUFBWjs7QUFDQSxVQUFJRSxLQUFLLElBQUlFLElBQWIsRUFBbUI7QUFDakJKLFFBQUFBLEtBQUssR0FBRyxJQUFSO0FBQ0QsT0FGRCxNQUVPLElBQUksQ0FBQ0ksSUFBTCxFQUFXO0FBQ2hCSixRQUFBQSxLQUFLLEdBQUcsSUFBUjtBQUNEOztBQUNELFVBQUlFLEtBQUosRUFBVztBQUNULGFBQUtHLFFBQUwsQ0FBYztBQUNaTCxVQUFBQSxLQUFLLEVBQUVBLEtBREs7QUFFWkMsVUFBQUEsVUFBVSxFQUFFLENBQUNHLElBRkQ7QUFHWkYsVUFBQUEsS0FBSyxFQUFFQSxLQUFGLGFBQUVBLEtBQUYsdUJBQUVBLEtBQUssQ0FBRUk7QUFIRixTQUFkO0FBS0Q7O0FBQ0Qsb0NBQUtDLE9BQUwsQ0FBYUMsT0FBYixnRkFBc0JDLFFBQXRCLENBQStCUCxLQUEvQixhQUErQkEsS0FBL0IsdUJBQStCQSxLQUFLLENBQUVJLFNBQXRDO0FBQ0Q7OztXQUNELG9CQUFXO0FBQUE7QUFBQTtBQUFBOztBQUNULHdCQUtJLEtBQUtJLEtBTFQ7QUFBQSw4Q0FDRUMsU0FERjtBQUFBLFVBQ0VBLFNBREYsc0NBQ2MsRUFEZDtBQUFBLDhDQUVFQyxZQUZGO0FBQUEsVUFFRUEsWUFGRixzQ0FFaUIsRUFGakI7QUFBQSxVQUdFQyxRQUhGLGVBR0VBLFFBSEY7QUFBQSxVQUlFQyxRQUpGLGVBSUVBLFFBSkY7QUFNQSx3QkFBb0MsS0FBS0MsS0FBekM7QUFBQSxVQUFRZixLQUFSLGVBQVFBLEtBQVI7QUFBQSxVQUFlRSxLQUFmLGVBQWVBLEtBQWY7QUFBQSxVQUFzQkMsU0FBdEIsZUFBc0JBLFNBQXRCO0FBQ0EsVUFBTWEsU0FBUyw2QkFBRyxLQUFLVCxPQUFMLENBQWFDLE9BQWhCLDJEQUFHLHVCQUFzQlMsY0FBdEIsRUFBbEI7QUFDQSxVQUFJQyxLQUFLLEdBQUcsS0FBS0EsS0FBakI7QUFDQSxxQ0FBS1gsT0FBTCxDQUFhQyxPQUFiLGtGQUNJVyxjQURKLENBQ21CRCxLQURuQixFQUVHRSxJQUZILENBRVEsWUFBTTtBQUFBOztBQUNWLFFBQUEsTUFBSSxDQUFDZixRQUFMLENBQWM7QUFBRU4sVUFBQUEsT0FBTyxFQUFFO0FBQVgsU0FBZDs7QUFDQSxZQUFJc0IsSUFBSSxtQ0FBUUwsU0FBUixHQUFzQmIsU0FBdEIsQ0FBUjs7QUFDQSxZQUFJSCxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQnFCLFVBQUFBLElBQUksbUNBQVFBLElBQVI7QUFBY0MsWUFBQUEsRUFBRSxFQUFFcEIsS0FBRixhQUFFQSxLQUFGLHVCQUFFQSxLQUFLLENBQUVvQjtBQUF6QixZQUFKO0FBQ0Q7O0FBQ0QsWUFBSVQsUUFBSixFQUFjO0FBQ1pBLFVBQUFBLFFBQVEsSUFBSUEsUUFBUSxDQUFDUSxJQUFELEVBQU9yQixLQUFQLENBQXBCO0FBQ0E7QUFDRDs7QUFDRCxZQUFJLENBQUNXLFNBQUwsRUFBZ0I7QUFDZCxnQkFBTSxJQUFJWSxLQUFKLENBQVUsVUFBVixDQUFOO0FBQ0Q7O0FBQ0QsaUNBQUEsTUFBSSxDQUFDaEIsT0FBTCxDQUFhQyxPQUFiLGdGQUFzQkssUUFBdEIsQ0FDRUYsU0FERixFQUVFO0FBQ0VVLFVBQUFBLElBQUksb0JBQU9BLElBQVAsQ0FETjtBQUVFRyxVQUFBQSxXQUFXLEVBQUV4QixLQUFLLElBQUksSUFGeEI7QUFHRVksVUFBQUEsWUFBWSxFQUFaQTtBQUhGLFNBRkYsRUFPRSxVQUFDYSxHQUFELEVBQWM7QUFDWixjQUFRQyxJQUFSLEdBQWlCRCxHQUFqQixDQUFRQyxJQUFSOztBQUNBLFVBQUEsTUFBSSxDQUFDckIsUUFBTCxDQUFjO0FBQUVOLFlBQUFBLE9BQU8sRUFBRTtBQUFYLFdBQWQ7O0FBQ0EsY0FBSTJCLElBQUksS0FBSyxHQUFiLEVBQWtCO0FBQUE7O0FBQ2hCaEMsWUFBQUEsT0FBTyxDQUFDaUMsT0FBUixDQUFnQjNCLEtBQUssR0FBRyxJQUF4QjtBQUNBLHNDQUFBLE1BQUksQ0FBQ08sT0FBTCxDQUFhQyxPQUFiLGtGQUFzQm9CLFFBQXRCO0FBQ0FkLFlBQUFBLFFBQVEsSUFBSUEsUUFBUSxFQUFwQjtBQUNEO0FBQ0YsU0FmSDtBQWlCRCxPQWhDSCxFQWlDR2UsS0FqQ0gsQ0FpQ1MsVUFBQ0MsU0FBRCxFQUFvQixDQUFFLENBakMvQjtBQWtDRDs7O1dBQ0QsMkJBQWdDNUIsS0FBaEMsRUFBdUM2QixXQUF2QyxFQUFvRDtBQUFBLFVBQXRDQyxJQUFzQyxRQUF0Q0EsSUFBc0M7QUFBQSxVQUFoQ0MsUUFBZ0MsUUFBaENBLFFBQWdDOztBQUNsRCxVQUFJRixXQUFKLEVBQWlCO0FBQ2YsWUFBSUUsUUFBSixFQUFjO0FBQ1osY0FBUTlCLFNBQVIsR0FBc0IsS0FBS1ksS0FBM0IsQ0FBUVosU0FBUjs7QUFDQSxjQUFNK0IsUUFBUSxxQkFBUS9CLFNBQVIsQ0FBZDs7QUFDQStCLFVBQUFBLFFBQVEsQ0FBQ0QsUUFBRCxDQUFSLEdBQXFCRixXQUFXLENBQUMvQixLQUFqQztBQUNBLGVBQUtLLFFBQUwsQ0FBYztBQUNaRixZQUFBQSxTQUFTLEVBQUUrQjtBQURDLFdBQWQ7QUFHRDtBQUNGO0FBQ0Y7OztXQUVELGtCQUFTO0FBQUE7O0FBQ1Asa0NBQTJCLEtBQUt4QixLQUFoQyxDQUFReUIsU0FBUjtBQUFBLFVBQVFBLFNBQVIsc0NBQW9CLEVBQXBCO0FBQ0EseUJBQXVDLEtBQUtwQixLQUE1QztBQUFBLFVBQVFoQixPQUFSLGdCQUFRQSxPQUFSO0FBQUEsVUFBaUJDLEtBQWpCLGdCQUFpQkEsS0FBakI7QUFBQSxVQUF3QkMsVUFBeEIsZ0JBQXdCQSxVQUF4QjtBQUNBLFVBQU1tQyxVQUFVLEdBQUc7QUFDakJDLFFBQUFBLEtBQUssRUFBRXJDLEtBRFU7QUFFakJzQyxRQUFBQSxNQUFNLEVBQUUsSUFGUztBQUdqQkMsUUFBQUEsVUFBVSxFQUFFLElBSEs7QUFJakJDLFFBQUFBLElBQUksRUFBRSxLQUFLM0IsUUFBTCxDQUFjNEIsSUFBZCxDQUFtQixJQUFuQixDQUpXO0FBS2pCQyxRQUFBQSxhQUFhLEVBQUU7QUFBRTNDLFVBQUFBLE9BQU8sRUFBRUE7QUFBWCxTQUxFO0FBTWpCNEMsUUFBQUEsUUFBUSxFQUFFLElBTk87QUFPakJDLFFBQUFBLEtBQUssRUFBRTtBQVBVLE9BQW5CO0FBU0EsVUFBTUMsUUFBZSxHQUFHLEVBQXhCO0FBQ0EsMEJBQ0Usb0JBQUMsSUFBRDtBQUNFLFFBQUEsR0FBRyxFQUFFLEtBQUt0QyxPQURaO0FBRUUsUUFBQSxTQUFTLEVBQUUsT0FGYjtBQUdFLFFBQUEsVUFBVSxvQkFBTzZCLFVBQVAsQ0FIWjtBQUlFLFFBQUEsUUFBUSxFQUFFO0FBQUVVLFVBQUFBLElBQUksRUFBRTtBQUFSLFNBSlo7QUFLRSxRQUFBLFVBQVUsRUFBRTtBQUFFQSxVQUFBQSxJQUFJLEVBQUU7QUFBUjtBQUxkLHNCQU9FLG9CQUFDLEdBQUQ7QUFBSyxRQUFBLE1BQU0sRUFBRTtBQUFiLFNBQ0dYLFNBQVMsQ0FBQ1ksR0FBVixDQUFjLFVBQUNDLElBQUQsRUFBWUMsS0FBWixFQUE4QjtBQUMzQyxZQUFNdkMsS0FBSyxxQkFBUXNDLElBQUksQ0FBQ3RDLEtBQWIsQ0FBWDs7QUFDQSxZQUFJc0MsSUFBSSxDQUFDRSxLQUFMLElBQWNGLElBQUksQ0FBQ0UsS0FBTCxDQUFXQyxNQUFYLEdBQW9CLENBQXRDLEVBQXlDO0FBQ3ZDTixVQUFBQSxRQUFRLENBQUNPLElBQVQsQ0FBY0osSUFBSSxDQUFDSyxJQUFuQjtBQUNEOztBQUNELFlBQUlKLEtBQUssR0FBRyxDQUFSLEtBQWNkLFNBQVMsQ0FBQ2dCLE1BQTVCLEVBQW9DO0FBQ2xDLFVBQUEsTUFBSSxDQUFDakMsS0FBTCxHQUFhMkIsUUFBYjtBQUNEOztBQUNELDRCQUNFLG9CQUFDLEdBQUQ7QUFBSyxVQUFBLElBQUksRUFBRUcsSUFBSSxDQUFDTSxJQUFMLElBQWEsRUFBeEI7QUFBNEIsVUFBQSxHQUFHLEVBQUVMO0FBQWpDLHdCQUNFLG9CQUFDLElBQUQsQ0FBTSxJQUFOO0FBQ0UsVUFBQSxLQUFLLEVBQUVELElBQUksQ0FBQ2hELEtBRGQ7QUFFRSxVQUFBLElBQUksRUFBRWdELElBQUksQ0FBQ0ssSUFGYjtBQUdFLFVBQUEsS0FBSyxFQUFFTCxJQUFJLENBQUNFO0FBSGQsV0FLR3pELE9BQU8sQ0FBQ3VELElBQUksQ0FBQ2hCLElBQU4sa0NBQ0hnQixJQUFJLENBQUN0QyxLQURGO0FBRU42QyxVQUFBQSxXQUFXLDhCQUFRUCxJQUFJLENBQUNoRCxLQUFiLENBRkw7QUFHTndELFVBQUFBLFFBQVEsRUFBRXhELEtBQUssSUFBSSxJQUhiO0FBSU55RCxVQUFBQSxRQUFRLEVBQUUsTUFBSSxDQUFDQyxXQUFMLENBQWlCakIsSUFBakIsQ0FBc0IsTUFBdEIsRUFBNEI7QUFDcENULFlBQUFBLElBQUksRUFBRWdCLElBQUksQ0FBQ2hCLElBRHlCO0FBRXBDQyxZQUFBQSxRQUFRLEVBQUVlLElBQUksQ0FBQ2Y7QUFGcUIsV0FBNUI7QUFKSixXQUxWLENBREYsQ0FERjtBQW1CRCxPQTNCQSxDQURILENBUEYsQ0FERjtBQXdDRDs7OztFQXpJc0IxQyxhOztBQTRJekIsZUFBZU0sVUFBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBGb3JtIGZyb20gXCIuLi8uLi9mb3JtXCI7XHJcbmltcG9ydCB7IGdldE5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IG1lc3NhZ2UgZnJvbSBcIi4uLy4uL21lc3NhZ2VcIjtcclxuaW1wb3J0IENvbCBmcm9tIFwiLi4vLi4vZ3JpZC9Db2xcIjtcclxuaW1wb3J0IFJvdyBmcm9tIFwiLi4vLi4vZ3JpZC9Sb3dcIjtcclxuY2xhc3MgRWRpdG9yRm9ybSBleHRlbmRzIFB1cmVDb21wb25lbnQ8YW55PiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBsb2FkaW5nOiBmYWxzZSxcclxuICAgIGxhYmVsOiBcIlwiLFxyXG4gICAgZWRpdG9yRmxhZzogdHJ1ZSxcclxuICAgIHZhbHVlOiB7fSBhcyBhbnksXHJcbiAgICBkaWN0TmFtZXM6IHt9IGFzIGFueSxcclxuICB9O1xyXG4gIHZhbGlkOiBhbnkgPSBbXTtcclxuICBzaG93KHZhbHVlPzogYW55LCBmbGFnID0gdHJ1ZSkge1xyXG4gICAgbGV0IGxhYmVsID0gXCLmlrDlop5cIjtcclxuICAgIGlmICh2YWx1ZSAmJiBmbGFnKSB7XHJcbiAgICAgIGxhYmVsID0gXCLnvJbovpFcIjtcclxuICAgIH0gZWxzZSBpZiAoIWZsYWcpIHtcclxuICAgICAgbGFiZWwgPSBcIuafpeeci1wiO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICBlZGl0b3JGbGFnOiAhZmxhZyxcclxuICAgICAgICB2YWx1ZTogdmFsdWU/LmF0dHJpYnV0ZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2hvd0Zvcm0odmFsdWU/LmF0dHJpYnV0ZSk7XHJcbiAgfVxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdWJtaXRVcmwgPSBcIlwiLFxyXG4gICAgICBzdWJtaXRQYXJhbXMgPSB7fSxcclxuICAgICAgb25TdWJtaXQsXHJcbiAgICAgIGNhbGxCYWNrLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGxhYmVsLCB2YWx1ZSwgZGljdE5hbWVzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBsZXQgdmFsaWQgPSB0aGlzLnZhbGlkO1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnRcclxuICAgICAgPy52YWxpZGF0ZUZpZWxkcyh2YWxpZClcclxuICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiB0cnVlIH0pO1xyXG4gICAgICAgIGxldCBkYXRhID0geyAuLi5mb3JtVmFsdWUsIC4uLmRpY3ROYW1lcyB9O1xyXG4gICAgICAgIGlmIChsYWJlbCA9PSBcIue8lui+kVwiKSB7XHJcbiAgICAgICAgICBkYXRhID0geyAuLi5kYXRhLCBpZDogdmFsdWU/LmlkIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChvblN1Ym1pdCkge1xyXG4gICAgICAgICAgb25TdWJtaXQgJiYgb25TdWJtaXQoZGF0YSwgbGFiZWwpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXN1Ym1pdFVybCkge1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs5LiN6IO95Li656m677yBXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8ub25TdWJtaXQoXHJcbiAgICAgICAgICBzdWJtaXRVcmwsXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGRhdGE6IHsgLi4uZGF0YSB9LFxyXG4gICAgICAgICAgICBub1VuZGVmaW5lZDogbGFiZWwgPT0gXCLnvJbovpFcIixcclxuICAgICAgICAgICAgc3VibWl0UGFyYW1zLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5zdWNjZXNzKGxhYmVsICsgXCLmiJDlip9cIik7XHJcbiAgICAgICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmhpZGVGb3JtKCk7XHJcbiAgICAgICAgICAgICAgY2FsbEJhY2sgJiYgY2FsbEJhY2soKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyb3JJbmZvOiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgdmFsdWVDaGFuZ2UoeyB0eXBlLCBkaWN0TmFtZSB9LCB2YWx1ZSwgdmFsdWVPcHRpb24pIHtcclxuICAgIGlmICh2YWx1ZU9wdGlvbikge1xyXG4gICAgICBpZiAoZGljdE5hbWUpIHtcclxuICAgICAgICBjb25zdCB7IGRpY3ROYW1lcyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgICAgICBjb25zdCBuZXdOYW1lcyA9IHsgLi4uZGljdE5hbWVzIH0gYXMgYW55O1xyXG4gICAgICAgIG5ld05hbWVzW2RpY3ROYW1lXSA9IHZhbHVlT3B0aW9uLmxhYmVsO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGljdE5hbWVzOiBuZXdOYW1lcyxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBmb3JtUHJvcHMgPSBbXSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbG9hZGluZywgbGFiZWwsIGVkaXRvckZsYWcgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBtb2RhbFByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9rVGV4dDogXCLnoa7lrppcIixcclxuICAgICAgY2FuY2VsVGV4dDogXCLlj5bmtohcIixcclxuICAgICAgb25PazogdGhpcy5vblN1Ym1pdC5iaW5kKHRoaXMpLFxyXG4gICAgICBva0J1dHRvblByb3BzOiB7IGxvYWRpbmc6IGxvYWRpbmcgfSxcclxuICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH07XHJcbiAgICBjb25zdCBuZXdWYWxpZDogYW55W10gPSBbXTtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxGb3JtXHJcbiAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgc2hvd01vZGVsPXtcIm1vZGFsXCJ9XHJcbiAgICAgICAgbW9kYWxQcm9wcz17eyAuLi5tb2RhbFByb3BzIH19XHJcbiAgICAgICAgbGFiZWxDb2w9e3sgZmxleDogXCIxMDBweFwiIH19XHJcbiAgICAgICAgd3JhcHBlckNvbD17eyBmbGV4OiBcIjE1dndcIiB9fVxyXG4gICAgICA+XHJcbiAgICAgICAgPFJvdyBndXR0ZXI9ezI0fT5cclxuICAgICAgICAgIHtmb3JtUHJvcHMubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB7IC4uLml0ZW0ucHJvcHMgfTtcclxuICAgICAgICAgICAgaWYgKGl0ZW0ucnVsZXMgJiYgaXRlbS5ydWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgbmV3VmFsaWQucHVzaChpdGVtLm5hbWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChpbmRleCArIDEgPT09IGZvcm1Qcm9wcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICB0aGlzLnZhbGlkID0gbmV3VmFsaWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICA8Q29sIHNwYW49e2l0ZW0uc3BhbiB8fCAxMn0ga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgIHJ1bGVzPXtpdGVtLnJ1bGVzfVxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IGxhYmVsID09IFwi5p+l55yLXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U6IHRoaXMudmFsdWVDaGFuZ2UuYmluZCh0aGlzLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBpdGVtLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICBkaWN0TmFtZTogaXRlbS5kaWN0TmFtZSxcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cclxuICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0pfVxyXG4gICAgICAgIDwvUm93PlxyXG4gICAgICA8L0Zvcm0+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgRWRpdG9yRm9ybTtcclxuIl19
@@ -25,12 +25,14 @@ interface NSCBaseBageProps {
25
25
  columns: Array<Object>;
26
26
  showLeft?: boolean;
27
27
  showToolButton?: boolean;
28
- showAddButton?: boolean;
29
28
  editorForm?: boolean;
30
- showDeleteButton?: boolean;
31
29
  deleteUrl?: string;
32
30
  onDelete?: any;
31
+ deleteParams?: Object;
33
32
  children?: React.ReactNode;
33
+ onSearch?: any;
34
+ initData?: any;
35
+ buttons?: Array<string>;
34
36
  }
35
37
  declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
36
38
  tableRef: React.RefObject<any>;
@@ -38,6 +40,7 @@ declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
38
40
  searchRef: React.RefObject<any>;
39
41
  editorRef: React.RefObject<any>;
40
42
  constructor(props: any);
43
+ componentDidMount(): void;
41
44
  onSelect: (checkedTreeKeys: any) => void;
42
45
  showForm(value?: any, flag?: boolean): void;
43
46
  onDelete(): void;
@@ -48,9 +51,9 @@ declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
48
51
  getSearchValues(): any;
49
52
  rowSelectionOnSelect(record: any, selected: any): void;
50
53
  rowSelectionOnSelectAll(selected: any, selectedRows: any, changeRows: any): void;
51
- load(params: any): void;
52
54
  renderCloumnButton(columnButtons: any, record: any, actionButton?: boolean): any;
53
55
  treeSelect(selectedKeys: any, { selected, selectedNodes }: any): void;
56
+ resetSearch(): void;
54
57
  render(): JSX.Element;
55
58
  }
56
59
  export default BasePage;