keevo-components 1.8.38 → 1.8.40

Sign up to get free protection for your applications and to get access to all the features.
Files changed (23) hide show
  1. package/esm2022/lib/api/components/table/action-item.mjs +1 -1
  2. package/esm2022/lib/components/keevo-components.module.mjs +2 -9
  3. package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +19 -5
  4. package/esm2022/lib/components/kv-chart/{kvchart.module.mjs → kv-chart.module.mjs} +1 -1
  5. package/esm2022/lib/components/kv-error/kv-error.component.mjs +1 -1
  6. package/esm2022/lib/components/kv-menu/kv-menu.component.mjs +14 -14
  7. package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +3 -3
  8. package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +2 -2
  9. package/esm2022/public-api.mjs +2 -4
  10. package/fesm2022/keevo-components.mjs +35 -410
  11. package/fesm2022/keevo-components.mjs.map +1 -1
  12. package/lib/api/components/table/action-item.d.ts +2 -0
  13. package/lib/components/keevo-components.module.d.ts +5 -6
  14. package/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.d.ts +7 -1
  15. package/lib/components/kv-menu/kv-menu.component.d.ts +6 -7
  16. package/lib/components/kv-table/kv-table.component.d.ts +1 -1
  17. package/package.json +2 -2
  18. package/public-api.d.ts +1 -3
  19. package/esm2022/lib/components/kv-treetable/kv-treetable.component.mjs +0 -371
  20. package/esm2022/lib/components/kv-treetable/kv-treetable.module.mjs +0 -32
  21. package/lib/components/kv-treetable/kv-treetable.component.d.ts +0 -85
  22. package/lib/components/kv-treetable/kv-treetable.module.d.ts +0 -11
  23. /package/lib/components/kv-chart/{kvchart.module.d.ts → kv-chart.module.d.ts} +0 -0
@@ -51,11 +51,11 @@ export class KvModalComponent {
51
51
  }
52
52
  }
