ngx-histaff-alpha 1.6.3 → 1.6.5

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.
@@ -64,7 +64,7 @@ export class ResponseInterceptor {
64
64
  It is highly recommended to change the back end code. Otherwise your code might not work, or does work but NOT CORRECTLY!
65
65
  `, noneAutoClosedAlertOptions);
66
66
  }
67
- if (isDevMode() && event.url?.toLowerCase().indexOf('/api/grpc') > 0) {
67
+ if (event.url?.toLowerCase().indexOf('/api/grpc') > 0) {
68
68
  const newInnerBody = this.grpcService.convertToCamelCase(JSON.parse(event.body?.innerBody));
69
69
  return event.clone({ body: {
70
70
  ...event.body,
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
87
87
  providedIn: 'root'
88
88
  }]
89
89
  }], ctorParameters: () => [{ type: i1.AlertService }, { type: i2.AppConfigService }, { type: i3.ResponseService }, { type: i4.GrpcService }, { type: i5.MultiLanguageService }] });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9odHRwLWludGVyY2VwdG9ycy9yZXNwb25zZS1pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQ21ELFlBQVksRUFDckUsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixPQUFPLEVBQWMsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7OztBQVV2RSxNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLFlBQ1ksWUFBMEIsRUFDMUIsZ0JBQWtDLEVBQ2xDLGVBQWdDLEVBQ2hDLFdBQXdCLEVBQ3hCLEdBQXlCO1FBSnpCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFFBQUcsR0FBSCxHQUFHLENBQXNCO0lBQUksQ0FBQztJQUUxQyxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUs5QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUN4QixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksWUFBWSxDQUFDLEVBQzlDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNSLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRTtnQkFDL0IsSUFBSSxJQUFJLEdBQVEsSUFBSSxDQUFDO2dCQUVyQixJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUks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QUZoQixNQUFNOzsyRkFFVCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBIdHRwSW50ZXJjZXB0b3IsIEh0dHBIYW5kbGVyLCBIdHRwUmVxdWVzdCwgSHR0cEV2ZW50LCBIdHRwUmVzcG9uc2VcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9saWJyYXJpZXMvYWxlcnQvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zIH0gZnJvbSAnLi4vY29uc3RhbnRzL2FsZXJ0T3B0aW9ucyc7XHJcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZXNwb25zZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZXNwb25zZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlJztcclxuaW1wb3J0IHsgR3JwY1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ncnBjLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNwb25zZUludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlU2VydmljZTogUmVzcG9uc2VTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgZ3JwY1NlcnZpY2U6IEdycGNTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSkgeyB9XHJcblxyXG4gICAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXHJcbiAgICAgICAgICAgIG1hcChldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgYm9keTogYW55ID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50Lm9rICYmIGV2ZW50LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkgPSBldmVudC5ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlU2VydmljZS5yZXNvbHZlKGJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoSlNPTi5zdHJpbmdpZnkoZXZlbnQsIG51bGwsIDIpLCBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucylcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpICYmIGV2ZW50LnVybD8uaW5kZXhPZihgJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQkFTRV9VUkx9L3N0YXRpYy9leGNlbC10ZW1wbGF0ZXMvYCkhIDwgMCAmJiBldmVudC5vayAmJiBldmVudC5zdGF0dXMgPT09IDIwMCAmJiAoZXZlbnQuYm9keS5pbm5lckJvZHk/LmlubmVyQm9keSAhPT0gdW5kZWZpbmVkKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihgXHJcbiAgICAgICAgICAgICAgICAgICAgTmVzdGVkIGlubmVyQm9keSBmcm9tICR7ZXZlbnQudXJsfSByZXNwb25zZVxyXG4gICAgICAgICAgICAgICAgICAgIGlubmVyQm9keSBi4buLIGzhu5NuZyB0cm9uZyBwaOG6o24gaOG7k2kgdOG7qyAke2V2ZW50LnVybH0gIFxyXG4gICAgICAgICAgICAgICAgICAgIGAsIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zKVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZXZNb2RlKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGAke3RoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTH0vc3RhdGljL2V4Y2VsLXRlbXBsYXRlcy9gKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgWGxzeC9HZW5lcmF0ZVRlbXBsYXRlYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFhsc3gvRXhwb3J0Q29yZVBhZ2VMaXN0R3JpZFRvRXhjZWxgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgWGxzeC9JbXBvcnRYbHN4VG9EYmApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBYbHN4UmVwb3J0L0dldFJlcG9ydGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBHZXQyQ19UQ1RXXzk4YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEdldDJDX0JOVl8yMDA4YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50Q29udHJhY3RJbmZvYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50SHVXb3JraW5nYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEV4cG9ydFRlbXBJbXBvcnRTYWxhcnlgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgRXhwb3J0VGVtcEltcG9ydFRpbWVTaGVldGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRUaW1lU2hlZXREYWlseWApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBFeHBvcnRUZW1wSW1wb3J0U2hpZnRTb3J0YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEltcG9ydFNoaWZ0U29ydGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnREZWNsYXJlU2VuaW9yaXR5YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEV4cG9ydFRlbXBJbXBvcnRCYXNpY2ApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRSZWdpc3RlckxlYXZlYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEltcG9ydFJlZ2lzdGVyT1RgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgRXhwb3J0VGVtcGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRUZW1wYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEZpbGVEb3dubG9hZGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQub2sgJiYgZXZlbnQuc3RhdHVzID09PSAyMDAgJiYgKGV2ZW50LmJvZHkuaW5uZXJCb2R5ID09PSB1bmRlZmluZWQgfHwgZXZlbnQuYm9keS5lcnJvclR5cGUgPT09IHVuZGVmaW5lZCB8fCBldmVudC5ib2R5Lm1lc3NhZ2VDb2RlID09PSB1bmRlZmluZWQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKGBcclxuICAgICAgICAgICAgICAgICAgICBJdCBsb29rcyBsaWtlIEFQSSBjb250cm9sbGVyIHdpdGggZW5kcG9pbnQgJHtldmVudC51cmx9IGRvZXMgbm90IGZvbGxvdyB0aGUgcnVsZSBvZiB0aGUgQXBwIChtdXN0IHJldHVybiBPayhGb3JtYXRlZFJlc3BvbnNlKSlcclxuICAgICAgICAgICAgICAgICAgICBJdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdG8gY2hhbmdlIHRoZSBiYWNrIGVuZCBjb2RlLiBPdGhlcndpc2UgeW91ciBjb2RlIG1pZ2h0IG5vdCB3b3JrLCBvciBkb2VzIHdvcmsgYnV0IE5PVCBDT1JSRUNUTFkhXHJcbiAgICAgICAgICAgICAgICAgICAgYCwgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZXZNb2RlKCkgJiYgZXZlbnQudXJsPy50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJy9hcGkvZ3JwYycpISA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3SW5uZXJCb2R5ID0gdGhpcy5ncnBjU2VydmljZS5jb252ZXJ0VG9DYW1lbENhc2UoSlNPTi5wYXJzZSgoZXZlbnQuYm9keSBhcyBJRm9ybWF0ZWRSZXNwb25zZSk/LmlubmVyQm9keSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQuY2xvbmUoeyBib2R5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5ldmVudC5ib2R5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5uZXJCb2R5OiBuZXdJbm5lckJvZHlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX0pXHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQ7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufSJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9odHRwLWludGVyY2VwdG9ycy9yZXNwb25zZS1pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQ21ELFlBQVksRUFDckUsTUFBTSxzQkFBc0IsQ0FBQztBQUc5QixPQUFPLEVBQWMsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7OztBQVV2RSxNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLFlBQ1ksWUFBMEIsRUFDMUIsZ0JBQWtDLEVBQ2xDLGVBQWdDLEVBQ2hDLFdBQXdCLEVBQ3hCLEdBQXlCO1FBSnpCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFFBQUcsR0FBSCxHQUFHLENBQXNCO0lBQUksQ0FBQztJQUUxQyxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUs5QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUN4QixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksWUFBWSxDQUFDLEVBQzlDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNSLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRTtnQkFDL0IsSUFBSSxJQUFJLEdBQVEsSUFBSSxDQUFDO2dCQUVyQixJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUks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VCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBIdHRwSW50ZXJjZXB0b3IsIEh0dHBIYW5kbGVyLCBIdHRwUmVxdWVzdCwgSHR0cEV2ZW50LCBIdHRwUmVzcG9uc2VcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9saWJyYXJpZXMvYWxlcnQvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zIH0gZnJvbSAnLi4vY29uc3RhbnRzL2FsZXJ0T3B0aW9ucyc7XHJcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZXNwb25zZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZXNwb25zZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlJztcclxuaW1wb3J0IHsgR3JwY1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ncnBjLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNwb25zZUludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlU2VydmljZTogUmVzcG9uc2VTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgZ3JwY1NlcnZpY2U6IEdycGNTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSkgeyB9XHJcblxyXG4gICAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXHJcbiAgICAgICAgICAgIG1hcChldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgYm9keTogYW55ID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50Lm9rICYmIGV2ZW50LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkgPSBldmVudC5ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc3BvbnNlU2VydmljZS5yZXNvbHZlKGJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoSlNPTi5zdHJpbmdpZnkoZXZlbnQsIG51bGwsIDIpLCBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucylcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpICYmIGV2ZW50LnVybD8uaW5kZXhPZihgJHt0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQkFTRV9VUkx9L3N0YXRpYy9leGNlbC10ZW1wbGF0ZXMvYCkhIDwgMCAmJiBldmVudC5vayAmJiBldmVudC5zdGF0dXMgPT09IDIwMCAmJiAoZXZlbnQuYm9keS5pbm5lckJvZHk/LmlubmVyQm9keSAhPT0gdW5kZWZpbmVkKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihgXHJcbiAgICAgICAgICAgICAgICAgICAgTmVzdGVkIGlubmVyQm9keSBmcm9tICR7ZXZlbnQudXJsfSByZXNwb25zZVxyXG4gICAgICAgICAgICAgICAgICAgIGlubmVyQm9keSBi4buLIGzhu5NuZyB0cm9uZyBwaOG6o24gaOG7k2kgdOG7qyAke2V2ZW50LnVybH0gIFxyXG4gICAgICAgICAgICAgICAgICAgIGAsIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zKVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNEZXZNb2RlKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGAke3RoaXMuYXBwQ29uZmlnU2VydmljZS5CQVNFX1VSTH0vc3RhdGljL2V4Y2VsLXRlbXBsYXRlcy9gKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgWGxzeC9HZW5lcmF0ZVRlbXBsYXRlYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFhsc3gvRXhwb3J0Q29yZVBhZ2VMaXN0R3JpZFRvRXhjZWxgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgWGxzeC9JbXBvcnRYbHN4VG9EYmApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBYbHN4UmVwb3J0L0dldFJlcG9ydGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBHZXQyQ19UQ1RXXzk4YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEdldDJDX0JOVl8yMDA4YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50Q29udHJhY3RJbmZvYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50SHVXb3JraW5nYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEV4cG9ydFRlbXBJbXBvcnRTYWxhcnlgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgRXhwb3J0VGVtcEltcG9ydFRpbWVTaGVldGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRUaW1lU2hlZXREYWlseWApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBFeHBvcnRUZW1wSW1wb3J0U2hpZnRTb3J0YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEltcG9ydFNoaWZ0U29ydGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnREZWNsYXJlU2VuaW9yaXR5YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEV4cG9ydFRlbXBJbXBvcnRCYXNpY2ApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRSZWdpc3RlckxlYXZlYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEltcG9ydFJlZ2lzdGVyT1RgKSEgPCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYmIGV2ZW50LnVybD8uaW5kZXhPZihgRXhwb3J0VGVtcGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQudXJsPy5pbmRleE9mKGBJbXBvcnRUZW1wYCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYFByaW50YCkhIDwgMFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiBldmVudC51cmw/LmluZGV4T2YoYEZpbGVEb3dubG9hZGApISA8IDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJiYgZXZlbnQub2sgJiYgZXZlbnQuc3RhdHVzID09PSAyMDAgJiYgKGV2ZW50LmJvZHkuaW5uZXJCb2R5ID09PSB1bmRlZmluZWQgfHwgZXZlbnQuYm9keS5lcnJvclR5cGUgPT09IHVuZGVmaW5lZCB8fCBldmVudC5ib2R5Lm1lc3NhZ2VDb2RlID09PSB1bmRlZmluZWQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKGBcclxuICAgICAgICAgICAgICAgICAgICBJdCBsb29rcyBsaWtlIEFQSSBjb250cm9sbGVyIHdpdGggZW5kcG9pbnQgJHtldmVudC51cmx9IGRvZXMgbm90IGZvbGxvdyB0aGUgcnVsZSBvZiB0aGUgQXBwIChtdXN0IHJldHVybiBPayhGb3JtYXRlZFJlc3BvbnNlKSlcclxuICAgICAgICAgICAgICAgICAgICBJdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdG8gY2hhbmdlIHRoZSBiYWNrIGVuZCBjb2RlLiBPdGhlcndpc2UgeW91ciBjb2RlIG1pZ2h0IG5vdCB3b3JrLCBvciBkb2VzIHdvcmsgYnV0IE5PVCBDT1JSRUNUTFkhXHJcbiAgICAgICAgICAgICAgICAgICAgYCwgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQudXJsPy50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJy9hcGkvZ3JwYycpISA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3SW5uZXJCb2R5ID0gdGhpcy5ncnBjU2VydmljZS5jb252ZXJ0VG9DYW1lbENhc2UoSlNPTi5wYXJzZSgoZXZlbnQuYm9keSBhcyBJRm9ybWF0ZWRSZXNwb25zZSk/LmlubmVyQm9keSkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQuY2xvbmUoeyBib2R5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5ldmVudC5ib2R5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5uZXJCb2R5OiBuZXdJbm5lckJvZHlcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX0pXHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZXZlbnQ7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufSJdfQ==
@@ -41,14 +41,16 @@ export class TokenInterceptor {
41
41
  console.log("app.config.json excluded");
42
42
  return next.handle(req);
43
43
  }
44
+ /* WHY???
44
45
  if (req.url.includes("GenerateTemplate")) {
45
- console.log("GenerateTemplate excluded");
46
+ console.log("GenerateTemplate excluded")
46
47
  return next.handle(req);
47
48
  }
48
49
  if (req.url.includes("ExportCorePageListGridToExcel")) {
49
- console.log("ExportCorePageListGridToExcel excluded");
50
+ console.log("ExportCorePageListGridToExcel excluded")
50
51
  return next.handle(req);
51
52
  }
53
+ */
52
54
  let ok;
53
55
  // extend server response observable with logging
54
56
  return next.handle(req)
@@ -98,7 +100,7 @@ export class TokenInterceptor {
98
100
  switchMap(() => next.handle(this.addAuthenticationToken(req))));
99
101
  }
100
102
  else {
101
- console.error(response.error?.message.toUpperCase() || response);
103
+ console.error(response.error?.message?.toUpperCase() || response);
102
104
  this.refreshTokenInProgress = true;
103
105
  // Set the refreshTokenSubject to null
104
106
  // so that subsequent API calls will wait
@@ -147,4 +149,4 @@ export class TokenInterceptor {
147
149
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: TokenInterceptor, decorators: [{
148
150
  type: Injectable
149
151
  }], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.AppInitializationService }, { type: i3.Router }] });
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4taW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9odHRwLWludGVyY2VwdG9ycy90b2tlbi1pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0VBR0U7QUFFRixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGVBQWUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTzNFLE9BQU8sRUFDd0MsWUFBWSxFQUMxRCxNQUFNLHNCQUFzQixDQUFDOzs7OztBQUc5QixNQUFNLE9BQU8sZ0JBQWdCO0lBRXpCLHNCQUFzQixDQUFDLE9BQXlCO1FBQzVDLHNDQUFzQztRQUN0QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFN0QsZ0VBQWdFO1FBQ2hFLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2QsT0FBTyxPQUFPLENBQUM7U0FDbEI7UUFFRCxrRUFBa0U7UUFDbEUsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsU0FBUyxHQUFHLFdBQVcsQ0FBQztTQUN6RSxDQUFDLENBQUM7SUFDUCxDQUFDO0lBU0QsWUFDWSxXQUF3QixFQUN4Qix3QkFBa0QsRUFDbEQsTUFBYztRQUZkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsV0FBTSxHQUFOLE1BQU0sQ0FB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QztvQkFDTCxDQUFDLENBQUMsQ0FBQTtvQkFFRixPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUM1QyxDQUFDLENBQUMsQ0FDTCxDQUFBO2FBQ0o7UUFDTCxDQUFDLENBQUM7UUFDRiwwREFBMEQ7UUFDMUQsUUFBUSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUN0QixDQUFDO0lBQ1YsQ0FBQzs4R0F6S1EsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG5UYW5udjogVGhpcyBjb2RlIGlzIGJhc2VkIG9uIHRoZSBvcmlnaW5hbCBibG9nIHBvc3Qgb2YgQWxleGFuZHJ1IEJlcmVnaGljaVxyXG5odHRwczovL2l0bmV4dC5pby9hbmd1bGFyLXR1dG9yaWFsLWltcGxlbWVudC1yZWZyZXNoLXRva2VuLXdpdGgtaHR0cGludGVyY2VwdG9yLWJmYTI3Yjk2NmY1N1xyXG4qL1xyXG5cclxuaW1wb3J0IHsgZmlsdGVyLCBmaW5hbGl6ZSwgc3dpdGNoTWFwLCB0YXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0LCB0aHJvd0Vycm9yLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEh0dHBFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwSW5pdGlhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBwLWluaXRpYWxpemF0aW9uLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIEh0dHBJbnRlcmNlcHRvciwgSHR0cEhhbmRsZXIsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2VcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUb2tlbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuXHJcbiAgICBhZGRBdXRoZW50aWNhdGlvblRva2VuKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pOiBIdHRwUmVxdWVzdDxhbnk+IHtcclxuICAgICAgICAvLyBHZXQgYWNjZXNzIHRva2VuIGZyb20gTG9jYWwgU3RvcmFnZVxyXG4gICAgICAgIGNvbnN0IGFjY2Vzc1Rva2VuID0gdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKTtcclxuXHJcbiAgICAgICAgLy8gSWYgYWNjZXNzIHRva2VuIGlzIG51bGwgdGhpcyBtZWFucyB0aGF0IHVzZXIgaXMgbm90IGxvZ2dlZCBpblxyXG4gICAgICAgIC8vIEFuZCB3ZSByZXR1cm4gdGhlIG9yaWdpbmFsIHJlcXVlc3RcclxuICAgICAgICBpZiAoIWFjY2Vzc1Rva2VuKSB7XHJcbiAgICAgICAgICAgIHJldHVybiByZXF1ZXN0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gV2UgY2xvbmUgdGhlIHJlcXVlc3QsIGJlY2F1c2UgdGhlIG9yaWdpbmFsIHJlcXVlc3QgaXMgaW1tdXRhYmxlXHJcbiAgICAgICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xyXG4gICAgICAgICAgICBoZWFkZXJzOiByZXF1ZXN0LmhlYWRlcnMuc2V0KCdBdXRob3JpemF0aW9uJywgJ0JlYXJlciAnICsgYWNjZXNzVG9rZW4pXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XHJcbiAgICAvLyBSZWZyZXNoIFRva2VuIFN1YmplY3QgdHJhY2tzIHRoZSBjdXJyZW50IHRva2VuLCBcclxuICAgIC8vIG9yIGlzIG51bGwgaWYgbm8gdG9rZW4gaXMgY3VycmVudGx5IGF2YWlsYWJsZSAoZS5nLiByZWZyZXNoIHBlbmRpbmcpLlxyXG4gICAgcHJpdmF0ZSByZWZyZXNoVG9rZW5TdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8YW55PiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihcclxuICAgICAgICBudWxsXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgYXBwSW5pdGlhbGl6YXRpb25TZXJ2aWNlOiBBcHBJbml0aWFsaXphdGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XHJcblxyXG4gICAgICAgIGlmIChyZXEudXJsID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAocmVxLnVybC5pbmNsdWRlcyhcImFwcC5jb25maWcuanNvblwiKSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImFwcC5jb25maWcuanNvbiBleGNsdWRlZFwiKVxyXG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlcS51cmwuaW5jbHVkZXMoXCJHZW5lcmF0ZVRlbXBsYXRlXCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiR2VuZXJhdGVUZW1wbGF0ZSBleGNsdWRlZFwiKVxyXG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlcS51cmwuaW5jbHVkZXMoXCJFeHBvcnRDb3JlUGFnZUxpc3RHcmlkVG9FeGNlbFwiKSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkV4cG9ydENvcmVQYWdlTGlzdEdyaWRUb0V4Y2VsIGV4Y2x1ZGVkXCIpXHJcbiAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IG9rOiBzdHJpbmc7XHJcbiAgICAgICAgLy8gZXh0ZW5kIHNlcnZlciByZXNwb25zZSBvYnNlcnZhYmxlIHdpdGggbG9nZ2luZ1xyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFwKHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBTdWNjZWVkcyB3aGVuIHRoZXJlIGlzIGEgcmVzcG9uc2U7IGlnbm9yZSBvdGhlciBldmVudHNcclxuICAgICAgICAgICAgICAgICAgICBuZXh0OiBldmVudCA9PiAob2sgPSBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSA/ICdzdWNjZWVkZWQnIDogJycpLFxyXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiAoKSA9PiB7IH0gLy8gd2UgZG8gbm90IGltcGxlbWVudCB0aGUgbG9naWMgaGVyZVxyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAvLyBCdXQgaGVyZTpcclxuICAgICAgICAgICAgICAgIC8vIE9wZXJhdGlvbiBmYWlsZWQ7IGVycm9yIGlzIGFuIEh0dHBFcnJvclJlc3BvbnNlXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogYW55KSA9PiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiVG9rZW5JbnRlcmNlcHRvciBFcnJvcjogXCIsIHJlcSwgcmVzcG9uc2UpXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gcmVmcmVzaCB0b2tlbiBmb3Igc29tZSByZXF1ZXN0cyBcclxuICAgICAgICAgICAgICAgICAgICAvLyBsaWtlIGxvZ2luIG9yIHJlZnJlc2ggdG9rZW4gaXRzZWxmXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gU28gd2UgdmVyaWZ5IHVybCBhbmQgd2UgdGhyb3cgYW4gZXJyb3IgaWYgaXQncyB0aGUgY2FzZVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxLnVybC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCdMT0dJTicpIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcS51cmwudG9VcHBlckNhc2UoKS5pbmNsdWRlcygnUkVGUkVTSF9UT0tFTicpIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcS51cmwudG9VcHBlckNhc2UoKS5pbmNsdWRlcygnUkVGUkVTSFRPS0VOJylcclxuICAgICAgICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgZG8gYW5vdGhlciBjaGVjayB0byBzZWUgaWYgcmVmcmVzaCB0b2tlbiBmYWlsZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW4gdGhpcyBjYXNlIHdlIHdhbnQgdG8gbG9nb3V0IHVzZXIgYW5kIHRvIHJlZGlyZWN0IGl0IHRvIGxvZ2luIHBhZ2VcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcS51cmwudG9VcHBlckNhc2UoKS5pbmNsdWRlcygnUkVGUkVTSF9UT0tFTicpIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXEudXJsLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoJ1JFRlJFU0hUT0tFTicpXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXBwSW5pdGlhbGl6YXRpb25TZXJ2aWNlLmluaXRpYWxpemluZyQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVzZXJMb2dvdXQoKS5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHgub2sgJiYgeC5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnBvc3RMb2dvdXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlKSkpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIElmIGVycm9yIHN0YXR1cyBpcyBkaWZmZXJlbnQgdGhhbiA0MDEgXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gd2Ugd2FudCB0byBza2lwIHJlZnJlc2ggdG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAvLyBTbyB3ZSBjaGVjayB0aGF0IGFuZCB0aHJvdyB0aGUgZXJyb3IgaWYgaXQncyB0aGUgY2FzZVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDQwMSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IocmVzcG9uc2UuZXJyb3IpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSWYgcmVmcmVzaFRva2VuSW5Qcm9ncmVzcyBpcyB0cnVlLCB3ZSB3aWxsIHdhaXQgdW50aWwgcmVmcmVzaFRva2VuU3ViamVjdCBoYXMgYSBub24tbnVsbCB2YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyDigJMgd2hpY2ggbWVhbnMgdGhlIG5ldyB0b2tlbiBpcyByZWFkeSBhbmQgd2UgY2FuIHJldHJ5IHRoZSByZXF1ZXN0IGFnYWluXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZpbHRlcjogRW1pdCB2YWx1ZXMgdGhhdCBwYXNzIHRoZSBwcm92aWRlZCBjb25kaXRpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcihyZXN1bHQgPT4gcmVzdWx0ICE9PSBudWxsKSxcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWtlKDEpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLypcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBtYWluIGRpZmZlcmVuY2UgYmV0d2VlbiBzd2l0Y2hNYXAgYW5kIG90aGVyIGZsYXR0ZW5pbmcgb3BlcmF0b3JzIGlzIHRoZSBjYW5jZWxsaW5nIGVmZmVjdC4gT24gZWFjaCBlbWlzc2lvbiB0aGUgcHJldmlvdXMgaW5uZXIgb2JzZXJ2YWJsZSAodGhlIHJlc3VsdCBvZiB0aGUgZnVuY3Rpb24geW91IHN1cHBsaWVkKSBpcyBjYW5jZWxsZWQgYW5kIHRoZSBuZXcgb2JzZXJ2YWJsZSBpcyBzdWJzY3JpYmVkLiBZb3UgY2FuIHJlbWVtYmVyIHRoaXMgYnkgdGhlIHBocmFzZSBzd2l0Y2ggdG8gYSBuZXcgb2JzZXJ2YWJsZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICovXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gbmV4dC5oYW5kbGUodGhpcy5hZGRBdXRoZW50aWNhdGlvblRva2VuKHJlcSkpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihyZXNwb25zZS5lcnJvcj8ubWVzc2FnZS50b1VwcGVyQ2FzZSgpIHx8IHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCB0aGUgcmVmcmVzaFRva2VuU3ViamVjdCB0byBudWxsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzbyB0aGF0IHN1YnNlcXVlbnQgQVBJIGNhbGxzIHdpbGwgd2FpdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB1bnRpbCB0aGUgbmV3IHRva2VuIGhhcyBiZWVuIHJldHJpZXZlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QubmV4dChudWxsKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIENhbGwgYXV0aC5yZWZyZXNoQWNjZXNzVG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gKHRoaXMgaXMgYW4gT2JzZXJ2YWJsZSB0aGF0IHdpbGwgYmUgcmV0dXJuZWQpXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZWZyZXNoVG9rZW5SZXEgPSB0aGlzLmF1dGhTZXJ2aWNlLnRyeVJlc3RvcmVTZXNzaW9uKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVmcmVzaFRva2VuUmVxLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG1haW4gZGlmZmVyZW5jZSBiZXR3ZWVuIHN3aXRjaE1hcCBhbmQgb3RoZXIgZmxhdHRlbmluZyBvcGVyYXRvcnMgaXMgdGhlIGNhbmNlbGxpbmcgZWZmZWN0LiBPbiBlYWNoIGVtaXNzaW9uIHRoZSBwcmV2aW91cyBpbm5lciBvYnNlcnZhYmxlICh0aGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbiB5b3Ugc3VwcGxpZWQpIGlzIGNhbmNlbGxlZCBhbmQgdGhlIG5ldyBvYnNlcnZhYmxlIGlzIHN1YnNjcmliZWQuIFlvdSBjYW4gcmVtZW1iZXIgdGhpcyBieSB0aGUgcGhyYXNlIHN3aXRjaCB0byBhIG5ldyBvYnNlcnZhYmxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKi9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0b2tlbiA9ICcnO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uub2sgJiYgcmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5kYXRhJC5uZXh0KHJlc3BvbnNlLmJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmF1dGhlbnRpY2F0ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuID0gcmVzcG9uc2UuYm9keS5qd3RUb2tlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gdGhlIGNhbGwgdG8gcmVmcmVzaFRva2VuIGNvbXBsZXRlcyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSByZXNldCB0aGUgcmVmcmVzaFRva2VuSW5Qcm9ncmVzcyB0byBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvciB0aGUgbmV4dCB0aW1lIHRoZSB0b2tlbiBuZWVkcyB0byBiZSByZWZyZXNoZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QubmV4dCh0b2tlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3UmVxID0gdGhpcy5hZGRBdXRoZW50aWNhdGlvblRva2VuKHJlcSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKG5ld1JlcSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwicmVmcmVzaFRva2VuUmVxIGNhdGNoRXJyb3JcIiwgZXJyKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnZ2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS51c2VyTG9nb3V0KCkuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnBvc3RMb2dvdXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihlcnIpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIC8vIExvZyB3aGVuIHJlc3BvbnNlIG9ic2VydmFibGUgZWl0aGVyIGNvbXBsZXRlcyBvciBlcnJvcnNcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHsgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbn0iXX0=
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4taW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9odHRwLWludGVyY2VwdG9ycy90b2tlbi1pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0VBR0U7QUFFRixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGVBQWUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTzNFLE9BQU8sRUFDd0MsWUFBWSxFQUMxRCxNQUFNLHNCQUFzQixDQUFDOzs7OztBQUc5QixNQUFNLE9BQU8sZ0JBQWdCO0lBRXpCLHNCQUFzQixDQUFDLE9BQXlCO1FBQzVDLHNDQUFzQztRQUN0QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFN0QsZ0VBQWdFO1FBQ2hFLHFDQUFxQztRQUNyQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2QsT0FBTyxPQUFPLENBQUM7U0FDbEI7UUFFRCxrRUFBa0U7UUFDbEUsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsU0FBUyxHQUFHLFdBQVcsQ0FBQztTQUN6RSxDQUFDLENBQUM7SUFDUCxDQUFDO0lBU0QsWUFDWSxXQUF3QixFQUN4Qix3QkFBa0QsRUFDbEQsTUFBYztRQUZkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsV0FBTSxHQUFOLE1BQU0sQ0FB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IjpbIi8qXHJcblRhbm52OiBUaGlzIGNvZGUgaXMgYmFzZWQgb24gdGhlIG9yaWdpbmFsIGJsb2cgcG9zdCBvZiBBbGV4YW5kcnUgQmVyZWdoaWNpXHJcbmh0dHBzOi8vaXRuZXh0LmlvL2FuZ3VsYXItdHV0b3JpYWwtaW1wbGVtZW50LXJlZnJlc2gtdG9rZW4td2l0aC1odHRwaW50ZXJjZXB0b3ItYmZhMjdiOTY2ZjU3XHJcbiovXHJcblxyXG5pbXBvcnQgeyBmaWx0ZXIsIGZpbmFsaXplLCBzd2l0Y2hNYXAsIHRhcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBCZWhhdmlvclN1YmplY3QsIHRocm93RXJyb3IsIGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSHR0cEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBJbml0aWFsaXphdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAtaW5pdGlhbGl6YXRpb24uc2VydmljZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgSHR0cEludGVyY2VwdG9yLCBIdHRwSGFuZGxlciwgSHR0cFJlcXVlc3QsIEh0dHBSZXNwb25zZVxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFRva2VuSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG5cclxuICAgIGFkZEF1dGhlbnRpY2F0aW9uVG9rZW4ocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IEh0dHBSZXF1ZXN0PGFueT4ge1xyXG4gICAgICAgIC8vIEdldCBhY2Nlc3MgdG9rZW4gZnJvbSBMb2NhbCBTdG9yYWdlXHJcbiAgICAgICAgY29uc3QgYWNjZXNzVG9rZW4gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpO1xyXG5cclxuICAgICAgICAvLyBJZiBhY2Nlc3MgdG9rZW4gaXMgbnVsbCB0aGlzIG1lYW5zIHRoYXQgdXNlciBpcyBub3QgbG9nZ2VkIGluXHJcbiAgICAgICAgLy8gQW5kIHdlIHJldHVybiB0aGUgb3JpZ2luYWwgcmVxdWVzdFxyXG4gICAgICAgIGlmICghYWNjZXNzVG9rZW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3Q7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBXZSBjbG9uZSB0aGUgcmVxdWVzdCwgYmVjYXVzZSB0aGUgb3JpZ2luYWwgcmVxdWVzdCBpcyBpbW11dGFibGVcclxuICAgICAgICByZXR1cm4gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVycy5zZXQoJ0F1dGhvcml6YXRpb24nLCAnQmVhcmVyICcgKyBhY2Nlc3NUb2tlbilcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgIC8vIFJlZnJlc2ggVG9rZW4gU3ViamVjdCB0cmFja3MgdGhlIGN1cnJlbnQgdG9rZW4sIFxyXG4gICAgLy8gb3IgaXMgbnVsbCBpZiBubyB0b2tlbiBpcyBjdXJyZW50bHkgYXZhaWxhYmxlIChlLmcuIHJlZnJlc2ggcGVuZGluZykuXHJcbiAgICBwcml2YXRlIHJlZnJlc2hUb2tlblN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxhbnk+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KFxyXG4gICAgICAgIG51bGxcclxuICAgICk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBhcHBJbml0aWFsaXphdGlvblNlcnZpY2U6IEFwcEluaXRpYWxpemF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXHJcbiAgICApIHtcclxuICAgIH1cclxuXHJcbiAgICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuXHJcbiAgICAgICAgaWYgKHJlcS51cmwgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChyZXEudXJsLmluY2x1ZGVzKFwiYXBwLmNvbmZpZy5qc29uXCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiYXBwLmNvbmZpZy5qc29uIGV4Y2x1ZGVkXCIpXHJcbiAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogV0hZPz8/XHJcbiAgICAgICAgaWYgKHJlcS51cmwuaW5jbHVkZXMoXCJHZW5lcmF0ZVRlbXBsYXRlXCIpKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiR2VuZXJhdGVUZW1wbGF0ZSBleGNsdWRlZFwiKVxyXG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlcS51cmwuaW5jbHVkZXMoXCJFeHBvcnRDb3JlUGFnZUxpc3RHcmlkVG9FeGNlbFwiKSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkV4cG9ydENvcmVQYWdlTGlzdEdyaWRUb0V4Y2VsIGV4Y2x1ZGVkXCIpXHJcbiAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAqL1xyXG5cclxuICAgICAgICBsZXQgb2s6IHN0cmluZztcclxuICAgICAgICAvLyBleHRlbmQgc2VydmVyIHJlc3BvbnNlIG9ic2VydmFibGUgd2l0aCBsb2dnaW5nXHJcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YXAoe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIFN1Y2NlZWRzIHdoZW4gdGhlcmUgaXMgYSByZXNwb25zZTsgaWdub3JlIG90aGVyIGV2ZW50c1xyXG4gICAgICAgICAgICAgICAgICAgIG5leHQ6IGV2ZW50ID0+IChvayA9IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlID8gJ3N1Y2NlZWRlZCcgOiAnJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6ICgpID0+IHsgfSAvLyB3ZSBkbyBub3QgaW1wbGVtZW50IHRoZSBsb2dpYyBoZXJlXHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIC8vIEJ1dCBoZXJlOlxyXG4gICAgICAgICAgICAgICAgLy8gT3BlcmF0aW9uIGZhaWxlZDsgZXJyb3IgaXMgYW4gSHR0cEVycm9yUmVzcG9uc2VcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJUb2tlbkludGVyY2VwdG9yIEVycm9yOiBcIiwgcmVxLCByZXNwb25zZSlcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byByZWZyZXNoIHRva2VuIGZvciBzb21lIHJlcXVlc3RzIFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGxpa2UgbG9naW4gb3IgcmVmcmVzaCB0b2tlbiBpdHNlbGZcclxuICAgICAgICAgICAgICAgICAgICAvLyBTbyB3ZSB2ZXJpZnkgdXJsIGFuZCB3ZSB0aHJvdyBhbiBlcnJvciBpZiBpdCdzIHRoZSBjYXNlXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXEudXJsLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoJ0xPR0lOJykgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxLnVybC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCdSRUZSRVNIX1RPS0VOJykgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxLnVybC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCdSRUZSRVNIVE9LRU4nKVxyXG4gICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBXZSBkbyBhbm90aGVyIGNoZWNrIHRvIHNlZSBpZiByZWZyZXNoIHRva2VuIGZhaWxlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJbiB0aGlzIGNhc2Ugd2Ugd2FudCB0byBsb2dvdXQgdXNlciBhbmQgdG8gcmVkaXJlY3QgaXQgdG8gbG9naW4gcGFnZVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxLnVybC50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCdSRUZSRVNIX1RPS0VOJykgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcS51cmwudG9VcHBlckNhc2UoKS5pbmNsdWRlcygnUkVGUkVTSFRPS0VOJylcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHBJbml0aWFsaXphdGlvblNlcnZpY2UuaW5pdGlhbGl6aW5nJC5uZXh0KGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UudXNlckxvZ291dCgpLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UucG9zdExvZ291dCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpKSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgZXJyb3Igc3RhdHVzIGlzIGRpZmZlcmVudCB0aGFuIDQwMSBcclxuICAgICAgICAgICAgICAgICAgICAvLyB3ZSB3YW50IHRvIHNraXAgcmVmcmVzaCB0b2tlblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIFNvIHdlIGNoZWNrIHRoYXQgYW5kIHRocm93IHRoZSBlcnJvciBpZiBpdCdzIHRoZSBjYXNlXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyAhPT0gNDAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihyZXNwb25zZS5lcnJvcikpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiByZWZyZXNoVG9rZW5JblByb2dyZXNzIGlzIHRydWUsIHdlIHdpbGwgd2FpdCB1bnRpbCByZWZyZXNoVG9rZW5TdWJqZWN0IGhhcyBhIG5vbi1udWxsIHZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIOKAkyB3aGljaCBtZWFucyB0aGUgbmV3IHRva2VuIGlzIHJlYWR5IGFuZCB3ZSBjYW4gcmV0cnkgdGhlIHJlcXVlc3QgYWdhaW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZmlsdGVyOiBFbWl0IHZhbHVlcyB0aGF0IHBhc3MgdGhlIHByb3ZpZGVkIGNvbmRpdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKHJlc3VsdCA9PiByZXN1bHQgIT09IG51bGwpLFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG1haW4gZGlmZmVyZW5jZSBiZXR3ZWVuIHN3aXRjaE1hcCBhbmQgb3RoZXIgZmxhdHRlbmluZyBvcGVyYXRvcnMgaXMgdGhlIGNhbmNlbGxpbmcgZWZmZWN0LiBPbiBlYWNoIGVtaXNzaW9uIHRoZSBwcmV2aW91cyBpbm5lciBvYnNlcnZhYmxlICh0aGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbiB5b3Ugc3VwcGxpZWQpIGlzIGNhbmNlbGxlZCBhbmQgdGhlIG5ldyBvYnNlcnZhYmxlIGlzIHN1YnNjcmliZWQuIFlvdSBjYW4gcmVtZW1iZXIgdGhpcyBieSB0aGUgcGhyYXNlIHN3aXRjaCB0byBhIG5ldyBvYnNlcnZhYmxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKi9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiBuZXh0LmhhbmRsZSh0aGlzLmFkZEF1dGhlbnRpY2F0aW9uVG9rZW4ocmVxKSkpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKHJlc3BvbnNlLmVycm9yPy5tZXNzYWdlPy50b1VwcGVyQ2FzZSgpIHx8IHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNldCB0aGUgcmVmcmVzaFRva2VuU3ViamVjdCB0byBudWxsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBzbyB0aGF0IHN1YnNlcXVlbnQgQVBJIGNhbGxzIHdpbGwgd2FpdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB1bnRpbCB0aGUgbmV3IHRva2VuIGhhcyBiZWVuIHJldHJpZXZlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QubmV4dChudWxsKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIENhbGwgYXV0aC5yZWZyZXNoQWNjZXNzVG9rZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gKHRoaXMgaXMgYW4gT2JzZXJ2YWJsZSB0aGF0IHdpbGwgYmUgcmV0dXJuZWQpXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZWZyZXNoVG9rZW5SZXEgPSB0aGlzLmF1dGhTZXJ2aWNlLnRyeVJlc3RvcmVTZXNzaW9uKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVmcmVzaFRva2VuUmVxLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG1haW4gZGlmZmVyZW5jZSBiZXR3ZWVuIHN3aXRjaE1hcCBhbmQgb3RoZXIgZmxhdHRlbmluZyBvcGVyYXRvcnMgaXMgdGhlIGNhbmNlbGxpbmcgZWZmZWN0LiBPbiBlYWNoIGVtaXNzaW9uIHRoZSBwcmV2aW91cyBpbm5lciBvYnNlcnZhYmxlICh0aGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbiB5b3Ugc3VwcGxpZWQpIGlzIGNhbmNlbGxlZCBhbmQgdGhlIG5ldyBvYnNlcnZhYmxlIGlzIHN1YnNjcmliZWQuIFlvdSBjYW4gcmVtZW1iZXIgdGhpcyBieSB0aGUgcGhyYXNlIHN3aXRjaCB0byBhIG5ldyBvYnNlcnZhYmxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKi9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0b2tlbiA9ICcnO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uub2sgJiYgcmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5kYXRhJC5uZXh0KHJlc3BvbnNlLmJvZHkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmF1dGhlbnRpY2F0ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuID0gcmVzcG9uc2UuYm9keS5qd3RUb2tlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFdoZW4gdGhlIGNhbGwgdG8gcmVmcmVzaFRva2VuIGNvbXBsZXRlcyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSByZXNldCB0aGUgcmVmcmVzaFRva2VuSW5Qcm9ncmVzcyB0byBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvciB0aGUgbmV4dCB0aW1lIHRoZSB0b2tlbiBuZWVkcyB0byBiZSByZWZyZXNoZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QubmV4dCh0b2tlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3UmVxID0gdGhpcy5hZGRBdXRoZW50aWNhdGlvblRva2VuKHJlcSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKG5ld1JlcSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwicmVmcmVzaFRva2VuUmVxIGNhdGNoRXJyb3JcIiwgZXJyKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnZ2VyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS51c2VyTG9nb3V0KCkuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoeC5vayAmJiB4LnN0YXR1cyA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnBvc3RMb2dvdXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihlcnIpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIC8vIExvZyB3aGVuIHJlc3BvbnNlIG9ic2VydmFibGUgZWl0aGVyIGNvbXBsZXRlcyBvciBlcnJvcnNcclxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHsgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbn0iXX0=
@@ -2804,14 +2804,16 @@ class TokenInterceptor {
2804
2804
  console.log("app.config.json excluded");
2805
2805
  return next.handle(req);
2806
2806
  }
2807
+ /* WHY???
2807
2808
  if (req.url.includes("GenerateTemplate")) {
2808
- console.log("GenerateTemplate excluded");
2809
+ console.log("GenerateTemplate excluded")
2809
2810
  return next.handle(req);
2810
2811
  }
2811
2812
  if (req.url.includes("ExportCorePageListGridToExcel")) {
2812
- console.log("ExportCorePageListGridToExcel excluded");
2813
+ console.log("ExportCorePageListGridToExcel excluded")
2813
2814
  return next.handle(req);
2814
2815
  }
2816
+ */
2815
2817
  let ok;
2816
2818
  // extend server response observable with logging
2817
2819
  return next.handle(req)
@@ -2861,7 +2863,7 @@ class TokenInterceptor {
2861
2863
  switchMap(() => next.handle(this.addAuthenticationToken(req))));
2862
2864
  }
2863
2865
  else {
2864
- console.error(response.error?.message.toUpperCase() || response);
2866
+ console.error(response.error?.message?.toUpperCase() || response);
2865
2867
  this.refreshTokenInProgress = true;
2866
2868
  // Set the refreshTokenSubject to null
2867
2869
  // so that subsequent API calls will wait
@@ -2999,7 +3001,7 @@ class ResponseInterceptor {
2999
3001
  It is highly recommended to change the back end code. Otherwise your code might not work, or does work but NOT CORRECTLY!
3000
3002
  `, noneAutoClosedAlertOptions);
3001
3003
  }
3002
- if (isDevMode() && event.url?.toLowerCase().indexOf('/api/grpc') > 0) {
3004
+ if (event.url?.toLowerCase().indexOf('/api/grpc') > 0) {
3003
3005
  const newInnerBody = this.grpcService.convertToCamelCase(JSON.parse(event.body?.innerBody));
3004
3006
  return event.clone({ body: {
3005
3007
  ...event.body,