@trudb/tru-common-lib 0.1.552 → 0.1.554

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.
@@ -5,6 +5,7 @@ export class TruServerError {
5
5
  message;
6
6
  stackTrace;
7
7
  status;
8
+ statusText;
8
9
  constructor(error) {
9
10
  let parsedError = JSON.parse(error.error);
10
11
  this.id = parsedError.$id;
@@ -13,6 +14,7 @@ export class TruServerError {
13
14
  this.message = parsedError.Message;
14
15
  this.stackTrace = parsedError.StackTrace;
15
16
  this.status = error.status;
17
+ this.statusText = error.statusText;
16
18
  }
17
19
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXNlcnZlci1lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtc2VydmVyLWVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLEVBQUUsQ0FBUztJQUNYLElBQUksQ0FBUztJQUNiLElBQUksQ0FBUztJQUNiLE9BQU8sQ0FBUztJQUNoQixVQUFVLENBQVM7SUFDbkIsTUFBTSxDQUFTO0lBRWYsWUFBWSxLQUF3QjtRQUNsQyxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi4vYmFzZS1jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctYmFzZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1U2VydmVyRXJyb3Ige1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIGNvZGU6IG51bWJlcjtcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbiAgc3RhY2tUcmFjZTogc3RyaW5nO1xyXG4gIHN0YXR1czogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgIGxldCBwYXJzZWRFcnJvciA9IEpTT04ucGFyc2UoZXJyb3IuZXJyb3IpO1xyXG4gICAgdGhpcy5pZCA9IHBhcnNlZEVycm9yLiRpZDtcclxuICAgIHRoaXMudHlwZSA9IHBhcnNlZEVycm9yLiR0eXBlO1xyXG4gICAgdGhpcy5jb2RlID0gcGFyc2VkRXJyb3IuQ29kZTtcclxuICAgIHRoaXMubWVzc2FnZSA9IHBhcnNlZEVycm9yLk1lc3NhZ2U7XHJcbiAgICB0aGlzLnN0YWNrVHJhY2UgPSBwYXJzZWRFcnJvci5TdGFja1RyYWNlO1xyXG4gICAgdGhpcy5zdGF0dXMgPSBlcnJvci5zdGF0dXM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXNlcnZlci1lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtc2VydmVyLWVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLEVBQUUsQ0FBUztJQUNYLElBQUksQ0FBUztJQUNiLElBQUksQ0FBUztJQUNiLE9BQU8sQ0FBUztJQUNoQixVQUFVLENBQVM7SUFDbkIsTUFBTSxDQUFTO0lBQ2YsVUFBVSxDQUFTO0lBRW5CLFlBQVksS0FBd0I7UUFDbEMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVTZXJ2ZXJFcnJvciB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgY29kZTogbnVtYmVyO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxuICBzdGFja1RyYWNlOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBudW1iZXI7XHJcbiAgc3RhdHVzVGV4dDogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgIGxldCBwYXJzZWRFcnJvciA9IEpTT04ucGFyc2UoZXJyb3IuZXJyb3IpO1xyXG4gICAgdGhpcy5pZCA9IHBhcnNlZEVycm9yLiRpZDtcclxuICAgIHRoaXMudHlwZSA9IHBhcnNlZEVycm9yLiR0eXBlO1xyXG4gICAgdGhpcy5jb2RlID0gcGFyc2VkRXJyb3IuQ29kZTtcclxuICAgIHRoaXMubWVzc2FnZSA9IHBhcnNlZEVycm9yLk1lc3NhZ2U7XHJcbiAgICB0aGlzLnN0YWNrVHJhY2UgPSBwYXJzZWRFcnJvci5TdGFja1RyYWNlO1xyXG4gICAgdGhpcy5zdGF0dXMgPSBlcnJvci5zdGF0dXM7XHJcbiAgICB0aGlzLnN0YXR1c1RleHQgPSBlcnJvci5zdGF0dXNUZXh0O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -84,15 +84,18 @@ export class TruErrorManager {
84
84
  data: dialogConfig
85
85
  });
86
86
  }
87
- else if (error.type.toString().lastIndexOf('TruDB.EfMssql.Runtime.DataError', 0) === 0) {
88
- //this.uiNotification.error(
89
- // this.textManager.fmtDataError(error.httpResponse.data.Detail.$type),
90
- // [this.textManager.fmtExceptionToShow(error.httpResponse.data.Exception)])
87
+ else if (serverError.type.lastIndexOf('TruDB.EfMssql.Runtime.DataError', 0) === 0) {
88
+ this.uiNotification.error(this.textManager.fmtDataError(serverError.type), [this.textManager.fmtExceptionToShow(serverError.stackTrace)]);
91
89
  }
92
90
  else {
93
- //var message = this.textManager.fmtErrorToShow(error);
94
- //this.uiNotification.showErrorDialog(message);
95
- //this.logErrorEvent(message);
91
+ var message = this.textManager.fmtErrorToShow(serverError);
92
+ let dialogConfig = new TruErrorDialogConfig(serverError.statusText, message);
93
+ this.dialog.open(TruErrorDialog, {
94
+ disableClose: true,
95
+ minWidth: "400px",
96
+ maxWidth: "600px",
97
+ data: dialogConfig
98
+ });
96
99
  }
97
100
  };
98
101
  handleError = (error) => {
@@ -110,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
110
113
  providedIn: 'root',
111
114
  }]
