aril 1.0.16 → 1.0.18
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/boot/config/apps/src/auth.guard.d.ts +9 -0
- package/esm2022/boot/config/apps/src/apps.service.mjs +3 -2
- package/esm2022/boot/config/apps/src/auth.guard.mjs +22 -0
- package/esm2022/http/src/httpClient.mjs +3 -1
- package/esm2022/http/src/serviceBase.mjs +3 -3
- package/esm2022/http/src/serviceStateMethods.mjs +3 -2
- package/fesm2022/aril-boot-config-apps.mjs +21 -2
- package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
- package/fesm2022/aril-http.mjs +6 -3
- package/fesm2022/aril-http.mjs.map +1 -1
- package/http/src/httpClient.d.ts +1 -0
- package/http/src/serviceBase.d.ts +1 -1
- package/http/src/serviceStateMethods.d.ts +3 -2
- package/package.json +35 -35
- package/theme/styles/theme/light/custom/theme.scss +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';
|
|
2
|
+
import { KeycloakAuthGuard } from 'keycloak-angular';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class AuthGuard extends KeycloakAuthGuard {
|
|
5
|
+
constructor();
|
|
6
|
+
isAccessAllowed(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean | UrlTree>;
|
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AuthGuard, never>;
|
|
8
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AuthGuard>;
|
|
9
|
+
}
|
|
@@ -3,6 +3,7 @@ import { Router } from '@angular/router';
|
|
|
3
3
|
import { WebComponentWrapper, startsWith } from '@angular-architects/module-federation-tools';
|
|
4
4
|
import { catchError, of, tap } from 'rxjs';
|
|
5
5
|
import { NotFoundComponent } from 'aril/util/custom_pages';
|
|
6
|
+
import { AuthGuard } from './auth.guard';
|
|
6
7
|
import { ShadowDOMWrapperComponent } from './showdowDOMWrapper';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
export class MicroAppService {
|
|
@@ -27,7 +28,7 @@ export class MicroAppService {
|
|
|
27
28
|
matcher: startsWith(options.remoteName),
|
|
28
29
|
component: options.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,
|
|
29
30
|
data: options,
|
|
30
|
-
|
|
31
|
+
canActivate: [AuthGuard]
|
|
31
32
|
};
|
|
32
33
|
});
|
|
33
34
|
return routes;
|
|
@@ -45,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
45
46
|
type: Injectable,
|
|
46
47
|
args: [{ providedIn: 'root' }]
|
|
47
48
|
}] });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC9ib290L2NvbmZpZy9hcHBzL3NyYy9hcHBzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQ04sbUJBQW1CLEVBRW5CLFVBQVUsRUFDVixNQUFNLDZDQUE2QyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUdoRSxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQUVTLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7S0FzQ2hDO0lBcENBLElBQUksQ0FBQyxVQUFzQixFQUFFLE9BQWU7UUFDM0MsT0FBTyxVQUFVO2FBQ2YsR0FBRyxDQUFVLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDO2FBQ3JHLElBQUksQ0FDSixHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNaLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUVwRSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMxRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNsQixPQUFPLENBQUMsR0FBRyxDQUFDLDBCQUEwQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDYixDQUFDLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUF1QjtRQUNsQyxNQUFNLE1BQU0sR0FBVyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDOUMsT0FBTztnQkFDTixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7Z0JBQ3ZDLFNBQVMsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyx5QkFBeUI7Z0JBQ3JGLElBQUksRUFBRSxPQUFxQztnQkFDM0MsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDO2FBQ3hCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2YsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUF1QjtRQUM3QixVQUFXLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQztZQUNuQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUU7WUFDaEcsR0FBRyxLQUFLO1NBQ1IsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0F0Q1csZUFBZTtrSEFBZixlQUFlLGNBREYsTUFBTTs7MkZBQ25CLGVBQWU7a0JBRDNCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0LCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHtcclxuXHRXZWJDb21wb25lbnRXcmFwcGVyLFxyXG5cdFdlYkNvbXBvbmVudFdyYXBwZXJPcHRpb25zLFxyXG5cdHN0YXJ0c1dpdGhcclxufSBmcm9tICdAYW5ndWxhci1hcmNoaXRlY3RzL21vZHVsZS1mZWRlcmF0aW9uLXRvb2xzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgb2YsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgTm90Rm91bmRDb21wb25lbnQgfSBmcm9tICdhcmlsL3V0aWwvY3VzdG9tX3BhZ2VzJztcclxuXHJcbmltcG9ydCB7IEF1dGhHdWFyZCB9IGZyb20gJy4vYXV0aC5ndWFyZCc7XHJcbmltcG9ydCB7IEFwcHNEVE8sIFBsdWdpbkNvbmZpZywgUGx1Z2luTWVudUl0ZW0gfSBmcm9tICcuL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBTaGFkb3dET01XcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zaG93ZG93RE9NV3JhcHBlcic7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgTWljcm9BcHBTZXJ2aWNlIHtcclxuXHRwcml2YXRlIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xyXG5cclxuXHRpbml0KGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsIGhvc3RBUEk6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIGh0dHBDbGllbnRcclxuXHRcdFx0LmdldDxBcHBzRFRPPihpc0Rldk1vZGUoKSA/ICcuL2Fzc2V0cy9sb2NhbC1jb25maWdzL2FwcC5sb2NhbC5qc29uJyA6IGhvc3RBUEkgKyAnL3VpLXNpZGViYXItY29uZmlncycpXHJcblx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdHRhcCgoYXBwcykgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc3Qgcm91dGVzID0gdGhpcy5idWlsZFJvdXRlcyhbLi4uYXBwcy5tb2R1bGVzLCAuLi5hcHBzLnBsdWdpbnNdKTtcclxuXHJcblx0XHRcdFx0XHR0aGlzLnJvdXRlci5yZXNldENvbmZpZyhbLi4udGhpcy5yb3V0ZXIuY29uZmlnLCAuLi5yb3V0ZXMsIHsgcGF0aDogJyoqJywgY29tcG9uZW50OiBOb3RGb3VuZENvbXBvbmVudCB9XSk7XHJcblx0XHRcdFx0XHR0aGlzLnNldE1lbnVJdGVtcyhhcHBzLm1lbnVJdGVtcyk7XHJcblx0XHRcdFx0fSksXHJcblx0XHRcdFx0Y2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHRjb25zb2xlLmxvZygnRXJyb3IgTWljcm8gQXBwcyBMb2FkaW5nJywgZXJyKTtcclxuXHRcdFx0XHRcdHJldHVybiBvZigpO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCk7XHJcblx0fVxyXG5cclxuXHRidWlsZFJvdXRlcyhvcHRpb25zOiBQbHVnaW5Db25maWdbXSk6IFJvdXRlcyB7XHJcblx0XHRjb25zdCByb3V0ZXM6IFJvdXRlcyA9IG9wdGlvbnMubWFwKChvcHRpb25zKSA9PiB7XHJcblx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0bWF0Y2hlcjogc3RhcnRzV2l0aChvcHRpb25zLnJlbW90ZU5hbWUpLFxyXG5cdFx0XHRcdGNvbXBvbmVudDogb3B0aW9ucy5zaGFkb3dEb21QYXNzaXZlID8gV2ViQ29tcG9uZW50V3JhcHBlciA6IFNoYWRvd0RPTVdyYXBwZXJDb21wb25lbnQsXHJcblx0XHRcdFx0ZGF0YTogb3B0aW9ucyBhcyBXZWJDb21wb25lbnRXcmFwcGVyT3B0aW9ucyxcclxuXHRcdFx0XHRjYW5BY3RpdmF0ZTogW0F1dGhHdWFyZF1cclxuXHRcdFx0fTtcclxuXHRcdH0pO1xyXG5cclxuXHRcdHJldHVybiByb3V0ZXM7XHJcblx0fVxyXG5cclxuXHRzZXRNZW51SXRlbXMoaXRlbXM6IFBsdWdpbk1lbnVJdGVtW10pOiB2b2lkIHtcclxuXHRcdCg8YW55Pmdsb2JhbFRoaXMpLmhvc3RNZW51SXRlbXMuc2V0KFtcclxuXHRcdFx0eyByb290OiB0cnVlLCBsYWJlbDogeyB0cjogJ0FuYXNheWZhJywgZW46ICdIb21lJyB9LCBpY29uOiAncGkgcGktZncgcGktaG9tZScsIHJvdXRlckxpbms6ICcvJyB9LFxyXG5cdFx0XHQuLi5pdGVtc1xyXG5cdFx0XSk7XHJcblx0fVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class AuthGuard extends KeycloakAuthGuard {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(inject(Router), inject(KeycloakService));
|
|
8
|
+
}
|
|
9
|
+
async isAccessAllowed(route, state) {
|
|
10
|
+
if (!this.authenticated) {
|
|
11
|
+
await this.keycloakAngular.login({ redirectUri: window.location.href });
|
|
12
|
+
}
|
|
13
|
+
return this.authenticated;
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
16
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, providedIn: 'root' }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, decorators: [{
|
|
19
|
+
type: Injectable,
|
|
20
|
+
args: [{ providedIn: 'root' }]
|
|
21
|
+
}], ctorParameters: () => [] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvYm9vdC9jb25maWcvYXBwcy9zcmMvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQTBCLE1BQU0sRUFBZ0MsTUFBTSxpQkFBaUIsQ0FBQztBQUUvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBR3RFLE1BQU0sT0FBTyxTQUFVLFNBQVEsaUJBQWlCO0lBQy9DO1FBQ0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRVEsS0FBSyxDQUFDLGVBQWUsQ0FDN0IsS0FBNkIsRUFDN0IsS0FBMEI7UUFFMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6QixNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6RSxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzNCLENBQUM7OEdBZFcsU0FBUztrSEFBVCxTQUFTLGNBREksTUFBTTs7MkZBQ25CLFNBQVM7a0JBRHJCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlciwgUm91dGVyU3RhdGVTbmFwc2hvdCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBLZXljbG9ha0F1dGhHdWFyZCwgS2V5Y2xvYWtTZXJ2aWNlIH0gZnJvbSAna2V5Y2xvYWstYW5ndWxhcic7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQXV0aEd1YXJkIGV4dGVuZHMgS2V5Y2xvYWtBdXRoR3VhcmQge1xyXG5cdGNvbnN0cnVjdG9yKCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0KFJvdXRlciksIGluamVjdChLZXljbG9ha1NlcnZpY2UpKTtcclxuXHR9XHJcblxyXG5cdG92ZXJyaWRlIGFzeW5jIGlzQWNjZXNzQWxsb3dlZChcclxuXHRcdHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxyXG5cdFx0c3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3RcclxuXHQpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB7XHJcblx0XHRpZiAoIXRoaXMuYXV0aGVudGljYXRlZCkge1xyXG5cdFx0XHRhd2FpdCB0aGlzLmtleWNsb2FrQW5ndWxhci5sb2dpbih7IHJlZGlyZWN0VXJpOiB3aW5kb3cubG9jYXRpb24uaHJlZiB9KTtcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gdGhpcy5hdXRoZW50aWNhdGVkO1xyXG5cdH1cclxufVxyXG4iXX0=
|
|
@@ -3,12 +3,14 @@ import { HttpClient } from '@angular/common/http';
|
|
|
3
3
|
import { Injector, inject } from '@angular/core';
|
|
4
4
|
import { MessageService } from 'primeng/api';
|
|
5
5
|
import { TranslocoService } from '@ngneat/transloco';
|
|
6
|
+
import { KeycloakService } from 'keycloak-angular';
|
|
6
7
|
export class RestClient {
|
|
7
8
|
constructor() {
|
|
8
9
|
this.httpClient = inject(HttpClient);
|
|
9
10
|
this.injector = inject(Injector);
|
|
10
11
|
this.messageService = inject(MessageService);
|
|
11
12
|
this.translocoService = inject(TranslocoService);
|
|
13
|
+
this.keycloak = inject(KeycloakService);
|
|
12
14
|
}
|
|
13
15
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvaHR0cC9zcmMvaHR0cENsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFN0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSW5ELE1BQU0sT0FBZ0IsVUFBVTtJQUFoQztRQUNrQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUdyRCxDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgS2V5Y2xvYWtTZXJ2aWNlIH0gZnJvbSAna2V5Y2xvYWstYW5ndWxhcic7XHJcblxyXG5pbXBvcnQgeyBTZXJ2aWNlQ2FsbFN0YXRlTWFwIH0gZnJvbSAnLi4vbGliL2ludGVyZmFjZXMnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3RDbGllbnQge1xyXG5cdHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudCA9IGluamVjdChIdHRwQ2xpZW50KTtcclxuXHRwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcclxuXHRwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlID0gaW5qZWN0KE1lc3NhZ2VTZXJ2aWNlKTtcclxuXHRwcml2YXRlIHJlYWRvbmx5IHRyYW5zbG9jb1NlcnZpY2UgPSBpbmplY3QoVHJhbnNsb2NvU2VydmljZSk7XHJcblx0cHJpdmF0ZSByZWFkb25seSBrZXljbG9hayA9IGluamVjdChLZXljbG9ha1NlcnZpY2UpO1xyXG5cclxuXHRhYnN0cmFjdCBzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PjtcclxufVxyXG4iXX0=
|
|
@@ -111,8 +111,8 @@ export function ServiceCall(httpMethod, proxy, serviceURL, message, remoteAPI, i
|
|
|
111
111
|
else {
|
|
112
112
|
successState(states, serviceName, this.translocoService, this.messageService, message, serviceRes);
|
|
113
113
|
}
|
|
114
|
-
}), catchError((error) => {
|
|
115
|
-
errorState(states, serviceName, error, this.translocoService, this.messageService, message);
|
|
114
|
+
}), catchError(async (error) => {
|
|
115
|
+
await errorState(states, serviceName, error, this.translocoService, this.messageService, this.keycloak, message);
|
|
116
116
|
return of(new ErrorResponse(error));
|
|
117
117
|
}), takeUntilDestroyed());
|
|
118
118
|
return observable;
|
|
@@ -120,4 +120,4 @@ export function ServiceCall(httpMethod, proxy, serviceURL, message, remoteAPI, i
|
|
|
120
120
|
};
|
|
121
121
|
};
|
|
122
122
|
}
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL2h0dHAvc3JjL3NlcnZpY2VCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFFLFdBQVcsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUF1QixlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRzFGLE1BQU0sVUFBVSxXQUFXLENBQzFCLFVBQXVCLEVBQ3ZCLEtBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLE9BQThDLEVBQzlDLFNBQWdCLEVBQ2hCLFNBQVMsR0FBRyxLQUFLO0lBRWpCLE9BQU8sVUFBVSxZQUFvQixFQUFFLFdBQTRCLEVBQUUsVUFBOEI7UUFDbEcsNkNBQTZDO1FBRTdDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQVc7WUFDMUMsT0FBTyxxQkFBcUIsQ0FBTyxJQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtnQkFDdkQsTUFBTSxVQUFVLEdBQXFCLElBQUssQ0FBQyxVQUFVLENBQUM7Z0JBRXRELElB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aXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IHJ1bkluSW5qZWN0aW9uQ29udGV4dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5cclxuaW1wb3J0IHsgSFRUUE1ldGhvZHMsIFByb3h5VHlwZXMgfSBmcm9tICcuLi9saWIvZW51bXMnO1xyXG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlLCBTZXJ2aWNlQ2FsbFN0YXRlTWFwLCBTZXJ2aWNlUmVzcG9uc2UgfSBmcm9tICcuLi9saWIvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IGdldFJlcXVlc3QgfSBmcm9tICcuL3NlcnZpY2VSZXF1ZXN0JztcclxuaW1wb3J0IHsgY2FsbFN0YXRlLCBlcnJvclN0YXRlLCBzdWNjZXNzU3RhdGUsIHdhcm5pbmdTdGF0ZSB9IGZyb20gJy4vc2VydmljZVN0YXRlTWV0aG9kcyc7XHJcbmltcG9ydCB7IEFwcHMgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwcHMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFNlcnZpY2VDYWxsKFxyXG5cdGh0dHBNZXRob2Q6IEhUVFBNZXRob2RzLFxyXG5cdHByb3h5OiBQcm94eVR5cGVzLFxyXG5cdHNlcnZpY2VVUkw6IHN0cmluZyxcclxuXHRtZXNzYWdlPzogeyBzdWNjZXNzPzogc3RyaW5nOyBlcnJvcj86IHN0cmluZyB9LFxyXG5cdHJlbW90ZUFQST86IEFwcHMsXHJcblx0aXNNb2NrQVBJID0gZmFsc2VcclxuKTogTWV0aG9kRGVjb3JhdG9yIHtcclxuXHRyZXR1cm4gZnVuY3Rpb24gKHNlcnZpY2VDbGFzczogb2JqZWN0LCBzZXJ2aWNlTmFtZTogc3RyaW5nIHwgc3ltYm9sLCBkZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcclxuXHRcdC8vIGNvbnN0IG9yaWdpbmFsRnVuY3Rpb24gPSBkZXNjcmlwdG9yLnZhbHVlO1xyXG5cclxuXHRcdGRlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJnczogYW55W10pIHtcclxuXHRcdFx0cmV0dXJuIHJ1bkluSW5qZWN0aW9uQ29udGV4dCgoPGFueT50aGlzKS5pbmplY3RvciwgKCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQgPSAoPGFueT50aGlzKS5odHRwQ2xpZW50O1xyXG5cclxuXHRcdFx0XHRsZXQgYXBpID0gJyc7XHJcblx0XHRcdFx0aWYgKGlzTW9ja0FQSSkgYXBpID0gPHN0cmluZz5yZW1vdGVBUEk7XHJcblx0XHRcdFx0ZWxzZSBpZiAocmVtb3RlQVBJKSB7XHJcblx0XHRcdFx0XHRjb25zdCB1cmwgPSBuZXcgVVJMKEFQSV9DT05GSUdTLmFwaSk7XHJcblx0XHRcdFx0XHRhcGkgPSB1cmwub3JpZ2luICsgJy8nICsgQVBJX0NPTkZJR1MucHJlZml4TWFwW3JlbW90ZUFQSV07XHJcblx0XHRcdFx0fSBlbHNlIGFwaSA9IEFQSV9DT05GSUdTLmFwaTtcclxuXHJcblx0XHRcdFx0Y29uc3QgZW5kUG9pbnQgPSBhcGkgKyAnLycgKyBzZXJ2aWNlVVJMO1xyXG5cdFx0XHRcdGNvbnN0IHJlcXVlc3QgPSBnZXRSZXF1ZXN0KGh0dHBNZXRob2QsIGFyZ3MpO1xyXG5cdFx0XHRcdGNvbnN0IHN0YXRlczogU2VydmljZUNhbGxTdGF0ZU1hcDxhbnk+ID0gKDxhbnk+dGhpcykuc3RhdGVzO1xyXG5cclxuXHRcdFx0XHRjYWxsU3RhdGUoc3RhdGVzLCBzZXJ2aWNlTmFtZSk7XHJcblxyXG5cdFx0XHRcdGxldCBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPGFueT4gPSBuZXcgT2JzZXJ2YWJsZTxhbnk+KCk7XHJcblxyXG5cdFx0XHRcdHN3aXRjaCAoaHR0cE1ldGhvZCkge1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5HRVQ6XHJcblx0XHRcdFx0XHRcdGxldCBnZXRSZXEgPSBhcmdzLmxlbmd0aCA/ICcvJyArIGFyZ3NbMF0gOiAnJztcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZ2V0PGFueT4oZW5kUG9pbnQgKyBnZXRSZXEsIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5HRVRCWVBBUkFNUzpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZ2V0PGFueT4oZW5kUG9pbnQsIHsgcGFyYW1zOiByZXF1ZXN0IGFzIEh0dHBQYXJhbXMsIHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuR0VUQllEWU5BTUlDUEFUSDpcclxuXHRcdFx0XHRcdFx0bGV0IGdldER5bmFtaWNTZXJ2aWNlVXJsID0gc2VydmljZVVSTDtcclxuXHRcdFx0XHRcdFx0YXJncy5mb3JFYWNoKChhcmcpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRnZXREeW5hbWljU2VydmljZVVybCA9IGdldER5bmFtaWNTZXJ2aWNlVXJsLnJlcGxhY2UoJyQnLCBhcmcpO1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZ2V0PGFueT4oYXBpICsgJy8nICsgZ2V0RHluYW1pY1NlcnZpY2VVcmwsIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5QT1NUOlxyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5wb3N0PGFueT4oZW5kUG9pbnQsIGFyZ3NbMF0sIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5QT1NUQllQQVJBTVM6XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LnBvc3Q8YW55PihlbmRQb2ludCwgYXJnc1swXS5ib2R5LCB7IHBhcmFtczogcmVxdWVzdCwgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5QT1NUQllEWU5BTUlDUEFUSDpcclxuXHRcdFx0XHRcdFx0bGV0IGJvZHkgPSB7fTtcclxuXHRcdFx0XHRcdFx0bGV0IGR5bmFtaWNTZXJ2aWNlVXJsID0gc2VydmljZVVSTDtcclxuXHJcblx0XHRcdFx0XHRcdGFyZ3MuZm9yRWFjaCgoYXJnKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0aWYgKHR5cGVvZiBhcmcgPT09ICdvYmplY3QnKSBib2R5ID0gYXJnO1xyXG5cdFx0XHRcdFx0XHRcdGVsc2UgZHluYW1pY1NlcnZpY2VVcmwgPSBkeW5hbWljU2VydmljZVVybC5yZXBsYWNlKCckJywgYXJnKTtcclxuXHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LnBvc3Q8YW55PihhcGkgKyAnLycgKyBkeW5hbWljU2VydmljZVVybCwgYm9keSwgeyByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLlBVVDpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQucHV0PGFueT4oZW5kUG9pbnQgKyAnLycgKyBhcmdzWzBdLCByZXF1ZXN0LCB7IHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuUFVUQllQQVJBTVM6XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LnB1dDxhbnk+KGVuZFBvaW50LCBhcmdzWzBdLCB7IHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLlBVVEJZRFlOQU1JQ1BBVEg6XHJcblx0XHRcdFx0XHRcdGxldCBwdXRCb2R5ID0ge307XHJcblx0XHRcdFx0XHRcdGxldCBwdXREeW5hbWljU2VydmljZVVybCA9IHNlcnZpY2VVUkw7XHJcblxyXG5cdFx0XHRcdFx0XHRhcmdzLmZvckVhY2goKGFyZykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdGlmICh0eXBlb2YgYXJnID09PSAnb2JqZWN0JykgcHV0Qm9keSA9IGFyZztcclxuXHRcdFx0XHRcdFx0XHRlbHNlIHB1dER5bmFtaWNTZXJ2aWNlVXJsID0gcHV0RHluYW1pY1NlcnZpY2VVcmwucmVwbGFjZSgnJCcsIGFyZyk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5wdXQ8YW55PihhcGkgKyAnLycgKyBwdXREeW5hbWljU2VydmljZVVybCwgcHV0Qm9keSwgeyByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLkRFTEVURTpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZGVsZXRlPGFueT4oZW5kUG9pbnQgKyAnLycgKyBhcmdzWzBdLCB7IHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuREVMRVRFQllQQVJBTVM6XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LmRlbGV0ZTxhbnk+KGVuZFBvaW50LCB7IHBhcmFtczogcmVxdWVzdCBhcyBIdHRwUGFyYW1zLCByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLkRFTEVURUJZRFlOQU1JQ1BBVEg6XHJcblx0XHRcdFx0XHRcdGxldCBkZWxldGVQYXJhbXMgPSB7fTtcclxuXHRcdFx0XHRcdFx0bGV0IGRlbGV0ZUR5bmFtaWNTZXJ2aWNlVXJsID0gc2VydmljZVVSTDtcclxuXHJcblx0XHRcdFx0XHRcdGFyZ3MuZm9yRWFjaCgoYXJnKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0aWYgKHR5cGVvZiBhcmcgPT09ICdvYmplY3QnKSBkZWxldGVQYXJhbXMgPSBhcmc7XHJcblx0XHRcdFx0XHRcdFx0ZWxzZSBkZWxldGVEeW5hbWljU2VydmljZVVybCA9IGRlbGV0ZUR5bmFtaWNTZXJ2aWNlVXJsLnJlcGxhY2UoJyQnLCBhcmcpO1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LmRlbGV0ZTxhbnk+KGFwaSArICcvJyArIGRlbGV0ZUR5bmFtaWNTZXJ2aWNlVXJsLCB7XHJcblx0XHRcdFx0XHRcdFx0cGFyYW1zOiBkZWxldGVQYXJhbXMsXHJcblx0XHRcdFx0XHRcdFx0cmVzcG9uc2VUeXBlOiAnanNvbidcclxuXHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRvYnNlcnZhYmxlID0gb2JzZXJ2YWJsZS5waXBlKFxyXG5cdFx0XHRcdFx0bWFwKChyZXNwb25zZSkgPT4gbmV3IFNlcnZpY2VSZXNwb25zZShyZXF1ZXN0LCByZXNwb25zZSwgcHJveHkpKSxcclxuXHRcdFx0XHRcdHRhcCgoc2VydmljZVJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAoIXNlcnZpY2VSZXMucmVzcG9uc2UpIHtcclxuXHRcdFx0XHRcdFx0XHQoPGFueT50aGlzKS5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRcdFx0XHRcdCAga2V5OiAndG9hc3Qtcm9vdCcsXHJcblx0XHRcdFx0XHRcdFx0ICBzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdCAgc3VtbWFyeTogKDxhbnk+dGhpcykudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ21lc3NhZ2VzLnN1Y2Nlc3NNZXNzYWdlSGVhZGVyJyksXHJcblx0XHRcdFx0XHRcdFx0ICBkZXRhaWw6ICg8YW55PnRoaXMpLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdtZXNzYWdlcy5zdWNjZXNzTWVzc2FnZScpXHJcblx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdCAgfSBlbHNlIGlmIChzZXJ2aWNlUmVzLnJlc3BvbnNlLnR5cGUgPT09ICdWYWxpZGF0aW9uV2FybmluZ0V4Y2VwdGlvbicpIHtcclxuXHRcdFx0XHRcdFx0XHR3YXJuaW5nU3RhdGUoc3RhdGVzLCBzZXJ2aWNlTmFtZSwgc2VydmljZVJlcy5yZXNwb25zZSwgKDxhbnk+dGhpcykubWVzc2FnZVNlcnZpY2UpO1xyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdHN1Y2Nlc3NTdGF0ZShcclxuXHRcdFx0XHRcdFx0XHRcdHN0YXRlcyxcclxuXHRcdFx0XHRcdFx0XHRcdHNlcnZpY2VOYW1lLFxyXG5cdFx0XHRcdFx0XHRcdFx0KDxhbnk+dGhpcykudHJhbnNsb2NvU2VydmljZSxcclxuXHRcdFx0XHRcdFx0XHRcdCg8YW55PnRoaXMpLm1lc3NhZ2VTZXJ2aWNlLFxyXG5cdFx0XHRcdFx0XHRcdFx0bWVzc2FnZSxcclxuXHRcdFx0XHRcdFx0XHRcdHNlcnZpY2VSZXNcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0fSksXHJcblx0XHRcdFx0XHRjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuXHRcdFx0XHRcdFx0ZXJyb3JTdGF0ZShzdGF0ZXMsIHNlcnZpY2VOYW1lLCBlcnJvciwgKDxhbnk+dGhpcykudHJhbnNsb2NvU2VydmljZSwgKDxhbnk+dGhpcykubWVzc2FnZVNlcnZpY2UsIG1lc3NhZ2UpO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gb2YobmV3IEVycm9yUmVzcG9uc2UoZXJyb3IpKTtcclxuXHRcdFx0XHRcdH0pLFxyXG5cdFx0XHRcdFx0dGFrZVVudGlsRGVzdHJveWVkKClcclxuXHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0XHRyZXR1cm4gb2JzZXJ2YWJsZTtcclxuXHRcdFx0fSk7XHJcblx0XHR9O1xyXG5cdH07XHJcbn1cclxuIl19
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL2h0dHAvc3JjL3NlcnZpY2VCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFdBQVcsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUF1QixlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFGLE1BQU0sVUFBVSxXQUFXLENBQzFCLFVBQXVCLEVBQ3ZCLEtBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLE9BQThDLEVBQzlDLFNBQWdCLEVBQ2hCLFNBQVMsR0FBRyxLQUFLO0lBRWpCLE9BQU8sVUFBVSxZQUFvQixFQUFFLFdBQTRCLEVBQUUsVUFBOEI7UUFDbEcsNkNBQTZDO1FBRTdDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQVc7WUFDMUMsT0FBTyxxQkFBcUIsQ0FBTyxJQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtnQkFDdkQsTUFBTSxVQUFVLEdBQXFCLElBQUssQ0FBQyxVQUFVLENBQUM7Z0JBRXRELElB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Iiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwRXJyb3JSZXNwb25zZSwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgcnVuSW5JbmplY3Rpb25Db250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQVBJX0NPTkZJR1MgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwaSc7XHJcbmltcG9ydCB7IEFwcHMgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwcHMnO1xyXG5cclxuaW1wb3J0IHsgSFRUUE1ldGhvZHMsIFByb3h5VHlwZXMgfSBmcm9tICcuLi9saWIvZW51bXMnO1xyXG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlLCBTZXJ2aWNlQ2FsbFN0YXRlTWFwLCBTZXJ2aWNlUmVzcG9uc2UgfSBmcm9tICcuLi9saWIvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IGdldFJlcXVlc3QgfSBmcm9tICcuL3NlcnZpY2VSZXF1ZXN0JztcclxuaW1wb3J0IHsgY2FsbFN0YXRlLCBlcnJvclN0YXRlLCBzdWNjZXNzU3RhdGUsIHdhcm5pbmdTdGF0ZSB9IGZyb20gJy4vc2VydmljZVN0YXRlTWV0aG9kcyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gU2VydmljZUNhbGwoXHJcblx0aHR0cE1ldGhvZDogSFRUUE1ldGhvZHMsXHJcblx0cHJveHk6IFByb3h5VHlwZXMsXHJcblx0c2VydmljZVVSTDogc3RyaW5nLFxyXG5cdG1lc3NhZ2U/OiB7IHN1Y2Nlc3M/OiBzdHJpbmc7IGVycm9yPzogc3RyaW5nIH0sXHJcblx0cmVtb3RlQVBJPzogQXBwcyxcclxuXHRpc01vY2tBUEkgPSBmYWxzZVxyXG4pOiBNZXRob2REZWNvcmF0b3Ige1xyXG5cdHJldHVybiBmdW5jdGlvbiAoc2VydmljZUNsYXNzOiBvYmplY3QsIHNlcnZpY2VOYW1lOiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvcikge1xyXG5cdFx0Ly8gY29uc3Qgb3JpZ2luYWxGdW5jdGlvbiA9IGRlc2NyaXB0b3IudmFsdWU7XHJcblxyXG5cdFx0ZGVzY3JpcHRvci52YWx1ZSA9IGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xyXG5cdFx0XHRyZXR1cm4gcnVuSW5JbmplY3Rpb25Db250ZXh0KCg8YW55PnRoaXMpLmluamVjdG9yLCAoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgaHR0cENsaWVudDogSHR0cENsaWVudCA9ICg8YW55PnRoaXMpLmh0dHBDbGllbnQ7XHJcblxyXG5cdFx0XHRcdGxldCBhcGkgPSAnJztcclxuXHRcdFx0XHRpZiAoaXNNb2NrQVBJKSBhcGkgPSA8c3RyaW5nPnJlbW90ZUFQSTtcclxuXHRcdFx0XHRlbHNlIGlmIChyZW1vdGVBUEkpIHtcclxuXHRcdFx0XHRcdGNvbnN0IHVybCA9IG5ldyBVUkwoQVBJX0NPTkZJR1MuYXBpKTtcclxuXHRcdFx0XHRcdGFwaSA9IHVybC5vcmlnaW4gKyAnLycgKyBBUElfQ09ORklHUy5wcmVmaXhNYXBbcmVtb3RlQVBJXTtcclxuXHRcdFx0XHR9IGVsc2UgYXBpID0gQVBJX0NPTkZJR1MuYXBpO1xyXG5cclxuXHRcdFx0XHRjb25zdCBlbmRQb2ludCA9IGFwaSArICcvJyArIHNlcnZpY2VVUkw7XHJcblx0XHRcdFx0Y29uc3QgcmVxdWVzdCA9IGdldFJlcXVlc3QoaHR0cE1ldGhvZCwgYXJncyk7XHJcblx0XHRcdFx0Y29uc3Qgc3RhdGVzOiBTZXJ2aWNlQ2FsbFN0YXRlTWFwPGFueT4gPSAoPGFueT50aGlzKS5zdGF0ZXM7XHJcblxyXG5cdFx0XHRcdGNhbGxTdGF0ZShzdGF0ZXMsIHNlcnZpY2VOYW1lKTtcclxuXHJcblx0XHRcdFx0bGV0IG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55PiA9IG5ldyBPYnNlcnZhYmxlPGFueT4oKTtcclxuXHJcblx0XHRcdFx0c3dpdGNoIChodHRwTWV0aG9kKSB7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLkdFVDpcclxuXHRcdFx0XHRcdFx0bGV0IGdldFJlcSA9IGFyZ3MubGVuZ3RoID8gJy8nICsgYXJnc1swXSA6ICcnO1xyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5nZXQ8YW55PihlbmRQb2ludCArIGdldFJlcSwgeyByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLkdFVEJZUEFSQU1TOlxyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5nZXQ8YW55PihlbmRQb2ludCwgeyBwYXJhbXM6IHJlcXVlc3QgYXMgSHR0cFBhcmFtcywgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5HRVRCWURZTkFNSUNQQVRIOlxyXG5cdFx0XHRcdFx0XHRsZXQgZ2V0RHluYW1pY1NlcnZpY2VVcmwgPSBzZXJ2aWNlVVJMO1xyXG5cdFx0XHRcdFx0XHRhcmdzLmZvckVhY2goKGFyZykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdGdldER5bmFtaWNTZXJ2aWNlVXJsID0gZ2V0RHluYW1pY1NlcnZpY2VVcmwucmVwbGFjZSgnJCcsIGFyZyk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5nZXQ8YW55PihhcGkgKyAnLycgKyBnZXREeW5hbWljU2VydmljZVVybCwgeyByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLlBPU1Q6XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LnBvc3Q8YW55PihlbmRQb2ludCwgYXJnc1swXSwgeyByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLlBPU1RCWVBBUkFNUzpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQucG9zdDxhbnk+KGVuZFBvaW50LCBhcmdzWzBdLmJvZHksIHsgcGFyYW1zOiByZXF1ZXN0LCByZXNwb25zZVR5cGU6ICdqc29uJyB9KTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHRjYXNlIEhUVFBNZXRob2RzLlBPU1RCWURZTkFNSUNQQVRIOlxyXG5cdFx0XHRcdFx0XHRsZXQgYm9keSA9IHt9O1xyXG5cdFx0XHRcdFx0XHRsZXQgZHluYW1pY1NlcnZpY2VVcmwgPSBzZXJ2aWNlVVJMO1xyXG5cclxuXHRcdFx0XHRcdFx0YXJncy5mb3JFYWNoKChhcmcpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRpZiAodHlwZW9mIGFyZyA9PT0gJ29iamVjdCcpIGJvZHkgPSBhcmc7XHJcblx0XHRcdFx0XHRcdFx0ZWxzZSBkeW5hbWljU2VydmljZVVybCA9IGR5bmFtaWNTZXJ2aWNlVXJsLnJlcGxhY2UoJyQnLCBhcmcpO1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQucG9zdDxhbnk+KGFwaSArICcvJyArIGR5bmFtaWNTZXJ2aWNlVXJsLCBib2R5LCB7IHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuUFVUOlxyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5wdXQ8YW55PihlbmRQb2ludCArICcvJyArIGFyZ3NbMF0sIHJlcXVlc3QsIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5QVVRCWVBBUkFNUzpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQucHV0PGFueT4oZW5kUG9pbnQsIGFyZ3NbMF0sIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuUFVUQllEWU5BTUlDUEFUSDpcclxuXHRcdFx0XHRcdFx0bGV0IHB1dEJvZHkgPSB7fTtcclxuXHRcdFx0XHRcdFx0bGV0IHB1dER5bmFtaWNTZXJ2aWNlVXJsID0gc2VydmljZVVSTDtcclxuXHJcblx0XHRcdFx0XHRcdGFyZ3MuZm9yRWFjaCgoYXJnKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0aWYgKHR5cGVvZiBhcmcgPT09ICdvYmplY3QnKSBwdXRCb2R5ID0gYXJnO1xyXG5cdFx0XHRcdFx0XHRcdGVsc2UgcHV0RHluYW1pY1NlcnZpY2VVcmwgPSBwdXREeW5hbWljU2VydmljZVVybC5yZXBsYWNlKCckJywgYXJnKTtcclxuXHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdG9ic2VydmFibGUgPSBodHRwQ2xpZW50LnB1dDxhbnk+KGFwaSArICcvJyArIHB1dER5bmFtaWNTZXJ2aWNlVXJsLCBwdXRCb2R5LCB7IHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuREVMRVRFOlxyXG5cdFx0XHRcdFx0XHRvYnNlcnZhYmxlID0gaHR0cENsaWVudC5kZWxldGU8YW55PihlbmRQb2ludCArICcvJyArIGFyZ3NbMF0sIHsgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0Y2FzZSBIVFRQTWV0aG9kcy5ERUxFVEVCWVBBUkFNUzpcclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZGVsZXRlPGFueT4oZW5kUG9pbnQsIHsgcGFyYW1zOiByZXF1ZXN0IGFzIEh0dHBQYXJhbXMsIHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdGNhc2UgSFRUUE1ldGhvZHMuREVMRVRFQllEWU5BTUlDUEFUSDpcclxuXHRcdFx0XHRcdFx0bGV0IGRlbGV0ZVBhcmFtcyA9IHt9O1xyXG5cdFx0XHRcdFx0XHRsZXQgZGVsZXRlRHluYW1pY1NlcnZpY2VVcmwgPSBzZXJ2aWNlVVJMO1xyXG5cclxuXHRcdFx0XHRcdFx0YXJncy5mb3JFYWNoKChhcmcpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRpZiAodHlwZW9mIGFyZyA9PT0gJ29iamVjdCcpIGRlbGV0ZVBhcmFtcyA9IGFyZztcclxuXHRcdFx0XHRcdFx0XHRlbHNlIGRlbGV0ZUR5bmFtaWNTZXJ2aWNlVXJsID0gZGVsZXRlRHluYW1pY1NlcnZpY2VVcmwucmVwbGFjZSgnJCcsIGFyZyk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cclxuXHRcdFx0XHRcdFx0b2JzZXJ2YWJsZSA9IGh0dHBDbGllbnQuZGVsZXRlPGFueT4oYXBpICsgJy8nICsgZGVsZXRlRHluYW1pY1NlcnZpY2VVcmwsIHtcclxuXHRcdFx0XHRcdFx0XHRwYXJhbXM6IGRlbGV0ZVBhcmFtcyxcclxuXHRcdFx0XHRcdFx0XHRyZXNwb25zZVR5cGU6ICdqc29uJ1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdG9ic2VydmFibGUgPSBvYnNlcnZhYmxlLnBpcGUoXHJcblx0XHRcdFx0XHRtYXAoKHJlc3BvbnNlKSA9PiBuZXcgU2VydmljZVJlc3BvbnNlKHJlcXVlc3QsIHJlc3BvbnNlLCBwcm94eSkpLFxyXG5cdFx0XHRcdFx0dGFwKChzZXJ2aWNlUmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdGlmICghc2VydmljZVJlcy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdFx0XHRcdCg8YW55PnRoaXMpLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290JyxcclxuXHRcdFx0XHRcdFx0XHRcdHNldmVyaXR5OiAnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHRzdW1tYXJ5OiAoPGFueT50aGlzKS50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMuc3VjY2Vzc01lc3NhZ2VIZWFkZXInKSxcclxuXHRcdFx0XHRcdFx0XHRcdGRldGFpbDogKDxhbnk+dGhpcykudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ21lc3NhZ2VzLnN1Y2Nlc3NNZXNzYWdlJylcclxuXHRcdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIGlmIChzZXJ2aWNlUmVzLnJlc3BvbnNlLnR5cGUgPT09ICdWYWxpZGF0aW9uV2FybmluZ0V4Y2VwdGlvbicpIHtcclxuXHRcdFx0XHRcdFx0XHR3YXJuaW5nU3RhdGUoc3RhdGVzLCBzZXJ2aWNlTmFtZSwgc2VydmljZVJlcy5yZXNwb25zZSwgKDxhbnk+dGhpcykubWVzc2FnZVNlcnZpY2UpO1xyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdHN1Y2Nlc3NTdGF0ZShcclxuXHRcdFx0XHRcdFx0XHRcdHN0YXRlcyxcclxuXHRcdFx0XHRcdFx0XHRcdHNlcnZpY2VOYW1lLFxyXG5cdFx0XHRcdFx0XHRcdFx0KDxhbnk+dGhpcykudHJhbnNsb2NvU2VydmljZSxcclxuXHRcdFx0XHRcdFx0XHRcdCg8YW55PnRoaXMpLm1lc3NhZ2VTZXJ2aWNlLFxyXG5cdFx0XHRcdFx0XHRcdFx0bWVzc2FnZSxcclxuXHRcdFx0XHRcdFx0XHRcdHNlcnZpY2VSZXNcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9KSxcclxuXHRcdFx0XHRcdGNhdGNoRXJyb3IoYXN5bmMgKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRhd2FpdCBlcnJvclN0YXRlKFxyXG5cdFx0XHRcdFx0XHRcdHN0YXRlcyxcclxuXHRcdFx0XHRcdFx0XHRzZXJ2aWNlTmFtZSxcclxuXHRcdFx0XHRcdFx0XHRlcnJvcixcclxuXHRcdFx0XHRcdFx0XHQoPGFueT50aGlzKS50cmFuc2xvY29TZXJ2aWNlLFxyXG5cdFx0XHRcdFx0XHRcdCg8YW55PnRoaXMpLm1lc3NhZ2VTZXJ2aWNlLFxyXG5cdFx0XHRcdFx0XHRcdCg8YW55PnRoaXMpLmtleWNsb2FrLFxyXG5cdFx0XHRcdFx0XHRcdG1lc3NhZ2VcclxuXHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIG9mKG5ldyBFcnJvclJlc3BvbnNlKGVycm9yKSk7XHJcblx0XHRcdFx0XHR9KSxcclxuXHRcdFx0XHRcdHRha2VVbnRpbERlc3Ryb3llZCgpXHJcblx0XHRcdFx0KTtcclxuXHJcblx0XHRcdFx0cmV0dXJuIG9ic2VydmFibGU7XHJcblx0XHRcdH0pO1xyXG5cdFx0fTtcclxuXHR9O1xyXG59XHJcbiJdfQ==
|
|
@@ -21,7 +21,7 @@ export const successState = (states, serviceName, translocoService, messageServi
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
export const errorState = (states, serviceName, error, translocoService, messageService, message) => {
|
|
24
|
+
export const errorState = async (states, serviceName, error, translocoService, messageService, keycloakService, message) => {
|
|
25
25
|
states[serviceName] = {
|
|
26
26
|
serviceCalled: true,
|
|
27
27
|
waitingForResponse: false,
|
|
@@ -35,6 +35,7 @@ export const errorState = (states, serviceName, error, translocoService, message
|
|
|
35
35
|
break;
|
|
36
36
|
case 401:
|
|
37
37
|
httpError = 'Yetkisiz Erişim';
|
|
38
|
+
await keycloakService.login({ redirectUri: window.location.href });
|
|
38
39
|
break;
|
|
39
40
|
case 403:
|
|
40
41
|
httpError = 'Erişim Engellendi';
|
|
@@ -155,4 +156,4 @@ const getTranslatedMessage = (messageCode, translocoService, response) => {
|
|
|
155
156
|
}
|
|
156
157
|
return translatedMessage;
|
|
157
158
|
};
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZVN0YXRlTWV0aG9kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvaHR0cC9zcmMvc2VydmljZVN0YXRlTWV0aG9kcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFnQyxFQUFFLFdBQWdCLEVBQVEsRUFBRTtJQUNyRixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUc7UUFDckIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsSUFBSTtRQUN4QixrQkFBa0IsRUFBRSxLQUFLO1FBQ3pCLGlCQUFpQixFQUFFLEtBQUs7S0FDeEIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUMzQixNQUFnQyxFQUNoQyxXQUFnQixFQUNoQixnQkFBa0MsRUFDbEMsY0FBOEIsRUFDOUIsT0FBOEMsRUFDOUMsUUFBYyxFQUNQLEVBQUU7SUFDVCxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUc7UUFDckIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsS0FBSztRQUN6QixrQkFBa0IsRUFBRSxJQUFJO1FBQ3hCLGlCQUFpQixFQUFFLEtBQUs7S0FDeEIsQ0FBQztJQUVGLElBQUksT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3RCLGNBQWMsQ0FBQyxHQUFHLENBQUM7WUFDbEIsR0FBRyxFQUFFLFlBQVk7WUFDakIsUUFBUSxFQUFFLFNBQVM7WUFDbkIsT0FBTyxFQUFFLG9CQUFvQixDQUFTLE9BQU8sQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDO1NBQ2xGLENBQUMsQ0FBQztJQUNKLENBQUM7QUFDRixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FDekIsTUFBZ0MsRUFDaEMsV0FBZ0IsRUFDaEIsS0FBd0IsRUFDeEIsZ0JBQWtD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QUksVUFBVSxDQUFDO1lBRWYsS0FBSyxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDOUIsVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDM0QsQ0FBQztZQUVELElBQUksY0FBYyxHQUFHLEdBQUcsZ0JBQWdCLEdBQUcsUUFBUSxHQUFHLGNBQWMsRUFBRSxDQUFDO1lBQ3ZFLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDM0UsQ0FBQyxRQUFRLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO0lBQ3hELENBQUM7SUFFRCxPQUFPLGlCQUFpQixDQUFDO0FBQzFCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XHJcblxyXG5pbXBvcnQgeyBFcnJvckRldGFpbCwgU2VydmljZUNhbGxTdGF0ZU1hcCB9IGZyb20gJy4uL2xpYi9pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBjb25zdCBjYWxsU3RhdGUgPSAoc3RhdGVzOiBTZXJ2aWNlQ2FsbFN0YXRlTWFwPGFueT4sIHNlcnZpY2VOYW1lOiBhbnkpOiB2b2lkID0+IHtcclxuXHRzdGF0ZXNbc2VydmljZU5hbWVdID0ge1xyXG5cdFx0c2VydmljZUNhbGxlZDogdHJ1ZSxcclxuXHRcdHdhaXRpbmdGb3JSZXNwb25zZTogdHJ1ZSxcclxuXHRcdHJlc3BvbnNlSXNSZWNpZXZlZDogZmFsc2UsXHJcblx0XHRzZXJ2aWNlQ2FsbEZhaWxlZDogZmFsc2VcclxuXHR9O1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHN1Y2Nlc3NTdGF0ZSA9IChcclxuXHRzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PixcclxuXHRzZXJ2aWNlTmFtZTogYW55LFxyXG5cdHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXHJcblx0bWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG5cdG1lc3NhZ2U/OiB7IHN1Y2Nlc3M/OiBzdHJpbmc7IGVycm9yPzogc3RyaW5nIH0sXHJcblx0cmVzcG9uc2U/OiBhbnlcclxuKTogdm9pZCA9PiB7XHJcblx0c3RhdGVzW3NlcnZpY2VOYW1lXSA9IHtcclxuXHRcdHNlcnZpY2VDYWxsZWQ6IHRydWUsXHJcblx0XHR3YWl0aW5nRm9yUmVzcG9uc2U6IGZhbHNlLFxyXG5cdFx0cmVzcG9uc2VJc1JlY2lldmVkOiB0cnVlLFxyXG5cdFx0c2VydmljZUNhbGxGYWlsZWQ6IGZhbHNlXHJcblx0fTtcclxuXHJcblx0aWYgKG1lc3NhZ2U/LnN1Y2Nlc3MpIHtcclxuXHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRzdW1tYXJ5OiBnZXRUcmFuc2xhdGVkTWVzc2FnZSg8c3RyaW5nPm1lc3NhZ2Uuc3VjY2VzcywgdHJhbnNsb2NvU2VydmljZSwgcmVzcG9uc2UpXHJcblx0XHR9KTtcclxuXHR9XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgZXJyb3JTdGF0ZSA9IChcclxuXHRzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PixcclxuXHRzZXJ2aWNlTmFtZTogYW55LFxyXG5cdGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSxcclxuXHR0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuXHRtZXNzYWdlPzogeyBzdWNjZXNzPzogc3RyaW5nOyBlcnJvcj86IHN0cmluZzsgZGlzcGxheT86IHN0cmluZyB9XHJcbik6IHZvaWQgPT4ge1xyXG5cdHN0YXRlc1tzZXJ2aWNlTmFtZV0gPSB7XHJcblx0XHRzZXJ2aWNlQ2FsbGVkOiB0cnVlLFxyXG5cdFx0d2FpdGluZ0ZvclJlc3BvbnNlOiBmYWxzZSxcclxuXHRcdHJlc3BvbnNlSXNSZWNpZXZlZDogdHJ1ZSxcclxuXHRcdHNlcnZpY2VDYWxsRmFpbGVkOiB0cnVlXHJcblx0fTtcclxuXHJcblx0bGV0IGh0dHBFcnJvcjogc3RyaW5nO1xyXG5cclxuXHRzd2l0Y2ggKGVycm9yLnN0YXR1cykge1xyXG5cdFx0Y2FzZSA0MDA6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdIYXRhbMSxIMSwc3Rlayc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDE6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdZZXRraXNpeiBFcmnFn2ltJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDQwMzpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0VyacWfaW0gRW5nZWxsZW5kaSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDQ6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdLYXluYWsgQnVsdW5hbWFkxLEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNDA1OlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnxLB6aW4gVmVyaWxtZXllbiBNZXRvZCc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDY6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdLYWJ1bCBFZGlsZW1leiBCYcWfbMSxayc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDg6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdaYW1hbiBBxZ/EsW3EsSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDk6XHJcblx0XHRcdGh0dHBFcnJvciA9ICfDh2FrxLHFn21hJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwMDpcclxuXHRcdFx0aHR0cEVycm9yID0gJ1N1bnVjdSBIYXRhc8SxJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwMTpcclxuXHRcdFx0aHR0cEVycm9yID0gJ1N1bnVjdSBZYXDEsWxhbmTEsXJtYSBIYXRhc8SxJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwMjpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0dlw6dlcnNpeiBBxJ8gR2XDp2lkaSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA1MDM6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdTdW51Y3UgSGl6bWV0IFZlcm1peW9yJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwNDpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0HEnyBHZcOnaWRpIFphbWFuIEHFn8SxbcSxJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwNTpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0hUVFAgUHJvdG9rb2wgRGVzdGVrbGVubWl5b3InO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTExOlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnQcSfIEtpbWxpayBEb8SfcnVsYW1hc8SxIEdlcmVrbGknO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTk5OlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnQcSfIEJhxJ9sYW50xLFzxLEgWmFtYW4gQcWfxLFtxLEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGRlZmF1bHQ6XHJcblx0XHRcdGh0dHBFcnJvciA9IGVycm9yPy5lcnJvcj8ubWVzc2FnZTtcclxuXHRcdFx0YnJlYWs7XHJcblx0fVxyXG5cclxuXHRpZiAoZXJyb3IuZXJyb3I/LmRldGFpbHMgJiYgQXJyYXkuaXNBcnJheShlcnJvci5lcnJvci5kZXRhaWxzKSAmJiBlcnJvci5lcnJvci5kZXRhaWxzLmxlbmd0aCA+IDApIHtcclxuXHRcdGVycm9yLmVycm9yLmRldGFpbHMuZm9yRWFjaCgoZGV0YWlsOiBFcnJvckRldGFpbCkgPT4ge1xyXG5cdFx0XHRtZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRcdHNldmVyaXR5OiAnZXJyb3InLFxyXG5cdFx0XHRcdHN1bW1hcnk6IGVycm9yPy5lcnJvcj8ubWVzc2FnZSxcclxuXHRcdFx0XHRkZXRhaWw6IChkZXRhaWwuZmllbGROYW1lICE9PSBudWxsID8gZGV0YWlsLmZpZWxkTmFtZSArICcgLSAnIDogJycpICsgZGV0YWlsLnJlYXNvblxyXG5cdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cdH0gZWxzZSB7XHJcblx0XHRtZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRrZXk6ICd0b2FzdC1yb290JyxcclxuXHRcdFx0c2V2ZXJpdHk6ICdlcnJvcicsXHJcblx0XHRcdHN1bW1hcnk6IGh0dHBFcnJvcixcclxuXHRcdFx0ZGV0YWlsOiBlcnJvcj8uZXJyb3I/Lm1lc3NhZ2VcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0aWYgKG1lc3NhZ2U/LmVycm9yKSB7XHJcblx0XHRtZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRrZXk6ICd0b2FzdC1yb290JyxcclxuXHRcdFx0c2V2ZXJpdHk6ICdlcnJvcicsXHJcblx0XHRcdHN1bW1hcnk6XHJcblx0XHRcdFx0ZXJyb3I/LmVycm9yPy5tZXNzYWdlID8gZXJyb3I/LmVycm9yPy5tZXNzYWdlIDogZ2V0VHJhbnNsYXRlZE1lc3NhZ2UoPHN0cmluZz5tZXNzYWdlLmVycm9yLCB0cmFuc2xvY29TZXJ2aWNlKVxyXG5cdFx0fSk7XHJcblx0fVxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHdhcm5pbmdTdGF0ZSA9IChcclxuXHRzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PixcclxuXHRzZXJ2aWNlTmFtZTogYW55LFxyXG5cdHJlc3BvbnNlOiBhbnksXHJcblx0bWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlXHJcbik6IHZvaWQgPT4ge1xyXG5cdHN0YXRlc1tzZXJ2aWNlTmFtZV0gPSB7XHJcblx0XHRzZXJ2aWNlQ2FsbGVkOiB0cnVlLFxyXG5cdFx0d2FpdGluZ0ZvclJlc3BvbnNlOiBmYWxzZSxcclxuXHRcdHJlc3BvbnNlSXNSZWNpZXZlZDogdHJ1ZSxcclxuXHRcdHNlcnZpY2VDYWxsRmFpbGVkOiB0cnVlXHJcblx0fTtcclxuXHJcblx0aWYgKHJlc3BvbnNlPy5kZXRhaWxzICYmIEFycmF5LmlzQXJyYXkocmVzcG9uc2UuZGV0YWlscykgJiYgcmVzcG9uc2UuZGV0YWlscy5sZW5ndGggPiAwKSB7XHJcblx0XHRyZXNwb25zZS5kZXRhaWxzLmZvckVhY2goKGRldGFpbDogRXJyb3JEZXRhaWwpID0+IHtcclxuXHRcdFx0bWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuXHRcdFx0XHRrZXk6ICd0b2FzdC1yb290JyxcclxuXHRcdFx0XHRzZXZlcml0eTogJ3dhcm4nLFxyXG5cdFx0XHRcdHN1bW1hcnk6IHJlc3BvbnNlPy5tZXNzYWdlLFxyXG5cdFx0XHRcdGRldGFpbDogKGRldGFpbC5maWVsZE5hbWUgIT09IG51bGwgPyBkZXRhaWwuZmllbGROYW1lICsgJyAtICcgOiAnJykgKyBkZXRhaWwucmVhc29uXHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0fSBlbHNlIHtcclxuXHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRzZXZlcml0eTogJ3dhcm4nLFxyXG5cdFx0XHRkZXRhaWw6IHJlc3BvbnNlPy5tZXNzYWdlXHJcblx0XHR9KTtcclxuXHR9XHJcbn07XHJcblxyXG5jb25zdCBnZXRUcmFuc2xhdGVkTWVzc2FnZSA9IChtZXNzYWdlQ29kZTogc3RyaW5nLCB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLCByZXNwb25zZT86IGFueSk6IHN0cmluZyA9PiB7XHJcblx0Y29uc3QgdHJhbnNsYXRlT2JqZWN0ID0gdHJhbnNsb2NvU2VydmljZS5nZXRUcmFuc2xhdGlvbigpLmdldCh0cmFuc2xvY29TZXJ2aWNlLmdldEFjdGl2ZUxhbmcoKSk7XHJcblx0bGV0IHRyYW5zbGF0ZWRNZXNzYWdlID0gdHJhbnNsYXRlT2JqZWN0Py5bbWVzc2FnZUNvZGVdID8/IG1lc3NhZ2VDb2RlO1xyXG5cclxuXHRjb25zdCBwYXJhbVN0YXJ0U3ltYm9sID0gJ3t7JztcclxuXHRjb25zdCBwYXJhbUVuZFN5bWJvbCA9ICd9fSc7XHJcblxyXG5cdGlmIChyZXNwb25zZSAmJiB0cmFuc2xhdGVkTWVzc2FnZS5pbmNsdWRlcyhwYXJhbVN0YXJ0U3ltYm9sKSAmJiB0cmFuc2xhdGVkTWVzc2FnZS5pbmNsdWRlcyhwYXJhbUVuZFN5bWJvbCkpIHtcclxuXHRcdGRvIHtcclxuXHRcdFx0bGV0IHBhcmFtU3RhcnRJbmRleCA9IHRyYW5zbGF0ZWRNZXNzYWdlLmluZGV4T2YocGFyYW1TdGFydFN5bWJvbCk7XHJcblx0XHRcdGxldCBwYXJhbUVuZEluZGV4ID0gdHJhbnNsYXRlZE1lc3NhZ2UuaW5kZXhPZihwYXJhbUVuZFN5bWJvbCk7XHJcblx0XHRcdGxldCBwYXJhbUtleSA9IHRyYW5zbGF0ZWRNZXNzYWdlLnNsaWNlKHBhcmFtU3RhcnRJbmRleCArIHBhcmFtU3RhcnRTeW1ib2wubGVuZ3RoLCBwYXJhbUVuZEluZGV4KTtcclxuXHJcblx0XHRcdC8vIFNwbGl0dGluZyB0aGUga2V5IHRvIGdldCBuZXN0ZWQgb2JqZWN0IHZhbHVlc1xyXG5cdFx0XHRsZXQgcGFyYW1LZXlMaXN0ID0gcGFyYW1LZXkuc3BsaXQoJy4nKTtcclxuXHRcdFx0bGV0IHBhcmFtVmFsdWU7XHJcblxyXG5cdFx0XHRmb3IgKGxldCBrZXkgb2YgcGFyYW1LZXlMaXN0KSB7XHJcblx0XHRcdFx0cGFyYW1WYWx1ZSA9IHBhcmFtVmFsdWUgPyBwYXJhbVZhbHVlW2tleV0gOiByZXNwb25zZVtrZXldO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRsZXQgcmVwbGFjZVBhdHRlcm4gPSBgJHtwYXJhbVN0YXJ0U3ltYm9sfSR7cGFyYW1LZXl9JHtwYXJhbUVuZFN5bWJvbH1gO1xyXG5cdFx0XHR0cmFuc2xhdGVkTWVzc2FnZSA9IHRyYW5zbGF0ZWRNZXNzYWdlLnJlcGxhY2UocmVwbGFjZVBhdHRlcm4sIHBhcmFtVmFsdWUpO1xyXG5cdFx0fSB3aGlsZSAodHJhbnNsYXRlZE1lc3NhZ2UuaW5jbHVkZXMocGFyYW1TdGFydFN5bWJvbCkpO1xyXG5cdH1cclxuXHJcblx0cmV0dXJuIHRyYW5zbGF0ZWRNZXNzYWdlO1xyXG59O1xyXG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZVN0YXRlTWV0aG9kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvaHR0cC9zcmMvc2VydmljZVN0YXRlTWV0aG9kcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFnQyxFQUFFLFdBQWdCLEVBQVEsRUFBRTtJQUNyRixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUc7UUFDckIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsSUFBSTtRQUN4QixrQkFBa0IsRUFBRSxLQUFLO1FBQ3pCLGlCQUFpQixFQUFFLEtBQUs7S0FDeEIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUMzQixNQUFnQyxFQUNoQyxXQUFnQixFQUNoQixnQkFBa0MsRUFDbEMsY0FBOEIsRUFDOUIsT0FBOEMsRUFDOUMsUUFBYyxFQUNQLEVBQUU7SUFDVCxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUc7UUFDckIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsS0FBSztRQUN6QixrQkFBa0IsRUFBRSxJQUFJO1FBQ3hCLGlCQUFpQixFQUFFLEtBQUs7S0FDeEIsQ0FBQztJQUVGLElBQUksT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3RCLGNBQWMsQ0FBQyxHQUFHLENBQUM7WUFDbEIsR0FBRyxFQUFFLFlBQVk7WUFDakIsUUFBUSxFQUFFLFNBQVM7WUFDbkIsT0FBTyxFQUFFLG9CQUFvQixDQUFTLE9BQU8sQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDO1NBQ2xGLENBQUMsQ0FBQztJQUNKLENBQUM7QUFDRixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxFQUM5QixNQUFnQyxFQUNoQyxXQUFnQixFQUNoQixLQUF3QixFQUN4Qixn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QyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFFakcsZ0RBQWdEO1lBQ2hELElBQUksWUFBWSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkMsSUFBSSxVQUFVLENBQUM7WUFFZixLQUFLLElBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO2dCQUM5QixVQUFVLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzRCxDQUFDO1lBRUQsSUFBSSxjQUFjLEdBQUcsR0FBRyxnQkFBZ0IsR0FBRyxRQUFRLEdBQUcsY0FBYyxFQUFFLENBQUM7WUFDdkUsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMzRSxDQUFDLFFBQVEsaUJBQWlCLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUU7SUFDeEQsQ0FBQztJQUVELE9BQU8saUJBQWlCLENBQUM7QUFDMUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgS2V5Y2xvYWtTZXJ2aWNlIH0gZnJvbSAna2V5Y2xvYWstYW5ndWxhcic7XHJcblxyXG5pbXBvcnQgeyBFcnJvckRldGFpbCwgU2VydmljZUNhbGxTdGF0ZU1hcCB9IGZyb20gJy4uL2xpYi9pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBjb25zdCBjYWxsU3RhdGUgPSAoc3RhdGVzOiBTZXJ2aWNlQ2FsbFN0YXRlTWFwPGFueT4sIHNlcnZpY2VOYW1lOiBhbnkpOiB2b2lkID0+IHtcclxuXHRzdGF0ZXNbc2VydmljZU5hbWVdID0ge1xyXG5cdFx0c2VydmljZUNhbGxlZDogdHJ1ZSxcclxuXHRcdHdhaXRpbmdGb3JSZXNwb25zZTogdHJ1ZSxcclxuXHRcdHJlc3BvbnNlSXNSZWNpZXZlZDogZmFsc2UsXHJcblx0XHRzZXJ2aWNlQ2FsbEZhaWxlZDogZmFsc2VcclxuXHR9O1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHN1Y2Nlc3NTdGF0ZSA9IChcclxuXHRzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PixcclxuXHRzZXJ2aWNlTmFtZTogYW55LFxyXG5cdHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXHJcblx0bWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG5cdG1lc3NhZ2U/OiB7IHN1Y2Nlc3M/OiBzdHJpbmc7IGVycm9yPzogc3RyaW5nIH0sXHJcblx0cmVzcG9uc2U/OiBhbnlcclxuKTogdm9pZCA9PiB7XHJcblx0c3RhdGVzW3NlcnZpY2VOYW1lXSA9IHtcclxuXHRcdHNlcnZpY2VDYWxsZWQ6IHRydWUsXHJcblx0XHR3YWl0aW5nRm9yUmVzcG9uc2U6IGZhbHNlLFxyXG5cdFx0cmVzcG9uc2VJc1JlY2lldmVkOiB0cnVlLFxyXG5cdFx0c2VydmljZUNhbGxGYWlsZWQ6IGZhbHNlXHJcblx0fTtcclxuXHJcblx0aWYgKG1lc3NhZ2U/LnN1Y2Nlc3MpIHtcclxuXHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRzdW1tYXJ5OiBnZXRUcmFuc2xhdGVkTWVzc2FnZSg8c3RyaW5nPm1lc3NhZ2Uuc3VjY2VzcywgdHJhbnNsb2NvU2VydmljZSwgcmVzcG9uc2UpXHJcblx0XHR9KTtcclxuXHR9XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgZXJyb3JTdGF0ZSA9IGFzeW5jIChcclxuXHRzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8YW55PixcclxuXHRzZXJ2aWNlTmFtZTogYW55LFxyXG5cdGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSxcclxuXHR0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuXHRrZXljbG9ha1NlcnZpY2U6IEtleWNsb2FrU2VydmljZSxcclxuXHRtZXNzYWdlPzogeyBzdWNjZXNzPzogc3RyaW5nOyBlcnJvcj86IHN0cmluZzsgZGlzcGxheT86IHN0cmluZyB9XHJcbik6IFByb21pc2U8dm9pZD4gPT4ge1xyXG5cdHN0YXRlc1tzZXJ2aWNlTmFtZV0gPSB7XHJcblx0XHRzZXJ2aWNlQ2FsbGVkOiB0cnVlLFxyXG5cdFx0d2FpdGluZ0ZvclJlc3BvbnNlOiBmYWxzZSxcclxuXHRcdHJlc3BvbnNlSXNSZWNpZXZlZDogdHJ1ZSxcclxuXHRcdHNlcnZpY2VDYWxsRmFpbGVkOiB0cnVlXHJcblx0fTtcclxuXHJcblx0bGV0IGh0dHBFcnJvcjogc3RyaW5nO1xyXG5cclxuXHRzd2l0Y2ggKGVycm9yLnN0YXR1cykge1xyXG5cdFx0Y2FzZSA0MDA6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdIYXRhbMSxIMSwc3Rlayc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDE6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdZZXRraXNpeiBFcmnFn2ltJztcclxuXHRcdFx0YXdhaXQga2V5Y2xvYWtTZXJ2aWNlLmxvZ2luKHsgcmVkaXJlY3RVcmk6IHdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNDAzOlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnRXJpxZ9pbSBFbmdlbGxlbmRpJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDQwNDpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0theW5hayBCdWx1bmFtYWTEsSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA0MDU6XHJcblx0XHRcdGh0dHBFcnJvciA9ICfEsHppbiBWZXJpbG1leWVuIE1ldG9kJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDQwNjpcclxuXHRcdFx0aHR0cEVycm9yID0gJ0thYnVsIEVkaWxlbWV6IEJhxZ9sxLFrJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDQwODpcclxuXHRcdFx0aHR0cEVycm9yID0gJ1phbWFuIEHFn8SxbcSxJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDQwOTpcclxuXHRcdFx0aHR0cEVycm9yID0gJ8OHYWvEscWfbWEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTAwOlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnU3VudWN1IEhhdGFzxLEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTAxOlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnU3VudWN1IFlhcMSxbGFuZMSxcm1hIEhhdGFzxLEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTAyOlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnR2XDp2Vyc2l6IEHEnyBHZcOnaWRpJztcclxuXHRcdFx0YnJlYWs7XHJcblx0XHRjYXNlIDUwMzpcclxuXHRcdFx0aHR0cEVycm9yID0gJ1N1bnVjdSBIaXptZXQgVmVybWl5b3InO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTA0OlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnQcSfIEdlw6dpZGkgWmFtYW4gQcWfxLFtxLEnO1xyXG5cdFx0XHRicmVhaztcclxuXHRcdGNhc2UgNTA1OlxyXG5cdFx0XHRodHRwRXJyb3IgPSAnSFRUUCBQcm90b2tvbCBEZXN0ZWtsZW5taXlvcic7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA1MTE6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdBxJ8gS2ltbGlrIERvxJ9ydWxhbWFzxLEgR2VyZWtsaSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0Y2FzZSA1OTk6XHJcblx0XHRcdGh0dHBFcnJvciA9ICdBxJ8gQmHEn2xhbnTEsXPEsSBaYW1hbiBBxZ/EsW3EsSc7XHJcblx0XHRcdGJyZWFrO1xyXG5cdFx0ZGVmYXVsdDpcclxuXHRcdFx0aHR0cEVycm9yID0gZXJyb3I/LmVycm9yPy5tZXNzYWdlO1xyXG5cdFx0XHRicmVhaztcclxuXHR9XHJcblxyXG5cdGlmIChlcnJvci5lcnJvcj8uZGV0YWlscyAmJiBBcnJheS5pc0FycmF5KGVycm9yLmVycm9yLmRldGFpbHMpICYmIGVycm9yLmVycm9yLmRldGFpbHMubGVuZ3RoID4gMCkge1xyXG5cdFx0ZXJyb3IuZXJyb3IuZGV0YWlscy5mb3JFYWNoKChkZXRhaWw6IEVycm9yRGV0YWlsKSA9PiB7XHJcblx0XHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0a2V5OiAndG9hc3Qtcm9vdCcsXHJcblx0XHRcdFx0c2V2ZXJpdHk6ICdlcnJvcicsXHJcblx0XHRcdFx0c3VtbWFyeTogZXJyb3I/LmVycm9yPy5tZXNzYWdlLFxyXG5cdFx0XHRcdGRldGFpbDogKGRldGFpbC5maWVsZE5hbWUgIT09IG51bGwgPyBkZXRhaWwuZmllbGROYW1lICsgJyAtICcgOiAnJykgKyBkZXRhaWwucmVhc29uXHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0fSBlbHNlIHtcclxuXHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRzZXZlcml0eTogJ2Vycm9yJyxcclxuXHRcdFx0c3VtbWFyeTogaHR0cEVycm9yLFxyXG5cdFx0XHRkZXRhaWw6IGVycm9yPy5lcnJvcj8ubWVzc2FnZVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRpZiAobWVzc2FnZT8uZXJyb3IpIHtcclxuXHRcdG1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRzZXZlcml0eTogJ2Vycm9yJyxcclxuXHRcdFx0c3VtbWFyeTpcclxuXHRcdFx0XHRlcnJvcj8uZXJyb3I/Lm1lc3NhZ2UgPyBlcnJvcj8uZXJyb3I/Lm1lc3NhZ2UgOiBnZXRUcmFuc2xhdGVkTWVzc2FnZSg8c3RyaW5nPm1lc3NhZ2UuZXJyb3IsIHRyYW5zbG9jb1NlcnZpY2UpXHJcblx0XHR9KTtcclxuXHR9XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3Qgd2FybmluZ1N0YXRlID0gKFxyXG5cdHN0YXRlczogU2VydmljZUNhbGxTdGF0ZU1hcDxhbnk+LFxyXG5cdHNlcnZpY2VOYW1lOiBhbnksXHJcblx0cmVzcG9uc2U6IGFueSxcclxuXHRtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcclxuKTogdm9pZCA9PiB7XHJcblx0c3RhdGVzW3NlcnZpY2VOYW1lXSA9IHtcclxuXHRcdHNlcnZpY2VDYWxsZWQ6IHRydWUsXHJcblx0XHR3YWl0aW5nRm9yUmVzcG9uc2U6IGZhbHNlLFxyXG5cdFx0cmVzcG9uc2VJc1JlY2lldmVkOiB0cnVlLFxyXG5cdFx0c2VydmljZUNhbGxGYWlsZWQ6IHRydWVcclxuXHR9O1xyXG5cclxuXHRpZiAocmVzcG9uc2U/LmRldGFpbHMgJiYgQXJyYXkuaXNBcnJheShyZXNwb25zZS5kZXRhaWxzKSAmJiByZXNwb25zZS5kZXRhaWxzLmxlbmd0aCA+IDApIHtcclxuXHRcdHJlc3BvbnNlLmRldGFpbHMuZm9yRWFjaCgoZGV0YWlsOiBFcnJvckRldGFpbCkgPT4ge1xyXG5cdFx0XHRtZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRcdGtleTogJ3RvYXN0LXJvb3QnLFxyXG5cdFx0XHRcdHNldmVyaXR5OiAnd2FybicsXHJcblx0XHRcdFx0c3VtbWFyeTogcmVzcG9uc2U/Lm1lc3NhZ2UsXHJcblx0XHRcdFx0ZGV0YWlsOiAoZGV0YWlsLmZpZWxkTmFtZSAhPT0gbnVsbCA/IGRldGFpbC5maWVsZE5hbWUgKyAnIC0gJyA6ICcnKSArIGRldGFpbC5yZWFzb25cclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHR9IGVsc2Uge1xyXG5cdFx0bWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuXHRcdFx0a2V5OiAndG9hc3Qtcm9vdCcsXHJcblx0XHRcdHNldmVyaXR5OiAnd2FybicsXHJcblx0XHRcdGRldGFpbDogcmVzcG9uc2U/Lm1lc3NhZ2VcclxuXHRcdH0pO1xyXG5cdH1cclxufTtcclxuXHJcbmNvbnN0IGdldFRyYW5zbGF0ZWRNZXNzYWdlID0gKG1lc3NhZ2VDb2RlOiBzdHJpbmcsIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsIHJlc3BvbnNlPzogYW55KTogc3RyaW5nID0+IHtcclxuXHRjb25zdCB0cmFuc2xhdGVPYmplY3QgPSB0cmFuc2xvY29TZXJ2aWNlLmdldFRyYW5zbGF0aW9uKCkuZ2V0KHRyYW5zbG9jb1NlcnZpY2UuZ2V0QWN0aXZlTGFuZygpKTtcclxuXHRsZXQgdHJhbnNsYXRlZE1lc3NhZ2UgPSB0cmFuc2xhdGVPYmplY3Q/LlttZXNzYWdlQ29kZV0gPz8gbWVzc2FnZUNvZGU7XHJcblxyXG5cdGNvbnN0IHBhcmFtU3RhcnRTeW1ib2wgPSAne3snO1xyXG5cdGNvbnN0IHBhcmFtRW5kU3ltYm9sID0gJ319JztcclxuXHJcblx0aWYgKHJlc3BvbnNlICYmIHRyYW5zbGF0ZWRNZXNzYWdlLmluY2x1ZGVzKHBhcmFtU3RhcnRTeW1ib2wpICYmIHRyYW5zbGF0ZWRNZXNzYWdlLmluY2x1ZGVzKHBhcmFtRW5kU3ltYm9sKSkge1xyXG5cdFx0ZG8ge1xyXG5cdFx0XHRsZXQgcGFyYW1TdGFydEluZGV4ID0gdHJhbnNsYXRlZE1lc3NhZ2UuaW5kZXhPZihwYXJhbVN0YXJ0U3ltYm9sKTtcclxuXHRcdFx0bGV0IHBhcmFtRW5kSW5kZXggPSB0cmFuc2xhdGVkTWVzc2FnZS5pbmRleE9mKHBhcmFtRW5kU3ltYm9sKTtcclxuXHRcdFx0bGV0IHBhcmFtS2V5ID0gdHJhbnNsYXRlZE1lc3NhZ2Uuc2xpY2UocGFyYW1TdGFydEluZGV4ICsgcGFyYW1TdGFydFN5bWJvbC5sZW5ndGgsIHBhcmFtRW5kSW5kZXgpO1xyXG5cclxuXHRcdFx0Ly8gU3BsaXR0aW5nIHRoZSBrZXkgdG8gZ2V0IG5lc3RlZCBvYmplY3QgdmFsdWVzXHJcblx0XHRcdGxldCBwYXJhbUtleUxpc3QgPSBwYXJhbUtleS5zcGxpdCgnLicpO1xyXG5cdFx0XHRsZXQgcGFyYW1WYWx1ZTtcclxuXHJcblx0XHRcdGZvciAobGV0IGtleSBvZiBwYXJhbUtleUxpc3QpIHtcclxuXHRcdFx0XHRwYXJhbVZhbHVlID0gcGFyYW1WYWx1ZSA/IHBhcmFtVmFsdWVba2V5XSA6IHJlc3BvbnNlW2tleV07XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGxldCByZXBsYWNlUGF0dGVybiA9IGAke3BhcmFtU3RhcnRTeW1ib2x9JHtwYXJhbUtleX0ke3BhcmFtRW5kU3ltYm9sfWA7XHJcblx0XHRcdHRyYW5zbGF0ZWRNZXNzYWdlID0gdHJhbnNsYXRlZE1lc3NhZ2UucmVwbGFjZShyZXBsYWNlUGF0dGVybiwgcGFyYW1WYWx1ZSk7XHJcblx0XHR9IHdoaWxlICh0cmFuc2xhdGVkTWVzc2FnZS5pbmNsdWRlcyhwYXJhbVN0YXJ0U3ltYm9sKSk7XHJcblx0fVxyXG5cclxuXHRyZXR1cm4gdHJhbnNsYXRlZE1lc3NhZ2U7XHJcbn07XHJcbiJdfQ==
|
|
@@ -1,9 +1,28 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Renderer2, ElementRef, Component, ViewEncapsulation, ViewChild, isDevMode
|
|
2
|
+
import { inject, Injectable, Renderer2, ElementRef, Component, ViewEncapsulation, ViewChild, isDevMode } from '@angular/core';
|
|
3
3
|
import { Router, BaseRouteReuseStrategy } from '@angular/router';
|
|
4
4
|
import { WebComponentWrapper, startsWith } from '@angular-architects/module-federation-tools';
|
|
5
5
|
import { tap, catchError, of } from 'rxjs';
|
|
6
6
|
import { NotFoundComponent } from 'aril/util/custom_pages';
|
|
7
|
+
import { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';
|
|
8
|
+
|
|
9
|
+
class AuthGuard extends KeycloakAuthGuard {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(inject(Router), inject(KeycloakService));
|
|
12
|
+
}
|
|
13
|
+
async isAccessAllowed(route, state) {
|
|
14
|
+
if (!this.authenticated) {
|
|
15
|
+
await this.keycloakAngular.login({ redirectUri: window.location.href });
|
|
16
|
+
}
|
|
17
|
+
return this.authenticated;
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, providedIn: 'root' }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthGuard, decorators: [{
|
|
23
|
+
type: Injectable,
|
|
24
|
+
args: [{ providedIn: 'root' }]
|
|
25
|
+
}], ctorParameters: () => [] });
|
|
7
26
|
|
|
8
27
|
class ShadowDOMWrapperComponent extends WebComponentWrapper {
|
|
9
28
|
constructor() {
|
|
@@ -59,7 +78,7 @@ class MicroAppService {
|
|
|
59
78
|
matcher: startsWith(options.remoteName),
|
|
60
79
|
component: options.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,
|
|
61
80
|
data: options,
|
|
62
|
-
|
|
81
|
+
canActivate: [AuthGuard]
|
|
63
82
|
};
|
|
64
83
|
});
|
|
65
84
|
return routes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-boot-config-apps.mjs","sources":["../../projects/aril/boot/config/apps/src/showdowDOMWrapper.ts","../../projects/aril/boot/config/apps/src/apps.service.ts","../../projects/aril/boot/config/apps/src/interfaces.ts","../../projects/aril/boot/config/apps/src/reuse-strategy.ts","../../projects/aril/boot/config/apps/aril-boot-config-apps.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation, inject } from '@angular/core';\r\n\r\nimport { WebComponentWrapper } from '@angular-architects/module-federation-tools';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\ttemplate: '<div #vc></div>',\r\n\tencapsulation: ViewEncapsulation.ShadowDom\r\n})\r\nexport class ShadowDOMWrapperComponent extends WebComponentWrapper implements OnInit {\r\n\t@ViewChild('vc', { read: ElementRef, static: true }) override vc!: ElementRef;\r\n\r\n\tprivate renderer = inject(Renderer2);\r\n\r\n\tngOnInit(): void {\r\n\t\tconst shadowRoot = this.vc.nativeElement.parentNode;\r\n\t\tconst styleUrls = this['route'].snapshot.data.styleUrls || [];\r\n\r\n\t\t// Inject styles into the Shadow DOM\r\n\t\tstyleUrls.forEach((url: string) => {\r\n\t\t\tconst link = this.renderer.createElement('link');\r\n\t\t\tlink.setAttribute('rel', 'stylesheet');\r\n\t\t\tlink.setAttribute('type', 'text/css');\r\n\t\t\tlink.setAttribute('href', url);\r\n\t\t\tthis.renderer.appendChild(shadowRoot, link);\r\n\t\t});\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable, inject, isDevMode } from '@angular/core';\r\nimport { Router, Routes } from '@angular/router';\r\n\r\nimport {\r\n\tWebComponentWrapper,\r\n\tWebComponentWrapperOptions,\r\n\tstartsWith\r\n} from '@angular-architects/module-federation-tools';\r\nimport { catchError, of, tap } from 'rxjs';\r\n\r\nimport { NotFoundComponent } from 'aril/util/custom_pages';\r\n\r\nimport { AppsDTO, PluginConfig, PluginMenuItem } from './interfaces';\r\nimport { ShadowDOMWrapperComponent } from './showdowDOMWrapper';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MicroAppService {\r\n\tprivate router = inject(Router);\r\n\r\n\tinit(httpClient: HttpClient, hostAPI: string) {\r\n\t\treturn httpClient\r\n\t\t\t.get<AppsDTO>(isDevMode() ? './assets/local-configs/app.local.json' : hostAPI + '/ui-sidebar-configs')\r\n\t\t\t.pipe(\r\n\t\t\t\ttap((apps) => {\r\n\t\t\t\t\tconst routes = this.buildRoutes([...apps.modules, ...apps.plugins]);\r\n\r\n\t\t\t\t\tthis.router.resetConfig([...this.router.config, ...routes, { path: '**', component: NotFoundComponent }]);\r\n\t\t\t\t\tthis.setMenuItems(apps.menuItems);\r\n\t\t\t\t}),\r\n\t\t\t\tcatchError((err) => {\r\n\t\t\t\t\tconsole.log('Error Micro Apps Loading', err);\r\n\t\t\t\t\treturn of();\r\n\t\t\t\t})\r\n\t\t\t);\r\n\t}\r\n\r\n\tbuildRoutes(options: PluginConfig[]): Routes {\r\n\t\tconst routes: Routes = options.map((options) => {\r\n\t\t\treturn {\r\n\t\t\t\tmatcher: startsWith(options.remoteName),\r\n\t\t\t\tcomponent: options.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,\r\n\t\t\t\tdata: options as WebComponentWrapperOptions,\r\n\t\t\t\t//canActivate: [KeycloakAuthGuard]\r\n\t\t\t};\r\n\t\t});\r\n\r\n\t\treturn routes;\r\n\t}\r\n\r\n\tsetMenuItems(items: PluginMenuItem[]): void {\r\n\t\t(<any>globalThis).hostMenuItems.set([\r\n\t\t\t{ root: true, label: { tr: 'Anasayfa', en: 'Home' }, icon: 'pi pi-fw pi-home', routerLink: '/' },\r\n\t\t\t...items\r\n\t\t]);\r\n\t}\r\n}\r\n","import { MenuItemCommandEvent } from 'primeng/api';\r\n\r\nimport { WebComponentWrapperOptions } from '@angular-architects/module-federation-tools';\r\n\r\nexport enum Apps {\r\n\tTHOR = 'thor',\r\n\tCRM = 'crm',\r\n\tWDM = 'wdm',\r\n\tBILLING = 'billing',\r\n\tPAYMENT = 'payment',\r\n\tYEAP = 'yeap',\r\n\tMW = 'mw',\r\n\tLENA = 'lena',\r\n\tHES = 'hes',\r\n\tCTS = 'cts',\r\n\tSIS = 'sis',\r\n\tMNG = 'mng',\r\n\tSTATE_MACHINE = 'state-machine'\r\n}\r\n\r\nexport interface AppsDTO {\r\n\tversion: number;\r\n\tmodules: PluginConfig[];\r\n\tplugins: PluginConfig[];\r\n\textensions: PluginConfig[];\r\n\tmenuItems: PluginMenuItem[];\r\n}\r\n\r\nexport type PluginConfig = WebComponentWrapperOptions & {\r\n\tid?: string;\r\n\tremoteName: string;\r\n\tshadowDomPassive: boolean;\r\n};\r\n\r\nexport interface PluginMenuItem {\r\n\trouterLink?: string;\r\n\ticon?: string;\r\n\tlabel: {\r\n\t\t[languageCode: string]: string;\r\n\t};\r\n\titems?: PluginMenuItem[];\r\n\tpermittedRole?: string;\r\n\r\n\t// UI fields\r\n\tseparator?: boolean;\r\n\troot?: boolean;\r\n\tpath?: string;\r\n\tdisabled?: boolean;\r\n\tcommand?(event: MenuItemCommandEvent): void;\r\n}\r\n","import { ActivatedRouteSnapshot, BaseRouteReuseStrategy } from '@angular/router';\r\n\r\nexport class ArilReuseStrategy extends BaseRouteReuseStrategy {\r\n\toverride shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n\t\tif (curr.firstChild?.routeConfig?.data?.['remoteEntry'] === future.firstChild?.routeConfig?.data?.['remoteEntry'])\r\n\t\t\treturn false;\r\n\r\n\t\treturn future?.routeConfig === curr?.routeConfig && JSON.stringify(future?.params) === JSON.stringify(curr?.params);\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aril-boot-config-apps.mjs","sources":["../../projects/aril/boot/config/apps/src/auth.guard.ts","../../projects/aril/boot/config/apps/src/showdowDOMWrapper.ts","../../projects/aril/boot/config/apps/src/apps.service.ts","../../projects/aril/boot/config/apps/src/interfaces.ts","../../projects/aril/boot/config/apps/src/reuse-strategy.ts","../../projects/aril/boot/config/apps/aril-boot-config-apps.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, Router, RouterStateSnapshot, UrlTree } from '@angular/router';\r\n\r\nimport { KeycloakAuthGuard, KeycloakService } from 'keycloak-angular';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard extends KeycloakAuthGuard {\r\n\tconstructor() {\r\n\t\tsuper(inject(Router), inject(KeycloakService));\r\n\t}\r\n\r\n\toverride async isAccessAllowed(\r\n\t\troute: ActivatedRouteSnapshot,\r\n\t\tstate: RouterStateSnapshot\r\n\t): Promise<boolean | UrlTree> {\r\n\t\tif (!this.authenticated) {\r\n\t\t\tawait this.keycloakAngular.login({ redirectUri: window.location.href });\r\n\t\t}\r\n\r\n\t\treturn this.authenticated;\r\n\t}\r\n}\r\n","import { Component, ElementRef, OnInit, Renderer2, ViewChild, ViewEncapsulation, inject } from '@angular/core';\r\n\r\nimport { WebComponentWrapper } from '@angular-architects/module-federation-tools';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\ttemplate: '<div #vc></div>',\r\n\tencapsulation: ViewEncapsulation.ShadowDom\r\n})\r\nexport class ShadowDOMWrapperComponent extends WebComponentWrapper implements OnInit {\r\n\t@ViewChild('vc', { read: ElementRef, static: true }) override vc!: ElementRef;\r\n\r\n\tprivate renderer = inject(Renderer2);\r\n\r\n\tngOnInit(): void {\r\n\t\tconst shadowRoot = this.vc.nativeElement.parentNode;\r\n\t\tconst styleUrls = this['route'].snapshot.data.styleUrls || [];\r\n\r\n\t\t// Inject styles into the Shadow DOM\r\n\t\tstyleUrls.forEach((url: string) => {\r\n\t\t\tconst link = this.renderer.createElement('link');\r\n\t\t\tlink.setAttribute('rel', 'stylesheet');\r\n\t\t\tlink.setAttribute('type', 'text/css');\r\n\t\t\tlink.setAttribute('href', url);\r\n\t\t\tthis.renderer.appendChild(shadowRoot, link);\r\n\t\t});\r\n\t}\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable, inject, isDevMode } from '@angular/core';\r\nimport { Router, Routes } from '@angular/router';\r\n\r\nimport {\r\n\tWebComponentWrapper,\r\n\tWebComponentWrapperOptions,\r\n\tstartsWith\r\n} from '@angular-architects/module-federation-tools';\r\nimport { catchError, of, tap } from 'rxjs';\r\n\r\nimport { NotFoundComponent } from 'aril/util/custom_pages';\r\n\r\nimport { AuthGuard } from './auth.guard';\r\nimport { AppsDTO, PluginConfig, PluginMenuItem } from './interfaces';\r\nimport { ShadowDOMWrapperComponent } from './showdowDOMWrapper';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class MicroAppService {\r\n\tprivate router = inject(Router);\r\n\r\n\tinit(httpClient: HttpClient, hostAPI: string) {\r\n\t\treturn httpClient\r\n\t\t\t.get<AppsDTO>(isDevMode() ? './assets/local-configs/app.local.json' : hostAPI + '/ui-sidebar-configs')\r\n\t\t\t.pipe(\r\n\t\t\t\ttap((apps) => {\r\n\t\t\t\t\tconst routes = this.buildRoutes([...apps.modules, ...apps.plugins]);\r\n\r\n\t\t\t\t\tthis.router.resetConfig([...this.router.config, ...routes, { path: '**', component: NotFoundComponent }]);\r\n\t\t\t\t\tthis.setMenuItems(apps.menuItems);\r\n\t\t\t\t}),\r\n\t\t\t\tcatchError((err) => {\r\n\t\t\t\t\tconsole.log('Error Micro Apps Loading', err);\r\n\t\t\t\t\treturn of();\r\n\t\t\t\t})\r\n\t\t\t);\r\n\t}\r\n\r\n\tbuildRoutes(options: PluginConfig[]): Routes {\r\n\t\tconst routes: Routes = options.map((options) => {\r\n\t\t\treturn {\r\n\t\t\t\tmatcher: startsWith(options.remoteName),\r\n\t\t\t\tcomponent: options.shadowDomPassive ? WebComponentWrapper : ShadowDOMWrapperComponent,\r\n\t\t\t\tdata: options as WebComponentWrapperOptions,\r\n\t\t\t\tcanActivate: [AuthGuard]\r\n\t\t\t};\r\n\t\t});\r\n\r\n\t\treturn routes;\r\n\t}\r\n\r\n\tsetMenuItems(items: PluginMenuItem[]): void {\r\n\t\t(<any>globalThis).hostMenuItems.set([\r\n\t\t\t{ root: true, label: { tr: 'Anasayfa', en: 'Home' }, icon: 'pi pi-fw pi-home', routerLink: '/' },\r\n\t\t\t...items\r\n\t\t]);\r\n\t}\r\n}\r\n","import { MenuItemCommandEvent } from 'primeng/api';\r\n\r\nimport { WebComponentWrapperOptions } from '@angular-architects/module-federation-tools';\r\n\r\nexport enum Apps {\r\n\tTHOR = 'thor',\r\n\tCRM = 'crm',\r\n\tWDM = 'wdm',\r\n\tBILLING = 'billing',\r\n\tPAYMENT = 'payment',\r\n\tYEAP = 'yeap',\r\n\tMW = 'mw',\r\n\tLENA = 'lena',\r\n\tHES = 'hes',\r\n\tCTS = 'cts',\r\n\tSIS = 'sis',\r\n\tMNG = 'mng',\r\n\tSTATE_MACHINE = 'state-machine'\r\n}\r\n\r\nexport interface AppsDTO {\r\n\tversion: number;\r\n\tmodules: PluginConfig[];\r\n\tplugins: PluginConfig[];\r\n\textensions: PluginConfig[];\r\n\tmenuItems: PluginMenuItem[];\r\n}\r\n\r\nexport type PluginConfig = WebComponentWrapperOptions & {\r\n\tid?: string;\r\n\tremoteName: string;\r\n\tshadowDomPassive: boolean;\r\n};\r\n\r\nexport interface PluginMenuItem {\r\n\trouterLink?: string;\r\n\ticon?: string;\r\n\tlabel: {\r\n\t\t[languageCode: string]: string;\r\n\t};\r\n\titems?: PluginMenuItem[];\r\n\tpermittedRole?: string;\r\n\r\n\t// UI fields\r\n\tseparator?: boolean;\r\n\troot?: boolean;\r\n\tpath?: string;\r\n\tdisabled?: boolean;\r\n\tcommand?(event: MenuItemCommandEvent): void;\r\n}\r\n","import { ActivatedRouteSnapshot, BaseRouteReuseStrategy } from '@angular/router';\r\n\r\nexport class ArilReuseStrategy extends BaseRouteReuseStrategy {\r\n\toverride shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n\t\tif (curr.firstChild?.routeConfig?.data?.['remoteEntry'] === future.firstChild?.routeConfig?.data?.['remoteEntry'])\r\n\t\t\treturn false;\r\n\r\n\t\treturn future?.routeConfig === curr?.routeConfig && JSON.stringify(future?.params) === JSON.stringify(curr?.params);\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/aril-http.mjs
CHANGED
|
@@ -4,6 +4,7 @@ import * as i0 from '@angular/core';
|
|
|
4
4
|
import { Injectable, inject, Injector, runInInjectionContext } from '@angular/core';
|
|
5
5
|
import { MessageService } from 'primeng/api';
|
|
6
6
|
import { TranslocoService } from '@ngneat/transloco';
|
|
7
|
+
import { KeycloakService } from 'keycloak-angular';
|
|
7
8
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
8
9
|
import { Observable, of } from 'rxjs';
|
|
9
10
|
import { map, tap, catchError } from 'rxjs/operators';
|
|
@@ -66,6 +67,7 @@ class RestClient {
|
|
|
66
67
|
this.injector = inject(Injector);
|
|
67
68
|
this.messageService = inject(MessageService);
|
|
68
69
|
this.translocoService = inject(TranslocoService);
|
|
70
|
+
this.keycloak = inject(KeycloakService);
|
|
69
71
|
}
|
|
70
72
|
}
|
|
71
73
|
|
|
@@ -112,7 +114,7 @@ const successState = (states, serviceName, translocoService, messageService, mes
|
|
|
112
114
|
});
|
|
113
115
|
}
|
|
114
116
|
};
|
|
115
|
-
const errorState = (states, serviceName, error, translocoService, messageService, message) => {
|
|
117
|
+
const errorState = async (states, serviceName, error, translocoService, messageService, keycloakService, message) => {
|
|
116
118
|
states[serviceName] = {
|
|
117
119
|
serviceCalled: true,
|
|
118
120
|
waitingForResponse: false,
|
|
@@ -126,6 +128,7 @@ const errorState = (states, serviceName, error, translocoService, messageService
|
|
|
126
128
|
break;
|
|
127
129
|
case 401:
|
|
128
130
|
httpError = 'Yetkisiz Erişim';
|
|
131
|
+
await keycloakService.login({ redirectUri: window.location.href });
|
|
129
132
|
break;
|
|
130
133
|
case 403:
|
|
131
134
|
httpError = 'Erişim Engellendi';
|
|
@@ -351,8 +354,8 @@ function ServiceCall(httpMethod, proxy, serviceURL, message, remoteAPI, isMockAP
|
|
|
351
354
|
else {
|
|
352
355
|
successState(states, serviceName, this.translocoService, this.messageService, message, serviceRes);
|
|
353
356
|
}
|
|
354
|
-
}), catchError((error) => {
|
|
355
|
-
errorState(states, serviceName, error, this.translocoService, this.messageService, message);
|
|
357
|
+
}), catchError(async (error) => {
|
|
358
|
+
await errorState(states, serviceName, error, this.translocoService, this.messageService, this.keycloak, message);
|
|
356
359
|
return of(new ErrorResponse(error));
|
|
357
360
|
}), takeUntilDestroyed());
|
|
358
361
|
return observable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-http.mjs","sources":["../../projects/aril/http/lib/enums.ts","../../projects/aril/http/lib/interfaces.ts","../../projects/aril/http/src/httpBackend.ts","../../projects/aril/http/src/httpClient.ts","../../projects/aril/http/src/serviceRequest.ts","../../projects/aril/http/src/serviceStateMethods.ts","../../projects/aril/http/src/serviceBase.ts","../../projects/aril/http/src/serviceMockBase.ts","../../projects/aril/http/src/interceptor/state-machine.interceptor.ts","../../projects/aril/http/index.ts","../../projects/aril/http/aril-http.ts"],"sourcesContent":["export enum HTTPMethods {\r\n\tGET = 'GET',\r\n\tGETBYPARAMS = 'GETBYPARAMS',\r\n\tGETBYDYNAMICPATH = 'GETBYDYNAMICPATH',\r\n\tPOST = 'POST',\r\n\tPOSTBYPARAMS = 'POSTBYPARAMS',\r\n\tPOSTBYDYNAMICPATH = 'POSTBYDYNAMICPATH',\r\n\tPUT = 'PUT',\r\n\tPUTBYPARAMS = 'PUTBYPARAMS',\r\n\tPUTBYDYNAMICPATH = 'PUTBYDYNAMICPATH',\r\n\tDELETE = 'DELETE',\r\n\tDELETEBYPARAMS = 'DELETEBYPARAMS',\r\n\tDELETEBYDYNAMICPATH = 'DELETEBYDYNAMICPATH'\r\n}\r\nexport enum ProxyTypes {\r\n\tNative,\r\n\tServerSide,\r\n\tClientSide\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\n\r\n/* eslint-disable @typescript-eslint/ban-types */\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { ProxyTypes } from './enums';\r\n\r\nexport interface ServiceCallStates {\r\n\tserviceCalled: boolean;\r\n\twaitingForResponse: boolean;\r\n\tresponseIsRecieved: boolean;\r\n\tserviceCallFailed: boolean;\r\n}\r\n\r\nexport type ServiceCallStateMap<T> = {\r\n\t[K in keyof T]?: T[K] extends Function ? ServiceCallStates : never;\r\n};\r\n\r\nexport class ErrorResponse {\r\n\terror: HttpErrorResponse | undefined;\r\n\r\n\tconstructor(err: HttpErrorResponse | undefined) {\r\n\t\tthis.error = err;\r\n\t}\r\n}\r\n\r\nexport class ServiceResponse<T> extends ErrorResponse {\r\n\trequest: any;\r\n\tresponse: T;\r\n\tproxy: ProxyTypes;\r\n\r\n\tconstructor(request: any, response: T, proxy: ProxyTypes) {\r\n\t\tsuper(undefined);\r\n\t\tthis.request = request;\r\n\t\tthis.response = response;\r\n\t\tthis.proxy = proxy;\r\n\t}\r\n}\r\n\r\nexport interface ErrorDetail {\r\n\tfieldName: string;\r\n\treason: string;\r\n\tdescription: string;\r\n}\r\n","import { HttpBackend, HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n// WithoutInterceptorHttpClient\r\n@Injectable({ providedIn: 'root' })\r\nexport class HttpBackendService {\r\n\tpublic httpClient: HttpClient;\r\n\r\n\tconstructor(handler: HttpBackend) {\r\n\t\tthis.httpClient = new HttpClient(handler);\r\n\t}\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, inject } from '@angular/core';\r\n\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\n// import { KeycloakService } from 'keycloak-angular';\r\nimport { ServiceCallStateMap } from '../lib/interfaces';\r\n\r\nexport abstract class RestClient {\r\n\tprivate readonly httpClient = inject(HttpClient);\r\n\tprivate readonly injector = inject(Injector);\r\n\tprivate readonly messageService = inject(MessageService);\r\n\tprivate readonly translocoService = inject(TranslocoService);\r\n\t// private readonly keycloak = inject(KeycloakService);\r\n\r\n\tabstract states: ServiceCallStateMap<any>;\r\n}\r\n","import { HttpParams } from '@angular/common/http';\r\n\r\nimport { Interfaces } from 'aril/util/lib';\r\n\r\nimport { HTTPMethods } from '../lib/enums';\r\n\r\nexport function getRequest(httpMethod: HTTPMethods, args: any[]): HttpParams | Interfaces.MapStringAny | undefined {\r\n\tif (!args.length) return undefined;\r\n\r\n\tswitch (httpMethod) {\r\n\t\tcase HTTPMethods.PUT:\r\n\t\t\treturn args[1];\r\n\t\tcase HTTPMethods.POSTBYPARAMS:\r\n\t\tcase HTTPMethods.GETBYPARAMS:\r\n\t\tcase HTTPMethods.DELETEBYPARAMS:\r\n\t\t\tconst dto = httpMethod === HTTPMethods.POSTBYPARAMS ? args[0].queryParams : args[0];\r\n\t\t\tlet queryParams = new HttpParams();\r\n\r\n\t\t\tfor (const [key, value] of Object.entries(dto)) {\r\n\t\t\t\tqueryParams = queryParams.append(key, value as any);\r\n\t\t\t}\r\n\r\n\t\t\treturn queryParams;\r\n\t\tdefault:\r\n\t\t\treturn args[0];\r\n\t}\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\nimport { ErrorDetail, ServiceCallStateMap } from '../lib/interfaces';\r\n\r\nexport const callState = (states: ServiceCallStateMap<any>, serviceName: any): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: true,\r\n\t\tresponseIsRecieved: false,\r\n\t\tserviceCallFailed: false\r\n\t};\r\n};\r\n\r\nexport const successState = (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\ttranslocoService: TranslocoService,\r\n\tmessageService: MessageService,\r\n\tmessage?: { success?: string; error?: string },\r\n\tresponse?: any\r\n): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: false\r\n\t};\r\n\r\n\tif (message?.success) {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'success',\r\n\t\t\tsummary: getTranslatedMessage(<string>message.success, translocoService, response)\r\n\t\t});\r\n\t}\r\n};\r\n\r\nexport const errorState = (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\terror: HttpErrorResponse,\r\n\ttranslocoService: TranslocoService,\r\n\tmessageService: MessageService,\r\n\tmessage?: { success?: string; error?: string; display?: string }\r\n): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: true\r\n\t};\r\n\r\n\tlet httpError: string;\r\n\r\n\tswitch (error.status) {\r\n\t\tcase 400:\r\n\t\t\thttpError = 'Hatalı İstek';\r\n\t\t\tbreak;\r\n\t\tcase 401:\r\n\t\t\thttpError = 'Yetkisiz Erişim';\r\n\t\t\tbreak;\r\n\t\tcase 403:\r\n\t\t\thttpError = 'Erişim Engellendi';\r\n\t\t\tbreak;\r\n\t\tcase 404:\r\n\t\t\thttpError = 'Kaynak Bulunamadı';\r\n\t\t\tbreak;\r\n\t\tcase 405:\r\n\t\t\thttpError = 'İzin Verilmeyen Metod';\r\n\t\t\tbreak;\r\n\t\tcase 406:\r\n\t\t\thttpError = 'Kabul Edilemez Başlık';\r\n\t\t\tbreak;\r\n\t\tcase 408:\r\n\t\t\thttpError = 'Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tcase 409:\r\n\t\t\thttpError = 'Çakışma';\r\n\t\t\tbreak;\r\n\t\tcase 500:\r\n\t\t\thttpError = 'Sunucu Hatası';\r\n\t\t\tbreak;\r\n\t\tcase 501:\r\n\t\t\thttpError = 'Sunucu Yapılandırma Hatası';\r\n\t\t\tbreak;\r\n\t\tcase 502:\r\n\t\t\thttpError = 'Geçersiz Ağ Geçidi';\r\n\t\t\tbreak;\r\n\t\tcase 503:\r\n\t\t\thttpError = 'Sunucu Hizmet Vermiyor';\r\n\t\t\tbreak;\r\n\t\tcase 504:\r\n\t\t\thttpError = 'Ağ Geçidi Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tcase 505:\r\n\t\t\thttpError = 'HTTP Protokol Desteklenmiyor';\r\n\t\t\tbreak;\r\n\t\tcase 511:\r\n\t\t\thttpError = 'Ağ Kimlik Doğrulaması Gerekli';\r\n\t\t\tbreak;\r\n\t\tcase 599:\r\n\t\t\thttpError = 'Ağ Bağlantısı Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\thttpError = error?.error?.message;\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\tif (error.error?.details && Array.isArray(error.error.details) && error.error.details.length > 0) {\r\n\t\terror.error.details.forEach((detail: ErrorDetail) => {\r\n\t\t\tmessageService.add({\r\n\t\t\t\tkey: 'toast-root',\r\n\t\t\t\tseverity: 'error',\r\n\t\t\t\tsummary: error?.error?.message,\r\n\t\t\t\tdetail: (detail.fieldName !== null ? detail.fieldName + ' - ' : '') + detail.reason\r\n\t\t\t});\r\n\t\t});\r\n\t} else {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'error',\r\n\t\t\tsummary: httpError,\r\n\t\t\tdetail: error?.error?.message\r\n\t\t});\r\n\t}\r\n\r\n\tif (message?.error) {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'error',\r\n\t\t\tsummary:\r\n\t\t\t\terror?.error?.message ? error?.error?.message : getTranslatedMessage(<string>message.error, translocoService)\r\n\t\t});\r\n\t}\r\n};\r\n\r\nexport const warningState = (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\tresponse: any,\r\n\tmessageService: MessageService\r\n): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: true\r\n\t};\r\n\r\n\tif (response?.details && Array.isArray(response.details) && response.details.length > 0) {\r\n\t\tresponse.details.forEach((detail: ErrorDetail) => {\r\n\t\t\tmessageService.add({\r\n\t\t\t\tkey: 'toast-root',\r\n\t\t\t\tseverity: 'warn',\r\n\t\t\t\tsummary: response?.message,\r\n\t\t\t\tdetail: (detail.fieldName !== null ? detail.fieldName + ' - ' : '') + detail.reason\r\n\t\t\t});\r\n\t\t});\r\n\t} else {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'warn',\r\n\t\t\tdetail: response?.message\r\n\t\t});\r\n\t}\r\n};\r\n\r\nconst getTranslatedMessage = (messageCode: string, translocoService: TranslocoService, response?: any): string => {\r\n\tconst translateObject = translocoService.getTranslation().get(translocoService.getActiveLang());\r\n\tlet translatedMessage = translateObject?.[messageCode] ?? messageCode;\r\n\r\n\tconst paramStartSymbol = '{{';\r\n\tconst paramEndSymbol = '}}';\r\n\r\n\tif (response && translatedMessage.includes(paramStartSymbol) && translatedMessage.includes(paramEndSymbol)) {\r\n\t\tdo {\r\n\t\t\tlet paramStartIndex = translatedMessage.indexOf(paramStartSymbol);\r\n\t\t\tlet paramEndIndex = translatedMessage.indexOf(paramEndSymbol);\r\n\t\t\tlet paramKey = translatedMessage.slice(paramStartIndex + paramStartSymbol.length, paramEndIndex);\r\n\r\n\t\t\t// Splitting the key to get nested object values\r\n\t\t\tlet paramKeyList = paramKey.split('.');\r\n\t\t\tlet paramValue;\r\n\r\n\t\t\tfor (let key of paramKeyList) {\r\n\t\t\t\tparamValue = paramValue ? paramValue[key] : response[key];\r\n\t\t\t}\r\n\r\n\t\t\tlet replacePattern = `${paramStartSymbol}${paramKey}${paramEndSymbol}`;\r\n\t\t\ttranslatedMessage = translatedMessage.replace(replacePattern, paramValue);\r\n\t\t} while (translatedMessage.includes(paramStartSymbol));\r\n\t}\r\n\r\n\treturn translatedMessage;\r\n};\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpClient, HttpErrorResponse, HttpParams } from '@angular/common/http';\r\nimport { runInInjectionContext } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError, map, tap } from 'rxjs/operators';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\n\r\nimport { HTTPMethods, ProxyTypes } from '../lib/enums';\r\nimport { ErrorResponse, ServiceCallStateMap, ServiceResponse } from '../lib/interfaces';\r\nimport { getRequest } from './serviceRequest';\r\nimport { callState, errorState, successState, warningState } from './serviceStateMethods';\r\nimport { Apps } from 'aril/boot/config/apps';\r\n\r\nexport function ServiceCall(\r\n\thttpMethod: HTTPMethods,\r\n\tproxy: ProxyTypes,\r\n\tserviceURL: string,\r\n\tmessage?: { success?: string; error?: string },\r\n\tremoteAPI?: Apps,\r\n\tisMockAPI = false\r\n): MethodDecorator {\r\n\treturn function (serviceClass: object, serviceName: string | symbol, descriptor: PropertyDescriptor) {\r\n\t\t// const originalFunction = descriptor.value;\r\n\r\n\t\tdescriptor.value = function (...args: any[]) {\r\n\t\t\treturn runInInjectionContext((<any>this).injector, () => {\r\n\t\t\t\tconst httpClient: HttpClient = (<any>this).httpClient;\r\n\r\n\t\t\t\tlet api = '';\r\n\t\t\t\tif (isMockAPI) api = <string>remoteAPI;\r\n\t\t\t\telse if (remoteAPI) {\r\n\t\t\t\t\tconst url = new URL(API_CONFIGS.api);\r\n\t\t\t\t\tapi = url.origin + '/' + API_CONFIGS.prefixMap[remoteAPI];\r\n\t\t\t\t} else api = API_CONFIGS.api;\r\n\r\n\t\t\t\tconst endPoint = api + '/' + serviceURL;\r\n\t\t\t\tconst request = getRequest(httpMethod, args);\r\n\t\t\t\tconst states: ServiceCallStateMap<any> = (<any>this).states;\r\n\r\n\t\t\t\tcallState(states, serviceName);\r\n\r\n\t\t\t\tlet observable: Observable<any> = new Observable<any>();\r\n\r\n\t\t\t\tswitch (httpMethod) {\r\n\t\t\t\t\tcase HTTPMethods.GET:\r\n\t\t\t\t\t\tlet getReq = args.length ? '/' + args[0] : '';\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(endPoint + getReq, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.GETBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(endPoint, { params: request as HttpParams, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.GETBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet getDynamicServiceUrl = serviceURL;\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tgetDynamicServiceUrl = getDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(api + '/' + getDynamicServiceUrl, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POST:\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(endPoint, args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POSTBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(endPoint, args[0].body, { params: request, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POSTBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet body = {};\r\n\t\t\t\t\t\tlet dynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') body = arg;\r\n\t\t\t\t\t\t\telse dynamicServiceUrl = dynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(api + '/' + dynamicServiceUrl, body, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.PUT:\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(endPoint + '/' + args[0], request, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.PUTBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(endPoint, args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase HTTPMethods.PUTBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet putBody = {};\r\n\t\t\t\t\t\tlet putDynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') putBody = arg;\r\n\t\t\t\t\t\t\telse putDynamicServiceUrl = putDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(api + '/' + putDynamicServiceUrl, putBody, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETE:\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(endPoint + '/' + args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETEBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(endPoint, { params: request as HttpParams, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETEBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet deleteParams = {};\r\n\t\t\t\t\t\tlet deleteDynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') deleteParams = arg;\r\n\t\t\t\t\t\t\telse deleteDynamicServiceUrl = deleteDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(api + '/' + deleteDynamicServiceUrl, {\r\n\t\t\t\t\t\t\tparams: deleteParams,\r\n\t\t\t\t\t\t\tresponseType: 'json'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tobservable = observable.pipe(\r\n\t\t\t\t\tmap((response) => new ServiceResponse(request, response, proxy)),\r\n\t\t\t\t\ttap((serviceRes) => {\r\n\t\t\t\t\t\tif (!serviceRes.response) {\r\n\t\t\t\t\t\t\t(<any>this).messageService.add({\r\n\t\t\t\t\t\t\t key: 'toast-root',\r\n\t\t\t\t\t\t\t severity: 'success',\r\n\t\t\t\t\t\t\t summary: (<any>this).translocoService.translate('messages.successMessageHeader'),\r\n\t\t\t\t\t\t\t detail: (<any>this).translocoService.translate('messages.successMessage')\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t } else if (serviceRes.response.type === 'ValidationWarningException') {\r\n\t\t\t\t\t\t\twarningState(states, serviceName, serviceRes.response, (<any>this).messageService);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tsuccessState(\r\n\t\t\t\t\t\t\t\tstates,\r\n\t\t\t\t\t\t\t\tserviceName,\r\n\t\t\t\t\t\t\t\t(<any>this).translocoService,\r\n\t\t\t\t\t\t\t\t(<any>this).messageService,\r\n\t\t\t\t\t\t\t\tmessage,\r\n\t\t\t\t\t\t\t\tserviceRes\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tcatchError((error: HttpErrorResponse) => {\r\n\t\t\t\t\t\terrorState(states, serviceName, error, (<any>this).translocoService, (<any>this).messageService, message);\r\n\t\t\t\t\t\treturn of(new ErrorResponse(error));\r\n\t\t\t\t\t}),\r\n\t\t\t\t\ttakeUntilDestroyed()\r\n\t\t\t\t);\r\n\r\n\t\t\t\treturn observable;\r\n\t\t\t});\r\n\t\t};\r\n\t};\r\n}\r\n","import { HTTPMethods, ProxyTypes } from '../lib/enums';\r\nimport { ServiceCall } from './serviceBase';\r\n\r\nexport function ServiceCallMock(\r\n\thttpMethod: HTTPMethods,\r\n\tproxy: ProxyTypes,\r\n\tserviceURL: string,\r\n\tmockAPI: string,\r\n\tmessage?: { success?: string; error?: string; useDefault: boolean }\r\n) {\r\n\t// return ServiceCall(httpMethod, proxy, serviceURL, message, mockAPI, true);\r\n}\r\n","import { HttpHandlerFn, HttpInterceptorFn, HttpRequest } from '@angular/common/http';\r\n\r\nexport const stateMachineInterceptor: HttpInterceptorFn = (req: HttpRequest<unknown>, next: HttpHandlerFn) => {\r\n\tlet clone = req;\r\n\tif (req.url.includes('state-machine/v1')) {\r\n\t\tclone = req.clone({ url: req.url.split('/host/v1').join('') });\r\n\t}\r\n\treturn next(clone);\r\n};\r\n","/* lib */\r\nexport * from './lib/enums';\r\nexport * from './lib/interfaces';\r\n\r\n/* src */\r\nexport * from './src/httpBackend';\r\nexport * from './src/httpClient';\r\nexport * from './src/serviceBase';\r\nexport * from './src/serviceMockBase';\r\nexport * from './src/serviceStateMethods';\r\n\r\n/* interceptor */\r\nexport * from './src/interceptor/state-machine.interceptor';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aril-http.mjs","sources":["../../projects/aril/http/lib/enums.ts","../../projects/aril/http/lib/interfaces.ts","../../projects/aril/http/src/httpBackend.ts","../../projects/aril/http/src/httpClient.ts","../../projects/aril/http/src/serviceRequest.ts","../../projects/aril/http/src/serviceStateMethods.ts","../../projects/aril/http/src/serviceBase.ts","../../projects/aril/http/src/serviceMockBase.ts","../../projects/aril/http/src/interceptor/state-machine.interceptor.ts","../../projects/aril/http/index.ts","../../projects/aril/http/aril-http.ts"],"sourcesContent":["export enum HTTPMethods {\r\n\tGET = 'GET',\r\n\tGETBYPARAMS = 'GETBYPARAMS',\r\n\tGETBYDYNAMICPATH = 'GETBYDYNAMICPATH',\r\n\tPOST = 'POST',\r\n\tPOSTBYPARAMS = 'POSTBYPARAMS',\r\n\tPOSTBYDYNAMICPATH = 'POSTBYDYNAMICPATH',\r\n\tPUT = 'PUT',\r\n\tPUTBYPARAMS = 'PUTBYPARAMS',\r\n\tPUTBYDYNAMICPATH = 'PUTBYDYNAMICPATH',\r\n\tDELETE = 'DELETE',\r\n\tDELETEBYPARAMS = 'DELETEBYPARAMS',\r\n\tDELETEBYDYNAMICPATH = 'DELETEBYDYNAMICPATH'\r\n}\r\nexport enum ProxyTypes {\r\n\tNative,\r\n\tServerSide,\r\n\tClientSide\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\n\r\n/* eslint-disable @typescript-eslint/ban-types */\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { ProxyTypes } from './enums';\r\n\r\nexport interface ServiceCallStates {\r\n\tserviceCalled: boolean;\r\n\twaitingForResponse: boolean;\r\n\tresponseIsRecieved: boolean;\r\n\tserviceCallFailed: boolean;\r\n}\r\n\r\nexport type ServiceCallStateMap<T> = {\r\n\t[K in keyof T]?: T[K] extends Function ? ServiceCallStates : never;\r\n};\r\n\r\nexport class ErrorResponse {\r\n\terror: HttpErrorResponse | undefined;\r\n\r\n\tconstructor(err: HttpErrorResponse | undefined) {\r\n\t\tthis.error = err;\r\n\t}\r\n}\r\n\r\nexport class ServiceResponse<T> extends ErrorResponse {\r\n\trequest: any;\r\n\tresponse: T;\r\n\tproxy: ProxyTypes;\r\n\r\n\tconstructor(request: any, response: T, proxy: ProxyTypes) {\r\n\t\tsuper(undefined);\r\n\t\tthis.request = request;\r\n\t\tthis.response = response;\r\n\t\tthis.proxy = proxy;\r\n\t}\r\n}\r\n\r\nexport interface ErrorDetail {\r\n\tfieldName: string;\r\n\treason: string;\r\n\tdescription: string;\r\n}\r\n","import { HttpBackend, HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n// WithoutInterceptorHttpClient\r\n@Injectable({ providedIn: 'root' })\r\nexport class HttpBackendService {\r\n\tpublic httpClient: HttpClient;\r\n\r\n\tconstructor(handler: HttpBackend) {\r\n\t\tthis.httpClient = new HttpClient(handler);\r\n\t}\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, inject } from '@angular/core';\r\n\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { KeycloakService } from 'keycloak-angular';\r\n\r\nimport { ServiceCallStateMap } from '../lib/interfaces';\r\n\r\nexport abstract class RestClient {\r\n\tprivate readonly httpClient = inject(HttpClient);\r\n\tprivate readonly injector = inject(Injector);\r\n\tprivate readonly messageService = inject(MessageService);\r\n\tprivate readonly translocoService = inject(TranslocoService);\r\n\tprivate readonly keycloak = inject(KeycloakService);\r\n\r\n\tabstract states: ServiceCallStateMap<any>;\r\n}\r\n","import { HttpParams } from '@angular/common/http';\r\n\r\nimport { Interfaces } from 'aril/util/lib';\r\n\r\nimport { HTTPMethods } from '../lib/enums';\r\n\r\nexport function getRequest(httpMethod: HTTPMethods, args: any[]): HttpParams | Interfaces.MapStringAny | undefined {\r\n\tif (!args.length) return undefined;\r\n\r\n\tswitch (httpMethod) {\r\n\t\tcase HTTPMethods.PUT:\r\n\t\t\treturn args[1];\r\n\t\tcase HTTPMethods.POSTBYPARAMS:\r\n\t\tcase HTTPMethods.GETBYPARAMS:\r\n\t\tcase HTTPMethods.DELETEBYPARAMS:\r\n\t\t\tconst dto = httpMethod === HTTPMethods.POSTBYPARAMS ? args[0].queryParams : args[0];\r\n\t\t\tlet queryParams = new HttpParams();\r\n\r\n\t\t\tfor (const [key, value] of Object.entries(dto)) {\r\n\t\t\t\tqueryParams = queryParams.append(key, value as any);\r\n\t\t\t}\r\n\r\n\t\t\treturn queryParams;\r\n\t\tdefault:\r\n\t\t\treturn args[0];\r\n\t}\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nimport { MessageService } from 'primeng/api';\r\n\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { KeycloakService } from 'keycloak-angular';\r\n\r\nimport { ErrorDetail, ServiceCallStateMap } from '../lib/interfaces';\r\n\r\nexport const callState = (states: ServiceCallStateMap<any>, serviceName: any): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: true,\r\n\t\tresponseIsRecieved: false,\r\n\t\tserviceCallFailed: false\r\n\t};\r\n};\r\n\r\nexport const successState = (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\ttranslocoService: TranslocoService,\r\n\tmessageService: MessageService,\r\n\tmessage?: { success?: string; error?: string },\r\n\tresponse?: any\r\n): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: false\r\n\t};\r\n\r\n\tif (message?.success) {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'success',\r\n\t\t\tsummary: getTranslatedMessage(<string>message.success, translocoService, response)\r\n\t\t});\r\n\t}\r\n};\r\n\r\nexport const errorState = async (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\terror: HttpErrorResponse,\r\n\ttranslocoService: TranslocoService,\r\n\tmessageService: MessageService,\r\n\tkeycloakService: KeycloakService,\r\n\tmessage?: { success?: string; error?: string; display?: string }\r\n): Promise<void> => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: true\r\n\t};\r\n\r\n\tlet httpError: string;\r\n\r\n\tswitch (error.status) {\r\n\t\tcase 400:\r\n\t\t\thttpError = 'Hatalı İstek';\r\n\t\t\tbreak;\r\n\t\tcase 401:\r\n\t\t\thttpError = 'Yetkisiz Erişim';\r\n\t\t\tawait keycloakService.login({ redirectUri: window.location.href });\r\n\t\t\tbreak;\r\n\t\tcase 403:\r\n\t\t\thttpError = 'Erişim Engellendi';\r\n\t\t\tbreak;\r\n\t\tcase 404:\r\n\t\t\thttpError = 'Kaynak Bulunamadı';\r\n\t\t\tbreak;\r\n\t\tcase 405:\r\n\t\t\thttpError = 'İzin Verilmeyen Metod';\r\n\t\t\tbreak;\r\n\t\tcase 406:\r\n\t\t\thttpError = 'Kabul Edilemez Başlık';\r\n\t\t\tbreak;\r\n\t\tcase 408:\r\n\t\t\thttpError = 'Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tcase 409:\r\n\t\t\thttpError = 'Çakışma';\r\n\t\t\tbreak;\r\n\t\tcase 500:\r\n\t\t\thttpError = 'Sunucu Hatası';\r\n\t\t\tbreak;\r\n\t\tcase 501:\r\n\t\t\thttpError = 'Sunucu Yapılandırma Hatası';\r\n\t\t\tbreak;\r\n\t\tcase 502:\r\n\t\t\thttpError = 'Geçersiz Ağ Geçidi';\r\n\t\t\tbreak;\r\n\t\tcase 503:\r\n\t\t\thttpError = 'Sunucu Hizmet Vermiyor';\r\n\t\t\tbreak;\r\n\t\tcase 504:\r\n\t\t\thttpError = 'Ağ Geçidi Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tcase 505:\r\n\t\t\thttpError = 'HTTP Protokol Desteklenmiyor';\r\n\t\t\tbreak;\r\n\t\tcase 511:\r\n\t\t\thttpError = 'Ağ Kimlik Doğrulaması Gerekli';\r\n\t\t\tbreak;\r\n\t\tcase 599:\r\n\t\t\thttpError = 'Ağ Bağlantısı Zaman Aşımı';\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\thttpError = error?.error?.message;\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\tif (error.error?.details && Array.isArray(error.error.details) && error.error.details.length > 0) {\r\n\t\terror.error.details.forEach((detail: ErrorDetail) => {\r\n\t\t\tmessageService.add({\r\n\t\t\t\tkey: 'toast-root',\r\n\t\t\t\tseverity: 'error',\r\n\t\t\t\tsummary: error?.error?.message,\r\n\t\t\t\tdetail: (detail.fieldName !== null ? detail.fieldName + ' - ' : '') + detail.reason\r\n\t\t\t});\r\n\t\t});\r\n\t} else {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'error',\r\n\t\t\tsummary: httpError,\r\n\t\t\tdetail: error?.error?.message\r\n\t\t});\r\n\t}\r\n\r\n\tif (message?.error) {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'error',\r\n\t\t\tsummary:\r\n\t\t\t\terror?.error?.message ? error?.error?.message : getTranslatedMessage(<string>message.error, translocoService)\r\n\t\t});\r\n\t}\r\n};\r\n\r\nexport const warningState = (\r\n\tstates: ServiceCallStateMap<any>,\r\n\tserviceName: any,\r\n\tresponse: any,\r\n\tmessageService: MessageService\r\n): void => {\r\n\tstates[serviceName] = {\r\n\t\tserviceCalled: true,\r\n\t\twaitingForResponse: false,\r\n\t\tresponseIsRecieved: true,\r\n\t\tserviceCallFailed: true\r\n\t};\r\n\r\n\tif (response?.details && Array.isArray(response.details) && response.details.length > 0) {\r\n\t\tresponse.details.forEach((detail: ErrorDetail) => {\r\n\t\t\tmessageService.add({\r\n\t\t\t\tkey: 'toast-root',\r\n\t\t\t\tseverity: 'warn',\r\n\t\t\t\tsummary: response?.message,\r\n\t\t\t\tdetail: (detail.fieldName !== null ? detail.fieldName + ' - ' : '') + detail.reason\r\n\t\t\t});\r\n\t\t});\r\n\t} else {\r\n\t\tmessageService.add({\r\n\t\t\tkey: 'toast-root',\r\n\t\t\tseverity: 'warn',\r\n\t\t\tdetail: response?.message\r\n\t\t});\r\n\t}\r\n};\r\n\r\nconst getTranslatedMessage = (messageCode: string, translocoService: TranslocoService, response?: any): string => {\r\n\tconst translateObject = translocoService.getTranslation().get(translocoService.getActiveLang());\r\n\tlet translatedMessage = translateObject?.[messageCode] ?? messageCode;\r\n\r\n\tconst paramStartSymbol = '{{';\r\n\tconst paramEndSymbol = '}}';\r\n\r\n\tif (response && translatedMessage.includes(paramStartSymbol) && translatedMessage.includes(paramEndSymbol)) {\r\n\t\tdo {\r\n\t\t\tlet paramStartIndex = translatedMessage.indexOf(paramStartSymbol);\r\n\t\t\tlet paramEndIndex = translatedMessage.indexOf(paramEndSymbol);\r\n\t\t\tlet paramKey = translatedMessage.slice(paramStartIndex + paramStartSymbol.length, paramEndIndex);\r\n\r\n\t\t\t// Splitting the key to get nested object values\r\n\t\t\tlet paramKeyList = paramKey.split('.');\r\n\t\t\tlet paramValue;\r\n\r\n\t\t\tfor (let key of paramKeyList) {\r\n\t\t\t\tparamValue = paramValue ? paramValue[key] : response[key];\r\n\t\t\t}\r\n\r\n\t\t\tlet replacePattern = `${paramStartSymbol}${paramKey}${paramEndSymbol}`;\r\n\t\t\ttranslatedMessage = translatedMessage.replace(replacePattern, paramValue);\r\n\t\t} while (translatedMessage.includes(paramStartSymbol));\r\n\t}\r\n\r\n\treturn translatedMessage;\r\n};\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { HttpClient, HttpErrorResponse, HttpParams } from '@angular/common/http';\r\nimport { runInInjectionContext } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError, map, tap } from 'rxjs/operators';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\nimport { Apps } from 'aril/boot/config/apps';\r\n\r\nimport { HTTPMethods, ProxyTypes } from '../lib/enums';\r\nimport { ErrorResponse, ServiceCallStateMap, ServiceResponse } from '../lib/interfaces';\r\nimport { getRequest } from './serviceRequest';\r\nimport { callState, errorState, successState, warningState } from './serviceStateMethods';\r\n\r\nexport function ServiceCall(\r\n\thttpMethod: HTTPMethods,\r\n\tproxy: ProxyTypes,\r\n\tserviceURL: string,\r\n\tmessage?: { success?: string; error?: string },\r\n\tremoteAPI?: Apps,\r\n\tisMockAPI = false\r\n): MethodDecorator {\r\n\treturn function (serviceClass: object, serviceName: string | symbol, descriptor: PropertyDescriptor) {\r\n\t\t// const originalFunction = descriptor.value;\r\n\r\n\t\tdescriptor.value = function (...args: any[]) {\r\n\t\t\treturn runInInjectionContext((<any>this).injector, () => {\r\n\t\t\t\tconst httpClient: HttpClient = (<any>this).httpClient;\r\n\r\n\t\t\t\tlet api = '';\r\n\t\t\t\tif (isMockAPI) api = <string>remoteAPI;\r\n\t\t\t\telse if (remoteAPI) {\r\n\t\t\t\t\tconst url = new URL(API_CONFIGS.api);\r\n\t\t\t\t\tapi = url.origin + '/' + API_CONFIGS.prefixMap[remoteAPI];\r\n\t\t\t\t} else api = API_CONFIGS.api;\r\n\r\n\t\t\t\tconst endPoint = api + '/' + serviceURL;\r\n\t\t\t\tconst request = getRequest(httpMethod, args);\r\n\t\t\t\tconst states: ServiceCallStateMap<any> = (<any>this).states;\r\n\r\n\t\t\t\tcallState(states, serviceName);\r\n\r\n\t\t\t\tlet observable: Observable<any> = new Observable<any>();\r\n\r\n\t\t\t\tswitch (httpMethod) {\r\n\t\t\t\t\tcase HTTPMethods.GET:\r\n\t\t\t\t\t\tlet getReq = args.length ? '/' + args[0] : '';\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(endPoint + getReq, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.GETBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(endPoint, { params: request as HttpParams, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.GETBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet getDynamicServiceUrl = serviceURL;\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tgetDynamicServiceUrl = getDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.get<any>(api + '/' + getDynamicServiceUrl, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POST:\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(endPoint, args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POSTBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(endPoint, args[0].body, { params: request, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.POSTBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet body = {};\r\n\t\t\t\t\t\tlet dynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') body = arg;\r\n\t\t\t\t\t\t\telse dynamicServiceUrl = dynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.post<any>(api + '/' + dynamicServiceUrl, body, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.PUT:\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(endPoint + '/' + args[0], request, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.PUTBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(endPoint, args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase HTTPMethods.PUTBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet putBody = {};\r\n\t\t\t\t\t\tlet putDynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') putBody = arg;\r\n\t\t\t\t\t\t\telse putDynamicServiceUrl = putDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tobservable = httpClient.put<any>(api + '/' + putDynamicServiceUrl, putBody, { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETE:\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(endPoint + '/' + args[0], { responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETEBYPARAMS:\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(endPoint, { params: request as HttpParams, responseType: 'json' });\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase HTTPMethods.DELETEBYDYNAMICPATH:\r\n\t\t\t\t\t\tlet deleteParams = {};\r\n\t\t\t\t\t\tlet deleteDynamicServiceUrl = serviceURL;\r\n\r\n\t\t\t\t\t\targs.forEach((arg) => {\r\n\t\t\t\t\t\t\tif (typeof arg === 'object') deleteParams = arg;\r\n\t\t\t\t\t\t\telse deleteDynamicServiceUrl = deleteDynamicServiceUrl.replace('$', arg);\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tobservable = httpClient.delete<any>(api + '/' + deleteDynamicServiceUrl, {\r\n\t\t\t\t\t\t\tparams: deleteParams,\r\n\t\t\t\t\t\t\tresponseType: 'json'\r\n\t\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tobservable = observable.pipe(\r\n\t\t\t\t\tmap((response) => new ServiceResponse(request, response, proxy)),\r\n\t\t\t\t\ttap((serviceRes) => {\r\n\t\t\t\t\t\tif (!serviceRes.response) {\r\n\t\t\t\t\t\t\t(<any>this).messageService.add({\r\n\t\t\t\t\t\t\t\tkey: 'toast-root',\r\n\t\t\t\t\t\t\t\tseverity: 'success',\r\n\t\t\t\t\t\t\t\tsummary: (<any>this).translocoService.translate('messages.successMessageHeader'),\r\n\t\t\t\t\t\t\t\tdetail: (<any>this).translocoService.translate('messages.successMessage')\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else if (serviceRes.response.type === 'ValidationWarningException') {\r\n\t\t\t\t\t\t\twarningState(states, serviceName, serviceRes.response, (<any>this).messageService);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tsuccessState(\r\n\t\t\t\t\t\t\t\tstates,\r\n\t\t\t\t\t\t\t\tserviceName,\r\n\t\t\t\t\t\t\t\t(<any>this).translocoService,\r\n\t\t\t\t\t\t\t\t(<any>this).messageService,\r\n\t\t\t\t\t\t\t\tmessage,\r\n\t\t\t\t\t\t\t\tserviceRes\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tcatchError(async (error: HttpErrorResponse) => {\r\n\t\t\t\t\t\tawait errorState(\r\n\t\t\t\t\t\t\tstates,\r\n\t\t\t\t\t\t\tserviceName,\r\n\t\t\t\t\t\t\terror,\r\n\t\t\t\t\t\t\t(<any>this).translocoService,\r\n\t\t\t\t\t\t\t(<any>this).messageService,\r\n\t\t\t\t\t\t\t(<any>this).keycloak,\r\n\t\t\t\t\t\t\tmessage\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\treturn of(new ErrorResponse(error));\r\n\t\t\t\t\t}),\r\n\t\t\t\t\ttakeUntilDestroyed()\r\n\t\t\t\t);\r\n\r\n\t\t\t\treturn observable;\r\n\t\t\t});\r\n\t\t};\r\n\t};\r\n}\r\n","import { HTTPMethods, ProxyTypes } from '../lib/enums';\r\nimport { ServiceCall } from './serviceBase';\r\n\r\nexport function ServiceCallMock(\r\n\thttpMethod: HTTPMethods,\r\n\tproxy: ProxyTypes,\r\n\tserviceURL: string,\r\n\tmockAPI: string,\r\n\tmessage?: { success?: string; error?: string; useDefault: boolean }\r\n) {\r\n\t// return ServiceCall(httpMethod, proxy, serviceURL, message, mockAPI, true);\r\n}\r\n","import { HttpHandlerFn, HttpInterceptorFn, HttpRequest } from '@angular/common/http';\r\n\r\nexport const stateMachineInterceptor: HttpInterceptorFn = (req: HttpRequest<unknown>, next: HttpHandlerFn) => {\r\n\tlet clone = req;\r\n\tif (req.url.includes('state-machine/v1')) {\r\n\t\tclone = req.clone({ url: req.url.split('/host/v1').join('') });\r\n\t}\r\n\treturn next(clone);\r\n};\r\n","/* lib */\r\nexport * from './lib/enums';\r\nexport * from './lib/interfaces';\r\n\r\n/* src */\r\nexport * from './src/httpBackend';\r\nexport * from './src/httpClient';\r\nexport * from './src/serviceBase';\r\nexport * from './src/serviceMockBase';\r\nexport * from './src/serviceStateMethods';\r\n\r\n/* interceptor */\r\nexport * from './src/interceptor/state-machine.interceptor';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/http/src/httpClient.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { HTTPMethods, ProxyTypes } from '../lib/enums';
|
|
2
1
|
import { Apps } from 'aril/boot/config/apps';
|
|
2
|
+
import { HTTPMethods, ProxyTypes } from '../lib/enums';
|
|
3
3
|
export declare function ServiceCall(httpMethod: HTTPMethods, proxy: ProxyTypes, serviceURL: string, message?: {
|
|
4
4
|
success?: string;
|
|
5
5
|
error?: string;
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { HttpErrorResponse } from '@angular/common/http';
|
|
2
2
|
import { MessageService } from 'primeng/api';
|
|
3
3
|
import { TranslocoService } from '@ngneat/transloco';
|
|
4
|
+
import { KeycloakService } from 'keycloak-angular';
|
|
4
5
|
import { ServiceCallStateMap } from '../lib/interfaces';
|
|
5
6
|
export declare const callState: (states: ServiceCallStateMap<any>, serviceName: any) => void;
|
|
6
7
|
export declare const successState: (states: ServiceCallStateMap<any>, serviceName: any, translocoService: TranslocoService, messageService: MessageService, message?: {
|
|
7
8
|
success?: string;
|
|
8
9
|
error?: string;
|
|
9
10
|
}, response?: any) => void;
|
|
10
|
-
export declare const errorState: (states: ServiceCallStateMap<any>, serviceName: any, error: HttpErrorResponse, translocoService: TranslocoService, messageService: MessageService, message?: {
|
|
11
|
+
export declare const errorState: (states: ServiceCallStateMap<any>, serviceName: any, error: HttpErrorResponse, translocoService: TranslocoService, messageService: MessageService, keycloakService: KeycloakService, message?: {
|
|
11
12
|
success?: string | undefined;
|
|
12
13
|
error?: string | undefined;
|
|
13
14
|
display?: string | undefined;
|
|
14
|
-
} | undefined) => void
|
|
15
|
+
} | undefined) => Promise<void>;
|
|
15
16
|
export declare const warningState: (states: ServiceCallStateMap<any>, serviceName: any, response: any, messageService: MessageService) => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aril",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.18",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/cdk": "~17.1.0",
|
|
6
6
|
"@angular/common": "^17.1.0",
|
|
@@ -125,18 +125,18 @@
|
|
|
125
125
|
"esm": "./esm2022/ui/badge/aril-ui-badge.mjs",
|
|
126
126
|
"default": "./fesm2022/aril-ui-badge.mjs"
|
|
127
127
|
},
|
|
128
|
-
"./ui/calendar": {
|
|
129
|
-
"types": "./ui/calendar/index.d.ts",
|
|
130
|
-
"esm2022": "./esm2022/ui/calendar/aril-ui-calendar.mjs",
|
|
131
|
-
"esm": "./esm2022/ui/calendar/aril-ui-calendar.mjs",
|
|
132
|
-
"default": "./fesm2022/aril-ui-calendar.mjs"
|
|
133
|
-
},
|
|
134
128
|
"./ui/button": {
|
|
135
129
|
"types": "./ui/button/index.d.ts",
|
|
136
130
|
"esm2022": "./esm2022/ui/button/aril-ui-button.mjs",
|
|
137
131
|
"esm": "./esm2022/ui/button/aril-ui-button.mjs",
|
|
138
132
|
"default": "./fesm2022/aril-ui-button.mjs"
|
|
139
133
|
},
|
|
134
|
+
"./ui/calendar": {
|
|
135
|
+
"types": "./ui/calendar/index.d.ts",
|
|
136
|
+
"esm2022": "./esm2022/ui/calendar/aril-ui-calendar.mjs",
|
|
137
|
+
"esm": "./esm2022/ui/calendar/aril-ui-calendar.mjs",
|
|
138
|
+
"default": "./fesm2022/aril-ui-calendar.mjs"
|
|
139
|
+
},
|
|
140
140
|
"./ui/charts": {
|
|
141
141
|
"types": "./ui/charts/index.d.ts",
|
|
142
142
|
"esm2022": "./esm2022/ui/charts/aril-ui-charts.mjs",
|
|
@@ -305,6 +305,12 @@
|
|
|
305
305
|
"esm": "./esm2022/ui/tag/aril-ui-tag.mjs",
|
|
306
306
|
"default": "./fesm2022/aril-ui-tag.mjs"
|
|
307
307
|
},
|
|
308
|
+
"./ui/tagBox": {
|
|
309
|
+
"types": "./ui/tagBox/index.d.ts",
|
|
310
|
+
"esm2022": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
311
|
+
"esm": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
312
|
+
"default": "./fesm2022/aril-ui-tagBox.mjs"
|
|
313
|
+
},
|
|
308
314
|
"./ui/text": {
|
|
309
315
|
"types": "./ui/text/index.d.ts",
|
|
310
316
|
"esm2022": "./esm2022/ui/text/aril-ui-text.mjs",
|
|
@@ -341,18 +347,18 @@
|
|
|
341
347
|
"esm": "./esm2022/ui/tree/aril-ui-tree.mjs",
|
|
342
348
|
"default": "./fesm2022/aril-ui-tree.mjs"
|
|
343
349
|
},
|
|
350
|
+
"./ui/treeSelect": {
|
|
351
|
+
"types": "./ui/treeSelect/index.d.ts",
|
|
352
|
+
"esm2022": "./esm2022/ui/treeSelect/aril-ui-treeSelect.mjs",
|
|
353
|
+
"esm": "./esm2022/ui/treeSelect/aril-ui-treeSelect.mjs",
|
|
354
|
+
"default": "./fesm2022/aril-ui-treeSelect.mjs"
|
|
355
|
+
},
|
|
344
356
|
"./ui/treeTable": {
|
|
345
357
|
"types": "./ui/treeTable/index.d.ts",
|
|
346
358
|
"esm2022": "./esm2022/ui/treeTable/aril-ui-treeTable.mjs",
|
|
347
359
|
"esm": "./esm2022/ui/treeTable/aril-ui-treeTable.mjs",
|
|
348
360
|
"default": "./fesm2022/aril-ui-treeTable.mjs"
|
|
349
361
|
},
|
|
350
|
-
"./ui/tagBox": {
|
|
351
|
-
"types": "./ui/tagBox/index.d.ts",
|
|
352
|
-
"esm2022": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
353
|
-
"esm": "./esm2022/ui/tagBox/aril-ui-tagBox.mjs",
|
|
354
|
-
"default": "./fesm2022/aril-ui-tagBox.mjs"
|
|
355
|
-
},
|
|
356
362
|
"./ui/value": {
|
|
357
363
|
"types": "./ui/value/index.d.ts",
|
|
358
364
|
"esm2022": "./esm2022/ui/value/aril-ui-value.mjs",
|
|
@@ -431,23 +437,17 @@
|
|
|
431
437
|
"esm": "./esm2022/util/lib/aril-util-lib.mjs",
|
|
432
438
|
"default": "./fesm2022/aril-util-lib.mjs"
|
|
433
439
|
},
|
|
434
|
-
"./util/pipes": {
|
|
435
|
-
"types": "./util/pipes/index.d.ts",
|
|
436
|
-
"esm2022": "./esm2022/util/pipes/aril-util-pipes.mjs",
|
|
437
|
-
"esm": "./esm2022/util/pipes/aril-util-pipes.mjs",
|
|
438
|
-
"default": "./fesm2022/aril-util-pipes.mjs"
|
|
439
|
-
},
|
|
440
440
|
"./util/loaders": {
|
|
441
441
|
"types": "./util/loaders/index.d.ts",
|
|
442
442
|
"esm2022": "./esm2022/util/loaders/aril-util-loaders.mjs",
|
|
443
443
|
"esm": "./esm2022/util/loaders/aril-util-loaders.mjs",
|
|
444
444
|
"default": "./fesm2022/aril-util-loaders.mjs"
|
|
445
445
|
},
|
|
446
|
-
"./util/
|
|
447
|
-
"types": "./util/
|
|
448
|
-
"esm2022": "./esm2022/util/
|
|
449
|
-
"esm": "./esm2022/util/
|
|
450
|
-
"default": "./fesm2022/aril-util-
|
|
446
|
+
"./util/pipes": {
|
|
447
|
+
"types": "./util/pipes/index.d.ts",
|
|
448
|
+
"esm2022": "./esm2022/util/pipes/aril-util-pipes.mjs",
|
|
449
|
+
"esm": "./esm2022/util/pipes/aril-util-pipes.mjs",
|
|
450
|
+
"default": "./fesm2022/aril-util-pipes.mjs"
|
|
451
451
|
},
|
|
452
452
|
"./util/primitive-extensions": {
|
|
453
453
|
"types": "./util/primitive-extensions/index.d.ts",
|
|
@@ -455,6 +455,12 @@
|
|
|
455
455
|
"esm": "./esm2022/util/primitive-extensions/aril-util-primitive-extensions.mjs",
|
|
456
456
|
"default": "./fesm2022/aril-util-primitive-extensions.mjs"
|
|
457
457
|
},
|
|
458
|
+
"./util/pub-sub": {
|
|
459
|
+
"types": "./util/pub-sub/index.d.ts",
|
|
460
|
+
"esm2022": "./esm2022/util/pub-sub/aril-util-pub-sub.mjs",
|
|
461
|
+
"esm": "./esm2022/util/pub-sub/aril-util-pub-sub.mjs",
|
|
462
|
+
"default": "./fesm2022/aril-util-pub-sub.mjs"
|
|
463
|
+
},
|
|
458
464
|
"./util/unwrap": {
|
|
459
465
|
"types": "./util/unwrap/index.d.ts",
|
|
460
466
|
"esm2022": "./esm2022/util/unwrap/aril-util-unwrap.mjs",
|
|
@@ -467,23 +473,17 @@
|
|
|
467
473
|
"esm": "./esm2022/boot/config/api/aril-boot-config-api.mjs",
|
|
468
474
|
"default": "./fesm2022/aril-boot-config-api.mjs"
|
|
469
475
|
},
|
|
470
|
-
"./boot/config/plugins": {
|
|
471
|
-
"types": "./boot/config/plugins/index.d.ts",
|
|
472
|
-
"esm2022": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
473
|
-
"esm": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
474
|
-
"default": "./fesm2022/aril-boot-config-plugins.mjs"
|
|
475
|
-
},
|
|
476
476
|
"./boot/config/apps": {
|
|
477
477
|
"types": "./boot/config/apps/index.d.ts",
|
|
478
478
|
"esm2022": "./esm2022/boot/config/apps/aril-boot-config-apps.mjs",
|
|
479
479
|
"esm": "./esm2022/boot/config/apps/aril-boot-config-apps.mjs",
|
|
480
480
|
"default": "./fesm2022/aril-boot-config-apps.mjs"
|
|
481
481
|
},
|
|
482
|
-
"./
|
|
483
|
-
"types": "./
|
|
484
|
-
"esm2022": "./esm2022/
|
|
485
|
-
"esm": "./esm2022/
|
|
486
|
-
"default": "./fesm2022/aril-
|
|
482
|
+
"./boot/config/plugins": {
|
|
483
|
+
"types": "./boot/config/plugins/index.d.ts",
|
|
484
|
+
"esm2022": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
485
|
+
"esm": "./esm2022/boot/config/plugins/aril-boot-config-plugins.mjs",
|
|
486
|
+
"default": "./fesm2022/aril-boot-config-plugins.mjs"
|
|
487
487
|
},
|
|
488
488
|
"./ui/business-components/assetPicker": {
|
|
489
489
|
"types": "./ui/business-components/assetPicker/index.d.ts",
|