@esfaenza/core 15.2.124 → 15.2.126

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.
@@ -12,9 +12,12 @@ export declare abstract class BaseComponent extends ReactiveComponent {
12
12
  protected InternalNavigation: boolean;
13
13
  protected NavigationTitle: string;
14
14
  private _router;
15
+ private _emb;
16
+ private _location;
15
17
  constructor(injector: Injector);
16
18
  gatherRouteInformations(_activatedRoute: ActivatedRoute): void;
17
19
  protected navigate(command: any[], extras?: any): void;
20
+ back(): void;
18
21
  static ɵfac: i0.ɵɵFactoryDeclaration<BaseComponent, never>;
19
22
  static ɵcmp: i0.ɵɵComponentDeclaration<BaseComponent, "ng-component", never, {}, {}, never, never, false, never>;
20
23
  }
@@ -7,6 +7,6 @@ import * as i5 from "./componentHost/componentHost.directive";
7
7
  import * as i6 from "./es-modal/es-modal.directive";
8
8
  export declare class DirectivesModule {
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<DirectivesModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<DirectivesModule, never, [typeof i1.Draggable, typeof i2.SlimScroll, typeof i3.Widget, typeof i4.EsRouterLink, typeof i5.ComponentHostDirective, typeof i6.EsModalDirective], [typeof i1.Draggable, typeof i2.SlimScroll, typeof i3.Widget, typeof i4.EsRouterLink, typeof i5.ComponentHostDirective, typeof i6.EsModalDirective]>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DirectivesModule, never, [typeof i1.Draggable, typeof i2.SlimScroll, typeof i3.Widget, typeof i4.esRouterLinkWithHref, typeof i5.ComponentHostDirective, typeof i6.EsModalDirective], [typeof i1.Draggable, typeof i2.SlimScroll, typeof i3.Widget, typeof i4.esRouterLinkWithHref, typeof i5.ComponentHostDirective, typeof i6.EsModalDirective]>;
11
11
  static ɵinj: i0.ɵɵInjectorDeclaration<DirectivesModule>;
12
12
  }
@@ -1,12 +1,13 @@
1
1
  import { LocationStrategy } from "@angular/common";
2
2
  import { ElementRef, Renderer2 } from "@angular/core";
3
- import { ActivatedRoute, Router, RouterLink } from "@angular/router";
3
+ import { ActivatedRoute, Router, RouterLinkWithHref } from "@angular/router";
4
4
  import { AppEmbeddingExtensions } from "@esfaenza/extensions";
5
5
  import * as i0 from "@angular/core";
