keevo-components 1.4.21 → 1.4.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,6 +43,8 @@ import * as i10$1 from 'primeng/menu';
43
43
  import { MenuModule } from 'primeng/menu';
44
44
  import * as i11 from 'primeng/table';
45
45
  import { TableModule } from 'primeng/table';
46
+ import * as i12 from 'primeng/chip';
47
+ import { ChipModule } from 'primeng/chip';
46
48
  import { AccordionModule } from 'primeng/accordion';
47
49
  import { BadgeModule } from 'primeng/badge';
48
50
  import { CardModule } from 'primeng/card';
@@ -472,10 +474,10 @@ class InputMaskComponent extends BaseComponentInput {
472
474
  }
473
475
  }
474
476
  InputMaskComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: InputMaskComponent, deps: [{ token: ComponentService }], target: i0.ɵɵFactoryTarget.Component });
475
- InputMaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: InputMaskComponent, selector: "kv-input-mask", inputs: { mask: "mask" }, providers: ComponentProviders(InputMaskComponent), usesInheritance: true, ngImport: i0, template: "<span class=\"p-float-label\">\r\n\r\n <p-inputMask\r\n [class]=\"baseInputClass\"\r\n [inputId]=\"componentId\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n [mask]=\"mask\"\r\n (onBlur)=\"onInputBlur($event)\">\r\n </p-inputMask>\r\n <label [for]=\"componentId\">{{ label }}</label>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["", "label{font-family:Roboto,Arial,Helvetica,sans-serif}\n"], dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "component", type: i4$2.InputMask, selector: "p-inputMask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabel", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }] });
477
+ InputMaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: InputMaskComponent, selector: "kv-input-mask", inputs: { mask: "mask" }, providers: ComponentProviders(InputMaskComponent), usesInheritance: true, ngImport: i0, template: "<span class=\"p-float-label\">\r\n\r\n <p-inputMask\r\n [class]=\"baseInputClass\"\r\n [inputId]=\"componentId\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n [mask]=\"mask\"\r\n (onBlur)=\"onInputBlur($event)\">\r\n </p-inputMask>\r\n <label [for]=\"componentId\">{{ label }}</label>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["", "label{font-family:Roboto,Arial,Helvetica,sans-serif}\n"], dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "component", type: i4$2.InputMask, selector: "p-inputMask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabel", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }] });
476
478
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: InputMaskComponent, decorators: [{
477
479
  type: Component,
478
- args: [{ selector: 'kv-input-mask', providers: ComponentProviders(InputMaskComponent), template: "<span class=\"p-float-label\">\r\n\r\n <p-inputMask\r\n [class]=\"baseInputClass\"\r\n [inputId]=\"componentId\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n [mask]=\"mask\"\r\n (onBlur)=\"onInputBlur($event)\">\r\n </p-inputMask>\r\n <label [for]=\"componentId\">{{ label }}</label>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["label{font-family:Roboto,Arial,Helvetica,sans-serif}\n"] }]
480
+ args: [{ selector: 'kv-input-mask', providers: ComponentProviders(InputMaskComponent), template: "<span class=\"p-float-label\">\r\n\r\n <p-inputMask\r\n [class]=\"baseInputClass\"\r\n [inputId]=\"componentId\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"value\"\r\n [mask]=\"mask\"\r\n (onBlur)=\"onInputBlur($event)\">\r\n </p-inputMask>\r\n <label [for]=\"componentId\">{{ label }}</label>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["label{font-family:Roboto,Arial,Helvetica,sans-serif}\n"] }]
479
481
  }], ctorParameters: function () { return [{ type: ComponentService }]; }, propDecorators: { mask: [{
480
482
  type: Input
481
483
  }] } });
@@ -866,16 +868,18 @@ class TableComponent {
866
868
  this.telefonePipe = telefonePipe;
867
869
  this.globalFilterFields = [];
868
870
  this.selectedSize = '';
871
+ this.menuItems = [];
869
872
  this.selectedItems = [];
870
873
  this.paginator = true;
871
874
  this.rows = 5;
872
875
  this.applyStyle = (rowData, col) => '';
876
+ this.acoesLinhaTabela = true;
873
877
  this.onActiveItem = new EventEmitter();
878
+ this.onActiveItemLote = new EventEmitter();
874
879
  this.onPaginate = new EventEmitter();
875
880
  this.onSelectionChange = new EventEmitter();
876
881
  this.doubleClickEvent = new EventEmitter();
877
882
  this.filterField = new EventEmitter();
878
- this.selectedRow = new EventEmitter();
879
883
  }
880
884
  ngOnInit() {
881
885
  this.adjustTableSize();
@@ -888,9 +892,15 @@ class TableComponent {
888
892
  activeItem(rowData) {
889
893
  this.onActiveItem.emit(rowData);
890
894
  }
895
+ activeItemLote(rowData) {
896
+ this.onActiveItemLote.emit(rowData);
897
+ }
891
898
  isBooleanField(rowData, col) {
892
899
  return typeof rowData[col.field] == 'boolean';
893
900
  }
901
+ isChipField(col) {
902
+ return col.fieldType == 'chip';
903
+ }
894
904
  onGlobalFilter(table, event) {
895
905
  this.filterField.emit(event.target.value);
896
906
  table.filterGlobal(event.target.value, 'contains');
@@ -977,6 +987,15 @@ class TableComponent {
977
987
  const _field = _function ? _function.apply(action, [rowData]) : action[field];
978
988
  return _field;
979
989
  }
990
+ retornarRow(rowData, col, field) {
991
+ const _rowaction = this.config.rows ? this.config.rows[col.field] : null;
992
+ const _field = (_rowaction && _rowaction[field]) ?
993
+ (_rowaction[field].constructor === Function ?
994
+ _rowaction[field].apply(this, [rowData]) :
995
+ _rowaction[field]) :
996
+ null;
997
+ return _field;
998
+ }
980
999
  exibirCampo(field, rowData) {
981
1000
  if (field != undefined && field != null && field != '') {
982
1001
  const value = rowData[field];
@@ -984,15 +1003,23 @@ class TableComponent {
984
1003
  }
985
1004
  return true;
986
1005
  }
987
- selectedRowExport(rowData) {
988
- this.selectedRow.emit(rowData);
1006
+ criarMenuItems(action, data) {
1007
+ let menuInsert;
1008
+ if (action && data) {
1009
+ let icon = this.retornarCampo(action, data, 'icon');
1010
+ let tooltip = this.retornarCampo(action, data, 'tooltip');
1011
+ let label = this.retornarCampo(action, data, 'label');
1012
+ menuInsert = { label, icon, tooltip };
1013
+ }
1014
+ if (!(this.menuItems.find((x) => x.label == menuInsert.label)))
1015
+ this.menuItems.push(menuInsert);
989
1016
  }
990
1017
  }
991
1018
  TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, deps: [{ token: i1.DatePipe }, { token: i1.DecimalPipe }, { token: CodigoFipePipe }, { token: CpfCnpjPipe }, { token: TelefonePipe }], target: i0.ɵɵFactoryTarget.Component });
992
- TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows", tableSize: "tableSize", applyStyle: "applyStyle", menuItems: "menuItems" }, outputs: { onActiveItem: "onActiveItem", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange", doubleClickEvent: "doubleClickEvent", filterField: "filterField", selectedRow: "selectedRow" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table\r\n *ngIf=\"config\"\r\n #dt\r\n styleClass=\"p-datatable-sm\"\r\n [value]=\"dataSource\"\r\n [(selection)]=\"selectedItems\"\r\n [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\"\r\n [rows]=\"rows\"\r\n [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\"\r\n [rowHover]=\"true\"\r\n [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\"\r\n (onLazyLoad)=\"paginate($event)\"\r\n (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\"\r\n [groupRowsBy]=\"config.fieldGroup\"\r\n [showFirstLastIcon]=\"false\"\r\n [pageLinks]=\"1\"\r\n [responsive]=\"true\"\r\n responsiveLayout=\"stack\"\r\n>\r\n\r\n <ng-template\r\n pTemplate=\"caption\"\r\n *ngIf=\"config.enableCation\"\r\n >\r\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\r\n <h5\r\n class=\"field col-12 md:col-3\"\r\n *ngIf=\"config.title\"\r\n >{{ config.title }}</h5>\r\n <div [class]=\"tamanhoTela < 768 ? 'col-11 md:col-6 lg:col-4' : 'col-12 md:col-6 lg:col-4 input-search'\">\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0 p-input-icon-left\"\r\n >\r\n <i class=\"pi pi-search\"></i>\r\n <input\r\n pInputText\r\n pAutoFocus\r\n [autofocus]=\"true\"\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\"\r\n class=\"w-full\"\r\n />\r\n </span>\r\n </div>\r\n\r\n <div class=\"flex flex-row col-1 justify-content-end\">\r\n <div\r\n *ngFor=\"let action of config.actionsLote\"\r\n class=\"btns-options\"\r\n >\r\n\r\n <p-button\r\n *ngIf=\"selectedItems.length > 0 || action.showWhenSelected\"\r\n styleClass=\"p-button-text p-button-raised h-2rem w-2rem ml-1 flex align-items-center justify-content-center\"\r\n (click)=\"action?.command(); activeItem(selectedItems)\"\r\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n >\r\n <i\r\n class=\"material-icons\"\r\n style=\"color: #64748B\"\r\n > {{retornarCampo(action, selectedItems, 'icon')}} </i>\r\n </p-button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"header\"\r\n let-columns\r\n >\r\n\r\n <tr>\r\n <th\r\n style=\"width: 4rem; border-left: solid 4px transparent;\"\r\n *ngIf=\"config.enableSelect\"\r\n >\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n\r\n <th\r\n *ngFor=\"let col of columns;\"\r\n [pSortableColumn]=\"col.field\"\r\n [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\"\r\n class=\"text-sm\"\r\n >\r\n <div [class]=\" centralizarColunas(col) ? 'flex flex-row justify-content-center' : 'flex flex-row '\">\r\n {{col.header}}\r\n <p-sortIcon\r\n *ngIf=\"col.sortable === true\"\r\n [field]=\"col.field\"\r\n style=\"font-size: 10px;\"\r\n ></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-columns=\"columns\"\r\n let-rowgroup=\"rowgroup\"\r\n let-rowspan=\"rowspan\"\r\n >\r\n\r\n <tr (dblclick)=\"doubleClick($event, rowData)\">\r\n\r\n <td\r\n *ngIf=\"config.enableSelect\"\r\n [style]=\"applyStyle(rowData, {field:'check-box' , header: ''})\"\r\n >\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"rowgroup\"\r\n [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\"\r\n class=\"rowTable\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td\r\n *ngIf=\"!rowgroup && !col.grouped\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n class=\"rowTable\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <td\r\n *ngIf=\"config.actions && config.actions.length> 0\"\r\n [style]=\"applyStyle(rowData, {field:'btns-options' , header: ''})\"\r\n >\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"!menuItems\"\r\n >\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n *ngIf=\"exibirCampo(action.fieldcondition,rowData)\"\r\n [icon]=\"retornarCampo(action, rowData, 'icon')\"\r\n styleClass=\"p-button-text p-button-secondary p-button-raised h-2rem w-2rem ml-1\"\r\n (click)=\"action?.command(); activeItem(rowData)\"\r\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n ></p-button>\r\n </div>\r\n\r\n </div>\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"menuItems\"\r\n >\r\n <p-button\r\n [icon]=\"'pi pi-ellipsis-v'\"\r\n styleClass=\"p-button-text p-button-secondary h-2rem w-2rem\"\r\n (click)=\"menu.toggle($event);\"\r\n ></p-button>\r\n <p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"menuItems\"\r\n appendTo=\"body\"\r\n (onHide)=\"selectedRowExport(rowData);\"\r\n ></p-menu>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n pTemplate=\"emptymessage\"\r\n let-columns\r\n >\r\n <tr>\r\n <td\r\n [attr.colspan]=\"columns.length\"\r\n style=\"text-align: center;\"\r\n >\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"config.actions\"\r\n></p-menu>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n>", styles: [".error-show{background-color:red;width:5px;height:10px}.input-search{position:relative;right:8px}.btns-options{position:relative;left:20px}\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$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i4$5.InputText, selector: "[pInputText]" }, { kind: "component", type: i10$1.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i11.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "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", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i11.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i11.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i11.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }] });
1019
+ TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TableComponent, selector: "kv-table", inputs: { setConfig: ["config", "setConfig"], dataSource: "dataSource", selectedItems: "selectedItems", totalRecords: "totalRecords", paginator: "paginator", rowsPerPageOptions: "rowsPerPageOptions", rows: "rows", tableSize: "tableSize", applyStyle: "applyStyle", acoesLinhaTabela: "acoesLinhaTabela" }, outputs: { onActiveItem: "onActiveItem", onActiveItemLote: "onActiveItemLote", onPaginate: "onPaginate", onSelectionChange: "onSelectionChange", doubleClickEvent: "doubleClickEvent", filterField: "filterField" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true }], ngImport: i0, template: "<p-table\r\n *ngIf=\"config\"\r\n #dt\r\n styleClass=\"p-datatable-sm\"\r\n [value]=\"dataSource\"\r\n [(selection)]=\"selectedItems\"\r\n [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\"\r\n [rows]=\"rows\"\r\n [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\"\r\n [rowHover]=\"true\"\r\n [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\"\r\n (onLazyLoad)=\"paginate($event)\"\r\n (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\"\r\n [groupRowsBy]=\"config.fieldGroup\"\r\n [showFirstLastIcon]=\"false\"\r\n [pageLinks]=\"1\"\r\n [responsive]=\"true\"\r\n responsiveLayout=\"stack\"\r\n>\r\n\r\n <ng-template\r\n pTemplate=\"caption\"\r\n *ngIf=\"config.enableCation\"\r\n >\r\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\r\n <h5\r\n class=\"field col-12\"\r\n *ngIf=\"config.title\"\r\n >{{ config.title }}</h5>\r\n <div [class]=\"tamanhoTela < 768 ? 'col-11 md:col-6 lg:col-4' : 'col-12 md:col-6 lg:col-4 input-search'\">\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0 p-input-icon-left\"\r\n >\r\n <i class=\"pi pi-search\"></i>\r\n <input\r\n pInputText\r\n pAutoFocus\r\n [autofocus]=\"true\"\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\"\r\n class=\"w-full\"\r\n />\r\n </span>\r\n </div>\r\n\r\n <div class=\"flex flex-row col-1 justify-content-end\">\r\n <div\r\n *ngFor=\"let action of config.actionsLote\"\r\n class=\"btns-options\"\r\n >\r\n\r\n <p-button\r\n *ngIf=\"selectedItems.length > 0 || action.showAcoesLote\"\r\n styleClass=\"p-button-text p-button-raised h-2rem w-2rem ml-1 flex align-items-center justify-content-center\"\r\n (click)=\"action?.command(); activeItemLote(selectedItems)\"\r\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n >\r\n <i\r\n class=\"material-icons\"\r\n style=\"color: #64748B\"\r\n > {{retornarCampo(action, selectedItems, 'icon')}} </i>\r\n </p-button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"header\"\r\n let-columns\r\n >\r\n\r\n <tr>\r\n <th\r\n style=\"width: 4rem; border-left: solid 4px transparent;\"\r\n *ngIf=\"config.enableSelect\"\r\n >\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n\r\n <th\r\n *ngFor=\"let col of columns;\"\r\n [pSortableColumn]=\"col.field\"\r\n [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\"\r\n class=\"text-sm\"\r\n >\r\n <div [class]=\" centralizarColunas(col) ? 'flex flex-row justify-content-center' : 'flex flex-row '\">\r\n {{col.header}}\r\n <p-sortIcon\r\n *ngIf=\"col.sortable === true\"\r\n [field]=\"col.field\"\r\n style=\"font-size: 10px;\"\r\n ></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-columns=\"columns\"\r\n let-rowgroup=\"rowgroup\"\r\n let-rowspan=\"rowspan\"\r\n >\r\n\r\n <tr (dblclick)=\"doubleClick($event, rowData)\">\r\n\r\n <td\r\n *ngIf=\"config.enableSelect\"\r\n [style]=\"applyStyle(rowData, {field:'check-box' , header: ''})\"\r\n >\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"rowgroup\"\r\n [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\"\r\n class=\"rowTable\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n <span *ngIf=\"!isChipField(col)\">{{ transformValue(rowData, col) }}</span>\r\n <p-chip *ngIf=\"isChipField(col)\" [label]=\"transformValue(rowData, col)\" [styleClass]=\"retornarRow(rowData, col, 'stylechip')\"></p-chip>\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td\r\n *ngIf=\"!rowgroup && !col.grouped\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n class=\"rowTable\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n <span *ngIf=\"!isChipField(col)\">{{ transformValue(rowData, col) }}</span>\r\n <p-chip *ngIf=\"isChipField(col)\" [label]=\"transformValue(rowData, col)\" [styleClass]=\"retornarRow(rowData, col, 'stylechip')\"></p-chip>\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <td\r\n *ngIf=\"config.actions && config.actions.length> 0\"\r\n [style]=\"applyStyle(rowData, {field:'btns-options' , header: ''})\"\r\n >\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"acoesLinhaTabela\"\r\n >\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n *ngIf=\"exibirCampo(action.fieldcondition,rowData)\"\r\n [icon]=\"retornarCampo(action, rowData, 'icon')\"\r\n styleClass=\"p-button-text p-button-secondary p-button-raised h-2rem w-2rem ml-1\"\r\n (click)=\"action?.command(); activeItem(rowData)\"\r\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n ></p-button>\r\n </div>\r\n\r\n </div>\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"!acoesLinhaTabela\"\r\n >\r\n <p-button\r\n [icon]=\"'pi pi-ellipsis-h'\"\r\n styleClass=\"p-button-text p-button-secondary h-2rem w-2rem\"\r\n (click)=\"menu.toggle($event); activeItem(rowData)\"\r\n ></p-button>\r\n\r\n <div *ngFor=\"let action of config.actions\">\r\n {{criarMenuItems(action, rowData)}}\r\n </div>\r\n\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n pTemplate=\"emptymessage\"\r\n let-columns\r\n >\r\n <tr>\r\n <td\r\n [attr.colspan]=\"columns.length\"\r\n style=\"text-align: center;\"\r\n >\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"menuItems\"\r\n appendTo=\"body\"\r\n></p-menu>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n>", styles: [".error-show{background-color:red;width:5px;height:10px}.input-search{position:relative;right:8px}.btns-options{position:relative;left:20px}\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$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i4$5.InputText, selector: "[pInputText]" }, { kind: "component", type: i10$1.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i11.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "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", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i11.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i11.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i11.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i12.Chip, selector: "p-chip", inputs: ["label", "icon", "image", "style", "styleClass", "removable", "removeIcon"], outputs: ["onRemove", "onImageError"] }] });
993
1020
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, decorators: [{
994
1021
  type: Component,
995
- args: [{ selector: 'kv-table', template: "<p-table\r\n *ngIf=\"config\"\r\n #dt\r\n styleClass=\"p-datatable-sm\"\r\n [value]=\"dataSource\"\r\n [(selection)]=\"selectedItems\"\r\n [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\"\r\n [rows]=\"rows\"\r\n [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\"\r\n [rowHover]=\"true\"\r\n [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\"\r\n (onLazyLoad)=\"paginate($event)\"\r\n (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\"\r\n [groupRowsBy]=\"config.fieldGroup\"\r\n [showFirstLastIcon]=\"false\"\r\n [pageLinks]=\"1\"\r\n [responsive]=\"true\"\r\n responsiveLayout=\"stack\"\r\n>\r\n\r\n <ng-template\r\n pTemplate=\"caption\"\r\n *ngIf=\"config.enableCation\"\r\n >\r\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\r\n <h5\r\n class=\"field col-12 md:col-3\"\r\n *ngIf=\"config.title\"\r\n >{{ config.title }}</h5>\r\n <div [class]=\"tamanhoTela < 768 ? 'col-11 md:col-6 lg:col-4' : 'col-12 md:col-6 lg:col-4 input-search'\">\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0 p-input-icon-left\"\r\n >\r\n <i class=\"pi pi-search\"></i>\r\n <input\r\n pInputText\r\n pAutoFocus\r\n [autofocus]=\"true\"\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\"\r\n class=\"w-full\"\r\n />\r\n </span>\r\n </div>\r\n\r\n <div class=\"flex flex-row col-1 justify-content-end\">\r\n <div\r\n *ngFor=\"let action of config.actionsLote\"\r\n class=\"btns-options\"\r\n >\r\n\r\n <p-button\r\n *ngIf=\"selectedItems.length > 0 || action.showWhenSelected\"\r\n styleClass=\"p-button-text p-button-raised h-2rem w-2rem ml-1 flex align-items-center justify-content-center\"\r\n (click)=\"action?.command(); activeItem(selectedItems)\"\r\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n >\r\n <i\r\n class=\"material-icons\"\r\n style=\"color: #64748B\"\r\n > {{retornarCampo(action, selectedItems, 'icon')}} </i>\r\n </p-button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"header\"\r\n let-columns\r\n >\r\n\r\n <tr>\r\n <th\r\n style=\"width: 4rem; border-left: solid 4px transparent;\"\r\n *ngIf=\"config.enableSelect\"\r\n >\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n\r\n <th\r\n *ngFor=\"let col of columns;\"\r\n [pSortableColumn]=\"col.field\"\r\n [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\"\r\n class=\"text-sm\"\r\n >\r\n <div [class]=\" centralizarColunas(col) ? 'flex flex-row justify-content-center' : 'flex flex-row '\">\r\n {{col.header}}\r\n <p-sortIcon\r\n *ngIf=\"col.sortable === true\"\r\n [field]=\"col.field\"\r\n style=\"font-size: 10px;\"\r\n ></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-columns=\"columns\"\r\n let-rowgroup=\"rowgroup\"\r\n let-rowspan=\"rowspan\"\r\n >\r\n\r\n <tr (dblclick)=\"doubleClick($event, rowData)\">\r\n\r\n <td\r\n *ngIf=\"config.enableSelect\"\r\n [style]=\"applyStyle(rowData, {field:'check-box' , header: ''})\"\r\n >\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"rowgroup\"\r\n [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\"\r\n class=\"rowTable\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td\r\n *ngIf=\"!rowgroup && !col.grouped\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n class=\"rowTable\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n {{ transformValue(rowData, col) }}\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <td\r\n *ngIf=\"config.actions && config.actions.length> 0\"\r\n [style]=\"applyStyle(rowData, {field:'btns-options' , header: ''})\"\r\n >\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"!menuItems\"\r\n >\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n *ngIf=\"exibirCampo(action.fieldcondition,rowData)\"\r\n [icon]=\"retornarCampo(action, rowData, 'icon')\"\r\n styleClass=\"p-button-text p-button-secondary p-button-raised h-2rem w-2rem ml-1\"\r\n (click)=\"action?.command(); activeItem(rowData)\"\r\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n ></p-button>\r\n </div>\r\n\r\n </div>\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"menuItems\"\r\n >\r\n <p-button\r\n [icon]=\"'pi pi-ellipsis-v'\"\r\n styleClass=\"p-button-text p-button-secondary h-2rem w-2rem\"\r\n (click)=\"menu.toggle($event);\"\r\n ></p-button>\r\n <p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"menuItems\"\r\n appendTo=\"body\"\r\n (onHide)=\"selectedRowExport(rowData);\"\r\n ></p-menu>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n pTemplate=\"emptymessage\"\r\n let-columns\r\n >\r\n <tr>\r\n <td\r\n [attr.colspan]=\"columns.length\"\r\n style=\"text-align: center;\"\r\n >\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"config.actions\"\r\n></p-menu>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n>", styles: [".error-show{background-color:red;width:5px;height:10px}.input-search{position:relative;right:8px}.btns-options{position:relative;left:20px}\n"] }]
1022
+ args: [{ selector: 'kv-table', template: "<p-table\r\n *ngIf=\"config\"\r\n #dt\r\n styleClass=\"p-datatable-sm\"\r\n [value]=\"dataSource\"\r\n [(selection)]=\"selectedItems\"\r\n [columns]=\"config.columns\"\r\n [globalFilterFields]=\"globalFilterFields\"\r\n [rows]=\"rows\"\r\n [paginator]=\"paginator\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{first} - {last} de {totalRecords}\"\r\n [rowHover]=\"true\"\r\n [totalRecords]=\"totalRecords\"\r\n [lazy]=\"config.lazy\"\r\n (onLazyLoad)=\"paginate($event)\"\r\n (selectionChange)=\"selectionChange($event)\"\r\n rowGroupMode=\"rowspan\"\r\n [groupRowsBy]=\"config.fieldGroup\"\r\n [showFirstLastIcon]=\"false\"\r\n [pageLinks]=\"1\"\r\n [responsive]=\"true\"\r\n responsiveLayout=\"stack\"\r\n>\r\n\r\n <ng-template\r\n pTemplate=\"caption\"\r\n *ngIf=\"config.enableCation\"\r\n >\r\n <div class=\"flex flex-row flex-wrap justify-content-between align-items-center grid formgrid p-fluid col-12\">\r\n <h5\r\n class=\"field col-12\"\r\n *ngIf=\"config.title\"\r\n >{{ config.title }}</h5>\r\n <div [class]=\"tamanhoTela < 768 ? 'col-11 md:col-6 lg:col-4' : 'col-12 md:col-6 lg:col-4 input-search'\">\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0 p-input-icon-left\"\r\n >\r\n <i class=\"pi pi-search\"></i>\r\n <input\r\n pInputText\r\n pAutoFocus\r\n [autofocus]=\"true\"\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(dt, $event)\"\r\n placeholder=\"Pesquisar...\"\r\n class=\"w-full\"\r\n />\r\n </span>\r\n </div>\r\n\r\n <div class=\"flex flex-row col-1 justify-content-end\">\r\n <div\r\n *ngFor=\"let action of config.actionsLote\"\r\n class=\"btns-options\"\r\n >\r\n\r\n <p-button\r\n *ngIf=\"selectedItems.length > 0 || action.showAcoesLote\"\r\n styleClass=\"p-button-text p-button-raised h-2rem w-2rem ml-1 flex align-items-center justify-content-center\"\r\n (click)=\"action?.command(); activeItemLote(selectedItems)\"\r\n [pTooltip]=\"retornarCampo(action, selectedItems, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n >\r\n <i\r\n class=\"material-icons\"\r\n style=\"color: #64748B\"\r\n > {{retornarCampo(action, selectedItems, 'icon')}} </i>\r\n </p-button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"header\"\r\n let-columns\r\n >\r\n\r\n <tr>\r\n <th\r\n style=\"width: 4rem; border-left: solid 4px transparent;\"\r\n *ngIf=\"config.enableSelect\"\r\n >\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n\r\n <th\r\n *ngFor=\"let col of columns;\"\r\n [pSortableColumn]=\"col.field\"\r\n [pSortableColumnDisabled]=\"col.sortable === false\"\r\n [style.width]=\"col.width\"\r\n class=\"text-sm\"\r\n >\r\n <div [class]=\" centralizarColunas(col) ? 'flex flex-row justify-content-center' : 'flex flex-row '\">\r\n {{col.header}}\r\n <p-sortIcon\r\n *ngIf=\"col.sortable === true\"\r\n [field]=\"col.field\"\r\n style=\"font-size: 10px;\"\r\n ></p-sortIcon>\r\n </div>\r\n\r\n </th>\r\n <th *ngIf=\"config.actions && config.actions.length> 0\"></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-columns=\"columns\"\r\n let-rowgroup=\"rowgroup\"\r\n let-rowspan=\"rowspan\"\r\n >\r\n\r\n <tr (dblclick)=\"doubleClick($event, rowData)\">\r\n\r\n <td\r\n *ngIf=\"config.enableSelect\"\r\n [style]=\"applyStyle(rowData, {field:'check-box' , header: ''})\"\r\n >\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n\r\n <ng-container *ngFor=\"let col of columns\">\r\n <td\r\n *ngIf=\"rowgroup\"\r\n [attr.rowspan]=\"rowgroup && col.grouped? rowspan: null\"\r\n class=\"rowTable\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n <span *ngIf=\"!isChipField(col)\">{{ transformValue(rowData, col) }}</span>\r\n <p-chip *ngIf=\"isChipField(col)\" [label]=\"transformValue(rowData, col)\" [styleClass]=\"retornarRow(rowData, col, 'stylechip')\"></p-chip>\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n </td>\r\n\r\n <td\r\n *ngIf=\"!rowgroup && !col.grouped\"\r\n [style]=\"applyStyle(rowData, col) + centralizarColunas(col)\"\r\n class=\"rowTable\"\r\n >\r\n <span class=\"p-column-title\">{{col.header}}</span>\r\n <span\r\n *ngIf=\"!isBooleanField(rowData, col); else booleanField\"\r\n [class]=\"returnRowClass(rowData, col)\"\r\n >\r\n <span *ngIf=\"!isChipField(col)\">{{ transformValue(rowData, col) }}</span>\r\n <p-chip *ngIf=\"isChipField(col)\" [label]=\"transformValue(rowData, col)\" [styleClass]=\"retornarRow(rowData, col, 'stylechip')\"></p-chip>\r\n </span>\r\n\r\n <ng-template #booleanField>\r\n <i [ngClass]=\"rowData[col.field] ? 'text-green-500 pi pi-check' : 'text-red-500 pi pi-times'\"></i>\r\n </ng-template>\r\n\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <td\r\n *ngIf=\"config.actions && config.actions.length> 0\"\r\n [style]=\"applyStyle(rowData, {field:'btns-options' , header: ''})\"\r\n >\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"acoesLinhaTabela\"\r\n >\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n *ngIf=\"exibirCampo(action.fieldcondition,rowData)\"\r\n [icon]=\"retornarCampo(action, rowData, 'icon')\"\r\n styleClass=\"p-button-text p-button-secondary p-button-raised h-2rem w-2rem ml-1\"\r\n (click)=\"action?.command(); activeItem(rowData)\"\r\n [pTooltip]=\"retornarCampo(action, rowData, 'tooltip')\"\r\n [tooltipPosition]=\"'bottom'\"\r\n ></p-button>\r\n </div>\r\n\r\n </div>\r\n <div\r\n class=\"flex flex-row justify-content-end w-full\"\r\n *ngIf=\"!acoesLinhaTabela\"\r\n >\r\n <p-button\r\n [icon]=\"'pi pi-ellipsis-h'\"\r\n styleClass=\"p-button-text p-button-secondary h-2rem w-2rem\"\r\n (click)=\"menu.toggle($event); activeItem(rowData)\"\r\n ></p-button>\r\n\r\n <div *ngFor=\"let action of config.actions\">\r\n {{criarMenuItems(action, rowData)}}\r\n </div>\r\n\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n\r\n\r\n <ng-template\r\n pTemplate=\"emptymessage\"\r\n let-columns\r\n >\r\n <tr>\r\n <td\r\n [attr.colspan]=\"columns.length\"\r\n style=\"text-align: center;\"\r\n >\r\n Nenhum registro encontrado\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>\r\n<p-menu\r\n #menu\r\n [popup]=\"true\"\r\n [model]=\"menuItems\"\r\n appendTo=\"body\"\r\n></p-menu>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n>", styles: [".error-show{background-color:red;width:5px;height:10px}.input-search{position:relative;right:8px}.btns-options{position:relative;left:20px}\n"] }]
996
1023
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: CodigoFipePipe }, { type: CpfCnpjPipe }, { type: TelefonePipe }]; }, propDecorators: { templates: [{
997
1024
  type: ContentChildren,
998
1025
  args: [TemplateDirective]
@@ -1018,10 +1045,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1018
1045
  type: Input
1019
1046
  }], applyStyle: [{
1020
1047
  type: Input
1021
- }], menuItems: [{
1048
+ }], acoesLinhaTabela: [{
1022
1049
  type: Input
1023
1050
  }], onActiveItem: [{
1024
1051
  type: Output
1052
+ }], onActiveItemLote: [{
1053
+ type: Output
1025
1054
  }], onPaginate: [{
1026
1055
  type: Output
1027
1056
  }], onSelectionChange: [{
@@ -1030,8 +1059,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1030
1059
  type: Output
1031
1060
  }], filterField: [{
1032
1061
  type: Output
1033
- }], selectedRow: [{
1034
- type: Output
1035
1062
  }], onWindowResize: [{
1036
1063
  type: HostListener,
1037
1064
  args: ['window:resize', ['$event']]
@@ -1080,7 +1107,8 @@ PrimeNgModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
1080
1107
  ToastModule,
1081
1108
  ToolbarModule,
1082
1109
  TooltipModule,
1083
- OverlayModule] });
1110
+ OverlayModule,
1111
+ ChipModule] });
1084
1112
  PrimeNgModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PrimeNgModule, providers: [
1085
1113
  ConfirmationService,
1086
1114
  DialogService,
@@ -1127,7 +1155,8 @@ PrimeNgModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
1127
1155
  ToastModule,
1128
1156
  ToolbarModule,
1129
1157
  TooltipModule,
1130
- OverlayModule] });
1158
+ OverlayModule,
1159
+ ChipModule] });
1131
1160
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PrimeNgModule, decorators: [{
1132
1161
  type: NgModule,
1133
1162
  args: [{
@@ -1172,7 +1201,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1172
1201
  ToastModule,
1173
1202
  ToolbarModule,
1174
1203
  TooltipModule,
1175
- OverlayModule
1204
+ OverlayModule,
1205
+ ChipModule
1176
1206
  ],
1177
1207
  providers: [
1178
1208
  ConfirmationService,
@@ -1317,9 +1347,11 @@ class KvTableModule {
1317
1347
  }
1318
1348
  KvTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1319
1349
  KvTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: KvTableModule, declarations: [TableComponent], imports: [CommonModule,
1320
- PrimeNgModule], exports: [TableComponent] });
1350
+ PrimeNgModule,
1351
+ FormsModule], exports: [TableComponent] });
1321
1352
  KvTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvTableModule, imports: [CommonModule,
1322
- PrimeNgModule] });
1353
+ PrimeNgModule,
1354
+ FormsModule] });
1323
1355
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvTableModule, decorators: [{
1324
1356
  type: NgModule,
1325
1357
  args: [{
@@ -1328,7 +1360,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1328
1360
  ],
1329
1361
  imports: [
1330
1362
  CommonModule,
1331
- PrimeNgModule
1363
+ PrimeNgModule,
1364
+ FormsModule,
1332
1365
  ],
1333
1366
  exports: [
1334
1367
  TableComponent