@gipisistemas/ng-core 1.1.1 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -5410,8 +5410,9 @@
5410
5410
  }(AbstractDTO));
5411
5411
 
5412
5412
  var TableComponent = /** @class */ (function () {
5413
- function TableComponent() {
5414
- this._expandedElements = [];
5413
+ function TableComponent(_ngZone) {
5414
+ this._ngZone = _ngZone;
5415
+ this._expandedRows = [];
5415
5416
  this._scrollHeightCalc = 410;
5416
5417
  this._isPopoverHover = null;
5417
5418
  this._displayedColumns = [];
@@ -5437,10 +5438,11 @@
5437
5438
  this.showColumnExpandableFixed = false;
5438
5439
  this.expandableOneRow = false;
5439
5440
  this.ignoreChildrenExpandRow = false;
5441
+ this.sort = true;
5440
5442
  this.clearSort = false;
5441
5443
  this.sortActive = '';
5442
5444
  this.sortDirection = 'asc';
5443
- this.rowExpandedChange = new core.EventEmitter(true);
5445
+ this.rowExpanded = new core.EventEmitter();
5444
5446
  this.dataChange = new core.EventEmitter(true);
5445
5447
  this.page = new core.EventEmitter();
5446
5448
  this.rowHover = new core.EventEmitter();
@@ -5515,7 +5517,6 @@
5515
5517
  });
5516
5518
  };
5517
5519
  TableComponent.prototype._createDataSource = function () {
5518
- var _this = this;
5519
5520
  var columns = this.columns.filter(function (c) { return c.visible; }).map(function (c) { return c.property; });
5520
5521
  if (!ObjectUtil.isNull(this.expandedRef)) {
5521
5522
  columns = __spread(['expandedColumn'], columns);
@@ -5561,9 +5562,9 @@
5561
5562
  if (this.paginator && !this.backendPagination) {
5562
5563
  this._dataSource.paginator = this.matFrontendPaginator;
5563
5564
  }
5564
- if (!this.groupStartExpanded && (this.groupHeaderRef || (this.expandable && this.expandedRef)) && !ArrayUtil.isEmpty(this._dataSource.data)) {
5565
- this._dataSource.data.forEach(function (row) { return _this.addCollapse(row); });
5566
- }
5565
+ // if (!this.groupStartExpanded && (this.groupHeaderRef || (this.expandable && this.expandedRef)) && !ArrayUtil.isEmpty(this._dataSource.data)) {
5566
+ // this._dataSource.data.forEach(row => this.addCollapse(row));
5567
+ // }
5567
5568
  };
5568
5569
  TableComponent.prototype.calcScrollHeight = function () {
5569
5570
  if ((this._dataSource && (this._dataSource.data.length > 0)) && (Math.floor(this._scrollHeightCalc) <= 700)) {
@@ -5575,26 +5576,24 @@
5575
5576
  pageEvent.paginatorPageSizeOptions = ArrayUtil.isEmpty(pageEvent.paginatorPageSizeOptions) ? this.paginatorPageSizeOptions : pageEvent.paginatorPageSizeOptions;
5576
5577
  this.page.emit(pageEvent);
5577
5578
  };
5578
- TableComponent.prototype.isExpansed = function (element) {
5579
- return this._expandedElements.filter(function (e) { return ObjectUtil.equals(e, element); }).length > 0;
5580
- };
5581
- TableComponent.prototype.removeCollapse = function (element) {
5582
- var _this = this;
5583
- if (this.expandableOneRow) {
5584
- this._dataSource.data.forEach(function (row) { return _this.addCollapse(row); });
5579
+ TableComponent.prototype.isExpandedRow = function (row) {
5580
+ if (ArrayUtil.isEmpty(this._expandedRows)) {
5581
+ return rxjs.of(false);
5585
5582
  }
5586
- var expandedElementsAux = ArrayUtil.clone(this._expandedElements);
5587
- expandedElementsAux.splice(this._expandedElements.indexOf(element), 1);
5588
- this._expandedElements = ArrayUtil.clone(expandedElementsAux);
5583
+ var index = this._expandedRows.findIndex(function (r) { return r === row; });
5584
+ return rxjs.of(index >= 0);
5589
5585
  };
5590
- TableComponent.prototype.addCollapse = function (element) {
5591
- var collapsedElement = this._expandedElements.filter(function (e) { return ObjectUtil.equals(e, element); }).length > 0;
5592
- if (!collapsedElement) {
5593
- this._expandedElements.push(element);
5586
+ TableComponent.prototype.toggleExpandRow = function (row) {
5587
+ var index = this._expandedRows.findIndex(function (r) { return r === row; });
5588
+ if (ArrayUtil.isEmpty(this._expandedRows) || (index < 0)) {
5589
+ this._expandedRows = [row];
5590
+ this.rowExpanded.emit(row);
5591
+ return;
5594
5592
  }
5595
- };
5596
- TableComponent.prototype.rowExpandedChangeEmit = function (element) {
5597
- this.rowExpandedChange.emit(element);
5593
+ var _expandedRowsAux = ArrayUtil.clone(this._expandedRows);
5594
+ _expandedRowsAux.splice(index, 1);
5595
+ this._expandedRows = ArrayUtil.clone(_expandedRowsAux);
5596
+ this.rowExpanded.emit(null);
5598
5597
  };
5599
5598
  TableComponent.prototype.sortData = function (sort) {
5600
5599
  if (this.infiniteScroll) {
@@ -5613,45 +5612,99 @@
5613
5612
  });
5614
5613
  };
5615
5614
  TableComponent.prototype.showPopover = function (event, data) {
5615
+ var _this = this;
5616
5616
  var popover = document.getElementById('table-popover');
5617
5617
  if (!ObjectUtil.isNull(popover)) {
5618
5618
  popover.style.visibility = 'hidden';
5619
5619
  if (!this.loading) {
5620
- var domRectPopover = popover.getBoundingClientRect();
5621
- var domRectRow = event.currentTarget.getBoundingClientRect();
5622
- var cells = event.currentTarget.children;
5620
+ this._ngZone.runOutsideAngular(function () {
5621
+ var domRectPopover = popover.getBoundingClientRect();
5622
+ var domRectRow = event.currentTarget.getBoundingClientRect();
5623
+ var cells = event.currentTarget.children;
5624
+ if (domRectPopover && domRectRow) {
5625
+ popover.style.visibility = 'visible';
5626
+ popover.style.top = (domRectRow.top + domRectRow.height) - 1 + "px";
5627
+ var startPosition_1 = 0;
5628
+ var endPosition_1 = 0;
5629
+ if (_this.columnInitial && (_this.columnInitial >= 0)) {
5630
+ if (!cells[_this.columnInitial]) {
5631
+ throw new Error('Initial column undefined or null');
5632
+ }
5633
+ startPosition_1 = cells[_this.columnInitial].getBoundingClientRect().left;
5634
+ }
5635
+ else {
5636
+ startPosition_1 = domRectRow.left;
5637
+ }
5638
+ if (_this.columnFinal && (_this.columnFinal >= 0)) {
5639
+ if (!cells[_this.columnFinal]) {
5640
+ throw new Error('Final column undefined or null');
5641
+ }
5642
+ endPosition_1 = cells[_this.columnFinal].getBoundingClientRect().left - domRectPopover.width;
5643
+ }
5644
+ else {
5645
+ endPosition_1 = domRectRow.right - domRectPopover.width;
5646
+ }
5647
+ _this._ngZone.run(function () {
5648
+ if (event.clientX > startPosition_1 + 15 && event.clientX < endPosition_1) {
5649
+ popover.style.left = event.clientX - 15 + "px";
5650
+ }
5651
+ else if (event.clientX <= startPosition_1) {
5652
+ popover.style.left = startPosition_1 + "px";
5653
+ }
5654
+ else if (event.clientX >= endPosition_1) {
5655
+ popover.style.left = endPosition_1 + "px";
5656
+ }
5657
+ });
5658
+ }
5659
+ });
5660
+ }
5661
+ }
5662
+ this.rowHover.emit(data);
5663
+ this._contextPopover = data;
5664
+ };
5665
+ /**
5666
+ showPopover(event: MouseEvent, data: any): void {
5667
+ const popover: HTMLElement = document.getElementById('table-popover');
5668
+ if (!ObjectUtil.isNull(popover)) {
5669
+ popover.style.visibility = 'hidden';
5670
+
5671
+ if (!this.loading) {
5672
+ const domRectPopover = popover.getBoundingClientRect();
5673
+ const domRectRow = (event.currentTarget as HTMLElement).getBoundingClientRect();
5674
+ const cells = (event.currentTarget as HTMLTableRowElement).children;
5675
+
5623
5676
  if (domRectPopover && domRectRow) {
5624
5677
  popover.style.visibility = 'visible';
5625
- popover.style.top = (domRectRow.top + domRectRow.height) - 1 + "px";
5626
- var startPosition_1 = 0;
5627
- var endPosition_1 = 0;
5678
+ popover.style.top = `${(domRectRow.top + domRectRow.height) - 1}px`;
5679
+
5680
+ let startPosition: number = 0;
5681
+ let endPosition: number = 0;
5682
+
5628
5683
  if (this.columnInitial && (this.columnInitial >= 0)) {
5629
5684
  if (!cells[this.columnInitial]) {
5630
5685
  throw new Error('Initial column undefined or null');
5631
5686
  }
5632
- startPosition_1 = cells[this.columnInitial].getBoundingClientRect().left;
5633
- }
5634
- else {
5635
- startPosition_1 = domRectRow.left;
5687
+ startPosition = cells[this.columnInitial].getBoundingClientRect().left;
5688
+ } else {
5689
+ startPosition = domRectRow.left;
5636
5690
  }
5691
+
5637
5692
  if (this.columnFinal && (this.columnFinal >= 0)) {
5638
5693
  if (!cells[this.columnFinal]) {
5639
5694
  throw new Error('Final column undefined or null');
5640
5695
  }
5641
- endPosition_1 = cells[this.columnFinal].getBoundingClientRect().left - domRectPopover.width;
5642
- }
5643
- else {
5644
- endPosition_1 = domRectRow.right - domRectPopover.width;
5696
+ endPosition = cells[this.columnFinal].getBoundingClientRect().left - domRectPopover.width;
5697
+ } else {
5698
+ endPosition = domRectRow.right - domRectPopover.width;
5645
5699
  }
5646
- setTimeout(function () {
5647
- if (event.clientX > startPosition_1 + 15 && event.clientX < endPosition_1) {
5648
- popover.style.left = event.clientX - 15 + "px";
5649
- }
5650
- else if (event.clientX <= startPosition_1) {
5651
- popover.style.left = startPosition_1 + "px";
5652
- }
5653
- else if (event.clientX >= endPosition_1) {
5654
- popover.style.left = endPosition_1 + "px";
5700
+
5701
+ setTimeout(() => {
5702
+ if (event.clientX > startPosition + 15 && event.clientX < endPosition) {
5703
+ popover.style.left = `${event.clientX - 15}px`;
5704
+ } else if (event.clientX <= startPosition) {
5705
+ popover.style.left = `${startPosition}px`;
5706
+ } else if (event.clientX >= endPosition) {
5707
+ popover.style.left = `${endPosition}px`;
5655
5708
  }
5656
5709
  });
5657
5710
  }
@@ -5659,7 +5712,8 @@
5659
5712
  }
5660
5713
  this.rowHover.emit(data);
5661
5714
  this._contextPopover = data;
5662
- };
5715
+ }
5716
+ */
5663
5717
  TableComponent.prototype.closePopover = function (time) {
5664
5718
  var _this = this;
5665
5719
  rxjs.of(null).pipe(operators.delay(time)).subscribe(function () {
@@ -5727,6 +5781,9 @@
5727
5781
  this.paginatorPageIndex += 1;
5728
5782
  }
5729
5783
  };
5784
+ TableComponent.ctorParameters = function () { return [
5785
+ { type: core.NgZone }
5786
+ ]; };
5730
5787
  __decorate([
5731
5788
  core.ViewChild(material.MatSort, { static: true }),
5732
5789
  __metadata("design:type", material.MatSort)
@@ -5892,6 +5949,10 @@
5892
5949
  core.Input(),
5893
5950
  __metadata("design:type", Boolean)
5894
5951
  ], TableComponent.prototype, "ignoreChildrenExpandRow", void 0);
5952
+ __decorate([
5953
+ core.Input(),
5954
+ __metadata("design:type", Boolean)
5955
+ ], TableComponent.prototype, "sort", void 0);
5895
5956
  __decorate([
5896
5957
  core.Input(),
5897
5958
  __metadata("design:type", Boolean)
@@ -5907,7 +5968,7 @@
5907
5968
  __decorate([
5908
5969
  core.Output(),
5909
5970
  __metadata("design:type", core.EventEmitter)
5910
- ], TableComponent.prototype, "rowExpandedChange", void 0);
5971
+ ], TableComponent.prototype, "rowExpanded", void 0);
5911
5972
  __decorate([
5912
5973
  core.Output(),
5913
5974
  __metadata("design:type", core.EventEmitter)
@@ -5923,7 +5984,7 @@
5923
5984
  TableComponent = __decorate([
5924
5985
  core.Component({
5925
5986
  selector: 'itss-table',
5926
- template: "<div [class.box-shadow]=\"shadow\"\n [style.height]=\"(matTableHeigth | async)\"\n style=\"background: transparent !important;\"\n fxLayout=\"column\"\n fxFlex>\n\n <itss-table-scrolled [more]=\"hasMore()\"\n [scrollOffset]=\"scrollOffset\"\n [scrollDelay]=\"scrollDelay\"\n (scrolled)=\"handleScroll($event)\"\n [ngStyle]=\"{'flex-basis': scrollHeigth ? scrollHeigth + 'px' : _scrollHeightCalc + 'px' }\"\n *ngIf=\"infiniteScroll; else table\">\n <ng-template *ngTemplateOutlet=\"table\"> </ng-template>\n </itss-table-scrolled>\n\n <ng-template #table>\n <mat-table matSort\n multiTemplateDataRows\n [dataSource]=\"_dataSource\"\n [matSortDisabled]=\"!clearSort\"\n [matSortDisableClear]=\"!clearSort\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection?.toLocaleLowerCase()\"\n (matSortChange)=\"sortData($event)\"\n (mouseleave)=\"_isPopoverHover = false; closePopover(0)\">\n\n <ng-container *ngIf=\"expandedRef\"\n cdkColumnDef=\"expandedColumn\">\n <mat-header-cell fxFlex=\"5\"\n fxLayoutAlign=\"end center\"\n *cdkHeaderCellDef>\n </mat-header-cell>\n <mat-cell fxFlex=\"5\"\n fxLayoutAlign=\"end center\"\n *cdkCellDef=\"let row\">\n <itss-button [icon]=\"isExpansed(row) ? 'chevron_right' : 'expand_more'\"\n *ngIf=\"((row?.children) && (row.children.length > 0)) || (row?.expandable) || showColumnExpandableFixed\"\n color=\"primary\"\n type=\"icon\"\n tooltip=\"Expandir | Retrair\"\n (click)=\"(isExpansed(row) ? removeCollapse(row) : addCollapse(row)); rowExpandedChangeEmit(row)\">\n </itss-button>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngFor=\"let column of columns\"\n [cdkColumnDef]=\"column.property\">\n <div *ngIf=\"column.sortable\">\n <mat-header-cell [fxFlex]=\"column.width | async\"\n [fxLayoutAlign]=\"column.align\"\n [ngStyle]=\"{'padding-left': column.sortable && column.align !== '' && (column.align.toLowerCase() === 'center' || column.align.toLowerCase() === 'center center') ? '15px' : '' }\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n *cdkHeaderCellDef\n mat-sort-header>\n {{ column.name }}\n </mat-header-cell>\n </div>\n <div *ngIf=\"!column.sortable\">\n <mat-header-cell [fxFlex]=\"column.width | async\"\n [fxHide.lt-md]=\"column.hiddenSm\"\n [fxLayoutAlign]=\"column.align\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n *cdkHeaderCellDef>\n <ng-container *ngIf=\"column.name; else templateHeader\">\n {{ column.name }}\n </ng-container>\n\n <ng-template #templateHeader>\n <ng-container *ngIf=\"column.templateHeader\">\n <ng-container [ngTemplateOutlet]=\"column.templateHeader\"\n [ngTemplateOutletContext]=\"{$implicit: data}\">\n </ng-container>\n </ng-container>\n </ng-template>\n </mat-header-cell>\n </div>\n <mat-cell [fxFlex]=\"column.width | async\"\n [fxHide.lt-md]=\"column.hiddenSm\"\n [fxHide]=\"!column.visible\"\n [fxLayoutAlign]=\"column.align\"\n [class.mat-cell-pointer]=\"column.action\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n (click)=\"column.action ? column.action(row) : null\"\n *cdkCellDef=\"let row\">\n <ng-container *ngIf=\"column.value; else template\">\n {{ (column.value(row) && (column.value(row).length > (column.sliceLength ? column.sliceLength :\n 50)))\n ? (column.value(row) | slice:0:(column.sliceLength ? column.sliceLength : 50)) + '...'\n : column.value(row) }}\n </ng-container>\n\n <ng-template #template>\n <ng-container *ngIf=\"column.template\">\n <ng-container [ngTemplateOutlet]=\"column.template\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-container>\n </ng-container>\n </ng-template>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"actionsRef\"\n cdkColumnDef=\"actionsColumn\">\n <mat-header-cell fxFlex.gt-md=\"15\"\n fxLayoutAlign=\"center center\"\n *cdkHeaderCellDef>\n A\u00E7\u00F5es\n </mat-header-cell>\n <mat-cell fxFlex=\"15\"\n fxLayoutAlign=\"center center\"\n *cdkCellDef=\"let row\">\n <ng-template [ngTemplateOutlet]=\"actionsRef\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-template>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"expandedRef\"\n matColumnDef=\"expandedDetail\">\n <mat-cell *matCellDef=\"let row\"\n fxFlexFill\n class=\"cell-element-detail\">\n <div class=\"element-detail\"\n *ngIf=\"!ignoreChildrenExpandRow ? (row.children.length > 0) : ignoreChildrenExpandRow\"\n [ngClass]=\"{'collapsed': isExpansed(row), 'expanded': !isExpansed(row)}\">\n <ng-template [ngTemplateOutlet]=\"expandedRef\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"groupByColumn && groupHeaderRef\"\n matColumnDef=\"groupHeader\">\n <mat-cell fxFlex\n [attr.colspan]=\"columns.length\"\n *matCellDef=\"let rowGroup\"\n style=\"cursor: pointer;\"\n [class.group-header-cell-expanded]=\"!isExpansed(rowGroup)\"\n [class.group-header-cell-collapsed]=\"isExpansed(rowGroup)\"\n (click)=\"isExpansed(rowGroup) ? removeCollapse(rowGroup) : addCollapse(rowGroup)\">\n <div class=\"group-header-cell\">\n <itss-button *ngIf=\"rowGroup.childrenGroup.length > 0\"\n [icon]=\"isExpansed(rowGroup) ? 'chevron_right' : 'expand_more'\"\n style.margin-right=\"1.25rem\"\n color=\"primary\"\n type=\"icon\"\n tooltip=\"Expandir | Retrair\"\n (click)=\"isExpansed(rowGroup) ? removeCollapse(rowGroup) : addCollapse(rowGroup)\">\n </itss-button>\n\n <ng-template [ngTemplateOutlet]=\"groupHeaderRef\"\n [ngTemplateOutletContext]=\"{$implicit: rowGroup}\">\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"groupByColumn && groupHeaderRef\"\n matColumnDef=\"expandedGroupHeader\">\n <mat-cell *matCellDef=\"let rowGroup\"\n fxFlexFill>\n <div class=\"element-detail\"\n *ngIf=\"rowGroup.childrenGroup.length > 0\"\n [ngClass]=\"{'collapsed': isExpansed(rowGroup), 'expanded': !isExpansed(rowGroup)}\">\n\n <itss-table *ngIf=\"rowGroup.childrenGroup.length > 0; else noChildrenGroup\"\n [paginator]=\"false\"\n [shadow]=\"false\"\n [showHeader]=\"false\"\n [columns]=\"columns\"\n [data]=\"rowGroup.childrenGroup\"\n class=\"table-level-1\"\n fxFlexFill>\n <ng-template #footer\n *ngIf=\"groupByColumn && groupHeaderRef && groupFooterRef\">\n <ng-template [ngTemplateOutlet]=\"groupFooterRef\"\n [ngTemplateOutletContext]=\"{$implicit: rowGroup}\">\n </ng-template>\n </ng-template>\n </itss-table>\n\n <ng-template #noChildrenGroup>\n <div *ngIf=\"!loading\"\n class=\"no-records\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n <span>Nenhum registro foi encontrado</span>\n </div>\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <mat-header-row #matHeaderRow\n (mouseenter)=\"_isPopoverHover = false; closePopover(0)\"\n *matHeaderRowDef=\"_displayedColumns; sticky: headerSticky || groupHeaderSticky\"\n [ngClass]=\"{ 'hidden-header': !showHeader }\">\n </mat-header-row>\n\n <div *ngIf=\"!loading && !expandable && !actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row (mouseover)=\"rowHover.emit(row)\"\n *matRowDef=\"let row; columns: _displayedColumns;\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && !expandable && actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row #rowTemplate\n *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n (mousemove)=\"showPopover($event, row)\"\n [class.hoversimulator]=\"_contextPopover === row\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && expandable && !actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n (mouseover)=\"rowHover.emit(row)\"\n [class.expanded-row]=\"_expandedElement === row\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedDetail'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_expand'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && expandable && actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row #rowTemplate\n *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n (mousemove)=\"showPopover($event, row)\"\n [class.hoversimulator]=\"_contextPopover === row\"\n [class.expanded-row]=\"_expandedElement === row\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedDetail'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_expand'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && !expandable && !actionsPopoverRef && groupByColumn && groupHeaderRef\">\n <mat-row *matRowDef=\"let row; columns: ['groupHeader'];\"\n class=\"element-row\"\n (mouseover)=\"rowHover.emit(row)\"\n [class.expanded-row]=\"_expandedElement === row\"\n [class.group-header-sticky]=\"groupHeaderSticky\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedGroupHeader'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_group'+ getIndexRow(row)\">\n </mat-row>\n </div>\n </mat-table>\n\n <mat-progress-bar mode=\"indeterminate\"\n color=\"accent\"\n *ngIf=\"loading\">\n </mat-progress-bar>\n\n <div *ngIf=\"!loading && (data && (data.length > 0)) && footerRef\"\n class=\"footer-row\"\n fxLayout=\"column\"\n fxLayoutGap=\"10px\">\n <ng-template [ngTemplateOutlet]=\"footerRef\"\n [ngTemplateOutletContext]=\"{$implicit: data}\">\n </ng-template>\n </div>\n\n <div *ngIf=\"!loading && (data && (data.length <= 0))\"\n class=\"no-records\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n <span>Nenhum registro foi encontrado</span>\n </div>\n\n <ng-container *ngIf=\"!loading && paginator && (data && (data.length > 0))\">\n <ng-container #backendPaginatorTemplate\n *ngIf=\"backendPagination && !infiniteScroll\">\n <mat-paginator #backendPaginator\n [hidePageSize]=\"!showPageSizeOptions || (paginatorPageSizeOptions && (paginatorPageSizeOptions.length <= 0))\"\n [length]=\"paginatorLength\"\n [pageIndex]=\"paginatorPageIndex\"\n [pageSize]=\"paginatorPageSize\"\n [pageSizeOptions]=\"paginatorPageSizeOptions\"\n (page)=\"onPage($event)\"\n (mouseenter)=\"closePopover(0)\"\n showFirstLastButtons>\n </mat-paginator>\n </ng-container>\n\n <ng-container #frontendPaginatorTemplate\n *ngIf=\"!backendPagination && !infiniteScroll\">\n <mat-paginator #frontendPaginator\n [hidePageSize]=\"!showPageSizeOptions || (paginatorPageSizeOptions && (paginatorPageSizeOptions.length <= 0))\"\n [length]=\"paginatorLength\"\n [pageIndex]=\"paginatorPageIndex\"\n [pageSize]=\"paginatorPageSize\"\n [pageSizeOptions]=\"paginatorPageSizeOptions\"\n (page)=\"onPage($event)\"\n showFirstLastButtons>\n </mat-paginator>\n </ng-container>\n </ng-container>\n\n <ng-container #infiniteScrollPaginatorTemplate\n *ngIf=\"infiniteScroll && (data && (data.length > 0))\">\n <span class=\"infinite-scroll-paginator\">\n 1 - {{ data.length }} de {{ paginatorLength }}\n </span>\n </ng-container>\n </ng-template>\n</div>\n\n<div id=\"table-popover\"\n class=\"table-popover\"\n (mouseover)=\"_isPopoverHover = true\"\n (mouseout)=\"_isPopoverHover = false; closePopover(0)\"\n *ngIf=\"!loading && actionsPopoverRef\">\n <ng-container [ngTemplateOutlet]=\"actionsPopoverRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _contextPopover }\">\n </ng-container>\n</div>",
5987
+ template: "<div [class.box-shadow]=\"shadow\"\n [style.height]=\"(matTableHeigth | async)\"\n style=\"background: transparent !important;\"\n fxLayout=\"column\"\n fxFlex>\n\n <itss-table-scrolled [more]=\"hasMore()\"\n [scrollOffset]=\"scrollOffset\"\n [scrollDelay]=\"scrollDelay\"\n (scrolled)=\"handleScroll($event)\"\n [ngStyle]=\"{'flex-basis': scrollHeigth ? scrollHeigth + 'px' : _scrollHeightCalc + 'px' }\"\n *ngIf=\"infiniteScroll; else table\">\n <ng-template *ngTemplateOutlet=\"table\"> </ng-template>\n </itss-table-scrolled>\n\n <ng-template #table>\n <mat-table matSort\n multiTemplateDataRows\n [dataSource]=\"_dataSource\"\n [matSortDisabled]=\"!sort\"\n [matSortDisableClear]=\"!clearSort\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection?.toLocaleLowerCase()\"\n (matSortChange)=\"sortData($event)\"\n (mouseleave)=\"_isPopoverHover = false; closePopover(0)\">\n\n <ng-container *ngIf=\"expandedRef\"\n cdkColumnDef=\"expandedColumn\">\n <mat-header-cell fxFlex=\"5\"\n fxLayoutAlign=\"end center\"\n *cdkHeaderCellDef>\n </mat-header-cell>\n <mat-cell fxFlex=\"5\"\n fxLayoutAlign=\"end center\"\n *cdkCellDef=\"let row\">\n <itss-button tooltip=\"Expandir | Retrair\"\n color=\"primary\"\n type=\"icon\"\n *ngIf=\"((row?.children) && (row.children.length > 0)) || (row?.expandable) || showColumnExpandableFixed\"\n [icon]=\"(isExpandedRow(row) | async) ? 'expand_more' : 'chevron_right'\"\n (click)=\"toggleExpandRow(row)\">\n </itss-button>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngFor=\"let column of columns\"\n [cdkColumnDef]=\"column.property\">\n <div *ngIf=\"column.sortable\">\n <mat-header-cell [fxFlex]=\"column.width | async\"\n [fxLayoutAlign]=\"column.align\"\n [ngStyle]=\"{'padding-left': column.sortable && column.align !== '' && (column.align.toLowerCase() === 'center' || column.align.toLowerCase() === 'center center') ? '15px' : '' }\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n *cdkHeaderCellDef\n mat-sort-header>\n {{ column.name }}\n </mat-header-cell>\n </div>\n <div *ngIf=\"!column.sortable\">\n <mat-header-cell [fxFlex]=\"column.width | async\"\n [fxHide.lt-md]=\"column.hiddenSm\"\n [fxLayoutAlign]=\"column.align\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n *cdkHeaderCellDef>\n <ng-container *ngIf=\"column.name; else templateHeader\">\n {{ column.name }}\n </ng-container>\n\n <ng-template #templateHeader>\n <ng-container *ngIf=\"column.templateHeader\">\n <ng-container [ngTemplateOutlet]=\"column.templateHeader\"\n [ngTemplateOutletContext]=\"{$implicit: data}\">\n </ng-container>\n </ng-container>\n </ng-template>\n </mat-header-cell>\n </div>\n <mat-cell [fxFlex]=\"column.width | async\"\n [fxHide.lt-md]=\"column.hiddenSm\"\n [fxHide]=\"!column.visible\"\n [fxLayoutAlign]=\"column.align\"\n [class.mat-cell-pointer]=\"column.action\"\n [style.padding-left.px]=\"column.marginLeft | async\"\n [style.padding-right.px]=\"column.marginRight | async\"\n (click)=\"column.action ? column.action(row) : null\"\n *cdkCellDef=\"let row\">\n <ng-container *ngIf=\"column.value; else template\">\n {{ (column.value(row) && (column.value(row).length > (column.sliceLength ? column.sliceLength :\n 50)))\n ? (column.value(row) | slice:0:(column.sliceLength ? column.sliceLength : 50)) + '...'\n : column.value(row) }}\n </ng-container>\n\n <ng-template #template>\n <ng-container *ngIf=\"column.template\">\n <ng-container [ngTemplateOutlet]=\"column.template\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-container>\n </ng-container>\n </ng-template>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"actionsRef\"\n cdkColumnDef=\"actionsColumn\">\n <mat-header-cell fxFlex.gt-md=\"15\"\n fxLayoutAlign=\"center center\"\n *cdkHeaderCellDef>\n A\u00E7\u00F5es\n </mat-header-cell>\n <mat-cell fxFlex=\"15\"\n fxLayoutAlign=\"center center\"\n *cdkCellDef=\"let row\">\n <ng-template [ngTemplateOutlet]=\"actionsRef\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-template>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"expandedRef\"\n matColumnDef=\"expandedDetail\">\n <mat-cell *matCellDef=\"let row\"\n fxFlexFill\n class=\"cell-element-detail\">\n <div class=\"element-detail\"\n *ngIf=\"!ignoreChildrenExpandRow ? (row.children.length > 0) : ignoreChildrenExpandRow\"\n [class.collapsed]=\"!(isExpandedRow(row) | async)\"\n [class.expanded]=\"(isExpandedRow(row) | async)\">\n <ng-template [ngTemplateOutlet]=\"expandedRef\"\n [ngTemplateOutletContext]=\"{$implicit: row}\">\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"groupByColumn && groupHeaderRef\"\n matColumnDef=\"groupHeader\">\n <mat-cell fxFlex\n [attr.colspan]=\"columns.length\"\n *matCellDef=\"let rowGroup\"\n style=\"cursor: pointer;\"\n [class.group-header-cell-collapsed]=\"!(isExpandedRow(rowGroup) | async)\"\n [class.group-header-cell-expanded]=\"(isExpandedRow(rowGroup) | async)\"\n (click)=\"toggleExpandRow(rowGroup)\">\n <div class=\"group-header-cell\">\n <itss-button *ngIf=\"rowGroup.childrenGroup.length > 0\"\n [icon]=\"(isExpandedRow(rowGroup) | async) ? 'expand_more' : 'chevron_right'\"\n style.margin-right=\"1.25rem\"\n color=\"primary\"\n type=\"icon\"\n tooltip=\"Expandir | Retrair\">\n </itss-button>\n\n <ng-template [ngTemplateOutlet]=\"groupHeaderRef\"\n [ngTemplateOutletContext]=\"{$implicit: rowGroup}\">\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <ng-container *ngIf=\"groupByColumn && groupHeaderRef\"\n matColumnDef=\"expandedGroupHeader\">\n <mat-cell *matCellDef=\"let rowGroup\"\n fxFlexFill>\n <div class=\"element-detail\"\n *ngIf=\"rowGroup.childrenGroup.length > 0\"\n [class.collapsed]=\"!(isExpandedRow(rowGroup) | async)\"\n [class.expanded]=\"(isExpandedRow(rowGroup) | async)\">\n\n <itss-table *ngIf=\"rowGroup.childrenGroup.length > 0; else noChildrenGroup\"\n [paginator]=\"false\"\n [shadow]=\"false\"\n [showHeader]=\"false\"\n [columns]=\"columns\"\n [data]=\"rowGroup.childrenGroup\"\n class=\"table-level-1\"\n fxFlexFill>\n <ng-template #footer\n *ngIf=\"groupByColumn && groupHeaderRef && groupFooterRef\">\n <ng-template [ngTemplateOutlet]=\"groupFooterRef\"\n [ngTemplateOutletContext]=\"{$implicit: rowGroup}\">\n </ng-template>\n </ng-template>\n </itss-table>\n\n <ng-template #noChildrenGroup>\n <div *ngIf=\"!loading\"\n class=\"no-records\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n <span>Nenhum registro foi encontrado</span>\n </div>\n </ng-template>\n </div>\n </mat-cell>\n </ng-container>\n\n <mat-header-row #matHeaderRow\n (mouseenter)=\"_isPopoverHover = false; closePopover(0)\"\n *matHeaderRowDef=\"_displayedColumns; sticky: headerSticky || groupHeaderSticky\"\n [ngClass]=\"{ 'hidden-header': !showHeader }\">\n </mat-header-row>\n\n <div *ngIf=\"!loading && !expandable && !actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row (mouseover)=\"rowHover.emit(row)\"\n *matRowDef=\"let row; columns: _displayedColumns;\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && !expandable && actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row #rowTemplate\n *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n (mousemove)=\"showPopover($event, row)\"\n [class.hoversimulator]=\"_contextPopover === row\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && expandable && !actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n [class.expanded-row]=\"(isExpandedRow(row) | async)\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\"\n (mouseover)=\"rowHover.emit(row)\"\n (click)=\"toggleExpandRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedDetail'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_expand'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && expandable && actionsPopoverRef && !groupByColumn && !groupHeaderRef\">\n <mat-row #rowTemplate\n *matRowDef=\"let row; columns: _displayedColumns;\"\n class=\"element-row\"\n [class.hoversimulator]=\"_contextPopover === row\"\n [class.expanded-row]=\"(isExpandedRow(row) | async)\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\"\n (mousemove)=\"showPopover($event, row)\"\n (click)=\"toggleExpandRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedDetail'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_expand'+ getIndexRow(row)\">\n </mat-row>\n </div>\n\n <div *ngIf=\"!loading && !expandable && !actionsPopoverRef && groupByColumn && groupHeaderRef\">\n <mat-row *matRowDef=\"let row; columns: ['groupHeader'];\"\n class=\"element-row\"\n [class.expanded-row]=\"(isExpandedRow(row) | async)\"\n [class.group-header-sticky]=\"groupHeaderSticky\"\n [ngClass]=\"{ 'hoversimulator': row.isMouseHover === true }\"\n [class.highlight]=\"getHighlightRow(row)\"\n [attr.id]=\"'row_'+ getIndexRow(row)\"\n (mouseover)=\"rowHover.emit(row)\"\n (click)=\"toggleExpandRow(row)\">\n </mat-row>\n\n <mat-row *matRowDef=\"let row; columns: ['expandedGroupHeader'];\"\n class=\"detail-row\"\n [attr.id]=\"'row_group'+ getIndexRow(row)\">\n </mat-row>\n </div>\n </mat-table>\n\n <mat-progress-bar mode=\"indeterminate\"\n color=\"accent\"\n *ngIf=\"loading\">\n </mat-progress-bar>\n\n <div *ngIf=\"!loading && (data && (data.length > 0)) && footerRef\"\n class=\"footer-row\"\n fxLayout=\"column\"\n fxLayoutGap=\"10px\">\n <ng-template [ngTemplateOutlet]=\"footerRef\"\n [ngTemplateOutletContext]=\"{$implicit: data}\">\n </ng-template>\n </div>\n\n <div *ngIf=\"!loading && (data && (data.length <= 0))\"\n class=\"no-records\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n <span>Nenhum registro foi encontrado</span>\n </div>\n\n <ng-container *ngIf=\"!loading && paginator && (data && (data.length > 0))\">\n <ng-container #backendPaginatorTemplate\n *ngIf=\"backendPagination && !infiniteScroll\">\n <mat-paginator #backendPaginator\n [hidePageSize]=\"!showPageSizeOptions || (paginatorPageSizeOptions && (paginatorPageSizeOptions.length <= 0))\"\n [length]=\"paginatorLength\"\n [pageIndex]=\"paginatorPageIndex\"\n [pageSize]=\"paginatorPageSize\"\n [pageSizeOptions]=\"paginatorPageSizeOptions\"\n (page)=\"onPage($event)\"\n (mouseenter)=\"closePopover(0)\"\n showFirstLastButtons>\n </mat-paginator>\n </ng-container>\n\n <ng-container #frontendPaginatorTemplate\n *ngIf=\"!backendPagination && !infiniteScroll\">\n <mat-paginator #frontendPaginator\n [hidePageSize]=\"!showPageSizeOptions || (paginatorPageSizeOptions && (paginatorPageSizeOptions.length <= 0))\"\n [length]=\"paginatorLength\"\n [pageIndex]=\"paginatorPageIndex\"\n [pageSize]=\"paginatorPageSize\"\n [pageSizeOptions]=\"paginatorPageSizeOptions\"\n (page)=\"onPage($event)\"\n showFirstLastButtons>\n </mat-paginator>\n </ng-container>\n </ng-container>\n\n <ng-container #infiniteScrollPaginatorTemplate\n *ngIf=\"infiniteScroll && (data && (data.length > 0))\">\n <span class=\"infinite-scroll-paginator\">\n 1 - {{ data.length }} de {{ paginatorLength }}\n </span>\n </ng-container>\n </ng-template>\n</div>\n\n<div id=\"table-popover\"\n class=\"table-popover\"\n (mouseover)=\"_isPopoverHover = true\"\n (mouseout)=\"_isPopoverHover = false; closePopover(0)\"\n *ngIf=\"!loading && actionsPopoverRef\">\n <ng-container [ngTemplateOutlet]=\"actionsPopoverRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _contextPopover }\">\n </ng-container>\n</div>",
5927
5988
  animations: [
5928
5989
  animations.trigger('detailExpand', [
5929
5990
  animations.state('collapsed', animations.style({ height: '0px', minHeight: '0', display: 'none' })),
@@ -5931,9 +5992,9 @@
5931
5992
  animations.transition('expanded <=> collapsed', animations.animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
5932
5993
  ]),
5933
5994
  ],
5934
- styles: [".box-shadow{border-radius:2px;box-shadow:0 3px 1px -2px rgba(0,0,0,.14),0 2px 2px 0 rgba(0,0,0,.098),0 1px 5px 0 rgba(0,0,0,.084)}table{width:100%}itss-loading{margin:25px;opacity:.7}.no-records{height:48px;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:30px;font-size:14px!important;font-weight:600!important;color:#b3afb3!important}.no-records mat-icon{font-size:32px;height:32px;width:32px;margin-bottom:5px}.footer-row{min-height:57px;font-weight:700;padding:15px 24px;display:flex;align-items:flex-end;justify-content:center;flex-direction:column;color:rgba(0,0,0,.67);border-bottom:1px solid rgba(0,0,0,.12)}.mat-cell-pointer{cursor:pointer}.detail-row{min-height:0!important;border-bottom-width:0}element-row:not(.expanded-row):hover{background:#f5f5f5}element-row:not(.expanded-row):active{background:#efefef}.hoversimulator:not(.highlight){background:#f5f5f5}.hoversimulator:has(.highlight){background-color:rgba(255,217,0,.212)!important}.highlight{background-color:rgba(255,217,0,.102)!important}::ng-deep mat-cell.cell-element-detail{font-weight:400!important}.element-detail{width:100%;overflow:hidden;display:flex;min-height:45px!important}.element-detail.collapsed{height:0!important;min-height:0!important;display:none!important}.element-detail.expanded{height:auto!important}.hidden-header,.hidden-header .mat-header-cell{height:0!important;min-height:0!important}.actions-popover.mat-card{min-width:auto!important;padding:5px!important;background:#f5f5f5;border-radius:5px!important}.actions-popover.mat-card .mat-card-content itss-button .mat-icon-button mat-icon{height:18px!important;width:18px!important}.table-level-1 .mat-table .mat-header-row{border-bottom:unset!important}.mat-column-expandedGroupHeader{padding:0!important}.group-header-cell{display:flex;flex-direction:row;align-items:center;width:100%}.group-header-sticky{position:-webkit-sticky;position:sticky;top:54px}.infinite-scroll-paginator{color:#696969;font-size:14px;display:flex;align-items:center;justify-content:center;height:56px;position:-webkit-sticky;position:sticky;bottom:0;background:#fff;border-top:1px solid #f3465c}.table-popover{position:fixed;display:inline-flex;background-color:#f5f5f5;width:auto;border-radius:0 0 10px 10px;border:1px solid #ddd;border-top-width:0;padding:2px 5px;z-index:1;visibility:hidden}"]
5995
+ styles: [".box-shadow{border-radius:2px;box-shadow:0 3px 1px -2px rgba(0,0,0,.14),0 2px 2px 0 rgba(0,0,0,.098),0 1px 5px 0 rgba(0,0,0,.084)}table{width:100%}itss-loading{margin:25px;opacity:.7}.no-records{height:48px;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:30px;font-size:14px!important;font-weight:600!important;color:#b3afb3!important;text-transform:initial!important}.no-records mat-icon{font-size:32px;height:32px;width:32px;margin-bottom:5px}.footer-row{min-height:57px;font-weight:700;padding:15px 24px;display:flex;align-items:flex-end;justify-content:center;flex-direction:column;color:rgba(0,0,0,.67);border-bottom:1px solid rgba(0,0,0,.12)}.mat-cell-pointer{cursor:pointer}.detail-row{min-height:0!important;border-bottom-width:0}element-row:not(.expanded-row):hover{background:#f5f5f5}element-row:not(.expanded-row):active{background:#efefef}.hoversimulator:not(.highlight){background:#f5f5f5}.hoversimulator:has(.highlight){background-color:rgba(255,217,0,.212)!important}.highlight{background-color:rgba(255,217,0,.102)!important}::ng-deep mat-cell.cell-element-detail{font-weight:400!important}.element-detail{width:100%;overflow:hidden;display:flex;min-height:45px!important}.element-detail.collapsed{height:0!important;min-height:0!important;display:none!important}.element-detail.expanded{height:auto!important}.hidden-header,.hidden-header .mat-header-cell{height:0!important;min-height:0!important}.actions-popover.mat-card{min-width:auto!important;padding:5px!important;background:#f5f5f5;border-radius:5px!important}.actions-popover.mat-card .mat-card-content itss-button .mat-icon-button mat-icon{height:18px!important;width:18px!important}.table-level-1 .mat-table .mat-header-row{border-bottom:unset!important}.mat-column-expandedGroupHeader{padding:0!important}.group-header-cell{display:flex;flex-direction:row;align-items:center;width:100%}.group-header-sticky{position:-webkit-sticky;position:sticky;top:54px}.infinite-scroll-paginator{color:#696969;font-size:14px;display:flex;align-items:center;justify-content:center;height:56px;position:-webkit-sticky;position:sticky;bottom:0;background:#fff;border-top:1px solid #f3465c}.table-popover{position:fixed;display:inline-flex;background-color:#f5f5f5;width:auto;border-radius:0 0 10px 10px;border:1px solid #ddd;border-top-width:0;padding:2px 5px;z-index:1;visibility:hidden}"]
5935
5996
  }),
5936
- __metadata("design:paramtypes", [])
5997
+ __metadata("design:paramtypes", [core.NgZone])
5937
5998
  ], TableComponent);
5938
5999
  return TableComponent;
5939
6000
  }());
@@ -11143,7 +11204,7 @@
11143
11204
  'class': 'gipi-input-monthpicker',
11144
11205
  },
11145
11206
  changeDetection: core.ChangeDetectionStrategy.OnPush,
11146
- styles: [".input-monthpicker-container{display:flex;flex-direction:column;gap:12px;width:100%}.input-monthpicker-container .input-monthpicker-label{color:#131313;font-size:1.4rem;line-height:100%}.input-monthpicker-container .input-monthpicker-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-monthpicker-container .input-monthpicker-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;caret-color:#9a9da2;transition:.2s;position:relative}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:active),.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:hover{border-color:#bfbfbf!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-input,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-button{cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-input{height:16px;max-width:84%;outline:0;border:none;background-color:transparent;color:inherit;flex:1}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.input-monthpicker-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}::ng-deep .calendar{width:100%;display:flex;flex-direction:column}::ng-deep .calendar .calendar-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #aeb1b5;margin-bottom:8px}::ng-deep .calendar .calendar-header .calendar-title{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:1.6rem;line-height:1.8rem;font-weight:600;cursor:default;border-radius:8px;padding:8px;white-space:nowrap}::ng-deep .calendar .calendar-header .calendar-title>mat-icon{font-size:2rem;width:20px;height:20px}::ng-deep .calendar .calendar-header .calendar-title.month:hover{cursor:pointer;background-color:#f0f0f0}::ng-deep .calendar .calendar-header .calendar-controls{display:flex;flex-direction:row;align-items:center;gap:8px}::ng-deep .calendar .calendar-header .calendar-controls>button{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;background-color:#e0313e;cursor:pointer;transition:.3s;border:0;outline:0;color:#fff}::ng-deep .calendar .calendar-header .calendar-controls>button:hover{background-color:#cc2d38}::ng-deep .calendar .calendar-header .calendar-controls>button>mat-icon{font-size:1.8rem;width:18px;height:18px}::ng-deep .calendar .table-months{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr);gap:4px}::ng-deep .calendar .table-months .month{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-months .month.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-months .month:not(.disabled).selected,::ng-deep .calendar .table-months .month:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-months .month:not(.disabled).selected:hover{background-color:#cc2d38}::ng-deep .calendar .table-years{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr);gap:4px}::ng-deep .calendar .table-years .year{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-years .year.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-years .year:not(.disabled).selected,::ng-deep .calendar .table-years .year:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-years .year:not(.disabled).selected:hover{background-color:#cc2d38}"]
11207
+ styles: [".input-monthpicker-container{display:flex;flex-direction:column;gap:12px;width:100%}.input-monthpicker-container .input-monthpicker-label{color:#131313;font-size:1.4rem;line-height:100%}.input-monthpicker-container .input-monthpicker-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-monthpicker-container .input-monthpicker-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;caret-color:#9a9da2;transition:.2s;position:relative}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:active),.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:hover{border-color:#bfbfbf!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-input,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-button{cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-input{height:16px;max-width:84%;outline:0;border:none;background-color:transparent;color:inherit;flex:1}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.input-monthpicker-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}::ng-deep .calendar{width:100%;display:flex;flex-direction:column}::ng-deep .calendar .calendar-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #aeb1b5;margin-bottom:8px}::ng-deep .calendar .calendar-header .calendar-title{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:1.6rem;line-height:1.8rem;font-weight:600;cursor:default;border-radius:8px;padding:8px;white-space:nowrap}::ng-deep .calendar .calendar-header .calendar-title>mat-icon{font-size:2rem;width:20px;height:20px}::ng-deep .calendar .calendar-header .calendar-title.month:hover{cursor:pointer;background-color:#f0f0f0}::ng-deep .calendar .calendar-header .calendar-controls{display:flex;flex-direction:row;align-items:center;gap:8px}::ng-deep .calendar .calendar-header .calendar-controls>button{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;background-color:#e0313e;cursor:pointer;transition:.3s;border:0;outline:0;color:#fff}::ng-deep .calendar .calendar-header .calendar-controls>button:hover{background-color:#cc2d38}::ng-deep .calendar .calendar-header .calendar-controls>button>mat-icon{font-size:1.8rem;width:18px;height:18px}::ng-deep .calendar .table-months{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr);gap:4px}::ng-deep .calendar .table-months .month{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-months .month.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-months .month:not(.disabled).selected,::ng-deep .calendar .table-months .month:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-months .month:not(.disabled).selected:hover{background-color:#cc2d38}::ng-deep .calendar .table-years{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr);gap:4px}::ng-deep .calendar .table-years .year{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-years .year.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-years .year:not(.disabled).selected,::ng-deep .calendar .table-years .year:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-years .year:not(.disabled).selected:hover{background-color:#cc2d38}"]
11147
11208
  }),
11148
11209
  __metadata("design:paramtypes", [core.ChangeDetectorRef,
11149
11210
  GIPINgConfig])
@@ -12179,7 +12240,7 @@
12179
12240
  }());
12180
12241
 
12181
12242
  /** A altura dos itens selecionados em unidades `px`. */
12182
- var OPTION_HEIGHT_PX$1 = 40;
12243
+ var OPTION_HEIGHT_PX$1 = 44;
12183
12244
  var nextUniqueId$8 = 0;
12184
12245
  var GIPIInputSelectComponent = /** @class */ (function () {
12185
12246
  function GIPIInputSelectComponent(_changeDetectorRef) {
@@ -12305,6 +12366,13 @@
12305
12366
  enumerable: false,
12306
12367
  configurable: true
12307
12368
  });
12369
+ Object.defineProperty(GIPIInputSelectComponent.prototype, "optionHeight", {
12370
+ get: function () {
12371
+ return OPTION_HEIGHT_PX$1;
12372
+ },
12373
+ enumerable: false,
12374
+ configurable: true
12375
+ });
12308
12376
  Object.defineProperty(GIPIInputSelectComponent.prototype, "scrollViewportHeight", {
12309
12377
  get: function () {
12310
12378
  var height = 0;
@@ -12846,7 +12914,7 @@
12846
12914
  core.Component({
12847
12915
  selector: "gipi-input-select",
12848
12916
  exportAs: 'gipiInputSelect',
12849
- template: "<gipi-form-field #formFieldSelect\n [id]=\"id\"\n [name]=\"name\"\n [type]=\"'select'\"\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [label]=\"label\"\n [placeholder]=\"placeholder\"\n [showClear]=\"inputFieldValue && showClear && !disabled && !loading\"\n [showTrigger]=\"inputFieldValueSelected && (inputFieldValueSelected > 1)\"\n [trigger]=\"inputFieldValueSelected\"\n [ariaLabel]=\"ariaLabel\"\n [(ngModel)]=\"inputFieldValue\"\n (onKeydown)=\"onInputKeydown($event)\"\n (onClear)=\"onClearOptionsClick($event)\"\n (onFocus)=\"onInputFocus($event)\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick()\">\n</gipi-form-field>\n\n<gipi-overlay *ngIf=\"!disabled && !loading\"\n contentStyleClass=\"overlay-select\"\n #overlaySelect\n [(visible)]=\"_overlayVisible\"\n [autoZIndex]=\"true\"\n [appendTo]=\"appendTo ? appendTo : 'body'\"\n (onShow)=\"onOpenedChange.emit(true)\"\n (onHide)=\"onOpenedChange.emit(false)\">\n <div class=\"select-search\"\n *ngIf=\"showSearch\"\n [class.disabled]=\"showSelectAll && (disabled || loading || (isLoading > 0))\">\n <mat-checkbox *ngIf=\"multiple && showSelectAll\"\n class=\"select-search-toggle-all-checkbox\"\n [disabled]=\"disabled || loading || !options || (options && !options.length)\"\n [(ngModel)]=\"toggleAllCheckboxChecked\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate\"\n (change)=\"onChangeToggleAllCheckbox()\">\n </mat-checkbox>\n\n <gipi-form-field #formfieldSelectSearchInput\n placeholder=\"Pesquisar\"\n type=\"search\"\n [style.width]=\"'100%'\"\n [formControl]=\"_formControlSearch\"\n [showClear]=\"valueSearch && !disabled && !loading && isLoading <= 0\"\n (onKeydown)=\"onInputSearchKeydown($event)\">\n </gipi-form-field>\n </div>\n\n <div class=\"select-row select-option-all\"\n [style.height.px]=\"40\"\n [class.disabled]=\"disabled || loading\"\n *ngIf=\"(!showSearch && multiple && showSelectAll)\"\n (click)=\"onClickSelectAllByOption()\">\n <mat-pseudo-checkbox *ngIf=\"multiple\"\n class=\"select-mat-option-pseudo-checkbox\"\n [state]=\"toggleAllCheckboxIndeterminate ? 'indeterminate' : toggleAllCheckboxChecked ? 'checked' : ''\">\n </mat-pseudo-checkbox>\n\n <span> {{ labelSelectAll ? labelSelectAll : 'Selecionar todos' }} </span>\n </div>\n\n <cdk-virtual-scroll-viewport *ngIf=\"(options && options.length) && (!loading || isLoading <= 0)\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\"\n GIPIInfiniteScroll\n [infiniteScrollDistance]=\"'30%'\"\n [infiniteScrollThrottle]=\"50\"\n [infiniteScrollcomplete]=\"options && _totalOptions && options.length === _totalOptions\"\n (scrolled)=\"onScroll()\">\n <div *cdkVirtualFor=\"let option of options; trackBy: trackByOption\"\n class=\"select-row\"\n [style.height.px]=\"40\"\n [class.disabled]=\"disabled || loading\"\n (click)=\"onButtonSelectOptionClick(option)\">\n <mat-pseudo-checkbox *ngIf=\"multiple && option\"\n class=\"select-mat-option-pseudo-checkbox\"\n [state]=\"optionCheckboxIsChecked(option) ? 'checked' : ''\">\n </mat-pseudo-checkbox>\n\n <span> {{ option ? getPropertyValue(option) : '' }} </span>\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading || isLoading > 0\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!options || (options && options.length <= 0)) && !loading && (isLoading <= 0)\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n\n <div class=\"select-footer\"\n *ngIf=\"multiple && !showSelectAll && showFooter\">\n <gipi-button label=\"Adicionar\"\n gipi-primary\n id=\"btnAddOptions\"\n [style.width]=\"'100%'\"\n [disabled]=\"disabled || loading || (!value || (value && !value.length))\"\n (click)=\"onClickAddOptions()\">\n </gipi-button>\n </div>\n</gipi-overlay>\n",
12917
+ template: "<gipi-form-field #formFieldSelect\n [id]=\"id\"\n [name]=\"name\"\n [type]=\"'select'\"\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [label]=\"label\"\n [placeholder]=\"placeholder\"\n [showClear]=\"inputFieldValue && showClear && !disabled && !loading\"\n [showTrigger]=\"inputFieldValueSelected && (inputFieldValueSelected > 1)\"\n [trigger]=\"inputFieldValueSelected\"\n [ariaLabel]=\"ariaLabel\"\n [(ngModel)]=\"inputFieldValue\"\n (onKeydown)=\"onInputKeydown($event)\"\n (onClear)=\"onClearOptionsClick($event)\"\n (onFocus)=\"onInputFocus($event)\"\n (onBlur)=\"onInputBlur($event)\"\n (onClick)=\"onInputClick()\">\n</gipi-form-field>\n\n<gipi-overlay *ngIf=\"!disabled && !loading\"\n contentStyleClass=\"overlay-select\"\n #overlaySelect\n [(visible)]=\"_overlayVisible\"\n [autoZIndex]=\"true\"\n [appendTo]=\"appendTo ? appendTo : 'body'\"\n (onShow)=\"onOpenedChange.emit(true)\"\n (onHide)=\"onOpenedChange.emit(false)\">\n <div class=\"select-search\"\n *ngIf=\"showSearch\"\n [class.disabled]=\"showSelectAll && (disabled || loading || (isLoading > 0))\">\n <mat-checkbox *ngIf=\"multiple && showSelectAll\"\n class=\"select-search-toggle-all-checkbox\"\n [disabled]=\"disabled || loading || !options || (options && !options.length)\"\n [(ngModel)]=\"toggleAllCheckboxChecked\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate\"\n (change)=\"onChangeToggleAllCheckbox()\">\n </mat-checkbox>\n\n <gipi-form-field #formfieldSelectSearchInput\n placeholder=\"Pesquisar\"\n type=\"search\"\n [style.width]=\"'100%'\"\n [formControl]=\"_formControlSearch\"\n [showClear]=\"valueSearch && !disabled && !loading && isLoading <= 0\"\n (onKeydown)=\"onInputSearchKeydown($event)\">\n </gipi-form-field>\n </div>\n\n <div class=\"select-row select-option-all\"\n [style.height.px]=\"40\"\n [class.disabled]=\"disabled || loading\"\n *ngIf=\"(!showSearch && multiple && showSelectAll)\"\n (click)=\"onClickSelectAllByOption()\">\n <mat-pseudo-checkbox *ngIf=\"multiple\"\n class=\"select-mat-option-pseudo-checkbox\"\n [state]=\"toggleAllCheckboxIndeterminate ? 'indeterminate' : toggleAllCheckboxChecked ? 'checked' : ''\">\n </mat-pseudo-checkbox>\n\n <span> {{ labelSelectAll ? labelSelectAll : 'Selecionar todos' }} </span>\n </div>\n\n <cdk-virtual-scroll-viewport *ngIf=\"(options && options.length) && (!loading || isLoading <= 0)\"\n class=\"select-virtual-scroll-viewport\"\n [style.height.px]=\"scrollViewportHeight\"\n [itemSize]=\"_itemSizeScrollViewport\"\n GIPIInfiniteScroll\n [infiniteScrollDistance]=\"'30%'\"\n [infiniteScrollThrottle]=\"50\"\n [infiniteScrollcomplete]=\"options && _totalOptions && options.length === _totalOptions\"\n (scrolled)=\"onScroll()\">\n <div *cdkVirtualFor=\"let option of options; trackBy: trackByOption\"\n class=\"select-row\"\n [style.height.px]=\"optionHeight\"\n [class.disabled]=\"disabled || loading\"\n (click)=\"onButtonSelectOptionClick(option)\">\n <mat-pseudo-checkbox *ngIf=\"multiple && option\"\n class=\"select-mat-option-pseudo-checkbox\"\n [state]=\"optionCheckboxIsChecked(option) ? 'checked' : ''\">\n </mat-pseudo-checkbox>\n\n <span> {{ option ? getPropertyValue(option) : '' }} </span>\n </div>\n </cdk-virtual-scroll-viewport>\n\n <div *ngIf=\"loading || isLoading > 0\"\n class=\"select-loading\">\n <div class=\"dot-pulse\"> </div>\n </div>\n\n <div *ngIf=\"(!options || (options && options.length <= 0)) && !loading && (isLoading <= 0)\"\n class=\"select-not-found\">\n <mat-icon>sentiment_very_dissatisfied</mat-icon>\n Nenhum registro foi encontrado\n </div>\n\n <div class=\"select-footer\"\n *ngIf=\"multiple && !showSelectAll && showFooter\">\n <gipi-button label=\"Adicionar\"\n gipi-primary\n id=\"btnAddOptions\"\n [style.width]=\"'100%'\"\n [disabled]=\"disabled || loading || (!value || (value && !value.length))\"\n (click)=\"onClickAddOptions()\">\n </gipi-button>\n </div>\n</gipi-overlay>",
12850
12918
  providers: [
12851
12919
  {
12852
12920
  provide: forms.NG_VALUE_ACCESSOR,
@@ -12858,7 +12926,7 @@
12858
12926
  'class': 'gipi-input-select',
12859
12927
  },
12860
12928
  changeDetection: core.ChangeDetectionStrategy.OnPush,
12861
- styles: ["::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;padding:0 16px;cursor:pointer;font-size:1.4rem;line-height:100%;gap:12px}::ng-deep .select-row:hover{background:#f5f5f6}::ng-deep .select-row:active{background:#e0e1e2}::ng-deep .select-row.disabled{background-color:#d1d2d4!important;color:#9a9da2!important;cursor:not-allowed!important;pointer-events:none!important}::ng-deep .select-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-search{display:flex;align-items:center;font-size:1.4rem;line-height:100%;gap:12px;padding:8px 12px}.select-option-all{border-bottom:1px solid rgba(0,0,0,.12)}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:0 0 16px}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:\"\";display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-footer{display:flex;align-items:center;gap:12px;padding:8px 12px;border-top:1px solid #bfbfbf}::ng-deep .select-mat-option-pseudo-checkbox{margin:0!important}"]
12929
+ styles: ["::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;padding:0 16px;cursor:pointer;font-size:1.3rem;line-height:100%;gap:12px}::ng-deep .select-row:hover{background:#f5f5f6}::ng-deep .select-row:active{background:#e0e1e2}::ng-deep .select-row.disabled{background-color:#d1d2d4!important;color:#9a9da2!important;cursor:not-allowed!important;pointer-events:none!important}::ng-deep .select-row>span{display:-webkit-box;line-clamp:2;box-orient:vertical;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;overflow:hidden}.select-search{display:flex;align-items:center;font-size:1.4rem;line-height:100%;gap:12px;padding:8px 12px}.select-option-all{border-bottom:1px solid rgba(0,0,0,.12)}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:0 0 16px}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:\"\";display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-footer{display:flex;align-items:center;gap:12px;padding:8px 12px;border-top:1px solid #bfbfbf}::ng-deep .select-mat-option-pseudo-checkbox{margin:0!important}"]
12862
12930
  }),
12863
12931
  __metadata("design:paramtypes", [core.ChangeDetectorRef])
12864
12932
  ], GIPIInputSelectComponent);
@@ -23714,7 +23782,7 @@
23714
23782
  'class': 'gipi-month-year-picker',
23715
23783
  },
23716
23784
  changeDetection: core.ChangeDetectionStrategy.OnPush,
23717
- styles: [":host{display:block;width:100%}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element.ng-invalid:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:invalid:enabled:hover){border-color:#e07f62}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element.ng-invalid:enabled),.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:invalid:enabled){border-color:#d14014}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element.ng-invalid:enabled:focus),.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:invalid:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #f1c4b6;border-color:#d14014}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-year-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-icon-button .month-year-toggle-default-icon{margin:auto}.btn-month-year-toggle{width:2rem!important;height:2rem!important;line-height:2rem!important}"]
23785
+ styles: [":host{display:block;width:100%}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-year-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-icon-button .month-year-toggle-default-icon{margin:auto}.btn-month-year-toggle{width:2rem!important;height:2rem!important;line-height:2rem!important}"]
23718
23786
  }),
23719
23787
  __param(5, core.Inject(GIPI_MONTH_YEAR_SCROLL_STRATEGY)),
23720
23788
  __param(6, core.Optional()),