6
- export declare class EsRouterLink extends RouterLink {
6
+ export declare class esRouterLinkWithHref extends RouterLinkWithHref {
7
7
  private emb;
8
8
  constructor(emb: AppEmbeddingExtensions, router: Router, route: ActivatedRoute, tabIndexAttribute: string | null | undefined, renderer: Renderer2, el: ElementRef, locationStrategy?: LocationStrategy);
9
9
  set esRouterLink(commands: any[] | string | null | undefined);
10
- static ɵfac: i0.ɵɵFactoryDeclaration<EsRouterLink, [null, null, null, { attribute: "tabindex"; }, null, null, null]>;
11
- static ɵdir: i0.ɵɵDirectiveDeclaration<EsRouterLink, "[esRouterLink]", never, { "esRouterLink": "esRouterLink"; }, {}, never, never, true, never>;
10
+ onClick(button: number, ctrlKey: boolean, shiftKey: boolean, altKey: boolean, metaKey: boolean): boolean;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<esRouterLinkWithHref, [null, null, null, { attribute: "tabindex"; }, null, null, null]>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<esRouterLinkWithHref, "a[esRouterLink],area[esRouterLink]", never, { "esRouterLink": "esRouterLink"; }, {}, never, never, true, never>;
12
13
  }
@@ -1,5 +1,6 @@
1
1
  // Angular
2
2
  import { Component } from "@angular/core";
3
+ import { Location } from "@angular/common";
3
4
  import { ActivatedRoute, Router } from "@angular/router";
4
5
  // Direttive, Componenti, Librerie
5
6
  import { takeUntil } from "rxjs/operators";
@@ -15,7 +16,8 @@ export class BaseComponent extends ReactiveComponent {
15
16
  this.NavigationParameters = null;
16
17
  let _activatedRoute = injector.get(ActivatedRoute);
17
18
  let _state = injector.get(AppState);
18
- let emb = injector.get(AppEmbeddingExtensions);
19
+ this._emb = injector.get(AppEmbeddingExtensions);
20
+ this._location = injector.get(Location);
19
21
  this._router = injector.get(Router);
20
22
  _state.registerNavigationIfMeaningful(_activatedRoute.snapshot);
21
23
  // Parametri in maniera "dinamica"
@@ -23,14 +25,9 @@ export class BaseComponent extends ReactiveComponent {
23
25
  this.gatherRouteInformations(_activatedRoute);
24
26
  // Per i componenti navigabili non embeddati è inutile mandare il messaggio di navigazione
25
27
  // Così come per quelli per cui non esiste un titolo (cioè compoennti verso cui non si è navigato direttamente)
26
- if (!emb.Embedded || !this.NavigationTitle)
28
+ if (!this._emb.Embedded || !this.NavigationTitle)
27
29
  return;
28
- // Se sono dentro un iframe risalgo a quello di livello più alto in assoluto
29
- let tmpWindow = window;
30
- // Quando il parent non esiste window. parent è un riferimento a se stesso
31
- while (tmpWindow.parent != tmpWindow)
32
- tmpWindow = tmpWindow.parent;
33
- tmpWindow.postMessage({ type: "navigation", url: this.CompletePath, internalNavigation: this.InternalNavigation, title: this.NavigationTitle }, "*");
30
+ this._emb.MainWindow.postMessage({ type: "navigation", url: this.CompletePath, internalNavigation: this.InternalNavigation, title: this.NavigationTitle }, "*");
34
31
  }
35
32
  gatherRouteInformations(_activatedRoute) {
36
33
  let segs = _activatedRoute.snapshot._urlSegment.segments;
@@ -49,6 +46,14 @@ export class BaseComponent extends ReactiveComponent {
49
46
  commands[0] = this.BasePath + commands[0];
50
47
  this._router.navigate(command, extras);
51
48
  }
49
+ back() {
50
+ if (this._emb.Embedded) {
51
+ this._emb.MainWindow.postMessage({ type: "navigate-back" }, "*");
52
+ setTimeout(() => { this._location.back(); });
53
+ }
54
+ else
55
+ this._location.back();
56
+ }
52
57
  }
53
58
  BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
54
59
  BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BaseComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
@@ -56,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
56
61
  type: Component,
57
62
  args: [{ template: '' }]
58
63
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3JjL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQW1CLE1BQU0saUJBQWlCLENBQUM7QUFFMUUsa0NBQWtDO0FBQ2xDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPO0FBQ1AsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRzlELE1BQU0sT0FBZ0IsYUFBYyxTQUFRLGlCQUFpQjtJQXNCekQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLEVBQUUsQ0FBQztRQVRGLHlCQUFvQixHQUErQixJQUFJLENBQUM7UUFXOUQsSUFBSSxlQUFlLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsSUFBSSxNQUFNLEdBQWEsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QyxJQUFJLEdBQUcsR0FBMkIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVwQyxNQUFNLENBQUMsOEJBQThCLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhFLGtDQUFrQztRQUNsQyxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRTFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU5QywwRkFBMEY7UUFDMUYsK0dBQStHO1FBQy9HLElBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFDckMsT0FBTztRQUVYLDRFQUE0RTtRQUM1RSxJQUFJLFNBQVMsR0FBMkMsTUFBTSxDQUFDO1FBQy9ELDBFQUEwRTtRQUMxRSxPQUFPLFNBQVMsQ0FBQyxNQUFNLElBQUksU0FBUztZQUNoQyxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQztRQUVqQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN6SixDQUFDO0lBRU0sdUJBQXVCLENBQUMsZUFBK0I7UUFDMUQsSUFBSSxJQUFJLEdBQTJCLGVBQWUsQ0FBQyxRQUFTLENBQUMsV0FBWSxDQUFDLFFBQVEsQ0FBQztRQUVuRixJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUVuQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxLQUFLLENBQUM7UUFDdkYsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEUsQ0FBQztJQUVTLFFBQVEsQ0FBQyxPQUFjLEVBQUUsTUFBWTtRQUMzQyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFFdkIsa0RBQWtEO1FBQ2xELFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsSUFBSSxLQUFLLEdBQUksUUFBUSxDQUFDLENBQUMsQ0FBWSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztZQUN6RSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7OzBHQXhFaUIsYUFBYTs4RkFBYixhQUFhLDJFQURaLEVBQUU7MkZBQ0gsYUFBYTtrQkFEbEMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBVcmxTZWdtZW50R3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcblxyXG4vLyBEaXJldHRpdmUsIENvbXBvbmVudGksIExpYnJlcmllXHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuLy8gQ29yZVxyXG5pbXBvcnQgeyBBcHBTdGF0ZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9zZXJ2aWNlc1wiO1xyXG5cclxuaW1wb3J0IHsgUmVhY3RpdmVDb21wb25lbnQgfSBmcm9tIFwiLi9yZWFjdGl2ZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRU1CRURERURfUk9VVEUsIFJPVVRFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5pbXBvcnQgeyBBcHBFbWJlZGRpbmdFeHRlbnNpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29tcG9uZW50IGV4dGVuZHMgUmVhY3RpdmVDb21wb25lbnQge1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiBCbG9jY28gZGkgaW5mb3JtYXppb25pIHN1bGxhIHJvdXRlIGF0dHVhbGVcclxuICAgICAqICAgICAgUm91dGU6IC9wYWdlcy9tb2R1bGUvY29tcG9uZW50O2lkTW9kZWw9MTIzXHJcbiAgICAgKiAgICAgIFxyXG4gICAgICogICAgICBDb21wbGV0ZVBhdGg6IC9wYWdlcy9tb2R1bGUvY29tcG9uZW50XHJcbiAgICAgKiAgICAgIENvbXBvbmVudFBhdGg6IG1vZHVsZS9jb21wb25lbnRcclxuICAgICAqICAgICAgQmFzZVBhdGg6IC9wYWdlcyAoZXF1aXZhbGVudGUgYSBST1VURSBvIEVNQkVEREVEX1JPVVRFKVxyXG4gICAgICogICAgICBQYXJhbWV0ZXJzOiB7IFwiaWRNb2RlbFwiIDogXCIxMjNcIiB9XHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBDb21wbGV0ZVBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBDb21wb25lbnRQYXRoOiBzdHJpbmc7XHJcbiAgICBwcm90ZWN0ZWQgQmFzZVBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBOYXZpZ2F0aW9uUGFyYW1ldGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0gPSBudWxsO1xyXG5cclxuICAgIC8vIEluZm9ybWF6aW9uaSBwcmVzZSBkYWkgZGF0aSBleHRyYSBkZWxsYSByb3V0ZVxyXG4gICAgcHJvdGVjdGVkIEludGVybmFsTmF2aWdhdGlvbjogYm9vbGVhbjtcclxuICAgIHByb3RlY3RlZCBOYXZpZ2F0aW9uVGl0bGU6IHN0cmluZztcclxuXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcjtcclxuICAgIFxyXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuXHJcbiAgICAgICAgbGV0IF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUgPSBpbmplY3Rvci5nZXQoQWN0aXZhdGVkUm91dGUpO1xyXG4gICAgICAgIGxldCBfc3RhdGU6IEFwcFN0YXRlID0gaW5qZWN0b3IuZ2V0KEFwcFN0YXRlKTtcclxuICAgICAgICBsZXQgZW1iOiBBcHBFbWJlZGRpbmdFeHRlbnNpb25zID0gaW5qZWN0b3IuZ2V0KEFwcEVtYmVkZGluZ0V4dGVuc2lvbnMpO1xyXG4gICAgICAgIHRoaXMuX3JvdXRlciA9IGluamVjdG9yLmdldChSb3V0ZXIpO1xyXG5cclxuICAgICAgICBfc3RhdGUucmVnaXN0ZXJOYXZpZ2F0aW9uSWZNZWFuaW5nZnVsKF9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdCk7XHJcblxyXG4gICAgICAgIC8vIFBhcmFtZXRyaSBpbiBtYW5pZXJhIFwiZGluYW1pY2FcIlxyXG4gICAgICAgIF9hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHQgPT4geyB0aGlzLk5hdmlnYXRpb25QYXJhbWV0ZXJzID0gdDsgfSlcclxuXHJcbiAgICAgICAgdGhpcy5nYXRoZXJSb3V0ZUluZm9ybWF0aW9ucyhfYWN0aXZhdGVkUm91dGUpO1xyXG5cclxuICAgICAgICAvLyBQZXIgaSBjb21wb25lbnRpIG5hdmlnYWJpbGkgbm9uIGVtYmVkZGF0aSDDqCBpbnV0aWxlIG1hbmRhcmUgaWwgbWVzc2FnZ2lvIGRpIG5hdmlnYXppb25lXHJcbiAgICAgICAgLy8gQ29zw6wgY29tZSBwZXIgcXVlbGxpIHBlciBjdWkgbm9uIGVzaXN0ZSB1biB0aXRvbG8gKGNpb8OoIGNvbXBvZW5udGkgdmVyc28gY3VpIG5vbiBzaSDDqCBuYXZpZ2F0byBkaXJldHRhbWVudGUpXHJcbiAgICAgICAgaWYoIWVtYi5FbWJlZGRlZCB8fCAhdGhpcy5OYXZpZ2F0aW9uVGl0bGUpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgLy8gU2Ugc29ubyBkZW50cm8gdW4gaWZyYW1lIHJpc2FsZ28gYSBxdWVsbG8gZGkgbGl2ZWxsbyBwacO5IGFsdG8gaW4gYXNzb2x1dG9cclxuICAgICAgICBsZXQgdG1wV2luZG93ID0gPHsgcGFyZW50OiBhbnksIHBvc3RNZXNzYWdlOiBGdW5jdGlvbiB9PndpbmRvdztcclxuICAgICAgICAvLyBRdWFuZG8gaWwgcGFyZW50IG5vbiBlc2lzdGUgd2luZG93LiBwYXJlbnQgw6ggdW4gcmlmZXJpbWVudG8gYSBzZSBzdGVzc29cclxuICAgICAgICB3aGlsZSAodG1wV2luZG93LnBhcmVudCAhPSB0bXBXaW5kb3cpXHJcbiAgICAgICAgICAgIHRtcFdpbmRvdyA9IHRtcFdpbmRvdy5wYXJlbnQ7XHJcblxyXG4gICAgICAgIHRtcFdpbmRvdy5wb3N0TWVzc2FnZSh7IHR5cGU6IFwibmF2aWdhdGlvblwiLCB1cmw6IHRoaXMuQ29tcGxldGVQYXRoLCBpbnRlcm5hbE5hdmlnYXRpb246IHRoaXMuSW50ZXJuYWxOYXZpZ2F0aW9uLCB0aXRsZTogdGhpcy5OYXZpZ2F0aW9uVGl0bGUgfSwgXCIqXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnYXRoZXJSb3V0ZUluZm9ybWF0aW9ucyhfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XHJcbiAgICAgICAgbGV0IHNlZ3MgPSAoPFVybFNlZ21lbnRHcm91cD4oPGFueT5fYWN0aXZhdGVkUm91dGUuc25hcHNob3QpLl91cmxTZWdtZW50KS5zZWdtZW50cztcclxuXHJcbiAgICAgICAgdGhpcy5Db21wbGV0ZVBhdGggPSBcIi9cIiArIHNlZ3MubWFwKHQgPT4gdC5wYXRoKS5qb2luKCcvJyk7XHJcbiAgICAgICAgdGhpcy5Db21wb25lbnRQYXRoID0gXCIvXCIgKyBzZWdzLmZpbHRlcigodCwgaSkgPT4gaSAhPSAwKS5tYXAodCA9PiB0LnBhdGgpLmpvaW4oJy8nKTtcclxuICAgICAgICB0aGlzLkJhc2VQYXRoID0gXCIvXCIgKyBzZWdzWzBdLnBhdGg7XHJcblxyXG4gICAgICAgIHRoaXMuSW50ZXJuYWxOYXZpZ2F0aW9uID0gX2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFbXCJpbnRlcm5hbE5hdmlnYXRpb25cIl0gfHwgZmFsc2U7XHJcbiAgICAgICAgdGhpcy5OYXZpZ2F0aW9uVGl0bGUgPSBfYWN0aXZhdGVkUm91dGUuc25hcHNob3QuZGF0YVtcInRpdGxlXCJdIHx8IFwiXCI7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG5hdmlnYXRlKGNvbW1hbmQ6IGFueVtdLCBleHRyYXM/OiBhbnkpIHtcclxuICAgICAgICBsZXQgY29tbWFuZHMgPSBjb21tYW5kO1xyXG5cclxuICAgICAgICAvLyBGaXggZGVsbGEgcGF0aCBlc2F0dGFtZW50ZSBjb21lIGluIGVzUm91dGVyTGlua1xyXG4gICAgICAgIGNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShjb21tYW5kcykgPyBjb21tYW5kcyA6IFtjb21tYW5kc107XHJcbiAgICAgICAgbGV0IHJvdXRlID0gKGNvbW1hbmRzWzBdIGFzIHN0cmluZyk7XHJcbiAgICAgICAgaWYgKCFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgRU1CRURERURfUk9VVEUpICYmICFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgUk9VVEUpKVxyXG4gICAgICAgICAgICBjb21tYW5kc1swXSA9IHRoaXMuQmFzZVBhdGggKyBjb21tYW5kc1swXTtcclxuXHJcbiAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKGNvbW1hbmQsIGV4dHJhcyk7XHJcbiAgICB9XHJcbn0iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3JjL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFtQixNQUFNLGlCQUFpQixDQUFDO0FBRTFFLGtDQUFrQztBQUNsQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTztBQUNQLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUc5RCxNQUFNLE9BQWdCLGFBQWMsU0FBUSxpQkFBaUI7SUF5QnpELFlBQVksUUFBa0I7UUFDMUIsS0FBSyxFQUFFLENBQUM7UUFaRix5QkFBb0IsR0FBK0IsSUFBSSxDQUFDO1FBYzlELElBQUksZUFBZSxHQUFtQixRQUFRLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ25FLElBQUksTUFBTSxHQUFhLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FB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QUFFO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNqRSxVQUFVLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQy9DOztZQUVHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzs7MEdBL0VpQixhQUFhOzhGQUFiLGFBQWEsMkVBRFosRUFBRTsyRkFDSCxhQUFhO2tCQURsQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBVcmxTZWdtZW50R3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcblxyXG4vLyBEaXJldHRpdmUsIENvbXBvbmVudGksIExpYnJlcmllXHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuLy8gQ29yZVxyXG5pbXBvcnQgeyBBcHBTdGF0ZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9zZXJ2aWNlc1wiO1xyXG5cclxuaW1wb3J0IHsgUmVhY3RpdmVDb21wb25lbnQgfSBmcm9tIFwiLi9yZWFjdGl2ZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRU1CRURERURfUk9VVEUsIFJPVVRFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5pbXBvcnQgeyBBcHBFbWJlZGRpbmdFeHRlbnNpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29tcG9uZW50IGV4dGVuZHMgUmVhY3RpdmVDb21wb25lbnQge1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiBCbG9jY28gZGkgaW5mb3JtYXppb25pIHN1bGxhIHJvdXRlIGF0dHVhbGVcclxuICAgICAqICAgICAgUm91dGU6IC9wYWdlcy9tb2R1bGUvY29tcG9uZW50O2lkTW9kZWw9MTIzXHJcbiAgICAgKiAgICAgIFxyXG4gICAgICogICAgICBDb21wbGV0ZVBhdGg6IC9wYWdlcy9tb2R1bGUvY29tcG9uZW50XHJcbiAgICAgKiAgICAgIENvbXBvbmVudFBhdGg6IG1vZHVsZS9jb21wb25lbnRcclxuICAgICAqICAgICAgQmFzZVBhdGg6IC9wYWdlcyAoZXF1aXZhbGVudGUgYSBST1VURSBvIEVNQkVEREVEX1JPVVRFKVxyXG4gICAgICogICAgICBQYXJhbWV0ZXJzOiB7IFwiaWRNb2RlbFwiIDogXCIxMjNcIiB9XHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBDb21wbGV0ZVBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBDb21wb25lbnRQYXRoOiBzdHJpbmc7XHJcbiAgICBwcm90ZWN0ZWQgQmFzZVBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBOYXZpZ2F0aW9uUGFyYW1ldGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0gPSBudWxsO1xyXG5cclxuICAgIC8vIEluZm9ybWF6aW9uaSBwcmVzZSBkYWkgZGF0aSBleHRyYSBkZWxsYSByb3V0ZVxyXG4gICAgcHJvdGVjdGVkIEludGVybmFsTmF2aWdhdGlvbjogYm9vbGVhbjtcclxuICAgIHByb3RlY3RlZCBOYXZpZ2F0aW9uVGl0bGU6IHN0cmluZztcclxuXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcjtcclxuXHJcbiAgICBwcml2YXRlIF9lbWI6IEFwcEVtYmVkZGluZ0V4dGVuc2lvbnM7XHJcbiAgICBwcml2YXRlIF9sb2NhdGlvbjogTG9jYXRpb247XHJcblxyXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuXHJcbiAgICAgICAgbGV0IF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUgPSBpbmplY3Rvci5nZXQoQWN0aXZhdGVkUm91dGUpO1xyXG4gICAgICAgIGxldCBfc3RhdGU6IEFwcFN0YXRlID0gaW5qZWN0b3IuZ2V0KEFwcFN0YXRlKTtcclxuICAgICAgICB0aGlzLl9lbWIgPSBpbmplY3Rvci5nZXQoQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyk7XHJcbiAgICAgICAgdGhpcy5fbG9jYXRpb24gPSBpbmplY3Rvci5nZXQoTG9jYXRpb24pO1xyXG4gICAgICAgIHRoaXMuX3JvdXRlciA9IGluamVjdG9yLmdldChSb3V0ZXIpO1xyXG5cclxuICAgICAgICBfc3RhdGUucmVnaXN0ZXJOYXZpZ2F0aW9uSWZNZWFuaW5nZnVsKF9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdCk7XHJcblxyXG4gICAgICAgIC8vIFBhcmFtZXRyaSBpbiBtYW5pZXJhIFwiZGluYW1pY2FcIlxyXG4gICAgICAgIF9hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHQgPT4geyB0aGlzLk5hdmlnYXRpb25QYXJhbWV0ZXJzID0gdDsgfSlcclxuXHJcbiAgICAgICAgdGhpcy5nYXRoZXJSb3V0ZUluZm9ybWF0aW9ucyhfYWN0aXZhdGVkUm91dGUpO1xyXG5cclxuICAgICAgICAvLyBQZXIgaSBjb21wb25lbnRpIG5hdmlnYWJpbGkgbm9uIGVtYmVkZGF0aSDDqCBpbnV0aWxlIG1hbmRhcmUgaWwgbWVzc2FnZ2lvIGRpIG5hdmlnYXppb25lXHJcbiAgICAgICAgLy8gQ29zw6wgY29tZSBwZXIgcXVlbGxpIHBlciBjdWkgbm9uIGVzaXN0ZSB1biB0aXRvbG8gKGNpb8OoIGNvbXBvZW5udGkgdmVyc28gY3VpIG5vbiBzaSDDqCBuYXZpZ2F0byBkaXJldHRhbWVudGUpXHJcbiAgICAgICAgaWYoIXRoaXMuX2VtYi5FbWJlZGRlZCB8fCAhdGhpcy5OYXZpZ2F0aW9uVGl0bGUpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5fZW1iLk1haW5XaW5kb3cucG9zdE1lc3NhZ2UoeyB0eXBlOiBcIm5hdmlnYXRpb25cIiwgdXJsOiB0aGlzLkNvbXBsZXRlUGF0aCwgaW50ZXJuYWxOYXZpZ2F0aW9uOiB0aGlzLkludGVybmFsTmF2aWdhdGlvbiwgdGl0bGU6IHRoaXMuTmF2aWdhdGlvblRpdGxlIH0sIFwiKlwiKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2F0aGVyUm91dGVJbmZvcm1hdGlvbnMoX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xyXG4gICAgICAgIGxldCBzZWdzID0gKDxVcmxTZWdtZW50R3JvdXA+KDxhbnk+X2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90KS5fdXJsU2VnbWVudCkuc2VnbWVudHM7XHJcblxyXG4gICAgICAgIHRoaXMuQ29tcGxldGVQYXRoID0gXCIvXCIgKyBzZWdzLm1hcCh0ID0+IHQucGF0aCkuam9pbignLycpO1xyXG4gICAgICAgIHRoaXMuQ29tcG9uZW50UGF0aCA9IFwiL1wiICsgc2Vncy5maWx0ZXIoKHQsIGkpID0+IGkgIT0gMCkubWFwKHQgPT4gdC5wYXRoKS5qb2luKCcvJyk7XHJcbiAgICAgICAgdGhpcy5CYXNlUGF0aCA9IFwiL1wiICsgc2Vnc1swXS5wYXRoO1xyXG5cclxuICAgICAgICB0aGlzLkludGVybmFsTmF2aWdhdGlvbiA9IF9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5kYXRhW1wiaW50ZXJuYWxOYXZpZ2F0aW9uXCJdIHx8IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuTmF2aWdhdGlvblRpdGxlID0gX2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFbXCJ0aXRsZVwiXSB8fCBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBuYXZpZ2F0ZShjb21tYW5kOiBhbnlbXSwgZXh0cmFzPzogYW55KSB7XHJcbiAgICAgICAgbGV0IGNvbW1hbmRzID0gY29tbWFuZDtcclxuXHJcbiAgICAgICAgLy8gRml4IGRlbGxhIHBhdGggZXNhdHRhbWVudGUgY29tZSBpbiBlc1JvdXRlckxpbmtcclxuICAgICAgICBjb21tYW5kcyA9IEFycmF5LmlzQXJyYXkoY29tbWFuZHMpID8gY29tbWFuZHMgOiBbY29tbWFuZHNdO1xyXG4gICAgICAgIGxldCByb3V0ZSA9IChjb21tYW5kc1swXSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmICghcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIEVNQkVEREVEX1JPVVRFKSAmJiAhcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIFJPVVRFKSlcclxuICAgICAgICAgICAgY29tbWFuZHNbMF0gPSB0aGlzLkJhc2VQYXRoICsgY29tbWFuZHNbMF07XHJcblxyXG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShjb21tYW5kLCBleHRyYXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2soKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2VtYi5FbWJlZGRlZCkge1xyXG4gICAgICAgICAgICB0aGlzLl9lbWIuTWFpbldpbmRvdy5wb3N0TWVzc2FnZSh7IHR5cGU6IFwibmF2aWdhdGUtYmFja1wiIH0sIFwiKlwiKTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7IHRoaXMuX2xvY2F0aW9uLmJhY2soKTsgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLl9sb2NhdGlvbi5iYWNrKCk7XHJcbiAgICB9XHJcbn0iXX0=
@@ -8,6 +8,8 @@ export class ReactiveComponent {
8
8
  this.Subscriptions = [];
9
9
  this.destroyed$ = new ReplaySubject(1);
10
10
  }
11
+ // TODO: Check
12
+ //takeUntilDestroyed = new pipe(() => takeUntil(this.destroyed$))
11
13
  ngOnDestroy() {
12
14
  this.destroyed$.next(true);
13
15
  this.destroyed$.complete();
@@ -23,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
23
25
  type: Component,
24
26
  args: [{ template: '' }]
25
27
  }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9iYXNlL3JlYWN0aXZlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxrQ0FBa0M7QUFDbEMsT0FBTyxFQUFFLGFBQWEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7O0FBR25ELE1BQU0sT0FBZ0IsaUJBQWlCO0lBRHZDO1FBR2Msa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ25DLGVBQVUsR0FBMkIsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FZdkU7SUFWRyxXQUFXO1FBQ1AsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWE7WUFDbkIsT0FBTztRQUVYLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs4R0FkaUIsaUJBQWlCO2tHQUFqQixpQkFBaUIsb0RBRGhCLEVBQUU7MkZBQ0gsaUJBQWlCO2tCQUR0QyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIERpcmV0dGl2ZSwgQ29tcG9uZW50aSwgTGlicmVyaWVcclxuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlYWN0aXZlQ29tcG9uZW50IHtcclxuXHJcbiAgICBwcm90ZWN0ZWQgU3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICAgIHByb3RlY3RlZCBkZXN0cm95ZWQkOiBSZXBsYXlTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFJlcGxheVN1YmplY3QoMSk7XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5TdWJzY3JpcHRpb25zKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5TdWJzY3JpcHRpb25zLmxlbmd0aDsgaSsrKVxyXG4gICAgICAgICAgICB0aGlzLlN1YnNjcmlwdGlvbnNbaV0udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxufSJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3NyYy9iYXNlL3JlYWN0aXZlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxVQUFVO0FBQ1YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxrQ0FBa0M7QUFDbEMsT0FBTyxFQUFFLGFBQWEsRUFBcUMsTUFBTSxNQUFNLENBQUM7O0FBR3hFLE1BQU0sT0FBZ0IsaUJBQWlCO0lBRHZDO1FBR2Msa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ25DLGVBQVUsR0FBMkIsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FldkU7SUFiRyxjQUFjO0lBQ2QsaUVBQWlFO0lBRWpFLFdBQVc7UUFDUCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTNCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYTtZQUNuQixPQUFPO1FBRVgsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVDLENBQUM7OzhHQWpCaUIsaUJBQWlCO2tHQUFqQixpQkFBaUIsb0RBRGhCLEVBQUU7MkZBQ0gsaUJBQWlCO2tCQUR0QyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vIERpcmV0dGl2ZSwgQ29tcG9uZW50aSwgTGlicmVyaWVcclxuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uLyosIHBpcGUsIHRha2VVbnRpbCovIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlYWN0aXZlQ29tcG9uZW50IHtcclxuXHJcbiAgICBwcm90ZWN0ZWQgU3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICAgIHByb3RlY3RlZCBkZXN0cm95ZWQkOiBSZXBsYXlTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFJlcGxheVN1YmplY3QoMSk7XHJcblxyXG4gICAgLy8gVE9ETzogQ2hlY2tcclxuICAgIC8vdGFrZVVudGlsRGVzdHJveWVkID0gbmV3IHBpcGUoKCkgPT4gdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5TdWJzY3JpcHRpb25zKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5TdWJzY3JpcHRpb25zLmxlbmd0aDsgaSsrKVxyXG4gICAgICAgICAgICB0aGlzLlN1YnNjcmlwdGlvbnNbaV0udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxufSJdfQ==
@@ -4,18 +4,18 @@ import { NgModule } from "@angular/core";
4
4
  import { Draggable } from "./draggable/draggable.directive";
5
5
  import { SlimScroll } from "./slim-scroll/slim-scroll.directive";
6
6
  import { Widget } from "./widget/widget.directive";
7
- import { EsRouterLink } from "./es-routerLink/es-routerLink.directive";
7
+ import { esRouterLinkWithHref } from "./es-routerLink/es-routerLink.directive";
8
8
  import { ComponentHostDirective } from "./componentHost/componentHost.directive";
9
9
  import { EsModalDirective } from "./es-modal/es-modal.directive";
10
10
  import * as i0 from "@angular/core";
11
- const DIRECTIVES = [Draggable, SlimScroll, Widget, EsRouterLink, ComponentHostDirective, EsModalDirective];
11
+ const DIRECTIVES = [Draggable, SlimScroll, Widget, esRouterLinkWithHref, ComponentHostDirective, EsModalDirective];
12
12
  export class DirectivesModule {
13
13
  }
14
14
  DirectivesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- DirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DirectivesModule, imports: [Draggable, SlimScroll, Widget, EsRouterLink, ComponentHostDirective, EsModalDirective], exports: [Draggable, SlimScroll, Widget, EsRouterLink, ComponentHostDirective, EsModalDirective] });
