@uiapplibct/ngx-reusa-app-lib 0.0.5 → 0.0.7

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.
@@ -289,9 +289,17 @@ export class FileUploaderComponent {
289
289
  }
290
290
  async uploadToTaxAudit(event) {
291
291
  const file = event.target.files[0];
292
- const base64 = await this.fileToBase64(file);
292
+ const fileName = file.name;
293
293
  let corId;
294
294
  this.showProgress = true;
295
+ const allowedExtensions = this.allowedFileType;
296
+ const allowedMimeTypes = this.mimeType;
297
+ const extension = fileName.substring(fileName.lastIndexOf("."));
298
+ if (allowedExtensions !== extension || allowedMimeTypes !== file.type) {
299
+ this.util.showError("Invalid file type.");
300
+ return false;
301
+ }
302
+ const base64 = await this.fileToBase64(file);
295
303
  this.as.getCorrId().subscribe((res) => {
296
304
  corId = res;
297
305
  let req = {
@@ -303,7 +311,7 @@ export class FileUploaderComponent {
303
311
  "corrId": res,
304
312
  "direction": "INBOUND",
305
313
  "docCode": `signature_${corId}`,
306
- "mimeType": this.mimeType,
314
+ "mimeType": file.type,
307
315
  "title": "signature",
308
316
  }
309
317
  ]
@@ -519,4 +527,4 @@ export class FileUploaderComponent {
519
527
  type: Input
520
528
  }] }); })();
