ng-ipa-library 1.3.12 → 1.4.2

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.
@@ -17,13 +17,19 @@ export class ErrorInterceptor {
17
17
  const response = error.error;
18
18
  const toastrConfig = {
19
19
  disableTimeOut: true,
20
+ closeButton: true,
21
+ tapToDismiss: false,
20
22
  };
21
23
  switch (response.statusCode) {
22
24
  case 500:
23
- this.toastrService.error(response?.innerException + ' ' + response?.stackTrace, response.message, toastrConfig);
25
+ const msg = response.innerException + ' ' + (response.stackTrace ?? '');
26
+ const toastr = this.toastrService.error(msg, response.message, toastrConfig);
27
+ toastr.onShown.subscribe(() => {
28
+ this.addCopyButton(response.message + '\n' + msg);
29
+ });
24
30
  break;
25
31
  default:
26
- this.toastrService.error(response.message, '', toastrConfig);
32
+ this.toastrService.error('', response.message, toastrConfig);
27
33
  break;
28
34
  }
29
35
  return throwError(error);
@@ -37,10 +43,25 @@ export class ErrorInterceptor {
37
43
  }
38
44
  return false;
39
45
  }
46
+ addCopyButton(message) {
47
+ const messageToast = document.getElementsByClassName('toast-message')[0];
48
+ const icon = document.createElement('i');
49
+ icon.classList.add('ms-2', 'fas', 'fa-copy');
50
+ icon.addEventListener('click', () => {
51
+ this.copyToClipboard(message);
52
+ });
53
+ messageToast.appendChild(icon);
54
+ }
55
+ copyToClipboard(message) {
56
+ navigator.clipboard.writeText(message);
57
+ this.toastrService.success('تم نسخ الرسالة إلى الحافظة', '', {
58
+ positionClass: 'toast-bottom-right',
59
+ });
60
+ }
40
61
  }
41
62
  ErrorInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ErrorInterceptor, deps: [{ token: i1.ErrorService }, { token: i2.ToastrService }], target: i0.ɵɵFactoryTarget.Injectable });
42
63
  ErrorInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ErrorInterceptor });
