@esfaenza/core 15.2.11 → 15.2.13

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.
@@ -10,7 +10,9 @@ export declare abstract class BaseComponent extends ReactiveComponent {
10
10
  };
11
11
  protected InternalNavigation: boolean;
12
12
  protected NavigationTitle: string;
13
+ private _router;
13
14
  constructor(injector: Injector);
15
+ protected navigate(command: any[], extras?: any): void;
14
16
  static ɵfac: i0.ɵɵFactoryDeclaration<BaseComponent, never>;
15
17
  static ɵcmp: i0.ɵɵComponentDeclaration<BaseComponent, "ng-component", never, {}, {}, never, never, false, never>;
16
18
  }
@@ -1,11 +1,12 @@
1
1
  // Angular
2
2
  import { Component } from "@angular/core";
3
- import { ActivatedRoute } from "@angular/router";
3
+ import { ActivatedRoute, Router } from "@angular/router";
4
4
  // Direttive, Componenti, Librerie
5
5
  import { takeUntil } from "rxjs/operators";
6
6
  // Core
7
7
  import { AppState } from "@esfaenza/core/services";
8
8
  import { ReactiveComponent } from "./reactive.component";
9
+ import { EMBEDDED_ROUTE, ROUTE } from "@esfaenza/core/domain";
9
10
  import * as i0 from "@angular/core";
10
11
  export class BaseComponent extends ReactiveComponent {
11
12
  constructor(injector) {
@@ -13,6 +14,7 @@ export class BaseComponent extends ReactiveComponent {
13
14
  this.NavigationParameters = null;
14
15
  let _activatedRoute = injector.get(ActivatedRoute);
15
16
  let _state = injector.get(AppState);
17
+ this._router = injector.get(Router);
16
18
  _state.registerNavigationIfMeaningful(_activatedRoute.snapshot);
17
19
  // Parametri in maniera "dinamica"
18
20
  _activatedRoute.params.pipe(takeUntil(this.destroyed$)).subscribe(t => { this.NavigationParameters = t; });
@@ -34,6 +36,15 @@ export class BaseComponent extends ReactiveComponent {
34
36
  tmpWindow = tmpWindow.parent;
35
37
  tmpWindow.postMessage({ type: "navigation", url: this.CompletePath, internalNavigation: this.InternalNavigation, title: this.NavigationTitle }, "*");
36
38
  }
39
+ navigate(command, extras) {
40
+ let commands = command;
41
+ // Fix della path esattamente come in esRouterLink
42
+ commands = Array.isArray(commands) ? commands : [commands];
43
+ let route = commands[0];
44
+ if (!route.startsWith("/" + EMBEDDED_ROUTE) && !route.startsWith("/" + ROUTE))
45
+ commands[0] = this.BasePath + commands[0];
46
+ this._router.navigate(command, extras);
47
+ }
37
48
  }
38
49
  BaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
39
50
  BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: BaseComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
@@ -43,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
43
54
  template: ''
44
55
  }]
