ngx-wapp-components 3.5.0 → 3.5.1

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.
@@ -1701,6 +1701,15 @@ class WTableComponent {
1701
1701
  get totalRecords() {
1702
1702
  return this._totalRecords;
1703
1703
  }
1704
+ set tableComponent(table) {
1705
+ if (table) {
1706
+ this.dataTable = table;
1707
+ if (this.wappTableObject.hasGlobalSearch && this.searchInput) {
1708
+ this.restoringSearchFirst = this.first;
1709
+ table.filterGlobal(this.searchInput, 'contains');
1710
+ }
1711
+ }
1712
+ }
1704
1713
  constructor(confirmationService, dateConversionService, sessionStorage, localStorage) {
1705
1714
  this.confirmationService = confirmationService;
1706
1715
  this.dateConversionService = dateConversionService;
@@ -1712,6 +1721,7 @@ class WTableComponent {
1712
1721
  this.tableSkeletons = [{ name: '' }, { name: '' }, { name: '' }, { name: '' }];
1713
1722
  this.first = 0;
1714
1723
  this.sortOrder = 1;
1724
+ this.searchInput = '';
1715
1725
  this.initialPaginationApplied = false;
1716
1726
  this._totalRecords = 0;
1717
1727
  this.wappDateFormat = WDatePipeFormatType;
@@ -1765,6 +1775,8 @@ class WTableComponent {
1765
1775
  this.originalRowsPerPage = storedPagination.query.rows;
1766
1776
  this.sortField = storedPagination.query.sortField;
1767
1777
  this.sortOrder = storedPagination.query.sortOrder ?? 1;
1778
+ this.searchInput = this.wappTableObject.hasGlobalSearch
1779
+ ? storedPagination.query.searchInput ?? '' : '';
1768
1780
  }
1769
1781
  else {
1770
1782
  this.first = (this.initialPage - 1) * this.rowsPerPage;
@@ -1883,9 +1895,23 @@ class WTableComponent {
1883
1895
  this.onSecondaryCheckboxChange.emit(element);
1884
1896
  }
1885
1897
  onGlobalFilter(table, event) {
1886
- table.filterGlobal(event.target.value, 'contains');
1898
+ this.restoringSearchFirst = undefined;
1899
+ this.searchInput = event.target.value;
1900
+ table.filterGlobal(this.searchInput, 'contains');
1901
+ }
1902
+ onFilter(table) {
1903
+ this.first = this.restoringSearchFirst ?? table.first ?? 0;
1904
+ table.first = this.first;
1905
+ this.restoringSearchFirst = undefined;
1906
+ this.sortField = table.sortField ?? undefined;
1907
+ this.sortOrder = table.sortOrder;
1908
+ const globalFilter = table.filters['global'];
1909
+ this.searchInput = !Array.isArray(globalFilter) ? globalFilter?.value ?? '' : '';
1910
+ this.savePagination();
1887
1911
  }
1888
1912
  clear(table) {
1913
+ this.restoringSearchFirst = undefined;
1914
+ this.searchInput = '';
1889
1915
  table.clear();
1890
1916
  this.first = table.first ?? 0;
1891
1917
  this.sortField = table.sortField ?? undefined;
@@ -1976,7 +2002,8 @@ class WTableComponent {
1976
2002
  id: this.paginationId,
1977
2003
  query: {
1978
2004
  first: this.first, rows: this.rowsPerPage,
1979
- sortField: this.sortField, sortOrder: this.sortOrder
2005
+ sortField: this.sortField, sortOrder: this.sortOrder,
2006
+ searchInput: this.wappTableObject.hasGlobalSearch ? this.searchInput : undefined
1980
2007
  }
1981
2008
  });
1982
2009
  }
@@ -2032,11 +2059,11 @@ class WTableComponent {
2032
2059
  : false;
2033
2060
  }
2034
2061
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: WTableComponent, deps: [{ token: i1$4.ConfirmationService }, { token: DateConversionService }, { token: SessionStorageService }, { token: LocalStorageService }], target: i0.ɵɵFactoryTarget.Component }); }
2035
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: WTableComponent, isStandalone: false, selector: "w-table", inputs: { loading: "loading", elements: "elements", selectedElements: "selectedElements", wappTableObject: "wappTableObject", rowsPerPage: "rowsPerPage", initialPage: "initialPage", paginationId: "paginationId", singleRowSelection: "singleRowSelection" }, outputs: { onElementSelect: "onElementSelect", onViewElementSelect: "onViewElementSelect", onCopyElementSelect: "onCopyElementSelect", onEditElementSelect: "onEditElementSelect", onCustomElementSelect: "onCustomElementSelect", onDeleteElementSelect: "onDeleteElementSelect", onNewElementSelect: "onNewElementSelect", onPageChange: "onPageChange", onSelectedElementsChange: "onSelectedElementsChange", onSecondaryCheckboxChange: "onSecondaryCheckboxChange" }, providers: [ConfirmationService], viewQueries: [{ propertyName: "filter", first: true, predicate: ["filter"], descendants: true }, { propertyName: "dataTable", first: true, predicate: ["table"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-content select=\".filter-panel\"></ng-content>\r\n@if (wappTableObject) {\r\n <div [class.table-container]=\"wappTableObject.tableContainer\">\r\n @if (!loading) {\r\n <p-table class=\"w-table-styles\" [ngClass]=\"{'w-table-no-buttons' : !wappTableObject.hasEditButton && !wappTableObject.hasDeleteButton && !wappTableObject.hasCopyButton && !wappTableObject.customButtonConfig}\"\r\n #table\r\n [value]=\"elements\" \r\n dataKey=\"{{wappTableObject.identificator}}\"\r\n [paginator]=\"wappTableObject.hasPaginator\"\r\n [selection]=\"selectedElements\" \r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [selectAll]=\"selectAll\" \r\n (selectAllChange)=\"onSelectAllChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n [rows]=\"rowsPerPage\" \r\n [(first)]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n (onFilter)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + '{last}' + ' de ' + totalRecords! : 'Showing ' + '{last}' + ' of ' + totalRecords!\"\r\n [globalFilterFields]=\"wappTableObject.globalFilterFields!\" responsiveLayout=\"scroll\"\r\n [rowHover]=\"wappTableObject.hasViewButton!\" \r\n [tableStyle]=\"{'min-width': wappTableObject.tableMinWidth!}\"\r\n (onPage)=\"pageChange($event)\"\r\n [selectionMode]=\"singleRowSelection ? 'single' : 'multiple'\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch || wappTableObject.hasTotalPagingSelector) {\r\n <ng-template #caption>\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"savePagination()\">\r\n </p-inputnumber>\r\n }\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(table, $event)\"\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template #header>\r\n <tr>\r\n @if (wappTableObject.hasCheckbox) {\r\n <th\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[0]) : 'text-center'\">\r\n @if (wappTableObject.hasSelectAllCheckbox == true && !singleRowSelection) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (!wappTableObject.hasSortableColumns) {\r\n @for (header of wappTableObject?.headers; track header; let i = $index) {\r\n <th\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] == tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{header}}\r\n </th>\r\n }\r\n } @else {\r\n @for (filterType of wappTableObject.headers; track filterType; let i = $index) {\r\n <th [pSortableColumn]=\"wappTableObject.sortableNames[i]\"\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] === tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{wappTableObject.headers[i]}}\r\n @if (wappTableObject.sortableNames[i] != null) {\r\n <p-sortIcon [field]=\"wappTableObject.sortableNames[i]\"></p-sortIcon>\r\n }\r\n </th>\r\n }\r\n }\r\n @if (wappTableObject.hasDeleteButton || wappTableObject.hasEditButton || wappTableObject.hasViewButton || wappTableObject.hasCopyButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #body let-element>\r\n <tr [ngClass]=\"{'row-hover': wappTableObject.hasViewButton}\"\r\n (click)=\"wappTableObject.hasClickableRow ? onElement(element) : ''\">\r\n @for (columnType of wappTableObject.columnTypes!; track columnType; let i = $index) {\r\n @if (columnType == tableColumnTypes?.Checkbox! && wappTableObject.hasCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths![i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\">\r\n @if (wappTableObject.disableCheckbox) {\r\n <div>\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableCheckbox>\r\n }\r\n </div>\r\n } @else {\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\"></p-tableCheckbox>\r\n }\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @if (readProperty(element, wappTableObject.columns[i])) {\r\n <img\r\n [src]=\"readProperty(element, wappTableObject.columns[i])\"\r\n class=\"element-image-width\"/>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappPercentage }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappCurrency }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-badge [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"'info'\"></w-badge>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Enum) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (enum of wappTableObject.enumIcon; track enum; let ind = $index) {\r\n <div>\r\n @if (enum.enumValue == readProperty(element, wappTableObject.columns[i])) {\r\n <i [class]=\"'pi '+ enum.icon +' '+enum.iconColor \"></i>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ColoredBadge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (badge of wappTableObject.coloredBadge; track badge; let ind = $index) {\r\n <div>\r\n @if (badge.coloredBadgeProperty == readProperty(element, wappTableObject.columns[i])) {\r\n <w-badge\r\n [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"badge.color\"></w-badge>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass(i, readProperty(element, wappTableObject.columns[i]))\"></i>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.SecondaryCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n <p-checkbox [(ngModel)]=\"element[wappTableObject.columns[i]]\" [disabled]=\"!isElementSelected(element[wappTableObject.identificator])\" [binary]=\"true\" inputId=\"binary\" (ngModelChange)=\"onSecondaryCheckboxChanges(element)\"></p-checkbox>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.DateRaw) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.d }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.D }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.g }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.G }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.BuisinessDateTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate : wappDateFormat.Date }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Week) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-button-week [value]=\"readProperty(element, wappTableObject.columns[i])\" [translations]=\"wappTableObject.weekButtonTranslations ? wappTableObject.weekButtonTranslations : []\" [defaultEsp]=\"wappTableObject.weekButtonDefaultEsp ?? false\"></w-button-week>\r\n </td>\r\n }\r\n }\r\n @if (wappTableObject.hasCustomButton || wappTableObject?.hasEditButton || wappTableObject?.hasCopyButton || wappTableObject?.hasDeleteButton || wappTableObject?.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton && !wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableViewProperty) ? '' : wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableViewProperty)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n @if (!customButtonConfig?.disableProperty) {\r\n <w-button\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n type=\"table\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view' + getButtonCustomColorClass(customButtonConfig.color!) \">\r\n </w-button>\r\n }\r\n @if (customButtonConfig?.disableProperty) {\r\n <w-button\r\n type=\"table\"\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n [disabled]=\"readProperty(element, customButtonConfig?.disableProperty!)\"\r\n [tooltip]=\"readProperty(element, customButtonConfig?.disableProperty!) ? '' : wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n } \r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton && !wappTableObject.disableEditProperty) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableEditProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableEditProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableEditProperty) ? '' : wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmCopy($event, element)\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-copy\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <span>\r\n @if (wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmDelete($event, element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableDeleteProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableDeleteProperty) ? '' : wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n } @else {\r\n @if (!wappTableObject?.disableDelete && !wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"confirmDelete($event, element)\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n }\r\n </span>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"w-table-lazy-empty-message-padding\">\r\n <td [attr.colspan]=\"calculateColspan()\">{{wappTableObject.emptyMessage ? wappTableObject.emptyMessage : 'No matches.'}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"loadingbody\">\r\n <tr>\r\n <td colspan=\"8\">Loading elements.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n } @else {\r\n <p-table class=\"w-table-styles\" [value]=\"tableSkeletons\" responsiveLayout=\"scroll\" [paginator]=\"wappTableObject.hasPaginator\" [rows]=\"rowsPerPage\" [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords : 'Showing ' + rowsPerPage + ' of ' + totalRecords\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\">\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <span class=\"p-input-icon-left ml-auto\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" #filter\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"/>\r\n </span>\r\n }\r\n </p-inputnumber>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n @if (!wappTableObject.hasColumnFilters && wappTableObject.hasCheckbox) {\r\n <th>\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n }\r\n @for (header of wappTableObject?.headers; track header) {\r\n <th>\r\n {{header}}\r\n </th>\r\n }\r\n @if (wappTableObject?.hasDeleteButton || wappTableObject?.hasEditButton || wappTableObject?.hasViewButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\">\r\n <tr height=\"70px\">\r\n @for (item of wappTableObject.columnTypes; track item) {\r\n <td [style.width]=\"item == tableColumnTypes.Checkbox ? '8rem' : ''\" >\r\n @if (item == tableColumnTypes.Checkbox && wappTableObject.hasCheckbox) {\r\n <p-tableCheckbox></p-tableCheckbox>\r\n }\r\n @if (item != tableColumnTypes.Checkbox) {\r\n <p-skeleton></p-skeleton>\r\n }\r\n </td>\r\n }\r\n @if (wappTableObject.hasEditButton || wappTableObject.hasDeleteButton || wappTableObject.hasCopyButton || wappTableObject.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n icon=\"pi-eye\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [icon]=\"customButtonConfig?.icon!\" type=\"table\" [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n icon=\"pi-pencil\" type=\"table\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n icon=\"pi-copy\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n icon=\"pi-trash\" type=\"table\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </div>\r\n}\r\n<p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-input,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-input{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{color:#1f2224}.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td{color:#5f6468}.w-table-height,::ng-deep .p-datatable .p-datatable-tbody>tr>td{padding:6px 8px 5px}.w-table-no-buttons-height,::ng-deep .w-table-no-buttons .p-datatable-table-container .p-datatable-table .p-datatable-tbody>tr>td{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}:host ::ng-deep .w-table-styles .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}.w-table-selectable-row{cursor:pointer}.showing-per-page{color:#9aa0a7;font-weight:400}.showing-per-page .p-inputnumber-input{justify-items:center}::ng-deep .row-hover:hover{background-color:#e8ebee!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto;align-content:center}::ng-deep .w-table-styles .p-datatable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-datatable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-datatable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th:hover{color:#3c4043;background:#fff}::ng-deep .w-table-styles .p-paginator{justify-content:normal!important}::ng-deep .w-table-styles .p-datatable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-increment-button{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:8px;border-bottom-right-radius:8px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-decrement-button{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:8px;border-bottom-left-radius:8px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#e8ebee;text-align:center}:host ::ng-deep .p-inputnumber-horizontal .p-inputnumber-button{color:#e8ebee;border-width:1px;border-color:#e8ebee;background-color:transparent}::ng-deep .p-datatable .p-datatable-tbody>tr>td{border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-datatable .p-datatable-tbody>tr>td:empty{padding-top:22px!important;padding-bottom:21px!important}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-radiobutton{width:16px;height:16px;border-width:1px}::ng-deep .w-table-styles .p-radiobutton .p-radiobutton-box{width:16px;height:16px;background-color:#fff;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled) .p-radiobutton-box{background-color:#005c7a}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box{background-color:#005c7a;border-color:#005c7a;border-radius:4px}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked.p-disabled .p-radiobutton-box .p-radiobutton-icon{color:#5f6468}:host ::ng-deep .w-table-styles .p-inputtext{color:#e8ebee;border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .darkBlue1.p-button.p-button-icon-only>.p-button-icon{color:#0020c7!important}::ng-deep .w-table-styles .darkBlue2.p-button.p-button-icon-only>.p-button-icon{color:#4765ff!important}::ng-deep .w-table-styles .darkBlue3.p-button.p-button-icon-only>.p-button-icon{color:#adbaff!important}::ng-deep .w-table-styles .purple1.p-button.p-button-icon-only>.p-button-icon{color:#7b00c7!important}::ng-deep .w-table-styles .purple2.p-button.p-button-icon-only>.p-button-icon{color:#b947ff!important}::ng-deep .w-table-styles .purple3.p-button.p-button-icon-only>.p-button-icon{color:#e0adff!important}::ng-deep .w-table-styles .pink1.p-button.p-button-icon-only>.p-button-icon{color:#c700b3!important}::ng-deep .w-table-styles .pink2.p-button.p-button-icon-only>.p-button-icon{color:#ff61ef!important}::ng-deep .w-table-styles .pink3.p-button.p-button-icon-only>.p-button-icon{color:#ffadf7!important}::ng-deep .w-table-styles .green1.p-button.p-button-icon-only>.p-button-icon{color:#87c700!important}::ng-deep .w-table-styles .green2.p-button.p-button-icon-only>.p-button-icon{color:#ccff61!important}::ng-deep .w-table-styles .green3.p-button.p-button-icon-only>.p-button-icon{color:#e5ffad!important}::ng-deep .w-table-styles .error1.p-button.p-button-icon-only>.p-button-icon{color:#fb7c7c!important}::ng-deep .w-table-styles .error2.p-button.p-button-icon-only>.p-button-icon{color:#f55!important}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.height-input{height:32px}.w-input{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-input:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-input:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-datatable .p-datatable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-datatable .p-datatable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .p-datatable .p-datatable-tbody>tr.w-table-lazy-empty-message-padding>td{padding:16px 12px 15px!important}::ng-deep .w-table-styles .p-disabled,.p-component:disabled{opacity:.3;box-shadow:none!important}.w-table-buttons{gap:8px}::ng-deep .p-confirmpopup{box-shadow:0 1px 3px #0000004d}::ng-deep .p-confirmpopup .p-confirmpopup-content{padding:16px!important}::ng-deep .p-confirmpopup .p-confirmpopup-footer{padding:8px 16px!important}::ng-deep .w-table-styles .p-button-text:not(:disabled):hover{background:transparent!important}\n"], dependencies: [{ kind: "directive", type: i1$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i1$5.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i9.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i10.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i10.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i10.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i10.TableRadioButton, selector: "p-tableRadioButton", inputs: ["value", "disabled", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.ConfirmPopup, selector: "p-confirmpopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible", "motionOptions", "appendTo"] }, { kind: "component", type: i12.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["hostName", "value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "component", type: i13.IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "component", type: i14.InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: WButtonComponent, selector: "w-button", inputs: ["type", "label", "size", "icon", "iconPos", "tooltipPosition", "tooltip", "disabled", "loading", "buttonClass"], outputs: ["onClick"] }, { kind: "component", type: WBadgeComponent, selector: "w-badge", inputs: ["label", "color", "tooltip", "maxWidthOverflow", "icon"] }, { kind: "component", type: WButtonWeekComponent, selector: "w-button-week", inputs: ["value", "translations", "defaultEsp"], outputs: ["onDayClick"] }, { kind: "pipe", type: WDatePipe, name: "wappDate" }, { kind: "pipe", type: WPercentagePipe, name: "wappPercentage" }, { kind: "pipe", type: WCurrencyPipe, name: "wappCurrency" }] }); }
2062
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: WTableComponent, isStandalone: false, selector: "w-table", inputs: { loading: "loading", elements: "elements", selectedElements: "selectedElements", wappTableObject: "wappTableObject", rowsPerPage: "rowsPerPage", initialPage: "initialPage", paginationId: "paginationId", singleRowSelection: "singleRowSelection" }, outputs: { onElementSelect: "onElementSelect", onViewElementSelect: "onViewElementSelect", onCopyElementSelect: "onCopyElementSelect", onEditElementSelect: "onEditElementSelect", onCustomElementSelect: "onCustomElementSelect", onDeleteElementSelect: "onDeleteElementSelect", onNewElementSelect: "onNewElementSelect", onPageChange: "onPageChange", onSelectedElementsChange: "onSelectedElementsChange", onSecondaryCheckboxChange: "onSecondaryCheckboxChange" }, providers: [ConfirmationService], viewQueries: [{ propertyName: "filter", first: true, predicate: ["filter"], descendants: true }, { propertyName: "tableComponent", first: true, predicate: ["table"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-content select=\".filter-panel\"></ng-content>\r\n@if (wappTableObject) {\r\n <div [class.table-container]=\"wappTableObject.tableContainer\">\r\n @if (!loading) {\r\n <p-table class=\"w-table-styles\" [ngClass]=\"{'w-table-no-buttons' : !wappTableObject.hasEditButton && !wappTableObject.hasDeleteButton && !wappTableObject.hasCopyButton && !wappTableObject.customButtonConfig}\"\r\n #table\r\n [value]=\"elements\" \r\n dataKey=\"{{wappTableObject.identificator}}\"\r\n [paginator]=\"wappTableObject.hasPaginator\"\r\n [selection]=\"selectedElements\" \r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [selectAll]=\"selectAll\" \r\n (selectAllChange)=\"onSelectAllChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n [rows]=\"rowsPerPage\" \r\n [(first)]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n (onFilter)=\"onFilter(table)\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + '{last}' + ' de ' + totalRecords! : 'Showing ' + '{last}' + ' of ' + totalRecords!\"\r\n [globalFilterFields]=\"wappTableObject.globalFilterFields!\" responsiveLayout=\"scroll\"\r\n [rowHover]=\"wappTableObject.hasViewButton!\" \r\n [tableStyle]=\"{'min-width': wappTableObject.tableMinWidth!}\"\r\n (onPage)=\"pageChange($event)\"\r\n [selectionMode]=\"singleRowSelection ? 'single' : 'multiple'\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch || wappTableObject.hasTotalPagingSelector) {\r\n <ng-template #caption>\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"savePagination()\">\r\n </p-inputnumber>\r\n }\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n [value]=\"searchInput\"\r\n (input)=\"onGlobalFilter(table, $event)\"\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template #header>\r\n <tr>\r\n @if (wappTableObject.hasCheckbox) {\r\n <th\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[0]) : 'text-center'\">\r\n @if (wappTableObject.hasSelectAllCheckbox == true && !singleRowSelection) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (!wappTableObject.hasSortableColumns) {\r\n @for (header of wappTableObject?.headers; track header; let i = $index) {\r\n <th\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] == tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{header}}\r\n </th>\r\n }\r\n } @else {\r\n @for (filterType of wappTableObject.headers; track filterType; let i = $index) {\r\n <th [pSortableColumn]=\"wappTableObject.sortableNames[i]\"\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] === tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{wappTableObject.headers[i]}}\r\n @if (wappTableObject.sortableNames[i] != null) {\r\n <p-sortIcon [field]=\"wappTableObject.sortableNames[i]\"></p-sortIcon>\r\n }\r\n </th>\r\n }\r\n }\r\n @if (wappTableObject.hasDeleteButton || wappTableObject.hasEditButton || wappTableObject.hasViewButton || wappTableObject.hasCopyButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #body let-element>\r\n <tr [ngClass]=\"{'row-hover': wappTableObject.hasViewButton}\"\r\n (click)=\"wappTableObject.hasClickableRow ? onElement(element) : ''\">\r\n @for (columnType of wappTableObject.columnTypes!; track columnType; let i = $index) {\r\n @if (columnType == tableColumnTypes?.Checkbox! && wappTableObject.hasCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths![i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\">\r\n @if (wappTableObject.disableCheckbox) {\r\n <div>\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableCheckbox>\r\n }\r\n </div>\r\n } @else {\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\"></p-tableCheckbox>\r\n }\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @if (readProperty(element, wappTableObject.columns[i])) {\r\n <img\r\n [src]=\"readProperty(element, wappTableObject.columns[i])\"\r\n class=\"element-image-width\"/>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappPercentage }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappCurrency }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-badge [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"'info'\"></w-badge>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Enum) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (enum of wappTableObject.enumIcon; track enum; let ind = $index) {\r\n <div>\r\n @if (enum.enumValue == readProperty(element, wappTableObject.columns[i])) {\r\n <i [class]=\"'pi '+ enum.icon +' '+enum.iconColor \"></i>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ColoredBadge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (badge of wappTableObject.coloredBadge; track badge; let ind = $index) {\r\n <div>\r\n @if (badge.coloredBadgeProperty == readProperty(element, wappTableObject.columns[i])) {\r\n <w-badge\r\n [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"badge.color\"></w-badge>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass(i, readProperty(element, wappTableObject.columns[i]))\"></i>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.SecondaryCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n <p-checkbox [(ngModel)]=\"element[wappTableObject.columns[i]]\" [disabled]=\"!isElementSelected(element[wappTableObject.identificator])\" [binary]=\"true\" inputId=\"binary\" (ngModelChange)=\"onSecondaryCheckboxChanges(element)\"></p-checkbox>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.DateRaw) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.d }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.D }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.g }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.G }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.BuisinessDateTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate : wappDateFormat.Date }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Week) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-button-week [value]=\"readProperty(element, wappTableObject.columns[i])\" [translations]=\"wappTableObject.weekButtonTranslations ? wappTableObject.weekButtonTranslations : []\" [defaultEsp]=\"wappTableObject.weekButtonDefaultEsp ?? false\"></w-button-week>\r\n </td>\r\n }\r\n }\r\n @if (wappTableObject.hasCustomButton || wappTableObject?.hasEditButton || wappTableObject?.hasCopyButton || wappTableObject?.hasDeleteButton || wappTableObject?.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton && !wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableViewProperty) ? '' : wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableViewProperty)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n @if (!customButtonConfig?.disableProperty) {\r\n <w-button\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n type=\"table\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view' + getButtonCustomColorClass(customButtonConfig.color!) \">\r\n </w-button>\r\n }\r\n @if (customButtonConfig?.disableProperty) {\r\n <w-button\r\n type=\"table\"\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n [disabled]=\"readProperty(element, customButtonConfig?.disableProperty!)\"\r\n [tooltip]=\"readProperty(element, customButtonConfig?.disableProperty!) ? '' : wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n } \r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton && !wappTableObject.disableEditProperty) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableEditProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableEditProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableEditProperty) ? '' : wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmCopy($event, element)\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-copy\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <span>\r\n @if (wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmDelete($event, element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableDeleteProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableDeleteProperty) ? '' : wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n } @else {\r\n @if (!wappTableObject?.disableDelete && !wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"confirmDelete($event, element)\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n }\r\n </span>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"w-table-lazy-empty-message-padding\">\r\n <td [attr.colspan]=\"calculateColspan()\">{{wappTableObject.emptyMessage ? wappTableObject.emptyMessage : 'No matches.'}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"loadingbody\">\r\n <tr>\r\n <td colspan=\"8\">Loading elements.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n } @else {\r\n <p-table class=\"w-table-styles\" [value]=\"tableSkeletons\" responsiveLayout=\"scroll\" [paginator]=\"wappTableObject.hasPaginator\" [rows]=\"rowsPerPage\" [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords : 'Showing ' + rowsPerPage + ' of ' + totalRecords\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\">\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <span class=\"p-input-icon-left ml-auto\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" #filter\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"/>\r\n </span>\r\n }\r\n </p-inputnumber>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n @if (!wappTableObject.hasColumnFilters && wappTableObject.hasCheckbox) {\r\n <th>\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n }\r\n @for (header of wappTableObject?.headers; track header) {\r\n <th>\r\n {{header}}\r\n </th>\r\n }\r\n @if (wappTableObject?.hasDeleteButton || wappTableObject?.hasEditButton || wappTableObject?.hasViewButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\">\r\n <tr height=\"70px\">\r\n @for (item of wappTableObject.columnTypes; track item) {\r\n <td [style.width]=\"item == tableColumnTypes.Checkbox ? '8rem' : ''\" >\r\n @if (item == tableColumnTypes.Checkbox && wappTableObject.hasCheckbox) {\r\n <p-tableCheckbox></p-tableCheckbox>\r\n }\r\n @if (item != tableColumnTypes.Checkbox) {\r\n <p-skeleton></p-skeleton>\r\n }\r\n </td>\r\n }\r\n @if (wappTableObject.hasEditButton || wappTableObject.hasDeleteButton || wappTableObject.hasCopyButton || wappTableObject.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n icon=\"pi-eye\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [icon]=\"customButtonConfig?.icon!\" type=\"table\" [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n icon=\"pi-pencil\" type=\"table\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n icon=\"pi-copy\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n icon=\"pi-trash\" type=\"table\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </div>\r\n}\r\n<p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-input,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-input{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{color:#1f2224}.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td{color:#5f6468}.w-table-height,::ng-deep .p-datatable .p-datatable-tbody>tr>td{padding:6px 8px 5px}.w-table-no-buttons-height,::ng-deep .w-table-no-buttons .p-datatable-table-container .p-datatable-table .p-datatable-tbody>tr>td{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}:host ::ng-deep .w-table-styles .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}.w-table-selectable-row{cursor:pointer}.showing-per-page{color:#9aa0a7;font-weight:400}.showing-per-page .p-inputnumber-input{justify-items:center}::ng-deep .row-hover:hover{background-color:#e8ebee!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto;align-content:center}::ng-deep .w-table-styles .p-datatable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-datatable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-datatable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th:hover{color:#3c4043;background:#fff}::ng-deep .w-table-styles .p-paginator{justify-content:normal!important}::ng-deep .w-table-styles .p-datatable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-increment-button{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:8px;border-bottom-right-radius:8px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-decrement-button{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:8px;border-bottom-left-radius:8px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#e8ebee;text-align:center}:host ::ng-deep .p-inputnumber-horizontal .p-inputnumber-button{color:#e8ebee;border-width:1px;border-color:#e8ebee;background-color:transparent}::ng-deep .p-datatable .p-datatable-tbody>tr>td{border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-datatable .p-datatable-tbody>tr>td:empty{padding-top:22px!important;padding-bottom:21px!important}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-radiobutton{width:16px;height:16px;border-width:1px}::ng-deep .w-table-styles .p-radiobutton .p-radiobutton-box{width:16px;height:16px;background-color:#fff;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled) .p-radiobutton-box{background-color:#005c7a}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box{background-color:#005c7a;border-color:#005c7a;border-radius:4px}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked.p-disabled .p-radiobutton-box .p-radiobutton-icon{color:#5f6468}:host ::ng-deep .w-table-styles .p-inputtext{color:#e8ebee;border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .darkBlue1.p-button.p-button-icon-only>.p-button-icon{color:#0020c7!important}::ng-deep .w-table-styles .darkBlue2.p-button.p-button-icon-only>.p-button-icon{color:#4765ff!important}::ng-deep .w-table-styles .darkBlue3.p-button.p-button-icon-only>.p-button-icon{color:#adbaff!important}::ng-deep .w-table-styles .purple1.p-button.p-button-icon-only>.p-button-icon{color:#7b00c7!important}::ng-deep .w-table-styles .purple2.p-button.p-button-icon-only>.p-button-icon{color:#b947ff!important}::ng-deep .w-table-styles .purple3.p-button.p-button-icon-only>.p-button-icon{color:#e0adff!important}::ng-deep .w-table-styles .pink1.p-button.p-button-icon-only>.p-button-icon{color:#c700b3!important}::ng-deep .w-table-styles .pink2.p-button.p-button-icon-only>.p-button-icon{color:#ff61ef!important}::ng-deep .w-table-styles .pink3.p-button.p-button-icon-only>.p-button-icon{color:#ffadf7!important}::ng-deep .w-table-styles .green1.p-button.p-button-icon-only>.p-button-icon{color:#87c700!important}::ng-deep .w-table-styles .green2.p-button.p-button-icon-only>.p-button-icon{color:#ccff61!important}::ng-deep .w-table-styles .green3.p-button.p-button-icon-only>.p-button-icon{color:#e5ffad!important}::ng-deep .w-table-styles .error1.p-button.p-button-icon-only>.p-button-icon{color:#fb7c7c!important}::ng-deep .w-table-styles .error2.p-button.p-button-icon-only>.p-button-icon{color:#f55!important}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.height-input{height:32px}.w-input{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-input:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-input:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-datatable .p-datatable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-datatable .p-datatable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .p-datatable .p-datatable-tbody>tr.w-table-lazy-empty-message-padding>td{padding:16px 12px 15px!important}::ng-deep .w-table-styles .p-disabled,.p-component:disabled{opacity:.3;box-shadow:none!important}.w-table-buttons{gap:8px}::ng-deep .p-confirmpopup{box-shadow:0 1px 3px #0000004d}::ng-deep .p-confirmpopup .p-confirmpopup-content{padding:16px!important}::ng-deep .p-confirmpopup .p-confirmpopup-footer{padding:8px 16px!important}::ng-deep .w-table-styles .p-button-text:not(:disabled):hover{background:transparent!important}\n"], dependencies: [{ kind: "directive", type: i1$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i1$5.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i9.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i10.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i10.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i10.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: i10.TableRadioButton, selector: "p-tableRadioButton", inputs: ["value", "disabled", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.TableCheckbox, selector: "p-tableCheckbox", inputs: ["value", "disabled", "required", "index", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i10.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "component", type: i11.ConfirmPopup, selector: "p-confirmpopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible", "motionOptions", "appendTo"] }, { kind: "component", type: i12.Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["hostName", "value", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "inputStyle", "styleClass", "inputClass", "indeterminate", "formControl", "checkboxIcon", "readonly", "autofocus", "trueValue", "falseValue", "variant", "size"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "component", type: i13.IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "component", type: i14.InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: WButtonComponent, selector: "w-button", inputs: ["type", "label", "size", "icon", "iconPos", "tooltipPosition", "tooltip", "disabled", "loading", "buttonClass"], outputs: ["onClick"] }, { kind: "component", type: WBadgeComponent, selector: "w-badge", inputs: ["label", "color", "tooltip", "maxWidthOverflow", "icon"] }, { kind: "component", type: WButtonWeekComponent, selector: "w-button-week", inputs: ["value", "translations", "defaultEsp"], outputs: ["onDayClick"] }, { kind: "pipe", type: WDatePipe, name: "wappDate" }, { kind: "pipe", type: WPercentagePipe, name: "wappPercentage" }, { kind: "pipe", type: WCurrencyPipe, name: "wappCurrency" }] }); }
2036
2063
  }
2037
2064
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: WTableComponent, decorators: [{
2038
2065
  type: Component,
2039
- args: [{ selector: 'w-table', providers: [ConfirmationService], standalone: false, template: "<ng-content select=\".filter-panel\"></ng-content>\r\n@if (wappTableObject) {\r\n <div [class.table-container]=\"wappTableObject.tableContainer\">\r\n @if (!loading) {\r\n <p-table class=\"w-table-styles\" [ngClass]=\"{'w-table-no-buttons' : !wappTableObject.hasEditButton && !wappTableObject.hasDeleteButton && !wappTableObject.hasCopyButton && !wappTableObject.customButtonConfig}\"\r\n #table\r\n [value]=\"elements\" \r\n dataKey=\"{{wappTableObject.identificator}}\"\r\n [paginator]=\"wappTableObject.hasPaginator\"\r\n [selection]=\"selectedElements\" \r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [selectAll]=\"selectAll\" \r\n (selectAllChange)=\"onSelectAllChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n [rows]=\"rowsPerPage\" \r\n [(first)]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n (onFilter)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + '{last}' + ' de ' + totalRecords! : 'Showing ' + '{last}' + ' of ' + totalRecords!\"\r\n [globalFilterFields]=\"wappTableObject.globalFilterFields!\" responsiveLayout=\"scroll\"\r\n [rowHover]=\"wappTableObject.hasViewButton!\" \r\n [tableStyle]=\"{'min-width': wappTableObject.tableMinWidth!}\"\r\n (onPage)=\"pageChange($event)\"\r\n [selectionMode]=\"singleRowSelection ? 'single' : 'multiple'\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch || wappTableObject.hasTotalPagingSelector) {\r\n <ng-template #caption>\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"savePagination()\">\r\n </p-inputnumber>\r\n }\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"onGlobalFilter(table, $event)\"\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template #header>\r\n <tr>\r\n @if (wappTableObject.hasCheckbox) {\r\n <th\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[0]) : 'text-center'\">\r\n @if (wappTableObject.hasSelectAllCheckbox == true && !singleRowSelection) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (!wappTableObject.hasSortableColumns) {\r\n @for (header of wappTableObject?.headers; track header; let i = $index) {\r\n <th\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] == tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{header}}\r\n </th>\r\n }\r\n } @else {\r\n @for (filterType of wappTableObject.headers; track filterType; let i = $index) {\r\n <th [pSortableColumn]=\"wappTableObject.sortableNames[i]\"\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] === tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{wappTableObject.headers[i]}}\r\n @if (wappTableObject.sortableNames[i] != null) {\r\n <p-sortIcon [field]=\"wappTableObject.sortableNames[i]\"></p-sortIcon>\r\n }\r\n </th>\r\n }\r\n }\r\n @if (wappTableObject.hasDeleteButton || wappTableObject.hasEditButton || wappTableObject.hasViewButton || wappTableObject.hasCopyButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #body let-element>\r\n <tr [ngClass]=\"{'row-hover': wappTableObject.hasViewButton}\"\r\n (click)=\"wappTableObject.hasClickableRow ? onElement(element) : ''\">\r\n @for (columnType of wappTableObject.columnTypes!; track columnType; let i = $index) {\r\n @if (columnType == tableColumnTypes?.Checkbox! && wappTableObject.hasCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths![i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\">\r\n @if (wappTableObject.disableCheckbox) {\r\n <div>\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableCheckbox>\r\n }\r\n </div>\r\n } @else {\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\"></p-tableCheckbox>\r\n }\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @if (readProperty(element, wappTableObject.columns[i])) {\r\n <img\r\n [src]=\"readProperty(element, wappTableObject.columns[i])\"\r\n class=\"element-image-width\"/>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappPercentage }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappCurrency }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-badge [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"'info'\"></w-badge>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Enum) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (enum of wappTableObject.enumIcon; track enum; let ind = $index) {\r\n <div>\r\n @if (enum.enumValue == readProperty(element, wappTableObject.columns[i])) {\r\n <i [class]=\"'pi '+ enum.icon +' '+enum.iconColor \"></i>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ColoredBadge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (badge of wappTableObject.coloredBadge; track badge; let ind = $index) {\r\n <div>\r\n @if (badge.coloredBadgeProperty == readProperty(element, wappTableObject.columns[i])) {\r\n <w-badge\r\n [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"badge.color\"></w-badge>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass(i, readProperty(element, wappTableObject.columns[i]))\"></i>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.SecondaryCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n <p-checkbox [(ngModel)]=\"element[wappTableObject.columns[i]]\" [disabled]=\"!isElementSelected(element[wappTableObject.identificator])\" [binary]=\"true\" inputId=\"binary\" (ngModelChange)=\"onSecondaryCheckboxChanges(element)\"></p-checkbox>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.DateRaw) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.d }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.D }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.g }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.G }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.BuisinessDateTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate : wappDateFormat.Date }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Week) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-button-week [value]=\"readProperty(element, wappTableObject.columns[i])\" [translations]=\"wappTableObject.weekButtonTranslations ? wappTableObject.weekButtonTranslations : []\" [defaultEsp]=\"wappTableObject.weekButtonDefaultEsp ?? false\"></w-button-week>\r\n </td>\r\n }\r\n }\r\n @if (wappTableObject.hasCustomButton || wappTableObject?.hasEditButton || wappTableObject?.hasCopyButton || wappTableObject?.hasDeleteButton || wappTableObject?.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton && !wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableViewProperty) ? '' : wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableViewProperty)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n @if (!customButtonConfig?.disableProperty) {\r\n <w-button\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n type=\"table\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view' + getButtonCustomColorClass(customButtonConfig.color!) \">\r\n </w-button>\r\n }\r\n @if (customButtonConfig?.disableProperty) {\r\n <w-button\r\n type=\"table\"\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n [disabled]=\"readProperty(element, customButtonConfig?.disableProperty!)\"\r\n [tooltip]=\"readProperty(element, customButtonConfig?.disableProperty!) ? '' : wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n } \r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton && !wappTableObject.disableEditProperty) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableEditProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableEditProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableEditProperty) ? '' : wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmCopy($event, element)\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-copy\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <span>\r\n @if (wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmDelete($event, element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableDeleteProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableDeleteProperty) ? '' : wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n } @else {\r\n @if (!wappTableObject?.disableDelete && !wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"confirmDelete($event, element)\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n }\r\n </span>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"w-table-lazy-empty-message-padding\">\r\n <td [attr.colspan]=\"calculateColspan()\">{{wappTableObject.emptyMessage ? wappTableObject.emptyMessage : 'No matches.'}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"loadingbody\">\r\n <tr>\r\n <td colspan=\"8\">Loading elements.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n } @else {\r\n <p-table class=\"w-table-styles\" [value]=\"tableSkeletons\" responsiveLayout=\"scroll\" [paginator]=\"wappTableObject.hasPaginator\" [rows]=\"rowsPerPage\" [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords : 'Showing ' + rowsPerPage + ' of ' + totalRecords\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\">\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <span class=\"p-input-icon-left ml-auto\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" #filter\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"/>\r\n </span>\r\n }\r\n </p-inputnumber>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n @if (!wappTableObject.hasColumnFilters && wappTableObject.hasCheckbox) {\r\n <th>\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n }\r\n @for (header of wappTableObject?.headers; track header) {\r\n <th>\r\n {{header}}\r\n </th>\r\n }\r\n @if (wappTableObject?.hasDeleteButton || wappTableObject?.hasEditButton || wappTableObject?.hasViewButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\">\r\n <tr height=\"70px\">\r\n @for (item of wappTableObject.columnTypes; track item) {\r\n <td [style.width]=\"item == tableColumnTypes.Checkbox ? '8rem' : ''\" >\r\n @if (item == tableColumnTypes.Checkbox && wappTableObject.hasCheckbox) {\r\n <p-tableCheckbox></p-tableCheckbox>\r\n }\r\n @if (item != tableColumnTypes.Checkbox) {\r\n <p-skeleton></p-skeleton>\r\n }\r\n </td>\r\n }\r\n @if (wappTableObject.hasEditButton || wappTableObject.hasDeleteButton || wappTableObject.hasCopyButton || wappTableObject.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n icon=\"pi-eye\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [icon]=\"customButtonConfig?.icon!\" type=\"table\" [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n icon=\"pi-pencil\" type=\"table\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n icon=\"pi-copy\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n icon=\"pi-trash\" type=\"table\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </div>\r\n}\r\n<p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-input,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-input{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{color:#1f2224}.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td{color:#5f6468}.w-table-height,::ng-deep .p-datatable .p-datatable-tbody>tr>td{padding:6px 8px 5px}.w-table-no-buttons-height,::ng-deep .w-table-no-buttons .p-datatable-table-container .p-datatable-table .p-datatable-tbody>tr>td{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}:host ::ng-deep .w-table-styles .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}.w-table-selectable-row{cursor:pointer}.showing-per-page{color:#9aa0a7;font-weight:400}.showing-per-page .p-inputnumber-input{justify-items:center}::ng-deep .row-hover:hover{background-color:#e8ebee!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto;align-content:center}::ng-deep .w-table-styles .p-datatable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-datatable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-datatable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th:hover{color:#3c4043;background:#fff}::ng-deep .w-table-styles .p-paginator{justify-content:normal!important}::ng-deep .w-table-styles .p-datatable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-increment-button{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:8px;border-bottom-right-radius:8px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-decrement-button{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:8px;border-bottom-left-radius:8px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#e8ebee;text-align:center}:host ::ng-deep .p-inputnumber-horizontal .p-inputnumber-button{color:#e8ebee;border-width:1px;border-color:#e8ebee;background-color:transparent}::ng-deep .p-datatable .p-datatable-tbody>tr>td{border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-datatable .p-datatable-tbody>tr>td:empty{padding-top:22px!important;padding-bottom:21px!important}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-radiobutton{width:16px;height:16px;border-width:1px}::ng-deep .w-table-styles .p-radiobutton .p-radiobutton-box{width:16px;height:16px;background-color:#fff;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled) .p-radiobutton-box{background-color:#005c7a}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box{background-color:#005c7a;border-color:#005c7a;border-radius:4px}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked.p-disabled .p-radiobutton-box .p-radiobutton-icon{color:#5f6468}:host ::ng-deep .w-table-styles .p-inputtext{color:#e8ebee;border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .darkBlue1.p-button.p-button-icon-only>.p-button-icon{color:#0020c7!important}::ng-deep .w-table-styles .darkBlue2.p-button.p-button-icon-only>.p-button-icon{color:#4765ff!important}::ng-deep .w-table-styles .darkBlue3.p-button.p-button-icon-only>.p-button-icon{color:#adbaff!important}::ng-deep .w-table-styles .purple1.p-button.p-button-icon-only>.p-button-icon{color:#7b00c7!important}::ng-deep .w-table-styles .purple2.p-button.p-button-icon-only>.p-button-icon{color:#b947ff!important}::ng-deep .w-table-styles .purple3.p-button.p-button-icon-only>.p-button-icon{color:#e0adff!important}::ng-deep .w-table-styles .pink1.p-button.p-button-icon-only>.p-button-icon{color:#c700b3!important}::ng-deep .w-table-styles .pink2.p-button.p-button-icon-only>.p-button-icon{color:#ff61ef!important}::ng-deep .w-table-styles .pink3.p-button.p-button-icon-only>.p-button-icon{color:#ffadf7!important}::ng-deep .w-table-styles .green1.p-button.p-button-icon-only>.p-button-icon{color:#87c700!important}::ng-deep .w-table-styles .green2.p-button.p-button-icon-only>.p-button-icon{color:#ccff61!important}::ng-deep .w-table-styles .green3.p-button.p-button-icon-only>.p-button-icon{color:#e5ffad!important}::ng-deep .w-table-styles .error1.p-button.p-button-icon-only>.p-button-icon{color:#fb7c7c!important}::ng-deep .w-table-styles .error2.p-button.p-button-icon-only>.p-button-icon{color:#f55!important}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.height-input{height:32px}.w-input{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-input:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-input:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-datatable .p-datatable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-datatable .p-datatable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .p-datatable .p-datatable-tbody>tr.w-table-lazy-empty-message-padding>td{padding:16px 12px 15px!important}::ng-deep .w-table-styles .p-disabled,.p-component:disabled{opacity:.3;box-shadow:none!important}.w-table-buttons{gap:8px}::ng-deep .p-confirmpopup{box-shadow:0 1px 3px #0000004d}::ng-deep .p-confirmpopup .p-confirmpopup-content{padding:16px!important}::ng-deep .p-confirmpopup .p-confirmpopup-footer{padding:8px 16px!important}::ng-deep .w-table-styles .p-button-text:not(:disabled):hover{background:transparent!important}\n"] }]
2066
+ args: [{ selector: 'w-table', providers: [ConfirmationService], standalone: false, template: "<ng-content select=\".filter-panel\"></ng-content>\r\n@if (wappTableObject) {\r\n <div [class.table-container]=\"wappTableObject.tableContainer\">\r\n @if (!loading) {\r\n <p-table class=\"w-table-styles\" [ngClass]=\"{'w-table-no-buttons' : !wappTableObject.hasEditButton && !wappTableObject.hasDeleteButton && !wappTableObject.hasCopyButton && !wappTableObject.customButtonConfig}\"\r\n #table\r\n [value]=\"elements\" \r\n dataKey=\"{{wappTableObject.identificator}}\"\r\n [paginator]=\"wappTableObject.hasPaginator\"\r\n [selection]=\"selectedElements\" \r\n (selectionChange)=\"onSelectionChange($event)\"\r\n [selectAll]=\"selectAll\" \r\n (selectAllChange)=\"onSelectAllChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n [rows]=\"rowsPerPage\" \r\n [(first)]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = table.first ?? 0; sortField = table.sortField ?? undefined; sortOrder = table.sortOrder; savePagination()\"\r\n (onFilter)=\"onFilter(table)\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + '{last}' + ' de ' + totalRecords! : 'Showing ' + '{last}' + ' of ' + totalRecords!\"\r\n [globalFilterFields]=\"wappTableObject.globalFilterFields!\" responsiveLayout=\"scroll\"\r\n [rowHover]=\"wappTableObject.hasViewButton!\" \r\n [tableStyle]=\"{'min-width': wappTableObject.tableMinWidth!}\"\r\n (onPage)=\"pageChange($event)\"\r\n [selectionMode]=\"singleRowSelection ? 'single' : 'multiple'\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch || wappTableObject.hasTotalPagingSelector) {\r\n <ng-template #caption>\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"savePagination()\">\r\n </p-inputnumber>\r\n }\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n [value]=\"searchInput\"\r\n (input)=\"onGlobalFilter(table, $event)\"\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template #header>\r\n <tr>\r\n @if (wappTableObject.hasCheckbox) {\r\n <th\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[0]) : 'text-center'\">\r\n @if (wappTableObject.hasSelectAllCheckbox == true && !singleRowSelection) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (!wappTableObject.hasSortableColumns) {\r\n @for (header of wappTableObject?.headers; track header; let i = $index) {\r\n <th\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] == tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{header}}\r\n </th>\r\n }\r\n } @else {\r\n @for (filterType of wappTableObject.headers; track filterType; let i = $index) {\r\n <th [pSortableColumn]=\"wappTableObject.sortableNames[i]\"\r\n [class.image-header]=\"wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i] === tableColumnTypes.Image \"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[wappTableObject.hasCheckbox ? i+1 : i]) : getTableColumnAlignClassDefaultByColumnType(wappTableObject.columnTypes[wappTableObject.hasCheckbox ? i+1 : i])\">\r\n {{wappTableObject.headers[i]}}\r\n @if (wappTableObject.sortableNames[i] != null) {\r\n <p-sortIcon [field]=\"wappTableObject.sortableNames[i]\"></p-sortIcon>\r\n }\r\n </th>\r\n }\r\n }\r\n @if (wappTableObject.hasDeleteButton || wappTableObject.hasEditButton || wappTableObject.hasViewButton || wappTableObject.hasCopyButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template #body let-element>\r\n <tr [ngClass]=\"{'row-hover': wappTableObject.hasViewButton}\"\r\n (click)=\"wappTableObject.hasClickableRow ? onElement(element) : ''\">\r\n @for (columnType of wappTableObject.columnTypes!; track columnType; let i = $index) {\r\n @if (columnType == tableColumnTypes?.Checkbox! && wappTableObject.hasCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths![i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\">\r\n @if (wappTableObject.disableCheckbox) {\r\n <div>\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\" [disabled]=\"readProperty(element, wappTableObject.disableCheckbox)\"></p-tableCheckbox>\r\n }\r\n </div>\r\n } @else {\r\n @if (singleRowSelection) {\r\n <p-tableRadioButton [value]=\"element\"></p-tableRadioButton>\r\n } @else {\r\n <p-tableCheckbox [value]=\"element\"></p-tableCheckbox>\r\n }\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @if (readProperty(element, wappTableObject.columns[i])) {\r\n <img\r\n [src]=\"readProperty(element, wappTableObject.columns[i])\"\r\n class=\"element-image-width\"/>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappPercentage }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-right'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappCurrency }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-badge [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"'info'\"></w-badge>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Enum) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (enum of wappTableObject.enumIcon; track enum; let ind = $index) {\r\n <div>\r\n @if (enum.enumValue == readProperty(element, wappTableObject.columns[i])) {\r\n <i [class]=\"'pi '+ enum.icon +' '+enum.iconColor \"></i>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ColoredBadge) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n @for (badge of wappTableObject.coloredBadge; track badge; let ind = $index) {\r\n <div>\r\n @if (badge.coloredBadgeProperty == readProperty(element, wappTableObject.columns[i])) {\r\n <w-badge\r\n [label]=\"readProperty(element, wappTableObject.columns[i])\" [color]=\"badge.color\"></w-badge>\r\n }\r\n </div>\r\n }\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass(i, readProperty(element, wappTableObject.columns[i]))\"></i>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.SecondaryCheckbox) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n <p-checkbox [(ngModel)]=\"element[wappTableObject.columns[i]]\" [disabled]=\"!isElementSelected(element[wappTableObject.identificator])\" [binary]=\"true\" inputId=\"binary\" (ngModelChange)=\"onSecondaryCheckboxChanges(element)\"></p-checkbox>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.DateRaw) {\r\n <td [style]=\"'width: '+wappTableObject.columnWidths[i]\"\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-lazy-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.d }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.D }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.g }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ dateConversionService.formatUTCDate(readProperty(element, wappTableObject.columns[i])) | wappDate : wappDateFormat.G }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.BuisinessDateTime) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-left'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n {{ readProperty(element, wappTableObject.columns[i]) | wappDate : wappDateFormat.Date }}\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Week) {\r\n <td\r\n [ngClass]=\"wappTableObject.columnAlign ? getTableColumnAlignClass(wappTableObject.columnAlign[i]) : 'text-center'\"\r\n (click)=\"wappTableObject.hasClickableRow ? viewElement(element) : ''\" [class]=\"wappTableObject.hasClickableRow ? 'w-table-selectable-row' : ''\">\r\n <w-button-week [value]=\"readProperty(element, wappTableObject.columns[i])\" [translations]=\"wappTableObject.weekButtonTranslations ? wappTableObject.weekButtonTranslations : []\" [defaultEsp]=\"wappTableObject.weekButtonDefaultEsp ?? false\"></w-button-week>\r\n </td>\r\n }\r\n }\r\n @if (wappTableObject.hasCustomButton || wappTableObject?.hasEditButton || wappTableObject?.hasCopyButton || wappTableObject?.hasDeleteButton || wappTableObject?.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton && !wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableViewProperty) {\r\n <w-button\r\n type=\"table\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableViewProperty) ? '' : wappTableObject.buttonTooltips?.viewTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"viewElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableViewProperty)\"\r\n icon=\"pi-eye\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n @if (!customButtonConfig?.disableProperty) {\r\n <w-button\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n type=\"table\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view' + getButtonCustomColorClass(customButtonConfig.color!) \">\r\n </w-button>\r\n }\r\n @if (customButtonConfig?.disableProperty) {\r\n <w-button\r\n type=\"table\"\r\n (onClick)=\"customElement({buttonId: customButtonConfig.buttonId, element: element})\"\r\n [disabled]=\"readProperty(element, customButtonConfig?.disableProperty!)\"\r\n [tooltip]=\"readProperty(element, customButtonConfig?.disableProperty!) ? '' : wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n [icon]=\"customButtonConfig?.icon!\"\r\n [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n } \r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton && !wappTableObject.disableEditProperty) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject.disableEditProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"editElement(element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableEditProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableEditProperty) ? '' : wappTableObject.buttonTooltips?.editTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-pencil\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmCopy($event, element)\"\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-copy\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <span>\r\n @if (wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" (onClick)=\"confirmDelete($event, element)\"\r\n [disabled]=\"readProperty(element, wappTableObject.disableDeleteProperty)\"\r\n [tooltip]=\"readProperty(element, wappTableObject.disableDeleteProperty) ? '' : wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n } @else {\r\n @if (!wappTableObject?.disableDelete && !wappTableObject.disableDeleteProperty) {\r\n <w-button\r\n type=\"table\" [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n [tooltipPosition]=\"wappTableObject.buttonTooltips?.position!\"\r\n (onClick)=\"confirmDelete($event, element)\"\r\n icon=\"pi-trash\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n }\r\n </span>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"w-table-lazy-empty-message-padding\">\r\n <td [attr.colspan]=\"calculateColspan()\">{{wappTableObject.emptyMessage ? wappTableObject.emptyMessage : 'No matches.'}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"loadingbody\">\r\n <tr>\r\n <td colspan=\"8\">Loading elements.</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n } @else {\r\n <p-table class=\"w-table-styles\" [value]=\"tableSkeletons\" responsiveLayout=\"scroll\" [paginator]=\"wappTableObject.hasPaginator\" [rows]=\"rowsPerPage\" [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTableObject.currentPageReportTemplate ? wappTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords : 'Showing ' + rowsPerPage + ' of ' + totalRecords\"\r\n stripedRows>\r\n @if (wappTableObject?.hasClearButton || wappTableObject.hasGlobalSearch) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\">\r\n @if (wappTableObject?.hasGlobalSearch) {\r\n <span class=\"p-input-icon-left ml-auto\">\r\n <i class=\"pi pi-search\"></i>\r\n <input pInputText type=\"text\" #filter\r\n [placeholder]=\"wappTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"/>\r\n </span>\r\n }\r\n </p-inputnumber>\r\n }\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n @if (!wappTableObject.hasColumnFilters && wappTableObject.hasCheckbox) {\r\n <th>\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n }\r\n @for (header of wappTableObject?.headers; track header) {\r\n <th>\r\n {{header}}\r\n </th>\r\n }\r\n @if (wappTableObject?.hasDeleteButton || wappTableObject?.hasEditButton || wappTableObject?.hasViewButton) {\r\n <th></th>\r\n }\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\">\r\n <tr height=\"70px\">\r\n @for (item of wappTableObject.columnTypes; track item) {\r\n <td [style.width]=\"item == tableColumnTypes.Checkbox ? '8rem' : ''\" >\r\n @if (item == tableColumnTypes.Checkbox && wappTableObject.hasCheckbox) {\r\n <p-tableCheckbox></p-tableCheckbox>\r\n }\r\n @if (item != tableColumnTypes.Checkbox) {\r\n <p-skeleton></p-skeleton>\r\n }\r\n </td>\r\n }\r\n @if (wappTableObject.hasEditButton || wappTableObject.hasDeleteButton || wappTableObject.hasCopyButton || wappTableObject.hasViewButton) {\r\n <td>\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @if (wappTableObject?.hasViewButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.viewTooltip!\"\r\n icon=\"pi-eye\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCustomButton) {\r\n @for (customButtonConfig of wappTableObject.customButtonConfig; track $index) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.customTooltip![$index]\"\r\n [icon]=\"customButtonConfig?.icon!\" type=\"table\" [buttonClass]=\"'w-table-button-view ' + getButtonCustomColorClass(customButtonConfig.color!)\">\r\n </w-button>\r\n }\r\n }\r\n @if (wappTableObject?.hasEditButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.editTooltip!\"\r\n icon=\"pi-pencil\" type=\"table\" buttonClass=\"w-table-button-edit\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasCopyButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.copyTooltip!\"\r\n icon=\"pi-copy\" type=\"table\" buttonClass=\"w-table-button-view\">\r\n </w-button>\r\n }\r\n @if (wappTableObject?.hasDeleteButton) {\r\n <w-button\r\n [tooltip]=\"wappTableObject.buttonTooltips?.deleteTooltip!\"\r\n icon=\"pi-trash\" type=\"table\" buttonClass=\"w-table-button-delete\">\r\n </w-button>\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </div>\r\n}\r\n<p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-input,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-input{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{color:#1f2224}.w-table-td-text,::ng-deep .p-datatable .p-datatable-tbody>tr>td{color:#5f6468}.w-table-height,::ng-deep .p-datatable .p-datatable-tbody>tr>td{padding:6px 8px 5px}.w-table-no-buttons-height,::ng-deep .w-table-no-buttons .p-datatable-table-container .p-datatable-table .p-datatable-tbody>tr>td{padding:16px 8px 15px!important}.w-tree-table-height{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}:host ::ng-deep .w-table-styles .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}.w-table-selectable-row{cursor:pointer}.showing-per-page{color:#9aa0a7;font-weight:400}.showing-per-page .p-inputnumber-input{justify-items:center}::ng-deep .row-hover:hover{background-color:#e8ebee!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto;align-content:center}::ng-deep .w-table-styles .p-datatable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-datatable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-datatable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-datatable-thead>tr>th:hover{color:#3c4043;background:#fff}::ng-deep .w-table-styles .p-paginator{justify-content:normal!important}::ng-deep .w-table-styles .p-datatable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-datatable .p-datatable-header{background:#fff;border-width:0px;padding:0 0 16px!important;font-weight:400}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-increment-button{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:8px;border-bottom-right-radius:8px}:host ::ng-deep .w-table-styles .p-inputnumber-horizontal .p-inputnumber-decrement-button{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-top-left-radius:8px;border-bottom-left-radius:8px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#e8ebee;text-align:center}:host ::ng-deep .p-inputnumber-horizontal .p-inputnumber-button{color:#e8ebee;border-width:1px;border-color:#e8ebee;background-color:transparent}::ng-deep .p-datatable .p-datatable-tbody>tr>td{border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-datatable.p-datatable-striped .p-datatable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-datatable .p-datatable-tbody>tr>td:empty{padding-top:22px!important;padding-bottom:21px!important}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-radiobutton{width:16px;height:16px;border-width:1px}::ng-deep .w-table-styles .p-radiobutton .p-radiobutton-box{width:16px;height:16px;background-color:#fff;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled) .p-radiobutton-box{background-color:#005c7a}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box{background-color:#005c7a;border-color:#005c7a;border-radius:4px}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon{background:none;color:#fff}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked:not(.p-disabled):has(.p-radiobutton-input:hover) .p-radiobutton-box .p-radiobutton-icon:before{font-family:PrimeIcons;content:\"\\e909\"}::ng-deep .w-table-styles .p-radiobutton.p-radiobutton-checked.p-disabled .p-radiobutton-box .p-radiobutton-icon{color:#5f6468}:host ::ng-deep .w-table-styles .p-inputtext{color:#e8ebee;border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button-outlined:not(:disabled):hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .darkBlue1.p-button.p-button-icon-only>.p-button-icon{color:#0020c7!important}::ng-deep .w-table-styles .darkBlue2.p-button.p-button-icon-only>.p-button-icon{color:#4765ff!important}::ng-deep .w-table-styles .darkBlue3.p-button.p-button-icon-only>.p-button-icon{color:#adbaff!important}::ng-deep .w-table-styles .purple1.p-button.p-button-icon-only>.p-button-icon{color:#7b00c7!important}::ng-deep .w-table-styles .purple2.p-button.p-button-icon-only>.p-button-icon{color:#b947ff!important}::ng-deep .w-table-styles .purple3.p-button.p-button-icon-only>.p-button-icon{color:#e0adff!important}::ng-deep .w-table-styles .pink1.p-button.p-button-icon-only>.p-button-icon{color:#c700b3!important}::ng-deep .w-table-styles .pink2.p-button.p-button-icon-only>.p-button-icon{color:#ff61ef!important}::ng-deep .w-table-styles .pink3.p-button.p-button-icon-only>.p-button-icon{color:#ffadf7!important}::ng-deep .w-table-styles .green1.p-button.p-button-icon-only>.p-button-icon{color:#87c700!important}::ng-deep .w-table-styles .green2.p-button.p-button-icon-only>.p-button-icon{color:#ccff61!important}::ng-deep .w-table-styles .green3.p-button.p-button-icon-only>.p-button-icon{color:#e5ffad!important}::ng-deep .w-table-styles .error1.p-button.p-button-icon-only>.p-button-icon{color:#fb7c7c!important}::ng-deep .w-table-styles .error2.p-button.p-button-icon-only>.p-button-icon{color:#f55!important}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.height-input{height:32px}.w-input{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-input:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-input:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-datatable .p-datatable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-datatable .p-datatable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .p-datatable .p-datatable-tbody>tr.w-table-lazy-empty-message-padding>td{padding:16px 12px 15px!important}::ng-deep .w-table-styles .p-disabled,.p-component:disabled{opacity:.3;box-shadow:none!important}.w-table-buttons{gap:8px}::ng-deep .p-confirmpopup{box-shadow:0 1px 3px #0000004d}::ng-deep .p-confirmpopup .p-confirmpopup-content{padding:16px!important}::ng-deep .p-confirmpopup .p-confirmpopup-footer{padding:8px 16px!important}::ng-deep .w-table-styles .p-button-text:not(:disabled):hover{background:transparent!important}\n"] }]
2040
2067
  }], ctorParameters: () => [{ type: i1$4.ConfirmationService }, { type: DateConversionService }, { type: SessionStorageService }, { type: LocalStorageService }], propDecorators: { loading: [{
2041
2068
  type: Input,
2042
2069
  args: ['loading']
@@ -2094,7 +2121,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImpor
2094
2121
  }], filter: [{
2095
2122
  type: ViewChild,
2096
2123
  args: ['filter']
2097
- }], dataTable: [{
2124
+ }], tableComponent: [{
2098
2125
  type: ViewChild,
2099
2126
  args: ['table']
2100
2127
  }] } });