521
529
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FileUploaderComponent, { className: "FileUploaderComponent", filePath: "lib\\components\\file-uploader\\file-uploader.component.ts", lineNumber: 20 }); })();
522
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWRlci9maWxlLXVwbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9maWxlLXVwbG9hZGVyL2ZpbGUtdXBsb2FkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQTRCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQXNFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNNM0gsOEJBQXFEO0lBQ25ELHVDQUM4RDs7SUFDaEUsaUJBQUs7O0lBRmUsZUFBcUQ7SUFBckQsdUZBQXFEOzs7O0lBSXZFLCtCQUF1RSxvQkFBQTtJQUUvQyxvTUFBVSxlQUFBLDBCQUFrQixDQUFBLElBQUM7SUFEbkQsaUJBQ3NEO0lBQ3RELHNDQUFnRztJQUE1Qiw0TEFBUyxlQUFBLFlBQWlCLENBQUEsSUFBQztJQUM3Riw4QkFDRjtJQUFBLGlCQUFhLEVBQUE7OztJQUprRCxlQUEwQjtJQUExQiwrQ0FBMEI7Ozs7SUFPM0YsK0JBQXdFLG9CQUFBO0lBRXBFLG9NQUFVLGVBQUEsMEJBQWtCLENBQUEsSUFBQztJQUQvQixpQkFDa0M7SUFDbEMsc0NBQWdHO0lBQTVCLDRMQUFTLGVBQUEsWUFBaUIsQ0FBQSxJQUFDO0lBQzdGLDZCQUNGO0lBQUEsaUJBQWEsRUFBQTs7O0lBSmtELGVBQTBCO0lBQTFCLGdEQUEwQjs7O0lBakIvRiwwQkFBSSxT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QUQ3QixTQUFTO21CQUFDLHlCQUF5QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtZQUl2RCxNQUFNO2tCQURMLE1BQU07WUFJUCxLQUFLO2tCQURKLE1BQU07WUFJUCxXQUFXO2tCQURWLE1BQU07WUFHb0IsU0FBUztrQkFBbkMsWUFBWTttQkFBQyxXQUFXO1lBT3pCLGVBQWU7a0JBRGQsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLGVBQWU7a0JBRGQsS0FBSztZQUlOLE9BQU87a0JBRE4sS0FBSztZQUlOLHdCQUF3QjtrQkFEdkIsS0FBSztZQUlOLGlCQUFpQjtrQkFEaEIsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUlOLE1BQU07a0JBREwsS0FBSzs7a0ZBekRLLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkcmVuLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIE5nRm9ybSwgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUb2FzdENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IENhcHRjaGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2FwdGNoYS9jYXB0Y2hhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRG1zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Rtcy1zZXJ2aWNlL2Rtcy5zZXJ2aWNlJztcbmltcG9ydCB7IEF1ZGl0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2F1ZGl0L2F1ZGl0LnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWxlLXVwbG9hZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogRmlsZVVwbG9hZGVyQ29tcG9uZW50LFxuICAgIG11bHRpOiB0cnVlXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uQ2hhbmdlcyB7XG5cbiAgaW1hZ2VCYXNlNjQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgREVGQVVMVF9TSU5HTEVfRklMRV9MSU1JVCA9IDE7XG5cbiAgcHJpdmF0ZSBERUZBVUxUX0ZJTEVfU0laRV9JTl9NQiA9IDE7XG5cbiAgcHJpdmF0ZSBGSUxFX1VQTE9BRF9BQ1RJT05fTkFNRSA9ICdmaWxlX3VwbG9hZCc7XG5cbiAgcHVibGljIHNob3dQcm9ncmVzcyA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ3VwbG9hZEZpbGVGb3JtRGlyZWN0aXZlJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyB1cGxvYWRGaWxlRm9ybURpcmVjdGl2ZTogTmdGb3JtO1xuXG4gIEBPdXRwdXQoKVxuICB1cGxvYWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBmaWxlczogRXZlbnRFbWl0dGVyPE1hcDxGaWxlLCBzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgdXBsb2FkQXVkaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dDtcblxuICBxdWV1ZTogRmlsZVtdID0gW107XG5cbiAgbWFwT2ZGaWxlczogTWFwPEZpbGUsIHN0cmluZz4gPSBuZXcgTWFwKCk7XG5cbiAgQElucHV0KClcbiAgYWxsb3dlZEZpbGVUeXBlOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgbWltZVR5cGU6c3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHJvb2ZPZkFueXRoaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgY29udGV4dDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dTZXBhcmF0ZUF0dGFjaEJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG5vT2ZGaWxlc1RvVXBsb2FkOiBudW1iZXIgPSB0aGlzLkRFRkFVTFRfU0lOR0xFX0ZJTEVfTElNSVQ7XG5cbiAgQElucHV0KClcbiAgbWF4U2l6ZUluTUI6IG51bWJlciA9IHRoaXMuREVGQVVMVF9GSUxFX1NJWkVfSU5fTUI7XG5cbiAgQElucHV0KClcbiAgdXBsb2FkVG9ETVM6Ym9vbGVhbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgY29ycklkO1xuICBcbiAgcHVibGljIHVwbG9hZEZpbGVGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBpbWFnZUh0bWw6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHJpdmF0ZSB1dGlsOiBVdGlsU2VydmljZSwgcHJpdmF0ZSBmczogRG1zU2VydmljZSwgXG4gICAgcHVibGljIHRvYXN0Q29udHJvbGxlcjogVG9hc3RDb250cm9sbGVyLCBwcml2YXRlIGNzOiBDYXB0Y2hhU2VydmljZSwgcHJpdmF0ZSBhczogQXVkaXRTZXJ2aWNlKSB7XG4gICAgdGhpcy51cGxvYWRGaWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgJ3VwbG9hZEZpbGVDdHJsJzogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgfSk7XG4gIH1cblxuICBnZXQgdXBsb2FkRmlsZUN0cmwoKSB7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkRmlsZUZvcm0uY29udHJvbHNbJ3VwbG9hZEZpbGVDdHJsJ107XG4gIH1cblxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmKHRoaXMuY29ycklkKXtcblxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25DaGFuZ2U6IEZ1bmN0aW9uID0gKHZhbHVlOiBTdHJpbmcpID0+IHtcblxuICB9O1xuICBwcml2YXRlIG9uVG91Y2g6IEZ1bmN0aW9uID0gKCkgPT4ge1xuXG4gIH07XG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydjb3JySWQnXSkge1xuICAgICAgaWYodGhpcy5jb3JySWQgJiYgdGhpcy5jb250ZXh0PT09J3NpZ25hdHVyZScpe1xuICAgICAgICB0aGlzLmZzLmdldFRheEF1ZGl0RmlsZSh0aGlzLmNvcnJJZCkuc3Vic2NyaWJlKChyZXMpPT57XG4gICAgICAgICAgdGhpcy5pbWFnZUJhc2U2NCA9IHJlcy5kYXRhO1xuICAgICAgICAgIHRoaXMuaW1hZ2VIdG1sID0gYDxpbWcgc3JjPVwiJHt0aGlzLmltYWdlQmFzZTY0fVwiIGFsdD1cIlVwbG9hZGVkIEltYWdlXCIgd2lkdGg9XCIzODVweFwiIGhlaWdodD1cIjk4cHhcIj5gO1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBmaWxlVG9CYXNlNjQoZmlsZTogRmlsZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcblxuICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpO1xuICAgIH0pO1xuICB9XG4gIGFzeW5jIHVwbG9hZFRvVGF4QXVkaXQgKGV2ZW50KXtcbiAgICBjb25zdCBmaWxlID0gZXZlbnQudGFyZ2V0LmZpbGVzWzBdO1xuICAgIGNvbnN0IGJhc2U2NCA9IGF3YWl0IHRoaXMuZmlsZVRvQmFzZTY0KGZpbGUpO1xuICAgIGxldCBjb3JJZDsgXG4gICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSB0cnVlO1xuICAgIFxuICAgIHRoaXMuYXMuZ2V0Q29ycklkKCkuc3Vic2NyaWJlKChyZXMpPT57XG4gICAgICBjb3JJZCA9IHJlcztcbiAgICAgIGxldCByZXEgPSB7XG4gICAgICAgICAgIFwiZWFuXCI6IFwiMTIzNDU2NzhcIixcbiAgICAgICAgICAgIFwieWVhclwiOiBcIjIwMjZcIixcbiAgICAgICAgICAgICBcImNvcnJlc3BvZGVuY2VMaXN0XCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiYmFzZTY0RmlsZURhdGFcIjpiYXNlNjQsXG4gICAgICAgICAgICAgICAgXCJjb3JySWRcIjogcmVzLFxuICAgICAgICAgICAgICAgIFwiZGlyZWN0aW9uXCI6IFwiSU5CT1VORFwiLFxuICAgICAgICAgICAgICAgIFwiZG9jQ29kZVwiOiBgc2lnbmF0dXJlXyR7Y29ySWR9YCxcbiAgICAgICAgICAgICAgICBcIm1pbWVUeXBlXCI6IHRoaXMubWltZVR5cGUsXG4gICAgICAgICAgICAgICAgXCJ0aXRsZVwiOiBcInNpZ25hdHVyZVwiLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgXVxuICAgICAgfVxuICAgICAgdGhpcy5jcy5nZW5lcmF0ZUNhcHRjaGFUb2tlbignZmlsZV91cGxvYWQnKS5zdWJzY3JpYmUoKHRva2VuOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3Muc2V0SW52aXNpYmVsQ2FwdGNoYSh0b2tlbik7XG4gICAgICAgICAgICB0aGlzLmZzLnVwbG9hZFRheEF1ZGl0RmlsZShyZXEpLnN1YnNjcmliZShyZXM9PntcbiAgICAgICAgICAgICAgdGhpcy51cGxvYWRBdWRpdC5lbWl0KGNvcklkKVxuICAgICAgICAgICAgICBpZih0aGlzLmNvbnRleHQ9PT0nc2lnbmF0dXJlJyl7XG4gICAgICAgICAgICAgICAgdGhpcy5pbWFnZUJhc2U2NCA9IGJhc2U2NDtcbiAgICAgICAgICAgICAgICB0aGlzLmltYWdlSHRtbCA9IGA8aW1nIHNyYz1cIiR7dGhpcy5pbWFnZUJhc2U2NH1cIiBhbHQ9XCJVcGxvYWRlZCBJbWFnZVwiIHdpZHRoPVwiMzg1cHhcIiBoZWlnaHQ9XCI5OHB4XCI+YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcInJlc1wiLHJlcylcbiAgICAgICAgICAgIH0sZXJyPT57XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIixlcnIpO1xuICAgICAgICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycik7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgfSlcbiAgICAgICB9LChlcnIpPT57XG4gICAgICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycik7XG4gICAgICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgYWRkVG9RdWV1ZShldmVudCkge1xuICAgIGxldCBjdXJyRmlsZVVwbGRTaXplOiBudW1iZXIgPSAwO1xuICAgIGxldCBwcmVGaWxlVXBsZFNpemU6IG51bWJlciA9IDA7XG4gICAgbGV0IG1heFNpemVSZWFjaGVkOiBCb29sZWFuID0gZmFsc2U7XG4gICAgbGV0IGN1clVwbGRGaWxlTGVuOiBudW1iZXIgPSBldmVudC50YXJnZXQuZmlsZXMubGVuZ3RoO1xuICAgIGxldCBwcmVVcGxkRmlsZUxlbjogbnVtYmVyID0gdGhpcy5xdWV1ZS5sZW5ndGg7XG5cbiAgICBpZiAoKGN1clVwbGRGaWxlTGVuICsgcHJlVXBsZEZpbGVMZW4pID4gdGhpcy5ub09mRmlsZXNUb1VwbG9hZCkge1xuICAgICAgdGhpcy5lcnJvcihcIllvdSBjYW4gbm90IHVwbG9hZCBtb3JlIHRoYW4gXCIgKyB0aGlzLm5vT2ZGaWxlc1RvVXBsb2FkICsgXCIgZmlsZShzKS5cIik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLnF1ZXVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICBwcmVGaWxlVXBsZFNpemUgPSB0aGlzLmdldFNpemVJbk1CKHRoaXMucXVldWVbaV0uc2l6ZSkgKyBwcmVGaWxlVXBsZFNpemU7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmVudC50YXJnZXQuZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGN1cnJGaWxlVXBsZFNpemUgPSBjdXJyRmlsZVVwbGRTaXplICsgdGhpcy5nZXRTaXplSW5NQihldmVudC50YXJnZXQuZmlsZXNbaV0uc2l6ZSlcbiAgICB9XG5cbiAgICBtYXhTaXplUmVhY2hlZCA9IChwcmVGaWxlVXBsZFNpemUgKyBjdXJyRmlsZVVwbGRTaXplID4gdGhpcy5tYXhTaXplSW5NQik7XG5cbiAgICBpZiAobWF4U2l6ZVJlYWNoZWQpIHtcbiAgICAgIHRoaXMuZXJyb3IoJ0NvbWJpbmVkIGZpbGUocykgc2l6ZSBjYW4gbm90IGJlIG1vcmUgdGhhbiAnICsgdGhpcy5tYXhTaXplSW5NQiArICcgTUIuJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSB0cnVlO1xuICAgIFxuICAgIHRoaXMuY3MuZ2VuZXJhdGVDYXB0Y2hhVG9rZW4odGhpcy5GSUxFX1VQTE9BRF9BQ1RJT05fTkFNRSlcbiAgICAgIC5zdWJzY3JpYmUoKHRva2VuOiBzdHJpbmcpID0+IHtcbiAgICAgICAgdGhpcy5jcy5zZXRJbnZpc2liZWxDYXB0Y2hhKHRva2VuKTtcbiAgICAgICAgaWYgKCFtYXhTaXplUmVhY2hlZCkge1xuICAgICAgICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZXZlbnQudGFyZ2V0LmZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXCJmaWxlc1wiLCBldmVudC50YXJnZXQuZmlsZXNbaV0sIGV2ZW50LnRhcmdldC5maWxlc1tpXS5uYW1lKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGV0IGZpbGVzID0gWy4uLmV2ZW50LnRhcmdldC5maWxlc107XG4gICAgICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgICAgICAgaWYoIXRoaXMudXBsb2FkVG9ETVMpe1xuICAgICAgICAgICAgLy8gbGV0IGZpbGVzID0gWy4uLmV2ZW50LnRhcmdldC5maWxlc107XG4gICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLnF1ZXVlLnB1c2goZmlsZXNbaV0pO1xuICAgICAgICAgICAgICAgIHRoaXMubWFwT2ZGaWxlcy5zZXQoZmlsZXNbaV0sIG51bGwpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmZpbGVzLmVtaXQodGhpcy5tYXBPZkZpbGVzKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmZzXG4gICAgICAgICAgICAudXBsb2FkRmlsZShmb3JtRGF0YSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgdGhpcy5xdWV1ZS5wdXNoKGZpbGVzW2ldKTtcbiAgICAgICAgICAgICAgICAgIHRoaXMubWFwT2ZGaWxlcy5zZXQoZmlsZXNbaV0sIHJlc1tpXS5maWxlSWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKEFycmF5LmZyb20odGhpcy5tYXBPZkZpbGVzLnZhbHVlcygpKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zdWNjZXNzKCdGaWxlKHMpIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseS4nKTtcblx0XHQgICAgICAgICAgICAgICAgLy9TcGVjaWZpY2FsbHkgZm9yIFNpZ25hdHVyZS1VcGxvYWQgKFdpbGwgYmUgbW92ZSB0byBhIG5ldyBtZXRob2QpXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZSA9ICh0aGlzLm1hcE9mRmlsZXMuZW50cmllcygpLm5leHQoKS52YWx1ZSlbMF07XG4gICAgICAgICAgICAgICAgaWYgKGZpbGUgJiYgKGZpbGUudHlwZSA9PT0gJ2ltYWdlL3BuZycgfHwgZmlsZS50eXBlID09PSAnaW1hZ2UvanBlZycgXG4gICAgICAgICAgICAgICAgICB8fCBmaWxlLnR5cGUgPT09ICdpbWFnZS9naWYnKSkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW1hZ2VCYXNlNjQgPSBlLnRhcmdldC5yZXN1bHQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW1hZ2VIdG1sID0gYDxpbWcgc3JjPVwiJHt0aGlzLmltYWdlQmFzZTY0fVwiIGFsdD1cIlVwbG9hZGVkIEltYWdlXCIgd2lkdGg9XCIxMjVcIiBoZWlnaHQ9XCI3NVwiPmA7XG4gICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwbG9hZC5lbWl0KEFycmF5LmZyb20odGhpcy5tYXBPZkZpbGVzLnZhbHVlcygpKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlcy5lbWl0KHRoaXMubWFwT2ZGaWxlcyk7XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGVyciA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmVycm9yKFwiRmlsZSB1cGxvYWQgZmFpbGVkLiBQbGVhc2UgdHJ5IGFnYWluLlwiKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgICB0aGlzLmVycm9yKFwiRmlsZSB1cGxvYWQgZmFpbGVkLiBQbGVhc2UgdHJ5IGFnYWluLlwiKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlRnJvbVF1ZXVlKGZpbGVUb1JlbW92ZSkge1xuICAgIGxldCBpbmRleDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMucXVldWUubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLnF1ZXVlW2ldLm5hbWUgPT09IGZpbGVUb1JlbW92ZS5uYW1lKSB7XG4gICAgICAgIGluZGV4ID0gaTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSB0cnVlO1xuICAgIGxldCBmaWxlSWQgPSB0aGlzLm1hcE9mRmlsZXMuZ2V0KGZpbGVUb1JlbW92ZSk7XG4gICAgdGhpcy5jcy5nZW5lcmF0ZUNhcHRjaGFUb2tlbih0aGlzLkZJTEVfVVBMT0FEX0FDVElPTl9OQU1FKVxuICAgICAgLnN1YnNjcmliZSgodG9rZW46IHN0cmluZykgPT4ge1xuICAgICAgICB0aGlzLmNzLnNldEludmlzaWJlbENhcHRjaGEodG9rZW4pO1xuICAgICAgICB0aGlzLmZzLmRlbGV0ZUZpbGUoZmlsZUlkKVxuICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgIHRoaXMucXVldWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgIHRoaXMubWFwT2ZGaWxlcy5kZWxldGUoZmlsZVRvUmVtb3ZlKTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1Byb2dyZXNzID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKEFycmF5LmZyb20odGhpcy5tYXBPZkZpbGVzLnZhbHVlcygpKSk7XG4gICAgICAgICAgICB0aGlzLnVwbG9hZC5lbWl0KEFycmF5LmZyb20odGhpcy5tYXBPZkZpbGVzLnZhbHVlcygpKSlcbiAgICAgICAgICAgIHRoaXMuZmlsZXMuZW1pdCh0aGlzLm1hcE9mRmlsZXMpO1xuICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLnNob3dQcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5lcnJvcihcIkVycm9yIHdoaWxlIGRlbGV0aW5nIGZpbGUuIFBsZWFzZSB0cnkgYWdhaW4uXCIpO1xuICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgICAgICB9KVxuICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5lcnJvcihcIkVycm9yIHdoaWxlIGRlbGV0aW5nIGZpbGUuIFBsZWFzZSB0cnkgYWdhaW4uXCIpO1xuICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgfSk7XG5cbiAgfVxuXG4gIGdldFNpemVJbk1CKG51bTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIG51bSAvIDEwMjQgLyAxMDI0XG4gIH1cblxuICBhc3luYyBwcmVzZW50VG9hc3QobXNnLCBjb2xvcikge1xuICAgIGNvbnN0IHRvYXN0ID0gYXdhaXQgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIG1lc3NhZ2U6IG1zZyxcbiAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgY29sb3I6IGNvbG9yLFxuICAgICAgcG9zaXRpb246ICdib3R0b20nXG4gICAgfSk7XG4gICAgdG9hc3QucHJlc2VudCgpO1xuICB9XG5cbiAgc3VjY2Vzcyhtc2cpIHtcbiAgICB0aGlzLnByZXNlbnRUb2FzdChtc2csICdwcmltYXJ5Jyk7XG4gIH1cblxuICBlcnJvcihtc2cpIHtcbiAgICB0aGlzLnByZXNlbnRUb2FzdChtc2csICdkYW5nZXInKTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cInVwbG9hZEZpbGVGb3JtXCIgI3VwbG9hZEZpbGVGb3JtRGlyZWN0aXZlPVwibmdGb3JtXCI+XHJcbiAgPHNlY3Rpb24gKm5nSWY9XCJ0aGlzLmNvbnRleHQgIT0gJ3NpZ25hdHVyZScgJiYgdGhpcy5jb250ZXh0ICE9J3VwbG9hZFppcENvZGVzJ1wiPlxyXG4gIDxwLXRhYmxlIFt2YWx1ZV09XCJxdWV1ZVwiIHJlc3BvbnNpdmVMYXlvdXQ9XCJzY3JvbGxcIiBbbG9hZGluZ109XCJzaG93UHJvZ3Jlc3NcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cclxuICAgICAgPHRyPlxyXG4gICAgICAgIDx0aD5OYW1lPC90aD5cclxuICAgICAgICA8dGg+U2l6ZTwvdGg+XHJcbiAgICAgICAgPHRoIHN0eWxlPVwidGV4dC1hbGlnbjpyaWdodFwiICpuZ0lmPVwicHJvb2ZPZkFueXRoaW5nXCI+XHJcbiAgICAgICAgICA8YXBwLW92ZXJsYXktaW5mbyBvdmVybGF5VGV4dD1cInt7J3Byb29mLm9mLmFueXRoaW5nLmluZm8nfCB0cmFuc2xhdGV9fVwiXHJcbiAgICAgICAgICBzdHlsZT1cIm1hcmdpbi10b3A6IDJweDsgbWFyZ2luLWxlZnQ6IDZweDtcIj48L2FwcC1vdmVybGF5LWluZm8+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgICA8dGggY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaW5wdXQtY29udGFpbmVyXCIgKm5nSWY9XCJtdWx0aXBsZSAmJiAhcHJvb2ZPZkFueXRoaW5nXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlSW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXBsb2FkRmlsZUN0cmxcIiBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZVwiXHJcbiAgICAgICAgICAgICAgbXVsdGlwbGU9XCJtdWx0aXBsZVwiIChjaGFuZ2UpPVwiYWRkVG9RdWV1ZSgkZXZlbnQpXCIgLz5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJzdWJtaXRcIiBmaWxsPVwib3V0bGluZVwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiPlxyXG4gICAgICAgICAgICAgIENob29zZSBGaWxlc1xyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1pbnB1dC1jb250YWluZXJcIiAqbmdJZj1cIiFtdWx0aXBsZSAmJiAhcHJvb2ZPZkFueXRoaW5nXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlSW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXBsb2FkRmlsZUN0cmxcIiBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZVwiXHJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJhZGRUb1F1ZXVlKCRldmVudClcIiAvPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgc2l6ZT1cInNtYWxsXCIgdHlwZT1cInN1Ym1pdFwiIGZpbGw9XCJvdXRsaW5lXCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCI+XHJcbiAgICAgICAgICAgICAgQ2hvb3NlIEZpbGVcclxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC90cj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1xdWV1ZT5cclxuICAgICAgPHRyPlxyXG4gICAgICAgIDx0ZD57eyBxdWV1ZT8ubmFtZSB9fTwvdGQ+XHJcbiAgICAgICAgPHRkPnt7IHF1ZXVlPy5zaXplLzEwMjQvMTAyNCB8IG51bWJlcjonLjInIH19IE1CPC90ZD5cclxuICAgICAgICA8dGQgY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgPGlvbi1idXR0b24gc2hhcGU9XCJyb3VuZFwiIHNpemU9XCJzbWFsbFwiIHBUb29sdGlwPVwiUmVtb3ZlXCIgKGNsaWNrKT1cInJlbW92ZUZyb21RdWV1ZShxdWV1ZSlcIlxyXG4gICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBjbGFzcz1cImlvbi1wYWRkaW5nLWxlZnRcIj5cclxuICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJ0cmFzaC1vdXRsaW5lXCI+PC9pb24taWNvbj5cclxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cclxuICAgICAgPHRyICpuZ0lmPVwiIXByb29mT2ZBbnl0aGluZ1wiPlxyXG4gICAgICAgIDx0ZCBbYXR0ci5jb2xzcGFuXT1cIjNcIj5cclxuICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgIDxsaSAqbmdJZj1cImFsbG93ZWRGaWxlVHlwZVwiPllvdSBhcmUgYWxsb3dlZCB0byB1cGxvYWQgZmlsZShzKSB3aXRoIGZvbGxvd2luZyBleHRlbnRpb25zOiB7e2FsbG93ZWRGaWxlVHlwZX19LjwvbGk+XHJcbiAgICAgICAgICAgICAgPGxpPlRvdGFsIGZpbGUocykgc2l6ZSBjYW5ub3QgZXhjZWVkIDxiPnt7bWF4U2l6ZUluTUJ9fTwvYj4gTUIuPC9saT5cclxuICAgICAgICAgICAgICA8bGk+WW91IGNhbiB1cGxvYWQgbWF4aW11bSA8Yj57e25vT2ZGaWxlc1RvVXBsb2FkfX08L2I+IGZpbGUocykuPC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJmb290ZXJcIj4gXHJcbiAgICAgIDx0ciAqbmdJZj1cInByb29mT2ZBbnl0aGluZ1wiPlxyXG4gICAgICAgIDx0ZCAqbmdJZj1cInF1ZXVlLmxlbmd0aCA9PSAwXCI+XHJcbiAgICAgICAgICA8ZGl2PjxiPisgQWRkPC9iPiBmaWxlczwvZGl2PlxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPHRkICpuZ0lmPVwicXVldWUubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgPGRpdj48Yj4rIEFkZDwvYj4gYW55IG90aGVyIGZpbGVzPC9kaXY+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICA8dGQgY2xhc3M9XCJmaWxlLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IGZvcm1Db250cm9sTmFtZT1cInVwbG9hZEZpbGVDdHJsXCIgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVcIlxyXG4gICAgICAgICAgICAgIChjaGFuZ2UpPVwiYWRkVG9RdWV1ZSgkZXZlbnQpXCIgLz5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gYXJpYS1sYWJlbD1cIkFkZCBGaWxlc1wiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIGZpbGw9XCJvdXRsaW5lXCIgc2l6ZT1cInNtYWxsXCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAncGx1cyddXCIgY2xhc3M9XCJhY3Rpb24taWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvdHI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvcC10YWJsZT5cclxuPC9zZWN0aW9uPlxyXG48c2VjdGlvbiAqbmdJZj1cInRoaXMuY29udGV4dCA9PSAnc2lnbmF0dXJlJ1wiPlxyXG4gIDxpb24tcm93PlxyXG4gICAgPGlvbi1jb2w+XHJcbiAgICAgIDxkaXYgW2lubmVySFRNTF09XCJpbWFnZUh0bWxcIiBzdHlsZT1cIndpZHRoOiAzODVweDsgaGVpZ2h0OiAxMDBweDsgYm9yZGVyOiAxcHggc29saWQgZ3JheTsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCI+PC9kaXY+XHJcbiAgICA8L2lvbi1jb2w+XHJcbiAgICA8aW9uLWNvbD5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbGUtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgI2ZpbGVJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ1cGxvYWRGaWxlQ3RybFwiIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlXCJcclxuICAgICAgICAgIChjaGFuZ2UpPVwidXBsb2FkVG9UYXhBdWRpdCgkZXZlbnQpXCIgLz5cclxuICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInNxdWFyZVwiIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJzdWJtaXRcIiBmaWxsPVwib3V0bGluZVwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiPlxyXG4gICAgICAgICAgSW1wb3J0XHJcbiAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvaW9uLWNvbD5cclxuICA8L2lvbi1yb3c+XHJcbjwvc2VjdGlvbj5cclxuPHNlY3Rpb24gKm5nSWY9XCJ0aGlzLmNvbnRleHQgPT0gJ3VwbG9hZFppcENvZGVzJ1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJ1cGxvYWQtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IGZvcm1Db250cm9sTmFtZT1cInVwbG9hZEZpbGVDdHJsXCIgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVcIlxyXG4gICAgICAoY2hhbmdlKT1cImFkZFRvUXVldWUoJGV2ZW50KVwiIC8+XHJcbiAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInNxdWFyZVwiIHNpemU9XCJkZWZhdWx0XCIgdHlwZT1cInN1Ym1pdFwiIGZpbGw9XCJvdXRsaW5lXCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCI+XHJcbiAgICAgIFVwbG9hZCBaaXAgQ29kZXNcclxuICAgIDwvaW9uLWJ1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG48L2Zvcm0+Il19
530
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWRlci9maWxlLXVwbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9maWxlLXVwbG9hZGVyL2ZpbGUtdXBsb2FkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQTRCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQXNFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNNM0gsOEJBQXFEO0lBQ25ELHVDQUM4RDs7SUFDaEUsaUJBQUs7O0lBRmUsZUFBcUQ7SUFBckQsdUZBQXFEOzs7O0lBSXZFLCtCQUF1RSxvQkFBQTtJQUUvQyxvTUFBVSxlQUFBLDBCQUFrQixDQUFBLElBQUM7SUFEbkQsaUJBQ3NEO0lBQ3RELHNDQUFnRztJQUE1Qiw0TEFBUyxlQUFBLFlBQWlCLENBQUEsSUFBQztJQUM3Riw4QkFDRjtJQUFBLGlCQUFhLEVBQUE7OztJQUprRCxlQUEwQjtJQUExQiwrQ0FBMEI7Ozs7SUFPM0YsK0JBQXdFLG9CQUFBO0lBRXBFLG9NQUFVLGVBQUEsMEJBQWtCLENBQUEsSUFBQztJQUQvQixpQkFDa0M7SUFDbEMsc0NBQWdHO0lBQTVCLDRMQUFTLGVBQUEsWUFBaUIsQ0FBQSxJQUFDO0lBQzdGLDZCQUNGO0lBQUEsaUJBQWEsRUFBQTs7O0lBSmtELGVBQTBCO0lBQTFCLGdEQUEwQjs7O0lBakIvRiwwQkFBSSxT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QUFFLGlCQUFpQjtvQkFDMUIsV0FBVyxFQUFFLHFCQUFxQjtvQkFDbEMsS0FBSyxFQUFFLElBQUk7aUJBQ1osQ0FBQztZQ2pCSixrQ0FBcUU7WUFDbkUsOEVBdUVRLGtFQUFBLGlFQUFBO1lBMEJWLGlCQUFPOztZQWxHRCw4Q0FBNEI7WUFDdEIsZUFBb0U7WUFBcEUsb0ZBQW9FO1lBd0V0RSxlQUFpQztZQUFqQyxpREFBaUM7WUFnQmpDLGVBQXNDO1lBQXRDLHNEQUFzQzs7O2lGRHRFbkMscUJBQXFCO2NBVmpDLFNBQVM7MkJBQ0UsbUJBQW1CLGFBR2xCLENBQUM7d0JBQ1YsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyx1QkFBdUI7d0JBQ2xDLEtBQUssRUFBRSxJQUFJO3FCQUNaLENBQUM7NExBZUssdUJBQXVCO2tCQUQ3QixTQUFTO21CQUFDLHlCQUF5QixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtZQUl2RCxNQUFNO2tCQURMLE1BQU07WUFJUCxLQUFLO2tCQURKLE1BQU07WUFJUCxXQUFXO2tCQURWLE1BQU07WUFHb0IsU0FBUztrQkFBbkMsWUFBWTttQkFBQyxXQUFXO1lBT3pCLGVBQWU7a0JBRGQsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLGVBQWU7a0JBRGQsS0FBSztZQUlOLE9BQU87a0JBRE4sS0FBSztZQUlOLHdCQUF3QjtrQkFEdkIsS0FBSztZQUlOLGlCQUFpQjtrQkFEaEIsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUlOLFdBQVc7a0JBRFYsS0FBSztZQUlOLE1BQU07a0JBREwsS0FBSzs7a0ZBekRLLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkcmVuLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIE5nRm9ybSwgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUb2FzdENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IENhcHRjaGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2FwdGNoYS9jYXB0Y2hhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRG1zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Rtcy1zZXJ2aWNlL2Rtcy5zZXJ2aWNlJztcbmltcG9ydCB7IEF1ZGl0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2F1ZGl0L2F1ZGl0LnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWxlLXVwbG9hZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogRmlsZVVwbG9hZGVyQ29tcG9uZW50LFxuICAgIG11bHRpOiB0cnVlXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uQ2hhbmdlcyB7XG5cbiAgaW1hZ2VCYXNlNjQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgREVGQVVMVF9TSU5HTEVfRklMRV9MSU1JVCA9IDE7XG5cbiAgcHJpdmF0ZSBERUZBVUxUX0ZJTEVfU0laRV9JTl9NQiA9IDE7XG5cbiAgcHJpdmF0ZSBGSUxFX1VQTE9BRF9BQ1RJT05fTkFNRSA9ICdmaWxlX3VwbG9hZCc7XG5cbiAgcHVibGljIHNob3dQcm9ncmVzcyA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ3VwbG9hZEZpbGVGb3JtRGlyZWN0aXZlJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyB1cGxvYWRGaWxlRm9ybURpcmVjdGl2ZTogTmdGb3JtO1xuXG4gIEBPdXRwdXQoKVxuICB1cGxvYWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBmaWxlczogRXZlbnRFbWl0dGVyPE1hcDxGaWxlLCBzdHJpbmc+PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KClcbiAgdXBsb2FkQXVkaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dDtcblxuICBxdWV1ZTogRmlsZVtdID0gW107XG5cbiAgbWFwT2ZGaWxlczogTWFwPEZpbGUsIHN0cmluZz4gPSBuZXcgTWFwKCk7XG5cbiAgQElucHV0KClcbiAgYWxsb3dlZEZpbGVUeXBlOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgbWltZVR5cGU6c3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHJvb2ZPZkFueXRoaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgY29udGV4dDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dTZXBhcmF0ZUF0dGFjaEJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG5vT2ZGaWxlc1RvVXBsb2FkOiBudW1iZXIgPSB0aGlzLkRFRkFVTFRfU0lOR0xFX0ZJTEVfTElNSVQ7XG5cbiAgQElucHV0KClcbiAgbWF4U2l6ZUluTUI6IG51bWJlciA9IHRoaXMuREVGQVVMVF9GSUxFX1NJWkVfSU5fTUI7XG5cbiAgQElucHV0KClcbiAgdXBsb2FkVG9ETVM6Ym9vbGVhbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgY29ycklkO1xuICBcbiAgcHVibGljIHVwbG9hZEZpbGVGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBpbWFnZUh0bWw6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHJpdmF0ZSB1dGlsOiBVdGlsU2VydmljZSwgcHJpdmF0ZSBmczogRG1zU2VydmljZSwgXG4gICAgcHVibGljIHRvYXN0Q29udHJvbGxlcjogVG9hc3RDb250cm9sbGVyLCBwcml2YXRlIGNzOiBDYXB0Y2hhU2VydmljZSwgcHJpdmF0ZSBhczogQXVkaXRTZXJ2aWNlKSB7XG4gICAgdGhpcy51cGxvYWRGaWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgJ3VwbG9hZEZpbGVDdHJsJzogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdXG4gICAgfSk7XG4gIH1cblxuICBnZXQgdXBsb2FkRmlsZUN0cmwoKSB7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkRmlsZUZvcm0uY29udHJvbHNbJ3VwbG9hZEZpbGVDdHJsJ107XG4gIH1cblxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmKHRoaXMuY29ycklkKXtcblxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25DaGFuZ2U6IEZ1bmN0aW9uID0gKHZhbHVlOiBTdHJpbmcpID0+IHtcblxuICB9O1xuICBwcml2YXRlIG9uVG91Y2g6IEZ1bmN0aW9uID0gKCkgPT4ge1xuXG4gIH07XG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydjb3JySWQnXSkge1xuICAgICAgaWYodGhpcy5jb3JySWQgJiYgdGhpcy5jb250ZXh0PT09J3NpZ25hdHVyZScpe1xuICAgICAgICB0aGlzLmZzLmdldFRheEF1ZGl0RmlsZSh0aGlzLmNvcnJJZCkuc3Vic2NyaWJlKChyZXMpPT57XG4gICAgICAgICAgdGhpcy5pbWFnZUJhc2U2NCA9IHJlcy5kYXRhO1xuICAgICAgICAgIHRoaXMuaW1hZ2VIdG1sID0gYDxpbWcgc3JjPVwiJHt0aGlzLmltYWdlQmFzZTY0fVwiIGFsdD1cIlVwbG9hZGVkIEltYWdlXCIgd2lkdGg9XCIzODVweFwiIGhlaWdodD1cIjk4cHhcIj5gO1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBmaWxlVG9CYXNlNjQoZmlsZTogRmlsZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcblxuICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpO1xuICAgIH0pO1xuICB9XG4gIGFzeW5jIHVwbG9hZFRvVGF4QXVkaXQgKGV2ZW50KXtcbiAgICBjb25zdCBmaWxlID0gZXZlbnQudGFyZ2V0LmZpbGVzWzBdO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gZmlsZS5uYW1lO1xuICBcbiAgICBsZXQgY29ySWQ7IFxuICAgIHRoaXMuc2hvd1Byb2dyZXNzID0gdHJ1ZTtcbiAgICBjb25zdCBhbGxvd2VkRXh0ZW5zaW9ucyA9IHRoaXMuYWxsb3dlZEZpbGVUeXBlO1xuICAgIGNvbnN0IGFsbG93ZWRNaW1lVHlwZXMgPSB0aGlzLm1pbWVUeXBlO1xuICAgIGNvbnN0IGV4dGVuc2lvbiA9IGZpbGVOYW1lLnN1YnN0cmluZyhmaWxlTmFtZS5sYXN0SW5kZXhPZihcIi5cIikgKTtcbiAgICBpZiAoYWxsb3dlZEV4dGVuc2lvbnMgIT09IGV4dGVuc2lvbiB8fCBhbGxvd2VkTWltZVR5cGVzICE9PSBmaWxlLnR5cGUpIHtcbiAgICAgICAgdGhpcy51dGlsLnNob3dFcnJvcihcIkludmFsaWQgZmlsZSB0eXBlLlwiKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIGNvbnN0IGJhc2U2NCA9IGF3YWl0IHRoaXMuZmlsZVRvQmFzZTY0KGZpbGUpO1xuICAgIHRoaXMuYXMuZ2V0Q29ycklkKCkuc3Vic2NyaWJlKChyZXMpPT57XG4gICAgICBjb3JJZCA9IHJlcztcbiAgICAgIGxldCByZXEgPSB7XG4gICAgICAgICAgIFwiZWFuXCI6IFwiMTIzNDU2NzhcIixcbiAgICAgICAgICAgIFwieWVhclwiOiBcIjIwMjZcIixcbiAgICAgICAgICAgICBcImNvcnJlc3BvZGVuY2VMaXN0XCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiYmFzZTY0RmlsZURhdGFcIjpiYXNlNjQsXG4gICAgICAgICAgICAgICAgXCJjb3JySWRcIjogcmVzLFxuICAgICAgICAgICAgICAgIFwiZGlyZWN0aW9uXCI6IFwiSU5CT1VORFwiLFxuICAgICAgICAgICAgICAgIFwiZG9jQ29kZVwiOiBgc2lnbmF0dXJlXyR7Y29ySWR9YCxcbiAgICAgICAgICAgICAgICBcIm1pbWVUeXBlXCI6IGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgICBcInRpdGxlXCI6IFwic2lnbmF0dXJlXCIsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICBdXG4gICAgICB9XG4gICAgICB0aGlzLmNzLmdlbmVyYXRlQ2FwdGNoYVRva2VuKCdmaWxlX3VwbG9hZCcpLnN1YnNjcmliZSgodG9rZW46IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcy5zZXRJbnZpc2liZWxDYXB0Y2hhKHRva2VuKTtcbiAgICAgICAgICAgIHRoaXMuZnMudXBsb2FkVGF4QXVkaXRGaWxlKHJlcSkuc3Vic2NyaWJlKHJlcz0+e1xuICAgICAgICAgICAgICB0aGlzLnVwbG9hZEF1ZGl0LmVtaXQoY29ySWQpXG4gICAgICAgICAgICAgIGlmKHRoaXMuY29udGV4dD09PSdzaWduYXR1cmUnKXtcbiAgICAgICAgICAgICAgICB0aGlzLmltYWdlQmFzZTY0ID0gYmFzZTY0O1xuICAgICAgICAgICAgICAgIHRoaXMuaW1hZ2VIdG1sID0gYDxpbWcgc3JjPVwiJHt0aGlzLmltYWdlQmFzZTY0fVwiIGFsdD1cIlVwbG9hZGVkIEltYWdlXCIgd2lkdGg9XCIzODVweFwiIGhlaWdodD1cIjk4cHhcIj5gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwicmVzXCIscmVzKVxuICAgICAgICAgICAgfSxlcnI9PntcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJlcnJvclwiLGVycik7XG4gICAgICAgICAgICAgIHRoaXMudXRpbC5lcnJvckhhbmRsZXIoZXJyKTtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9KVxuICAgICAgIH0sKGVycik9PntcbiAgICAgICAgICAgIHRoaXMudXRpbC5lcnJvckhhbmRsZXIoZXJyKTtcbiAgICAgICAgICB9KVxuICAgIH0pXG4gIH1cblxuICBhZGRUb1F1ZXVlKGV2ZW50KSB7XG4gICAgbGV0IGN1cnJGaWxlVXBsZFNpemU6IG51bWJlciA9IDA7XG4gICAgbGV0IHByZUZpbGVVcGxkU2l6ZTogbnVtYmVyID0gMDtcbiAgICBsZXQgbWF4U2l6ZVJlYWNoZWQ6IEJvb2xlYW4gPSBmYWxzZTtcbiAgICBsZXQgY3VyVXBsZEZpbGVMZW46IG51bWJlciA9IGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGg7XG4gICAgbGV0IHByZVVwbGRGaWxlTGVuOiBudW1iZXIgPSB0aGlzLnF1ZXVlLmxlbmd0aDtcblxuICAgIGlmICgoY3VyVXBsZEZpbGVMZW4gKyBwcmVVcGxkRmlsZUxlbikgPiB0aGlzLm5vT2ZGaWxlc1RvVXBsb2FkKSB7XG4gICAgICB0aGlzLmVycm9yKFwiWW91IGNhbiBub3QgdXBsb2FkIG1vcmUgdGhhbiBcIiArIHRoaXMubm9PZkZpbGVzVG9VcGxvYWQgKyBcIiBmaWxlKHMpLlwiKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMucXVldWUubGVuZ3RoOyBpKyspIHtcbiAgICAgIHByZUZpbGVVcGxkU2l6ZSA9IHRoaXMuZ2V0U2l6ZUluTUIodGhpcy5xdWV1ZVtpXS5zaXplKSArIHByZUZpbGVVcGxkU2l6ZTtcbiAgICB9XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgY3VyckZpbGVVcGxkU2l6ZSA9IGN1cnJGaWxlVXBsZFNpemUgKyB0aGlzLmdldFNpemVJbk1CKGV2ZW50LnRhcmdldC5maWxlc1tpXS5zaXplKVxuICAgIH1cblxuICAgIG1heFNpemVSZWFjaGVkID0gKHByZUZpbGVVcGxkU2l6ZSArIGN1cnJGaWxlVXBsZFNpemUgPiB0aGlzLm1heFNpemVJbk1CKTtcblxuICAgIGlmIChtYXhTaXplUmVhY2hlZCkge1xuICAgICAgdGhpcy5lcnJvcignQ29tYmluZWQgZmlsZShzKSBzaXplIGNhbiBub3QgYmUgbW9yZSB0aGFuICcgKyB0aGlzLm1heFNpemVJbk1CICsgJyBNQi4nKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dQcm9ncmVzcyA9IHRydWU7XG4gICAgXG4gICAgdGhpcy5jcy5nZW5lcmF0ZUNhcHRjaGFUb2tlbih0aGlzLkZJTEVfVVBMT0FEX0FDVElPTl9OQU1FKVxuICAgICAgLnN1YnNjcmliZSgodG9rZW46IHN0cmluZykgPT4ge1xuICAgICAgICB0aGlzLmNzLnNldEludmlzaWJlbENhcHRjaGEodG9rZW4pO1xuICAgICAgICBpZiAoIW1heFNpemVSZWFjaGVkKSB7XG4gICAgICAgICAgY29uc3QgZm9ybURhdGE6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBldmVudC50YXJnZXQuZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChcImZpbGVzXCIsIGV2ZW50LnRhcmdldC5maWxlc1tpXSwgZXZlbnQudGFyZ2V0LmZpbGVzW2ldLm5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsZXQgZmlsZXMgPSBbLi4uZXZlbnQudGFyZ2V0LmZpbGVzXTtcbiAgICAgICAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICAgICAgICBpZighdGhpcy51cGxvYWRUb0RNUyl7XG4gICAgICAgICAgICAvLyBsZXQgZmlsZXMgPSBbLi4uZXZlbnQudGFyZ2V0LmZpbGVzXTtcbiAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIC8vIHRoaXMucXVldWUucHVzaChmaWxlc1tpXSk7XG4gICAgICAgICAgICAgICAgdGhpcy5tYXBPZkZpbGVzLnNldChmaWxlc1tpXSwgbnVsbCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZmlsZXMuZW1pdCh0aGlzLm1hcE9mRmlsZXMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuZnNcbiAgICAgICAgICAgIC51cGxvYWRGaWxlKGZvcm1EYXRhKVxuICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLnF1ZXVlLnB1c2goZmlsZXNbaV0pO1xuICAgICAgICAgICAgICAgICAgdGhpcy5tYXBPZkZpbGVzLnNldChmaWxlc1tpXSwgcmVzW2ldLmZpbGVJZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UoQXJyYXkuZnJvbSh0aGlzLm1hcE9mRmlsZXMudmFsdWVzKCkpKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN1Y2Nlc3MoJ0ZpbGUocykgdXBsb2FkZWQgc3VjY2Vzc2Z1bGx5LicpO1xuXHRcdCAgICAgICAgICAgICAgICAvL1NwZWNpZmljYWxseSBmb3IgU2lnbmF0dXJlLVVwbG9hZCAoV2lsbCBiZSBtb3ZlIHRvIGEgbmV3IG1ldGhvZClcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlID0gKHRoaXMubWFwT2ZGaWxlcy5lbnRyaWVzKCkubmV4dCgpLnZhbHVlKVswXTtcbiAgICAgICAgICAgICAgICBpZiAoZmlsZSAmJiAoZmlsZS50eXBlID09PSAnaW1hZ2UvcG5nJyB8fCBmaWxlLnR5cGUgPT09ICdpbWFnZS9qcGVnJyBcbiAgICAgICAgICAgICAgICAgIHx8IGZpbGUudHlwZSA9PT0gJ2ltYWdlL2dpZicpKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICAgICAgICAgICAgcmVhZGVyLm9ubG9hZCA9IChlOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbWFnZUJhc2U2NCA9IGUudGFyZ2V0LnJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbWFnZUh0bWwgPSBgPGltZyBzcmM9XCIke3RoaXMuaW1hZ2VCYXNlNjR9XCIgYWx0PVwiVXBsb2FkZWQgSW1hZ2VcIiB3aWR0aD1cIjEyNVwiIGhlaWdodD1cIjc1XCI+YDtcbiAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy9cbiAgICAgICAgICAgICAgICB0aGlzLnNob3dQcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMudXBsb2FkLmVtaXQoQXJyYXkuZnJvbSh0aGlzLm1hcE9mRmlsZXMudmFsdWVzKCkpKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbGVzLmVtaXQodGhpcy5tYXBPZkZpbGVzKTtcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dQcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3IoXCJGaWxlIHVwbG9hZCBmYWlsZWQuIFBsZWFzZSB0cnkgYWdhaW4uXCIpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LCBlcnIgPT4ge1xuICAgICAgICB0aGlzLnNob3dQcm9ncmVzcyA9IHRydWU7XG4gICAgICAgIHRoaXMuZXJyb3IoXCJGaWxlIHVwbG9hZCBmYWlsZWQuIFBsZWFzZSB0cnkgYWdhaW4uXCIpO1xuICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgfSk7XG4gIH1cblxuICByZW1vdmVGcm9tUXVldWUoZmlsZVRvUmVtb3ZlKSB7XG4gICAgbGV0IGluZGV4O1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5xdWV1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHRoaXMucXVldWVbaV0ubmFtZSA9PT0gZmlsZVRvUmVtb3ZlLm5hbWUpIHtcbiAgICAgICAgaW5kZXggPSBpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnNob3dQcm9ncmVzcyA9IHRydWU7XG4gICAgbGV0IGZpbGVJZCA9IHRoaXMubWFwT2ZGaWxlcy5nZXQoZmlsZVRvUmVtb3ZlKTtcbiAgICB0aGlzLmNzLmdlbmVyYXRlQ2FwdGNoYVRva2VuKHRoaXMuRklMRV9VUExPQURfQUNUSU9OX05BTUUpXG4gICAgICAuc3Vic2NyaWJlKCh0b2tlbjogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuY3Muc2V0SW52aXNpYmVsQ2FwdGNoYSh0b2tlbik7XG4gICAgICAgIHRoaXMuZnMuZGVsZXRlRmlsZShmaWxlSWQpXG4gICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5xdWV1ZS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5tYXBPZkZpbGVzLmRlbGV0ZShmaWxlVG9SZW1vdmUpO1xuICAgICAgICAgICAgdGhpcy5zaG93UHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UoQXJyYXkuZnJvbSh0aGlzLm1hcE9mRmlsZXMudmFsdWVzKCkpKTtcbiAgICAgICAgICAgIHRoaXMudXBsb2FkLmVtaXQoQXJyYXkuZnJvbSh0aGlzLm1hcE9mRmlsZXMudmFsdWVzKCkpKVxuICAgICAgICAgICAgdGhpcy5maWxlcy5lbWl0KHRoaXMubWFwT2ZGaWxlcyk7XG4gICAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1Byb2dyZXNzID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmVycm9yKFwiRXJyb3Igd2hpbGUgZGVsZXRpbmcgZmlsZS4gUGxlYXNlIHRyeSBhZ2Fpbi5cIik7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgIH0pXG4gICAgICB9LCBlcnIgPT4ge1xuICAgICAgICB0aGlzLnNob3dQcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmVycm9yKFwiRXJyb3Igd2hpbGUgZGVsZXRpbmcgZmlsZS4gUGxlYXNlIHRyeSBhZ2Fpbi5cIik7XG4gICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICB9KTtcblxuICB9XG5cbiAgZ2V0U2l6ZUluTUIobnVtOiBudW1iZXIpIHtcbiAgICByZXR1cm4gbnVtIC8gMTAyNCAvIDEwMjRcbiAgfVxuXG4gIGFzeW5jIHByZXNlbnRUb2FzdChtc2csIGNvbG9yKSB7XG4gICAgY29uc3QgdG9hc3QgPSBhd2FpdCB0aGlzLnRvYXN0Q29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgbWVzc2FnZTogbXNnLFxuICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICBjb2xvcjogY29sb3IsXG4gICAgICBwb3NpdGlvbjogJ2JvdHRvbSdcbiAgICB9KTtcbiAgICB0b2FzdC5wcmVzZW50KCk7XG4gIH1cblxuICBzdWNjZXNzKG1zZykge1xuICAgIHRoaXMucHJlc2VudFRvYXN0KG1zZywgJ3ByaW1hcnknKTtcbiAgfVxuXG4gIGVycm9yKG1zZykge1xuICAgIHRoaXMucHJlc2VudFRvYXN0KG1zZywgJ2RhbmdlcicpO1xuICB9XG5cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwidXBsb2FkRmlsZUZvcm1cIiAjdXBsb2FkRmlsZUZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj5cclxuICA8c2VjdGlvbiAqbmdJZj1cInRoaXMuY29udGV4dCAhPSAnc2lnbmF0dXJlJyAmJiB0aGlzLmNvbnRleHQgIT0ndXBsb2FkWmlwQ29kZXMnXCI+XHJcbiAgPHAtdGFibGUgW3ZhbHVlXT1cInF1ZXVlXCIgcmVzcG9uc2l2ZUxheW91dD1cInNjcm9sbFwiIFtsb2FkaW5nXT1cInNob3dQcm9ncmVzc1wiPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG4gICAgICA8dHI+XHJcbiAgICAgICAgPHRoPk5hbWU8L3RoPlxyXG4gICAgICAgIDx0aD5TaXplPC90aD5cclxuICAgICAgICA8dGggc3R5bGU9XCJ0ZXh0LWFsaWduOnJpZ2h0XCIgKm5nSWY9XCJwcm9vZk9mQW55dGhpbmdcIj5cclxuICAgICAgICAgIDxhcHAtb3ZlcmxheS1pbmZvIG92ZXJsYXlUZXh0PVwie3sncHJvb2Yub2YuYW55dGhpbmcuaW5mbyd8IHRyYW5zbGF0ZX19XCJcclxuICAgICAgICAgIHN0eWxlPVwibWFyZ2luLXRvcDogMnB4OyBtYXJnaW4tbGVmdDogNnB4O1wiPjwvYXBwLW92ZXJsYXktaW5mbz5cclxuICAgICAgICA8L3RoPlxyXG4gICAgICAgIDx0aCBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1pbnB1dC1jb250YWluZXJcIiAqbmdJZj1cIm11bHRpcGxlICYmICFwcm9vZk9mQW55dGhpbmdcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgI2ZpbGVJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ1cGxvYWRGaWxlQ3RybFwiIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlXCJcclxuICAgICAgICAgICAgICBtdWx0aXBsZT1cIm11bHRpcGxlXCIgKGNoYW5nZSk9XCJhZGRUb1F1ZXVlKCRldmVudClcIiAvPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgc2l6ZT1cInNtYWxsXCIgdHlwZT1cInN1Ym1pdFwiIGZpbGw9XCJvdXRsaW5lXCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCI+XHJcbiAgICAgICAgICAgICAgQ2hvb3NlIEZpbGVzXHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWlucHV0LWNvbnRhaW5lclwiICpuZ0lmPVwiIW11bHRpcGxlICYmICFwcm9vZk9mQW55dGhpbmdcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgI2ZpbGVJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ1cGxvYWRGaWxlQ3RybFwiIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlXCJcclxuICAgICAgICAgICAgICAoY2hhbmdlKT1cImFkZFRvUXVldWUoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwicm91bmRcIiBzaXplPVwic21hbGxcIiB0eXBlPVwic3VibWl0XCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiZmlsZUlucHV0LmNsaWNrKClcIj5cclxuICAgICAgICAgICAgICBDaG9vc2UgRmlsZVxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3RoPlxyXG4gICAgICA8L3RyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXF1ZXVlPlxyXG4gICAgICA8dHI+XHJcbiAgICAgICAgPHRkPnt7IHF1ZXVlPy5uYW1lIH19PC90ZD5cclxuICAgICAgICA8dGQ+e3sgcXVldWU/LnNpemUvMTAyNC8xMDI0IHwgbnVtYmVyOicuMicgfX0gTUI8L3RkPlxyXG4gICAgICAgIDx0ZCBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0XCI+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgc2l6ZT1cInNtYWxsXCIgcFRvb2x0aXA9XCJSZW1vdmVcIiAoY2xpY2spPVwicmVtb3ZlRnJvbVF1ZXVlKHF1ZXVlKVwiXHJcbiAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIGNsYXNzPVwiaW9uLXBhZGRpbmctbGVmdFwiPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInRyYXNoLW91dGxpbmVcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvdHI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiPlxyXG4gICAgICA8dHIgKm5nSWY9XCIhcHJvb2ZPZkFueXRoaW5nXCI+XHJcbiAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwiM1wiPlxyXG4gICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgPGxpICpuZ0lmPVwiYWxsb3dlZEZpbGVUeXBlXCI+WW91IGFyZSBhbGxvd2VkIHRvIHVwbG9hZCBmaWxlKHMpIHdpdGggZm9sbG93aW5nIGV4dGVudGlvbnM6IHt7YWxsb3dlZEZpbGVUeXBlfX0uPC9saT5cclxuICAgICAgICAgICAgICA8bGk+VG90YWwgZmlsZShzKSBzaXplIGNhbm5vdCBleGNlZWQgPGI+e3ttYXhTaXplSW5NQn19PC9iPiBNQi48L2xpPlxyXG4gICAgICAgICAgICAgIDxsaT5Zb3UgY2FuIHVwbG9hZCBtYXhpbXVtIDxiPnt7bm9PZkZpbGVzVG9VcGxvYWR9fTwvYj4gZmlsZShzKS48L2xpPlxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvdHI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiPiBcclxuICAgICAgPHRyICpuZ0lmPVwicHJvb2ZPZkFueXRoaW5nXCI+XHJcbiAgICAgICAgPHRkICpuZ0lmPVwicXVldWUubGVuZ3RoID09IDBcIj5cclxuICAgICAgICAgIDxkaXY+PGI+KyBBZGQ8L2I+IGZpbGVzPC9kaXY+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgICA8dGQgKm5nSWY9XCJxdWV1ZS5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICA8ZGl2PjxiPisgQWRkPC9iPiBhbnkgb3RoZXIgZmlsZXM8L2Rpdj5cclxuICAgICAgICA8L3RkPlxyXG4gICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgIDx0ZCBjbGFzcz1cImZpbGUtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlSW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXBsb2FkRmlsZUN0cmxcIiBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZVwiXHJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCJhZGRUb1F1ZXVlKCRldmVudClcIiAvPlxyXG4gICAgICAgICAgICA8aW9uLWJ1dHRvbiBhcmlhLWxhYmVsPVwiQWRkIEZpbGVzXCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCIgZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIiBjbGFzcz1cImFjdGlvbi1idXR0b25cIj5cclxuICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICdwbHVzJ11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC90ZD5cclxuICAgICAgPC90cj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9wLXRhYmxlPlxyXG48L3NlY3Rpb24+XHJcbjxzZWN0aW9uICpuZ0lmPVwidGhpcy5jb250ZXh0ID09ICdzaWduYXR1cmUnXCI+XHJcbiAgPGlvbi1yb3c+XHJcbiAgICA8aW9uLWNvbD5cclxuICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImltYWdlSHRtbFwiIHN0eWxlPVwid2lkdGg6IDM4NXB4OyBoZWlnaHQ6IDEwMHB4OyBib3JkZXI6IDFweCBzb2xpZCBncmF5OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjtcIj48L2Rpdj5cclxuICAgIDwvaW9uLWNvbD5cclxuICAgIDxpb24tY29sPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsZS1pbnB1dC1jb250YWluZXJcIj5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IGZvcm1Db250cm9sTmFtZT1cInVwbG9hZEZpbGVDdHJsXCIgW2FjY2VwdF09XCJhbGxvd2VkRmlsZVR5cGVcIlxyXG4gICAgICAgICAgKGNoYW5nZSk9XCJ1cGxvYWRUb1RheEF1ZGl0KCRldmVudClcIiAvPlxyXG4gICAgICAgIDxpb24tYnV0dG9uIHNoYXBlPVwic3F1YXJlXCIgc2l6ZT1cInNtYWxsXCIgdHlwZT1cInN1Ym1pdFwiIGZpbGw9XCJvdXRsaW5lXCIgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCI+XHJcbiAgICAgICAgICBJbXBvcnRcclxuICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9pb24tY29sPlxyXG4gIDwvaW9uLXJvdz5cclxuPC9zZWN0aW9uPlxyXG48c2VjdGlvbiAqbmdJZj1cInRoaXMuY29udGV4dCA9PSAndXBsb2FkWmlwQ29kZXMnXCI+XHJcbiAgPGRpdiBjbGFzcz1cInVwbG9hZC1pbnB1dC1jb250YWluZXJcIj5cclxuICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlSW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXBsb2FkRmlsZUN0cmxcIiBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZVwiXHJcbiAgICAgIChjaGFuZ2UpPVwiYWRkVG9RdWV1ZSgkZXZlbnQpXCIgLz5cclxuICAgIDxpb24tYnV0dG9uIHNoYXBlPVwic3F1YXJlXCIgc2l6ZT1cImRlZmF1bHRcIiB0eXBlPVwic3VibWl0XCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiZmlsZUlucHV0LmNsaWNrKClcIj5cclxuICAgICAgVXBsb2FkIFppcCBDb2Rlc1xyXG4gICAgPC9pb24tYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L3NlY3Rpb24+XHJcbjwvZm9ybT4iXX0=
@@ -35,7 +35,10 @@ export class MyProfilePage {
35
35
  this.popup.dismiss(null);
36
36
  }