43
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ErrorInterceptor, decorators: [{
44
65
  type: Injectable
45
66
  }], ctorParameters: function () { return [{ type: i1.ErrorService }, { type: i2.ToastrService }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pcGEtbGlicmFyeS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL2Vycm9yLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNNUMsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUNVLFlBQTBCLEVBQzFCLGFBQTRCO1FBRDVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQ25DLENBQUM7SUFFSixTQUFTLENBQ1AsR0FBeUIsRUFDekIsSUFBaUI7UUFFakIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQzFCLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFxQixDQUFDO1lBQzdDLE1BQU0sWUFBWSxHQUE4QjtnQkFDOUMsY0FBYyxFQUFFLElBQUk7YUFDckIsQ0FBQztZQUNGLFFBQVEsUUFBUSxDQUFDLFVBQVUsRUFBRTtnQkFDM0IsS0FBSyxHQUFHO29CQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUN0QixRQUFRLEVBQUUsY0FBYyxHQUFHLEdBQUcsR0FBRyxRQUFRLEVBQUUsVUFBVSxFQUNyRCxRQUFRLENBQUMsT0FBTyxFQUNoQixZQUFZLENBQ2IsQ0FBQztvQkFDRixNQUFNO2dCQUVSO29CQUNFLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLFlBQVksQ0FBQyxDQUFDO29CQUM3RCxNQUFNO2FBQ1Q7WUFDRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFxQjtRQUMvQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3hDLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDLE1BQU0sRUFBRTtnQkFDM0QsT0FBTyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs2R0E3Q1UsZ0JBQWdCO2lIQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBIdHRwUmVxdWVzdCxcclxuICBIdHRwSGFuZGxlcixcclxuICBIdHRwRXZlbnQsXHJcbiAgSHR0cEludGVyY2VwdG9yLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBFcnJvclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9lcnJvci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBpRXhjZXB0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FwaUV4Y2VwdGlvbic7XHJcbmltcG9ydCB7IEluZGl2aWR1YWxDb25maWcsIFRvYXN0clNlcnZpY2UgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEVycm9ySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlcnJvclNlcnZpY2U6IEVycm9yU2VydmljZSxcclxuICAgIHByaXZhdGUgdG9hc3RyU2VydmljZTogVG9hc3RyU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgaW50ZXJjZXB0KFxyXG4gICAgcmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPixcclxuICAgIG5leHQ6IEh0dHBIYW5kbGVyXHJcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICAgIGlmICh0aGlzLmlzRXhjZXB0aW9uKHJlcSkpIHtcclxuICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGVycm9yLmVycm9yIGFzIEFwaUV4Y2VwdGlvbjtcclxuICAgICAgICBjb25zdCB0b2FzdHJDb25maWc6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7XHJcbiAgICAgICAgICBkaXNhYmxlVGltZU91dDogdHJ1ZSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHN3aXRjaCAocmVzcG9uc2Uuc3RhdHVzQ29kZSkge1xyXG4gICAgICAgICAgY2FzZSA1MDA6XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RyU2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICByZXNwb25zZT8uaW5uZXJFeGNlcHRpb24gKyAnICcgKyByZXNwb25zZT8uc3RhY2tUcmFjZSxcclxuICAgICAgICAgICAgICByZXNwb25zZS5tZXNzYWdlLFxyXG4gICAgICAgICAgICAgIHRvYXN0ckNvbmZpZ1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICB0aGlzLnRvYXN0clNlcnZpY2UuZXJyb3IocmVzcG9uc2UubWVzc2FnZSwgJycsIHRvYXN0ckNvbmZpZyk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgaXNFeGNlcHRpb24ocmVxOiBIdHRwUmVxdWVzdDxhbnk+KTogYm9vbGVhbiB7XHJcbiAgICBmb3IgKGNvbnN0IHVybCBvZiB0aGlzLmVycm9yU2VydmljZS51cmxzKSB7XHJcbiAgICAgIGlmIChyZXEudXJsLmluY2x1ZGVzKHVybC5wYXRoKSAmJiByZXEubWV0aG9kID09PSB1cmwubWV0aG9kKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pcGEtbGlicmFyeS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL2Vycm9yLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNNUMsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUNVLFlBQTBCLEVBQzFCLGFBQTRCO1FBRDVCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQ25DLENBQUM7SUFFSixTQUFTLENBQ1AsR0FBeUIsRUFDekIsSUFBaUI7UUFFakIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUVELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQzFCLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFxQixDQUFDO1lBQzdDLE1BQU0sWUFBWSxHQUE4QjtnQkFDOUMsY0FBYyxFQUFFLElBQUk7Z0JBQ3BCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixZQUFZLEVBQUUsS0FBSzthQUNwQixDQUFDO1lBQ0YsUUFBUSxRQUFRLENBQUMsVUFBVSxFQUFFO2dCQUMzQixLQUFLLEdBQUc7b0JBQ04sTUFBTSxHQUFHLEdBQ1AsUUFBUSxDQUFDLGNBQWMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUM5RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FDckMsR0FBRyxFQUNILFFBQVEsQ0FBQyxPQUFPLEVBQ2hCLFlBQVksQ0FDYixDQUFDO29CQUNGLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTt3QkFDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztvQkFDcEQsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsTUFBTTtnQkFFUjtvQkFDRSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztvQkFDN0QsTUFBTTthQUNUO1lBQ0QsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsR0FBcUI7UUFDL0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRTtZQUN4QyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLEVBQUU7Z0JBQzNELE9BQU8sSUFBSSxDQUFDO2FBQ2I7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNPLGFBQWEsQ0FBQyxPQUFlO1FBQ25DLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsQ0FDbEQsZUFBZSxDQUNoQixDQUFDLENBQUMsQ0FBbUIsQ0FBQztRQUN2QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztRQUNILFlBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxPQUFlO1FBQ3JDLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLDRCQUE0QixFQUFFLEVBQUUsRUFBRTtZQUMzRCxhQUFhLEVBQUUsb0JBQW9CO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQXRFVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEh0dHBSZXF1ZXN0LFxyXG4gIEh0dHBIYW5kbGVyLFxyXG4gIEh0dHBFdmVudCxcclxuICBIdHRwSW50ZXJjZXB0b3IsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEVycm9yU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Vycm9yLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcGlFeGNlcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBpRXhjZXB0aW9uJztcclxuaW1wb3J0IHsgSW5kaXZpZHVhbENvbmZpZywgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRXJyb3JJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVycm9yU2VydmljZTogRXJyb3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b2FzdHJTZXJ2aWNlOiBUb2FzdHJTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBpbnRlcmNlcHQoXHJcbiAgICByZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LFxyXG4gICAgbmV4dDogSHR0cEhhbmRsZXJcclxuICApOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xyXG4gICAgaWYgKHRoaXMuaXNFeGNlcHRpb24ocmVxKSkge1xyXG4gICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gZXJyb3IuZXJyb3IgYXMgQXBpRXhjZXB0aW9uO1xyXG4gICAgICAgIGNvbnN0IHRvYXN0ckNvbmZpZzogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHtcclxuICAgICAgICAgIGRpc2FibGVUaW1lT3V0OiB0cnVlLFxyXG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgICAgICB0YXBUb0Rpc21pc3M6IGZhbHNlLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgc3dpdGNoIChyZXNwb25zZS5zdGF0dXNDb2RlKSB7XHJcbiAgICAgICAgICBjYXNlIDUwMDpcclxuICAgICAgICAgICAgY29uc3QgbXNnID1cclxuICAgICAgICAgICAgICByZXNwb25zZS5pbm5lckV4Y2VwdGlvbiArICcgJyArIChyZXNwb25zZS5zdGFja1RyYWNlID8/ICcnKTtcclxuICAgICAgICAgICAgY29uc3QgdG9hc3RyID0gdGhpcy50b2FzdHJTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgICAgICAgIG1zZyxcclxuICAgICAgICAgICAgICByZXNwb25zZS5tZXNzYWdlLFxyXG4gICAgICAgICAgICAgIHRvYXN0ckNvbmZpZ1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0b2FzdHIub25TaG93bi5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuYWRkQ29weUJ1dHRvbihyZXNwb25zZS5tZXNzYWdlICsgJ1xcbicgKyBtc2cpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgdGhpcy50b2FzdHJTZXJ2aWNlLmVycm9yKCcnLCByZXNwb25zZS5tZXNzYWdlLCB0b2FzdHJDb25maWcpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGlzRXhjZXB0aW9uKHJlcTogSHR0cFJlcXVlc3Q8YW55Pik6IGJvb2xlYW4ge1xyXG4gICAgZm9yIChjb25zdCB1cmwgb2YgdGhpcy5lcnJvclNlcnZpY2UudXJscykge1xyXG4gICAgICBpZiAocmVxLnVybC5pbmNsdWRlcyh1cmwucGF0aCkgJiYgcmVxLm1ldGhvZCA9PT0gdXJsLm1ldGhvZCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIHByaXZhdGUgYWRkQ29weUJ1dHRvbihtZXNzYWdlOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IG1lc3NhZ2VUb2FzdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXHJcbiAgICAgICd0b2FzdC1tZXNzYWdlJ1xyXG4gICAgKVswXSBhcyBIVE1MRGl2RWxlbWVudDtcclxuICAgIGNvbnN0IGljb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpJyk7XHJcbiAgICBpY29uLmNsYXNzTGlzdC5hZGQoJ21zLTInLCAnZmFzJywgJ2ZhLWNvcHknKTtcclxuICAgIGljb24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgIHRoaXMuY29weVRvQ2xpcGJvYXJkKG1lc3NhZ2UpO1xyXG4gICAgfSk7XHJcbiAgICBtZXNzYWdlVG9hc3QuYXBwZW5kQ2hpbGQoaWNvbik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvcHlUb0NsaXBib2FyZChtZXNzYWdlOiBzdHJpbmcpIHtcclxuICAgIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KG1lc3NhZ2UpO1xyXG4gICAgdGhpcy50b2FzdHJTZXJ2aWNlLnN1Y2Nlc3MoJ9iq2YUg2YbYs9iuINin2YTYsdiz2KfZhNipINil2YTZiSDYp9mE2K3Yp9mB2LjYqScsICcnLCB7XHJcbiAgICAgIHBvc2l0aW9uQ2xhc3M6ICd0b2FzdC1ib3R0b20tcmlnaHQnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -3,16 +3,22 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "../services/auth.service";
4
4
  import * as i2 from "@angular/common/http";
5
5
  import * as i3 from "../services/loader.service";
6
+ import * as i4 from "../services/token.service";
6
7
  export class TokenInterceptor {
7
- constructor(authService, http, loaderService) {
8
+ constructor(authService, http, loaderService, tokenService) {
8
9
  this.authService = authService;
9
10
  this.http = http;
10
11
  this.loaderService = loaderService;
12
+ this.tokenService = tokenService;
11
13
  this.refresh = true;
12
14
  this.loaderService.addExceptionUrl({
13
15
  path: '/api/users?refresh',
14
16
  method: 'GET',
15
17
  });
18
+ this.tokenService.addExceptionUrl({
19
+ path: '/api/users?refresh',
20
+ method: 'GET',
21
+ });
16
22
  }
17
23
  intercept(request, next) {
18
24
  if (this.isException(request)) {
@@ -58,17 +64,18 @@ export class TokenInterceptor {
58
64
  }
59
65
  }
60
66
  }
61
- isException(request) {
62
- if (request.url.includes('/api/users?refresh') &&
63
- request.method === 'GET') {
64
- return true;
67
+ isException(req) {
68
+ for (const url of this.tokenService.urls) {
69
+ if (req.url.includes(url.path) && req.method === url.method) {
70
+ return true;
71
+ }
65
72
  }
66
73
  return false;
67
74
  }
68
75
  }
69
- TokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, deps: [{ token: i1.AuthService }, { token: i2.HttpClient }, { token: i3.LoaderService }], target: i0.ɵɵFactoryTarget.Injectable });
76
+ TokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, deps: [{ token: i1.AuthService }, { token: i2.HttpClient }, { token: i3.LoaderService }, { token: i4.TokenService }], target: i0.ɵɵFactoryTarget.Injectable });
70
77
  TokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor });
71
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, decorators: [{
72
79
  type: Injectable
73
- }], ctorParameters: function () { return [{ type: i1.AuthService }, { type: i2.HttpClient }, { type: i3.LoaderService }]; } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pcGEtbGlicmFyeS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL3Rva2VuLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBZTNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsWUFDVSxXQUF3QixFQUN4QixJQUFnQixFQUNoQixhQUE0QjtRQUY1QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBSnRDLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFNYixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQztZQUNqQyxJQUFJLEVBQUUsb0JBQW9CO1lBQzFCLE1BQU0sRUFBRSxLQUFLO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FDUCxPQUE2QixFQUM3QixJQUFpQjtRQUVqQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsT0FBTyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQ3RCLFVBQVUsRUFBRTtvQkFDVixhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUU7aUJBQ2pDO2FBQ0YsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFhO1FBQ2xDLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQWtCLENBQUM7UUFDeEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3pELElBQUksT0FBTyxHQUFHLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDeEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsR0FBRyxZQUFZLENBQUMsQ0FBQztZQUN2RCxPQUFPO1NBQ1I7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUU7Z0JBQ25DLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtvQkFDaEIsSUFBSSxDQUFDLElBQUk7eUJBQ04sR0FBRyxDQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxHQUFHLGVBQWUsRUFBRTt3QkFDNUQsT0FBTyxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsS0FBSyxFQUFFLEVBQUU7cUJBQzlDLENBQUM7eUJBQ0QsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7d0JBQ2xCLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7d0JBQ3JCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7d0JBQ3RCLENBQUMsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxDQUFDO2lCQUNOO2FBQ0Y7aUJBQU07Z0JBQ0wsTUFBTSxJQUFJLEtBQUssQ0FDYixvR0FBb0csQ0FDckcsQ0FBQzthQUNIO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sV0FBVyxDQUFDLE9BQXlCO1FBQzNDLElBQ0UsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUM7WUFDMUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxLQUFLLEVBQ3hCO1lBQ0EsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7NkdBdEVVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgSHR0cFJlcXVlc3QsXHJcbiAgSHR0cEhhbmRsZXIsXHJcbiAgSHR0cEV2ZW50LFxyXG4gIEh0dHBJbnRlcmNlcHRvcixcclxuICBIdHRwQ2xpZW50LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IERlY29kZWRUb2tlbiB9IGZyb20gJy4uLy4uL21vZGVscy9kZWNvZGVkVG9rZW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3VzZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbG9hZGVyLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVG9rZW5JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcbiAgcmVmcmVzaCA9IHRydWU7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgbG9hZGVyU2VydmljZTogTG9hZGVyU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5sb2FkZXJTZXJ2aWNlLmFkZEV4Y2VwdGlvblVybCh7XHJcbiAgICAgIHBhdGg6ICcvYXBpL3VzZXJzP3JlZnJlc2gnLFxyXG4gICAgICBtZXRob2Q6ICdHRVQnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBpbnRlcmNlcHQoXHJcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPixcclxuICAgIG5leHQ6IEh0dHBIYW5kbGVyXHJcbiAgKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICAgIGlmICh0aGlzLmlzRXhjZXB0aW9uKHJlcXVlc3QpKSB7XHJcbiAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHRva2VuID0gdGhpcy5hdXRoU2VydmljZS5nZXRUb2tlbigpO1xyXG4gICAgaWYgKHRva2VuKSB7XHJcbiAgICAgIHRoaXMuaXNUb2tlbkV4cGlyZWQodG9rZW4pO1xyXG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgc2V0SGVhZGVyczoge1xyXG4gICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWAsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzVG9rZW5FeHBpcmVkKHRva2VuOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHJlZGlyZWN0UGF0aCA9IGxvY2F0aW9uLnBhdGhuYW1lO1xyXG4gICAgY29uc3QgZGVjb2RlZFRva2VuID0gdGhpcy5hdXRoU2VydmljZS5nZXREZWNvZGVkVG9rZW4oKSBhcyBEZWNvZGVkVG9rZW47XHJcbiAgICBjb25zdCBleHBEYXRlID0gbmV3IERhdGUoKGRlY29kZWRUb2tlbi5leHAgPz8gMCkgKiAxMDAwKTtcclxuICAgIGlmIChleHBEYXRlIDwgbmV3IERhdGUoKSkge1xyXG4gICAgICBsb2NhdGlvbi5yZXBsYWNlKCcvYXIvbG9naW4/cmVkaXJlY3Q9JyArIHJlZGlyZWN0UGF0aCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyVXJsKSB7XHJcbiAgICAgICAgaWYgKHRoaXMucmVmcmVzaCkge1xyXG4gICAgICAgICAgdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5nZXQ8VXNlcj4odGhpcy5hdXRoU2VydmljZS5jdXJyZW50VXNlclVybCArIGB1c2Vycz9yZWZyZXNoYCwge1xyXG4gICAgICAgICAgICAgIGhlYWRlcnM6IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWAgfSxcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgodXNlcikgPT4ge1xyXG4gICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd0b2tlbicsIHVzZXIudG9rZW4pO1xyXG4gICAgICAgICAgICAgIHRoaXMucmVmcmVzaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9LCA2MCAqIDEwMDApO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICAgXCJwcm92aWRlIGN1cnJlbnQgYmFzZSB1c2VyIGFwaSB1cmwgdXNpbmcgdGhpcyBmdW5jdGlvbiBhdXRoU2VydmljZS5zZXRDdXJyZW50VXNlclVybCgnaHR0cHM6Ly8uLi4nKVwiXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0V4Y2VwdGlvbihyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogYm9vbGVhbiB7XHJcbiAgICBpZiAoXHJcbiAgICAgIHJlcXVlc3QudXJsLmluY2x1ZGVzKCcvYXBpL3VzZXJzP3JlZnJlc2gnKSAmJlxyXG4gICAgICByZXF1ZXN0Lm1ldGhvZCA9PT0gJ0dFVCdcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
80
+ }], ctorParameters: function () { return [{ type: i1.AuthService }, { type: i2.HttpClient }, { type: i3.LoaderService }, { type: i4.TokenService }]; } });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pcGEtbGlicmFyeS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL3Rva2VuLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQWdCM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUUzQixZQUNVLFdBQXdCLEVBQ3hCLElBQWdCLEVBQ2hCLGFBQTRCLEVBQzVCLFlBQTBCO1FBSDFCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFMcEMsWUFBTyxHQUFHLElBQUksQ0FBQztRQU9iLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDO1lBQ2pDLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQztZQUNoQyxJQUFJLEVBQUUsb0JBQW9CO1lBQzFCLE1BQU0sRUFBRSxLQUFLO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FDUCxPQUE2QixFQUM3QixJQUFpQjtRQUVqQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsT0FBTyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQ3RCLFVBQVUsRUFBRTtvQkFDVixhQUFhLEVBQUUsVUFBVSxLQUFLLEVBQUU7aUJBQ2pDO2FBQ0YsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFhO1FBQ2xDLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQWtCLENBQUM7UUFDeEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3pELElBQUksT0FBTyxHQUFHLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDeEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsR0FBRyxZQUFZLENBQUMsQ0FBQztZQUN2RCxPQUFPO1NBQ1I7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUU7Z0JBQ25DLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtvQkFDaEIsSUFBSSxDQUFDLElBQUk7eUJBQ04sR0FBRyxDQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxHQUFHLGVBQWUsRUFBRTt3QkFDNUQsT0FBTyxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsS0FBSyxFQUFFLEVBQUU7cUJBQzlDLENBQUM7eUJBQ0QsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7d0JBQ2xCLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7d0JBQ3JCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7d0JBQ3RCLENBQUMsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxDQUFDO2lCQUNOO2FBQ0Y7aUJBQU07Z0JBQ0wsTUFBTSxJQUFJLEtBQUssQ0FDYixvR0FBb0csQ0FDckcsQ0FBQzthQUNIO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQXFCO1FBQy9CLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUU7WUFDeEMsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxFQUFFO2dCQUMzRCxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OzZHQTFFVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEh0dHBSZXF1ZXN0LFxyXG4gIEh0dHBIYW5kbGVyLFxyXG4gIEh0dHBFdmVudCxcclxuICBIdHRwSW50ZXJjZXB0b3IsXHJcbiAgSHR0cENsaWVudCxcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZWNvZGVkVG9rZW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvZGVjb2RlZFRva2VuLm1vZGVsJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyLm1vZGVsJztcclxuaW1wb3J0IHsgTG9hZGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2xvYWRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdG9rZW4uc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUb2tlbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuICByZWZyZXNoID0gdHJ1ZTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBsb2FkZXJTZXJ2aWNlOiBMb2FkZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b2tlblNlcnZpY2U6IFRva2VuU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5sb2FkZXJTZXJ2aWNlLmFkZEV4Y2VwdGlvblVybCh7XHJcbiAgICAgIHBhdGg6ICcvYXBpL3VzZXJzP3JlZnJlc2gnLFxyXG4gICAgICBtZXRob2Q6ICdHRVQnLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnRva2VuU2VydmljZS5hZGRFeGNlcHRpb25Vcmwoe1xyXG4gICAgICBwYXRoOiAnL2FwaS91c2Vycz9yZWZyZXNoJyxcclxuICAgICAgbWV0aG9kOiAnR0VUJyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW50ZXJjZXB0KFxyXG4gICAgcmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXHJcbiAgICBuZXh0OiBIdHRwSGFuZGxlclxyXG4gICk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XHJcbiAgICBpZiAodGhpcy5pc0V4Y2VwdGlvbihyZXF1ZXN0KSkge1xyXG4gICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VG9rZW4oKTtcclxuICAgIGlmICh0b2tlbikge1xyXG4gICAgICB0aGlzLmlzVG9rZW5FeHBpcmVkKHRva2VuKTtcclxuICAgICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xyXG4gICAgICAgIHNldEhlYWRlcnM6IHtcclxuICAgICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0b2tlbn1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1Rva2VuRXhwaXJlZCh0b2tlbjogc3RyaW5nKSB7XHJcbiAgICBjb25zdCByZWRpcmVjdFBhdGggPSBsb2NhdGlvbi5wYXRobmFtZTtcclxuICAgIGNvbnN0IGRlY29kZWRUb2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0RGVjb2RlZFRva2VuKCkgYXMgRGVjb2RlZFRva2VuO1xyXG4gICAgY29uc3QgZXhwRGF0ZSA9IG5ldyBEYXRlKChkZWNvZGVkVG9rZW4uZXhwID8/IDApICogMTAwMCk7XHJcbiAgICBpZiAoZXhwRGF0ZSA8IG5ldyBEYXRlKCkpIHtcclxuICAgICAgbG9jYXRpb24ucmVwbGFjZSgnL2FyL2xvZ2luP3JlZGlyZWN0PScgKyByZWRpcmVjdFBhdGgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5hdXRoU2VydmljZS5jdXJyZW50VXNlclVybCkge1xyXG4gICAgICAgIGlmICh0aGlzLnJlZnJlc2gpIHtcclxuICAgICAgICAgIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAuZ2V0PFVzZXI+KHRoaXMuYXV0aFNlcnZpY2UuY3VycmVudFVzZXJVcmwgKyBgdXNlcnM/cmVmcmVzaGAsIHtcclxuICAgICAgICAgICAgICBoZWFkZXJzOiB7IEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0b2tlbn1gIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHVzZXIpID0+IHtcclxuICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndG9rZW4nLCB1c2VyLnRva2VuKTtcclxuICAgICAgICAgICAgICB0aGlzLnJlZnJlc2ggPSBmYWxzZTtcclxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfSwgNjAgKiAxMDAwKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgIFwicHJvdmlkZSBjdXJyZW50IGJhc2UgdXNlciBhcGkgdXJsIHVzaW5nIHRoaXMgZnVuY3Rpb24gYXV0aFNlcnZpY2Uuc2V0Q3VycmVudFVzZXJVcmwoJ2h0dHBzOi8vLi4uJylcIlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlzRXhjZXB0aW9uKHJlcTogSHR0cFJlcXVlc3Q8YW55Pik6IGJvb2xlYW4ge1xyXG4gICAgZm9yIChjb25zdCB1cmwgb2YgdGhpcy50b2tlblNlcnZpY2UudXJscykge1xyXG4gICAgICBpZiAocmVxLnVybC5pbmNsdWRlcyh1cmwucGF0aCkgJiYgcmVxLm1ldGhvZCA9PT0gdXJsLm1ldGhvZCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,22 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TokenService {
4
+ constructor() {
5
+ this.urls = [];
6
+ }
7
+ setExceptionUrls(urls) {
8
+ this.urls = urls;
9
+ }
10
+ addExceptionUrl(url) {
11
+ this.urls.push(url);
12
+ }
13
+ }
14
+ TokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
15
+ TokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, providedIn: 'root' });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, decorators: [{
17
+ type: Injectable,
18
+ args: [{
19
+ providedIn: 'root',
20
+ }]
21
+ }], ctorParameters: function () { return []; } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWlwYS1saWJyYXJ5L3NyYy9saWIvY29yZS9zZXJ2aWNlcy90b2tlbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxZQUFZO0lBRXZCO1FBREEsU0FBSSxHQUFtQixFQUFFLENBQUM7SUFDWCxDQUFDO0lBRWhCLGdCQUFnQixDQUFDLElBQW9CO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBaUI7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEIsQ0FBQzs7eUdBVlUsWUFBWTs2R0FBWixZQUFZLGNBRlgsTUFBTTsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4Y2VwdGlvblVybCB9IGZyb20gJy4uLy4uL21vZGVscy9leGNlcHRpb25VcmwubW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVG9rZW5TZXJ2aWNlIHtcbiAgdXJsczogRXhjZXB0aW9uVXJsW10gPSBbXTtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldEV4Y2VwdGlvblVybHModXJsczogRXhjZXB0aW9uVXJsW10pIHtcbiAgICB0aGlzLnVybHMgPSB1cmxzO1xuICB9XG5cbiAgYWRkRXhjZXB0aW9uVXJsKHVybDogRXhjZXB0aW9uVXJsKSB7XG4gICAgdGhpcy51cmxzLnB1c2godXJsKTtcbiAgfVxufVxuIl19
@@ -26,9 +26,10 @@ export * from './lib/core/interceptors/token.interceptor';
26
26
  export * from './lib/core/interceptors/myIPAToken.interceptor';