112
115
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.MatDialog }, { type: i3.TruTextManager }, { type: i4.TruUiNotification }, { type: i5.TruAppEnvironment }] });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWVycm9yLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL3RydS1lcnJvci1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBSWxHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQUs3RCxNQUFNLE9BQU8sZUFBZTtJQUtoQjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBUkYsT0FBTyxDQUFTO0lBQ2hCLE9BQU8sQ0FBUztJQUV4QixZQUNVLElBQWdCLEVBQ2hCLE1BQWlCLEVBQ2pCLFdBQTJCLEVBQzNCLGNBQWlDLEVBQ2pDLGNBQWlDO1FBSmpDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFTyxhQUFhLEdBQUcsQ0FBQyxPQUFlLEVBQUUsT0FBZSxFQUFFLElBQVksRUFBRSxFQUFFO1FBQ3pFLElBQUksR0FBRyxJQUFJLElBQUksU0FBUyxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsT0FBTyxHQUFHLElBQUksR0FBRyxP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SSxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUV6Riw0QkFBNEI7WUFDNUIsd0VBQXdFO1lBQ3hFLDZFQUE2RTtRQUMvRSxDQUFDO2FBQU0sQ0FBQztZQUNOLHVEQUF1RDtZQUN2RCwrQ0FBK0M7WUFDL0MsOEJBQThCO1FBQ2hDLENBQUM7SUFDSCxDQUFDLENBQUE7SUFFRCxXQUFXLEdBQUcsQ0FBQyxLQUF3QixFQUFFLEVBQUU7UUFDekMsSUFBSSxLQUFLLENBQUMsSUFBSTtZQUNaLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQzs7WUFFbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQTt1R0F2R1UsZUFBZTsyR0FBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVHJ1VWlOb3RpZmljYXRpb24gfSBmcm9tIFwiLi90cnUtdWktbm90aWZpY2F0aW9uXCI7XHJcbmltcG9ydCB7IFRydVRleHRNYW5hZ2VyIH0gZnJvbSBcIi4vdHJ1LXRleHQtbWFuYWdlclwiO1xyXG5pbXBvcnQgeyBUcnVFcnJvckRpYWxvZyB9IGZyb20gXCIuLi9jb21wb25lbnRzL2Vycm9yLWRpYWxvZy90cnUtZXJyb3ItZGlhbG9nXCI7XHJcbmltcG9ydCB7IFRydUVycm9yRGlhbG9nQ29uZmlnIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvZXJyb3ItZGlhbG9nL2NsYXNzZXMvdHJ1LWVycm9yLWRpYWxvZy1jb25maWdcIjtcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBUcnVBcHBFbnZpcm9ubWVudCB9IGZyb20gXCIuL3RydS1hcHAtZW52aXJvbm1lbnRcIjtcclxuaW1wb3J0IHsgVHJ1U2VydmVyRXJyb3IgfSBmcm9tIFwiLi4vY2xhc3Nlcy90cnUtc2VydmVyLWVycm9yXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1RXJyb3JNYW5hZ2VyIHtcclxuICBwcml2YXRlIGJhc2VVcmw6IHN0cmluZztcclxuICBwcml2YXRlIGFwcE5hbWU6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSB0ZXh0TWFuYWdlcjogVHJ1VGV4dE1hbmFnZXIsXHJcbiAgICBwcml2YXRlIHVpTm90aWZpY2F0aW9uOiBUcnVVaU5vdGlmaWNhdGlvbixcclxuICAgIHByaXZhdGUgYXBwRW52aXJvbm1lbnQ6IFRydUFwcEVudmlyb25tZW50KSB7XHJcbiAgICB0aGlzLmJhc2VVcmwgPSBhcHBFbnZpcm9ubWVudC5hcHBVcmk7XHJcbiAgICB0aGlzLmFwcE5hbWUgPSBhcHBFbnZpcm9ubWVudC5hcHBOYW1lO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2dFcnJvckV2ZW50ID0gKG1lc3NhZ2U6IHN0cmluZywgY29udGV4dDogc3RyaW5nLCBhcmVhOiBzdHJpbmcpID0+IHtcclxuICAgIGFyZWEgPSBhcmVhIHx8ICd1bmtub3duJztcclxuICAgIGNvbnNvbGUubG9nKCdbJyArIGFyZWEgKyAnfCcgKyBjb250ZXh0ICsgJ10gJyArIG1lc3NhZ2UpO1xyXG4gICAgdmFyIGxvZ0V2ZW50ID0ge1xyXG4gICAgICBldmVudFR5cGU6ICdFcnJvcicsXHJcbiAgICAgIGV2ZW50RGF0ZTogbmV3IERhdGUoKSxcclxuICAgICAgYXBwbGljYXRpb25OYW1lOiB0aGlzLmFwcE5hbWUsXHJcbiAgICAgIGFwcGxpY2F0aW9uVXJsOiB0aGlzLmJhc2VVcmwsXHJcbiAgICAgIGFwcGxpY2F0aW9uQXJlYTogYXJlYSxcclxuICAgICAgY29udGV4dDogY29udGV4dCxcclxuICAgICAgbWVzc2FnZTogbWVzc2FnZVxyXG4gICAgfTtcclxuICAgIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdDxhbnk+KGAke3RoaXMuYmFzZVVybH0vYXBpL2xvZy9sb2dldmVudGAsIGxvZ0V2ZW50KVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuXHJcbiAgICAgIH0sIChleDogYW55KSA9PiB7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ1VuYWJsZSB0byBsb2cgZXJyb3IgdG8gc2VydmVyLiAnICsgZXgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlQ2xpZW50U2lkZUVycm9yID0gKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlU2VydmVyU2lkZUVycm9yID0gKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgbGV0IHNlcnZlckVycm9yID0gbmV3IFRydVNlcnZlckVycm9yKGVycm9yKTtcclxuICAgIGlmIChzZXJ2ZXJFcnJvci50eXBlID09PSAndHJ1LWRiLWN1c3RvbS1leGNlcHRpb24nKSB7XHJcbiAgICAgIC8vdmFyIHNlcnZpY2UgPSAkaW5qZWN0b3IuZ2V0KGVycm9yLmh0dHBSZXNwb25zZS5kYXRhLnNlcnZpY2VOYW1lKTtcclxuICAgICAgLy92YXIgZXhjZXB0aW9uRGF0YSA9IGVycm9yLmh0dHBSZXNwb25zZS5kYXRhLmRhdGE7XHJcbiAgICAgIC8vc2VydmljZShleGNlcHRpb25EYXRhKTtcclxuICAgIH0gZWxzZSBpZiAoc2VydmVyRXJyb3IudHlwZS5pbmRleE9mKCdUcnVEYlJlcXVpcmVWYWxpZENob2ljZUV4Y2VwdGlvbicpICE9PSAtMSkge1xyXG5cclxuICAgICAgbGV0IGRpYWxvZ0NvbmZpZyA9IG5ldyBUcnVFcnJvckRpYWxvZ0NvbmZpZyhcclxuICAgICAgICAnUmVxdWlyZSBWYWxpZCBDaG9pY2UgRXhjZXB0aW9uJyxcclxuICAgICAgICBlcnJvci5tZXNzYWdlKTtcclxuXHJcbiAgICAgIHRoaXMuZGlhbG9nLm9wZW4oVHJ1RXJyb3JEaWFsb2csIHtcclxuICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgICAgbWluV2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBtYXhXaWR0aDogXCI2MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IGRpYWxvZ0NvbmZpZ1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAoc2VydmVyRXJyb3IudHlwZS5pbmRleE9mKCdEdXBsaWNhdGVLZXlFcnJvcicpICE9PSAtMSkge1xyXG5cclxuICAgICAgbGV0IGRpYWxvZ0NvbmZpZyA9IG5ldyBUcnVFcnJvckRpYWxvZ0NvbmZpZyhcclxuICAgICAgICAnRHVwbGljYXRlIEtleSBFcnJvcicsXHJcbiAgICAgICAgZXJyb3IubWVzc2FnZVxyXG4gICAgICAgICAgLnJlcGxhY2UoJ0Nhbm5vdCBpbnNlcnQgZHVwbGljYXRlIGtleSByb3cgaW4gb2JqZWN0JywgJ0Nhbm5vdCBpbnNlcnQgZHVwbGljYXRlIHZhbHVlIGluIHRhYmxlJylcclxuICAgICAgICAgIC5yZXBsYWNlKCdkYm8uJywgJycpXHJcbiAgICAgICAgICAucmVwbGFjZSgnVUlYXycsICcnKVxyXG4gICAgICAgICAgLnJlcGxhY2UoJ1RoZSBzdGF0ZW1lbnQgaGFzIGJlZW4gdGVybWluYXRlZC4nLCAnJykpO1xyXG5cclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihUcnVFcnJvckRpYWxvZywge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICBtaW5XaWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIG1heFdpZHRoOiBcIjYwMHB4XCIsXHJcbiAgICAgICAgZGF0YTogZGlhbG9nQ29uZmlnXHJcbiAgICAgIH0pO1xyXG5cclxuICAgIH0gZWxzZSBpZiAoc2VydmVyRXJyb3IudHlwZS5pbmRleE9mKCdPcHRpbWlzdGljTG9ja1Zpb2xhdGlvbicpICE9PSAtMSkge1xyXG5cclxuICAgICAgbGV0IGRpYWxvZ0NvbmZpZyA9IG5ldyBUcnVFcnJvckRpYWxvZ0NvbmZpZyhcclxuICAgICAgICAnQ29uY3VycmVudCBzYXZlcyBub3QgYWxsb3dlZCcsXHJcbiAgICAgICAgJ1BsZWFzZSByZXZpZXcgYW55IGNoYW5nZXMgYW5kIHNhdmUgYWdhaW4uJyk7XHJcblxyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKFRydUVycm9yRGlhbG9nLCB7XHJcbiAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICAgIG1pbldpZHRoOiBcIjQwMHB4XCIsXHJcbiAgICAgICAgbWF4V2lkdGg6IFwiNjAwcHhcIixcclxuICAgICAgICBkYXRhOiBkaWFsb2dDb25maWdcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGVycm9yLnR5cGUudG9TdHJpbmcoKS5sYXN0SW5kZXhPZignVHJ1REIuRWZNc3NxbC5SdW50aW1lLkRhdGFFcnJvcicsIDApID09PSAwKSB7XHJcblxyXG4gICAgICAvL3RoaXMudWlOb3RpZmljYXRpb24uZXJyb3IoXHJcbiAgICAgIC8vICB0aGlzLnRleHRNYW5hZ2VyLmZtdERhdGFFcnJvcihlcnJvci5odHRwUmVzcG9uc2UuZGF0YS5EZXRhaWwuJHR5cGUpLFxyXG4gICAgICAvLyAgW3RoaXMudGV4dE1hbmFnZXIuZm10RXhjZXB0aW9uVG9TaG93KGVycm9yLmh0dHBSZXNwb25zZS5kYXRhLkV4Y2VwdGlvbildKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy92YXIgbWVzc2FnZSA9IHRoaXMudGV4dE1hbmFnZXIuZm10RXJyb3JUb1Nob3coZXJyb3IpO1xyXG4gICAgICAvL3RoaXMudWlOb3RpZmljYXRpb24uc2hvd0Vycm9yRGlhbG9nKG1lc3NhZ2UpO1xyXG4gICAgICAvL3RoaXMubG9nRXJyb3JFdmVudChtZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZUVycm9yID0gKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgaWYgKGVycm9yLnR5cGUpXHJcbiAgICAgIHRoaXMuaGFuZGxlQ2xpZW50U2lkZUVycm9yKGVycm9yKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5oYW5kbGVTZXJ2ZXJTaWRlRXJyb3IoZXJyb3IpO1xyXG4gIH1cclxufVxyXG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWVycm9yLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL3RydS1lcnJvci1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBSWxHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQUs3RCxNQUFNLE9BQU8sZUFBZTtJQUtoQjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBUkYsT0FBTyxDQUFTO0lBQ2hCLE9BQU8sQ0FBUztJQUV4QixZQUNVLElBQWdCLEVBQ2hCLE1BQWlCLEVBQ2pCLFdBQTJCLEVBQzNCLGNBQWlDLEVBQ2pDLGNBQWlDO1FBSmpDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFTyxhQUFhLEdBQUcsQ0FBQyxPQUFlLEVBQUUsT0FBZSxFQUFFLElBQVksRUFBRSxFQUFFO1FBQ3pFLElBQUksR0FBRyxJQUFJLElBQUksU0FBUyxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsT0FBTyxHQUFHLElBQUksR0FBRyxP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SSxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNwRixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUMvQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNsRSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzNELElBQUksWUFBWSxHQUFHLElBQUksb0JBQW9CLENBQ3pDLFdBQVcsQ0FBQyxVQUFVLEVBQ3RCLE9BQU8sQ0FBQyxDQUFDO1lBRVgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUMvQixZQUFZLEVBQUUsSUFBSTtnQkFDbEIsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixJQUFJLEVBQUUsWUFBWTthQUNuQixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsV0FBVyxHQUFHLENBQUMsS0FBd0IsRUFBRSxFQUFFO1FBQ3pDLElBQUksS0FBSyxDQUFDLElBQUk7WUFDWixJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7O1lBRWxDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUE7dUdBOUdVLGVBQWU7MkdBQWYsZUFBZSxjQUZkLE1BQU07OzJGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRydVVpTm90aWZpY2F0aW9uIH0gZnJvbSBcIi4vdHJ1LXVpLW5vdGlmaWNhdGlvblwiO1xyXG5pbXBvcnQgeyBUcnVUZXh0TWFuYWdlciB9IGZyb20gXCIuL3RydS10ZXh0LW1hbmFnZXJcIjtcclxuaW1wb3J0IHsgVHJ1RXJyb3JEaWFsb2cgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9lcnJvci1kaWFsb2cvdHJ1LWVycm9yLWRpYWxvZ1wiO1xyXG5pbXBvcnQgeyBUcnVFcnJvckRpYWxvZ0NvbmZpZyB9IGZyb20gXCIuLi9jb21wb25lbnRzL2Vycm9yLWRpYWxvZy9jbGFzc2VzL3RydS1lcnJvci1kaWFsb2ctY29uZmlnXCI7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgVHJ1QXBwRW52aXJvbm1lbnQgfSBmcm9tIFwiLi90cnUtYXBwLWVudmlyb25tZW50XCI7XHJcbmltcG9ydCB7IFRydVNlcnZlckVycm9yIH0gZnJvbSBcIi4uL2NsYXNzZXMvdHJ1LXNlcnZlci1lcnJvclwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRydUVycm9yTWFuYWdlciB7XHJcbiAgcHJpdmF0ZSBiYXNlVXJsOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBhcHBOYW1lOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgdGV4dE1hbmFnZXI6IFRydVRleHRNYW5hZ2VyLFxyXG4gICAgcHJpdmF0ZSB1aU5vdGlmaWNhdGlvbjogVHJ1VWlOb3RpZmljYXRpb24sXHJcbiAgICBwcml2YXRlIGFwcEVudmlyb25tZW50OiBUcnVBcHBFbnZpcm9ubWVudCkge1xyXG4gICAgdGhpcy5iYXNlVXJsID0gYXBwRW52aXJvbm1lbnQuYXBwVXJpO1xyXG4gICAgdGhpcy5hcHBOYW1lID0gYXBwRW52aXJvbm1lbnQuYXBwTmFtZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9nRXJyb3JFdmVudCA9IChtZXNzYWdlOiBzdHJpbmcsIGNvbnRleHQ6IHN0cmluZywgYXJlYTogc3RyaW5nKSA9PiB7XHJcbiAgICBhcmVhID0gYXJlYSB8fCAndW5rbm93bic7XHJcbiAgICBjb25zb2xlLmxvZygnWycgKyBhcmVhICsgJ3wnICsgY29udGV4dCArICddICcgKyBtZXNzYWdlKTtcclxuICAgIHZhciBsb2dFdmVudCA9IHtcclxuICAgICAgZXZlbnRUeXBlOiAnRXJyb3InLFxyXG4gICAgICBldmVudERhdGU6IG5ldyBEYXRlKCksXHJcbiAgICAgIGFwcGxpY2F0aW9uTmFtZTogdGhpcy5hcHBOYW1lLFxyXG4gICAgICBhcHBsaWNhdGlvblVybDogdGhpcy5iYXNlVXJsLFxyXG4gICAgICBhcHBsaWNhdGlvbkFyZWE6IGFyZWEsXHJcbiAgICAgIGNvbnRleHQ6IGNvbnRleHQsXHJcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2VcclxuICAgIH07XHJcbiAgICB0aGlzLmh0dHBcclxuICAgICAgLnBvc3Q8YW55PihgJHt0aGlzLmJhc2VVcmx9L2FwaS9sb2cvbG9nZXZlbnRgLCBsb2dFdmVudClcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcblxyXG4gICAgICB9LCAoZXg6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdVbmFibGUgdG8gbG9nIGVycm9yIHRvIHNlcnZlci4gJyArIGV4KTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZUNsaWVudFNpZGVFcnJvciA9IChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVNlcnZlclNpZGVFcnJvciA9IChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgIGxldCBzZXJ2ZXJFcnJvciA9IG5ldyBUcnVTZXJ2ZXJFcnJvcihlcnJvcik7XHJcbiAgICBpZiAoc2VydmVyRXJyb3IudHlwZSA9PT0gJ3RydS1kYi1jdXN0b20tZXhjZXB0aW9uJykge1xyXG4gICAgICAvL3ZhciBzZXJ2aWNlID0gJGluamVjdG9yLmdldChlcnJvci5odHRwUmVzcG9uc2UuZGF0YS5zZXJ2aWNlTmFtZSk7XHJcbiAgICAgIC8vdmFyIGV4Y2VwdGlvbkRhdGEgPSBlcnJvci5odHRwUmVzcG9uc2UuZGF0YS5kYXRhO1xyXG4gICAgICAvL3NlcnZpY2UoZXhjZXB0aW9uRGF0YSk7XHJcbiAgICB9IGVsc2UgaWYgKHNlcnZlckVycm9yLnR5cGUuaW5kZXhPZignVHJ1RGJSZXF1aXJlVmFsaWRDaG9pY2VFeGNlcHRpb24nKSAhPT0gLTEpIHtcclxuXHJcbiAgICAgIGxldCBkaWFsb2dDb25maWcgPSBuZXcgVHJ1RXJyb3JEaWFsb2dDb25maWcoXHJcbiAgICAgICAgJ1JlcXVpcmUgVmFsaWQgQ2hvaWNlIEV4Y2VwdGlvbicsXHJcbiAgICAgICAgZXJyb3IubWVzc2FnZSk7XHJcblxyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKFRydUVycm9yRGlhbG9nLCB7XHJcbiAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICAgIG1pbldpZHRoOiBcIjQwMHB4XCIsXHJcbiAgICAgICAgbWF4V2lkdGg6IFwiNjAwcHhcIixcclxuICAgICAgICBkYXRhOiBkaWFsb2dDb25maWdcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKHNlcnZlckVycm9yLnR5cGUuaW5kZXhPZignRHVwbGljYXRlS2V5RXJyb3InKSAhPT0gLTEpIHtcclxuXHJcbiAgICAgIGxldCBkaWFsb2dDb25maWcgPSBuZXcgVHJ1RXJyb3JEaWFsb2dDb25maWcoXHJcbiAgICAgICAgJ0R1cGxpY2F0ZSBLZXkgRXJyb3InLFxyXG4gICAgICAgIGVycm9yLm1lc3NhZ2VcclxuICAgICAgICAgIC5yZXBsYWNlKCdDYW5ub3QgaW5zZXJ0IGR1cGxpY2F0ZSBrZXkgcm93IGluIG9iamVjdCcsICdDYW5ub3QgaW5zZXJ0IGR1cGxpY2F0ZSB2YWx1ZSBpbiB0YWJsZScpXHJcbiAgICAgICAgICAucmVwbGFjZSgnZGJvLicsICcnKVxyXG4gICAgICAgICAgLnJlcGxhY2UoJ1VJWF8nLCAnJylcclxuICAgICAgICAgIC5yZXBsYWNlKCdUaGUgc3RhdGVtZW50IGhhcyBiZWVuIHRlcm1pbmF0ZWQuJywgJycpKTtcclxuXHJcbiAgICAgIHRoaXMuZGlhbG9nLm9wZW4oVHJ1RXJyb3JEaWFsb2csIHtcclxuICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgICAgbWluV2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBtYXhXaWR0aDogXCI2MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IGRpYWxvZ0NvbmZpZ1xyXG4gICAgICB9KTtcclxuXHJcbiAgICB9IGVsc2UgaWYgKHNlcnZlckVycm9yLnR5cGUuaW5kZXhPZignT3B0aW1pc3RpY0xvY2tWaW9sYXRpb24nKSAhPT0gLTEpIHtcclxuXHJcbiAgICAgIGxldCBkaWFsb2dDb25maWcgPSBuZXcgVHJ1RXJyb3JEaWFsb2dDb25maWcoXHJcbiAgICAgICAgJ0NvbmN1cnJlbnQgc2F2ZXMgbm90IGFsbG93ZWQnLFxyXG4gICAgICAgICdQbGVhc2UgcmV2aWV3IGFueSBjaGFuZ2VzIGFuZCBzYXZlIGFnYWluLicpO1xyXG5cclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihUcnVFcnJvckRpYWxvZywge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICBtaW5XaWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIG1heFdpZHRoOiBcIjYwMHB4XCIsXHJcbiAgICAgICAgZGF0YTogZGlhbG9nQ29uZmlnXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChzZXJ2ZXJFcnJvci50eXBlLmxhc3RJbmRleE9mKCdUcnVEQi5FZk1zc3FsLlJ1bnRpbWUuRGF0YUVycm9yJywgMCkgPT09IDApIHtcclxuICAgICAgdGhpcy51aU5vdGlmaWNhdGlvbi5lcnJvcihcclxuICAgICAgICB0aGlzLnRleHRNYW5hZ2VyLmZtdERhdGFFcnJvcihzZXJ2ZXJFcnJvci50eXBlKSxcclxuICAgICAgICBbdGhpcy50ZXh0TWFuYWdlci5mbXRFeGNlcHRpb25Ub1Nob3coc2VydmVyRXJyb3Iuc3RhY2tUcmFjZSldKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdmFyIG1lc3NhZ2UgPSB0aGlzLnRleHRNYW5hZ2VyLmZtdEVycm9yVG9TaG93KHNlcnZlckVycm9yKTtcclxuICAgICAgbGV0IGRpYWxvZ0NvbmZpZyA9IG5ldyBUcnVFcnJvckRpYWxvZ0NvbmZpZyhcclxuICAgICAgICBzZXJ2ZXJFcnJvci5zdGF0dXNUZXh0LFxyXG4gICAgICAgIG1lc3NhZ2UpO1xyXG5cclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihUcnVFcnJvckRpYWxvZywge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICBtaW5XaWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIG1heFdpZHRoOiBcIjYwMHB4XCIsXHJcbiAgICAgICAgZGF0YTogZGlhbG9nQ29uZmlnXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlRXJyb3IgPSAoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICBpZiAoZXJyb3IudHlwZSlcclxuICAgICAgdGhpcy5oYW5kbGVDbGllbnRTaWRlRXJyb3IoZXJyb3IpO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLmhhbmRsZVNlcnZlclNpZGVFcnJvcihlcnJvcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -103,8 +103,8 @@ export class TruTextManager {
103
103
  lines.push('Entity <' + entityError.propertyName + '>: ' + entityError.errorMessage);
104
104
  });
