mapa-library-ui 0.5.0 → 0.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.
@@ -34,6 +34,23 @@ export class MapaTableComponent {
34
34
  this.dataSource.sort = this.sort;
35
35
  this.displayedColumns = this.columns.map(column => column.key);
36
36
  }
37
+ ngOnChanges(changes) {
38
+ if (changes['filterControl'] && this.filterControl) {
39
+ this.setupFilter();
40
+ }
41
+ }
42
+ setupFilter() {
43
+ this.filterControl.valueChanges.subscribe((value) => {
44
+ this.dataSource.filter = value.trim().toLowerCase();
45
+ });
46
+ this.dataSource.filterPredicate = (data, filter) => {
47
+ const dataStr = Object.keys(data)
48
+ .reduce((currentTerm, key) => {
49
+ return currentTerm + (data[key] && data[key].toString().toLowerCase() || '') + ' ';
50
+ }, '').trim().toLowerCase();
51
+ return dataStr.indexOf(filter) !== -1;
52
+ };
53
+ }
37
54
  isAllSelected() {
38
55
  const numSelected = this.selection.selected.length;
39
56
  const numRows = this.dataSource.data.length;
@@ -193,10 +210,10 @@ export class MapaTableComponent {
193
210
  }
194
211
  }
195
212
  MapaTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