15
+ DirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DirectivesModule, imports: [Draggable, SlimScroll, Widget, esRouterLinkWithHref, ComponentHostDirective, EsModalDirective], exports: [Draggable, SlimScroll, Widget, esRouterLinkWithHref, ComponentHostDirective, EsModalDirective] });
16
16
  DirectivesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DirectivesModule });
17
17
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DirectivesModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{ imports: [...DIRECTIVES], exports: [...DIRECTIVES] }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2RpcmVjdGl2ZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLFlBQVk7QUFDWixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRWpFLE1BQU0sVUFBVSxHQUFHLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFHM0csTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLFlBSFQsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixhQUFyRixTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCOzhHQUc1RixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsUUFBUTttQkFBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gRGlyZXR0aXZlXHJcbmltcG9ydCB7IERyYWdnYWJsZSB9IGZyb20gXCIuL2RyYWdnYWJsZS9kcmFnZ2FibGUuZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7IFNsaW1TY3JvbGwgfSBmcm9tIFwiLi9zbGltLXNjcm9sbC9zbGltLXNjcm9sbC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgV2lkZ2V0IH0gZnJvbSBcIi4vd2lkZ2V0L3dpZGdldC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgRXNSb3V0ZXJMaW5rIH0gZnJvbSBcIi4vZXMtcm91dGVyTGluay9lcy1yb3V0ZXJMaW5rLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRIb3N0RGlyZWN0aXZlIH0gZnJvbSBcIi4vY29tcG9uZW50SG9zdC9jb21wb25lbnRIb3N0LmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQgeyBFc01vZGFsRGlyZWN0aXZlIH0gZnJvbSBcIi4vZXMtbW9kYWwvZXMtbW9kYWwuZGlyZWN0aXZlXCI7XHJcblxyXG5jb25zdCBESVJFQ1RJVkVTID0gW0RyYWdnYWJsZSwgU2xpbVNjcm9sbCwgV2lkZ2V0LCBFc1JvdXRlckxpbmssIENvbXBvbmVudEhvc3REaXJlY3RpdmUsIEVzTW9kYWxEaXJlY3RpdmVdO1xyXG5cclxuQE5nTW9kdWxlKHsgaW1wb3J0czogWy4uLkRJUkVDVElWRVNdLCBleHBvcnRzOiBbLi4uRElSRUNUSVZFU10gfSlcclxuZXhwb3J0IGNsYXNzIERpcmVjdGl2ZXNNb2R1bGUgeyB9Il19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2RpcmVjdGl2ZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLFlBQVk7QUFDWixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFakUsTUFBTSxVQUFVLEdBQUcsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0FBR25ILE1BQU0sT0FBTyxnQkFBZ0I7OzZHQUFoQixnQkFBZ0I7OEdBQWhCLGdCQUFnQixZQUhULFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixhQUE3RixTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxvQkFBb0IsRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0I7OEdBR3BHLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixRQUFRO21CQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBEaXJldHRpdmVcclxuaW1wb3J0IHsgRHJhZ2dhYmxlIH0gZnJvbSBcIi4vZHJhZ2dhYmxlL2RyYWdnYWJsZS5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgU2xpbVNjcm9sbCB9IGZyb20gXCIuL3NsaW0tc2Nyb2xsL3NsaW0tc2Nyb2xsLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQgeyBXaWRnZXQgfSBmcm9tIFwiLi93aWRnZXQvd2lkZ2V0LmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQgeyBlc1JvdXRlckxpbmtXaXRoSHJlZiB9IGZyb20gXCIuL2VzLXJvdXRlckxpbmsvZXMtcm91dGVyTGluay5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50SG9zdERpcmVjdGl2ZSB9IGZyb20gXCIuL2NvbXBvbmVudEhvc3QvY29tcG9uZW50SG9zdC5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHsgRXNNb2RhbERpcmVjdGl2ZSB9IGZyb20gXCIuL2VzLW1vZGFsL2VzLW1vZGFsLmRpcmVjdGl2ZVwiO1xyXG5cclxuY29uc3QgRElSRUNUSVZFUyA9IFtEcmFnZ2FibGUsIFNsaW1TY3JvbGwsIFdpZGdldCwgZXNSb3V0ZXJMaW5rV2l0aEhyZWYsIENvbXBvbmVudEhvc3REaXJlY3RpdmUsIEVzTW9kYWxEaXJlY3RpdmVdO1xyXG5cclxuQE5nTW9kdWxlKHsgaW1wb3J0czogWy4uLkRJUkVDVElWRVNdLCBleHBvcnRzOiBbLi4uRElSRUNUSVZFU10gfSlcclxuZXhwb3J0IGNsYXNzIERpcmVjdGl2ZXNNb2R1bGUgeyB9Il19
@@ -1,38 +1,46 @@
1
- import { Attribute, Directive, Input } from "@angular/core";
2
- import { RouterLink } from "@angular/router";
1
+ import { Attribute, Directive, HostListener, Input } from "@angular/core";
2
+ import { RouterLinkWithHref } from "@angular/router";
3
3
  import { EMBEDDED_ROUTE, ROUTE } from "@esfaenza/core/domain";
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@esfaenza/extensions";
6
6
  import * as i2 from "@angular/router";
7
7
  import * as i3 from "@angular/common";
8
- export class EsRouterLink extends RouterLink {
8
+ export class esRouterLinkWithHref extends RouterLinkWithHref {
9
9
  constructor(emb, router, route, tabIndexAttribute, renderer, el, locationStrategy) {
10
10
  super(router, route, tabIndexAttribute, renderer, el, locationStrategy);
11
11
  this.emb = emb;
12
12
  }
13
13
  set esRouterLink(commands) {
14
- // Sarebbe bello poterlo de-cablare e prenderle dal Basecomponent.
15
- // In quel caso è onere del BaseComponent iniettare la BasePath, il problema è che è una classe astratta e i provider non vengono valutati...
16
14
  let BasePath = "/" + (this.emb.Embedded ? EMBEDDED_ROUTE : ROUTE);
17
15
  if (commands != null) {
18
16
  this.commands = Array.isArray(commands) ? commands : [commands];
19
17
  let route = this.commands[0];
20
18
  if (!route.startsWith("/" + EMBEDDED_ROUTE) && !route.startsWith("/" + ROUTE))
21
19
  this.commands[0] = BasePath + this.commands[0];
22
- this.setTabIndexIfNotOnNativeEl('0');
23
20
  }
24
21
  else {
25
22
  this.commands = null;
26
- this.setTabIndexIfNotOnNativeEl(null);
27
23
  }
28
24
  }
25
+ onClick(button, ctrlKey, shiftKey, altKey, metaKey) {
26
+ if (this.emb.Embedded) {
27
+ let url = this.urlTree.toString().replace(EMBEDDED_ROUTE, ROUTE + "/" + myconfig.AppData.ModuleId);
28
+ this.emb.MainWindow.postMessage({ type: "navigate", url, newTab: ctrlKey, replaceState: !ctrlKey }, "*");
29
+ if (!ctrlKey)
30
+ return super.onClick(button, ctrlKey, shiftKey, altKey, metaKey);
31
+ else
32
+ return false;
33
+ }
34
+ else
35
+ return super.onClick(button, ctrlKey, shiftKey, altKey, metaKey);
36
+ }
29
37
  }
30
- EsRouterLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsRouterLink, deps: [{ token: i1.AppEmbeddingExtensions }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive });
31
- EsRouterLink.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: EsRouterLink, isStandalone: true, selector: "[esRouterLink]", inputs: { esRouterLink: "esRouterLink" }, usesInheritance: true, ngImport: i0 });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EsRouterLink, decorators: [{
38
+ esRouterLinkWithHref.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: esRouterLinkWithHref, deps: [{ token: i1.AppEmbeddingExtensions }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: 'tabindex', attribute: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3.LocationStrategy }], target: i0.ɵɵFactoryTarget.Directive });
39
+ esRouterLinkWithHref.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: esRouterLinkWithHref, isStandalone: true, selector: "a[esRouterLink],area[esRouterLink]", inputs: { esRouterLink: "esRouterLink" }, host: { listeners: { "click": "onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)" } }, usesInheritance: true, ngImport: i0 });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: esRouterLinkWithHref, decorators: [{
33
41
  type: Directive,
34
42
  args: [{
35
- selector: "[esRouterLink]",
43
+ selector: 'a[esRouterLink],area[esRouterLink]',
36
44
  standalone: true
37
45
  }]
38
46
  }], ctorParameters: function () { return [{ type: i1.AppEmbeddingExtensions }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: undefined, decorators: [{
@@ -40,5 +48,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
40
48
  args: ['tabindex']
41
49
  }] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i3.LocationStrategy }]; }, propDecorators: { esRouterLink: [{
42
50
  type: Input
51
+ }], onClick: [{
52
+ type: HostListener,
53
+ args: ['click', ['$event.button', '$event.ctrlKey', '$event.shiftKey', '$event.altKey', '$event.metaKey']]
43
54
  }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcm91dGVyTGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2VzLXJvdXRlckxpbmsvZXMtcm91dGVyTGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFROUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxVQUFVO0lBRXhDLFlBQ1ksR0FBMkIsRUFDbkMsTUFBYyxFQUFFLEtBQXFCLEVBQ2QsaUJBQTRDLEVBQ25FLFFBQW1CLEVBQUUsRUFBYyxFQUNuQyxnQkFBbUM7UUFFbkMsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBTi9ELFFBQUcsR0FBSCxHQUFHLENBQXdCO0lBT3ZDLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxRQUEyQztRQUN4RCxtRUFBbUU7UUFDbkUsNklBQTZJO1FBQzdJLElBQUksUUFBUSxHQUFHLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxFLElBQUksUUFBUSxJQUFJLElBQUksRUFBRTtZQUNqQixJQUFZLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6RSxJQUFJLEtBQUssR0FBSyxJQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBWSxDQUFDO1lBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztnQkFDeEUsSUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUksSUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwRSxJQUFZLENBQUMsMEJBQTBCLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDakQ7YUFBTTtZQUNGLElBQVksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBQzdCLElBQVksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsRDtJQUNMLENBQUM7O3lHQTVCUSxZQUFZLDRHQUtOLFVBQVU7NkZBTGhCLFlBQVk7MkZBQVosWUFBWTtrQkFKeEIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OzBCQU1RLFNBQVM7MkJBQUMsVUFBVTs0SEFRckIsWUFBWTtzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBMb2NhdGlvblN0cmF0ZWd5IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBBdHRyaWJ1dGUsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlckxpbmsgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IEVNQkVEREVEX1JPVVRFLCBST1VURSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIjtcclxuaW1wb3J0IHsgQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2VzUm91dGVyTGlua11cIixcclxuICAgIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzUm91dGVyTGluayBleHRlbmRzIFJvdXRlckxpbmsge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgZW1iOiBBcHBFbWJlZGRpbmdFeHRlbnNpb25zLFxyXG4gICAgICAgIHJvdXRlcjogUm91dGVyLCByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgQEF0dHJpYnV0ZSgndGFiaW5kZXgnKSB0YWJJbmRleEF0dHJpYnV0ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcclxuICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLCBlbDogRWxlbWVudFJlZixcclxuICAgICAgICBsb2NhdGlvblN0cmF0ZWd5PzogTG9jYXRpb25TdHJhdGVneSkge1xyXG5cclxuICAgICAgICBzdXBlcihyb3V0ZXIsIHJvdXRlLCB0YWJJbmRleEF0dHJpYnV0ZSwgcmVuZGVyZXIsIGVsLCBsb2NhdGlvblN0cmF0ZWd5KVxyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgZXNSb3V0ZXJMaW5rKGNvbW1hbmRzOiBhbnlbXSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcclxuICAgICAgICAvLyBTYXJlYmJlIGJlbGxvIHBvdGVybG8gZGUtY2FibGFyZSBlIHByZW5kZXJsZSBkYWwgQmFzZWNvbXBvbmVudC4gXHJcbiAgICAgICAgLy8gSW4gcXVlbCBjYXNvIMOoIG9uZXJlIGRlbCBCYXNlQ29tcG9uZW50IGluaWV0dGFyZSBsYSBCYXNlUGF0aCwgaWwgcHJvYmxlbWEgw6ggY2hlIMOoIHVuYSBjbGFzc2UgYXN0cmF0dGEgZSBpIHByb3ZpZGVyIG5vbiB2ZW5nb25vIHZhbHV0YXRpLi4uXHJcbiAgICAgICAgbGV0IEJhc2VQYXRoID0gXCIvXCIgKyAodGhpcy5lbWIuRW1iZWRkZWQgPyBFTUJFRERFRF9ST1VURSA6IFJPVVRFKTtcclxuXHJcbiAgICAgICAgaWYgKGNvbW1hbmRzICE9IG51bGwpIHtcclxuICAgICAgICAgICAgKHRoaXMgYXMgYW55KS5jb21tYW5kcyA9IEFycmF5LmlzQXJyYXkoY29tbWFuZHMpID8gY29tbWFuZHMgOiBbY29tbWFuZHNdO1xyXG4gICAgICAgICAgICBsZXQgcm91dGUgPSAoKHRoaXMgYXMgYW55KS5jb21tYW5kc1swXSBhcyBzdHJpbmcpO1xyXG4gICAgICAgICAgICBpZiAoIXJvdXRlLnN0YXJ0c1dpdGgoXCIvXCIgKyBFTUJFRERFRF9ST1VURSkgJiYgIXJvdXRlLnN0YXJ0c1dpdGgoXCIvXCIgKyBST1VURSkpXHJcbiAgICAgICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzWzBdID0gQmFzZVBhdGggKyAodGhpcyBhcyBhbnkpLmNvbW1hbmRzWzBdO1xyXG4gICAgICAgICAgICAodGhpcyBhcyBhbnkpLnNldFRhYkluZGV4SWZOb3RPbk5hdGl2ZUVsKCcwJyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgKHRoaXMgYXMgYW55KS5jb21tYW5kcyA9IG51bGw7XHJcbiAgICAgICAgICAgICh0aGlzIGFzIGFueSkuc2V0VGFiSW5kZXhJZk5vdE9uTmF0aXZlRWwobnVsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcm91dGVyTGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2VzLXJvdXRlckxpbmsvZXMtcm91dGVyTGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQTBCLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBYyxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFTMUUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGtCQUFrQjtJQUV4RCxZQUNZLEdBQTJCLEVBQ25DLE1BQWMsRUFBRSxLQUFxQixFQUNkLGlCQUE0QyxFQUNuRSxRQUFtQixFQUFFLEVBQWMsRUFDbkMsZ0JBQW1DO1FBRW5DLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTtRQU4vRCxRQUFHLEdBQUgsR0FBRyxDQUF3QjtJQU92QyxDQUFDO0lBRUQsSUFDSSxZQUFZLENBQUMsUUFBMkM7UUFDeEQsSUFBSSxRQUFRLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbEUsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFO1lBQ2pCLElBQVksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3pFLElBQUksS0FBSyxHQUFLLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFZLENBQUM7WUFDbEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO2dCQUN4RSxJQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsR0FBSSxJQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3hFO2FBQU07WUFDRixJQUFZLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUNqQztJQUNMLENBQUM7SUFHUSxPQUFPLENBQUMsTUFBYyxFQUFFLE9BQWdCLEVBQUUsUUFBaUIsRUFBRSxNQUFlLEVBQUUsT0FBZ0I7UUFDbkcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ25HLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFekcsSUFBSSxDQUFDLE9BQU87Z0JBQ1IsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQzs7Z0JBRWpFLE9BQU8sS0FBSyxDQUFDO1NBQ3BCOztZQUVHLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekUsQ0FBQzs7aUhBdkNRLG9CQUFvQiw0R0FLZCxVQUFVO3FHQUxoQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0NBQW9DO29CQUM5QyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OzBCQU1RLFNBQVM7MkJBQUMsVUFBVTs0SEFRckIsWUFBWTtzQkFEZixLQUFLO2dCQWVHLE9BQU87c0JBRGYsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBMb2NhdGlvblN0cmF0ZWd5IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBBdHRyaWJ1dGUsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciwgUm91dGVyTGlua1dpdGhIcmVmIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBFTUJFRERFRF9ST1VURSwgRW52T3B0aW9ucywgUk9VVEUgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvZG9tYWluXCI7XHJcbmltcG9ydCB7IEFwcEVtYmVkZGluZ0V4dGVuc2lvbnMgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuXHJcbmRlY2xhcmUgdmFyIG15Y29uZmlnOiBFbnZPcHRpb25zO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ2FbZXNSb3V0ZXJMaW5rXSxhcmVhW2VzUm91dGVyTGlua10nLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgZXNSb3V0ZXJMaW5rV2l0aEhyZWYgZXh0ZW5kcyBSb3V0ZXJMaW5rV2l0aEhyZWYge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgZW1iOiBBcHBFbWJlZGRpbmdFeHRlbnNpb25zLFxyXG4gICAgICAgIHJvdXRlcjogUm91dGVyLCByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgQEF0dHJpYnV0ZSgndGFiaW5kZXgnKSB0YWJJbmRleEF0dHJpYnV0ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcclxuICAgICAgICByZW5kZXJlcjogUmVuZGVyZXIyLCBlbDogRWxlbWVudFJlZixcclxuICAgICAgICBsb2NhdGlvblN0cmF0ZWd5PzogTG9jYXRpb25TdHJhdGVneSkge1xyXG5cclxuICAgICAgICBzdXBlcihyb3V0ZXIsIHJvdXRlLCB0YWJJbmRleEF0dHJpYnV0ZSwgcmVuZGVyZXIsIGVsLCBsb2NhdGlvblN0cmF0ZWd5KVxyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgZXNSb3V0ZXJMaW5rKGNvbW1hbmRzOiBhbnlbXSB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcclxuICAgICAgICBsZXQgQmFzZVBhdGggPSBcIi9cIiArICh0aGlzLmVtYi5FbWJlZGRlZCA/IEVNQkVEREVEX1JPVVRFIDogUk9VVEUpO1xyXG5cclxuICAgICAgICBpZiAoY29tbWFuZHMgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShjb21tYW5kcykgPyBjb21tYW5kcyA6IFtjb21tYW5kc107XHJcbiAgICAgICAgICAgIGxldCByb3V0ZSA9ICgodGhpcyBhcyBhbnkpLmNvbW1hbmRzWzBdIGFzIHN0cmluZyk7XHJcbiAgICAgICAgICAgIGlmICghcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIEVNQkVEREVEX1JPVVRFKSAmJiAhcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIFJPVVRFKSlcclxuICAgICAgICAgICAgICAgICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF0gPSBCYXNlUGF0aCArICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgKHRoaXMgYXMgYW55KS5jb21tYW5kcyA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQuYnV0dG9uJywgJyRldmVudC5jdHJsS2V5JywgJyRldmVudC5zaGlmdEtleScsICckZXZlbnQuYWx0S2V5JywgJyRldmVudC5tZXRhS2V5J10pXHJcbiAgICBvdmVycmlkZSBvbkNsaWNrKGJ1dHRvbjogbnVtYmVyLCBjdHJsS2V5OiBib29sZWFuLCBzaGlmdEtleTogYm9vbGVhbiwgYWx0S2V5OiBib29sZWFuLCBtZXRhS2V5OiBib29sZWFuKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHRoaXMuZW1iLkVtYmVkZGVkKSB7XHJcbiAgICAgICAgICAgIGxldCB1cmwgPSB0aGlzLnVybFRyZWUudG9TdHJpbmcoKS5yZXBsYWNlKEVNQkVEREVEX1JPVVRFLCBST1VURSArIFwiL1wiICsgbXljb25maWcuQXBwRGF0YS5Nb2R1bGVJZCk7XHJcbiAgICAgICAgICAgIHRoaXMuZW1iLk1haW5XaW5kb3cucG9zdE1lc3NhZ2UoeyB0eXBlOiBcIm5hdmlnYXRlXCIsIHVybCwgbmV3VGFiOiBjdHJsS2V5LCByZXBsYWNlU3RhdGU6ICFjdHJsS2V5IH0sIFwiKlwiKTtcclxuXHJcbiAgICAgICAgICAgIGlmICghY3RybEtleSlcclxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5vbkNsaWNrKGJ1dHRvbiwgY3RybEtleSwgc2hpZnRLZXksIGFsdEtleSwgbWV0YUtleSk7XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gc3VwZXIub25DbGljayhidXR0b24sIGN0cmxLZXksIHNoaWZ0S2V5LCBhbHRLZXksIG1ldGFLZXkpO1xyXG4gICAgfVxyXG59Il19