37
37
  logout() {
38
- if (this.ls.isCsr()) {
38
+ if (this.util.getContextRoot() === '/audit') {
39
+ this.util.openPageByContextRoot('/audit', "landing", this.nav);
40
+ }
41
+ else if (this.ls.isCsr()) {
39
42
  this.util.openPageByContextRoot(this.util.getSecurityAppContextRoot(), "landing", this.nav);
40
43
  }
41
44
  else {
@@ -131,4 +134,4 @@ export class MyProfilePage {
131
134
  args: [{ selector: 'app-my-profile', template: "<ion-content>\r\n\r\n <ion-card style=\"margin: 0px;\">\r\n <ion-card-header class=\"ion-padding\" style=\"font-size:large\">\r\n <ion-label color=\"dark\">My Profile</ion-label>\r\n </ion-card-header>\r\n <ion-card-content>\r\n <br/>\r\n <div class=\"ion-padding app-box\">\r\n <ion-row>\r\n <ion-col>\r\n <ion-label>First Name</ion-label><br/>\r\n <ion-label color=\"dark\">{{ls.getUser().firstName}}</ion-label>\r\n </ion-col>\r\n <ion-col>\r\n <ion-label>Middle Name</ion-label><br/>\r\n <ion-label color=\"dark\" *ngIf=\"ls.getUser().middleName\">{{ls.getUser().middleName}}</ion-label>\r\n <ion-label color=\"dark\" *ngIf=\"!ls.getUser().middleName\">--</ion-label>\r\n </ion-col>\r\n <ion-col>\r\n <ion-label>Last Name</ion-label><br/>\r\n <ion-label color=\"dark\">{{ls.getUser().lastName}}</ion-label>\r\n </ion-col>\r\n </ion-row>\r\n <br/>\r\n <ion-row>\r\n <ion-col>\r\n <ion-label>User ID</ion-label><br/>\r\n <ion-label color=\"dark\">{{ls.getUser().username}}</ion-label>\r\n </ion-col>\r\n <ion-col>\r\n <ion-label>Email</ion-label><br/>\r\n <ion-label color=\"dark\">{{ls.getUser().emailId}}</ion-label>\r\n </ion-col>\r\n <ion-col>\r\n <ion-label>Email Status</ion-label><br/>\r\n <ion-label color=\"dark\">{{statusEnum[ls.getUser().emailStatus]}}</ion-label>\r\n </ion-col>\r\n </ion-row>\r\n <br/>\r\n <ion-row>\r\n <ion-col>\r\n <ion-label>Password Expiration Date</ion-label><br/>\r\n <ion-label color=\"dark\">{{util.getDateInMMDDYYYYFormat(util.getEnteredDate(ls.getUser().passwordExpirationDate))}}</ion-label>\r\n </ion-col>\r\n <ion-col>\r\n </ion-col>\r\n <ion-col>\r\n <ion-button (click)=\"logout()\" pTooltip=\"Logout\" tooltipPosition=\"bottom\" size=\"small\" fill=\"outline\" shape=\"round\">\r\n <ion-icon slot=\"start\" name=\"log-out-sharp\"></ion-icon>\r\n Logout\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </div>\r\n </ion-card-content>\r\n </ion-card>\r\n \r\n</ion-content>\r\n" }]
132
135
  }], () => [{ type: i1.PopoverController }, { type: i2.LoginService }, { type: i3.UtilService }, { type: i1.NavParams }, { type: i1.NavController }], null); })();