105
105
  }
106
- if (error.stack)
107
- lines.push(error.stack);
106
+ if (error.stackTrace)
107
+ lines.push(error.stackTrace);
108
108
  var text = lines.join('\r\n\r\n');
109
109
  if (!text)
110
110
  text = _.map(error, (value, key) => { return key + ': ' + value; }).join('\r\n');
@@ -190,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
190
190
  providedIn: 'root',
191
191
  }]
192
192
  }], ctorParameters: () => [{ type: i1.TruUtil }] });
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXRleHQtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvdHJ1LXRleHQtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFDOzs7QUFNaEMsTUFBTSxPQUFPLGNBQWM7SUFnQkw7SUFmWCxtQkFBbUIsQ0FBUztJQUM1QixnQ0FBZ0MsQ0FBUztJQUN6QyxtQkFBbUIsQ0FBUztJQUM1QixpQkFBaUIsQ0FBUztJQUMxQixrQkFBa0IsQ0FBUztJQUMzQixpQkFBaUIsQ0FBUztJQUMxQixjQUFjLENBQVM7SUFDdkIsd0JBQXdCLENBQVM7SUFDakMsd0JBQXdCLENBQVM7SUFDakMscUJBQXFCLENBQVM7SUFDOUIsb0NBQW9DLENBQVM7SUFDN0MsaUJBQWlCLENBQVM7SUFDMUIsb0NBQW9DLENBQVM7SUFDN0MsZ0NBQWdDLENBQVM7SUFFbEQsWUFBb0IsSUFBYTtRQUFiLFNBQUksR0FBSixJQUFJLENBQVM7UUFDL0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDekQsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLDZDQUE2QyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztRQUM5QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUM7UUFDMUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDO1FBQy9DLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztRQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztRQUNy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LE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQ2pDLENBQUMsQ0FBQTtJQUVEOzs7OztNQUtFO0lBQ0YscUJBQXFCLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtRQUNwQyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7WUFDMUIsT0FBTyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDL0MsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsU0FBUztZQUNYLENBQUM7WUFDRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkIsTUFBTSxDQUFDLElBQUksQ0FDVCxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQzFCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQTt1R0EvTFUsY0FBYzsyR0FBZCxjQUFjLGNBRmIsTUFBTTs7MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAndW5kZXJzY29yZSc7XHJcbmltcG9ydCB7IFRydVV0aWwgfSBmcm9tICcuL3RydS11dGlsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVUZXh0TWFuYWdlciB7XHJcbiAgcmVhZG9ubHkgbXNnTW9kaWZpZXJLZXlMYWJlbDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0NvbmZpcm1FeGl0V2l0aENoYW5nZXNQZW5kaW5nOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnRGVsZXRlU3VjY2Vzc2Z1bDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ1NhdmVTdWNjZXNzZnVsOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnTm9DaGFuZ2VzVG9TYXZlOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnU2F2ZUluUHJvZ3Jlc3M6IHN0cmluZztcclxuICByZWFkb25seSBtc2dJbnZhbGlkRGF0YTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNSZWFkT25seTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNOYXZpZ2F0ZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNDbG9zZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RpcnR5UHJldmVudHNEZWxldGVFeGlzdGluZ1JlY29yZDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ05vRGVsZXRlQWNjZXNzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnQ2Fubm90RGVsZXRlTmV3QW5kRXhpc3RpbmdSZWNvcmRzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnRGVsZXRlUmVmZXJlbmNpbmdSZWNvcmRzRmlyc3Q6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1dGlsOiBUcnVVdGlsKSB7XHJcbiAgICB0aGlzLm1zZ01vZGlmaWVyS2V5TGFiZWwgPSB0aGlzLmlzTWFjKCkgPyAnQ21kJyA6ICdDdHJsJztcclxuICAgIHRoaXMubXNnQ29uZmlybUV4aXRXaXRoQ2hhbmdlc1BlbmRpbmcgPSAnWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzIHRoYXQgd2lsbCBiZSBsb3N0Lic7XHJcbiAgICB0aGlzLm1zZ0RlbGV0ZVN1Y2Nlc3NmdWwgPSAnRGVsZXRlIHN1Y2NlZWRlZCc7XHJcbiAgICB0aGlzLm1zZ1NhdmVTdWNjZXNzZnVsID0gJ1NhdmUgc3VjY2VlZGVkJztcclxuICAgIHRoaXMubXNnTm9DaGFuZ2VzVG9TYXZlID0gJ05vIGNoYW5nZXMgdG8gc2F2ZSc7XHJcbiAgICB0aGlzLm1zZ1NhdmVJblByb2dyZXNzID0gJ1NhdmUgaW4gcHJvZ3Jlc3MnO1xyXG4gICAgdGhpcy5tc2dJbnZhbGlkRGF0YSA9ICdJbnZhbGlkIGRhdGEnO1xyXG4gICAgdGhpcy5tc2dEaXJ0eVByZXZlbnRzUmVhZE9ubHkgPSAnU2F2ZSBvciByZXZlcnQgYmVmb3JlIGRpc2FibGluZyBlZGl0aW5nJztcclxuICAgIHRoaXMubXNnRGlydHlQcmV2ZW50c05hdmlnYXRlID0gJ1NhdmUgb3IgcmV2ZXJ0IGJlZm9yZSBuYXZpZ2F0aW5nJztcclxuICAgIHRoaXMubXNnRGlydHlQcmV2ZW50c0Nsb3NlID0gJ1NhdmUgb3IgcmV2ZXJ0IGJlZm9yZSBjbG9zaW5nIHdpbmRvdyc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNEZWxldGVFeGlzdGluZ1JlY29yZCA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgZGVsZXRpbmcnO1xyXG4gICAgdGhpcy5tc2dOb0RlbGV0ZUFjY2VzcyA9ICdDb250YWN0IGFkbWluaXN0cmF0b3IgYWJvdXQgZGVsZXRlIGFjY2Vzcyc7XHJcbiAgICB0aGlzLm1zZ0Nhbm5vdERlbGV0ZU5ld0FuZEV4aXN0aW5nUmVjb3JkcyA9ICdEZWxldGUgbmV3IG9yIGV4aXN0aW5nIHJlY29yZHMgLSBidXQgbm90IGJvdGgnO1xyXG4gICAgdGhpcy5tc2dEZWxldGVSZWZlcmVuY2luZ1JlY29yZHNGaXJzdCA9ICdEZWxldGUgYWxsIHJlZmVyZW5jaW5nIHJlY29yZHMgZmlyc3QnO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgKiBJZiB0ZXh0Lmxlbmd0aCBleGNlZWRzIGxlbmd0aCwgdGhlbiByZXR1cm5zIGEgc3RyaW5nIHRoYXQgaXMgdGhlIGZpcnN0IGxlbmd0aCBjaGFycyBcclxuICAqIG9mIHRleHQgcGx1cyBzdWZmaXguICBPdGhlcndpc2UsIHJldHVybnMgdGV4dC5cclxuICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0XHJcbiAgKiBAcGFyYW0ge251bWJlcn0gbGVuZ3RoXHJcbiAgKiBAcGFyYW0ge3N0cmluZ30gc3VmZml4XHJcbiAgKiBAcmV0dXJuIHtzdHJpbmd9XHJcbiAgKi9cclxuICBwcml2YXRlIHRydW5jYXRlID0gKHRleHQ6IHN0cmluZywgbGVuZ3RoOiBudW1iZXIsIHN1ZmZpeDogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICAgIHJldHVybiB0ZXh0Lmxlbmd0aCA+IGxlbmd0aCA/IHRleHQuc3Vic3RyKDAsIGxlbmd0aCkgKyBzdWZmaXggOiB0ZXh0LnRvU3RyaW5nKCk7XHJcbiAgfVxyXG5cclxuICBpc01hYyA9ICgpOiBib29sZWFuID0+IHtcclxuICAgIHJldHVybiBuYXZpZ2F0b3IucGxhdGZvcm0udG9VcHBlckNhc2UoKS5pbmRleE9mKCdNQUMnKSA+PSAwO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRm9ybWF0cyB0aGUgdGV4dCB0byB1c2UgZm9yIHRoZSB3aW5kb3cgdGl0bGUuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRleHRcclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC0gV2luZG93IHRpdGxlLlxyXG4gICAqL1xyXG4gIGZvcm1hdFdpbmRvd1RpdGxlID0gKHRleHQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy50cnVuY2F0ZSh0ZXh0LCA2MCwgJy4uLicpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgKiBSZXR1cm5zIGEgbWVzc2FnZSBpbmRpY2F0aW5nIHRoYXQgYW4gZW50aXR5IG9yIGVudGl0aWVzIHdlcmUgZGVsZXRlZCBpbiBhbm90aGVyIHZpZXcuIFxyXG4gICogQHBhcmFtIHtzdHJpbmd9IGVudGl0eVR5cGVMYWJlbCAtIERlc2NyaXB0aW9uIG9mIHRoZSBlbnRpdHkgdHlwZS5cclxuICAqIEBwYXJhbSBbe3N0cmluZ31dIGVudGl0eVR5cGVQbHVyYWxMYWJlbCAtIERlc2NyaXB0aW9uIG9mIG1vcmUgdGhhbiBvbmUgb2YgdGhlIGVudGl0eSB0eXBlLlxyXG4gICogQHBhcmFtIFt7bnVtYmVyfV0gY291bnQgLSBOdW1iZXIgb2YgZW50aXRpZXMuXHJcbiAgKi9cclxuICBmbXRFbnRpdHlEZWxldGVkSW5PdGhlclZpZXcgPSAoZW50aXR5VHlwZUxhYmVsOiBzdHJpbmcsIGVudGl0eVR5cGVQbHVyYWxMYWJlbDogc3RyaW5nLCBjb3VudDogbnVtYmVyKTogc3RyaW5nID0+IHtcclxuICAgIGlmICghY291bnQgfHwgY291bnQgPT09IDEpXHJcbiAgICAgIHJldHVybiBlbnRpdHlUeXBlTGFiZWwgKyAnIGRlbGV0ZWQgaW4gYW5vdGhlciB2aWV3JztcclxuICAgIHJldHVybiBjb3VudCArICcgJyArIGVudGl0eVR5cGVQbHVyYWxMYWJlbCArICcgZGVsZXRlZCBpbiBhbm90aGVyIHZpZXcnO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgYSBtZXNzYWdlIHVzZWQgdG8gY29uZmlybSBkZWxldGlvbiBvZiBhbiBlbnRpdHkgb3IgZW50aXRpZXMuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGVudGl0eVR5cGVMYWJlbCAtIERlc2NyaXB0aW9uIG9mIHRoZSBlbnRpdHkgdHlwZS5cclxuICAgKiBAcGFyYW0gW3tzdHJpbmd9XSBlbnRpdHlUeXBlUGx1cmFsTGFiZWwgLSBEZXNjcmlwdGlvbiBvZiBtb3JlIHRoYW4gb25lIG9mIHRoZSBlbnRpdHkgdHlwZS5cclxuICAgKiBAcGFyYW0gW3tudW1iZXJ9XSBjb3VudCAtIE51bWJlciBvZiBlbnRpdGllcy5cclxuICAgKi9cclxuICBmbXREZWxldGVDb25maXJtYXRpb24gPSAoXHJcbiAgICBlbnRpdHlUeXBlTGFiZWw6IHN0cmluZyxcclxuICAgIGVudGl0eVR5cGVQbHVyYWxMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGwsXHJcbiAgICBjb3VudDogbnVtYmVyIHwgbnVsbCA9IG51bGwpOiBzdHJpbmcgPT4ge1xyXG4gICAgaWYgKGNvdW50ID09PSBudWxsKVxyXG4gICAgICByZXR1cm4gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyAnICsgZW50aXR5VHlwZUxhYmVsICsgJz8nO1xyXG4gICAgaWYgKGNvdW50ID09PSAxKVxyXG4gICAgICByZXR1cm4gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgMSAnICsgZW50aXR5VHlwZUxhYmVsICsgJz8nO1xyXG4gICAgcmV0dXJuICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlICcgKyBjb3VudCArICcgJyArIGVudGl0eVR5cGVQbHVyYWxMYWJlbCArICc/JztcclxuICB9O1xyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGEgbWVzc2FnZSBmb3JtYXR0ZWQgZnJvbSBhbiBlcnJvciBvYmplY3QuXHJcbiAgICogQHBhcmFtIHtlcnJvcnxzdHJpbmd9IGVycm9yIFxyXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XHJcbiAgICovXHJcbiAgZm10RXJyb3JUb1Nob3cgPSAoZXJyb3I6IGFueSk6IHN0cmluZyA9PiB7XHJcbiAgICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJylcclxuICAgICAgZXJyb3IgPSBuZXcgRXJyb3IoZXJyb3IpO1xyXG4gICAgdmFyIGxpbmVzID0gW107XHJcbiAgICBsaW5lcy5wdXNoKGVycm9yLm1lc3NhZ2UpO1xyXG4gICAgdmFyIGV4Y2VwdGlvbiA9IGVycm9yLmRldGFpbDtcclxuICAgIHdoaWxlIChleGNlcHRpb24pIHtcclxuICAgICAgdmFyIG1lc3NhZ2UgPSBleGNlcHRpb24uRXhjZXB0aW9uTWVzc2FnZTtcclxuICAgICAgaWYgKCFfLmNvbnRhaW5zKGxpbmVzLCBtZXNzYWdlKSlcclxuICAgICAgICBsaW5lcy5wdXNoKG1lc3NhZ2UpO1xyXG4gICAgICBleGNlcHRpb24gPSBleGNlcHRpb24uSW5uZXJFeGNlcHRpb247XHJcbiAgICB9XHJcbiAgICBpZiAoZXJyb3IuZW50aXR5RXJyb3JzKSB7XHJcbiAgICAgIGVycm9yLmVudGl0eUVycm9ycy5mb3JFYWNoKChlbnRpdHlFcnJvcjogYW55KSA9PiB7XHJcbiAgICAgICAgbGluZXMucHVzaCgnRW50aXR5IDwnICsgZW50aXR5RXJyb3IucHJvcGVydHlOYW1lICsgJz46ICcgKyBlbnRpdHlFcnJvci5lcnJvck1lc3NhZ2UpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmIChlcnJvci5zdGFjaylcclxuICAgICAgbGluZXMucHVzaChlcnJvci5zdGFjayk7XHJcbiAgICB2YXIgdGV4dCA9IGxpbmVzLmpvaW4oJ1xcclxcblxcclxcbicpO1xyXG4gICAgaWYgKCF0ZXh0KVxyXG4gICAgICB0ZXh0ID0gXy5tYXAoZXJyb3IsICh2YWx1ZTogc3RyaW5nLCBrZXk6IHN0cmluZykgPT4geyByZXR1cm4ga2V5ICsgJzogJyArIHZhbHVlIH0pLmpvaW4oJ1xcclxcbicpO1xyXG4gICAgcmV0dXJuIHRleHQ7XHJcbiAgfTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIG1lc3NhZ2UgZm9ybWF0dGVkIGZyb20gYW4gZXhjZXB0aW9uIG9iamVjdC5cclxuICAgKiBAcGFyYW0ge29iamVjdH0gZXhjZXB0aW9uXHJcbiAgICogQHJldHVybnMge3N0cmluZ31cclxuICAgKi9cclxuICBmbXRFeGNlcHRpb25Ub1Nob3cgPSAoZXhjZXB0aW9uOiBhbnkpOiBzdHJpbmcgPT4ge1xyXG4gICAgdmFyIGxpbmVzID0gW107XHJcbiAgICB3aGlsZSAoZXhjZXB0aW9uKSB7XHJcbiAgICAgIHZhciBtZXNzYWdlID0gZXhjZXB0aW9uLk1lc3NhZ2U7XHJcbiAgICAgIGlmICghXy5jb250YWlucyhsaW5lcywgbWVzc2FnZSkpXHJcbiAgICAgICAgbGluZXMucHVzaChtZXNzYWdlKTtcclxuICAgICAgZXhjZXB0aW9uID0gZXhjZXB0aW9uLklubmVyRXhjZXB0aW9uO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxpbmVzLmpvaW4oJ1xcclxcblxcclxcbicpO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgYSBtZXNzYWdlIGZvciBhIGRhdGEgZXJyb3IgdHlwZS5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZU5hbWUgXHJcbiAgICogQHJldHVybnMge3N0cmluZ30gXHJcbiAgICovXHJcbiAgZm10RGF0YUVycm9yID0gKHR5cGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gICAgaWYgKHR5cGVOYW1lLmluZGV4T2YoJ09wdGltaXN0aWNMb2NrVmlvbGF0aW9uJykgPj0gMClcclxuICAgICAgcmV0dXJuICdUaGUgcmVjb3JkIHdhcyBlZGl0ZWQgYWxyZWFkeSwgYnkgYW5vdGhlciB1c2VyLiAgUGxlYXNlIHJlbG9hZCBhbmQgYXR0ZW1wdCB5b3VyIGVkaXQgYWdhaW4uJztcclxuICAgIGlmICh0eXBlTmFtZS5pbmRleE9mKCdEYXRhQ29uc3RyYWludFZpb2xhdGlvbicpID49IDApXHJcbiAgICAgIHJldHVybiAnRm9yZWlnbiBrZXkgY29uc3RyYWludCB2aW9sYXRpb24nO1xyXG4gICAgaWYgKHR5cGVOYW1lLmluZGV4T2YoJ0R1cGxpY2F0ZUtleUVycm9yJykgPj0gMClcclxuICAgICAgcmV0dXJuICdEdXBsaWNhdGUga2V5IGVycm9yJztcclxuICAgIHJldHVybiB0eXBlTmFtZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAgKiBSZXR1cm5zIGEgbWVzc2FnZSBmb3IgYW4gaW1wb3J0IGVycm9yLlxyXG4gICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZU5hbWUgXHJcbiAgICAqIEByZXR1cm5zIHtzdHJpbmd9IFxyXG4gICAgKi9cclxuICBmbXRJbXBvcnRFcnJvciA9IChlcnJvcjogYW55KSA9PiB7XHJcbiAgICB2YXIgZGV0YWlscyA9IFtdO1xyXG4gICAgaWYgKHRoaXMudXRpbC5pc051bWJlcihlcnJvci5SZWNvcmRJbmRleCkpXHJcbiAgICAgIGRldGFpbHMucHVzaCgncmVjb3JkICcgKyBlcnJvci5SZWNvcmRJbmRleCk7XHJcbiAgICBpZiAodGhpcy51dGlsLmlzTnVtYmVyKGVycm9yLkNvbHVtbkluZGV4KSlcclxuICAgICAgZGV0YWlscy5wdXNoKCdjb2x1bW4gJyArIGVycm9yLkNvbHVtbkluZGV4ICsgJyBbJyArIGVycm9yLkNvbHVtbkhlYWRlciArICddJyk7XHJcbiAgICB2YXIgbWVzc2FnZSA9ICcnO1xyXG4gICAgaWYgKGVycm9yLlNvdXJjZUNvbnRleHQpXHJcbiAgICAgIG1lc3NhZ2UgKz0gZXJyb3IuU291cmNlQ29udGV4dDtcclxuICAgIGlmIChkZXRhaWxzLmxlbmd0aClcclxuICAgICAgbWVzc2FnZSArPSAnKCcgKyBkZXRhaWxzLmpvaW4oJywgJykgKyAnKSc7XHJcbiAgICBpZiAobWVzc2FnZS5sZW5ndGgpXHJcbiAgICAgIG1lc3NhZ2UgKz0gJzogJztcclxuICAgIHJldHVybiBtZXNzYWdlICsgZXJyb3IuTWVzc2FnZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogU2VyaWFsaXplcyBhbiBvYmplY3QgYXMgVVJMIHBhcmFtZXRlcnMuICBUaGUgb2JqZWN0IHNob3VsZCBiZSBhIGJhc2UgdHlwZSBvciBoYXZlIFxyXG4gICogcHJvcGVydGllcyB0aGF0IGFyZSBlYWNoIGJhc2UgdHlwZXMuICBEb2VzIG5vdCBzdXBwb3J0IGEgcHJvcGVydHkgd2l0aCBzdHJ1Y3R1cmUuXHJcbiAgKiBAcGFyYW0ge09iamVjdH0gZGF0YSBcclxuICAqIEByZXR1cm5zIHtTdHJpbmd9IFxyXG4gICovXHJcbiAgZm9ybWF0QXNVcmxQYXJhbWV0ZXJzID0gKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgaWYgKHR5cGVvZiBkYXRhICE9PSAnb2JqZWN0JylcclxuICAgICAgcmV0dXJuIChkYXRhID09IG51bGwgPyAnJyA6IGRhdGEudG9TdHJpbmcoKSk7XHJcbiAgICB2YXIgYnVmZmVyID0gW107XHJcbiAgICBmb3IgKHZhciBuYW1lIGluIGRhdGEpIHtcclxuICAgICAgaWYgKCFkYXRhLmhhc093blByb3BlcnR5KG5hbWUpKSB7XHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuICAgICAgdmFyIHZhbHVlID0gZGF0YVtuYW1lXTtcclxuICAgICAgYnVmZmVyLnB1c2goXHJcbiAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpICtcclxuICAgICAgICAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUgPT0gbnVsbCA/ICcnIDogdmFsdWUpKTtcclxuICAgIH1cclxuICAgIHZhciBzb3VyY2UgPSBidWZmZXIuam9pbignJicpXHJcbiAgICAgIC5yZXBsYWNlKC8lMjAvZywgJysnKTtcclxuICAgIHJldHVybiAoc291cmNlKTtcclxuICB9XHJcbn1cclxuIl19
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXRleHQtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvdHJ1LXRleHQtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFDOzs7QUFNaEMsTUFBTSxPQUFPLGNBQWM7SUFnQkw7SUFmWCxtQkFBbUIsQ0FBUztJQUM1QixnQ0FBZ0MsQ0FBUztJQUN6QyxtQkFBbUIsQ0FBUztJQUM1QixpQkFBaUIsQ0FBUztJQUMxQixrQkFBa0IsQ0FBUztJQUMzQixpQkFBaUIsQ0FBUztJQUMxQixjQUFjLENBQVM7SUFDdkIsd0JBQXdCLENBQVM7SUFDakMsd0JBQXdCLENBQVM7SUFDakMscUJBQXFCLENBQVM7SUFDOUIsb0NBQW9DLENBQVM7SUFDN0MsaUJBQWlCLENBQVM7SUFDMUIsb0NBQW9DLENBQVM7SUFDN0MsZ0NBQWdDLENBQVM7SUFFbEQsWUFBb0IsSUFBYTtRQUFiLFNBQUksR0FBSixJQUFJLENBQVM7UUFDL0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDekQsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLDZDQUE2QyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztRQUM5QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUM7UUFDMUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDO1FBQy9DLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztRQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztRQUNy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TyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDLENBQUE7SUFFRDs7Ozs7TUFLRTtJQUNGLHFCQUFxQixHQUFHLENBQUMsSUFBUyxFQUFFLEVBQUU7UUFDcEMsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO1lBQzFCLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixLQUFLLElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLFNBQVM7WUFDWCxDQUFDO1lBQ0QsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQ1Qsa0JBQWtCLENBQUMsSUFBSSxDQUFDO2dCQUN4QixHQUFHLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzthQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQixDQUFDLENBQUE7dUdBL0xVLGNBQWM7MkdBQWQsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ3VuZGVyc2NvcmUnO1xyXG5pbXBvcnQgeyBUcnVVdGlsIH0gZnJvbSAnLi90cnUtdXRpbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1VGV4dE1hbmFnZXIge1xyXG4gIHJlYWRvbmx5IG1zZ01vZGlmaWVyS2V5TGFiZWw6IHN0cmluZztcclxuICByZWFkb25seSBtc2dDb25maXJtRXhpdFdpdGhDaGFuZ2VzUGVuZGluZzogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RlbGV0ZVN1Y2Nlc3NmdWw6IHN0cmluZztcclxuICByZWFkb25seSBtc2dTYXZlU3VjY2Vzc2Z1bDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ05vQ2hhbmdlc1RvU2F2ZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ1NhdmVJblByb2dyZXNzOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbXNnSW52YWxpZERhdGE6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzUmVhZE9ubHk6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzTmF2aWdhdGU6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzQ2xvc2U6IHN0cmluZztcclxuICByZWFkb25seSBtc2dEaXJ0eVByZXZlbnRzRGVsZXRlRXhpc3RpbmdSZWNvcmQ6IHN0cmluZztcclxuICByZWFkb25seSBtc2dOb0RlbGV0ZUFjY2Vzczogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0Nhbm5vdERlbGV0ZU5ld0FuZEV4aXN0aW5nUmVjb3Jkczogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IG1zZ0RlbGV0ZVJlZmVyZW5jaW5nUmVjb3Jkc0ZpcnN0OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXRpbDogVHJ1VXRpbCkge1xyXG4gICAgdGhpcy5tc2dNb2RpZmllcktleUxhYmVsID0gdGhpcy5pc01hYygpID8gJ0NtZCcgOiAnQ3RybCc7XHJcbiAgICB0aGlzLm1zZ0NvbmZpcm1FeGl0V2l0aENoYW5nZXNQZW5kaW5nID0gJ1lvdSBoYXZlIHVuc2F2ZWQgY2hhbmdlcyB0aGF0IHdpbGwgYmUgbG9zdC4nO1xyXG4gICAgdGhpcy5tc2dEZWxldGVTdWNjZXNzZnVsID0gJ0RlbGV0ZSBzdWNjZWVkZWQnO1xyXG4gICAgdGhpcy5tc2dTYXZlU3VjY2Vzc2Z1bCA9ICdTYXZlIHN1Y2NlZWRlZCc7XHJcbiAgICB0aGlzLm1zZ05vQ2hhbmdlc1RvU2F2ZSA9ICdObyBjaGFuZ2VzIHRvIHNhdmUnO1xyXG4gICAgdGhpcy5tc2dTYXZlSW5Qcm9ncmVzcyA9ICdTYXZlIGluIHByb2dyZXNzJztcclxuICAgIHRoaXMubXNnSW52YWxpZERhdGEgPSAnSW52YWxpZCBkYXRhJztcclxuICAgIHRoaXMubXNnRGlydHlQcmV2ZW50c1JlYWRPbmx5ID0gJ1NhdmUgb3IgcmV2ZXJ0IGJlZm9yZSBkaXNhYmxpbmcgZWRpdGluZyc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNOYXZpZ2F0ZSA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgbmF2aWdhdGluZyc7XHJcbiAgICB0aGlzLm1zZ0RpcnR5UHJldmVudHNDbG9zZSA9ICdTYXZlIG9yIHJldmVydCBiZWZvcmUgY2xvc2luZyB3aW5kb3cnO1xyXG4gICAgdGhpcy5tc2dEaXJ0eVByZXZlbnRzRGVsZXRlRXhpc3RpbmdSZWNvcmQgPSAnU2F2ZSBvciByZXZlcnQgYmVmb3JlIGRlbGV0aW5nJztcclxuICAgIHRoaXMubXNnTm9EZWxldGVBY2Nlc3MgPSAnQ29udGFjdCBhZG1pbmlzdHJhdG9yIGFib3V0IGRlbGV0ZSBhY2Nlc3MnO1xyXG4gICAgdGhpcy5tc2dDYW5ub3REZWxldGVOZXdBbmRFeGlzdGluZ1JlY29yZHMgPSAnRGVsZXRlIG5ldyBvciBleGlzdGluZyByZWNvcmRzIC0gYnV0IG5vdCBib3RoJztcclxuICAgIHRoaXMubXNnRGVsZXRlUmVmZXJlbmNpbmdSZWNvcmRzRmlyc3QgPSAnRGVsZXRlIGFsbCByZWZlcmVuY2luZyByZWNvcmRzIGZpcnN0JztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogSWYgdGV4dC5sZW5ndGggZXhjZWVkcyBsZW5ndGgsIHRoZW4gcmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHRoZSBmaXJzdCBsZW5ndGggY2hhcnMgXHJcbiAgKiBvZiB0ZXh0IHBsdXMgc3VmZml4LiAgT3RoZXJ3aXNlLCByZXR1cm5zIHRleHQuXHJcbiAgKiBAcGFyYW0ge3N0cmluZ30gdGV4dFxyXG4gICogQHBhcmFtIHtudW1iZXJ9IGxlbmd0aFxyXG4gICogQHBhcmFtIHtzdHJpbmd9IHN1ZmZpeFxyXG4gICogQHJldHVybiB7c3RyaW5nfVxyXG4gICovXHJcbiAgcHJpdmF0ZSB0cnVuY2F0ZSA9ICh0ZXh0OiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyLCBzdWZmaXg6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICByZXR1cm4gdGV4dC5sZW5ndGggPiBsZW5ndGggPyB0ZXh0LnN1YnN0cigwLCBsZW5ndGgpICsgc3VmZml4IDogdGV4dC50b1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgaXNNYWMgPSAoKTogYm9vbGVhbiA9PiB7XHJcbiAgICByZXR1cm4gbmF2aWdhdG9yLnBsYXRmb3JtLnRvVXBwZXJDYXNlKCkuaW5kZXhPZignTUFDJykgPj0gMDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvcm1hdHMgdGhlIHRleHQgdG8gdXNlIGZvciB0aGUgd2luZG93IHRpdGxlLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0XHJcbiAgICogQHJldHVybiB7c3RyaW5nfSAtIFdpbmRvdyB0aXRsZS5cclxuICAgKi9cclxuICBmb3JtYXRXaW5kb3dUaXRsZSA9ICh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJ1bmNhdGUodGV4dCwgNjAsICcuLi4nKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogUmV0dXJucyBhIG1lc3NhZ2UgaW5kaWNhdGluZyB0aGF0IGFuIGVudGl0eSBvciBlbnRpdGllcyB3ZXJlIGRlbGV0ZWQgaW4gYW5vdGhlciB2aWV3LiBcclxuICAqIEBwYXJhbSB7c3RyaW5nfSBlbnRpdHlUeXBlTGFiZWwgLSBEZXNjcmlwdGlvbiBvZiB0aGUgZW50aXR5IHR5cGUuXHJcbiAgKiBAcGFyYW0gW3tzdHJpbmd9XSBlbnRpdHlUeXBlUGx1cmFsTGFiZWwgLSBEZXNjcmlwdGlvbiBvZiBtb3JlIHRoYW4gb25lIG9mIHRoZSBlbnRpdHkgdHlwZS5cclxuICAqIEBwYXJhbSBbe251bWJlcn1dIGNvdW50IC0gTnVtYmVyIG9mIGVudGl0aWVzLlxyXG4gICovXHJcbiAgZm10RW50aXR5RGVsZXRlZEluT3RoZXJWaWV3ID0gKGVudGl0eVR5cGVMYWJlbDogc3RyaW5nLCBlbnRpdHlUeXBlUGx1cmFsTGFiZWw6IHN0cmluZywgY291bnQ6IG51bWJlcik6IHN0cmluZyA9PiB7XHJcbiAgICBpZiAoIWNvdW50IHx8IGNvdW50ID09PSAxKVxyXG4gICAgICByZXR1cm4gZW50aXR5VHlwZUxhYmVsICsgJyBkZWxldGVkIGluIGFub3RoZXIgdmlldyc7XHJcbiAgICByZXR1cm4gY291bnQgKyAnICcgKyBlbnRpdHlUeXBlUGx1cmFsTGFiZWwgKyAnIGRlbGV0ZWQgaW4gYW5vdGhlciB2aWV3JztcclxuICB9O1xyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGEgbWVzc2FnZSB1c2VkIHRvIGNvbmZpcm0gZGVsZXRpb24gb2YgYW4gZW50aXR5IG9yIGVudGl0aWVzLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBlbnRpdHlUeXBlTGFiZWwgLSBEZXNjcmlwdGlvbiBvZiB0aGUgZW50aXR5IHR5cGUuXHJcbiAgICogQHBhcmFtIFt7c3RyaW5nfV0gZW50aXR5VHlwZVBsdXJhbExhYmVsIC0gRGVzY3JpcHRpb24gb2YgbW9yZSB0aGFuIG9uZSBvZiB0aGUgZW50aXR5IHR5cGUuXHJcbiAgICogQHBhcmFtIFt7bnVtYmVyfV0gY291bnQgLSBOdW1iZXIgb2YgZW50aXRpZXMuXHJcbiAgICovXHJcbiAgZm10RGVsZXRlQ29uZmlybWF0aW9uID0gKFxyXG4gICAgZW50aXR5VHlwZUxhYmVsOiBzdHJpbmcsXHJcbiAgICBlbnRpdHlUeXBlUGx1cmFsTGFiZWw6IHN0cmluZyB8IG51bGwgPSBudWxsLFxyXG4gICAgY291bnQ6IG51bWJlciB8IG51bGwgPSBudWxsKTogc3RyaW5nID0+IHtcclxuICAgIGlmIChjb3VudCA9PT0gbnVsbClcclxuICAgICAgcmV0dXJuICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgJyArIGVudGl0eVR5cGVMYWJlbCArICc/JztcclxuICAgIGlmIChjb3VudCA9PT0gMSlcclxuICAgICAgcmV0dXJuICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIDEgJyArIGVudGl0eVR5cGVMYWJlbCArICc/JztcclxuICAgIHJldHVybiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSAnICsgY291bnQgKyAnICcgKyBlbnRpdHlUeXBlUGx1cmFsTGFiZWwgKyAnPyc7XHJcbiAgfTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIG1lc3NhZ2UgZm9ybWF0dGVkIGZyb20gYW4gZXJyb3Igb2JqZWN0LlxyXG4gICAqIEBwYXJhbSB7ZXJyb3J8c3RyaW5nfSBlcnJvciBcclxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxyXG4gICAqL1xyXG4gIGZtdEVycm9yVG9TaG93ID0gKGVycm9yOiBhbnkpOiBzdHJpbmcgPT4ge1xyXG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpXHJcbiAgICAgIGVycm9yID0gbmV3IEVycm9yKGVycm9yKTtcclxuICAgIHZhciBsaW5lcyA9IFtdO1xyXG4gICAgbGluZXMucHVzaChlcnJvci5tZXNzYWdlKTtcclxuICAgIHZhciBleGNlcHRpb24gPSBlcnJvci5kZXRhaWw7XHJcbiAgICB3aGlsZSAoZXhjZXB0aW9uKSB7XHJcbiAgICAgIHZhciBtZXNzYWdlID0gZXhjZXB0aW9uLkV4Y2VwdGlvbk1lc3NhZ2U7XHJcbiAgICAgIGlmICghXy5jb250YWlucyhsaW5lcywgbWVzc2FnZSkpXHJcbiAgICAgICAgbGluZXMucHVzaChtZXNzYWdlKTtcclxuICAgICAgZXhjZXB0aW9uID0gZXhjZXB0aW9uLklubmVyRXhjZXB0aW9uO1xyXG4gICAgfVxyXG4gICAgaWYgKGVycm9yLmVudGl0eUVycm9ycykge1xyXG4gICAgICBlcnJvci5lbnRpdHlFcnJvcnMuZm9yRWFjaCgoZW50aXR5RXJyb3I6IGFueSkgPT4ge1xyXG4gICAgICAgIGxpbmVzLnB1c2goJ0VudGl0eSA8JyArIGVudGl0eUVycm9yLnByb3BlcnR5TmFtZSArICc+OiAnICsgZW50aXR5RXJyb3IuZXJyb3JNZXNzYWdlKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoZXJyb3Iuc3RhY2tUcmFjZSlcclxuICAgICAgbGluZXMucHVzaChlcnJvci5zdGFja1RyYWNlKTtcclxuICAgIHZhciB0ZXh0ID0gbGluZXMuam9pbignXFxyXFxuXFxyXFxuJyk7XHJcbiAgICBpZiAoIXRleHQpXHJcbiAgICAgIHRleHQgPSBfLm1hcChlcnJvciwgKHZhbHVlOiBzdHJpbmcsIGtleTogc3RyaW5nKSA9PiB7IHJldHVybiBrZXkgKyAnOiAnICsgdmFsdWUgfSkuam9pbignXFxyXFxuJyk7XHJcbiAgICByZXR1cm4gdGV4dDtcclxuICB9O1xyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGEgbWVzc2FnZSBmb3JtYXR0ZWQgZnJvbSBhbiBleGNlcHRpb24gb2JqZWN0LlxyXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBleGNlcHRpb25cclxuICAgKiBAcmV0dXJucyB7c3RyaW5nfVxyXG4gICAqL1xyXG4gIGZtdEV4Y2VwdGlvblRvU2hvdyA9IChleGNlcHRpb246IGFueSk6IHN0cmluZyA9PiB7XHJcbiAgICB2YXIgbGluZXMgPSBbXTtcclxuICAgIHdoaWxlIChleGNlcHRpb24pIHtcclxuICAgICAgdmFyIG1lc3NhZ2UgPSBleGNlcHRpb24uTWVzc2FnZTtcclxuICAgICAgaWYgKCFfLmNvbnRhaW5zKGxpbmVzLCBtZXNzYWdlKSlcclxuICAgICAgICBsaW5lcy5wdXNoKG1lc3NhZ2UpO1xyXG4gICAgICBleGNlcHRpb24gPSBleGNlcHRpb24uSW5uZXJFeGNlcHRpb247XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbGluZXMuam9pbignXFxyXFxuXFxyXFxuJyk7XHJcbiAgfTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIG1lc3NhZ2UgZm9yIGEgZGF0YSBlcnJvciB0eXBlLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlTmFtZSBcclxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBcclxuICAgKi9cclxuICBmbXREYXRhRXJyb3IgPSAodHlwZU5hbWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICBpZiAodHlwZU5hbWUuaW5kZXhPZignT3B0aW1pc3RpY0xvY2tWaW9sYXRpb24nKSA+PSAwKVxyXG4gICAgICByZXR1cm4gJ1RoZSByZWNvcmQgd2FzIGVkaXRlZCBhbHJlYWR5LCBieSBhbm90aGVyIHVzZXIuICBQbGVhc2UgcmVsb2FkIGFuZCBhdHRlbXB0IHlvdXIgZWRpdCBhZ2Fpbi4nO1xyXG4gICAgaWYgKHR5cGVOYW1lLmluZGV4T2YoJ0RhdGFDb25zdHJhaW50VmlvbGF0aW9uJykgPj0gMClcclxuICAgICAgcmV0dXJuICdGb3JlaWduIGtleSBjb25zdHJhaW50IHZpb2xhdGlvbic7XHJcbiAgICBpZiAodHlwZU5hbWUuaW5kZXhPZignRHVwbGljYXRlS2V5RXJyb3InKSA+PSAwKVxyXG4gICAgICByZXR1cm4gJ0R1cGxpY2F0ZSBrZXkgZXJyb3InO1xyXG4gICAgcmV0dXJuIHR5cGVOYW1lO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICAqIFJldHVybnMgYSBtZXNzYWdlIGZvciBhbiBpbXBvcnQgZXJyb3IuXHJcbiAgICAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlTmFtZSBcclxuICAgICogQHJldHVybnMge3N0cmluZ30gXHJcbiAgICAqL1xyXG4gIGZtdEltcG9ydEVycm9yID0gKGVycm9yOiBhbnkpID0+IHtcclxuICAgIHZhciBkZXRhaWxzID0gW107XHJcbiAgICBpZiAodGhpcy51dGlsLmlzTnVtYmVyKGVycm9yLlJlY29yZEluZGV4KSlcclxuICAgICAgZGV0YWlscy5wdXNoKCdyZWNvcmQgJyArIGVycm9yLlJlY29yZEluZGV4KTtcclxuICAgIGlmICh0aGlzLnV0aWwuaXNOdW1iZXIoZXJyb3IuQ29sdW1uSW5kZXgpKVxyXG4gICAgICBkZXRhaWxzLnB1c2goJ2NvbHVtbiAnICsgZXJyb3IuQ29sdW1uSW5kZXggKyAnIFsnICsgZXJyb3IuQ29sdW1uSGVhZGVyICsgJ10nKTtcclxuICAgIHZhciBtZXNzYWdlID0gJyc7XHJcbiAgICBpZiAoZXJyb3IuU291cmNlQ29udGV4dClcclxuICAgICAgbWVzc2FnZSArPSBlcnJvci5Tb3VyY2VDb250ZXh0O1xyXG4gICAgaWYgKGRldGFpbHMubGVuZ3RoKVxyXG4gICAgICBtZXNzYWdlICs9ICcoJyArIGRldGFpbHMuam9pbignLCAnKSArICcpJztcclxuICAgIGlmIChtZXNzYWdlLmxlbmd0aClcclxuICAgICAgbWVzc2FnZSArPSAnOiAnO1xyXG4gICAgcmV0dXJuIG1lc3NhZ2UgKyBlcnJvci5NZXNzYWdlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgKiBTZXJpYWxpemVzIGFuIG9iamVjdCBhcyBVUkwgcGFyYW1ldGVycy4gIFRoZSBvYmplY3Qgc2hvdWxkIGJlIGEgYmFzZSB0eXBlIG9yIGhhdmUgXHJcbiAgKiBwcm9wZXJ0aWVzIHRoYXQgYXJlIGVhY2ggYmFzZSB0eXBlcy4gIERvZXMgbm90IHN1cHBvcnQgYSBwcm9wZXJ0eSB3aXRoIHN0cnVjdHVyZS5cclxuICAqIEBwYXJhbSB7T2JqZWN0fSBkYXRhIFxyXG4gICogQHJldHVybnMge1N0cmluZ30gXHJcbiAgKi9cclxuICBmb3JtYXRBc1VybFBhcmFtZXRlcnMgPSAoZGF0YTogYW55KSA9PiB7XHJcbiAgICBpZiAodHlwZW9mIGRhdGEgIT09ICdvYmplY3QnKVxyXG4gICAgICByZXR1cm4gKGRhdGEgPT0gbnVsbCA/ICcnIDogZGF0YS50b1N0cmluZygpKTtcclxuICAgIHZhciBidWZmZXIgPSBbXTtcclxuICAgIGZvciAodmFyIG5hbWUgaW4gZGF0YSkge1xyXG4gICAgICBpZiAoIWRhdGEuaGFzT3duUHJvcGVydHkobmFtZSkpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG4gICAgICB2YXIgdmFsdWUgPSBkYXRhW25hbWVdO1xyXG4gICAgICBidWZmZXIucHVzaChcclxuICAgICAgICBlbmNvZGVVUklDb21wb25lbnQobmFtZSkgK1xyXG4gICAgICAgICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSA9PSBudWxsID8gJycgOiB2YWx1ZSkpO1xyXG4gICAgfVxyXG4gICAgdmFyIHNvdXJjZSA9IGJ1ZmZlci5qb2luKCcmJylcclxuICAgICAgLnJlcGxhY2UoLyUyMC9nLCAnKycpO1xyXG4gICAgcmV0dXJuIChzb3VyY2UpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1211,8 +1211,8 @@ class TruTextManager {
1211
1211
  lines.push('Entity <' + entityError.propertyName + '>: ' + entityError.errorMessage);
1212
1212
  });