53
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvModalComponent, deps: [{ token: i1.DynamicDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
54
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: KvModalComponent, selector: "kv-modal", inputs: { actions: "actions", actionsPosition: "actionsPosition" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, ngImport: i0, template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n<div class=\"flex flex-row flex-wrap gap-2 m-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KvButtonPersonalizeComponent, selector: "kv-button-personalize" }] }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: KvModalComponent, selector: "kv-modal", inputs: { actions: "actions", actionsPosition: "actionsPosition" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, ngImport: i0, template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n<div class=\"flex flex-row flex-wrap gap-2 m-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n colorHover=\"{{action.colorHover}}\"\n textColor=\"{{action.textColor}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KvButtonPersonalizeComponent, selector: "kv-button-personalize", inputs: ["colorHover", "textColor"] }] }); }
55
55
  }
56
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvModalComponent, decorators: [{
57
57
  type: Component,
58
- args: [{ selector: 'kv-modal', template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n<div class=\"flex flex-row flex-wrap gap-2 m-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999}\n"] }]
58
+ args: [{ selector: 'kv-modal', template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\n<div class=\"col-12\" id=\"content-modal\">\n <ng-content></ng-content>\n</div>\n\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\n<div class=\"flex flex-row flex-wrap gap-2 m-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\n <kv-button-personalize\n *ngFor=\" let action of actions\"\n [ngClass]=\"action.visible==false?'hidden':''\"\n color=\"{{action.color}}\"\n colorHover=\"{{action.colorHover}}\"\n textColor=\"{{action.textColor}}\"\n icon=\"{{action.icon}}\"\n label=\"{{action.label}}\"\n [disabled]=\"action.disabled || false\"\n (onClick)=\"clickExecute(action)\"\n />\n</div>", styles: ["::ng-deep .p-dialog .p-dialog-header{background:#002542!important;color:#fff!important}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999}\n"] }]
59
59
  }], ctorParameters: function () { return [{ type: i1.DynamicDialogRef }]; }, propDecorators: { onWindowResize: [{
60
60
  type: HostListener,
61
61
  args: ['window:resize', ['$event']]
@@ -64,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
64
64
  }], actionsPosition: [{
65
65
  type: Input
66
66
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQXNCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBWXhEOztXQUVHO1FBQ00sWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxPQUFPLENBQUM7UUFFM0Msb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQWxCVSxDQUFDO0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUdELGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQVVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssT0FBTyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxlQUFlLEdBQUcscUJBQXFCLENBQUE7U0FDN0M7UUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssUUFBUSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsd0JBQXdCLENBQUE7U0FDaEQ7UUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssTUFBTSxFQUFFO1lBQ25DLElBQUksQ0FBQyxlQUFlLEdBQUcsdUJBQXVCLENBQUE7U0FDL0M7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLENBQUM7UUFFaEYsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksa0JBQWtCLEVBQUU7Z0JBQ3RCLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLEdBQUcsa0JBQWtCLElBQUksQ0FBQzthQUN2RDtpQkFDSTtnQkFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7YUFDcEM7U0FDRjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsTUFBa0I7UUFDN0IsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFO1lBRWxCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVqQixJQUFJLE1BQU0sQ0FBQyxlQUFlLElBQUksS0FBSztnQkFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEU7SUFDSCxDQUFDOytHQXhEVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQix3TENmN0IsNHFCQWdCTTs7NEZERE8sZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFVBQVU7dUdBY3BCLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUWhDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcblxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrdi1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2t2LW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgS3ZNb2RhbENvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0TWFyZ2luQm90dG9tKCk7XG4gICAgdGhpcy5kZWZQb3NpdGlvbkJ1dHRvbnMoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBvbldpbmRvd1Jlc2l6ZSgpIHtcbiAgICB0aGlzLnNldE1hcmdpbkJvdHRvbSgpXG4gIH1cblxuICAvKipcbiAgICogQcOnw7VlcyBkbyBEaWFsb2dcbiAgICovXG4gIEBJbnB1dCgpIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xuICBASW5wdXQoKSBhY3Rpb25zUG9zaXRpb246IHN0cmluZyA9ICdyaWdodCc7XG5cbiAganVzdGlmeV9jb250ZW50OiBzdHJpbmcgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0JztcblxuICBkZWZQb3NpdGlvbkJ1dHRvbnMoKSB7XG4gICAgaWYgKHRoaXMuYWN0aW9uc1Bvc2l0aW9uID09PSAncmlnaHQnKSB7XG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1xuICAgIH1cbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdjZW50ZXInKSB7XG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJ1xuICAgIH1cbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdsZWZ0Jykge1xuICAgICAgdGhpcy5qdXN0aWZ5X2NvbnRlbnQgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0J1xuICAgIH1cbiAgfVxuXG4gIHNldE1hcmdpbkJvdHRvbSgpIHtcbiAgICBsZXQgYWN0aW9uc0ZpZWxkSGVpZ2h0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FjdGlvbnMtZmllbGQnKT8ub2Zmc2V0SGVpZ2h0O1xuXG4gICAgbGV0IGRpdkJveCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb250ZW50LW1vZGFsJyk7XG5cbiAgICBpZiAoZGl2Qm94KSB7XG4gICAgICBpZiAoYWN0aW9uc0ZpZWxkSGVpZ2h0KSB7XG4gICAgICAgIGRpdkJveC5zdHlsZS5tYXJnaW5Cb3R0b20gPSBgJHthY3Rpb25zRmllbGRIZWlnaHR9cHhgO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGRpdkJveC5zdHlsZS5tYXJnaW5Cb3R0b20gPSBgNTBweGA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2xpY2tFeGVjdXRlKGFjdGlvbjogQWN0aW9uSXRlbSkge1xuICAgIGlmIChhY3Rpb24uY29tbWFuZCkge1xuXG4gICAgICBhY3Rpb24uY29tbWFuZCgpO1xuXG4gICAgICBpZiAoYWN0aW9uLmNsb3NlQWZ0ZXJDbGljayAhPSBmYWxzZSkgdGhpcy5keW5hbWljRGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuICB9XG59IiwiPCEtLSBSRU5ERVJJWkHDh8ODTyBETyBNT0RBTCAtLT5cbjxkaXYgY2xhc3M9XCJjb2wtMTJcIiBpZD1cImNvbnRlbnQtbW9kYWxcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPCEtLSBSRU5ERVJJWkHDh8ODTyBET1MgQk9Uw5VFUyAtLT5cbjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBnYXAtMiBtLTIgbW9kYWwtYmFycmEtYWNvZXMge3tqdXN0aWZ5X2NvbnRlbnR9fVwiICpuZ0lmPVwiYWN0aW9uc1wiIGlkPVwiYWN0aW9ucy1maWVsZFwiPlxuICAgICAgICA8a3YtYnV0dG9uLXBlcnNvbmFsaXplXG4gICAgICAgICAgICAqbmdGb3I9XCIgbGV0IGFjdGlvbiBvZiBhY3Rpb25zXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImFjdGlvbi52aXNpYmxlPT1mYWxzZT8naGlkZGVuJzonJ1wiXG4gICAgICAgICAgICBjb2xvcj1cInt7YWN0aW9uLmNvbG9yfX1cIlxuICAgICAgICAgICAgaWNvbj1cInt7YWN0aW9uLmljb259fVwiXG4gICAgICAgICAgICBsYWJlbD1cInt7YWN0aW9uLmxhYmVsfX1cIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImFjdGlvbi5kaXNhYmxlZCB8fCBmYWxzZVwiXG4gICAgICAgICAgICAob25DbGljayk9XCJjbGlja0V4ZWN1dGUoYWN0aW9uKVwiXG4gICAgICAgIC8+XG48L2Rpdj4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQXNCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBWXhEOztXQUVHO1FBQ00sWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxPQUFPLENBQUM7UUFFM0Msb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQWxCVSxDQUFDO0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUdELGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQVVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssT0FBTyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxlQUFlLEdBQUcscUJBQXFCLENBQUE7U0FDN0M7UUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssUUFBUSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsd0JBQXdCLENBQUE7U0FDaEQ7UUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssTUFBTSxFQUFFO1lBQ25DLElBQUksQ0FBQyxlQUFlLEdBQUcsdUJBQXVCLENBQUE7U0FDL0M7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLENBQUM7UUFFaEYsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksa0JBQWtCLEVBQUU7Z0JBQ3RCLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLEdBQUcsa0JBQWtCLElBQUksQ0FBQzthQUN2RDtpQkFDSTtnQkFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7YUFDcEM7U0FDRjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsTUFBa0I7UUFDN0IsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFO1lBRWxCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVqQixJQUFJLE1BQU0sQ0FBQyxlQUFlLElBQUksS0FBSztnQkFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEU7SUFDSCxDQUFDOytHQXhEVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQix3TENmN0IsOHdCQWtCTTs7NEZESE8sZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFVBQVU7dUdBY3BCLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUWhDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcblxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrdi1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2t2LW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgS3ZNb2RhbENvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0TWFyZ2luQm90dG9tKCk7XG4gICAgdGhpcy5kZWZQb3NpdGlvbkJ1dHRvbnMoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBvbldpbmRvd1Jlc2l6ZSgpIHtcbiAgICB0aGlzLnNldE1hcmdpbkJvdHRvbSgpXG4gIH1cblxuICAvKipcbiAgICogQcOnw7VlcyBkbyBEaWFsb2dcbiAgICovXG4gIEBJbnB1dCgpIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xuICBASW5wdXQoKSBhY3Rpb25zUG9zaXRpb246IHN0cmluZyA9ICdyaWdodCc7XG5cbiAganVzdGlmeV9jb250ZW50OiBzdHJpbmcgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0JztcblxuICBkZWZQb3NpdGlvbkJ1dHRvbnMoKSB7XG4gICAgaWYgKHRoaXMuYWN0aW9uc1Bvc2l0aW9uID09PSAncmlnaHQnKSB7XG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1xuICAgIH1cbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdjZW50ZXInKSB7XG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJ1xuICAgIH1cbiAgICBpZiAodGhpcy5hY3Rpb25zUG9zaXRpb24gPT09ICdsZWZ0Jykge1xuICAgICAgdGhpcy5qdXN0aWZ5X2NvbnRlbnQgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0J1xuICAgIH1cbiAgfVxuXG4gIHNldE1hcmdpbkJvdHRvbSgpIHtcbiAgICBsZXQgYWN0aW9uc0ZpZWxkSGVpZ2h0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FjdGlvbnMtZmllbGQnKT8ub2Zmc2V0SGVpZ2h0O1xuXG4gICAgbGV0IGRpdkJveCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb250ZW50LW1vZGFsJyk7XG5cbiAgICBpZiAoZGl2Qm94KSB7XG4gICAgICBpZiAoYWN0aW9uc0ZpZWxkSGVpZ2h0KSB7XG4gICAgICAgIGRpdkJveC5zdHlsZS5tYXJnaW5Cb3R0b20gPSBgJHthY3Rpb25zRmllbGRIZWlnaHR9cHhgO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGRpdkJveC5zdHlsZS5tYXJnaW5Cb3R0b20gPSBgNTBweGA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2xpY2tFeGVjdXRlKGFjdGlvbjogQWN0aW9uSXRlbSkge1xuICAgIGlmIChhY3Rpb24uY29tbWFuZCkge1xuXG4gICAgICBhY3Rpb24uY29tbWFuZCgpO1xuXG4gICAgICBpZiAoYWN0aW9uLmNsb3NlQWZ0ZXJDbGljayAhPSBmYWxzZSkgdGhpcy5keW5hbWljRGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuICB9XG59IiwiPCEtLSBSRU5ERVJJWkHDh8ODTyBETyBNT0RBTCAtLT5cbjxkaXYgY2xhc3M9XCJjb2wtMTJcIiBpZD1cImNvbnRlbnQtbW9kYWxcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPCEtLSBSRU5ERVJJWkHDh8ODTyBET1MgQk9Uw5VFUyAtLT5cbjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBnYXAtMiBtLTIgbW9kYWwtYmFycmEtYWNvZXMge3tqdXN0aWZ5X2NvbnRlbnR9fVwiICpuZ0lmPVwiYWN0aW9uc1wiIGlkPVwiYWN0aW9ucy1maWVsZFwiPlxuICAgICAgICA8a3YtYnV0dG9uLXBlcnNvbmFsaXplXG4gICAgICAgICAgICAqbmdGb3I9XCIgbGV0IGFjdGlvbiBvZiBhY3Rpb25zXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImFjdGlvbi52aXNpYmxlPT1mYWxzZT8naGlkZGVuJzonJ1wiXG4gICAgICAgICAgICBjb2xvcj1cInt7YWN0aW9uLmNvbG9yfX1cIlxuICAgICAgICAgICAgY29sb3JIb3Zlcj1cInt7YWN0aW9uLmNvbG9ySG92ZXJ9fVwiXG4gICAgICAgICAgICB0ZXh0Q29sb3I9XCJ7e2FjdGlvbi50ZXh0Q29sb3J9fVwiXG4gICAgICAgICAgICBpY29uPVwie3thY3Rpb24uaWNvbn19XCJcbiAgICAgICAgICAgIGxhYmVsPVwie3thY3Rpb24ubGFiZWx9fVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uLmRpc2FibGVkIHx8IGZhbHNlXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImNsaWNrRXhlY3V0ZShhY3Rpb24pXCJcbiAgICAgICAgLz5cbjwvZGl2PiJdfQ==
@@ -487,11 +487,11 @@ export class KvTableEditComponent {
487
487
  return this.config.columns.some((column) => 'fieldControlType' in column);
488
488
  }
489
489
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvTableEditComponent, deps: [{ token: i1.DatePipe }, { token: i1.DecimalPipe }, { token: i2.CodigoFipePipe }, { token: i2.CpfCnpjPipe }, { token: i2.TelefonePipe }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
490
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: KvTableEditComponent, selector: "kv-table-edit", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", editMode: "editMode", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows", pageLinksOptions: "pageLinksOptions", showFirstLastIcon: "showFirstLastIcon", tableSize: "tableSize", applyStyle: "applyStyle", acoesLinhaTabela: "acoesLinhaTabela", filterColumnsBtn: "filterColumnsBtn", filtrosAvancados: "filtrosAvancados", scrollHeight: "scrollHeight", isTableScrollable: "isTableScrollable", rowTrackBy: "rowTrackBy", responsiveLayout: "responsiveLayout", espacamentoPai: "espacamentoPai", espacamentoLateral: "espacamentoLateral", tamanhoTotalTabela: "tamanhoTotalTabela", rightCollapse: "rightCollapse", _templates: ["templates", "_templates"] }, outputs: { onFilter: "onFilter", onRowSave: "onRowSave", onActiveItem: "onActiveItem", onActiveItemLote: "onActiveItemLote", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange", doubleClickEvent: "doubleClickEvent", filterField: "filterField", onSwitchTableChange: "onSwitchTableChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, usesOnChanges: true, ngImport: i0, template: "\n\n<div class=\"card\" >\n <p-toast></p-toast>\n\n <p-panel\n *ngIf=\"filtrosAvancados\"\n header=\"Filtros avan\u00E7ados\"\n [toggleable]=\"true\"\n [collapsed]=\"true\"\n (collapsedChange)=\"collapsed = !collapsed\"\n [style]=\"{ 'margin-bottom': '2px' }\"\n >\n <ng-template pTemplate=\"headericons\">\n <i\n *ngIf=\"!collapsed\"\n class=\"pi pi-filter\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 aberto -->\n <i\n *ngIf=\"collapsed\"\n class=\"pi pi-minus\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 fechado -->\n </ng-template>\n <ng-content></ng-content>\n </p-panel>\n\n <p-contextMenu #cm [model]=\"items\"></p-contextMenu>\n <p-table\n #te\n [reorderableColumns]=\"config.reorderableColumns || false\"\n *ngIf=\"config\"\n [value]=\"dataSource\"\n [dataKey]=\"config.dataKey\"\n [tableStyle]=\"{ 'min-width': '50rem' }\"\n [columns]=\"config.columns\"\n [editMode]=\"'row'\"\n [scrollable]=\"true\"\n scrollHeight=\"400px\"\n appendTo=\"body\"\n [styleClass]=\"'p-datatable-sm'\"\n [(selection)]=\"selectedItems\"\n [rowSelectable]=\"isRowSelectable\"\n [globalFilterFields]=\"globalFilterFields\"\n [rows]=\"rows\"\n [paginator]=\"paginator\"\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\n [showCurrentPageReport]=\"true\"\n currentPageReportTemplate=\"{first} - {last} de {{ totalRecords }}\"\n (selectionChange)=\"selectionChange($event)\"\n [rowHover]=\"true\"\n [totalRecords]=\"totalRecords\"\n [lazy]=\"config.lazy\"\n (onLazyLoad)=\"paginate($event)\"\n [groupRowsBy]=\"config.fieldGroup\"\n [showFirstLastIcon]=\"showFirstLastIcon\"\n [pageLinks]=\"pageLinksOptions\"\n [scrollable]=\"isTableScrollable\"\n [scrollHeight]=\"scrollHeight\"\n [rowTrackBy]=\"rowTrackBy \"\n [(contextMenuSelection)]=\"selectedProduct\"\n [contextMenu]=\" isEditableTable() ? cm : null\"\n >\n\n\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <ng-template\n pTemplate=\"caption\"\n *ngIf=\"config.enableCation\"\n >\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\n <div class=\"col-12 flex flex-column\">\n <div\n *ngIf=\"config.title\"\n class=\"text-md font-bold my-3\"\n >\n {{ config.title }}\n </div>\n <div\n *ngIf=\"config.subtitle\"\n class=\"text-sm mb-4 font-medium\"\n >\n {{ config.subtitle }}\n </div>\n </div>\n\n <div class=\"flex flex-row align-items-center md:col-6 lg:col-4 {{\n tamanhoTela < 768 ? 'col-10' : 'col-12'\n }} mt-1 mb-2 \">\n <span\n *ngIf=\"config.enableFilter\"\n class=\"p-input-icon-left\"\n >\n <i class=\"pi pi-search\"></i>\n\n <input\n pInputText\n pAutoFocus\n [autofocus]=\"true\"\n type=\"text\"\n (input)=\"onGlobalFilter(te, $event)\"\n placeholder=\"Pesquisar...\"\n class=\"h-2rem\"\n />\n </span>\n\n </div>\n\n <div class=\"flex flex-row col-1 justify-content-end\">\n <div\n *ngFor=\"let action of config.actionsLote\"\n class=\"btns-options\"\n [style]=\"{ 'margin-right': '7px' }\"\n >\n <button\n id=\"actionLoteBtns\"\n pButton\n *ngIf=\"\n (selectedItems.length > 0 || action.showAcoesLote) &&\n exibirCampo(action, this.action)\n \"\n class=\"actionLoteBtns p-button-raised p-button-text\"\n (click)=\"\n action?.command(commandEvent); activeItemLote(selectedItems)\n \"\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\n [tooltipPosition]=\"'bottom'\"\n [style.backgroundColor]=\"\n retornarCampo(action, selectedItems, 'btnColor')\n \"\n [disabled]=\"retornarCampo(action, selectedItems, 'disabled')\"\n >\n <span\n class=\"material-symbols-outlined md-22\"\n [style.color]=\"\n retornarCampo(action, selectedItems, 'iconBtnColor')\n \"\n >\n {{ retornarCampo(action, selectedItems, \"icon\") }}\n </span>\n </button>\n </div>\n </div>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n </div>\n </ng-template>\n\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n <th\n style=\"width: 4rem; border-left: solid 4px transparent\"\n *ngIf=\"config.enableSelect\"\n >\n <p-tableHeaderCheckbox (click)=\"activeItemLote(selectedItems)\"></p-tableHeaderCheckbox>\n </th>\n\n <th\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.field\"\n [pSortableColumnDisabled]=\"col.sortable === false\"\n [style.min-width]=\"col.width\"\n pReorderableColumn\n class=\"text-sm\"\n >\n <div\n [class]=\"\n centralizarColunas(col) && alignColunasHeader(col) == ''\n ? 'flex flex-row justify-content-center'\n : 'flex flex-row'\n \"\n [style]=\"alignColunasHeader(col)\"\n >\n <span>{{ col.header }}</span>\n <p-sortIcon\n *ngIf=\"col.sortable === true\"\n [field]=\"col.field\"\n style=\"font-size: 10px\"\n ></p-sortIcon>\n\n <span\n *ngIf=\"col.headerTooltip\"\n class=\"material-symbols-outlined flex align-items-center\"\n [pTooltip]=\"col.headerTooltip\"\n >info</span>\n </div>\n </th>\n <th *ngIf=\"config.actions && config.actions.length > 0\"></th>\n <th *ngIf=\"isEditableTable()\" id=\"th-edit\" style=\"width: 20px\">Editar</th>\n </tr>\n </ng-template>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <ng-template pTemplate=\"body\" let-rowData let-editing=\"editing\" let-ri=\"rowIndex\" let-columns=\"columns\"\n let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\n <tr [pEditableRow]=\"rowData\" [pEditableRowDisabled]=\"false\"\n [pContextMenuRow]=\"{rowData, editing}\"\n >\n\n\n <td\n *ngIf=\"config.enableSelect\"\n [style]=\"applyStyle(rowData, { field: 'check-box', header: '' })\"\n >\n <!--<p-tableCheckbox *ngIf=\"isVisibleCheckbox(rowData)\"-->\n <p-tableCheckbox\n [value]=\"rowData\"\n [disabled]=\"isDisabledCheckbox(rowData)\"\n (click)=\"activeItemLote(selectedItems)\"\n ></p-tableCheckbox>\n </td>\n\n\n <ng-container *ngFor=\"let col of columns; let i = index\">\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <!-- Celula que armazena os controles de edi\u00E7\u00E3o para os campos -->\n <td *ngIf=\"col.fieldControlType\"\n [id]=\"'rowTable'+ rowData[config.dataKey]\"\n pSelectableRowDblClick=\"\"\n (click)=\"activeItem(rowData)\"\n (dblclick)=\"dbClickEdit()\"\n pSelectableRowDblClick=\"\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col) \" [pTooltip]=\"returnTooltipRow(rowData, col)\"\n >\n <p-cellEditor [ngClass]=\"{'switch': col.fieldControlType == 'switch'}\">\n <!-- Controle de edi\u00E7\u00E3o do campo -->\n <ng-template pTemplate=\"input\">\n\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n\n <ng-container *ngSwitchCase=\"'text'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-text [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-text>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'number'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-number [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-number>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-mask [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [mask]=\"col.mask\" [required]=\"col.required ?? true\" [(ngModel)]=\"rowData[col.field]\"></kv-input-mask>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-switch [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" ></kv-switch>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n <div [style.width]=\"col.width\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-calendar class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\"></kv-input-calendar>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <p-dropdown\n [disabled]=\"isDisableEditRowCellFunction(rowData, col)\"\n class=\"cellControl col\"\n appendTo=\"body\"\n [optionLabel]=\"col.fieldDropDownControl.descricaoobjeto\"\n [optionValue]=\"col.fieldDropDownControl.idobjeto\"\n [options]=\"col.fieldDropDownControl.fieldControlDropdownSource\"\n [(ngModel)]=\"rowData[col.field]\"\n >\n </p-dropdown>\n </div>\n </ng-container>\n </ng-container>\n </ng-template>\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <!-- Valor atual do campo -->\n <ng-template pTemplate=\"output\">\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <ng-container *ngIf=\"rowData[col.field]\">\n {{\n retornaDescricaoDrop(\n rowData,\n col\n )\n }}\n <!-- {{rowData[col.field]}} -->\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <kv-switch [(ngModel)]=\"rowData[col.field]\" [disabled]=\"true\"></kv-switch>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n {{ rowData[col.field] | date }}\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n {{ rowData[col.field] | mask:col.mask }}\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n {{ rowData[col.field] }}\n </ng-container>\n\n </ng-container>\n </ng-template>\n </p-cellEditor>\n </td>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n <td *ngIf=\"rowgroup && !col.template && !col.fieldControlType\" [attr.rowspan]=\"rowgroup && col.grouped ? rowspan : null\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">{{\n transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"!rowgroup && !col.grouped && !col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n <ng-container *ngIf=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutlet]=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\">\n </ng-container>\n </td>\n\n </ng-container>\n\n\n\n\n\n\n\n\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de a\u00E7\u00E3o -->\n <td [ngClass]=\"{'td-tools': isEditableTable(), 'td-tools-sticky': !isEditableTable() }\"\n *ngIf=\"config.actions && config.actions.length > 0 && !editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n <div\n *ngFor=\"let action of config.actions\"\n class=\"mr-1\"\n >\n <!-- <button\n id=\"actionBtns\"\n pButton\n *ngIf=\"exibirCampo(action, rowData)\"\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"activeItem(rowData); action?.command(commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n [disabled]=\"callDisabled(action, rowData)\"\n >\n <span class=\"material-symbols-outlined md-19\">\n {{ retornarCampo(action, rowData, \"icon\") }}</span\n >\n </button> -->\n\n <span\n class=\"material-symbols-outlined {{\n callDisabled(action, rowData)\n ? 'text-gray-400 cursor-auto'\n : 'cursor-pointer'\n }}\"\n style=\"font-size: 20px\"\n (click)=\"isButtonDisable(action, rowData, commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n >\n {{ retornarCampo(action, rowData, \"icon\") }}\n </span>\n </div>\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n <!-- <button\n id=\"moreVertBtn\"\n pButton\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n > -->\n <span\n class=\"material-symbols-outlined cursor-pointer icon-more-horiz\"\n style=\"font-size: 20px\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n >\n more_horiz\n </span>\n <!-- </button> -->\n\n <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div>\n\n <!-- <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div> -->\n\n <p-menu\n #menu\n [popup]=\"true\"\n [model]=\"menuItems\"\n appendTo=\"body\"\n ></p-menu>\n </div>\n </td>\n\n <td\n class=\"td-tools\"\n *ngIf=\"config.actions && config.actions.length > 0 && editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n </div>\n </td>\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de edi\u00E7\u00E3o -->\n <td class=\"td-edit\" *ngIf=\"this.isEditableTable()\" >\n <div class=\"flex align-items-center justify-content-center gap-2\">\n <button [style.height]=\"'28px'\" [id]=\"'rowEdit' + rowData[config.dataKey] \" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow icon=\"pi pi-pencil\"\n (click)=\"onRowEditInit(rowData)\" class=\"p-button-rounded p-button-text\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow icon=\"pi pi-check\"\n (click)=\"onRowEditSave(rowData, ri)\" [id]=\"'rowSave' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-success mr-2\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow icon=\"pi pi-times\"\n (click)=\"onRowEditCancel(rowData, ri)\" [id]=\"'rowCancel' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-danger\"></button>\n </div>\n </td>\n\n\n\n\n </tr>\n </ng-template>\n </p-table>\n</div>\n", styles: ["@charset \"UTF-8\";.td-edit{position:sticky;right:-1px;background-color:#fff;color:#5289b4}.td-tools{position:sticky;right:52px;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}.td-tools-sticky{position:sticky;right:0;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}#th-edit{position:sticky;right:0;background-color:#eaeaea}:host ::ng-deep .p-datatable .p-datatable-tbody>tr>td{text-align:center;border:1px solid #eaeaea;border-width:1px 1px;padding:0rem .5rem}:host ::ng-deep .p-datatable .p-datatable-thead>tr>th{text-align:center;padding:0rem .5rem;border:1px solid #dee2e6;border-width:1px 1px;font-weight:700;color:#343a40;background:#eaeaea;transition:box-shadow .2s}.error-show{background-color:red;width:5px;height:10px}.btns-options{position:relative;left:20px}.chip-style{border:solid 1px}:host::ng-deep .p-card .p-card-content{padding:0}.material-symbols-outlined.md-19{font-size:15px}.material-symbols-outlined.md-22{font-size:19px}.checkbox-container{display:flex;align-items:center;gap:2px;margin-top:5px}#botaoFiltro:hover{color:#a9a9a9}.actionLoteBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;font-size:16px;width:2rem;height:2rem;top:2px;margin-left:.5rem;justify-content:center;text-decoration:none;text-align:justify;padding:12px}:host ::ng-deep .center{display:flex;align-items:center;justify-content:center}#actionLoteBtns:hover,.actionLoteBtns:hover{background-color:#29b92d!important}.actionBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;width:.8rem;height:.8rem;margin-left:.22rem;justify-content:center;text-decoration:none;text-align:justify;padding:11px}:host::ng-deep .material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;line-height:.9;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}#actionBtns:hover{color:#a9a9a9}.image{border-style:solid;border-width:3.5px;border-color:#5289b4;border-radius:100%;height:55px;width:55px;padding:0;margin:0;vertical-align:middle}:host ::ng-deep .p-inputtext{font-size:.75rem}:host ::ng-deep .p-datatable-table{font-size:.75rem}:host ::ng-deep .p-datatable-header{background-color:#eaeaea!important;padding:2px 13px 0!important;border-radius:5px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th{background-color:#eaeaea!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:5px 0 0 5px}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-child{border-radius:0 5px 5px 0}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td{border-bottom:1px solid #ddd!important;border-top:1px solid #ddd!important}:host ::ng-deep .actionBtns,:host ::ng-deep .actionLoteBtns{border-radius:50%;width:2.5rem!important;height:2.5rem!important;box-shadow:#0000003d 0 3px 8px}.icon-more-horiz:hover,.icon-more-horiz:focus{color:#5e5e5e;transform:scale(1.1);transition:color .3s,transform .3s}@media only screen and (min-width: 768px){.actionLoteBtns{top:-1px}}@media only screen and (max-width: 960px){:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(p-tablecheckbox){border-bottom:0px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img){justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img) .p-column-title{display:none!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid #ddd!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child div{justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td .p-column-title{font-weight:600}}::ng-deep .p-panel.p-panel-toggleable .p-panel-header{background-color:#eaeaea!important}::ng-deep .field.grid,.formgrid.grid{padding:0rem!important}@media screen and (min-width: 961px){.moreVertBtn{position:relative;right:3px}}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-of-type{border-radius:0 0 5px!important}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:0 0 0 5px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before{transform:translate(1.25rem);height:15px;margin-top:-8px;-webkit-transform:translateX(1.25rem);-moz-transform:translateX(1.25rem);-ms-transform:translateX(1.25rem);-o-transform:translateX(1.25rem)}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider:before{background:#fff;width:1rem;height:1.25rem;height:16px!important;left:.25rem;margin-top:-9px!important;margin-top:-.625rem;border-radius:50%;transition-duration:.2s}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch:not(.p-disabled) .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>div>kv-input-text>span>.inputs{height:15px!important}:host ::ng-deep p-celleditor>div>p-dropdown>.p-dropdown:not(.p-paginator-rpp-options){height:25px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider{height:21px!important}:host ::ng-deep input.p-inputtext.p-component.p-element.p-inputmask.inputs.p-filled{height:15px}:host::ng-deep .p-dropdown-items{font-size:.1rem!important;padding:.5rem 1.5rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i4.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i6.ContextMenu, selector: "p-contextMenu", inputs: ["model", "triggerEvent", "target", "global", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "id", "ariaLabel", "ariaLabelledBy"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i8.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i9.InputText, selector: "[pInputText]" }, { kind: "component", type: i10.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "component", type: i11.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i12.Ripple, selector: "[pRipple]" }, { kind: "component", type: i13.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i13.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i13.ContextMenuRow, selector: "[pContextMenuRow]", inputs: ["pContextMenuRow", "pContextMenuRowIndex", "pContextMenuRowDisabled"] }, { kind: "directive", type: i13.ReorderableColumn, selector: "[pReorderableColumn]", inputs: ["pReorderableColumnDisabled"] }, { kind: "component", type: i13.CellEditor, selector: "p-cellEditor" }, { kind: "component", type: i13.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i13.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i13.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: i13.SelectableRowDblClick, selector: "[pSelectableRowDblClick]", inputs: ["pSelectableRowDblClick", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i13.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i13.InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "directive", type: i13.SaveEditableRow, selector: "[pSaveEditableRow]" }, { kind: "directive", type: i13.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "component", type: i14.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i15.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i15.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i15.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i16.KvInputCalendarComponent, selector: "kv-input-calendar", inputs: ["isYear", "isMonthYear", "minDate", "maxDate", "showButtonBar", "showIcon", "showTime", "selectionMode"], outputs: ["onSelectionChange", "onSelectionValue"] }, { kind: "component", type: i17.KvInputMaskComponent, selector: "kv-input-mask", inputs: ["mask"], outputs: ["onComplete"] }, { kind: "component", type: i18.KvInputNumberComponent, selector: "kv-input-number", inputs: ["mode", "digits", "min", "max", "suffix"] }, { kind: "component", type: i19.KvInputTextComponent, selector: "kv-input-text" }, { kind: "component", type: i20.KvSwitchComponent, selector: "kv-switch", inputs: ["readonly", "switchValue"], outputs: ["onSwitchChange"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i21.MaskPipe, name: "mask" }] }); }
490
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: KvTableEditComponent, selector: "kv-table-edit", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", editMode: "editMode", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows", pageLinksOptions: "pageLinksOptions", showFirstLastIcon: "showFirstLastIcon", tableSize: "tableSize", applyStyle: "applyStyle", acoesLinhaTabela: "acoesLinhaTabela", filterColumnsBtn: "filterColumnsBtn", filtrosAvancados: "filtrosAvancados", scrollHeight: "scrollHeight", isTableScrollable: "isTableScrollable", rowTrackBy: "rowTrackBy", responsiveLayout: "responsiveLayout", espacamentoPai: "espacamentoPai", espacamentoLateral: "espacamentoLateral", tamanhoTotalTabela: "tamanhoTotalTabela", rightCollapse: "rightCollapse", _templates: ["templates", "_templates"] }, outputs: { onFilter: "onFilter", onRowSave: "onRowSave", onActiveItem: "onActiveItem", onActiveItemLote: "onActiveItemLote", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange", doubleClickEvent: "doubleClickEvent", filterField: "filterField", onSwitchTableChange: "onSwitchTableChange" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, usesOnChanges: true, ngImport: i0, template: "\n\n<div class=\"card\" >\n <p-toast></p-toast>\n\n <p-panel\n *ngIf=\"filtrosAvancados\"\n header=\"Filtros avan\u00E7ados\"\n [toggleable]=\"true\"\n [collapsed]=\"true\"\n (collapsedChange)=\"collapsed = !collapsed\"\n [style]=\"{ 'margin-bottom': '2px' }\"\n >\n <ng-template pTemplate=\"headericons\">\n <i\n *ngIf=\"!collapsed\"\n class=\"pi pi-filter\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 aberto -->\n <i\n *ngIf=\"collapsed\"\n class=\"pi pi-minus\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 fechado -->\n </ng-template>\n <ng-content></ng-content>\n </p-panel>\n\n <p-contextMenu #cm [model]=\"items\"></p-contextMenu>\n <p-table\n #te\n [reorderableColumns]=\"config.reorderableColumns || false\"\n *ngIf=\"config\"\n [value]=\"dataSource\"\n [dataKey]=\"config.dataKey\"\n [tableStyle]=\"{ 'min-width': '50rem' }\"\n [columns]=\"config.columns\"\n [editMode]=\"'row'\"\n [scrollable]=\"true\"\n scrollHeight=\"400px\"\n appendTo=\"body\"\n [styleClass]=\"'p-datatable-sm'\"\n [(selection)]=\"selectedItems\"\n [rowSelectable]=\"isRowSelectable\"\n [globalFilterFields]=\"globalFilterFields\"\n [rows]=\"rows\"\n [paginator]=\"paginator\"\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\n [showCurrentPageReport]=\"true\"\n currentPageReportTemplate=\"{first} - {last} de {{ totalRecords }}\"\n (selectionChange)=\"selectionChange($event)\"\n [rowHover]=\"true\"\n [totalRecords]=\"totalRecords\"\n [lazy]=\"config.lazy\"\n (onLazyLoad)=\"paginate($event)\"\n [groupRowsBy]=\"config.fieldGroup\"\n [showFirstLastIcon]=\"showFirstLastIcon\"\n [pageLinks]=\"pageLinksOptions\"\n [scrollable]=\"isTableScrollable\"\n [scrollHeight]=\"scrollHeight\"\n [rowTrackBy]=\"rowTrackBy \"\n [(contextMenuSelection)]=\"selectedProduct\"\n [contextMenu]=\" isEditableTable() ? cm : null\"\n >\n\n\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <ng-template\n pTemplate=\"caption\"\n *ngIf=\"config.enableCation\"\n >\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\n <div class=\"col-12 flex flex-column\">\n <div\n *ngIf=\"config.title\"\n class=\"text-md font-bold my-3\"\n >\n {{ config.title }}\n </div>\n <div\n *ngIf=\"config.subtitle\"\n class=\"text-sm mb-4 font-medium\"\n >\n {{ config.subtitle }}\n </div>\n </div>\n\n <div class=\"flex flex-row align-items-center md:col-6 lg:col-4 {{\n tamanhoTela < 768 ? 'col-10' : 'col-12'\n }} mt-1 mb-2 \">\n <span\n *ngIf=\"config.enableFilter\"\n class=\"p-input-icon-left\"\n >\n <i class=\"pi pi-search\"></i>\n\n <input\n pInputText\n pAutoFocus\n [autofocus]=\"true\"\n type=\"text\"\n (input)=\"onGlobalFilter(te, $event)\"\n placeholder=\"Pesquisar...\"\n class=\"h-2rem\"\n />\n </span>\n\n </div>\n\n <div class=\"flex flex-row col-1 justify-content-end\">\n <div\n *ngFor=\"let action of config.actionsLote\"\n class=\"btns-options\"\n [style]=\"{ 'margin-right': '7px' }\"\n >\n <button\n id=\"actionLoteBtns\"\n pButton\n *ngIf=\"\n (selectedItems.length > 0 || action.showAcoesLote) &&\n exibirCampo(action, this.action)\n \"\n class=\"actionLoteBtns p-button-raised p-button-text\"\n (click)=\"\n action?.command(commandEvent); activeItemLote(selectedItems)\n \"\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\n [tooltipPosition]=\"'bottom'\"\n [style.backgroundColor]=\"\n retornarCampo(action, selectedItems, 'btnColor')\n \"\n [disabled]=\"retornarCampo(action, selectedItems, 'disabled')\"\n >\n <span\n class=\"material-symbols-outlined md-22\"\n [style.color]=\"\n retornarCampo(action, selectedItems, 'iconBtnColor')\n \"\n >\n {{ retornarCampo(action, selectedItems, \"icon\") }}\n </span>\n </button>\n </div>\n </div>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n </div>\n </ng-template>\n\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n <th\n style=\"width: 4rem; border-left: solid 4px transparent\"\n *ngIf=\"config.enableSelect\"\n >\n <p-tableHeaderCheckbox (click)=\"activeItemLote(selectedItems)\"></p-tableHeaderCheckbox>\n </th>\n\n <th\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.field\"\n [pSortableColumnDisabled]=\"col.sortable === false\"\n [style.min-width]=\"col.width\"\n pReorderableColumn\n class=\"text-sm\"\n >\n <div\n [class]=\"\n centralizarColunas(col) && alignColunasHeader(col) == ''\n ? 'flex flex-row justify-content-center'\n : 'flex flex-row'\n \"\n [style]=\"alignColunasHeader(col)\"\n >\n <span>{{ col.header }}</span>\n <p-sortIcon\n *ngIf=\"col.sortable === true\"\n [field]=\"col.field\"\n style=\"font-size: 10px\"\n ></p-sortIcon>\n\n <span\n *ngIf=\"col.headerTooltip\"\n class=\"material-symbols-outlined flex align-items-center\"\n [pTooltip]=\"col.headerTooltip\"\n >info</span>\n </div>\n </th>\n <th *ngIf=\"config.actions && config.actions.length > 0\"></th>\n <th *ngIf=\"isEditableTable()\" id=\"th-edit\" style=\"width: 20px\">Editar</th>\n </tr>\n </ng-template>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <ng-template pTemplate=\"body\" let-rowData let-editing=\"editing\" let-ri=\"rowIndex\" let-columns=\"columns\"\n let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\n <tr [pEditableRow]=\"rowData\" [pEditableRowDisabled]=\"false\"\n [pContextMenuRow]=\"{rowData, editing}\"\n >\n\n\n <td\n *ngIf=\"config.enableSelect\"\n [style]=\"applyStyle(rowData, { field: 'check-box', header: '' })\"\n >\n <!--<p-tableCheckbox *ngIf=\"isVisibleCheckbox(rowData)\"-->\n <p-tableCheckbox\n [value]=\"rowData\"\n [disabled]=\"isDisabledCheckbox(rowData)\"\n (click)=\"activeItemLote(selectedItems)\"\n ></p-tableCheckbox>\n </td>\n\n\n <ng-container *ngFor=\"let col of columns; let i = index\">\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <!-- Celula que armazena os controles de edi\u00E7\u00E3o para os campos -->\n <td *ngIf=\"col.fieldControlType\"\n [id]=\"'rowTable'+ rowData[config.dataKey]\"\n pSelectableRowDblClick=\"\"\n (click)=\"activeItem(rowData)\"\n (dblclick)=\"dbClickEdit()\"\n pSelectableRowDblClick=\"\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col) \" [pTooltip]=\"returnTooltipRow(rowData, col)\"\n >\n <p-cellEditor [ngClass]=\"{'switch': col.fieldControlType == 'switch'}\">\n <!-- Controle de edi\u00E7\u00E3o do campo -->\n <ng-template pTemplate=\"input\">\n\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n\n <ng-container *ngSwitchCase=\"'text'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-text [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-text>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'number'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-number [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-number>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-mask [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [mask]=\"col.mask\" [required]=\"col.required ?? true\" [(ngModel)]=\"rowData[col.field]\"></kv-input-mask>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-switch [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" ></kv-switch>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n <div [style.width]=\"col.width\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-calendar class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\"></kv-input-calendar>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <p-dropdown\n [disabled]=\"isDisableEditRowCellFunction(rowData, col)\"\n class=\"cellControl col\"\n appendTo=\"body\"\n [optionLabel]=\"col.fieldDropDownControl.descricaoobjeto\"\n [optionValue]=\"col.fieldDropDownControl.idobjeto\"\n [options]=\"col.fieldDropDownControl.fieldControlDropdownSource\"\n [(ngModel)]=\"rowData[col.field]\"\n >\n </p-dropdown>\n </div>\n </ng-container>\n </ng-container>\n </ng-template>\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <!-- Valor atual do campo -->\n <ng-template pTemplate=\"output\">\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <ng-container *ngIf=\"rowData[col.field]\">\n {{\n retornaDescricaoDrop(\n rowData,\n col\n )\n }}\n <!-- {{rowData[col.field]}} -->\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <kv-switch [(ngModel)]=\"rowData[col.field]\" [disabled]=\"true\"></kv-switch>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n {{ rowData[col.field] | date }}\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n {{ rowData[col.field] | mask:col.mask }}\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n {{ rowData[col.field] }}\n </ng-container>\n\n </ng-container>\n </ng-template>\n </p-cellEditor>\n </td>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n <td *ngIf=\"rowgroup && !col.template && !col.fieldControlType\" [attr.rowspan]=\"rowgroup && col.grouped ? rowspan : null\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">{{\n transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"!rowgroup && !col.grouped && !col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n <ng-container *ngIf=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutlet]=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\">\n </ng-container>\n </td>\n\n </ng-container>\n\n\n\n\n\n\n\n\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de a\u00E7\u00E3o -->\n <td [ngClass]=\"{'td-tools': isEditableTable(), 'td-tools-sticky': !isEditableTable() }\"\n *ngIf=\"config.actions && config.actions.length > 0 && !editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n <div\n *ngFor=\"let action of config.actions\"\n class=\"mr-1\"\n >\n <!-- <button\n id=\"actionBtns\"\n pButton\n *ngIf=\"exibirCampo(action, rowData)\"\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"activeItem(rowData); action?.command(commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n [disabled]=\"callDisabled(action, rowData)\"\n >\n <span class=\"material-symbols-outlined md-19\">\n {{ retornarCampo(action, rowData, \"icon\") }}</span\n >\n </button> -->\n\n <span\n class=\"material-symbols-outlined {{\n callDisabled(action, rowData)\n ? 'text-gray-400 cursor-auto'\n : 'cursor-pointer'\n }}\"\n style=\"font-size: 20px\"\n (click)=\"isButtonDisable(action, rowData, commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n >\n {{ retornarCampo(action, rowData, \"icon\") }}\n </span>\n </div>\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n <!-- <button\n id=\"moreVertBtn\"\n pButton\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n > -->\n <span\n class=\"material-symbols-outlined cursor-pointer icon-more-horiz\"\n style=\"font-size: 20px\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n >\n more_horiz\n </span>\n <!-- </button> -->\n\n <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div>\n\n <!-- <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div> -->\n\n <p-menu\n #menu\n [popup]=\"true\"\n [model]=\"menuItems\"\n appendTo=\"body\"\n ></p-menu>\n </div>\n </td>\n\n <td\n class=\"td-tools\"\n *ngIf=\"config.actions && config.actions.length > 0 && editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n </div>\n </td>\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de edi\u00E7\u00E3o -->\n <td class=\"td-edit\" *ngIf=\"this.isEditableTable()\" >\n <div class=\"flex align-items-center justify-content-center gap-2\">\n <button [style.height]=\"'28px'\" [id]=\"'rowEdit' + rowData[config.dataKey] \" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow icon=\"pi pi-pencil\"\n (click)=\"onRowEditInit(rowData)\" class=\"p-button-rounded p-button-text\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow icon=\"pi pi-check\"\n (click)=\"onRowEditSave(rowData, ri)\" [id]=\"'rowSave' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-success mr-2\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow icon=\"pi pi-times\"\n (click)=\"onRowEditCancel(rowData, ri)\" [id]=\"'rowCancel' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-danger\"></button>\n </div>\n </td>\n\n\n\n\n </tr>\n </ng-template>\n </p-table>\n</div>\n", styles: ["@charset \"UTF-8\";.td-edit{position:sticky;right:-1px;background-color:#fff;color:#5289b4}.td-tools{position:sticky;right:52px;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}.td-tools-sticky{position:sticky;right:0;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}#th-edit{position:sticky;right:0;background-color:#eaeaea}:host ::ng-deep .p-datatable .p-datatable-tbody>tr>td{text-align:center;border:1px solid #eaeaea;border-width:1px 1px;padding:0rem .5rem}:host ::ng-deep .p-datatable .p-datatable-thead>tr>th{text-align:center;padding:0rem .5rem;border:1px solid #dee2e6;border-width:1px 1px;font-weight:700;color:#343a40;background:#eaeaea;transition:box-shadow .2s}.error-show{background-color:red;width:5px;height:10px}.btns-options{position:relative;left:20px}.chip-style{border:solid 1px}:host::ng-deep .p-card .p-card-content{padding:0}.material-symbols-outlined.md-19{font-size:15px}.material-symbols-outlined.md-22{font-size:19px}.checkbox-container{display:flex;align-items:center;gap:2px;margin-top:5px}#botaoFiltro:hover{color:#a9a9a9}.actionLoteBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;font-size:16px;width:2rem;height:2rem;top:2px;margin-left:.5rem;justify-content:center;text-decoration:none;text-align:justify;padding:12px}:host ::ng-deep .center{display:flex;align-items:center;justify-content:center}#actionLoteBtns:hover,.actionLoteBtns:hover{background-color:#29b92d!important}.actionBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;width:.8rem;height:.8rem;margin-left:.22rem;justify-content:center;text-decoration:none;text-align:justify;padding:11px}:host::ng-deep .material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;line-height:.9;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}#actionBtns:hover{color:#a9a9a9}.image{border-style:solid;border-width:3.5px;border-color:#5289b4;border-radius:100%;height:55px;width:55px;padding:0;margin:0;vertical-align:middle}:host ::ng-deep .p-inputtext{font-size:.75rem}:host ::ng-deep .p-datatable-table{font-size:.75rem}:host ::ng-deep .p-datatable-header{background-color:#eaeaea!important;padding:2px 13px 0!important;border-radius:5px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th{background-color:#eaeaea!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:5px 0 0 5px}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-child{border-radius:0 5px 5px 0}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td{border-bottom:1px solid #ddd!important;border-top:1px solid #ddd!important}:host ::ng-deep .actionBtns,:host ::ng-deep .actionLoteBtns{border-radius:50%;width:2.5rem!important;height:2.5rem!important;box-shadow:#0000003d 0 3px 8px}.icon-more-horiz:hover,.icon-more-horiz:focus{color:#5e5e5e;transform:scale(1.1);transition:color .3s,transform .3s}@media only screen and (min-width: 768px){.actionLoteBtns{top:-1px}}@media only screen and (max-width: 960px){:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(p-tablecheckbox){border-bottom:0px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img){justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img) .p-column-title{display:none!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid #ddd!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child div{justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td .p-column-title{font-weight:600}}::ng-deep .p-panel.p-panel-toggleable .p-panel-header{background-color:#eaeaea!important}::ng-deep .field.grid,.formgrid.grid{padding:0rem!important}@media screen and (min-width: 961px){.moreVertBtn{position:relative;right:3px}}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-of-type{border-radius:0 0 5px!important}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:0 0 0 5px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before{transform:translate(1.25rem);height:15px;margin-top:-8px;-webkit-transform:translateX(1.25rem);-moz-transform:translateX(1.25rem);-ms-transform:translateX(1.25rem);-o-transform:translateX(1.25rem)}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider:before{background:#fff;width:1rem;height:1.25rem;height:16px!important;left:.25rem;margin-top:-9px!important;margin-top:-.625rem;border-radius:50%;transition-duration:.2s}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch:not(.p-disabled) .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>div>kv-input-text>span>.inputs{height:15px!important}:host ::ng-deep p-celleditor>div>p-dropdown>.p-dropdown:not(.p-paginator-rpp-options){height:25px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider{height:21px!important}:host ::ng-deep input.p-inputtext.p-component.p-element.p-inputmask.inputs.p-filled{height:15px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i4.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "directive", type: i5.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i6.ContextMenu, selector: "p-contextMenu", inputs: ["model", "triggerEvent", "target", "global", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "id", "ariaLabel", "ariaLabelledBy"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i8.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i9.InputText, selector: "[pInputText]" }, { kind: "component", type: i10.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "component", type: i11.Panel, selector: "p-panel", inputs: ["toggleable", "header", "collapsed", "style", "styleClass", "iconPos", "expandIcon", "collapseIcon", "showHeader", "toggler", "transitionOptions"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "directive", type: i12.Ripple, selector: "[pRipple]" }, { kind: "component", type: i13.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i13.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i13.ContextMenuRow, selector: "[pContextMenuRow]", inputs: ["pContextMenuRow", "pContextMenuRowIndex", "pContextMenuRowDisabled"] }, { kind: "directive", type: i13.ReorderableColumn, selector: "[pReorderableColumn]", inputs: ["pReorderableColumnDisabled"] }, { kind: "component", type: i13.CellEditor, selector: "p-cellEditor" }, { kind: "component", type: i13.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i13.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i13.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: i13.SelectableRowDblClick, selector: "[pSelectableRowDblClick]", inputs: ["pSelectableRowDblClick", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i13.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i13.InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "directive", type: i13.SaveEditableRow, selector: "[pSaveEditableRow]" }, { kind: "directive", type: i13.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "component", type: i14.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i15.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i15.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i15.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i16.KvInputCalendarComponent, selector: "kv-input-calendar", inputs: ["isYear", "isMonthYear", "minDate", "maxDate", "showButtonBar", "showIcon", "showTime", "selectionMode"], outputs: ["onSelectionChange", "onSelectionValue"] }, { kind: "component", type: i17.KvInputMaskComponent, selector: "kv-input-mask", inputs: ["mask"], outputs: ["onComplete"] }, { kind: "component", type: i18.KvInputNumberComponent, selector: "kv-input-number", inputs: ["mode", "digits", "min", "max", "suffix"] }, { kind: "component", type: i19.KvInputTextComponent, selector: "kv-input-text" }, { kind: "component", type: i20.KvSwitchComponent, selector: "kv-switch", inputs: ["readonly", "switchValue"], outputs: ["onSwitchChange"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i21.MaskPipe, name: "mask" }] }); }
491
491
  }
492
492
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvTableEditComponent, decorators: [{
493
493
  type: Component,
494
- args: [{ selector: 'kv-table-edit', template: "\n\n<div class=\"card\" >\n <p-toast></p-toast>\n\n <p-panel\n *ngIf=\"filtrosAvancados\"\n header=\"Filtros avan\u00E7ados\"\n [toggleable]=\"true\"\n [collapsed]=\"true\"\n (collapsedChange)=\"collapsed = !collapsed\"\n [style]=\"{ 'margin-bottom': '2px' }\"\n >\n <ng-template pTemplate=\"headericons\">\n <i\n *ngIf=\"!collapsed\"\n class=\"pi pi-filter\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 aberto -->\n <i\n *ngIf=\"collapsed\"\n class=\"pi pi-minus\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 fechado -->\n </ng-template>\n <ng-content></ng-content>\n </p-panel>\n\n <p-contextMenu #cm [model]=\"items\"></p-contextMenu>\n <p-table\n #te\n [reorderableColumns]=\"config.reorderableColumns || false\"\n *ngIf=\"config\"\n [value]=\"dataSource\"\n [dataKey]=\"config.dataKey\"\n [tableStyle]=\"{ 'min-width': '50rem' }\"\n [columns]=\"config.columns\"\n [editMode]=\"'row'\"\n [scrollable]=\"true\"\n scrollHeight=\"400px\"\n appendTo=\"body\"\n [styleClass]=\"'p-datatable-sm'\"\n [(selection)]=\"selectedItems\"\n [rowSelectable]=\"isRowSelectable\"\n [globalFilterFields]=\"globalFilterFields\"\n [rows]=\"rows\"\n [paginator]=\"paginator\"\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\n [showCurrentPageReport]=\"true\"\n currentPageReportTemplate=\"{first} - {last} de {{ totalRecords }}\"\n (selectionChange)=\"selectionChange($event)\"\n [rowHover]=\"true\"\n [totalRecords]=\"totalRecords\"\n [lazy]=\"config.lazy\"\n (onLazyLoad)=\"paginate($event)\"\n [groupRowsBy]=\"config.fieldGroup\"\n [showFirstLastIcon]=\"showFirstLastIcon\"\n [pageLinks]=\"pageLinksOptions\"\n [scrollable]=\"isTableScrollable\"\n [scrollHeight]=\"scrollHeight\"\n [rowTrackBy]=\"rowTrackBy \"\n [(contextMenuSelection)]=\"selectedProduct\"\n [contextMenu]=\" isEditableTable() ? cm : null\"\n >\n\n\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <ng-template\n pTemplate=\"caption\"\n *ngIf=\"config.enableCation\"\n >\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\n <div class=\"col-12 flex flex-column\">\n <div\n *ngIf=\"config.title\"\n class=\"text-md font-bold my-3\"\n >\n {{ config.title }}\n </div>\n <div\n *ngIf=\"config.subtitle\"\n class=\"text-sm mb-4 font-medium\"\n >\n {{ config.subtitle }}\n </div>\n </div>\n\n <div class=\"flex flex-row align-items-center md:col-6 lg:col-4 {{\n tamanhoTela < 768 ? 'col-10' : 'col-12'\n }} mt-1 mb-2 \">\n <span\n *ngIf=\"config.enableFilter\"\n class=\"p-input-icon-left\"\n >\n <i class=\"pi pi-search\"></i>\n\n <input\n pInputText\n pAutoFocus\n [autofocus]=\"true\"\n type=\"text\"\n (input)=\"onGlobalFilter(te, $event)\"\n placeholder=\"Pesquisar...\"\n class=\"h-2rem\"\n />\n </span>\n\n </div>\n\n <div class=\"flex flex-row col-1 justify-content-end\">\n <div\n *ngFor=\"let action of config.actionsLote\"\n class=\"btns-options\"\n [style]=\"{ 'margin-right': '7px' }\"\n >\n <button\n id=\"actionLoteBtns\"\n pButton\n *ngIf=\"\n (selectedItems.length > 0 || action.showAcoesLote) &&\n exibirCampo(action, this.action)\n \"\n class=\"actionLoteBtns p-button-raised p-button-text\"\n (click)=\"\n action?.command(commandEvent); activeItemLote(selectedItems)\n \"\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\n [tooltipPosition]=\"'bottom'\"\n [style.backgroundColor]=\"\n retornarCampo(action, selectedItems, 'btnColor')\n \"\n [disabled]=\"retornarCampo(action, selectedItems, 'disabled')\"\n >\n <span\n class=\"material-symbols-outlined md-22\"\n [style.color]=\"\n retornarCampo(action, selectedItems, 'iconBtnColor')\n \"\n >\n {{ retornarCampo(action, selectedItems, \"icon\") }}\n </span>\n </button>\n </div>\n </div>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n </div>\n </ng-template>\n\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n <th\n style=\"width: 4rem; border-left: solid 4px transparent\"\n *ngIf=\"config.enableSelect\"\n >\n <p-tableHeaderCheckbox (click)=\"activeItemLote(selectedItems)\"></p-tableHeaderCheckbox>\n </th>\n\n <th\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.field\"\n [pSortableColumnDisabled]=\"col.sortable === false\"\n [style.min-width]=\"col.width\"\n pReorderableColumn\n class=\"text-sm\"\n >\n <div\n [class]=\"\n centralizarColunas(col) && alignColunasHeader(col) == ''\n ? 'flex flex-row justify-content-center'\n : 'flex flex-row'\n \"\n [style]=\"alignColunasHeader(col)\"\n >\n <span>{{ col.header }}</span>\n <p-sortIcon\n *ngIf=\"col.sortable === true\"\n [field]=\"col.field\"\n style=\"font-size: 10px\"\n ></p-sortIcon>\n\n <span\n *ngIf=\"col.headerTooltip\"\n class=\"material-symbols-outlined flex align-items-center\"\n [pTooltip]=\"col.headerTooltip\"\n >info</span>\n </div>\n </th>\n <th *ngIf=\"config.actions && config.actions.length > 0\"></th>\n <th *ngIf=\"isEditableTable()\" id=\"th-edit\" style=\"width: 20px\">Editar</th>\n </tr>\n </ng-template>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <ng-template pTemplate=\"body\" let-rowData let-editing=\"editing\" let-ri=\"rowIndex\" let-columns=\"columns\"\n let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\n <tr [pEditableRow]=\"rowData\" [pEditableRowDisabled]=\"false\"\n [pContextMenuRow]=\"{rowData, editing}\"\n >\n\n\n <td\n *ngIf=\"config.enableSelect\"\n [style]=\"applyStyle(rowData, { field: 'check-box', header: '' })\"\n >\n <!--<p-tableCheckbox *ngIf=\"isVisibleCheckbox(rowData)\"-->\n <p-tableCheckbox\n [value]=\"rowData\"\n [disabled]=\"isDisabledCheckbox(rowData)\"\n (click)=\"activeItemLote(selectedItems)\"\n ></p-tableCheckbox>\n </td>\n\n\n <ng-container *ngFor=\"let col of columns; let i = index\">\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <!-- Celula que armazena os controles de edi\u00E7\u00E3o para os campos -->\n <td *ngIf=\"col.fieldControlType\"\n [id]=\"'rowTable'+ rowData[config.dataKey]\"\n pSelectableRowDblClick=\"\"\n (click)=\"activeItem(rowData)\"\n (dblclick)=\"dbClickEdit()\"\n pSelectableRowDblClick=\"\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col) \" [pTooltip]=\"returnTooltipRow(rowData, col)\"\n >\n <p-cellEditor [ngClass]=\"{'switch': col.fieldControlType == 'switch'}\">\n <!-- Controle de edi\u00E7\u00E3o do campo -->\n <ng-template pTemplate=\"input\">\n\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n\n <ng-container *ngSwitchCase=\"'text'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-text [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-text>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'number'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-number [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-number>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-mask [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [mask]=\"col.mask\" [required]=\"col.required ?? true\" [(ngModel)]=\"rowData[col.field]\"></kv-input-mask>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-switch [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" ></kv-switch>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n <div [style.width]=\"col.width\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-calendar class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\"></kv-input-calendar>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <p-dropdown\n [disabled]=\"isDisableEditRowCellFunction(rowData, col)\"\n class=\"cellControl col\"\n appendTo=\"body\"\n [optionLabel]=\"col.fieldDropDownControl.descricaoobjeto\"\n [optionValue]=\"col.fieldDropDownControl.idobjeto\"\n [options]=\"col.fieldDropDownControl.fieldControlDropdownSource\"\n [(ngModel)]=\"rowData[col.field]\"\n >\n </p-dropdown>\n </div>\n </ng-container>\n </ng-container>\n </ng-template>\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <!-- Valor atual do campo -->\n <ng-template pTemplate=\"output\">\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <ng-container *ngIf=\"rowData[col.field]\">\n {{\n retornaDescricaoDrop(\n rowData,\n col\n )\n }}\n <!-- {{rowData[col.field]}} -->\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <kv-switch [(ngModel)]=\"rowData[col.field]\" [disabled]=\"true\"></kv-switch>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n {{ rowData[col.field] | date }}\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n {{ rowData[col.field] | mask:col.mask }}\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n {{ rowData[col.field] }}\n </ng-container>\n\n </ng-container>\n </ng-template>\n </p-cellEditor>\n </td>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n <td *ngIf=\"rowgroup && !col.template && !col.fieldControlType\" [attr.rowspan]=\"rowgroup && col.grouped ? rowspan : null\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">{{\n transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"!rowgroup && !col.grouped && !col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n <ng-container *ngIf=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutlet]=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\">\n </ng-container>\n </td>\n\n </ng-container>\n\n\n\n\n\n\n\n\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de a\u00E7\u00E3o -->\n <td [ngClass]=\"{'td-tools': isEditableTable(), 'td-tools-sticky': !isEditableTable() }\"\n *ngIf=\"config.actions && config.actions.length > 0 && !editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n <div\n *ngFor=\"let action of config.actions\"\n class=\"mr-1\"\n >\n <!-- <button\n id=\"actionBtns\"\n pButton\n *ngIf=\"exibirCampo(action, rowData)\"\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"activeItem(rowData); action?.command(commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n [disabled]=\"callDisabled(action, rowData)\"\n >\n <span class=\"material-symbols-outlined md-19\">\n {{ retornarCampo(action, rowData, \"icon\") }}</span\n >\n </button> -->\n\n <span\n class=\"material-symbols-outlined {{\n callDisabled(action, rowData)\n ? 'text-gray-400 cursor-auto'\n : 'cursor-pointer'\n }}\"\n style=\"font-size: 20px\"\n (click)=\"isButtonDisable(action, rowData, commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n >\n {{ retornarCampo(action, rowData, \"icon\") }}\n </span>\n </div>\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n <!-- <button\n id=\"moreVertBtn\"\n pButton\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n > -->\n <span\n class=\"material-symbols-outlined cursor-pointer icon-more-horiz\"\n style=\"font-size: 20px\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n >\n more_horiz\n </span>\n <!-- </button> -->\n\n <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div>\n\n <!-- <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div> -->\n\n <p-menu\n #menu\n [popup]=\"true\"\n [model]=\"menuItems\"\n appendTo=\"body\"\n ></p-menu>\n </div>\n </td>\n\n <td\n class=\"td-tools\"\n *ngIf=\"config.actions && config.actions.length > 0 && editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n </div>\n </td>\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de edi\u00E7\u00E3o -->\n <td class=\"td-edit\" *ngIf=\"this.isEditableTable()\" >\n <div class=\"flex align-items-center justify-content-center gap-2\">\n <button [style.height]=\"'28px'\" [id]=\"'rowEdit' + rowData[config.dataKey] \" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow icon=\"pi pi-pencil\"\n (click)=\"onRowEditInit(rowData)\" class=\"p-button-rounded p-button-text\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow icon=\"pi pi-check\"\n (click)=\"onRowEditSave(rowData, ri)\" [id]=\"'rowSave' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-success mr-2\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow icon=\"pi pi-times\"\n (click)=\"onRowEditCancel(rowData, ri)\" [id]=\"'rowCancel' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-danger\"></button>\n </div>\n </td>\n\n\n\n\n </tr>\n </ng-template>\n </p-table>\n</div>\n", styles: ["@charset \"UTF-8\";.td-edit{position:sticky;right:-1px;background-color:#fff;color:#5289b4}.td-tools{position:sticky;right:52px;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}.td-tools-sticky{position:sticky;right:0;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}#th-edit{position:sticky;right:0;background-color:#eaeaea}:host ::ng-deep .p-datatable .p-datatable-tbody>tr>td{text-align:center;border:1px solid #eaeaea;border-width:1px 1px;padding:0rem .5rem}:host ::ng-deep .p-datatable .p-datatable-thead>tr>th{text-align:center;padding:0rem .5rem;border:1px solid #dee2e6;border-width:1px 1px;font-weight:700;color:#343a40;background:#eaeaea;transition:box-shadow .2s}.error-show{background-color:red;width:5px;height:10px}.btns-options{position:relative;left:20px}.chip-style{border:solid 1px}:host::ng-deep .p-card .p-card-content{padding:0}.material-symbols-outlined.md-19{font-size:15px}.material-symbols-outlined.md-22{font-size:19px}.checkbox-container{display:flex;align-items:center;gap:2px;margin-top:5px}#botaoFiltro:hover{color:#a9a9a9}.actionLoteBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;font-size:16px;width:2rem;height:2rem;top:2px;margin-left:.5rem;justify-content:center;text-decoration:none;text-align:justify;padding:12px}:host ::ng-deep .center{display:flex;align-items:center;justify-content:center}#actionLoteBtns:hover,.actionLoteBtns:hover{background-color:#29b92d!important}.actionBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;width:.8rem;height:.8rem;margin-left:.22rem;justify-content:center;text-decoration:none;text-align:justify;padding:11px}:host::ng-deep .material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;line-height:.9;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}#actionBtns:hover{color:#a9a9a9}.image{border-style:solid;border-width:3.5px;border-color:#5289b4;border-radius:100%;height:55px;width:55px;padding:0;margin:0;vertical-align:middle}:host ::ng-deep .p-inputtext{font-size:.75rem}:host ::ng-deep .p-datatable-table{font-size:.75rem}:host ::ng-deep .p-datatable-header{background-color:#eaeaea!important;padding:2px 13px 0!important;border-radius:5px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th{background-color:#eaeaea!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:5px 0 0 5px}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-child{border-radius:0 5px 5px 0}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td{border-bottom:1px solid #ddd!important;border-top:1px solid #ddd!important}:host ::ng-deep .actionBtns,:host ::ng-deep .actionLoteBtns{border-radius:50%;width:2.5rem!important;height:2.5rem!important;box-shadow:#0000003d 0 3px 8px}.icon-more-horiz:hover,.icon-more-horiz:focus{color:#5e5e5e;transform:scale(1.1);transition:color .3s,transform .3s}@media only screen and (min-width: 768px){.actionLoteBtns{top:-1px}}@media only screen and (max-width: 960px){:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(p-tablecheckbox){border-bottom:0px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img){justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img) .p-column-title{display:none!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid #ddd!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child div{justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td .p-column-title{font-weight:600}}::ng-deep .p-panel.p-panel-toggleable .p-panel-header{background-color:#eaeaea!important}::ng-deep .field.grid,.formgrid.grid{padding:0rem!important}@media screen and (min-width: 961px){.moreVertBtn{position:relative;right:3px}}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-of-type{border-radius:0 0 5px!important}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:0 0 0 5px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before{transform:translate(1.25rem);height:15px;margin-top:-8px;-webkit-transform:translateX(1.25rem);-moz-transform:translateX(1.25rem);-ms-transform:translateX(1.25rem);-o-transform:translateX(1.25rem)}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider:before{background:#fff;width:1rem;height:1.25rem;height:16px!important;left:.25rem;margin-top:-9px!important;margin-top:-.625rem;border-radius:50%;transition-duration:.2s}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch:not(.p-disabled) .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>div>kv-input-text>span>.inputs{height:15px!important}:host ::ng-deep p-celleditor>div>p-dropdown>.p-dropdown:not(.p-paginator-rpp-options){height:25px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider{height:21px!important}:host ::ng-deep input.p-inputtext.p-component.p-element.p-inputmask.inputs.p-filled{height:15px}:host::ng-deep .p-dropdown-items{font-size:.1rem!important;padding:.5rem 1.5rem!important}\n"] }]
494
+ args: [{ selector: 'kv-table-edit', template: "\n\n<div class=\"card\" >\n <p-toast></p-toast>\n\n <p-panel\n *ngIf=\"filtrosAvancados\"\n header=\"Filtros avan\u00E7ados\"\n [toggleable]=\"true\"\n [collapsed]=\"true\"\n (collapsedChange)=\"collapsed = !collapsed\"\n [style]=\"{ 'margin-bottom': '2px' }\"\n >\n <ng-template pTemplate=\"headericons\">\n <i\n *ngIf=\"!collapsed\"\n class=\"pi pi-filter\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 aberto -->\n <i\n *ngIf=\"collapsed\"\n class=\"pi pi-minus\"\n ></i>\n <!-- \u00CDcone quando o painel est\u00E1 fechado -->\n </ng-template>\n <ng-content></ng-content>\n </p-panel>\n\n <p-contextMenu #cm [model]=\"items\"></p-contextMenu>\n <p-table\n #te\n [reorderableColumns]=\"config.reorderableColumns || false\"\n *ngIf=\"config\"\n [value]=\"dataSource\"\n [dataKey]=\"config.dataKey\"\n [tableStyle]=\"{ 'min-width': '50rem' }\"\n [columns]=\"config.columns\"\n [editMode]=\"'row'\"\n [scrollable]=\"true\"\n scrollHeight=\"400px\"\n appendTo=\"body\"\n [styleClass]=\"'p-datatable-sm'\"\n [(selection)]=\"selectedItems\"\n [rowSelectable]=\"isRowSelectable\"\n [globalFilterFields]=\"globalFilterFields\"\n [rows]=\"rows\"\n [paginator]=\"paginator\"\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\n [showCurrentPageReport]=\"true\"\n currentPageReportTemplate=\"{first} - {last} de {{ totalRecords }}\"\n (selectionChange)=\"selectionChange($event)\"\n [rowHover]=\"true\"\n [totalRecords]=\"totalRecords\"\n [lazy]=\"config.lazy\"\n (onLazyLoad)=\"paginate($event)\"\n [groupRowsBy]=\"config.fieldGroup\"\n [showFirstLastIcon]=\"showFirstLastIcon\"\n [pageLinks]=\"pageLinksOptions\"\n [scrollable]=\"isTableScrollable\"\n [scrollHeight]=\"scrollHeight\"\n [rowTrackBy]=\"rowTrackBy \"\n [(contextMenuSelection)]=\"selectedProduct\"\n [contextMenu]=\" isEditableTable() ? cm : null\"\n >\n\n\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <ng-template\n pTemplate=\"caption\"\n *ngIf=\"config.enableCation\"\n >\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\n <div class=\"col-12 flex flex-column\">\n <div\n *ngIf=\"config.title\"\n class=\"text-md font-bold my-3\"\n >\n {{ config.title }}\n </div>\n <div\n *ngIf=\"config.subtitle\"\n class=\"text-sm mb-4 font-medium\"\n >\n {{ config.subtitle }}\n </div>\n </div>\n\n <div class=\"flex flex-row align-items-center md:col-6 lg:col-4 {{\n tamanhoTela < 768 ? 'col-10' : 'col-12'\n }} mt-1 mb-2 \">\n <span\n *ngIf=\"config.enableFilter\"\n class=\"p-input-icon-left\"\n >\n <i class=\"pi pi-search\"></i>\n\n <input\n pInputText\n pAutoFocus\n [autofocus]=\"true\"\n type=\"text\"\n (input)=\"onGlobalFilter(te, $event)\"\n placeholder=\"Pesquisar...\"\n class=\"h-2rem\"\n />\n </span>\n\n </div>\n\n <div class=\"flex flex-row col-1 justify-content-end\">\n <div\n *ngFor=\"let action of config.actionsLote\"\n class=\"btns-options\"\n [style]=\"{ 'margin-right': '7px' }\"\n >\n <button\n id=\"actionLoteBtns\"\n pButton\n *ngIf=\"\n (selectedItems.length > 0 || action.showAcoesLote) &&\n exibirCampo(action, this.action)\n \"\n class=\"actionLoteBtns p-button-raised p-button-text\"\n (click)=\"\n action?.command(commandEvent); activeItemLote(selectedItems)\n \"\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\n [tooltipPosition]=\"'bottom'\"\n [style.backgroundColor]=\"\n retornarCampo(action, selectedItems, 'btnColor')\n \"\n [disabled]=\"retornarCampo(action, selectedItems, 'disabled')\"\n >\n <span\n class=\"material-symbols-outlined md-22\"\n [style.color]=\"\n retornarCampo(action, selectedItems, 'iconBtnColor')\n \"\n >\n {{ retornarCampo(action, selectedItems, \"icon\") }}\n </span>\n </button>\n </div>\n </div>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n </div>\n </ng-template>\n\n <ng-template\n pTemplate=\"header\"\n let-columns\n >\n <tr>\n <th\n style=\"width: 4rem; border-left: solid 4px transparent\"\n *ngIf=\"config.enableSelect\"\n >\n <p-tableHeaderCheckbox (click)=\"activeItemLote(selectedItems)\"></p-tableHeaderCheckbox>\n </th>\n\n <th\n *ngFor=\"let col of columns\"\n [pSortableColumn]=\"col.field\"\n [pSortableColumnDisabled]=\"col.sortable === false\"\n [style.min-width]=\"col.width\"\n pReorderableColumn\n class=\"text-sm\"\n >\n <div\n [class]=\"\n centralizarColunas(col) && alignColunasHeader(col) == ''\n ? 'flex flex-row justify-content-center'\n : 'flex flex-row'\n \"\n [style]=\"alignColunasHeader(col)\"\n >\n <span>{{ col.header }}</span>\n <p-sortIcon\n *ngIf=\"col.sortable === true\"\n [field]=\"col.field\"\n style=\"font-size: 10px\"\n ></p-sortIcon>\n\n <span\n *ngIf=\"col.headerTooltip\"\n class=\"material-symbols-outlined flex align-items-center\"\n [pTooltip]=\"col.headerTooltip\"\n >info</span>\n </div>\n </th>\n <th *ngIf=\"config.actions && config.actions.length > 0\"></th>\n <th *ngIf=\"isEditableTable()\" id=\"th-edit\" style=\"width: 20px\">Editar</th>\n </tr>\n </ng-template>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <ng-template pTemplate=\"body\" let-rowData let-editing=\"editing\" let-ri=\"rowIndex\" let-columns=\"columns\"\n let-rowgroup=\"rowgroup\" let-rowspan=\"rowspan\">\n <tr [pEditableRow]=\"rowData\" [pEditableRowDisabled]=\"false\"\n [pContextMenuRow]=\"{rowData, editing}\"\n >\n\n\n <td\n *ngIf=\"config.enableSelect\"\n [style]=\"applyStyle(rowData, { field: 'check-box', header: '' })\"\n >\n <!--<p-tableCheckbox *ngIf=\"isVisibleCheckbox(rowData)\"-->\n <p-tableCheckbox\n [value]=\"rowData\"\n [disabled]=\"isDisabledCheckbox(rowData)\"\n (click)=\"activeItemLote(selectedItems)\"\n ></p-tableCheckbox>\n </td>\n\n\n <ng-container *ngFor=\"let col of columns; let i = index\">\n\n\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n <!-- Celula que armazena os controles de edi\u00E7\u00E3o para os campos -->\n <td *ngIf=\"col.fieldControlType\"\n [id]=\"'rowTable'+ rowData[config.dataKey]\"\n pSelectableRowDblClick=\"\"\n (click)=\"activeItem(rowData)\"\n (dblclick)=\"dbClickEdit()\"\n pSelectableRowDblClick=\"\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col) \" [pTooltip]=\"returnTooltipRow(rowData, col)\"\n >\n <p-cellEditor [ngClass]=\"{'switch': col.fieldControlType == 'switch'}\">\n <!-- Controle de edi\u00E7\u00E3o do campo -->\n <ng-template pTemplate=\"input\">\n\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n\n <ng-container *ngSwitchCase=\"'text'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-text [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-text>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'number'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-number [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" [required]=\"col.required ?? true\"></kv-input-number>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-mask [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [mask]=\"col.mask\" [required]=\"col.required ?? true\" [(ngModel)]=\"rowData[col.field]\"></kv-input-mask>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-switch [disabled]=\"isDisableEditRowCellFunction(rowData, col)\" class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\" ></kv-switch>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n <div [style.width]=\"col.width\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <kv-input-calendar class=\"cellControl col\" [(ngModel)]=\"rowData[col.field]\"></kv-input-calendar>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <div [style.width]=\"col.width\" class=\"grid formgrid p-fluid\" >\n <p-dropdown\n [disabled]=\"isDisableEditRowCellFunction(rowData, col)\"\n class=\"cellControl col\"\n appendTo=\"body\"\n [optionLabel]=\"col.fieldDropDownControl.descricaoobjeto\"\n [optionValue]=\"col.fieldDropDownControl.idobjeto\"\n [options]=\"col.fieldDropDownControl.fieldControlDropdownSource\"\n [(ngModel)]=\"rowData[col.field]\"\n >\n </p-dropdown>\n </div>\n </ng-container>\n </ng-container>\n </ng-template>\n\n\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n <!-- Valor atual do campo -->\n <ng-template pTemplate=\"output\">\n <ng-container [ngSwitch]=\"col.fieldControlType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <ng-container *ngIf=\"rowData[col.field]\">\n {{\n retornaDescricaoDrop(\n rowData,\n col\n )\n }}\n <!-- {{rowData[col.field]}} -->\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'switch'\">\n <kv-switch [(ngModel)]=\"rowData[col.field]\" [disabled]=\"true\"></kv-switch>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'calendar'\">\n {{ rowData[col.field] | date }}\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'mask'\">\n {{ rowData[col.field] | mask:col.mask }}\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n {{ rowData[col.field] }}\n </ng-container>\n\n </ng-container>\n </ng-template>\n </p-cellEditor>\n </td>\n\n\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- ----------------------------------------------------------------------------------------------------------------------------------- -->\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n <td *ngIf=\"rowgroup && !col.template && !col.fieldControlType\" [attr.rowspan]=\"rowgroup && col.grouped ? rowspan : null\"\n class=\"rowTable\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">{{\n transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"!rowgroup && !col.grouped && !col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\" [pTooltip]=\"returnTooltipRow(rowData, col)\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n\n <span *ngIf=\"!isBooleanField(rowData, col); else booleanField\" [class]=\"returnRowClass(rowData, col)\">\n <span *ngIf=\"\n !isChipField(col) && !col.iconField && !isImageField(col)\n \">\n <i *ngIf=\"col.icon\" [class]=\"col.icon + ' mr-2'\"></i>\n {{ transformValue(rowData, col) }}\n </span>\n\n <div *ngIf=\"isChipField(col) && !col.iconField\">\n <span [class]=\"returnClassChip(rowData, col)\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ transformValue(rowData, col) }}</span>\n </div>\n </span>\n\n <span *ngIf=\"isImageField(col)\">\n <span>\n <img class=\"image\" [src]=\"loadImage(rowData, col)\" />\n </span>\n </span>\n\n <i *ngIf=\"col.iconField\" [ngClass]=\"{\n 'material-icons': col.indIconMaterial,\n 'material-symbols-outlined mr-2': !col.indIconMaterial\n }\" [pTooltip]=\"returnTooltipIcon(rowData, col)\">\n {{ returnClassIcon(rowData, col) }}\n </i>\n\n <ng-template #booleanField>\n <i *ngIf=\"!col.iconField && !isSwitchField(col)\" [ngClass]=\"\n rowData[col.field] ? 'text-green-500' : 'text-red-500'\n \"><span class=\"material-symbols-outlined\">\n {{ rowData[col.field] ? \"check\" : \"close\" }}\n </span>\n </i>\n\n <span *ngIf=\"isSwitchField(col)\" [class]=\"returnRowClass(rowData, col)\">\n <kv-switch (onSwitchChange)=\"onSwitchChange($event, rowData, col)\"\n [disabled]=\"col?.onlyReadField ?? true\" [switchValue]=\"transformValue(rowData, col)\">\n </kv-switch>\n </span>\n </ng-template>\n </td>\n\n <td *ngIf=\"col.template && !col.fieldControlType\" [style]=\"\n applyStyle(rowData, col) +\n centralizarColunas(col) +\n alignColunas(col)\n \" class=\"rowTable\">\n <span class=\"p-column-title\">{{ col.header }}:</span>\n <ng-container *ngIf=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutlet]=\"getCustomTemplate(col.template.name)\"\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\">\n </ng-container>\n </td>\n\n </ng-container>\n\n\n\n\n\n\n\n\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de a\u00E7\u00E3o -->\n <td [ngClass]=\"{'td-tools': isEditableTable(), 'td-tools-sticky': !isEditableTable() }\"\n *ngIf=\"config.actions && config.actions.length > 0 && !editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n <div\n *ngFor=\"let action of config.actions\"\n class=\"mr-1\"\n >\n <!-- <button\n id=\"actionBtns\"\n pButton\n *ngIf=\"exibirCampo(action, rowData)\"\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"activeItem(rowData); action?.command(commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n [disabled]=\"callDisabled(action, rowData)\"\n >\n <span class=\"material-symbols-outlined md-19\">\n {{ retornarCampo(action, rowData, \"icon\") }}</span\n >\n </button> -->\n\n <span\n class=\"material-symbols-outlined {{\n callDisabled(action, rowData)\n ? 'text-gray-400 cursor-auto'\n : 'cursor-pointer'\n }}\"\n style=\"font-size: 20px\"\n (click)=\"isButtonDisable(action, rowData, commandEvent)\"\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\n [tooltipPosition]=\"\n action.tooltipPosition ? action.tooltipPosition : 'bottom'\n \"\n >\n {{ retornarCampo(action, rowData, \"icon\") }}\n </span>\n </div>\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n <!-- <button\n id=\"moreVertBtn\"\n pButton\n class=\"actionBtns p-button-text p-button-raised\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n > -->\n <span\n class=\"material-symbols-outlined cursor-pointer icon-more-horiz\"\n style=\"font-size: 20px\"\n (click)=\"menu.toggle($event); activeItem(rowData)\"\n >\n more_horiz\n </span>\n <!-- </button> -->\n\n <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div>\n\n <!-- <div *ngFor=\"let action of config.actions\">\n {{ criarMenusModal(rowData) }}\n </div> -->\n\n <p-menu\n #menu\n [popup]=\"true\"\n [model]=\"menuItems\"\n appendTo=\"body\"\n ></p-menu>\n </div>\n </td>\n\n <td\n class=\"td-tools\"\n *ngIf=\"config.actions && config.actions.length > 0 && editing\"\n [style]=\"applyStyle(rowData, { field: 'btns-options', header: '' })\"\n >\n <div\n class=\"flex flex-row justify-content-end w-full gap-1\"\n *ngIf=\"acoesLinhaTabela\"\n >\n\n </div>\n <div\n class=\"flex flex-row justify-content-end w-full\"\n *ngIf=\"!acoesLinhaTabela\"\n >\n </div>\n </td>\n\n\n\n <!-- ------------------------------------------------------------------------------------------------------------------------------------------- -->\n <!-- Controle de edi\u00E7\u00E3o -->\n <td class=\"td-edit\" *ngIf=\"this.isEditableTable()\" >\n <div class=\"flex align-items-center justify-content-center gap-2\">\n <button [style.height]=\"'28px'\" [id]=\"'rowEdit' + rowData[config.dataKey] \" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"!editing\" pButton pRipple type=\"button\" pInitEditableRow icon=\"pi pi-pencil\"\n (click)=\"onRowEditInit(rowData)\" class=\"p-button-rounded p-button-text\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pSaveEditableRow icon=\"pi pi-check\"\n (click)=\"onRowEditSave(rowData, ri)\" [id]=\"'rowSave' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-success mr-2\"></button>\n <button [style.height]=\"'28px'\" [style.width]=\"'28px'\" [disabled]=\"isDisableEditRowFunction(rowData)\" *ngIf=\"editing\" pButton pRipple type=\"button\" pCancelEditableRow icon=\"pi pi-times\"\n (click)=\"onRowEditCancel(rowData, ri)\" [id]=\"'rowCancel' + rowData[config.dataKey] \" class=\"p-button-rounded p-button-text p-button-danger\"></button>\n </div>\n </td>\n\n\n\n\n </tr>\n </ng-template>\n </p-table>\n</div>\n", styles: ["@charset \"UTF-8\";.td-edit{position:sticky;right:-1px;background-color:#fff;color:#5289b4}.td-tools{position:sticky;right:52px;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}.td-tools-sticky{position:sticky;right:0;border-right:3px solid #fff!important;background-color:#fff;box-shadow:-5px 0 20px -10px #000000bf}#th-edit{position:sticky;right:0;background-color:#eaeaea}:host ::ng-deep .p-datatable .p-datatable-tbody>tr>td{text-align:center;border:1px solid #eaeaea;border-width:1px 1px;padding:0rem .5rem}:host ::ng-deep .p-datatable .p-datatable-thead>tr>th{text-align:center;padding:0rem .5rem;border:1px solid #dee2e6;border-width:1px 1px;font-weight:700;color:#343a40;background:#eaeaea;transition:box-shadow .2s}.error-show{background-color:red;width:5px;height:10px}.btns-options{position:relative;left:20px}.chip-style{border:solid 1px}:host::ng-deep .p-card .p-card-content{padding:0}.material-symbols-outlined.md-19{font-size:15px}.material-symbols-outlined.md-22{font-size:19px}.checkbox-container{display:flex;align-items:center;gap:2px;margin-top:5px}#botaoFiltro:hover{color:#a9a9a9}.actionLoteBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;font-size:16px;width:2rem;height:2rem;top:2px;margin-left:.5rem;justify-content:center;text-decoration:none;text-align:justify;padding:12px}:host ::ng-deep .center{display:flex;align-items:center;justify-content:center}#actionLoteBtns:hover,.actionLoteBtns:hover{background-color:#29b92d!important}.actionBtns{align-items:center;background-color:transparent;color:#a9a9a9;display:flex;width:.8rem;height:.8rem;margin-left:.22rem;justify-content:center;text-decoration:none;text-align:justify;padding:11px}:host::ng-deep .material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;line-height:.9;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}#actionBtns:hover{color:#a9a9a9}.image{border-style:solid;border-width:3.5px;border-color:#5289b4;border-radius:100%;height:55px;width:55px;padding:0;margin:0;vertical-align:middle}:host ::ng-deep .p-inputtext{font-size:.75rem}:host ::ng-deep .p-datatable-table{font-size:.75rem}:host ::ng-deep .p-datatable-header{background-color:#eaeaea!important;padding:2px 13px 0!important;border-radius:5px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th{background-color:#eaeaea!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:5px 0 0 5px}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-child{border-radius:0 5px 5px 0}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td{border-bottom:1px solid #ddd!important;border-top:1px solid #ddd!important}:host ::ng-deep .actionBtns,:host ::ng-deep .actionLoteBtns{border-radius:50%;width:2.5rem!important;height:2.5rem!important;box-shadow:#0000003d 0 3px 8px}.icon-more-horiz:hover,.icon-more-horiz:focus{color:#5e5e5e;transform:scale(1.1);transition:color .3s,transform .3s}@media only screen and (min-width: 768px){.actionLoteBtns{top:-1px}}@media only screen and (max-width: 960px){:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(p-tablecheckbox){border-bottom:0px!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img){justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:has(img) .p-column-title{display:none!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child{border-bottom:1px solid #ddd!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td:last-child div{justify-content:center!important;align-items:center!important}:host ::ng-deep .p-datatable.p-datatable-sm .p-datatable-tbody>tr>td .p-column-title{font-weight:600}}::ng-deep .p-panel.p-panel-toggleable .p-panel-header{background-color:#eaeaea!important}::ng-deep .field.grid,.formgrid.grid{padding:0rem!important}@media screen and (min-width: 961px){.moreVertBtn{position:relative;right:3px}}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:last-of-type{border-radius:0 0 5px!important}::ng-deep .p-datatable.p-datatable-sm .p-datatable-thead>tr>th:first-of-type{border-radius:0 0 0 5px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before{transform:translate(1.25rem);height:15px;margin-top:-8px;-webkit-transform:translateX(1.25rem);-moz-transform:translateX(1.25rem);-ms-transform:translateX(1.25rem);-o-transform:translateX(1.25rem)}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch.p-inputswitch-checked .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch{height:21px}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider:before{background:#fff;width:1rem;height:1.25rem;height:16px!important;left:.25rem;margin-top:-9px!important;margin-top:-.625rem;border-radius:50%;transition-duration:.2s}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch:not(.p-disabled) .p-inputswitch-slider{height:21px}:host ::ng-deep p-celleditor>div>kv-input-text>span>.inputs{height:15px!important}:host ::ng-deep p-celleditor>div>p-dropdown>.p-dropdown:not(.p-paginator-rpp-options){height:25px!important}:host ::ng-deep p-celleditor>kv-switch>div>p-inputswitch .p-inputswitch-slider{height:21px!important}:host ::ng-deep input.p-inputtext.p-component.p-element.p-inputmask.inputs.p-filled{height:15px}\n"] }]
495
495
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: i2.CodigoFipePipe }, { type: i2.CpfCnpjPipe }, { type: i2.TelefonePipe }, { type: i2.NotificationService }]; }, propDecorators: { setConfig: [{
496
496
  type: Input,
497
497
  args: ['config']
@@ -48,7 +48,7 @@ export * from './lib/components/keevo-components.module';
48
48
  export * from './lib/api/components/chart/chart.config';
49
49
  export * from './lib/api/components/chart/chart.model';
50
50
  export * from './lib/components/kv-chart/kv-chart.component';
51
- export * from './lib/components/kv-chart/kvchart.module';
51
+ export * from './lib/components/kv-chart/kv-chart.module';
52
52
  /**
53
53
  * Error
54
54
  */
@@ -113,8 +113,6 @@ export * from './lib/components/kv-table/kv-table.module';
113
113
  */
114
114
  export * from './lib/components/kv-tree-table/kv-tree-table.component';
115
115
  export * from './lib/components/kv-tree-table/kv-tree-table.module';
116
- export * from './lib/components/kv-treetable/kv-treetable.component';
117
- export * from './lib/components/kv-treetable/kv-treetable.module';
118
116
  /**
119
117
  * Treeview
120
118
  */
@@ -166,4 +164,4 @@ export * from './lib/components/kv-progress-bar/kv-progress-bar.module';
166
164
  */
167
165
  export * from './lib/components/kv-modal/kv-modal.component';
168
166
  export * from './lib/components/kv-modal/kv-modal.module';
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsMENBQTBDLENBQUM7QUFFekQ7O0dBRUc7QUFDSCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0NBQW9DLENBQUE7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRDs7R0FFRztBQUNILGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQTtBQUU3Qzs7R0FFRztBQUNILGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1DQUFtQyxDQUFDO0FBRWxEOztHQUVHO0FBQ0gsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDBDQUEwQyxDQUFDO0FBRXpEOztHQUVHO0FBQ0gsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RDs7R0FFRztBQUNILGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsbUZBQW1GLENBQUM7QUFDbEcsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLCtFQUErRSxDQUFDO0FBQzlGLGNBQWMsMkVBQTJFLENBQUM7QUFDMUYsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RDs7R0FFRztBQUNILGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLG9GQUFvRixDQUFDO0FBQ25HLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsMERBQTBELENBQUM7QUFFekU7O0dBRUc7QUFDSCxjQUFjLG9EQUFvRCxDQUFBO0FBQ2xFLGNBQWMsaURBQWlELENBQUE7QUFFL0Q7O0dBRUc7QUFDSCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFDSCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLHNEQUFzRCxDQUFBO0FBQ3BFLGNBQWMsbURBQW1ELENBQUE7QUFFakU7O0dBRUc7QUFDSCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFDSCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFFeEQ7O0dBRUc7QUFDSCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQ7O0dBRUc7QUFDSCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsc0RBQXNELENBQUM7QUFFckU7O0dBRUc7QUFDSCxjQUFjLHNEQUFzRCxDQUFBO0FBQ3BFLGNBQWMsbURBQW1ELENBQUE7QUFFakU7O0dBRUc7QUFDSCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RDs7R0FFRztBQUNILGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUU1RDs7R0FFRztBQUNILGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxpREFBaUQsQ0FBQztBQUVoRTs7R0FFRztBQUNILGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyx5REFBeUQsQ0FBQztBQUV4RTs7R0FFRztBQUNILGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Yga2Vldm8tY29tcG9uZW50c1xuICovXG5cbi8qKlxuICogQ2xhc3NlcyBiYXNlIGRlIGNvbXBvbmVudGVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtYnV0dG9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY2hhcnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jcnVkLWZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jcnVkLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jcnVkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtZHJvcGRvd24tZXh0ZXJuYWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1kcm9wZG93bic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWlucHV0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtbXVsdGktc2VsZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQnO1xuXG4vKipcbiAqIEhlbHBlcnNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMvY29tcG9uZW50LXByb3ZpZGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy9rZWV2by12YWxpZGF0b3JzJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMvdHJhbnNsYXRlLXByaW1lbmcnO1xuXG4vKipcbiAqIFBpcGVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9jb2RpZ29maWxlLnBpcGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvY3BmY25wai5waXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL21hc2sucGlwZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9waXBlcy5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvdGVsZWZvbmUucGlwZSdcblxuLyoqXG4gKiBTZXJ2aWNlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvYmFzZS5hcGkuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9icmVhZGNydW1icy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9jb21wb25lbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvZm9ybS5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9vYmplY3Quc2VydmljZSc7XG5cbi8qKlxuICogUHJpbWVOR1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2tlZXZvLWNvbXBvbmVudHMubW9kdWxlJztcblxuLyoqXG4gKiBDaGFydHNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvY2hhcnQvY2hhcnQuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2NoYXJ0L2NoYXJ0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2hhcnQva3YtY2hhcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2hhcnQva3ZjaGFydC5tb2R1bGUnO1xuXG4vKipcbiAqIEVycm9yXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZXJyb3Iva3YtZXJyb3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZXJyb3Iva3YtZXJyb3IubW9kdWxlJztcblxuLyoqXG4gKiBCdXR0b25zXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24tcGVyc29uYWxpemUva3YtYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbnMva3YtYnV0dG9uLXBvcHVwL2t2LWJ1dHRvbi1wb3B1cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zZWNvbmRhcnkva3YtYnV0dG9uLXNlY29uZGFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zdWNjZXNzL2t2LWJ1dHRvbi1zdWNjZXNzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbnMva3YtYnV0dG9uLm1vZHVsZSc7XG5cbi8qKlxuICogSW5wdXRzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2Ryb3Bkb3duL2ZpbHRyby5jb21ibyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1jaGVjay9rdi1jaGVjay5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtZHJvcGRvd24va3YtZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci9rdi1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LWNhbGVuZGFyL2t2LWlucHV0LWNhbGVuZGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1tYXNrL2t2LWlucHV0LW1hc2suY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LW51bWJlci9rdi1pbnB1dC1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXBhc3N3b3JkL2t2LWlucHV0LXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC10ZXh0LWNoZWNrYm94L2t2LWlucHV0LXRleHQtY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRleHQva3YtaW5wdXQtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtdGV4dGFyZWEva3YtaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRpbWUva3YtaW5wdXQtdGltZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXRzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1tdWx0aS1zZWxlY3Qva3YtbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1yYWRpby1ncm91cC9rdi1yYWRpby1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3Ytc3dpdGNoL2t2LXN3aXRjaC5jb21wb25lbnQnO1xuXG4vKipcbiAqIE9yZ2NoYXJ0XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1vcmdjaGFydC9rdi1vcmdjaGFydC5tb2R1bGUnXG5cbi8qKlxuICogUGlja2xpc3RcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1waWNrLWxpc3Qva3YtcGljay1saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBpY2stbGlzdC9rdi1waWNrLWxpc3QubW9kdWxlJztcblxuLyoqXG4gKiBUYWJsZSBlZGl0XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlZGl0LmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZWVkaXQuY29uZmlnLmNvbHVtbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLWVkaXQva3YtdGFibGUtZWRpdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS1lZGl0L2t2LXRhYmxlLWVkaXQubW9kdWxlJztcblxuLyoqXG4gKiBUYWJsZVxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9hY3Rpb24taXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9rdi1tZW51aXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb25maWcuY29sdW1uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLm1vZHVsZSc7XG5cbi8qKlxuICogVHJlZVRhYmxlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZXRhYmxlL2t2LXRyZWV0YWJsZS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRyZWV0YWJsZS9rdi10cmVldGFibGUubW9kdWxlJ1xuXG4vKipcbiAqIFRyZWV2aWV3XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS12aWV3L2t2LXRyZWUtdmlldy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10cmVlLXZpZXcva3YtdHJlZS12aWV3Lm1vZHVsZSc7XG5cbi8qKlxuICogQ29tcG9uZW50ZSBkZSBtZW51ICsgbGF5b3V0XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbWVudS9rdi1tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW1lbnUva3YtbWVudS5tb2R1bGUnO1xuXG4vKipcbiAqIENvbXBvbmVudGUgZGUgbG9naW5cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2dpbi9rdi1sb2dpbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2dpbi9rdi1sb2dpbi5tb2R1bGUnO1xuXG4vKipcbiAqIENvbXBvbmVudGUgZGUgd29ya3NwYWNlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS9rdi13b3Jrc3BhY2UubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytd29ya3NwYWNlL2t2LXdvcmtzcGFjZS5jb21wb25lbnQnO1xuXG4vKipcbiAqIEZvcm11bMOhcmlvIGJhc2VcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wYWdlLWZvcm0va3YtcGFnZS1mb3JtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1mb3JtL2t2LXBhZ2UtZm9ybS5tb2R1bGUnXG5cbi8qKlxuICogTG9hZGVyXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9hZGVyL2t2LWxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2FkZXIva3YtbG9hZGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvYWRlci9rdi1sb2FkZXIuc2VydmljZSc7XG5cbi8qKlxuICogQXZhdGFyXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYXZhdGFyL2t2LWF2YXRhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1hdmF0YXIva3YtYXZhdGFyLm1vZHVsZSc7XG5cbi8qKlxuICogQ2Fyb3VzZWxcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jYXJvdXNlbC9rdi1jYXJvdXNlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jYXJvdXNlbC9rdi1jYXJvdXNlbC5tb2R1bGUnO1xuXG4vKipcbiAqIFByb2dyZXNzIEJhclxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXByb2dyZXNzLWJhci9rdi1wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcHJvZ3Jlc3MtYmFyL2t2LXByb2dyZXNzLWJhci5tb2R1bGUnO1xuXG4vKipcbiAqIE1vZGFsXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwubW9kdWxlJzsiXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsMENBQTBDLENBQUM7QUFFekQ7O0dBRUc7QUFDSCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0NBQW9DLENBQUE7QUFDbEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRDs7R0FFRztBQUNILGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQTtBQUU3Qzs7R0FFRztBQUNILGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1DQUFtQyxDQUFDO0FBRWxEOztHQUVHO0FBQ0gsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDBDQUEwQyxDQUFDO0FBRXpEOztHQUVHO0FBQ0gsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsbUZBQW1GLENBQUM7QUFDbEcsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLCtFQUErRSxDQUFDO0FBQzlGLGNBQWMsMkVBQTJFLENBQUM7QUFDMUYsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RDs7R0FFRztBQUNILGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLG9GQUFvRixDQUFDO0FBQ25HLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsMERBQTBELENBQUM7QUFFekU7O0dBRUc7QUFDSCxjQUFjLG9EQUFvRCxDQUFBO0FBQ2xFLGNBQWMsaURBQWlELENBQUE7QUFFL0Q7O0dBRUc7QUFDSCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFDSCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxxREFBcUQsQ0FBQTtBQUVuRTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUVsRTs7R0FFRztBQUNILGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx5Q0FBeUMsQ0FBQztBQUV4RDs7R0FFRztBQUNILGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxzREFBc0QsQ0FBQztBQUVyRTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUE7QUFDcEUsY0FBYyxtREFBbUQsQ0FBQTtBQUVqRTs7R0FFRztBQUNILGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLDhDQUE4QyxDQUFDO0FBRTdEOztHQUVHO0FBQ0gsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGlEQUFpRCxDQUFDO0FBRWhFOztHQUVHO0FBQ0gsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHlEQUF5RCxDQUFDO0FBRXhFOztHQUVHO0FBQ0gsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDJDQUEyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBrZWV2by1jb21wb25lbnRzXG4gKi9cblxuLyoqXG4gKiBDbGFzc2VzIGJhc2UgZGUgY29tcG9uZW50ZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jaGFydCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQtZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQtbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1kcm9wZG93bi1leHRlcm5hbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWRyb3Bkb3duJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtaW5wdXQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1tdWx0aS1zZWxlY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudCc7XG5cbi8qKlxuICogSGVscGVyc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy9jb21wb25lbnQtcHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9oZWxwZXJzL2tlZXZvLXZhbGlkYXRvcnMnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy90cmFuc2xhdGUtcHJpbWVuZyc7XG5cbi8qKlxuICogUGlwZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL2NvZGlnb2ZpbGUucGlwZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9jcGZjbnBqLnBpcGUnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvbWFzay5waXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL3BpcGVzLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy90ZWxlZm9uZS5waXBlJ1xuXG4vKipcbiAqIFNlcnZpY2VzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9iYXNlLmFwaS5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2JyZWFkY3J1bWJzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL29iamVjdC5zZXJ2aWNlJztcblxuLyoqXG4gKiBQcmltZU5HXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9tb2R1bGVzL3ByaW1lbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva2Vldm8tY29tcG9uZW50cy5tb2R1bGUnO1xuXG4vKipcbiAqIENoYXJ0c1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy9jaGFydC9jaGFydC5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvY2hhcnQvY2hhcnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jaGFydC9rdi1jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jaGFydC9rdi1jaGFydC5tb2R1bGUnO1xuXG4vKipcbiAqIEVycm9yXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZXJyb3Iva3YtZXJyb3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZXJyb3Iva3YtZXJyb3IubW9kdWxlJztcblxuLyoqXG4gKiBCdXR0b25zXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24tcGVyc29uYWxpemUva3YtYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbnMva3YtYnV0dG9uLXBvcHVwL2t2LWJ1dHRvbi1wb3B1cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zZWNvbmRhcnkva3YtYnV0dG9uLXNlY29uZGFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zdWNjZXNzL2t2LWJ1dHRvbi1zdWNjZXNzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbnMva3YtYnV0dG9uLm1vZHVsZSc7XG5cbi8qKlxuICogSW5wdXRzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2Ryb3Bkb3duL2ZpbHRyby5jb21ibyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1jaGVjay9rdi1jaGVjay5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtZHJvcGRvd24va3YtZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci9rdi1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LWNhbGVuZGFyL2t2LWlucHV0LWNhbGVuZGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1tYXNrL2t2LWlucHV0LW1hc2suY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LW51bWJlci9rdi1pbnB1dC1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXBhc3N3b3JkL2t2LWlucHV0LXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC10ZXh0LWNoZWNrYm94L2t2LWlucHV0LXRleHQtY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRleHQva3YtaW5wdXQtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtdGV4dGFyZWEva3YtaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRpbWUva3YtaW5wdXQtdGltZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXRzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1tdWx0aS1zZWxlY3Qva3YtbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1yYWRpby1ncm91cC9rdi1yYWRpby1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3Ytc3dpdGNoL2t2LXN3aXRjaC5jb21wb25lbnQnO1xuXG4vKipcbiAqIE9yZ2NoYXJ0XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1vcmdjaGFydC9rdi1vcmdjaGFydC5tb2R1bGUnXG5cbi8qKlxuICogUGlja2xpc3RcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1waWNrLWxpc3Qva3YtcGljay1saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBpY2stbGlzdC9rdi1waWNrLWxpc3QubW9kdWxlJztcblxuLyoqXG4gKiBUYWJsZSBlZGl0XG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlZGl0LmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZWVkaXQuY29uZmlnLmNvbHVtbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLWVkaXQva3YtdGFibGUtZWRpdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS1lZGl0L2t2LXRhYmxlLWVkaXQubW9kdWxlJztcblxuLyoqXG4gKiBUYWJsZVxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9hY3Rpb24taXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9rdi1tZW51aXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb25maWcuY29sdW1uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLm1vZHVsZSc7XG5cbi8qKlxuICogVHJlZVRhYmxlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLm1vZHVsZSdcblxuLyoqXG4gKiBUcmVldmlld1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRyZWUtdmlldy9rdi10cmVlLXZpZXcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS12aWV3L2t2LXRyZWUtdmlldy5tb2R1bGUnO1xuXG4vKipcbiAqIENvbXBvbmVudGUgZGUgbWVudSArIGxheW91dFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW1lbnUva3YtbWVudS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1tZW51L2t2LW1lbnUubW9kdWxlJztcblxuLyoqXG4gKiBDb21wb25lbnRlIGRlIGxvZ2luXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4ubW9kdWxlJztcblxuLyoqXG4gKiBDb21wb25lbnRlIGRlIHdvcmtzcGFjZXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi13b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS9rdi13b3Jrc3BhY2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBGb3JtdWzDoXJpbyBiYXNlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1mb3JtL2t2LXBhZ2UtZm9ybS5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBhZ2UtZm9ybS9rdi1wYWdlLWZvcm0ubW9kdWxlJ1xuXG4vKipcbiAqIExvYWRlclxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvYWRlci9rdi1sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9hZGVyL2t2LWxvYWRlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2FkZXIva3YtbG9hZGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEF2YXRhclxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWF2YXRhci9rdi1hdmF0YXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYXZhdGFyL2t2LWF2YXRhci5tb2R1bGUnO1xuXG4vKipcbiAqIENhcm91c2VsXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2Fyb3VzZWwva3YtY2Fyb3VzZWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2Fyb3VzZWwva3YtY2Fyb3VzZWwubW9kdWxlJztcblxuLyoqXG4gKiBQcm9ncmVzcyBCYXJcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wcm9ncmVzcy1iYXIva3YtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXByb2dyZXNzLWJhci9rdi1wcm9ncmVzcy1iYXIubW9kdWxlJztcblxuLyoqXG4gKiBNb2RhbFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW1vZGFsL2t2LW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW1vZGFsL2t2LW1vZGFsLm1vZHVsZSc7Il19