133
136
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MyProfilePage, { className: "MyProfilePage", filePath: "lib\\pages\\popovers\\my-profile\\my-profile.page.ts", lineNumber: 12 }); })();
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcHJvZmlsZS5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9wYWdlcy9wb3BvdmVycy9teS1wcm9maWxlL215LXByb2ZpbGUucGFnZS50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvcGFnZXMvcG9wb3ZlcnMvbXktcHJvZmlsZS9teS1wcm9maWxlLnBhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7SUNjbkQsb0NBQXdEO0lBQUEsWUFBMkI7SUFBQSxpQkFBWTs7O0lBQXZDLGVBQTJCO0lBQTNCLG9EQUEyQjs7O0lBQ25GLG9DQUF5RDtJQUFBLGtCQUFFO0lBQUEsaUJBQVk7O0FETnJGLE1BQU0sT0FBTyxhQUFhO0lBSXhCLFlBQW1CLEtBQXdCLEVBQVMsRUFBaUIsRUFBUyxJQUFpQixFQUFTLFNBQW1CLEVBQVMsR0FBbUI7UUFBcEksVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFlO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFTLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFnQjtRQUZ2SixlQUFVLEdBQTJCLGVBQWUsQ0FBQztJQUVzRyxDQUFDO0lBRTVKLFFBQVE7SUFDUixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFDO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0Y7YUFDRztZQUNILElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDOzhFQXRCVSxhQUFhO29FQUFiLGFBQWE7WUNYMUIsbUNBQWEsa0JBQUEseUJBQUEsbUJBQUE7WUFJZ0IsMEJBQVU7WUFBQSxpQkFBWSxFQUFBO1lBRS9DLHdDQUFrQjtZQUNoQixxQkFBSztZQUNMLDhCQUFpQyxjQUFBLGNBQUEsaUJBQUE7WUFHZCwyQkFBVTtZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDdEMscUNBQXdCO1lBQUEsYUFBMEI7WUFBQSxpQkFBWSxFQUFBO1lBRWhFLGdDQUFTLGlCQUFBO1lBQ0ksNEJBQVc7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3ZDLDRFQUErRiwrREFBQTtZQUVqRyxpQkFBVTtZQUNWLGdDQUFTLGlCQUFBO1lBQ0ksMEJBQVM7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3JDLHFDQUF3QjtZQUFBLGFBQXlCO1lBQUEsaUJBQVksRUFBQSxFQUFBO1lBR2pFLHNCQUFLO1lBQ0wsZ0NBQVMsZUFBQSxpQkFBQTtZQUVNLHdCQUFPO1lBQUEsaUJBQVk7WUFBQSxzQkFBSztZQUNuQyxxQ0FBd0I7WUFBQSxhQUF5QjtZQUFBLGlCQUFZLEVBQUE7WUFFL0QsZ0NBQVMsaUJBQUE7WUFDSSxzQkFBSztZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDakMscUNBQXdCO1lBQUEsYUFBd0I7WUFBQSxpQkFBWSxFQUFBO1lBRTlELGdDQUFTLGlCQUFBO1lBQ0ksNkJBQVk7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3hDLHFDQUF3QjtZQUFBLGFBQXdDO1lBQUEsaUJBQVksRUFBQSxFQUFBO1lBR2hGLHNCQUFLO1lBQ0wsZ0NBQVMsZUFBQSxpQkFBQTtZQUVNLHlDQUF3QjtZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDcEQscUNBQXdCO1lBQUEsYUFBMEY7WUFBQSxpQkFBWSxFQUFBO1lBRWhJLDJCQUNVO1lBQ1YsZ0NBQVMscUJBQUE7WUFDSywrRkFBUyxZQUFRLElBQUM7WUFDNUIsK0JBQXVEO1lBQ3ZELHlCQUNGO1lBQUEsaUJBQWEsRUFBQSxFQUFBLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1lBdkNXLGdCQUEwQjtZQUExQixnREFBMEI7WUFJekIsZUFBNkI7WUFBN0Isa0RBQTZCO1lBQzdCLGVBQThCO1lBQTlCLG1EQUE4QjtZQUkvQixlQUF5QjtZQUF6QiwrQ0FBeUI7WUFPekIsZUFBeUI7WUFBekIsK0NBQXlCO1lBSXpCLGVBQXdCO1lBQXhCLDhDQUF3QjtZQUl4QixlQUF3QztZQUF4QyxrRUFBd0M7WUFPeEMsZUFBMEY7WUFBMUYsd0hBQTBGOzs7aUZEaENuSCxhQUFhO2NBTHpCLFNBQVM7MkJBQ0UsZ0JBQWdCOztrRkFJZixhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvcG92ZXJDb250cm9sbGVyLCBOYXZQYXJhbXMsIE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBFbWFpbFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi8uLi9lbnVtcy9FbWFpbFN0YXR1c0VudW0nO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW15LXByb2ZpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbXktcHJvZmlsZS5wYWdlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9teS1wcm9maWxlLnBhZ2Uuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNeVByb2ZpbGVQYWdlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBzdGF0dXNFbnVtOiB0eXBlb2YgRW1haWxTdGF0dXNFbnVtID0gRW1haWxTdGF0dXNFbnVtO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwb3B1cDogUG9wb3ZlckNvbnRyb2xsZXIsIHB1YmxpYyBscyA6IExvZ2luU2VydmljZSwgcHVibGljIHV0aWw6IFV0aWxTZXJ2aWNlLCBwdWJsaWMgbmF2UGFyYW1zOk5hdlBhcmFtcywgcHVibGljIG5hdiA6IE5hdkNvbnRyb2xsZXIpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgY2xvc2UoKXtcbiAgICB0aGlzLnBvcHVwLmRpc21pc3MobnVsbCk7XG4gIH1cblxuICBsb2dvdXQoKXtcbiAgICBpZih0aGlzLmxzLmlzQ3NyKCkpe1xuICAgICAgdGhpcy51dGlsLm9wZW5QYWdlQnlDb250ZXh0Um9vdCh0aGlzLnV0aWwuZ2V0U2VjdXJpdHlBcHBDb250ZXh0Um9vdCgpLCBcImxhbmRpbmdcIiwgdGhpcy5uYXYpO1xuICAgIH1cbiAgICBlbHNle1xuICAgICB0aGlzLm5hdi5uYXZpZ2F0ZVJvb3QoJy9sYW5kaW5nJyk7XG4gICAgfVxuICAgIHRoaXMubHMubG9nb3V0KCk7XG4gICAgdGhpcy5wb3B1cC5kaXNtaXNzKG51bGwpO1xuICB9XG5cbn1cbiIsIjxpb24tY29udGVudD5cclxuXHJcbiAgPGlvbi1jYXJkIHN0eWxlPVwibWFyZ2luOiAwcHg7XCI+XHJcbiAgICA8aW9uLWNhcmQtaGVhZGVyIGNsYXNzPVwiaW9uLXBhZGRpbmdcIiBzdHlsZT1cImZvbnQtc2l6ZTpsYXJnZVwiPlxyXG4gICAgIDxpb24tbGFiZWwgY29sb3I9XCJkYXJrXCI+TXkgUHJvZmlsZTwvaW9uLWxhYmVsPlxyXG4gICAgPC9pb24tY2FyZC1oZWFkZXI+XHJcbiAgICA8aW9uLWNhcmQtY29udGVudD5cclxuICAgICAgPGJyLz5cclxuICAgICAgPGRpdiBjbGFzcz1cImlvbi1wYWRkaW5nIGFwcC1ib3hcIj5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPkZpcnN0IE5hbWU8L2lvbi1sYWJlbD48YnIvPlxyXG4gICAgICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJkYXJrXCI+e3tscy5nZXRVc2VyKCkuZmlyc3ROYW1lfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPk1pZGRsZSBOYW1lPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiICpuZ0lmPVwibHMuZ2V0VXNlcigpLm1pZGRsZU5hbWVcIj57e2xzLmdldFVzZXIoKS5taWRkbGVOYW1lfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiICpuZ0lmPVwiIWxzLmdldFVzZXIoKS5taWRkbGVOYW1lXCI+LS08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPkxhc3QgTmFtZTwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj57e2xzLmdldFVzZXIoKS5sYXN0TmFtZX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5Vc2VyIElEPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPnt7bHMuZ2V0VXNlcigpLnVzZXJuYW1lfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPkVtYWlsPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPnt7bHMuZ2V0VXNlcigpLmVtYWlsSWR9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxpb24tbGFiZWw+RW1haWwgU3RhdHVzPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPnt7c3RhdHVzRW51bVtscy5nZXRVc2VyKCkuZW1haWxTdGF0dXNdfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgICAgPGJyLz5cclxuICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPlBhc3N3b3JkIEV4cGlyYXRpb24gRGF0ZTwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj57e3V0aWwuZ2V0RGF0ZUluTU1ERFlZWVlGb3JtYXQodXRpbC5nZXRFbnRlcmVkRGF0ZShscy5nZXRVc2VyKCkucGFzc3dvcmRFeHBpcmF0aW9uRGF0ZSkpfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiAoY2xpY2spPVwibG9nb3V0KClcIiBwVG9vbHRpcD1cIkxvZ291dFwiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIHNpemU9XCJzbWFsbFwiIGZpbGw9XCJvdXRsaW5lXCIgc2hhcGU9XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJzdGFydFwiIG5hbWU9XCJsb2ctb3V0LXNoYXJwXCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgIExvZ291dFxyXG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICA8L2lvbi1jYXJkPlxyXG4gIFxyXG48L2lvbi1jb250ZW50PlxyXG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktcHJvZmlsZS5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9wYWdlcy9wb3BvdmVycy9teS1wcm9maWxlL215LXByb2ZpbGUucGFnZS50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvcGFnZXMvcG9wb3ZlcnMvbXktcHJvZmlsZS9teS1wcm9maWxlLnBhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7SUNjbkQsb0NBQXdEO0lBQUEsWUFBMkI7SUFBQSxpQkFBWTs7O0lBQXZDLGVBQTJCO0lBQTNCLG9EQUEyQjs7O0lBQ25GLG9DQUF5RDtJQUFBLGtCQUFFO0lBQUEsaUJBQVk7O0FETnJGLE1BQU0sT0FBTyxhQUFhO0lBSXhCLFlBQW1CLEtBQXdCLEVBQVMsRUFBaUIsRUFBUyxJQUFpQixFQUFTLFNBQW1CLEVBQVMsR0FBbUI7UUFBcEksVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFlO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFTLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFnQjtRQUZ2SixlQUFVLEdBQTJCLGVBQWUsQ0FBQztJQUVzRyxDQUFDO0lBRTVKLFFBQVE7SUFDUixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFHLFFBQVEsRUFBQztZQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hFO2FBQUssSUFBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFDO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0Y7YUFDRztZQUNILElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDOzhFQXhCVSxhQUFhO29FQUFiLGFBQWE7WUNYMUIsbUNBQWEsa0JBQUEseUJBQUEsbUJBQUE7WUFJZ0IsMEJBQVU7WUFBQSxpQkFBWSxFQUFBO1lBRS9DLHdDQUFrQjtZQUNoQixxQkFBSztZQUNMLDhCQUFpQyxjQUFBLGNBQUEsaUJBQUE7WUFHZCwyQkFBVTtZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDdEMscUNBQXdCO1lBQUEsYUFBMEI7WUFBQSxpQkFBWSxFQUFBO1lBRWhFLGdDQUFTLGlCQUFBO1lBQ0ksNEJBQVc7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3ZDLDRFQUErRiwrREFBQTtZQUVqRyxpQkFBVTtZQUNWLGdDQUFTLGlCQUFBO1lBQ0ksMEJBQVM7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3JDLHFDQUF3QjtZQUFBLGFBQXlCO1lBQUEsaUJBQVksRUFBQSxFQUFBO1lBR2pFLHNCQUFLO1lBQ0wsZ0NBQVMsZUFBQSxpQkFBQTtZQUVNLHdCQUFPO1lBQUEsaUJBQVk7WUFBQSxzQkFBSztZQUNuQyxxQ0FBd0I7WUFBQSxhQUF5QjtZQUFBLGlCQUFZLEVBQUE7WUFFL0QsZ0NBQVMsaUJBQUE7WUFDSSxzQkFBSztZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDakMscUNBQXdCO1lBQUEsYUFBd0I7WUFBQSxpQkFBWSxFQUFBO1lBRTlELGdDQUFTLGlCQUFBO1lBQ0ksNkJBQVk7WUFBQSxpQkFBWTtZQUFBLHNCQUFLO1lBQ3hDLHFDQUF3QjtZQUFBLGFBQXdDO1lBQUEsaUJBQVksRUFBQSxFQUFBO1lBR2hGLHNCQUFLO1lBQ0wsZ0NBQVMsZUFBQSxpQkFBQTtZQUVNLHlDQUF3QjtZQUFBLGlCQUFZO1lBQUEsc0JBQUs7WUFDcEQscUNBQXdCO1lBQUEsYUFBMEY7WUFBQSxpQkFBWSxFQUFBO1lBRWhJLDJCQUNVO1lBQ1YsZ0NBQVMscUJBQUE7WUFDSywrRkFBUyxZQUFRLElBQUM7WUFDNUIsK0JBQXVEO1lBQ3ZELHlCQUNGO1lBQUEsaUJBQWEsRUFBQSxFQUFBLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1lBdkNXLGdCQUEwQjtZQUExQixnREFBMEI7WUFJekIsZUFBNkI7WUFBN0Isa0RBQTZCO1lBQzdCLGVBQThCO1lBQTlCLG1EQUE4QjtZQUkvQixlQUF5QjtZQUF6QiwrQ0FBeUI7WUFPekIsZUFBeUI7WUFBekIsK0NBQXlCO1lBSXpCLGVBQXdCO1lBQXhCLDhDQUF3QjtZQUl4QixlQUF3QztZQUF4QyxrRUFBd0M7WUFPeEMsZUFBMEY7WUFBMUYsd0hBQTBGOzs7aUZEaENuSCxhQUFhO2NBTHpCLFNBQVM7MkJBQ0UsZ0JBQWdCOztrRkFJZixhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBvcG92ZXJDb250cm9sbGVyLCBOYXZQYXJhbXMsIE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBFbWFpbFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi8uLi9lbnVtcy9FbWFpbFN0YXR1c0VudW0nO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWwvdXRpbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW15LXByb2ZpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbXktcHJvZmlsZS5wYWdlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9teS1wcm9maWxlLnBhZ2Uuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNeVByb2ZpbGVQYWdlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBzdGF0dXNFbnVtOiB0eXBlb2YgRW1haWxTdGF0dXNFbnVtID0gRW1haWxTdGF0dXNFbnVtO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwb3B1cDogUG9wb3ZlckNvbnRyb2xsZXIsIHB1YmxpYyBscyA6IExvZ2luU2VydmljZSwgcHVibGljIHV0aWw6IFV0aWxTZXJ2aWNlLCBwdWJsaWMgbmF2UGFyYW1zOk5hdlBhcmFtcywgcHVibGljIG5hdiA6IE5hdkNvbnRyb2xsZXIpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICB9XG5cbiAgY2xvc2UoKXtcbiAgICB0aGlzLnBvcHVwLmRpc21pc3MobnVsbCk7XG4gIH1cblxuICBsb2dvdXQoKXtcbiAgICBpZih0aGlzLnV0aWwuZ2V0Q29udGV4dFJvb3QoKT09PScvYXVkaXQnKXtcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QoJy9hdWRpdCcsIFwibGFuZGluZ1wiLCB0aGlzLm5hdik7XG4gICAgfWVsc2UgaWYodGhpcy5scy5pc0NzcigpKXtcbiAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QodGhpcy51dGlsLmdldFNlY3VyaXR5QXBwQ29udGV4dFJvb3QoKSwgXCJsYW5kaW5nXCIsIHRoaXMubmF2KTtcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgdGhpcy5uYXYubmF2aWdhdGVSb290KCcvbGFuZGluZycpO1xuICAgIH1cbiAgICB0aGlzLmxzLmxvZ291dCgpO1xuICAgIHRoaXMucG9wdXAuZGlzbWlzcyhudWxsKTtcbiAgfVxuXG59XG4iLCI8aW9uLWNvbnRlbnQ+XHJcblxyXG4gIDxpb24tY2FyZCBzdHlsZT1cIm1hcmdpbjogMHB4O1wiPlxyXG4gICAgPGlvbi1jYXJkLWhlYWRlciBjbGFzcz1cImlvbi1wYWRkaW5nXCIgc3R5bGU9XCJmb250LXNpemU6bGFyZ2VcIj5cclxuICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPk15IFByb2ZpbGU8L2lvbi1sYWJlbD5cclxuICAgIDwvaW9uLWNhcmQtaGVhZGVyPlxyXG4gICAgPGlvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDxici8+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpb24tcGFkZGluZyBhcHAtYm94XCI+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5GaXJzdCBOYW1lPC9pb24tbGFiZWw+PGJyLz5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsIGNvbG9yPVwiZGFya1wiPnt7bHMuZ2V0VXNlcigpLmZpcnN0TmFtZX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5NaWRkbGUgTmFtZTwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIiAqbmdJZj1cImxzLmdldFVzZXIoKS5taWRkbGVOYW1lXCI+e3tscy5nZXRVc2VyKCkubWlkZGxlTmFtZX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIiAqbmdJZj1cIiFscy5nZXRVc2VyKCkubWlkZGxlTmFtZVwiPi0tPC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5MYXN0IE5hbWU8L2lvbi1sYWJlbD48YnIvPlxyXG4gICAgICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJkYXJrXCI+e3tscy5nZXRVc2VyKCkubGFzdE5hbWV9fTwvaW9uLWxhYmVsPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgIDxpb24tY29sPlxyXG4gICAgICAgICAgICAgIDxpb24tbGFiZWw+VXNlciBJRDwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj57e2xzLmdldFVzZXIoKS51c2VybmFtZX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5FbWFpbDwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj57e2xzLmdldFVzZXIoKS5lbWFpbElkfX08L2lvbi1sYWJlbD5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8aW9uLWNvbD5cclxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPkVtYWlsIFN0YXR1czwvaW9uLWxhYmVsPjxici8+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbCBjb2xvcj1cImRhcmtcIj57e3N0YXR1c0VudW1bbHMuZ2V0VXNlcigpLmVtYWlsU3RhdHVzXX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1sYWJlbD5QYXNzd29yZCBFeHBpcmF0aW9uIERhdGU8L2lvbi1sYWJlbD48YnIvPlxyXG4gICAgICAgICAgICAgIDxpb24tbGFiZWwgY29sb3I9XCJkYXJrXCI+e3t1dGlsLmdldERhdGVJbk1NRERZWVlZRm9ybWF0KHV0aWwuZ2V0RW50ZXJlZERhdGUobHMuZ2V0VXNlcigpLnBhc3N3b3JkRXhwaXJhdGlvbkRhdGUpKX19PC9pb24tbGFiZWw+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPGlvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPGlvbi1idXR0b24gKGNsaWNrKT1cImxvZ291dCgpXCIgcFRvb2x0aXA9XCJMb2dvdXRcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiBzaXplPVwic21hbGxcIiBmaWxsPVwib3V0bGluZVwiIHNoYXBlPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBzbG90PVwic3RhcnRcIiBuYW1lPVwibG9nLW91dC1zaGFycFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICBMb2dvdXRcclxuICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2lvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgPC9pb24tY2FyZD5cclxuICBcclxuPC9pb24tY29udGVudD5cclxuIl19
@@ -3223,7 +3223,10 @@ class MyProfilePage {
3223
3223
  this.popup.dismiss(null);
3224
3224
  }
