@esfaenza/core 15.2.310 → 15.2.311

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.
@@ -5,6 +5,7 @@ import { AppEmbeddingExtensions } from "@esfaenza/extensions";
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class esRouterLinkWithHref extends RouterLinkWithHref {
7
7
  private emb;
8
+ private EmbeddingSource;
8
9
  constructor(emb: AppEmbeddingExtensions, router: Router, route: ActivatedRoute, tabIndexAttribute: string | null | undefined, renderer: Renderer2, el: ElementRef, locationStrategy?: LocationStrategy);
9
10
  set esRouterLink(commands: any[] | string | null | undefined);
10
11
  onClick(button: number, ctrlKey: boolean, shiftKey: boolean, altKey: boolean, metaKey: boolean): boolean;
@@ -13,6 +13,7 @@ export class esRouterLinkWithHref extends RouterLinkWithHref {
13
13
  }
14
14
  set esRouterLink(commands) {
15
15
  this.emb.EmbeddingSource.pipe(take(1)).subscribe(s => {
16
+ this.EmbeddingSource = s;
16
17
  if (this.emb.Embedded && !s)
17
18
  console.error("Link creato in contesto di embedding ma senza embedding source!!");
18
19
  let BasePath = "/" + (this.emb.Embedded ? EMBEDDED_ROUTE + (!!s ? "/" + s : "") : ROUTE);
@@ -29,7 +30,7 @@ export class esRouterLinkWithHref extends RouterLinkWithHref {
29
30
  }
30
31
  onClick(button, ctrlKey, shiftKey, altKey, metaKey) {
31
32
  if (this.emb.Embedded) {
32
- let url = this.urlTree.toString().replace(EMBEDDED_ROUTE, ROUTE + "/embed/" + myconfig.AppData.ModuleId);
33
+ let url = this.urlTree.toString().replace(EMBEDDED_ROUTE + (!!this.EmbeddingSource ? "/" + this.EmbeddingSource : ""), ROUTE + "/embed/" + myconfig.AppData.ModuleId);
33
34
  this.emb.MainWindow.postMessage({ type: "navigate", url, newTab: ctrlKey, replaceState: !ctrlKey, current: this.router.url }, "*");
34
35
  if (!ctrlKey)
35
36
  return super.onClick(button, ctrlKey, shiftKey, altKey, metaKey);
@@ -57,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
57
58
  type: HostListener,
58
59
  args: ['click', ['$event.button', '$event.ctrlKey', '$event.shiftKey', '$event.altKey', '$event.metaKey']]
59
60
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcm91dGVyTGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2VzLXJvdXRlckxpbmsvZXMtcm91dGVyTGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQTBCLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBYyxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQVE1QixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBRXhELFlBQ1ksR0FBMkIsRUFDbkMsTUFBYyxFQUFFLEtBQXFCLEVBQ2QsaUJBQTRDLEVBQ25FLFFBQW1CLEVBQUUsRUFBYyxFQUNuQyxnQkFBbUM7UUFFbkMsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBTi9ELFFBQUcsR0FBSCxHQUFHLENBQXdCO0lBT3ZDLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxRQUEyQztRQUV4RCxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pELElBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO2dCQUN0QixPQUFPLENBQUMsS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7WUFFdEYsSUFBSSxRQUFRLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUV4RixJQUFJLFFBQVEsSUFBSSxJQUFJLEVBQUU7Z0JBQ2pCLElBQVksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN6RSxJQUFJLEtBQUssR0FBSyxJQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBWSxDQUFDO2dCQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7b0JBQ3hFLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFJLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDeEU7aUJBQU07Z0JBQ0YsSUFBWSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7YUFDakM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFHUSxPQUFPLENBQUMsTUFBYyxFQUFFLE9BQWdCLEVBQUUsUUFBaUIsRUFBRSxNQUFlLEVBQUUsT0FBZ0I7UUFDbkcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxHQUFHLFNBQVMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3pHLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRyxJQUFrQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUVsSyxJQUFJLENBQUMsT0FBTztnQkFDUixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDOztnQkFFakUsT0FBTyxLQUFLLENBQUM7U0FDcEI7O1lBRUcsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDOztrSEE3Q1Esb0JBQW9CLDRHQUtkLFVBQVU7c0dBTGhCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQ0FBb0M7b0JBQzlDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7MEJBTVEsU0FBUzsyQkFBQyxVQUFVOzRIQVFyQixZQUFZO3NCQURmLEtBQUs7Z0JBcUJHLE9BQU87c0JBRGYsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBMb2NhdGlvblN0cmF0ZWd5IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBBdHRyaWJ1dGUsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciwgUm91dGVyTGlua1dpdGhIcmVmIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBFTUJFRERFRF9ST1VURSwgRW52T3B0aW9ucywgUk9VVEUgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvZG9tYWluXCI7XHJcbmltcG9ydCB7IEFwcEVtYmVkZGluZ0V4dGVuc2lvbnMgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuaW1wb3J0IHsgdGFrZSB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5kZWNsYXJlIHZhciBteWNvbmZpZzogRW52T3B0aW9ucztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdhW2VzUm91dGVyTGlua10sYXJlYVtlc1JvdXRlckxpbmtdJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIGVzUm91dGVyTGlua1dpdGhIcmVmIGV4dGVuZHMgUm91dGVyTGlua1dpdGhIcmVmIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGVtYjogQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyxcclxuICAgICAgICByb3V0ZXI6IFJvdXRlciwgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgICAgIEBBdHRyaWJ1dGUoJ3RhYmluZGV4JykgdGFiSW5kZXhBdHRyaWJ1dGU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgcmVuZGVyZXI6IFJlbmRlcmVyMiwgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgbG9jYXRpb25TdHJhdGVneT86IExvY2F0aW9uU3RyYXRlZ3kpIHtcclxuXHJcbiAgICAgICAgc3VwZXIocm91dGVyLCByb3V0ZSwgdGFiSW5kZXhBdHRyaWJ1dGUsIHJlbmRlcmVyLCBlbCwgbG9jYXRpb25TdHJhdGVneSlcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGVzUm91dGVyTGluayhjb21tYW5kczogYW55W10gfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcblxyXG4gICAgICAgIHRoaXMuZW1iLkVtYmVkZGluZ1NvdXJjZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzID0+IHtcclxuICAgICAgICAgICAgaWYodGhpcy5lbWIuRW1iZWRkZWQgJiYgIXMpXHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFwiTGluayBjcmVhdG8gaW4gY29udGVzdG8gZGkgZW1iZWRkaW5nIG1hIHNlbnphIGVtYmVkZGluZyBzb3VyY2UhIVwiKTtcclxuXHJcbiAgICAgICAgICAgIGxldCBCYXNlUGF0aCA9IFwiL1wiICsgKHRoaXMuZW1iLkVtYmVkZGVkID8gRU1CRURERURfUk9VVEUgKyAoISFzPyBcIi9cIiArIHMgOiBcIlwiKSA6IFJPVVRFKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChjb21tYW5kcyAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShjb21tYW5kcykgPyBjb21tYW5kcyA6IFtjb21tYW5kc107XHJcbiAgICAgICAgICAgICAgICBsZXQgcm91dGUgPSAoKHRoaXMgYXMgYW55KS5jb21tYW5kc1swXSBhcyBzdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgRU1CRURERURfUk9VVEUpICYmICFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgUk9VVEUpKVxyXG4gICAgICAgICAgICAgICAgICAgICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF0gPSBCYXNlUGF0aCArICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudC5idXR0b24nLCAnJGV2ZW50LmN0cmxLZXknLCAnJGV2ZW50LnNoaWZ0S2V5JywgJyRldmVudC5hbHRLZXknLCAnJGV2ZW50Lm1ldGFLZXknXSlcclxuICAgIG92ZXJyaWRlIG9uQ2xpY2soYnV0dG9uOiBudW1iZXIsIGN0cmxLZXk6IGJvb2xlYW4sIHNoaWZ0S2V5OiBib29sZWFuLCBhbHRLZXk6IGJvb2xlYW4sIG1ldGFLZXk6IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodGhpcy5lbWIuRW1iZWRkZWQpIHtcclxuICAgICAgICAgICAgbGV0IHVybCA9IHRoaXMudXJsVHJlZS50b1N0cmluZygpLnJlcGxhY2UoRU1CRURERURfUk9VVEUsIFJPVVRFICsgXCIvZW1iZWQvXCIgKyBteWNvbmZpZy5BcHBEYXRhLk1vZHVsZUlkKTtcclxuICAgICAgICAgICAgdGhpcy5lbWIuTWFpbldpbmRvdy5wb3N0TWVzc2FnZSh7IHR5cGU6IFwibmF2aWdhdGVcIiwgdXJsLCBuZXdUYWI6IGN0cmxLZXksIHJlcGxhY2VTdGF0ZTogIWN0cmxLZXksIGN1cnJlbnQ6ICh0aGlzIGFzIGFueSBhcyB7IHJvdXRlcjogUm91dGVyIH0pLnJvdXRlci51cmwgfSwgXCIqXCIpO1xyXG5cclxuICAgICAgICAgICAgaWYgKCFjdHJsS2V5KVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN1cGVyLm9uQ2xpY2soYnV0dG9uLCBjdHJsS2V5LCBzaGlmdEtleSwgYWx0S2V5LCBtZXRhS2V5KTtcclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHJldHVybiBzdXBlci5vbkNsaWNrKGJ1dHRvbiwgY3RybEtleSwgc2hpZnRLZXksIGFsdEtleSwgbWV0YUtleSk7XHJcbiAgICB9XHJcbn0iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcm91dGVyTGluay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2RpcmVjdGl2ZXMvc3JjL2VzLXJvdXRlckxpbmsvZXMtcm91dGVyTGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQTBCLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBYyxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQVE1QixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBSXhELFlBQ1ksR0FBMkIsRUFDbkMsTUFBYyxFQUFFLEtBQXFCLEVBQ2QsaUJBQTRDLEVBQ25FLFFBQW1CLEVBQUUsRUFBYyxFQUNuQyxnQkFBbUM7UUFFbkMsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBTi9ELFFBQUcsR0FBSCxHQUFHLENBQXdCO0lBT3ZDLENBQUM7SUFFRCxJQUNJLFlBQVksQ0FBQyxRQUEyQztRQUV4RCxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pELElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDO1lBRXpCLElBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO2dCQUN0QixPQUFPLENBQUMsS0FBSyxDQUFDLGtFQUFrRSxDQUFDLENBQUM7WUFFdEYsSUFBSSxRQUFRLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUV4RixJQUFJLFFBQVEsSUFBSSxJQUFJLEVBQUU7Z0JBQ2pCLElBQVksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN6RSxJQUFJLEtBQUssR0FBSyxJQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBWSxDQUFDO2dCQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7b0JBQ3hFLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFJLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDeEU7aUJBQU07Z0JBQ0YsSUFBWSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7YUFDakM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFHUSxPQUFPLENBQUMsTUFBYyxFQUFFLE9BQWdCLEVBQUUsUUFBaUIsRUFBRSxNQUFlLEVBQUUsT0FBZ0I7UUFFbkcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQSxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssR0FBRyxTQUFTLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNySyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUcsSUFBa0MsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFbEssSUFBSSxDQUFDLE9BQU87Z0JBQ1IsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQzs7Z0JBRWpFLE9BQU8sS0FBSyxDQUFDO1NBQ3BCOztZQUVHLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekUsQ0FBQzs7a0hBbERRLG9CQUFvQiw0R0FPZCxVQUFVO3NHQVBoQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0NBQW9DO29CQUM5QyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7OzBCQVFRLFNBQVM7MkJBQUMsVUFBVTs0SEFRckIsWUFBWTtzQkFEZixLQUFLO2dCQXVCRyxPQUFPO3NCQURmLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgTG9jYXRpb25TdHJhdGVneSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgQXR0cmlidXRlLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIsIFJvdXRlckxpbmtXaXRoSHJlZiB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgRU1CRURERURfUk9VVEUsIEVudk9wdGlvbnMsIFJPVVRFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiO1xyXG5pbXBvcnQgeyBBcHBFbWJlZGRpbmdFeHRlbnNpb25zIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcbmltcG9ydCB7IHRha2UgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuZGVjbGFyZSB2YXIgbXljb25maWc6IEVudk9wdGlvbnM7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnYVtlc1JvdXRlckxpbmtdLGFyZWFbZXNSb3V0ZXJMaW5rXScsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBlc1JvdXRlckxpbmtXaXRoSHJlZiBleHRlbmRzIFJvdXRlckxpbmtXaXRoSHJlZiB7XHJcblxyXG4gICAgcHJpdmF0ZSBFbWJlZGRpbmdTb3VyY2U6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGVtYjogQXBwRW1iZWRkaW5nRXh0ZW5zaW9ucyxcclxuICAgICAgICByb3V0ZXI6IFJvdXRlciwgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgICAgIEBBdHRyaWJ1dGUoJ3RhYmluZGV4JykgdGFiSW5kZXhBdHRyaWJ1dGU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgcmVuZGVyZXI6IFJlbmRlcmVyMiwgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgbG9jYXRpb25TdHJhdGVneT86IExvY2F0aW9uU3RyYXRlZ3kpIHtcclxuXHJcbiAgICAgICAgc3VwZXIocm91dGVyLCByb3V0ZSwgdGFiSW5kZXhBdHRyaWJ1dGUsIHJlbmRlcmVyLCBlbCwgbG9jYXRpb25TdHJhdGVneSlcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGVzUm91dGVyTGluayhjb21tYW5kczogYW55W10gfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcblxyXG4gICAgICAgIHRoaXMuZW1iLkVtYmVkZGluZ1NvdXJjZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzID0+IHtcclxuICAgICAgICAgICAgdGhpcy5FbWJlZGRpbmdTb3VyY2UgPSBzO1xyXG5cclxuICAgICAgICAgICAgaWYodGhpcy5lbWIuRW1iZWRkZWQgJiYgIXMpXHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFwiTGluayBjcmVhdG8gaW4gY29udGVzdG8gZGkgZW1iZWRkaW5nIG1hIHNlbnphIGVtYmVkZGluZyBzb3VyY2UhIVwiKTtcclxuXHJcbiAgICAgICAgICAgIGxldCBCYXNlUGF0aCA9IFwiL1wiICsgKHRoaXMuZW1iLkVtYmVkZGVkID8gRU1CRURERURfUk9VVEUgKyAoISFzPyBcIi9cIiArIHMgOiBcIlwiKSA6IFJPVVRFKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChjb21tYW5kcyAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShjb21tYW5kcykgPyBjb21tYW5kcyA6IFtjb21tYW5kc107XHJcbiAgICAgICAgICAgICAgICBsZXQgcm91dGUgPSAoKHRoaXMgYXMgYW55KS5jb21tYW5kc1swXSBhcyBzdHJpbmcpO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgRU1CRURERURfUk9VVEUpICYmICFyb3V0ZS5zdGFydHNXaXRoKFwiL1wiICsgUk9VVEUpKVxyXG4gICAgICAgICAgICAgICAgICAgICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF0gPSBCYXNlUGF0aCArICh0aGlzIGFzIGFueSkuY29tbWFuZHNbMF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAodGhpcyBhcyBhbnkpLmNvbW1hbmRzID0gbnVsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudC5idXR0b24nLCAnJGV2ZW50LmN0cmxLZXknLCAnJGV2ZW50LnNoaWZ0S2V5JywgJyRldmVudC5hbHRLZXknLCAnJGV2ZW50Lm1ldGFLZXknXSlcclxuICAgIG92ZXJyaWRlIG9uQ2xpY2soYnV0dG9uOiBudW1iZXIsIGN0cmxLZXk6IGJvb2xlYW4sIHNoaWZ0S2V5OiBib29sZWFuLCBhbHRLZXk6IGJvb2xlYW4sIG1ldGFLZXk6IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5lbWIuRW1iZWRkZWQpIHtcclxuICAgICAgICAgICAgbGV0IHVybCA9IHRoaXMudXJsVHJlZS50b1N0cmluZygpLnJlcGxhY2UoRU1CRURERURfUk9VVEUgKyAoISF0aGlzLkVtYmVkZGluZ1NvdXJjZT8gXCIvXCIgKyB0aGlzLkVtYmVkZGluZ1NvdXJjZSA6IFwiXCIpLCBST1VURSArIFwiL2VtYmVkL1wiICsgbXljb25maWcuQXBwRGF0YS5Nb2R1bGVJZCk7XHJcbiAgICAgICAgICAgIHRoaXMuZW1iLk1haW5XaW5kb3cucG9zdE1lc3NhZ2UoeyB0eXBlOiBcIm5hdmlnYXRlXCIsIHVybCwgbmV3VGFiOiBjdHJsS2V5LCByZXBsYWNlU3RhdGU6ICFjdHJsS2V5LCBjdXJyZW50OiAodGhpcyBhcyBhbnkgYXMgeyByb3V0ZXI6IFJvdXRlciB9KS5yb3V0ZXIudXJsIH0sIFwiKlwiKTtcclxuXHJcbiAgICAgICAgICAgIGlmICghY3RybEtleSlcclxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5vbkNsaWNrKGJ1dHRvbiwgY3RybEtleSwgc2hpZnRLZXksIGFsdEtleSwgbWV0YUtleSk7XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gc3VwZXIub25DbGljayhidXR0b24sIGN0cmxLZXksIHNoaWZ0S2V5LCBhbHRLZXksIG1ldGFLZXkpO1xyXG4gICAgfVxyXG59Il19