27
27
  // services
28
28
  export * from './lib/core/services/loader.service';
29
+ export * from './lib/core/services/error.service';
30
+ export * from './lib/core/services/token.service';
29
31
  export * from './lib/core/services/auth.service';
30
32
  export * from './lib/ipa-form/ipa-form.service';
31
- export * from './lib/core/services/error.service';
32
33
  export * from './lib/services/breadcrumbs.service';
33
34
  export * from './lib/services/common.service';
34
35
  //pipes
@@ -38,4 +39,4 @@ export * from './lib/models/pagedResult';
38
39
  export * from './lib/models/apiException';
39
40
  export * from './lib/models/apiResponse';
40
41
  export * from './lib/models/generateForm.model';
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWlwYS1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsU0FBUztBQUNULGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsa0JBQWtCO0FBQ2xCLGNBQWMsaURBQWlELENBQUM7QUFFaEUsa0JBQWtCO0FBQ2xCLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLCtFQUErRSxDQUFDO0FBQzlGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDJDQUEyQyxDQUFDO0FBRTFELGVBQWU7QUFDZixjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGdEQUFnRCxDQUFDO0FBRS9ELFdBQVc7QUFDWCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxPQUFPO0FBQ1AsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxRQUFRO0FBQ1IsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpcGEtbGlicmFyeVxyXG4gKi9cclxuLy8gbW9kdWxlXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL25nLWlwYS1saWJyYXJ5Lm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJ25neC10b2FzdHInO1xyXG5leHBvcnQgKiBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL3BpcGVzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlLWJ1dHRvbi9zaGFyZS1idXR0b24ubW9kdWxlJztcclxuXHJcbi8vIGNvcmUgY29tcG9uZW50c1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2NvbXBvbmVudHMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudCc7XHJcblxyXG4vLyBmb3JtIGNvbXBvbmVudHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vdGV4dC1pbnB1dC90ZXh0LWlucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL3RleHRhcmVhLWlucHV0L3RleHRhcmVhLWlucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL2Ryb3Bkb3duLWlucHV0L2Ryb3Bkb3duLWlucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL2RhdGVwaWNrZXIvaGlqcmktZGF0ZXBpY2tlci9oaWpyaS1kYXRlcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL2RhdGVwaWNrZXIvZ3JlZ29yaWFuLWRhdGVwaWNrZXIvZ3JlZ29yaWFuLWRhdGVwaWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vcmVjYXB0Y2hhL3JlY2FwdGNoYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9nZW5lcmF0ZS1mb3JtL2dlbmVyYXRlLWZvcm0uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmUtYnV0dG9uL3NoYXJlLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuLy8gaW50ZXJjZXB0b3JzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvaW50ZXJjZXB0b3JzL2xvYWRpbmcuaW50ZXJjZXB0b3InO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2ludGVyY2VwdG9ycy9lcnJvci5pbnRlcmNlcHRvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvaW50ZXJjZXB0b3JzL3Rva2VuLmludGVyY2VwdG9yJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9pbnRlcmNlcHRvcnMvbXlJUEFUb2tlbi5pbnRlcmNlcHRvcic7XHJcblxyXG4vLyBzZXJ2aWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2VzL2xvYWRlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pcGEtZm9ybS9pcGEtZm9ybS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9zZXJ2aWNlcy9lcnJvci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYnJlYWRjcnVtYnMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2NvbW1vbi5zZXJ2aWNlJztcclxuXHJcbi8vcGlwZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvaGlqcmktZGF0ZS5waXBlJztcclxuXHJcbi8vbW9kZWxzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9wYWdlZFJlc3VsdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hcGlFeGNlcHRpb24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYXBpUmVzcG9uc2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZ2VuZXJhdGVGb3JtLm1vZGVsJztcclxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLWlwYS1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsU0FBUztBQUNULGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsa0JBQWtCO0FBQ2xCLGNBQWMsaURBQWlELENBQUM7QUFFaEUsa0JBQWtCO0FBQ2xCLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLCtFQUErRSxDQUFDO0FBQzlGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDJDQUEyQyxDQUFDO0FBRTFELGVBQWU7QUFDZixjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGdEQUFnRCxDQUFDO0FBRS9ELFdBQVc7QUFDWCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLE9BQU87QUFDUCxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLFFBQVE7QUFDUixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGlwYS1saWJyYXJ5XHJcbiAqL1xyXG4vLyBtb2R1bGVcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmctaXBhLWxpYnJhcnkubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnbmd4LXRvYXN0cic7XHJcbmV4cG9ydCAqIGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcGlwZXMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmUtYnV0dG9uL3NoYXJlLWJ1dHRvbi5tb2R1bGUnO1xyXG5cclxuLy8gY29yZSBjb21wb25lbnRzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvY29tcG9uZW50cy9sb2FkaW5nL2xvYWRpbmcuY29tcG9uZW50JztcclxuXHJcbi8vIGZvcm0gY29tcG9uZW50c1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pcGEtZm9ybS90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vdGV4dGFyZWEtaW5wdXQvdGV4dGFyZWEtaW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vZHJvcGRvd24taW5wdXQvZHJvcGRvd24taW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vZGF0ZXBpY2tlci9oaWpyaS1kYXRlcGlja2VyL2hpanJpLWRhdGVwaWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaXBhLWZvcm0vZGF0ZXBpY2tlci9ncmVnb3JpYW4tZGF0ZXBpY2tlci9ncmVnb3JpYW4tZGF0ZXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pcGEtZm9ybS9yZWNhcHRjaGEvcmVjYXB0Y2hhLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dlbmVyYXRlLWZvcm0vZ2VuZXJhdGUtZm9ybS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZS1idXR0b24vc2hhcmUtYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG4vLyBpbnRlcmNlcHRvcnNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9pbnRlcmNlcHRvcnMvbG9hZGluZy5pbnRlcmNlcHRvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvaW50ZXJjZXB0b3JzL2Vycm9yLmludGVyY2VwdG9yJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9pbnRlcmNlcHRvcnMvdG9rZW4uaW50ZXJjZXB0b3InO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2ludGVyY2VwdG9ycy9teUlQQVRva2VuLmludGVyY2VwdG9yJztcclxuXHJcbi8vIHNlcnZpY2VzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvc2VydmljZXMvbG9hZGVyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2VzL2Vycm9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2VzL3Rva2VuLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lwYS1mb3JtL2lwYS1mb3JtLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9icmVhZGNydW1icy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29tbW9uLnNlcnZpY2UnO1xyXG5cclxuLy9waXBlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9oaWpyaS1kYXRlLnBpcGUnO1xyXG5cclxuLy9tb2RlbHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3BhZ2VkUmVzdWx0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2FwaUV4Y2VwdGlvbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hcGlSZXNwb25zZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9nZW5lcmF0ZUZvcm0ubW9kZWwnO1xyXG4iXX0=
@@ -1336,16 +1336,23 @@ class ErrorInterceptor {
1336
1336
  return next.handle(req);
1337
1337
  }
