@rosoftlab/material 1.0.0-alpha-9 → 1.0.0-alpha-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.
- package/esm2022/lib/components/generic-table/generic-table.component.mjs +5 -6
- package/esm2022/lib/components/searchable-dropdown/searchable-dropdown.component.mjs +4 -5
- package/esm2022/lib/rsl-material-module.mjs +16 -7
- package/esm2022/lib/services/dialog.service-implementation.mjs +110 -0
- package/esm2022/lib/services/index.mjs +2 -1
- package/esm2022/public-api.mjs +2 -2
- package/fesm2022/rosoftlab-material.mjs +97 -88
- package/fesm2022/rosoftlab-material.mjs.map +1 -1
- package/lib/components/generic-table/generic-table.component.d.ts +2 -2
- package/lib/components/searchable-dropdown/searchable-dropdown.component.d.ts +1 -1
- package/lib/rsl-material-module.d.ts +42 -40
- package/lib/services/index.d.ts +1 -0
- package/package.json +2 -2
- package/public-api.d.ts +1 -1
- package/esm2022/services/dialog.service-implementation.mjs +0 -110
- /package/{services → lib/services}/dialog.service-implementation.d.ts +0 -0
| @@ -1,52 +1,59 @@ | |
| 1 1 | 
             
            import * as i13 from '@angular/cdk/drag-drop';
         | 