3225
3225
  logout() {
3226
- if (this.ls.isCsr()) {
3226
+ if (this.util.getContextRoot() === '/audit') {
3227
+ this.util.openPageByContextRoot('/audit', "landing", this.nav);
3228
+ }
3229
+ else if (this.ls.isCsr()) {
3227
3230
  this.util.openPageByContextRoot(this.util.getSecurityAppContextRoot(), "landing", this.nav);
3228
3231
  }
3229
3232
  else {
@@ -11114,9 +11117,17 @@ class FileUploaderComponent {
11114
11117
  }
11115
11118
  async uploadToTaxAudit(event) {
11116
11119
  const file = event.target.files[0];
11117
- const base64 = await this.fileToBase64(file);
11120
+ const fileName = file.name;
11118
11121
  let corId;
11119
11122
  this.showProgress = true;
11123
+ const allowedExtensions = this.allowedFileType;
11124
+ const allowedMimeTypes = this.mimeType;
11125
+ const extension = fileName.substring(fileName.lastIndexOf("."));
11126
+ if (allowedExtensions !== extension || allowedMimeTypes !== file.type) {
11127
+ this.util.showError("Invalid file type.");
11128
+ return false;
11129
+ }
11130
+ const base64 = await this.fileToBase64(file);
11120
11131
  this.as.getCorrId().subscribe((res) => {
11121
11132
  corId = res;
11122
11133
  let req = {
@@ -11128,7 +11139,7 @@ class FileUploaderComponent {
11128
11139
  "corrId": res,
11129
11140
  "direction": "INBOUND",
11130
11141
  "docCode": `signature_${corId}`,
11131
- "mimeType": this.mimeType,
11142
+ "mimeType": file.type,
11132
11143
  "title": "signature",
11133
11144
  }
11134
11145
  ]