1338
1338
  return next.handle(req).pipe(catchError((error) => {
1339
+ var _a;
1339
1340
  const response = error.error;
1340
1341
  const toastrConfig = {
1341
1342
  disableTimeOut: true,
1343
+ closeButton: true,
1344
+ tapToDismiss: false,
1342
1345
  };
1343
1346
  switch (response.statusCode) {
1344
1347
  case 500:
1345
- this.toastrService.error((response === null || response === void 0 ? void 0 : response.innerException) + ' ' + (response === null || response === void 0 ? void 0 : response.stackTrace), response.message, toastrConfig);
1348
+ const msg = response.innerException + ' ' + ((_a = response.stackTrace) !== null && _a !== void 0 ? _a : '');
1349
+ const toastr = this.toastrService.error(msg, response.message, toastrConfig);
1350
+ toastr.onShown.subscribe(() => {
1351
+ this.addCopyButton(response.message + '\n' + msg);
1352
+ });
1346
1353
  break;
1347
1354
  default:
1348
- this.toastrService.error(response.message, '', toastrConfig);
1355
+ this.toastrService.error('', response.message, toastrConfig);
1349
1356
  break;
1350
1357
  }
1351
1358
  return throwError(error);
@@ -1359,6 +1366,21 @@ class ErrorInterceptor {
1359
1366
  }
1360
1367
  return false;
1361
1368
  }
1369
+ addCopyButton(message) {
1370
+ const messageToast = document.getElementsByClassName('toast-message')[0];
1371
+ const icon = document.createElement('i');
1372
+ icon.classList.add('ms-2', 'fas', 'fa-copy');
1373
+ icon.addEventListener('click', () => {
1374
+ this.copyToClipboard(message);
1375
+ });
1376
+ messageToast.appendChild(icon);
1377
+ }
1378
+ copyToClipboard(message) {
1379
+ navigator.clipboard.writeText(message);
1380
+ this.toastrService.success('تم نسخ الرسالة إلى الحافظة', '', {
1381
+ positionClass: 'toast-bottom-right',
1382
+ });
1383
+ }
1362
1384
  }
1363
1385
  ErrorInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ErrorInterceptor, deps: [{ token: ErrorService }, { token: i1.ToastrService }], target: i0.ɵɵFactoryTarget.Injectable });
