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.
- package/esm2020/lib/core/interceptors/error.interceptor.mjs +24 -3
- package/esm2020/lib/core/interceptors/token.interceptor.mjs +15 -8
- package/esm2020/lib/core/services/token.service.mjs +22 -0
- package/esm2020/public-api.mjs +3 -2
- package/fesm2015/ng-ipa-library.mjs +58 -10
- package/fesm2015/ng-ipa-library.mjs.map +1 -1
- package/fesm2020/ng-ipa-library.mjs +57 -10
- package/fesm2020/ng-ipa-library.mjs.map +1 -1
- package/lib/core/interceptors/error.interceptor.d.ts +2 -0
- package/lib/core/interceptors/token.interceptor.d.ts +4 -2
- package/lib/core/services/token.service.d.ts +10 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
|
@@ -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
|
-
|
|
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,
|
|
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,
|
|
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(
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
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,
|
|
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
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -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,
|
|
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
|
-
|
|
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,
|
|
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(
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
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
|