ngx-st-tables 1.1.10 → 1.1.11

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.
@@ -67,10 +67,10 @@ export class SelectTableComponent {
67
67
  }
68
68
  }
69
69
  SelectTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
- SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "lib-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
70
+ SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "ngx-st-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
71
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, decorators: [{
72
72
  type: Component,
73
- args: [{ selector: 'lib-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
73
+ args: [{ selector: 'ngx-st-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
74
74
  }], ctorParameters: function () { return []; }, propDecorators: { paginator: [{
75
75
  type: ViewChild,
76
76
  args: [MatPaginator]
@@ -97,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
97
97
  }], returnRowSelected: [{
98
98
  type: Output
99
99
  }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC10YWJsZXMvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC10YWJsZS9zZWxlY3QtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXRhYmxlcy9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0LXRhYmxlL3NlbGVjdC10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFVcEQsTUFBTSxPQUFPLG9CQUFvQjtJQTBEL0I7UUFuREEsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBUzFCLGdCQUFXLEdBQVcsUUFBUSxDQUFDO1FBRy9CLGtCQUFhLEdBQVcsVUFBVSxDQUFDO1FBdUIzQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU1QixXQUFNLEdBQXVCLElBQUksa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEQsZ0JBQVcsR0FBVSxFQUFFLENBQUM7SUFFVCxDQUFDO0lBbENoQixJQUNJLGNBQWMsQ0FBQyxHQUE4QjtRQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdB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XG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXNlbGVjdC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9zZWxlY3QtdGFibGUuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi8uLi8uLi9hc3NldHMvYmFzZS10YWJsZS5zY3NzJyxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvcikgcGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG5cbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgaW5pdFNlbGVjdGVkOiBhbnk7XG5cbiAgQElucHV0KClcbiAgaW5pdFNlYXJjaFZhbDogYW55O1xuXG4gIEBJbnB1dCgpXG4gIHNlYXJjaExhYmVsOiBzdHJpbmcgPSAnU2VhcmNoJztcblxuICBASW5wdXQoKVxuICBzZWxlY3RlZExhYmVsOiBzdHJpbmcgPSAnU2VsZWN0ZWQnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZXRJbml0Q29sdW1ucyhjb2w6IHsgW2NvbDogc3RyaW5nXTogc3RyaW5nIH0pIHtcbiAgICB0aGlzLmNvbHVtbnMgPSBbJ2FjdGl2ZScsIC4uLk9iamVjdC5rZXlzKGNvbCldO1xuICAgIHRoaXMuaW5pdENvbHVtbnMgPSBjb2w7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgdGFibGVEYXRhKGRhdGE6IGFueVtdKSB7XG4gICAgdGhpcy50YWJsZVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoZGF0YSk7XG4gICAgdGhpcy50YWJsZVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcjtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWxpZEVycm9yKGVycm9yOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmFsaWRFcnJvciA9IGVycm9yO1xuICB9XG5cbiAgZ2V0IHZhbGlkRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbGlkRXJyb3I7XG4gIH1cblxuICBwcml2YXRlIF92YWxpZEVycm9yID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIHJldHVyblJvd1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8YW55W10+O1xuXG4gIHRhYmxlU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8YW55PjtcbiAgY29sdW1uczogc3RyaW5nW107XG4gIGluaXRDb2x1bW5zOiB7XG4gICAgW2NvbDogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xuICBzZWFyY2g6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpO1xuICByb3dTZWxlY3RlZDogYW55W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2gudmFsdWVDaGFuZ2VzLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgdGhpcy50YWJsZVNvdXJjZS5maWx0ZXIgPSByZXMudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gICAgfSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pbml0U2VhcmNoVmFsKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoLnNldFZhbHVlKHRoaXMuaW5pdFNlYXJjaFZhbCk7XG4gICAgICAgIHRoaXMucm93Q2xpY2sodGhpcy5pbml0U2VsZWN0ZWQpO1xuICAgICAgfVxuICAgIH0sIDEwMDApO1xuICB9XG5cbiAgY2xlYXJTZWFyY2goKSB7XG4gICAgdGhpcy5zZWFyY2guc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgcm93Q2xpY2socm93OiBhbnkpIHtcbiAgICBjb25zdCBmb3VuZCA9IHRoaXMucm93U2VsZWN0ZWQuZmluZCh0bXBSb3cgPT4gdG1wUm93ID09PSByb3cpO1xuICAgIGlmIChmb3VuZCkge1xuICAgICAgdGhpcy5yb3dTZWxlY3RlZCA9IHRoaXMucm93U2VsZWN0ZWQuZmlsdGVyKHRtcFJvdyA9PiB0bXBSb3cgIT09IHJvdyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHRoaXMucm93U2VsZWN0ZWQucHVzaChyb3cpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yb3dTZWxlY3RlZCA9IFtyb3ddO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnJldHVyblJvd1NlbGVjdGVkLmVtaXQodGhpcy5yb3dTZWxlY3RlZCk7XG4gIH1cblxuICBjaGVja0FjdGl2ZVJvdyhyb3c6IGFueSkge1xuICAgIHJldHVybiAhIXRoaXMucm93U2VsZWN0ZWQuZmluZChhY3RpdmVSb3cgPT4gYWN0aXZlUm93ID09PSByb3cpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2hhcmVkLXRhYmxlLXNlbGVjdG9yXCI+XG4gIDxwIGNsYXNzPVwidGl0bGVcIiBbbmdDbGFzc109XCJ7ICdlcnJvci10ZXh0JzogdmFsaWRFcnJvciB9XCI+XG4gICAge3sgdGl0bGUgfX0ge3sgcmVxdWlyZWQgPyAnKicgOiAnJyB9fVxuICA8L3A+XG5cbiAgPGRpdiBjbGFzcz1cInNlYXJjaC1mb3JtIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIGNvbC1tZCByb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjb2xcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNlYXJjaExhYmVsIH19XCJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2xlYXIgY29sLWF1dG9cIj5cbiAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiIChjbGljayk9XCJjbGVhclNlYXJjaCgpXCI+Y2xlYXI8L2k+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJ0YWJsZVNvdXJjZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJjb2xcIj5cbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XG4gICAgICAgIHt7IGNvbCA9PT0gJ2FjdGl2ZScgPyBzZWxlY3RlZExhYmVsIDogaW5pdENvbHVtbnNbY29sXSB9fVxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2wgPT09ICdhY3RpdmUnXCI+XG4gICAgICAgICAgPGkgKm5nSWY9XCJjaGVja0FjdGl2ZVJvdyhlbGVtZW50KVwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgYWN0aXZlLXJvd1wiXG4gICAgICAgICAgICA+ZG9uZTwvaVxuICAgICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbCAhPT0gJ2FjdGl2ZSdcIj5cbiAgICAgICAgICB7eyBlbGVtZW50W2NvbF0gfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L3RkPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zXCI+PC90cj5cbiAgICA8dHJcbiAgICAgIG1hdC1yb3dcbiAgICAgICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBjb2x1bW5zXCJcbiAgICAgIChjbGljayk9XCJyb3dDbGljayhyb3cpXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBjaGVja0FjdGl2ZVJvdyhyb3cpIH1cIlxuICAgID48L3RyPlxuICA8L3RhYmxlPlxuICA8bWF0LXBhZ2luYXRvciBbcGFnZVNpemVPcHRpb25zXT1cIls1XVwiPjwvbWF0LXBhZ2luYXRvcj5cbjwvZGl2PlxuIl19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC10YWJsZXMvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC10YWJsZS9zZWxlY3QtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXN0LXRhYmxlcy9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0LXRhYmxlL3NlbGVjdC10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFVcEQsTUFBTSxPQUFPLG9CQUFvQjtJQTBEL0I7UUFuREEsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBUzFCLGdCQUFXLEdBQVcsUUFBUSxDQUFDO1FBRy9CLGtCQUFhLEdBQVcsVUFBVSxDQUFDO1FBdUIzQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVU1QixXQUFNLEdBQXVCLElBQUksa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEQsZ0JBQVcsR0FBVSxFQUFFLENBQUM7SUFFVCxDQUFDO0lBbENoQixJQUNJLGNBQWMsQ0FBQyxHQUE4QjtRQUMvQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdB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XG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LXN0LXNlbGVjdC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9zZWxlY3QtdGFibGUuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi8uLi8uLi9hc3NldHMvYmFzZS10YWJsZS5zY3NzJyxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKE1hdFBhZ2luYXRvcikgcGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG5cbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgaW5pdFNlbGVjdGVkOiBhbnk7XG5cbiAgQElucHV0KClcbiAgaW5pdFNlYXJjaFZhbDogYW55O1xuXG4gIEBJbnB1dCgpXG4gIHNlYXJjaExhYmVsOiBzdHJpbmcgPSAnU2VhcmNoJztcblxuICBASW5wdXQoKVxuICBzZWxlY3RlZExhYmVsOiBzdHJpbmcgPSAnU2VsZWN0ZWQnO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZXRJbml0Q29sdW1ucyhjb2w6IHsgW2NvbDogc3RyaW5nXTogc3RyaW5nIH0pIHtcbiAgICB0aGlzLmNvbHVtbnMgPSBbJ2FjdGl2ZScsIC4uLk9iamVjdC5rZXlzKGNvbCldO1xuICAgIHRoaXMuaW5pdENvbHVtbnMgPSBjb2w7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgdGFibGVEYXRhKGRhdGE6IGFueVtdKSB7XG4gICAgdGhpcy50YWJsZVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoZGF0YSk7XG4gICAgdGhpcy50YWJsZVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLnBhZ2luYXRvcjtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCB2YWxpZEVycm9yKGVycm9yOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmFsaWRFcnJvciA9IGVycm9yO1xuICB9XG5cbiAgZ2V0IHZhbGlkRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbGlkRXJyb3I7XG4gIH1cblxuICBwcml2YXRlIF92YWxpZEVycm9yID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIHJldHVyblJvd1NlbGVjdGVkOiBFdmVudEVtaXR0ZXI8YW55W10+O1xuXG4gIHRhYmxlU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8YW55PjtcbiAgY29sdW1uczogc3RyaW5nW107XG4gIGluaXRDb2x1bW5zOiB7XG4gICAgW2NvbDogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xuICBzZWFyY2g6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpO1xuICByb3dTZWxlY3RlZDogYW55W10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2gudmFsdWVDaGFuZ2VzLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgdGhpcy50YWJsZVNvdXJjZS5maWx0ZXIgPSByZXMudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gICAgfSk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pbml0U2VhcmNoVmFsKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoLnNldFZhbHVlKHRoaXMuaW5pdFNlYXJjaFZhbCk7XG4gICAgICAgIHRoaXMucm93Q2xpY2sodGhpcy5pbml0U2VsZWN0ZWQpO1xuICAgICAgfVxuICAgIH0sIDEwMDApO1xuICB9XG5cbiAgY2xlYXJTZWFyY2goKSB7XG4gICAgdGhpcy5zZWFyY2guc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgcm93Q2xpY2socm93OiBhbnkpIHtcbiAgICBjb25zdCBmb3VuZCA9IHRoaXMucm93U2VsZWN0ZWQuZmluZCh0bXBSb3cgPT4gdG1wUm93ID09PSByb3cpO1xuICAgIGlmIChmb3VuZCkge1xuICAgICAgdGhpcy5yb3dTZWxlY3RlZCA9IHRoaXMucm93U2VsZWN0ZWQuZmlsdGVyKHRtcFJvdyA9PiB0bXBSb3cgIT09IHJvdyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHRoaXMucm93U2VsZWN0ZWQucHVzaChyb3cpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yb3dTZWxlY3RlZCA9IFtyb3ddO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnJldHVyblJvd1NlbGVjdGVkLmVtaXQodGhpcy5yb3dTZWxlY3RlZCk7XG4gIH1cblxuICBjaGVja0FjdGl2ZVJvdyhyb3c6IGFueSkge1xuICAgIHJldHVybiAhIXRoaXMucm93U2VsZWN0ZWQuZmluZChhY3RpdmVSb3cgPT4gYWN0aXZlUm93ID09PSByb3cpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2hhcmVkLXRhYmxlLXNlbGVjdG9yXCI+XG4gIDxwIGNsYXNzPVwidGl0bGVcIiBbbmdDbGFzc109XCJ7ICdlcnJvci10ZXh0JzogdmFsaWRFcnJvciB9XCI+XG4gICAge3sgdGl0bGUgfX0ge3sgcmVxdWlyZWQgPyAnKicgOiAnJyB9fVxuICA8L3A+XG5cbiAgPGRpdiBjbGFzcz1cInNlYXJjaC1mb3JtIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTEyIGNvbC1tZCByb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJjb2xcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNlYXJjaExhYmVsIH19XCJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2xlYXIgY29sLWF1dG9cIj5cbiAgICAgICAgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29uc1wiIChjbGljayk9XCJjbGVhclNlYXJjaCgpXCI+Y2xlYXI8L2k+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJ0YWJsZVNvdXJjZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbCBvZiBjb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJjb2xcIj5cbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XG4gICAgICAgIHt7IGNvbCA9PT0gJ2FjdGl2ZScgPyBzZWxlY3RlZExhYmVsIDogaW5pdENvbHVtbnNbY29sXSB9fVxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2wgPT09ICdhY3RpdmUnXCI+XG4gICAgICAgICAgPGkgKm5nSWY9XCJjaGVja0FjdGl2ZVJvdyhlbGVtZW50KVwiIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgYWN0aXZlLXJvd1wiXG4gICAgICAgICAgICA+ZG9uZTwvaVxuICAgICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbCAhPT0gJ2FjdGl2ZSdcIj5cbiAgICAgICAgICB7eyBlbGVtZW50W2NvbF0gfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L3RkPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJjb2x1bW5zXCI+PC90cj5cbiAgICA8dHJcbiAgICAgIG1hdC1yb3dcbiAgICAgICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBjb2x1bW5zXCJcbiAgICAgIChjbGljayk9XCJyb3dDbGljayhyb3cpXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBjaGVja0FjdGl2ZVJvdyhyb3cpIH1cIlxuICAgID48L3RyPlxuICA8L3RhYmxlPlxuICA8bWF0LXBhZ2luYXRvciBbcGFnZVNpemVPcHRpb25zXT1cIls1XVwiPjwvbWF0LXBhZ2luYXRvcj5cbjwvZGl2PlxuIl19
@@ -420,10 +420,10 @@ class SelectTableComponent {
420
420
  }
421
421
  }
422
422
  SelectTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
423
- SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "lib-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i6$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i6$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i6$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i6$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i6$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i6$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i6$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i6$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i6$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i6$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i7$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
423
+ SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "ngx-st-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i6$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i6$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i6$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i6$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i6$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i6$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i6$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i6$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i6$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i6$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i7$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
424
424
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, decorators: [{
425
425
  type: Component,
426
- args: [{ selector: 'lib-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
426
+ args: [{ selector: 'ngx-st-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
427
427
  }], ctorParameters: function () { return []; }, propDecorators: { paginator: [{
428
428
  type: ViewChild,
429
429
  args: [MatPaginator]
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-st-tables.mjs","sources":["../../../projects/ngx-st-tables/src/lib/services/local-table.service.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.html","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.html","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.html","../../../projects/ngx-st-tables/src/lib/ngx-st-tables.module.ts","../../../projects/ngx-st-tables/src/public-api.ts","../../../projects/ngx-st-tables/src/ngx-st-tables.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { StLocalStorageConfigurationModel } from '../models/st-local-storage-configuration.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalTableService {\n localStorageName: string = '';\n\n constructor() {}\n\n getConfigs(): StLocalStorageConfigurationModel[] {\n if (this.checkLocalStorageName()) {\n return JSON.parse(localStorage.getItem(this.localStorageName) || '[]');\n }\n return [];\n }\n\n saveConfigs(configs: StLocalStorageConfigurationModel[]) {\n if (this.checkLocalStorageName()) {\n localStorage.setItem(this.localStorageName, JSON.stringify(configs));\n }\n }\n\n checkLocalStorageName() {\n if (this.localStorageName) {\n return true;\n } else {\n console.warn('Yiu have to add configurationsSettings');\n return false;\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { StConfigurationsSettingsModel } from '../../../models/st-configurations-settings.model';\nimport { StLocalStorageConfigurationModel } from '../../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'st-configurations[configurationsSettings]',\n templateUrl: './configurations.component.html',\n styleUrls: ['./configurations.component.scss'],\n})\nexport class ConfigurationsComponent implements OnInit {\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n configurations: StLocalStorageConfigurationModel[];\n\n @Input()\n set initSelectedConfig(config: StLocalStorageConfigurationModel | null) {\n this.selectedConfig = config;\n }\n\n @Output()\n createNewConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n removeConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n changeConfig: EventEmitter<string | null> = new EventEmitter();\n\n creatingConfiguration: boolean = false;\n createConfigurationName: string = '';\n removingConfiguration: boolean = false;\n\n selectedConfig: StLocalStorageConfigurationModel | null;\n\n constructor() {}\n\n ngOnInit(): void {}\n\n showCreateConfiguration() {\n this.creatingConfiguration = true;\n this.createConfigurationName = '';\n }\n\n hideCreateConfiguration() {\n this.creatingConfiguration = false;\n this.createConfigurationName = '';\n }\n\n saveCreateConfiguration() {\n this.creatingConfiguration = false;\n this.selectedConfig = null;\n this.createNewConfig.emit(this.createConfigurationName);\n }\n\n deleteConfiguration() {\n this.removingConfiguration = true;\n }\n\n acceptDeleteConfiguration() {\n this.removingConfiguration = false;\n this.selectedConfig = null;\n this.removeConfig.emit(this.selectedConfig!.configId);\n }\n\n declineDeleteConfiguration() {\n this.removingConfiguration = false;\n }\n\n selectedConfigChanged() {\n this.changeConfig.emit(this.selectedConfig?.configId || null);\n }\n}\n","<div class=\"col-auto row align-items-center\" style=\"padding: 0\">\n <ng-container *ngIf=\"!creatingConfiguration && !removingConfiguration\">\n <mat-form-field class=\"col-auto\" style=\"padding-right: 0\">\n <mat-label>{{ configurationsSettings.selectLabel }}</mat-label>\n <mat-select\n [(ngModel)]=\"selectedConfig\"\n (ngModelChange)=\"selectedConfigChanged()\"\n >\n <mat-option [value]=\"null\"></mat-option>\n <mat-option *ngFor=\"let config of configurations\" [value]=\"config\">{{\n config.configName\n }}</mat-option>\n </mat-select>\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"showCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> add </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n [disabled]=\"!selectedConfig\"\n (click)=\"deleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> delete </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"creatingConfiguration\">\n <mat-form-field class=\"col-auto\">\n <mat-label>{{ configurationsSettings.createLabel }}</mat-label>\n <input matInput [(ngModel)]=\"createConfigurationName\" />\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"saveCreateConfiguration()\"\n [disabled]=\"!createConfigurationName\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"hideCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"removingConfiguration\">\n <p class=\"col-auto\" style=\"margin: 0; font-weight: bold; font-size: 16px\">\n {{ configurationsSettings.deleteWarningTitle }}\n </p>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"acceptDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"declineDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { LocalTableService } from '../../services/local-table.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort, SortDirection } from '@angular/material/sort';\nimport { StTableSettingsModel } from '../../models/st-table-settings.model';\nimport { StGlobalSearchSettingsModel } from '../../models/st-global-search-settings.model';\nimport { StConfigurationsSettingsModel } from '../../models/st-configurations-settings.model';\nimport { StLocalTableColumnsModel } from '../../models/st-local-table-columns.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport {\n LocalTableActionColumnModel,\n StLocalTableColumnModel,\n} from '../../models/st-local-table-column.model';\nimport { StLocalStorageConfigurationModel } from '../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'ngx-st-local-table',\n templateUrl: './local-table.component.html',\n styleUrls: [\n './local-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LocalTableComponent implements OnInit, AfterViewInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n @ViewChild(MatSort) sort: MatSort;\n\n @Input()\n tableSettings: StTableSettingsModel;\n\n @Input()\n globalSearchSettings: StGlobalSearchSettingsModel;\n\n @Input()\n pageSize: number = 10;\n\n @Input()\n allowPickColumns: boolean = false;\n\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n localStorageName: string = '';\n\n @Input()\n bindSearchToUrl: boolean = false;\n\n @Input()\n set columns(columns: StLocalTableColumnsModel) {\n this._columns = columns;\n this.columnsArray = this.getColumnsArray();\n this.setDisplayedColumns();\n }\n\n get columns(): StLocalTableColumnsModel {\n return this._columns;\n }\n\n private _columns: StLocalTableColumnsModel = {};\n\n @Input()\n set data(data: any[]) {\n this._data = data || [];\n this.setTableSource();\n }\n\n get data(): any[] {\n return this._data;\n }\n\n private _data: any[] = [];\n\n searchModel: string = '';\n\n displayedColumns: string[] = [];\n tableSource: MatTableDataSource<any>;\n columnsArray: StLocalTableColumnModel[];\n configurations: StLocalStorageConfigurationModel[] = [];\n initConfig: StLocalStorageConfigurationModel | null = null;\n activeConfig: StLocalStorageConfigurationModel | null = null;\n pageIndex: number = 0;\n\n constructor(\n private localTableService: LocalTableService,\n private changeDetectorRef: ChangeDetectorRef,\n private router: Router,\n private activatedRoute: ActivatedRoute\n ) {}\n\n ngOnInit(): void {\n if (this.localStorageName) {\n const pageSize = localStorage.getItem(this.localStorageName);\n if (pageSize) {\n this.pageSize = parseInt(pageSize);\n }\n }\n if (this.configurationsSettings) {\n this.localTableService.localStorageName =\n this.configurationsSettings?.localStorageName || '';\n this.loadConfigs();\n }\n }\n\n ngAfterViewInit() {\n if (this.configurationsSettings) {\n this.paginator.page.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.pageSize = res.pageSize;\n this.updateConfigsToLocalStorage();\n }\n });\n this.sort.sortChange.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.sortFieldName = res.active;\n this.activeConfig.sortDirection = res.direction;\n this.updateConfigsToLocalStorage();\n }\n });\n }\n if (this.bindSearchToUrl) {\n const params = new URLSearchParams(location.search);\n this.sort.sortChange.subscribe(res => {\n this.updateSearchToUrl();\n });\n if (params.get('stLocalTablePageIndex')) {\n this.pageIndex = parseInt(params.get('stLocalTablePageIndex') || '');\n }\n if (params.get('stLocalTablePageSize')) {\n this.pageSize = parseInt(params.get('stLocalTablePageSize') || '');\n }\n if (\n params.get('stLocalTableSortFieldName') &&\n params.get('stLocalTableSortDirection')\n ) {\n this.sort.sort({\n id: params.get('stLocalTableSortFieldName') || '',\n start:\n <SortDirection>params.get('stLocalTableSortDirection') || 'asc',\n disableClear: false,\n });\n }\n this.searchModel = params.get('stLocalTableSearch') || '';\n if (this.searchModel) {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n }\n }\n this.paginator.pageSize = this.pageSize;\n }\n\n applySearch() {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n clearSearch() {\n this.searchModel = '';\n this.tableSource.filter = this.searchModel;\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n checkIfActionVisible(row: any, action: LocalTableActionColumnModel) {\n if (action.show) {\n return action.show(row);\n } else {\n return true;\n }\n }\n\n columnVisibleChanged(column: StLocalTableColumnModel) {\n this.setDisplayedColumns();\n this.updateConfigsToLocalStorage();\n }\n\n newConfigCreated(name: string) {\n const newConfig = this.generateNewConfig(name);\n this.configurations.push(newConfig);\n this.updateConfigsToLocalStorage();\n this.initConfig = newConfig;\n }\n\n configRemoved(configId: string) {\n this.configurations = this.configurations.filter(\n config => config.configId !== configId\n );\n this.updateConfigsToLocalStorage();\n }\n\n configChanged(configId: string | null) {\n this.activeConfig = configId\n ? this.configurations.find(config => config.configId === configId)!\n : null;\n if (this.activeConfig) {\n this.setTableConfig(\n this.activeConfig.pageSize,\n this.activeConfig.columnsDisabled,\n this.activeConfig.sortFieldName,\n this.activeConfig.sortDirection\n );\n } else {\n this.setTableConfig(this.pageSize, [], null, null);\n this.clearSearch();\n }\n }\n\n pageChanged(event: any) {\n this.pageIndex = event.pageIndex;\n this.updateSearchToUrl();\n }\n\n private updateSearchToUrl() {\n if (this.bindSearchToUrl) {\n let queryParams = {\n stLocalTableSearch: this.searchModel,\n stLocalTablePageIndex: this.pageIndex,\n stLocalTablePageSize: this.paginator.pageSize,\n stLocalTableSortFieldName: '',\n stLocalTableSortDirection: '',\n };\n if (this.sort.direction && this.sort.active) {\n queryParams = {\n ...queryParams,\n stLocalTableSortFieldName: this.sort.active,\n stLocalTableSortDirection: this.sort.direction,\n };\n }\n this.router.navigate(['./'], {\n queryParams: queryParams,\n relativeTo: this.activatedRoute,\n });\n }\n }\n\n private updateConfigsToLocalStorage() {\n this.localTableService.saveConfigs(this.configurations);\n }\n\n private setTableSource() {\n this.tableSource = new MatTableDataSource(this._data);\n this.tableSource.paginator = this.paginator;\n this.tableSource.sort = this.sort;\n this.tableSource.filter = this.searchModel;\n this.changeDetectorRef.markForCheck();\n }\n\n private setDisplayedColumns() {\n this.displayedColumns = Object.keys(this.columns).filter(column => {\n return this._columns[column].visible;\n });\n }\n\n private getColumnsArray() {\n return Object.keys(this._columns).map(column => this._columns[column]);\n }\n\n private loadConfigs() {\n this.configurations = this.localTableService.getConfigs();\n }\n\n private generateNewConfig(configName: string) {\n return {\n configId: Date.now().toString(),\n configName: configName,\n columnsDisabled: this.columnsArray\n .filter(column => !column.visible)\n .map(column => column.translateColumnName),\n pageSize: this.paginator.pageSize,\n sortFieldName:\n this.sort.direction && this.sort.active ? this.sort.active : null,\n sortDirection: this.sort.direction || null,\n };\n }\n\n private setTableConfig(\n pageSize: number,\n disabledColumns: string[],\n sortFieldName: null | string,\n sortDirection: null | SortDirection\n ) {\n this.paginator.pageSize = pageSize;\n this.sort.sort({\n id: sortFieldName || '',\n start: sortDirection || 'asc',\n disableClear: false,\n });\n this.columnsArray.forEach(column => {\n column.visible =\n disabledColumns.indexOf(column.translateColumnName) === -1;\n });\n this.setDisplayedColumns();\n }\n}\n","<div class=\"local-table\">\n <div class=\"row align-items-center\">\n <div\n class=\"col row align-items-center\"\n style=\"padding: 0\"\n *ngIf=\"configurationsSettings || allowPickColumns\"\n >\n <div class=\"col-auto\" style=\"padding: 0\" *ngIf=\"allowPickColumns\">\n <button\n mat-icon-button\n class=\"col-auto\"\n [matMenuTriggerFor]=\"columnsMenu\"\n >\n <span class=\"material-icons-outlined\"> view_week </span>\n </button>\n <mat-menu #columnsMenu=\"matMenu\" xPosition=\"after\">\n <ng-container *ngFor=\"let column of columnsArray\">\n <div mat-menu-item *ngIf=\"!column.notShowInColumnPick\">\n <mat-checkbox\n [(ngModel)]=\"column.visible\"\n (ngModelChange)=\"columnVisibleChanged(column)\"\n style=\"margin-top: 5px\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ column.translateColumnName }}\n </mat-checkbox>\n </div>\n </ng-container>\n </mat-menu>\n </div>\n\n <st-configurations\n *ngIf=\"configurationsSettings\"\n [configurationsSettings]=\"configurationsSettings\"\n [configurations]=\"configurations\"\n [initSelectedConfig]=\"initConfig\"\n (createNewConfig)=\"newConfigCreated($event)\"\n (removeConfig)=\"configRemoved($event)\"\n (changeConfig)=\"configChanged($event)\"\n ></st-configurations>\n </div>\n\n <div class=\"col\" style=\"padding: 0\" *ngIf=\"globalSearchSettings?.show\">\n <mat-form-field class=\"col\">\n <mat-label>{{ globalSearchSettings?.label || 'Search' }}</mat-label>\n <input matInput (keyup)=\"applySearch()\" [(ngModel)]=\"searchModel\" />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"clearSearch()\"\n >\n <mat-icon style=\"font-size: 22px\">close</mat-icon>\n </button>\n </mat-form-field>\n </div>\n </div>\n\n <table\n [ngClass]=\"{ 'no-hover': !tableSettings?.rowClickAction }\"\n mat-table\n [dataSource]=\"tableSource\"\n matSort\n >\n <ng-container\n [matColumnDef]=\"column\"\n *ngFor=\"let column of displayedColumns\"\n >\n <th\n mat-header-cell\n *matHeaderCellDef\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n mat-sort-header\n [disabled]=\"!columns[column].sort\"\n >\n {{ columns[column].translateColumnName }}\n <span\n class=\"material-icons search-icon\"\n [matMenuTriggerFor]=\"menu\"\n (click)=\"$event.stopPropagation()\"\n *ngIf=\"columns[column].search\"\n >\n search\n </span>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <mat-form-field class=\"col\">\n <mat-label>{{ columns[column].searchLabel || 'Search' }}</mat-label>\n <input\n matInput\n (keyup)=\"applySearch()\"\n [(ngModel)]=\"searchModel\"\n (click)=\"$event.stopPropagation()\"\n />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"searchModel = ''\"\n >\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n </mat-menu>\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n >\n <div\n class=\"actions-container\"\n [ngClass]=\"{ 'justify-content-end': columns[column].flexRight }\"\n *ngIf=\"columns[column].actions && columns[column].actions!.length > 0\"\n >\n <ng-container *ngFor=\"let action of columns[column].actions\">\n <ng-container *ngIf=\"checkIfActionVisible(element, action)\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n *ngIf=\"!action.url && action.action\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n (click)=\"action.action(element)\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n\n <a *ngIf=\"action.url\" [routerLink]=\"action.url\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n </a>\n </ng-container>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!columns[column].actions\">\n <ng-container *ngIf=\"columns[column].translateValue\">\n <p style=\"margin: 0; padding: 0\">\n {{ columns[column].translateValue![element[column]] || '' }}\n </p>\n </ng-container>\n\n <ng-container *ngIf=\"!columns[column].translateValue\">\n <ng-container\n *ngIf=\"!columns[column].type || columns[column].type === 'string'\"\n >\n <p style=\"margin: 0; padding: 0\">{{ element[column] }}</p>\n </ng-container>\n\n <ng-container *ngIf=\"columns[column].type === 'date'\">\n <p style=\"margin: 0; padding: 0\">\n {{ element[column] | stDateTimeFormatPipe }}\n </p>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: displayedColumns\"\n (click)=\"\n tableSettings?.rowClickAction ? tableSettings.rowClickAction(row) : null\n \"\n ></tr>\n </table>\n <mat-paginator\n [pageIndex]=\"pageIndex\"\n [pageSizeOptions]=\"[5, 10, 15, 20, 25]\"\n (page)=\"pageChanged($event)\"\n [showFirstLastButtons]=\"true\"\n ></mat-paginator>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UntypedFormControl } from '@angular/forms';\n\n@Component({\n selector: 'lib-select-table',\n templateUrl: './select-table.component.html',\n styleUrls: [\n './select-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n})\nexport class SelectTableComponent implements OnInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n\n @Input()\n title: string;\n\n @Input()\n required: boolean = false;\n\n @Input()\n multiple: boolean = false;\n\n @Input()\n initSelected: any;\n\n @Input()\n initSearchVal: any;\n\n @Input()\n searchLabel: string = 'Search';\n\n @Input()\n selectedLabel: string = 'Selected';\n\n @Input()\n set setInitColumns(col: { [col: string]: string }) {\n this.columns = ['active', ...Object.keys(col)];\n this.initColumns = col;\n }\n\n @Input()\n set tableData(data: any[]) {\n this.tableSource = new MatTableDataSource(data);\n this.tableSource.paginator = this.paginator;\n }\n\n @Input()\n set validError(error: boolean) {\n this._validError = error;\n }\n\n get validError(): boolean {\n return this._validError;\n }\n\n private _validError = false;\n\n @Output()\n returnRowSelected: EventEmitter<any[]>;\n\n tableSource: MatTableDataSource<any>;\n columns: string[];\n initColumns: {\n [col: string]: string;\n };\n search: UntypedFormControl = new UntypedFormControl('');\n rowSelected: any[] = [];\n\n constructor() {}\n\n ngOnInit(): void {\n this.search.valueChanges.subscribe(res => {\n this.tableSource.filter = res.trim().toLowerCase();\n });\n setTimeout(() => {\n if (this.initSearchVal) {\n this.search.setValue(this.initSearchVal);\n this.rowClick(this.initSelected);\n }\n }, 1000);\n }\n\n clearSearch() {\n this.search.setValue('');\n }\n\n rowClick(row: any) {\n const found = this.rowSelected.find(tmpRow => tmpRow === row);\n if (found) {\n this.rowSelected = this.rowSelected.filter(tmpRow => tmpRow !== row);\n } else {\n if (this.multiple) {\n this.rowSelected.push(row);\n } else {\n this.rowSelected = [row];\n }\n }\n this.returnRowSelected.emit(this.rowSelected);\n }\n\n checkActiveRow(row: any) {\n return !!this.rowSelected.find(activeRow => activeRow === row);\n }\n}\n","<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n","import { NgModule } from '@angular/core';\nimport { LocalTableComponent } from './components/local-table/local-table.component';\nimport { SelectTableComponent } from './components/select-table/select-table.component';\nimport { ConfigurationsComponent } from './components/local-table/configurations/configurations.component';\nimport { LocalTableService } from './services/local-table.service';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { NgxStDateFormatModule } from 'ngx-st-date-format';\n\n@NgModule({\n declarations: [\n LocalTableComponent,\n SelectTableComponent,\n ConfigurationsComponent,\n ],\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatFormFieldModule,\n MatInputModule,\n MatTooltipModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n NgxStDateFormatModule,\n MatSortModule,\n MatMenuModule,\n MatSelectModule,\n MatCheckboxModule,\n ],\n exports: [LocalTableComponent, SelectTableComponent],\n providers: [LocalTableService],\n})\nexport class NgxStTablesModule {}\n","/*\n * Public API Surface of ngx-st-tables\n */\n\nexport * from './lib/services/local-table.service';\nexport * from './lib/components/local-table/local-table.component';\nexport * from './lib/components/local-table/configurations/configurations.component';\nexport * from './lib/components/select-table/select-table.component';\nexport * from './lib/models/st-configurations-settings.model';\nexport * from './lib/models/st-global-search-settings.model';\nexport * from './lib/models/st-local-storage-configuration.model';\nexport * from './lib/models/st-local-table-column.model';\nexport * from './lib/models/st-local-table-columns.model';\nexport * from './lib/models/st-table-settings.model';\nexport * from './lib/ngx-st-tables.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i1.LocalTableService","i2","i4","i5","i6","i7","i9","i11","i15.ConfigurationsComponent"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-st-tables.mjs","sources":["../../../projects/ngx-st-tables/src/lib/services/local-table.service.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.html","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.html","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.html","../../../projects/ngx-st-tables/src/lib/ngx-st-tables.module.ts","../../../projects/ngx-st-tables/src/public-api.ts","../../../projects/ngx-st-tables/src/ngx-st-tables.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { StLocalStorageConfigurationModel } from '../models/st-local-storage-configuration.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalTableService {\n localStorageName: string = '';\n\n constructor() {}\n\n getConfigs(): StLocalStorageConfigurationModel[] {\n if (this.checkLocalStorageName()) {\n return JSON.parse(localStorage.getItem(this.localStorageName) || '[]');\n }\n return [];\n }\n\n saveConfigs(configs: StLocalStorageConfigurationModel[]) {\n if (this.checkLocalStorageName()) {\n localStorage.setItem(this.localStorageName, JSON.stringify(configs));\n }\n }\n\n checkLocalStorageName() {\n if (this.localStorageName) {\n return true;\n } else {\n console.warn('Yiu have to add configurationsSettings');\n return false;\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { StConfigurationsSettingsModel } from '../../../models/st-configurations-settings.model';\nimport { StLocalStorageConfigurationModel } from '../../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'st-configurations[configurationsSettings]',\n templateUrl: './configurations.component.html',\n styleUrls: ['./configurations.component.scss'],\n})\nexport class ConfigurationsComponent implements OnInit {\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n configurations: StLocalStorageConfigurationModel[];\n\n @Input()\n set initSelectedConfig(config: StLocalStorageConfigurationModel | null) {\n this.selectedConfig = config;\n }\n\n @Output()\n createNewConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n removeConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n changeConfig: EventEmitter<string | null> = new EventEmitter();\n\n creatingConfiguration: boolean = false;\n createConfigurationName: string = '';\n removingConfiguration: boolean = false;\n\n selectedConfig: StLocalStorageConfigurationModel | null;\n\n constructor() {}\n\n ngOnInit(): void {}\n\n showCreateConfiguration() {\n this.creatingConfiguration = true;\n this.createConfigurationName = '';\n }\n\n hideCreateConfiguration() {\n this.creatingConfiguration = false;\n this.createConfigurationName = '';\n }\n\n saveCreateConfiguration() {\n this.creatingConfiguration = false;\n this.selectedConfig = null;\n this.createNewConfig.emit(this.createConfigurationName);\n }\n\n deleteConfiguration() {\n this.removingConfiguration = true;\n }\n\n acceptDeleteConfiguration() {\n this.removingConfiguration = false;\n this.selectedConfig = null;\n this.removeConfig.emit(this.selectedConfig!.configId);\n }\n\n declineDeleteConfiguration() {\n this.removingConfiguration = false;\n }\n\n selectedConfigChanged() {\n this.changeConfig.emit(this.selectedConfig?.configId || null);\n }\n}\n","<div class=\"col-auto row align-items-center\" style=\"padding: 0\">\n <ng-container *ngIf=\"!creatingConfiguration && !removingConfiguration\">\n <mat-form-field class=\"col-auto\" style=\"padding-right: 0\">\n <mat-label>{{ configurationsSettings.selectLabel }}</mat-label>\n <mat-select\n [(ngModel)]=\"selectedConfig\"\n (ngModelChange)=\"selectedConfigChanged()\"\n >\n <mat-option [value]=\"null\"></mat-option>\n <mat-option *ngFor=\"let config of configurations\" [value]=\"config\">{{\n config.configName\n }}</mat-option>\n </mat-select>\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"showCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> add </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n [disabled]=\"!selectedConfig\"\n (click)=\"deleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> delete </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"creatingConfiguration\">\n <mat-form-field class=\"col-auto\">\n <mat-label>{{ configurationsSettings.createLabel }}</mat-label>\n <input matInput [(ngModel)]=\"createConfigurationName\" />\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"saveCreateConfiguration()\"\n [disabled]=\"!createConfigurationName\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"hideCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"removingConfiguration\">\n <p class=\"col-auto\" style=\"margin: 0; font-weight: bold; font-size: 16px\">\n {{ configurationsSettings.deleteWarningTitle }}\n </p>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"acceptDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"declineDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { LocalTableService } from '../../services/local-table.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort, SortDirection } from '@angular/material/sort';\nimport { StTableSettingsModel } from '../../models/st-table-settings.model';\nimport { StGlobalSearchSettingsModel } from '../../models/st-global-search-settings.model';\nimport { StConfigurationsSettingsModel } from '../../models/st-configurations-settings.model';\nimport { StLocalTableColumnsModel } from '../../models/st-local-table-columns.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport {\n LocalTableActionColumnModel,\n StLocalTableColumnModel,\n} from '../../models/st-local-table-column.model';\nimport { StLocalStorageConfigurationModel } from '../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'ngx-st-local-table',\n templateUrl: './local-table.component.html',\n styleUrls: [\n './local-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LocalTableComponent implements OnInit, AfterViewInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n @ViewChild(MatSort) sort: MatSort;\n\n @Input()\n tableSettings: StTableSettingsModel;\n\n @Input()\n globalSearchSettings: StGlobalSearchSettingsModel;\n\n @Input()\n pageSize: number = 10;\n\n @Input()\n allowPickColumns: boolean = false;\n\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n localStorageName: string = '';\n\n @Input()\n bindSearchToUrl: boolean = false;\n\n @Input()\n set columns(columns: StLocalTableColumnsModel) {\n this._columns = columns;\n this.columnsArray = this.getColumnsArray();\n this.setDisplayedColumns();\n }\n\n get columns(): StLocalTableColumnsModel {\n return this._columns;\n }\n\n private _columns: StLocalTableColumnsModel = {};\n\n @Input()\n set data(data: any[]) {\n this._data = data || [];\n this.setTableSource();\n }\n\n get data(): any[] {\n return this._data;\n }\n\n private _data: any[] = [];\n\n searchModel: string = '';\n\n displayedColumns: string[] = [];\n tableSource: MatTableDataSource<any>;\n columnsArray: StLocalTableColumnModel[];\n configurations: StLocalStorageConfigurationModel[] = [];\n initConfig: StLocalStorageConfigurationModel | null = null;\n activeConfig: StLocalStorageConfigurationModel | null = null;\n pageIndex: number = 0;\n\n constructor(\n private localTableService: LocalTableService,\n private changeDetectorRef: ChangeDetectorRef,\n private router: Router,\n private activatedRoute: ActivatedRoute\n ) {}\n\n ngOnInit(): void {\n if (this.localStorageName) {\n const pageSize = localStorage.getItem(this.localStorageName);\n if (pageSize) {\n this.pageSize = parseInt(pageSize);\n }\n }\n if (this.configurationsSettings) {\n this.localTableService.localStorageName =\n this.configurationsSettings?.localStorageName || '';\n this.loadConfigs();\n }\n }\n\n ngAfterViewInit() {\n if (this.configurationsSettings) {\n this.paginator.page.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.pageSize = res.pageSize;\n this.updateConfigsToLocalStorage();\n }\n });\n this.sort.sortChange.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.sortFieldName = res.active;\n this.activeConfig.sortDirection = res.direction;\n this.updateConfigsToLocalStorage();\n }\n });\n }\n if (this.bindSearchToUrl) {\n const params = new URLSearchParams(location.search);\n this.sort.sortChange.subscribe(res => {\n this.updateSearchToUrl();\n });\n if (params.get('stLocalTablePageIndex')) {\n this.pageIndex = parseInt(params.get('stLocalTablePageIndex') || '');\n }\n if (params.get('stLocalTablePageSize')) {\n this.pageSize = parseInt(params.get('stLocalTablePageSize') || '');\n }\n if (\n params.get('stLocalTableSortFieldName') &&\n params.get('stLocalTableSortDirection')\n ) {\n this.sort.sort({\n id: params.get('stLocalTableSortFieldName') || '',\n start:\n <SortDirection>params.get('stLocalTableSortDirection') || 'asc',\n disableClear: false,\n });\n }\n this.searchModel = params.get('stLocalTableSearch') || '';\n if (this.searchModel) {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n }\n }\n this.paginator.pageSize = this.pageSize;\n }\n\n applySearch() {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n clearSearch() {\n this.searchModel = '';\n this.tableSource.filter = this.searchModel;\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n checkIfActionVisible(row: any, action: LocalTableActionColumnModel) {\n if (action.show) {\n return action.show(row);\n } else {\n return true;\n }\n }\n\n columnVisibleChanged(column: StLocalTableColumnModel) {\n this.setDisplayedColumns();\n this.updateConfigsToLocalStorage();\n }\n\n newConfigCreated(name: string) {\n const newConfig = this.generateNewConfig(name);\n this.configurations.push(newConfig);\n this.updateConfigsToLocalStorage();\n this.initConfig = newConfig;\n }\n\n configRemoved(configId: string) {\n this.configurations = this.configurations.filter(\n config => config.configId !== configId\n );\n this.updateConfigsToLocalStorage();\n }\n\n configChanged(configId: string | null) {\n this.activeConfig = configId\n ? this.configurations.find(config => config.configId === configId)!\n : null;\n if (this.activeConfig) {\n this.setTableConfig(\n this.activeConfig.pageSize,\n this.activeConfig.columnsDisabled,\n this.activeConfig.sortFieldName,\n this.activeConfig.sortDirection\n );\n } else {\n this.setTableConfig(this.pageSize, [], null, null);\n this.clearSearch();\n }\n }\n\n pageChanged(event: any) {\n this.pageIndex = event.pageIndex;\n this.updateSearchToUrl();\n }\n\n private updateSearchToUrl() {\n if (this.bindSearchToUrl) {\n let queryParams = {\n stLocalTableSearch: this.searchModel,\n stLocalTablePageIndex: this.pageIndex,\n stLocalTablePageSize: this.paginator.pageSize,\n stLocalTableSortFieldName: '',\n stLocalTableSortDirection: '',\n };\n if (this.sort.direction && this.sort.active) {\n queryParams = {\n ...queryParams,\n stLocalTableSortFieldName: this.sort.active,\n stLocalTableSortDirection: this.sort.direction,\n };\n }\n this.router.navigate(['./'], {\n queryParams: queryParams,\n relativeTo: this.activatedRoute,\n });\n }\n }\n\n private updateConfigsToLocalStorage() {\n this.localTableService.saveConfigs(this.configurations);\n }\n\n private setTableSource() {\n this.tableSource = new MatTableDataSource(this._data);\n this.tableSource.paginator = this.paginator;\n this.tableSource.sort = this.sort;\n this.tableSource.filter = this.searchModel;\n this.changeDetectorRef.markForCheck();\n }\n\n private setDisplayedColumns() {\n this.displayedColumns = Object.keys(this.columns).filter(column => {\n return this._columns[column].visible;\n });\n }\n\n private getColumnsArray() {\n return Object.keys(this._columns).map(column => this._columns[column]);\n }\n\n private loadConfigs() {\n this.configurations = this.localTableService.getConfigs();\n }\n\n private generateNewConfig(configName: string) {\n return {\n configId: Date.now().toString(),\n configName: configName,\n columnsDisabled: this.columnsArray\n .filter(column => !column.visible)\n .map(column => column.translateColumnName),\n pageSize: this.paginator.pageSize,\n sortFieldName:\n this.sort.direction && this.sort.active ? this.sort.active : null,\n sortDirection: this.sort.direction || null,\n };\n }\n\n private setTableConfig(\n pageSize: number,\n disabledColumns: string[],\n sortFieldName: null | string,\n sortDirection: null | SortDirection\n ) {\n this.paginator.pageSize = pageSize;\n this.sort.sort({\n id: sortFieldName || '',\n start: sortDirection || 'asc',\n disableClear: false,\n });\n this.columnsArray.forEach(column => {\n column.visible =\n disabledColumns.indexOf(column.translateColumnName) === -1;\n });\n this.setDisplayedColumns();\n }\n}\n","<div class=\"local-table\">\n <div class=\"row align-items-center\">\n <div\n class=\"col row align-items-center\"\n style=\"padding: 0\"\n *ngIf=\"configurationsSettings || allowPickColumns\"\n >\n <div class=\"col-auto\" style=\"padding: 0\" *ngIf=\"allowPickColumns\">\n <button\n mat-icon-button\n class=\"col-auto\"\n [matMenuTriggerFor]=\"columnsMenu\"\n >\n <span class=\"material-icons-outlined\"> view_week </span>\n </button>\n <mat-menu #columnsMenu=\"matMenu\" xPosition=\"after\">\n <ng-container *ngFor=\"let column of columnsArray\">\n <div mat-menu-item *ngIf=\"!column.notShowInColumnPick\">\n <mat-checkbox\n [(ngModel)]=\"column.visible\"\n (ngModelChange)=\"columnVisibleChanged(column)\"\n style=\"margin-top: 5px\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ column.translateColumnName }}\n </mat-checkbox>\n </div>\n </ng-container>\n </mat-menu>\n </div>\n\n <st-configurations\n *ngIf=\"configurationsSettings\"\n [configurationsSettings]=\"configurationsSettings\"\n [configurations]=\"configurations\"\n [initSelectedConfig]=\"initConfig\"\n (createNewConfig)=\"newConfigCreated($event)\"\n (removeConfig)=\"configRemoved($event)\"\n (changeConfig)=\"configChanged($event)\"\n ></st-configurations>\n </div>\n\n <div class=\"col\" style=\"padding: 0\" *ngIf=\"globalSearchSettings?.show\">\n <mat-form-field class=\"col\">\n <mat-label>{{ globalSearchSettings?.label || 'Search' }}</mat-label>\n <input matInput (keyup)=\"applySearch()\" [(ngModel)]=\"searchModel\" />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"clearSearch()\"\n >\n <mat-icon style=\"font-size: 22px\">close</mat-icon>\n </button>\n </mat-form-field>\n </div>\n </div>\n\n <table\n [ngClass]=\"{ 'no-hover': !tableSettings?.rowClickAction }\"\n mat-table\n [dataSource]=\"tableSource\"\n matSort\n >\n <ng-container\n [matColumnDef]=\"column\"\n *ngFor=\"let column of displayedColumns\"\n >\n <th\n mat-header-cell\n *matHeaderCellDef\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n mat-sort-header\n [disabled]=\"!columns[column].sort\"\n >\n {{ columns[column].translateColumnName }}\n <span\n class=\"material-icons search-icon\"\n [matMenuTriggerFor]=\"menu\"\n (click)=\"$event.stopPropagation()\"\n *ngIf=\"columns[column].search\"\n >\n search\n </span>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <mat-form-field class=\"col\">\n <mat-label>{{ columns[column].searchLabel || 'Search' }}</mat-label>\n <input\n matInput\n (keyup)=\"applySearch()\"\n [(ngModel)]=\"searchModel\"\n (click)=\"$event.stopPropagation()\"\n />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"searchModel = ''\"\n >\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n </mat-menu>\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n >\n <div\n class=\"actions-container\"\n [ngClass]=\"{ 'justify-content-end': columns[column].flexRight }\"\n *ngIf=\"columns[column].actions && columns[column].actions!.length > 0\"\n >\n <ng-container *ngFor=\"let action of columns[column].actions\">\n <ng-container *ngIf=\"checkIfActionVisible(element, action)\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n *ngIf=\"!action.url && action.action\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n (click)=\"action.action(element)\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n\n <a *ngIf=\"action.url\" [routerLink]=\"action.url\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n </a>\n </ng-container>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!columns[column].actions\">\n <ng-container *ngIf=\"columns[column].translateValue\">\n <p style=\"margin: 0; padding: 0\">\n {{ columns[column].translateValue![element[column]] || '' }}\n </p>\n </ng-container>\n\n <ng-container *ngIf=\"!columns[column].translateValue\">\n <ng-container\n *ngIf=\"!columns[column].type || columns[column].type === 'string'\"\n >\n <p style=\"margin: 0; padding: 0\">{{ element[column] }}</p>\n </ng-container>\n\n <ng-container *ngIf=\"columns[column].type === 'date'\">\n <p style=\"margin: 0; padding: 0\">\n {{ element[column] | stDateTimeFormatPipe }}\n </p>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: displayedColumns\"\n (click)=\"\n tableSettings?.rowClickAction ? tableSettings.rowClickAction(row) : null\n \"\n ></tr>\n </table>\n <mat-paginator\n [pageIndex]=\"pageIndex\"\n [pageSizeOptions]=\"[5, 10, 15, 20, 25]\"\n (page)=\"pageChanged($event)\"\n [showFirstLastButtons]=\"true\"\n ></mat-paginator>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UntypedFormControl } from '@angular/forms';\n\n@Component({\n selector: 'ngx-st-select-table',\n templateUrl: './select-table.component.html',\n styleUrls: [\n './select-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n})\nexport class SelectTableComponent implements OnInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n\n @Input()\n title: string;\n\n @Input()\n required: boolean = false;\n\n @Input()\n multiple: boolean = false;\n\n @Input()\n initSelected: any;\n\n @Input()\n initSearchVal: any;\n\n @Input()\n searchLabel: string = 'Search';\n\n @Input()\n selectedLabel: string = 'Selected';\n\n @Input()\n set setInitColumns(col: { [col: string]: string }) {\n this.columns = ['active', ...Object.keys(col)];\n this.initColumns = col;\n }\n\n @Input()\n set tableData(data: any[]) {\n this.tableSource = new MatTableDataSource(data);\n this.tableSource.paginator = this.paginator;\n }\n\n @Input()\n set validError(error: boolean) {\n this._validError = error;\n }\n\n get validError(): boolean {\n return this._validError;\n }\n\n private _validError = false;\n\n @Output()\n returnRowSelected: EventEmitter<any[]>;\n\n tableSource: MatTableDataSource<any>;\n columns: string[];\n initColumns: {\n [col: string]: string;\n };\n search: UntypedFormControl = new UntypedFormControl('');\n rowSelected: any[] = [];\n\n constructor() {}\n\n ngOnInit(): void {\n this.search.valueChanges.subscribe(res => {\n this.tableSource.filter = res.trim().toLowerCase();\n });\n setTimeout(() => {\n if (this.initSearchVal) {\n this.search.setValue(this.initSearchVal);\n this.rowClick(this.initSelected);\n }\n }, 1000);\n }\n\n clearSearch() {\n this.search.setValue('');\n }\n\n rowClick(row: any) {\n const found = this.rowSelected.find(tmpRow => tmpRow === row);\n if (found) {\n this.rowSelected = this.rowSelected.filter(tmpRow => tmpRow !== row);\n } else {\n if (this.multiple) {\n this.rowSelected.push(row);\n } else {\n this.rowSelected = [row];\n }\n }\n this.returnRowSelected.emit(this.rowSelected);\n }\n\n checkActiveRow(row: any) {\n return !!this.rowSelected.find(activeRow => activeRow === row);\n }\n}\n","<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n","import { NgModule } from '@angular/core';\nimport { LocalTableComponent } from './components/local-table/local-table.component';\nimport { SelectTableComponent } from './components/select-table/select-table.component';\nimport { ConfigurationsComponent } from './components/local-table/configurations/configurations.component';\nimport { LocalTableService } from './services/local-table.service';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { NgxStDateFormatModule } from 'ngx-st-date-format';\n\n@NgModule({\n declarations: [\n LocalTableComponent,\n SelectTableComponent,\n ConfigurationsComponent,\n ],\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatFormFieldModule,\n MatInputModule,\n MatTooltipModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n NgxStDateFormatModule,\n MatSortModule,\n MatMenuModule,\n MatSelectModule,\n MatCheckboxModule,\n ],\n exports: [LocalTableComponent, SelectTableComponent],\n providers: [LocalTableService],\n})\nexport class NgxStTablesModule {}\n","/*\n * Public API Surface of ngx-st-tables\n */\n\nexport * from './lib/services/local-table.service';\nexport * from './lib/components/local-table/local-table.component';\nexport * from './lib/components/local-table/configurations/configurations.component';\nexport * from './lib/components/select-table/select-table.component';\nexport * from './lib/models/st-configurations-settings.model';\nexport * from './lib/models/st-global-search-settings.model';\nexport * from './lib/models/st-local-storage-configuration.model';\nexport * from './lib/models/st-local-table-column.model';\nexport * from './lib/models/st-local-table-columns.model';\nexport * from './lib/models/st-table-settings.model';\nexport * from './lib/ngx-st-tables.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i1.LocalTableService","i2","i4","i5","i6","i7","i9","i11","i15.ConfigurationsComponent"],"mappings":"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"}
@@ -422,10 +422,10 @@ class SelectTableComponent {
422
422
  }
423
423
  }
424
424
  SelectTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
425
- SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "lib-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i6$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i6$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i6$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i6$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i6$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i6$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i6$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i6$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i6$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i6$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i7$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
425
+ SelectTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SelectTableComponent, selector: "ngx-st-select-table", inputs: { title: "title", required: "required", multiple: "multiple", initSelected: "initSelected", initSearchVal: "initSearchVal", searchLabel: "searchLabel", selectedLabel: "selectedLabel", setInitColumns: "setInitColumns", tableData: "tableData", validError: "validError" }, outputs: { returnRowSelected: "returnRowSelected" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\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: "component", type: i6$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i6$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i6$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i6$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i6$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i6$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i6$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i6$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i6$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i6$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i7$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
426
426
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SelectTableComponent, decorators: [{
427
427
  type: Component,
428
- args: [{ selector: 'lib-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
428
+ args: [{ selector: 'ngx-st-select-table', template: "<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n", styles: [".title{margin-bottom:0;margin-top:1rem;font-weight:500}.title.error-text{color:#ef5350}\n", ".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%;box-shadow:none}table th.mat-header-cell:first-of-type,table td.mat-cell:first-of-type,table td.mat-footer-cell:first-of-type{padding-left:12px}table th.mat-header-cell:last-of-type,table td.mat-cell:last-of-type,table td.mat-footer-cell:last-of-type{padding-right:12px}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
429
429
  }], ctorParameters: function () { return []; }, propDecorators: { paginator: [{
430
430
  type: ViewChild,
431
431
  args: [MatPaginator]
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-st-tables.mjs","sources":["../../../projects/ngx-st-tables/src/lib/services/local-table.service.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.html","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.html","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.html","../../../projects/ngx-st-tables/src/lib/ngx-st-tables.module.ts","../../../projects/ngx-st-tables/src/public-api.ts","../../../projects/ngx-st-tables/src/ngx-st-tables.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { StLocalStorageConfigurationModel } from '../models/st-local-storage-configuration.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalTableService {\n localStorageName: string = '';\n\n constructor() {}\n\n getConfigs(): StLocalStorageConfigurationModel[] {\n if (this.checkLocalStorageName()) {\n return JSON.parse(localStorage.getItem(this.localStorageName) || '[]');\n }\n return [];\n }\n\n saveConfigs(configs: StLocalStorageConfigurationModel[]) {\n if (this.checkLocalStorageName()) {\n localStorage.setItem(this.localStorageName, JSON.stringify(configs));\n }\n }\n\n checkLocalStorageName() {\n if (this.localStorageName) {\n return true;\n } else {\n console.warn('Yiu have to add configurationsSettings');\n return false;\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { StConfigurationsSettingsModel } from '../../../models/st-configurations-settings.model';\nimport { StLocalStorageConfigurationModel } from '../../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'st-configurations[configurationsSettings]',\n templateUrl: './configurations.component.html',\n styleUrls: ['./configurations.component.scss'],\n})\nexport class ConfigurationsComponent implements OnInit {\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n configurations: StLocalStorageConfigurationModel[];\n\n @Input()\n set initSelectedConfig(config: StLocalStorageConfigurationModel | null) {\n this.selectedConfig = config;\n }\n\n @Output()\n createNewConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n removeConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n changeConfig: EventEmitter<string | null> = new EventEmitter();\n\n creatingConfiguration: boolean = false;\n createConfigurationName: string = '';\n removingConfiguration: boolean = false;\n\n selectedConfig: StLocalStorageConfigurationModel | null;\n\n constructor() {}\n\n ngOnInit(): void {}\n\n showCreateConfiguration() {\n this.creatingConfiguration = true;\n this.createConfigurationName = '';\n }\n\n hideCreateConfiguration() {\n this.creatingConfiguration = false;\n this.createConfigurationName = '';\n }\n\n saveCreateConfiguration() {\n this.creatingConfiguration = false;\n this.selectedConfig = null;\n this.createNewConfig.emit(this.createConfigurationName);\n }\n\n deleteConfiguration() {\n this.removingConfiguration = true;\n }\n\n acceptDeleteConfiguration() {\n this.removingConfiguration = false;\n this.selectedConfig = null;\n this.removeConfig.emit(this.selectedConfig!.configId);\n }\n\n declineDeleteConfiguration() {\n this.removingConfiguration = false;\n }\n\n selectedConfigChanged() {\n this.changeConfig.emit(this.selectedConfig?.configId || null);\n }\n}\n","<div class=\"col-auto row align-items-center\" style=\"padding: 0\">\n <ng-container *ngIf=\"!creatingConfiguration && !removingConfiguration\">\n <mat-form-field class=\"col-auto\" style=\"padding-right: 0\">\n <mat-label>{{ configurationsSettings.selectLabel }}</mat-label>\n <mat-select\n [(ngModel)]=\"selectedConfig\"\n (ngModelChange)=\"selectedConfigChanged()\"\n >\n <mat-option [value]=\"null\"></mat-option>\n <mat-option *ngFor=\"let config of configurations\" [value]=\"config\">{{\n config.configName\n }}</mat-option>\n </mat-select>\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"showCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> add </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n [disabled]=\"!selectedConfig\"\n (click)=\"deleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> delete </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"creatingConfiguration\">\n <mat-form-field class=\"col-auto\">\n <mat-label>{{ configurationsSettings.createLabel }}</mat-label>\n <input matInput [(ngModel)]=\"createConfigurationName\" />\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"saveCreateConfiguration()\"\n [disabled]=\"!createConfigurationName\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"hideCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"removingConfiguration\">\n <p class=\"col-auto\" style=\"margin: 0; font-weight: bold; font-size: 16px\">\n {{ configurationsSettings.deleteWarningTitle }}\n </p>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"acceptDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"declineDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { LocalTableService } from '../../services/local-table.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort, SortDirection } from '@angular/material/sort';\nimport { StTableSettingsModel } from '../../models/st-table-settings.model';\nimport { StGlobalSearchSettingsModel } from '../../models/st-global-search-settings.model';\nimport { StConfigurationsSettingsModel } from '../../models/st-configurations-settings.model';\nimport { StLocalTableColumnsModel } from '../../models/st-local-table-columns.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport {\n LocalTableActionColumnModel,\n StLocalTableColumnModel,\n} from '../../models/st-local-table-column.model';\nimport { StLocalStorageConfigurationModel } from '../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'ngx-st-local-table',\n templateUrl: './local-table.component.html',\n styleUrls: [\n './local-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LocalTableComponent implements OnInit, AfterViewInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n @ViewChild(MatSort) sort: MatSort;\n\n @Input()\n tableSettings: StTableSettingsModel;\n\n @Input()\n globalSearchSettings: StGlobalSearchSettingsModel;\n\n @Input()\n pageSize: number = 10;\n\n @Input()\n allowPickColumns: boolean = false;\n\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n localStorageName: string = '';\n\n @Input()\n bindSearchToUrl: boolean = false;\n\n @Input()\n set columns(columns: StLocalTableColumnsModel) {\n this._columns = columns;\n this.columnsArray = this.getColumnsArray();\n this.setDisplayedColumns();\n }\n\n get columns(): StLocalTableColumnsModel {\n return this._columns;\n }\n\n private _columns: StLocalTableColumnsModel = {};\n\n @Input()\n set data(data: any[]) {\n this._data = data || [];\n this.setTableSource();\n }\n\n get data(): any[] {\n return this._data;\n }\n\n private _data: any[] = [];\n\n searchModel: string = '';\n\n displayedColumns: string[] = [];\n tableSource: MatTableDataSource<any>;\n columnsArray: StLocalTableColumnModel[];\n configurations: StLocalStorageConfigurationModel[] = [];\n initConfig: StLocalStorageConfigurationModel | null = null;\n activeConfig: StLocalStorageConfigurationModel | null = null;\n pageIndex: number = 0;\n\n constructor(\n private localTableService: LocalTableService,\n private changeDetectorRef: ChangeDetectorRef,\n private router: Router,\n private activatedRoute: ActivatedRoute\n ) {}\n\n ngOnInit(): void {\n if (this.localStorageName) {\n const pageSize = localStorage.getItem(this.localStorageName);\n if (pageSize) {\n this.pageSize = parseInt(pageSize);\n }\n }\n if (this.configurationsSettings) {\n this.localTableService.localStorageName =\n this.configurationsSettings?.localStorageName || '';\n this.loadConfigs();\n }\n }\n\n ngAfterViewInit() {\n if (this.configurationsSettings) {\n this.paginator.page.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.pageSize = res.pageSize;\n this.updateConfigsToLocalStorage();\n }\n });\n this.sort.sortChange.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.sortFieldName = res.active;\n this.activeConfig.sortDirection = res.direction;\n this.updateConfigsToLocalStorage();\n }\n });\n }\n if (this.bindSearchToUrl) {\n const params = new URLSearchParams(location.search);\n this.sort.sortChange.subscribe(res => {\n this.updateSearchToUrl();\n });\n if (params.get('stLocalTablePageIndex')) {\n this.pageIndex = parseInt(params.get('stLocalTablePageIndex') || '');\n }\n if (params.get('stLocalTablePageSize')) {\n this.pageSize = parseInt(params.get('stLocalTablePageSize') || '');\n }\n if (\n params.get('stLocalTableSortFieldName') &&\n params.get('stLocalTableSortDirection')\n ) {\n this.sort.sort({\n id: params.get('stLocalTableSortFieldName') || '',\n start:\n <SortDirection>params.get('stLocalTableSortDirection') || 'asc',\n disableClear: false,\n });\n }\n this.searchModel = params.get('stLocalTableSearch') || '';\n if (this.searchModel) {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n }\n }\n this.paginator.pageSize = this.pageSize;\n }\n\n applySearch() {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n clearSearch() {\n this.searchModel = '';\n this.tableSource.filter = this.searchModel;\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n checkIfActionVisible(row: any, action: LocalTableActionColumnModel) {\n if (action.show) {\n return action.show(row);\n } else {\n return true;\n }\n }\n\n columnVisibleChanged(column: StLocalTableColumnModel) {\n this.setDisplayedColumns();\n this.updateConfigsToLocalStorage();\n }\n\n newConfigCreated(name: string) {\n const newConfig = this.generateNewConfig(name);\n this.configurations.push(newConfig);\n this.updateConfigsToLocalStorage();\n this.initConfig = newConfig;\n }\n\n configRemoved(configId: string) {\n this.configurations = this.configurations.filter(\n config => config.configId !== configId\n );\n this.updateConfigsToLocalStorage();\n }\n\n configChanged(configId: string | null) {\n this.activeConfig = configId\n ? this.configurations.find(config => config.configId === configId)!\n : null;\n if (this.activeConfig) {\n this.setTableConfig(\n this.activeConfig.pageSize,\n this.activeConfig.columnsDisabled,\n this.activeConfig.sortFieldName,\n this.activeConfig.sortDirection\n );\n } else {\n this.setTableConfig(this.pageSize, [], null, null);\n this.clearSearch();\n }\n }\n\n pageChanged(event: any) {\n this.pageIndex = event.pageIndex;\n this.updateSearchToUrl();\n }\n\n private updateSearchToUrl() {\n if (this.bindSearchToUrl) {\n let queryParams = {\n stLocalTableSearch: this.searchModel,\n stLocalTablePageIndex: this.pageIndex,\n stLocalTablePageSize: this.paginator.pageSize,\n stLocalTableSortFieldName: '',\n stLocalTableSortDirection: '',\n };\n if (this.sort.direction && this.sort.active) {\n queryParams = {\n ...queryParams,\n stLocalTableSortFieldName: this.sort.active,\n stLocalTableSortDirection: this.sort.direction,\n };\n }\n this.router.navigate(['./'], {\n queryParams: queryParams,\n relativeTo: this.activatedRoute,\n });\n }\n }\n\n private updateConfigsToLocalStorage() {\n this.localTableService.saveConfigs(this.configurations);\n }\n\n private setTableSource() {\n this.tableSource = new MatTableDataSource(this._data);\n this.tableSource.paginator = this.paginator;\n this.tableSource.sort = this.sort;\n this.tableSource.filter = this.searchModel;\n this.changeDetectorRef.markForCheck();\n }\n\n private setDisplayedColumns() {\n this.displayedColumns = Object.keys(this.columns).filter(column => {\n return this._columns[column].visible;\n });\n }\n\n private getColumnsArray() {\n return Object.keys(this._columns).map(column => this._columns[column]);\n }\n\n private loadConfigs() {\n this.configurations = this.localTableService.getConfigs();\n }\n\n private generateNewConfig(configName: string) {\n return {\n configId: Date.now().toString(),\n configName: configName,\n columnsDisabled: this.columnsArray\n .filter(column => !column.visible)\n .map(column => column.translateColumnName),\n pageSize: this.paginator.pageSize,\n sortFieldName:\n this.sort.direction && this.sort.active ? this.sort.active : null,\n sortDirection: this.sort.direction || null,\n };\n }\n\n private setTableConfig(\n pageSize: number,\n disabledColumns: string[],\n sortFieldName: null | string,\n sortDirection: null | SortDirection\n ) {\n this.paginator.pageSize = pageSize;\n this.sort.sort({\n id: sortFieldName || '',\n start: sortDirection || 'asc',\n disableClear: false,\n });\n this.columnsArray.forEach(column => {\n column.visible =\n disabledColumns.indexOf(column.translateColumnName) === -1;\n });\n this.setDisplayedColumns();\n }\n}\n","<div class=\"local-table\">\n <div class=\"row align-items-center\">\n <div\n class=\"col row align-items-center\"\n style=\"padding: 0\"\n *ngIf=\"configurationsSettings || allowPickColumns\"\n >\n <div class=\"col-auto\" style=\"padding: 0\" *ngIf=\"allowPickColumns\">\n <button\n mat-icon-button\n class=\"col-auto\"\n [matMenuTriggerFor]=\"columnsMenu\"\n >\n <span class=\"material-icons-outlined\"> view_week </span>\n </button>\n <mat-menu #columnsMenu=\"matMenu\" xPosition=\"after\">\n <ng-container *ngFor=\"let column of columnsArray\">\n <div mat-menu-item *ngIf=\"!column.notShowInColumnPick\">\n <mat-checkbox\n [(ngModel)]=\"column.visible\"\n (ngModelChange)=\"columnVisibleChanged(column)\"\n style=\"margin-top: 5px\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ column.translateColumnName }}\n </mat-checkbox>\n </div>\n </ng-container>\n </mat-menu>\n </div>\n\n <st-configurations\n *ngIf=\"configurationsSettings\"\n [configurationsSettings]=\"configurationsSettings\"\n [configurations]=\"configurations\"\n [initSelectedConfig]=\"initConfig\"\n (createNewConfig)=\"newConfigCreated($event)\"\n (removeConfig)=\"configRemoved($event)\"\n (changeConfig)=\"configChanged($event)\"\n ></st-configurations>\n </div>\n\n <div class=\"col\" style=\"padding: 0\" *ngIf=\"globalSearchSettings?.show\">\n <mat-form-field class=\"col\">\n <mat-label>{{ globalSearchSettings?.label || 'Search' }}</mat-label>\n <input matInput (keyup)=\"applySearch()\" [(ngModel)]=\"searchModel\" />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"clearSearch()\"\n >\n <mat-icon style=\"font-size: 22px\">close</mat-icon>\n </button>\n </mat-form-field>\n </div>\n </div>\n\n <table\n [ngClass]=\"{ 'no-hover': !tableSettings?.rowClickAction }\"\n mat-table\n [dataSource]=\"tableSource\"\n matSort\n >\n <ng-container\n [matColumnDef]=\"column\"\n *ngFor=\"let column of displayedColumns\"\n >\n <th\n mat-header-cell\n *matHeaderCellDef\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n mat-sort-header\n [disabled]=\"!columns[column].sort\"\n >\n {{ columns[column].translateColumnName }}\n <span\n class=\"material-icons search-icon\"\n [matMenuTriggerFor]=\"menu\"\n (click)=\"$event.stopPropagation()\"\n *ngIf=\"columns[column].search\"\n >\n search\n </span>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <mat-form-field class=\"col\">\n <mat-label>{{ columns[column].searchLabel || 'Search' }}</mat-label>\n <input\n matInput\n (keyup)=\"applySearch()\"\n [(ngModel)]=\"searchModel\"\n (click)=\"$event.stopPropagation()\"\n />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"searchModel = ''\"\n >\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n </mat-menu>\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n >\n <div\n class=\"actions-container\"\n [ngClass]=\"{ 'justify-content-end': columns[column].flexRight }\"\n *ngIf=\"columns[column].actions && columns[column].actions!.length > 0\"\n >\n <ng-container *ngFor=\"let action of columns[column].actions\">\n <ng-container *ngIf=\"checkIfActionVisible(element, action)\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n *ngIf=\"!action.url && action.action\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n (click)=\"action.action(element)\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n\n <a *ngIf=\"action.url\" [routerLink]=\"action.url\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n </a>\n </ng-container>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!columns[column].actions\">\n <ng-container *ngIf=\"columns[column].translateValue\">\n <p style=\"margin: 0; padding: 0\">\n {{ columns[column].translateValue![element[column]] || '' }}\n </p>\n </ng-container>\n\n <ng-container *ngIf=\"!columns[column].translateValue\">\n <ng-container\n *ngIf=\"!columns[column].type || columns[column].type === 'string'\"\n >\n <p style=\"margin: 0; padding: 0\">{{ element[column] }}</p>\n </ng-container>\n\n <ng-container *ngIf=\"columns[column].type === 'date'\">\n <p style=\"margin: 0; padding: 0\">\n {{ element[column] | stDateTimeFormatPipe }}\n </p>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: displayedColumns\"\n (click)=\"\n tableSettings?.rowClickAction ? tableSettings.rowClickAction(row) : null\n \"\n ></tr>\n </table>\n <mat-paginator\n [pageIndex]=\"pageIndex\"\n [pageSizeOptions]=\"[5, 10, 15, 20, 25]\"\n (page)=\"pageChanged($event)\"\n [showFirstLastButtons]=\"true\"\n ></mat-paginator>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UntypedFormControl } from '@angular/forms';\n\n@Component({\n selector: 'lib-select-table',\n templateUrl: './select-table.component.html',\n styleUrls: [\n './select-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n})\nexport class SelectTableComponent implements OnInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n\n @Input()\n title: string;\n\n @Input()\n required: boolean = false;\n\n @Input()\n multiple: boolean = false;\n\n @Input()\n initSelected: any;\n\n @Input()\n initSearchVal: any;\n\n @Input()\n searchLabel: string = 'Search';\n\n @Input()\n selectedLabel: string = 'Selected';\n\n @Input()\n set setInitColumns(col: { [col: string]: string }) {\n this.columns = ['active', ...Object.keys(col)];\n this.initColumns = col;\n }\n\n @Input()\n set tableData(data: any[]) {\n this.tableSource = new MatTableDataSource(data);\n this.tableSource.paginator = this.paginator;\n }\n\n @Input()\n set validError(error: boolean) {\n this._validError = error;\n }\n\n get validError(): boolean {\n return this._validError;\n }\n\n private _validError = false;\n\n @Output()\n returnRowSelected: EventEmitter<any[]>;\n\n tableSource: MatTableDataSource<any>;\n columns: string[];\n initColumns: {\n [col: string]: string;\n };\n search: UntypedFormControl = new UntypedFormControl('');\n rowSelected: any[] = [];\n\n constructor() {}\n\n ngOnInit(): void {\n this.search.valueChanges.subscribe(res => {\n this.tableSource.filter = res.trim().toLowerCase();\n });\n setTimeout(() => {\n if (this.initSearchVal) {\n this.search.setValue(this.initSearchVal);\n this.rowClick(this.initSelected);\n }\n }, 1000);\n }\n\n clearSearch() {\n this.search.setValue('');\n }\n\n rowClick(row: any) {\n const found = this.rowSelected.find(tmpRow => tmpRow === row);\n if (found) {\n this.rowSelected = this.rowSelected.filter(tmpRow => tmpRow !== row);\n } else {\n if (this.multiple) {\n this.rowSelected.push(row);\n } else {\n this.rowSelected = [row];\n }\n }\n this.returnRowSelected.emit(this.rowSelected);\n }\n\n checkActiveRow(row: any) {\n return !!this.rowSelected.find(activeRow => activeRow === row);\n }\n}\n","<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n","import { NgModule } from '@angular/core';\nimport { LocalTableComponent } from './components/local-table/local-table.component';\nimport { SelectTableComponent } from './components/select-table/select-table.component';\nimport { ConfigurationsComponent } from './components/local-table/configurations/configurations.component';\nimport { LocalTableService } from './services/local-table.service';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { NgxStDateFormatModule } from 'ngx-st-date-format';\n\n@NgModule({\n declarations: [\n LocalTableComponent,\n SelectTableComponent,\n ConfigurationsComponent,\n ],\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatFormFieldModule,\n MatInputModule,\n MatTooltipModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n NgxStDateFormatModule,\n MatSortModule,\n MatMenuModule,\n MatSelectModule,\n MatCheckboxModule,\n ],\n exports: [LocalTableComponent, SelectTableComponent],\n providers: [LocalTableService],\n})\nexport class NgxStTablesModule {}\n","/*\n * Public API Surface of ngx-st-tables\n */\n\nexport * from './lib/services/local-table.service';\nexport * from './lib/components/local-table/local-table.component';\nexport * from './lib/components/local-table/configurations/configurations.component';\nexport * from './lib/components/select-table/select-table.component';\nexport * from './lib/models/st-configurations-settings.model';\nexport * from './lib/models/st-global-search-settings.model';\nexport * from './lib/models/st-local-storage-configuration.model';\nexport * from './lib/models/st-local-table-column.model';\nexport * from './lib/models/st-local-table-columns.model';\nexport * from './lib/models/st-table-settings.model';\nexport * from './lib/ngx-st-tables.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i1.LocalTableService","i2","i4","i5","i6","i7","i9","i11","i15.ConfigurationsComponent"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-st-tables.mjs","sources":["../../../projects/ngx-st-tables/src/lib/services/local-table.service.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/configurations/configurations.component.html","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/local-table/local-table.component.html","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.ts","../../../projects/ngx-st-tables/src/lib/components/select-table/select-table.component.html","../../../projects/ngx-st-tables/src/lib/ngx-st-tables.module.ts","../../../projects/ngx-st-tables/src/public-api.ts","../../../projects/ngx-st-tables/src/ngx-st-tables.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { StLocalStorageConfigurationModel } from '../models/st-local-storage-configuration.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LocalTableService {\n localStorageName: string = '';\n\n constructor() {}\n\n getConfigs(): StLocalStorageConfigurationModel[] {\n if (this.checkLocalStorageName()) {\n return JSON.parse(localStorage.getItem(this.localStorageName) || '[]');\n }\n return [];\n }\n\n saveConfigs(configs: StLocalStorageConfigurationModel[]) {\n if (this.checkLocalStorageName()) {\n localStorage.setItem(this.localStorageName, JSON.stringify(configs));\n }\n }\n\n checkLocalStorageName() {\n if (this.localStorageName) {\n return true;\n } else {\n console.warn('Yiu have to add configurationsSettings');\n return false;\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { StConfigurationsSettingsModel } from '../../../models/st-configurations-settings.model';\nimport { StLocalStorageConfigurationModel } from '../../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'st-configurations[configurationsSettings]',\n templateUrl: './configurations.component.html',\n styleUrls: ['./configurations.component.scss'],\n})\nexport class ConfigurationsComponent implements OnInit {\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n configurations: StLocalStorageConfigurationModel[];\n\n @Input()\n set initSelectedConfig(config: StLocalStorageConfigurationModel | null) {\n this.selectedConfig = config;\n }\n\n @Output()\n createNewConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n removeConfig: EventEmitter<string> = new EventEmitter();\n\n @Output()\n changeConfig: EventEmitter<string | null> = new EventEmitter();\n\n creatingConfiguration: boolean = false;\n createConfigurationName: string = '';\n removingConfiguration: boolean = false;\n\n selectedConfig: StLocalStorageConfigurationModel | null;\n\n constructor() {}\n\n ngOnInit(): void {}\n\n showCreateConfiguration() {\n this.creatingConfiguration = true;\n this.createConfigurationName = '';\n }\n\n hideCreateConfiguration() {\n this.creatingConfiguration = false;\n this.createConfigurationName = '';\n }\n\n saveCreateConfiguration() {\n this.creatingConfiguration = false;\n this.selectedConfig = null;\n this.createNewConfig.emit(this.createConfigurationName);\n }\n\n deleteConfiguration() {\n this.removingConfiguration = true;\n }\n\n acceptDeleteConfiguration() {\n this.removingConfiguration = false;\n this.selectedConfig = null;\n this.removeConfig.emit(this.selectedConfig!.configId);\n }\n\n declineDeleteConfiguration() {\n this.removingConfiguration = false;\n }\n\n selectedConfigChanged() {\n this.changeConfig.emit(this.selectedConfig?.configId || null);\n }\n}\n","<div class=\"col-auto row align-items-center\" style=\"padding: 0\">\n <ng-container *ngIf=\"!creatingConfiguration && !removingConfiguration\">\n <mat-form-field class=\"col-auto\" style=\"padding-right: 0\">\n <mat-label>{{ configurationsSettings.selectLabel }}</mat-label>\n <mat-select\n [(ngModel)]=\"selectedConfig\"\n (ngModelChange)=\"selectedConfigChanged()\"\n >\n <mat-option [value]=\"null\"></mat-option>\n <mat-option *ngFor=\"let config of configurations\" [value]=\"config\">{{\n config.configName\n }}</mat-option>\n </mat-select>\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"showCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> add </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n [disabled]=\"!selectedConfig\"\n (click)=\"deleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> delete </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"creatingConfiguration\">\n <mat-form-field class=\"col-auto\">\n <mat-label>{{ configurationsSettings.createLabel }}</mat-label>\n <input matInput [(ngModel)]=\"createConfigurationName\" />\n </mat-form-field>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"saveCreateConfiguration()\"\n [disabled]=\"!createConfigurationName\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"hideCreateConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"removingConfiguration\">\n <p class=\"col-auto\" style=\"margin: 0; font-weight: bold; font-size: 16px\">\n {{ configurationsSettings.deleteWarningTitle }}\n </p>\n <button\n mat-icon-button\n class=\"col-auto green-icon\"\n (click)=\"acceptDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> done </span>\n </button>\n <button\n mat-icon-button\n class=\"col-auto red-icon\"\n (click)=\"declineDeleteConfiguration()\"\n >\n <span class=\"material-icons-outlined\"> close </span>\n </button>\n </ng-container>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { LocalTableService } from '../../services/local-table.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort, SortDirection } from '@angular/material/sort';\nimport { StTableSettingsModel } from '../../models/st-table-settings.model';\nimport { StGlobalSearchSettingsModel } from '../../models/st-global-search-settings.model';\nimport { StConfigurationsSettingsModel } from '../../models/st-configurations-settings.model';\nimport { StLocalTableColumnsModel } from '../../models/st-local-table-columns.model';\nimport { MatTableDataSource } from '@angular/material/table';\nimport {\n LocalTableActionColumnModel,\n StLocalTableColumnModel,\n} from '../../models/st-local-table-column.model';\nimport { StLocalStorageConfigurationModel } from '../../models/st-local-storage-configuration.model';\n\n@Component({\n selector: 'ngx-st-local-table',\n templateUrl: './local-table.component.html',\n styleUrls: [\n './local-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LocalTableComponent implements OnInit, AfterViewInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n @ViewChild(MatSort) sort: MatSort;\n\n @Input()\n tableSettings: StTableSettingsModel;\n\n @Input()\n globalSearchSettings: StGlobalSearchSettingsModel;\n\n @Input()\n pageSize: number = 10;\n\n @Input()\n allowPickColumns: boolean = false;\n\n @Input()\n configurationsSettings: StConfigurationsSettingsModel;\n\n @Input()\n localStorageName: string = '';\n\n @Input()\n bindSearchToUrl: boolean = false;\n\n @Input()\n set columns(columns: StLocalTableColumnsModel) {\n this._columns = columns;\n this.columnsArray = this.getColumnsArray();\n this.setDisplayedColumns();\n }\n\n get columns(): StLocalTableColumnsModel {\n return this._columns;\n }\n\n private _columns: StLocalTableColumnsModel = {};\n\n @Input()\n set data(data: any[]) {\n this._data = data || [];\n this.setTableSource();\n }\n\n get data(): any[] {\n return this._data;\n }\n\n private _data: any[] = [];\n\n searchModel: string = '';\n\n displayedColumns: string[] = [];\n tableSource: MatTableDataSource<any>;\n columnsArray: StLocalTableColumnModel[];\n configurations: StLocalStorageConfigurationModel[] = [];\n initConfig: StLocalStorageConfigurationModel | null = null;\n activeConfig: StLocalStorageConfigurationModel | null = null;\n pageIndex: number = 0;\n\n constructor(\n private localTableService: LocalTableService,\n private changeDetectorRef: ChangeDetectorRef,\n private router: Router,\n private activatedRoute: ActivatedRoute\n ) {}\n\n ngOnInit(): void {\n if (this.localStorageName) {\n const pageSize = localStorage.getItem(this.localStorageName);\n if (pageSize) {\n this.pageSize = parseInt(pageSize);\n }\n }\n if (this.configurationsSettings) {\n this.localTableService.localStorageName =\n this.configurationsSettings?.localStorageName || '';\n this.loadConfigs();\n }\n }\n\n ngAfterViewInit() {\n if (this.configurationsSettings) {\n this.paginator.page.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.pageSize = res.pageSize;\n this.updateConfigsToLocalStorage();\n }\n });\n this.sort.sortChange.subscribe(res => {\n if (this.activeConfig) {\n this.activeConfig.sortFieldName = res.active;\n this.activeConfig.sortDirection = res.direction;\n this.updateConfigsToLocalStorage();\n }\n });\n }\n if (this.bindSearchToUrl) {\n const params = new URLSearchParams(location.search);\n this.sort.sortChange.subscribe(res => {\n this.updateSearchToUrl();\n });\n if (params.get('stLocalTablePageIndex')) {\n this.pageIndex = parseInt(params.get('stLocalTablePageIndex') || '');\n }\n if (params.get('stLocalTablePageSize')) {\n this.pageSize = parseInt(params.get('stLocalTablePageSize') || '');\n }\n if (\n params.get('stLocalTableSortFieldName') &&\n params.get('stLocalTableSortDirection')\n ) {\n this.sort.sort({\n id: params.get('stLocalTableSortFieldName') || '',\n start:\n <SortDirection>params.get('stLocalTableSortDirection') || 'asc',\n disableClear: false,\n });\n }\n this.searchModel = params.get('stLocalTableSearch') || '';\n if (this.searchModel) {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n }\n }\n this.paginator.pageSize = this.pageSize;\n }\n\n applySearch() {\n this.tableSource.filter = this.searchModel.trim().toLowerCase();\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n clearSearch() {\n this.searchModel = '';\n this.tableSource.filter = this.searchModel;\n this.pageIndex = 0;\n this.updateSearchToUrl();\n }\n\n checkIfActionVisible(row: any, action: LocalTableActionColumnModel) {\n if (action.show) {\n return action.show(row);\n } else {\n return true;\n }\n }\n\n columnVisibleChanged(column: StLocalTableColumnModel) {\n this.setDisplayedColumns();\n this.updateConfigsToLocalStorage();\n }\n\n newConfigCreated(name: string) {\n const newConfig = this.generateNewConfig(name);\n this.configurations.push(newConfig);\n this.updateConfigsToLocalStorage();\n this.initConfig = newConfig;\n }\n\n configRemoved(configId: string) {\n this.configurations = this.configurations.filter(\n config => config.configId !== configId\n );\n this.updateConfigsToLocalStorage();\n }\n\n configChanged(configId: string | null) {\n this.activeConfig = configId\n ? this.configurations.find(config => config.configId === configId)!\n : null;\n if (this.activeConfig) {\n this.setTableConfig(\n this.activeConfig.pageSize,\n this.activeConfig.columnsDisabled,\n this.activeConfig.sortFieldName,\n this.activeConfig.sortDirection\n );\n } else {\n this.setTableConfig(this.pageSize, [], null, null);\n this.clearSearch();\n }\n }\n\n pageChanged(event: any) {\n this.pageIndex = event.pageIndex;\n this.updateSearchToUrl();\n }\n\n private updateSearchToUrl() {\n if (this.bindSearchToUrl) {\n let queryParams = {\n stLocalTableSearch: this.searchModel,\n stLocalTablePageIndex: this.pageIndex,\n stLocalTablePageSize: this.paginator.pageSize,\n stLocalTableSortFieldName: '',\n stLocalTableSortDirection: '',\n };\n if (this.sort.direction && this.sort.active) {\n queryParams = {\n ...queryParams,\n stLocalTableSortFieldName: this.sort.active,\n stLocalTableSortDirection: this.sort.direction,\n };\n }\n this.router.navigate(['./'], {\n queryParams: queryParams,\n relativeTo: this.activatedRoute,\n });\n }\n }\n\n private updateConfigsToLocalStorage() {\n this.localTableService.saveConfigs(this.configurations);\n }\n\n private setTableSource() {\n this.tableSource = new MatTableDataSource(this._data);\n this.tableSource.paginator = this.paginator;\n this.tableSource.sort = this.sort;\n this.tableSource.filter = this.searchModel;\n this.changeDetectorRef.markForCheck();\n }\n\n private setDisplayedColumns() {\n this.displayedColumns = Object.keys(this.columns).filter(column => {\n return this._columns[column].visible;\n });\n }\n\n private getColumnsArray() {\n return Object.keys(this._columns).map(column => this._columns[column]);\n }\n\n private loadConfigs() {\n this.configurations = this.localTableService.getConfigs();\n }\n\n private generateNewConfig(configName: string) {\n return {\n configId: Date.now().toString(),\n configName: configName,\n columnsDisabled: this.columnsArray\n .filter(column => !column.visible)\n .map(column => column.translateColumnName),\n pageSize: this.paginator.pageSize,\n sortFieldName:\n this.sort.direction && this.sort.active ? this.sort.active : null,\n sortDirection: this.sort.direction || null,\n };\n }\n\n private setTableConfig(\n pageSize: number,\n disabledColumns: string[],\n sortFieldName: null | string,\n sortDirection: null | SortDirection\n ) {\n this.paginator.pageSize = pageSize;\n this.sort.sort({\n id: sortFieldName || '',\n start: sortDirection || 'asc',\n disableClear: false,\n });\n this.columnsArray.forEach(column => {\n column.visible =\n disabledColumns.indexOf(column.translateColumnName) === -1;\n });\n this.setDisplayedColumns();\n }\n}\n","<div class=\"local-table\">\n <div class=\"row align-items-center\">\n <div\n class=\"col row align-items-center\"\n style=\"padding: 0\"\n *ngIf=\"configurationsSettings || allowPickColumns\"\n >\n <div class=\"col-auto\" style=\"padding: 0\" *ngIf=\"allowPickColumns\">\n <button\n mat-icon-button\n class=\"col-auto\"\n [matMenuTriggerFor]=\"columnsMenu\"\n >\n <span class=\"material-icons-outlined\"> view_week </span>\n </button>\n <mat-menu #columnsMenu=\"matMenu\" xPosition=\"after\">\n <ng-container *ngFor=\"let column of columnsArray\">\n <div mat-menu-item *ngIf=\"!column.notShowInColumnPick\">\n <mat-checkbox\n [(ngModel)]=\"column.visible\"\n (ngModelChange)=\"columnVisibleChanged(column)\"\n style=\"margin-top: 5px\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ column.translateColumnName }}\n </mat-checkbox>\n </div>\n </ng-container>\n </mat-menu>\n </div>\n\n <st-configurations\n *ngIf=\"configurationsSettings\"\n [configurationsSettings]=\"configurationsSettings\"\n [configurations]=\"configurations\"\n [initSelectedConfig]=\"initConfig\"\n (createNewConfig)=\"newConfigCreated($event)\"\n (removeConfig)=\"configRemoved($event)\"\n (changeConfig)=\"configChanged($event)\"\n ></st-configurations>\n </div>\n\n <div class=\"col\" style=\"padding: 0\" *ngIf=\"globalSearchSettings?.show\">\n <mat-form-field class=\"col\">\n <mat-label>{{ globalSearchSettings?.label || 'Search' }}</mat-label>\n <input matInput (keyup)=\"applySearch()\" [(ngModel)]=\"searchModel\" />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"clearSearch()\"\n >\n <mat-icon style=\"font-size: 22px\">close</mat-icon>\n </button>\n </mat-form-field>\n </div>\n </div>\n\n <table\n [ngClass]=\"{ 'no-hover': !tableSettings?.rowClickAction }\"\n mat-table\n [dataSource]=\"tableSource\"\n matSort\n >\n <ng-container\n [matColumnDef]=\"column\"\n *ngFor=\"let column of displayedColumns\"\n >\n <th\n mat-header-cell\n *matHeaderCellDef\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n mat-sort-header\n [disabled]=\"!columns[column].sort\"\n >\n {{ columns[column].translateColumnName }}\n <span\n class=\"material-icons search-icon\"\n [matMenuTriggerFor]=\"menu\"\n (click)=\"$event.stopPropagation()\"\n *ngIf=\"columns[column].search\"\n >\n search\n </span>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <mat-form-field class=\"col\">\n <mat-label>{{ columns[column].searchLabel || 'Search' }}</mat-label>\n <input\n matInput\n (keyup)=\"applySearch()\"\n [(ngModel)]=\"searchModel\"\n (click)=\"$event.stopPropagation()\"\n />\n <button\n matSuffix\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"searchModel = ''\"\n >\n <mat-icon>close</mat-icon>\n </button>\n </mat-form-field>\n </mat-menu>\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n style=\"{{\n columns[column].width ? 'width:' + columns[column].width : ''\n }}\"\n >\n <div\n class=\"actions-container\"\n [ngClass]=\"{ 'justify-content-end': columns[column].flexRight }\"\n *ngIf=\"columns[column].actions && columns[column].actions!.length > 0\"\n >\n <ng-container *ngFor=\"let action of columns[column].actions\">\n <ng-container *ngIf=\"checkIfActionVisible(element, action)\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n *ngIf=\"!action.url && action.action\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n (click)=\"action.action(element)\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n\n <a *ngIf=\"action.url\" [routerLink]=\"action.url\">\n <button\n class=\"col-auto\"\n mat-icon-button\n type=\"button\"\n matTooltip=\"{{ action.tooltipName || '' }}\"\n [matTooltipDisabled]=\"!!!action.tooltipName\"\n >\n <span class=\"material-icons\">{{ action.iconName }}</span>\n </button>\n </a>\n </ng-container>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!columns[column].actions\">\n <ng-container *ngIf=\"columns[column].translateValue\">\n <p style=\"margin: 0; padding: 0\">\n {{ columns[column].translateValue![element[column]] || '' }}\n </p>\n </ng-container>\n\n <ng-container *ngIf=\"!columns[column].translateValue\">\n <ng-container\n *ngIf=\"!columns[column].type || columns[column].type === 'string'\"\n >\n <p style=\"margin: 0; padding: 0\">{{ element[column] }}</p>\n </ng-container>\n\n <ng-container *ngIf=\"columns[column].type === 'date'\">\n <p style=\"margin: 0; padding: 0\">\n {{ element[column] | stDateTimeFormatPipe }}\n </p>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: displayedColumns\"\n (click)=\"\n tableSettings?.rowClickAction ? tableSettings.rowClickAction(row) : null\n \"\n ></tr>\n </table>\n <mat-paginator\n [pageIndex]=\"pageIndex\"\n [pageSizeOptions]=\"[5, 10, 15, 20, 25]\"\n (page)=\"pageChanged($event)\"\n [showFirstLastButtons]=\"true\"\n ></mat-paginator>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { UntypedFormControl } from '@angular/forms';\n\n@Component({\n selector: 'ngx-st-select-table',\n templateUrl: './select-table.component.html',\n styleUrls: [\n './select-table.component.scss',\n '../../../../assets/base-table.scss',\n ],\n})\nexport class SelectTableComponent implements OnInit {\n @ViewChild(MatPaginator) paginator: MatPaginator;\n\n @Input()\n title: string;\n\n @Input()\n required: boolean = false;\n\n @Input()\n multiple: boolean = false;\n\n @Input()\n initSelected: any;\n\n @Input()\n initSearchVal: any;\n\n @Input()\n searchLabel: string = 'Search';\n\n @Input()\n selectedLabel: string = 'Selected';\n\n @Input()\n set setInitColumns(col: { [col: string]: string }) {\n this.columns = ['active', ...Object.keys(col)];\n this.initColumns = col;\n }\n\n @Input()\n set tableData(data: any[]) {\n this.tableSource = new MatTableDataSource(data);\n this.tableSource.paginator = this.paginator;\n }\n\n @Input()\n set validError(error: boolean) {\n this._validError = error;\n }\n\n get validError(): boolean {\n return this._validError;\n }\n\n private _validError = false;\n\n @Output()\n returnRowSelected: EventEmitter<any[]>;\n\n tableSource: MatTableDataSource<any>;\n columns: string[];\n initColumns: {\n [col: string]: string;\n };\n search: UntypedFormControl = new UntypedFormControl('');\n rowSelected: any[] = [];\n\n constructor() {}\n\n ngOnInit(): void {\n this.search.valueChanges.subscribe(res => {\n this.tableSource.filter = res.trim().toLowerCase();\n });\n setTimeout(() => {\n if (this.initSearchVal) {\n this.search.setValue(this.initSearchVal);\n this.rowClick(this.initSelected);\n }\n }, 1000);\n }\n\n clearSearch() {\n this.search.setValue('');\n }\n\n rowClick(row: any) {\n const found = this.rowSelected.find(tmpRow => tmpRow === row);\n if (found) {\n this.rowSelected = this.rowSelected.filter(tmpRow => tmpRow !== row);\n } else {\n if (this.multiple) {\n this.rowSelected.push(row);\n } else {\n this.rowSelected = [row];\n }\n }\n this.returnRowSelected.emit(this.rowSelected);\n }\n\n checkActiveRow(row: any) {\n return !!this.rowSelected.find(activeRow => activeRow === row);\n }\n}\n","<div class=\"shared-table-selector\">\n <p class=\"title\" [ngClass]=\"{ 'error-text': validError }\">\n {{ title }} {{ required ? '*' : '' }}\n </p>\n\n <div class=\"search-form row align-items-center\">\n <div class=\"col-sm-12 col-md row align-items-center\">\n <mat-form-field class=\"col\">\n <input\n matInput\n placeholder=\"{{ searchLabel }}\"\n [formControl]=\"search\"\n />\n </mat-form-field>\n <div class=\"clear col-auto\">\n <i class=\"material-icons\" (click)=\"clearSearch()\">clear</i>\n </div>\n </div>\n </div>\n\n <table mat-table [dataSource]=\"tableSource\">\n <ng-container *ngFor=\"let col of columns\" [matColumnDef]=\"col\">\n <th mat-header-cell *matHeaderCellDef>\n {{ col === 'active' ? selectedLabel : initColumns[col] }}\n </th>\n <td mat-cell *matCellDef=\"let element\">\n <ng-container *ngIf=\"col === 'active'\">\n <i *ngIf=\"checkActiveRow(element)\" class=\"material-icons active-row\"\n >done</i\n >\n </ng-container>\n\n <ng-container *ngIf=\"col !== 'active'\">\n {{ element[col] }}\n </ng-container>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columns\"></tr>\n <tr\n mat-row\n *matRowDef=\"let row; columns: columns\"\n (click)=\"rowClick(row)\"\n [ngClass]=\"{ active: checkActiveRow(row) }\"\n ></tr>\n </table>\n <mat-paginator [pageSizeOptions]=\"[5]\"></mat-paginator>\n</div>\n","import { NgModule } from '@angular/core';\nimport { LocalTableComponent } from './components/local-table/local-table.component';\nimport { SelectTableComponent } from './components/select-table/select-table.component';\nimport { ConfigurationsComponent } from './components/local-table/configurations/configurations.component';\nimport { LocalTableService } from './services/local-table.service';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { NgxStDateFormatModule } from 'ngx-st-date-format';\n\n@NgModule({\n declarations: [\n LocalTableComponent,\n SelectTableComponent,\n ConfigurationsComponent,\n ],\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatFormFieldModule,\n MatInputModule,\n MatTooltipModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n NgxStDateFormatModule,\n MatSortModule,\n MatMenuModule,\n MatSelectModule,\n MatCheckboxModule,\n ],\n exports: [LocalTableComponent, SelectTableComponent],\n providers: [LocalTableService],\n})\nexport class NgxStTablesModule {}\n","/*\n * Public API Surface of ngx-st-tables\n */\n\nexport * from './lib/services/local-table.service';\nexport * from './lib/components/local-table/local-table.component';\nexport * from './lib/components/local-table/configurations/configurations.component';\nexport * from './lib/components/select-table/select-table.component';\nexport * from './lib/models/st-configurations-settings.model';\nexport * from './lib/models/st-global-search-settings.model';\nexport * from './lib/models/st-local-storage-configuration.model';\nexport * from './lib/models/st-local-table-column.model';\nexport * from './lib/models/st-local-table-columns.model';\nexport * from './lib/models/st-table-settings.model';\nexport * from './lib/ngx-st-tables.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3","i1.LocalTableService","i2","i4","i5","i6","i7","i9","i11","i15.ConfigurationsComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAMa,iBAAiB,CAAA;AAG5B,IAAA,WAAA,GAAA;QAFA,IAAgB,CAAA,gBAAA,GAAW,EAAE,CAAC;KAEd;IAEhB,UAAU,GAAA;AACR,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE;AAChC,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,CAAC;AACxE,SAAA;AACD,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,WAAW,CAAC,OAA2C,EAAA;AACrD,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE;AAChC,YAAA,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AACtE,SAAA;KACF;IAED,qBAAqB,GAAA;QACnB,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;AACvD,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;;8GAzBU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cAFhB,MAAM,EAAA,CAAA,CAAA;2FAEP,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCIY,uBAAuB,CAAA;AA2BlC,IAAA,WAAA,GAAA;AAdA,QAAA,IAAA,CAAA,eAAe,GAAyB,IAAI,YAAY,EAAE,CAAC;AAG3D,QAAA,IAAA,CAAA,YAAY,GAAyB,IAAI,YAAY,EAAE,CAAC;AAGxD,QAAA,IAAA,CAAA,YAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAE/D,IAAqB,CAAA,qBAAA,GAAY,KAAK,CAAC;QACvC,IAAuB,CAAA,uBAAA,GAAW,EAAE,CAAC;QACrC,IAAqB,CAAA,qBAAA,GAAY,KAAK,CAAC;KAIvB;IApBhB,IACI,kBAAkB,CAAC,MAA+C,EAAA;AACpE,QAAA,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;KAC9B;AAmBD,IAAA,QAAQ,MAAW;IAEnB,uBAAuB,GAAA;AACrB,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;AAClC,QAAA,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC;KACnC;IAED,uBAAuB,GAAA;AACrB,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;AACnC,QAAA,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC;KACnC;IAED,uBAAuB,GAAA;AACrB,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;AACnC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;KACzD;IAED,mBAAmB,GAAA;AACjB,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;KACnC;IAED,yBAAyB,GAAA;AACvB,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;AACnC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAe,CAAC,QAAQ,CAAC,CAAC;KACvD;IAED,0BAA0B,GAAA;AACxB,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;KACpC;IAED,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC;KAC/D;;oHA/DU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,wUCTpC,k5EAyEA,EAAA,MAAA,EAAA,CAAA,gEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDhEa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,2CAA2C,EAAA,QAAA,EAAA,k5EAAA,EAAA,MAAA,EAAA,CAAA,gEAAA,CAAA,EAAA,CAAA;0EAMrD,sBAAsB,EAAA,CAAA;sBADrB,KAAK;gBAIN,cAAc,EAAA,CAAA;sBADb,KAAK;gBAIF,kBAAkB,EAAA,CAAA;sBADrB,KAAK;gBAMN,eAAe,EAAA,CAAA;sBADd,MAAM;gBAIP,YAAY,EAAA,CAAA;sBADX,MAAM;gBAIP,YAAY,EAAA,CAAA;sBADX,MAAM;;;MEMI,mBAAmB,CAAA;AA4D9B,IAAA,WAAA,CACU,iBAAoC,EACpC,iBAAoC,EACpC,MAAc,EACd,cAA8B,EAAA;QAH9B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QArDxC,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QAGtB,IAAgB,CAAA,gBAAA,GAAY,KAAK,CAAC;QAMlC,IAAgB,CAAA,gBAAA,GAAW,EAAE,CAAC;QAG9B,IAAe,CAAA,eAAA,GAAY,KAAK,CAAC;QAazB,IAAQ,CAAA,QAAA,GAA6B,EAAE,CAAC;QAYxC,IAAK,CAAA,KAAA,GAAU,EAAE,CAAC;QAE1B,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;QAEzB,IAAgB,CAAA,gBAAA,GAAa,EAAE,CAAC;QAGhC,IAAc,CAAA,cAAA,GAAuC,EAAE,CAAC;QACxD,IAAU,CAAA,UAAA,GAA4C,IAAI,CAAC;QAC3D,IAAY,CAAA,YAAA,GAA4C,IAAI,CAAC;QAC7D,IAAS,CAAA,SAAA,GAAW,CAAC,CAAC;KAOlB;IAxCJ,IACI,OAAO,CAAC,OAAiC,EAAA;AAC3C,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;AACxB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;AAED,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAID,IACI,IAAI,CAAC,IAAW,EAAA;AAClB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;KACvB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IAqBD,QAAQ,GAAA;QACN,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC7D,YAAA,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACpC,aAAA;AACF,SAAA;QACD,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,iBAAiB,CAAC,gBAAgB;AACrC,gBAAA,IAAI,CAAC,sBAAsB,EAAE,gBAAgB,IAAI,EAAE,CAAC;YACtD,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,SAAA;KACF;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAG;gBAClC,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;oBAC1C,IAAI,CAAC,2BAA2B,EAAE,CAAC;AACpC,iBAAA;AACH,aAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,IAAG;gBACnC,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC;oBAC7C,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC;oBAChD,IAAI,CAAC,2BAA2B,EAAE,CAAC;AACpC,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;QACD,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,IAAG;gBACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC3B,aAAC,CAAC,CAAC;AACH,YAAA,IAAI,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE;AACvC,gBAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC;AACtE,aAAA;AACD,YAAA,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE;AACtC,gBAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;AACpE,aAAA;AACD,YAAA,IACE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;AACvC,gBAAA,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,EACvC;AACA,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,EAAE;oBACjD,KAAK,EACY,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,KAAK;AACjE,oBAAA,YAAY,EAAE,KAAK;AACpB,iBAAA,CAAC,CAAC;AACJ,aAAA;YACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;YAC1D,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACjE,aAAA;AACF,SAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;KACzC;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAChE,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;AAC3C,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAED,oBAAoB,CAAC,GAAQ,EAAE,MAAmC,EAAA;QAChE,IAAI,MAAM,CAAC,IAAI,EAAE;AACf,YAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;KACF;AAED,IAAA,oBAAoB,CAAC,MAA+B,EAAA;QAClD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,2BAA2B,EAAE,CAAC;KACpC;AAED,IAAA,gBAAgB,CAAC,IAAY,EAAA;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAC/C,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,CAAC,2BAA2B,EAAE,CAAC;AACnC,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;KAC7B;AAED,IAAA,aAAa,CAAC,QAAgB,EAAA;AAC5B,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAC9C,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CACvC,CAAC;QACF,IAAI,CAAC,2BAA2B,EAAE,CAAC;KACpC;AAED,IAAA,aAAa,CAAC,QAAuB,EAAA;QACnC,IAAI,CAAC,YAAY,GAAG,QAAQ;AAC1B,cAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAE;cACjE,IAAI,CAAC;QACT,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,cAAc,CACjB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAC1B,IAAI,CAAC,YAAY,CAAC,eAAe,EACjC,IAAI,CAAC,YAAY,CAAC,aAAa,EAC/B,IAAI,CAAC,YAAY,CAAC,aAAa,CAChC,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,SAAA;KACF;AAED,IAAA,WAAW,CAAC,KAAU,EAAA;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAEO,iBAAiB,GAAA;QACvB,IAAI,IAAI,CAAC,eAAe,EAAE;AACxB,YAAA,IAAI,WAAW,GAAG;gBAChB,kBAAkB,EAAE,IAAI,CAAC,WAAW;gBACpC,qBAAqB,EAAE,IAAI,CAAC,SAAS;AACrC,gBAAA,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;AAC7C,gBAAA,yBAAyB,EAAE,EAAE;AAC7B,gBAAA,yBAAyB,EAAE,EAAE;aAC9B,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAC3C,gBAAA,WAAW,GAAG;AACZ,oBAAA,GAAG,WAAW;AACd,oBAAA,yBAAyB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;AAC3C,oBAAA,yBAAyB,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;iBAC/C,CAAC;AACH,aAAA;YACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE;AAC3B,gBAAA,WAAW,EAAE,WAAW;gBACxB,UAAU,EAAE,IAAI,CAAC,cAAc;AAChC,aAAA,CAAC,CAAC;AACJ,SAAA;KACF;IAEO,2BAA2B,GAAA;QACjC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACzD;IAEO,cAAc,GAAA;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;AAC3C,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACvC;IAEO,mBAAmB,GAAA;AACzB,QAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,IAAG;YAChE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;AACvC,SAAC,CAAC,CAAC;KACJ;IAEO,eAAe,GAAA;QACrB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;KACxE;IAEO,WAAW,GAAA;QACjB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;KAC3D;AAEO,IAAA,iBAAiB,CAAC,UAAkB,EAAA;QAC1C,OAAO;AACL,YAAA,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;AAC/B,YAAA,UAAU,EAAE,UAAU;YACtB,eAAe,EAAE,IAAI,CAAC,YAAY;iBAC/B,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;iBACjC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC;AAC5C,YAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ;YACjC,aAAa,EACX,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI;AACnE,YAAA,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI;SAC3C,CAAC;KACH;AAEO,IAAA,cAAc,CACpB,QAAgB,EAChB,eAAyB,EACzB,aAA4B,EAC5B,aAAmC,EAAA;AAEnC,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACnC,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACb,EAAE,EAAE,aAAa,IAAI,EAAE;YACvB,KAAK,EAAE,aAAa,IAAI,KAAK;AAC7B,YAAA,YAAY,EAAE,KAAK;AACpB,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,IAAG;AACjC,YAAA,MAAM,CAAC,OAAO;gBACZ,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/D,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;;gHA7QU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EACnB,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,YAAY,EACZ,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,OAAO,gDCnCpB,w7MA2LA,EAAA,MAAA,EAAA,CAAA,EAAA,EAAA,8vDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAN,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,aAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,OAAA,EAAA,uBAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,WAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAO,uBAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,gBAAA,EAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,GAAA,CAAA,kBAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FD1Ja,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAT/B,SAAS;+BACE,oBAAoB,EAAA,eAAA,EAMb,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,w7MAAA,EAAA,MAAA,EAAA,CAAA,8vDAAA,CAAA,EAAA,CAAA;2LAGtB,SAAS,EAAA,CAAA;sBAAjC,SAAS;uBAAC,YAAY,CAAA;gBACH,IAAI,EAAA,CAAA;sBAAvB,SAAS;uBAAC,OAAO,CAAA;gBAGlB,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIN,oBAAoB,EAAA,CAAA;sBADnB,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,gBAAgB,EAAA,CAAA;sBADf,KAAK;gBAIN,sBAAsB,EAAA,CAAA;sBADrB,KAAK;gBAIN,gBAAgB,EAAA,CAAA;sBADf,KAAK;gBAIN,eAAe,EAAA,CAAA;sBADd,KAAK;gBAIF,OAAO,EAAA,CAAA;sBADV,KAAK;gBAcF,IAAI,EAAA,CAAA;sBADP,KAAK;;;MEnDK,oBAAoB,CAAA;AA0D/B,IAAA,WAAA,GAAA;QAnDA,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;QAG1B,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;QAS1B,IAAW,CAAA,WAAA,GAAW,QAAQ,CAAC;QAG/B,IAAa,CAAA,aAAA,GAAW,UAAU,CAAC;QAuB3B,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAU5B,QAAA,IAAA,CAAA,MAAM,GAAuB,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACxD,IAAW,CAAA,WAAA,GAAU,EAAE,CAAC;KAER;IAlChB,IACI,cAAc,CAAC,GAA8B,EAAA;AAC/C,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/C,QAAA,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;KACxB;IAED,IACI,SAAS,CAAC,IAAW,EAAA;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;KAC7C;IAED,IACI,UAAU,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;KAC1B;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAiBD,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,IAAG;AACvC,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACrD,SAAC,CAAC,CAAC;QACH,UAAU,CAAC,MAAK;YACd,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACzC,gBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAClC,aAAA;SACF,EAAE,IAAI,CAAC,CAAC;KACV;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;KAC1B;AAED,IAAA,QAAQ,CAAC,GAAQ,EAAA;AACf,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC;AAC9D,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC;AACtE,SAAA;AAAM,aAAA;YACL,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;AAC1B,aAAA;AACF,SAAA;QACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KAC/C;AAED,IAAA,cAAc,CAAC,GAAQ,EAAA;AACrB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,GAAG,CAAC,CAAC;KAChE;;iHA5FU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qGAApB,oBAAoB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACpB,YAAY,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrBzB,2hDAgDA,EAAA,MAAA,EAAA,CAAA,2FAAA,EAAA,8vDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAP,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FD5Ba,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,2hDAAA,EAAA,MAAA,EAAA,CAAA,2FAAA,EAAA,8vDAAA,CAAA,EAAA,CAAA;0EAQN,SAAS,EAAA,CAAA;sBAAjC,SAAS;uBAAC,YAAY,CAAA;gBAGvB,KAAK,EAAA,CAAA;sBADJ,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,YAAY,EAAA,CAAA;sBADX,KAAK;gBAIN,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAIN,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIF,cAAc,EAAA,CAAA;sBADjB,KAAK;gBAOF,SAAS,EAAA,CAAA;sBADZ,KAAK;gBAOF,UAAU,EAAA,CAAA;sBADb,KAAK;gBAYN,iBAAiB,EAAA,CAAA;sBADhB,MAAM;;;MEnBI,iBAAiB,CAAA;;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAzB1B,mBAAmB;QACnB,oBAAoB;AACpB,QAAA,uBAAuB,aAGvB,YAAY;QACZ,eAAe;QACf,aAAa;QACb,cAAc;QACd,kBAAkB;QAClB,kBAAkB;QAClB,cAAc;QACd,gBAAgB;QAChB,WAAW;QACX,mBAAmB;QACnB,YAAY;QACZ,qBAAqB;QACrB,aAAa;QACb,aAAa;QACb,eAAe;QACf,iBAAiB,CAAA,EAAA,OAAA,EAAA,CAET,mBAAmB,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAGxC,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAFjB,SAAA,EAAA,CAAC,iBAAiB,CAAC,YAlB5B,YAAY;QACZ,eAAe;QACf,aAAa;QACb,cAAc;QACd,kBAAkB;QAClB,kBAAkB;QAClB,cAAc;QACd,gBAAgB;QAChB,WAAW;QACX,mBAAmB;QACnB,YAAY;QACZ,qBAAqB;QACrB,aAAa;QACb,aAAa;QACb,eAAe;QACf,iBAAiB,CAAA,EAAA,CAAA,CAAA;2FAKR,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBA3B7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mBAAmB;wBACnB,oBAAoB;wBACpB,uBAAuB;AACxB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,eAAe;wBACf,aAAa;wBACb,cAAc;wBACd,kBAAkB;wBAClB,kBAAkB;wBAClB,cAAc;wBACd,gBAAgB;wBAChB,WAAW;wBACX,mBAAmB;wBACnB,YAAY;wBACZ,qBAAqB;wBACrB,aAAa;wBACb,aAAa;wBACb,eAAe;wBACf,iBAAiB;AAClB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;oBACpD,SAAS,EAAE,CAAC,iBAAiB,CAAC;AAC/B,iBAAA,CAAA;;;AC/CD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -33,5 +33,5 @@ export declare class SelectTableComponent implements OnInit {
33
33
  rowClick(row: any): void;
34
34
  checkActiveRow(row: any): boolean;
35
35
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectTableComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectTableComponent, "lib-select-table", never, { "title": "title"; "required": "required"; "multiple": "multiple"; "initSelected": "initSelected"; "initSearchVal": "initSearchVal"; "searchLabel": "searchLabel"; "selectedLabel": "selectedLabel"; "setInitColumns": "setInitColumns"; "tableData": "tableData"; "validError": "validError"; }, { "returnRowSelected": "returnRowSelected"; }, never, never, false>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectTableComponent, "ngx-st-select-table", never, { "title": "title"; "required": "required"; "multiple": "multiple"; "initSelected": "initSelected"; "initSearchVal": "initSearchVal"; "searchLabel": "searchLabel"; "selectedLabel": "selectedLabel"; "setInitColumns": "setInitColumns"; "tableData": "tableData"; "validError": "validError"; }, { "returnRowSelected": "returnRowSelected"; }, never, never, false>;
37
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-st-tables",
3
- "version": "1.1.10",
3
+ "version": "1.1.11",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^14.2.0",
6
6
  "@angular/core": "^14.2.0",