@esfaenza/core 15.2.316 → 15.2.317

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.
@@ -1,4 +1,4 @@
1
- import { ActivatedRoute } from "@angular/router";
1
+ import { ActivatedRoute, Router } from "@angular/router";
2
2
  import { AccessControlService } from "@esfaenza/access-control";
3
3
  import { LocalizationService } from "@esfaenza/localizations";
4
4
  import { AppEmbeddingExtensions } from "@esfaenza/extensions";
@@ -13,6 +13,7 @@ export declare class ExternalPagesComponent {
13
13
  private emb;
14
14
  private _state;
15
15
  private route;
16
+ private router;
16
17
  private bts;
17
18
  private Username;
18
19
  private Password;
@@ -20,9 +21,9 @@ export declare class ExternalPagesComponent {
20
21
  private EmbeddingSource;
21
22
  private LocalhostModuleMap;
22
23
  private Localhost;
23
- constructor(aac: AccessControlService, lc: LocalizationService, http: HTTPService, emb: AppEmbeddingExtensions, _state: AppState, route: ActivatedRoute, bts: TokenService);
24
+ constructor(aac: AccessControlService, lc: LocalizationService, http: HTTPService, emb: AppEmbeddingExtensions, _state: AppState, route: ActivatedRoute, router: Router, bts: TokenService);
24
25
  ngOnInit(): void;
25
- afterModulesRetrieve(modules: ActiveModuleView[]): Promise<void>;
26
+ afterModulesRetrieve(modules: ActiveModuleView[]): void;
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<ExternalPagesComponent, never>;
27
28
  static ɵcmp: i0.ɵɵComponentDeclaration<ExternalPagesComponent, "external-pages", never, {}, {}, never, never, true, never>;
28
29
  }
@@ -1,7 +1,6 @@
1
1
  // Angular
2
2
  import { RouterOutlet } from "@angular/router";
3
3
  import { Component } from "@angular/core";
4
- import { firstValueFrom, map } from "rxjs";
5
4
  import * as i0 from "@angular/core";
6
5
  import * as i1 from "@esfaenza/access-control";
7
6
  import * as i2 from "@esfaenza/localizations";
@@ -10,13 +9,14 @@ import * as i4 from "@esfaenza/extensions";
10
9
  import * as i5 from "@esfaenza/core/services";
11
10
  import * as i6 from "@angular/router";
12
11
  export class ExternalPagesComponent {
13
- constructor(aac, lc, http, emb, _state, route, bts) {
12
+ constructor(aac, lc, http, emb, _state, route, router, bts) {
14
13
  this.aac = aac;
15
14
  this.lc = lc;
16
15
  this.http = http;
17
16
  this.emb = emb;
18
17
  this._state = _state;
19
18
  this.route = route;
19
+ this.router = router;
20
20
  this.bts = bts;
21
21
  this.Username = "";
22
22
  this.Password = "";
@@ -63,25 +63,24 @@ export class ExternalPagesComponent {
63
63
  this.http.post(`${myconfig.AuthUrl}/api/login/dologin`, LoginDTO).subscribe(t => {
64
64
  });
65
65
  }
66
- async afterModulesRetrieve(modules) {
67
- // Sto navigando a {sito}/#/pages_ext/etc...
66
+ afterModulesRetrieve(modules) {
67
+ // Sto navigando a {sito}/#/pages_ext/{origine}/etc...
68
68
  // Devo ridirezionare a {sorgente}/#/pages/embed/{thisModule}/etc...
69
69
  let module = modules.find(t => t.altname == this.EmbeddingSource);
70
70
  if (!module) {
71
71
  console.error(`Impossibile trovare il modulo con altname uguale a ${this.EmbeddingSource}`);
72
72
  }
73
- const url = await firstValueFrom(this.route.url.pipe(map((segments) => segments.join(''))));
74
- let afterPagesExt = url.split("pages_ext")[1].substring(1).split("/").slice(1).join("/");
73
+ let afterPagesExt = this.router.url.split("pages_ext")[1].substring(1).split("/").slice(1).join("/");
75
74
  let sourceModuleUrl = myconfig.AuthUrl.includes("localhost") ? `http://localhost:${this.Localhost}` : module.uiurl;
76
75
  let finalUrl = `${sourceModuleUrl}/#/pages/embed/${myconfig.AppData.ModuleId}/${afterPagesExt}`;
77
76
  console.log("@esfaenza/core: navigating to " + finalUrl);
78
77
  location.replace(finalUrl);
79
78
  }
80
79
  }
81
- ExternalPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExternalPagesComponent, deps: [{ token: i1.AccessControlService }, { token: i2.LocalizationService }, { token: i3.HTTPService }, { token: i4.AppEmbeddingExtensions }, { token: i5.AppState }, { token: i6.ActivatedRoute }, { token: i5.TokenService }], target: i0.ɵɵFactoryTarget.Component });
80
+ ExternalPagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExternalPagesComponent, deps: [{ token: i1.AccessControlService }, { token: i2.LocalizationService }, { token: i3.HTTPService }, { token: i4.AppEmbeddingExtensions }, { token: i5.AppState }, { token: i6.ActivatedRoute }, { token: i6.Router }, { token: i5.TokenService }], target: i0.ɵɵFactoryTarget.Component });
82
81
  ExternalPagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ExternalPagesComponent, isStandalone: true, selector: "external-pages", ngImport: i0, template: "<router-outlet></router-outlet>", dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