196
- MapaTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaTableComponent, selector: "mapa-table", inputs: { columns: "columns", data: "data", checkbox: "checkbox", actions: "actions", groupReport: "groupReport", isGroupReport: "isGroupReport" }, outputs: { rowClick: "rowClick", selectedRows: "selectedRows" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], ngImport: i0, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{justify-content:space-between;width:100%}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i7.PaginatorLegacyDirective, selector: "[appStylePaginatorMv]" }, { kind: "pipe", type: i1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None });
213
+ MapaTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaTableComponent, selector: "mapa-table", inputs: { columns: "columns", data: "data", checkbox: "checkbox", actions: "actions", filterControl: "filterControl", groupReport: "groupReport", isGroupReport: "isGroupReport" }, outputs: { rowClick: "rowClick", selectedRows: "selectedRows" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{width:100%}.mapa-table__column--header .mat-icon{margin:0 7px}.mapa-table .mat-sort-header-arrow{color:transparent}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i7.PaginatorLegacyDirective, selector: "[appStylePaginatorMv]" }, { kind: "pipe", type: i1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None });
197
214
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaTableComponent, decorators: [{
198
215
  type: Component,
199
- args: [{ selector: "mapa-table", encapsulation: ViewEncapsulation.None, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{justify-content:space-between;width:100%}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"] }]
216
+ args: [{ selector: "mapa-table", encapsulation: ViewEncapsulation.None, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{width:100%}.mapa-table__column--header .mat-icon{margin:0 7px}.mapa-table .mat-sort-header-arrow{color:transparent}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"] }]
200
217
  }], ctorParameters: function () { return []; }, propDecorators: { columns: [{
201
218
  type: Input
202
219
  }], data: [{
@@ -205,6 +222,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
205
222
  type: Input
206
223
  }], actions: [{
207
224
  type: Input
225
+ }], filterControl: [{
226
+ type: Input
208
227
  }], rowClick: [{
209
228
  type: Output
210
229
  }], selectedRows: [{
@@ -220,4 +239,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
220
239
  type: ViewChild,
221
240
  args: [MatSort]
222
241
  }] } });
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9zcmMvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9zcmMvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQVEsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7O0FBWTdELE1BQU0sT0FBTyxrQkFBa0I7SUFzQjdCO1FBckJTLFlBQU8sR0FBa0IsRUFBRSxDQUFDO1FBQzVCLFNBQUksR0FBYSxFQUFFLENBQUM7UUFJbkIsYUFBUSxHQUFnQyxJQUFJLFlBQVksRUFFL0QsQ0FBQztRQUNNLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFFL0QsZ0JBQVcsR0FBc0IsRUFBRSxDQUFDO1FBTzdDLHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQUVoQyxjQUFTLEdBQUcsSUFBSSxjQUFjLENBQU0sSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRS9CLENBQUM7SUFF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QUFDLElBQUksS0FBSyxJQUFJLEVBQUUsSUFBSSxTQUFTLEtBQUssVUFBVTtZQUNsRSxZQUFZLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksRUFBRSxJQUFJLFNBQVMsS0FBSyxVQUFVO1lBQ3BFLFlBQVksRUFBRSxLQUFLLElBQUksRUFBRSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksU0FBUyxLQUFLLFVBQVU7WUFDcEUsWUFBWSxFQUFFLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLEVBQUUsSUFBSSxTQUFTLEtBQUssVUFBVTtZQUNwRSxhQUFhLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksR0FBRyxJQUFJLFNBQVMsS0FBSyxVQUFVO1NBQ3ZFLENBQUM7UUFFRixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYTtTQUNqQyxDQUFDO0lBQ0osQ0FBQzs7Z0hBbk9VLGtCQUFrQjtvR0FBbEIsa0JBQWtCLGtUQWFsQixZQUFZLHVFQUNaLE9BQU8sZ0RDMUNwQiw4aktBNkhBOzRGRGpHYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJOzBFQUc1QixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBR0csWUFBWTtzQkFBckIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ21CLFNBQVM7c0JBQWpDLFNBQVM7dUJBQUMsWUFBWTtnQkFDSCxJQUFJO3NCQUF2QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvY29sbGVjdGlvbnNcIjtcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCBtb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yXCI7XG5pbXBvcnQgeyBNYXRTb3J0LCBTb3J0IH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NvcnRcIjtcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90YWJsZVwiO1xuXG5pbXBvcnQgeyBSb3dDbGlja0V2ZW50IH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvaW50ZXJmYWNlcy90YWJsZS1yb3ctY2xpY2stZXZlbnQuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbiB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2ludGVyZmFjZXMvdGFibGUtY29sdW1uLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgR3JvdXBSZXBvcnRJdGVtIH0gZnJvbSBcIi4vZ3JvdXAtcmVwb3J0LWludGVyZmFjZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWFwYS10YWJsZVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3RhYmxlLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi90YWJsZS5jb21wb25lbnQuc2Nzc1wiXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgTWFwYVRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgY29sdW1uczogVGFibGVDb2x1bW5bXSA9IFtdO1xuICBASW5wdXQoKSBkYXRhOiBPYmplY3RbXSA9IFtdO1xuICBASW5wdXQoKSBjaGVja2JveDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYWN0aW9uczogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBAT3V0cHV0KCkgcm93Q2xpY2s6IEV2ZW50RW1pdHRlcjxSb3dDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8XG4gICAgUm93Q2xpY2tFdmVudFxuICA+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZFJvd3M6IEV2ZW50RW1pdHRlcjxhbnlbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuXG4gIEBJbnB1dCgpIGdyb3VwUmVwb3J0OiBHcm91cFJlcG9ydEl0ZW1bXSA9IFtdO1xuICBASW5wdXQoKSBpc0dyb3VwUmVwb3J0OiBib29sZWFuIHwgdW5kZWZpbmVkOyBcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IpIHBhZ2luYXRvciE6IE1hdFBhZ2luYXRvcjtcbiAgQFZpZXdDaGlsZChNYXRTb3J0KSBzb3J0ITogTWF0U29ydDtcblxuICBjaGVja2JveEdyb3VwITogRm9ybUdyb3VwO1xuICBkYXRhU291cmNlITogTWF0VGFibGVEYXRhU291cmNlPE9iamVjdD47XG4gIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdID0gW107XG4gIGN1cnJlbnRTb3J0OiBTb3J0IHwgdW5kZWZpbmVkO1xuICBzZWxlY3Rpb24gPSBuZXcgU2VsZWN0aW9uTW9kZWw8YW55Pih0cnVlLCBbXSk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMuaXNHcm91cFJlcG9ydCkge1xuICAgICAgdGhpcy5nZW5lcmF0ZUNvbHVtbnMoKTtcbiAgICAgIHRoaXMuZ2VuZXJhdGVHcm91cERhdGEoKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZSh0aGlzLmRhdGEpO1xuICAgIHRoaXMuZGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcjtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc29ydCA9IHRoaXMuc29ydDtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSB0aGlzLmNvbHVtbnMubWFwKGNvbHVtbiA9PiBjb2x1bW4ua2V5KTtcbiAgfVxuXG4gIGlzQWxsU2VsZWN0ZWQoKSB7XG4gICAgY29uc3QgbnVtU2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZC5sZW5ndGg7XG4gICAgY29uc3QgbnVtUm93cyA9IHRoaXMuZGF0YVNvdXJjZS5kYXRhLmxlbmd0aDtcbiAgICByZXR1cm4gbnVtU2VsZWN0ZWQgPT09IG51bVJvd3M7XG4gIH1cblxuICB0b2dnbGVBbGxSb3dzKCkge1xuICAgIGlmICh0aGlzLmlzQWxsU2VsZWN0ZWQoKSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb24uY2xlYXIoKTtcbiAgICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZGF0YUFzUGVyaW9kaWNFbGVtZW50cyA9IHRoaXMuZGF0YVNvdXJjZS5kYXRhIGFzIGFueVtdO1xuICAgICAgZGF0YUFzUGVyaW9kaWNFbGVtZW50cy5mb3JFYWNoKChyb3cpID0+IHRoaXMuc2VsZWN0aW9uLnNlbGVjdChyb3cpKTtcbiAgICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZXMoKTtcbiAgICB9XG4gIH1cblxuICBjaGVja2JveExhYmVsKHJvdz86IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKCFyb3cpIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLmlzQWxsU2VsZWN0ZWQoKSA/IFwiZGVzZWxlY3RcIiA6IFwic2VsZWN0XCJ9IGFsbGA7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLnNlbGVjdGlvbi5pc1NlbGVjdGVkKHJvdykgPyBcImRlc2VsZWN0XCIgOiBcInNlbGVjdFwifSByb3cgJHtcbiAgICAgIHJvdy5wb3NpdGlvbiArIDFcbiAgICB9YDtcbiAgfVxuXG4gIHNvcnREYXRhKGNvbHVtbjogVGFibGVDb2x1bW4pOiB2b2lkIHtcbiAgICBpZiAoY29sdW1uLnNvcnQpIHtcbiAgICAgIGNvbnN0IHNvcnQ6IFNvcnQgPSB7IGFjdGl2ZTogY29sdW1uLmtleSwgZGlyZWN0aW9uOiBcImFzY1wiIH07XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5jdXJyZW50U29ydCAmJlxuICAgICAgICB0aGlzLmN1cnJlbnRTb3J0LmFjdGl2ZSA9PT0gY29sdW1uLmtleSAmJlxuICAgICAgICB0aGlzLmN1cnJlbnRTb3J0LmRpcmVjdGlvbiA9PT0gXCJhc2NcIlxuICAgICAgKSB7XG4gICAgICAgIHNvcnQuZGlyZWN0aW9uID0gXCJkZXNjXCI7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY3VycmVudFNvcnQgPSBzb3J0O1xuICAgICAgdGhpcy5zb3J0RGF0YUZ1bmN0aW9uKHNvcnQpO1xuICAgIH1cbiAgfVxuXG4gIHNvcnREYXRhRnVuY3Rpb24oc29ydDogU29ydCkge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YS5zbGljZSgpO1xuXG4gICAgaWYgKCFzb3J0LmFjdGl2ZSB8fCBzb3J0LmRpcmVjdGlvbiA9PT0gXCJcIikge1xuICAgICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBkYXRhO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gZGF0YS5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xuICAgICAgY29uc3QgaXNBc2MgPSBzb3J0LmRpcmVjdGlvbiA9PT0gXCJhc2NcIjtcbiAgICAgIHJldHVybiB0aGlzLmNvbXBhcmUoYVtzb3J0LmFjdGl2ZV0sIGJbc29ydC5hY3RpdmVdLCBpc0FzYyk7XG4gICAgfSk7XG4gIH1cblxuICBjb21wYXJlKGE6IGFueSwgYjogYW55LCBpc0FzYzogYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgYSA9PT0gXCJzdHJpbmdcIiAmJiB0eXBlb2YgYiA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgcmV0dXJuIChhLnRvTG93ZXJDYXNlKCkgPCBiLnRvTG93ZXJDYXNlKCkgPyAtMSA6IDEpICogKGlzQXNjID8gMSA6IC0xKTtcbiAgICB9XG4gICAgcmV0dXJuIChhIDwgYiA/IC0xIDogMSkgKiAoaXNBc2MgPyAxIDogLTEpO1xuICB9XG5cbiAgZW1pdFJvd0NsaWNrKHJvdzogc3RyaW5nLCBhY3Rpb246IHN0cmluZykge1xuICAgIGNvbnN0IHJvd0RhdGE6IFJvd0NsaWNrRXZlbnQgPSB7IHJvdywgYWN0aW9uIH07XG4gICAgdGhpcy5yb3dDbGljay5lbWl0KHJvd0RhdGEpO1xuICB9XG5cbiAgdG9nZ2xlU2VsZWN0aW9uKHJvdzogYW55KSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uLmlzU2VsZWN0ZWQocm93KSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb24uZGVzZWxlY3Qocm93KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3Rpb24uc2VsZWN0KHJvdyk7XG4gICAgfVxuICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZXMoKTtcbiAgfVxuXG4gIGdldFNlbGVjdGVkVmFsdWVzKCkge1xuICAgIGNvbnN0IHNlbGVjdGVkUm93cyA9IHRoaXMuc2VsZWN0aW9uLnNlbGVjdGVkLm1hcCgocm93KSA9PiB7XG4gICAgICByZXR1cm4geyByb3cgfTtcbiAgICB9KTtcbiAgICB0aGlzLnNlbGVjdGVkUm93cy5lbWl0KHNlbGVjdGVkUm93cyk7XG4gICAgY29uc29sZS5sb2coc2VsZWN0ZWRSb3dzKTtcbiAgfVxuXG4gIGdlbmVyYXRlQ29sdW1ucygpIHtcbiAgICBjb25zdCBjb2x1bW5zOiBUYWJsZUNvbHVtbltdID0gW1xuICAgICAgeyBrZXk6ICduYW1lJywgbGFiZWw6ICcnLCBzb3J0OiBmYWxzZSB9LFxuICAgICAgeyBrZXk6ICdnZW5lcmFsJywgbGFiZWw6ICclIEdlcmFsJywgc29ydDogZmFsc2UgfVxuICAgIF07XG4gICAgdGhpcy5ncm91cFJlcG9ydC5mb3JFYWNoKHJlcG9ydEl0ZW0gPT4ge1xuICAgICAgcmVwb3J0SXRlbS5kaW1lbnNpb25zLmZvckVhY2goZGltZW5zaW9uID0+IHtcbiAgICAgICAgY29uc3QgZGltZW5zaW9uS2V5ID0gZGltZW5zaW9uLmRpbWVuc2lvbk5hbWUudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgY29uc3QgZGltZW5zaW9uTGFiZWwgPSBkaW1lbnNpb24uZGltZW5zaW9uTmFtZTtcbiAgICAgICAgaWYgKCF0aGlzLmNvbHVtbkV4aXN0cyhjb2x1bW5zLCBkaW1lbnNpb25LZXkpKSB7XG4gICAgICAgICAgY29sdW1ucy5wdXNoKHsga2V5OiBkaW1lbnNpb25LZXksIGxhYmVsOiBkaW1lbnNpb25MYWJlbCwgc29ydDogZGltZW5zaW9uLnNvcnQgfHwgZmFsc2UgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICBcbiAgICAgIHJlcG9ydEl0ZW0uaW5kaWNhdG9ycy5mb3JFYWNoKGluZGljYXRvciA9PiB7XG4gICAgICAgIGNvbnN0IGluZGljYXRvcktleSA9IGluZGljYXRvci5uYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIGNvbnN0IGluZGljYXRvckxhYmVsID0gaW5kaWNhdG9yLm5hbWU7XG4gICAgICAgIGlmICghdGhpcy5jb2x1bW5FeGlzdHMoY29sdW1ucywgaW5kaWNhdG9yS2V5KSkge1xuICAgICAgICAgIGNvbHVtbnMucHVzaCh7IGtleTogaW5kaWNhdG9yS2V5LCBsYWJlbDogaW5kaWNhdG9yTGFiZWwsIHNvcnQ6IGluZGljYXRvci5zb3J0IHx8IGZhbHNlIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1ucztcbiAgfVxuICBcbiAgY29sdW1uRXhpc3RzKGNvbHVtbnM6IFRhYmxlQ29sdW1uW10sIGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNvbHVtbnMuc29tZShjb2x1bW4gPT4gY29sdW1uLmtleSA9PT0ga2V5KTtcbiAgfVxuXG4gIGdlbmVyYXRlR3JvdXBEYXRhKCkge1xuICAgIGNvbnN0IHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfVtdID0gW107XG4gIFxuICAgIHRoaXMuZ3JvdXBSZXBvcnQuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgY29uc3QgZGF0YUl0ZW06IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7XG4gICAgICAgIG5hbWU6IGl0ZW0uY2FuZGlkYXRlLm5hbWUsXG4gICAgICAgIGNwZjogaXRlbS5jYW5kaWRhdGUuY3BmLFxuICAgICAgICBnZW5lcmFsOiBpdGVtLmNhbmRpZGF0ZS5nZW5lcmFsXG4gICAgICB9O1xuICBcbiAgICAgIGl0ZW0uZGltZW5zaW9ucy5mb3JFYWNoKGRpbWVuc2lvbiA9PiB7XG4gICAgICAgIGRhdGFJdGVtW2RpbWVuc2lvbi5kaW1lbnNpb25OYW1lLnRvTG93ZXJDYXNlKCldID0ge1xuICAgICAgICAgIHNjb3JlVDogZGltZW5zaW9uLmVzY29yZVQsXG4gICAgICAgICAgZGlyZWN0aW9uOiBkaW1lbnNpb24uZGlyZWN0aW9uXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgXG4gICAgICBpdGVtLmluZGljYXRvcnMuZm9yRWFjaChpbmRpY2F0b3IgPT4ge1xuICAgICAgICBkYXRhSXRlbVtpbmRpY2F0b3IubmFtZS50b0xvd2VyQ2FzZSgpXSA9IHtcbiAgICAgICAgICBpbnRlcnZhbDogaW5kaWNhdG9yLmludGVydmFsLFxuICAgICAgICAgIGRpcmVjdGlvbjogaW5kaWNhdG9yLmRpcmVjdGlvblxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIFxuICAgICAgcmVzdWx0LnB1c2goZGF0YUl0ZW0pO1xuICAgIH0pO1xuICBcbiAgICB0aGlzLmRhdGEgPSByZXN1bHQ7XG4gICAgY29uc29sZS5sb2codGhpcy5kYXRhKTtcbiAgfVxuICBcblxuICBpc0Jvb2xlYW4oY29sdW1uOiBUYWJsZUNvbHVtbiwgcm93OiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIHJvd1tjb2x1bW4ua2V5XSA9PT0gJ2Jvb2xlYW4nO1xuICB9XG5cbiAgaXNNYXNrZWREYXRhKGNvbHVtbjogVGFibGVDb2x1bW4sIHJvdzogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgZm9ybWF0cyA9IFttb21lbnQuSVNPXzg2MDEsIFwiTU0vREQvWVlZWSAgOikgIEhIKm1tKnNzXCJdO1xuICAgIGNvbnN0IGlzRGF0ZSA9IG1vbWVudChyb3dbY29sdW1uLmtleV0sIGZvcm1hdHMsIHRydWUpLmlzVmFsaWQoKTtcbiAgICByZXR1cm4gKGNvbHVtbi5tYXNrICYmIGlzRGF0ZSkgfHwgZmFsc2U7XG4gIH1cblxuICBnZXRWYWx1ZUFzRGF0ZShjb2x1bW46IFRhYmxlQ29sdW1uLCByb3c6IGFueSk6IERhdGUge1xuICAgIHJldHVybiBuZXcgRGF0ZShyb3dbY29sdW1uLmtleV0pO1xuICB9XG5cbiAgZ2V0Q2VsbENsYXNzKGNvbHVtbjogVGFibGVDb2x1bW4sIHJvdzogYW55KTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0ge1xuICAgIGlmICghdGhpcy5pc0dyb3VwUmVwb3J0KSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICBcbiAgICBjb25zdCB2YWx1ZSA9IHJvd1tjb2x1bW4ua2V5XS5pbnRlcnZhbCA/IHJvd1tjb2x1bW4ua2V5XS5pbnRlcnZhbCA6IHJvd1tjb2x1bW4ua2V5XS5zY29yZVQ7XG4gICAgY29uc3QgZGlyZWN0aW9uID0gcm93W2NvbHVtbi5rZXldLmRpcmVjdGlvbjtcbiAgXG4gICAgY29uc3QgY2xhc3NlcyA9IHtcbiAgICAgICdyZWQtMC0yNSc6IHZhbHVlID49IDAgJiYgdmFsdWUgPD0gMjUgJiYgZGlyZWN0aW9uID09PSAnTmVnYXRpdmEnLFxuICAgICAgJ3JlZC0yNi01MCc6IHZhbHVlID49IDI2ICYmIHZhbHVlIDw9IDUwICYmIGRpcmVjdGlvbiA9PT0gJ05lZ2F0aXZhJyxcbiAgICAgICdyZWQtNTEtNzUnOiB2YWx1ZSA+PSA1MSAmJiB2YWx1ZSA8PSA3NSAmJiBkaXJlY3Rpb24gPT09ICdOZWdhdGl2YScsXG4gICAgICAncmVkLTc2LTEwMCc6IHZhbHVlID49IDc2ICYmIHZhbHVlIDw9IDEwMCAmJiBkaXJlY3Rpb24gPT09ICdOZWdhdGl2YScsXG4gICAgICAnYmx1ZS0wLTIwJzogdmFsdWUgPj0gMCAmJiB2YWx1ZSA8PSAyMCAmJiBkaXJlY3Rpb24gPT09ICdQb3NpdGl2YScsXG4gICAgICAnYmx1ZS0yMS00MCc6IHZhbHVlID49IDIxICYmIHZhbHVlIDw9IDQwICYmIGRpcmVjdGlvbiA9PT0gJ1Bvc2l0aXZhJyxcbiAgICAgICdibHVlLTQxLTYwJzogdmFsdWUgPj0gNDEgJiYgdmFsdWUgPD0gNjAgJiYgZGlyZWN0aW9uID09PSAnUG9zaXRpdmEnLFxuICAgICAgJ2JsdWUtNjEtODAnOiB2YWx1ZSA+PSA2MSAmJiB2YWx1ZSA8PSA4MCAmJiBkaXJlY3Rpb24gPT09ICdQb3NpdGl2YScsXG4gICAgICAnYmx1ZS04MS0xMDAnOiB2YWx1ZSA+PSA4MSAmJiB2YWx1ZSA8PSAxMDAgJiYgZGlyZWN0aW9uID09PSAnUG9zaXRpdmEnLFxuICAgIH07XG4gICAgXG4gICAgcmV0dXJuIGNsYXNzZXM7XG4gIH1cblxuICBnZXRSb3dDbGFzcygpOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdyb3ctaG92ZXInOiAhdGhpcy5pc0dyb3VwUmVwb3J0XG4gICAgfTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1hcGEtdGFibGVcIj5cbiAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJzb3J0RGF0YUZ1bmN0aW9uKCRldmVudClcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpc0ZpcnN0ID0gZmlyc3RcIlxuICAgICAgW21hdENvbHVtbkRlZl09XCJjb2x1bW4ua2V5XCIgXG4gICAgPlxuICAgICAgPHRoXG4gICAgICAgIG1hdC1oZWFkZXItY2VsbFxuICAgICAgICAqbWF0SGVhZGVyQ2VsbERlZlxuICAgICAgICBtYXQtc29ydC1oZWFkZXJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiEoY29sdW1uLmtleSAhPT0gJ2FjdGlvbnMnID8gY29sdW1uLnNvcnQgOiBudWxsKVwiXG4gICAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWJsZUhlYWRlclwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgc2VsZWN0aW9uLCBjb2x1bW4sIGlzRmlyc3QsIGNoZWNrYm94IH1cIlxuICAgICAgICA+PC9kaXY+XG4gICAgICA8L3RoPlxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvd1wiPlxuICAgICAgICA8ZGl2IFxuICAgICAgICAgIGNsYXNzPVwibWFwYS10YWJsZV9fY29sdW1uXCJcbiAgICAgICAgICAoY2xpY2spPVwiZW1pdFJvd0NsaWNrKHJvdywgJycpXCJcbiAgICAgICAgICAqbmdJZj1cImNvbHVtbi5rZXkgIT09ICdhY3Rpb25zJzsgZWxzZSBjb2x1bW5BY3Rpb25zXCJcbiAgICAgICAgPiBcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNGaXJzdCAmJiBjaGVja2JveFwiPlxuICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb24udG9nZ2xlKHJvdykgOiBudWxsOyBnZXRTZWxlY3RlZFZhbHVlcygpXCJcbiAgICAgICAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0aW9uLmlzU2VsZWN0ZWQocm93KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGVfX2NvbHVtblwiIFtuZ0NsYXNzXT1cInsgJ2NlbnRlci1jZWxsJzogaXNHcm91cFJlcG9ydCB9XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzR3JvdXBSZXBvcnRcIj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTWFza2VkRGF0YShjb2x1bW4sIHJvdyk7IGVsc2Ugc3RhdHVzQ29udGVudFwiPlxuICAgICAgICAgICAgICAgIHt7IGdldFZhbHVlQXNEYXRlKGNvbHVtbiwgcm93KSB8IGRhdGU6IGNvbHVtbi5tYXNrIH19XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3N0YXR1c0NvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5zdGF0dXNMYWJlbDsgZWxzZSBjb21tb25Db250ZW50XCI+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNCb29sZWFuKGNvbHVtbiwgcm93KTsgZWxzZSBjb21tb25TdGF0dXNcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgY29sdW1uLnN0YXR1c0xhYmVsW3Jvd1tjb2x1bW4ua2V5XSA/IDEgOiAwXSB9fVxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbW1vblN0YXR1cz57eyBjb2x1bW4uc3RhdHVzTGFiZWxbcm93W2NvbHVtbi5rZXldIC0gMV0gfX08L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY29tbW9uQ29udGVudD57eyByb3dbY29sdW1uLmtleV0gfX08L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3N0YXR1c0NvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb21tb25Db250ZW50Pnt7IHJvd1tjb2x1bW4ua2V5XSB9fTwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc0dyb3VwUmVwb3J0XCI+XG4gICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiZ2V0Q2VsbENsYXNzKGNvbHVtbiwgcm93KVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnbmFtZScgfHwgY29sdW1uLmtleSA9PT0gJ2NwZicgfHwgY29sdW1uLmtleSA9PT0gJ2dlbmVyYWwnOyBlbHNlIHNjb3JlT3JJbnRlcnZhbENvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnbmFtZSdcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7eyByb3cubmFtZSB9fTxicj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjcGZcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7e3Jvdy5jcGZ9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNvbHVtbi5rZXkgPT09ICdnZW5lcmFsJ1wiIGNsYXNzPVwiZ2VuZXJhbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyByb3dbY29sdW1uLmtleV0gfX0lXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3Njb3JlT3JJbnRlcnZhbENvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicm93W2NvbHVtbi5rZXldICYmIHJvd1tjb2x1bW4ua2V5XS5zY29yZVQ7IGVsc2UgaW50ZXJ2YWxDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IHJvd1tjb2x1bW4ua2V5XS5zY29yZVQgfX0lXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaW50ZXJ2YWxDb250ZW50PlxuICAgICAgICAgICAgICAgICAgICB7eyByb3dbY29sdW1uLmtleV0/LmludGVydmFsIH19JVxuICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNjb2x1bW5BY3Rpb25zPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXBhLXRhYmxlX19jb2x1bW4tLWFjdGlvbnNcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiZW1pdFJvd0NsaWNrKHJvdywgJ2VkaXQnKVwiPmVkaXQ8L21hdC1pY29uPlxuICAgICAgICAgICAgPG1hdC1pY29uIChjbGljayk9XCJlbWl0Um93Q2xpY2socm93LCAnZGVsZXRlJylcIj5kZWxldGU8L21hdC1pY29uPlxuICAgICAgICAgICAgPG1hdC1pY29uIChjbGljayk9XCJlbWl0Um93Q2xpY2socm93LCAndmlzaWJpbGl0eScpXCI+dmlzaWJpbGl0eTwvbWF0LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L3RkPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cbiAgICA8dHIgbWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogZGlzcGxheWVkQ29sdW1ucztcIiBbbmdDbGFzc109XCJnZXRSb3dDbGFzcygpXCI+PC90cj5cbiAgPC90YWJsZT5cbiAgPG1hdC1wYWdpbmF0b3IgXG4gICAgY2xhc3M9XCJtYXBhLXRhYmxlX19wYWdpbmF0b3ItbGVnYWN5XCJcbiAgICBpdGVtc1BlclBhZ2VMYWJlbD1cIkl0ZW0gcG9yIHDDoWdpbmFcIlxuICAgIGFwcFN0eWxlUGFnaW5hdG9yTXZcbiAgICBbbGVuZ3RoXT1cImRhdGFTb3VyY2UgPyBkYXRhU291cmNlLmRhdGEubGVuZ3RoIDogMFwiXG4gICAgW3BhZ2VTaXplXT1cIjVcIlxuICAgIFtwYWdlU2l6ZU9wdGlvbnNdPVwiWzUsIDEwLCAyNSwgMTAwXVwiXG4gID5cbiAgPC9tYXQtcGFnaW5hdG9yPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZVxuICAjdGFibGVIZWFkZXJcbiAgbGV0LXNlbGVjdGlvbj1cInNlbGVjdGlvblwiXG4gIGxldC1jb2x1bW49XCJjb2x1bW5cIlxuICBsZXQtaXNGaXJzdD1cImlzRmlyc3RcIlxuICBsZXQtY2hlY2tib3g9XCJjaGVja2JveFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJtYXBhLXRhYmxlX19jb2x1bW4gbWFwYS10YWJsZV9fY29sdW1uLS1oZWFkZXJcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNGaXJzdCAmJiBjaGVja2JveFwiPlxuICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAoY2hhbmdlKT1cIiRldmVudCA/IHRvZ2dsZUFsbFJvd3MoKSA6IG51bGxcIlxuICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiBpc0FsbFNlbGVjdGVkKClcIlxuICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJzZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiAhaXNBbGxTZWxlY3RlZCgpXCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICA+XG4gICAgICA8L21hdC1jaGVja2JveD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwibWFwYS10YWJsZV9fbGFiZWxcIiBbbmdDbGFzc109XCJ7ICdsYWJlbF9yZXBvcnQnOiBpc0dyb3VwUmVwb3J0IH1cIj5cbiAgICAgIHt7IGNvbHVtbi5sYWJlbCB9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJjb2x1bW4ua2V5ICE9PSAnYWN0aW9ucycgJiYgY29sdW1uLnNvcnRcIj5cbiAgICAgIDxtYXQtaWNvbj5maWx0ZXJfbGlzdDwvbWF0LWljb24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9zcmMvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9zcmMvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQVEsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7O0FBWTdELE1BQU0sT0FBTyxrQkFBa0I7SUF1QjdCO1FBdEJTLFlBQU8sR0FBa0IsRUFBRSxDQUFDO1FBQzVCLFNBQUksR0FBYSxFQUFFLENBQUM7UUFLbkIsYUFBUSxHQUFnQyxJQUFJLFlBQVksRUFFL0QsQ0FBQztRQUNNLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFFL0QsZ0JBQVcsR0FBc0IsRUFBRSxDQUFDO1FBTzdDLHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQUVoQyxjQUFTLEdBQUcsSUFBSSxjQUFjLENBQU0sSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRS9CLENBQUM7SUFFaEIsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNyQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRTtZQUMzRCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsR0FBRyxDQUFDLElBQVMsRUFBRSxNQUFjLEVBQUUsRUFBRTtZQUM5RCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDOUIsTUFBTSxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxFQUFFO2dCQUMzQixPQUFPLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ3JGLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUU5QixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLE9BQU8sV0FBVyxLQUFLLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDMUI7YUFBTTtZQUNMLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFhLENBQUM7WUFDN0Qsc0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxHQUFTO1FBQ3JCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDUixPQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsTUFBTSxDQUFDO1NBQzlEO1FBQ0QsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsUUFDOUQsR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUNqQixFQUFFLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQW1CO1FBQzFCLElBQUksTUFBTSxDQUFDLElBQUksRUFBRTtZQUNmLE1BQU0sSUFBSSxHQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBRTVELElBQ0UsSUFBSSxDQUFDLFdBQVc7Z0JBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxHQUFHO2dCQUN0QyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQ3BDO2dCQUNBLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO2FBQ3pCO1lBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVU7UUFDekIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQzVCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUU7WUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUM7WUFDdkMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxLQUFjO1FBQ3BDLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUNsRCxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDeEU7UUFDRCxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFlBQVksQ0FBQyxHQUFXLEVBQUUsTUFBYztRQUN0QyxNQUFNLE9BQU8sR0FBa0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGVBQWUsQ0FBQyxHQUFRO1FBQ3RCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUI7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBa0I7WUFDN0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUN2QyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFO1NBQ2xELENBQUM7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNwQyxVQUFVLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDeEMsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDM0QsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUFFO29CQUM3QyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7aUJBQzNGO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxVQUFVLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDeEMsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUFFO29CQUM3QyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7aUJBQzNGO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBc0IsRUFBRSxHQUFXO1FBQzlDLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE1BQU0sTUFBTSxHQUE2QixFQUFFLENBQUM7UUFFNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNoQyxNQUFNLFFBQVEsR0FBMkI7Z0JBQ3ZDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUk7Z0JBQ3pCLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUc7Z0JBQ3ZCLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU87YUFDaEMsQ0FBQztZQUVGLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNsQyxRQUFRLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHO29CQUNoRCxNQUFNLEVBQUUsU0FBUyxDQUFDLE9BQU87b0JBQ3pCLFNBQVMsRUFBRSxTQUFTLENBQUMsU0FBUztpQkFDL0IsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ2xDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUc7b0JBQ3ZDLFFBQVEsRUFBRSxTQUFTLENBQUMsUUFBUTtvQkFDNUIsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTO2lCQUMvQixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFFSCxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUdELFNBQVMsQ0FBQyxNQUFtQixFQUFFLEdBQVE7UUFDckMsT0FBTyxPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUyxDQUFDO0lBQzlDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBbUIsRUFBRSxHQUFRO1FBQ3hDLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFtQixFQUFFLEdBQVE7UUFDMUMsT0FBTyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFtQixFQUFFLEdBQVE7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDM0YsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFNUMsTUFBTSxPQUFPLEdBQUc7WUFDZCxVQUFVLEVBQUUsS0FBSyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxJQUFJLFNBQVMsS0FBSyxVQUFVO1lBQ2pFLFdBQVcsRUFBRSxLQUFLLElBQUksRUFBRSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksU0FBUyxLQUFLLFVBQVU7WUFDbkUsV0FBVyxFQUFFLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLEVBQUUsSUFBSSxTQUFTLEtBQUssVUFBVTtZQUNuRSxZQUFZLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksR0FBRyxJQUFJLFNBQVMsS0FBSyxVQUFVO1lBQ3JFLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksU0FBUyxLQUFLLFVBQVU7WUFDbEUsWUFBWSxFQUFFLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLEVBQUUsSUFBSSxTQUFTLEtBQUssVUFBVTtZQUNwRSxZQUFZLEVBQUUsS0FBSyxJQUFJLEVBQUUsSUFBSSxLQUFLLElBQUksRUFBRSxJQUFJLFNBQVMsS0FBSyxVQUFVO1lBQ3BFLFlBQVksRUFBRSxLQUFLLElBQUksRUFBRSxJQUFJLEtBQUssSUFBSSxFQUFFLElBQUksU0FBUyxLQUFLLFVBQVU7WUFDcEUsYUFBYSxFQUFFLEtBQUssSUFBSSxFQUFFLElBQUksS0FBSyxJQUFJLEdBQUcsSUFBSSxTQUFTLEtBQUssVUFBVTtTQUN2RSxDQUFDO1FBRUYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPO1lBQ0wsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWE7U0FDakMsQ0FBQztJQUNKLENBQUM7O2dIQXpQVSxrQkFBa0I7b0dBQWxCLGtCQUFrQixrVkFjbEIsWUFBWSx1RUFDWixPQUFPLHFFQzVDcEIsOGpLQTZIQTs0RkRoR2Esa0JBQWtCO2tCQU45QixTQUFTOytCQUNFLFlBQVksaUJBR1AsaUJBQWlCLENBQUMsSUFBSTswRUFHNUIsT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBR0csWUFBWTtzQkFBckIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ21CLFNBQVM7c0JBQWpDLFNBQVM7dUJBQUMsWUFBWTtnQkFDSCxJQUFJO3NCQUF2QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWxlY3Rpb25Nb2RlbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvY29sbGVjdGlvbnNcIjtcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcblxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvclwiO1xuaW1wb3J0IHsgTWF0U29ydCwgU29ydCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zb3J0XCI7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGVcIjtcblxuaW1wb3J0IHsgUm93Q2xpY2tFdmVudCB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2ludGVyZmFjZXMvdGFibGUtcm93LWNsaWNrLWV2ZW50LmludGVyZmFjZVwiO1xuaW1wb3J0IHsgVGFibGVDb2x1bW4gfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9pbnRlcmZhY2VzL3RhYmxlLWNvbHVtbi5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IEdyb3VwUmVwb3J0SXRlbSB9IGZyb20gXCIuL2dyb3VwLXJlcG9ydC1pbnRlcmZhY2VcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1hcGEtdGFibGVcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi90YWJsZS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vdGFibGUuY29tcG9uZW50LnNjc3NcIl0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1hcGFUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIGNvbHVtbnM6IFRhYmxlQ29sdW1uW10gPSBbXTtcbiAgQElucHV0KCkgZGF0YTogT2JqZWN0W10gPSBbXTtcbiAgQElucHV0KCkgY2hlY2tib3g6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGFjdGlvbnM6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGZpbHRlckNvbnRyb2w6IEZvcm1Db250cm9sIHwgdW5kZWZpbmVkO1xuXG4gIEBPdXRwdXQoKSByb3dDbGljazogRXZlbnRFbWl0dGVyPFJvd0NsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICBSb3dDbGlja0V2ZW50XG4gID4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdGVkUm93czogRXZlbnRFbWl0dGVyPGFueVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG5cbiAgQElucHV0KCkgZ3JvdXBSZXBvcnQ6IEdyb3VwUmVwb3J0SXRlbVtdID0gW107XG4gIEBJbnB1dCgpIGlzR3JvdXBSZXBvcnQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7IFxuICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvcikgcGFnaW5hdG9yITogTWF0UGFnaW5hdG9yO1xuICBAVmlld0NoaWxkKE1hdFNvcnQpIHNvcnQhOiBNYXRTb3J0O1xuXG4gIGNoZWNrYm94R3JvdXAhOiBGb3JtR3JvdXA7XG4gIGRhdGFTb3VyY2UhOiBNYXRUYWJsZURhdGFTb3VyY2U8T2JqZWN0PjtcbiAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXTtcbiAgY3VycmVudFNvcnQ6IFNvcnQgfCB1bmRlZmluZWQ7XG4gIHNlbGVjdGlvbiA9IG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KHRydWUsIFtdKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYodGhpcy5pc0dyb3VwUmVwb3J0KSB7XG4gICAgICB0aGlzLmdlbmVyYXRlQ29sdW1ucygpO1xuICAgICAgdGhpcy5nZW5lcmF0ZUdyb3VwRGF0YSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlKHRoaXMuZGF0YSk7XG4gICAgdGhpcy5kYXRhU291cmNlLnBhZ2luYXRvciA9IHRoaXMucGFnaW5hdG9yO1xuICAgIHRoaXMuZGF0YVNvdXJjZS5zb3J0ID0gdGhpcy5zb3J0O1xuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IHRoaXMuY29sdW1ucy5tYXAoY29sdW1uID0+IGNvbHVtbi5rZXkpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydmaWx0ZXJDb250cm9sJ10gJiYgdGhpcy5maWx0ZXJDb250cm9sKSB7XG4gICAgICB0aGlzLnNldHVwRmlsdGVyKCk7XG4gICAgfVxuICB9XG5cbiAgc2V0dXBGaWx0ZXIoKSB7XG4gICAgdGhpcy5maWx0ZXJDb250cm9sIS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyID0gdmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmRhdGFTb3VyY2UuZmlsdGVyUHJlZGljYXRlID0gKGRhdGE6IGFueSwgZmlsdGVyOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGRhdGFTdHIgPSBPYmplY3Qua2V5cyhkYXRhKVxuICAgICAgICAucmVkdWNlKChjdXJyZW50VGVybSwga2V5KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGN1cnJlbnRUZXJtICsgKGRhdGFba2V5XSAmJiBkYXRhW2tleV0udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpIHx8ICcnKSArICcgJztcbiAgICAgICAgfSwgJycpLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICByZXR1cm4gZGF0YVN0ci5pbmRleE9mKGZpbHRlcikgIT09IC0xO1xuICAgIH07XG4gIH1cblxuICBpc0FsbFNlbGVjdGVkKCkge1xuICAgIGNvbnN0IG51bVNlbGVjdGVkID0gdGhpcy5zZWxlY3Rpb24uc2VsZWN0ZWQubGVuZ3RoO1xuICAgIGNvbnN0IG51bVJvd3MgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YS5sZW5ndGg7XG4gICAgcmV0dXJuIG51bVNlbGVjdGVkID09PSBudW1Sb3dzO1xuICB9XG5cbiAgdG9nZ2xlQWxsUm93cygpIHtcbiAgICBpZiAodGhpcy5pc0FsbFNlbGVjdGVkKCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCk7XG4gICAgICB0aGlzLmdldFNlbGVjdGVkVmFsdWVzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGRhdGFBc1BlcmlvZGljRWxlbWVudHMgPSB0aGlzLmRhdGFTb3VyY2UuZGF0YSBhcyBhbnlbXTtcbiAgICAgIGRhdGFBc1BlcmlvZGljRWxlbWVudHMuZm9yRWFjaCgocm93KSA9PiB0aGlzLnNlbGVjdGlvbi5zZWxlY3Qocm93KSk7XG4gICAgICB0aGlzLmdldFNlbGVjdGVkVmFsdWVzKCk7XG4gICAgfVxuICB9XG5cbiAgY2hlY2tib3hMYWJlbChyb3c/OiBhbnkpOiBzdHJpbmcge1xuICAgIGlmICghcm93KSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5pc0FsbFNlbGVjdGVkKCkgPyBcImRlc2VsZWN0XCIgOiBcInNlbGVjdFwifSBhbGxgO1xuICAgIH1cbiAgICByZXR1cm4gYCR7dGhpcy5zZWxlY3Rpb24uaXNTZWxlY3RlZChyb3cpID8gXCJkZXNlbGVjdFwiIDogXCJzZWxlY3RcIn0gcm93ICR7XG4gICAgICByb3cucG9zaXRpb24gKyAxXG4gICAgfWA7XG4gIH1cblxuICBzb3J0RGF0YShjb2x1bW46IFRhYmxlQ29sdW1uKTogdm9pZCB7XG4gICAgaWYgKGNvbHVtbi5zb3J0KSB7XG4gICAgICBjb25zdCBzb3J0OiBTb3J0ID0geyBhY3RpdmU6IGNvbHVtbi5rZXksIGRpcmVjdGlvbjogXCJhc2NcIiB9O1xuXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuY3VycmVudFNvcnQgJiZcbiAgICAgICAgdGhpcy5jdXJyZW50U29ydC5hY3RpdmUgPT09IGNvbHVtbi5rZXkgJiZcbiAgICAgICAgdGhpcy5jdXJyZW50U29ydC5kaXJlY3Rpb24gPT09IFwiYXNjXCJcbiAgICAgICkge1xuICAgICAgICBzb3J0LmRpcmVjdGlvbiA9IFwiZGVzY1wiO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmN1cnJlbnRTb3J0ID0gc29ydDtcbiAgICAgIHRoaXMuc29ydERhdGFGdW5jdGlvbihzb3J0KTtcbiAgICB9XG4gIH1cblxuICBzb3J0RGF0YUZ1bmN0aW9uKHNvcnQ6IFNvcnQpIHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5kYXRhU291cmNlLmRhdGEuc2xpY2UoKTtcblxuICAgIGlmICghc29ydC5hY3RpdmUgfHwgc29ydC5kaXJlY3Rpb24gPT09IFwiXCIpIHtcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gZGF0YTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IGRhdGEuc29ydCgoYTogYW55LCBiOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGlzQXNjID0gc29ydC5kaXJlY3Rpb24gPT09IFwiYXNjXCI7XG4gICAgICByZXR1cm4gdGhpcy5jb21wYXJlKGFbc29ydC5hY3RpdmVdLCBiW3NvcnQuYWN0aXZlXSwgaXNBc2MpO1xuICAgIH0pO1xuICB9XG5cbiAgY29tcGFyZShhOiBhbnksIGI6IGFueSwgaXNBc2M6IGJvb2xlYW4pIHtcbiAgICBpZiAodHlwZW9mIGEgPT09IFwic3RyaW5nXCIgJiYgdHlwZW9mIGIgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIHJldHVybiAoYS50b0xvd2VyQ2FzZSgpIDwgYi50b0xvd2VyQ2FzZSgpID8gLTEgOiAxKSAqIChpc0FzYyA/IDEgOiAtMSk7XG4gICAgfVxuICAgIHJldHVybiAoYSA8IGIgPyAtMSA6IDEpICogKGlzQXNjID8gMSA6IC0xKTtcbiAgfVxuXG4gIGVtaXRSb3dDbGljayhyb3c6IHN0cmluZywgYWN0aW9uOiBzdHJpbmcpIHtcbiAgICBjb25zdCByb3dEYXRhOiBSb3dDbGlja0V2ZW50ID0geyByb3csIGFjdGlvbiB9O1xuICAgIHRoaXMucm93Q2xpY2suZW1pdChyb3dEYXRhKTtcbiAgfVxuXG4gIHRvZ2dsZVNlbGVjdGlvbihyb3c6IGFueSkge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbi5pc1NlbGVjdGVkKHJvdykpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmRlc2VsZWN0KHJvdyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLnNlbGVjdChyb3cpO1xuICAgIH1cbiAgICB0aGlzLmdldFNlbGVjdGVkVmFsdWVzKCk7XG4gIH1cblxuICBnZXRTZWxlY3RlZFZhbHVlcygpIHtcbiAgICBjb25zdCBzZWxlY3RlZFJvd3MgPSB0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZC5tYXAoKHJvdykgPT4ge1xuICAgICAgcmV0dXJuIHsgcm93IH07XG4gICAgfSk7XG4gICAgdGhpcy5zZWxlY3RlZFJvd3MuZW1pdChzZWxlY3RlZFJvd3MpO1xuICAgIGNvbnNvbGUubG9nKHNlbGVjdGVkUm93cyk7XG4gIH1cblxuICBnZW5lcmF0ZUNvbHVtbnMoKSB7XG4gICAgY29uc3QgY29sdW1uczogVGFibGVDb2x1bW5bXSA9IFtcbiAgICAgIHsga2V5OiAnbmFtZScsIGxhYmVsOiAnJywgc29ydDogZmFsc2UgfSxcbiAgICAgIHsga2V5OiAnZ2VuZXJhbCcsIGxhYmVsOiAnJSBHZXJhbCcsIHNvcnQ6IGZhbHNlIH1cbiAgICBdO1xuICAgIHRoaXMuZ3JvdXBSZXBvcnQuZm9yRWFjaChyZXBvcnRJdGVtID0+IHtcbiAgICAgIHJlcG9ydEl0ZW0uZGltZW5zaW9ucy5mb3JFYWNoKGRpbWVuc2lvbiA9PiB7XG4gICAgICAgIGNvbnN0IGRpbWVuc2lvbktleSA9IGRpbWVuc2lvbi5kaW1lbnNpb25OYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIGNvbnN0IGRpbWVuc2lvbkxhYmVsID0gZGltZW5zaW9uLmRpbWVuc2lvbk5hbWU7XG4gICAgICAgIGlmICghdGhpcy5jb2x1bW5FeGlzdHMoY29sdW1ucywgZGltZW5zaW9uS2V5KSkge1xuICAgICAgICAgIGNvbHVtbnMucHVzaCh7IGtleTogZGltZW5zaW9uS2V5LCBsYWJlbDogZGltZW5zaW9uTGFiZWwsIHNvcnQ6IGRpbWVuc2lvbi5zb3J0IHx8IGZhbHNlIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgXG4gICAgICByZXBvcnRJdGVtLmluZGljYXRvcnMuZm9yRWFjaChpbmRpY2F0b3IgPT4ge1xuICAgICAgICBjb25zdCBpbmRpY2F0b3JLZXkgPSBpbmRpY2F0b3IubmFtZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCBpbmRpY2F0b3JMYWJlbCA9IGluZGljYXRvci5uYW1lO1xuICAgICAgICBpZiAoIXRoaXMuY29sdW1uRXhpc3RzKGNvbHVtbnMsIGluZGljYXRvcktleSkpIHtcbiAgICAgICAgICBjb2x1bW5zLnB1c2goeyBrZXk6IGluZGljYXRvcktleSwgbGFiZWw6IGluZGljYXRvckxhYmVsLCBzb3J0OiBpbmRpY2F0b3Iuc29ydCB8fCBmYWxzZSB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIFxuICAgIHRoaXMuY29sdW1ucyA9IGNvbHVtbnM7XG4gIH1cbiAgXG4gIGNvbHVtbkV4aXN0cyhjb2x1bW5zOiBUYWJsZUNvbHVtbltdLCBrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjb2x1bW5zLnNvbWUoY29sdW1uID0+IGNvbHVtbi5rZXkgPT09IGtleSk7XG4gIH1cblxuICBnZW5lcmF0ZUdyb3VwRGF0YSgpIHtcbiAgICBjb25zdCByZXN1bHQ6IHsgW2tleTogc3RyaW5nXTogYW55IH1bXSA9IFtdO1xuICBcbiAgICB0aGlzLmdyb3VwUmVwb3J0LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGNvbnN0IGRhdGFJdGVtOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge1xuICAgICAgICBuYW1lOiBpdGVtLmNhbmRpZGF0ZS5uYW1lLFxuICAgICAgICBjcGY6IGl0ZW0uY2FuZGlkYXRlLmNwZixcbiAgICAgICAgZ2VuZXJhbDogaXRlbS5jYW5kaWRhdGUuZ2VuZXJhbFxuICAgICAgfTtcbiAgXG4gICAgICBpdGVtLmRpbWVuc2lvbnMuZm9yRWFjaChkaW1lbnNpb24gPT4ge1xuICAgICAgICBkYXRhSXRlbVtkaW1lbnNpb24uZGltZW5zaW9uTmFtZS50b0xvd2VyQ2FzZSgpXSA9IHtcbiAgICAgICAgICBzY29yZVQ6IGRpbWVuc2lvbi5lc2NvcmVULFxuICAgICAgICAgIGRpcmVjdGlvbjogZGltZW5zaW9uLmRpcmVjdGlvblxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIFxuICAgICAgaXRlbS5pbmRpY2F0b3JzLmZvckVhY2goaW5kaWNhdG9yID0+IHtcbiAgICAgICAgZGF0YUl0ZW1baW5kaWNhdG9yLm5hbWUudG9Mb3dlckNhc2UoKV0gPSB7XG4gICAgICAgICAgaW50ZXJ2YWw6IGluZGljYXRvci5pbnRlcnZhbCxcbiAgICAgICAgICBkaXJlY3Rpb246IGluZGljYXRvci5kaXJlY3Rpb25cbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICBcbiAgICAgIHJlc3VsdC5wdXNoKGRhdGFJdGVtKTtcbiAgICB9KTtcbiAgXG4gICAgdGhpcy5kYXRhID0gcmVzdWx0O1xuICAgIGNvbnNvbGUubG9nKHRoaXMuZGF0YSk7XG4gIH1cbiAgXG5cbiAgaXNCb29sZWFuKGNvbHVtbjogVGFibGVDb2x1bW4sIHJvdzogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiByb3dbY29sdW1uLmtleV0gPT09ICdib29sZWFuJztcbiAgfVxuXG4gIGlzTWFza2VkRGF0YShjb2x1bW46IFRhYmxlQ29sdW1uLCByb3c6IGFueSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGZvcm1hdHMgPSBbbW9tZW50LklTT184NjAxLCBcIk1NL0REL1lZWVkgIDopICBISCptbSpzc1wiXTtcbiAgICBjb25zdCBpc0RhdGUgPSBtb21lbnQocm93W2NvbHVtbi5rZXldLCBmb3JtYXRzLCB0cnVlKS5pc1ZhbGlkKCk7XG4gICAgcmV0dXJuIChjb2x1bW4ubWFzayAmJiBpc0RhdGUpIHx8IGZhbHNlO1xuICB9XG5cbiAgZ2V0VmFsdWVBc0RhdGUoY29sdW1uOiBUYWJsZUNvbHVtbiwgcm93OiBhbnkpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUocm93W2NvbHVtbi5rZXldKTtcbiAgfVxuXG4gIGdldENlbGxDbGFzcyhjb2x1bW46IFRhYmxlQ29sdW1uLCByb3c6IGFueSk6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9IHtcbiAgICBpZiAoIXRoaXMuaXNHcm91cFJlcG9ydCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgXG4gICAgY29uc3QgdmFsdWUgPSByb3dbY29sdW1uLmtleV0uaW50ZXJ2YWwgPyByb3dbY29sdW1uLmtleV0uaW50ZXJ2YWwgOiByb3dbY29sdW1uLmtleV0uc2NvcmVUO1xuICAgIGNvbnN0IGRpcmVjdGlvbiA9IHJvd1tjb2x1bW4ua2V5XS5kaXJlY3Rpb247XG4gIFxuICAgIGNvbnN0IGNsYXNzZXMgPSB7XG4gICAgICAncmVkLTAtMjUnOiB2YWx1ZSA+PSAwICYmIHZhbHVlIDw9IDI1ICYmIGRpcmVjdGlvbiA9PT0gJ05lZ2F0aXZhJyxcbiAgICAgICdyZWQtMjYtNTAnOiB2YWx1ZSA+PSAyNiAmJiB2YWx1ZSA8PSA1MCAmJiBkaXJlY3Rpb24gPT09ICdOZWdhdGl2YScsXG4gICAgICAncmVkLTUxLTc1JzogdmFsdWUgPj0gNTEgJiYgdmFsdWUgPD0gNzUgJiYgZGlyZWN0aW9uID09PSAnTmVnYXRpdmEnLFxuICAgICAgJ3JlZC03Ni0xMDAnOiB2YWx1ZSA+PSA3NiAmJiB2YWx1ZSA8PSAxMDAgJiYgZGlyZWN0aW9uID09PSAnTmVnYXRpdmEnLFxuICAgICAgJ2JsdWUtMC0yMCc6IHZhbHVlID49IDAgJiYgdmFsdWUgPD0gMjAgJiYgZGlyZWN0aW9uID09PSAnUG9zaXRpdmEnLFxuICAgICAgJ2JsdWUtMjEtNDAnOiB2YWx1ZSA+PSAyMSAmJiB2YWx1ZSA8PSA0MCAmJiBkaXJlY3Rpb24gPT09ICdQb3NpdGl2YScsXG4gICAgICAnYmx1ZS00MS02MCc6IHZhbHVlID49IDQxICYmIHZhbHVlIDw9IDYwICYmIGRpcmVjdGlvbiA9PT0gJ1Bvc2l0aXZhJyxcbiAgICAgICdibHVlLTYxLTgwJzogdmFsdWUgPj0gNjEgJiYgdmFsdWUgPD0gODAgJiYgZGlyZWN0aW9uID09PSAnUG9zaXRpdmEnLFxuICAgICAgJ2JsdWUtODEtMTAwJzogdmFsdWUgPj0gODEgJiYgdmFsdWUgPD0gMTAwICYmIGRpcmVjdGlvbiA9PT0gJ1Bvc2l0aXZhJyxcbiAgICB9O1xuICAgIFxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG5cbiAgZ2V0Um93Q2xhc3MoKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0ge1xuICAgIHJldHVybiB7XG4gICAgICAncm93LWhvdmVyJzogIXRoaXMuaXNHcm91cFJlcG9ydFxuICAgIH07XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJtYXBhLXRhYmxlXCI+XG4gIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiIG1hdFNvcnQgKG1hdFNvcnRDaGFuZ2UpPVwic29ydERhdGFGdW5jdGlvbigkZXZlbnQpXCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zOyBsZXQgaXNGaXJzdCA9IGZpcnN0XCJcbiAgICAgIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uLmtleVwiIFxuICAgID5cbiAgICAgIDx0aFxuICAgICAgICBtYXQtaGVhZGVyLWNlbGxcbiAgICAgICAgKm1hdEhlYWRlckNlbGxEZWZcbiAgICAgICAgbWF0LXNvcnQtaGVhZGVyXG4gICAgICAgIFtkaXNhYmxlZF09XCIhKGNvbHVtbi5rZXkgIT09ICdhY3Rpb25zJyA/IGNvbHVtbi5zb3J0IDogbnVsbClcIlxuICAgICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFibGVIZWFkZXJcIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHNlbGVjdGlvbiwgY29sdW1uLCBpc0ZpcnN0LCBjaGVja2JveCB9XCJcbiAgICAgICAgPjwvZGl2PlxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIj5cbiAgICAgICAgPGRpdiBcbiAgICAgICAgICBjbGFzcz1cIm1hcGEtdGFibGVfX2NvbHVtblwiXG4gICAgICAgICAgKGNsaWNrKT1cImVtaXRSb3dDbGljayhyb3csICcnKVwiXG4gICAgICAgICAgKm5nSWY9XCJjb2x1bW4ua2V5ICE9PSAnYWN0aW9ucyc7IGVsc2UgY29sdW1uQWN0aW9uc1wiXG4gICAgICAgID4gXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRmlyc3QgJiYgY2hlY2tib3hcIj5cbiAgICAgICAgICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgICAgICAgIChjaGFuZ2UpPVwiJGV2ZW50ID8gc2VsZWN0aW9uLnRvZ2dsZShyb3cpIDogbnVsbDsgZ2V0U2VsZWN0ZWRWYWx1ZXMoKVwiXG4gICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvbi5pc1NlbGVjdGVkKHJvdylcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlX19jb2x1bW5cIiBbbmdDbGFzc109XCJ7ICdjZW50ZXItY2VsbCc6IGlzR3JvdXBSZXBvcnQgfVwiPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0dyb3VwUmVwb3J0XCI+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc01hc2tlZERhdGEoY29sdW1uLCByb3cpOyBlbHNlIHN0YXR1c0NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICB7eyBnZXRWYWx1ZUFzRGF0ZShjb2x1bW4sIHJvdykgfCBkYXRlOiBjb2x1bW4ubWFzayB9fVxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzdGF0dXNDb250ZW50PlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4uc3RhdHVzTGFiZWw7IGVsc2UgY29tbW9uQ29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQm9vbGVhbihjb2x1bW4sIHJvdyk7IGVsc2UgY29tbW9uU3RhdHVzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5zdGF0dXNMYWJlbFtyb3dbY29sdW1uLmtleV0gPyAxIDogMF0gfX1cbiAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjb21tb25TdGF0dXM+e3sgY29sdW1uLnN0YXR1c0xhYmVsW3Jvd1tjb2x1bW4ua2V5XSAtIDFdIH19PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbW1vbkNvbnRlbnQ+e3sgcm93W2NvbHVtbi5rZXldIH19PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzdGF0dXNDb250ZW50PlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY29tbW9uQ29udGVudD57eyByb3dbY29sdW1uLmtleV0gfX08L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNHcm91cFJlcG9ydFwiPlxuICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImdldENlbGxDbGFzcyhjb2x1bW4sIHJvdylcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLmtleSA9PT0gJ25hbWUnIHx8IGNvbHVtbi5rZXkgPT09ICdjcGYnIHx8IGNvbHVtbi5rZXkgPT09ICdnZW5lcmFsJzsgZWxzZSBzY29yZU9ySW50ZXJ2YWxDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLmtleSA9PT0gJ25hbWUnXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAge3sgcm93Lm5hbWUgfX08YnI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3BmXCI+XG4gICAgICAgICAgICAgICAgICAgICAge3tyb3cuY3BmfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb2x1bW4ua2V5ID09PSAnZ2VuZXJhbCdcIiBjbGFzcz1cImdlbmVyYWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgcm93W2NvbHVtbi5rZXldIH19JVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzY29yZU9ySW50ZXJ2YWxDb250ZW50PlxuICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJvd1tjb2x1bW4ua2V5XSAmJiByb3dbY29sdW1uLmtleV0uc2NvcmVUOyBlbHNlIGludGVydmFsQ29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyByb3dbY29sdW1uLmtleV0uc2NvcmVUIH19JVxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2ludGVydmFsQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAge3sgcm93W2NvbHVtbi5rZXldPy5pbnRlcnZhbCB9fSVcbiAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjY29sdW1uQWN0aW9ucz5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFwYS10YWJsZV9fY29sdW1uLS1hY3Rpb25zXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gKGNsaWNrKT1cImVtaXRSb3dDbGljayhyb3csICdlZGl0JylcIj5lZGl0PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiZW1pdFJvd0NsaWNrKHJvdywgJ2RlbGV0ZScpXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiZW1pdFJvd0NsaWNrKHJvdywgJ3Zpc2liaWxpdHknKVwiPnZpc2liaWxpdHk8L21hdC1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvdHI+XG4gICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbHVtbnM7XCIgW25nQ2xhc3NdPVwiZ2V0Um93Q2xhc3MoKVwiPjwvdHI+XG4gIDwvdGFibGU+XG4gIDxtYXQtcGFnaW5hdG9yIFxuICAgIGNsYXNzPVwibWFwYS10YWJsZV9fcGFnaW5hdG9yLWxlZ2FjeVwiXG4gICAgaXRlbXNQZXJQYWdlTGFiZWw9XCJJdGVtIHBvciBww6FnaW5hXCJcbiAgICBhcHBTdHlsZVBhZ2luYXRvck12XG4gICAgW2xlbmd0aF09XCJkYXRhU291cmNlID8gZGF0YVNvdXJjZS5kYXRhLmxlbmd0aCA6IDBcIlxuICAgIFtwYWdlU2l6ZV09XCI1XCJcbiAgICBbcGFnZVNpemVPcHRpb25zXT1cIls1LCAxMCwgMjUsIDEwMF1cIlxuICA+XG4gIDwvbWF0LXBhZ2luYXRvcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGVcbiAgI3RhYmxlSGVhZGVyXG4gIGxldC1zZWxlY3Rpb249XCJzZWxlY3Rpb25cIlxuICBsZXQtY29sdW1uPVwiY29sdW1uXCJcbiAgbGV0LWlzRmlyc3Q9XCJpc0ZpcnN0XCJcbiAgbGV0LWNoZWNrYm94PVwiY2hlY2tib3hcIlxuPlxuICA8ZGl2IGNsYXNzPVwibWFwYS10YWJsZV9fY29sdW1uIG1hcGEtdGFibGVfX2NvbHVtbi0taGVhZGVyXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRmlyc3QgJiYgY2hlY2tib3hcIj5cbiAgICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyB0b2dnbGVBbGxSb3dzKCkgOiBudWxsXCJcbiAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0aW9uLmhhc1ZhbHVlKCkgJiYgaXNBbGxTZWxlY3RlZCgpXCJcbiAgICAgICAgW2luZGV0ZXJtaW5hdGVdPVwic2VsZWN0aW9uLmhhc1ZhbHVlKCkgJiYgIWlzQWxsU2VsZWN0ZWQoKVwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgPlxuICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cIm1hcGEtdGFibGVfX2xhYmVsXCIgW25nQ2xhc3NdPVwieyAnbGFiZWxfcmVwb3J0JzogaXNHcm91cFJlcG9ydCB9XCI+XG4gICAgICB7eyBjb2x1bW4ubGFiZWwgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLmtleSAhPT0gJ2FjdGlvbnMnICYmIGNvbHVtbi5zb3J0XCI+XG4gICAgICA8bWF0LWljb24+ZmlsdGVyX2xpc3Q8L21hdC1pY29uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,16 +1,38 @@
1
1
  import { Component, Input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/icon";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/material/icon";
4
5
  export class MapaWarningComponent {
6
+ constructor() {
7
+ this.lowReliabilityReports = [];
8
+ this.showFirstLine = false;
9
+ this.showSecondLine = false;
10
+ this.expirationDateReports = [];
11
+ this.nonExpirationDateReports = [];
12
+ }
13
+ ngOnInit() {
14
+ this.updateVisibilityFlags();
15
+ this.generateReportArrays();
16
+ }
17
+ updateVisibilityFlags() {
18
+ this.showFirstLine = this.lowReliabilityReports.some(report => report.instrument && report.date);
19
+ this.showSecondLine = this.lowReliabilityReports.some(report => report.isExpirationDate);
20
+ }
21
+ generateReportArrays() {
22
+ this.expirationDateReports = this.lowReliabilityReports
23
+ .filter(report => report.isExpirationDate)
24
+ .map((report, index, array) => `${report.instrument} - ${report.date}${index < array.length - 1 ? ', ' : ''}`);
25
+ this.nonExpirationDateReports = this.lowReliabilityReports
26
+ .filter(report => !report.isExpirationDate)
27
+ .map((report, index, array) => `${report.instrument} - ${report.date}${index < array.length - 1 ? ', ' : ''}`);
28
+ }
5
29
  }
6
30
  MapaWarningComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaWarningComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- MapaWarningComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaWarningComponent, selector: "mapa-warning", inputs: { firstLine: "firstLine", secondLine: "secondLine" }, ngImport: i0, template: "<div class=\"warning\">\n <div class=\"material-icons\">\n <mat-icon>warning</mat-icon>\n </div>\n <div>\n <p>\n {{ firstLine }}\n </p>\n <p>\n {{ secondLine }}\n </p>\n </div>\n</div>\n", styles: [".warning{background:#eedb2a;display:flex;padding:21px 45px;align-items:flex-start}.warning p{font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:500;line-height:20px;margin:0}.warning .material-icons{margin-right:16px;margin-top:auto;margin-bottom:auto;display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
31
+ MapaWarningComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaWarningComponent, selector: "mapa-warning", inputs: { lowReliabilityReports: "lowReliabilityReports" }, ngImport: i0, template: "<div class=\"warning\">\n <div class=\"material-icons\">\n <mat-icon>warning</mat-icon>\n </div>\n <div>\n <p *ngIf=\"showFirstLine\">\n N\u00EDvel baixo de confiabilidade no(s) teste(s): \n <span *ngFor=\"let report of nonExpirationDateReports\">{{ report }}</span>.\n </p>\n <p *ngIf=\"showSecondLine\">\n O prazo de validade do(s) teste(s) est\u00E1 no limite: \n <span *ngFor=\"let report of expirationDateReports\">{{ report }}</span>.\n </p>\n </div>\n</div>\n", styles: [".warning{background:#eedb2a;display:flex;padding:21px 45px;align-items:flex-start}.warning p{font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:500;line-height:20px;margin:0}.warning .material-icons{margin-right:16px;margin-top:auto;margin-bottom:auto;display:flex;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
8
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaWarningComponent, decorators: [{
9
33
  type: Component,
10
- args: [{ selector: 'mapa-warning', template: "<div class=\"warning\">\n <div class=\"material-icons\">\n <mat-icon>warning</mat-icon>\n </div>\n <div>\n <p>\n {{ firstLine }}\n </p>\n <p>\n {{ secondLine }}\n </p>\n </div>\n</div>\n", styles: [".warning{background:#eedb2a;display:flex;padding:21px 45px;align-items:flex-start}.warning p{font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:500;line-height:20px;margin:0}.warning .material-icons{margin-right:16px;margin-top:auto;margin-bottom:auto;display:flex;align-items:center;justify-content:center}\n"] }]
11
- }], propDecorators: { firstLine: [{
12
- type: Input
13
- }], secondLine: [{
34
+ args: [{ selector: 'mapa-warning', template: "<div class=\"warning\">\n <div class=\"material-icons\">\n <mat-icon>warning</mat-icon>\n </div>\n <div>\n <p *ngIf=\"showFirstLine\">\n N\u00EDvel baixo de confiabilidade no(s) teste(s): \n <span *ngFor=\"let report of nonExpirationDateReports\">{{ report }}</span>.\n </p>\n <p *ngIf=\"showSecondLine\">\n O prazo de validade do(s) teste(s) est\u00E1 no limite: \n <span *ngFor=\"let report of expirationDateReports\">{{ report }}</span>.\n </p>\n </div>\n</div>\n", styles: [".warning{background:#eedb2a;display:flex;padding:21px 45px;align-items:flex-start}.warning p{font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:500;line-height:20px;margin:0}.warning .material-icons{margin-right:16px;margin-top:auto;margin-bottom:auto;display:flex;align-items:center;justify-content:center}\n"] }]
35
+ }], propDecorators: { lowReliabilityReports: [{
14
36
  type: Input
15
37
  }] } });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FybmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBhLWxpYnJhcnktdWkvc3JjL2xpYi9jb21wb25lbnRzL3dhcm5pbmcvc3JjL3dhcm5pbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy93YXJuaW5nL3NyYy93YXJuaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPakQsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjtzR0FBcEIsb0JBQW9CLGtIQ1BqQyx5TkFhQTs0RkROYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsY0FBYzs4QkFLZixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hcGEtd2FybmluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi93YXJuaW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FybmluZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hcGFXYXJuaW5nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZmlyc3RMaW5lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHNlY29uZExpbmU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cbiIsIjxkaXYgY2xhc3M9XCJ3YXJuaW5nXCI+XG4gIDxkaXYgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiPlxuICAgIDxtYXQtaWNvbj53YXJuaW5nPC9tYXQtaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXY+XG4gICAgPHA+XG4gICAgICB7eyBmaXJzdExpbmUgfX1cbiAgICA8L3A+XG4gICAgPHA+XG4gICAgICB7eyBzZWNvbmRMaW5lIH19XG4gICAgPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FybmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBhLWxpYnJhcnktdWkvc3JjL2xpYi9jb21wb25lbnRzL3dhcm5pbmcvc3JjL3dhcm5pbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy93YXJuaW5nL3NyYy93YXJuaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF5QixNQUFNLGVBQWUsQ0FBQzs7OztBQU94RSxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBTVUsMEJBQXFCLEdBQVcsRUFBRSxDQUFDO1FBQzNDLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLDBCQUFxQixHQUFhLEVBQUUsQ0FBQztRQUNyQyw2QkFBd0IsR0FBYSxFQUFFLENBQUM7S0FxQnpDO0lBbkJDLFFBQVE7UUFDTixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxxQkFBcUI7YUFDcEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO2FBQ3pDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxVQUFVLE1BQU0sTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqSCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjthQUN2RCxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQzthQUMxQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsVUFBVSxNQUFNLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbkgsQ0FBQzs7a0hBekJVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLGdIQ1BqQywyZkFlQTs0RkRSYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsY0FBYzs4QkFLaEIscUJBQXFCO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hcGEtd2FybmluZycsXG4gIHRlbXBsYXRlVXJsOiAnLi93YXJuaW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FybmluZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hcGFXYXJuaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuICBASW5wdXQoKWxvd1JlbGlhYmlsaXR5UmVwb3J0czogYW55IFtdID0gW107XG4gIHNob3dGaXJzdExpbmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2hvd1NlY29uZExpbmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXhwaXJhdGlvbkRhdGVSZXBvcnRzOiBzdHJpbmdbXSA9IFtdO1xuICBub25FeHBpcmF0aW9uRGF0ZVJlcG9ydHM6IHN0cmluZ1tdID0gW107XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5RmxhZ3MoKTtcbiAgICB0aGlzLmdlbmVyYXRlUmVwb3J0QXJyYXlzKCk7XG4gIH1cblxuICB1cGRhdGVWaXNpYmlsaXR5RmxhZ3MoKSB7XG4gICAgdGhpcy5zaG93Rmlyc3RMaW5lID0gdGhpcy5sb3dSZWxpYWJpbGl0eVJlcG9ydHMuc29tZShyZXBvcnQgPT4gcmVwb3J0Lmluc3RydW1lbnQgJiYgcmVwb3J0LmRhdGUpO1xuICAgIHRoaXMuc2hvd1NlY29uZExpbmUgPSB0aGlzLmxvd1JlbGlhYmlsaXR5UmVwb3J0cy5zb21lKHJlcG9ydCA9PiByZXBvcnQuaXNFeHBpcmF0aW9uRGF0ZSk7XG4gIH1cblxuICBnZW5lcmF0ZVJlcG9ydEFycmF5cygpIHtcbiAgICB0aGlzLmV4cGlyYXRpb25EYXRlUmVwb3J0cyA9IHRoaXMubG93UmVsaWFiaWxpdHlSZXBvcnRzXG4gICAgICAuZmlsdGVyKHJlcG9ydCA9PiByZXBvcnQuaXNFeHBpcmF0aW9uRGF0ZSlcbiAgICAgIC5tYXAoKHJlcG9ydCwgaW5kZXgsIGFycmF5KSA9PiBgJHtyZXBvcnQuaW5zdHJ1bWVudH0gLSAke3JlcG9ydC5kYXRlfSR7aW5kZXggPCBhcnJheS5sZW5ndGggLSAxID8gJywgJyA6ICcnfWApO1xuXG4gICAgdGhpcy5ub25FeHBpcmF0aW9uRGF0ZVJlcG9ydHMgPSB0aGlzLmxvd1JlbGlhYmlsaXR5UmVwb3J0c1xuICAgICAgLmZpbHRlcihyZXBvcnQgPT4gIXJlcG9ydC5pc0V4cGlyYXRpb25EYXRlKVxuICAgICAgLm1hcCgocmVwb3J0LCBpbmRleCwgYXJyYXkpID0+IGAke3JlcG9ydC5pbnN0cnVtZW50fSAtICR7cmVwb3J0LmRhdGV9JHtpbmRleCA8IGFycmF5Lmxlbmd0aCAtIDEgPyAnLCAnIDogJyd9YCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3YXJuaW5nXCI+XG4gIDxkaXYgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiPlxuICAgIDxtYXQtaWNvbj53YXJuaW5nPC9tYXQtaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXY+XG4gICAgPHAgKm5nSWY9XCJzaG93Rmlyc3RMaW5lXCI+XG4gICAgICBOw612ZWwgYmFpeG8gZGUgY29uZmlhYmlsaWRhZGUgbm8ocykgdGVzdGUocyk6IFxuICAgICAgPHNwYW4gKm5nRm9yPVwibGV0IHJlcG9ydCBvZiBub25FeHBpcmF0aW9uRGF0ZVJlcG9ydHNcIj57eyByZXBvcnQgfX08L3NwYW4+LlxuICAgIDwvcD5cbiAgICA8cCAqbmdJZj1cInNob3dTZWNvbmRMaW5lXCI+XG4gICAgICBPIHByYXpvIGRlIHZhbGlkYWRlIGRvKHMpIHRlc3RlKHMpIGVzdMOhIG5vIGxpbWl0ZTogXG4gICAgICA8c3BhbiAqbmdGb3I9XCJsZXQgcmVwb3J0IG9mIGV4cGlyYXRpb25EYXRlUmVwb3J0c1wiPnt7IHJlcG9ydCB9fTwvc3Bhbj4uXG4gICAgPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -265,6 +265,23 @@ class MapaTableComponent {
265
265
  this.dataSource.sort = this.sort;
266
266
  this.displayedColumns = this.columns.map(column => column.key);
267
267
  }
268
+ ngOnChanges(changes) {
269
+ if (changes['filterControl'] && this.filterControl) {
270
+ this.setupFilter();
271
+ }
272
+ }
273
+ setupFilter() {
274
+ this.filterControl.valueChanges.subscribe((value) => {
275
+ this.dataSource.filter = value.trim().toLowerCase();
276
+ });
277
+ this.dataSource.filterPredicate = (data, filter) => {
278
+ const dataStr = Object.keys(data)
279
+ .reduce((currentTerm, key) => {
280
+ return currentTerm + (data[key] && data[key].toString().toLowerCase() || '') + ' ';
281
+ }, '').trim().toLowerCase();
282
+ return dataStr.indexOf(filter) !== -1;
283
+ };
284
+ }
268
285
  isAllSelected() {
269
286
  const numSelected = this.selection.selected.length;
270
287
  const numRows = this.dataSource.data.length;
@@ -424,10 +441,10 @@ class MapaTableComponent {
424
441
  }
425
442
  }
426
443
  MapaTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
427
- MapaTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaTableComponent, selector: "mapa-table", inputs: { columns: "columns", data: "data", checkbox: "checkbox", actions: "actions", groupReport: "groupReport", isGroupReport: "isGroupReport" }, outputs: { rowClick: "rowClick", selectedRows: "selectedRows" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], ngImport: i0, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{justify-content:space-between;width:100%}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: PaginatorLegacyDirective, selector: "[appStylePaginatorMv]" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None });
444
+ MapaTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaTableComponent, selector: "mapa-table", inputs: { columns: "columns", data: "data", checkbox: "checkbox", actions: "actions", filterControl: "filterControl", groupReport: "groupReport", isGroupReport: "isGroupReport" }, outputs: { rowClick: "rowClick", selectedRows: "selectedRows" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{width:100%}.mapa-table__column--header .mat-icon{margin:0 7px}.mapa-table .mat-sort-header-arrow{color:transparent}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: PaginatorLegacyDirective, selector: "[appStylePaginatorMv]" }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None });
428
445
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaTableComponent, decorators: [{
429
446
  type: Component,
430
- args: [{ selector: "mapa-table", encapsulation: ViewEncapsulation.None, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{justify-content:space-between;width:100%}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"] }]
447
+ args: [{ selector: "mapa-table", encapsulation: ViewEncapsulation.None, template: "<div class=\"mapa-table\">\n <table mat-table [dataSource]=\"dataSource\" matSort (matSortChange)=\"sortDataFunction($event)\">\n <ng-container\n *ngFor=\"let column of columns; let isFirst = first\"\n [matColumnDef]=\"column.key\" \n >\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n [disabled]=\"!(column.key !== 'actions' ? column.sort : null)\"\n >\n <div\n [ngTemplateOutlet]=\"tableHeader\"\n [ngTemplateOutletContext]=\"{ selection, column, isFirst, checkbox }\"\n ></div>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <div \n class=\"mapa-table__column\"\n (click)=\"emitRowClick(row, '')\"\n *ngIf=\"column.key !== 'actions'; else columnActions\"\n > \n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null; getSelectedValues()\"\n [checked]=\"selection.isSelected(row)\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"table__column\" [ngClass]=\"{ 'center-cell': isGroupReport }\">\n <div *ngIf=\"!isGroupReport\">\n <ng-container *ngIf=\"isMaskedData(column, row); else statusContent\">\n {{ getValueAsDate(column, row) | date: column.mask }}\n </ng-container>\n <ng-template #statusContent>\n <ng-container *ngIf=\"column.statusLabel; else commonContent\">\n <ng-container *ngIf=\"isBoolean(column, row); else commonStatus\">\n {{ column.statusLabel[row[column.key] ? 1 : 0] }}\n </ng-container>\n <ng-template #commonStatus>{{ column.statusLabel[row[column.key] - 1] }}</ng-template>\n </ng-container>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n <ng-template #statusContent>\n <ng-template #commonContent>{{ row[column.key] }}</ng-template>\n </ng-template>\n </div>\n <div *ngIf=\"isGroupReport\">\n <div [ngClass]=\"getCellClass(column, row)\">\n <ng-container *ngIf=\"column.key === 'name' || column.key === 'cpf' || column.key === 'general'; else scoreOrIntervalContent\">\n <div *ngIf=\"column.key === 'name'\">\n <div class=\"name\">\n {{ row.name }}<br>\n </div>\n <div class=\"cpf\">\n {{row.cpf}}\n </div>\n </div>\n <div *ngIf=\"column.key === 'general'\" class=\"general\">\n {{ row[column.key] }}%\n </div>\n </ng-container>\n <ng-template #scoreOrIntervalContent>\n <ng-container *ngIf=\"row[column.key] && row[column.key].scoreT; else intervalContent\">\n {{ row[column.key].scoreT }}%\n </ng-container>\n <ng-template #intervalContent>\n {{ row[column.key]?.interval }}%\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n <ng-template #columnActions>\n <div class=\"mapa-table__column--actions\">\n <mat-icon (click)=\"emitRowClick(row, 'edit')\">edit</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'delete')\">delete</mat-icon>\n <mat-icon (click)=\"emitRowClick(row, 'visibility')\">visibility</mat-icon>\n </div>\n </ng-template>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\" [ngClass]=\"getRowClass()\"></tr>\n </table>\n <mat-paginator \n class=\"mapa-table__paginator-legacy\"\n itemsPerPageLabel=\"Item por p\u00E1gina\"\n appStylePaginatorMv\n [length]=\"dataSource ? dataSource.data.length : 0\"\n [pageSize]=\"5\"\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\n >\n </mat-paginator>\n</div>\n\n<ng-template\n #tableHeader\n let-selection=\"selection\"\n let-column=\"column\"\n let-isFirst=\"isFirst\"\n let-checkbox=\"checkbox\"\n>\n <div class=\"mapa-table__column mapa-table__column--header\">\n <ng-container *ngIf=\"isFirst && checkbox\">\n <mat-checkbox\n (change)=\"$event ? toggleAllRows() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\"\n (click)=\"$event.stopPropagation()\"\n >\n </mat-checkbox>\n </ng-container>\n <div class=\"mapa-table__label\" [ngClass]=\"{ 'label_report': isGroupReport }\">\n {{ column.label }}\n </div>\n <div *ngIf=\"column.key !== 'actions' && column.sort\">\n <mat-icon>filter_list</mat-icon>\n </div>\n </div>\n</ng-template>\n", styles: [".mapa-table .mat-table{font-family:SF-Pro;width:100%}.mapa-table .mat-table .mat-checkbox{margin:6px 8px 0 0;padding:0}.mapa-table td.mat-cell{padding:16px 0}.mapa-table .mat-table .mat-row .mat-cell{font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:400;color:#50575e}.mapa-table .row-hover:hover{box-shadow:0 2px 4px #00000021;outline:1px solid rgba(238,238,238,.93);cursor:pointer}.mapa-table .mat-table .mat-header-cell{border:none;border-bottom:1px solid #eee;font-family:SF-Pro;font-size:16px;font-style:normal;font-weight:600;color:#50575e}.mapa-table .mat-icon{cursor:pointer;position:relative;bottom:-3px;margin:0 7px 0 0;font-size:14px;height:14px;width:14px}.mapa-table .mat-mdc-row,.mapa-table .mdc-data-table__content,.mapa-table .mat-mdc-header-cell{--mat-table-row-item-label-text-font: \"SF-Pro\"}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-frame{border-color:#b6b6b6}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-frame{border-color:#ea561d}.mapa-table .mat-checkbox.mat-accent .mat-checkbox-background{background-color:transparent}.mapa-table .mat-checkbox.mat-accent.mat-checkbox-checked .mat-checkbox-background{background-color:#ea561d}.mapa-table .mat-mdc-paginator-container{display:flex;justify-content:space-between}.mapa-table ::ng-deep .mat-mdc-paginator-page-size-label{display:none}.mapa-table__paginator-legacy .mat-paginator-container{font-family:SF-Pro!important;justify-content:flex-start}.mapa-table__paginator-legacy .mat-paginator-page-size{margin-right:10vw}.mapa-table__paginator-legacy .custom-paginator-container{justify-content:flex-end}.mapa-table__paginator-legacy .custom-paginator-counter{white-space:nowrap;margin:0 4px 0 10px!important}.mapa-table__paginator-legacy .custom-paginator-page{border-radius:4px;outline:none;border:none;margin:.4em;font-size:14px;min-width:24px;width:auto;min-height:24px;max-height:24px;padding:1px 6px}.mapa-table__paginator-legacy .custom-paginator-page-enabled{color:#50575e;background:transparent;cursor:pointer}.mapa-table__paginator-legacy .custom-paginator-page-enabled:hover{background-color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-page-disabled{background-color:#ea561d;color:#fff}.mapa-table__paginator-legacy .custom-paginator-arrow-disabled{color:#dfe3e6}.mapa-table__paginator-legacy .custom-paginator-arrow-enabled{color:#999}.mapa-table{width:100%;white-space:nowrap}.mapa-table__label{margin-top:4px}.mapa-table__column{padding:15px;align-items:center;display:flex}.mapa-table__column--actions{display:flex}.mapa-table__column--actions .mat-icon{color:#ea561d!important}.mapa-table__column--header{width:100%}.mapa-table__column--header .mat-icon{margin:0 7px}.mapa-table .mat-sort-header-arrow{color:transparent}.mapa-table .mat-sort-header-content{width:100%}.mapa-table .mat-cell,.mapa-table .mat-header-cell{padding:0 10px!important}.mapa-table .mat-table{width:100%;overflow-x:auto}.mapa-table .red-0-25{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f598a7;color:#000}.mapa-table .red-26-50{width:43px;height:43px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f56580;color:#000}.mapa-table .red-51-75{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#f4284e;color:#fff}.mapa-table .red-76-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#c11c2f;color:#fff}.mapa-table .blue-0-20{width:40px;height:40px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#96f2ee;color:#fff}.mapa-table .blue-21-40{width:42px;height:42px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#68ceee;color:#fff}.mapa-table .blue-41-60{width:44px;height:44px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#2d9ced;color:#fff}.mapa-table .blue-61-80{width:46px;height:46px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#0e6ece;color:#fff}.mapa-table .blue-81-100{width:48px;height:48px;border-radius:24px;display:flex;justify-content:center;align-items:center;background-color:#073e92;color:#fff}.mapa-table .roundCell{border-radius:10px}.mapa-table .general{border-radius:24px;border:1px solid #dcdcde;display:flex;justify-content:center;align-items:center;width:48px;height:48px}.mapa-table .name{color:#181818;text-align:left;font-family:SF-Pro;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.mapa-table .cpf{color:var(--Grey-Grey-30, #8c8f94);text-align:left;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.mapa-table .center-cell{margin:auto}.mapa-table .label_report{color:#181818;text-align:center;font-family:SF-Pro;font-size:12px;font-style:normal;font-weight:400;line-height:16px}\n"] }]
431
448
  }], ctorParameters: function () { return []; }, propDecorators: { columns: [{
432
449
  type: Input
433
450
  }], data: [{
@@ -436,6 +453,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
436
453
  type: Input
437
454
  }], actions: [{
438
455
  type: Input
456
+ }], filterControl: [{
457
+ type: Input
439
458
  }], rowClick: [{
440
459
  type: Output
441
460
  }], selectedRows: [{