keevo-components 1.2.26 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ ;
2
+ export {};
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbWVudWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUva3YtbWVudWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSBcInByaW1lbmcvYXBpL21lbnVpdGVtXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEt2TWVudUl0ZW0gZXh0ZW5kcyBNZW51SXRlbSB7XHJcblx0ZHluYW1pY2ZpZWxkcz86IGFueTtcclxuXHRba2V5OiBzdHJpbmddOiBhbnk7XHJcbn07Il19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFRhYmxlQ29uZmlnQ29sdW1uIH0gZnJvbSAnLi90YWJsZS5jb25maWcuY29sdW1uJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDb25maWcge1xyXG4gIGFjdGlvbnM6IE1lbnVJdGVtW107XHJcbiAgY29sdW1uczogVGFibGVDb25maWdDb2x1bW5bXTtcclxuICB0aXRsZT86IHN0cmluZztcclxuICBsYXp5OiBib29sZWFuO1xyXG4gIGZpZWxkR3JvdXA/OiBzdHJpbmc7XHJcbiAgZW5hYmxlQ2F0aW9uPzogYm9vbGVhbjtcclxuICBlbmFibGVGaWx0ZXI/OiBib29sZWFuO1xyXG4gIGVuYWJsZVNlbGVjdD86IGJvb2xlYW47XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFRhYmxlQ29uZmlnQ29sdW1uIH0gZnJvbSAnLi90YWJsZS5jb25maWcuY29sdW1uJztcclxuaW1wb3J0IHsgS3ZNZW51SXRlbSB9IGZyb20gJy4va3YtbWVudWl0ZW0nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbmZpZyB7XHJcbiAgYWN0aW9uczogS3ZNZW51SXRlbVtdO1xyXG4gIGNvbHVtbnM6IFRhYmxlQ29uZmlnQ29sdW1uW107XHJcbiAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgbGF6eTogYm9vbGVhbjtcclxuICBmaWVsZEdyb3VwPzogc3RyaW5nO1xyXG4gIGVuYWJsZUNhdGlvbj86IGJvb2xlYW47XHJcbiAgZW5hYmxlRmlsdGVyPzogYm9vbGVhbjtcclxuICBlbmFibGVTZWxlY3Q/OiBib29sZWFuO1xyXG59XHJcbiJdfQ==
@@ -8,9 +8,10 @@ import * as i4 from "../pipes/telefone.pipe";
8
8
  import * as i5 from "primeng/api";
9
9
  import * as i6 from "primeng/autofocus";
10
10
  import * as i7 from "primeng/button";