1364
1386
  ErrorInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: ErrorInterceptor });
@@ -1428,16 +1450,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
1428
1450
  }]
1429
1451
  }], ctorParameters: function () { return []; } });
1430
1452
 
1453
+ class TokenService {
1454
+ constructor() {
1455
+ this.urls = [];
1456
+ }
1457
+ setExceptionUrls(urls) {
1458
+ this.urls = urls;
1459
+ }
1460
+ addExceptionUrl(url) {
1461
+ this.urls.push(url);
1462
+ }
1463
+ }
1464
+ TokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1465
+ TokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, providedIn: 'root' });
1466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenService, decorators: [{
1467
+ type: Injectable,
1468
+ args: [{
1469
+ providedIn: 'root',
1470
+ }]
1471
+ }], ctorParameters: function () { return []; } });
1472
+
1431
1473
  class TokenInterceptor {
1432
- constructor(authService, http, loaderService) {
1474
+ constructor(authService, http, loaderService, tokenService) {
1433
1475
  this.authService = authService;
1434
1476
  this.http = http;
1435
1477
  this.loaderService = loaderService;
1478
+ this.tokenService = tokenService;
1436
1479
  this.refresh = true;
1437
1480
  this.loaderService.addExceptionUrl({
1438
1481
  path: '/api/users?refresh',
1439
1482
  method: 'GET',
1440
1483
  });
1484
+ this.tokenService.addExceptionUrl({
1485
+ path: '/api/users?refresh',
1486
+ method: 'GET',
1487
+ });
1441
1488
  }
1442
1489
  intercept(request, next) {
1443
1490
  if (this.isException(request)) {
@@ -1484,19 +1531,20 @@ class TokenInterceptor {
1484
1531
  }
1485
1532
  }
1486
1533
  }
1487
- isException(request) {
1488
- if (request.url.includes('/api/users?refresh') &&
1489
- request.method === 'GET') {
1490
- return true;
1534
+ isException(req) {
1535
+ for (const url of this.tokenService.urls) {
1536
+ if (req.url.includes(url.path) && req.method === url.method) {
1537
+ return true;
1538
+ }
1491
1539
  }
1492
1540
  return false;
1493
1541
  }
1494
1542
  }
1495
- TokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, deps: [{ token: AuthService }, { token: i2$4.HttpClient }, { token: LoaderService }], target: i0.ɵɵFactoryTarget.Injectable });
1543
+ TokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, deps: [{ token: AuthService }, { token: i2$4.HttpClient }, { token: LoaderService }, { token: TokenService }], target: i0.ɵɵFactoryTarget.Injectable });
1496
1544
  TokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor });
1497
1545
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TokenInterceptor, decorators: [{
1498
1546
  type: Injectable
1499
- }], ctorParameters: function () { return [{ type: AuthService }, { type: i2$4.HttpClient }, { type: LoaderService }]; } });
1547
+ }], ctorParameters: function () { return [{ type: AuthService }, { type: i2$4.HttpClient }, { type: LoaderService }, { type: TokenService }]; } });
1500
1548
 
1501
1549
  class myIPATokenInterceptor {
1502
1550
  constructor(authService) {
@@ -1741,5 +1789,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
1741
1789
  * Generated bundle index. Do not edit.
1742
1790
  */
1743
1791
 
1744
- export { AuthService, BreadcrumbsService, CommonService, DropdownInputComponent, ErrorInterceptor, ErrorService, FileUploadComponent, GenerateFormComponent, GregorianDatepickerComponent, HijriDatePipe, HijriDatepickerComponent, IPAFormService, LoaderComponent, LoaderService, LoadingInterceptor, NgIPALibraryModule, PipesModule, RecaptchaComponent, ShareButtonComponent, ShareButtonModule, TextInputComponent, TextareaInputComponent, TokenInterceptor, myIPATokenInterceptor };
1792
+ export { AuthService, BreadcrumbsService, CommonService, DropdownInputComponent, ErrorInterceptor, ErrorService, FileUploadComponent, GenerateFormComponent, GregorianDatepickerComponent, HijriDatePipe, HijriDatepickerComponent, IPAFormService, LoaderComponent, LoaderService, LoadingInterceptor, NgIPALibraryModule, PipesModule, RecaptchaComponent, ShareButtonComponent, ShareButtonModule, TextInputComponent, TextareaInputComponent, TokenInterceptor, TokenService, myIPATokenInterceptor };
1745
1793
  //# sourceMappingURL=ng-ipa-library.mjs.map