83
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ExternalPagesComponent, decorators: [{
84
83
  type: Component,
85
84
  args: [{ selector: "external-pages", standalone: true, imports: [RouterOutlet], template: "<router-outlet></router-outlet>" }]
86
- }], ctorParameters: function () { return [{ type: i1.AccessControlService }, { type: i2.LocalizationService }, { type: i3.HTTPService }, { type: i4.AppEmbeddingExtensions }, { type: i5.AppState }, { type: i6.ActivatedRoute }, { type: i5.TokenService }]; } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWxfcGFnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9leHRlcm5hbC1wYWdlL2V4dGVybmFsX3BhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zcmMvZXh0ZXJuYWwtcGFnZS9leHRlcm5hbF9wYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFrQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBVTFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7OztBQVUzQyxNQUFNLE9BQU8sc0JBQXNCO0lBYy9CLFlBQW9CLEdBQXlCLEVBQVMsRUFBdUIsRUFBVSxJQUFpQixFQUFVLEdBQTJCLEVBQVUsTUFBZ0IsRUFBVSxLQUFxQixFQUFVLEdBQWlCO1FBQTdNLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQVMsT0FBRSxHQUFGLEVBQUUsQ0FBcUI7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBd0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFjO1FBYnpOLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ3BCLG9CQUFlLEdBQVcsRUFBRSxDQUFDO1FBRXJDLHNCQUFzQjtRQUNkLHVCQUFrQixHQUE2QjtZQUNuRCxLQUFLLEVBQUUsT0FBTztZQUNkLEtBQUssRUFBRSxPQUFPO1NBQ2pC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QUFzQjtrQkFObEMsU0FBUzsrQkFDSSxnQkFBZ0IsY0FFZCxJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXJPdXRsZXQgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBDb25maWd1cmF6aW9uaVxyXG5pbXBvcnQgeyBBY2Nlc3NDb250cm9sU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvYWNjZXNzLWNvbnRyb2xcIjtcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvbG9jYWxpemF0aW9uc1wiO1xyXG5pbXBvcnQgeyBBcHBFbWJlZGRpbmdFeHRlbnNpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcbmltcG9ydCB7IEhUVFBTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9odHRwc2VydmljZVwiO1xyXG5cclxuaW1wb3J0IHsgQXBwU3RhdGUsIFRva2VuU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQgeyBBY3RpdmVNb2R1bGVWaWV3LCBFbnZPcHRpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgbWFwIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbmRlY2xhcmUgdmFyIG15Y29uZmlnOiBFbnZPcHRpb25zO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJleHRlcm5hbC1wYWdlc1wiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9leHRlcm5hbF9wYWdlcy5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtSb3V0ZXJPdXRsZXRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFeHRlcm5hbFBhZ2VzQ29tcG9uZW50IHtcclxuICAgIHByaXZhdGUgVXNlcm5hbWU6IHN0cmluZyA9IFwiXCI7XHJcbiAgICBwcml2YXRlIFBhc3N3b3JkOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBUZW5hbnQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgICBwcml2YXRlIEVtYmVkZGluZ1NvdXJjZTogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICAvLyBUT0RPOiBBdXRvbWF0aXp6YXJlXHJcbiAgICBwcml2YXRlIExvY2FsaG9zdE1vZHVsZU1hcDogeyBbaWQ6IHN0cmluZ106IHN0cmluZyB9ID0ge1xyXG4gICAgICAgIFwiY3JtXCI6IFwiMzE4MTNcIixcclxuICAgICAgICBcInNpaVwiOiBcIjIxNjQ1XCJcclxuICAgIH07XHJcblxyXG4gICAgcHJpdmF0ZSBMb2NhbGhvc3Q6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhYWM6IEFjY2Vzc0NvbnRyb2xTZXJ2aWNlLCBwdWJsaWMgbGM6IExvY2FsaXphdGlvblNlcnZpY2UsIHByaXZhdGUgaHR0cDogSFRUUFNlcnZpY2UsIHByaXZhdGUgZW1iOiBBcHBFbWJlZGRpbmdFeHRlbnNpb25zLCBwcml2YXRlIF9zdGF0ZTogQXBwU3RhdGUsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIGJ0czogVG9rZW5TZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5Vc2VybmFtZSA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1widXNlclwiXTtcclxuICAgICAgICB0aGlzLlBhc3N3b3JkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJwc3dkXCJdO1xyXG4gICAgICAgIHRoaXMuVGVuYW50ID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJ0bnRcIl07XHJcblxyXG4gICAgICAgIHRoaXMuRW1iZWRkaW5nU291cmNlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbXCJzb3VyY2VcIl07XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5lbWIuRW1iZWRkZWQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJQYWdpbmEgZXh0IHJpY2hpYW1hdGEgaW4gYW1iaWVudGUgbm9uIGVtYmVkZGF0by4gU29ubyBpbiB1bmEgbnVvdmEgc2NoZWRhISFcIik7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiTCdlbWJlZGRlciBvcmlnaW5hbGUgZG92ZXZhIGVzc2VyZTogXCIgKyB0aGlzLkVtYmVkZGluZ1NvdXJjZSk7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiRGF0byBjaGUgc29ubyBpbiB1bmEgbnVvdmEgc2NoZWRhIGRldm8gaW4gcmVhbHTDoCBuYXZpZ2FyZSBhIGx1aSwgY29uIGxpbmsgc3UgZW1iL2VjYyBpbiBtb2RvIGRhIGFwcmlyZSB1bmEgc2NoZWRhIGVtYmVkZGF0YSBzdSBxdWVzdGEgcGFnaW5hLiBTZSBmdW56aW9uYSBnacOgIGZpbm8gYSBxdWkgc29ubyBhIGNhdmFsbG9cIik7XHJcblxyXG4gICAgICAgICAgICB0aGlzLkxvY2FsaG9zdCA9IHRoaXMuTG9jYWxob3N0TW9kdWxlTWFwW3RoaXMuRW1iZWRkaW5nU291cmNlXTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9zdGF0ZS5Nb2R1bGVzPy5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5hZnRlck1vZHVsZXNSZXRyaWV2ZSh0aGlzLl9zdGF0ZS5Nb2R1bGVzKTtcclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zdGF0ZS5zdWJzY3JpYmUoXCJtb2R1bGVzLlJldHJpZXZlZFwiLCAobW9kdWxlcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWZ0ZXJNb2R1bGVzUmV0cmlldmUobW9kdWxlcyk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zb2xlLmxvZyhcIkNhcmljYW1lbnRvIHBhZ2luYSBuZWxsJ0lGUkFNRSBjb21wbGV0YXRvIVwiKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIltcIiArIHRoaXMuVGVuYW50ICsgXCJdXCIgKyB0aGlzLlVzZXJuYW1lICsgXCIgLSBcIiArIHRoaXMuUGFzc3dvcmQpO1xyXG5cclxuICAgICAgICAvLyBMZSBpbmZvIGRpIGxvZ2luIGNoZSBobyBwYXNzYXRvIHNvbm8gbGUgc3Rlc3NlIGRlbGxlIGluZm8gZGkgbG9naW4gc2FsdmF0ZSBuZWwgdG9rZW4gLS0+IMOIIHVuIHJlZGlyZWN0IGRhIHVuIHNpdG8gZXN0ZXJubyBtYSBpbCB0b2tlbiBjJ8OoIGdpw6AuIEVzY29cclxuICAgICAgICAvLyBIbyB1biB0b2tlbiBkaSBsb2dpbiBlIG5vbiBobyBuZXNzdW5hIGluZm8gc3VsbCd1dGVudGUgZGEgdXNhcmUgLS0+IMOIIHVuIHJlZGlyZWN0IGRhIEphY2UsIHF1aW5kaSBzb25vIGEgcG9zdG8uIEVzY29cclxuICAgICAgICBsZXQgY3VycmVudElkZW50aXR5ID0gdGhpcy5idHMuZ2V0SmFjZUlkZW50aXR5KCk7XHJcbiAgICAgICAgaWYgKGN1cnJlbnRJZGVudGl0eSAmJiAoISh0aGlzLlRlbmFudCArIHRoaXMuVXNlcm5hbWUgKyB0aGlzLlBhc3N3b3JkKSB8fCBjdXJyZW50SWRlbnRpdHkuSWR0ZW5hbnQgPT0gdGhpcy5UZW5hbnQgJiYgY3VycmVudElkZW50aXR5LkRzVXNlciA9PSB0aGlzLlVzZXJuYW1lKSkge1xyXG4gICAgICAgICAgICB0aGlzLmFhYy5pbml0aWFsaXplSWRlbnRpdHkoY3VycmVudElkZW50aXR5KTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQWx0cmltZW50aSBkZXZvIGVmZmV0dHVhcmUgaWwgbG9naW5cclxuICAgICAgICAvLyBOb24gw6ggdXRpbGl6emF0YSwgcG9yY29kZGluY2lcclxuICAgICAgICBsZXQgTG9naW5EVE8gPSB7IHRlbmFudDogXCJGWFwiLCB1c2VybmFtZTogdGhpcy5Vc2VybmFtZSwgcGFzc3dvcmQ6IHRoaXMuUGFzc3dvcmQsIGNsaWVudF9pZDogXCJqYWNlZGV2XCIgfTtcclxuICAgICAgICB0aGlzLmh0dHAucG9zdChgJHtteWNvbmZpZy5BdXRoVXJsfS9hcGkvbG9naW4vZG9sb2dpbmAsIExvZ2luRFRPKS5zdWJzY3JpYmUodCA9PiB7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgYWZ0ZXJNb2R1bGVzUmV0cmlldmUobW9kdWxlczogQWN0aXZlTW9kdWxlVmlld1tdKSB7XHJcbiAgICAgICAgLy8gU3RvIG5hdmlnYW5kbyBhIHtzaXRvfS8jL3BhZ2VzX2V4dC9ldGMuLi5cclxuICAgICAgICAvLyBEZXZvIHJpZGlyZXppb25hcmUgYSB7c29yZ2VudGV9LyMvcGFnZXMvZW1iZWQve3RoaXNNb2R1bGV9L2V0Yy4uLlxyXG4gICAgICAgIGxldCBtb2R1bGUgPSBtb2R1bGVzLmZpbmQodCA9PiB0LmFsdG5hbWUgPT0gdGhpcy5FbWJlZGRpbmdTb3VyY2UpXHJcbiAgICAgICAgaWYgKCFtb2R1bGUpIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgSW1wb3NzaWJpbGUgdHJvdmFyZSBpbCBtb2R1bG8gY29uIGFsdG5hbWUgdWd1YWxlIGEgJHt0aGlzLkVtYmVkZGluZ1NvdXJjZX1gKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgY29uc3QgdXJsOiBzdHJpbmc9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMucm91dGUudXJsLnBpcGUobWFwKChzZWdtZW50cykgPT4gc2VnbWVudHMuam9pbignJykpKSk7XHJcbiAgICAgICAgbGV0IGFmdGVyUGFnZXNFeHQgPSB1cmwuc3BsaXQoXCJwYWdlc19leHRcIilbMV0uc3Vic3RyaW5nKDEpLnNwbGl0KFwiL1wiKS5zbGljZSgxKS5qb2luKFwiL1wiKTtcclxuXHJcbiAgICAgICAgbGV0IHNvdXJjZU1vZHVsZVVybCA9IG15Y29uZmlnLkF1dGhVcmwuaW5jbHVkZXMoXCJsb2NhbGhvc3RcIikgPyBgaHR0cDovL2xvY2FsaG9zdDoke3RoaXMuTG9jYWxob3N0fWAgOiBtb2R1bGUudWl1cmw7XHJcbiAgICAgICAgXHJcbiAgICAgICAgbGV0IGZpbmFsVXJsID0gYCR7c291cmNlTW9kdWxlVXJsfS8jL3BhZ2VzL2VtYmVkLyR7bXljb25maWcuQXBwRGF0YS5Nb2R1bGVJZH0vJHthZnRlclBhZ2VzRXh0fWA7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJAZXNmYWVuemEvY29yZTogbmF2aWdhdGluZyB0byBcIiArIGZpbmFsVXJsKTtcclxuICAgICAgICBsb2NhdGlvbi5yZXBsYWNlKGZpbmFsVXJsKTtcclxuICAgIH1cclxufSIsIjxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD4iXX0=
85
+ }], ctorParameters: function () { return [{ type: i1.AccessControlService }, { type: i2.LocalizationService }, { type: i3.HTTPService }, { type: i4.AppEmbeddingExtensions }, { type: i5.AppState }, { type: i6.ActivatedRoute }, { type: i6.Router }, { type: i5.TokenService }]; } });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWxfcGFnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9leHRlcm5hbC1wYWdlL2V4dGVybmFsX3BhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9zcmMvZXh0ZXJuYWwtcGFnZS9leHRlcm5hbF9wYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUEwQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQW9CMUMsTUFBTSxPQUFPLHNCQUFzQjtJQWMvQixZQUFvQixHQUF5QixFQUFTLEVBQXVCLEVBQVUsSUFBaUIsRUFBVSxHQUEyQixFQUFVLE1BQWdCLEVBQVUsS0FBcUIsRUFBVSxNQUFjLEVBQVUsR0FBaUI7UUFBck8sUUFBRyxHQUFILEdBQUcsQ0FBc0I7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFxQjtRQUFVLFNBQUksR0FBSixJQUFJLENBQWE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUF3QjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVU7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFjO1FBYmpQLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ3BCLG9CQUFlLEdBQVcsRUFBRSxDQUFDO1FBRXJDLHNCQUFzQjtRQUNkLHVCQUFrQixHQUE2QjtZQUNuRCxLQUFLLEVBQUUsT0FBTztZQUNkLEtBQUssRUFBRSxPQUFPO1NBQ2pCLENBQUM7UUFFTSxjQUFT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QUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTyxDQUFDLEtBQUssQ0FBQyxzREFBc0QsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7U0FDL0Y7UUFFRCxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JHLElBQUksZUFBZSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBRW5ILElBQUksUUFBUSxHQUFHLEdBQUcsZUFBZSxrQkFBa0IsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksYUFBYSxFQUFFLENBQUM7UUFDaEcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUN6RCxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9CLENBQUM7O29IQXpFUSxzQkFBc0I7d0dBQXRCLHNCQUFzQiwwRUN0Qm5DLGlDQUErQiw0Q0RvQmpCLFlBQVk7NEZBRWIsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNJLGdCQUFnQixjQUVkLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciwgUm91dGVyT3V0bGV0IH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gQ29uZmlndXJhemlvbmlcclxuaW1wb3J0IHsgQWNjZXNzQ29udHJvbFNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2FjY2Vzcy1jb250cm9sXCI7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2xvY2FsaXphdGlvbnNcIjtcclxuaW1wb3J0IHsgQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5pbXBvcnQgeyBIVFRQU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvaHR0cHNlcnZpY2VcIjtcclxuXHJcbmltcG9ydCB7IEFwcFN0YXRlLCBUb2tlblNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvc2VydmljZXNcIjtcclxuaW1wb3J0IHsgQWN0aXZlTW9kdWxlVmlldywgRW52T3B0aW9ucyB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIjtcclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20sIG1hcCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5kZWNsYXJlIHZhciBteWNvbmZpZzogRW52T3B0aW9ucztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiZXh0ZXJuYWwtcGFnZXNcIixcclxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZXh0ZXJuYWxfcGFnZXMuY29tcG9uZW50Lmh0bWxcIixcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbUm91dGVyT3V0bGV0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCB7XHJcbiAgICBwcml2YXRlIFVzZXJuYW1lOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBQYXNzd29yZDogc3RyaW5nID0gXCJcIjtcclxuICAgIHByaXZhdGUgVGVuYW50OiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBFbWJlZGRpbmdTb3VyY2U6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgLy8gVE9ETzogQXV0b21hdGl6emFyZVxyXG4gICAgcHJpdmF0ZSBMb2NhbGhvc3RNb2R1bGVNYXA6IHsgW2lkOiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcclxuICAgICAgICBcImNybVwiOiBcIjMxODEzXCIsXHJcbiAgICAgICAgXCJzaWlcIjogXCIyMTY0NVwiXHJcbiAgICB9O1xyXG5cclxuICAgIHByaXZhdGUgTG9jYWxob3N0OiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYWFjOiBBY2Nlc3NDb250cm9sU2VydmljZSwgcHVibGljIGxjOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwcml2YXRlIGh0dHA6IEhUVFBTZXJ2aWNlLCBwcml2YXRlIGVtYjogQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucywgcHJpdmF0ZSBfc3RhdGU6IEFwcFN0YXRlLCBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBidHM6IFRva2VuU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMuVXNlcm5hbWUgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtc1tcInVzZXJcIl07XHJcbiAgICAgICAgdGhpcy5QYXNzd29yZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1wicHN3ZFwiXTtcclxuICAgICAgICB0aGlzLlRlbmFudCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1widG50XCJdO1xyXG5cclxuICAgICAgICB0aGlzLkVtYmVkZGluZ1NvdXJjZSA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1zW1wic291cmNlXCJdO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuZW1iLkVtYmVkZGVkKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiUGFnaW5hIGV4dCByaWNoaWFtYXRhIGluIGFtYmllbnRlIG5vbiBlbWJlZGRhdG8uIFNvbm8gaW4gdW5hIG51b3ZhIHNjaGVkYSEhXCIpO1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkwnZW1iZWRkZXIgb3JpZ2luYWxlIGRvdmV2YSBlc3NlcmU6IFwiICsgdGhpcy5FbWJlZGRpbmdTb3VyY2UpO1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkRhdG8gY2hlIHNvbm8gaW4gdW5hIG51b3ZhIHNjaGVkYSBkZXZvIGluIHJlYWx0w6AgbmF2aWdhcmUgYSBsdWksIGNvbiBsaW5rIHN1IGVtYi9lY2MgaW4gbW9kbyBkYSBhcHJpcmUgdW5hIHNjaGVkYSBlbWJlZGRhdGEgc3UgcXVlc3RhIHBhZ2luYS4gU2UgZnVuemlvbmEgZ2nDoCBmaW5vIGEgcXVpIHNvbm8gYSBjYXZhbGxvXCIpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5Mb2NhbGhvc3QgPSB0aGlzLkxvY2FsaG9zdE1vZHVsZU1hcFt0aGlzLkVtYmVkZGluZ1NvdXJjZV07XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5fc3RhdGUuTW9kdWxlcz8ubGVuZ3RoID4gMClcclxuICAgICAgICAgICAgICAgIHRoaXMuYWZ0ZXJNb2R1bGVzUmV0cmlldmUodGhpcy5fc3RhdGUuTW9kdWxlcyk7XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fc3RhdGUuc3Vic2NyaWJlKFwibW9kdWxlcy5SZXRyaWV2ZWRcIiwgKG1vZHVsZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFmdGVyTW9kdWxlc1JldHJpZXZlKG1vZHVsZXMpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc29sZS5sb2coXCJDYXJpY2FtZW50byBwYWdpbmEgbmVsbCdJRlJBTUUgY29tcGxldGF0byFcIik7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJbXCIgKyB0aGlzLlRlbmFudCArIFwiXVwiICsgdGhpcy5Vc2VybmFtZSArIFwiIC0gXCIgKyB0aGlzLlBhc3N3b3JkKTtcclxuXHJcbiAgICAgICAgLy8gTGUgaW5mbyBkaSBsb2dpbiBjaGUgaG8gcGFzc2F0byBzb25vIGxlIHN0ZXNzZSBkZWxsZSBpbmZvIGRpIGxvZ2luIHNhbHZhdGUgbmVsIHRva2VuIC0tPiDDiCB1biByZWRpcmVjdCBkYSB1biBzaXRvIGVzdGVybm8gbWEgaWwgdG9rZW4gYyfDqCBnacOgLiBFc2NvXHJcbiAgICAgICAgLy8gSG8gdW4gdG9rZW4gZGkgbG9naW4gZSBub24gaG8gbmVzc3VuYSBpbmZvIHN1bGwndXRlbnRlIGRhIHVzYXJlIC0tPiDDiCB1biByZWRpcmVjdCBkYSBKYWNlLCBxdWluZGkgc29ubyBhIHBvc3RvLiBFc2NvXHJcbiAgICAgICAgbGV0IGN1cnJlbnRJZGVudGl0eSA9IHRoaXMuYnRzLmdldEphY2VJZGVudGl0eSgpO1xyXG4gICAgICAgIGlmIChjdXJyZW50SWRlbnRpdHkgJiYgKCEodGhpcy5UZW5hbnQgKyB0aGlzLlVzZXJuYW1lICsgdGhpcy5QYXNzd29yZCkgfHwgY3VycmVudElkZW50aXR5LklkdGVuYW50ID09IHRoaXMuVGVuYW50ICYmIGN1cnJlbnRJZGVudGl0eS5Ec1VzZXIgPT0gdGhpcy5Vc2VybmFtZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5hYWMuaW5pdGlhbGl6ZUlkZW50aXR5KGN1cnJlbnRJZGVudGl0eSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEFsdHJpbWVudGkgZGV2byBlZmZldHR1YXJlIGlsIGxvZ2luXHJcbiAgICAgICAgLy8gTm9uIMOoIHV0aWxpenphdGEsIHBvcmNvZGRpbmNpXHJcbiAgICAgICAgbGV0IExvZ2luRFRPID0geyB0ZW5hbnQ6IFwiRlhcIiwgdXNlcm5hbWU6IHRoaXMuVXNlcm5hbWUsIHBhc3N3b3JkOiB0aGlzLlBhc3N3b3JkLCBjbGllbnRfaWQ6IFwiamFjZWRldlwiIH07XHJcbiAgICAgICAgdGhpcy5odHRwLnBvc3QoYCR7bXljb25maWcuQXV0aFVybH0vYXBpL2xvZ2luL2RvbG9naW5gLCBMb2dpbkRUTykuc3Vic2NyaWJlKHQgPT4ge1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFmdGVyTW9kdWxlc1JldHJpZXZlKG1vZHVsZXM6IEFjdGl2ZU1vZHVsZVZpZXdbXSkge1xyXG4gICAgICAgIC8vIFN0byBuYXZpZ2FuZG8gYSB7c2l0b30vIy9wYWdlc19leHQve29yaWdpbmV9L2V0Yy4uLlxyXG4gICAgICAgIC8vIERldm8gcmlkaXJlemlvbmFyZSBhIHtzb3JnZW50ZX0vIy9wYWdlcy9lbWJlZC97dGhpc01vZHVsZX0vZXRjLi4uXHJcbiAgICAgICAgbGV0IG1vZHVsZSA9IG1vZHVsZXMuZmluZCh0ID0+IHQuYWx0bmFtZSA9PSB0aGlzLkVtYmVkZGluZ1NvdXJjZSlcclxuICAgICAgICBpZiAoIW1vZHVsZSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBJbXBvc3NpYmlsZSB0cm92YXJlIGlsIG1vZHVsbyBjb24gYWx0bmFtZSB1Z3VhbGUgYSAke3RoaXMuRW1iZWRkaW5nU291cmNlfWApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBsZXQgYWZ0ZXJQYWdlc0V4dCA9IHRoaXMucm91dGVyLnVybC5zcGxpdChcInBhZ2VzX2V4dFwiKVsxXS5zdWJzdHJpbmcoMSkuc3BsaXQoXCIvXCIpLnNsaWNlKDEpLmpvaW4oXCIvXCIpO1xyXG4gICAgICAgIGxldCBzb3VyY2VNb2R1bGVVcmwgPSBteWNvbmZpZy5BdXRoVXJsLmluY2x1ZGVzKFwibG9jYWxob3N0XCIpID8gYGh0dHA6Ly9sb2NhbGhvc3Q6JHt0aGlzLkxvY2FsaG9zdH1gIDogbW9kdWxlLnVpdXJsO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGxldCBmaW5hbFVybCA9IGAke3NvdXJjZU1vZHVsZVVybH0vIy9wYWdlcy9lbWJlZC8ke215Y29uZmlnLkFwcERhdGEuTW9kdWxlSWR9LyR7YWZ0ZXJQYWdlc0V4dH1gO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiQGVzZmFlbnphL2NvcmU6IG5hdmlnYXRpbmcgdG8gXCIgKyBmaW5hbFVybCk7XHJcbiAgICAgICAgbG9jYXRpb24ucmVwbGFjZShmaW5hbFVybCk7XHJcbiAgICB9XHJcbn0iLCI8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+Il19