ontimize-web-ngx 15.5.1 → 15.5.3
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.
- package/esm2020/lib/components/app-header/o-app-header.component.mjs +3 -3
- package/esm2020/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.mjs +3 -3
- package/esm2020/lib/components/grid/o-grid.component.mjs +17 -16
- package/esm2020/lib/components/grid/skeketon/o-grid-skeleton.component.mjs +12 -15
- package/esm2020/lib/components/index.mjs +2 -1
- package/esm2020/lib/components/list/list-item/o-list-item.component.mjs +8 -3
- package/esm2020/lib/components/list/o-list.component.mjs +39 -15
- package/esm2020/lib/components/list/skeleton/o-list-skeleton.component.mjs +12 -15
- package/esm2020/lib/components/o-repeatable-skeleton.component.mjs +33 -0
- package/esm2020/lib/components/o-skeleton.component.mjs +15 -6
- package/esm2020/lib/components/table/extensions/skeleton/o-table-skeleton.component.mjs +5 -19
- package/esm2020/lib/components/user-info/o-user-info.component.mjs +5 -4
- package/fesm2015/ontimize-web-ngx.mjs +209 -162
- package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
- package/fesm2020/ontimize-web-ngx.mjs +208 -162
- package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
- package/lib/components/grid/skeketon/o-grid-skeleton.component.d.ts +4 -7
- package/lib/components/index.d.ts +1 -0
- package/lib/components/list/o-list.component.d.ts +5 -1
- package/lib/components/list/skeleton/o-list-skeleton.component.d.ts +4 -7
- package/lib/components/o-repeatable-skeleton.component.d.ts +9 -0
- package/lib/components/o-skeleton.component.d.ts +10 -5
- package/lib/components/table/extensions/skeleton/o-table-skeleton.component.d.ts +1 -10
- package/lib/components/user-info/o-user-info.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { OSkeletonComponent } from './o-skeleton.component';
|
|
3
|
+
import { Util } from '../util/util';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ORepeatableSkeletonComponent extends OSkeletonComponent {
|
|
6
|
+
getRows() {
|
|
7
|
+
const parentElement = this.getParentElement();
|
|
8
|
+
if (!parentElement) {
|
|
9
|
+
return [1];
|
|
10
|
+
}
|
|
11
|
+
const item = this.getSkeletonItemElement(parentElement);
|
|
12
|
+
let totalHeightItem = 0;
|
|
13
|
+
if (item) {
|
|
14
|
+
const itemComputedStyle = getComputedStyle(item);
|
|
15
|
+
const height = item.offsetHeight;
|
|
16
|
+
const marginBottom = parseFloat(itemComputedStyle.marginBottom);
|
|
17
|
+
const marginTop = parseFloat(itemComputedStyle.marginTop);
|
|
18
|
+
totalHeightItem = height + marginBottom + marginTop;
|
|
19
|
+
}
|
|
20
|
+
const availableHeight = parentElement?.offsetHeight - totalHeightItem;
|
|
21
|
+
if (!Util.isDefined(availableHeight) || availableHeight < 0) {
|
|
22
|
+
return [1];
|
|
23
|
+
}
|
|
24
|
+
return Array.from(new Array(Math.ceil(parentElement?.offsetHeight / totalHeightItem)), (x, i) => i + 1);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
ORepeatableSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ORepeatableSkeletonComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
28
|
+
ORepeatableSkeletonComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ORepeatableSkeletonComponent, usesInheritance: true, ngImport: i0 });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ORepeatableSkeletonComponent, decorators: [{
|
|
30
|
+
type: Directive,
|
|
31
|
+
args: [{}]
|
|
32
|
+
}] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1yZXBlYXRhYmxlLXNrZWxldG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL28tcmVwZWF0YWJsZS1za2VsZXRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUdwQyxNQUFNLE9BQWdCLDRCQUE2QixTQUFRLGtCQUFrQjtJQUszRSxPQUFPO1FBRUwsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFOUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNsQixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDWjtRQUdELE1BQU0sSUFBSSxHQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV2RCxJQUFJLGVBQWUsR0FBVyxDQUFDLENBQUM7UUFFaEMsSUFBSSxJQUFJLEVBQUU7WUFFUixNQUFNLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDakMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUcxRCxlQUFlLEdBQUcsTUFBTSxHQUFHLFlBQVksR0FBRyxTQUFTLENBQUM7U0FDckQ7UUFJRCxNQUFNLGVBQWUsR0FBRyxhQUFhLEVBQUUsWUFBWSxHQUFHLGVBQWUsQ0FBQztRQUN0RSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsSUFBSSxlQUFlLEdBQUcsQ0FBQyxFQUFFO1lBQzNELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNaO1FBR0QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksR0FBRyxlQUFlLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRTFHLENBQUM7OzBIQXZDbUIsNEJBQTRCOzhHQUE1Qiw0QkFBNEI7NEZBQTVCLDRCQUE0QjtrQkFEakQsU0FBUzttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9Ta2VsZXRvbkNvbXBvbmVudCB9IGZyb20gJy4vby1za2VsZXRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uL3V0aWwvdXRpbCc7XG5cbkBEaXJlY3RpdmUoe30pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgT1JlcGVhdGFibGVTa2VsZXRvbkNvbXBvbmVudCBleHRlbmRzIE9Ta2VsZXRvbkNvbXBvbmVudCAge1xuXG4gIGFic3RyYWN0IGdldFBhcmVudEVsZW1lbnQoKTogSFRNTEVsZW1lbnQ7XG4gIGFic3RyYWN0IGdldFNrZWxldG9uSXRlbUVsZW1lbnQocGFyZW50RWxlbWVudDogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudDtcblxuICBnZXRSb3dzKCkge1xuXG4gICAgY29uc3QgcGFyZW50RWxlbWVudCA9IHRoaXMuZ2V0UGFyZW50RWxlbWVudCgpO1xuXG4gICAgaWYgKCFwYXJlbnRFbGVtZW50KSB7XG4gICAgICByZXR1cm4gWzFdO1xuICAgIH1cblxuICAgIC8qIGF2YWlsYWJsZSBwYXJlbnRIZWlnaHQgPSBwYXJlbnRFbGVtZW50IGhlaWdodCAgLSAoaGVhZGVyIHRhYmxlIGhlYWRlciBoZWlnaHQgKyBtYXJnaW4gYm90dG9tKSovXG4gICAgY29uc3QgaXRlbSA9dGhpcy5nZXRTa2VsZXRvbkl0ZW1FbGVtZW50KHBhcmVudEVsZW1lbnQpO1xuXG4gICAgbGV0IHRvdGFsSGVpZ2h0SXRlbTogbnVtYmVyID0gMDtcblxuICAgIGlmIChpdGVtKSB7XG4gICAgICAvLyBHZXQgdGhlIGVsZW1lbnQncyBkaW1lbnNpb25zIGFuZCBjb21wdXRlZCBzdHlsZXNcbiAgICAgIGNvbnN0IGl0ZW1Db21wdXRlZFN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShpdGVtKTtcbiAgICAgIGNvbnN0IGhlaWdodCA9IGl0ZW0ub2Zmc2V0SGVpZ2h0OyAvLyBIZWlnaHQgaW5jbHVkaW5nIHBhZGRpbmdcbiAgICAgIGNvbnN0IG1hcmdpbkJvdHRvbSA9IHBhcnNlRmxvYXQoaXRlbUNvbXB1dGVkU3R5bGUubWFyZ2luQm90dG9tKTsgLy8gQm90dG9tIG1hcmdpblxuICAgICAgY29uc3QgbWFyZ2luVG9wID0gcGFyc2VGbG9hdChpdGVtQ29tcHV0ZWRTdHlsZS5tYXJnaW5Ub3ApO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHRvdGFsIHZlcnRpY2FsIHNwYWNlIHRha2VuIGJ5IHRoZSBpdGVtXG4gICAgICB0b3RhbEhlaWdodEl0ZW0gPSBoZWlnaHQgKyBtYXJnaW5Cb3R0b20gKyBtYXJnaW5Ub3A7XG4gICAgfVxuXG5cbiAgICAvLyBDYWxjdWxhdGUgdGhlIGF2YWlsYWJsZSBoZWlnaHQgaW4gdGhlIHBhcmVudCBjb250YWluZXIgKGV4Y2x1ZGluZyBvbmUgaXRlbSBoZWlnaHQpXG4gICAgY29uc3QgYXZhaWxhYmxlSGVpZ2h0ID0gcGFyZW50RWxlbWVudD8ub2Zmc2V0SGVpZ2h0IC0gdG90YWxIZWlnaHRJdGVtO1xuICAgIGlmICghVXRpbC5pc0RlZmluZWQoYXZhaWxhYmxlSGVpZ2h0KSB8fCBhdmFpbGFibGVIZWlnaHQgPCAwKSB7XG4gICAgICByZXR1cm4gWzFdO1xuICAgIH1cblxuICAgIC8vIFJldHVybiBhbiBhcnJheSB3aXRoIHRoZSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gZml0IHdpdGhpbiB0aGUgcGFyZW50J3MgaGVpZ2h0XG4gICAgcmV0dXJuIEFycmF5LmZyb20obmV3IEFycmF5KE1hdGguY2VpbChwYXJlbnRFbGVtZW50Py5vZmZzZXRIZWlnaHQgLyB0b3RhbEhlaWdodEl0ZW0pKSwgKHgsIGkpID0+IGkgKyAxKTtcblxuICB9XG59XG4iXX0=
|
|
@@ -1,21 +1,30 @@
|
|
|
1
|
-
import { Directive, Injector } from
|
|
2
|
-
import {
|
|
1
|
+
import { ChangeDetectorRef, Directive, ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { of } from 'rxjs';
|
|
3
|
+
import { AppearanceService } from '../services/appearance.service';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export class OSkeletonComponent {
|
|
5
|
-
constructor(injector) {
|
|
6
|
+
constructor(injector, elRef) {
|
|
6
7
|
this.injector = injector;
|
|
8
|
+
this.elRef = elRef;
|
|
9
|
+
this.rows$ = of([1]);
|
|
10
|
+
this.cd = injector.get(ChangeDetectorRef);
|
|
7
11
|
this.appearanceService = this.injector.get(AppearanceService);
|
|
8
12
|
this.isDarkMode = this.appearanceService.isDarkMode();
|
|
9
13
|
this.subscription = this.appearanceService.isDarkMode$.subscribe(x => this.isDarkMode = x);
|
|
14
|
+
;
|
|
15
|
+
}
|
|
16
|
+
ngAfterViewInit() {
|
|
17
|
+
this.rows$ = of(this.getRows());
|
|
18
|
+
this.cd.detectChanges();
|
|
10
19
|
}
|
|
11
20
|
ngOnDestroy() {
|
|
12
21
|
this.subscription?.unsubscribe();
|
|
13
22
|
}
|
|
14
23
|
}
|
|
15
|
-
OSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OSkeletonComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
OSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OSkeletonComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
16
25
|
OSkeletonComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OSkeletonComponent, ngImport: i0 });
|
|
17
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OSkeletonComponent, decorators: [{
|
|
18
27
|
type: Directive,
|
|
19
28
|
args: [{}]
|
|
20
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ElementRef }]; } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1za2VsZXRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9vLXNrZWxldG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBYyxFQUFFLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXBELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUduRSxNQUFNLE9BQWdCLGtCQUFrQjtJQU90QyxZQUFzQixRQUFrQixFQUFZLEtBQWlCO1FBQS9DLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBWSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBSHJFLFVBQUssR0FBeUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUlwQyxJQUFJLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQW9CLGlCQUFpQixDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFBQSxDQUFDO0lBQzlGLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzs7Z0hBckJtQixrQkFBa0I7b0dBQWxCLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTO21CQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3RvciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFwcGVhcmFuY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBwZWFyYW5jZS5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7fSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPU2tlbGV0b25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBpc0RhcmtNb2RlOiBib29sZWFuO1xuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgYXBwZWFyYW5jZVNlcnZpY2U6IEFwcGVhcmFuY2VTZXJ2aWNlO1xuICByb3dzJDogT2JzZXJ2YWJsZTxudW1iZXJbXT4gPSBvZihbMV0pO1xuICBwcml2YXRlIHJlYWRvbmx5IGNkOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLCBwcm90ZWN0ZWQgZWxSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLmNkID0gaW5qZWN0b3IuZ2V0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICB0aGlzLmFwcGVhcmFuY2VTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQ8QXBwZWFyYW5jZVNlcnZpY2U+KEFwcGVhcmFuY2VTZXJ2aWNlKTtcbiAgICB0aGlzLmlzRGFya01vZGUgPSB0aGlzLmFwcGVhcmFuY2VTZXJ2aWNlLmlzRGFya01vZGUoKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuYXBwZWFyYW5jZVNlcnZpY2UuaXNEYXJrTW9kZSQuc3Vic2NyaWJlKHggPT4gdGhpcy5pc0RhcmtNb2RlID0geCk7O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucm93cyQgPSBvZih0aGlzLmdldFJvd3MoKSk7XG4gICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7Ly8gc3VyZSBkZXRlY3QgY2hhbmdlc1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cbiAgLy8gT3ZlcnJpZGUgaW4gc3ViY2xhc3Nlc1xuICBhYnN0cmFjdCBnZXRSb3dzKCk6IG51bWJlcltdO1xufVxuIl19
|
|
@@ -1,25 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { OSkeletonComponent } from '../../../o-skeleton.component';
|
|
3
|
-
import { of } from 'rxjs';
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
4
2
|
import { Util } from '../../../../util/util';
|
|
3
|
+
import { OSkeletonComponent } from '../../../o-skeleton.component';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
import * as i1 from "@angular/common";
|
|
7
6
|
import * as i2 from "@angular/flex-layout/flex";
|
|
8
7
|
import * as i3 from "ngx-skeleton-loader";
|
|
9
8
|
export class OTableSkeletonComponent extends OSkeletonComponent {
|
|
10
|
-
constructor(elRef, injector) {
|
|
11
|
-
super(injector);
|
|
12
|
-
this.elRef = elRef;
|
|
13
|
-
this.injector = injector;
|
|
14
|
-
this.cd = injector.get(ChangeDetectorRef);
|
|
15
|
-
}
|
|
16
|
-
ngOnInit() {
|
|
17
|
-
this.rows$ = of([1]);
|
|
18
|
-
}
|
|
19
|
-
ngAfterViewInit() {
|
|
20
|
-
this.cd.detectChanges();
|
|
21
|
-
this.rows$ = of(this.getRows());
|
|
22
|
-
}
|
|
23
9
|
getRows() {
|
|
24
10
|
const parentElement = this.elRef.nativeElement.parentElement;
|
|
25
11
|
const header = parentElement.querySelector('div.o-table-skeleton-header');
|
|
@@ -46,12 +32,12 @@ export class OTableSkeletonComponent extends OSkeletonComponent {
|
|
|
46
32
|
return Array.from(new Array(Math.floor(parentHeight / totalHeightItem)), (x, i) => i + 1);
|
|
47
33
|
}
|
|
48
34
|
}
|
|
49
|
-
OTableSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OTableSkeletonComponent, deps:
|
|
35
|
+
OTableSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OTableSkeletonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
50
36
|
OTableSkeletonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OTableSkeletonComponent, selector: "o-table-skeleton", host: { properties: { "class.o-table-skeleton": "true" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-table-skeleton-header\" fxLayoutGap=\"10px\">\n</div>\n<div class=\"o-table-skeleton-item\" fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" *ngFor=\"let row of rows$ | async; \">\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader fxFlex count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n</div>\n", styles: [".o-table-skeleton{height:100%;width:100%;position:relative}.o-table-skeleton .o-table-skeleton-header{height:40px;margin:10px}.o-table-skeleton .o-table-skeleton-item{margin:5px 10px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i3.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
|
|
51
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OTableSkeletonComponent, decorators: [{
|
|
52
38
|
type: Component,
|
|
53
39
|
args: [{ selector: 'o-table-skeleton', encapsulation: ViewEncapsulation.None, host: {
|
|
54
40
|
'[class.o-table-skeleton]': 'true'
|
|
55
41
|
}, template: "<div class=\"o-table-skeleton-header\" fxLayoutGap=\"10px\">\n</div>\n<div class=\"o-table-skeleton-item\" fxLayout=\"row\" fxLayoutGap=\"10px\" fxLayoutAlign=\"start center\" *ngFor=\"let row of rows$ | async; \">\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader fxFlex count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n <div fxFlex=\"20%\">\n <ngx-skeleton-loader count=\"1\" animation=\"{{isDarkMode?'progress-dark':'progress'}}\"\n [theme]=\"{height:'20px','border-radius': '0', 'margin': '0'}\"></ngx-skeleton-loader>\n </div>\n</div>\n", styles: [".o-table-skeleton{height:100%;width:100%;position:relative}.o-table-skeleton .o-table-skeleton-header{height:40px;margin:10px}.o-table-skeleton .o-table-skeleton-item{margin:5px 10px}\n"] }]
|
|
56
|
-
}]
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
}] });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1za2VsZXRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL3NrZWxldG9uL28tdGFibGUtc2tlbGV0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdGFibGUvZXh0ZW5zaW9ucy9za2VsZXRvbi9vLXRhYmxlLXNrZWxldG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7OztBQWFuRSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsa0JBQWtCO0lBRTdELE9BQU87UUFFTCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUM7UUFHN0QsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUV0RSxJQUFJLGlCQUF5QixDQUFDO1FBQzlCLElBQUksZUFBdUIsQ0FBQztRQUM1QixJQUFJLE1BQU0sRUFBRTtZQUVWLE1BQU0sbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztZQUNuQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDNUQsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBR2xFLGlCQUFpQixHQUFHLE1BQU0sR0FBRyxZQUFZLEdBQUcsU0FBUyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxJQUFJLEVBQUU7WUFFUixNQUFNLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDakMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBR2hFLGVBQWUsR0FBRyxNQUFNLEdBQUcsWUFBWSxDQUFDO1NBQ3pDO1FBRUQsTUFBTSxZQUFZLEdBQUcsYUFBYSxFQUFFLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztRQUNyRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxZQUFZLEdBQUcsQ0FBQyxFQUFFO1lBQ3JELE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFFRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUU1RixDQUFDOztxSEF2Q1UsdUJBQXVCO3lHQUF2Qix1QkFBdUIsMklDaEJwQyw4ekNBd0JBOzRGRFJhLHVCQUF1QjtrQkFWbkMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSiwwQkFBMEIsRUFBRSxNQUFNO3FCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgeyBPU2tlbGV0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9vLXNrZWxldG9uLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby10YWJsZS1za2VsZXRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vLXRhYmxlLXNrZWxldG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby10YWJsZS1za2VsZXRvbi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLXRhYmxlLXNrZWxldG9uXSc6ICd0cnVlJ1xuICB9XG5cbn0pXG5leHBvcnQgY2xhc3MgT1RhYmxlU2tlbGV0b25Db21wb25lbnQgZXh0ZW5kcyBPU2tlbGV0b25Db21wb25lbnQgIHtcblxuICBnZXRSb3dzKCkge1xuXG4gICAgY29uc3QgcGFyZW50RWxlbWVudCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gICAgLyogYXZhaWxhYmxlIHBhcmVudEhlaWdodCA9IHBhcmVudEVsZW1lbnQgaGVpZ2h0ICAtIChoZWFkZXIgdGFibGUgaGVhZGVyIGhlaWdodCArIG1hcmdpbiBib3R0b20pKi9cbiAgICBjb25zdCBoZWFkZXIgPSBwYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5vLXRhYmxlLXNrZWxldG9uLWhlYWRlcicpO1xuICAgIGNvbnN0IGl0ZW0gPSBwYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5vLXRhYmxlLXNrZWxldG9uLWl0ZW0nKTtcblxuICAgIGxldCB0b3RhbEhlaWdodEhlYWRlcjogbnVtYmVyO1xuICAgIGxldCB0b3RhbEhlaWdodEl0ZW06IG51bWJlcjtcbiAgICBpZiAoaGVhZGVyKSB7XG4gICAgICAvLyBPYnTDqW4gbGFzIGRpbWVuc2lvbmVzIHkgZXN0aWxvcyBjb21wdXRhZG9zIGRlbCBlbGVtZW50b1xuICAgICAgY29uc3QgaGVhZGVyQ29tcHV0ZWRTdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoaGVhZGVyKTtcbiAgICAgIGNvbnN0IGhlaWdodCA9IGhlYWRlci5vZmZzZXRIZWlnaHQ7IC8vIEFsdHVyYSBpbmNsdXllbmRvIHBhZGRpbmdcbiAgICAgIGNvbnN0IG1hcmdpblRvcCA9IHBhcnNlRmxvYXQoaGVhZGVyQ29tcHV0ZWRTdHlsZS5tYXJnaW5Ub3ApOyAvLyBNYXJnZW4gc3VwZXJpb3JcbiAgICAgIGNvbnN0IG1hcmdpbkJvdHRvbSA9IHBhcnNlRmxvYXQoaGVhZGVyQ29tcHV0ZWRTdHlsZS5tYXJnaW5Cb3R0b20pOyAvLyBNYXJnZW4gaW5mZXJpb3JcblxuICAgICAgLy8gQ2FsY3VsYSBsYSBhbHR1cmEgdG90YWxcbiAgICAgIHRvdGFsSGVpZ2h0SGVhZGVyID0gaGVpZ2h0ICsgbWFyZ2luQm90dG9tICsgbWFyZ2luVG9wO1xuICAgIH1cbiAgICBpZiAoaXRlbSkge1xuICAgICAgLy8gT2J0w6luIGxhcyBkaW1lbnNpb25lcyB5IGVzdGlsb3MgY29tcHV0YWRvcyBkZWwgZWxlbWVudG9cbiAgICAgIGNvbnN0IGl0ZW1Db21wdXRlZFN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShpdGVtKTtcbiAgICAgIGNvbnN0IGhlaWdodCA9IGl0ZW0ub2Zmc2V0SGVpZ2h0OyAvLyBBbHR1cmEgaW5jbHV5ZW5kbyBwYWRkaW5nXG4gICAgICBjb25zdCBtYXJnaW5Cb3R0b20gPSBwYXJzZUZsb2F0KGl0ZW1Db21wdXRlZFN0eWxlLm1hcmdpbkJvdHRvbSk7IC8vIE1hcmdlbiBpbmZlcmlvclxuXG4gICAgICAvLyBDYWxjdWxhIGxhIGFsdHVyYSB0b3RhbFxuICAgICAgdG90YWxIZWlnaHRJdGVtID0gaGVpZ2h0ICsgbWFyZ2luQm90dG9tO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmVudEhlaWdodCA9IHBhcmVudEVsZW1lbnQ/Lm9mZnNldEhlaWdodCAtIHRvdGFsSGVpZ2h0SGVhZGVyO1xuICAgIGlmICghVXRpbC5pc0RlZmluZWQocGFyZW50SGVpZ2h0KSB8fCBwYXJlbnRIZWlnaHQgPCAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgcmV0dXJuIEFycmF5LmZyb20obmV3IEFycmF5KE1hdGguZmxvb3IocGFyZW50SGVpZ2h0IC8gdG90YWxIZWlnaHRJdGVtKSksICh4LCBpKSA9PiBpICsgMSk7XG5cbiAgfVxuXG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJvLXRhYmxlLXNrZWxldG9uLWhlYWRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiby10YWJsZS1za2VsZXRvbi1pdGVtXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEdhcD1cIjEwcHhcIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgKm5nRm9yPVwibGV0IHJvdyBvZiByb3dzJCB8IGFzeW5jOyBcIj5cbiAgPGRpdiBmeEZsZXg9XCIyMCVcIj5cbiAgICA8bmd4LXNrZWxldG9uLWxvYWRlciBmeEZsZXggY291bnQ9XCIxXCIgYW5pbWF0aW9uPVwie3tpc0RhcmtNb2RlPydwcm9ncmVzcy1kYXJrJzoncHJvZ3Jlc3MnfX1cIlxuICAgICAgW3RoZW1lXT1cIntoZWlnaHQ6JzIwcHgnLCdib3JkZXItcmFkaXVzJzogJzAnLCAnbWFyZ2luJzogJzAnfVwiPjwvbmd4LXNrZWxldG9uLWxvYWRlcj5cbiAgPC9kaXY+XG4gIDxkaXYgZnhGbGV4PVwiMjAlXCI+XG4gICAgPG5neC1za2VsZXRvbi1sb2FkZXIgY291bnQ9XCIxXCIgYW5pbWF0aW9uPVwie3tpc0RhcmtNb2RlPydwcm9ncmVzcy1kYXJrJzoncHJvZ3Jlc3MnfX1cIlxuICAgICAgW3RoZW1lXT1cIntoZWlnaHQ6JzIwcHgnLCdib3JkZXItcmFkaXVzJzogJzAnLCAnbWFyZ2luJzogJzAnfVwiPjwvbmd4LXNrZWxldG9uLWxvYWRlcj5cbiAgPC9kaXY+XG4gIDxkaXYgZnhGbGV4PVwiMjBcIj5cbiAgICA8bmd4LXNrZWxldG9uLWxvYWRlciBjb3VudD1cIjFcIiBhbmltYXRpb249XCJ7e2lzRGFya01vZGU/J3Byb2dyZXNzLWRhcmsnOidwcm9ncmVzcyd9fVwiXG4gICAgICBbdGhlbWVdPVwie2hlaWdodDonMjBweCcsJ2JvcmRlci1yYWRpdXMnOiAnMCcsICdtYXJnaW4nOiAnMCd9XCI+PC9uZ3gtc2tlbGV0b24tbG9hZGVyPlxuICA8L2Rpdj5cbiAgPGRpdiBmeEZsZXg9XCIyMCVcIj5cbiAgICA8bmd4LXNrZWxldG9uLWxvYWRlciBjb3VudD1cIjFcIiBhbmltYXRpb249XCJ7e2lzRGFya01vZGU/J3Byb2dyZXNzLWRhcmsnOidwcm9ncmVzcyd9fVwiXG4gICAgICBbdGhlbWVdPVwie2hlaWdodDonMjBweCcsJ2JvcmRlci1yYWRpdXMnOiAnMCcsICdtYXJnaW4nOiAnMCd9XCI+PC9uZ3gtc2tlbGV0b24tbG9hZGVyPlxuICA8L2Rpdj5cbiAgPGRpdiBmeEZsZXg9XCIyMCVcIj5cbiAgICA8bmd4LXNrZWxldG9uLWxvYWRlciBjb3VudD1cIjFcIiBhbmltYXRpb249XCJ7e2lzRGFya01vZGU/J3Byb2dyZXNzLWRhcmsnOidwcm9ncmVzcyd9fVwiXG4gICAgICBbdGhlbWVdPVwie2hlaWdodDonMjBweCcsJ2JvcmRlci1yYWRpdXMnOiAnMCcsICdtYXJnaW4nOiAnMCd9XCI+PC9uZ3gtc2tlbGV0b24tbG9hZGVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -17,7 +17,8 @@ import * as i8 from "../../pipes/o-translate.pipe";
|
|
|
17
17
|
export const DEFAULT_INPUTS_O_USER_INFO = [
|
|
18
18
|
'showProfile: show-profile',
|
|
19
19
|
'showSettings: show-settings',
|
|
20
|
-
'showLogout: show-logout'
|
|
20
|
+
'showLogout: show-logout',
|
|
21
|
+
'id'
|
|
21
22
|
];
|
|
22
23
|
export const DEFAULT_OUTPUTS_O_USER_INFO = [];
|
|
23
24
|
export class OUserInfoComponent {
|
|
@@ -68,7 +69,7 @@ export class OUserInfoComponent {
|
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
71
|
OUserInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OUserInfoComponent, deps: [{ token: i0.ElementRef }, { token: i0.Injector }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
-
OUserInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OUserInfoComponent, selector: "o-user-info", inputs: { showProfile: ["show-profile", "showProfile"], showSettings: ["show-settings", "showSettings"], showLogout: ["show-logout", "showLogout"] }, host: { properties: { "class.o-user-info": "true" } }, ngImport: i0, template: "<div class=\"o-user-info-container\" fxLayout=\"row\" fxLayoutAlign=\"center\">\n <ng-container *ngIf=\"existsUserInfo\">\n <div class=\"o-user-info-wrapper\" fxLayout=\"row\" fxLayoutAlign=\"center center\" [matMenuTriggerFor]=\"menu\"\n fxLayoutGap=\"16px\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"o-user-info-avatar-wrapper\">\n <img [src]=\"avatar\" *ngIf=\"avatar\" alt=\"avatar image\"/>\n </div>\n <span class=\"o-user-info-username\" *ngIf=\"username\"> {{ username }}</span>\n <mat-icon svgIcon=\"ontimize:keyboard_arrow_down\"></mat-icon>\n </div>\n <mat-menu #menu=\"matMenu\" yPosition=\"below\" class=\"o-mat-menu\">\n <button type=\"button\" mat-menu-item (click)=\"onProfileClick()\" *ngIf=\"showProfile\">\n <mat-icon>person</mat-icon>\n <span>{{ 'APP_LAYOUT.USER_PROFILE' | oTranslate }}</span>\n </button>\n <button type=\"button\" mat-menu-item (click)=\"onSettingsClick()\" *ngIf=\"showSettings\">\n <mat-icon svgIcon=\"ontimize:settings\"></mat-icon>\n <span>{{ 'APP_LAYOUT.SETTINGS' | oTranslate }}</span>\n </button>\n <ng-container *ngIf=\"userInfoConfiguration\">\n <button *ngFor=\"let item of userInfoConfiguration.userInfoConfigurationItems\" type=\"button\" mat-menu-item\n [matTooltip]=\"item.name | oTranslate\" matTooltipDisabled=\"item.tooltip\" [ngClass]=\"item.class\"\n (click)=\"item.triggerOnClick($event)\">\n <mat-icon>{{item.icon}} </mat-icon>\n <span>{{ item.name | oTranslate }}</span>\n </button>\n </ng-container>\n <button type=\"button\" mat-menu-item (click)=\"onLogoutClick()\" *ngIf=\"showLogout\">\n <mat-icon svgIcon=\"ontimize:power_settings_new\"></mat-icon>\n <span>{{ 'LOGOUT' | oTranslate }}</span>\n </button>\n\n </mat-menu>\n </ng-container>\n</div>", styles: [".o-user-info .o-user-info-container{cursor:pointer;height:100%}.o-user-info .o-user-info-avatar-wrapper{width:30px;height:30px;overflow:hidden;border-radius:100%}.o-user-info .o-user-info-avatar-wrapper img{max-width:100%;height:auto}.o-user-info mat-icon{font-size:16px;line-height:26px;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i8.OTranslatePipe, name: "oTranslate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
72
|
+
OUserInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OUserInfoComponent, selector: "o-user-info", inputs: { showProfile: ["show-profile", "showProfile"], showSettings: ["show-settings", "showSettings"], showLogout: ["show-logout", "showLogout"], id: "id" }, host: { properties: { "class.o-user-info": "true" } }, ngImport: i0, template: "<div class=\"o-user-info-container\" fxLayout=\"row\" fxLayoutAlign=\"center\">\n <ng-container *ngIf=\"existsUserInfo\">\n <div class=\"o-user-info-wrapper\" fxLayout=\"row\" fxLayoutAlign=\"center center\" [matMenuTriggerFor]=\"menu\"\n fxLayoutGap=\"16px\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"o-user-info-avatar-wrapper\">\n <img [src]=\"avatar\" *ngIf=\"avatar\" alt=\"avatar image\"/>\n </div>\n <span class=\"o-user-info-username\" *ngIf=\"username\"> {{ username }}</span>\n <mat-icon id=\"arrow-icon\" svgIcon=\"ontimize:keyboard_arrow_down\"></mat-icon>\n </div>\n <mat-menu #menu=\"matMenu\" yPosition=\"below\" class=\"o-mat-menu\">\n <button type=\"button\" mat-menu-item (click)=\"onProfileClick()\" *ngIf=\"showProfile\">\n <mat-icon>person</mat-icon>\n <span>{{ 'APP_LAYOUT.USER_PROFILE' | oTranslate }}</span>\n </button>\n <button id=\"menu-settings\" type=\"button\" mat-menu-item (click)=\"onSettingsClick()\" *ngIf=\"showSettings\">\n <mat-icon svgIcon=\"ontimize:settings\"></mat-icon>\n <span>{{ 'APP_LAYOUT.SETTINGS' | oTranslate }}</span>\n </button>\n <ng-container *ngIf=\"userInfoConfiguration\">\n <button *ngFor=\"let item of userInfoConfiguration.userInfoConfigurationItems\" type=\"button\" mat-menu-item\n [matTooltip]=\"item.name | oTranslate\" matTooltipDisabled=\"item.tooltip\" [ngClass]=\"item.class\"\n (click)=\"item.triggerOnClick($event)\">\n <mat-icon>{{item.icon}} </mat-icon>\n <span>{{ item.name | oTranslate }}</span>\n </button>\n </ng-container>\n <button id=\"menu-logout\" type=\"button\" mat-menu-item (click)=\"onLogoutClick()\" *ngIf=\"showLogout\">\n <mat-icon svgIcon=\"ontimize:power_settings_new\"></mat-icon>\n <span>{{ 'LOGOUT' | oTranslate }}</span>\n </button>\n\n </mat-menu>\n </ng-container>\n</div>", styles: [".o-user-info .o-user-info-container{cursor:pointer;height:100%}.o-user-info .o-user-info-avatar-wrapper{width:30px;height:30px;overflow:hidden;border-radius:100%}.o-user-info .o-user-info-avatar-wrapper img{max-width:100%;height:auto}.o-user-info mat-icon{font-size:16px;line-height:26px;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i8.OTranslatePipe, name: "oTranslate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
72
73
|
__decorate([
|
|
73
74
|
BooleanInputConverter(),
|
|
74
75
|
__metadata("design:type", Boolean)
|
|
@@ -85,6 +86,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
85
86
|
type: Component,
|
|
86
87
|
args: [{ selector: 'o-user-info', inputs: DEFAULT_INPUTS_O_USER_INFO, outputs: DEFAULT_OUTPUTS_O_USER_INFO, encapsulation: ViewEncapsulation.None, host: {
|
|
87
88
|
'[class.o-user-info]': 'true'
|
|
88
|
-
}, template: "<div class=\"o-user-info-container\" fxLayout=\"row\" fxLayoutAlign=\"center\">\n <ng-container *ngIf=\"existsUserInfo\">\n <div class=\"o-user-info-wrapper\" fxLayout=\"row\" fxLayoutAlign=\"center center\" [matMenuTriggerFor]=\"menu\"\n fxLayoutGap=\"16px\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"o-user-info-avatar-wrapper\">\n <img [src]=\"avatar\" *ngIf=\"avatar\" alt=\"avatar image\"/>\n </div>\n <span class=\"o-user-info-username\" *ngIf=\"username\"> {{ username }}</span>\n <mat-icon svgIcon=\"ontimize:keyboard_arrow_down\"></mat-icon>\n </div>\n <mat-menu #menu=\"matMenu\" yPosition=\"below\" class=\"o-mat-menu\">\n <button type=\"button\" mat-menu-item (click)=\"onProfileClick()\" *ngIf=\"showProfile\">\n <mat-icon>person</mat-icon>\n <span>{{ 'APP_LAYOUT.USER_PROFILE' | oTranslate }}</span>\n </button>\n <button type=\"button\" mat-menu-item (click)=\"onSettingsClick()\" *ngIf=\"showSettings\">\n <mat-icon svgIcon=\"ontimize:settings\"></mat-icon>\n <span>{{ 'APP_LAYOUT.SETTINGS' | oTranslate }}</span>\n </button>\n <ng-container *ngIf=\"userInfoConfiguration\">\n <button *ngFor=\"let item of userInfoConfiguration.userInfoConfigurationItems\" type=\"button\" mat-menu-item\n [matTooltip]=\"item.name | oTranslate\" matTooltipDisabled=\"item.tooltip\" [ngClass]=\"item.class\"\n (click)=\"item.triggerOnClick($event)\">\n <mat-icon>{{item.icon}} </mat-icon>\n <span>{{ item.name | oTranslate }}</span>\n </button>\n </ng-container>\n <button type=\"button\" mat-menu-item (click)=\"onLogoutClick()\" *ngIf=\"showLogout\">\n <mat-icon svgIcon=\"ontimize:power_settings_new\"></mat-icon>\n <span>{{ 'LOGOUT' | oTranslate }}</span>\n </button>\n\n </mat-menu>\n </ng-container>\n</div>", styles: [".o-user-info .o-user-info-container{cursor:pointer;height:100%}.o-user-info .o-user-info-avatar-wrapper{width:30px;height:30px;overflow:hidden;border-radius:100%}.o-user-info .o-user-info-avatar-wrapper img{max-width:100%;height:auto}.o-user-info mat-icon{font-size:16px;line-height:26px;height:100%}\n"] }]
|
|
89
|
+
}, template: "<div class=\"o-user-info-container\" fxLayout=\"row\" fxLayoutAlign=\"center\">\n <ng-container *ngIf=\"existsUserInfo\">\n <div class=\"o-user-info-wrapper\" fxLayout=\"row\" fxLayoutAlign=\"center center\" [matMenuTriggerFor]=\"menu\"\n fxLayoutGap=\"16px\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"o-user-info-avatar-wrapper\">\n <img [src]=\"avatar\" *ngIf=\"avatar\" alt=\"avatar image\"/>\n </div>\n <span class=\"o-user-info-username\" *ngIf=\"username\"> {{ username }}</span>\n <mat-icon id=\"arrow-icon\" svgIcon=\"ontimize:keyboard_arrow_down\"></mat-icon>\n </div>\n <mat-menu #menu=\"matMenu\" yPosition=\"below\" class=\"o-mat-menu\">\n <button type=\"button\" mat-menu-item (click)=\"onProfileClick()\" *ngIf=\"showProfile\">\n <mat-icon>person</mat-icon>\n <span>{{ 'APP_LAYOUT.USER_PROFILE' | oTranslate }}</span>\n </button>\n <button id=\"menu-settings\" type=\"button\" mat-menu-item (click)=\"onSettingsClick()\" *ngIf=\"showSettings\">\n <mat-icon svgIcon=\"ontimize:settings\"></mat-icon>\n <span>{{ 'APP_LAYOUT.SETTINGS' | oTranslate }}</span>\n </button>\n <ng-container *ngIf=\"userInfoConfiguration\">\n <button *ngFor=\"let item of userInfoConfiguration.userInfoConfigurationItems\" type=\"button\" mat-menu-item\n [matTooltip]=\"item.name | oTranslate\" matTooltipDisabled=\"item.tooltip\" [ngClass]=\"item.class\"\n (click)=\"item.triggerOnClick($event)\">\n <mat-icon>{{item.icon}} </mat-icon>\n <span>{{ item.name | oTranslate }}</span>\n </button>\n </ng-container>\n <button id=\"menu-logout\" type=\"button\" mat-menu-item (click)=\"onLogoutClick()\" *ngIf=\"showLogout\">\n <mat-icon svgIcon=\"ontimize:power_settings_new\"></mat-icon>\n <span>{{ 'LOGOUT' | oTranslate }}</span>\n </button>\n\n </mat-menu>\n </ng-container>\n</div>", styles: [".o-user-info .o-user-info-container{cursor:pointer;height:100%}.o-user-info .o-user-info-avatar-wrapper{width:30px;height:30px;overflow:hidden;border-radius:100%}.o-user-info .o-user-info-avatar-wrapper img{max-width:100%;height:auto}.o-user-info mat-icon{font-size:16px;line-height:26px;height:100%}\n"] }]
|
|
89
90
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Injector }, { type: i1.Router }]; }, propDecorators: { showLogout: [], showSettings: [], showProfile: [] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby11c2VyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdXNlci1pbmZvL28tdXNlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3VzZXItaW5mby9vLXVzZXItaW5mby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFhLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7O0FBR2hGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHO0lBQ3hDLDJCQUEyQjtJQUMzQiw2QkFBNkI7SUFDN0IseUJBQXlCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxFQUFFLENBQUM7QUFhOUMsTUFBTSxPQUFPLGtCQUFrQjtJQW9CN0IsWUFDWSxLQUFpQixFQUNqQixRQUFrQixFQUNsQixNQUFjO1FBRmQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFibkIsZUFBVSxHQUFZLElBQUksQ0FBQztRQUczQixpQkFBWSxH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TUFBTTtxQkFDOUI7NklBWU0sVUFBVSxNQUdWLFlBQVksTUFHWixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3RvciwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBCb29sZWFuSW5wdXRDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XG5pbXBvcnQgeyBPVXNlckluZm9TZXJ2aWNlLCBVc2VySW5mbyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL28tdXNlci1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgT1VzZXJJbmZvQ29uZmlndXJhdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vdXNlci1pbmZvLWNvbmZpZ3VyYXRpb24vby11c2VyLWluZm8tY29uZmlndXJhdGlvbi5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19VU0VSX0lORk8gPSBbXG4gICdzaG93UHJvZmlsZTogc2hvdy1wcm9maWxlJyxcbiAgJ3Nob3dTZXR0aW5nczogc2hvdy1zZXR0aW5ncycsXG4gICdzaG93TG9nb3V0OiBzaG93LWxvZ291dCdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19VU0VSX0lORk8gPSBbXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby11c2VyLWluZm8nLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVVNFUl9JTkZPLFxuICBvdXRwdXRzOiBERUZBVUxUX09VVFBVVFNfT19VU0VSX0lORk8sXG4gIHRlbXBsYXRlVXJsOiAnLi9vLXVzZXItaW5mby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL28tdXNlci1pbmZvLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLm8tdXNlci1pbmZvXSc6ICd0cnVlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9Vc2VySW5mb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2U7XG4gIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2U7XG4gIHByb3RlY3RlZCBvVXNlckluZm9TZXJ2aWNlOiBPVXNlckluZm9TZXJ2aWNlO1xuXG4gIHVzZXJJbmZvU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByb3RlY3RlZCB1c2VySW5mbzogVXNlckluZm87XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHB1YmxpYyBzaG93TG9nb3V0OiBib29sZWFuID0gdHJ1ZTtcblxuICBAQm9vbGVhbklucHV0Q29udmVydGVyKClcbiAgcHVibGljIHNob3dTZXR0aW5nczogYm9vbGVhbiA9IHRydWU7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHB1YmxpYyBzaG93UHJvZmlsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyB1c2VySW5mb0NvbmZpZ3VyYXRpb246IE9Vc2VySW5mb0NvbmZpZ3VyYXRpb25EaXJlY3RpdmU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyXG4gICkge1xuICAgIHRoaXMuZGlhbG9nU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KERpYWxvZ1NlcnZpY2UpO1xuICAgIHRoaXMuYXV0aFNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBdXRoU2VydmljZSk7XG4gICAgdGhpcy5vVXNlckluZm9TZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoT1VzZXJJbmZvU2VydmljZSk7XG5cbiAgICB0aGlzLnVzZXJJbmZvID0gdGhpcy5vVXNlckluZm9TZXJ2aWNlLmdldFVzZXJJbmZvKCk7XG4gICAgdGhpcy51c2VySW5mb1N1YnNjcmlwdGlvbiA9IHRoaXMub1VzZXJJbmZvU2VydmljZS5nZXRVc2VySW5mb09ic2VydmFibGUoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIHRoaXMudXNlckluZm8gPSByZXM7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnVzZXJJbmZvU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBvbkxvZ291dENsaWNrKCkge1xuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0V2l0aENvbmZpcm1hdGlvbigpO1xuICB9XG5cbiAgb25TZXR0aW5nc0NsaWNrKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbWFpbi9zZXR0aW5ncyddKTtcbiAgfVxuXG4gIG9uUHJvZmlsZUNsaWNrKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbWFpbi9wcm9maWxlJ10pO1xuICB9XG5cbiAgZ2V0IGV4aXN0c1VzZXJJbmZvKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXJJbmZvICE9PSB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgYXZhdGFyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudXNlckluZm8gPyB0aGlzLnVzZXJJbmZvLmF2YXRhciA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGdldCB1c2VybmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnVzZXJJbmZvID8gdGhpcy51c2VySW5mby51c2VybmFtZSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJlZ2lzdGVyVXNlckluZm9Db25maWd1cmF0aW9uKHVzZXJJbmZvTWVudTogT1VzZXJJbmZvQ29uZmlndXJhdGlvbkRpcmVjdGl2ZSkge1xuICAgIHRoaXMudXNlckluZm9Db25maWd1cmF0aW9uID0gdXNlckluZm9NZW51O1xuICAgIHRoaXMudXBkYXRlSW5wdXRzQnlDb25maWd1cmF0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUlucHV0c0J5Q29uZmlndXJhdGlvbigpIHtcbiAgICB0aGlzLnNob3dMb2dvdXQgPSB0aGlzLnVzZXJJbmZvQ29uZmlndXJhdGlvbiA/IHRoaXMudXNlckluZm9Db25maWd1cmF0aW9uLnNob3dMb2dvdXQgOiB0aGlzLnNob3dMb2dvdXQ7XG4gICAgdGhpcy5zaG93UHJvZmlsZSA9IHRoaXMudXNlckluZm9Db25maWd1cmF0aW9uID8gdGhpcy51c2VySW5mb0NvbmZpZ3VyYXRpb24uc2hvd1Byb2ZpbGUgOiB0aGlzLnNob3dQcm9maWxlO1xuICAgIHRoaXMuc2hvd1NldHRpbmdzID0gdGhpcy51c2VySW5mb0NvbmZpZ3VyYXRpb24gPyB0aGlzLnVzZXJJbmZvQ29uZmlndXJhdGlvbi5zaG93U2V0dGluZ3MgOiB0aGlzLnNob3dTZXR0aW5ncztcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiby11c2VyLWluZm8tY29udGFpbmVyXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJleGlzdHNVc2VySW5mb1wiPlxuICAgIDxkaXYgY2xhc3M9XCJvLXVzZXItaW5mby13cmFwcGVyXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcbiAgICAgIGZ4TGF5b3V0R2FwPVwiMTZweFwiPlxuICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCIgY2xhc3M9XCJvLXVzZXItaW5mby1hdmF0YXItd3JhcHBlclwiPlxuICAgICAgICA8aW1nIFtzcmNdPVwiYXZhdGFyXCIgKm5nSWY9XCJhdmF0YXJcIiBhbHQ9XCJhdmF0YXIgaW1hZ2VcIi8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiby11c2VyLWluZm8tdXNlcm5hbWVcIiAqbmdJZj1cInVzZXJuYW1lXCI+IHt7IHVzZXJuYW1lIH19PC9zcGFuPlxuICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTprZXlib2FyZF9hcnJvd19kb3duXCI+PC9tYXQtaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgeVBvc2l0aW9uPVwiYmVsb3dcIiBjbGFzcz1cIm8tbWF0LW1lbnVcIj5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uUHJvZmlsZUNsaWNrKClcIiAqbmdJZj1cInNob3dQcm9maWxlXCI+XG4gICAgICAgIDxtYXQtaWNvbj5wZXJzb248L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57eyAnQVBQX0xBWU9VVC5VU0VSX1BST0ZJTEUnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwib25TZXR0aW5nc0NsaWNrKClcIiAqbmdJZj1cInNob3dTZXR0aW5nc1wiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOnNldHRpbmdzXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgJ0FQUF9MQVlPVVQuU0VUVElOR1MnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVzZXJJbmZvQ29uZmlndXJhdGlvblwiPlxuICAgICAgICA8YnV0dG9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVzZXJJbmZvQ29uZmlndXJhdGlvbi51c2VySW5mb0NvbmZpZ3VyYXRpb25JdGVtc1wiIHR5cGU9XCJidXR0b25cIiBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiaXRlbS5uYW1lIHwgb1RyYW5zbGF0ZVwiIG1hdFRvb2x0aXBEaXNhYmxlZD1cIml0ZW0udG9vbHRpcFwiIFtuZ0NsYXNzXT1cIml0ZW0uY2xhc3NcIlxuICAgICAgICAgIChjbGljayk9XCJpdGVtLnRyaWdnZXJPbkNsaWNrKCRldmVudClcIj5cbiAgICAgICAgICA8bWF0LWljb24+e3tpdGVtLmljb259fSA8L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPnt7IGl0ZW0ubmFtZSB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJvbkxvZ291dENsaWNrKClcIiAqbmdJZj1cInNob3dMb2dvdXRcIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpwb3dlcl9zZXR0aW5nc19uZXdcIj48L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57eyAnTE9HT1VUJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cblxuICAgIDwvbWF0LW1lbnU+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+Il19
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby11c2VyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdXNlci1pbmZvL28tdXNlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3VzZXItaW5mby9vLXVzZXItaW5mby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFhLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBWSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7O0FBR2hGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHO0lBQ3hDLDJCQUEyQjtJQUMzQiw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCLElBQUk7Q0FDTCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsRUFBRSxDQUFDO0FBYTlDLE1BQU0sT0FBTyxrQkFBa0I7SUFzQjdCLFlBQ1ksS0FBaUIsRUFDakIsUUFBa0IsRUFDbEIsTUFBYztRQUZkLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBZm5CLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFH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QUFxQixFQUFFLE1BQU07cUJBQzlCOzZJQVlNLFVBQVUsTUFHVixZQUFZLE1BR1osV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0b3IsIE9uRGVzdHJveSwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQm9vbGVhbklucHV0Q29udmVydGVyIH0gZnJvbSAnLi4vLi4vZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgT1VzZXJJbmZvU2VydmljZSwgVXNlckluZm8gfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vLXVzZXItaW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IE9Vc2VySW5mb0NvbmZpZ3VyYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuL3VzZXItaW5mby1jb25maWd1cmF0aW9uL28tdXNlci1pbmZvLWNvbmZpZ3VyYXRpb24uZGlyZWN0aXZlJztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSU5QVVRTX09fVVNFUl9JTkZPID0gW1xuICAnc2hvd1Byb2ZpbGU6IHNob3ctcHJvZmlsZScsXG4gICdzaG93U2V0dGluZ3M6IHNob3ctc2V0dGluZ3MnLFxuICAnc2hvd0xvZ291dDogc2hvdy1sb2dvdXQnLFxuICAnaWQnXG5dO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9PVVRQVVRTX09fVVNFUl9JTkZPID0gW107XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tdXNlci1pbmZvJyxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX1VTRVJfSU5GTyxcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fVVNFUl9JTkZPLFxuICB0ZW1wbGF0ZVVybDogJy4vby11c2VyLWluZm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vLXVzZXItaW5mby5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLXVzZXItaW5mb10nOiAndHJ1ZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBPVXNlckluZm9Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByb3RlY3RlZCBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlO1xuICBwcm90ZWN0ZWQgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlO1xuICBwcm90ZWN0ZWQgb1VzZXJJbmZvU2VydmljZTogT1VzZXJJbmZvU2VydmljZTtcblxuICB1c2VySW5mb1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcm90ZWN0ZWQgdXNlckluZm86IFVzZXJJbmZvO1xuXG4gIEBCb29sZWFuSW5wdXRDb252ZXJ0ZXIoKVxuICBwdWJsaWMgc2hvd0xvZ291dDogYm9vbGVhbiA9IHRydWU7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHB1YmxpYyBzaG93U2V0dGluZ3M6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBCb29sZWFuSW5wdXRDb252ZXJ0ZXIoKVxuICBwdWJsaWMgc2hvd1Byb2ZpbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgaWQ6IHN0cmluZztcblxuICBwdWJsaWMgdXNlckluZm9Db25maWd1cmF0aW9uOiBPVXNlckluZm9Db25maWd1cmF0aW9uRGlyZWN0aXZlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBlbFJlZjogRWxlbWVudFJlZixcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlclxuICApIHtcbiAgICB0aGlzLmRpYWxvZ1NlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChEaWFsb2dTZXJ2aWNlKTtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoQXV0aFNlcnZpY2UpO1xuICAgIHRoaXMub1VzZXJJbmZvU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KE9Vc2VySW5mb1NlcnZpY2UpO1xuXG4gICAgdGhpcy51c2VySW5mbyA9IHRoaXMub1VzZXJJbmZvU2VydmljZS5nZXRVc2VySW5mbygpO1xuICAgIHRoaXMudXNlckluZm9TdWJzY3JpcHRpb24gPSB0aGlzLm9Vc2VySW5mb1NlcnZpY2UuZ2V0VXNlckluZm9PYnNlcnZhYmxlKCkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICB0aGlzLnVzZXJJbmZvID0gcmVzO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy51c2VySW5mb1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb25Mb2dvdXRDbGljaygpIHtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ291dFdpdGhDb25maXJtYXRpb24oKTtcbiAgfVxuXG4gIG9uU2V0dGluZ3NDbGljaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ21haW4vc2V0dGluZ3MnXSk7XG4gIH1cblxuICBvblByb2ZpbGVDbGljaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ21haW4vcHJvZmlsZSddKTtcbiAgfVxuXG4gIGdldCBleGlzdHNVc2VySW5mbygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGF2YXRhcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnVzZXJJbmZvID8gdGhpcy51c2VySW5mby5hdmF0YXIgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgdXNlcm5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy51c2VySW5mbyA/IHRoaXMudXNlckluZm8udXNlcm5hbWUgOiB1bmRlZmluZWQ7XG4gIH1cblxuICByZWdpc3RlclVzZXJJbmZvQ29uZmlndXJhdGlvbih1c2VySW5mb01lbnU6IE9Vc2VySW5mb0NvbmZpZ3VyYXRpb25EaXJlY3RpdmUpIHtcbiAgICB0aGlzLnVzZXJJbmZvQ29uZmlndXJhdGlvbiA9IHVzZXJJbmZvTWVudTtcbiAgICB0aGlzLnVwZGF0ZUlucHV0c0J5Q29uZmlndXJhdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVJbnB1dHNCeUNvbmZpZ3VyYXRpb24oKSB7XG4gICAgdGhpcy5zaG93TG9nb3V0ID0gdGhpcy51c2VySW5mb0NvbmZpZ3VyYXRpb24gPyB0aGlzLnVzZXJJbmZvQ29uZmlndXJhdGlvbi5zaG93TG9nb3V0IDogdGhpcy5zaG93TG9nb3V0O1xuICAgIHRoaXMuc2hvd1Byb2ZpbGUgPSB0aGlzLnVzZXJJbmZvQ29uZmlndXJhdGlvbiA/IHRoaXMudXNlckluZm9Db25maWd1cmF0aW9uLnNob3dQcm9maWxlIDogdGhpcy5zaG93UHJvZmlsZTtcbiAgICB0aGlzLnNob3dTZXR0aW5ncyA9IHRoaXMudXNlckluZm9Db25maWd1cmF0aW9uID8gdGhpcy51c2VySW5mb0NvbmZpZ3VyYXRpb24uc2hvd1NldHRpbmdzIDogdGhpcy5zaG93U2V0dGluZ3M7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIm8tdXNlci1pbmZvLWNvbnRhaW5lclwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlclwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZXhpc3RzVXNlckluZm9cIj5cbiAgICA8ZGl2IGNsYXNzPVwiby11c2VyLWluZm8td3JhcHBlclwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICBmeExheW91dEdhcD1cIjE2cHhcIj5cbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiIGNsYXNzPVwiby11c2VyLWluZm8tYXZhdGFyLXdyYXBwZXJcIj5cbiAgICAgICAgPGltZyBbc3JjXT1cImF2YXRhclwiICpuZ0lmPVwiYXZhdGFyXCIgYWx0PVwiYXZhdGFyIGltYWdlXCIvPlxuICAgICAgPC9kaXY+XG4gICAgICA8c3BhbiBjbGFzcz1cIm8tdXNlci1pbmZvLXVzZXJuYW1lXCIgKm5nSWY9XCJ1c2VybmFtZVwiPiB7eyB1c2VybmFtZSB9fTwvc3Bhbj5cbiAgICAgIDxtYXQtaWNvbiBpZD1cImFycm93LWljb25cIiBzdmdJY29uPVwib250aW1pemU6a2V5Ym9hcmRfYXJyb3dfZG93blwiPjwvbWF0LWljb24+XG4gICAgPC9kaXY+XG4gICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiIHlQb3NpdGlvbj1cImJlbG93XCIgY2xhc3M9XCJvLW1hdC1tZW51XCI+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJvblByb2ZpbGVDbGljaygpXCIgKm5nSWY9XCJzaG93UHJvZmlsZVwiPlxuICAgICAgICA8bWF0LWljb24+cGVyc29uPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgJ0FQUF9MQVlPVVQuVVNFUl9QUk9GSUxFJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gaWQ9XCJtZW51LXNldHRpbmdzXCIgdHlwZT1cImJ1dHRvblwiIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uU2V0dGluZ3NDbGljaygpXCIgKm5nSWY9XCJzaG93U2V0dGluZ3NcIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpzZXR0aW5nc1wiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7ICdBUFBfTEFZT1VULlNFVFRJTkdTJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1c2VySW5mb0NvbmZpZ3VyYXRpb25cIj5cbiAgICAgICAgPGJ1dHRvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiB1c2VySW5mb0NvbmZpZ3VyYXRpb24udXNlckluZm9Db25maWd1cmF0aW9uSXRlbXNcIiB0eXBlPVwiYnV0dG9uXCIgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgIFttYXRUb29sdGlwXT1cIml0ZW0ubmFtZSB8IG9UcmFuc2xhdGVcIiBtYXRUb29sdGlwRGlzYWJsZWQ9XCJpdGVtLnRvb2x0aXBcIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzXCJcbiAgICAgICAgICAoY2xpY2spPVwiaXRlbS50cmlnZ2VyT25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgPG1hdC1pY29uPnt7aXRlbS5pY29ufX0gPC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3Bhbj57eyBpdGVtLm5hbWUgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPGJ1dHRvbiBpZD1cIm1lbnUtbG9nb3V0XCIgdHlwZT1cImJ1dHRvblwiIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uTG9nb3V0Q2xpY2soKVwiICpuZ0lmPVwic2hvd0xvZ291dFwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOnBvd2VyX3NldHRpbmdzX25ld1wiPjwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuPnt7ICdMT0dPVVQnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgPC9tYXQtbWVudT5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj4iXX0=
|