| 2 | 
            -
            import {  | 
| 2 | 
            +
            import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
         | 
| 3 3 | 
             
            import * as i3 from '@angular/common';
         | 
| 4 4 | 
             
            import { CommonModule } from '@angular/common';
         | 
| 5 5 | 
             
            import * as i0 from '@angular/core';
         | 
| 6 | 
            -
            import { Injectable,  | 
| 6 | 
            +
            import { Injectable, EventEmitter, ElementRef, Component, ViewEncapsulation, Input, ViewChild, Output, Optional, Self, NgModule } from '@angular/core';
         | 
| 7 7 | 
             
            import * as i8 from '@angular/material/paginator';
         | 
| 8 | 
            -
            import {  | 
| 8 | 
            +
            import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
         | 
| 9 9 | 
             
            import * as i10 from '@angular/material/sort';
         | 
| 10 | 
            -
            import {  | 
| 10 | 
            +
            import { MatSort, MatSortModule } from '@angular/material/sort';
         | 
| 11 11 | 
             
            import * as i11 from '@angular/material/table';
         | 
| 12 | 
            -
            import {  | 
| 12 | 
            +
            import { MatTableDataSource, MatTableModule } from '@angular/material/table';
         | 
| 13 13 | 
             
            import * as i2 from '@angular/router';
         | 
| 14 | 
            -
            import * as i1 | 
| 14 | 
            +
            import * as i1 from '@rosoftlab/core';
         | 
| 15 15 | 
             
            import { CellTextAlign, GridLayoutFormat, BaseModel } from '@rosoftlab/core';
         | 
| 16 16 | 
             
            import * as jsonLogic from 'json-logic-js/logic.js';
         | 
| 17 17 | 
             
            import { from, Subject, merge, of, fromEvent } from 'rxjs';
         | 
| 18 18 | 
             
            import { debounceTime, distinctUntilChanged, startWith, switchMap, map, catchError, filter, tap, finalize, takeUntil } from 'rxjs/operators';
         | 
| 19 19 | 
             
            import { HttpErrorResponse } from '@angular/common/http';
         | 
| 20 20 | 
             
            import Swal from 'sweetalert2';
         | 
| 21 | 
            -
            import { PortalModule } from '@angular/cdk/portal';
         | 
| 22 | 
            -
            import { CdkStepperModule } from '@angular/cdk/stepper';
         | 
| 23 21 | 
             
            import * as i2$1 from '@angular/forms';
         | 
| 24 | 
            -
            import {  | 
| 22 | 
            +
            import { UntypedFormControl, ReactiveFormsModule } from '@angular/forms';
         | 
| 23 | 
            +
            import * as i5 from '@angular/material/icon';
         | 
| 24 | 
            +
            import { MatIconModule } from '@angular/material/icon';
         | 
| 25 | 
            +
            import * as i6 from '@angular/material/input';
         | 
| 26 | 
            +
            import { MatInputModule } from '@angular/material/input';
         | 
| 27 | 
            +
            import * as i7 from '@angular/material/form-field';
         | 
| 28 | 
            +
            import * as i9 from '@angular/material/progress-spinner';
         | 
| 29 | 
            +
            import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
         | 
| 30 | 
            +
            import * as i12 from '@angular/material/tooltip';
         | 
| 31 | 
            +
            import { MatTooltipModule } from '@angular/material/tooltip';
         | 
| 32 | 
            +
            import * as i14 from '@ngx-translate/core';
         | 
| 33 | 
            +
            import { TranslateModule } from '@ngx-translate/core';
         | 
| 34 | 
            +
            import * as i1$1 from '@angular/cdk/a11y';
         | 
| 35 | 
            +
            import { coerceBooleanProperty } from '@angular/cdk/coercion';
         | 
| 25 36 | 
             
            import * as i4 from '@angular/material/autocomplete';
         | 
| 26 37 | 
             
            import { MatAutocompleteModule } from '@angular/material/autocomplete';
         | 
| 27 | 
            -
            import  | 
| 38 | 
            +
            import * as i5$1 from '@angular/material/core';
         | 
| 39 | 
            +
            import { MatNativeDateModule, MatRippleModule, MatOptionModule } from '@angular/material/core';
         | 
| 28 40 | 
             
            import * as i6$1 from '@angular/material/button';
         | 
| 29 41 | 
             
            import { MatButtonModule } from '@angular/material/button';
         | 
| 42 | 
            +
            import { PortalModule } from '@angular/cdk/portal';
         | 
| 43 | 
            +
            import { CdkStepperModule } from '@angular/cdk/stepper';
         | 
| 44 | 
            +
            import { MatBadgeModule } from '@angular/material/badge';
         | 
| 30 45 | 
             
            import { MatButtonToggleModule } from '@angular/material/button-toggle';
         | 
| 31 46 | 
             
            import { MatCardModule } from '@angular/material/card';
         | 
| 32 47 | 
             
            import { MatCheckboxModule } from '@angular/material/checkbox';
         | 
| 33 48 | 
             
            import { MatChipsModule } from '@angular/material/chips';
         | 
| 34 | 
            -
            import * as i5$1 from '@angular/material/core';
         | 
| 35 | 
            -
            import { MatNativeDateModule, MatRippleModule, MatOptionModule } from '@angular/material/core';
         | 
| 36 49 | 
             
            import { MatDatepickerModule } from '@angular/material/datepicker';
         | 
| 37 50 | 
             
            import { MatDialogModule } from '@angular/material/dialog';
         | 
| 38 51 | 
             
            import { MatDividerModule } from '@angular/material/divider';
         | 
| 39 52 | 
             
            import { MatExpansionModule } from '@angular/material/expansion';
         | 
| 40 53 | 
             
            import { MatGridListModule } from '@angular/material/grid-list';
         | 
| 41 | 
            -
            import * as i5 from '@angular/material/icon';
         | 
| 42 | 
            -
            import { MatIconModule } from '@angular/material/icon';
         | 
| 43 | 
            -
            import * as i6 from '@angular/material/input';
         | 
| 44 | 
            -
            import { MatInputModule } from '@angular/material/input';
         | 
| 45 54 | 
             
            import { MatListModule } from '@angular/material/list';
         | 
| 46 55 | 
             
            import { MatMenuModule } from '@angular/material/menu';
         | 
| 47 56 | 
             
            import { MatProgressBarModule } from '@angular/material/progress-bar';
         | 
| 48 | 
            -
            import * as i9 from '@angular/material/progress-spinner';
         | 
| 49 | 
            -
            import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
         | 
| 50 57 | 
             
            import { MatRadioModule } from '@angular/material/radio';
         | 
| 51 58 | 
             
            import { MatSelectModule } from '@angular/material/select';
         | 
| 52 59 | 
             
            import { MatSidenavModule } from '@angular/material/sidenav';
         | 
| @@ -56,14 +63,7 @@ import { MatSnackBarModule } from '@angular/material/snack-bar'; | |
| 56 63 | 
             
            import { MatStepperModule } from '@angular/material/stepper';
         | 
| 57 64 | 
             
            import { MatTabsModule } from '@angular/material/tabs';
         | 
| 58 65 | 
             
            import { MatToolbarModule } from '@angular/material/toolbar';
         | 
| 59 | 
            -
            import * as i12 from '@angular/material/tooltip';
         | 
| 60 | 
            -
            import { MatTooltipModule } from '@angular/material/tooltip';
         | 
| 61 66 | 
             
            import { MatTreeModule } from '@angular/material/tree';
         | 
| 62 | 
            -
            import * as i1 from '@ngx-translate/core';
         | 
| 63 | 
            -
            import { TranslateModule } from '@ngx-translate/core';
         | 
| 64 | 
            -
            import * as i7 from '@angular/material/form-field';
         | 
| 65 | 
            -
            import * as i1$2 from '@angular/cdk/a11y';
         | 
| 66 | 
            -
            import { coerceBooleanProperty } from '@angular/cdk/coercion';
         | 
| 67 67 |  | 
| 68 68 | 
             
            /**
         | 
| 69 69 | 
             
             * Async modal dialog service
         | 
| @@ -170,60 +170,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo | |
| 170 170 | 
             
                        type: Injectable
         | 
| 171 171 | 
             
                    }], ctorParameters: function () { return []; } });
         | 
| 172 172 |  | 
| 173 | 
            -
            const COMMON_MODULES = [
         | 
| 174 | 
            -
                CommonModule,
         | 
| 175 | 
            -
                ReactiveFormsModule,
         | 
| 176 | 
            -
                MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 177 | 
            -
                MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 178 | 
            -
                MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 179 | 
            -
                MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 180 | 
            -
                MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 181 | 
            -
                MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 182 | 
            -
                CdkStepperModule
         | 
| 183 | 
            -
            ];
         | 
| 184 | 
            -
            class RSLMaterialModule {
         | 
| 185 | 
            -
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
         | 
| 186 | 
            -
                static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, imports: [CommonModule,
         | 
| 187 | 
            -
                        ReactiveFormsModule,
         | 
| 188 | 
            -
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 189 | 
            -
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 190 | 
            -
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 191 | 
            -
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 192 | 
            -
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 193 | 
            -
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 194 | 
            -
                        CdkStepperModule, i1.TranslateModule], exports: [CommonModule,
         | 
| 195 | 
            -
                        ReactiveFormsModule,
         | 
| 196 | 
            -
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 197 | 
            -
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 198 | 
            -
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 199 | 
            -
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 200 | 
            -
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 201 | 
            -
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 202 | 
            -
                        CdkStepperModule, TranslateModule] }); }
         | 
| 203 | 
            -
                static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, imports: [COMMON_MODULES, TranslateModule.forRoot({}), CommonModule,
         | 
| 204 | 
            -
                        ReactiveFormsModule,
         | 
| 205 | 
            -
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 206 | 
            -
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 207 | 
            -
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 208 | 
            -
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 209 | 
            -
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 210 | 
            -
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 211 | 
            -
                        CdkStepperModule, TranslateModule] }); }
         | 
| 212 | 
            -
            }
         | 
| 213 | 
            -
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, decorators: [{
         | 
| 214 | 
            -
                        type: NgModule,
         | 
| 215 | 
            -
                        args: [{
         | 
| 216 | 
            -
                                imports: [
         | 
| 217 | 
            -
                                    ...COMMON_MODULES,
         | 
| 218 | 
            -
                                    TranslateModule.forRoot({})
         | 
| 219 | 
            -
                                ],
         | 
| 220 | 
            -
                                exports: [
         | 
| 221 | 
            -
                                    ...COMMON_MODULES,
         | 
| 222 | 
            -
                                    TranslateModule
         | 
| 223 | 
            -
                                ],
         | 
| 224 | 
            -
                            }]
         | 
| 225 | 
            -
                    }] });
         | 
| 226 | 
            -
             | 
| 227 173 | 
             
            class GridLayoutService {
         | 
| 228 174 | 
             
                constructor(baseService) {
         | 
| 229 175 | 
             
                    this.baseService = baseService;
         | 
| @@ -232,7 +178,7 @@ class GridLayoutService { | |
| 232 178 | 
             
                    var model = this.baseService.newModel();
         | 
| 233 179 | 
             
                    return model.getGridLayout();
         | 
| 234 180 | 
             
                }
         | 
| 235 | 
            -
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GridLayoutService, deps: [{ token: i1 | 
| 181 | 
            +
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GridLayoutService, deps: [{ token: i1.BaseService }], target: i0.ɵɵFactoryTarget.Injectable }); }
         | 
| 236 182 | 
             
                static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GridLayoutService, providedIn: 'root' }); }
         | 
| 237 183 | 
             
            }
         | 
| 238 184 | 
             
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GridLayoutService, decorators: [{
         | 
| @@ -240,7 +186,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImpo | |
| 240 186 | 
             
                        args: [{
         | 
| 241 187 | 
             
                                providedIn: 'root'
         | 
| 242 188 | 
             
                            }]
         | 
| 243 | 
            -
                    }], ctorParameters: function () { return [{ type: i1 | 
| 189 | 
            +
                    }], ctorParameters: function () { return [{ type: i1.BaseService }]; } });
         | 
| 244 190 |  | 
| 245 191 | 
             
            class GenericTableComponent {
         | 
| 246 192 | 
             
                // ruleEngineService: RuleEngineService<T>;
         | 
| @@ -581,11 +527,11 @@ class GenericTableComponent { | |
| 581 527 | 
             
                    return model.getCellClass(property);
         | 
| 582 528 | 
             
                }
         | 
| 583 529 | 
             
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GenericTableComponent, deps: [{ token: DialogServiceMaterial }, { token: i2.Router }, { token: i3.DatePipe }, { token: i3.DecimalPipe }, { token: i3.PercentPipe }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
         | 
| 584 | 
            -
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: GenericTableComponent, isStandalone: true, selector: "rsl-generic-table", inputs: { modelType: "modelType", baseService: "baseService", gridLayoutService: "gridLayoutService", editLink: "editLink", defaultSort: "defaultSort", defaultSortDirection: "defaultSortDirection", deleteDisableRule: "deleteDisableRule", deletePropertyName: "deletePropertyName", hasSearch: "hasSearch", searchFields: "searchFields", defaultFilter: "defaultFilter", allowReorderItems: "allowReorderItems", stickyColumns: "stickyColumns", editOnClick: "editOnClick", editOnDblClick: "editOnDblClick", allowEdit: "allowEdit", popupEdit: "popupEdit", customInclude: "customInclude", changeItemPosition: "changeItemPosition", infiniteScroll: "infiniteScroll" }, outputs: { selectedObject: "selectedObject", click: "click", editModel: "editModel" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "filter", first: true, predicate: ElementRef, descendants: true }, { propertyName: "table", first: true, predicate: ["table"], descendants: true }, { propertyName: "matTableRef", first: true, predicate: ["table"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: "<div class=\"containerX\" *ngIf=\"hasSearch\">\r\n  <div fxLayout=\"row\" fxLayout.xs=\"column\" fxLayout.sm=\"column\" fxFlexFill>\r\n    <mat-form-field fxFlex>\r\n      <mat-label>Filter</mat-label>\r\n      <input matInput [ngModel]='filterValue' (ngModelChange)='filterChanged.next($event)' #filter>\r\n    </mat-form-field>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"table-container\">\r\n  <div class=\"mat-elevation-z2\">\r\n    <!--  #applicationsContainer -->\r\n    <div class=\"example-loading-shade\" *ngIf=\"isLoadingResults || isRateLimitReached\">\r\n      <mat-spinner *ngIf=\"isLoadingResults\"></mat-spinner>\r\n      <div class=\"example-rate-limit-reached\" *ngIf=\"isRateLimitReached\">\r\n        {{'General.LoadingData' | translate}}\r\n      </div>\r\n    </div>\r\n\r\n\r\n    <mat-table fxFlex #table [dataSource]=\"dataSource\" id=\"tempalte-forms-table\" matSort matSortDisableClear\r\n      matSortDirection=\"asc\" cdkDropList [cdkDropListData]=\"dataSource\" (cdkDropListDropped)=\"dropTable($event)\">\r\n      <!-- (scroll)=\"onTableScroll($event)\" -->\r\n\r\n\r\n      <ng-container matColumnDef=\"position\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n          <!-- {{'General.Order' | translate}} -->\r\n        </mat-header-cell>\r\n        <mat-cell fxFlex *matCellDef=\"let element;\">\r\n          <mat-icon cdkDragHandle>reorder</mat-icon>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container *ngFor=\"let column of gridLayout\" [matColumnDef]=\"column.propertyName\"\r\n        [sticky]=\"isColumnSticky(column.propertyName)\">\r\n        <mat-header-cell mat-sort-header disableClear [style.flex]=\"getFlexStyle(column)\" *matHeaderCellDef>\r\n          {{column.translateKey | translate}}\r\n        </mat-header-cell>\r\n        <mat-cell matTooltip={{getCelValue(row,column.propertyName)}} [style.flex]=\"getFlexStyle(column)\"\r\n          [style.text-align]=\"getCellTextAlign(column)\" *matCellDef=\"let row\"  (click)=\"cellClick(row,column.propertyName)\">\r\n          <div [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"!showPictureCell(column)\">\r\n            {{getCelValue(row,column.propertyName)}}\r\n          </div>\r\n          <img [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"showPictureCell(column)\">\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container matColumnDef=\"delete\" stickyEnd *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n        </mat-header-cell>\r\n        <mat-cell *matCellDef=\"let row\">\r\n          <button class=\"btn btn-green btn-fill btn-wd btn-just-icon\" (click)=\"editObject(row)\"\r\n            matTooltip=\"{{'General.Edit' | translate}}\">\r\n            <!-- <mat-icon>edit</mat-icon> -->\r\n            <i class=\"material-icons\">edit</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n          <button class=\"btn btn-red btn-fill btn-wd btn-just-icon\" (click)=\"deleteObject(row)\"\r\n            [disabled]=\"deleteDisabled(row)\" matTooltip=\"{{'General.Delete' | translate}}\">\r\n            <i class=\"material-icons\">delete</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n      <mat-header-row *matHeaderRowDef=\"displayedColumns;sticky: true\"></mat-header-row>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"highlight(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\">\r\n        </mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"editObject(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (dblclick)=\"editObject(row)\"\r\n          (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\"\r\n          style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <!-- [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\"\r\n        (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" -->\r\n    </mat-table>\r\n    <mat-paginator #paginator [hidden]=\"infiniteScroll\" [length]=\"resultsLength\" [pageSize]=\"15\"\r\n      [pageSizeOptions]=\"[15, 30,  100]\" [showFirstLastButtons]=\"true\">\r\n    </mat-paginator>\r\n  </div>\r\n</div>", styles: [".mat-column-delete{flex:0 0 90px;padding-right:30px}.mat-sort-header-button{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-column-position{flex:0 0 60px!important}.mat-table{overflow-x:auto}[hidden]{display:none!important}\n"], dependencies: [{ kind: "ngmodule", type: RSLMaterialModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.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: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "component", type: i8.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i10.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i10.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i12.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i13.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i13.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i13.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
         | 
| 530 | 
            +
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: GenericTableComponent, selector: "rsl-generic-table", inputs: { modelType: "modelType", baseService: "baseService", gridLayoutService: "gridLayoutService", editLink: "editLink", defaultSort: "defaultSort", defaultSortDirection: "defaultSortDirection", deleteDisableRule: "deleteDisableRule", deletePropertyName: "deletePropertyName", hasSearch: "hasSearch", searchFields: "searchFields", defaultFilter: "defaultFilter", allowReorderItems: "allowReorderItems", stickyColumns: "stickyColumns", editOnClick: "editOnClick", editOnDblClick: "editOnDblClick", allowEdit: "allowEdit", popupEdit: "popupEdit", customInclude: "customInclude", changeItemPosition: "changeItemPosition", infiniteScroll: "infiniteScroll" }, outputs: { selectedObject: "selectedObject", click: "click", editModel: "editModel" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "filter", first: true, predicate: ElementRef, descendants: true }, { propertyName: "table", first: true, predicate: ["table"], descendants: true }, { propertyName: "matTableRef", first: true, predicate: ["table"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: "<div class=\"containerX\" *ngIf=\"hasSearch\">\r\n  <div fxLayout=\"row\" fxLayout.xs=\"column\" fxLayout.sm=\"column\" fxFlexFill>\r\n    <mat-form-field fxFlex>\r\n      <mat-label>Filter</mat-label>\r\n      <input matInput [ngModel]='filterValue' (ngModelChange)='filterChanged.next($event)' #filter>\r\n    </mat-form-field>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"table-container\">\r\n  <div class=\"mat-elevation-z2\">\r\n    <!--  #applicationsContainer -->\r\n    <div class=\"example-loading-shade\" *ngIf=\"isLoadingResults || isRateLimitReached\">\r\n      <mat-spinner *ngIf=\"isLoadingResults\"></mat-spinner>\r\n      <div class=\"example-rate-limit-reached\" *ngIf=\"isRateLimitReached\">\r\n        {{'General.LoadingData' | translate}}\r\n      </div>\r\n    </div>\r\n\r\n\r\n    <mat-table fxFlex #table [dataSource]=\"dataSource\" id=\"tempalte-forms-table\" matSort matSortDisableClear\r\n      matSortDirection=\"asc\" cdkDropList [cdkDropListData]=\"dataSource\" (cdkDropListDropped)=\"dropTable($event)\">\r\n      <!-- (scroll)=\"onTableScroll($event)\" -->\r\n\r\n\r\n      <ng-container matColumnDef=\"position\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n          <!-- {{'General.Order' | translate}} -->\r\n        </mat-header-cell>\r\n        <mat-cell fxFlex *matCellDef=\"let element;\">\r\n          <mat-icon cdkDragHandle>reorder</mat-icon>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container *ngFor=\"let column of gridLayout\" [matColumnDef]=\"column.propertyName\"\r\n        [sticky]=\"isColumnSticky(column.propertyName)\">\r\n        <mat-header-cell mat-sort-header disableClear [style.flex]=\"getFlexStyle(column)\" *matHeaderCellDef>\r\n          {{column.translateKey | translate}}\r\n        </mat-header-cell>\r\n        <mat-cell matTooltip={{getCelValue(row,column.propertyName)}} [style.flex]=\"getFlexStyle(column)\"\r\n          [style.text-align]=\"getCellTextAlign(column)\" *matCellDef=\"let row\"  (click)=\"cellClick(row,column.propertyName)\">\r\n          <div [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"!showPictureCell(column)\">\r\n            {{getCelValue(row,column.propertyName)}}\r\n          </div>\r\n          <img [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"showPictureCell(column)\">\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container matColumnDef=\"delete\" stickyEnd *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n        </mat-header-cell>\r\n        <mat-cell *matCellDef=\"let row\">\r\n          <button class=\"btn btn-green btn-fill btn-wd btn-just-icon\" (click)=\"editObject(row)\"\r\n            matTooltip=\"{{'General.Edit' | translate}}\">\r\n            <!-- <mat-icon>edit</mat-icon> -->\r\n            <i class=\"material-icons\">edit</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n          <button class=\"btn btn-red btn-fill btn-wd btn-just-icon\" (click)=\"deleteObject(row)\"\r\n            [disabled]=\"deleteDisabled(row)\" matTooltip=\"{{'General.Delete' | translate}}\">\r\n            <i class=\"material-icons\">delete</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n      <mat-header-row *matHeaderRowDef=\"displayedColumns;sticky: true\"></mat-header-row>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"highlight(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\">\r\n        </mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"editObject(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (dblclick)=\"editObject(row)\"\r\n          (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\"\r\n          style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <!-- [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\"\r\n        (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" -->\r\n    </mat-table>\r\n    <mat-paginator #paginator [hidden]=\"infiniteScroll\" [length]=\"resultsLength\" [pageSize]=\"15\"\r\n      [pageSizeOptions]=\"[15, 30,  100]\" [showFirstLastButtons]=\"true\">\r\n    </mat-paginator>\r\n  </div>\r\n</div>", styles: [".mat-column-delete{flex:0 0 90px;padding-right:30px}.mat-sort-header-button{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-column-position{flex:0 0 60px!important}.mat-table{overflow-x:auto}[hidden]{display:none!important}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.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: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "component", type: i8.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i10.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i10.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i12.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i13.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i13.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i13.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "pipe", type: i14.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
         | 
| 585 531 | 
             
            }
         | 
| 586 532 | 
             
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: GenericTableComponent, decorators: [{
         | 
| 587 533 | 
             
                        type: Component,
         | 
| 588 | 
            -
                        args: [{  | 
| 534 | 
            +
                        args: [{ selector: 'rsl-generic-table', encapsulation: ViewEncapsulation.None, template: "<div class=\"containerX\" *ngIf=\"hasSearch\">\r\n  <div fxLayout=\"row\" fxLayout.xs=\"column\" fxLayout.sm=\"column\" fxFlexFill>\r\n    <mat-form-field fxFlex>\r\n      <mat-label>Filter</mat-label>\r\n      <input matInput [ngModel]='filterValue' (ngModelChange)='filterChanged.next($event)' #filter>\r\n    </mat-form-field>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"table-container\">\r\n  <div class=\"mat-elevation-z2\">\r\n    <!--  #applicationsContainer -->\r\n    <div class=\"example-loading-shade\" *ngIf=\"isLoadingResults || isRateLimitReached\">\r\n      <mat-spinner *ngIf=\"isLoadingResults\"></mat-spinner>\r\n      <div class=\"example-rate-limit-reached\" *ngIf=\"isRateLimitReached\">\r\n        {{'General.LoadingData' | translate}}\r\n      </div>\r\n    </div>\r\n\r\n\r\n    <mat-table fxFlex #table [dataSource]=\"dataSource\" id=\"tempalte-forms-table\" matSort matSortDisableClear\r\n      matSortDirection=\"asc\" cdkDropList [cdkDropListData]=\"dataSource\" (cdkDropListDropped)=\"dropTable($event)\">\r\n      <!-- (scroll)=\"onTableScroll($event)\" -->\r\n\r\n\r\n      <ng-container matColumnDef=\"position\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n          <!-- {{'General.Order' | translate}} -->\r\n        </mat-header-cell>\r\n        <mat-cell fxFlex *matCellDef=\"let element;\">\r\n          <mat-icon cdkDragHandle>reorder</mat-icon>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container *ngFor=\"let column of gridLayout\" [matColumnDef]=\"column.propertyName\"\r\n        [sticky]=\"isColumnSticky(column.propertyName)\">\r\n        <mat-header-cell mat-sort-header disableClear [style.flex]=\"getFlexStyle(column)\" *matHeaderCellDef>\r\n          {{column.translateKey | translate}}\r\n        </mat-header-cell>\r\n        <mat-cell matTooltip={{getCelValue(row,column.propertyName)}} [style.flex]=\"getFlexStyle(column)\"\r\n          [style.text-align]=\"getCellTextAlign(column)\" *matCellDef=\"let row\"  (click)=\"cellClick(row,column.propertyName)\">\r\n          <div [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"!showPictureCell(column)\">\r\n            {{getCelValue(row,column.propertyName)}}\r\n          </div>\r\n          <img [ngClass]=\"getCellClass(row,column.propertyName)\" *ngIf=\"showPictureCell(column)\">\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n\r\n      <ng-container matColumnDef=\"delete\" stickyEnd *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-header-cell *matHeaderCellDef disableClear=\"true\">\r\n        </mat-header-cell>\r\n        <mat-cell *matCellDef=\"let row\">\r\n          <button class=\"btn btn-green btn-fill btn-wd btn-just-icon\" (click)=\"editObject(row)\"\r\n            matTooltip=\"{{'General.Edit' | translate}}\">\r\n            <!-- <mat-icon>edit</mat-icon> -->\r\n            <i class=\"material-icons\">edit</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n          <button class=\"btn btn-red btn-fill btn-wd btn-just-icon\" (click)=\"deleteObject(row)\"\r\n            [disabled]=\"deleteDisabled(row)\" matTooltip=\"{{'General.Delete' | translate}}\">\r\n            <i class=\"material-icons\">delete</i>\r\n            <div class=\"ripple-container\"></div>\r\n          </button>\r\n        </mat-cell>\r\n      </ng-container>\r\n\r\n      <mat-header-row *matHeaderRowDef=\"displayedColumns;sticky: true\"></mat-header-row>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"highlight(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\">\r\n        </mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"editOnClick && !editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (click)=\"editObject(row)\"\r\n          (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <ng-container *ngIf=\"!editOnClick && editOnDblClick\">\r\n        <mat-row *matRowDef=\"let row;let index = dataIndex; columns: displayedColumns;\" cdkDrag [cdkDragData]=\"row\"\r\n          [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\" (dblclick)=\"editObject(row)\"\r\n          (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\"\r\n          style=\"cursor: pointer;\"></mat-row>\r\n      </ng-container>\r\n\r\n      <!-- [ngClass]=\"{hovered: row.hovered, highlighted: row.highlighted}\"\r\n        (click)=\"highlight(row)\" (mouseover)=\"row.hovered = true\" (mouseout)=\"row.hovered = false\" -->\r\n    </mat-table>\r\n    <mat-paginator #paginator [hidden]=\"infiniteScroll\" [length]=\"resultsLength\" [pageSize]=\"15\"\r\n      [pageSizeOptions]=\"[15, 30,  100]\" [showFirstLastButtons]=\"true\">\r\n    </mat-paginator>\r\n  </div>\r\n</div>", styles: [".mat-column-delete{flex:0 0 90px;padding-right:30px}.mat-sort-header-button{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-column-position{flex:0 0 60px!important}.mat-table{overflow-x:auto}[hidden]{display:none!important}\n"] }]
         | 
| 589 535 | 
             
                    }], ctorParameters: function () { return [{ type: DialogServiceMaterial }, { type: i2.Router }, { type: i3.DatePipe }, { type: i3.DecimalPipe }, { type: i3.PercentPipe }, { type: i0.Renderer2 }]; }, propDecorators: { modelType: [{
         | 
| 590 536 | 
             
                            type: Input
         | 
| 591 537 | 
             
                        }], baseService: [{
         | 
| @@ -822,17 +768,17 @@ class SearchableDropdownComponent { | |
| 822 768 | 
             
                        });
         | 
| 823 769 | 
             
                    }
         | 
| 824 770 | 
             
                }
         | 
| 825 | 
            -
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: SearchableDropdownComponent, deps: [{ token: i1$ | 
| 826 | 
            -
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: SearchableDropdownComponent,  | 
| 771 | 
            +
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: SearchableDropdownComponent, deps: [{ token: i1$1.FocusMonitor }, { token: i0.ElementRef }, { token: i2$1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
         | 
| 772 | 
            +
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.10", type: SearchableDropdownComponent, selector: "rsl-searchable-dropdown", inputs: { label: "label", fControlName: "fControlName", serviceRef: "serviceRef", searchFields: "searchFields", displayFields: "displayFields", sortFields: "sortFields", valueField: "valueField", minLengthTerm: "minLengthTerm", preloadElementsCount: "preloadElementsCount", required: "required", disabled: "disabled", value: "value" }, outputs: { modelSelected: "modelSelected" }, host: { properties: { "class.example-floating": "shouldLabelFloat", "id": "id", "attr.aria-describedby": "describedBy" } }, ngImport: i0, template: "<div class=\"form-group\">\r\n  <label>{{label | translate}}</label>\r\n  <mat-form-field appearance=\"outline\" fxFlex>\r\n    <input matInput [matAutocomplete]=\"auto\" [formControl]=\"searchControl\">\r\n    <button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"clearSelection()\">\r\n      <mat-icon>close</mat-icon>\r\n    </button>\r\n    <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelected($event)\"\r\n      [displayWith]=\"displayWith.bind(this)\">\r\n      <mat-option *ngIf=\"isLoading\">Loading...</mat-option>\r\n      <mat-option *ngIf=\"!isLoading && filteredOptions.length == 0 && !showSerach\" disabled>Not found</mat-option>\r\n      <mat-option *ngIf=\"showSerach\" disabled>{{getSearchText()}}</mat-option>\r\n      <ng-container *ngIf=\"!isLoading && filteredOptions.length > 0\">\r\n        <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n          <span><b>{{getConcatedFields(option)}}</b></span>\r\n        </mat-option>\r\n      </ng-container>\r\n\r\n    </mat-autocomplete>\r\n  </mat-form-field>\r\n</div>", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.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: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i6$1.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.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: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "pipe", type: i14.TranslatePipe, name: "translate" }] }); }
         | 
| 827 773 | 
             
            }
         | 
| 828 774 | 
             
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: SearchableDropdownComponent, decorators: [{
         | 
| 829 775 | 
             
                        type: Component,
         | 
| 830 | 
            -
                        args: [{  | 
| 776 | 
            +
                        args: [{ selector: 'rsl-searchable-dropdown', host: {
         | 
| 831 777 | 
             
                                    '[class.example-floating]': 'shouldLabelFloat',
         | 
| 832 778 | 
             
                                    '[id]': 'id',
         | 
| 833 779 | 
             
                                    '[attr.aria-describedby]': 'describedBy',
         | 
| 834 | 
            -
                                },  | 
| 835 | 
            -
                    }], ctorParameters: function () { return [{ type: i1$ | 
| 780 | 
            +
                                }, template: "<div class=\"form-group\">\r\n  <label>{{label | translate}}</label>\r\n  <mat-form-field appearance=\"outline\" fxFlex>\r\n    <input matInput [matAutocomplete]=\"auto\" [formControl]=\"searchControl\">\r\n    <button *ngIf=\"searchControl.value\" matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"clearSelection()\">\r\n      <mat-icon>close</mat-icon>\r\n    </button>\r\n    <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelected($event)\"\r\n      [displayWith]=\"displayWith.bind(this)\">\r\n      <mat-option *ngIf=\"isLoading\">Loading...</mat-option>\r\n      <mat-option *ngIf=\"!isLoading && filteredOptions.length == 0 && !showSerach\" disabled>Not found</mat-option>\r\n      <mat-option *ngIf=\"showSerach\" disabled>{{getSearchText()}}</mat-option>\r\n      <ng-container *ngIf=\"!isLoading && filteredOptions.length > 0\">\r\n        <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option\">\r\n          <span><b>{{getConcatedFields(option)}}</b></span>\r\n        </mat-option>\r\n      </ng-container>\r\n\r\n    </mat-autocomplete>\r\n  </mat-form-field>\r\n</div>" }]
         | 
| 781 | 
            +
                    }], ctorParameters: function () { return [{ type: i1$1.FocusMonitor }, { type: i0.ElementRef }, { type: i2$1.NgControl, decorators: [{
         | 
| 836 782 | 
             
                                type: Optional
         | 
| 837 783 | 
             
                            }, {
         | 
| 838 784 | 
             
                                type: Self
         | 
| @@ -918,6 +864,69 @@ class MaterialBaseModel extends BaseModel { | |
| 918 864 | 
             
                }
         | 
| 919 865 | 
             
            }
         | 
| 920 866 |  | 
| 867 | 
            +
            const COMMON_MODULES = [
         | 
| 868 | 
            +
                CommonModule,
         | 
| 869 | 
            +
                ReactiveFormsModule,
         | 
| 870 | 
            +
                MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 871 | 
            +
                MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 872 | 
            +
                MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 873 | 
            +
                MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 874 | 
            +
                MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 875 | 
            +
                MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 876 | 
            +
                CdkStepperModule
         | 
| 877 | 
            +
            ];
         | 
| 878 | 
            +
            class RSLMaterialModule {
         | 
| 879 | 
            +
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
         | 
| 880 | 
            +
                static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, declarations: [GenericTableComponent,
         | 
| 881 | 
            +
                        SearchableDropdownComponent], imports: [CommonModule,
         | 
| 882 | 
            +
                        ReactiveFormsModule,
         | 
| 883 | 
            +
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 884 | 
            +
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 885 | 
            +
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 886 | 
            +
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 887 | 
            +
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 888 | 
            +
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 889 | 
            +
                        CdkStepperModule, TranslateModule], exports: [CommonModule,
         | 
| 890 | 
            +
                        ReactiveFormsModule,
         | 
| 891 | 
            +
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 892 | 
            +
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 893 | 
            +
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 894 | 
            +
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 895 | 
            +
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 896 | 
            +
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 897 | 
            +
                        CdkStepperModule, GenericTableComponent,
         | 
| 898 | 
            +
                        SearchableDropdownComponent,
         | 
| 899 | 
            +
                        TranslateModule] }); }
         | 
| 900 | 
            +
                static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, imports: [COMMON_MODULES, TranslateModule, CommonModule,
         | 
| 901 | 
            +
                        ReactiveFormsModule,
         | 
| 902 | 
            +
                        MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatDatepickerModule,
         | 
| 903 | 
            +
                        MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule,
         | 
| 904 | 
            +
                        MatInputModule, MatListModule, MatMenuModule, MatNativeDateModule,
         | 
| 905 | 
            +
                        MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule,
         | 
| 906 | 
            +
                        MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule,
         | 
| 907 | 
            +
                        MatTooltipModule, MatOptionModule, DragDropModule, MatDividerModule, PortalModule, MatTreeModule, MatBadgeModule, MatStepperModule,
         | 
| 908 | 
            +
                        CdkStepperModule, TranslateModule] }); }
         | 
| 909 | 
            +
            }
         | 
| 910 | 
            +
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.10", ngImport: i0, type: RSLMaterialModule, decorators: [{
         | 
| 911 | 
            +
                        type: NgModule,
         | 
| 912 | 
            +
                        args: [{
         | 
| 913 | 
            +
                                declarations: [
         | 
| 914 | 
            +
                                    GenericTableComponent,
         | 
| 915 | 
            +
                                    SearchableDropdownComponent,
         | 
| 916 | 
            +
                                ],
         | 
| 917 | 
            +
                                imports: [
         | 
| 918 | 
            +
                                    ...COMMON_MODULES,
         | 
| 919 | 
            +
                                    TranslateModule
         | 
| 920 | 
            +
                                ],
         | 
| 921 | 
            +
                                exports: [
         | 
| 922 | 
            +
                                    ...COMMON_MODULES,
         | 
| 923 | 
            +
                                    GenericTableComponent,
         | 
| 924 | 
            +
                                    SearchableDropdownComponent,
         | 
| 925 | 
            +
                                    TranslateModule
         | 
| 926 | 
            +
                                ],
         | 
| 927 | 
            +
                            }]
         | 
| 928 | 
            +
                    }] });
         | 
| 929 | 
            +
             | 
| 921 930 | 
             
            /*
         | 
| 922 931 | 
             
             * Public API Surface of core
         | 
| 923 932 | 
             
             */
         |