@seniorsistemas/tmsx-angular-components 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,20 +1,19 @@
1
- import { __decorate, __read, __awaiter, __generator, __assign } from 'tslib';
1
+ import pLimit from 'p-limit';
2
+ import { __awaiter, __generator, __decorate, __read, __assign } from 'tslib';
2
3
  import { TranslateService, TranslateModule } from '@ngx-translate/core';
3
4
  import { EventEmitter, ɵɵdefineInjectable, ɵɵinject, Input, Output, Injectable, Component, NgModule, ChangeDetectorRef, ViewChild, InjectionToken } from '@angular/core';
4
- import { EnumColumnFieldType, LocaleModule, TooltipModule, TableModule as TableModule$1, ButtonModule, FieldType, LocalizedDatePipe, LoadingStateModule, NumberInputModule, BreadcrumbModule, ControlErrorsModule, CustomFieldsModule, DynamicFormModule, EmptyStateModule, TokenListModule, TieredMenuModule } from '@seniorsistemas/angular-components';
5
+ import { EnumColumnFieldType, LocaleModule, TooltipModule, TableModule as TableModule$1, ButtonModule, FieldType, LocalizedDatePipe, LoadingStateModule, NumberInputModule, BreadcrumbModule, ControlErrorsModule, CustomFieldsModule, DynamicFormModule, EmptyStateModule, TokenListModule } from '@seniorsistemas/angular-components';
5
6
  import { TableModule } from 'primeng/table';
6
7
  import { CommonModule } from '@angular/common';
7
8
  import { PanelModule } from 'primeng/panel';
8
9
  import { Subject } from 'rxjs';
9
10
  import { Hotkey, HotkeysService } from 'angular2-hotkeys';
10
11
  import { ToastModule } from 'primeng/toast';
11
- import { TabMenuModule } from 'primeng/tabmenu';
12
12
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
13
13
  import { InputTextModule } from 'primeng/inputtext';
14
14
  import { ConfirmDialogModule } from 'primeng/confirmdialog';
15
15
  import { CalendarModule } from 'primeng/calendar';
16
16
  import { DropdownModule } from 'primeng/dropdown';
17
- import { TabViewModule } from 'primeng/tabview';
18
17
  import { SharedModule } from 'primeng/api';
19
18
  import { TooltipModule as TooltipModule$1 } from 'primeng/tooltip';
20
19
  import { AutoCompleteModule } from 'primeng/autocomplete';
@@ -66,7 +65,12 @@ var PainelProcessamentoComponent = /** @class */ (function () {
66
65
  this.processingProgress = '0%';
67
66
  this.totalRecords = this.params.registros.length;
68
67
  this.pendingCount = this.totalRecords;
69
- this.processRecord(0);
68
+ if (this.params.quantidadeChamadasSimultaneas > 1) {
69
+ this.processAllRecordsWithPLimit();
70
+ }
71
+ else {
72
+ this.syncProcessRecord(0);
73
+ }
70
74
  };
71
75
  PainelProcessamentoComponent.prototype.initGrid = function () {
72
76
  this.gridData = [];
@@ -76,7 +80,21 @@ var PainelProcessamentoComponent = /** @class */ (function () {
76
80
  label: registro.descricao
77
81
  }); });
78
82
  };