1213
1213
  }
1214
- if (error.stack)
1215
- lines.push(error.stack);
1214
+ if (error.stackTrace)
1215
+ lines.push(error.stackTrace);
1216
1216
  var text = lines.join('\r\n\r\n');
1217
1217
  if (!text)
1218
1218
  text = _.map(error, (value, key) => { return key + ': ' + value; }).join('\r\n');
@@ -9218,6 +9218,7 @@ class TruServerError {
9218
9218
  message;
9219
9219
  stackTrace;
9220
9220
  status;
9221
+ statusText;
9221
9222
  constructor(error) {
9222
9223
  let parsedError = JSON.parse(error.error);
9223
9224
  this.id = parsedError.$id;
@@ -9226,6 +9227,7 @@ class TruServerError {
9226
9227
  this.message = parsedError.Message;
9227
9228
  this.stackTrace = parsedError.StackTrace;
9228
9229
  this.status = error.status;
9230
+ this.statusText = error.statusText;
9229
9231
  }
9230
9232
  }
9231
9233
 
@@ -9305,15 +9307,18 @@ class TruErrorManager {
9305
9307
  data: dialogConfig
9306
9308
  });
9307
9309
  }
9308
- else if (error.type.toString().lastIndexOf('TruDB.EfMssql.Runtime.DataError', 0) === 0) {
9309
- //this.uiNotification.error(
9310
- // this.textManager.fmtDataError(error.httpResponse.data.Detail.$type),
9311
- // [this.textManager.fmtExceptionToShow(error.httpResponse.data.Exception)])
9310
+ else if (serverError.type.lastIndexOf('TruDB.EfMssql.Runtime.DataError', 0) === 0) {
9311
+ this.uiNotification.error(this.textManager.fmtDataError(serverError.type), [this.textManager.fmtExceptionToShow(serverError.stackTrace)]);
9312
9312
  }
9313
9313
  else {
9314
- //var message = this.textManager.fmtErrorToShow(error);
9315
- //this.uiNotification.showErrorDialog(message);
9316
- //this.logErrorEvent(message);
9314
+ var message = this.textManager.fmtErrorToShow(serverError);
9315
+ let dialogConfig = new TruErrorDialogConfig(serverError.statusText, message);
9316
+ this.dialog.open(TruErrorDialog, {
9317
+ disableClose: true,
9318
+ minWidth: "400px",
9319
+ maxWidth: "600px",
9320
+ data: dialogConfig
9321
+ });
9317
9322
  }
9318
9323
  };
9319
9324
  handleError = (error) => {