@@ -2392,6 +2419,26 @@ class WTableLazyComponent {
2392
2419
  this.first = first;
2393
2420
  this.dataTable._first = first;
2394
2421
  }
2422
+ applyFilterQuery(query) {
2423
+ if (!this.lastQuery) {
2424
+ throw new Error('w-table-lazy: wait for queryElements before applying a filter query.');
2425
+ }
2426
+ const source = query.options?.source;
2427
+ if (source !== 'init-storage' && source !== 'init-default') {
2428
+ this.lastQuery = { ...this.lastQuery, first: 0 };
2429
+ this.refreshPagination(0);
2430
+ this.setStoredTablePagination(this.localStorage.getTenant().tenantId, {
2431
+ id: this.paginationStorageId,
2432
+ query: {
2433
+ first: 0,
2434
+ rows: this.lastQuery.rows,
2435
+ sortField: this.lastQuery.sortField,
2436
+ sortOrder: this.lastQuery.sortOrder
2437
+ }
2438
+ });
2439
+ }
2440
+ return { ...this.lastQuery };
2441
+ }
2395
2442
  refreshPaginationAndRows(first, rows) {
2396
2443
  this.first = first;
2397
2444
  this.dataTable._first = first;
@@ -8188,6 +8235,15 @@ class WTreeTableComponent {
8188
8235
  get elements() {
8189
8236
  return this._elements;
8190
8237
  }
8238
+ set tableComponent(table) {
8239
+ if (table) {
8240
+ this.treeTable = table;
8241
+ if (this.searchInput) {
8242
+ this.restoringSearchFirst = this.first;
8243
+ table.filterGlobal(this.searchInput, 'contains');
8244
+ }
8245
+ }
8246
+ }
8191
8247
  constructor(confirmationService, dateConversionService, sessionStorage, localStorage) {
8192
8248
  this.confirmationService = confirmationService;
8193
8249
  this.dateConversionService = dateConversionService;
@@ -8200,6 +8256,7 @@ class WTreeTableComponent {
8200
8256
  this.wappDateFormat = WDatePipeFormatType;
8201
8257
  this.first = 0;
8202
8258
  this.sortOrder = 1;
8259
+ this.searchInput = '';
8203
8260
  this.initialPaginationApplied = false;
8204
8261
  this._totalRecords = 0;
8205
8262
  this.rowsPerPage = 0;
@@ -8243,6 +8300,7 @@ class WTreeTableComponent {
8243
8300
  this.originalRowsPerPage = storedPagination.query.rows;
8244
8301
  this.sortField = storedPagination.query.sortField;
8245
8302
  this.sortOrder = storedPagination.query.sortOrder ?? 1;
8303
+ this.searchInput = storedPagination.query.searchInput ?? '';
8246
8304
  }
8247
8305
  else {
8248
8306
  this.first = (this.initialPage - 1) * this.rowsPerPage;
@@ -8257,7 +8315,20 @@ class WTreeTableComponent {
8257
8315
  this.columns = this.wappTreeTableObject.columns;
8258
8316
  }
8259
8317
  filterGlobal(table, event) {
8260
- table.filterGlobal(event.target.value, 'contains');
8318
+ this.restoringSearchFirst = undefined;
8319
+ this.searchInput = event.target.value;
8320
+ table.filterGlobal(this.searchInput, 'contains');
8321
+ }
8322
+ onFilter(table) {
8323
+ this.first = this.restoringSearchFirst ?? table.first;
8324
+ table.first = this.first;
8325
+ this.restoringSearchFirst = undefined;
8326
+ table.updateSerializedValue();
8327
+ this.sortField = table.sortField ?? undefined;
8328
+ this.sortOrder = table.sortOrder;
8329
+ const globalFilter = table.filters['global'];
8330
+ this.searchInput = !Array.isArray(globalFilter) ? globalFilter?.value ?? '' : '';
8331
+ this.savePagination();
8261
8332
  }
8262
8333
  actionButtonClicked(id, element) {
8263
8334
  this.onActionButtonClick.emit({ id: id, element: element });
@@ -8293,7 +8364,8 @@ class WTreeTableComponent {
8293
8364
  id: this.paginationId,
8294
8365
  query: {
8295
8366
  first: this.first, rows: this.rowsPerPage,
8296
- sortField: this.sortField, sortOrder: this.sortOrder
8367
+ sortField: this.sortField, sortOrder: this.sortOrder,
8368
+ searchInput: this.searchInput
8297
8369
  }
8298
8370
  });
8299
8371
  }
@@ -8373,11 +8445,11 @@ class WTreeTableComponent {
8373
8445
  return booleanIconClasses;
8374
8446
  }
8375
8447
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: WTreeTableComponent, deps: [{ token: i1$4.ConfirmationService }, { token: DateConversionService }, { token: SessionStorageService }, { token: LocalStorageService }], target: i0.ɵɵFactoryTarget.Component }); }
8376
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: WTreeTableComponent, isStandalone: false, selector: "w-tree-table", inputs: { elements: "elements", rowsPerPage: "rowsPerPage", initialPage: "initialPage", paginationId: "paginationId", loading: "loading", wappTreeTableObject: "wappTreeTableObject", getChildFunction: "getChildFunction" }, outputs: { onActionButtonClick: "onActionButtonClick", onDeleteElementSelect: "onDeleteElementSelect", onCantDeleteElementWarn: "onCantDeleteElementWarn" }, providers: [TreeDragDropService, MessageService, ConfirmationService], viewQueries: [{ propertyName: "treeTable", first: true, predicate: ["treeTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (wappTreeTableObject) {\r\n <div [class.table-container]=\"wappTreeTableObject.tableContainer\">\r\n @if (!loading && elements) {\r\n <p-treeTable\r\n #treeTable [value]=\"elements\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width': wappTreeTableObject.tableMinWidth!}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [first]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n (onPage)=\"pageChange()\"\r\n (onFilter)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\">\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"'{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\"\r\n [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\" >\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (columnType of wappTreeTableObject.columnTypes!; track $index) {\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n @if (readProperty(rowData, wappTreeTableObject.columns[$index].field)) {\r\n <img\r\n [src]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\"\r\n class=\"element-image-width\"/>\r\n }\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'justify-content-start'\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div class=\"w-table-text-word-break\" [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappPercentage }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappCurrency }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <w-badge [label]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\" [color]=\"'info'\"></w-badge>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass($index, readProperty(rowData, wappTreeTableObject.columns[$index].field))\"></i>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.d }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.D }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.g }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.G }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" type=\"table\" [buttonClass]=\"'w-table-button-add '+ button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"wappTreeTableObject.deleteButtonTooltip!\" tooltipPosition=\"bottom\" type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n } @else {\r\n <p-treeTable\r\n #treeTable [value]=\"tableSkeletons\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width':'50rem'}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\"\r\n stripedRows>\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\">\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <td [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <p-skeleton></p-skeleton>\r\n </td>\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" [buttonClass]=\"'w-table-button-add ' + button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"'Tooltip' \" tooltipPosition=\"bottom\"type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n }\r\n </div>\r\n }\r\n\r\n <p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-table-styles .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-table-styles .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{color:#1f2224}.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}.showing-per-page{color:#9aa0a7;font-weight:400}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-up{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-down{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto}::ng-deep .w-table-styles .p-treetable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-treetable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th:hover{color:#3c4043;background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom{justify-content:normal!important}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-treetable .p-treetable-header{background:#fff!important;border-width:0px!important;padding:0 0 16px!important;font-weight:400!important}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#dadce0;text-align:center}::ng-deep .w-table-styles .p-button.p-button-outlined{color:#e8ebee;border-width:1px}:host ::ng-deep .p-treetable .p-treetable-tbody>tr{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}::ng-deep button{background-color:#fff}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext{border-color:#e8ebee}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.height-input{height:32px}.w-table-styles .p-inputtext{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-table-styles .p-inputtext:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-table-styles .p-inputtext:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-treetable .p-treetable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-treetable .p-treetable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable-scrollable-header-box{padding-right:0!important}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.w-table-buttons{gap:8px}.w-table-text-word-break{word-break:break-word;overflow-wrap:anywhere}\n"], dependencies: [{ kind: "directive", type: i1$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i1$5.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i9.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i11.ConfirmPopup, selector: "p-confirmpopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible", "motionOptions", "appendTo"] }, { kind: "component", type: i11$1.TreeTable, selector: "p-treeTable, p-treetable, p-tree-table", inputs: ["columns", "styleClass", "tableStyle", "tableStyleClass", "autoLayout", "lazy", "lazyLoadOnInit", "paginator", "rows", "first", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "customSort", "selectionMode", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "compareSelectionBy", "rowHover", "loading", "loadingIcon", "showLoader", "scrollable", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "frozenColumns", "resizableColumns", "columnResizeMode", "reorderableColumns", "contextMenu", "rowTrackBy", "filters", "globalFilterFields", "filterDelay", "filterMode", "filterLocale", "paginatorLocale", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "value", "virtualRowHeight", "selectionKeys", "showGridlines"], outputs: ["selectionChange", "contextMenuSelectionChange", "onFilter", "onNodeExpand", "onNodeCollapse", "onPage", "onSort", "onLazyLoad", "sortFunction", "onColResize", "onColReorder", "onNodeSelect", "onNodeUnselect", "onContextMenuSelect", "onHeaderCheckboxToggle", "onEditInit", "onEditComplete", "onEditCancel", "selectionKeysChange"] }, { kind: "component", type: i11$1.TreeTableToggler, selector: "p-treeTableToggler, p-treetabletoggler, p-treetable-toggler", inputs: ["rowNode"] }, { kind: "directive", type: i11$1.TTSortableColumn, selector: "[ttSortableColumn]", inputs: ["ttSortableColumn", "ttSortableColumnDisabled"] }, { kind: "component", type: i11$1.TTSortIcon, selector: "p-treeTableSortIcon, p-treetable-sort-icon, p-tree-table-sort-icon", inputs: ["field", "ariaLabelDesc", "ariaLabelAsc"] }, { kind: "component", type: i13.IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "component", type: i14.InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: WButtonComponent, selector: "w-button", inputs: ["type", "label", "size", "icon", "iconPos", "tooltipPosition", "tooltip", "disabled", "loading", "buttonClass"], outputs: ["onClick"] }, { kind: "component", type: WBadgeComponent, selector: "w-badge", inputs: ["label", "color", "tooltip", "maxWidthOverflow", "icon"] }, { kind: "pipe", type: WDatePipe, name: "wappDate" }, { kind: "pipe", type: WPercentagePipe, name: "wappPercentage" }, { kind: "pipe", type: WCurrencyPipe, name: "wappCurrency" }] }); }
8448
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: WTreeTableComponent, isStandalone: false, selector: "w-tree-table", inputs: { elements: "elements", rowsPerPage: "rowsPerPage", initialPage: "initialPage", paginationId: "paginationId", loading: "loading", wappTreeTableObject: "wappTreeTableObject", getChildFunction: "getChildFunction" }, outputs: { onActionButtonClick: "onActionButtonClick", onDeleteElementSelect: "onDeleteElementSelect", onCantDeleteElementWarn: "onCantDeleteElementWarn" }, providers: [TreeDragDropService, MessageService, ConfirmationService], viewQueries: [{ propertyName: "tableComponent", first: true, predicate: ["treeTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (wappTreeTableObject) {\r\n <div [class.table-container]=\"wappTreeTableObject.tableContainer\">\r\n @if (!loading && elements) {\r\n <p-treeTable\r\n #treeTable [value]=\"elements\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width': wappTreeTableObject.tableMinWidth!}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [first]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n (onPage)=\"pageChange()\"\r\n (onFilter)=\"onFilter(treeTable)\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\">\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n [value]=\"searchInput\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"'{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\"\r\n [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\" >\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (columnType of wappTreeTableObject.columnTypes!; track $index) {\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n @if (readProperty(rowData, wappTreeTableObject.columns[$index].field)) {\r\n <img\r\n [src]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\"\r\n class=\"element-image-width\"/>\r\n }\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'justify-content-start'\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div class=\"w-table-text-word-break\" [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappPercentage }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappCurrency }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <w-badge [label]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\" [color]=\"'info'\"></w-badge>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass($index, readProperty(rowData, wappTreeTableObject.columns[$index].field))\"></i>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.d }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.D }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.g }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.G }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" type=\"table\" [buttonClass]=\"'w-table-button-add '+ button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"wappTreeTableObject.deleteButtonTooltip!\" tooltipPosition=\"bottom\" type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n } @else {\r\n <p-treeTable\r\n #treeTable [value]=\"tableSkeletons\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width':'50rem'}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\"\r\n stripedRows>\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\">\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <td [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <p-skeleton></p-skeleton>\r\n </td>\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" [buttonClass]=\"'w-table-button-add ' + button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"'Tooltip' \" tooltipPosition=\"bottom\"type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n }\r\n </div>\r\n }\r\n\r\n <p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-table-styles .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-table-styles .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{color:#1f2224}.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}.showing-per-page{color:#9aa0a7;font-weight:400}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-up{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-down{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto}::ng-deep .w-table-styles .p-treetable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-treetable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th:hover{color:#3c4043;background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom{justify-content:normal!important}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-treetable .p-treetable-header{background:#fff!important;border-width:0px!important;padding:0 0 16px!important;font-weight:400!important}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#dadce0;text-align:center}::ng-deep .w-table-styles .p-button.p-button-outlined{color:#e8ebee;border-width:1px}:host ::ng-deep .p-treetable .p-treetable-tbody>tr{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}::ng-deep button{background-color:#fff}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext{border-color:#e8ebee}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.height-input{height:32px}.w-table-styles .p-inputtext{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-table-styles .p-inputtext:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-table-styles .p-inputtext:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-treetable .p-treetable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-treetable .p-treetable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable-scrollable-header-box{padding-right:0!important}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.w-table-buttons{gap:8px}.w-table-text-word-break{word-break:break-word;overflow-wrap:anywhere}\n"], dependencies: [{ kind: "directive", type: i1$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pInputTextPT", "pInputTextUnstyled", "pSize", "variant", "fluid", "invalid"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i1$5.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i9.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i11.ConfirmPopup, selector: "p-confirmpopup", inputs: ["key", "defaultFocus", "showTransitionOptions", "hideTransitionOptions", "autoZIndex", "baseZIndex", "style", "styleClass", "visible", "motionOptions", "appendTo"] }, { kind: "component", type: i11$1.TreeTable, selector: "p-treeTable, p-treetable, p-tree-table", inputs: ["columns", "styleClass", "tableStyle", "tableStyleClass", "autoLayout", "lazy", "lazyLoadOnInit", "paginator", "rows", "first", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "customSort", "selectionMode", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "compareSelectionBy", "rowHover", "loading", "loadingIcon", "showLoader", "scrollable", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "frozenColumns", "resizableColumns", "columnResizeMode", "reorderableColumns", "contextMenu", "rowTrackBy", "filters", "globalFilterFields", "filterDelay", "filterMode", "filterLocale", "paginatorLocale", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "value", "virtualRowHeight", "selectionKeys", "showGridlines"], outputs: ["selectionChange", "contextMenuSelectionChange", "onFilter", "onNodeExpand", "onNodeCollapse", "onPage", "onSort", "onLazyLoad", "sortFunction", "onColResize", "onColReorder", "onNodeSelect", "onNodeUnselect", "onContextMenuSelect", "onHeaderCheckboxToggle", "onEditInit", "onEditComplete", "onEditCancel", "selectionKeysChange"] }, { kind: "component", type: i11$1.TreeTableToggler, selector: "p-treeTableToggler, p-treetabletoggler, p-treetable-toggler", inputs: ["rowNode"] }, { kind: "directive", type: i11$1.TTSortableColumn, selector: "[ttSortableColumn]", inputs: ["ttSortableColumn", "ttSortableColumnDisabled"] }, { kind: "component", type: i11$1.TTSortIcon, selector: "p-treeTableSortIcon, p-treetable-sort-icon, p-tree-table-sort-icon", inputs: ["field", "ariaLabelDesc", "ariaLabelAsc"] }, { kind: "component", type: i13.IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["hostName", "iconPosition", "styleClass"] }, { kind: "component", type: i14.InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["hostName", "styleClass"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: WButtonComponent, selector: "w-button", inputs: ["type", "label", "size", "icon", "iconPos", "tooltipPosition", "tooltip", "disabled", "loading", "buttonClass"], outputs: ["onClick"] }, { kind: "component", type: WBadgeComponent, selector: "w-badge", inputs: ["label", "color", "tooltip", "maxWidthOverflow", "icon"] }, { kind: "pipe", type: WDatePipe, name: "wappDate" }, { kind: "pipe", type: WPercentagePipe, name: "wappPercentage" }, { kind: "pipe", type: WCurrencyPipe, name: "wappCurrency" }] }); }
8377
8449
  }
8378
8450
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: WTreeTableComponent, decorators: [{
8379
8451
  type: Component,
8380
- args: [{ selector: 'w-tree-table', providers: [TreeDragDropService, MessageService, ConfirmationService], standalone: false, template: "@if (wappTreeTableObject) {\r\n <div [class.table-container]=\"wappTreeTableObject.tableContainer\">\r\n @if (!loading && elements) {\r\n <p-treeTable\r\n #treeTable [value]=\"elements\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width': wappTreeTableObject.tableMinWidth!}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [first]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n (onPage)=\"pageChange()\"\r\n (onFilter)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\">\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"'{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\"\r\n [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\" >\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (columnType of wappTreeTableObject.columnTypes!; track $index) {\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n @if (readProperty(rowData, wappTreeTableObject.columns[$index].field)) {\r\n <img\r\n [src]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\"\r\n class=\"element-image-width\"/>\r\n }\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'justify-content-start'\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div class=\"w-table-text-word-break\" [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappPercentage }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappCurrency }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <w-badge [label]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\" [color]=\"'info'\"></w-badge>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass($index, readProperty(rowData, wappTreeTableObject.columns[$index].field))\"></i>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.d }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.D }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.g }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.G }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" type=\"table\" [buttonClass]=\"'w-table-button-add '+ button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"wappTreeTableObject.deleteButtonTooltip!\" tooltipPosition=\"bottom\" type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n } @else {\r\n <p-treeTable\r\n #treeTable [value]=\"tableSkeletons\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width':'50rem'}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\"\r\n stripedRows>\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\">\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <td [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <p-skeleton></p-skeleton>\r\n </td>\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" [buttonClass]=\"'w-table-button-add ' + button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"'Tooltip' \" tooltipPosition=\"bottom\"type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n }\r\n </div>\r\n }\r\n\r\n <p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-table-styles .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-table-styles .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{color:#1f2224}.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}.showing-per-page{color:#9aa0a7;font-weight:400}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-up{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-down{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto}::ng-deep .w-table-styles .p-treetable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-treetable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th:hover{color:#3c4043;background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom{justify-content:normal!important}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-treetable .p-treetable-header{background:#fff!important;border-width:0px!important;padding:0 0 16px!important;font-weight:400!important}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#dadce0;text-align:center}::ng-deep .w-table-styles .p-button.p-button-outlined{color:#e8ebee;border-width:1px}:host ::ng-deep .p-treetable .p-treetable-tbody>tr{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}::ng-deep button{background-color:#fff}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext{border-color:#e8ebee}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.height-input{height:32px}.w-table-styles .p-inputtext{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-table-styles .p-inputtext:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-table-styles .p-inputtext:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-treetable .p-treetable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-treetable .p-treetable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable-scrollable-header-box{padding-right:0!important}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.w-table-buttons{gap:8px}.w-table-text-word-break{word-break:break-word;overflow-wrap:anywhere}\n"] }]
8452
+ args: [{ selector: 'w-tree-table', providers: [TreeDragDropService, MessageService, ConfirmationService], standalone: false, template: "@if (wappTreeTableObject) {\r\n <div [class.table-container]=\"wappTreeTableObject.tableContainer\">\r\n @if (!loading && elements) {\r\n <p-treeTable\r\n #treeTable [value]=\"elements\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width': wappTreeTableObject.tableMinWidth!}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [first]=\"first\"\r\n [sortField]=\"sortField\"\r\n [sortOrder]=\"sortOrder\"\r\n (onSort)=\"first = treeTable.first; sortField = treeTable.sortField ?? undefined; sortOrder = treeTable.sortOrder; savePagination()\"\r\n (onPage)=\"pageChange()\"\r\n (onFilter)=\"onFilter(treeTable)\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\">\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n [value]=\"searchInput\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"'{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\"\r\n [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\" >\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (columnType of wappTreeTableObject.columnTypes!; track $index) {\r\n @if (columnType == tableColumnTypes.Image) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n @if (readProperty(rowData, wappTreeTableObject.columns[$index].field)) {\r\n <img\r\n [src]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\"\r\n class=\"element-image-width\"/>\r\n }\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Text) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'justify-content-start'\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div class=\"w-table-text-word-break\" [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Number) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Percentage) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappPercentage }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Currency) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-right'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ readProperty(rowData, wappTreeTableObject.columns[$index].field) | wappCurrency }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Badge) {\r\n <td [style]=\"'width: '+wappTreeTableObject.columnWidths[$index]\"\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <w-badge [label]=\"readProperty(rowData, wappTreeTableObject.columns[$index].field)\" [color]=\"'info'\"></w-badge>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Boolean) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-center'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n <i class=\"pi\" [ngClass]=\"getBooleanColumnClass($index, readProperty(rowData, wappTreeTableObject.columns[$index].field))\"></i>\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.Date) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.ShortDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.d }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.LongDate) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.D }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeShortTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.g }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n @if (columnType == tableColumnTypes.GeneralDateTimeLongTime) {\r\n <td\r\n [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <div [class.flex]=\"$index === 0\" [class.justify-content-between]=\"$index === 0\">\r\n <div [class.align-content-center]=\"$index === 0\">\r\n @if ($index === 0) {\r\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\r\n }\r\n </div>\r\n <div [class.my-auto]=\"$index === 0\">\r\n {{ dateConversionService.formatUTCDate(readProperty(rowData, wappTreeTableObject.columns[$index].field)) | wappDate : wappDateFormat.G }}\r\n </div>\r\n </div>\r\n </td>\r\n }\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" type=\"table\" [buttonClass]=\"'w-table-button-add '+ button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"wappTreeTableObject.deleteButtonTooltip!\" tooltipPosition=\"bottom\" type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n } @else {\r\n <p-treeTable\r\n #treeTable [value]=\"tableSkeletons\"\r\n class=\"w-table-styles\"\r\n [columns]=\"columns\"\r\n [scrollable]=\"true\"\r\n [tableStyle]=\"{'min-width':'50rem'}\"\r\n [loading]=\"loadingElements\"\r\n [showLoader]=\"false\"\r\n [paginator]=\"true\"\r\n [rows]=\"rowsPerPage\"\r\n [rowHover]=\"false\"\r\n [totalRecords]=\"totalRecords\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"wappTreeTableObject.currentPageReportTemplate ? wappTreeTableObject.currentPageReportTemplate + ' ' + rowsPerPage + ' de ' + totalRecords! : 'Showing ' + rowsPerPage + ' of ' + totalRecords!\"\r\n stripedRows>\r\n @if (true) {\r\n <ng-template pTemplate=\"caption\">\r\n <span class=\"flex align-items-center table-paginator p-0\">\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <span class=\"showing-per-page\"> {{wappTreeTableObject.currentPageReportTemplate}} </span>\r\n }\r\n @if (wappTreeTableObject.hasTotalPagingSelector) {\r\n <p-inputnumber\r\n class=\"pl-2 showing-per-page\" size=\"small\" [(ngModel)]=\"rowsPerPage\" [showButtons]=\"true\" [inputStyle]=\"{ width: '3rem' }\"\r\n buttonLayout=\"horizontal\" inputId=\"horizontal\" spinnerMode=\"horizontal\" [step]=\"1\" [min]=\"1\" [max]=\"totalRecords!\"\r\n decrementButtonClass=\"p-button-outlined\"\r\n incrementButtonClass=\"p-button-outlined\"\r\n incrementButtonIcon=\"pi pi-plus\"\r\n decrementButtonIcon=\"pi pi-minus\"\r\n mode=\"decimal\"\r\n (ngModelChange)=\"updateShowingTableRows()\">\r\n </p-inputnumber>\r\n }\r\n <p-iconfield class=\"p-input-icon-left ml-auto\" iconPosition=\"left\" class=\"ml-auto\">\r\n <p-inputicon>\r\n <i class=\"pi pi-search\"></i>\r\n </p-inputicon>\r\n <input\r\n pInputText\r\n type=\"text\"\r\n (input)=\"filterGlobal(treeTable, $event)\"\r\n [placeholder]=\"wappTreeTableObject.searchPlaceholder\" class=\"w-full height-input w-input\"\r\n />\r\n </p-iconfield>\r\n </span>\r\n </ng-template>\r\n }\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <th\r\n class=\"{{col.field}}-field'\"\r\n [ttSortableColumn]=\"col.field\">\r\n <div [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignFlexClass(wappTreeTableObject.columnAlign[$index]) : 'flex justify-content-start'\">\r\n <div>\r\n {{ col.header }}\r\n </div>\r\n <div>\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </div>\r\n </div>\r\n </th>\r\n }\r\n <th class=\"buttons-field\">\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" let-columns=\"columns\">\r\n <tr>\r\n @for (col of columns; track $index) {\r\n <td [ngClass]=\"wappTreeTableObject.columnAlign ? getTableColumnAlignClass(wappTreeTableObject.columnAlign[$index]) : 'text-left'\">\r\n <p-skeleton></p-skeleton>\r\n </td>\r\n }\r\n <td class=\"buttons-field\">\r\n <div class=\"w-table-buttons flex justify-content-end\">\r\n @for (button of wappTreeTableObject.actionButtons; track button) {\r\n <span>\r\n <w-button [icon]=\"button.icon\" (onClick)=\"actionButtonClicked(button.id, rowData)\" [tooltip]=\"button.tooltip!\" [tooltipPosition]=\"button.tooltipPosition!\" [buttonClass]=\"'w-table-button-add ' + button.styleClass!\"></w-button>\r\n </span>\r\n }\r\n @if (wappTreeTableObject.hasDeleteButton) {\r\n <w-button icon=\"pi-trash\" (onClick)=\"confirmDeleteSelected($event, rowData)\" [tooltip]=\"'Tooltip' \" tooltipPosition=\"bottom\"type=\"table\" buttonClass=\"w-table-button-delete\"></w-button>\r\n }\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length\">\r\n {{wappTreeTableObject.noRecordsLabel}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n }\r\n </div>\r\n }\r\n\r\n <p-confirmpopup></p-confirmpopup>\r\n", styles: [".heading1{font-size:2.6666666667rem;line-height:3rem;font-weight:700}.heading2{font-size:2.3333333333rem;line-height:2.6666666667rem;font-weight:700}.heading3{font-size:2rem;line-height:2.3333333333rem;font-weight:700}.heading4{font-size:1.6666666667rem;line-height:2rem;font-weight:700}.heading5,.w-sidebar-title-text{font-size:1.5rem;line-height:1.8333333333rem;font-weight:700}.heading6{font-size:1.3333333333rem;line-height:1.6666666667rem;font-weight:700}.subtitle1,.w-tab-text,.w-panel-title-text{font-size:1.1666666667rem;line-height:1.3333333333rem;font-weight:700}.subtitle2,.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th,.w-panel-subtitle-text,.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled,.w-view-small-label-text-typography,.w-view-small-label-text,.w-button-small-text-label-text-typography,.w-button-small-text-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:600}.body,.w-image-file-uploader-navigators-text,.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr,.w-chip-text,.w-panel-content,.w-input-small-select-options-text,.w-input-small-placeholder-text-typography,.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text,.w-table-styles .p-inputtext,.w-view-small-value-text-typography,.w-view-small-value-text,.w-button-small-label-text-typography,.w-button-small-tertiary-label-text{font-size:1rem;line-height:1.1666666667rem;font-weight:400}.caption,.w-input-success-alert-text{font-size:.6666666667rem;line-height:1rem;font-weight:400}.light,.w-input-small-placeholder-text-only-color{font-size:.9166666667rem;line-height:1.0833333333rem;font-weight:300}.small,.w-error-message,.w-input-error-alert-text,.w-input-warning-alert-text,.w-message-note,.w-button-small-label-text-typography-sm{font-size:.8333333333rem;line-height:1rem;font-weight:400}.textMainColor{color:#1f2224}.textSoftColor{color:#5f6468}.textSofterColor{color:#9aa0a7}.textSoftestColor{color:#e8ebee}.textInverseColor{color:#fff}.spacingXXS{padding:4px}.spacingXSM{padding:6px}.spacingXSMDivider{height:6px}.spacingXS{padding:8px}.spacingS{padding:12px}.spacingM{padding:16px}.spacingL{padding:20px}.spacingXL{padding:24px}.spacingXXL{padding:28px}.spacingXXXL{padding:32px}.panel-title-gap-divider{height:20px}.panel-section-gap-divider{height:32px}.input-vertical-gap-divider{height:24px}.input-label-gap-divider{height:6px}.focusedInput,::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{border:1px solid rgba(0,157,253,.25);box-shadow:0 0 10px #00b3eb40}.focus{box-shadow:0 0 8px #00a6e980}.hover{border-radius:8px;border:1px solid #00b3eb}.hoveredInput{border-radius:8px;border:1px solid rgba(0,179,235,.5)}.input-generic-valid{border-radius:8px;border:1px solid #B3FFD3}.input-generic-valid-focus{border-radius:8px;border:1px solid #B3FFD3!important;box-shadow:0 0 8px #46ff9b80!important;padding-left:16px}.input-generic-warning{border-radius:8px;border:1px solid #FFECB8!important}.input-generic-warning-focus{border-radius:8px;border:1px solid #FFECB8!important;box-shadow:0 0 8px #ffcd4680!important;padding-left:16px}.input-generic-error-focus{border-radius:8px;border:1px solid #FFBDBD!important;box-shadow:0 0 8px #ff555580!important;padding-left:16px}.input-generic-error{border-radius:8px;border:1px solid #FFBDBD}.toggle-small-typography{font-size:12px;line-height:16px;font-weight:600}.w-button-small-label-text-typography,.w-button-small-tertiary-label-text,.w-button-small-label-text-typography-sm{font-weight:600}.w-button-small-tertiary-label-text{color:#5f6468}.w-button-small-text-label-text{color:#1f2224}.w-button-small-icon-text{font-size:12px;font-weight:600}.w-table-button-small-icon-text{font-size:12px;color:#9aa0a7}.w-control-button-small-label-text{font-size:12px;font-weight:600;line-height:16px}.w-control-button-x-small-icon-text{font-size:10px;font-weight:700}.w-control-button-small-icon-text,::ng-deep .w-table-styles .p-checkbox .p-checkbox-box .p-checkbox-icon{font-size:8px;font-weight:700}.w-button-medium-label-text-typography,.w-button-medium-tertiary-label-text{font-size:16px;font-weight:600;line-height:16px}.w-button-medium-tertiary-label-text{color:#1f2224}.w-button-medium-icon-text{font-size:16px}.w-control-button-medium-label-text{font-size:14px;font-weight:600;line-height:16px}.w-control-button-medium-icon-text{font-size:12px;font-weight:700}.w-button-large-label-text-typography,.w-button-large-tertiary-label-text{font-size:20px;font-weight:600;line-height:24px}.w-button-large-tertiary-label-text{color:#1f2224}.w-button-x-small-label-text{font-size:10px;font-weight:600;line-height:10px}.w-button-small-only-label-text{font-size:12px;font-weight:600;line-height:16px}.w-button-large-icon-text{font-size:24px}.w-view-small-label-text{color:#1f2224}.w-view-small-value-text{color:#5f6468}.w-input-no-label-height{height:14px}.w-input-disabled{background-color:#f8f9fa!important;border-color:#e8ebee!important;opacity:.6!important}.w-input-small-label-text-typography,.w-input-small-label-text,.w-input-small-label-disabled{height:fit-content}.w-input-small-label-text,.w-input-small-label-disabled{color:#1f2224}.w-input-small-label-disabled{color:#9aa0a7}.w-input-small-label-text-content{padding:12px 8px 8px 0;margin:0}.w-input-small-label-text-content-no-top{padding-top:0}.w-input-small-placeholder-text,.w-table-styles .p-inputtext{color:#1f2224}.w-input-small-placeholder-text-only-color{color:#9aa0a7;line-height:1.3333333333rem}.w-input-small-placeholder-text-disabled,.w-input-small-placeholder-text-disabled-only-color{color:#5f6468}.w-input-small-text-icon,.w-input-small-select-options-text{color:#1f2224}.w-input-medium-label-text-typography,.w-input-medium-label-text,.w-input-medium-label-disabled{font-size:14px;font-weight:600;line-height:16px}.w-input-medium-label-text,.w-input-medium-label-disabled{color:#1f2224}.w-input-medium-label-disabled{color:#9aa0a7}.w-input-medium-placeholder-text-typography,.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text{font-size:16px;font-weight:400;line-height:24px}.w-input-medium-placeholder-text,.w-input-medium-placeholder-text-only-color{color:#1f2224}.w-input-medium-placeholder-text-disabled,.w-input-medium-placeholder-text-disabled-only-color{color:#5f6468}.w-input-medium-text-icon{color:#1f2224}.w-input-medium-select-options-text{font-size:16px;font-weight:400;line-height:24px;color:#1f2224}.w-input-success-alert-text{color:#00db5d;padding:8px 8px 0;margin-top:0}.w-input-warning-alert-text,.w-message-note{color:#eeae00;padding:0 4px;margin-top:-2px}.w-input-error-alert-text{color:#e50000;padding:0 4px;margin-top:-2px}.w-input-alert-message-height{height:32px}.w-error-message{color:#e50000;padding:0 4px;margin-top:-2px}.w-message-note{font-weight:600;color:#e2a500}.w-sidebar-title-text,.w-panel-title-text,.w-panel-subtitle-text{color:#1f2224}.w-panel-content{color:#5f6468}.w-tab-text,.w-chip-text{color:#1f2224}.w-badge-text{font-size:10px;font-weight:700;line-height:8px}.w-table-th-text,:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{color:#1f2224}.w-table-td-text,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{color:#5f6468}.w-table-height{padding:6px 8px 5px}.w-table-no-buttons-height{padding:16px 8px 15px!important}.w-tree-table-height,:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td,:host ::ng-deep .p-treetable .p-treetable-tbody>tr{padding:8px 8px 7px}.w-image-file-uploader-navigators-text{font-size:12px;color:#fff}.grid{margin:0}::ng-deep .p-tooltip,.p-tooltip{filter:0px 0px 1px 0px rgba(0,0,0,.1) inset,1px 1px 5px rgba(0,0,0,.06),1px 1px 1px rgba(0,0,0,.08)}::ng-deep .p-tooltip .p-tooltip-text,.p-tooltip .p-tooltip-text{background:#fff!important;color:#1f2224;padding:12px 16px;max-width:192px;width:max-content;margin-left:3px;pointer-events:none}::ng-deep .p-tooltip.p-tooltip-left,.p-tooltip.p-tooltip-left{margin-right:6px;width:max-content;transform:translate(-6px)}::ng-deep .p-tooltip.p-tooltip-left .p-tooltip-arrow,.p-tooltip.p-tooltip-left .p-tooltip-arrow{border-left-color:#fff!important;top:50%;right:-3px;margin-top:-4px;border-width:4px 0 4px 6px!important}::ng-deep .p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-right{margin-left:6px;width:max-content;transform:translateY(-1px)}::ng-deep .p-tooltip.p-tooltip-right .p-tooltip-arrow,.p-tooltip.p-tooltip-right .p-tooltip-arrow{border-right-color:#fff!important;top:50%;left:0;margin-top:-4px;border-width:4px 6px 4px 0!important}::ng-deep .p-tooltip.p-tooltip-bottom .p-tooltip-arrow,.p-tooltip.p-tooltip-bottom .p-tooltip-arrow{border-bottom-color:#fff!important;border-width:0 4px 6px 4px!important;margin-top:-3px}.table-container{padding:16px 20px 20px;background-color:#fff;border-radius:8px;box-shadow:0 0 1px #0000001a inset,0 4px 8px #005c7a0d,0 1px 3px #005c7a1a}.showing-per-page{color:#9aa0a7;font-weight:400}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-up{border-radius:8px;border-top-left-radius:0!important;border-bottom-left-radius:0!important}::ng-deep .w-table-styles .showing-per-page .p-button.p-inputnumber-button-down{border-radius:8px;border-top-right-radius:0!important;border-bottom-right-radius:0!important}::ng-deep .w-table-styles .p-paginator-bottom>span:first-child{margin-right:auto}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page{color:#9aa0a7;border-radius:8px;height:32px;width:32px;max-width:32px;min-width:32px;font-size:inherit!important}::ng-deep .w-table-styles .p-paginator{border-width:0;padding:16px 20px 0}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page-selected{background-color:#d6f2ff;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-pages .p-paginator-page:not(.p-highlight):hover{background:#f1f5f9;border-color:transparent;color:#2e3134;height:32px;width:32px;max-width:32px;min-width:32px}::ng-deep .w-table-styles .p-paginator .p-paginator-current{color:#9aa0a7;padding:0;margin-right:auto}::ng-deep .w-table-styles .p-treetable .p-sortable-column .p-sortable-column-icon{color:#1f2224;margin-left:.5rem;font-size:10px!important;transform:translateY(-1px)}::ng-deep .w-table-styles .p-treetable .p-sortable-column.p-highlight:hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable .p-sortable-column:focus{box-shadow:inset 0 0;outline:0 none}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th{background:#fff}:host ::ng-deep .w-table-styles .p-datatable-table-container .p-datatable-table .p-treetable-thead>tr>th:hover{color:#3c4043;background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(odd){background:#fff}:host ::ng-deep .p-treetable .p-treetable-tbody>tr:nth-child(2n){background:#f8f9fa;border-color:#e8ebee}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom{justify-content:normal!important}::ng-deep .w-table-styles .p-treetable .p-paginator-bottom>button{color:#9aa0a7}:host ::ng-deep .p-treetable .p-treetable-header{background:#fff!important;border-width:0px!important;padding:0 0 16px!important;font-weight:400!important}:host ::ng-deep .p-datatable-thead>tr>th.p-datatable-column-sorted{background:#fff;color:#1f2224}::ng-deep .w-table-styles p-inputnumber,.p-inputnumber{height:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down{width:32px}::ng-deep .w-table-styles .p-inputnumber-buttons-horizontal .p-inputnumber-input{border-width:1px 0px 1px 0px;border-color:#e8ebee;color:#dadce0;text-align:center}::ng-deep .w-table-styles .p-button.p-button-outlined{color:#e8ebee;border-width:1px}:host ::ng-deep .p-treetable .p-treetable-tbody>tr{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}:host ::ng-deep .p-treetable .p-treetable-tbody>tr>td{text-align:left;border:1px solid #e2e8f0;border-width:0 0 1px 0}::ng-deep button{background-color:#fff}::ng-deep .w-table-styles .p-checkbox{height:16px;width:16px;border-width:1px}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box{height:16px;width:16px;border-radius:4px;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox .p-checkbox-box.p-highlight{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:hover{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus{background-color:#00b3eb;border:1px solid #e0f5fc}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box:not(.p-highlight).p-focus{background-color:#dadce0;border:1px solid #dadce0}::ng-deep .w-table-styles .p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-highlight:hover{border-color:#00b3eb;background:#00b3eb}::ng-deep .w-table-styles .p-inputtext:enabled:focus{outline:0 none;outline-offset:0;box-shadow:0 0 #000;background-color:#f1f3f4;border-color:#f1f3f4;color:#000}::ng-deep .w-table-styles .p-inputtext:enabled:hover{border-color:#e8ebee}::ng-deep .w-table-styles .p-inputtext{border-color:#e8ebee}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover{color:#e8ebee;border:1px solid;background-color:#f1f3f4}::ng-deep .w-table-styles .p-button.p-button-outlined:enabled:hover>.p-button-icon{color:#1f2224}::ng-deep .w-table-styles .p-button.p-button-outlined>.pi{font-size:.7rem;font-weight:bolder}.height-input{height:32px}.w-table-styles .p-inputtext{border-radius:8px;border-width:1px;border-color:#e8ebee;gap:16px}::-webkit-input-placeholder{color:#5f6468}::-moz-placeholder{color:#5f6468}:-ms-input-placeholder{color:#5f6468}:-moz-placeholder{color:#5f6468}.w-table-styles .p-inputtext:hover{border-radius:8px!important;border:1px solid rgba(0,179,235,.5)!important}.w-table-styles .p-inputtext:focus{border:1px solid rgba(0,157,253,.25)!important;box-shadow:0 0 10px #00b3eb40!important;background-color:transparent!important}.pi-search{left:11px;color:#5f6468!important}.image-header{text-align:center!important}::ng-deep .w-table-styles .p-avatar img{width:32px!important;height:32px!important}:host ::ng-deep .w-table-styles .p-avatar{border:1px solid #e8ebee}::ng-deep .p-treetable .p-treetable-thead>tr>th{padding:16px 8px;border:1px solid #e8ebee;border-width:0px 0px 1px 0px;font-weight:700;color:#000;background:#fff;transition:box-shadow .2s}::ng-deep .p-treetable .p-treetable-tbody>tr{color:#9aa0a7}::ng-deep .p-sortable-column:not(.p-highlight):hover .p-sortable-column-icon{color:#3c4043}::ng-deep .w-table-styles .p-treetable-scrollable-header-box{padding-right:0!important}.element-image-width{max-height:32px;width:auto;vertical-align:middle}.w-table-buttons{gap:8px}.w-table-text-word-break{word-break:break-word;overflow-wrap:anywhere}\n"] }]
8381
8453
  }], ctorParameters: () => [{ type: i1$4.ConfirmationService }, { type: DateConversionService }, { type: SessionStorageService }, { type: LocalStorageService }], propDecorators: { elements: [{
8382
8454
  type: Input,
8383
8455
  args: ['elements']
@@ -8407,7 +8479,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImpor
8407
8479
  }], onCantDeleteElementWarn: [{
8408
8480
  type: Output,
8409
8481
  args: ['onCantDeleteElementWarn']
8410
- }], treeTable: [{
8482
+ }], tableComponent: [{
8411
8483
  type: ViewChild,
8412
8484
  args: ['treeTable']
8413
8485
  }] } });