79
- PainelProcessamentoComponent.prototype.processRecord = function (index) {
83
+ PainelProcessamentoComponent.prototype.updateRowSuccess = function (row, index) {
84
+ this.successCount++;
85
+ this.pendingCount--;
86
+ this.updateRowStatus(row, EnumProcessamentoStatus.SUCCESS);
87
+ this.processado.emit(row);
88
+ this.updateProgressBar();
89
+ };
90
+ PainelProcessamentoComponent.prototype.updateRowError = function (row, index, message) {
91
+ this.failedCount++;
92
+ this.pendingCount--;
93
+ this.updateRowStatus(row, EnumProcessamentoStatus.FAILED, message);
94
+ this.processado.emit(row);
95
+ this.updateProgressBar();
96
+ };
97
+ PainelProcessamentoComponent.prototype.syncProcessRecord = function (index) {
80
98
  var _this = this;
81
99
  if (this.pendingCount < 1) {
82
100
  this.concluido.emit('ok');
@@ -88,19 +106,11 @@ var PainelProcessamentoComponent = /** @class */ (function () {
88
106
  if (record.apiEnvio) {
89
107
  record.apiEnvio(record.objEnvio)
90
108
  .subscribe(function () {
91
- _this.successCount++;
92
- _this.pendingCount--;
93
- _this.updateRowStatus(row, EnumProcessamentoStatus.SUCCESS);
94
- _this.processado.emit(row);
95
- _this.updateProgressBar();
96
- _this.processRecord(index + 1);
109
+ _this.updateRowSuccess(row, index);
110
+ _this.syncProcessRecord(index + 1);
97
111
  }, function (error) {
98
- _this.failedCount++;
99
- _this.pendingCount--;
100
- _this.updateRowStatus(row, EnumProcessamentoStatus.FAILED, error.message);
101
- _this.processado.emit(row);
102
- _this.updateProgressBar();
103
- _this.processRecord(index + 1);
112
+ _this.updateRowError(row, index, error.message);
113
+ _this.syncProcessRecord(index + 1);
104
114
  });
105
115
  }
106
116
  else {
@@ -111,6 +121,49 @@ var PainelProcessamentoComponent = /** @class */ (function () {
111
121
  this.concluido.emit('erro');
112
122
  }
113
123
  };
124
+ PainelProcessamentoComponent.prototype.processAllRecordsWithPLimit = function () {
125
+ return __awaiter(this, void 0, void 0, function () {
126
+ var pLimit$1, limit, promises, results;
127
+ var _this = this;
128
+ return __generator(this, function (_a) {
129
+ switch (_a.label) {
130
+ case 0:
131
+ pLimit$1 = pLimit;
132
+ limit = pLimit$1(this.params.quantidadeChamadasSimultaneas);
133
+ promises = this.params.registros.map(function (record, index) {
134
+ return limit(function () { return __awaiter(_this, void 0, void 0, function () {
135
+ var row, result, error_1;
136
+ return __generator(this, function (_a) {
137
+ switch (_a.label) {
138
+ case 0:
139
+ row = this.gridData.find(function (item) { return item.registro === record; });
140
+ this.updateRowStatus(row, EnumProcessamentoStatus.PROCESSING);
141
+ _a.label = 1;
142
+ case 1:
143
+ _a.trys.push([1, 3, , 4]);
144
+ return [4 /*yield*/, record.apiEnvio(record.objEnvio).toPromise()];
145
+ case 2:
146
+ result = _a.sent();
147
+ this.updateRowSuccess(row, index);
148
+ return [2 /*return*/, { success: true, record: record, result: result }];
149
+ case 3:
150
+ error_1 = _a.sent();
151
+ this.updateRowError(row, index, error_1.message);
152
+ return [2 /*return*/, { success: false, record: record, error: error_1 }];
153
+ case 4: return [2 /*return*/];
154
+ }
155
+ });
156
+ }); });
157
+ });
158
+ return [4 /*yield*/, Promise.all(promises)];
159
+ case 1:
160
+ results = _a.sent();
161
+ this.concluido.emit(results);
162
+ return [2 /*return*/, results];
163
+ }
164
+ });
165
+ });
166
+ };
114
167
  PainelProcessamentoComponent.prototype.updateProgressBar = function () {
115
168
  var successWidth = (this.successCount / this.totalRecords) * 100;
116
169
  var failedWidth = (this.failedCount / this.totalRecords) * 100;
@@ -688,7 +741,7 @@ var GridEditableNestedComponent = /** @class */ (function () {
688
741
  }),
689
742
  Component({
690
743
  selector: 'tmsx-grid-editable-nested',
691
- template: "<div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button id=\"add-button\"\n data-cy=\"add-button\"\n priority=\"primary\" type=\"button\"\n [label]=\"'tmsx_com.tmsx_angular_components.add' | translate\"\n tooltip=\"{{'tmsx_com.tmsx_angular_components.add' | translate}} (Alt + Shift + N)\"\n [disabled]=\"!addEnabled\"\n (click)=\"onAdd()\">\n </s-button>\n <s-button\n *ngIf=\"!editing\"\n priority=\"primary\"\n iconClass=\"fa fa-edit\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_editar' | translate}}\"\n tooltip=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_editar' | translate}}\"\n [disabled]=\"!editEnabled\"\n sTieredMenu\n (click)=\"initAllRowsEdit()\"\n ></s-button>\n <s-button\n *ngIf=\"editing\"\n priority=\"primary\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_salvar' | translate}}\"\n iconClass=\"fa fa-check\"\n [disabled]=\"false\"\n (click)=\"onEditSave()\"\n ></s-button>\n <s-button\n *ngIf=\"editing\"\n priority=\"default\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_cancelar' | translate}}\"\n iconClass=\"fa fa-times\"\n [disabled]=\"false\"\n (click)=\"onEditCancel()\"\n ></s-button>\n <p-table\n selectionMode=\"single\"\n [(selection)]=\"selected\"\n [value]=\"gridData\"\n [columns]=\"gridColumns\"\n dataKey=\"id\"\n rows=\"10\"\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\n [paginator]=\"true\"\n [totalRecords]=\"gridTotalRecords\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"updateGridData($event)\"\n *sLoadingState=\"gridLoading\"\n sortMode=\"multiple\"\n [frozenWidth]=\"frozenWidth\"\n [scrollable]=\"true\"\n [sTableFrozenPosition]=\"frozenPosition\"\n [sTableFrozenValue]=\"gridData\"\n editMode=\"row\"\n #table\n >\n <ng-template pTemplate=\"frozencolgroup\" let-columns>\n <colgroup>\n <col class=\"col50\" />\n <col *ngFor=\"let col of frozenColumns\" class=\"col200\" />\n <col class=\"frozenButton\" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate=\"frozenheader\">\n <tr>\n <th pResizableColumn scope=\"col\"></th>\n <th pResizableColumn *ngFor=\"let col of frozenColumns\" scope=\"col\">{{ col.header }}</th>\n <th pResizableColumn scope=\"col\"></th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"frozenbody\" let-rowData let-expanded=\"expanded\">\n <tr [pSelectableRow]=\"rowData\">\n <td class=\"col50\" tabindex=\"0\" [sRowToggler]=\"rowData\">\n <i class=\"fa fa-{{ expanded ? 'minus' : 'plus' }} \"></i>\n </td>\n <td *ngFor=\"let col of frozenColumns\" class=\"colText\"\n tooltipPosition=\"top\" showDelay=\"500\"\n [innerHTML]=\"getSpanProp(rowData, col.field)\">\n </td>\n <td class=\"frozenButton\">\n <s-button\n id=\"edit-button\"\n data-cy=\"edit-button\"\n priority=\"default\"\n type=\"button\"\n size=\"small\"\n [auxiliary]=\"true\"\n [disabled]=\"false\"\n [model]=\"getActions(rowData)\">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" scope=\"col\">\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.header }}</span>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-rowData let-expanded=\"expanded\" let-columns=\"columns\">\n <tr sNavigation tabindex=\"0\" [pEditableRow]=\"rowData\">\n <td\n *ngFor=\"let col of columns\"\n [ngClass]=\"editing? 'editPadding': ''\"\n pResizableColumn\n [pTooltip]=\"rowData[col.field]\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n tabindex=\"0\"\n class=\"col80 colText\"\n >\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <div class=\"ui-fluid\">\n <ng-container [ngSwitch]=\"col.type\">\n <ng-container *ngSwitchCase=\"'Text'\">\n <span>{{ rowData[col.field] }}</span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Date'\">\n <p-calendar\n [(ngModel)]=\"rowData[col.field]\"\n appendTo=\"body\"\n [showIcon]=\"true\"\n [required]=\"true\"\n pTooltip=\"{{ calendarTooltipText }}\"\n tooltipPosition=\"bottom\"\n [tooltipDisabled]=\"rowData[col.field]\"\n ></p-calendar>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Autocomplete'\">\n <p-autoComplete\n [(ngModel)]=\"rowData[col.field]\"\n [suggestions]=\"col.options\"\n appendTo=\"body\"\n (completeMethod)=\"filterOptions($event)\"\n [dropdown]=\"true\"\n [forceSelection]=\"true\"\n ></p-autoComplete>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Decimal'\">\n <div class=\"ui-inputgroup\">\n <span class=\"ui-inputgroup-addon\"\n *ngIf=\"'MONETARIO' === rowData.tiposDados[col.field]\"\n >R$</span>\n <input sNumberInput [scale]=\"2\"\n alignTo=\"right\"\n thousandsSeparator=\".\"\n pInputText\n [(ngModel)]=\"rowData[col.field]\"\n (keydown)=\"onTab($event)\"\n />\n <span class=\"ui-inputgroup-addon\"\n *ngIf=\"'PERCENTUAL' === rowData.tiposDados[col.field]\"\n >%</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <input pInputText type=\"text\"\n [(ngModel)]=\"rowData[col.field]\"\n (keydown)=\"onTab($event)\"\n />\n </ng-container>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-template pTemplate=\"output\">\n <div [innerHTML]=\"getSpanProp(rowData, col.field, col.type)\"></div>\n </ng-template>\n </p-cellEditor>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"rowexpansion\" let-rowData>\n <tr class=\"sds-expanded-row\">\n <td [attr.colspan]=\"gridColumns.length + 1\">\n <p-table\n [value]=\"rowData.nestedGridData\"\n [columns]=\"rowData.nestedGridColumns\"\n dataKey=\"id\"\n rows=\"5\"\n [first]=\"getRowIndex()\"\n [rows]=\"getPageSize()\"\n [rowsPerPageOptions]=\"[5, 10, 20, 50]\"\n [paginator]=\"true\"\n [totalRecords]=\"rowData.nestedGridTotalRecords\"\n [responsive]=\"true\"\n [lazy]=\"true\"\n (onLazyLoad)=\"updateNestedGridData($event, rowData)\"\n sortMode=\"multiple\"\n *sLoadingState=\"rowData.nestedGridLoading\"\n >\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" scope=\"col\"\n [pSortableColumn]=\"col.field\">\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.header }}</span>\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\n <tr [pSelectableRow]=\"rowData\">\n <td *ngFor=\"let col of columns\" class=\"colText\">\n {{ formatData(col, rowData[col.field]) }}\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"paginatorright\">\n <span>\n {{ rowData.nestedGridTotalRecords }}\n {{'tmsx_com.tmsx_angular_components.grid_editable_nested_paging' | translate}}\n </span>\n </ng-template>\n </p-table>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"paginatorright\">\n <span>\n {{ gridTotalRecords }}\n {{'tmsx_com.tmsx_angular_components.grid_editable_nested_paging' | translate}}\n </span>\n </ng-template>\n </p-table>\n </div>\n</div>\n",
744
+ template: "<div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <s-button id=\"add-button\"\n data-cy=\"add-button\"\n priority=\"primary\" type=\"button\"\n [label]=\"'tmsx_com.tmsx_angular_components.add' | translate\"\n tooltip=\"{{'tmsx_com.tmsx_angular_components.add' | translate}} (Alt + Shift + N)\"\n [disabled]=\"!addEnabled\"\n (click)=\"onAdd()\">\n </s-button>\n <s-button\n *ngIf=\"!editing\"\n priority=\"primary\"\n iconClass=\"fa fa-edit\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_editar' | translate}}\"\n tooltip=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_editar' | translate}}\"\n [disabled]=\"!editEnabled\"\n (click)=\"initAllRowsEdit()\"\n ></s-button>\n <s-button\n *ngIf=\"editing\"\n priority=\"primary\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_salvar' | translate}}\"\n iconClass=\"fa fa-check\"\n [disabled]=\"false\"\n (click)=\"onEditSave()\"\n ></s-button>\n <s-button\n *ngIf=\"editing\"\n priority=\"default\"\n label=\"{{'tmsx_com.tmsx_angular_components.grid_editable_nested_cancelar' | translate}}\"\n iconClass=\"fa fa-times\"\n [disabled]=\"false\"\n (click)=\"onEditCancel()\"\n ></s-button>\n <p-table\n selectionMode=\"single\"\n [(selection)]=\"selected\"\n [value]=\"gridData\"\n [columns]=\"gridColumns\"\n dataKey=\"id\"\n rows=\"10\"\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\n [paginator]=\"true\"\n [totalRecords]=\"gridTotalRecords\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"updateGridData($event)\"\n *sLoadingState=\"gridLoading\"\n sortMode=\"multiple\"\n [frozenWidth]=\"frozenWidth\"\n [scrollable]=\"true\"\n [sTableFrozenPosition]=\"frozenPosition\"\n [sTableFrozenValue]=\"gridData\"\n editMode=\"row\"\n #table\n >\n <ng-template pTemplate=\"frozencolgroup\" let-columns>\n <colgroup>\n <col class=\"col50\" />\n <col *ngFor=\"let col of frozenColumns\" class=\"col200\" />\n <col class=\"frozenButton\" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate=\"frozenheader\">\n <tr>\n <th pResizableColumn scope=\"col\"></th>\n <th pResizableColumn *ngFor=\"let col of frozenColumns\" scope=\"col\">{{ col.header }}</th>\n <th pResizableColumn scope=\"col\"></th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"frozenbody\" let-rowData let-expanded=\"expanded\">\n <tr [pSelectableRow]=\"rowData\">\n <td class=\"col50\" tabindex=\"0\" [sRowToggler]=\"rowData\">\n <i class=\"fa fa-{{ expanded ? 'minus' : 'plus' }} \"></i>\n </td>\n <td *ngFor=\"let col of frozenColumns\" class=\"colText\"\n tooltipPosition=\"top\" showDelay=\"500\"\n [innerHTML]=\"getSpanProp(rowData, col.field)\">\n </td>\n <td class=\"frozenButton\">\n <s-button\n id=\"edit-button\"\n data-cy=\"edit-button\"\n priority=\"default\"\n type=\"button\"\n size=\"small\"\n [auxiliary]=\"true\"\n [disabled]=\"false\"\n [model]=\"getActions(rowData)\">\n </s-button>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"colgroup\" let-columns>\n <colgroup>\n <col *ngFor=\"let col of columns\" [style.width]=\"col.width\" />\n </colgroup>\n </ng-template>\n\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" scope=\"col\">\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.header }}</span>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-rowData let-expanded=\"expanded\" let-columns=\"columns\">\n <tr sNavigation tabindex=\"0\" [pEditableRow]=\"rowData\">\n <td\n *ngFor=\"let col of columns\"\n [ngClass]=\"editing? 'editPadding': ''\"\n pResizableColumn\n [pTooltip]=\"rowData[col.field]\"\n tooltipPosition=\"top\"\n showDelay=\"500\"\n tabindex=\"0\"\n class=\"col80 colText\"\n >\n <p-cellEditor>\n <ng-template pTemplate=\"input\">\n <div class=\"ui-fluid\">\n <ng-container [ngSwitch]=\"col.type\">\n <ng-container *ngSwitchCase=\"'Text'\">\n <span>{{ rowData[col.field] }}</span>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Date'\">\n <p-calendar\n [(ngModel)]=\"rowData[col.field]\"\n appendTo=\"body\"\n [showIcon]=\"true\"\n [required]=\"true\"\n pTooltip=\"{{ calendarTooltipText }}\"\n tooltipPosition=\"bottom\"\n [tooltipDisabled]=\"rowData[col.field]\"\n ></p-calendar>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Autocomplete'\">\n <p-autoComplete\n [(ngModel)]=\"rowData[col.field]\"\n [suggestions]=\"col.options\"\n appendTo=\"body\"\n (completeMethod)=\"filterOptions($event)\"\n [dropdown]=\"true\"\n [forceSelection]=\"true\"\n ></p-autoComplete>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'Decimal'\">\n <div class=\"ui-inputgroup\">\n <span class=\"ui-inputgroup-addon\"\n *ngIf=\"'MONETARIO' === rowData.tiposDados[col.field]\"\n >R$</span>\n <input sNumberInput [scale]=\"2\"\n alignTo=\"right\"\n thousandsSeparator=\".\"\n pInputText\n [(ngModel)]=\"rowData[col.field]\"\n (keydown)=\"onTab($event)\"\n />\n <span class=\"ui-inputgroup-addon\"\n *ngIf=\"'PERCENTUAL' === rowData.tiposDados[col.field]\"\n >%</span>\n </div>\n </ng-container>\n\n <ng-container *ngSwitchDefault>\n <input pInputText type=\"text\"\n [(ngModel)]=\"rowData[col.field]\"\n (keydown)=\"onTab($event)\"\n />\n </ng-container>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-template pTemplate=\"output\">\n <div [innerHTML]=\"getSpanProp(rowData, col.field, col.type)\"></div>\n </ng-template>\n </p-cellEditor>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"rowexpansion\" let-rowData>\n <tr class=\"sds-expanded-row\">\n <td [attr.colspan]=\"gridColumns.length + 1\">\n <p-table\n [value]=\"rowData.nestedGridData\"\n [columns]=\"rowData.nestedGridColumns\"\n dataKey=\"id\"\n rows=\"5\"\n [first]=\"getRowIndex()\"\n [rows]=\"getPageSize()\"\n [rowsPerPageOptions]=\"[5, 10, 20, 50]\"\n [paginator]=\"true\"\n [totalRecords]=\"rowData.nestedGridTotalRecords\"\n [responsive]=\"true\"\n [lazy]=\"true\"\n (onLazyLoad)=\"updateNestedGridData($event, rowData)\"\n sortMode=\"multiple\"\n *sLoadingState=\"rowData.nestedGridLoading\"\n >\n <ng-template pTemplate=\"header\" let-columns>\n <tr>\n <th *ngFor=\"let col of columns\" scope=\"col\"\n [pSortableColumn]=\"col.field\">\n <div class=\"senior-header\">\n <span class=\"senior-header-title\">{{ col.header }}</span>\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\n </div>\n </th>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\n <tr [pSelectableRow]=\"rowData\">\n <td *ngFor=\"let col of columns\" class=\"colText\">\n {{ formatData(col, rowData[col.field]) }}\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"paginatorright\">\n <span>\n {{ rowData.nestedGridTotalRecords }}\n {{'tmsx_com.tmsx_angular_components.grid_editable_nested_paging' | translate}}\n </span>\n </ng-template>\n </p-table>\n </td>\n </tr>\n </ng-template>\n\n <ng-template pTemplate=\"paginatorright\">\n <span>\n {{ gridTotalRecords }}\n {{'tmsx_com.tmsx_angular_components.grid_editable_nested_paging' | translate}}\n </span>\n </ng-template>\n </p-table>\n </div>\n</div>\n",
692
745
  styles: [":host ::ng-deep div.contents{margin-top:15px}input{max-width:100%}.col50{width:50px}.col80{width:80px}.col200{width:200px}.colText{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.frozenButton{width:70px;padding:5px}.editPadding{padding-top:8px;padding-bottom:9px}"]
693
746
  })
694
747
  ], GridEditableNestedComponent);
@@ -715,13 +768,10 @@ var GridEditableNestedModule = /** @class */ (function () {
715
768
  DynamicFormModule,
716
769
  EmptyStateModule,
717
770
  TokenListModule,
718
- TieredMenuModule,
719
771
  // PrimeNG modules
720
772
  ToastModule,
721
773
  TableModule,
722
774
  TooltipModule$1,
723
- TabMenuModule,
724
- TabViewModule,
725
775
  PanelModule,
726
776
  InputTextModule,
727
777
  ConfirmDialogModule,