11
- import * as i8 from "primeng/inputtext";
12
- import * as i9 from "primeng/menu";
13
- import * as i10 from "primeng/table";
11
+ import * as i8 from "primeng/tooltip";
12
+ import * as i9 from "primeng/inputtext";
13
+ import * as i10 from "primeng/menu";
14
+ import * as i11 from "primeng/table";
14
15
  export class TableComponent {
15
16
  onWindowResize() {
16
17
  this.adjustTableSize();
@@ -65,9 +66,8 @@ export class TableComponent {
65
66
  let ordenacao = '';
66
67
  if (event.globalFilter)
67
68
  termoPesquisa = event.globalFilter;
68
- if (event.sortField) {
69
+ if (event.sortField)
69
70
  ordenacao = `${event.sortField} ${(event.sortOrder === 1) ? 'ASC' : 'DESC'}`;
70
- }
71
71
  const objeto = {
72
72
  paginaInicial: paginaInicial,
73
73
  tamanhoPagina: event.rows,
@@ -139,12 +139,18 @@ export class TableComponent {
139
139
  else
140
140
  return '';
141
141
  }
142
+ retornarCampo(action, rowData, field) {
143
+ const _function = action.dynamicfields ? action.dynamicfields[field] : null;
144
+ const _field = _function ? _function.apply(action, [rowData]) : action[field];
145
+ console.log('FIELD', _field);
146
+ return _field;
147
+ }
142
148
  }
143
149
  TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, deps: [{ token: i1.DatePipe }, { token: i1.DecimalPipe }, { token: i2.CodigoFipePipe }, { token: i3.CpfCnpjPipe }, { token: i4.TelefonePipe }], target: i0.ɵɵFactoryTarget.Component });
144
- 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" }, outputs: { onActiveItem: "onActiveItem", 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n icon=\"pi {{action.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 ></p-button>\r\n </div>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\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: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i7.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.InputText, selector: "[pInputText]" }, { kind: "component", type: i9.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i10.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: i10.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i10.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i10.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i10.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }] });
150
+ 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" }, outputs: { onActiveItem: "onActiveItem", 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\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 ></p-button>\r\n </div>\r\n </div>\r\n\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\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: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i6.AutoFocus, selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i7.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: i9.InputText, selector: "[pInputText]" }, { kind: "component", type: i10.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"] }] });
145
151
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, decorators: [{
146
152
  type: Component,
147
- 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n icon=\"pi {{action.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 ></p-button>\r\n </div>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\n"] }]
153
+ 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\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 ></p-button>\r\n </div>\r\n </div>\r\n\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\n"] }]
148
154
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: i2.CodigoFipePipe }, { type: i3.CpfCnpjPipe }, { type: i4.TelefonePipe }]; }, propDecorators: { templates: [{
149
155
  type: ContentChildren,
150
156
  args: [TemplateDirective]
@@ -184,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
184
190
  }], filterField: [{
185
191
  type: Output
186
192
  }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTBCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU1qSixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7O0FBVXJFLE1BQU0sT0FBTyxjQUFjO0lBV3pCLGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUlELElBQXFCLFNBQVMsQ0FBQyxLQUFrQjtRQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksSUFBSTtZQUN4QyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxLQUFLO1lBQ3pDLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUk7WUFDeEMsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQWlCRCxZQUE2QixRQUFrQixFQUM1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QTZLVTsyRkQ1SkcsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxVQUFVOzJNQVlnQixTQUFTO3NCQUE1QyxlQUFlO3VCQUFDLGlCQUFpQjtnQkFHbEMsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLRixLQUFLO3NCQUEzQyxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRWhCLFNBQVM7c0JBQTdCLEtBQUs7dUJBQUMsUUFBUTtnQkFlTixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcbmltcG9ydCB7IG91dHB1dEFzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcclxuaW1wb3J0IHsgVGFibGVDb25maWcgfSBmcm9tICcuLi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb25maWcnO1xyXG5pbXBvcnQgeyBUYWJsZUNvbmZpZ0NvbHVtbiB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZy5jb2x1bW4nO1xyXG5pbXBvcnQgeyBUYWJsZVBhZ2luYXRlIH0gZnJvbSAnLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUucGFnaW5hdGUnO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvdGVtcGxhdGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29kaWdvRmlwZVBpcGUgfSBmcm9tICcuLi9waXBlcy9jb2RpZ29maWxlLnBpcGUnO1xyXG5pbXBvcnQgeyBDcGZDbnBqUGlwZSB9IGZyb20gJy4uL3BpcGVzL2NwZmNucGoucGlwZSc7XHJcbmltcG9ydCB7IFRlbGVmb25lUGlwZSB9IGZyb20gJy4uL3BpcGVzL3RlbGVmb25lLnBpcGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi10YWJsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uZmlnITogVGFibGVDb25maWc7XHJcbiAgcGVzcXVpc2FWYWx1ZSE6IHN0cmluZztcclxuICBnbG9iYWxGaWx0ZXJGaWVsZHM6IHN0cmluZ1tdID0gW107XHJcbiAgYWN0aW9uc1RlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgc2VsZWN0ZWRTaXplOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgQENvbnRlbnRDaGlsZHJlbihUZW1wbGF0ZURpcmVjdGl2ZSkgdGVtcGxhdGVzITogUXVlcnlMaXN0PGFueT47XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIG9uV2luZG93UmVzaXplKCkge1xyXG4gICAgdGhpcy5hZGp1c3RUYWJsZVNpemUoKTtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJywgeyBzdGF0aWM6IGZhbHNlIH0pIHRhYmxlITogVGFibGU7XHJcblxyXG4gIEBJbnB1dCgnY29uZmlnJykgc2V0IHNldENvbmZpZyh2YWx1ZTogVGFibGVDb25maWcpIHtcclxuICAgIHRoaXMuY29uZmlnID0ge1xyXG4gICAgICBlbmFibGVDYXRpb246IHZhbHVlLmVuYWJsZUNhdGlvbiB8fCB0cnVlLFxyXG4gICAgICBlbmFibGVTZWxlY3Q6IHZhbHVlLmVuYWJsZVNlbGVjdCB8fCBmYWxzZSxcclxuICAgICAgZW5hYmxlRmlsdGVyOiB2YWx1ZS5lbmFibGVGaWx0ZXIgfHwgdHJ1ZSxcclxuICAgICAgLi4udmFsdWUsXHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh0aGlzLmNvbmZpZy5lbmFibGVGaWx0ZXIpIHtcclxuICAgICAgdGhpcy5jb25maWcuY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XHJcbiAgICAgICAgdGhpcy5nbG9iYWxGaWx0ZXJGaWVsZHMucHVzaChjb2wuZmllbGQpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIGRhdGFTb3VyY2U6IGFueTtcclxuICBASW5wdXQoKSBzZWxlY3RlZEl0ZW1zOiBhbnk7XHJcbiAgQElucHV0KCkgdG90YWxSZWNvcmRzITogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBhZ2luYXRvcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgcm93c1BlclBhZ2VPcHRpb25zITogbnVtYmVyW107XHJcbiAgQElucHV0KCkgcm93czogbnVtYmVyID0gNTtcclxuICBASW5wdXQoKSB0YWJsZVNpemUhOiBudW1iZXI7XHJcbiAgQElucHV0KCkgYXBwbHlTdHlsZTogRnVuY3Rpb24gPSAocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKSA9PiAnJztcclxuXHJcbiAgQE91dHB1dCgpIG9uQWN0aXZlSXRlbTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG9uUGFnaW5hdGU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGRvdWJsZUNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBmaWx0ZXJGaWVsZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZWNpbWFsUGlwZTogRGVjaW1hbFBpcGUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvZGlnb0ZpcGVQaXBlOiBDb2RpZ29GaXBlUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3BmQ25walBpcGU6IENwZkNucGpQaXBlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZWxlZm9uZVBpcGU6IFRlbGVmb25lUGlwZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hZGp1c3RUYWJsZVNpemUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVJdGVtKHJvd0RhdGE6IGFueSkge1xyXG4gICAgdGhpcy5vbkFjdGl2ZUl0ZW0uZW1pdChyb3dEYXRhKTtcclxuICB9XHJcblxyXG4gIGlzQm9vbGVhbkZpZWxkKHJvd0RhdGE6IGFueSwgY29sOiBUYWJsZUNvbmZpZ0NvbHVtbik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiByb3dEYXRhW2NvbC5maWVsZF0gPT0gJ2Jvb2xlYW4nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uR2xvYmFsRmlsdGVyKHRhYmxlOiBUYWJsZSwgZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLmZpbHRlckZpZWxkLmVtaXQoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSlcclxuICAgIHRhYmxlLmZpbHRlckdsb2JhbCgoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlLCAnY29udGFpbnMnKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYWdpbmF0ZShldmVudDogYW55KSB7XHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgbGV0IHBhZ2luYUluaWNpYWwgPSAoKGV2ZW50Py5maXJzdCA+IDApID8gKGV2ZW50LmZpcnN0IC8gZXZlbnQucm93cykgOiBldmVudC5maXJzdCkgKyAxO1xyXG4gICAgICBsZXQgdGVybW9QZXNxdWlzYSA9ICcnO1xyXG4gICAgICBsZXQgb3JkZW5hY2FvID0gJyc7XHJcblxyXG4gICAgICBpZiAoZXZlbnQuZ2xvYmFsRmlsdGVyKVxyXG4gICAgICAgIHRlcm1vUGVzcXVpc2EgPSBldmVudC5nbG9iYWxGaWx0ZXI7XHJcblxyXG4gICAgICBpZiAoZXZlbnQuc29ydEZpZWxkKSB7XHJcbiAgICAgICAgb3JkZW5hY2FvID0gYCR7ZXZlbnQuc29ydEZpZWxkfSAkeyhldmVudC5zb3J0T3JkZXIgPT09IDEpID8gJ0FTQycgOiAnREVTQyd9YDtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3Qgb2JqZXRvOiBUYWJsZVBhZ2luYXRlID0ge1xyXG4gICAgICAgIHBhZ2luYUluaWNpYWw6IHBhZ2luYUluaWNpYWwsXHJcbiAgICAgICAgdGFtYW5ob1BhZ2luYTogZXZlbnQucm93cyxcclxuICAgICAgICB0ZXJtb1Blc3F1aXNhOiB0ZXJtb1Blc3F1aXNhLFxyXG4gICAgICAgIG9yZGVuYWNhbzogb3JkZW5hY2FvXHJcbiAgICAgIH07XHJcblxyXG4gICAgICB0aGlzLm9uUGFnaW5hdGUuZW1pdChvYmpldG8pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0aW9uQ2hhbmdlKHZhbHVlID0gW10pIHtcclxuICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm5Sb3dDbGFzcyhyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pIHtcclxuICAgIGxldCB2YWx1ZSA9IHJvd0RhdGFbY29sLmZpZWxkXTtcclxuXHJcbiAgICBsZXQgcm93Q2xhc3M6IHN0cmluZztcclxuXHJcbiAgICB0aGlzLnRhYmxlU2l6ZSA+IDgwMCA/IHJvd0NsYXNzID0gJ3RleHQtYmFzZScgOiByb3dDbGFzcyA9ICd0ZXh0LXNtJztcclxuXHJcbiAgICBpZiAoY29sLmZpZWxkID09ICd2ZW5jaW1lbnRvJykge1xyXG4gICAgICBuZXcgRGF0ZSh2YWx1ZSkgPCBuZXcgRGF0ZSgpID8gcm93Q2xhc3MgPSByb3dDbGFzcyArICcgdGV4dC1yZWQtNDAwIGZvbnQtc2VtaWJvbGQnIDogJyc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcm93Q2xhc3M7XHJcbiAgfVxyXG5cclxuICBleHBpcmVkRmlsZShyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pOiBib29sZWFuIHtcclxuICAgIGxldCB2YWx1ZSA9IHJvd0RhdGFbJ3ZlbmNpbWVudG8nXTtcclxuICAgIHJldHVybiBuZXcgRGF0ZSh2YWx1ZSkgPCBuZXcgRGF0ZSgpICYmIGNvbC5maWVsZCA9PSAnYXJlYSc7XHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1WYWx1ZShyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pIHtcclxuICAgIGxldCB2YWx1ZSA9IHJvd0RhdGFbY29sLmZpZWxkXTtcclxuXHJcbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xyXG4gICAgICBpZiAoY29sLmZpZWxkID09ICd2YWxvcicpIHJldHVybiBgUiQgJHt2YWx1ZS50b0ZpeGVkKDIpfWA7XHJcblxyXG4gICAgICBlbHNlIGlmICghY29sLnBpcGUpIHtcclxuICAgICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHN3aXRjaCAoY29sLnBpcGUpIHtcclxuICAgICAgICBjYXNlICdkYXRlJzpcclxuICAgICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ2RkL01NL3l5eXknKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2RlY2ltYWwnOlxyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuZGVjaW1hbFBpcGUudHJhbnNmb3JtKHZhbHVlLCAnMS4yLTInLCAncHQtQlInKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2NwZmNucGonOlxyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3BmQ25walBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3RlbGVmb25lJzpcclxuICAgICAgICAgIHJldHVybiB0aGlzLnRlbGVmb25lUGlwZS50cmFuc2Zvcm0odmFsdWUpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnY29kaWdvZmlwZSc6XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5jb2RpZ29GaXBlUGlwZS50cmFuc2Zvcm0odmFsdWUpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFkanVzdFRhYmxlU2l6ZSgpIHtcclxuICAgIGlmICh0aGlzLnRhYmxlU2l6ZSA8IDgwMCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkU2l6ZSA9ICdwLWRhdGF0YWJsZS1zbSc7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFNpemUgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRvdWJsZUNsaWNrKGU6IGFueSwgcm93RGF0YTogYW55KSB7XHJcbiAgICBsZXQgZXZlbnREb3VibGVDbGljayA9IHsgZXZlbnQ6IGUsIHJvd0RhdGE6IHJvd0RhdGEgfVxyXG4gICAgdGhpcy5kb3VibGVDbGlja0V2ZW50LmVtaXQoZXZlbnREb3VibGVDbGljayk7XHJcbiAgfVxyXG5cclxuICBjZW50cmFsaXphckNvbHVuYXMoY29sOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKGNvbC5jZW50cmFsaXplKSB7XHJcbiAgICAgIHJldHVybiAndGV4dC1hbGlnbjogY2VudGVyJ1xyXG4gICAgfSBlbHNlIHJldHVybiAnJ1xyXG4gIH1cclxufVxyXG4iLCI8cC10YWJsZVxyXG4gICpuZ0lmPVwiY29uZmlnXCJcclxuICAjZHRcclxuICBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc21cIlxyXG4gIFt2YWx1ZV09XCJkYXRhU291cmNlXCJcclxuICBbKHNlbGVjdGlvbildPVwic2VsZWN0ZWRJdGVtc1wiXHJcbiAgW2NvbHVtbnNdPVwiY29uZmlnLmNvbHVtbnNcIlxyXG4gIFtnbG9iYWxGaWx0ZXJGaWVsZHNdPVwiZ2xvYmFsRmlsdGVyRmllbGRzXCJcclxuICBbcm93c109XCJyb3dzXCJcclxuICBbcGFnaW5hdG9yXT1cInBhZ2luYXRvclwiXHJcbiAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJyb3dzUGVyUGFnZU9wdGlvbnNcIlxyXG4gIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcbiAgY3VycmVudFBhZ2VSZXBvcnRUZW1wbGF0ZT1cIntmaXJzdH0gLSB7bGFzdH0gZGUge3RvdGFsUmVjb3Jkc31cIlxyXG4gIFtyb3dIb3Zlcl09XCJ0cnVlXCJcclxuICBbdG90YWxSZWNvcmRzXT1cInRvdGFsUmVjb3Jkc1wiXHJcbiAgW2xhenldPVwiY29uZmlnLmxhenlcIlxyXG4gIChvbkxhenlMb2FkKT1cInBhZ2luYXRlKCRldmVudClcIlxyXG4gIChzZWxlY3Rpb25DaGFuZ2UpPVwic2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxyXG4gIHJvd0dyb3VwTW9kZT1cInJvd3NwYW5cIlxyXG4gIFtncm91cFJvd3NCeV09XCJjb25maWcuZmllbGRHcm91cFwiXHJcbiAgW3Nob3dGaXJzdExhc3RJY29uXT1cImZhbHNlXCJcclxuICBbcGFnZUxpbmtzXT1cIjFcIlxyXG4gIFtyZXNwb25zaXZlXT1cInRydWVcIlxyXG4gIHJlc3BvbnNpdmVMYXlvdXQ9XCJzdGFja1wiXHJcbj5cclxuXHJcbiAgPG5nLXRlbXBsYXRlXHJcbiAgICBwVGVtcGxhdGU9XCJjYXB0aW9uXCJcclxuICAgICpuZ0lmPVwiY29uZmlnLmVuYWJsZUNhdGlvblwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gbWQ6ZmxleC1yb3cgbWQ6anVzdGlmeS1jb250ZW50LWJldHdlZW5cclxuICAgICAgbWQ6YWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgIDxoNSBjbGFzcz1cIm0tMFwiPnt7IGNvbmZpZy50aXRsZSB9fTwvaDU+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgKm5nSWY9XCJjb25maWcuZW5hYmxlRmlsdGVyXCJcclxuICAgICAgICBjbGFzcz1cImJsb2NrIG10LTIgbWQ6bXQtMFxyXG4gICAgICAgIHAtaW5wdXQtaWNvbi1sZWZ0XCJcclxuICAgICAgPlxyXG4gICAgICAgIDxpIGNsYXNzPVwicGkgcGktc2VhcmNoXCI+PC9pPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgcElucHV0VGV4dFxyXG4gICAgICAgICAgcEF1dG9Gb2N1c1xyXG4gICAgICAgICAgW2F1dG9mb2N1c109XCJ0cnVlXCJcclxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgIChpbnB1dCk9XCJvbkdsb2JhbEZpbHRlcihkdCwgJGV2ZW50KVwiXHJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlBlc3F1aXNhci4uLlwiXHJcbiAgICAgICAgICBjbGFzcz1cInctZnVsbFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlXHJcbiAgICBwVGVtcGxhdGU9XCJoZWFkZXJcIlxyXG4gICAgbGV0LWNvbHVtbnNcclxuICA+XHJcblxyXG4gICAgPHRyPlxyXG4gICAgICA8dGhcclxuICAgICAgICBzdHlsZT1cIndpZHRoOiA0cmVtXCJcclxuICAgICAgICAqbmdJZj1cImNvbmZpZy5lbmFibGVTZWxlY3RcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHAtdGFibGVIZWFkZXJDaGVja2JveD48L3AtdGFibGVIZWFkZXJDaGVja2JveD5cclxuICAgICAgPC90aD5cclxuXHJcbiAgICAgIDx0aFxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgY29sdW1ucztcIlxyXG4gICAgICAgIFtwU29ydGFibGVDb2x1bW5dPVwiY29sLmZpZWxkXCJcclxuICAgICAgICBbcFNvcnRhYmxlQ29sdW1uRGlzYWJsZWRdPVwiY29sLnNvcnRhYmxlID09PSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLndpZHRoXT1cImNvbC53aWR0aFwiXHJcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LXNtXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgW2NsYXNzXT1cIiBjZW50cmFsaXphckNvbHVuYXMoY29sKSA/ICdmbGV4IGZsZXgtcm93IGp1c3RpZnktY29udGVudC1jZW50ZXInIDogJ2ZsZXggZmxleC1yb3cgJ1wiPlxyXG4gICAgICAgICAge3tjb2wuaGVhZGVyfX1cclxuICAgICAgICAgIDxwLXNvcnRJY29uXHJcbiAgICAgICAgICAgICpuZ0lmPVwiY29sLnNvcnRhYmxlID09PSB0cnVlXCJcclxuICAgICAgICAgICAgW2ZpZWxkXT1cImNvbC5maWVsZFwiXHJcbiAgICAgICAgICAgIHN0eWxlPVwiZm9udC1zaXplOiAxMHB4O1wiXHJcbiAgICAgICAgICA+PC9wLXNvcnRJY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC90aD5cclxuICAgICAgPHRoICpuZ0lmPVwiY29uZmlnLmFjdGlvbnMgJiYgY29uZmlnLmFjdGlvbnMubGVuZ3RoPiAwXCI+PC90aD5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlXHJcbiAgICBwVGVtcGxhdGU9XCJib2R5XCJcclxuICAgIGxldC1yb3dEYXRhXHJcbiAgICBsZXQtY29sdW1ucz1cImNvbHVtbnNcIlxyXG4gICAgbGV0LXJvd2dyb3VwPVwicm93Z3JvdXBcIlxyXG4gICAgbGV0LXJvd3NwYW49XCJyb3dzcGFuXCJcclxuICA+XHJcblxyXG4gICAgPHRyIChkYmxjbGljayk9XCJkb3VibGVDbGljaygkZXZlbnQsIHJvd0RhdGEpXCI+XHJcblxyXG4gICAgICA8dGQgKm5nSWY9XCJjb25maWcuZW5hYmxlU2VsZWN0XCI+XHJcbiAgICAgICAgPHAtdGFibGVDaGVja2JveCBbdmFsdWVdPVwicm93RGF0YVwiPjwvcC10YWJsZUNoZWNrYm94PlxyXG4gICAgICA8L3RkPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnNcIj5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgICpuZ0lmPVwicm93Z3JvdXBcIlxyXG4gICAgICAgICAgW2F0dHIucm93c3Bhbl09XCJyb3dncm91cCAmJiBjb2wuZ3JvdXBlZD8gcm93c3BhbjogbnVsbFwiXHJcbiAgICAgICAgICBjbGFzcz1cInJvd1RhYmxlXCJcclxuICAgICAgICAgIFtzdHlsZV09XCJhcHBseVN0eWxlKHJvd0RhdGEsIGNvbCkgKyBjZW50cmFsaXphckNvbHVuYXMoY29sKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPnt7Y29sLmhlYWRlcn19PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgKm5nSWY9XCIhaXNCb29sZWFuRmllbGQocm93RGF0YSwgY29sKTsgZWxzZSBib29sZWFuRmllbGRcIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwicmV0dXJuUm93Q2xhc3Mocm93RGF0YSwgY29sKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zZm9ybVZhbHVlKHJvd0RhdGEsIGNvbCkgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Jvb2xlYW5GaWVsZD5cclxuICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RGF0YVtjb2wuZmllbGRdID8gJ3BpIHBpLWNoZWNrJyA6ICdwaSBwaS10aW1lcydcIj48L2k+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgIDx0ZFxyXG4gICAgICAgICAgKm5nSWY9XCIhcm93Z3JvdXAgJiYgIWNvbC5ncm91cGVkXCJcclxuICAgICAgICAgIFtzdHlsZV09XCJhcHBseVN0eWxlKHJvd0RhdGEsIGNvbCkgKyBjZW50cmFsaXphckNvbHVuYXMoY29sKVwiXHJcbiAgICAgICAgICBjbGFzcz1cInJvd1RhYmxlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInAtY29sdW1uLXRpdGxlXCI+e3tjb2wuaGVhZGVyfX08L3NwYW4+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAqbmdJZj1cIiFpc0Jvb2xlYW5GaWVsZChyb3dEYXRhLCBjb2wpOyBlbHNlIGJvb2xlYW5GaWVsZFwiXHJcbiAgICAgICAgICAgIFtjbGFzc109XCJyZXR1cm5Sb3dDbGFzcyhyb3dEYXRhLCBjb2wpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3sgdHJhbnNmb3JtVmFsdWUocm93RGF0YSwgY29sKSB9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYm9vbGVhbkZpZWxkPlxyXG4gICAgICAgICAgICA8aSBbbmdDbGFzc109XCJyb3dEYXRhW2NvbC5maWVsZF0gPyAndGV4dC1ncmVlbi01MDAgcGkgcGktY2hlY2snIDogJ3RleHQtcmVkLTUwMCBwaSBwaS10aW1lcydcIj48L2k+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDx0ZCAqbmdJZj1cImNvbmZpZy5hY3Rpb25zICYmIGNvbmZpZy5hY3Rpb25zLmxlbmd0aD4gMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktY29udGVudC1lbmQgdy1mdWxsXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgY29uZmlnLmFjdGlvbnNcIj5cclxuICAgICAgICAgICAgPHAtYnV0dG9uXHJcbiAgICAgICAgICAgICAgaWNvbj1cInBpIHt7YWN0aW9uLmljb259fVwiXHJcbiAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInAtYnV0dG9uLXRleHQgcC1idXR0b24tc2Vjb25kYXJ5IHAtYnV0dG9uLXJhaXNlZCBoLTJyZW0gdy0ycmVtIG1sLTFcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb24/LmNvbW1hbmQoKTsgYWN0aXZlSXRlbShyb3dEYXRhKVwiXHJcbiAgICAgICAgICAgID48L3AtYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvdGQ+XHJcblxyXG4gICAgPC90cj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8bmctdGVtcGxhdGVcclxuICAgIHBUZW1wbGF0ZT1cImVtcHR5bWVzc2FnZVwiXHJcbiAgICBsZXQtY29sdW1uc1xyXG4gID5cclxuICAgIDx0cj5cclxuICAgICAgPHRkXHJcbiAgICAgICAgW2F0dHIuY29sc3Bhbl09XCJjb2x1bW5zLmxlbmd0aFwiXHJcbiAgICAgICAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCJcclxuICAgICAgPlxyXG4gICAgICAgIE5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC10YWJsZT5cclxuPHAtbWVudVxyXG4gICNtZW51XHJcbiAgW3BvcHVwXT1cInRydWVcIlxyXG4gIFttb2RlbF09XCJjb25maWcuYWN0aW9uc1wiXHJcbj48L3AtbWVudT4iXX0=
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQTBCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU1qSixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVlyRSxNQUFNLE9BQU8sY0FBYztJQVd6QixjQUFjO1FBQ1osSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFJRCxJQUFxQixTQUFTLENBQUMsS0FBa0I7UUFDL0MsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUNaLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUk7WUFDeEMsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSztZQUN6QyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxJQUFJO1lBQ3hDLEdBQUcsS0FBSztTQUNULENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFO1lBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUMsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFpQkQsWUFBNkIsUUFBa0IsRUFD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dCI6WyJpbXBvcnQgeyBEYXRlUGlwZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRhYmxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcbmltcG9ydCB7IG91dHB1dEFzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcclxuaW1wb3J0IHsgVGFibGVDb25maWcgfSBmcm9tICcuLi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb25maWcnO1xyXG5pbXBvcnQgeyBUYWJsZUNvbmZpZ0NvbHVtbiB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZy5jb2x1bW4nO1xyXG5pbXBvcnQgeyBUYWJsZVBhZ2luYXRlIH0gZnJvbSAnLi4vYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUucGFnaW5hdGUnO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvdGVtcGxhdGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29kaWdvRmlwZVBpcGUgfSBmcm9tICcuLi9waXBlcy9jb2RpZ29maWxlLnBpcGUnO1xyXG5pbXBvcnQgeyBDcGZDbnBqUGlwZSB9IGZyb20gJy4uL3BpcGVzL2NwZmNucGoucGlwZSc7XHJcbmltcG9ydCB7IFRlbGVmb25lUGlwZSB9IGZyb20gJy4uL3BpcGVzL3RlbGVmb25lLnBpcGUnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgS3ZNZW51SXRlbSB9IGZyb20gJy4uL2FwaS9jb21wb25lbnRzL3RhYmxlL2t2LW1lbnVpdGVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtdGFibGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbmZpZyE6IFRhYmxlQ29uZmlnO1xyXG4gIHBlc3F1aXNhVmFsdWUhOiBzdHJpbmc7XHJcbiAgZ2xvYmFsRmlsdGVyRmllbGRzOiBzdHJpbmdbXSA9IFtdO1xyXG4gIGFjdGlvbnNUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHNlbGVjdGVkU2l6ZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpIHRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxhbnk+O1xyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBvbldpbmRvd1Jlc2l6ZSgpIHtcclxuICAgIHRoaXMuYWRqdXN0VGFibGVTaXplKCk7XHJcbiAgfVxyXG5cclxuICBAVmlld0NoaWxkKCd0YWJsZScsIHsgc3RhdGljOiBmYWxzZSB9KSB0YWJsZSE6IFRhYmxlO1xyXG5cclxuICBASW5wdXQoJ2NvbmZpZycpIHNldCBzZXRDb25maWcodmFsdWU6IFRhYmxlQ29uZmlnKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IHtcclxuICAgICAgZW5hYmxlQ2F0aW9uOiB2YWx1ZS5lbmFibGVDYXRpb24gfHwgdHJ1ZSxcclxuICAgICAgZW5hYmxlU2VsZWN0OiB2YWx1ZS5lbmFibGVTZWxlY3QgfHwgZmFsc2UsXHJcbiAgICAgIGVuYWJsZUZpbHRlcjogdmFsdWUuZW5hYmxlRmlsdGVyIHx8IHRydWUsXHJcbiAgICAgIC4uLnZhbHVlLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5jb25maWcuZW5hYmxlRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuY29uZmlnLmNvbHVtbnMuZm9yRWFjaChjb2wgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2xvYmFsRmlsdGVyRmllbGRzLnB1c2goY29sLmZpZWxkKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBkYXRhU291cmNlOiBhbnk7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtczogYW55O1xyXG4gIEBJbnB1dCgpIHRvdGFsUmVjb3JkcyE6IG51bWJlcjtcclxuICBASW5wdXQoKSBwYWdpbmF0b3I6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHJvd3NQZXJQYWdlT3B0aW9ucyE6IG51bWJlcltdO1xyXG4gIEBJbnB1dCgpIHJvd3M6IG51bWJlciA9IDU7XHJcbiAgQElucHV0KCkgdGFibGVTaXplITogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGFwcGx5U3R5bGU6IEZ1bmN0aW9uID0gKHJvd0RhdGE6IGFueSwgY29sOiBUYWJsZUNvbmZpZ0NvbHVtbikgPT4gJyc7XHJcblxyXG4gIEBPdXRwdXQoKSBvbkFjdGl2ZUl0ZW06IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblBhZ2luYXRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBkb3VibGVDbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgZmlsdGVyRmllbGQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGRhdGVQaXBlOiBEYXRlUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb2RpZ29GaXBlUGlwZTogQ29kaWdvRmlwZVBpcGUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNwZkNucGpQaXBlOiBDcGZDbnBqUGlwZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVsZWZvbmVQaXBlOiBUZWxlZm9uZVBpcGUpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYWRqdXN0VGFibGVTaXplKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWN0aXZlSXRlbShyb3dEYXRhOiBhbnkpIHtcclxuICAgIHRoaXMub25BY3RpdmVJdGVtLmVtaXQocm93RGF0YSk7XHJcbiAgfVxyXG5cclxuICBpc0Jvb2xlYW5GaWVsZChyb3dEYXRhOiBhbnksIGNvbDogVGFibGVDb25maWdDb2x1bW4pOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0eXBlb2Ygcm93RGF0YVtjb2wuZmllbGRdID09ICdib29sZWFuJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkdsb2JhbEZpbHRlcih0YWJsZTogVGFibGUsIGV2ZW50OiBFdmVudCkge1xyXG4gICAgdGhpcy5maWx0ZXJGaWVsZC5lbWl0KChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpXHJcbiAgICB0YWJsZS5maWx0ZXJHbG9iYWwoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSwgJ2NvbnRhaW5zJyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGFnaW5hdGUoZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKGV2ZW50KSB7XHJcbiAgICAgIGxldCBwYWdpbmFJbmljaWFsID0gKChldmVudD8uZmlyc3QgPiAwKSA/IChldmVudC5maXJzdCAvIGV2ZW50LnJvd3MpIDogZXZlbnQuZmlyc3QpICsgMTtcclxuICAgICAgbGV0IHRlcm1vUGVzcXVpc2EgPSAnJztcclxuICAgICAgbGV0IG9yZGVuYWNhbyA9ICcnO1xyXG5cclxuICAgICAgaWYgKGV2ZW50Lmdsb2JhbEZpbHRlcilcclxuICAgICAgICB0ZXJtb1Blc3F1aXNhID0gZXZlbnQuZ2xvYmFsRmlsdGVyO1xyXG5cclxuICAgICAgaWYgKGV2ZW50LnNvcnRGaWVsZCkgb3JkZW5hY2FvID0gYCR7ZXZlbnQuc29ydEZpZWxkfSAkeyhldmVudC5zb3J0T3JkZXIgPT09IDEpID8gJ0FTQycgOiAnREVTQyd9YDtcclxuXHJcbiAgICAgIGNvbnN0IG9iamV0bzogVGFibGVQYWdpbmF0ZSA9IHtcclxuICAgICAgICBwYWdpbmFJbmljaWFsOiBwYWdpbmFJbmljaWFsLFxyXG4gICAgICAgIHRhbWFuaG9QYWdpbmE6IGV2ZW50LnJvd3MsXHJcbiAgICAgICAgdGVybW9QZXNxdWlzYTogdGVybW9QZXNxdWlzYSxcclxuICAgICAgICBvcmRlbmFjYW86IG9yZGVuYWNhb1xyXG4gICAgICB9O1xyXG5cclxuICAgICAgdGhpcy5vblBhZ2luYXRlLmVtaXQob2JqZXRvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdGlvbkNoYW5nZSh2YWx1ZSA9IFtdKSB7XHJcbiAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuUm93Q2xhc3Mocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKSB7XHJcbiAgICBsZXQgdmFsdWUgPSByb3dEYXRhW2NvbC5maWVsZF07XHJcblxyXG4gICAgbGV0IHJvd0NsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgdGhpcy50YWJsZVNpemUgPiA4MDAgPyByb3dDbGFzcyA9ICd0ZXh0LWJhc2UnIDogcm93Q2xhc3MgPSAndGV4dC1zbSc7XHJcblxyXG4gICAgaWYgKGNvbC5maWVsZCA9PSAndmVuY2ltZW50bycpIHtcclxuICAgICAgbmV3IERhdGUodmFsdWUpIDwgbmV3IERhdGUoKSA/IHJvd0NsYXNzID0gcm93Q2xhc3MgKyAnIHRleHQtcmVkLTQwMCBmb250LXNlbWlib2xkJyA6ICcnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJvd0NsYXNzO1xyXG4gIH1cclxuXHJcbiAgZXhwaXJlZEZpbGUocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgdmFsdWUgPSByb3dEYXRhWyd2ZW5jaW1lbnRvJ107XHJcbiAgICByZXR1cm4gbmV3IERhdGUodmFsdWUpIDwgbmV3IERhdGUoKSAmJiBjb2wuZmllbGQgPT0gJ2FyZWEnO1xyXG4gIH1cclxuXHJcbiAgdHJhbnNmb3JtVmFsdWUocm93RGF0YTogYW55LCBjb2w6IFRhYmxlQ29uZmlnQ29sdW1uKSB7XHJcbiAgICBsZXQgdmFsdWUgPSByb3dEYXRhW2NvbC5maWVsZF07XHJcblxyXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcclxuICAgICAgaWYgKGNvbC5maWVsZCA9PSAndmFsb3InKSByZXR1cm4gYFIkICR7dmFsdWUudG9GaXhlZCgyKX1gO1xyXG5cclxuICAgICAgZWxzZSBpZiAoIWNvbC5waXBlKSB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBzd2l0Y2ggKGNvbC5waXBlKSB7XHJcbiAgICAgICAgY2FzZSAnZGF0ZSc6XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odmFsdWUsICdkZC9NTS95eXl5Jyk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdkZWNpbWFsJzpcclxuICAgICAgICAgIHJldHVybiB0aGlzLmRlY2ltYWxQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJzEuMi0yJywgJ3B0LUJSJyk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdjcGZjbnBqJzpcclxuICAgICAgICAgIHJldHVybiB0aGlzLmNwZkNucGpQaXBlLnRyYW5zZm9ybSh2YWx1ZSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd0ZWxlZm9uZSc6XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy50ZWxlZm9uZVBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2NvZGlnb2ZpcGUnOlxyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuY29kaWdvRmlwZVBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhZGp1c3RUYWJsZVNpemUoKSB7XHJcbiAgICBpZiAodGhpcy50YWJsZVNpemUgPCA4MDApIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFNpemUgPSAncC1kYXRhdGFibGUtc20nO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTaXplID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkb3VibGVDbGljayhlOiBhbnksIHJvd0RhdGE6IGFueSkge1xyXG4gICAgbGV0IGV2ZW50RG91YmxlQ2xpY2sgPSB7IGV2ZW50OiBlLCByb3dEYXRhOiByb3dEYXRhIH1cclxuICAgIHRoaXMuZG91YmxlQ2xpY2tFdmVudC5lbWl0KGV2ZW50RG91YmxlQ2xpY2spO1xyXG4gIH1cclxuXHJcbiAgY2VudHJhbGl6YXJDb2x1bmFzKGNvbDogYW55KTogc3RyaW5nIHtcclxuICAgIGlmIChjb2wuY2VudHJhbGl6ZSkge1xyXG4gICAgICByZXR1cm4gJ3RleHQtYWxpZ246IGNlbnRlcidcclxuICAgIH0gZWxzZSByZXR1cm4gJydcclxuICB9XHJcblxyXG4gIHJldG9ybmFyQ2FtcG8oYWN0aW9uOiBLdk1lbnVJdGVtLCByb3dEYXRhOiBhbnksIGZpZWxkOiBzdHJpbmcpIDogc3RyaW5nIHtcclxuXHJcbiAgICBjb25zdCBfZnVuY3Rpb24gPSBhY3Rpb24uZHluYW1pY2ZpZWxkcyA/IGFjdGlvbi5keW5hbWljZmllbGRzW2ZpZWxkXSBhcyBGdW5jdGlvbiA6IG51bGw7XHJcblxyXG4gICAgY29uc3QgX2ZpZWxkOiBzdHJpbmcgPSBfZnVuY3Rpb24gPyBfZnVuY3Rpb24uYXBwbHkoYWN0aW9uLCBbcm93RGF0YV0pIDogYWN0aW9uW2ZpZWxkXTtcclxuXHJcbiAgICBjb25zb2xlLmxvZygnRklFTEQnLCBfZmllbGQpXHJcblxyXG4gICAgcmV0dXJuIF9maWVsZDtcclxuICB9XHJcbn1cclxuIiwiPHAtdGFibGVcclxuICAqbmdJZj1cImNvbmZpZ1wiXHJcbiAgI2R0XHJcbiAgc3R5bGVDbGFzcz1cInAtZGF0YXRhYmxlLXNtXCJcclxuICBbdmFsdWVdPVwiZGF0YVNvdXJjZVwiXHJcbiAgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkSXRlbXNcIlxyXG4gIFtjb2x1bW5zXT1cImNvbmZpZy5jb2x1bW5zXCJcclxuICBbZ2xvYmFsRmlsdGVyRmllbGRzXT1cImdsb2JhbEZpbHRlckZpZWxkc1wiXHJcbiAgW3Jvd3NdPVwicm93c1wiXHJcbiAgW3BhZ2luYXRvcl09XCJwYWdpbmF0b3JcIlxyXG4gIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwicm93c1BlclBhZ2VPcHRpb25zXCJcclxuICBbc2hvd0N1cnJlbnRQYWdlUmVwb3J0XT1cInRydWVcIlxyXG4gIGN1cnJlbnRQYWdlUmVwb3J0VGVtcGxhdGU9XCJ7Zmlyc3R9IC0ge2xhc3R9IGRlIHt0b3RhbFJlY29yZHN9XCJcclxuICBbcm93SG92ZXJdPVwidHJ1ZVwiXHJcbiAgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG4gIFtsYXp5XT1cImNvbmZpZy5sYXp5XCJcclxuICAob25MYXp5TG9hZCk9XCJwYWdpbmF0ZSgkZXZlbnQpXCJcclxuICAoc2VsZWN0aW9uQ2hhbmdlKT1cInNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCJcclxuICByb3dHcm91cE1vZGU9XCJyb3dzcGFuXCJcclxuICBbZ3JvdXBSb3dzQnldPVwiY29uZmlnLmZpZWxkR3JvdXBcIlxyXG4gIFtzaG93Rmlyc3RMYXN0SWNvbl09XCJmYWxzZVwiXHJcbiAgW3BhZ2VMaW5rc109XCIxXCJcclxuICBbcmVzcG9uc2l2ZV09XCJ0cnVlXCJcclxuICByZXNwb25zaXZlTGF5b3V0PVwic3RhY2tcIlxyXG4+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZVxyXG4gICAgcFRlbXBsYXRlPVwiY2FwdGlvblwiXHJcbiAgICAqbmdJZj1cImNvbmZpZy5lbmFibGVDYXRpb25cIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIG1kOmZsZXgtcm93IG1kOmp1c3RpZnktY29udGVudC1iZXR3ZWVuXHJcbiAgICAgIG1kOmFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICA8aDUgY2xhc3M9XCJtLTBcIj57eyBjb25maWcudGl0bGUgfX08L2g1PlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgICpuZ0lmPVwiY29uZmlnLmVuYWJsZUZpbHRlclwiXHJcbiAgICAgICAgY2xhc3M9XCJibG9jayBtdC0yIG1kOm10LTBcclxuICAgICAgICBwLWlucHV0LWljb24tbGVmdFwiXHJcbiAgICAgID5cclxuICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXNlYXJjaFwiPjwvaT5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIHBJbnB1dFRleHRcclxuICAgICAgICAgIHBBdXRvRm9jdXNcclxuICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAoaW5wdXQpPVwib25HbG9iYWxGaWx0ZXIoZHQsICRldmVudClcIlxyXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJQZXNxdWlzYXIuLi5cIlxyXG4gICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZVxyXG4gICAgcFRlbXBsYXRlPVwiaGVhZGVyXCJcclxuICAgIGxldC1jb2x1bW5zXHJcbiAgPlxyXG5cclxuICAgIDx0cj5cclxuICAgICAgPHRoXHJcbiAgICAgICAgc3R5bGU9XCJ3aWR0aDogNHJlbVwiXHJcbiAgICAgICAgKm5nSWY9XCJjb25maWcuZW5hYmxlU2VsZWN0XCJcclxuICAgICAgPlxyXG4gICAgICAgIDxwLXRhYmxlSGVhZGVyQ2hlY2tib3g+PC9wLXRhYmxlSGVhZGVyQ2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcblxyXG4gICAgICA8dGhcclxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sIG9mIGNvbHVtbnM7XCJcclxuICAgICAgICBbcFNvcnRhYmxlQ29sdW1uXT1cImNvbC5maWVsZFwiXHJcbiAgICAgICAgW3BTb3J0YWJsZUNvbHVtbkRpc2FibGVkXT1cImNvbC5zb3J0YWJsZSA9PT0gZmFsc2VcIlxyXG4gICAgICAgIFtzdHlsZS53aWR0aF09XCJjb2wud2lkdGhcIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1zbVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IFtjbGFzc109XCIgY2VudHJhbGl6YXJDb2x1bmFzKGNvbCkgPyAnZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyA6ICdmbGV4IGZsZXgtcm93ICdcIj5cclxuICAgICAgICAgIHt7Y29sLmhlYWRlcn19XHJcbiAgICAgICAgICA8cC1zb3J0SWNvblxyXG4gICAgICAgICAgICAqbmdJZj1cImNvbC5zb3J0YWJsZSA9PT0gdHJ1ZVwiXHJcbiAgICAgICAgICAgIFtmaWVsZF09XCJjb2wuZmllbGRcIlxyXG4gICAgICAgICAgICBzdHlsZT1cImZvbnQtc2l6ZTogMTBweDtcIlxyXG4gICAgICAgICAgPjwvcC1zb3J0SWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0aCAqbmdJZj1cImNvbmZpZy5hY3Rpb25zICYmIGNvbmZpZy5hY3Rpb25zLmxlbmd0aD4gMFwiPjwvdGg+XHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZVxyXG4gICAgcFRlbXBsYXRlPVwiYm9keVwiXHJcbiAgICBsZXQtcm93RGF0YVxyXG4gICAgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCJcclxuICAgIGxldC1yb3dncm91cD1cInJvd2dyb3VwXCJcclxuICAgIGxldC1yb3dzcGFuPVwicm93c3BhblwiXHJcbiAgPlxyXG5cclxuICAgIDx0ciAoZGJsY2xpY2spPVwiZG91YmxlQ2xpY2soJGV2ZW50LCByb3dEYXRhKVwiPlxyXG5cclxuICAgICAgPHRkICpuZ0lmPVwiY29uZmlnLmVuYWJsZVNlbGVjdFwiPlxyXG4gICAgICAgIDxwLXRhYmxlQ2hlY2tib3ggW3ZhbHVlXT1cInJvd0RhdGFcIj48L3AtdGFibGVDaGVja2JveD5cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCI+XHJcbiAgICAgICAgPHRkXHJcbiAgICAgICAgICAqbmdJZj1cInJvd2dyb3VwXCJcclxuICAgICAgICAgIFthdHRyLnJvd3NwYW5dPVwicm93Z3JvdXAgJiYgY29sLmdyb3VwZWQ/IHJvd3NwYW46IG51bGxcIlxyXG4gICAgICAgICAgY2xhc3M9XCJyb3dUYWJsZVwiXHJcbiAgICAgICAgICBbc3R5bGVdPVwiYXBwbHlTdHlsZShyb3dEYXRhLCBjb2wpICsgY2VudHJhbGl6YXJDb2x1bmFzKGNvbClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicC1jb2x1bW4tdGl0bGVcIj57e2NvbC5oZWFkZXJ9fTwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWlzQm9vbGVhbkZpZWxkKHJvd0RhdGEsIGNvbCk7IGVsc2UgYm9vbGVhbkZpZWxkXCJcclxuICAgICAgICAgICAgW2NsYXNzXT1cInJldHVyblJvd0NsYXNzKHJvd0RhdGEsIGNvbClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7eyB0cmFuc2Zvcm1WYWx1ZShyb3dEYXRhLCBjb2wpIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNib29sZWFuRmllbGQ+XHJcbiAgICAgICAgICAgIDxpIFtuZ0NsYXNzXT1cInJvd0RhdGFbY29sLmZpZWxkXSA/ICdwaSBwaS1jaGVjaycgOiAncGkgcGktdGltZXMnXCI+PC9pPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L3RkPlxyXG5cclxuICAgICAgICA8dGRcclxuICAgICAgICAgICpuZ0lmPVwiIXJvd2dyb3VwICYmICFjb2wuZ3JvdXBlZFwiXHJcbiAgICAgICAgICBbc3R5bGVdPVwiYXBwbHlTdHlsZShyb3dEYXRhLCBjb2wpICsgY2VudHJhbGl6YXJDb2x1bmFzKGNvbClcIlxyXG4gICAgICAgICAgY2xhc3M9XCJyb3dUYWJsZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwLWNvbHVtbi10aXRsZVwiPnt7Y29sLmhlYWRlcn19PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgKm5nSWY9XCIhaXNCb29sZWFuRmllbGQocm93RGF0YSwgY29sKTsgZWxzZSBib29sZWFuRmllbGRcIlxyXG4gICAgICAgICAgICBbY2xhc3NdPVwicmV0dXJuUm93Q2xhc3Mocm93RGF0YSwgY29sKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zZm9ybVZhbHVlKHJvd0RhdGEsIGNvbCkgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2Jvb2xlYW5GaWVsZD5cclxuICAgICAgICAgICAgPGkgW25nQ2xhc3NdPVwicm93RGF0YVtjb2wuZmllbGRdID8gJ3RleHQtZ3JlZW4tNTAwIHBpIHBpLWNoZWNrJyA6ICd0ZXh0LXJlZC01MDAgcGkgcGktdGltZXMnXCI+PC9pPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L3RkPlxyXG5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8dGQgKm5nSWY9XCJjb25maWcuYWN0aW9ucyAmJiBjb25maWcuYWN0aW9ucy5sZW5ndGg+IDBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNvbnRlbnQtZW5kIHctZnVsbFwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGNvbmZpZy5hY3Rpb25zXCI+XHJcbiAgICAgICAgICAgIDxwLWJ1dHRvblxyXG4gICAgICAgICAgICAgIFtpY29uXT1cInJldG9ybmFyQ2FtcG8oYWN0aW9uLCByb3dEYXRhLCAnaWNvbicpXCJcclxuICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwicC1idXR0b24tdGV4dCBwLWJ1dHRvbi1zZWNvbmRhcnkgcC1idXR0b24tcmFpc2VkIGgtMnJlbSB3LTJyZW0gbWwtMVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImFjdGlvbj8uY29tbWFuZCgpOyBhY3RpdmVJdGVtKHJvd0RhdGEpXCJcclxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwicmV0b3JuYXJDYW1wbyhhY3Rpb24sIHJvd0RhdGEsICd0b29sdGlwJylcIlxyXG4gICAgICAgICAgICA+PC9wLWJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC90ZD5cclxuXHJcbiAgICA8L3RyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZVxyXG4gICAgcFRlbXBsYXRlPVwiZW1wdHltZXNzYWdlXCJcclxuICAgIGxldC1jb2x1bW5zXHJcbiAgPlxyXG4gICAgPHRyPlxyXG4gICAgICA8dGRcclxuICAgICAgICBbYXR0ci5jb2xzcGFuXT1cImNvbHVtbnMubGVuZ3RoXCJcclxuICAgICAgICBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIlxyXG4gICAgICA+XHJcbiAgICAgICAgTmVuaHVtIHJlZ2lzdHJvIGVuY29udHJhZG9cclxuICAgICAgPC90ZD5cclxuICAgIDwvdHI+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLXRhYmxlPlxyXG48cC1tZW51XHJcbiAgI21lbnVcclxuICBbcG9wdXBdPVwidHJ1ZVwiXHJcbiAgW21vZGVsXT1cImNvbmZpZy5hY3Rpb25zXCJcclxuPjwvcC1tZW51PiJdfQ==
@@ -40,4 +40,5 @@ export * from './lib/api/components/table/table.paginate';
40
40
  export * from './lib/api/components/table/action-item';
41
41
  export * from './lib/api/components/table/table.config';
42
42
  export * from './lib/api/components/table/table.config.column';
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYywyQkFBMkIsQ0FBQTtBQUV6QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxnREFBZ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBrZWV2by1jb21wb25lbnRzXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2NoZWNrL2NoZWNrLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtY2FsZW5kYXIvaW5wdXQtY2FsZW5kYXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2lucHV0LW1hc2svaW5wdXQtbWFzay5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtbnVtYmVyL2lucHV0LW51bWJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtdGV4dGFyZWEvaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2lucHV0LXRpbWUvaW5wdXQtdGltZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvc3dpdGNoL3N3aXRjaC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J1dHRvbi1zZWNvbmRhcnkvYnV0dG9uLXNlY29uZGFyeS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9idXR0b25zL2J1dHRvbi1zdWNjZXNzL2J1dHRvbi1zdWNjZXNzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMvYnV0dG9uLXBlcnNvbmFsaXplL2J1dHRvbi1wZXJzb25hbGl6ZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy9lcnJvci9lcnJvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1idXR0b24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWRyb3Bkb3duJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1pbnB1dCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9rZWV2by1jb21wb25lbnRzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMva3ZidXR0b24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2t2aW5wdXRzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2Vycm9yL2t2ZXJyb3IubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUva3Z0YWJsZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9waXBlcy5tb2R1bGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9tb2R1bGVzL3ByaW1lbmcubW9kdWxlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL2NvZGlnb2ZpbGUucGlwZSdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvY3BmY25wai5waXBlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy90ZWxlZm9uZS5waXBlJ1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMvY29tcG9uZW50LXByb3ZpZGVycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9oZWxwZXJzL3RyYW5zbGF0ZS1wcmltZW5nJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL29iamVjdC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUucGFnaW5hdGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9hY3Rpb24taXRlbSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZy5jb2x1bW4nO1xyXG4iXX0=
43
+ export * from './lib/api/components/table/kv-menuitem';
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYywyQkFBMkIsQ0FBQTtBQUV6QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGtlZXZvLWNvbXBvbmVudHNcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvY2hlY2svY2hlY2suY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5wdXRzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9pbnB1dC1jYWxlbmRhci9pbnB1dC1jYWxlbmRhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtbWFzay9pbnB1dC1tYXNrLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9pbnB1dC1udW1iZXIvaW5wdXQtbnVtYmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9pbnB1dC1wYXNzd29yZC9pbnB1dC1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9pbnB1dC10ZXh0YXJlYS9pbnB1dC10ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMvaW5wdXQtdGltZS9pbnB1dC10aW1lLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9tdWx0aS1zZWxlY3QvbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy9zd2l0Y2gvc3dpdGNoLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMvYnV0dG9uLXNlY29uZGFyeS9idXR0b24tc2Vjb25kYXJ5LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2J1dHRvbnMvYnV0dG9uLXN1Y2Nlc3MvYnV0dG9uLXN1Y2Nlc3MuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9idXR0b24tcGVyc29uYWxpemUvYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2Vycm9yL2Vycm9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWJ1dHRvbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtZHJvcGRvd24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWlucHV0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvdGFibGUuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2tlZXZvLWNvbXBvbmVudHMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9ucy9rdmJ1dHRvbi5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMva3ZpbnB1dHMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvZXJyb3Iva3ZlcnJvci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9rdnRhYmxlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL3BpcGVzLm1vZHVsZSdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvY29kaWdvZmlsZS5waXBlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9jcGZjbnBqLnBpcGUnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL3RlbGVmb25lLnBpcGUnXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy9jb21wb25lbnQtcHJvdmlkZXJzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMvdHJhbnNsYXRlLXByaW1lbmcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvY29tcG9uZW50LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvb2JqZWN0LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5wYWdpbmF0ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL2FjdGlvbi1pdGVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnLmNvbHVtbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL2t2LW1lbnVpdGVtJztcclxuIl19
@@ -39,9 +39,9 @@ import * as i2$2 from 'primeng/ripple';
39
39
  import { RippleModule } from 'primeng/ripple';
40
40
  import * as i6 from 'primeng/autofocus';
41
41
  import { AutoFocusModule } from 'primeng/autofocus';
42
- import * as i9$1 from 'primeng/menu';
42
+ import * as i10$1 from 'primeng/menu';
43
43
  import { MenuModule } from 'primeng/menu';
44
- import * as i10$1 from 'primeng/table';
44
+ import * as i11 from 'primeng/table';
45
45
  import { TableModule } from 'primeng/table';
46
46
  import { AccordionModule } from 'primeng/accordion';
47
47
  import { BadgeModule } from 'primeng/badge';
@@ -896,9 +896,8 @@ class TableComponent {
896
896
  let ordenacao = '';
897
897
  if (event.globalFilter)
898
898
  termoPesquisa = event.globalFilter;
899
- if (event.sortField) {
899
+ if (event.sortField)
900
900
  ordenacao = `${event.sortField} ${(event.sortOrder === 1) ? 'ASC' : 'DESC'}`;
901
- }
902
901
  const objeto = {
903
902
  paginaInicial: paginaInicial,
904
903
  tamanhoPagina: event.rows,
@@ -970,12 +969,18 @@ class TableComponent {
970
969
  else
971
970
  return '';
972
971
  }
972
+ retornarCampo(action, rowData, field) {
973
+ const _function = action.dynamicfields ? action.dynamicfields[field] : null;
974
+ const _field = _function ? _function.apply(action, [rowData]) : action[field];
975
+ console.log('FIELD', _field);
976
+ return _field;
977
+ }
973
978
  }
974
979
  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 });
975
- 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" }, outputs: { onActiveItem: "onActiveItem", 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n icon=\"pi {{action.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 ></p-button>\r\n </div>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\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: i4$5.InputText, selector: "[pInputText]" }, { kind: "component", type: i9$1.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i10$1.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: i10$1.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i10$1.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i10$1.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i10$1.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }] });
980
+ 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" }, outputs: { onActiveItem: "onActiveItem", 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\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 ></p-button>\r\n </div>\r\n </div>\r\n\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\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"] }] });
976
981
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TableComponent, decorators: [{
977
982
  type: Component,
978
- 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\r\n icon=\"pi {{action.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 ></p-button>\r\n </div>\r\n </div>\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\n"] }]
983
+ 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-column md:flex-row md:justify-content-between\r\n md:align-items-center\">\r\n <h5 class=\"m-0\">{{ config.title }}</h5>\r\n <span\r\n *ngIf=\"config.enableFilter\"\r\n class=\"block mt-2 md:mt-0\r\n 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 </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\"\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 *ngIf=\"config.enableSelect\">\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] ? 'pi pi-check' : '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 *ngIf=\"config.actions && config.actions.length> 0\">\r\n <div class=\"flex flex-row justify-content-end w-full\">\r\n <div *ngFor=\"let action of config.actions\">\r\n <p-button\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 ></p-button>\r\n </div>\r\n </div>\r\n\r\n </td>\r\n\r\n </tr>\r\n </ng-template>\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>", styles: [".error-show{background-color:red;width:5px;height:10px}\n"] }]
979
984
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i1.DecimalPipe }, { type: CodigoFipePipe }, { type: CpfCnpjPipe }, { type: TelefonePipe }]; }, propDecorators: { templates: [{
980
985
  type: ContentChildren,
981
986
  args: [TemplateDirective]
@@ -1461,6 +1466,8 @@ class TablePaginate {
1461
1466
  }
1462
1467
  }
1463
1468
 
1469
+ ;
1470
+
1464
1471
  /*
1465
1472
  * Public API Surface of keevo-components
1466
1473
  */