@esfaenza/es-table 11.2.92 → 11.2.93

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,10 +1,11 @@
1
1
  //Angular
2
- import { Component, Input, Renderer2, ElementRef, ChangeDetectionStrategy } from "@angular/core";
2
+ import { Component, Input, Renderer2, ElementRef, ChangeDetectionStrategy, EventEmitter, Output, ChangeDetectorRef } from "@angular/core";
3
3
  import { DomSanitizer } from '@angular/platform-browser';
4
4
  /** Componente rappresentante una singola cella del body della tabella */
5
5
  export class EsTd {
6
6
  /** @ignore */
7
- constructor(myself, renderer, sanitizer) {
7
+ constructor(cdr, myself, renderer, sanitizer) {
8
+ this.cdr = cdr;
8
9
  this.myself = myself;
9
10
  this.renderer = renderer;
10
11
  this.sanitizer = sanitizer;
@@ -14,6 +15,10 @@ export class EsTd {
14
15
  this.Display = null;
15
16
  /** Template Angular da istanziare per questo TD */
16
17
  this.Template = null;
18
+ /** Quando questa cella viene generata questo evento permette di dire "ehi, sono nato!" */
19
+ this.onCellGeneration = new EventEmitter();
20
+ // Ema commenta grazie
21
+ this.ImAMistake = "";
17
22
  }
18
23
  /**
19
24
  * Imposta la visibilità o meno della cella, si traduce nell'applicazione o rimozione della classe **app-display-none**
@@ -39,21 +44,28 @@ export class EsTd {
39
44
  }
40
45
  /** @ignore */
41
46
  ngAfterViewInit() {
47
+ this.onCellGeneration.emit({ id: this.ID, hash: this.Context, self: this });
42
48
  // Se è Internal significa che è gestita internamente da ES-TABLE quindi evito di fare sti due passaggi di lettura del DOM
43
49
  if (this.Internal)
44
50
  return;
45
51
  this.Content = this.Display === null || this.Display === "" ? this.sanitizer.bypassSecurityTrustHtml(this.myself.nativeElement.innerHTML) : this.sanitizer.bypassSecurityTrustHtml(this.Display);
46
52
  this.Class = this.myself.nativeElement.className.replace("app-display-none", "");
47
53
  }
54
+ validationError(isError, error) {
55
+ this.ImAMistake = isError ? error : "";
56
+ this.cdr.markForCheck();
57
+ }
48
58
  }
49
59
  EsTd.decorators = [
50
60
  { type: Component, args: [{
51
61
  selector: "[es-td]",
52
- template: "<span>\r\n <ng-content></ng-content>\r\n</span>",
53
- changeDetection: ChangeDetectionStrategy.OnPush
62
+ template: "<div style=\"padding: 0.3rem; margin: -0.3rem; box-sizing: border-box !important;\" [class.td-error]=\"!!ImAMistake\" [matTooltip]=\"ImAMistake\">\r\n <ng-content></ng-content>\r\n</div>",
63
+ changeDetection: ChangeDetectionStrategy.OnPush,
64
+ styles: [".td-error{background-color:rgba(255,0,0,.2);box-shadow:inset 0 0 0 1px red}"]
54
65
  },] }
55
66
  ];
56
67
  EsTd.ctorParameters = () => [
68
+ { type: ChangeDetectorRef },
57
69
  { type: ElementRef },
58
70
  { type: Renderer2 },
59
71
  { type: DomSanitizer }
@@ -65,6 +77,7 @@ EsTd.propDecorators = {
65
77
  Display: [{ type: Input }],
66
78
  Template: [{ type: Input }],
67
79
  Context: [{ type: Input }],
80
+ onCellGeneration: [{ type: Output }],
68
81
  Visible: [{ type: Input }]
69
82
  };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNfdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9jb21wb25lbnRzL2VzLXRkL2VzX3RkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxTQUFTO0FBQ1QsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFZLE1BQU0sMkJBQTJCLENBQUM7QUFFbkUseUVBQXlFO0FBTXpFLE1BQU0sT0FBTyxJQUFJO0lBNkJiLGNBQWM7SUFDZCxZQUFvQixNQUFrQixFQUFVLFFBQW1CLEVBQVksU0FBdUI7UUFBbEYsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBWSxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBNUJ0RywyRUFBMkU7UUFDM0QsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQVFoQyw0SEFBNEg7UUFDbkgsWUFBTyxHQUFZLElBQUksQ0FBQztRQUVqQyxtREFBbUQ7UUFDMUMsYUFBUSxHQUFTLElBQUksQ0FBQztJQWUyRSxDQUFDO0lBRTNHOzs7O09BSUc7SUFDSCxJQUFhLE9BQU8sQ0FBQyxVQUFtQjtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUUzQixJQUFJLFVBQVU7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDOztZQUV6RSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFBSSxPQUFPO1FBQ1AsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLFNBQVM7WUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLDBIQUEwSDtRQUMxSCxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQ2IsT0FBTztRQUVYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pNLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRixDQUFDOzs7WUF2RUosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxTQUFTO2dCQUNuQiw4REFBcUM7Z0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2xEOzs7WUFScUMsVUFBVTtZQUFyQixTQUFTO1lBQzNCLFlBQVk7OztpQkFXaEIsS0FBSyxTQUFDLE9BQU87dUJBR2IsS0FBSzt5QkFHTCxLQUFLO3NCQUdMLEtBQUs7dUJBR0wsS0FBSztzQkFTTCxLQUFLO3NCQWFMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvL0FuZ3VsYXJcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgUmVuZGVyZXIyLCBFbGVtZW50UmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbi8qKiBDb21wb25lbnRlIHJhcHByZXNlbnRhbnRlIHVuYSBzaW5nb2xhIGNlbGxhIGRlbCBib2R5IGRlbGxhIHRhYmVsbGEgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJbZXMtdGRdXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2VzX3RkLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNUZCB7XHJcblxyXG4gICAgLyoqIElkIGRlbGxhIGNlbGxhLCBkZXYnZXNzZXJlIGxvIHN0ZXNzbyBkZWxsYSBjb2xvbm5hICoqRXNUaCoqIHJlbGF0aXZhICovXHJcbiAgICBASW5wdXQoJ2VzLXRkJykgSUQ6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSDDqCB1bmEgY2VsbGEgaW50ZXJuYSAocmlnZW5lcmF0YSBwcm9ncmFtbWF0aWNhbWVudGUpIG8gbm8gKi9cclxuICAgIEBJbnB1dCgpIEludGVybmFsPzogYm9vbGVhbjtcclxuXHJcbiAgICAvKiogUm91dGVyTGluayBxdWFsb3JhIGlsIGNsaWNrIHN1IHF1ZXN0YSBjZWxsYSBkZWJiYSBuYXZpZ2FyZSBkYSBxdWFsY2hlIHBhcnRlICovXHJcbiAgICBASW5wdXQoKSBSb3V0ZXJMaW5rPzogYW55O1xyXG5cclxuICAgIC8qKiBWYWxvcmUgZGEgbW9zdHJhcmUgYWxsJ2ludGVybm8gZGVsbGEgY2VsbGEuIFNlIG9tZXNzbyB2ZXJyw6AgcHJvaWV0dGF0byBpbCBjb250ZW51dG8gZGFsIHRlbXBsYXRlIGluIGN1aSDDqCBzdGF0YSB1c2F0YSAqL1xyXG4gICAgQElucHV0KCkgRGlzcGxheT86IHN0cmluZyA9IG51bGw7XHJcblxyXG4gICAgLyoqIFRlbXBsYXRlIEFuZ3VsYXIgZGEgaXN0YW56aWFyZSBwZXIgcXVlc3RvIFREICovXHJcbiAgICBASW5wdXQoKSBUZW1wbGF0ZT86IGFueSA9IG51bGw7XHJcblxyXG4gICAgLyoqIENsYXNzaSBkYSBhcHBsaWNhcmUgYWxsYSBjZWxsYSAqL1xyXG4gICAgcHVibGljIENsYXNzPzogc3RyaW5nO1xyXG5cclxuICAgIC8qKiBDb250ZW51dG8gZGEgbW9zdHJhcmUgcHJvaWV0dGF0byBkYWwgY29tcG9uZW50ZSBwYWRyZSAqL1xyXG4gICAgcHVibGljIENvbnRlbnQ/OiBTYWZlSHRtbDtcclxuXHJcbiAgICAvKiogQ29udGVzdG8gZGVsbCdvZ2dldHRvIGEgY3VpIHNpIHJpZmVyaXNjZSBpbCBkYXRvIHZpc3VhbGl6emF0by4gQ29udGllbmUgbCdoYXNoIGRlbGwnb2dnZXR0byBpbiBxdWVzdGlvbmUgKi9cclxuICAgIEBJbnB1dCgpIENvbnRleHQ6IHN0cmluZztcclxuXHJcbiAgICAvKiogSW5kaWNhemlvbmkgc3VsbGEgdmlzaWJpbGl0w6AgZGVsbGEgY2VsbGEgKi9cclxuICAgIHByaXZhdGUgX1Zpc2libGU/OiBib29sZWFuO1xyXG5cclxuICAgIC8qKiBAaWdub3JlICovXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG15c2VsZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcm90ZWN0ZWQgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW1wb3N0YSBsYSB2aXNpYmlsaXTDoCBvIG1lbm8gZGVsbGEgY2VsbGEsIHNpIHRyYWR1Y2UgbmVsbCdhcHBsaWNhemlvbmUgbyByaW1vemlvbmUgZGVsbGEgY2xhc3NlICoqYXBwLWRpc3BsYXktbm9uZSoqXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gZXhwcmVzc2lvbiBJbmRpY2F6aW9uZSBkZWxsYSB2aXNpYmlsaXTDoFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBzZXQgVmlzaWJsZShleHByZXNzaW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fVmlzaWJsZSA9IGV4cHJlc3Npb247XHJcblxyXG4gICAgICAgIGlmIChleHByZXNzaW9uKVxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMubXlzZWxmLm5hdGl2ZUVsZW1lbnQsIFwiYXBwLWRpc3BsYXktbm9uZVwiKTtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5teXNlbGYubmF0aXZlRWxlbWVudCwgXCJhcHAtZGlzcGxheS1ub25lXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVzdGl0dWlzY2UgbG8gc3RhdG8gZGkgVmlzaWJpbGl0w6AgZGVsbGEgY2VsbGEgaW4gb2dnZXR0b1xyXG4gICAgICogXHJcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gKip0cnVlKiogc2UgdmlzaWJpbGUsICoqZmFsc2UqKiBhbHRyaW1lbnRpXHJcbiAgICAgKi9cclxuICAgIGdldCBWaXNpYmxlKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICh0aGlzLl9WaXNpYmxlID09IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgdGhpcy5fVmlzaWJsZSA9IHRydWU7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9WaXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBAaWdub3JlICovXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgLy8gU2Ugw6ggSW50ZXJuYWwgc2lnbmlmaWNhIGNoZSDDqCBnZXN0aXRhIGludGVybmFtZW50ZSBkYSBFUy1UQUJMRSBxdWluZGkgZXZpdG8gZGkgZmFyZSBzdGkgZHVlIHBhc3NhZ2dpIGRpIGxldHR1cmEgZGVsIERPTVxyXG4gICAgICAgIGlmICh0aGlzLkludGVybmFsKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgIHRoaXMuQ29udGVudCA9IHRoaXMuRGlzcGxheSA9PT0gbnVsbCB8fCB0aGlzLkRpc3BsYXkgPT09IFwiXCIgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLm15c2VsZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCkgOiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLkRpc3BsYXkpO1xyXG4gICAgICAgIHRoaXMuQ2xhc3MgPSB0aGlzLm15c2VsZi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKFwiYXBwLWRpc3BsYXktbm9uZVwiLCBcIlwiKTtcclxuICAgIH1cclxufSJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNfdGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9jb21wb25lbnRzL2VzLXRkL2VzX3RkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxTQUFTO0FBQ1QsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSx1QkFBdUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFJLE9BQU8sRUFBRSxZQUFZLEVBQVksTUFBTSwyQkFBMkIsQ0FBQztBQUVuRSx5RUFBeUU7QUFPekUsTUFBTSxPQUFPLElBQUk7SUFnQ2IsY0FBYztJQUNkLFlBQW9CLEdBQXNCLEVBQVUsTUFBa0IsRUFBVSxRQUFtQixFQUFZLFNBQXVCO1FBQWxILFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBWSxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBL0J0SSwyRUFBMkU7UUFDM0QsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQVFoQyw0SEFBNEg7UUFDbkgsWUFBTyxHQUFZLElBQUksQ0FBQztRQUVqQyxtREFBbUQ7UUFDMUMsYUFBUSxHQUFTLElBQUksQ0FBQztRQVcvQiwyRkFBMkY7UUFDakYscUJBQWdCLEdBQXlELElBQUksWUFBWSxFQUEwQyxDQUFDO1FBOEM5SSxzQkFBc0I7UUFDZixlQUFVLEdBQVcsRUFBRSxDQUFDO0lBekMyRyxDQUFDO0lBRTNJOzs7O09BSUc7SUFDSCxJQUFhLE9BQU8sQ0FBQyxVQUFtQjtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUUzQixJQUFJLFVBQVU7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDOztZQUV6RSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFBSSxPQUFPO1FBQ1AsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLFNBQVM7WUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1RSwwSEFBMEg7UUFDMUgsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUNiLE9BQU87UUFFWCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqTSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUlELGVBQWUsQ0FBQyxPQUFnQixFQUFFLEtBQWM7UUFDNUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7O1lBcEZKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsU0FBUztnQkFDbkIseU1BQXFDO2dCQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFFbEQ7OztZQVRnRyxpQkFBaUI7WUFBNUUsVUFBVTtZQUFyQixTQUFTO1lBQzNCLFlBQVk7OztpQkFZaEIsS0FBSyxTQUFDLE9BQU87dUJBR2IsS0FBSzt5QkFHTCxLQUFLO3NCQUdMLEtBQUs7dUJBR0wsS0FBSztzQkFTTCxLQUFLOytCQUdMLE1BQU07c0JBYU4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vQW5ndWxhclxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBSZW5kZXJlcjIsIEVsZW1lbnRSZWYsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG4vKiogQ29tcG9uZW50ZSByYXBwcmVzZW50YW50ZSB1bmEgc2luZ29sYSBjZWxsYSBkZWwgYm9keSBkZWxsYSB0YWJlbGxhICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2VzLXRkXVwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9lc190ZC5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdHlsZVVybHM6IFtcImVzX3RkLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc1RkIHtcclxuXHJcbiAgICAvKiogSWQgZGVsbGEgY2VsbGEsIGRldidlc3NlcmUgbG8gc3Rlc3NvIGRlbGxhIGNvbG9ubmEgKipFc1RoKiogcmVsYXRpdmEgKi9cclxuICAgIEBJbnB1dCgnZXMtdGQnKSBJRDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIMOoIHVuYSBjZWxsYSBpbnRlcm5hIChyaWdlbmVyYXRhIHByb2dyYW1tYXRpY2FtZW50ZSkgbyBubyAqL1xyXG4gICAgQElucHV0KCkgSW50ZXJuYWw/OiBib29sZWFuO1xyXG5cclxuICAgIC8qKiBSb3V0ZXJMaW5rIHF1YWxvcmEgaWwgY2xpY2sgc3UgcXVlc3RhIGNlbGxhIGRlYmJhIG5hdmlnYXJlIGRhIHF1YWxjaGUgcGFydGUgKi9cclxuICAgIEBJbnB1dCgpIFJvdXRlckxpbms/OiBhbnk7XHJcblxyXG4gICAgLyoqIFZhbG9yZSBkYSBtb3N0cmFyZSBhbGwnaW50ZXJubyBkZWxsYSBjZWxsYS4gU2Ugb21lc3NvIHZlcnLDoCBwcm9pZXR0YXRvIGlsIGNvbnRlbnV0byBkYWwgdGVtcGxhdGUgaW4gY3VpIMOoIHN0YXRhIHVzYXRhICovXHJcbiAgICBASW5wdXQoKSBEaXNwbGF5Pzogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgICAvKiogVGVtcGxhdGUgQW5ndWxhciBkYSBpc3RhbnppYXJlIHBlciBxdWVzdG8gVEQgKi9cclxuICAgIEBJbnB1dCgpIFRlbXBsYXRlPzogYW55ID0gbnVsbDtcclxuXHJcbiAgICAvKiogQ2xhc3NpIGRhIGFwcGxpY2FyZSBhbGxhIGNlbGxhICovXHJcbiAgICBwdWJsaWMgQ2xhc3M/OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqIENvbnRlbnV0byBkYSBtb3N0cmFyZSBwcm9pZXR0YXRvIGRhbCBjb21wb25lbnRlIHBhZHJlICovXHJcbiAgICBwdWJsaWMgQ29udGVudD86IFNhZmVIdG1sO1xyXG5cclxuICAgIC8qKiBDb250ZXN0byBkZWxsJ29nZ2V0dG8gYSBjdWkgc2kgcmlmZXJpc2NlIGlsIGRhdG8gdmlzdWFsaXp6YXRvLiBDb250aWVuZSBsJ2hhc2ggZGVsbCdvZ2dldHRvIGluIHF1ZXN0aW9uZSAqL1xyXG4gICAgQElucHV0KCkgQ29udGV4dDogc3RyaW5nO1xyXG5cclxuICAgIC8qKiBRdWFuZG8gcXVlc3RhIGNlbGxhIHZpZW5lIGdlbmVyYXRhIHF1ZXN0byBldmVudG8gcGVybWV0dGUgZGkgZGlyZSBcImVoaSwgc29ubyBuYXRvIVwiICAqL1xyXG4gICAgQE91dHB1dCgpIG9uQ2VsbEdlbmVyYXRpb246IEV2ZW50RW1pdHRlcjx7aWQ6IHN0cmluZywgaGFzaDogc3RyaW5nLCBzZWxmOiBFc1RkfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHtpZDogc3RyaW5nLCBoYXNoOiBzdHJpbmcsIHNlbGY6IEVzVGR9PigpO1xyXG5cclxuICAgIC8qKiBJbmRpY2F6aW9uaSBzdWxsYSB2aXNpYmlsaXTDoCBkZWxsYSBjZWxsYSAqL1xyXG4gICAgcHJpdmF0ZSBfVmlzaWJsZT86IGJvb2xlYW47XHJcblxyXG4gICAgLyoqIEBpZ25vcmUgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBteXNlbGY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJvdGVjdGVkIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEltcG9zdGEgbGEgdmlzaWJpbGl0w6AgbyBtZW5vIGRlbGxhIGNlbGxhLCBzaSB0cmFkdWNlIG5lbGwnYXBwbGljYXppb25lIG8gcmltb3ppb25lIGRlbGxhIGNsYXNzZSAqKmFwcC1kaXNwbGF5LW5vbmUqKlxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IGV4cHJlc3Npb24gSW5kaWNhemlvbmUgZGVsbGEgdmlzaWJpbGl0w6BcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgc2V0IFZpc2libGUoZXhwcmVzc2lvbjogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuX1Zpc2libGUgPSBleHByZXNzaW9uO1xyXG5cclxuICAgICAgICBpZiAoZXhwcmVzc2lvbilcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLm15c2VsZi5uYXRpdmVFbGVtZW50LCBcImFwcC1kaXNwbGF5LW5vbmVcIik7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubXlzZWxmLm5hdGl2ZUVsZW1lbnQsIFwiYXBwLWRpc3BsYXktbm9uZVwiKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlc3RpdHVpc2NlIGxvIHN0YXRvIGRpIFZpc2liaWxpdMOgIGRlbGxhIGNlbGxhIGluIG9nZ2V0dG9cclxuICAgICAqIFxyXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59ICoqdHJ1ZSoqIHNlIHZpc2liaWxlLCAqKmZhbHNlKiogYWx0cmltZW50aVxyXG4gICAgICovXHJcbiAgICBnZXQgVmlzaWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodGhpcy5fVmlzaWJsZSA9PSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHRoaXMuX1Zpc2libGUgPSB0cnVlO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fVmlzaWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAvKiogQGlnbm9yZSAqL1xyXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgICAgIHRoaXMub25DZWxsR2VuZXJhdGlvbi5lbWl0KHsgaWQ6IHRoaXMuSUQsIGhhc2g6IHRoaXMuQ29udGV4dCwgc2VsZjogdGhpcyB9KTtcclxuXHJcbiAgICAgICAgLy8gU2Ugw6ggSW50ZXJuYWwgc2lnbmlmaWNhIGNoZSDDqCBnZXN0aXRhIGludGVybmFtZW50ZSBkYSBFUy1UQUJMRSBxdWluZGkgZXZpdG8gZGkgZmFyZSBzdGkgZHVlIHBhc3NhZ2dpIGRpIGxldHR1cmEgZGVsIERPTVxyXG4gICAgICAgIGlmICh0aGlzLkludGVybmFsKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgIHRoaXMuQ29udGVudCA9IHRoaXMuRGlzcGxheSA9PT0gbnVsbCB8fCB0aGlzLkRpc3BsYXkgPT09IFwiXCIgPyB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLm15c2VsZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCkgOiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLkRpc3BsYXkpO1xyXG4gICAgICAgIHRoaXMuQ2xhc3MgPSB0aGlzLm15c2VsZi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKFwiYXBwLWRpc3BsYXktbm9uZVwiLCBcIlwiKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFbWEgY29tbWVudGEgZ3JhemllXHJcbiAgICBwdWJsaWMgSW1BTWlzdGFrZTogc3RyaW5nID0gXCJcIjtcclxuICAgIHZhbGlkYXRpb25FcnJvcihpc0Vycm9yOiBib29sZWFuLCBlcnJvcj86IHN0cmluZykgeyBcclxuICAgICAgICB0aGlzLkltQU1pc3Rha2UgPSBpc0Vycm9yID8gZXJyb3IgOiBcIlwiO1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG59Il19
@@ -119,6 +119,7 @@ export class UtilitiesHandler {
119
119
  delete tmp._selected;
120
120
  delete tmp._visible;
121
121
  delete tmp._hash;
122
+ delete tmp._ordinal;
122
123
  let hash = this.hashExts.hashObject(tmp);
123
124
  usedHashesCache[hash] = usedHashesCache[hash] ? usedHashesCache[hash] + 1 : 1;
124
125
  item._hash = hash + (usedHashesCache[hash] > 1 ? "_" + usedHashesCache[hash] : "");
@@ -153,4 +154,4 @@ UtilitiesHandler.decorators = [
153
154
  UtilitiesHandler.ctorParameters = () => [
154
155
  { type: HashingService }
155
156
  ];
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbGl0aWVzSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXRhYmxlL3NyYy9saWIvY29yZS9oYW5kbGVycy9VdGlsaXRpZXNIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLFdBQVc7QUFDWCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUV0RCwyQ0FBMkM7QUFFM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QiwwQkFBMEI7SUFDMUIsWUFBb0IsUUFBd0I7UUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7SUFBSSxDQUFDO0lBRWpEOzs7Ozs7OztPQVFHO0lBQ0ksT0FBTyxDQUFDLEtBQVksRUFBRSxLQUFhO1FBQ3RDLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBQUEsQ0FBQztJQUVGOzs7O09BSUc7SUFDSSxpQkFBaUIsQ0FBQyxLQUFVO1FBQ3pCLEtBQU0sQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVDLElBQUksYUFBYSxHQUE0QyxLQUFNLENBQUMsa0JBQW1CLENBQUM7UUFDeEYsS0FB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Ii8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBMaWJyZXJpZVxyXG5pbXBvcnQgeyBIYXNoaW5nU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5cclxuLyoqIENsYXNzZSBkaSB1dGlsaXTDoCBwZXIgbGUgY29zZSBjb211bmkgKi9cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFV0aWxpdGllc0hhbmRsZXIge1xyXG5cclxuICAgIC8qKiBAaWdub3JlIENvc3RydXR0b3JlICovXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGhhc2hFeHRzOiBIYXNoaW5nU2VydmljZSkgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEYXRhIHVuYSBsaXN0YSBkaSBvZ2dldHRpIGVmZmV0dHVhIGRlaSByYWdncnVwcGFtZW50aSBpbiBiYXNlIGFsbGEgcHJvcHJpZXTDoCAqKmZpZWxkKiosIFxyXG4gICAgICogcmVzdGl0dWVuZG8gdW4gb2dnZXR0byBkZWwgdGlwbyB7IEdydXBwbzE6IG9nZ2V0dGlbXSwgR3J1cHBvMjogb2dnZXR0aVtdLCBlY2MuLi4gfVxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7YW55W119IGFycmF5IExpc3RhIGRlZ2xpIG9nZ2V0dGkgZGEgcmFnZ3J1cHBhcmVcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBmaWVsZCBDYW1wbyBzdSBjdWkgZWZmZXR0dWFyZSBpIHJhZ2dydXBwYW1lbnRpXHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybnMge3sgW2lkOiBzdHJpbmddOiBhbnlbXSB9fSBEaXppb25hcmlvIGRlaSBncnVwcGlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdyb3VwQnkoYXJyYXk6IGFueVtdLCBmaWVsZDogc3RyaW5nKTogeyBbaWQ6IHN0cmluZ106IGFueVtdOyB9IHtcclxuICAgICAgICBsZXQgcmV0ID0ge307XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBsZXQgeCA9IGFycmF5W2ldO1xyXG4gICAgICAgICAgICAocmV0W3hbZmllbGRdXSA9IHJldFt4W2ZpZWxkXV0gfHwgW10pLnB1c2goeCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXQ7XHJcbiAgICB9O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSGVscGVyIHBlciBlZmZldHR1YXJlIGlsIGNhY2hpbmcgZGVsbGUgYWdncmVnYXppb25pLiBMZSBzcG9zdGEgZGEgdW5hIGxpc3RhIGRpICoqR3JvdXBBZ2dyZWdhdGlvbioqIGEgdW5hICoqPE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcsIHN0cmluZz4+KipcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge2FueX0gZ3JvdXAgR3J1cHBvIGRpIGN1aSBjYWNoYXJlIGxlIGFnZ3JlZ2F6aW9uaVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgY2FjaGVBZ2dyZWdhdGlvbnMoZ3JvdXA6IGFueSkge1xyXG4gICAgICAgICg8YW55Pmdyb3VwKS5fYWdncmVnYXRpb25zQ2FjaGUgPSBuZXcgTWFwKCk7XHJcbiAgICAgICAgbGV0IGNhc3RlZEFnQ2FjaGUgPSAoPE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcsIHN0cmluZz4+Pig8YW55Pmdyb3VwKS5fYWdncmVnYXRpb25zQ2FjaGUpO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ3JvdXAuYWdncmVnYXRpb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGxldCBhZ2cgPSBncm91cC5hZ2dyZWdhdGlvbnNbaV07XHJcbiAgICAgICAgICAgIGlmIChjYXN0ZWRBZ0NhY2hlLmhhcyhhZ2cuY29sdW1uKSlcclxuICAgICAgICAgICAgICAgIGNhc3RlZEFnQ2FjaGUuZ2V0KGFnZy5jb2x1bW4pLnNldChhZ2cuYWdncmVnYXRpb24sIGFnZy52YWx1ZSk7XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbGV0IHRtcDogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXAoKTtcclxuICAgICAgICAgICAgICAgIHRtcC5zZXQoYWdnLmFnZ3JlZ2F0aW9uLCBhZ2cudmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgY2FzdGVkQWdDYWNoZS5zZXQoYWdnLmNvbHVtbiwgdG1wKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiogSGVscGVyIHBlciBzcG9zdGFyZSB1biBvZ2dldHRvIGRpIHVuIGFycmF5IGRhIHVuIGluZGljZSBhbGwnYWx0cm8sIGluIHBsYWNlICovXHJcbiAgICBwdWJsaWMgYXJyYXlNb3ZlKGFycmF5OiBhbnlbXSwgb2xkSTogbnVtYmVyLCBuZXdJOiBudW1iZXIpIHtcclxuICAgICAgICBpZiAobmV3SSA+IGFycmF5Lmxlbmd0aCAtIDEgfHwgb2xkSSA+IGFycmF5Lmxlbmd0aCAtIDEgfHwgbmV3SSA8IDAgfHwgb2xkSSA8IDApXHJcbiAgICAgICAgICAgIHRocm93IFwiR2xpIGluZGljaSBwYXNzYXRpIG5vbiBmYW5ubyByaWZlcmltZW50byBhIHVuYSBwb3NpemlvbmUgZGVsbCdhcnJheS4gTGVuZ3RoOiBcIiArIGFycmF5Lmxlbmd0aCArIFwiIE9sZDpcIiArIG9sZEkgKyBcIiBOZXc6IFwiICsgbmV3STtcclxuXHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKG5ld0ksIDAsIGFycmF5LnNwbGljZShvbGRJLCAxKVswXSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEYXRlIGxlIGluZm9ybWF6aW9uaSBkaSBwYWdpbmF6aW9uZSBvdHRpZW5lIGwnYXJyYXkgZGVpIHB1bHNhbnRpXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IG1heEJ0bnMgTnVtZXJvIG1hc3NpbW8gZGkgcHVsc2FudGkgZGEgdmlzdWFsaXp6YXJlXHJcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gcGFnZSBQYWdpbmEgY29ycmVudGVcclxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsYXN0UGFnZSBVbHRpbWEgcGFnaW5hIGRpc3BvbmliaWxlXHJcbiAgICAgKlxyXG4gICAgICogQHJldHVybnMge2FueVtdfSBQc2V1ZG8tYXJyYXkgZGkgcHVsc2FudGkgYSBjdWkgY2kgc2kgcHXDsiBiaW5kYXJlIGxhdG8gSFRNTFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0UGFnZXNBcnJheShtYXhCdG5zOiBudW1iZXIsIHBhZ2U6IG51bWJlciwgbGFzdFBhZ2U6IG51bWJlciwgYWN0dWFsQ291bnQ6IG51bWJlciA9IG51bGwsIGlwcDogbnVtYmVyID0gbnVsbCk6IGFueVtdIHtcclxuICAgICAgICBsZXQgcmVzdWx0ID0gW107XHJcblxyXG4gICAgICAgIC8vIFNlIHNvbm8gaW4gbW9kYWxpdMOgIFwiTnVtZXJvIGRpIHBhZ2luZSBlZCBvZ2dldHRpIHNjb25vc2NpdXRpXCIgZmFjY2lvIGluIG1vZG8gZGkgbW9zdHJhcmUgbGEgcGFnaW5hIHN1Y2Nlc3NpdmEgc29sbyBzZSBnbGkgaXRlbXMgZWZmZXR0aXZhbWVudGUgcGVydmVudXRpXHJcbiAgICAgICAgLy8gc29ubyB1Z3VhbGkgYWxsYSBwYWdpbmF6aW9uZSBhdHR1YWxlIChjaW/DqCBxdWVzdGEgcGFnaW5hIMOoIGRpIHNpY3VybyByaWVtcGl0YSBjb21wbGV0YW1lbnRlKVxyXG4gICAgICAgIGlmIChsYXN0UGFnZSA9PSAtMSAmJiAoKGFjdHVhbENvdW50ID09IG51bGwgJiYgaXBwID09IG51bGwpIHx8IChhY3R1YWxDb3VudCA9PSBpcHApKSlcclxuICAgICAgICAgICAgbGFzdFBhZ2UgPSBwYWdlICsgMTtcclxuXHJcbiAgICAgICAgLy8gU2Ugc29ubyBpbiBtb2RhbGl0w6AgXCJOdW1lcm8gZGkgcGFnaW5lIGVkIG9nZ2V0dGkgc2Nvbm9zY2l1dGlcIiBlIG1pIGFycml2YW5vIDAgb2dnZXR0aSBzaWduaWZpY2EgY2hlIGwndWx0aW1hIHBhZ2luYSDDqCBsYSBwcmVjZWRlbnRlIGUgbm9uIG1vc3RybyBwYWdpbmUgb2x0cmVcclxuICAgICAgICBpZiAobGFzdFBhZ2UgPT0gLTEgJiYgYWN0dWFsQ291bnQgPT0gMClcclxuICAgICAgICAgICAgbGFzdFBhZ2UgPSBwYWdlO1xyXG5cclxuICAgICAgICBsZXQgbWluLCBtYXg7XHJcbiAgICAgICAgaWYgKGxhc3RQYWdlIDw9IG1heEJ0bnMpIHtcclxuICAgICAgICAgICAgbWluID0gMTtcclxuICAgICAgICAgICAgbWF4ID0gbGFzdFBhZ2UgLSAxO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIHRvbGdvIGxhIHBhZ2luYSBzZWxlY3RlZCDDqCBsJ3VsdGltYSBwYWdpbmEgY2hlIMOoIHF1ZWxsYSBkZWxsZSBwYWdpbmUgdG90YWxpXHJcbiAgICAgICAgICAgIGxldCByYW5nZU91dHNpZGUgPSAobWF4QnRucyAtIDIpIC8gMjtcclxuXHJcbiAgICAgICAgICAgIG1pbiA9IHBhZ2UgLSByYW5nZU91dHNpZGU7XHJcbiAgICAgICAgICAgIG1heCA9IHBhZ2UgKyByYW5nZU91dHNpZGU7XHJcblxyXG4gICAgICAgICAgICBpZiAobWluIDwgMSkge1xyXG4gICAgICAgICAgICAgICAgbWluID0gMTtcclxuICAgICAgICAgICAgICAgIG1heCA9IG1heEJ0bnMgLSAxO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKG1heCA+PSBsYXN0UGFnZSkge1xyXG4gICAgICAgICAgICAgICAgbWluID0gbGFzdFBhZ2UgLSBtYXhCdG5zICsgMTtcclxuICAgICAgICAgICAgICAgIG1heCA9IGxhc3RQYWdlIC0gMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmVzdWx0LnB1c2goeyB2YWw6IDEsIGNzc0NsYXNzOiAoMSA9PT0gcGFnZSA/ICdidG4tbWFpbiBhcHAtd2hpdGUtdGV4dCcgOiAnYXBwLXdoaXRlLWJ1dHRvbicpIH0pO1xyXG5cclxuICAgICAgICBpZiAobWF4ID49IG1pbikge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gbWluOyBpIDw9IG1heDsgaSsrKVxyXG4gICAgICAgICAgICAgICAgaWYgKGkgIT09IDEpXHJcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goeyB2YWw6IGksIGNzc0NsYXNzOiAoaSA9PT0gcGFnZSA/ICdidG4tbWFpbiBhcHAtd2hpdGUtdGV4dCcgOiAnYXBwLXdoaXRlLWJ1dHRvbicpIH0pO1xyXG5cclxuICAgICAgICAgICAgcmVzdWx0LnB1c2goe1xyXG4gICAgICAgICAgICAgICAgdmFsOiBsYXN0UGFnZSxcclxuICAgICAgICAgICAgICAgIGNzc0NsYXNzOiAobGFzdFBhZ2UgPT09IHBhZ2UgPyAnYnRuLW1haW4gYXBwLXdoaXRlLXRleHQnIDogJ2FwcC13aGl0ZS1idXR0b24nKVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGNvbGEgbCdoYXNoIGRpIHVuIG9nZ2V0dG8gcXVhbHNpYXNpXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHthbnlbXX0gaXRlbXMgT2dnZXR0aSBwZXIgY3VpIGNhbGNvbGFyZSBsJ2hhc2hcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNhbGN1bGF0ZUhhc2goaXRlbXM6IGFueVtdKSB7XHJcbiAgICAgICAgaWYgKCFpdGVtcylcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICAvLyBTdXBwb3J0byBhIGhhc2ggZHVwbGljYXRpIGRpIG9nZ2V0dGkgdWd1YWxpXHJcbiAgICAgICAgbGV0IHVzZWRIYXNoZXNDYWNoZTogeyBbaW5kZXg6IHN0cmluZ106IG51bWJlcjsgfSA9IHt9O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IGl0ZW0gPSBpdGVtc1tpXTtcclxuXHJcbiAgICAgICAgICAgIC8vIFByaW1hIGRpIGNhbGNvbGFyZSBsJ2hhc2ggcmltdW92byBsZSBwcm9wcmlldMOgIGludGVybmUgcGVyIGV2aXRhcmUgY2hlIG1pIHNjb21wZW5zaW5vIGkgY2FsY29saSBzdWNjZXNzaXZpXHJcbiAgICAgICAgICAgIGxldCB0bXAgPSBPYmplY3QuYXNzaWduKHt9LCBpdGVtc1tpXSk7XHJcbiAgICAgICAgICAgIGRlbGV0ZSB0bXAuX3NlbGVjdGVkO1xyXG4gICAgICAgICAgICBkZWxldGUgdG1wLl92aXNpYmxlO1xyXG4gICAgICAgICAgICBkZWxldGUgdG1wLl9oYXNoO1xyXG4gICAgICAgICAgICBsZXQgaGFzaCA9IHRoaXMuaGFzaEV4dHMuaGFzaE9iamVjdCh0bXApO1xyXG5cclxuICAgICAgICAgICAgdXNlZEhhc2hlc0NhY2hlW2hhc2hdID0gdXNlZEhhc2hlc0NhY2hlW2hhc2hdID8gdXNlZEhhc2hlc0NhY2hlW2hhc2hdICsgMSA6IDE7XHJcbiAgICAgICAgICAgIGl0ZW0uX2hhc2ggPSBoYXNoICsgKHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA+IDEgPyBcIl9cIiArIHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA6IFwiXCIpO1xyXG4gICAgICAgICAgICBpdGVtLl9vcmRpbmFsID0gaTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAqIFNlIGwnSW5wdXQgw6ggbnVsbCAodmFsb3JlIG5vbiBzZXR0YXRvKSB2ZWRlIHNlIGMnw6ggdW4gZGVmYXVsdCBjb24gY3VpIHZhbG9yaXp6YXJsby4gU2Ugbm9uIGMnw6ggdXRpbGl6emEgaWwgdmFsb3JlIGRpIGZhbGxiYWNrIChxdWFsb3JhIGZvcm5pdG8pXHJcbiAgICAqIFxyXG4gICAgKiBAcGFyYW0ge1R9IGlucHV0VmFsdWUgVmFsb3JlIGRlbGwnSW5wdXRcclxuICAgICogQHBhcmFtIHtUfSBkZWZhdWx0VmFsdWUgVmFsb3JlIGRpIGRlZmF1bHQgaW1wb3N0YXRvIGRhIGNvbmZpZ3VyYXppb25lXHJcbiAgICAqIEBwYXJhbSB7VH0gZmFsbGJhY2tWYWx1ZSBWYWxvcmUgZGVsbCdJbnB1dCBwZXIgcXVhbmRvIG5vbiDDqCBzdGF0byBhc3NlZ25hdG8gZGFsIHByb2dyYW1tYXRvcmUgZSBub24gaGEgdW4gZGVmYXVsdFxyXG4gICAgKi9cclxuICAgIHB1YmxpYyBJbnB1dE9yRGVmYXVsdDxUPihpbnB1dFZhbHVlOiBULCBkZWZhdWx0VmFsdWU6IFQsIGZhbGxiYWNrVmFsdWU/OiBUKSB7XHJcblxyXG4gICAgICAgIC8vIElucHV0IHZhbG9yaXp6YXRvIGRhbCBwcm9ncmFtbWF0b3JlXHJcbiAgICAgICAgaWYgKGlucHV0VmFsdWUgIT0gbnVsbCAmJiBpbnB1dFZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgcmV0dXJuIGlucHV0VmFsdWU7XHJcblxyXG4gICAgICAgIC8vIElucHV0IHZhbG9yaXp6YXRvIGRhIGNvbmZpZ3VyYXppb25lIGdsb2JhbGVcclxuICAgICAgICBpZiAoZGVmYXVsdFZhbHVlICE9IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcclxuXHJcbiAgICAgICAgLy9JbnB1dCBub24gdmFsb3JpenphdG8gZGEgbmllbnRlIGUgZGEgbmVzc3Vub1xyXG4gICAgICAgIGlmIChmYWxsYmFja1ZhbHVlICE9IG51bGwgJiYgZmFsbGJhY2tWYWx1ZSAhPSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHJldHVybiBmYWxsYmFja1ZhbHVlO1xyXG5cclxuICAgICAgICAvLyBJIGNhc2kgaW4gY3VpIHNpIGFycml2YSBxdWkgc29ubyBpIGNhc2kgZGkgSW5wdXQgY2hlIGRpIGRlZmF1bHQgdmEgYmVuZSBjaGUgc2lhbm8gbnVsbGkgZSBjaGUgbmVzc3VubyBzaSBjYWdhXHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbn1cclxuIl19
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbGl0aWVzSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXRhYmxlL3NyYy9saWIvY29yZS9oYW5kbGVycy9VdGlsaXRpZXNIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQVU7QUFDVixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLFdBQVc7QUFDWCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUV0RCwyQ0FBMkM7QUFFM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QiwwQkFBMEI7SUFDMUIsWUFBb0IsUUFBd0I7UUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7SUFBSSxDQUFDO0lBRWpEOzs7Ozs7OztPQVFHO0lBQ0ksT0FBTyxDQUFDLEtBQVksRUFBRSxLQUFhO1FBQ3RDLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBQUEsQ0FBQztJQUVGOzs7O09BSUc7SUFDSSxpQkFBaUIsQ0FBQyxLQUFVO1FBQ3pCLEtBQU0sQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVDLElBQUksYUFBYSxHQUE0QyxLQUFNLENBQUMsa0JBQW1CLENBQUM7UUFDeEYsS0FB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O1lBSHpCLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy8gTGlicmVyaWVcclxuaW1wb3J0IHsgSGFzaGluZ1NlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuXHJcbi8qKiBDbGFzc2UgZGkgdXRpbGl0w6AgcGVyIGxlIGNvc2UgY29tdW5pICovXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBVdGlsaXRpZXNIYW5kbGVyIHtcclxuXHJcbiAgICAvKiogQGlnbm9yZSBDb3N0cnV0dG9yZSAqL1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBoYXNoRXh0czogSGFzaGluZ1NlcnZpY2UpIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGF0YSB1bmEgbGlzdGEgZGkgb2dnZXR0aSBlZmZldHR1YSBkZWkgcmFnZ3J1cHBhbWVudGkgaW4gYmFzZSBhbGxhIHByb3ByaWV0w6AgKipmaWVsZCoqLCBcclxuICAgICAqIHJlc3RpdHVlbmRvIHVuIG9nZ2V0dG8gZGVsIHRpcG8geyBHcnVwcG8xOiBvZ2dldHRpW10sIEdydXBwbzI6IG9nZ2V0dGlbXSwgZWNjLi4uIH1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge2FueVtdfSBhcnJheSBMaXN0YSBkZWdsaSBvZ2dldHRpIGRhIHJhZ2dydXBwYXJlXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gZmllbGQgQ2FtcG8gc3UgY3VpIGVmZmV0dHVhcmUgaSByYWdncnVwcGFtZW50aVxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIHt7IFtpZDogc3RyaW5nXTogYW55W10gfX0gRGl6aW9uYXJpbyBkZWkgZ3J1cHBpXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBncm91cEJ5KGFycmF5OiBhbnlbXSwgZmllbGQ6IHN0cmluZyk6IHsgW2lkOiBzdHJpbmddOiBhbnlbXTsgfSB7XHJcbiAgICAgICAgbGV0IHJldCA9IHt9O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IHggPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgKHJldFt4W2ZpZWxkXV0gPSByZXRbeFtmaWVsZF1dIHx8IFtdKS5wdXNoKHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmV0O1xyXG4gICAgfTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEhlbHBlciBwZXIgZWZmZXR0dWFyZSBpbCBjYWNoaW5nIGRlbGxlIGFnZ3JlZ2F6aW9uaS4gTGUgc3Bvc3RhIGRhIHVuYSBsaXN0YSBkaSAqKkdyb3VwQWdncmVnYXRpb24qKiBhIHVuYSAqKjxNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+PioqXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHthbnl9IGdyb3VwIEdydXBwbyBkaSBjdWkgY2FjaGFyZSBsZSBhZ2dyZWdhemlvbmlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNhY2hlQWdncmVnYXRpb25zKGdyb3VwOiBhbnkpIHtcclxuICAgICAgICAoPGFueT5ncm91cCkuX2FnZ3JlZ2F0aW9uc0NhY2hlID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIGxldCBjYXN0ZWRBZ0NhY2hlID0gKDxNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+Pj4oPGFueT5ncm91cCkuX2FnZ3JlZ2F0aW9uc0NhY2hlKTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyb3VwLmFnZ3JlZ2F0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBsZXQgYWdnID0gZ3JvdXAuYWdncmVnYXRpb25zW2ldO1xyXG4gICAgICAgICAgICBpZiAoY2FzdGVkQWdDYWNoZS5oYXMoYWdnLmNvbHVtbikpXHJcbiAgICAgICAgICAgICAgICBjYXN0ZWRBZ0NhY2hlLmdldChhZ2cuY29sdW1uKS5zZXQoYWdnLmFnZ3JlZ2F0aW9uLCBhZ2cudmFsdWUpO1xyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxldCB0bXA6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwKCk7XHJcbiAgICAgICAgICAgICAgICB0bXAuc2V0KGFnZy5hZ2dyZWdhdGlvbiwgYWdnLnZhbHVlKTtcclxuICAgICAgICAgICAgICAgIGNhc3RlZEFnQ2FjaGUuc2V0KGFnZy5jb2x1bW4sIHRtcCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEhlbHBlciBwZXIgc3Bvc3RhcmUgdW4gb2dnZXR0byBkaSB1biBhcnJheSBkYSB1biBpbmRpY2UgYWxsJ2FsdHJvLCBpbiBwbGFjZSAqL1xyXG4gICAgcHVibGljIGFycmF5TW92ZShhcnJheTogYW55W10sIG9sZEk6IG51bWJlciwgbmV3STogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKG5ld0kgPiBhcnJheS5sZW5ndGggLSAxIHx8IG9sZEkgPiBhcnJheS5sZW5ndGggLSAxIHx8IG5ld0kgPCAwIHx8IG9sZEkgPCAwKVxyXG4gICAgICAgICAgICB0aHJvdyBcIkdsaSBpbmRpY2kgcGFzc2F0aSBub24gZmFubm8gcmlmZXJpbWVudG8gYSB1bmEgcG9zaXppb25lIGRlbGwnYXJyYXkuIExlbmd0aDogXCIgKyBhcnJheS5sZW5ndGggKyBcIiBPbGQ6XCIgKyBvbGRJICsgXCIgTmV3OiBcIiArIG5ld0k7XHJcblxyXG4gICAgICAgIGFycmF5LnNwbGljZShuZXdJLCAwLCBhcnJheS5zcGxpY2Uob2xkSSwgMSlbMF0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGF0ZSBsZSBpbmZvcm1hemlvbmkgZGkgcGFnaW5hemlvbmUgb3R0aWVuZSBsJ2FycmF5IGRlaSBwdWxzYW50aVxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhCdG5zIE51bWVybyBtYXNzaW1vIGRpIHB1bHNhbnRpIGRhIHZpc3VhbGl6emFyZVxyXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2UgUGFnaW5hIGNvcnJlbnRlXHJcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGFzdFBhZ2UgVWx0aW1hIHBhZ2luYSBkaXNwb25pYmlsZVxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIHthbnlbXX0gUHNldWRvLWFycmF5IGRpIHB1bHNhbnRpIGEgY3VpIGNpIHNpIHB1w7IgYmluZGFyZSBsYXRvIEhUTUxcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFBhZ2VzQXJyYXkobWF4QnRuczogbnVtYmVyLCBwYWdlOiBudW1iZXIsIGxhc3RQYWdlOiBudW1iZXIsIGFjdHVhbENvdW50OiBudW1iZXIgPSBudWxsLCBpcHA6IG51bWJlciA9IG51bGwpOiBhbnlbXSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IFtdO1xyXG5cclxuICAgICAgICAvLyBTZSBzb25vIGluIG1vZGFsaXTDoCBcIk51bWVybyBkaSBwYWdpbmUgZWQgb2dnZXR0aSBzY29ub3NjaXV0aVwiIGZhY2NpbyBpbiBtb2RvIGRpIG1vc3RyYXJlIGxhIHBhZ2luYSBzdWNjZXNzaXZhIHNvbG8gc2UgZ2xpIGl0ZW1zIGVmZmV0dGl2YW1lbnRlIHBlcnZlbnV0aVxyXG4gICAgICAgIC8vIHNvbm8gdWd1YWxpIGFsbGEgcGFnaW5hemlvbmUgYXR0dWFsZSAoY2lvw6ggcXVlc3RhIHBhZ2luYSDDqCBkaSBzaWN1cm8gcmllbXBpdGEgY29tcGxldGFtZW50ZSlcclxuICAgICAgICBpZiAobGFzdFBhZ2UgPT0gLTEgJiYgKChhY3R1YWxDb3VudCA9PSBudWxsICYmIGlwcCA9PSBudWxsKSB8fCAoYWN0dWFsQ291bnQgPT0gaXBwKSkpXHJcbiAgICAgICAgICAgIGxhc3RQYWdlID0gcGFnZSArIDE7XHJcblxyXG4gICAgICAgIC8vIFNlIHNvbm8gaW4gbW9kYWxpdMOgIFwiTnVtZXJvIGRpIHBhZ2luZSBlZCBvZ2dldHRpIHNjb25vc2NpdXRpXCIgZSBtaSBhcnJpdmFubyAwIG9nZ2V0dGkgc2lnbmlmaWNhIGNoZSBsJ3VsdGltYSBwYWdpbmEgw6ggbGEgcHJlY2VkZW50ZSBlIG5vbiBtb3N0cm8gcGFnaW5lIG9sdHJlXHJcbiAgICAgICAgaWYgKGxhc3RQYWdlID09IC0xICYmIGFjdHVhbENvdW50ID09IDApXHJcbiAgICAgICAgICAgIGxhc3RQYWdlID0gcGFnZTtcclxuXHJcbiAgICAgICAgbGV0IG1pbiwgbWF4O1xyXG4gICAgICAgIGlmIChsYXN0UGFnZSA8PSBtYXhCdG5zKSB7XHJcbiAgICAgICAgICAgIG1pbiA9IDE7XHJcbiAgICAgICAgICAgIG1heCA9IGxhc3RQYWdlIC0gMTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyB0b2xnbyBsYSBwYWdpbmEgc2VsZWN0ZWQgw6ggbCd1bHRpbWEgcGFnaW5hIGNoZSDDqCBxdWVsbGEgZGVsbGUgcGFnaW5lIHRvdGFsaVxyXG4gICAgICAgICAgICBsZXQgcmFuZ2VPdXRzaWRlID0gKG1heEJ0bnMgLSAyKSAvIDI7XHJcblxyXG4gICAgICAgICAgICBtaW4gPSBwYWdlIC0gcmFuZ2VPdXRzaWRlO1xyXG4gICAgICAgICAgICBtYXggPSBwYWdlICsgcmFuZ2VPdXRzaWRlO1xyXG5cclxuICAgICAgICAgICAgaWYgKG1pbiA8IDEpIHtcclxuICAgICAgICAgICAgICAgIG1pbiA9IDE7XHJcbiAgICAgICAgICAgICAgICBtYXggPSBtYXhCdG5zIC0gMTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChtYXggPj0gbGFzdFBhZ2UpIHtcclxuICAgICAgICAgICAgICAgIG1pbiA9IGxhc3RQYWdlIC0gbWF4QnRucyArIDE7XHJcbiAgICAgICAgICAgICAgICBtYXggPSBsYXN0UGFnZSAtIDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJlc3VsdC5wdXNoKHsgdmFsOiAxLCBjc3NDbGFzczogKDEgPT09IHBhZ2UgPyAnYnRuLW1haW4gYXBwLXdoaXRlLXRleHQnIDogJ2FwcC13aGl0ZS1idXR0b24nKSB9KTtcclxuXHJcbiAgICAgICAgaWYgKG1heCA+PSBtaW4pIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IG1pbjsgaSA8PSBtYXg7IGkrKylcclxuICAgICAgICAgICAgICAgIGlmIChpICE9PSAxKVxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsgdmFsOiBpLCBjc3NDbGFzczogKGkgPT09IHBhZ2UgPyAnYnRuLW1haW4gYXBwLXdoaXRlLXRleHQnIDogJ2FwcC13aGl0ZS1idXR0b24nKSB9KTtcclxuXHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHtcclxuICAgICAgICAgICAgICAgIHZhbDogbGFzdFBhZ2UsXHJcbiAgICAgICAgICAgICAgICBjc3NDbGFzczogKGxhc3RQYWdlID09PSBwYWdlID8gJ2J0bi1tYWluIGFwcC13aGl0ZS10ZXh0JyA6ICdhcHAtd2hpdGUtYnV0dG9uJylcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDYWxjb2xhIGwnaGFzaCBkaSB1biBvZ2dldHRvIHF1YWxzaWFzaVxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7YW55W119IGl0ZW1zIE9nZ2V0dGkgcGVyIGN1aSBjYWxjb2xhcmUgbCdoYXNoXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYWxjdWxhdGVIYXNoKGl0ZW1zOiBhbnlbXSkge1xyXG4gICAgICAgIGlmICghaXRlbXMpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgLy8gU3VwcG9ydG8gYSBoYXNoIGR1cGxpY2F0aSBkaSBvZ2dldHRpIHVndWFsaVxyXG4gICAgICAgIGxldCB1c2VkSGFzaGVzQ2FjaGU6IHsgW2luZGV4OiBzdHJpbmddOiBudW1iZXI7IH0gPSB7fTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGxldCBpdGVtID0gaXRlbXNbaV07XHJcblxyXG4gICAgICAgICAgICAvLyBQcmltYSBkaSBjYWxjb2xhcmUgbCdoYXNoIHJpbXVvdm8gbGUgcHJvcHJpZXTDoCBpbnRlcm5lIHBlciBldml0YXJlIGNoZSBtaSBzY29tcGVuc2lubyBpIGNhbGNvbGkgc3VjY2Vzc2l2aVxyXG4gICAgICAgICAgICBsZXQgdG1wID0gT2JqZWN0LmFzc2lnbih7fSwgaXRlbXNbaV0pO1xyXG4gICAgICAgICAgICBkZWxldGUgdG1wLl9zZWxlY3RlZDtcclxuICAgICAgICAgICAgZGVsZXRlIHRtcC5fdmlzaWJsZTtcclxuICAgICAgICAgICAgZGVsZXRlIHRtcC5faGFzaDtcclxuICAgICAgICAgICAgZGVsZXRlIHRtcC5fb3JkaW5hbDtcclxuICAgICAgICAgICAgbGV0IGhhc2ggPSB0aGlzLmhhc2hFeHRzLmhhc2hPYmplY3QodG1wKTtcclxuXHJcbiAgICAgICAgICAgIHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA9IHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA/IHVzZWRIYXNoZXNDYWNoZVtoYXNoXSArIDEgOiAxO1xyXG4gICAgICAgICAgICBpdGVtLl9oYXNoID0gaGFzaCArICh1c2VkSGFzaGVzQ2FjaGVbaGFzaF0gPiAxID8gXCJfXCIgKyB1c2VkSGFzaGVzQ2FjaGVbaGFzaF0gOiBcIlwiKTtcclxuICAgICAgICAgICAgaXRlbS5fb3JkaW5hbCA9IGk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgKiBTZSBsJ0lucHV0IMOoIG51bGwgKHZhbG9yZSBub24gc2V0dGF0bykgdmVkZSBzZSBjJ8OoIHVuIGRlZmF1bHQgY29uIGN1aSB2YWxvcml6emFybG8uIFNlIG5vbiBjJ8OoIHV0aWxpenphIGlsIHZhbG9yZSBkaSBmYWxsYmFjayAocXVhbG9yYSBmb3JuaXRvKVxyXG4gICAgKiBcclxuICAgICogQHBhcmFtIHtUfSBpbnB1dFZhbHVlIFZhbG9yZSBkZWxsJ0lucHV0XHJcbiAgICAqIEBwYXJhbSB7VH0gZGVmYXVsdFZhbHVlIFZhbG9yZSBkaSBkZWZhdWx0IGltcG9zdGF0byBkYSBjb25maWd1cmF6aW9uZVxyXG4gICAgKiBAcGFyYW0ge1R9IGZhbGxiYWNrVmFsdWUgVmFsb3JlIGRlbGwnSW5wdXQgcGVyIHF1YW5kbyBub24gw6ggc3RhdG8gYXNzZWduYXRvIGRhbCBwcm9ncmFtbWF0b3JlIGUgbm9uIGhhIHVuIGRlZmF1bHRcclxuICAgICovXHJcbiAgICBwdWJsaWMgSW5wdXRPckRlZmF1bHQ8VD4oaW5wdXRWYWx1ZTogVCwgZGVmYXVsdFZhbHVlOiBULCBmYWxsYmFja1ZhbHVlPzogVCkge1xyXG5cclxuICAgICAgICAvLyBJbnB1dCB2YWxvcml6emF0byBkYWwgcHJvZ3JhbW1hdG9yZVxyXG4gICAgICAgIGlmIChpbnB1dFZhbHVlICE9IG51bGwgJiYgaW5wdXRWYWx1ZSAhPSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHJldHVybiBpbnB1dFZhbHVlO1xyXG5cclxuICAgICAgICAvLyBJbnB1dCB2YWxvcml6emF0byBkYSBjb25maWd1cmF6aW9uZSBnbG9iYWxlXHJcbiAgICAgICAgaWYgKGRlZmF1bHRWYWx1ZSAhPSBudWxsICYmIGRlZmF1bHRWYWx1ZSAhPSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XHJcblxyXG4gICAgICAgIC8vSW5wdXQgbm9uIHZhbG9yaXp6YXRvIGRhIG5pZW50ZSBlIGRhIG5lc3N1bm9cclxuICAgICAgICBpZiAoZmFsbGJhY2tWYWx1ZSAhPSBudWxsICYmIGZhbGxiYWNrVmFsdWUgIT0gdW5kZWZpbmVkKVxyXG4gICAgICAgICAgICByZXR1cm4gZmFsbGJhY2tWYWx1ZTtcclxuXHJcbiAgICAgICAgLy8gSSBjYXNpIGluIGN1aSBzaSBhcnJpdmEgcXVpIHNvbm8gaSBjYXNpIGRpIElucHV0IGNoZSBkaSBkZWZhdWx0IHZhIGJlbmUgY2hlIHNpYW5vIG51bGxpIGUgY2hlIG5lc3N1bm8gc2kgY2FnYVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -4,6 +4,7 @@ import { FormsModule } from '@angular/forms';
4
4
  import { RouterModule } from '@angular/router';
5
5
  import { MatSelectModule } from "@angular/material/select";
6
6
  import { MatInputModule } from "@angular/material/input";
7
+ import { MatTooltipModule } from "@angular/material/tooltip";
7
8
  import { DragDropModule } from '@angular/cdk/drag-drop';
8
9
  import { UtilityService, ExportService, HashingService, MessageService } from '@esfaenza/extensions';
9
10
  import { FormsAndValidationsModule } from '@esfaenza/forms-and-validations';
@@ -47,6 +48,7 @@ EsTableModule.decorators = [
47
48
  ContextMenuModule,
48
49
  MatSelectModule,
49
50
  MatInputModule,
51
+ MatTooltipModule,
50
52
  DragDropModule,
51
53
  FormsAndValidationsModule
52
54
  ],
@@ -55,4 +57,4 @@ EsTableModule.decorators = [
55
57
  exports: [EsTableComponent, EsTdDirective, EsThDirective, EsTdEditorDirective, TablePagerComponent]
56
58
  },] }
57
59
  ];
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9lcy10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUcvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFxQjlELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBNEI7UUFDekMsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCxpQkFBaUI7Z0JBQ2pCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsTUFBTSxLQUFJLE9BQU8sRUFBRTtnQkFDNUQsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxTQUFTLEtBQUksS0FBSyxFQUFFO2dCQUM1RCxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFFBQVEsS0FBSSxJQUFJLEVBQUU7YUFDOUQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBOUJGLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLFlBQVk7b0JBQ1osa0JBQWtCO29CQUNsQixXQUFXO29CQUNYLGdCQUFnQjtvQkFDaEIsU0FBUztvQkFDVCxpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2YsY0FBYztvQkFDZCxjQUFjO29CQUNkLHlCQUF5QjtpQkFDMUI7Z0JBQ0QsWUFBWSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDO2dCQUNwSCxTQUFTLEVBQUUsQ0FBQyxjQUFjLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUM7Z0JBQzFFLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLENBQUM7YUFDcEciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3RcIjtcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXRcIjtcclxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuXHJcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlLCBFeHBvcnRTZXJ2aWNlLCBIYXNoaW5nU2VydmljZSwgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAZXNmYWVuemEvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IEZvcm1zQW5kVmFsaWRhdGlvbnNNb2R1bGUgfSBmcm9tICdAZXNmYWVuemEvZm9ybXMtYW5kLXZhbGlkYXRpb25zJztcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL2xvY2FsaXphdGlvbnMnO1xyXG5cclxuaW1wb3J0IHsgRVNUX0xPQ0FMRSwgRVNUX0RFQlVHLCBFU1RfREVGQVVMVFMgfSBmcm9tICcuL3Rva2Vucyc7XHJcbmltcG9ydCB7IEVzVGFibGVNb2R1bGVDb25maWcgfSBmcm9tICcuL2RvbWFpbi9jb25maWd1cmF0aW9uL0VzVGFibGVNb2R1bGVDb25maWcnO1xyXG5cclxuaW1wb3J0IHsgVGFibGVQYWdlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VzLXRhYmxlL2VzX3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVzVGggfSBmcm9tICcuL2NvbXBvbmVudHMvZXMtdGgvZXNfdGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXNUZCB9IGZyb20gJy4vY29tcG9uZW50cy9lcy10ZC9lc190ZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VzX3RkLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEVzVGhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZXNfdGguZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRXNUZEVkaXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lc190ZF9lZGl0b3IuZGlyZWN0aXZlJztcclxuXHJcbmltcG9ydCB7IENvcHlQYXN0ZURldGVjdG9yIH0gZnJvbSAnLi9jb3JlL0NvcHlQYXN0ZURldGVjdG9yJztcclxuXHJcbmltcG9ydCB7IE1vZGFsTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvbW9kYWxcIjtcclxuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duXCI7XHJcbmltcG9ydCB7IENzdk1vZHVsZSB9IGZyb20gXCJAY3RybC9uZ3gtY3N2XCI7XHJcbmltcG9ydCB7IENvbnRleHRNZW51TW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtY29udGV4dG1lbnVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUsXHJcbiAgICBNb2RhbE1vZHVsZSxcclxuICAgIEJzRHJvcGRvd25Nb2R1bGUsXHJcbiAgICBDc3ZNb2R1bGUsXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcbiAgICBGb3Jtc0FuZFZhbGlkYXRpb25zTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtFc1RoLCBFc1RkLCBFc1RhYmxlQ29tcG9uZW50LCBFc1RkRGlyZWN0aXZlLCBFc1RoRGlyZWN0aXZlLCBFc1RkRWRpdG9yRGlyZWN0aXZlLCBUYWJsZVBhZ2VyQ29tcG9uZW50XSxcclxuICBwcm92aWRlcnM6IFtVdGlsaXR5U2VydmljZSwgRXhwb3J0U2VydmljZSwgSGFzaGluZ1NlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlXSxcclxuICBleHBvcnRzOiBbRXNUYWJsZUNvbXBvbmVudCwgRXNUZERpcmVjdGl2ZSwgRXNUaERpcmVjdGl2ZSwgRXNUZEVkaXRvckRpcmVjdGl2ZSwgVGFibGVQYWdlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVzVGFibGVNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEVzVGFibGVNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVzVGFibGVNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBFc1RhYmxlTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBDb3B5UGFzdGVEZXRlY3RvcixcclxuICAgICAgICB7IHByb3ZpZGU6IEVTVF9MT0NBTEUsIHVzZVZhbHVlOiBjb25maWc/LmxvY2FsZSB8fCAnaXQtSVQnIH0sXHJcbiAgICAgICAgeyBwcm92aWRlOiBFU1RfREVCVUcsIHVzZVZhbHVlOiBjb25maWc/LmRlYnVnTW9kZSB8fCBmYWxzZSB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogRVNUX0RFRkFVTFRTLCB1c2VWYWx1ZTogY29uZmlnPy5kZWZhdWx0cyB8fCBudWxsIH0sXHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG59Il19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9lcy10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUcvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFzQjlELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBNEI7UUFDekMsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCxpQkFBaUI7Z0JBQ2pCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsTUFBTSxLQUFJLE9BQU8sRUFBRTtnQkFDNUQsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxTQUFTLEtBQUksS0FBSyxFQUFFO2dCQUM1RCxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFFBQVEsS0FBSSxJQUFJLEVBQUU7YUFDOUQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBL0JGLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLFlBQVk7b0JBQ1osa0JBQWtCO29CQUNsQixXQUFXO29CQUNYLGdCQUFnQjtvQkFDaEIsU0FBUztvQkFDVCxpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2YsY0FBYztvQkFDZCxnQkFBZ0I7b0JBQ2hCLGNBQWM7b0JBQ2QseUJBQXlCO2lCQUMxQjtnQkFDRCxZQUFZLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLENBQUM7Z0JBQ3BILFNBQVMsRUFBRSxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQztnQkFDMUUsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQzthQUNwRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pbnB1dFwiO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXBcIjtcclxuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuXHJcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlLCBFeHBvcnRTZXJ2aWNlLCBIYXNoaW5nU2VydmljZSwgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAZXNmYWVuemEvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IEZvcm1zQW5kVmFsaWRhdGlvbnNNb2R1bGUgfSBmcm9tICdAZXNmYWVuemEvZm9ybXMtYW5kLXZhbGlkYXRpb25zJztcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL2xvY2FsaXphdGlvbnMnO1xyXG5cclxuaW1wb3J0IHsgRVNUX0xPQ0FMRSwgRVNUX0RFQlVHLCBFU1RfREVGQVVMVFMgfSBmcm9tICcuL3Rva2Vucyc7XHJcbmltcG9ydCB7IEVzVGFibGVNb2R1bGVDb25maWcgfSBmcm9tICcuL2RvbWFpbi9jb25maWd1cmF0aW9uL0VzVGFibGVNb2R1bGVDb25maWcnO1xyXG5cclxuaW1wb3J0IHsgVGFibGVQYWdlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VzLXRhYmxlL2VzX3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVzVGggfSBmcm9tICcuL2NvbXBvbmVudHMvZXMtdGgvZXNfdGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXNUZCB9IGZyb20gJy4vY29tcG9uZW50cy9lcy10ZC9lc190ZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VzX3RkLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEVzVGhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZXNfdGguZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRXNUZEVkaXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lc190ZF9lZGl0b3IuZGlyZWN0aXZlJztcclxuXHJcbmltcG9ydCB7IENvcHlQYXN0ZURldGVjdG9yIH0gZnJvbSAnLi9jb3JlL0NvcHlQYXN0ZURldGVjdG9yJztcclxuXHJcbmltcG9ydCB7IE1vZGFsTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvbW9kYWxcIjtcclxuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duXCI7XHJcbmltcG9ydCB7IENzdk1vZHVsZSB9IGZyb20gXCJAY3RybC9uZ3gtY3N2XCI7XHJcbmltcG9ydCB7IENvbnRleHRNZW51TW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtY29udGV4dG1lbnVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUsXHJcbiAgICBNb2RhbE1vZHVsZSxcclxuICAgIEJzRHJvcGRvd25Nb2R1bGUsXHJcbiAgICBDc3ZNb2R1bGUsXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgRm9ybXNBbmRWYWxpZGF0aW9uc01vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbRXNUaCwgRXNUZCwgRXNUYWJsZUNvbXBvbmVudCwgRXNUZERpcmVjdGl2ZSwgRXNUaERpcmVjdGl2ZSwgRXNUZEVkaXRvckRpcmVjdGl2ZSwgVGFibGVQYWdlckNvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbVXRpbGl0eVNlcnZpY2UsIEV4cG9ydFNlcnZpY2UsIEhhc2hpbmdTZXJ2aWNlLCBNZXNzYWdlU2VydmljZV0sXHJcbiAgZXhwb3J0czogW0VzVGFibGVDb21wb25lbnQsIEVzVGREaXJlY3RpdmUsIEVzVGhEaXJlY3RpdmUsIEVzVGRFZGl0b3JEaXJlY3RpdmUsIFRhYmxlUGFnZXJDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc1RhYmxlTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBFc1RhYmxlTW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFc1RhYmxlTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogRXNUYWJsZU1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQ29weVBhc3RlRGV0ZWN0b3IsXHJcbiAgICAgICAgeyBwcm92aWRlOiBFU1RfTE9DQUxFLCB1c2VWYWx1ZTogY29uZmlnPy5sb2NhbGUgfHwgJ2l0LUlUJyB9LFxyXG4gICAgICAgIHsgcHJvdmlkZTogRVNUX0RFQlVHLCB1c2VWYWx1ZTogY29uZmlnPy5kZWJ1Z01vZGUgfHwgZmFsc2UgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTVF9ERUZBVUxUUywgdXNlVmFsdWU6IGNvbmZpZz8uZGVmYXVsdHMgfHwgbnVsbCB9LFxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufSJdfQ==