@esfaenza/core 15.2.274 → 15.2.276
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/components/error/404/pagenotfound.component.d.ts +2 -1
- package/components/error/500/servererror.component.d.ts +2 -1
- package/components/error/Angular/angularerror.component.d.ts +2 -1
- package/components/navbar/navbar.component.d.ts +2 -1
- package/domain/tokens.d.ts +2 -0
- package/esm2020/components/error/404/pagenotfound.component.mjs +13 -7
- package/esm2020/components/error/500/servererror.component.mjs +13 -7
- package/esm2020/components/error/Angular/angularerror.component.mjs +13 -7
- package/esm2020/components/external-page/external_pages.component.mjs +2 -2
- package/esm2020/components/navbar/navbar.component.mjs +10 -6
- package/esm2020/components/user_infos/user_infos.component.mjs +6 -4
- package/esm2020/domain/tokens.mjs +3 -1
- package/esm2020/lib/app.component.mjs +12 -8
- package/esm2020/lib/core.module.mjs +21 -4
- package/esm2020/services/classes/app.accesstoken.mjs +14 -4
- package/esm2020/services/classes/app.routeguard.mjs +3 -2
- package/esm2020/services/classes/app.session.mjs +13 -5
- package/esm2020/services/classes/app.state.mjs +17 -7
- package/esm2020/services/classes/preferences/user/app.userpreferences.base.mjs +6 -3
- package/fesm2015/esfaenza-core-components.mjs +51 -25
- package/fesm2015/esfaenza-core-components.mjs.map +1 -1
- package/fesm2015/esfaenza-core-domain.mjs +3 -1
- package/fesm2015/esfaenza-core-domain.mjs.map +1 -1
- package/fesm2015/esfaenza-core-services.mjs +46 -14
- package/fesm2015/esfaenza-core-services.mjs.map +1 -1
- package/fesm2015/esfaenza-core.mjs +34 -12
- package/fesm2015/esfaenza-core.mjs.map +1 -1
- package/fesm2020/esfaenza-core-components.mjs +45 -25
- package/fesm2020/esfaenza-core-components.mjs.map +1 -1
- package/fesm2020/esfaenza-core-domain.mjs +3 -1
- package/fesm2020/esfaenza-core-domain.mjs.map +1 -1
- package/fesm2020/esfaenza-core-services.mjs +42 -14
- package/fesm2020/esfaenza-core-services.mjs.map +1 -1
- package/fesm2020/esfaenza-core.mjs +32 -12
- package/fesm2020/esfaenza-core.mjs.map +1 -1
- package/lib/app.component.d.ts +1 -1
- package/lib/core.module.d.ts +1 -0
- package/package.json +5 -5
- package/services/classes/app.accesstoken.d.ts +3 -2
- package/services/classes/app.session.d.ts +2 -1
- package/services/classes/app.state.d.ts +2 -1
|
@@ -5,8 +5,9 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export declare class PageNotFoundComponent {
|
|
6
6
|
private _location;
|
|
7
7
|
private emb;
|
|
8
|
+
ANONYMOUS_MODE: boolean;
|
|
8
9
|
router: Router;
|
|
9
|
-
constructor(router: Router, _location: Location, emb: AppEmbeddingExtensions);
|
|
10
|
+
constructor(router: Router, _location: Location, emb: AppEmbeddingExtensions, ANONYMOUS_MODE: boolean);
|
|
10
11
|
goPreviousPage(): void;
|
|
11
12
|
goDashboard(): void;
|
|
12
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<PageNotFoundComponent, never>;
|
|
@@ -7,10 +7,11 @@ export declare class ServerErrorComponent {
|
|
|
7
7
|
private route;
|
|
8
8
|
private emb;
|
|
9
9
|
private as;
|
|
10
|
+
ANONYMOUS_MODE: boolean;
|
|
10
11
|
statusCode: string;
|
|
11
12
|
statusText: string;
|
|
12
13
|
previousUrl: string;
|
|
13
|
-
constructor(router: Router, route: ActivatedRoute, emb: AppEmbeddingExtensions, as: AppState);
|
|
14
|
+
constructor(router: Router, route: ActivatedRoute, emb: AppEmbeddingExtensions, as: AppState, ANONYMOUS_MODE: boolean);
|
|
14
15
|
b64DecodeUnicode(str: any): string;
|
|
15
16
|
goPreviousPage(): void;
|
|
16
17
|
goDashboard(): void;
|
|
@@ -9,12 +9,13 @@ export declare class AngularErrorComponent {
|
|
|
9
9
|
private http;
|
|
10
10
|
private bts;
|
|
11
11
|
private emb;
|
|
12
|
+
ANONYMOUS_MODE: boolean;
|
|
12
13
|
errorMessage: string;
|
|
13
14
|
errorFrom: string;
|
|
14
15
|
errorLastCalls: string;
|
|
15
16
|
previousUrl: string;
|
|
16
17
|
identityInfos: string;
|
|
17
|
-
constructor(router: Router, route: ActivatedRoute, http: HTTPService, bts: TokenService, emb: AppEmbeddingExtensions);
|
|
18
|
+
constructor(router: Router, route: ActivatedRoute, http: HTTPService, bts: TokenService, emb: AppEmbeddingExtensions, ANONYMOUS_MODE: boolean);
|
|
18
19
|
ngOnInit(): void;
|
|
19
20
|
b64DecodeUnicode(str: any): string;
|
|
20
21
|
goPreviousPage(): void;
|
|
@@ -25,6 +25,7 @@ export declare class Navbar extends ReactiveComponent {
|
|
|
25
25
|
extensionComponents: Type<any>[];
|
|
26
26
|
loginUrlLegacy: boolean;
|
|
27
27
|
private fakeToken;
|
|
28
|
+
ANONYMOUS_MODE: boolean;
|
|
28
29
|
applicationVersion: string;
|
|
29
30
|
applicationEnvironment: string;
|
|
30
31
|
isMenuCollapsed: boolean;
|
|
@@ -33,7 +34,7 @@ export declare class Navbar extends ReactiveComponent {
|
|
|
33
34
|
private newVersionWarned;
|
|
34
35
|
navbar: ElementRef;
|
|
35
36
|
Modules: ActiveModuleView[];
|
|
36
|
-
constructor(prefsService: PreferencesService, cacheService: CacheService, MessageDef: BaseMessageService, notifications: NotificationsService, msgExts: MessageService, lc: LocalizationService, http: HTTPService, cdr: ChangeDetectorRef, _state: AppState, sr: TokenService, router: Router, cjrService: CompletedJobRedirectionService, extensionComponents: Type<any>[], loginUrlLegacy: boolean, fakeToken: boolean);
|
|
37
|
+
constructor(prefsService: PreferencesService, cacheService: CacheService, MessageDef: BaseMessageService, notifications: NotificationsService, msgExts: MessageService, lc: LocalizationService, http: HTTPService, cdr: ChangeDetectorRef, _state: AppState, sr: TokenService, router: Router, cjrService: CompletedJobRedirectionService, extensionComponents: Type<any>[], loginUrlLegacy: boolean, fakeToken: boolean, ANONYMOUS_MODE: boolean);
|
|
37
38
|
ngOnDestroy(): void;
|
|
38
39
|
private handleBaseNotifications;
|
|
39
40
|
private checkIdentity;
|
package/domain/tokens.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export declare const MENU_LOCALIZATION: InjectionToken<Type<LocalizationService>
|
|
|
14
14
|
export declare const MENU: InjectionToken<ApplicationMenu[]>;
|
|
15
15
|
/** Token che indica se il servizio di autenticazione deve utilizzare un token finto */
|
|
16
16
|
export declare const USE_FAKE_ACCESS_TOKEN: InjectionToken<boolean>;
|
|
17
|
+
/** Token che indica se il servizio di autenticazione deve funzionare in anonimo lato Frontend. Dev'essere utilizzato insieme al tag "Auth" in code behind */
|
|
18
|
+
export declare const ANONYMOUS_MODE: InjectionToken<boolean>;
|
|
17
19
|
/** Token che indica i componenti di estensione da aggiungere alla navbar. Verranno bootstrappati in maniera dinamica */
|
|
18
20
|
export declare const NAVBAR_EXTENSIONS: InjectionToken<Type<any>[]>;
|
|
19
21
|
/** Token che identifica se utilizzare la versione vecchia dell'url di auth (${myconfig.AUTH_URL}/login/form?client=${myconfig.CLIENT_NAME}) invece che la nuova (${myconfig.AUTH_URL}/login;client=${myconfig.CLIENT_NAME}) */
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
// Angular
|
|
2
|
-
import { Component, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { Component, Inject, ViewEncapsulation } from "@angular/core";
|
|
3
|
+
import { NgIf } from "@angular/common";
|
|
4
|
+
import { ANONYMOUS_MODE } from "@esfaenza/core/domain";
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
import * as i1 from "@angular/router";
|
|
5
7
|
import * as i2 from "@angular/common";
|
|
6
8
|
import * as i3 from "@esfaenza/extensions";
|
|
7
9
|
export class PageNotFoundComponent {
|
|
8
|
-
constructor(router, _location, emb) {
|
|
10
|
+
constructor(router, _location, emb, ANONYMOUS_MODE) {
|
|
9
11
|
this._location = _location;
|
|
10
12
|
this.emb = emb;
|
|
13
|
+
this.ANONYMOUS_MODE = ANONYMOUS_MODE;
|
|
11
14
|
this.router = router;
|
|
12
15
|
}
|
|
13
16
|
goPreviousPage() {
|
|
@@ -21,10 +24,13 @@ export class PageNotFoundComponent {
|
|
|
21
24
|
this.router.navigate([url]);
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
|
-
PageNotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PageNotFoundComponent, deps: [{ token: i1.Router }, { token: i2.Location }, { token: i3.AppEmbeddingExtensions }], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
-
PageNotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PageNotFoundComponent, isStandalone: true, selector: "pagenotfound", ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\">404</h1>\r\n <h6 class=\"card-title\">La risorsa richiesta non è stata trovata ma in futuro potrebbe essere disponibile.</h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", encapsulation: i0.ViewEncapsulation.None });
|
|
27
|
+
PageNotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PageNotFoundComponent, deps: [{ token: i1.Router }, { token: i2.Location }, { token: i3.AppEmbeddingExtensions }, { token: ANONYMOUS_MODE }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
PageNotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PageNotFoundComponent, isStandalone: true, selector: "pagenotfound", providers: [NgIf], ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\">404</h1>\r\n <h6 class=\"card-title\">La risorsa richiesta non è stata trovata ma in futuro potrebbe essere disponibile.</h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", encapsulation: i0.ViewEncapsulation.None });
|
|
26
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PageNotFoundComponent, decorators: [{
|
|
27
30
|
type: Component,
|
|
28
|
-
args: [{ selector: "pagenotfound", encapsulation: ViewEncapsulation.None, standalone: true, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\">404</h1>\r\n <h6 class=\"card-title\">La risorsa richiesta non è stata trovata ma in futuro potrebbe essere disponibile.</h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
29
|
-
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.Location }, { type: i3.AppEmbeddingExtensions }
|
|
30
|
-
|
|
31
|
+
args: [{ selector: "pagenotfound", encapsulation: ViewEncapsulation.None, providers: [NgIf], standalone: true, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\">404</h1>\r\n <h6 class=\"card-title\">La risorsa richiesta non è stata trovata ma in futuro potrebbe essere disponibile.</h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
32
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.Location }, { type: i3.AppEmbeddingExtensions }, { type: undefined, decorators: [{
|
|
33
|
+
type: Inject,
|
|
34
|
+
args: [ANONYMOUS_MODE]
|
|
35
|
+
}] }]; } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZW5vdGZvdW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zcmMvZXJyb3IvNDA0L3BhZ2Vub3Rmb3VuZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3JjL2Vycm9yLzQwNC9wYWdlbm90Zm91bmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBWSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUlqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7O0FBU3ZELE1BQU0sT0FBTyxxQkFBcUI7SUFHOUIsWUFBWSxNQUFjLEVBQVUsU0FBbUIsRUFBVSxHQUEyQixFQUFpQyxjQUF1QjtRQUFoSCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFBaUMsbUJBQWMsR0FBZCxjQUFjLENBQVM7UUFDaEosSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDekIsQ0FBQztJQUVELGNBQWM7UUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxHQUFHLEdBQUcsa0JBQWtCLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVE7WUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQzs7WUFFaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7O21IQWpCUSxxQkFBcUIsc0dBR3dFLGNBQWM7dUdBSDNHLHFCQUFxQiwyREFIbkIsQ0FBQyxJQUFJLENBQUMsMEJDWnJCLDg4QkFnQk07NEZERE8scUJBQXFCO2tCQVBqQyxTQUFTOytCQUNJLGNBQWMsaUJBQ1QsaUJBQWlCLENBQUMsSUFBSSxhQUUxQixDQUFDLElBQUksQ0FBQyxjQUNMLElBQUk7OzBCQUsrRSxNQUFNOzJCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2F0aW9uLCBOZ0lmIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcblxyXG5pbXBvcnQgeyBBcHBFbWJlZGRpbmdFeHRlbnNpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcbmltcG9ydCB7IEFOT05ZTU9VU19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJwYWdlbm90Zm91bmRcIixcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3BhZ2Vub3Rmb3VuZC5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgcHJvdmlkZXJzOiBbTmdJZl0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlTm90Rm91bmRDb21wb25lbnQge1xyXG4gICAgcm91dGVyOiBSb3V0ZXI7XHJcblxyXG4gICAgY29uc3RydWN0b3Iocm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgX2xvY2F0aW9uOiBMb2NhdGlvbiwgcHJpdmF0ZSBlbWI6IEFwcEVtYmVkZGluZ0V4dGVuc2lvbnMsIEBJbmplY3QoQU5PTllNT1VTX01PREUpIHB1YmxpYyBBTk9OWU1PVVNfTU9ERTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMucm91dGVyID0gcm91dGVyO1xyXG4gICAgfVxyXG5cclxuICAgIGdvUHJldmlvdXNQYWdlKCkge1xyXG4gICAgICAgIHRoaXMuX2xvY2F0aW9uLmJhY2soKTtcclxuICAgIH1cclxuXHJcbiAgICBnb0Rhc2hib2FyZCgpIHtcclxuICAgICAgICBsZXQgdXJsID0gYC9wYWdlcy9kYXNoYm9hcmRgO1xyXG4gICAgICAgIGlmICh0aGlzLmVtYi5FbWJlZGRlZClcclxuICAgICAgICAgICAgdGhpcy5lbWIuTWFpbldpbmRvdy5wb3N0TWVzc2FnZSh7IHR5cGU6IFwibmF2aWdhdGVcIiwgdXJsIH0sIFwiKlwiKTtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cmxdKTtcclxuICAgIH1cclxufSIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXhsLTYgY29sLW1kLTYgY29sLTEwIG9mZnNldC14bC0zIG9mZnNldC1tZC0zIG9mZnNldC14cy0xIHAtdC0xMFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoMSBjbGFzcz1cImRpc3BsYXktMVwiPjQwNDwvaDE+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwiY2FyZC10aXRsZVwiPkxhIHJpc29yc2EgcmljaGllc3RhIG5vbiAmZWdyYXZlOyBzdGF0YSB0cm92YXRhIG1hIGluIGZ1dHVybyBwb3RyZWJiZSBlc3NlcmUgZGlzcG9uaWJpbGUuPC9oNj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIUFOT05ZTU9VU19NT0RFXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgcHVsbC1yaWdodFwiIChjbGljayk9XCJnb0Rhc2hib2FyZCgpXCI+VmFpIGFsbGEgRGFzaGJvYXJkPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgcHVsbC1sZWZ0XCIgKGNsaWNrKT1cImdvUHJldmlvdXNQYWdlKClcIj5Ub3JuYSBhbGxhIHBhZ2luYSBwcmVjZWRlbnRlPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjbGVhcmZpeFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
// Angular
|
|
2
|
-
import { Component, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { Component, Inject, ViewEncapsulation } from "@angular/core";
|
|
3
3
|
import { NgIf } from "@angular/common";
|
|
4
|
+
import { ANONYMOUS_MODE } from "@esfaenza/core/domain";
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/router";
|
|
6
7
|
import * as i2 from "@esfaenza/extensions";
|
|
7
8
|
import * as i3 from "@esfaenza/core/services";
|
|
8
9
|
export class ServerErrorComponent {
|
|
9
|
-
constructor(router, route, emb, as) {
|
|
10
|
+
constructor(router, route, emb, as, ANONYMOUS_MODE) {
|
|
10
11
|
this.router = router;
|
|
11
12
|
this.route = route;
|
|
12
13
|
this.emb = emb;
|
|
13
14
|
this.as = as;
|
|
15
|
+
this.ANONYMOUS_MODE = ANONYMOUS_MODE;
|
|
14
16
|
this.statusCode = this.route.snapshot.params["statusCode"];
|
|
15
17
|
this.statusText = this.b64DecodeUnicode(this.route.snapshot.params["statusText"]);
|
|
16
18
|
this.previousUrl = this.route.snapshot.params["fromUrl"];
|
|
17
19
|
//Dopo 1 secondo considero la sfilza di errori finita
|
|
18
20
|
setTimeout(() => { this.as.handlingError = false; }, 1000);
|
|
21
|
+
console.log("Modalità anonima: " + this.ANONYMOUS_MODE);
|
|
19
22
|
}
|
|
20
23
|
b64DecodeUnicode(str) {
|
|
21
24
|
// Going backwards: from bytestream, to percent-encoding, to original string.
|
|
@@ -32,10 +35,13 @@ export class ServerErrorComponent {
|
|
|
32
35
|
this.router.navigate([url]);
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
|
-
ServerErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ServerErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.AppEmbeddingExtensions }, { token: i3.AppState }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
-
ServerErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ServerErrorComponent, isStandalone: true, selector: "servererror", ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\" *ngIf=\"!statusCode\"> </h1>\r\n <h1 class=\"display-1\" *ngIf=\"statusCode\">{{statusCode}}</h1>\r\n <h6 class=\"card-title\" *ngIf=\"!statusText\"> </h6>\r\n <h6 class=\"card-title\" style=\"word-wrap:break-word; max-height: 500px; overflow: auto\" *ngIf=\"statusText\">{{statusText}}</h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
38
|
+
ServerErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ServerErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.AppEmbeddingExtensions }, { token: i3.AppState }, { token: ANONYMOUS_MODE }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
ServerErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ServerErrorComponent, isStandalone: true, selector: "servererror", ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\" *ngIf=\"!statusCode\"> </h1>\r\n <h1 class=\"display-1\" *ngIf=\"statusCode\">{{statusCode}}</h1>\r\n <h6 class=\"card-title\" *ngIf=\"!statusText\"> </h6>\r\n <h6 class=\"card-title\" style=\"word-wrap:break-word; max-height: 500px; overflow: auto\" *ngIf=\"statusText\">{{statusText}}</h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
37
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ServerErrorComponent, decorators: [{
|
|
38
41
|
type: Component,
|
|
39
|
-
args: [{ selector: "servererror", encapsulation: ViewEncapsulation.None, standalone: true, imports: [NgIf], template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\" *ngIf=\"!statusCode\"> </h1>\r\n <h1 class=\"display-1\" *ngIf=\"statusCode\">{{statusCode}}</h1>\r\n <h6 class=\"card-title\" *ngIf=\"!statusText\"> </h6>\r\n <h6 class=\"card-title\" style=\"word-wrap:break-word; max-height: 500px; overflow: auto\" *ngIf=\"statusText\">{{statusText}}</h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
40
|
-
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.AppEmbeddingExtensions }, { type: i3.AppState }
|
|
41
|
-
|
|
42
|
+
args: [{ selector: "servererror", encapsulation: ViewEncapsulation.None, standalone: true, imports: [NgIf], template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-6 col-md-6 col-10 offset-xl-3 offset-md-3 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-1\" *ngIf=\"!statusCode\"> </h1>\r\n <h1 class=\"display-1\" *ngIf=\"statusCode\">{{statusCode}}</h1>\r\n <h6 class=\"card-title\" *ngIf=\"!statusText\"> </h6>\r\n <h6 class=\"card-title\" style=\"word-wrap:break-word; max-height: 500px; overflow: auto\" *ngIf=\"statusText\">{{statusText}}</h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-left\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
43
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.AppEmbeddingExtensions }, { type: i3.AppState }, { type: undefined, decorators: [{
|
|
44
|
+
type: Inject,
|
|
45
|
+
args: [ANONYMOUS_MODE]
|
|
46
|
+
}] }]; } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9lcnJvci81MDAvc2VydmVyZXJyb3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9lcnJvci81MDAvc2VydmVyZXJyb3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUt2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7O0FBU3ZELE1BQU0sT0FBTyxvQkFBb0I7SUFLN0IsWUFBb0IsTUFBYyxFQUFVLEtBQXFCLEVBQVUsR0FBMkIsRUFBVSxFQUFZLEVBQWlDLGNBQXVCO1FBQWhLLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQXdCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBVTtRQUFpQyxtQkFBYyxHQUFkLGNBQWMsQ0FBUztRQUNoTCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV6RCxxREFBcUQ7UUFDckQsVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUMzRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsR0FBRztRQUNoQiw2RUFBNkU7UUFDN0UsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUgsQ0FBQztJQUVELGNBQWM7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUTtZQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDOztZQUVoRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs7a0hBOUJRLG9CQUFvQixvSUFLeUcsY0FBYztzR0FMM0ksb0JBQW9CLHVFQ2pCakMscXJDQWtCTSw0Q0RIUSxJQUFJOzRGQUVMLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxhQUFhLGlCQUNSLGlCQUFpQixDQUFDLElBQUksY0FFekIsSUFBSSxXQUNQLENBQUMsSUFBSSxDQUFDOzswQkFPZ0gsTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuaW1wb3J0IHsgQXBwU3RhdGUgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvc2VydmljZXNcIjtcclxuaW1wb3J0IHsgQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5pbXBvcnQgeyBBTk9OWU1PVVNfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwic2VydmVyZXJyb3JcIixcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3NlcnZlcmVycm9yLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nSWZdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZXJ2ZXJFcnJvckNvbXBvbmVudCB7XHJcbiAgICBzdGF0dXNDb2RlOiBzdHJpbmc7XHJcbiAgICBzdGF0dXNUZXh0OiBzdHJpbmc7XHJcbiAgICBwcmV2aW91c1VybDogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGVtYjogQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucywgcHJpdmF0ZSBhczogQXBwU3RhdGUsIEBJbmplY3QoQU5PTllNT1VTX01PREUpIHB1YmxpYyBBTk9OWU1PVVNfTU9ERTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuc3RhdHVzQ29kZSA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1wic3RhdHVzQ29kZVwiXTtcclxuICAgICAgICB0aGlzLnN0YXR1c1RleHQgPSB0aGlzLmI2NERlY29kZVVuaWNvZGUodGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJzdGF0dXNUZXh0XCJdKTtcclxuICAgICAgICB0aGlzLnByZXZpb3VzVXJsID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJmcm9tVXJsXCJdO1xyXG5cclxuICAgICAgICAvL0RvcG8gMSBzZWNvbmRvIGNvbnNpZGVybyBsYSBzZmlsemEgZGkgZXJyb3JpIGZpbml0YVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyB0aGlzLmFzLmhhbmRsaW5nRXJyb3IgPSBmYWxzZTsgfSwgMTAwMCk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNb2RhbGl0w6AgYW5vbmltYTogXCIgKyB0aGlzLkFOT05ZTU9VU19NT0RFKVxyXG4gICAgfVxyXG5cclxuICAgIGI2NERlY29kZVVuaWNvZGUoc3RyKSB7XHJcbiAgICAgICAgLy8gR29pbmcgYmFja3dhcmRzOiBmcm9tIGJ5dGVzdHJlYW0sIHRvIHBlcmNlbnQtZW5jb2RpbmcsIHRvIG9yaWdpbmFsIHN0cmluZy5cclxuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGF0b2Ioc3RyKS5zcGxpdChcIlwiKS5tYXAoYyA9PiBcIiVcIiArIChcIjAwXCIgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMikpLmpvaW4oXCJcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIGdvUHJldmlvdXNQYWdlKCkge1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5wcmV2aW91c1VybCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ29EYXNoYm9hcmQoKSB7XHJcbiAgICAgICAgbGV0IHVybCA9IGAvcGFnZXMvZGFzaGJvYXJkYDtcclxuICAgICAgICBpZiAodGhpcy5lbWIuRW1iZWRkZWQpXHJcbiAgICAgICAgICAgIHRoaXMuZW1iLk1haW5XaW5kb3cucG9zdE1lc3NhZ2UoeyB0eXBlOiBcIm5hdmlnYXRlXCIsIHVybCB9LCBcIipcIik7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdXJsXSk7XHJcbiAgICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14bC02IGNvbC1tZC02IGNvbC0xMCBvZmZzZXQteGwtMyBvZmZzZXQtbWQtMyBvZmZzZXQteHMtMSBwLXQtMTBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJkaXNwbGF5LTFcIiAqbmdJZj1cIiFzdGF0dXNDb2RlXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9oMT5cclxuICAgICAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJkaXNwbGF5LTFcIiAqbmdJZj1cInN0YXR1c0NvZGVcIj57e3N0YXR1c0NvZGV9fTwvaDE+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwiY2FyZC10aXRsZVwiICpuZ0lmPVwiIXN0YXR1c1RleHRcIj4mbmJzcDsmbmJzcDsmbmJzcDs8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNiBjbGFzcz1cImNhcmQtdGl0bGVcIiBzdHlsZT1cIndvcmQtd3JhcDpicmVhay13b3JkOyBtYXgtaGVpZ2h0OiA1MDBweDsgb3ZlcmZsb3c6IGF1dG9cIiAqbmdJZj1cInN0YXR1c1RleHRcIj57e3N0YXR1c1RleHR9fTwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFBTk9OWU1PVVNfTU9ERVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IHB1bGwtcmlnaHRcIiAoY2xpY2spPVwiZ29EYXNoYm9hcmQoKVwiPlZhaSBhbGxhIERhc2hib2FyZDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IHB1bGwtbGVmdFwiIChjbGljayk9XCJnb1ByZXZpb3VzUGFnZSgpXCI+VG9ybmEgYWxsYSBwYWdpbmEgcHJlY2VkZW50ZTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2xlYXJmaXhcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
// Angular
|
|
2
|
-
import { Component, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { Component, Inject, ViewEncapsulation } from "@angular/core";
|
|
3
3
|
import { NgIf } from "@angular/common";
|
|
4
|
+
import { ANONYMOUS_MODE } from "@esfaenza/core/domain";
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/router";
|
|
6
7
|
import * as i2 from "@esfaenza/httpservice";
|
|
7
8
|
import * as i3 from "@esfaenza/core/services";
|
|
8
9
|
import * as i4 from "@esfaenza/extensions";
|
|
9
10
|
export class AngularErrorComponent {
|
|
10
|
-
constructor(router, route, http, bts, emb) {
|
|
11
|
+
constructor(router, route, http, bts, emb, ANONYMOUS_MODE) {
|
|
11
12
|
this.router = router;
|
|
12
13
|
this.route = route;
|
|
13
14
|
this.http = http;
|
|
14
15
|
this.bts = bts;
|
|
15
16
|
this.emb = emb;
|
|
17
|
+
this.ANONYMOUS_MODE = ANONYMOUS_MODE;
|
|
16
18
|
let identity = this.bts.getJaceIdentity();
|
|
17
19
|
this.previousUrl = this.route.snapshot.params["fromUrl"];
|
|
18
20
|
let calls = (this.http.LastThreeCompletedCalls[0] || "<empty>") + ", " + (this.http.LastThreeCompletedCalls[1] || "<empty>") + ", " + (this.http.LastThreeCompletedCalls[2] || "<empty>");
|
|
@@ -21,6 +23,7 @@ export class AngularErrorComponent {
|
|
|
21
23
|
this.identityInfos = "Logged user: " + (identity?.Idtenant || '??') + "-" + (identity?.DsUser || '???????');
|
|
22
24
|
this.errorMessage = this.b64DecodeUnicode(this.route.snapshot.params["errorMessage"]);
|
|
23
25
|
console.error(this.errorMessage);
|
|
26
|
+
console.log("Modalità anonima: " + this.ANONYMOUS_MODE);
|
|
24
27
|
}
|
|
25
28
|
ngOnInit() {
|
|
26
29
|
var item = localStorage.getItem("Reload");
|
|
@@ -47,10 +50,13 @@ export class AngularErrorComponent {
|
|
|
47
50
|
this.router.navigate([url]);
|
|
48
51
|
}
|
|
49
52
|
}
|
|
50
|
-
AngularErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AngularErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.HTTPService }, { token: i3.TokenService }, { token: i4.AppEmbeddingExtensions }], target: i0.ɵɵFactoryTarget.Component });
|
|
51
|
-
AngularErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AngularErrorComponent, isStandalone: true, selector: "angularerror", ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-8 col-md-10 col-10 offset-xl-2 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-4\">Qualcosa è andato storto.</h1>\r\n <h6>\r\n <small>\r\n Si è verificato un errore interno all'applicazione. Questo non dovrebbe accadere. Prova a ricaricare la pagina precedente e rieffettuare le stesse operazioni, se il problema persiste contatta il service desk allegando una breve descrizione delle operazioni che stavi eseguendo e questo messaggio d'errore:\r\n </small>\r\n </h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"identityInfos\"><em>{{identityInfos}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorFrom\"><em>{{errorFrom}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorLastCalls\"><em>{{errorLastCalls}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorMessage\"><em>{{errorMessage}}</em></h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right app-margin-right-10\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
53
|
+
AngularErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AngularErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.HTTPService }, { token: i3.TokenService }, { token: i4.AppEmbeddingExtensions }, { token: ANONYMOUS_MODE }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
AngularErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AngularErrorComponent, isStandalone: true, selector: "angularerror", ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-8 col-md-10 col-10 offset-xl-2 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-4\">Qualcosa è andato storto.</h1>\r\n <h6>\r\n <small>\r\n Si è verificato un errore interno all'applicazione. Questo non dovrebbe accadere. Prova a ricaricare la pagina precedente e rieffettuare le stesse operazioni, se il problema persiste contatta il service desk allegando una breve descrizione delle operazioni che stavi eseguendo e questo messaggio d'errore:\r\n </small>\r\n </h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"identityInfos\"><em>{{identityInfos}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorFrom\"><em>{{errorFrom}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorLastCalls\"><em>{{errorLastCalls}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorMessage\"><em>{{errorMessage}}</em></h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right app-margin-right-10\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
52
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AngularErrorComponent, decorators: [{
|
|
53
56
|
type: Component,
|
|
54
|
-
args: [{ selector: "angularerror", encapsulation: ViewEncapsulation.None, standalone: true, imports: [NgIf], template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-8 col-md-10 col-10 offset-xl-2 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-4\">Qualcosa è andato storto.</h1>\r\n <h6>\r\n <small>\r\n Si è verificato un errore interno all'applicazione. Questo non dovrebbe accadere. Prova a ricaricare la pagina precedente e rieffettuare le stesse operazioni, se il problema persiste contatta il service desk allegando una breve descrizione delle operazioni che stavi eseguendo e questo messaggio d'errore:\r\n </small>\r\n </h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"identityInfos\"><em>{{identityInfos}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorFrom\"><em>{{errorFrom}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorLastCalls\"><em>{{errorLastCalls}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorMessage\"><em>{{errorMessage}}</em></h6>\r\n <div>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right app-margin-right-10\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
55
|
-
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.HTTPService }, { type: i3.TokenService }, { type: i4.AppEmbeddingExtensions }
|
|
56
|
-
|
|
57
|
+
args: [{ selector: "angularerror", encapsulation: ViewEncapsulation.None, standalone: true, imports: [NgIf], template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-xl-8 col-md-10 col-10 offset-xl-2 offset-xs-1 p-t-10\">\r\n <div class=\"card\">\r\n <div class=\"card-body text-center\">\r\n <h1 class=\"display-4\">Qualcosa è andato storto.</h1>\r\n <h6>\r\n <small>\r\n Si è verificato un errore interno all'applicazione. Questo non dovrebbe accadere. Prova a ricaricare la pagina precedente e rieffettuare le stesse operazioni, se il problema persiste contatta il service desk allegando una breve descrizione delle operazioni che stavi eseguendo e questo messaggio d'errore:\r\n </small>\r\n </h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"identityInfos\"><em>{{identityInfos}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorFrom\"><em>{{errorFrom}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorLastCalls\"><em>{{errorLastCalls}}</em></h6>\r\n <h6 class=\"card-title text-danger app-margin-top-10 text-left\" style=\"word-wrap:break-word\" *ngIf=\"errorMessage\"><em>{{errorMessage}}</em></h6>\r\n <div *ngIf=\"!ANONYMOUS_MODE\">\r\n <button type=\"button\" class=\"btn btn-secondary pull-right\" (click)=\"goDashboard()\">Vai alla Dashboard</button>\r\n <button type=\"button\" class=\"btn btn-secondary pull-right app-margin-right-10\" (click)=\"goPreviousPage()\">Torna alla pagina precedente</button>\r\n <div class=\"clearfix\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.HTTPService }, { type: i3.TokenService }, { type: i4.AppEmbeddingExtensions }, { type: undefined, decorators: [{
|
|
59
|
+
type: Inject,
|
|
60
|
+
args: [ANONYMOUS_MODE]
|
|
61
|
+
}] }]; } });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcmVycm9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zcmMvZXJyb3IvQW5ndWxhci9hbmd1bGFyZXJyb3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9lcnJvci9Bbmd1bGFyL2FuZ3VsYXJlcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTXZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7O0FBU3ZELE1BQU0sT0FBTyxxQkFBcUI7SUFROUIsWUFBb0IsTUFBYyxFQUFVLEtBQXFCLEVBQVUsSUFBaUIsRUFBVSxHQUFpQixFQUFVLEdBQTJCLEVBQWlDLGNBQXVCO1FBQWhNLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFNBQUksR0FBSixJQUFJLENBQWE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFjO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFBaUMsbUJBQWMsR0FBZCxjQUFjLENBQVM7UUFFaE4sSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6RCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDO1FBQzFMLElBQUksQ0FBQyxTQUFTLEdBQUcsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsY0FBYyxHQUFHLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNuRCxJQUFJLENBQUMsYUFBYSxHQUFHLGVBQWUsR0FBRyxDQUFDLFFBQVEsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsUUFBUSxFQUFFLE1BQU0sSUFBSSxTQUFTLENBQUMsQ0FBQztRQUM1RyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUV0RixPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqQyxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUMzRCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksSUFBSSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxJQUFJLEVBQUU7WUFDTixZQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQUc7UUFDaEIsZ0RBQWdEO1FBQ2hELE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVILENBQUM7SUFFRCxjQUFjO1FBQ1YsMEdBQTBHO1FBQzFHLHdFQUF3RTtRQUN4RSxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakQsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxHQUFHLEdBQUcsa0JBQWtCLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVE7WUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQzs7WUFFaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7O21IQWhEUSxxQkFBcUIsbUtBUXdJLGNBQWM7dUdBUjNLLHFCQUFxQix3RUNsQmxDLGsvREF3Qk0sNENEUlEsSUFBSTs0RkFFTCxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0ksY0FBYyxpQkFDVCxpQkFBaUIsQ0FBQyxJQUFJLGNBRXpCLElBQUksV0FDUCxDQUFDLElBQUksQ0FBQzs7MEJBVWdKLE1BQU07MkJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgTmdJZiB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuXHJcbi8vIENvbmZpZ3VyYXppb25pXHJcbmltcG9ydCB7IEhUVFBTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9odHRwc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUb2tlblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvc2VydmljZXNcIjtcclxuaW1wb3J0IHsgQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5pbXBvcnQgeyBBTk9OWU1PVVNfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiYW5ndWxhcmVycm9yXCIsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9hbmd1bGFyZXJyb3IuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdJZl1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJFcnJvckNvbXBvbmVudCB7XHJcblxyXG4gICAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XHJcbiAgICBlcnJvckZyb206IHN0cmluZztcclxuICAgIGVycm9yTGFzdENhbGxzOiBzdHJpbmc7XHJcbiAgICBwcmV2aW91c1VybDogc3RyaW5nO1xyXG4gICAgaWRlbnRpdHlJbmZvczogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGh0dHA6IEhUVFBTZXJ2aWNlLCBwcml2YXRlIGJ0czogVG9rZW5TZXJ2aWNlLCBwcml2YXRlIGVtYjogQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucywgQEluamVjdChBTk9OWU1PVVNfTU9ERSkgcHVibGljIEFOT05ZTU9VU19NT0RFOiBib29sZWFuKSB7XHJcblxyXG4gICAgICAgIGxldCBpZGVudGl0eSA9IHRoaXMuYnRzLmdldEphY2VJZGVudGl0eSgpO1xyXG4gICAgICAgIHRoaXMucHJldmlvdXNVcmwgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtc1tcImZyb21VcmxcIl07XHJcbiAgICAgICAgbGV0IGNhbGxzID0gKHRoaXMuaHR0cC5MYXN0VGhyZWVDb21wbGV0ZWRDYWxsc1swXSB8fCBcIjxlbXB0eT5cIikgKyBcIiwgXCIgKyAodGhpcy5odHRwLkxhc3RUaHJlZUNvbXBsZXRlZENhbGxzWzFdIHx8IFwiPGVtcHR5PlwiKSArIFwiLCBcIiArICh0aGlzLmh0dHAuTGFzdFRocmVlQ29tcGxldGVkQ2FsbHNbMl0gfHwgXCI8ZW1wdHk+XCIpO1xyXG4gICAgICAgIHRoaXMuZXJyb3JGcm9tID0gXCJGcm9tIHBhZ2U6IFwiICsgKHRoaXMucHJldmlvdXNVcmwgfHwgXCI8bWlzc2luZz5cIik7XHJcbiAgICAgICAgdGhpcy5lcnJvckxhc3RDYWxscyA9IFwiTGFzdCB0aHJlZSBjYWxsczogXCIgKyBjYWxscztcclxuICAgICAgICB0aGlzLmlkZW50aXR5SW5mb3MgPSBcIkxvZ2dlZCB1c2VyOiBcIiArIChpZGVudGl0eT8uSWR0ZW5hbnQgfHwgJz8/JykgKyBcIi1cIiArIChpZGVudGl0eT8uRHNVc2VyIHx8ICc/Pz8/Pz8/Jyk7XHJcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmI2NERlY29kZVVuaWNvZGUodGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJlcnJvck1lc3NhZ2VcIl0pO1xyXG5cclxuICAgICAgICBjb25zb2xlLmVycm9yKHRoaXMuZXJyb3JNZXNzYWdlKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1vZGFsaXTDoCBhbm9uaW1hOiBcIiArIHRoaXMuQU5PTllNT1VTX01PREUpXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdmFyIGl0ZW0gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIlJlbG9hZFwiKTtcclxuICAgICAgICBpZiAoaXRlbSkge1xyXG4gICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShcIlJlbG9hZFwiKTtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYjY0RGVjb2RlVW5pY29kZShzdHIpIHtcclxuICAgICAgICAvLyBCeXRlc3RyZWFtIC0+IEVuY29kaW5nICUgLT4gU3RyaW5nYSBvcmlnaW5hbGVcclxuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGF0b2Ioc3RyKS5zcGxpdChcIlwiKS5tYXAoYyA9PiBcIiVcIiArIChcIjAwXCIgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMikpLmpvaW4oXCJcIikpO1xyXG4gICAgfVxyXG5cclxuICAgIGdvUHJldmlvdXNQYWdlKCkge1xyXG4gICAgICAgIC8vIFJlbG9hZCBwZXIgZm9yemFyZSBpbCByaWNhcmljYW1lbnRvIGRlbCBqYXZhc2NyaXB0IChpbiBtb2RvIGNoZSBsbyBzdGF0byBkZWxsJ2FwcGxpY2F6aW9uZSBzaWEgYSBwb3N0bylcclxuICAgICAgICAvLyBhbGwnb25Jbml0IGxhIHBhZ2luYSBwcmVuZGVyw6AgbGEgcm9vdCBhIGN1aSBuYXZpZ2FyZSBkYWwgbG9jYWxTdG9yYWdlXHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJSZWxvYWRcIiwgdGhpcy5wcmV2aW91c1VybCk7XHJcbiAgICAgICAgbG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ29EYXNoYm9hcmQoKSB7XHJcbiAgICAgICAgbGV0IHVybCA9IGAvcGFnZXMvZGFzaGJvYXJkYDtcclxuICAgICAgICBpZiAodGhpcy5lbWIuRW1iZWRkZWQpXHJcbiAgICAgICAgICAgIHRoaXMuZW1iLk1haW5XaW5kb3cucG9zdE1lc3NhZ2UoeyB0eXBlOiBcIm5hdmlnYXRlXCIsIHVybCB9LCBcIipcIik7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdXJsXSk7XHJcbiAgICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC14bC04IGNvbC1tZC0xMCBjb2wtMTAgb2Zmc2V0LXhsLTIgb2Zmc2V0LXhzLTEgcC10LTEwXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPVwiZGlzcGxheS00XCI+UXVhbGNvc2EgJmVncmF2ZTsgYW5kYXRvIHN0b3J0by48L2gxPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2kgJmVncmF2ZTsgdmVyaWZpY2F0byB1biBlcnJvcmUgaW50ZXJubyBhbGwnYXBwbGljYXppb25lLiBRdWVzdG8gbm9uIGRvdnJlYmJlIGFjY2FkZXJlLiBQcm92YSBhIHJpY2FyaWNhcmUgbGEgcGFnaW5hIHByZWNlZGVudGUgZSByaWVmZmV0dHVhcmUgbGUgc3Rlc3NlIG9wZXJhemlvbmksIHNlIGlsIHByb2JsZW1hIHBlcnNpc3RlIGNvbnRhdHRhIGlsIHNlcnZpY2UgZGVzayBhbGxlZ2FuZG8gdW5hIGJyZXZlIGRlc2NyaXppb25lIGRlbGxlIG9wZXJhemlvbmkgY2hlIHN0YXZpIGVzZWd1ZW5kbyBlIHF1ZXN0byBtZXNzYWdnaW8gZCdlcnJvcmU6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9oNj5cclxuICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJjYXJkLXRpdGxlIHRleHQtZGFuZ2VyIGFwcC1tYXJnaW4tdG9wLTEwIHRleHQtbGVmdFwiIHN0eWxlPVwid29yZC13cmFwOmJyZWFrLXdvcmRcIiAqbmdJZj1cImlkZW50aXR5SW5mb3NcIj48ZW0+e3tpZGVudGl0eUluZm9zfX08L2VtPjwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzPVwiY2FyZC10aXRsZSB0ZXh0LWRhbmdlciBhcHAtbWFyZ2luLXRvcC0xMCB0ZXh0LWxlZnRcIiBzdHlsZT1cIndvcmQtd3JhcDpicmVhay13b3JkXCIgKm5nSWY9XCJlcnJvckZyb21cIj48ZW0+e3tlcnJvckZyb219fTwvZW0+PC9oNj5cclxuICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJjYXJkLXRpdGxlIHRleHQtZGFuZ2VyIGFwcC1tYXJnaW4tdG9wLTEwIHRleHQtbGVmdFwiIHN0eWxlPVwid29yZC13cmFwOmJyZWFrLXdvcmRcIiAqbmdJZj1cImVycm9yTGFzdENhbGxzXCI+PGVtPnt7ZXJyb3JMYXN0Q2FsbHN9fTwvZW0+PC9oNj5cclxuICAgICAgICAgICAgICAgICAgICA8aDYgY2xhc3M9XCJjYXJkLXRpdGxlIHRleHQtZGFuZ2VyIGFwcC1tYXJnaW4tdG9wLTEwIHRleHQtbGVmdFwiIHN0eWxlPVwid29yZC13cmFwOmJyZWFrLXdvcmRcIiAqbmdJZj1cImVycm9yTWVzc2FnZVwiPjxlbT57e2Vycm9yTWVzc2FnZX19PC9lbT48L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhQU5PTllNT1VTX01PREVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBwdWxsLXJpZ2h0XCIgKGNsaWNrKT1cImdvRGFzaGJvYXJkKClcIj5WYWkgYWxsYSBEYXNoYm9hcmQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBwdWxsLXJpZ2h0IGFwcC1tYXJnaW4tcmlnaHQtMTBcIiAoY2xpY2spPVwiZ29QcmV2aW91c1BhZ2UoKVwiPlRvcm5hIGFsbGEgcGFnaW5hIHByZWNlZGVudGU8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsZWFyZml4XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -28,7 +28,7 @@ export class ExternalPagesComponent {
|
|
|
28
28
|
// Le info di login che ho passato sono le stesse delle info di login salvate nel token --> È un redirect da un sito esterno ma il token c'è già. Esco
|
|
29
29
|
// Ho un token di login e non ho nessuna info sull'utente da usare --> È un redirect da Jace, quindi sono a posto. Esco
|
|
30
30
|
let currentIdentity = this.bts.getJaceIdentity();
|
|
31
|
-
if (
|
|
31
|
+
if ((!(this.Tenant + this.Username + this.Password) || currentIdentity.Idtenant == this.Tenant && currentIdentity.DsUser == this.Username)) {
|
|
32
32
|
this.aac.initializeIdentity(currentIdentity);
|
|
33
33
|
return;
|
|
34
34
|
}
|
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
45
45
|
type: Component,
|
|
46
46
|
args: [{ selector: "external-pages", standalone: true, imports: [RouterOutlet], template: "<router-outlet></router-outlet>" }]
|
|
47
47
|
}], ctorParameters: function () { return [{ type: i1.AccessControlService }, { type: i2.LocalizationService }, { type: i3.HTTPService }, { type: i4.AppState }, { type: i5.ActivatedRoute }, { type: i4.TokenService }]; } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWxfcGFnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9leHRlcm5hbC1wYWdlL2V4dGVybmFsX3BhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zcmMvZXh0ZXJuYWwtcGFnZS9leHRlcm5hbF9wYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFrQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBa0IxQyxNQUFNLE9BQU8sc0JBQXNCO0lBSy9CLFlBQW9CLEdBQXlCLEVBQVMsRUFBdUIsRUFBVSxJQUFpQixFQUFVLE1BQWdCLEVBQVUsS0FBcUIsRUFBVSxHQUFpQjtRQUF4SyxRQUFHLEdBQUgsR0FBRyxDQUFzQjtRQUFTLE9BQUUsR0FBRixFQUFFLENBQXFCO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVU7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQWM7UUFKcEwsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFHeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELFFBQVE7UUFDSixPQUFPLENBQUMsR0FBRyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7UUFDMUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTdFLHNKQUFzSjtRQUN0Six1SEFBdUg7UUFDdkgsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksZUFBZSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLGVBQWUsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3hJLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDN0MsT0FBTztTQUNWO1FBRUQsc0NBQXNDO1FBQ3RDLGdDQUFnQztRQUNoQyxJQUFJLFFBQVEsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ3hHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sb0JBQW9CLEVBQUUsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQ2hGLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7b0hBNUJRLHNCQUFzQjt3R0FBdEIsc0JBQXNCLDBFQ3BCbkMsaUNBQStCLDRDRGtCakIsWUFBWTs0RkFFYixzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0ksZ0JBQWdCLGNBRWQsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyT3V0bGV0IH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuaW1wb3J0IHsgQWNjZXNzQ29udHJvbFNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2FjY2Vzcy1jb250cm9sXCI7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2xvY2FsaXphdGlvbnNcIjtcclxuaW1wb3J0IHsgSFRUUFNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2h0dHBzZXJ2aWNlXCI7XHJcblxyXG5pbXBvcnQgeyBBcHBTdGF0ZSwgVG9rZW5TZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IEVudk9wdGlvbnMgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvZG9tYWluXCI7XHJcblxyXG5kZWNsYXJlIHZhciBteWNvbmZpZzogRW52T3B0aW9ucztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiZXh0ZXJuYWwtcGFnZXNcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZXh0ZXJuYWxfcGFnZXMuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbUm91dGVyT3V0bGV0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCB7XHJcbiAgICBwcml2YXRlIFVzZXJuYW1lOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBQYXNzd29yZDogc3RyaW5nID0gXCJcIjtcclxuICAgIHByaXZhdGUgVGVuYW50OiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYWFjOiBBY2Nlc3NDb250cm9sU2VydmljZSwgcHVibGljIGxjOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwcml2YXRlIGh0dHA6IEhUVFBTZXJ2aWNlLCBwcml2YXRlIF9zdGF0ZTogQXBwU3RhdGUsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGJ0czogVG9rZW5TZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5Vc2VybmFtZSA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1widXNlclwiXTtcclxuICAgICAgICB0aGlzLlBhc3N3b3JkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJwc3dkXCJdO1xyXG4gICAgICAgIHRoaXMuVGVuYW50ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJ0bnRcIl07XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJDYXJpY2FtZW50byBwYWdpbmEgbmVsbCdJRlJBTUUgY29tcGxldGF0byFcIik7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJbXCIgKyB0aGlzLlRlbmFudCArIFwiXVwiICsgdGhpcy5Vc2VybmFtZSArIFwiIC0gXCIgKyB0aGlzLlBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgLy8gTGUgaW5mbyBkaSBsb2dpbiBjaGUgaG8gcGFzc2F0byBzb25vIGxlIHN0ZXNzZSBkZWxsZSBpbmZvIGRpIGxvZ2luIHNhbHZhdGUgbmVsIHRva2VuIC0tPiDDiCB1biByZWRpcmVjdCBkYSB1biBzaXRvIGVzdGVybm8gbWEgaWwgdG9rZW4gYyfDqCBnacOgLiBFc2NvXHJcbiAgICAgICAgLy8gSG8gdW4gdG9rZW4gZGkgbG9naW4gZSBub24gaG8gbmVzc3VuYSBpbmZvIHN1bGwndXRlbnRlIGRhIHVzYXJlIC0tPiDDiCB1biByZWRpcmVjdCBkYSBKYWNlLCBxdWluZGkgc29ubyBhIHBvc3RvLiBFc2NvXHJcbiAgICAgICAgbGV0IGN1cnJlbnRJZGVudGl0eSA9IHRoaXMuYnRzLmdldEphY2VJZGVudGl0eSgpO1xyXG4gICAgICAgIGlmICgoISh0aGlzLlRlbmFudCArIHRoaXMuVXNlcm5hbWUgKyB0aGlzLlBhc3N3b3JkKSB8fCBjdXJyZW50SWRlbnRpdHkuSWR0ZW5hbnQgPT0gdGhpcy5UZW5hbnQgJiYgY3VycmVudElkZW50aXR5LkRzVXNlciA9PSB0aGlzLlVzZXJuYW1lKSkge1xyXG4gICAgICAgICAgICB0aGlzLmFhYy5pbml0aWFsaXplSWRlbnRpdHkoY3VycmVudElkZW50aXR5KTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQWx0cmltZW50aSBkZXZvIGVmZmV0dHVhcmUgaWwgbG9naW5cclxuICAgICAgICAvLyBOb24gw6ggdXRpbGl6emF0YSwgcG9yY29kZGluY2lcclxuICAgICAgICBsZXQgTG9naW5EVE8gPSB7IHRlbmFudDogXCJGWFwiLCB1c2VybmFtZTogdGhpcy5Vc2VybmFtZSwgcGFzc3dvcmQ6IHRoaXMuUGFzc3dvcmQsIGNsaWVudF9pZDogXCJqYWNlZGV2XCIgfTtcclxuICAgICAgICB0aGlzLmh0dHAucG9zdChgJHtteWNvbmZpZy5BdXRoVXJsfS9hcGkvbG9naW4vZG9sb2dpbmAsIExvZ2luRFRPKS5zdWJzY3JpYmUodCA9PiB7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn0iLCI8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+Il19
|