@annalib/anna-core 18.4.0 → 18.4.2

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.
@@ -0,0 +1,43 @@
1
+ import { Directive, ElementRef, HostListener, Input, Renderer2 } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FixedRowsPopupTableDirective {
4
+ constructor(el, renderer) {
5
+ this.el = el;
6
+ this.renderer = renderer;
7
+ this.popupRowHeight = 37.5;
8
+ this.popupHeaderHeight = 38;
9
+ this.maxRowsRenderedWithoutScrollForPopup = 10;
10
+ }
11
+ onWindowResize() {
12
+ this.setPopUpTableHeight();
13
+ }
14
+ ngOnInit() {
15
+ this.setPopUpTableHeight();
16
+ }
17
+ setPopUpTableHeight() {
18
+ const viewportHeight = window.innerHeight;
19
+ const maxNoOfRowsToDisplay = viewportHeight < 740 ? 5 : 10;
20
+ this.maxRowsRenderedWithoutScrollForPopup = maxNoOfRowsToDisplay;
21
+ let totalPopupTableHeight = this.maxRowsRenderedWithoutScrollForPopup * this.popupRowHeight + this.popupHeaderHeight;
22
+ let tableHeightForPopup = (this.tableDataLength < this.maxRowsRenderedWithoutScrollForPopup) ? ((this.popupRowHeight) * (this.tableDataLength ? this.tableDataLength : 1)) + this.popupHeaderHeight : totalPopupTableHeight;
23
+ this.renderer.setStyle(this.el.nativeElement, 'height', `calc(${tableHeightForPopup}px)`);
24
+ }
25
+ }
26
+ FixedRowsPopupTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FixedRowsPopupTableDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
27
+ FixedRowsPopupTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: FixedRowsPopupTableDirective, selector: "[fixedRowsInPopupTable]", inputs: { popupRowHeight: "popupRowHeight", popupHeaderHeight: "popupHeaderHeight", tableDataLength: "tableDataLength" }, host: { listeners: { "window:resize": "onWindowResize()" } }, ngImport: i0 });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FixedRowsPopupTableDirective, decorators: [{
29
+ type: Directive,
30
+ args: [{
31
+ selector: '[fixedRowsInPopupTable]'
32
+ }]
33
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { popupRowHeight: [{
34
+ type: Input
35
+ }], popupHeaderHeight: [{
36
+ type: Input
37
+ }], tableDataLength: [{
38
+ type: Input
39
+ }], onWindowResize: [{
40
+ type: HostListener,
41
+ args: ['window:resize']
42
+ }] } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtcm93cy1wb3B1cC10YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9kaXJlY3RpdmVzL2ZpeGVkLXJvd3MtcG9wdXAtdGFibGUvZml4ZWQtcm93cy1wb3B1cC10YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3RGLE1BQU0sT0FBTyw0QkFBNEI7SUFNdkMsWUFBb0IsRUFBYyxFQUFVLFFBQW1CO1FBQTNDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBTHRELG1CQUFjLEdBQVcsSUFBSSxDQUFDO1FBQzlCLHNCQUFpQixHQUFXLEVBQUUsQ0FBQztRQUV4Qyx5Q0FBb0MsR0FBVyxFQUFFLENBQUM7SUFFaUIsQ0FBQztJQUdwRSxjQUFjO1FBQ1osSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDMUMsTUFBTSxvQkFBb0IsR0FBRyxjQUFjLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzRCxJQUFJLENBQUMsb0NBQW9DLEdBQUcsb0JBQW9CLENBQUM7UUFDakUsSUFBSyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsb0NBQW9DLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFFdEgsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBRSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQSxDQUFDLENBQUMscUJBQXFCLENBQUE7UUFFeE4sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQ3BCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUNyQixRQUFRLEVBQ1IsUUFBUSxtQkFBbUIsS0FBSyxDQUNqQyxDQUFDO0lBQ0osQ0FBQzs7eUhBOUJVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCOzJGQUE1Qiw0QkFBNEI7a0JBSHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtpQkFDcEM7eUhBRVUsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFNTixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tmaXhlZFJvd3NJblBvcHVwVGFibGVdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRml4ZWRSb3dzUG9wdXBUYWJsZURpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCkgcG9wdXBSb3dIZWlnaHQ6IG51bWJlciA9IDM3LjU7IFxyXG4gIEBJbnB1dCgpIHBvcHVwSGVhZGVySGVpZ2h0OiBudW1iZXIgPSAzODtcclxuICBASW5wdXQoKSB0YWJsZURhdGFMZW5ndGg6bnVtYmVyIFxyXG4gIG1heFJvd3NSZW5kZXJlZFdpdGhvdXRTY3JvbGxGb3JQb3B1cDogbnVtYmVyID0gMTA7XHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7IH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXHJcbiAgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICB0aGlzLnNldFBvcFVwVGFibGVIZWlnaHQoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRQb3BVcFRhYmxlSGVpZ2h0KCk7XHJcbiAgfVxyXG5cclxuICBzZXRQb3BVcFRhYmxlSGVpZ2h0KCkge1xyXG4gICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICBjb25zdCBtYXhOb09mUm93c1RvRGlzcGxheSA9IHZpZXdwb3J0SGVpZ2h0IDwgNzQwID8gNSA6IDEwO1xyXG4gICAgdGhpcy5tYXhSb3dzUmVuZGVyZWRXaXRob3V0U2Nyb2xsRm9yUG9wdXAgPSBtYXhOb09mUm93c1RvRGlzcGxheTtcclxuICAgIGxldCAgdG90YWxQb3B1cFRhYmxlSGVpZ2h0ID0gdGhpcy5tYXhSb3dzUmVuZGVyZWRXaXRob3V0U2Nyb2xsRm9yUG9wdXAgKiB0aGlzLnBvcHVwUm93SGVpZ2h0ICsgdGhpcy5wb3B1cEhlYWRlckhlaWdodDtcclxuXHJcbiAgICBsZXQgdGFibGVIZWlnaHRGb3JQb3B1cD0gICh0aGlzLnRhYmxlRGF0YUxlbmd0aCA8IHRoaXMubWF4Um93c1JlbmRlcmVkV2l0aG91dFNjcm9sbEZvclBvcHVwKSA/ICgodGhpcy5wb3B1cFJvd0hlaWdodCkqKHRoaXMudGFibGVEYXRhTGVuZ3RoID90aGlzLnRhYmxlRGF0YUxlbmd0aCA6IDEpICkgKyB0aGlzLnBvcHVwSGVhZGVySGVpZ2h0OiB0b3RhbFBvcHVwVGFibGVIZWlnaHRcclxuXHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICdoZWlnaHQnLFxyXG4gICAgICBgY2FsYygke3RhYmxlSGVpZ2h0Rm9yUG9wdXB9cHgpYFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
@@ -6,7 +6,7 @@ export class AnnaConvertArrayToCommaSeperatedValue {
6
6
  this.converter = memoize(this.replace, (...args) => this.replace(args[0], args[1], args[2]));
7
7
  }
8
8
  transform(value, textKeyName, selectedKeyName) {
9
- if (value !== undefined || value != null) {
9
+ if (value == undefined || value == null) {
10
10
  return '-';
11
11
  }
12
12
  return this.converter(value, textKeyName, selectedKeyName);
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
35
35
  name: "annaConvertArrayToCSV",
36
36
  }]
37
37
  }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvcGlwZXMvYW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBS3BDLE1BQU0sT0FBTyxxQ0FBcUM7SUFIbEQ7UUFJRSxjQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0EwQnpGO0lBeEJDLFNBQVMsQ0FBQyxLQUFZLEVBQUUsV0FBaUIsRUFBRSxlQUFxQjtRQUM5RCxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUN4QyxPQUFPLEdBQUcsQ0FBQztTQUNaO1FBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFZLEVBQUUsV0FBaUIsRUFBRSxlQUFxQjtRQUM1RCxJQUFJLGVBQWUsR0FBVyxFQUFFLENBQUM7UUFDakMsSUFBSSxnQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDdEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3pCLElBQUksZUFBZSxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDM0MsZUFBZSxHQUFHLGVBQWUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUM1RCxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7YUFDekI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUVsQyxzQ0FBc0M7UUFDdEMsZUFBZSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0MsT0FBTyxlQUFlLENBQUM7SUFFekIsQ0FBQzs7a0lBMUJVLHFDQUFxQztnSUFBckMscUNBQXFDOzJGQUFyQyxxQ0FBcUM7a0JBSGpELElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgbWVtb2l6ZSB9IGZyb20gXCJsb2Rhc2gtZXNcIjtcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiBcImFubmFDb252ZXJ0QXJyYXlUb0NTVlwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIGNvbnZlcnRlciA9IG1lbW9pemUodGhpcy5yZXBsYWNlLCAoLi4uYXJncykgPT4gdGhpcy5yZXBsYWNlKGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pKTtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBhbnlbXSwgdGV4dEtleU5hbWU/OiBhbnksIHNlbGVjdGVkS2V5TmFtZT86IGFueSk6IHN0cmluZyB7XHJcbiAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCB8fCB2YWx1ZSAhPSBudWxsKSB7XHJcbiAgICAgIHJldHVybiAnLSc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5jb252ZXJ0ZXIodmFsdWUsIHRleHRLZXlOYW1lLCBzZWxlY3RlZEtleU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgcmVwbGFjZSh2YWx1ZTogYW55W10sIHRleHRLZXlOYW1lPzogYW55LCBzZWxlY3RlZEtleU5hbWU/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgbGV0IHN0cmluZ1RvRGlzcGxheTogc3RyaW5nID0gJyc7XHJcbiAgICBsZXQgYW55VmFsdWVTZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgdmFsdWUuZm9yRWFjaCgodmFsOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHNlbGVjdGVkS2V5TmFtZSAmJiB2YWxbc2VsZWN0ZWRLZXlOYW1lXSkge1xyXG4gICAgICAgIHN0cmluZ1RvRGlzcGxheSA9IHN0cmluZ1RvRGlzcGxheSArIHZhbFt0ZXh0S2V5TmFtZV0gKyAnLCAnO1xyXG4gICAgICAgIGFueVZhbHVlU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAoIWFueVZhbHVlU2VsZWN0ZWQpIHJldHVybiAnLSc7XHJcbiAgICBcclxuICAgIC8vIHJlbW92ZSBsYXN0IDIgY2hhcmFjdGVycyBpLmUuIGNvbW1hXHJcbiAgICBzdHJpbmdUb0Rpc3BsYXkgPSBzdHJpbmdUb0Rpc3BsYXkuc2xpY2UoMCwgLTIpO1xyXG4gICAgcmV0dXJuIHN0cmluZ1RvRGlzcGxheTtcclxuXHJcbiAgfVxyXG59XHJcbiJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvcGlwZXMvYW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBS3BDLE1BQU0sT0FBTyxxQ0FBcUM7SUFIbEQ7UUFJRSxjQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0EwQnpGO0lBeEJDLFNBQVMsQ0FBQyxLQUFZLEVBQUUsV0FBaUIsRUFBRSxlQUFxQjtRQUM5RCxJQUFJLEtBQUssSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUN2QyxPQUFPLEdBQUcsQ0FBQztTQUNaO1FBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFZLEVBQUUsV0FBaUIsRUFBRSxlQUFxQjtRQUM1RCxJQUFJLGVBQWUsR0FBVyxFQUFFLENBQUM7UUFDakMsSUFBSSxnQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDdEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ3pCLElBQUksZUFBZSxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDM0MsZUFBZSxHQUFHLGVBQWUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUM1RCxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7YUFDekI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUVsQyxzQ0FBc0M7UUFDdEMsZUFBZSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0MsT0FBTyxlQUFlLENBQUM7SUFFekIsQ0FBQzs7a0lBMUJVLHFDQUFxQztnSUFBckMscUNBQXFDOzJGQUFyQyxxQ0FBcUM7a0JBSGpELElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHVCQUF1QjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgbWVtb2l6ZSB9IGZyb20gXCJsb2Rhc2gtZXNcIjtcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiBcImFubmFDb252ZXJ0QXJyYXlUb0NTVlwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYUNvbnZlcnRBcnJheVRvQ29tbWFTZXBlcmF0ZWRWYWx1ZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIGNvbnZlcnRlciA9IG1lbW9pemUodGhpcy5yZXBsYWNlLCAoLi4uYXJncykgPT4gdGhpcy5yZXBsYWNlKGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pKTtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBhbnlbXSwgdGV4dEtleU5hbWU/OiBhbnksIHNlbGVjdGVkS2V5TmFtZT86IGFueSk6IHN0cmluZyB7XHJcbiAgICBpZiAodmFsdWUgPT0gdW5kZWZpbmVkIHx8IHZhbHVlID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuICctJztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmNvbnZlcnRlcih2YWx1ZSwgdGV4dEtleU5hbWUsIHNlbGVjdGVkS2V5TmFtZSk7XHJcbiAgfVxyXG5cclxuICByZXBsYWNlKHZhbHVlOiBhbnlbXSwgdGV4dEtleU5hbWU/OiBhbnksIHNlbGVjdGVkS2V5TmFtZT86IGFueSk6IHN0cmluZyB7XHJcbiAgICBsZXQgc3RyaW5nVG9EaXNwbGF5OiBzdHJpbmcgPSAnJztcclxuICAgIGxldCBhbnlWYWx1ZVNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICB2YWx1ZS5mb3JFYWNoKCh2YWw6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoc2VsZWN0ZWRLZXlOYW1lICYmIHZhbFtzZWxlY3RlZEtleU5hbWVdKSB7XHJcbiAgICAgICAgc3RyaW5nVG9EaXNwbGF5ID0gc3RyaW5nVG9EaXNwbGF5ICsgdmFsW3RleHRLZXlOYW1lXSArICcsICc7XHJcbiAgICAgICAgYW55VmFsdWVTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmICghYW55VmFsdWVTZWxlY3RlZCkgcmV0dXJuICctJztcclxuICAgIFxyXG4gICAgLy8gcmVtb3ZlIGxhc3QgMiBjaGFyYWN0ZXJzIGkuZS4gY29tbWFcclxuICAgIHN0cmluZ1RvRGlzcGxheSA9IHN0cmluZ1RvRGlzcGxheS5zbGljZSgwLCAtMik7XHJcbiAgICByZXR1cm4gc3RyaW5nVG9EaXNwbGF5O1xyXG5cclxuICB9XHJcbn1cclxuIl19