tnx-shared 5.3.167 → 5.3.169

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.
@@ -70,7 +70,7 @@ export class AuthorizeDirective {
70
70
  });
71
71
  }
72
72
  setAuthorizeButton() {
73
- var _a, _b, _c;
73
+ var _a, _b, _c, _d;
74
74
  let key = window.location.pathname.substring(1).toUpperCase().replace(/\//g, '_');
75
75
  if (isDevMode()) {
76
76
  key = `${this.appCode}_${window.location.pathname.substring(1).toUpperCase()}`;
@@ -79,14 +79,14 @@ export class AuthorizeDirective {
79
79
  // if (componentName && !key.endsWith(componentName)) {
80
80
  // key += `_${componentName}`;
81
81
  // }
82
- const buttonText = (_b = (_a = this._element.getAttribute(EnumProperties.LABEL)) !== null && _a !== void 0 ? _a : this._element.getAttribute(EnumProperties.NG_REFLECT_TEXT)) !== null && _b !== void 0 ? _b : this._element.getAttribute(EnumProperties.NG_REFLECT_LABEL);
82
+ const buttonText = (_c = (_b = (_a = this._element.getAttribute(EnumProperties.LABEL)) !== null && _a !== void 0 ? _a : this._element.getAttribute(EnumProperties.TOOLTIP)) !== null && _b !== void 0 ? _b : this._element.getAttribute(EnumProperties.NG_REFLECT_TEXT)) !== null && _c !== void 0 ? _c : this._element.getAttribute(EnumProperties.NG_REFLECT_LABEL);
83
83
  if (!buttonText) {
84
84
  this.enableAuthorize = false;
85
85
  return;
86
86
  }
87
87
  this.buttonSetting = JSON.parse(sessionStorage.getItem(ComCtxConstants.LOCALSTORAGE_KEY.BUTTON_AUTHORIZE) || '{}');
88
88
  const permissionCode = `[${key}]_[${this._commonService.convertStringToUnSign(buttonText).replace(/ /g, '_').toUpperCase()}]`;
89
- const isSetAuthorize = (_c = this.buttonSetting[key]) === null || _c === void 0 ? void 0 : _c.find(p => p.code == permissionCode);
89
+ const isSetAuthorize = (_d = this.buttonSetting[key]) === null || _d === void 0 ? void 0 : _d.find(p => p.code == permissionCode);
90
90
  if (isSetAuthorize) {
91
91
  this.permission = permissionCode;
92
92
  }
@@ -123,4 +123,4 @@ AuthorizeDirective.propDecorators = {
123
123
  enableAuthorize: [{ type: Input }],
124
124
  keepHTML: [{ type: Input, args: ['keepHTML',] }]
125
125
  };
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RueC1zaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmVzL2F1dGhvcml6ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNL0UsTUFBTSxPQUFPLGtCQUFrQjtJQThCM0IsWUFDWSxHQUFlLEVBQ2Ysa0JBQXFDLEVBQ3JDLFlBQXlCLEVBQ3pCLGNBQTZCLEVBQzdCLG9CQUF5QztRQUp6QyxRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBOUIzQyxxQkFBZ0IsR0FBb0IsZUFBZSxDQUFDLE9BQU8sQ0FBQztRQUNuRCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU5QiwyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFJeEMsa0lBQWtJO1FBQ3pILG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBS3pDLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFXakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxH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RyxDQUFDO1FBQzlILE1BQU0sY0FBYyxHQUFHLE1BQUEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsMENBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxjQUFjLENBQUMsQ0FBQztRQUNwRixJQUFJLGNBQWMsRUFBRTtZQUNoQixJQUFJLENBQUMsVUFBVSxHQUFHLGNBQWMsQ0FBQztTQUNwQzthQUNJO1lBQ0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7U0FDaEM7SUFDTCxDQUFDO0lBRUQscUJBQXFCO1FBQ2pCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDaEQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDckI7SUFDTCxDQUFDOzs7WUExSEosU0FBUyxTQUFDO2dCQUNQLDhDQUE4QztnQkFDOUMsUUFBUSxFQUFFLGdCQUFnQjthQUM3Qjs7O1lBVnVELFVBQVU7WUFHekQsaUJBQWlCO1lBQ2pCLFdBQVc7WUFDTSxhQUFhO1lBSDlCLG1CQUFtQjs7OzJCQWlCdkIsS0FBSzs2QkFJTCxLQUFLO3FDQUlMLEtBQUs7eUJBRUwsS0FBSzt5QkFDTCxLQUFLOzhCQUVMLEtBQUs7dUJBR0wsS0FBSyxTQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRDaGVja2VkLCBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGVybWlzc2lvblR5cGVzIH0gZnJvbSAnLi4vY2xhc3Nlcy9jb25zdGFudHMnO1xuaW1wb3J0IHsgTW9kdWxlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL21vZHVsZS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Blcm1pc3Npb24uc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3VzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBDb21DdHhDb25zdGFudHMsIENvbW1vblNlcnZpY2UsIEVudW1Qcm9wZXJ0aWVzIH0gZnJvbSAnLi4vcHVibGljLWFwaSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1thcHBBdXRob3JpemVdJ1xufSlcbmV4cG9ydCBjbGFzcyBBdXRob3JpemVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudENoZWNrZWQsIEFmdGVyVmlld0luaXQge1xuICAgIHByb3RlY3RlZCBfbW9kdWxlQ29kZTogYW55O1xuICAgIHByb3RlY3RlZCBfZWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gICAgcHJvdGVjdGVkIF9sYWJlbDogSFRNTEVsZW1lbnQ7XG4gICAgcHJvdGVjdGVkIF9iaW5kOiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBfcGVybWlzc2lvblR5cGVzOiBQZXJtaXNzaW9uVHlwZXMgPSBQZXJtaXNzaW9uVHlwZXMuQ09OVFJPTDtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWdub3JlQWRtaW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNldCBhcHBBdXRob3JpemUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9tb2R1bGVDb2RlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgQElucHV0KCkgc2V0IHBlcm1pc3Npb25UeXBlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fcGVybWlzc2lvblR5cGVzID0gdmFsdWU7XG4gICAgfVxuXG4gICAgQElucHV0KCkgaXNOYXZpZ2F0aW9uUGVybWlzc2lvbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgY29udHJvbGxlcjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHBlcm1pc3Npb246IHN0cmluZztcbiAgICAvLyBEw7luZyB0cm9uZyBt4buZdCBz4buRIHRyxrDhu51uZyBo4bujcCBjb2RlIGTDuW5nIGNodW5nIHRlbXBsYXRlLCBideG7mWMgcGjhuqNpIGtoYWkgYsOhbyBkaXJlY3RpdmUgbmjGsG5nIGtow7RuZyBwaOG6o2kgZWxlbWVudCBuw6BvIGPFqW5nIGPhuqduIGNoZWNrXG4gICAgQElucHV0KCkgZW5hYmxlQXV0aG9yaXplOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2tlZXBIVE1MJykga2VlcEhUTUw6IGJvb2xlYW47XG5cbiAgICBhcHBDb2RlOiBzdHJpbmcgPSAnJztcbiAgICBlbnZpcm9ubWVudDogYW55O1xuICAgIGJ1dHRvblNldHRpbmc6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9lbDogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBfcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF91c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2NvbW1vblNlcnZpY2U6IENvbW1vblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX21vZHVsZUNvbmZpZ1NlcnZpY2U6IE1vZHVsZUNvbmZpZ1NlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudCA9IF9lbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLmFwcENvZGUgPSB0aGlzLl9tb2R1bGVDb25maWdTZXJ2aWNlLmdldENvbmZpZygpLmFwcENvZGU7XG4gICAgICAgIHRoaXMuZW52aXJvbm1lbnQgPSB0aGlzLl9tb2R1bGVDb25maWdTZXJ2aWNlLmdldENvbmZpZygpLmVudmlyb25tZW50O1xuICAgICAgICB0aGlzLmlnbm9yZUFkbWluID0gdGhpcy5lbnZpcm9ubWVudC5pc0lnbm9yZUFkbWluO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5zZXRBdXRob3JpemVCdXR0b24oKTtcbiAgICAgICAgaWYgKHRoaXMuX21vZHVsZUNvZGUpIHtcbiAgICAgICAgICAgIHRoaXMuYXBwQ29kZSA9IHRoaXMuX21vZHVsZUNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmVuYWJsZUF1dGhvcml6ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gdGhpcy5fdXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKTtcbiAgICAgICAgaWYgKCFjdXJyZW50VXNlciB8fCAhKHRoaXMuYXBwQ29kZSkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdLaMO0bmcgxJHhu41jIMSRxrDhu6NjIHVzZXIgaG/hurdjIGFwcENvZGUnKTtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucmVtb3ZlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY3VycmVudFVzZXJcbiAgICAgICAgICAgICYmIGN1cnJlbnRVc2VyLmlzc3VwZXJ1c2VyLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJ1xuICAgICAgICAgICAgJiYgKCF0aGlzLmlnbm9yZUFkbWluICYmIGN1cnJlbnRVc2VyLmlzYWRtaW4udG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9sZERpc3BsYXkgPSB0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk7XG4gICAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgdGhpcy5fcGVybWlzc2lvblNlcnZpY2UuaXNBdXRob3JpemVkKHRoaXMuYXBwQ29kZSwgdGhpcy5wZXJtaXNzaW9uKS50aGVuKGlzQXV0aG9yaXplZCA9PiB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBvbGREaXNwbGF5O1xuICAgICAgICAgICAgaWYgKCFpc0F1dGhvcml6ZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudC5ub2RlTmFtZSA9PSAnUC1UQUJQQU5FTCcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaWQgPSB0aGlzLl9lbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmlkO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250YWluZXJUYWJMYWJlbCA9IHRoaXMuX2VsZW1lbnQuY2xvc2VzdCgnLnAtdGFidmlldy1wYW5lbHMnKS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nLnF1ZXJ5U2VsZWN0b3IoYCMke2lkfS1sYWJlbGApLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lclRhYkxhYmVsLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5rZWVwSFRNTCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9sYWJlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudC5wYXJlbnRFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50LnBhcmVudEVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fbGFiZWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucmVtb3ZlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldEF1dGhvcml6ZUJ1dHRvbigpIHtcbiAgICAgICAgbGV0IGtleSA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zdWJzdHJpbmcoMSkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9cXC8vZywgJ18nKTtcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICBrZXkgPSBgJHt0aGlzLmFwcENvZGV9XyR7d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnN1YnN0cmluZygxKS50b1VwcGVyQ2FzZSgpfWA7XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29uc3QgY29tcG9uZW50TmFtZSA9IHRoaXMuX2VsZW1lbnQuY2xvc2VzdChFbnVtUHJvcGVydGllcy5DUlVEX0xJU1QpPy5wYXJlbnROb2RlW0VudW1Qcm9wZXJ0aWVzLlRBR19OQU1FXTtcbiAgICAgICAgLy8gaWYgKGNvbXBvbmVudE5hbWUgJiYgIWtleS5lbmRzV2l0aChjb21wb25lbnROYW1lKSkge1xuICAgICAgICAvLyAgICAga2V5ICs9IGBfJHtjb21wb25lbnROYW1lfWA7XG4gICAgICAgIC8vIH1cbiAgICAgICAgY29uc3QgYnV0dG9uVGV4dCA9IHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKEVudW1Qcm9wZXJ0aWVzLkxBQkVMKSA/PyB0aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZShFbnVtUHJvcGVydGllcy5OR19SRUZMRUNUX1RFWFQpID8/IHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKEVudW1Qcm9wZXJ0aWVzLk5HX1JFRkxFQ1RfTEFCRUwpO1xuICAgICAgICBpZiAoIWJ1dHRvblRleHQpIHtcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlQXV0aG9yaXplID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5idXR0b25TZXR0aW5nID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKENvbUN0eENvbnN0YW50cy5MT0NBTFNUT1JBR0VfS0VZLkJVVFRPTl9BVVRIT1JJWkUpIHx8ICd7fScpO1xuICAgICAgICBjb25zdCBwZXJtaXNzaW9uQ29kZSA9IGBbJHtrZXl9XV9bJHt0aGlzLl9jb21tb25TZXJ2aWNlLmNvbnZlcnRTdHJpbmdUb1VuU2lnbihidXR0b25UZXh0KS5yZXBsYWNlKC8gL2csICdfJykudG9VcHBlckNhc2UoKX1dYDtcbiAgICAgICAgY29uc3QgaXNTZXRBdXRob3JpemUgPSB0aGlzLmJ1dHRvblNldHRpbmdba2V5XT8uZmluZChwID0+IHAuY29kZSA9PSBwZXJtaXNzaW9uQ29kZSk7XG4gICAgICAgIGlmIChpc1NldEF1dGhvcml6ZSkge1xuICAgICAgICAgICAgdGhpcy5wZXJtaXNzaW9uID0gcGVybWlzc2lvbkNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZUF1dGhvcml6ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xuICAgICAgICBpZiAodGhpcy5fbGFiZWwgJiYgIXRoaXMuX2JpbmQgJiYgdGhpcy5fZWxlbWVudC5pbm5lckhUTUwgIT09ICcnICYmIHRoaXMua2VlcEhUTUwpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhYmVsLmlubmVySFRNTCA9IHRoaXMuX2VsZW1lbnQuaW5uZXJIVE1MO1xuICAgICAgICAgICAgdGhpcy5fYmluZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RueC1zaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmVzL2F1dGhvcml6ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNL0UsTUFBTSxPQUFPLGtCQUFrQjtJQThCM0IsWUFDWSxHQUFlLEVBQ2Ysa0JBQXFDLEVBQ3JDLFlBQXlCLEVBQ3pCLGNBQTZCLEVBQzdCLG9CQUF5QztRQUp6QyxRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxpQkFBWSxHQUFaLFlBQVksQ0FBYTtRQUN6QixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBOUIzQyxxQkFBZ0IsR0FBb0IsZUFBZSxDQUFDLE9BQU8sQ0FBQztRQUNuRCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU5QiwyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFJeEMsa0lBQWtJO1FBQ3pILG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBS3pDLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFXakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxH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QUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7UUFDOUgsTUFBTSxjQUFjLEdBQUcsTUFBQSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQywwQ0FBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLGNBQWMsQ0FBQyxDQUFDO1FBQ3BGLElBQUksY0FBYyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxVQUFVLEdBQUcsY0FBYyxDQUFDO1NBQ3BDO2FBQ0k7WUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztTQUNoQztJQUNMLENBQUM7SUFFRCxxQkFBcUI7UUFDakIsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUMvRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztZQUNoRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNyQjtJQUNMLENBQUM7OztZQTNISixTQUFTLFNBQUM7Z0JBQ1AsOENBQThDO2dCQUM5QyxRQUFRLEVBQUUsZ0JBQWdCO2FBQzdCOzs7WUFWdUQsVUFBVTtZQUd6RCxpQkFBaUI7WUFDakIsV0FBVztZQUNNLGFBQWE7WUFIOUIsbUJBQW1COzs7MkJBaUJ2QixLQUFLOzZCQUlMLEtBQUs7cUNBSUwsS0FBSzt5QkFFTCxLQUFLO3lCQUNMLEtBQUs7OEJBRUwsS0FBSzt1QkFHTCxLQUFLLFNBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudENoZWNrZWQsIEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uVHlwZXMgfSBmcm9tICcuLi9jbGFzc2VzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBNb2R1bGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbW9kdWxlLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbUN0eENvbnN0YW50cywgQ29tbW9uU2VydmljZSwgRW51bVByb3BlcnRpZXMgfSBmcm9tICcuLi9wdWJsaWMtYXBpJztcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2FwcEF1dGhvcml6ZV0nXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhvcml6ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50Q2hlY2tlZCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHJvdGVjdGVkIF9tb2R1bGVDb2RlOiBhbnk7XG4gICAgcHJvdGVjdGVkIF9lbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgX2xhYmVsOiBIVE1MRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgX2JpbmQ6IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIF9wZXJtaXNzaW9uVHlwZXM6IFBlcm1pc3Npb25UeXBlcyA9IFBlcm1pc3Npb25UeXBlcy5DT05UUk9MO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpZ25vcmVBZG1pbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2V0IGFwcEF1dGhvcml6ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX21vZHVsZUNvZGUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzZXQgcGVybWlzc2lvblR5cGUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9wZXJtaXNzaW9uVHlwZXMgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBpc05hdmlnYXRpb25QZXJtaXNzaW9uID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBjb250cm9sbGVyOiBzdHJpbmc7XG4gICAgQElucHV0KCkgcGVybWlzc2lvbjogc3RyaW5nO1xuICAgIC8vIETDuW5nIHRyb25nIG3hu5l0IHPhu5EgdHLGsOG7nW5nIGjhu6NwIGNvZGUgZMO5bmcgY2h1bmcgdGVtcGxhdGUsIGJ14buZYyBwaOG6o2kga2hhaSBiw6FvIGRpcmVjdGl2ZSBuaMawbmcga2jDtG5nIHBo4bqjaSBlbGVtZW50IG7DoG8gY8WpbmcgY+G6p24gY2hlY2tcbiAgICBASW5wdXQoKSBlbmFibGVBdXRob3JpemU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgna2VlcEhUTUwnKSBrZWVwSFRNTDogYm9vbGVhbjtcblxuICAgIGFwcENvZGU6IHN0cmluZyA9ICcnO1xuICAgIGVudmlyb25tZW50OiBhbnk7XG4gICAgYnV0dG9uU2V0dGluZzogYW55O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2VsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9wZXJtaXNzaW9uU2VydmljZTogUGVybWlzc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3VzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY29tbW9uU2VydmljZTogQ29tbW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfbW9kdWxlQ29uZmlnU2VydmljZTogTW9kdWxlQ29uZmlnU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLl9lbGVtZW50ID0gX2VsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHRoaXMuYXBwQ29kZSA9IHRoaXMuX21vZHVsZUNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCkuYXBwQ29kZTtcbiAgICAgICAgdGhpcy5lbnZpcm9ubWVudCA9IHRoaXMuX21vZHVsZUNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCkuZW52aXJvbm1lbnQ7XG4gICAgICAgIHRoaXMuaWdub3JlQWRtaW4gPSB0aGlzLmVudmlyb25tZW50LmlzSWdub3JlQWRtaW47XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnNldEF1dGhvcml6ZUJ1dHRvbigpO1xuICAgICAgICBpZiAodGhpcy5fbW9kdWxlQ29kZSkge1xuICAgICAgICAgICAgdGhpcy5hcHBDb2RlID0gdGhpcy5fbW9kdWxlQ29kZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuZW5hYmxlQXV0aG9yaXplKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3VycmVudFVzZXIgPSB0aGlzLl91c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpO1xuICAgICAgICBpZiAoIWN1cnJlbnRVc2VyIHx8ICEodGhpcy5hcHBDb2RlKSkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ0tow7RuZyDEkeG7jWMgxJHGsOG7o2MgdXNlciBob+G6t2MgYXBwQ29kZScpO1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5yZW1vdmUoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjdXJyZW50VXNlclxuICAgICAgICAgICAgJiYgY3VycmVudFVzZXIuaXNzdXBlcnVzZXIudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnXG4gICAgICAgICAgICAmJiAoIXRoaXMuaWdub3JlQWRtaW4gJiYgY3VycmVudFVzZXIuaXNhZG1pbi50b0xvd2VyQ2FzZSgpID09PSAndHJ1ZScpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb2xkRGlzcGxheSA9IHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheTtcbiAgICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICB0aGlzLl9wZXJtaXNzaW9uU2VydmljZS5pc0F1dGhvcml6ZWQodGhpcy5hcHBDb2RlLCB0aGlzLnBlcm1pc3Npb24pLnRoZW4oaXNBdXRob3JpemVkID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9IG9sZERpc3BsYXk7XG4gICAgICAgICAgICBpZiAoIWlzQXV0aG9yaXplZCkge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9lbGVtZW50Lm5vZGVOYW1lID09ICdQLVRBQlBBTkVMJykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpZCA9IHRoaXMuX2VsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuaWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lclRhYkxhYmVsID0gdGhpcy5fZWxlbWVudC5jbG9zZXN0KCcucC10YWJ2aWV3LXBhbmVscycpLnByZXZpb3VzRWxlbWVudFNpYmxpbmcucXVlcnlTZWxlY3RvcihgIyR7aWR9LWxhYmVsYCkucGFyZW50RWxlbWVudDtcbiAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyVGFiTGFiZWwucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmtlZXBIVE1MKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2xhYmVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9lbGVtZW50LnBhcmVudEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQucGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl9sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5yZW1vdmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0QXV0aG9yaXplQnV0dG9uKCkge1xuICAgICAgICBsZXQga2V5ID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnN1YnN0cmluZygxKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoL1xcLy9nLCAnXycpO1xuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgIGtleSA9IGAke3RoaXMuYXBwQ29kZX1fJHt3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUuc3Vic3RyaW5nKDEpLnRvVXBwZXJDYXNlKCl9YDtcbiAgICAgICAgfVxuICAgICAgICAvLyBjb25zdCBjb21wb25lbnROYW1lID0gdGhpcy5fZWxlbWVudC5jbG9zZXN0KEVudW1Qcm9wZXJ0aWVzLkNSVURfTElTVCk/LnBhcmVudE5vZGVbRW51bVByb3BlcnRpZXMuVEFHX05BTUVdO1xuICAgICAgICAvLyBpZiAoY29tcG9uZW50TmFtZSAmJiAha2V5LmVuZHNXaXRoKGNvbXBvbmVudE5hbWUpKSB7XG4gICAgICAgIC8vICAgICBrZXkgKz0gYF8ke2NvbXBvbmVudE5hbWV9YDtcbiAgICAgICAgLy8gfVxuICAgICAgICBjb25zdCBidXR0b25UZXh0ID0gdGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoRW51bVByb3BlcnRpZXMuTEFCRUwpID8/IHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKEVudW1Qcm9wZXJ0aWVzLlRPT0xUSVApXG4gICAgICAgICAgICA/PyB0aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZShFbnVtUHJvcGVydGllcy5OR19SRUZMRUNUX1RFWFQpID8/IHRoaXMuX2VsZW1lbnQuZ2V0QXR0cmlidXRlKEVudW1Qcm9wZXJ0aWVzLk5HX1JFRkxFQ1RfTEFCRUwpO1xuICAgICAgICBpZiAoIWJ1dHRvblRleHQpIHtcbiAgICAgICAgICAgIHRoaXMuZW5hYmxlQXV0aG9yaXplID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5idXR0b25TZXR0aW5nID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKENvbUN0eENvbnN0YW50cy5MT0NBTFNUT1JBR0VfS0VZLkJVVFRPTl9BVVRIT1JJWkUpIHx8ICd7fScpO1xuICAgICAgICBjb25zdCBwZXJtaXNzaW9uQ29kZSA9IGBbJHtrZXl9XV9bJHt0aGlzLl9jb21tb25TZXJ2aWNlLmNvbnZlcnRTdHJpbmdUb1VuU2lnbihidXR0b25UZXh0KS5yZXBsYWNlKC8gL2csICdfJykudG9VcHBlckNhc2UoKX1dYDtcbiAgICAgICAgY29uc3QgaXNTZXRBdXRob3JpemUgPSB0aGlzLmJ1dHRvblNldHRpbmdba2V5XT8uZmluZChwID0+IHAuY29kZSA9PSBwZXJtaXNzaW9uQ29kZSk7XG4gICAgICAgIGlmIChpc1NldEF1dGhvcml6ZSkge1xuICAgICAgICAgICAgdGhpcy5wZXJtaXNzaW9uID0gcGVybWlzc2lvbkNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZUF1dGhvcml6ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xuICAgICAgICBpZiAodGhpcy5fbGFiZWwgJiYgIXRoaXMuX2JpbmQgJiYgdGhpcy5fZWxlbWVudC5pbm5lckhUTUwgIT09ICcnICYmIHRoaXMua2VlcEhUTUwpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhYmVsLmlubmVySFRNTCA9IHRoaXMuX2VsZW1lbnQuaW5uZXJIVE1MO1xuICAgICAgICAgICAgdGhpcy5fYmluZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=