ca-components 1.0.15 → 1.0.16
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/esm2022/lib/components/ca-dots-menu/ca-dots-menu.component.mjs +8 -5
- package/esm2022/lib/components/ca-main-table/ca-main-table.component.mjs +7 -5
- package/esm2022/lib/components/ca-period-content/ca-period-content.component.mjs +3 -3
- package/esm2022/lib/components/ca-period-content/components/ca-period-content-payment/ca-period-content-payment.component.mjs +20 -12
- package/esm2022/lib/components/ca-period-content/components/ca-period-content-user-info/ca-period-content-user-info.component.mjs +3 -3
- package/esm2022/lib/components/ca-period-content/pipes/included_count.pipe.mjs +4 -4
- package/esm2022/lib/components/ca-period-content/pipes/payroll-status-class.pipe.mjs +2 -2
- package/esm2022/lib/components/ca-pickup-delivery-block/utils/constants/pickup-delivery-block.constants.mjs +37 -17
- package/fesm2022/ca-components.mjs +103 -71
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-dots-menu/ca-dots-menu.component.d.ts +4 -3
- package/lib/components/ca-main-table/ca-main-table.component.d.ts +5 -5
- package/lib/components/ca-period-content/components/ca-period-content-payment/ca-period-content-payment.component.d.ts +5 -3
- package/lib/components/ca-period-content/pipes/included_count.pipe.d.ts +1 -1
- package/lib/components/ca-pickup-delivery-block/utils/constants/pickup-delivery-block.constants.d.ts +4 -0
- package/package.json +1 -1
|
@@ -11,10 +11,10 @@ export class CaDotsMenuComponent {
|
|
|
11
11
|
this.onClick = new EventEmitter();
|
|
12
12
|
this.tooltip = null;
|
|
13
13
|
}
|
|
14
|
-
identity(
|
|
14
|
+
identity(_, item) {
|
|
15
15
|
return item.text;
|
|
16
16
|
}
|
|
17
|
-
openMenu(
|
|
17
|
+
openMenu(t2) {
|
|
18
18
|
if (this.tooltip?.isOpen())
|
|
19
19
|
this.tooltip.close();
|
|
20
20
|
this.tooltip = t2;
|
|
@@ -23,17 +23,20 @@ export class CaDotsMenuComponent {
|
|
|
23
23
|
get isModalOpened() {
|
|
24
24
|
return this.tooltip?.isOpen();
|
|
25
25
|
}
|
|
26
|
+
onModalCloses() {
|
|
27
|
+
this.onClick.emit({ type: "Close" });
|
|
28
|
+
}
|
|
26
29
|
handleOpenMenuItem(item) {
|
|
27
30
|
this.onClick.emit({ type: item.text });
|
|
28
31
|
if (this.tooltip?.isOpen())
|
|
29
32
|
this.tooltip.close();
|
|
30
33
|
}
|
|
31
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaDotsMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaDotsMenuComponent, isStandalone: true, selector: "ca-dots-menu", inputs: { icon: "icon", openModalIcon: "openModalIcon", itemList: "itemList" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"sidemenu-container-box\">\n <svg-icon\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dotsMenu\"\n [src]=\"t2.isOpen() ? openModalIcon : icon\"\n triggers=\"'manual'\"\n [autoClose]=\"'outside'\"\n (click)=\"openMenu(
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaDotsMenuComponent, isStandalone: true, selector: "ca-dots-menu", inputs: { icon: "icon", openModalIcon: "openModalIcon", itemList: "itemList" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<div class=\"sidemenu-container-box\">\n <svg-icon\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dotsMenu\"\n [src]=\"t2.isOpen() ? openModalIcon : icon\"\n triggers=\"'manual'\"\n [autoClose]=\"'outside'\"\n (hidden)=\"onModalCloses()\"\n (click)=\"openMenu(t2)\"\n [placement]=\"'bottom-right'\"\n ></svg-icon>\n <ng-template #dotsMenu>\n <div class=\"sidemenu\">\n <ng-container *ngFor=\"let item of itemList; trackBy: identity\">\n <div class=\"sidemenu-container\" (click)=\"handleOpenMenuItem(item)\">\n <div class=\"item-container d-flex\">\n <span class=\"sidemenu-items\">{{ item.text }}</span>\n <svg-icon [src]=\"item.Icon\" class=\"item-icon\" />\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n</div>\n", styles: ["@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.sidemenu-container-box .sidemenu{position:relative;padding:4px;background-color:#2e2d2d;border-radius:5px;width:150px;z-index:9999999}.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(1),.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(4),.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(6){border-bottom:1px solid rgba(255,255,255,.2196078431)}.sidemenu-container-box .sidemenu .sidemenu-container .item-container{cursor:pointer;height:30px;justify-content:space-between;align-items:center;padding:4px}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .item-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .item-icon svg{width:18px;height:18px;display:flex}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .sidemenu-items{color:#fff;font-family:Montserrat,sans-serif}.sidemenu-container-box .sidemenu .sidemenu-container .item-container:hover{background-color:#424242}.sidemenu-container-box svg-icon svg{display:flex}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i2.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "ngmodule", type: NgbModule }, { kind: "directive", type: i3.NgbPopover, selector: "[ngbPopover]", inputs: ["animation", "autoClose", "ngbPopover", "popoverTitle", "placement", "popperOptions", "triggers", "positionTarget", "container", "disablePopover", "popoverClass", "popoverContext", "openDelay", "closeDelay"], outputs: ["shown", "hidden"], exportAs: ["ngbPopover"] }] }); }
|
|
33
36
|
}
|
|
34
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaDotsMenuComponent, decorators: [{
|
|
35
38
|
type: Component,
|
|
36
|
-
args: [{ selector: 'ca-dots-menu', standalone: true, imports: [CommonModule, AngularSvgIconModule, NgbModule], template: "<div class=\"sidemenu-container-box\">\n <svg-icon\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dotsMenu\"\n [src]=\"t2.isOpen() ? openModalIcon : icon\"\n triggers=\"'manual'\"\n [autoClose]=\"'outside'\"\n (click)=\"openMenu(
|
|
39
|
+
args: [{ selector: 'ca-dots-menu', standalone: true, imports: [CommonModule, AngularSvgIconModule, NgbModule], template: "<div class=\"sidemenu-container-box\">\n <svg-icon\n #t2=\"ngbPopover\"\n [ngbPopover]=\"dotsMenu\"\n [src]=\"t2.isOpen() ? openModalIcon : icon\"\n triggers=\"'manual'\"\n [autoClose]=\"'outside'\"\n (hidden)=\"onModalCloses()\"\n (click)=\"openMenu(t2)\"\n [placement]=\"'bottom-right'\"\n ></svg-icon>\n <ng-template #dotsMenu>\n <div class=\"sidemenu\">\n <ng-container *ngFor=\"let item of itemList; trackBy: identity\">\n <div class=\"sidemenu-container\" (click)=\"handleOpenMenuItem(item)\">\n <div class=\"item-container d-flex\">\n <span class=\"sidemenu-items\">{{ item.text }}</span>\n <svg-icon [src]=\"item.Icon\" class=\"item-icon\" />\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n</div>\n", styles: ["@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.sidemenu-container-box .sidemenu{position:relative;padding:4px;background-color:#2e2d2d;border-radius:5px;width:150px;z-index:9999999}.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(1),.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(4),.sidemenu-container-box .sidemenu .sidemenu-container:nth-child(6){border-bottom:1px solid rgba(255,255,255,.2196078431)}.sidemenu-container-box .sidemenu .sidemenu-container .item-container{cursor:pointer;height:30px;justify-content:space-between;align-items:center;padding:4px}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .item-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .item-icon svg{width:18px;height:18px;display:flex}.sidemenu-container-box .sidemenu .sidemenu-container .item-container .sidemenu-items{color:#fff;font-family:Montserrat,sans-serif}.sidemenu-container-box .sidemenu .sidemenu-container .item-container:hover{background-color:#424242}.sidemenu-container-box svg-icon svg{display:flex}\n"] }]
|
|
37
40
|
}], propDecorators: { icon: [{
|
|
38
41
|
type: Input
|
|
39
42
|
}], openModalIcon: [{
|
|
@@ -43,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
43
46
|
}], onClick: [{
|
|
44
47
|
type: Output
|
|
45
48
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtZG90cy1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWRvdHMtbWVudS9jYS1kb3RzLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtZG90cy1tZW51L2NhLWRvdHMtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sNEJBQTRCLENBQUM7Ozs7O0FBWW5FLE1BQU0sT0FBTyxtQkFBbUI7SUFQaEM7UUFXWSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUM7UUFFbEQsWUFBTyxHQUFzQixJQUFJLENBQUM7S0F5QjFDO0lBdkJRLFFBQVEsQ0FBQyxDQUFTLEVBQUUsSUFBZTtRQUN4QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVNLFFBQVEsQ0FBQyxFQUFjO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUU7WUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWpELElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsSUFBZTtRQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFO1lBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuRCxDQUFDOytHQTlCVSxtQkFBbUI7bUdBQW5CLG1CQUFtQix5TENmaEMsc3pCQXdCQSxxNENEWFksWUFBWSwySkFBRSxvQkFBb0IsZ09BQUUsU0FBUzs7NEZBRTVDLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDRSxjQUFjLGNBR1osSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG9CQUFvQixFQUFFLFNBQVMsQ0FBQzs4QkFHL0MsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgTmdiTW9kdWxlLCBOZ2JQb3BvdmVyIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG4vLyBDb21wb25lbnRzXG5pbXBvcnQgeyBJSXRlbUxpc3QgfSBmcm9tICcuLi8uLi9tb2RlbHMvZHJvcGRvd24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjYS1kb3RzLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtZG90cy1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtZG90cy1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFuZ3VsYXJTdmdJY29uTW9kdWxlLCBOZ2JNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDYURvdHNNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KCkgaWNvbiE6IHN0cmluZztcbiAgQElucHV0KCkgb3Blbk1vZGFsSWNvbiE6IHN0cmluZztcbiAgQElucHV0KCkgaXRlbUxpc3QhOiBJSXRlbUxpc3RbXTtcbiAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHsgdHlwZTogc3RyaW5nIH0+KCk7XG5cbiAgcHVibGljIHRvb2x0aXA6IE5nYlBvcG92ZXIgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgaWRlbnRpdHkoXzogbnVtYmVyLCBpdGVtOiBJSXRlbUxpc3QpOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtLnRleHQ7XG4gIH1cblxuICBwdWJsaWMgb3Blbk1lbnUodDI6IE5nYlBvcG92ZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50b29sdGlwPy5pc09wZW4oKSkgdGhpcy50b29sdGlwLmNsb3NlKCk7XG5cbiAgICB0aGlzLnRvb2x0aXAgPSB0MjtcbiAgICB0aGlzLnRvb2x0aXAub3BlbigpOyBcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNNb2RhbE9wZW5lZCgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy50b29sdGlwPy5pc09wZW4oKTtcbiAgfVxuXG4gIHB1YmxpYyBvbk1vZGFsQ2xvc2VzKCk6IHZvaWR7XG4gICAgdGhpcy5vbkNsaWNrLmVtaXQoeyB0eXBlOiBcIkNsb3NlXCIgfSk7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlT3Blbk1lbnVJdGVtKGl0ZW06IElJdGVtTGlzdCk6IHZvaWQge1xuICAgIHRoaXMub25DbGljay5lbWl0KHsgdHlwZTogaXRlbS50ZXh0IH0pO1xuICAgIGlmICh0aGlzLnRvb2x0aXA/LmlzT3BlbigpKSB0aGlzLnRvb2x0aXAuY2xvc2UoKTtcbiAgfVxufSIsIjxkaXYgY2xhc3M9XCJzaWRlbWVudS1jb250YWluZXItYm94XCI+XG4gIDxzdmctaWNvblxuICAgICN0Mj1cIm5nYlBvcG92ZXJcIlxuICAgIFtuZ2JQb3BvdmVyXT1cImRvdHNNZW51XCJcbiAgICBbc3JjXT1cInQyLmlzT3BlbigpID8gb3Blbk1vZGFsSWNvbiA6IGljb25cIlxuICAgIHRyaWdnZXJzPVwiJ21hbnVhbCdcIlxuICAgIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCJcbiAgICAoaGlkZGVuKT1cIm9uTW9kYWxDbG9zZXMoKVwiXG4gICAgKGNsaWNrKT1cIm9wZW5NZW51KHQyKVwiXG4gICAgW3BsYWNlbWVudF09XCInYm90dG9tLXJpZ2h0J1wiXG4gID48L3N2Zy1pY29uPlxuICA8bmctdGVtcGxhdGUgI2RvdHNNZW51PlxuICAgIDxkaXYgY2xhc3M9XCJzaWRlbWVudVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtTGlzdDsgdHJhY2tCeTogaWRlbnRpdHlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNpZGVtZW51LWNvbnRhaW5lclwiIChjbGljayk9XCJoYW5kbGVPcGVuTWVudUl0ZW0oaXRlbSlcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb250YWluZXIgZC1mbGV4XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNpZGVtZW51LWl0ZW1zXCI+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxuICAgICAgICAgICAgPHN2Zy1pY29uIFtzcmNdPVwiaXRlbS5JY29uXCIgY2xhc3M9XCJpdGVtLWljb25cIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { Component, EventEmitter, Injector, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
3
|
-
import { CaMainTableHiddenRowsPipe } from './pipes/ca-main-table-hidden-rows/ca-main-table-hidden-rows.pipe';
|
|
4
3
|
import { CdkDrag, CdkDragPlaceholder, CdkDragPreview, CdkDropList, CdkDropListGroup, moveItemInArray, } from '@angular/cdk/drag-drop';
|
|
5
4
|
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
5
|
+
// Pipes
|
|
6
|
+
import { CaMainTableHiddenRowsPipe } from './pipes/ca-main-table-hidden-rows/ca-main-table-hidden-rows.pipe';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "@angular/common";
|
|
8
9
|
import * as i2 from "@angular/cdk/scrolling";
|
|
@@ -10,6 +11,7 @@ export class CaMainTableComponent {
|
|
|
10
11
|
constructor(injector, cdRef) {
|
|
11
12
|
this.injector = injector;
|
|
12
13
|
this.cdRef = cdRef;
|
|
14
|
+
this.tableData = {};
|
|
13
15
|
// Outputs
|
|
14
16
|
this.onPressEvent = new EventEmitter();
|
|
15
17
|
this.onReorder = new EventEmitter();
|
|
@@ -33,7 +35,7 @@ export class CaMainTableComponent {
|
|
|
33
35
|
this.cdRef.detectChanges();
|
|
34
36
|
});
|
|
35
37
|
}
|
|
36
|
-
createInjector(
|
|
38
|
+
createInjector(inputs) {
|
|
37
39
|
const inputProviders = Object.keys(inputs || {}).map((key) => ({
|
|
38
40
|
provide: key,
|
|
39
41
|
useValue: inputs[key],
|
|
@@ -58,7 +60,7 @@ export class CaMainTableComponent {
|
|
|
58
60
|
this.onReorder.emit(event);
|
|
59
61
|
}
|
|
60
62
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaMainTableComponent, deps: [{ token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaMainTableComponent, isStandalone: true, selector: "app-ca-main-table", inputs: { reorderTemplate: "reorderTemplate", reorderTemplatePreview: "reorderTemplatePreview", transparentTable: "transparentTable", sortPredicate: "sortPredicate", hideFieldsToHide: "hideFieldsToHide", reorderItems: "reorderItems", disableReorderRow: "disableReorderRow", columns: "columns", data$: "data$" }, outputs: { onPressEvent: "onPressEvent", onReorder: "onReorder" }, ngImport: i0, template: "<div class=\"ca-main-table-holder\">\n <!-- <cdk-virtual-scroll-viewport itemSize=\"44\" class=\"main-table-scroll-viewport\"> -->\n <table\n class=\"ca-main-table\"\n [class.transparent]=\"transparentTable\"\n cdkDropListGroup\n >\n <thead>\n <tr\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListDisabled]=\"!reorderItems\"\n (cdkDropListDropped)=\"dropHeader($event)\"\n class=\"table-body-list th-table-body-list\"\n >\n <div\n cdkDragLockAxis=\"x\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide;\n let indx = index\n \"\n class=\"cdk_th_div table-tr\"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n headerThTemplate;\n context: {\n $implicit: col,\n index: indx,\n }\n \"\n ></ng-container>\n </div>\n </tr>\n </thead>\n <tbody\n #tableMainBody\n cdkScrollable\n cdkDropList\n [cdkDropListData]=\"data$ | async\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\"\n class=\"table-body-list\"\n >\n <ng-container *ngFor=\"let row of data$ | async; let rowIndex = index\">\n <tr\n *ngIf=\"row.rowType != 'reorder'; else reorder\"\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n [cdkDragDisabled]=\"!reorderItems\"\n (click)=\"onPressRow(row)\"\n class=\"table-tr\"\n [class.selected-row]=\"row.selected\"\n >\n <td\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide\n \"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n rowTemplate;\n context: { row: row, col: col, index: rowIndex }\n \"\n >\n </ng-container>\n </td>\n </tr>\n <ng-template #reorder>\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n class=\"table-tr table-preview-row\"\n [cdkDragDisabled]=\"disableReorderRow\"\n >\n <ng-template cdkDragPreview matchSize>\n <tr class=\"table-tr\">\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplatePreview;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplate;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n <!-- </cdk-virtual-scroll-viewport> -->\n</div>\n\n<ng-template #headerThTemplate let-col let-indx=\"index\">\n <th>\n <ng-container [ngSwitch]=\"col.headerCellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.headerTemplate;\n context: {\n $implicit: col.header,\n index: indx,\n }\n \"\n ></ng-container>\n </ng-container>\n <div *ngSwitchDefault class=\"th-content-container\">\n {{ col.header }}\n </div>\n </ng-container>\n </th>\n</ng-template>\n\n<ng-template #rowTemplate let-row=\"row\" let-col=\"col\" let-index=\"index\">\n <div class=\"td-container\">\n <div class=\"td-content-container\">\n <ng-container [ngSwitch]=\"col.cellType\">\n <!-- Default text cell -->\n <!-- <span *ngSwitchCase=\"'text'\">{{\n row[col.field]\n }}</span> -->\n\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.template;\n context: {\n $implicit: col.row ? row : row[col.field],\n index: index,\n }\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Custom component cell -->\n <ng-container *ngSwitchCase=\"'component'\">\n <ng-container\n *ngComponentOutlet=\"\n col.component;\n injector: createInjector(row, col.inputs)\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Default fallback -->\n <ng-container *ngSwitchDefault>\n <ng-container\n *ngTemplateOutlet=\"\n customTextTemplate;\n context: {\n $implicit: {\n field: row[col.field],\n pipeType: col.pipeType,\n pipeString: col.pipeString,\n textCustomClasses: col.textCustomClasses,\n index: index,\n },\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<!-- Default Text Template -->\n<ng-template #customTextTemplate let-data let-index>\n <ng-container [ngSwitch]=\"data.pipeType\">\n <ng-container *ngSwitchCase=\"'date'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | date: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'currency'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | currency: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field }}\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".ca-main-table-holder .main-table-scroll-viewport{min-height:200px}.ca-main-table-holder .ca-main-table{color:#424242;width:100%;border-collapse:collapse;background-color:#eee}.ca-main-table-holder .ca-main-table.transparent{background-color:transparent}.ca-main-table-holder .ca-main-table thead.hidden_thead{display:none!important}.ca-main-table-holder .ca-main-table thead tr th{color:#6c6c6c;text-transform:uppercase;font-size:11px}.ca-main-table-holder .ca-main-table thead tr th .th-content-container{padding:4px}.ca-main-table-holder .ca-main-table thead .table-tr.text-right{text-align:right}.ca-main-table-holder .ca-main-table thead .table-tr.text-center{text-align:center}.ca-main-table-holder .ca-main-table tbody.cdk-drop-list-dragging *{-webkit-user-select:none;user-select:none}.ca-main-table-holder .ca-main-table tbody .table-tr:first-child:not(.table-preview-row){opacity:var(--opacity-first-row, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row~.table-tr:not(.cdk-drag-preview){opacity:var(--under-reorder-opacity, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row{border-top:var(--table-preview-row-border-top)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row:not(.cdk-drag-disabled){cursor:grab}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row.cdk-drag-placeholder{cursor:grabbing}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:first-child .td-content-container{border-top-left-radius:0;padding:var(--table-preview-row-first-td-padding, 0)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:last-child .td-content-container{border-top-right-radius:0}.ca-main-table-holder .ca-main-table tbody tr td{height:var(--td-height, 36px);padding:var(--td-padding, 1px 0)}.ca-main-table-holder .ca-main-table tbody tr td .td-container{padding:var(--td-container-padding, 4px 0);display:flex;align-items:center;height:var(--td-container-height, 34px);background-color:#fff}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container{min-height:var(--td-container-content-min-height, 26px);flex:1;padding:var(--td-container-content-padding, 0px 4px);display:flex;align-items:center}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text{font-size:14px}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-100{font-weight:100}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-200{font-weight:200}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-300{font-weight:300}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-400{font-weight:400}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-500{font-weight:500}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-600{font-weight:600}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-700{font-weight:700}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-800{font-weight:800}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-900{font-weight:900}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .dragg-move-end-period{display:inline-block;padding:2px 6px;background-color:#91919166;color:#fff;font-size:11px;line-height:14px}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container{border-top-left-radius:3px;border-bottom-left-radius:3px;padding-left:var(--td-cointainer-first-child-padding-left, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container .td-content-container{border-top-left-radius:3px;border-bottom-left-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container{border-top-right-radius:3px;border-bottom-right-radius:3px;padding-right:var(--td-cointainer-last-child-padding-right, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container .td-content-container{border-top-right-radius:3px;border-bottom-right-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td.text-right .td-content-container{justify-content:flex-end}.ca-main-table-holder .ca-main-table tbody tr td.text-center .td-content-container{justify-content:center}.ca-main-table-holder .ca-main-table tbody tr td.text-left .td-content-container{justify-content:flex-start}.ca-main-table-holder .ca-main-table tbody tr:hover td .td-container .td-content-container{background-color:#eee}.cdk_th_div{display:table-cell}.cdk_th_div th{display:block}.drag-placeholder{background-color:#fff}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:var(--cdk-drag-preview-box-shadow, 0 5px 5px -3px rgba(0, 0, 0, .2), 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12))}.cdk-drag-preview td{background-color:var(--cdk-preview-td-bgcolor, transparent)!important}.cdk-drag-preview td .with-padding{padding:0 8px!important}.cdk-drag-preview .td-container{background-color:var(--cdk-preview-bgcolor, transparent)!important;color:var(--cdk-preview-textColor, \"#fff\")}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.table-tr:last-child{border:none}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);cursor:grabbing!important}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder) *{cursor:grabbing!important}.drag-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder,.th-table-body-list .cdk-drag-placeholder{opacity:0}.th-table-body-list .cdk_th_div{box-shadow:none!important;background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragPreview, selector: "ng-template[cdkDragPreview]", inputs: ["data", "matchSize"] }, { kind: "pipe", type: CaMainTableHiddenRowsPipe, name: "caMainTableHiddenRows" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], encapsulation: i0.ViewEncapsulation.ShadowDom }); }
|
|
63
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaMainTableComponent, isStandalone: true, selector: "app-ca-main-table", inputs: { reorderTemplate: "reorderTemplate", reorderTemplatePreview: "reorderTemplatePreview", transparentTable: "transparentTable", sortPredicate: "sortPredicate", hideFieldsToHide: "hideFieldsToHide", reorderItems: "reorderItems", disableReorderRow: "disableReorderRow", columns: "columns", data$: "data$" }, outputs: { onPressEvent: "onPressEvent", onReorder: "onReorder" }, ngImport: i0, template: "<div class=\"ca-main-table-holder\">\n <!-- <cdk-virtual-scroll-viewport itemSize=\"44\" class=\"main-table-scroll-viewport\"> -->\n <table\n class=\"ca-main-table\"\n [class.transparent]=\"transparentTable\"\n cdkDropListGroup\n >\n <thead>\n <tr\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListDisabled]=\"!reorderItems\"\n (cdkDropListDropped)=\"dropHeader($event)\"\n class=\"table-body-list th-table-body-list\"\n >\n <div\n cdkDragLockAxis=\"x\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide;\n let indx = index\n \"\n class=\"cdk_th_div table-tr\"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n headerThTemplate;\n context: {\n $implicit: col,\n index: indx,\n }\n \"\n ></ng-container>\n </div>\n </tr>\n </thead>\n <tbody\n #tableMainBody\n cdkScrollable\n cdkDropList\n [cdkDropListData]=\"data$ | async\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\"\n class=\"table-body-list\"\n >\n <ng-container *ngFor=\"let row of data$ | async; let rowIndex = index\">\n <ng-container *ngIf=\"row.rowType != 'reorder'; else reorder\">\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n [cdkDragDisabled]=\"!reorderItems\"\n (click)=\"onPressRow(row)\"\n class=\"table-tr\"\n [class.selected-row]=\"row.selected\"\n >\n <ng-container\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide\n \"\n >\n <td [class]=\"col.cellCustomClasses\">\n <ng-container\n *ngTemplateOutlet=\"\n rowTemplate;\n context: { row: row, col: col, index: rowIndex }\n \"\n >\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n\n <ng-template #reorder>\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n class=\"table-tr table-preview-row\"\n [cdkDragDisabled]=\"disableReorderRow\"\n >\n <ng-template cdkDragPreview matchSize>\n <tr class=\"table-tr\">\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplatePreview;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplate;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n <!-- </cdk-virtual-scroll-viewport> -->\n</div>\n\n<ng-template #headerThTemplate let-col let-indx=\"index\">\n <th>\n <ng-container [ngSwitch]=\"col.headerCellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.headerTemplate;\n context: {\n $implicit: col.header,\n index: indx,\n }\n \"\n ></ng-container>\n </ng-container>\n <div *ngSwitchDefault class=\"th-content-container\">\n {{ col.header }}\n </div>\n </ng-container>\n </th>\n</ng-template>\n\n<ng-template #rowTemplate let-row=\"row\" let-col=\"col\" let-index=\"index\">\n <div class=\"td-container\">\n <div class=\"td-content-container\">\n <ng-container [ngSwitch]=\"col.cellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.template;\n context: {\n $implicit: col.row ? row : row[col.field],\n index: index,\n }\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Custom component cell -->\n <ng-container *ngSwitchCase=\"'component'\">\n <ng-container\n *ngComponentOutlet=\"\n col.component;\n injector: createInjector(col.inputs)\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Default fallback -->\n <ng-container *ngSwitchDefault>\n <ng-container\n *ngTemplateOutlet=\"\n customTextTemplate;\n context: {\n $implicit: {\n field: row[col.field],\n pipeType: col.pipeType,\n pipeString: col.pipeString,\n textCustomClasses: col.textCustomClasses,\n index: index,\n },\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<!-- Default Text Template -->\n<ng-template #customTextTemplate let-data let-index>\n <ng-container [ngSwitch]=\"data.pipeType\">\n <ng-container *ngSwitchCase=\"'date'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | date: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'currency'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | currency: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field }}\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".ca-main-table-holder .main-table-scroll-viewport{min-height:200px}.ca-main-table-holder .ca-main-table{color:#424242;width:100%;border-collapse:collapse;background-color:#eee}.ca-main-table-holder .ca-main-table.transparent{background-color:transparent}.ca-main-table-holder .ca-main-table thead.hidden_thead{display:none!important}.ca-main-table-holder .ca-main-table thead tr th{color:#6c6c6c;text-transform:uppercase;font-size:11px}.ca-main-table-holder .ca-main-table thead tr th .th-content-container{padding:4px}.ca-main-table-holder .ca-main-table thead .table-tr.text-right{text-align:right}.ca-main-table-holder .ca-main-table thead .table-tr.text-center{text-align:center}.ca-main-table-holder .ca-main-table tbody.cdk-drop-list-dragging *{-webkit-user-select:none;user-select:none}.ca-main-table-holder .ca-main-table tbody .table-tr:first-child:not(.table-preview-row){opacity:var(--opacity-first-row, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row~.table-tr:not(.cdk-drag-preview){opacity:var(--under-reorder-opacity, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row{border-top:var(--table-preview-row-border-top)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row:not(.cdk-drag-disabled){cursor:grab}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row.cdk-drag-placeholder{cursor:grabbing}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:first-child .td-content-container{border-top-left-radius:0;padding:var(--table-preview-row-first-td-padding, 0)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:last-child .td-content-container{border-top-right-radius:0}.ca-main-table-holder .ca-main-table tbody tr td{height:var(--td-height, 36px);padding:var(--td-padding, 1px 0)}.ca-main-table-holder .ca-main-table tbody tr td .td-container{padding:var(--td-container-padding, 4px 0);display:flex;align-items:center;height:var(--td-container-height, 34px);background-color:#fff}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container{min-height:var(--td-container-content-min-height, 26px);flex:1;padding:var(--td-container-content-padding, 0px 4px);display:flex;align-items:center}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text{font-size:14px}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-100{font-weight:100}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-200{font-weight:200}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-300{font-weight:300}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-400{font-weight:400}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-500{font-weight:500}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-600{font-weight:600}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-700{font-weight:700}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-800{font-weight:800}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-900{font-weight:900}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .dragg-move-end-period{display:inline-block;padding:2px 6px;background-color:#91919166;color:#fff;font-size:11px;line-height:14px}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container{border-top-left-radius:3px;border-bottom-left-radius:3px;padding-left:var(--td-cointainer-first-child-padding-left, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container .td-content-container{border-top-left-radius:3px;border-bottom-left-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container{border-top-right-radius:3px;border-bottom-right-radius:3px;padding-right:var(--td-cointainer-last-child-padding-right, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container .td-content-container{border-top-right-radius:3px;border-bottom-right-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td.text-right .td-content-container{justify-content:flex-end}.ca-main-table-holder .ca-main-table tbody tr td.text-center .td-content-container{justify-content:center}.ca-main-table-holder .ca-main-table tbody tr td.text-left .td-content-container{justify-content:flex-start}.ca-main-table-holder .ca-main-table tbody tr:hover td .td-container .td-content-container{background-color:#eee}.cdk_th_div{display:table-cell}.cdk_th_div th{display:block}.drag-placeholder{background-color:#fff}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:var(--cdk-drag-preview-box-shadow, 0 5px 5px -3px rgba(0, 0, 0, .2), 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12))}.cdk-drag-preview td{background-color:var(--cdk-preview-td-bgcolor, transparent)!important}.cdk-drag-preview td .with-padding{padding:0 8px!important}.cdk-drag-preview .td-container{background-color:var(--cdk-preview-bgcolor, transparent)!important;color:var(--cdk-preview-textColor, \"#fff\")}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.table-tr:last-child{border:none}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);cursor:grabbing!important}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder) *{cursor:grabbing!important}.drag-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder,.th-table-body-list .cdk-drag-placeholder{opacity:0}.th-table-body-list .cdk_th_div{box-shadow:none!important;background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragPreview, selector: "ng-template[cdkDragPreview]", inputs: ["data", "matchSize"] }, { kind: "pipe", type: CaMainTableHiddenRowsPipe, name: "caMainTableHiddenRows" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], encapsulation: i0.ViewEncapsulation.ShadowDom }); }
|
|
62
64
|
}
|
|
63
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaMainTableComponent, decorators: [{
|
|
64
66
|
type: Component,
|
|
@@ -71,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
71
73
|
CaMainTableHiddenRowsPipe,
|
|
72
74
|
CommonModule,
|
|
73
75
|
ScrollingModule,
|
|
74
|
-
], encapsulation: ViewEncapsulation.ShadowDom, template: "<div class=\"ca-main-table-holder\">\n <!-- <cdk-virtual-scroll-viewport itemSize=\"44\" class=\"main-table-scroll-viewport\"> -->\n <table\n class=\"ca-main-table\"\n [class.transparent]=\"transparentTable\"\n cdkDropListGroup\n >\n <thead>\n <tr\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListDisabled]=\"!reorderItems\"\n (cdkDropListDropped)=\"dropHeader($event)\"\n class=\"table-body-list th-table-body-list\"\n >\n <div\n cdkDragLockAxis=\"x\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide;\n let indx = index\n \"\n class=\"cdk_th_div table-tr\"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n headerThTemplate;\n context: {\n $implicit: col,\n index: indx,\n }\n \"\n ></ng-container>\n </div>\n </tr>\n </thead>\n <tbody\n #tableMainBody\n cdkScrollable\n cdkDropList\n [cdkDropListData]=\"data$ | async\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\"\n class=\"table-body-list\"\n >\n <ng-container *ngFor=\"let row of data$ | async; let rowIndex = index\">\n <tr\n *ngIf=\"row.rowType != 'reorder'; else reorder\"\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n [cdkDragDisabled]=\"!reorderItems\"\n (click)=\"onPressRow(row)\"\n class=\"table-tr\"\n [class.selected-row]=\"row.selected\"\n >\n <td\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide\n \"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n rowTemplate;\n context: { row: row, col: col, index: rowIndex }\n \"\n >\n </ng-container>\n </td>\n </tr>\n <ng-template #reorder>\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n class=\"table-tr table-preview-row\"\n [cdkDragDisabled]=\"disableReorderRow\"\n >\n <ng-template cdkDragPreview matchSize>\n <tr class=\"table-tr\">\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplatePreview;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplate;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n <!-- </cdk-virtual-scroll-viewport> -->\n</div>\n\n<ng-template #headerThTemplate let-col let-indx=\"index\">\n <th>\n <ng-container [ngSwitch]=\"col.headerCellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.headerTemplate;\n context: {\n $implicit: col.header,\n index: indx,\n }\n \"\n ></ng-container>\n </ng-container>\n <div *ngSwitchDefault class=\"th-content-container\">\n {{ col.header }}\n </div>\n </ng-container>\n </th>\n</ng-template>\n\n<ng-template #rowTemplate let-row=\"row\" let-col=\"col\" let-index=\"index\">\n <div class=\"td-container\">\n <div class=\"td-content-container\">\n <ng-container [ngSwitch]=\"col.cellType\">\n <!-- Default text cell -->\n <!-- <span *ngSwitchCase=\"'text'\">{{\n row[col.field]\n }}</span> -->\n\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.template;\n context: {\n $implicit: col.row ? row : row[col.field],\n index: index,\n }\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Custom component cell -->\n <ng-container *ngSwitchCase=\"'component'\">\n <ng-container\n *ngComponentOutlet=\"\n col.component;\n injector: createInjector(row, col.inputs)\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Default fallback -->\n <ng-container *ngSwitchDefault>\n <ng-container\n *ngTemplateOutlet=\"\n customTextTemplate;\n context: {\n $implicit: {\n field: row[col.field],\n pipeType: col.pipeType,\n pipeString: col.pipeString,\n textCustomClasses: col.textCustomClasses,\n index: index,\n },\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<!-- Default Text Template -->\n<ng-template #customTextTemplate let-data let-index>\n <ng-container [ngSwitch]=\"data.pipeType\">\n <ng-container *ngSwitchCase=\"'date'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | date: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'currency'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | currency: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field }}\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".ca-main-table-holder .main-table-scroll-viewport{min-height:200px}.ca-main-table-holder .ca-main-table{color:#424242;width:100%;border-collapse:collapse;background-color:#eee}.ca-main-table-holder .ca-main-table.transparent{background-color:transparent}.ca-main-table-holder .ca-main-table thead.hidden_thead{display:none!important}.ca-main-table-holder .ca-main-table thead tr th{color:#6c6c6c;text-transform:uppercase;font-size:11px}.ca-main-table-holder .ca-main-table thead tr th .th-content-container{padding:4px}.ca-main-table-holder .ca-main-table thead .table-tr.text-right{text-align:right}.ca-main-table-holder .ca-main-table thead .table-tr.text-center{text-align:center}.ca-main-table-holder .ca-main-table tbody.cdk-drop-list-dragging *{-webkit-user-select:none;user-select:none}.ca-main-table-holder .ca-main-table tbody .table-tr:first-child:not(.table-preview-row){opacity:var(--opacity-first-row, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row~.table-tr:not(.cdk-drag-preview){opacity:var(--under-reorder-opacity, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row{border-top:var(--table-preview-row-border-top)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row:not(.cdk-drag-disabled){cursor:grab}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row.cdk-drag-placeholder{cursor:grabbing}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:first-child .td-content-container{border-top-left-radius:0;padding:var(--table-preview-row-first-td-padding, 0)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:last-child .td-content-container{border-top-right-radius:0}.ca-main-table-holder .ca-main-table tbody tr td{height:var(--td-height, 36px);padding:var(--td-padding, 1px 0)}.ca-main-table-holder .ca-main-table tbody tr td .td-container{padding:var(--td-container-padding, 4px 0);display:flex;align-items:center;height:var(--td-container-height, 34px);background-color:#fff}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container{min-height:var(--td-container-content-min-height, 26px);flex:1;padding:var(--td-container-content-padding, 0px 4px);display:flex;align-items:center}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text{font-size:14px}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-100{font-weight:100}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-200{font-weight:200}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-300{font-weight:300}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-400{font-weight:400}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-500{font-weight:500}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-600{font-weight:600}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-700{font-weight:700}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-800{font-weight:800}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-900{font-weight:900}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .dragg-move-end-period{display:inline-block;padding:2px 6px;background-color:#91919166;color:#fff;font-size:11px;line-height:14px}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container{border-top-left-radius:3px;border-bottom-left-radius:3px;padding-left:var(--td-cointainer-first-child-padding-left, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container .td-content-container{border-top-left-radius:3px;border-bottom-left-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container{border-top-right-radius:3px;border-bottom-right-radius:3px;padding-right:var(--td-cointainer-last-child-padding-right, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container .td-content-container{border-top-right-radius:3px;border-bottom-right-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td.text-right .td-content-container{justify-content:flex-end}.ca-main-table-holder .ca-main-table tbody tr td.text-center .td-content-container{justify-content:center}.ca-main-table-holder .ca-main-table tbody tr td.text-left .td-content-container{justify-content:flex-start}.ca-main-table-holder .ca-main-table tbody tr:hover td .td-container .td-content-container{background-color:#eee}.cdk_th_div{display:table-cell}.cdk_th_div th{display:block}.drag-placeholder{background-color:#fff}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:var(--cdk-drag-preview-box-shadow, 0 5px 5px -3px rgba(0, 0, 0, .2), 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12))}.cdk-drag-preview td{background-color:var(--cdk-preview-td-bgcolor, transparent)!important}.cdk-drag-preview td .with-padding{padding:0 8px!important}.cdk-drag-preview .td-container{background-color:var(--cdk-preview-bgcolor, transparent)!important;color:var(--cdk-preview-textColor, \"#fff\")}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.table-tr:last-child{border:none}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);cursor:grabbing!important}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder) *{cursor:grabbing!important}.drag-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder,.th-table-body-list .cdk-drag-placeholder{opacity:0}.th-table-body-list .cdk_th_div{box-shadow:none!important;background-color:transparent!important}\n"] }]
|
|
76
|
+
], encapsulation: ViewEncapsulation.ShadowDom, template: "<div class=\"ca-main-table-holder\">\n <!-- <cdk-virtual-scroll-viewport itemSize=\"44\" class=\"main-table-scroll-viewport\"> -->\n <table\n class=\"ca-main-table\"\n [class.transparent]=\"transparentTable\"\n cdkDropListGroup\n >\n <thead>\n <tr\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n [cdkDropListDisabled]=\"!reorderItems\"\n (cdkDropListDropped)=\"dropHeader($event)\"\n class=\"table-body-list th-table-body-list\"\n >\n <div\n cdkDragLockAxis=\"x\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide;\n let indx = index\n \"\n class=\"cdk_th_div table-tr\"\n [class]=\"col.cellCustomClasses\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n headerThTemplate;\n context: {\n $implicit: col,\n index: indx,\n }\n \"\n ></ng-container>\n </div>\n </tr>\n </thead>\n <tbody\n #tableMainBody\n cdkScrollable\n cdkDropList\n [cdkDropListData]=\"data$ | async\"\n [cdkDropListSortPredicate]=\"sortPredicate\"\n (cdkDropListDropped)=\"drop($event)\"\n class=\"table-body-list\"\n >\n <ng-container *ngFor=\"let row of data$ | async; let rowIndex = index\">\n <ng-container *ngIf=\"row.rowType != 'reorder'; else reorder\">\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n [cdkDragDisabled]=\"!reorderItems\"\n (click)=\"onPressRow(row)\"\n class=\"table-tr\"\n [class.selected-row]=\"row.selected\"\n >\n <ng-container\n *ngFor=\"\n let col of columns | caMainTableHiddenRows: hideFieldsToHide\n \"\n >\n <td [class]=\"col.cellCustomClasses\">\n <ng-container\n *ngTemplateOutlet=\"\n rowTemplate;\n context: { row: row, col: col, index: rowIndex }\n \"\n >\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n\n <ng-template #reorder>\n <tr\n cdkDragLockAxis=\"y\"\n cdkDrag\n cdkDragPreviewContainer=\"parent\"\n cdkDragBoundary=\".table-body-list\"\n class=\"table-tr table-preview-row\"\n [cdkDragDisabled]=\"disableReorderRow\"\n >\n <ng-template cdkDragPreview matchSize>\n <tr class=\"table-tr\">\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplatePreview;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n <ng-container\n *ngTemplateOutlet=\"\n reorderTemplate;\n context: { row: row, index: rowIndex }\n \"\n ></ng-container>\n </tr>\n </ng-template>\n </ng-container>\n </tbody>\n </table>\n <!-- </cdk-virtual-scroll-viewport> -->\n</div>\n\n<ng-template #headerThTemplate let-col let-indx=\"index\">\n <th>\n <ng-container [ngSwitch]=\"col.headerCellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.headerTemplate;\n context: {\n $implicit: col.header,\n index: indx,\n }\n \"\n ></ng-container>\n </ng-container>\n <div *ngSwitchDefault class=\"th-content-container\">\n {{ col.header }}\n </div>\n </ng-container>\n </th>\n</ng-template>\n\n<ng-template #rowTemplate let-row=\"row\" let-col=\"col\" let-index=\"index\">\n <div class=\"td-container\">\n <div class=\"td-content-container\">\n <ng-container [ngSwitch]=\"col.cellType\">\n <!-- Template cell -->\n <ng-container *ngSwitchCase=\"'template'\">\n <ng-container\n *ngTemplateOutlet=\"\n col.template;\n context: {\n $implicit: col.row ? row : row[col.field],\n index: index,\n }\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Custom component cell -->\n <ng-container *ngSwitchCase=\"'component'\">\n <ng-container\n *ngComponentOutlet=\"\n col.component;\n injector: createInjector(col.inputs)\n \"\n ></ng-container>\n </ng-container>\n\n <!-- Default fallback -->\n <ng-container *ngSwitchDefault>\n <ng-container\n *ngTemplateOutlet=\"\n customTextTemplate;\n context: {\n $implicit: {\n field: row[col.field],\n pipeType: col.pipeType,\n pipeString: col.pipeString,\n textCustomClasses: col.textCustomClasses,\n index: index,\n },\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<!-- Default Text Template -->\n<ng-template #customTextTemplate let-data let-index>\n <ng-container [ngSwitch]=\"data.pipeType\">\n <ng-container *ngSwitchCase=\"'date'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | date: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'currency'\">\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field | currency: data.pipeString }}\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div [ngClass]=\"data.textCustomClasses\" class=\"text\">\n {{ data.field }}\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".ca-main-table-holder .main-table-scroll-viewport{min-height:200px}.ca-main-table-holder .ca-main-table{color:#424242;width:100%;border-collapse:collapse;background-color:#eee}.ca-main-table-holder .ca-main-table.transparent{background-color:transparent}.ca-main-table-holder .ca-main-table thead.hidden_thead{display:none!important}.ca-main-table-holder .ca-main-table thead tr th{color:#6c6c6c;text-transform:uppercase;font-size:11px}.ca-main-table-holder .ca-main-table thead tr th .th-content-container{padding:4px}.ca-main-table-holder .ca-main-table thead .table-tr.text-right{text-align:right}.ca-main-table-holder .ca-main-table thead .table-tr.text-center{text-align:center}.ca-main-table-holder .ca-main-table tbody.cdk-drop-list-dragging *{-webkit-user-select:none;user-select:none}.ca-main-table-holder .ca-main-table tbody .table-tr:first-child:not(.table-preview-row){opacity:var(--opacity-first-row, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row~.table-tr:not(.cdk-drag-preview){opacity:var(--under-reorder-opacity, 1)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row{border-top:var(--table-preview-row-border-top)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row:not(.cdk-drag-disabled){cursor:grab}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row.cdk-drag-placeholder{cursor:grabbing}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:first-child .td-content-container{border-top-left-radius:0;padding:var(--table-preview-row-first-td-padding, 0)}.ca-main-table-holder .ca-main-table tbody .table-tr.table-preview-row td:last-child .td-content-container{border-top-right-radius:0}.ca-main-table-holder .ca-main-table tbody tr td{height:var(--td-height, 36px);padding:var(--td-padding, 1px 0)}.ca-main-table-holder .ca-main-table tbody tr td .td-container{padding:var(--td-container-padding, 4px 0);display:flex;align-items:center;height:var(--td-container-height, 34px);background-color:#fff}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container{min-height:var(--td-container-content-min-height, 26px);flex:1;padding:var(--td-container-content-padding, 0px 4px);display:flex;align-items:center}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text{font-size:14px}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-100{font-weight:100}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-200{font-weight:200}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-300{font-weight:300}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-400{font-weight:400}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-500{font-weight:500}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-600{font-weight:600}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-700{font-weight:700}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-800{font-weight:800}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .text.b-900{font-weight:900}.ca-main-table-holder .ca-main-table tbody tr td .td-container .td-content-container .dragg-move-end-period{display:inline-block;padding:2px 6px;background-color:#91919166;color:#fff;font-size:11px;line-height:14px}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container{border-top-left-radius:3px;border-bottom-left-radius:3px;padding-left:var(--td-cointainer-first-child-padding-left, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:first-child .td-container .td-content-container{border-top-left-radius:3px;border-bottom-left-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container{border-top-right-radius:3px;border-bottom-right-radius:3px;padding-right:var(--td-cointainer-last-child-padding-right, 4px)}.ca-main-table-holder .ca-main-table tbody tr td:last-child .td-container .td-content-container{border-top-right-radius:3px;border-bottom-right-radius:3px}.ca-main-table-holder .ca-main-table tbody tr td.text-right .td-content-container{justify-content:flex-end}.ca-main-table-holder .ca-main-table tbody tr td.text-center .td-content-container{justify-content:center}.ca-main-table-holder .ca-main-table tbody tr td.text-left .td-content-container{justify-content:flex-start}.ca-main-table-holder .ca-main-table tbody tr:hover td .td-container .td-content-container{background-color:#eee}.cdk_th_div{display:table-cell}.cdk_th_div th{display:block}.drag-placeholder{background-color:#fff}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:var(--cdk-drag-preview-box-shadow, 0 5px 5px -3px rgba(0, 0, 0, .2), 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12))}.cdk-drag-preview td{background-color:var(--cdk-preview-td-bgcolor, transparent)!important}.cdk-drag-preview td .with-padding{padding:0 8px!important}.cdk-drag-preview .td-container{background-color:var(--cdk-preview-bgcolor, transparent)!important;color:var(--cdk-preview-textColor, \"#fff\")}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.table-tr:last-child{border:none}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1);cursor:grabbing!important}.table-body-list.cdk-drop-list-dragging .table-tr:not(.cdk-drag-placeholder) *{cursor:grabbing!important}.drag-placeholder{background:#ccc;border:dotted 3px #999;min-height:60px;transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-placeholder,.th-table-body-list .cdk-drag-placeholder{opacity:0}.th-table-body-list .cdk_th_div{box-shadow:none!important;background-color:transparent!important}\n"] }]
|
|
75
77
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { onPressEvent: [{
|
|
76
78
|
type: Output
|
|
77
79
|
}], onReorder: [{
|
|
@@ -95,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
95
97
|
}], data$: [{
|
|
96
98
|
type: Input
|
|
97
99
|
}] } });
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbWFpbi10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1tYWluLXRhYmxlL2NhLW1haW4tdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFpbi10YWJsZS9jYS1tYWluLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxFQUVMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDN0csT0FBTyxFQUNMLE9BQU8sRUFFUCxrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsZUFBZSxHQUNoQixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQW1CekQsTUFBTSxPQUFPLG9CQUFvQjtJQTBCL0IsWUFDVSxRQUFrQixFQUNsQixLQUF3QjtRQUR4QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBekJsQyxVQUFVO1FBQ0EsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMxRCxjQUFTLEdBQ2pCLElBQUksWUFBWSxFQUF1QyxDQUFDO1FBS2pELHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxrQkFBYSxHQUFzRCxDQUMxRSxDQUFTLEVBQ1QsRUFBbUIsRUFDbkIsRUFBRTtZQUNGLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDO1FBRUYsU0FBUztRQUNBLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDbkMsWUFBTyxHQUFtQixFQUFFLENBQUM7SUFNbkMsQ0FBQztJQUVKLFVBQVUsQ0FBQyxPQUFZO1FBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUM1QixnRUFBZ0U7WUFDaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFZLEVBQUUsTUFBOEI7UUFDekQsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdELE9BQU8sRUFBRSxHQUFHO1lBQ1osUUFBUSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUM7U0FDdEIsQ0FBQyxDQUFDLENBQUM7UUFDSixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDckIsU0FBUyxFQUFFLGNBQWM7WUFDekIsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQ1gsWUFBaUIsRUFDakIsT0FBZ0Q7UUFFaEQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN6QyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BDLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2FBQ2hFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQTRCO1FBQ3JDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBMEM7UUFDN0MsZUFBZSxDQUNiLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSyxFQUNyQixLQUFLLENBQUMsYUFBYSxFQUNuQixLQUFLLENBQUMsWUFBWSxDQUNuQixDQUFDO1FBRUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzsrR0E3RVUsb0JBQW9CO21HQUFwQixvQkFBb0Isd2NDM0NqQyw2c01BMk1BLGc2TEQ1S0ksZ0JBQWdCLHFJQUNoQixXQUFXLCtkQUNYLE9BQU8sd2JBRVAsY0FBYyxrR0FDZCx5QkFBeUIsNkRBQ3pCLFlBQVksMnJDQUNaLGVBQWU7OzRGQUtOLG9CQUFvQjtrQkFqQmhDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBRWpCLElBQUksV0FDUDt3QkFDUCxnQkFBZ0I7d0JBQ2hCLFdBQVc7d0JBQ1gsT0FBTzt3QkFDUCxrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QseUJBQXlCO3dCQUN6QixZQUFZO3dCQUNaLGVBQWU7cUJBQ2hCLGlCQUVjLGlCQUFpQixDQUFDLFNBQVM7K0hBTWhDLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFJRSxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFRRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYU1haW5UYWJsZUhpZGRlblJvd3NQaXBlIH0gZnJvbSAnLi9waXBlcy9jYS1tYWluLXRhYmxlLWhpZGRlbi1yb3dzL2NhLW1haW4tdGFibGUtaGlkZGVuLXJvd3MucGlwZSc7XG5pbXBvcnQge1xuICBDZGtEcmFnLFxuICBDZGtEcmFnRHJvcCxcbiAgQ2RrRHJhZ1BsYWNlaG9sZGVyLFxuICBDZGtEcmFnUHJldmlldyxcbiAgQ2RrRHJvcExpc3QsXG4gIENka0Ryb3BMaXN0R3JvdXAsXG4gIG1vdmVJdGVtSW5BcnJheSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBDb2x1bW5Db25maWcgfSBmcm9tICcuL21vZGVscy9tYWluLXRhYmxlLm1vZGVsJztcbmltcG9ydCB7IFNjcm9sbGluZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2EtbWFpbi10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1tYWluLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENka0Ryb3BMaXN0R3JvdXAsXG4gICAgQ2RrRHJvcExpc3QsXG4gICAgQ2RrRHJhZyxcbiAgICBDZGtEcmFnUGxhY2Vob2xkZXIsXG4gICAgQ2RrRHJhZ1ByZXZpZXcsXG4gICAgQ2FNYWluVGFibGVIaWRkZW5Sb3dzUGlwZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2Nyb2xsaW5nTW9kdWxlLFxuICBdLFxuICBzdHlsZVVybHM6IFsnLi9jYS1tYWluLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLlNoYWRvd0RvbSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FNYWluVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICB0YWJsZURhdGE6IGFueTtcblxuICAvLyBPdXRwdXRzXG4gIEBPdXRwdXQoKSBvblByZXNzRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBvblJlb3JkZXI6IEV2ZW50RW1pdHRlcjxDZGtEcmFnRHJvcDxhbnlbXSB8IG51bGwsIGFueSwgYW55Pj4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8Q2RrRHJhZ0Ryb3A8YW55W10gfCBudWxsLCBhbnksIGFueT4+KCk7XG5cbiAgLy8gSW5wdXRzXG4gIEBJbnB1dCgpIHJlb3JkZXJUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBJbnB1dCgpIHJlb3JkZXJUZW1wbGF0ZVByZXZpZXchOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSB0cmFuc3BhcmVudFRhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNvcnRQcmVkaWNhdGU6IChpbmRleDogbnVtYmVyLCBpdGVtOiBDZGtEcmFnPG51bWJlcj4pID0+IGJvb2xlYW4gPSAoXG4gICAgXzogbnVtYmVyLFxuICAgIF9fOiBDZGtEcmFnPG51bWJlcj5cbiAgKSA9PiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH07XG5cbiAgLy8gSW5wdXRzXG4gIEBJbnB1dCgpIGhpZGVGaWVsZHNUb0hpZGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcmVvcmRlckl0ZW1zOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRpc2FibGVSZW9yZGVyUm93OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNvbHVtbnM6IENvbHVtbkNvbmZpZ1tdID0gW107XG4gIEBJbnB1dCgpIGRhdGEkITogT2JzZXJ2YWJsZTxhbnlbXT47IC8vIEFjY2VwdHMgdGhlIGRhdGEgYXMgYW4gb2JzZXJ2YWJsZVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBvblByZXNzUm93KHJvd0RhdGE6IGFueSkge1xuICAgIHRoaXMub25QcmVzc0V2ZW50LmVtaXQocm93RGF0YSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmRhdGEkLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xuICAgICAgLy8gVHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uIHRvIHVwZGF0ZSB0aGUgdmlldyB3aGVuIGRhdGEgY2hhbmdlc1xuICAgICAgdGhpcy50YWJsZURhdGEgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgY3JlYXRlSW5qZWN0b3Iocm93RGF0YTogYW55LCBpbnB1dHM6IHsgW2tleTogc3RyaW5nXTogYW55IH0pOiBJbmplY3RvciB7XG4gICAgY29uc3QgaW5wdXRQcm92aWRlcnMgPSBPYmplY3Qua2V5cyhpbnB1dHMgfHwge30pLm1hcCgoa2V5KSA9PiAoe1xuICAgICAgcHJvdmlkZToga2V5LFxuICAgICAgdXNlVmFsdWU6IGlucHV0c1trZXldLFxuICAgIH0pKTtcbiAgICByZXR1cm4gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogaW5wdXRQcm92aWRlcnMsXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBhdHRhY2hPdXRwdXRzKFxuICAgIGNvbXBvbmVudFJlZjogYW55LFxuICAgIG91dHB1dHM6IHsgW2tleTogc3RyaW5nXTogKGV2ZW50OiBhbnkpID0+IHZvaWQgfVxuICApOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyhvdXRwdXRzKS5mb3JFYWNoKChvdXRwdXRLZXkpID0+IHtcbiAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2Vbb3V0cHV0S2V5XSkge1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vbb3V0cHV0S2V5XS5zdWJzY3JpYmUob3V0cHV0c1tvdXRwdXRLZXldKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGRyb3BIZWFkZXIoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmNvbHVtbnMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxhbnlbXSB8IG51bGwsIGFueSwgYW55Pikge1xuICAgIG1vdmVJdGVtSW5BcnJheShcbiAgICAgIGV2ZW50LmNvbnRhaW5lci5kYXRhISxcbiAgICAgIGV2ZW50LnByZXZpb3VzSW5kZXgsXG4gICAgICBldmVudC5jdXJyZW50SW5kZXhcbiAgICApO1xuXG4gICAgdGhpcy5vblJlb3JkZXIuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjYS1tYWluLXRhYmxlLWhvbGRlclwiPlxuICA8IS0tIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgaXRlbVNpemU9XCI0NFwiIGNsYXNzPVwibWFpbi10YWJsZS1zY3JvbGwtdmlld3BvcnRcIj4gLS0+XG4gIDx0YWJsZVxuICAgIGNsYXNzPVwiY2EtbWFpbi10YWJsZVwiXG4gICAgW2NsYXNzLnRyYW5zcGFyZW50XT1cInRyYW5zcGFyZW50VGFibGVcIlxuICAgIGNka0Ryb3BMaXN0R3JvdXBcbiAgPlxuICAgIDx0aGVhZD5cbiAgICAgIDx0clxuICAgICAgICBjZGtEcm9wTGlzdFxuICAgICAgICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgIFtjZGtEcm9wTGlzdERpc2FibGVkXT1cIiFyZW9yZGVySXRlbXNcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3BIZWFkZXIoJGV2ZW50KVwiXG4gICAgICAgIGNsYXNzPVwidGFibGUtYm9keS1saXN0IHRoLXRhYmxlLWJvZHktbGlzdFwiXG4gICAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjZGtEcmFnTG9ja0F4aXM9XCJ4XCJcbiAgICAgICAgICBjZGtEcmFnXG4gICAgICAgICAgY2RrRHJhZ1ByZXZpZXdDb250YWluZXI9XCJwYXJlbnRcIlxuICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgbGV0IGNvbCBvZiBjb2x1bW5zIHwgY2FNYWluVGFibGVIaWRkZW5Sb3dzOiBoaWRlRmllbGRzVG9IaWRlO1xuICAgICAgICAgICAgbGV0IGluZHggPSBpbmRleFxuICAgICAgICAgIFwiXG4gICAgICAgICAgY2xhc3M9XCJjZGtfdGhfZGl2IHRhYmxlLXRyXCJcbiAgICAgICAgICBbY2xhc3NdPVwiY29sLmNlbGxDdXN0b21DbGFzc2VzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgIGhlYWRlclRoVGVtcGxhdGU7XG4gICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGNvbCxcbiAgICAgICAgICAgICAgICBpbmRleDogaW5keCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC90cj5cbiAgICA8L3RoZWFkPlxuICAgIDx0Ym9keVxuICAgICAgI3RhYmxlTWFpbkJvZHlcbiAgICAgIGNka1Njcm9sbGFibGVcbiAgICAgIGNka0Ryb3BMaXN0XG4gICAgICBbY2RrRHJvcExpc3REYXRhXT1cImRhdGEkIHwgYXN5bmNcIlxuICAgICAgW2Nka0Ryb3BMaXN0U29ydFByZWRpY2F0ZV09XCJzb3J0UHJlZGljYXRlXCJcbiAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCJcbiAgICAgIGNsYXNzPVwidGFibGUtYm9keS1saXN0XCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCByb3cgb2YgZGF0YSQgfCBhc3luYzsgbGV0IHJvd0luZGV4ID0gaW5kZXhcIj5cbiAgICAgICAgPHRyXG4gICAgICAgICAgKm5nSWY9XCJyb3cucm93VHlwZSAhPSAncmVvcmRlcic7IGVsc2UgcmVvcmRlclwiXG4gICAgICAgICAgY2RrRHJhZ0xvY2tBeGlzPVwieVwiXG4gICAgICAgICAgY2RrRHJhZ1xuICAgICAgICAgIGNka0RyYWdQcmV2aWV3Q29udGFpbmVyPVwicGFyZW50XCJcbiAgICAgICAgICBjZGtEcmFnQm91bmRhcnk9XCIudGFibGUtYm9keS1saXN0XCJcbiAgICAgICAgICBbY2RrRHJhZ0Rpc2FibGVkXT1cIiFyZW9yZGVySXRlbXNcIlxuICAgICAgICAgIChjbGljayk9XCJvblByZXNzUm93KHJvdylcIlxuICAgICAgICAgIGNsYXNzPVwidGFibGUtdHJcIlxuICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZC1yb3ddPVwicm93LnNlbGVjdGVkXCJcbiAgICAgICAgPlxuICAgICAgICAgIDx0ZFxuICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgIGxldCBjb2wgb2YgY29sdW1ucyB8IGNhTWFpblRhYmxlSGlkZGVuUm93czogaGlkZUZpZWxkc1RvSGlkZVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJjb2wuY2VsbEN1c3RvbUNsYXNzZXNcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICByb3dUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7IHJvdzogcm93LCBjb2w6IGNvbCwgaW5kZXg6IHJvd0luZGV4IH1cbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjcmVvcmRlcj5cbiAgICAgICAgICA8dHJcbiAgICAgICAgICAgIGNka0RyYWdMb2NrQXhpcz1cInlcIlxuICAgICAgICAgICAgY2RrRHJhZ1xuICAgICAgICAgICAgY2RrRHJhZ1ByZXZpZXdDb250YWluZXI9XCJwYXJlbnRcIlxuICAgICAgICAgICAgY2RrRHJhZ0JvdW5kYXJ5PVwiLnRhYmxlLWJvZHktbGlzdFwiXG4gICAgICAgICAgICBjbGFzcz1cInRhYmxlLXRyIHRhYmxlLXByZXZpZXctcm93XCJcbiAgICAgICAgICAgIFtjZGtEcmFnRGlzYWJsZWRdPVwiZGlzYWJsZVJlb3JkZXJSb3dcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBjZGtEcmFnUHJldmlldyBtYXRjaFNpemU+XG4gICAgICAgICAgICAgIDx0ciBjbGFzcz1cInRhYmxlLXRyXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgcmVvcmRlclRlbXBsYXRlUHJldmlldztcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyByb3c6IHJvdywgaW5kZXg6IHJvd0luZGV4IH1cbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICByZW9yZGVyVGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgY29udGV4dDogeyByb3c6IHJvdywgaW5kZXg6IHJvd0luZGV4IH1cbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90Ym9keT5cbiAgPC90YWJsZT5cbiAgPCEtLSA8L2Nkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydD4gLS0+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNoZWFkZXJUaFRlbXBsYXRlIGxldC1jb2wgbGV0LWluZHg9XCJpbmRleFwiPlxuICA8dGg+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sLmhlYWRlckNlbGxUeXBlXCI+XG4gICAgICA8IS0tIFRlbXBsYXRlIGNlbGwgLS0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGVtcGxhdGUnXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgY29sLmhlYWRlclRlbXBsYXRlO1xuICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAkaW1wbGljaXQ6IGNvbC5oZWFkZXIsXG4gICAgICAgICAgICAgIGluZGV4OiBpbmR4LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPGRpdiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwidGgtY29udGVudC1jb250YWluZXJcIj5cbiAgICAgICAge3sgY29sLmhlYWRlciB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvdGg+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3Jvd1RlbXBsYXRlIGxldC1yb3c9XCJyb3dcIiBsZXQtY29sPVwiY29sXCIgbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgPGRpdiBjbGFzcz1cInRkLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0ZC1jb250ZW50LWNvbnRhaW5lclwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sLmNlbGxUeXBlXCI+XG4gICAgICAgIDwhLS0gRGVmYXVsdCB0ZXh0IGNlbGwgLS0+XG4gICAgICAgIDwhLS0gPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIid0ZXh0J1wiPnt7XG4gICAgICAgICAgICAgICAgICAgIHJvd1tjb2wuZmllbGRdXG4gICAgICAgICAgICAgICAgfX08L3NwYW4+IC0tPlxuXG4gICAgICAgIDwhLS0gVGVtcGxhdGUgY2VsbCAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3RlbXBsYXRlJ1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgIGNvbC50ZW1wbGF0ZTtcbiAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogY29sLnJvdyA/IHJvdyA6IHJvd1tjb2wuZmllbGRdLFxuICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ3VzdG9tIGNvbXBvbmVudCBjZWxsIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY29tcG9uZW50J1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0NvbXBvbmVudE91dGxldD1cIlxuICAgICAgICAgICAgICBjb2wuY29tcG9uZW50O1xuICAgICAgICAgICAgICBpbmplY3RvcjogY3JlYXRlSW5qZWN0b3Iocm93LCBjb2wuaW5wdXRzKVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gRGVmYXVsdCBmYWxsYmFjayAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgIGN1c3RvbVRleHRUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICAgICAgZmllbGQ6IHJvd1tjb2wuZmllbGRdLFxuICAgICAgICAgICAgICAgICAgcGlwZVR5cGU6IGNvbC5waXBlVHlwZSxcbiAgICAgICAgICAgICAgICAgIHBpcGVTdHJpbmc6IGNvbC5waXBlU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgdGV4dEN1c3RvbUNsYXNzZXM6IGNvbC50ZXh0Q3VzdG9tQ2xhc3NlcyxcbiAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tIERlZmF1bHQgVGV4dCBUZW1wbGF0ZSAgLS0+XG48bmctdGVtcGxhdGUgI2N1c3RvbVRleHRUZW1wbGF0ZSBsZXQtZGF0YSBsZXQtaW5kZXg+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImRhdGEucGlwZVR5cGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIj5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZGF0YS50ZXh0Q3VzdG9tQ2xhc3Nlc1wiIGNsYXNzPVwidGV4dFwiPlxuICAgICAgICB7eyBkYXRhLmZpZWxkIHwgZGF0ZTogZGF0YS5waXBlU3RyaW5nIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY3VycmVuY3knXCI+XG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cImRhdGEudGV4dEN1c3RvbUNsYXNzZXNcIiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAge3sgZGF0YS5maWVsZCB8IGN1cnJlbmN5OiBkYXRhLnBpcGVTdHJpbmcgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZGF0YS50ZXh0Q3VzdG9tQ2xhc3Nlc1wiIGNsYXNzPVwidGV4dFwiPlxuICAgICAgICB7eyBkYXRhLmZpZWxkIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbWFpbi10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1tYWluLXRhYmxlL2NhLW1haW4tdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFpbi10YWJsZS9jYS1tYWluLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxFQUVMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLE9BQU8sRUFFUCxrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsZUFBZSxHQUNoQixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV6RCxRQUFRO0FBQ1IsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0VBQWtFLENBQUM7Ozs7QUFzQjdHLE1BQU0sT0FBTyxvQkFBb0I7SUEwQi9CLFlBQ1UsUUFBa0IsRUFDbEIsS0FBd0I7UUFEeEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQTNCM0IsY0FBUyxHQUFNLEVBQU8sQ0FBQztRQUU5QixVQUFVO1FBQ0EsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMxRCxjQUFTLEdBQ2pCLElBQUksWUFBWSxFQUF1QyxDQUFDO1FBS2pELHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxr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LEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBUUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQ2RrRHJhZyxcbiAgQ2RrRHJhZ0Ryb3AsXG4gIENka0RyYWdQbGFjZWhvbGRlcixcbiAgQ2RrRHJhZ1ByZXZpZXcsXG4gIENka0Ryb3BMaXN0LFxuICBDZGtEcm9wTGlzdEdyb3VwLFxuICBtb3ZlSXRlbUluQXJyYXksXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuXG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcblxuLy8gUGlwZXNcbmltcG9ydCB7IENhTWFpblRhYmxlSGlkZGVuUm93c1BpcGUgfSBmcm9tICcuL3BpcGVzL2NhLW1haW4tdGFibGUtaGlkZGVuLXJvd3MvY2EtbWFpbi10YWJsZS1oaWRkZW4tcm93cy5waXBlJztcblxuLy8gTW9kZWxzXG5pbXBvcnQgeyBDb2x1bW5Db25maWcgfSBmcm9tICcuL21vZGVscy9tYWluLXRhYmxlLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhLW1haW4tdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtbWFpbi10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDZGtEcm9wTGlzdEdyb3VwLFxuICAgIENka0Ryb3BMaXN0LFxuICAgIENka0RyYWcsXG4gICAgQ2RrRHJhZ1BsYWNlaG9sZGVyLFxuICAgIENka0RyYWdQcmV2aWV3LFxuICAgIENhTWFpblRhYmxlSGlkZGVuUm93c1BpcGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNjcm9sbGluZ01vZHVsZSxcbiAgXSxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtbWFpbi10YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5TaGFkb3dEb20sXG59KVxuZXhwb3J0IGNsYXNzIENhTWFpblRhYmxlQ29tcG9uZW50PFQgPSBhbnk+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIHRhYmxlRGF0YTogVCA9IHt9IGFzIFQ7XG5cbiAgLy8gT3V0cHV0c1xuICBAT3V0cHV0KCkgb25QcmVzc0V2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgb25SZW9yZGVyOiBFdmVudEVtaXR0ZXI8Q2RrRHJhZ0Ryb3A8YW55W10gfCBudWxsLCBhbnksIGFueT4+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPENka0RyYWdEcm9wPGFueVtdIHwgbnVsbCwgYW55LCBhbnk+PigpO1xuXG4gIC8vIElucHV0c1xuICBASW5wdXQoKSByZW9yZGVyVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSByZW9yZGVyVGVtcGxhdGVQcmV2aWV3ITogVGVtcGxhdGVSZWY8YW55PjtcbiAgQElucHV0KCkgdHJhbnNwYXJlbnRUYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzb3J0UHJlZGljYXRlOiAoaW5kZXg6IG51bWJlciwgaXRlbTogQ2RrRHJhZzxudW1iZXI+KSA9PiBib29sZWFuID0gKFxuICAgIF86IG51bWJlcixcbiAgICBfXzogQ2RrRHJhZzxudW1iZXI+XG4gICkgPT4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9O1xuXG4gIC8vIElucHV0c1xuICBASW5wdXQoKSBoaWRlRmllbGRzVG9IaWRlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJlb3JkZXJJdGVtczogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBkaXNhYmxlUmVvcmRlclJvdzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBjb2x1bW5zOiBDb2x1bW5Db25maWdbXSA9IFtdO1xuICBASW5wdXQoKSBkYXRhJCE6IE9ic2VydmFibGU8YW55W10+OyAvLyBBY2NlcHRzIHRoZSBkYXRhIGFzIGFuIG9ic2VydmFibGVcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgcHVibGljIG9uUHJlc3NSb3cocm93RGF0YTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblByZXNzRXZlbnQuZW1pdChyb3dEYXRhKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZGF0YSQuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAvLyBUcmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb24gdG8gdXBkYXRlIHRoZSB2aWV3IHdoZW4gZGF0YSBjaGFuZ2VzXG4gICAgICB0aGlzLnRhYmxlRGF0YSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlSW5qZWN0b3IoXG4gICAgaW5wdXRzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9XG4gICk6IEluamVjdG9yIHtcbiAgICBjb25zdCBpbnB1dFByb3ZpZGVycyA9IE9iamVjdC5rZXlzKGlucHV0cyB8fCB7fSkubWFwKChrZXkpID0+ICh7XG4gICAgICBwcm92aWRlOiBrZXksXG4gICAgICB1c2VWYWx1ZTogaW5wdXRzW2tleV0sXG4gICAgfSkpO1xuICAgIHJldHVybiBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcHJvdmlkZXJzOiBpbnB1dFByb3ZpZGVycyxcbiAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhdHRhY2hPdXRwdXRzKFxuICAgIGNvbXBvbmVudFJlZjogYW55LFxuICAgIG91dHB1dHM6IHsgW2tleTogc3RyaW5nXTogKGV2ZW50OiBhbnkpID0+IHZvaWQgfVxuICApOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyhvdXRwdXRzKS5mb3JFYWNoKChvdXRwdXRLZXkpID0+IHtcbiAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2Vbb3V0cHV0S2V5XSkge1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vbb3V0cHV0S2V5XS5zdWJzY3JpYmUob3V0cHV0c1tvdXRwdXRLZXldKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkcm9wSGVhZGVyKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pOiB2b2lkIHtcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5jb2x1bW5zLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICB9XG5cbiAgcHVibGljIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPGFueVtdIHwgbnVsbCwgYW55LCBhbnk+KTogdm9pZCB7XG4gICAgbW92ZUl0ZW1JbkFycmF5KFxuICAgICAgZXZlbnQuY29udGFpbmVyLmRhdGEhLFxuICAgICAgZXZlbnQucHJldmlvdXNJbmRleCxcbiAgICAgIGV2ZW50LmN1cnJlbnRJbmRleFxuICAgICk7XG5cbiAgICB0aGlzLm9uUmVvcmRlci5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNhLW1haW4tdGFibGUtaG9sZGVyXCI+XG4gIDwhLS0gPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCBpdGVtU2l6ZT1cIjQ0XCIgY2xhc3M9XCJtYWluLXRhYmxlLXNjcm9sbC12aWV3cG9ydFwiPiAtLT5cbiAgPHRhYmxlXG4gICAgY2xhc3M9XCJjYS1tYWluLXRhYmxlXCJcbiAgICBbY2xhc3MudHJhbnNwYXJlbnRdPVwidHJhbnNwYXJlbnRUYWJsZVwiXG4gICAgY2RrRHJvcExpc3RHcm91cFxuICA+XG4gICAgPHRoZWFkPlxuICAgICAgPHRyXG4gICAgICAgIGNka0Ryb3BMaXN0XG4gICAgICAgIGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcbiAgICAgICAgW2Nka0Ryb3BMaXN0RGlzYWJsZWRdPVwiIXJlb3JkZXJJdGVtc1wiXG4gICAgICAgIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcEhlYWRlcigkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJ0YWJsZS1ib2R5LWxpc3QgdGgtdGFibGUtYm9keS1saXN0XCJcbiAgICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNka0RyYWdMb2NrQXhpcz1cInhcIlxuICAgICAgICAgIGNka0RyYWdcbiAgICAgICAgICBjZGtEcmFnUHJldmlld0NvbnRhaW5lcj1cInBhcmVudFwiXG4gICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICBsZXQgY29sIG9mIGNvbHVtbnMgfCBjYU1haW5UYWJsZUhpZGRlblJvd3M6IGhpZGVGaWVsZHNUb0hpZGU7XG4gICAgICAgICAgICBsZXQgaW5keCA9IGluZGV4XG4gICAgICAgICAgXCJcbiAgICAgICAgICBjbGFzcz1cImNka190aF9kaXYgdGFibGUtdHJcIlxuICAgICAgICAgIFtjbGFzc109XCJjb2wuY2VsbEN1c3RvbUNsYXNzZXNcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgaGVhZGVyVGhUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogY29sLFxuICAgICAgICAgICAgICAgIGluZGV4OiBpbmR4LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3RyPlxuICAgIDwvdGhlYWQ+XG4gICAgPHRib2R5XG4gICAgICAjdGFibGVNYWluQm9keVxuICAgICAgY2RrU2Nyb2xsYWJsZVxuICAgICAgY2RrRHJvcExpc3RcbiAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiZGF0YSQgfCBhc3luY1wiXG4gICAgICBbY2RrRHJvcExpc3RTb3J0UHJlZGljYXRlXT1cInNvcnRQcmVkaWNhdGVcIlxuICAgICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxuICAgICAgY2xhc3M9XCJ0YWJsZS1ib2R5LWxpc3RcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHJvdyBvZiBkYXRhJCB8IGFzeW5jOyBsZXQgcm93SW5kZXggPSBpbmRleFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicm93LnJvd1R5cGUgIT0gJ3Jlb3JkZXInOyBlbHNlIHJlb3JkZXJcIj5cbiAgICAgICAgICA8dHJcbiAgICAgICAgICAgIGNka0RyYWdMb2NrQXhpcz1cInlcIlxuICAgICAgICAgICAgY2RrRHJhZ1xuICAgICAgICAgICAgY2RrRHJhZ1ByZXZpZXdDb250YWluZXI9XCJwYXJlbnRcIlxuICAgICAgICAgICAgY2RrRHJhZ0JvdW5kYXJ5PVwiLnRhYmxlLWJvZHktbGlzdFwiXG4gICAgICAgICAgICBbY2RrRHJhZ0Rpc2FibGVkXT1cIiFyZW9yZGVySXRlbXNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUHJlc3NSb3cocm93KVwiXG4gICAgICAgICAgICBjbGFzcz1cInRhYmxlLXRyXCJcbiAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZC1yb3ddPVwicm93LnNlbGVjdGVkXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgIGxldCBjb2wgb2YgY29sdW1ucyB8IGNhTWFpblRhYmxlSGlkZGVuUm93czogaGlkZUZpZWxkc1RvSGlkZVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8dGQgW2NsYXNzXT1cImNvbC5jZWxsQ3VzdG9tQ2xhc3Nlc1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgIHJvd1RlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7IHJvdzogcm93LCBjb2w6IGNvbCwgaW5kZXg6IHJvd0luZGV4IH1cbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNyZW9yZGVyPlxuICAgICAgICAgIDx0clxuICAgICAgICAgICAgY2RrRHJhZ0xvY2tBeGlzPVwieVwiXG4gICAgICAgICAgICBjZGtEcmFnXG4gICAgICAgICAgICBjZGtEcmFnUHJldmlld0NvbnRhaW5lcj1cInBhcmVudFwiXG4gICAgICAgICAgICBjZGtEcmFnQm91bmRhcnk9XCIudGFibGUtYm9keS1saXN0XCJcbiAgICAgICAgICAgIGNsYXNzPVwidGFibGUtdHIgdGFibGUtcHJldmlldy1yb3dcIlxuICAgICAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJkaXNhYmxlUmVvcmRlclJvd1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGNka0RyYWdQcmV2aWV3IG1hdGNoU2l6ZT5cbiAgICAgICAgICAgICAgPHRyIGNsYXNzPVwidGFibGUtdHJcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICByZW9yZGVyVGVtcGxhdGVQcmV2aWV3O1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7IHJvdzogcm93LCBpbmRleDogcm93SW5kZXggfVxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgIHJlb3JkZXJUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7IHJvdzogcm93LCBpbmRleDogcm93SW5kZXggfVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3Rib2R5PlxuICA8L3RhYmxlPlxuICA8IS0tIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PiAtLT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2hlYWRlclRoVGVtcGxhdGUgbGV0LWNvbCBsZXQtaW5keD1cImluZGV4XCI+XG4gIDx0aD5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJjb2wuaGVhZGVyQ2VsbFR5cGVcIj5cbiAgICAgIDwhLS0gVGVtcGxhdGUgY2VsbCAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZW1wbGF0ZSdcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBjb2wuaGVhZGVyVGVtcGxhdGU7XG4gICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICRpbXBsaWNpdDogY29sLmhlYWRlcixcbiAgICAgICAgICAgICAgaW5kZXg6IGluZHgsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8ZGl2ICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJ0aC1jb250ZW50LWNvbnRhaW5lclwiPlxuICAgICAgICB7eyBjb2wuaGVhZGVyIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC90aD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcm93VGVtcGxhdGUgbGV0LXJvdz1cInJvd1wiIGxldC1jb2w9XCJjb2xcIiBsZXQtaW5kZXg9XCJpbmRleFwiPlxuICA8ZGl2IGNsYXNzPVwidGQtY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cInRkLWNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJjb2wuY2VsbFR5cGVcIj5cbiAgICAgICAgPCEtLSBUZW1wbGF0ZSBjZWxsIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGVtcGxhdGUnXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgY29sLnRlbXBsYXRlO1xuICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiBjb2wucm93ID8gcm93IDogcm93W2NvbC5maWVsZF0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBDdXN0b20gY29tcG9uZW50IGNlbGwgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjb21wb25lbnQnXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nQ29tcG9uZW50T3V0bGV0PVwiXG4gICAgICAgICAgICAgIGNvbC5jb21wb25lbnQ7XG4gICAgICAgICAgICAgIGluamVjdG9yOiBjcmVhdGVJbmplY3Rvcihjb2wuaW5wdXRzKVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gRGVmYXVsdCBmYWxsYmFjayAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgIGN1c3RvbVRleHRUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDoge1xuICAgICAgICAgICAgICAgICAgZmllbGQ6IHJvd1tjb2wuZmllbGRdLFxuICAgICAgICAgICAgICAgICAgcGlwZVR5cGU6IGNvbC5waXBlVHlwZSxcbiAgICAgICAgICAgICAgICAgIHBpcGVTdHJpbmc6IGNvbC5waXBlU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgdGV4dEN1c3RvbUNsYXNzZXM6IGNvbC50ZXh0Q3VzdG9tQ2xhc3NlcyxcbiAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tIERlZmF1bHQgVGV4dCBUZW1wbGF0ZSAgLS0+XG48bmctdGVtcGxhdGUgI2N1c3RvbVRleHRUZW1wbGF0ZSBsZXQtZGF0YSBsZXQtaW5kZXg+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImRhdGEucGlwZVR5cGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIj5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZGF0YS50ZXh0Q3VzdG9tQ2xhc3Nlc1wiIGNsYXNzPVwidGV4dFwiPlxuICAgICAgICB7eyBkYXRhLmZpZWxkIHwgZGF0ZTogZGF0YS5waXBlU3RyaW5nIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY3VycmVuY3knXCI+XG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cImRhdGEudGV4dEN1c3RvbUNsYXNzZXNcIiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAge3sgZGF0YS5maWVsZCB8IGN1cnJlbmN5OiBkYXRhLnBpcGVTdHJpbmcgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZGF0YS50ZXh0Q3VzdG9tQ2xhc3Nlc1wiIGNsYXNzPVwidGV4dFwiPlxuICAgICAgICB7eyBkYXRhLmZpZWxkIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|