45
56
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3JjL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBbUIsTUFBTSxpQkFBaUIsQ0FBQztBQUVsRSxrQ0FBa0M7QUFDbEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU87QUFDUCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBS3pELE1BQU0sT0FBZ0IsYUFBYyxTQUFRLGlCQUFpQjtJQW9CekQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLEVBQUUsQ0FBQztRQVBGLHlCQUFvQixHQUErQixJQUFJLENBQUM7UUFTOUQsSUFBSSxlQUFlLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsSUFBSSxNQUFNLEdBQWEsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxNQUFNLENBQUMsOEJBQThCLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWhFLGtDQUFrQztRQUNsQyxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRTFHLHFEQUFxRDtRQUNyRCxJQUFJLElBQUksR0FBMkIsZUFBZSxDQUFDLFFBQVMsQ0FBQyxXQUFZLENBQUMsUUFBUSxDQUFDO1FBQ25GLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRW5DLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEtBQUssQ0FBQztRQUN2RixJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVwRSwwRkFBMEY7UUFDMUYsK0dBQStHO1FBQy9HLElBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFDeEMsT0FBTztRQUVYLDRFQUE0RTtRQUM1RSxJQUFJLFNBQVMsR0FBMkMsTUFBTSxDQUFDO1FBQy9ELDBFQUEwRTtRQUMxRSxPQUFPLFNBQVMsQ0FBQyxNQUFNLElBQUksU0FBUztZQUNoQyxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQztRQUVqQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN6SixDQUFDOzswR0FwRGlCLGFBQWE7OEZBQWIsYUFBYSwyRUFGckIsRUFBRTsyRkFFTSxhQUFhO2tCQUhsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxFQUFFO2lCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFVybFNlZ21lbnRHcm91cCB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuXHJcbi8vIERpcmV0dGl2ZSwgQ29tcG9uZW50aSwgTGlicmVyaWVcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG4vLyBDb3JlXHJcbmltcG9ydCB7IEFwcFN0YXRlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL3NlcnZpY2VzXCI7XHJcblxyXG5pbXBvcnQgeyBSZWFjdGl2ZUNvbXBvbmVudCB9IGZyb20gXCIuL3JlYWN0aXZlLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnQgZXh0ZW5kcyBSZWFjdGl2ZUNvbXBvbmVudCB7XHJcblxyXG4gICAgLypcclxuICAgICAqIEJsb2NjbyBkaSBpbmZvcm1hemlvbmkgc3VsbGEgcm91dGUgYXR0dWFsZVxyXG4gICAgICogICAgICBSb3V0ZTogL3BhZ2VzL21vZHVsZS9jb21wb25lbnQ7aWRNb2RlbD0xMjNcclxuICAgICAqICAgICAgXHJcbiAgICAgKiAgICAgIENvbXBsZXRlUGF0aDogL3BhZ2VzL21vZHVsZS9jb21wb25lbnRcclxuICAgICAqICAgICAgQ29tcG9uZW50UGF0aDogbW9kdWxlL2NvbXBvbmVudFxyXG4gICAgICogICAgICBCYXNlUGF0aDogL3BhZ2VzIChlcXVpdmFsZW50ZSBhIFJPVVRFIG8gRU1CRURERURfUk9VVEUpXHJcbiAgICAgKiAgICAgIFBhcmFtZXRlcnM6IHsgXCJpZE1vZGVsXCIgOiBcIjEyM1wiIH1cclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIENvbXBsZXRlUGF0aDogc3RyaW5nO1xyXG4gICAgcHJvdGVjdGVkIENvbXBvbmVudFBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBCYXNlUGF0aDogc3RyaW5nO1xyXG4gICAgcHJvdGVjdGVkIE5hdmlnYXRpb25QYXJhbWV0ZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSA9IG51bGw7XHJcblxyXG4gICAgLy8gSW5mb3JtYXppb25pIHByZXNlIGRhaSBkYXRpIGV4dHJhIGRlbGxhIHJvdXRlXHJcbiAgICBwcm90ZWN0ZWQgSW50ZXJuYWxOYXZpZ2F0aW9uOiBib29sZWFuO1xyXG4gICAgcHJvdGVjdGVkIE5hdmlnYXRpb25UaXRsZTogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcblxyXG4gICAgICAgIGxldCBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlID0gaW5qZWN0b3IuZ2V0KEFjdGl2YXRlZFJvdXRlKTtcclxuICAgICAgICBsZXQgX3N0YXRlOiBBcHBTdGF0ZSA9IGluamVjdG9yLmdldChBcHBTdGF0ZSk7XHJcblxyXG4gICAgICAgIF9zdGF0ZS5yZWdpc3Rlck5hdmlnYXRpb25JZk1lYW5pbmdmdWwoX2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90KTtcclxuXHJcbiAgICAgICAgLy8gUGFyYW1ldHJpIGluIG1hbmllcmEgXCJkaW5hbWljYVwiXHJcbiAgICAgICAgX2FjdGl2YXRlZFJvdXRlLnBhcmFtcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUodCA9PiB7IHRoaXMuTmF2aWdhdGlvblBhcmFtZXRlcnMgPSB0OyB9KVxyXG5cclxuICAgICAgICAvLyBUdXR0byBpbCByZXN0byBpbiBtYW5pZXJhIHN0YXRpY2EgdGFudG8gbm9uIGNhbWJpYVxyXG4gICAgICAgIGxldCBzZWdzID0gKDxVcmxTZWdtZW50R3JvdXA+KDxhbnk+X2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90KS5fdXJsU2VnbWVudCkuc2VnbWVudHM7XHJcbiAgICAgICAgdGhpcy5Db21wbGV0ZVBhdGggPSBcIi9cIiArIHNlZ3MubWFwKHQgPT4gdC5wYXRoKS5qb2luKCcvJyk7XHJcbiAgICAgICAgdGhpcy5Db21wb25lbnRQYXRoID0gXCIvXCIgKyBzZWdzLmZpbHRlcigodCwgaSkgPT4gaSAhPSAwKS5tYXAodCA9PiB0LnBhdGgpLmpvaW4oJy8nKTtcclxuICAgICAgICB0aGlzLkJhc2VQYXRoID0gXCIvXCIgKyBzZWdzWzBdLnBhdGg7XHJcblxyXG4gICAgICAgIHRoaXMuSW50ZXJuYWxOYXZpZ2F0aW9uID0gX2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFbXCJpbnRlcm5hbE5hdmlnYXRpb25cIl0gfHwgZmFsc2U7XHJcbiAgICAgICAgdGhpcy5OYXZpZ2F0aW9uVGl0bGUgPSBfYWN0aXZhdGVkUm91dGUuc25hcHNob3QuZGF0YVtcInRpdGxlXCJdIHx8IFwiXCI7XHJcblxyXG4gICAgICAgIC8vIFBlciBpIGNvbXBvbmVudGkgbmF2aWdhYmlsaSBub24gZW1iZWRkYXRpIMOoIGludXRpbGUgbWFuZGFyZSBpbCBtZXNzYWdnaW8gZGkgbmF2aWdhemlvbmVcclxuICAgICAgICAvLyBDb3PDrCBjb21lIHBlciBxdWVsbGkgcGVyIGN1aSBub24gZXNpc3RlIHVuIHRpdG9sbyAoY2lvw6ggY29tcG9lbm50aSB2ZXJzbyBjdWkgbm9uIHNpIMOoIG5hdmlnYXRvIGRpcmV0dGFtZW50ZSlcclxuICAgICAgICBpZighX3N0YXRlLkVtYmVkZGVkIHx8ICF0aGlzLk5hdmlnYXRpb25UaXRsZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICAvLyBTZSBzb25vIGRlbnRybyB1biBpZnJhbWUgcmlzYWxnbyBhIHF1ZWxsbyBkaSBsaXZlbGxvIHBpw7kgYWx0byBpbiBhc3NvbHV0b1xyXG4gICAgICAgIGxldCB0bXBXaW5kb3cgPSA8eyBwYXJlbnQ6IGFueSwgcG9zdE1lc3NhZ2U6IEZ1bmN0aW9uIH0+d2luZG93O1xyXG4gICAgICAgIC8vIFF1YW5kbyBpbCBwYXJlbnQgbm9uIGVzaXN0ZSB3aW5kb3cuIHBhcmVudCDDqCB1biByaWZlcmltZW50byBhIHNlIHN0ZXNzb1xyXG4gICAgICAgIHdoaWxlICh0bXBXaW5kb3cucGFyZW50ICE9IHRtcFdpbmRvdylcclxuICAgICAgICAgICAgdG1wV2luZG93ID0gdG1wV2luZG93LnBhcmVudDtcclxuXHJcbiAgICAgICAgdG1wV2luZG93LnBvc3RNZXNzYWdlKHsgdHlwZTogXCJuYXZpZ2F0aW9uXCIsIHVybDogdGhpcy5Db21wbGV0ZVBhdGgsIGludGVybmFsTmF2aWdhdGlvbjogdGhpcy5JbnRlcm5hbE5hdmlnYXRpb24sIHRpdGxlOiB0aGlzLk5hdmlnYXRpb25UaXRsZSB9LCBcIipcIik7XHJcbiAgICB9XHJcbn0iXX0=
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvc3JjL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQW1CLE1BQU0saUJBQWlCLENBQUM7QUFFMUUsa0NBQWtDO0FBQ2xDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPO0FBQ1AsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBSzlELE1BQU0sT0FBZ0IsYUFBYyxTQUFRLGlCQUFpQjtJQXNCekQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLEVBQUUsQ0FBQztRQVRGLHlCQUFvQixHQUErQixJQUFJLENBQUM7UUFXOUQsSUFBSSxlQUFlLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbkUsSUFBSSxNQUFNLEdBQWEsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFcEMsTUFBTSxDQUFDLDhCQUE4QixDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVoRSxrQ0FBa0M7UUFDbEMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUUxRyxxREFBcUQ7UUFDckQsSUFBSSxJQUFJLEdBQTJCLGVBQWUsQ0FBQyxRQUFTLENBQUMsV0FBWSxDQUFDLFFBQVEsQ0FBQztRQUNuRixJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUVuQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxLQUFLLENBQUM7UUFDdkYsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFcEUsMEZBQTBGO1FBQzFGLCtHQUErRztRQUMvRyxJQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlO1lBQ3hDLE9BQU87UUFFWCw0RUFBNEU7UUFDNUUsSUFBSSxTQUFTLEdBQTJDLE1BQU0sQ0FBQztRQUMvRCwwRUFBMEU7UUFDMUUsT0FBTyxTQUFTLENBQUMsTUFBTSxJQUFJLFNBQVM7WUFDaEMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFFakMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekosQ0FBQztJQUVTLFFBQVEsQ0FBQyxPQUFjLEVBQUUsTUFBWTtRQUMzQyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFFdkIsa0RBQWtEO1FBQ2xELFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0QsSUFBSSxLQUFLLEdBQUksUUFBUSxDQUFDLENBQUMsQ0FBWSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztZQUN6RSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7OzBHQW5FaUIsYUFBYTs4RkFBYixhQUFhLDJFQUZyQixFQUFFOzJGQUVNLGFBQWE7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLEVBQUU7aUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBVcmxTZWdtZW50R3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcblxyXG4vLyBEaXJldHRpdmUsIENvbXBvbmVudGksIExpYnJlcmllXHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuLy8gQ29yZVxyXG5pbXBvcnQgeyBBcHBTdGF0ZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9zZXJ2aWNlc1wiO1xyXG5cclxuaW1wb3J0IHsgUmVhY3RpdmVDb21wb25lbnQgfSBmcm9tIFwiLi9yZWFjdGl2ZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRU1CRURERURfUk9VVEUsIFJPVVRFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnQgZXh0ZW5kcyBSZWFjdGl2ZUNvbXBvbmVudCB7XHJcblxyXG4gICAgLypcclxuICAgICAqIEJsb2NjbyBkaSBpbmZvcm1hemlvbmkgc3VsbGEgcm91dGUgYXR0dWFsZVxyXG4gICAgICogICAgICBSb3V0ZTogL3BhZ2VzL21vZHVsZS9jb21wb25lbnQ7aWRNb2RlbD0xMjNcclxuICAgICAqICAgICAgXHJcbiAgICAgKiAgICAgIENvbXBsZXRlUGF0aDogL3BhZ2VzL21vZHVsZS9jb21wb25lbnRcclxuICAgICAqICAgICAgQ29tcG9uZW50UGF0aDogbW9kdWxlL2NvbXBvbmVudFxyXG4gICAgICogICAgICBCYXNlUGF0aDogL3BhZ2VzIChlcXVpdmFsZW50ZSBhIFJPVVRFIG8gRU1CRURERURfUk9VVEUpXHJcbiAgICAgKiAgICAgIFBhcmFtZXRlcnM6IHsgXCJpZE1vZGVsXCIgOiBcIjEyM1wiIH1cclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIENvbXBsZXRlUGF0aDogc3RyaW5nO1xyXG4gICAgcHJvdGVjdGVkIENvbXBvbmVudFBhdGg6IHN0cmluZztcclxuICAgIHByb3RlY3RlZCBCYXNlUGF0aDogc3RyaW5nO1xyXG4gICAgcHJvdGVjdGVkIE5hdmlnYXRpb25QYXJhbWV0ZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSA9IG51bGw7XHJcblxyXG4gICAgLy8gSW5mb3JtYXppb25pIHByZXNlIGRhaSBkYXRpIGV4dHJhIGRlbGxhIHJvdXRlXHJcbiAgICBwcm90ZWN0ZWQgSW50ZXJuYWxOYXZpZ2F0aW9uOiBib29sZWFuO1xyXG4gICAgcHJvdGVjdGVkIE5hdmlnYXRpb25UaXRsZTogc3RyaW5nO1xyXG5cclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyO1xyXG4gICAgXHJcbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG5cclxuICAgICAgICBsZXQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSA9IGluamVjdG9yLmdldChBY3RpdmF0ZWRSb3V0ZSk7XHJcbiAgICAgICAgbGV0IF9zdGF0ZTogQXBwU3RhdGUgPSBpbmplY3Rvci5nZXQoQXBwU3RhdGUpO1xyXG4gICAgICAgIHRoaXMuX3JvdXRlciA9IGluamVjdG9yLmdldChSb3V0ZXIpO1xyXG5cclxuICAgICAgICBfc3RhdGUucmVnaXN0ZXJOYXZpZ2F0aW9uSWZNZWFuaW5nZnVsKF9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdCk7XHJcblxyXG4gICAgICAgIC8vIFBhcmFtZXRyaSBpbiBtYW5pZXJhIFwiZGluYW1pY2FcIlxyXG4gICAgICAgIF9hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHQgPT4geyB0aGlzLk5hdmlnYXRpb25QYXJhbWV0ZXJzID0gdDsgfSlcclxuXHJcbiAgICAgICAgLy8gVHV0dG8gaWwgcmVzdG8gaW4gbWFuaWVyYSBzdGF0aWNhIHRhbnRvIG5vbiBjYW1iaWFcclxuICAgICAgICBsZXQgc2VncyA9ICg8VXJsU2VnbWVudEdyb3VwPig8YW55Pl9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdCkuX3VybFNlZ21lbnQpLnNlZ21lbnRzO1xyXG4gICAgICAgIHRoaXMuQ29tcGxldGVQYXRoID0gXCIvXCIgKyBzZWdzLm1hcCh0ID0+IHQucGF0aCkuam9pbignLycpO1xyXG4gICAgICAgIHRoaXMuQ29tcG9uZW50UGF0aCA9IFwiL1wiICsgc2Vncy5maWx0ZXIoKHQsIGkpID0+IGkgIT0gMCkubWFwKHQgPT4gdC5wYXRoKS5qb2luKCcvJyk7XHJcbiAgICAgICAgdGhpcy5CYXNlUGF0aCA9IFwiL1wiICsgc2Vnc1swXS5wYXRoO1xyXG5cclxuICAgICAgICB0aGlzLkludGVybmFsTmF2aWdhdGlvbiA9IF9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5kYXRhW1wiaW50ZXJuYWxOYXZpZ2F0aW9uXCJdIHx8IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuTmF2aWdhdGlvblRpdGxlID0gX2FjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFbXCJ0aXRsZVwiXSB8fCBcIlwiO1xyXG5cclxuICAgICAgICAvLyBQZXIgaSBjb21wb25lbnRpIG5hdmlnYWJpbGkgbm9uIGVtYmVkZGF0aSDDqCBpbnV0aWxlIG1hbmRhcmUgaWwgbWVzc2FnZ2lvIGRpIG5hdmlnYXppb25lXHJcbiAgICAgICAgLy8gQ29zw6wgY29tZSBwZXIgcXVlbGxpIHBlciBjdWkgbm9uIGVzaXN0ZSB1biB0aXRvbG8gKGNpb8OoIGNvbXBvZW5udGkgdmVyc28gY3VpIG5vbiBzaSDDqCBuYXZpZ2F0byBkaXJldHRhbWVudGUpXHJcbiAgICAgICAgaWYoIV9zdGF0ZS5FbWJlZGRlZCB8fCAhdGhpcy5OYXZpZ2F0aW9uVGl0bGUpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgLy8gU2Ugc29ubyBkZW50cm8gdW4gaWZyYW1lIHJpc2FsZ28gYSBxdWVsbG8gZGkgbGl2ZWxsbyBwacO5IGFsdG8gaW4gYXNzb2x1dG9cclxuICAgICAgICBsZXQgdG1wV2luZG93ID0gPHsgcGFyZW50OiBhbnksIHBvc3RNZXNzYWdlOiBGdW5jdGlvbiB9PndpbmRvdztcclxuICAgICAgICAvLyBRdWFuZG8gaWwgcGFyZW50IG5vbiBlc2lzdGUgd2luZG93LiBwYXJlbnQgw6ggdW4gcmlmZXJpbWVudG8gYSBzZSBzdGVzc29cclxuICAgICAgICB3aGlsZSAodG1wV2luZG93LnBhcmVudCAhPSB0bXBXaW5kb3cpXHJcbiAgICAgICAgICAgIHRtcFdpbmRvdyA9IHRtcFdpbmRvdy5wYXJlbnQ7XHJcblxyXG4gICAgICAgIHRtcFdpbmRvdy5wb3N0TWVzc2FnZSh7IHR5cGU6IFwibmF2aWdhdGlvblwiLCB1cmw6IHRoaXMuQ29tcGxldGVQYXRoLCBpbnRlcm5hbE5hdmlnYXRpb246IHRoaXMuSW50ZXJuYWxOYXZpZ2F0aW9uLCB0aXRsZTogdGhpcy5OYXZpZ2F0aW9uVGl0bGUgfSwgXCIqXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBuYXZpZ2F0ZShjb21tYW5kOiBhbnlbXSwgZXh0cmFzPzogYW55KSB7XHJcbiAgICAgICAgbGV0IGNvbW1hbmRzID0gY29tbWFuZDtcclxuXHJcbiAgICAgICAgLy8gRml4IGRlbGxhIHBhdGggZXNhdHRhbWVudGUgY29tZSBpbiBlc1JvdXRlckxpbmtcclxuICAgICAgICBjb21tYW5kcyA9IEFycmF5LmlzQXJyYXkoY29tbWFuZHMpID8gY29tbWFuZHMgOiBbY29tbWFuZHNdO1xyXG4gICAgICAgIGxldCByb3V0ZSA9IChjb21tYW5kc1swXSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmICghcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIEVNQkVEREVEX1JPVVRFKSAmJiAhcm91dGUuc3RhcnRzV2l0aChcIi9cIiArIFJPVVRFKSlcclxuICAgICAgICAgICAgY29tbWFuZHNbMF0gPSB0aGlzLkJhc2VQYXRoICsgY29tbWFuZHNbMF07XHJcblxyXG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShjb21tYW5kLCBleHRyYXMpO1xyXG4gICAgfVxyXG59Il19