@colijnit/corecomponents_v12 258.1.6 → 258.1.8

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.
@@ -5014,7 +5014,7 @@ GridToolbarComponent.decorators = [
5014
5014
  <co-icon *ngIf="showEdit" [iconData]="iconsService.getIcon(icons.RotateLeftSolid)" [title]="'cancel'" (click)="cancelClick.emit()"></co-icon>
5015
5015
  <co-icon *ngIf="showEdit" [iconData]="iconsService.getIcon(icons.FloppyDiskSolid)" [title]="'save'" (click)="saveClick.emit()"></co-icon>
5016
5016
  <co-icon *ngIf="showAdd || showEdit" [iconData]="iconsService.getIcon(icons.PlusSolid)" [title]="'add'" (click)="addClick.emit()"></co-icon>
5017
- <co-icon *ngIf="showDelete" [iconData]="iconsService.getIcon(icons.TrashCanSolid)" [title]="'delete'" [class.disabled]="!deleteEnabled" (click)="handleDeleteClick()"></co-icon>
5017
+ <!-- <co-icon *ngIf="showDelete" [iconData]="iconsService.getIcon(icons.TrashCanSolid)" [title]="'delete'" [class.disabled]="!deleteEnabled" (click)="handleDeleteClick()"></co-icon>-->
5018
5018
  </div>
5019
5019
  `,
5020
5020
  encapsulation: ViewEncapsulation.None
@@ -9475,19 +9475,142 @@ BaseSimpleGridComponent.propDecorators = {
9475
9475
  handleMouseUp: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
9476
9476
  };
9477
9477
 
9478
+ class ExcelExportService {
9479
+ /**
9480
+ * Export data to Excel file
9481
+ * @param data - Array of objects to export
9482
+ * @param columns - Column configuration (optional)
9483
+ * @param fileName - Name of the exported file
9484
+ * @param sheetName - Name of the Excel sheet
9485
+ */
9486
+ exportToExcel(data, columns, fileName = 'export', sheetName = 'Sheet1') {
9487
+ // If columns are specified, transform data to match column structure
9488
+ let exportData = data;
9489
+ if (columns && columns.length > 0) {
9490
+ exportData = data.map(item => {
9491
+ const newItem = {};
9492
+ columns.forEach(col => {
9493
+ newItem[col.header] = this.getNestedValue(item, col.key);
9494
+ });
9495
+ return newItem;
9496
+ });
9497
+ }
9498
+ // Create workbook and worksheet
9499
+ const wb = XLSX.utils.book_new();
9500
+ const ws = XLSX.utils.json_to_sheet(exportData);
9501
+ // Set column widths if specified
9502
+ if (columns && columns.some(col => col.width)) {
9503
+ const colWidths = columns.map(col => ({ wch: col.width || 20 }));
9504
+ ws['!cols'] = colWidths;
9505
+ }
9506
+ // Add worksheet to workbook
9507
+ XLSX.utils.book_append_sheet(wb, ws, sheetName);
9508
+ // Save file
9509
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9510
+ }
9511
+ /**
9512
+ * Export multiple sheets to one Excel file
9513
+ * @param sheets - Array of sheet data
9514
+ * @param fileName - Name of the exported file
9515
+ */
9516
+ exportMultipleSheets(sheets, fileName = 'multi-sheet-export') {
9517
+ const wb = XLSX.utils.book_new();
9518
+ sheets.forEach(sheet => {
9519
+ let exportData = sheet.data;
9520
+ if (sheet.columns && sheet.columns.length > 0) {
9521
+ exportData = sheet.data.map(item => {
9522
+ const newItem = {};
9523
+ sheet.columns.forEach(col => {
9524
+ newItem[col.header] = this.getNestedValue(item, col.key);
9525
+ });
9526
+ return newItem;
9527
+ });
9528
+ }
9529
+ const ws = XLSX.utils.json_to_sheet(exportData);
9530
+ if (sheet.columns && sheet.columns.some(col => col.width)) {
9531
+ const colWidths = sheet.columns.map(col => ({ wch: col.width || 20 }));
9532
+ ws['!cols'] = colWidths;
9533
+ }
9534
+ XLSX.utils.book_append_sheet(wb, ws, sheet.sheetName);
9535
+ });
9536
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9537
+ }
9538
+ /**
9539
+ * Export HTML table to Excel
9540
+ * @param tableId - ID of the HTML table element
9541
+ * @param fileName - Name of the exported file
9542
+ * @param sheetName - Name of the Excel sheet
9543
+ */
9544
+ exportTableToExcel(tableId, fileName = 'table-export', sheetName = 'Sheet1') {
9545
+ const table = document.getElementById(tableId);
9546
+ if (!table) {
9547
+ console.error(`Table with ID '${tableId}' not found`);
9548
+ return;
9549
+ }
9550
+ const wb = XLSX.utils.book_new();
9551
+ const ws = XLSX.utils.table_to_sheet(table);
9552
+ XLSX.utils.book_append_sheet(wb, ws, sheetName);
9553
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9554
+ }
9555
+ /**
9556
+ * Get nested object value using dot notation
9557
+ * @param obj - Object to search in
9558
+ * @param path - Dot notation path (e.g., 'user.address.city')
9559
+ */
9560
+ getNestedValue(obj, path) {
9561
+ return path.split('.').reduce((current, key) => {
9562
+ return current && current[key] !== undefined ? current[key] : '';
9563
+ }, obj);
9564
+ }
9565
+ /**
9566
+ * Format date for Excel export
9567
+ * @param date - Date to format
9568
+ * @param format - Format string (default: 'MM/DD/YYYY')
9569
+ */
9570
+ formatDateForExport(date, format = 'MM/DD/YYYY') {
9571
+ if (!date) {
9572
+ return '';
9573
+ }
9574
+ const d = new Date(date);
9575
+ if (isNaN(d.getTime())) {
9576
+ return '';
9577
+ }
9578
+ const month = (d.getMonth() + 1).toString().padStart(2, '0');
9579
+ const day = d.getDate().toString().padStart(2, '0');
9580
+ const year = d.getFullYear();
9581
+ switch (format) {
9582
+ case 'MM/DD/YYYY':
9583
+ return `${month}/${day}/${year}`;
9584
+ case 'DD/MM/YYYY':
9585
+ return `${day}/${month}/${year}`;
9586
+ case 'YYYY-MM-DD':
9587
+ return `${year}-${month}-${day}`;
9588
+ default:
9589
+ return d.toLocaleDateString();
9590
+ }
9591
+ }
9592
+ }
9593
+ ExcelExportService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ExcelExportService_Factory() { return new ExcelExportService(); }, token: ExcelExportService, providedIn: "root" });
9594
+ ExcelExportService.decorators = [
9595
+ { type: Injectable, args: [{
9596
+ providedIn: 'root'
9597
+ },] }
9598
+ ];
9599
+
9478
9600
  class SimpleGridComponent extends BaseSimpleGridComponent {
9479
- constructor(icons, _changeDetection, _formMaster) {
9601
+ constructor(icons, _changeDetection, _formMaster, excelExportService) {
9480
9602
  super();
9481
9603
  this.icons = icons;
9482
9604
  this._changeDetection = _changeDetection;
9483
9605
  this._formMaster = _formMaster;
9606
+ this.excelExportService = excelExportService;
9484
9607
  this.defaultTextAlign = ColumnAlign.Left;
9485
9608
  this.showAdd = false;
9486
9609
  this.showDelete = false;
9487
9610
  this.editOnCellClick = true;
9488
9611
  this.rightToolbar = false;
9489
9612
  this.showGridSettings = false;
9490
- this.rowsPerPage = 1000;
9613
+ this.rowsPerPage = 50;
9491
9614
  this.showColumnSort = false;
9492
9615
  this.editing = false;
9493
9616
  this.isSettingsMenuOpen = false;
@@ -9497,8 +9620,11 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9497
9620
  this.currentPage = 1;
9498
9621
  this.sortDirection = 'asc';
9499
9622
  this.Icons = CoreComponentsIcon;
9623
+ this.hoveredRowIndex = -1;
9500
9624
  this._doubleClicked = false;
9501
9625
  this._newRow = false;
9626
+ this.IconCacheService = IconCacheService;
9627
+ this.CoreComponentsIcon = CoreComponentsIcon;
9502
9628
  this.dataChanged.subscribe(() => {
9503
9629
  this.currentPage = 1;
9504
9630
  });
@@ -9560,13 +9686,6 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9560
9686
  }
9561
9687
  });
9562
9688
  }
9563
- isSingleColumn(column) {
9564
- return column.singleColumn;
9565
- }
9566
- rowContainsSingleColumn(row, columns) {
9567
- const singleColumn = columns.find(column => this.isSingleColumn(column) && !!row[column.field]);
9568
- return !!singleColumn;
9569
- }
9570
9689
  addNewRow() {
9571
9690
  return __awaiter(this, void 0, void 0, function* () {
9572
9691
  if (this.inlineEdit) {
@@ -9577,10 +9696,20 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9577
9696
  this._detectChanges();
9578
9697
  this._newRow = true;
9579
9698
  this.editing = true;
9580
- this.editRowIndex = this.data.length - 1;
9581
- this.rowToEdit = this.data[this.editRowIndex];
9582
- this.editCellIndex = yield this._nextAvailableCellToEdit(true);
9583
- this._detectChanges();
9699
+ if (this.rowsPerPage && this.data.length > this.rowsPerPage) {
9700
+ // navigate to the last page to the new row
9701
+ this.currentPage = Math.ceil(this.data.length / this.rowsPerPage);
9702
+ // select new row
9703
+ const absoluteIndex = this.data.length - 1;
9704
+ this.selectedRowIndex = this.rowsPerPage ? (absoluteIndex - ((this.currentPage - 1) * this.rowsPerPage)) : absoluteIndex;
9705
+ this.editRow(null);
9706
+ }
9707
+ else {
9708
+ this.editRowIndex = this.data.length - 1;
9709
+ this.rowToEdit = this.data[this.editRowIndex];
9710
+ this.editCellIndex = yield this._nextAvailableCellToEdit(true);
9711
+ this._detectChanges();
9712
+ }
9584
9713
  }
9585
9714
  }
9586
9715
  else {
@@ -9722,12 +9851,15 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9722
9851
  const sorted = [...this.data].sort((a, b) => {
9723
9852
  let valA = a[columnValue];
9724
9853
  let valB = b[columnValue];
9725
- if (valA == null && valB == null)
9854
+ if (valA == null && valB == null) {
9726
9855
  return 0;
9727
- if (valA == null)
9856
+ }
9857
+ if (valA == null) {
9728
9858
  return -1 * direction;
9729
- if (valB == null)
9859
+ }
9860
+ if (valB == null) {
9730
9861
  return 1 * direction;
9862
+ }
9731
9863
  // Handle ISO date string
9732
9864
  const isDateA = typeof valA === 'string' && /^\d{4}-\d{2}-\d{2}T/.test(valA);
9733
9865
  const isDateB = typeof valB === 'string' && /^\d{4}-\d{2}-\d{2}T/.test(valB);
@@ -9745,34 +9877,12 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9745
9877
  this.data = sorted;
9746
9878
  this._detectChanges();
9747
9879
  }
9748
- _sortData(tableData) {
9749
- return tableData.sort((a, b) => {
9750
- const sign = this.sortDirection === 'asc' ? 1 : -1;
9751
- console.log("a " + a);
9752
- console.log("b " + b);
9753
- console.log(a[this.sortColumnValue]);
9754
- console.log(b[this.sortColumnValue]);
9755
- console.log("sign " + sign);
9756
- if (a[this.sortColumnValue] < b[this.sortColumnValue]) {
9757
- return -1 * sign;
9758
- }
9759
- else if (a[this.sortColumnValue] > b[this.sortColumnValue]) {
9760
- return 1 * sign;
9761
- }
9762
- return 0;
9763
- });
9764
- }
9765
9880
  showAllColumns() {
9766
9881
  this.isSettingsMenuOpen = false;
9767
9882
  this.headerColumnsCopy = this.headerColumns;
9768
9883
  }
9769
9884
  exportToExcel() {
9770
- this.isSettingsMenuOpen = false;
9771
- let element = document.getElementById('simple-grid-table');
9772
- const ws = XLSX.utils.table_to_sheet(element);
9773
- const wb = XLSX.utils.book_new();
9774
- XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
9775
- XLSX.writeFile(wb, 'ExcelSheet.xlsx');
9885
+ this.excelExportService.exportTableToExcel('simple-grid-table', 'ExcelSheet', 'Sheet1');
9776
9886
  }
9777
9887
  prepareDataRow(row, index) {
9778
9888
  this.isRowDisabled(row, index);
@@ -9914,32 +10024,38 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9914
10024
  this.editing = false;
9915
10025
  this.rowToEdit = undefined;
9916
10026
  }
10027
+ get isNewRow() {
10028
+ return this._newRow;
10029
+ }
9917
10030
  }
9918
10031
  SimpleGridComponent.decorators = [
9919
10032
  { type: Component, args: [{
9920
10033
  selector: 'co-simple-grid',
9921
10034
  template: `
9922
- <co-grid-toolbar *ngIf="showToolbar" [class.right]="rightToolbar"
9923
- [showEdit]="showEdit"
9924
- [showAdd]="showAdd"
9925
- [showDelete]="showDelete"
9926
- [deleteEnabled]="selectedRowIndex > -1"
9927
- (addClick)="addNewRow()"
9928
- (editClick)="editRow($event)"
9929
- (saveClick)="validateAndSave()"
9930
- (cancelClick)="cancelEditRow()"
9931
- (deleteClick)="removeRow()"
9932
- ></co-grid-toolbar>
10035
+ <co-grid-toolbar
10036
+ *ngIf="showToolbar" [class.right]="rightToolbar"
10037
+ [showEdit]="showEdit"
10038
+ [showAdd]="showAdd"
10039
+ [showDelete]="showDelete"
10040
+ [deleteEnabled]="selectedRowIndex > -1"
10041
+ (addClick)="addNewRow()"
10042
+ (editClick)="editRow($event)"
10043
+ (saveClick)="validateAndSave()"
10044
+ (cancelClick)="cancelEditRow()"
10045
+ (deleteClick)="removeRow()">
10046
+ </co-grid-toolbar>
10047
+
9933
10048
  <table
9934
10049
  id="simple-grid-table"
9935
10050
  class="simple-grid-table"
9936
10051
  [clickOutside]="editing"
9937
10052
  (clickOutside)="handleClickOutsideRow()">
9938
10053
  <colgroup>
9939
- <col *ngFor="let column of headerColumnsCopy; let index = index"
9940
- [class.simple-grid-column-auto-fit]="column.autoFit"
9941
- [style.width.px]="column.width"
9942
- [style.min-width.px]="MIN_COLUMN_WIDTH">
10054
+ <col
10055
+ *ngFor="let column of headerColumnsCopy; let index = index"
10056
+ [class.simple-grid-column-auto-fit]="column.autoFit"
10057
+ [style.width.px]="column.width"
10058
+ [style.min-width.px]="MIN_COLUMN_WIDTH">
9943
10059
  </colgroup>
9944
10060
  <thead>
9945
10061
  <tr>
@@ -9957,17 +10073,19 @@ SimpleGridComponent.decorators = [
9957
10073
  <ng-container [ngTemplateOutlet]="column.headerTemplate"></ng-container>
9958
10074
  </ng-container>
9959
10075
  <ng-template #noHeaderTemplate>
9960
- <div class="simple-grid-column-header-label"
9961
- [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign"
9962
- [class.with-menu]="showGridSettings"
9963
- [class.with-sort]="showColumnSort"
9964
- [textContent]="column.headerText || '&nbsp;'"
9965
- (click)="showColumnSort ? sortColumn(column, column.field) : toggleColumnMenu(column)">
10076
+ <div
10077
+ class="simple-grid-column-header-label"
10078
+ [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign"
10079
+ [class.with-menu]="showGridSettings"
10080
+ [class.with-sort]="showColumnSort"
10081
+ [textContent]="column.headerText || '&nbsp;'"
10082
+ (click)="showColumnSort ? sortColumn(column, column.field) : toggleColumnMenu(column)">
9966
10083
  </div>
9967
10084
 
9968
10085
  <div class="sort-column" *ngIf="showColumnSort">
9969
- <co-button (click)="sortColumn(column, column?.field)"
9970
- [iconData]="icons.getIcon(Icons.ArrowUpArrowDown)">
10086
+ <co-button
10087
+ (click)="sortColumn(column, column?.field)"
10088
+ [iconData]="icons.getIcon(Icons.ArrowUpArrowDown)">
9971
10089
  </co-button>
9972
10090
  </div>
9973
10091
 
@@ -9979,53 +10097,60 @@ SimpleGridComponent.decorators = [
9979
10097
  </ul>
9980
10098
  </div>
9981
10099
  </ng-template>
9982
- <div *ngIf="resizable && column.resizable" class="simple-grid-column-sizer"
9983
- (mousedown)="handleSizerMouseDown($event, column)"
9984
- ></div>
9985
- </div>
9986
- </th>
9987
- <th *ngIf="showGridSettings" class="simple-grid-column-header grid-settings">
9988
- <co-button
9989
- [class.selected]="isSettingsMenuOpen"
9990
- [iconData]="icons.getIcon(Icons.CogWheels)"
9991
- (click)="toggleSettingsMenu()">
9992
- </co-button>
9993
-
9994
- <div class="settings-menu" *ngIf="isSettingsMenuOpen">
9995
- <h3 [textContent]="'GRID_OPTIONS' | coreLocalize"></h3>
9996
- <ul>
9997
- <li (click)="exportToExcel()">Export to Excel</li>
9998
- <li *ngIf="headerColumnsCopy.length !== headerColumns.length" (click)="showAllColumns()">Show All
9999
- Columns
10000
- </li>
10001
- </ul>
10100
+ <div
10101
+ *ngIf="resizable && column.resizable"
10102
+ class="simple-grid-column-sizer"
10103
+ (mousedown)="handleSizerMouseDown($event, column)">
10104
+ </div>
10002
10105
  </div>
10003
10106
  </th>
10004
10107
  </tr>
10108
+
10109
+ <div *ngIf="showGridSettings" class="grid-settings">
10110
+ <co-button
10111
+ [class.selected]="isSettingsMenuOpen"
10112
+ [iconData]="icons.getIcon(Icons.CogWheels)"
10113
+ (click)="toggleSettingsMenu()">
10114
+ </co-button>
10115
+
10116
+ <div class="settings-menu" *ngIf="isSettingsMenuOpen">
10117
+ <h3 [textContent]="'GRID_OPTIONS' | coreLocalize"></h3>
10118
+ <ul>
10119
+ <li (click)="exportToExcel()">Export to Excel</li>
10120
+ <li *ngIf="headerColumnsCopy.length !== headerColumns.length" (click)="showAllColumns()">
10121
+ Show All Columns
10122
+ </li>
10123
+ </ul>
10124
+ </div>
10125
+ </div>
10005
10126
  </thead>
10006
- <tbody #dropList cdkDropList cdkDropListOrientation="vertical"
10007
- class="simple-grid-drag-drop-list"
10008
- [cdkDropListDisabled]="!dragDropEnabled || editing"
10009
- [cdkDropListData]="data"
10010
- [cdkDropListEnterPredicate]="handleCanDragDrop"
10011
- (cdkDropListDropped)="handleDrop($event)">
10012
- <tr
10013
- class="simple-grid-row"
10014
- [class.selected]="rowIndex === selectedRowIndex && !editing" observeVisibility
10015
- [class.disabled]="getIsRowDisabled(rowIndex)"
10016
- [class.editing]="rowIndex === editRowIndex"
10017
- *ngFor="let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index"
10018
- cdkDrag
10019
- (click)="handleClickRow($event, rowIndex, row)" (dblclick)="handleDblClickRow($event, rowIndex, row)"
10020
- (visibilityChange)="rowVisible.next(row)">
10021
- <co-form class="simple-grid-row-form">
10127
+ <tbody
10128
+ #dropList cdkDropList cdkDropListOrientation="vertical"
10129
+ class="simple-grid-drag-drop-list"
10130
+ [cdkDropListDisabled]="!dragDropEnabled || editing"
10131
+ [cdkDropListData]="data"
10132
+ [cdkDropListEnterPredicate]="handleCanDragDrop"
10133
+ (cdkDropListDropped)="handleDrop($event)">
10134
+ <co-form class="simple-grid-row-form">
10135
+ <tr
10136
+ class="simple-grid-row"
10137
+ [class.selected]="rowIndex === selectedRowIndex && !editing" observeVisibility
10138
+ [class.disabled]="getIsRowDisabled(rowIndex)"
10139
+ [class.editing]="rowIndex === editRowIndex"
10140
+ *ngFor="let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index"
10141
+ cdkDrag
10142
+ (click)="handleClickRow($event, rowIndex, row)" (dblclick)="handleDblClickRow($event, rowIndex, row)"
10143
+ (visibilityChange)="rowVisible.next(row)"
10144
+ (mouseenter)="hoveredRowIndex = rowIndex"
10145
+ (mouseleave)="hoveredRowIndex = -1"
10146
+ >
10022
10147
  <ng-container *ngIf="isSingleColumnRow(row)">
10023
10148
  <td class="simple-grid-single-column-cell" [attr.colspan]="headerColumnsCopy.length">
10024
10149
  <co-simple-grid-cell
10025
10150
  [column]="columns[singleColumnIndex(row)]"
10026
10151
  [row]="row"
10027
- [editMode]="false"
10028
- ></co-simple-grid-cell>
10152
+ [editMode]="false">
10153
+ </co-simple-grid-cell>
10029
10154
  </td>
10030
10155
  </ng-container>
10031
10156
  <ng-container *ngIf="!isSingleColumnRow(row)">
@@ -10036,30 +10161,51 @@ SimpleGridComponent.decorators = [
10036
10161
  [row]="row"
10037
10162
  [editMode]="inlineEdit && editing && rowIndex === editRowIndex"
10038
10163
  [fieldEditMode]="editCellIndex === columnIndex && rowIndex === editRowIndex"
10039
- (cellClick)="handleCellClick($event, row, rowIndex, columnIndex)"
10040
- ></co-simple-grid-cell>
10164
+ (cellClick)="handleCellClick($event, row, rowIndex, columnIndex)">
10165
+ </co-simple-grid-cell>
10041
10166
  <div *ngIf="column.resizable" class="simple-grid-column-sizer-placeholder"></div>
10042
10167
  </td>
10043
10168
  </ng-container>
10169
+ <ng-container *ngIf="inlineEdit">
10170
+ <div class="icons-container" *ngIf="!editing">
10171
+ <co-icon class="icon-item icon-edit"
10172
+ [iconData]="icons.getIcon(Icons.PenToSquareSolid)" *ngIf="hoveredRowIndex === rowIndex"
10173
+ (click)="editRow($event)"></co-icon>
10174
+
10175
+ <co-icon class="icon-item icon-delete"
10176
+ [iconData]="icons.getIcon(Icons.TrashBin)" *ngIf="hoveredRowIndex === rowIndex"
10177
+ (click)="removeRow()"></co-icon>
10178
+ </div>
10179
+ <div class="icons-container">
10180
+ <co-button class="save-button"
10181
+ *ngIf="editing && (selectedRowIndex === rowIndex || (isNewRow && rowIndex === editRowIndex))"
10182
+ [iconData]="icons.getIcon(Icons.CheckDuotone)"
10183
+ (click)="validateAndSave(); $event.stopPropagation()"></co-button>
10184
+
10185
+ <co-button class="close-button"
10186
+ *ngIf="editing && (selectedRowIndex === rowIndex || (isNewRow && rowIndex === editRowIndex))"
10187
+ [iconData]="icons.getIcon(Icons.CrossSkinny)"
10188
+ (click)="cancelEditRow(); $event.stopPropagation() "></co-button>
10189
+ </div>
10190
+ </ng-container>
10044
10191
  </ng-container>
10045
- <td *ngIf="showGridSettings"></td>
10046
- </co-form>
10047
- </tr>
10192
+ </tr>
10193
+ </co-form>
10048
10194
  </tbody>
10049
10195
  </table>
10050
- <co-pagination-bar *ngIf="data?.length > rowsPerPage" class="pagination-bar"
10051
- [itemsPerPage]="rowsPerPage"
10052
- [currentPage]="currentPage"
10053
- [totalItems]="data.length"
10054
- [autoHide]="true"
10055
- (previousClick)="goToPreviousPage()"
10056
- (nextClick)="goToNextPage()"
10057
- (pageClick)="setCurrentPage($event)"
10058
- ></co-pagination-bar>
10196
+
10197
+ <co-pagination-bar
10198
+ *ngIf="data?.length > rowsPerPage" class="pagination-bar"
10199
+ [itemsPerPage]="rowsPerPage"
10200
+ [currentPage]="currentPage"
10201
+ [totalItems]="data.length"
10202
+ [autoHide]="true"
10203
+ (previousClick)="goToPreviousPage()"
10204
+ (nextClick)="goToNextPage()"
10205
+ (pageClick)="setCurrentPage($event)">
10206
+ </co-pagination-bar>
10059
10207
  `,
10060
- providers: [
10061
- FormMasterService
10062
- ],
10208
+ providers: [FormMasterService],
10063
10209
  changeDetection: ChangeDetectionStrategy.OnPush,
10064
10210
  encapsulation: ViewEncapsulation.None
10065
10211
  },] }
@@ -10067,7 +10213,8 @@ SimpleGridComponent.decorators = [
10067
10213
  SimpleGridComponent.ctorParameters = () => [
10068
10214
  { type: IconCacheService },
10069
10215
  { type: ChangeDetectorRef },
10070
- { type: FormMasterService }
10216
+ { type: FormMasterService },
10217
+ { type: ExcelExportService }
10071
10218
  ];
10072
10219
  SimpleGridComponent.propDecorators = {
10073
10220
  headerCells: [{ type: ViewChildren, args: ['headerCell',] }],
@@ -10828,7 +10975,8 @@ SimpleGridModule.decorators = [
10828
10975
  PaginationBarModule,
10829
10976
  ClickoutsideModule,
10830
10977
  ButtonModule,
10831
- CoreComponentsTranslationModule
10978
+ CoreComponentsTranslationModule,
10979
+ IconModule
10832
10980
  ],
10833
10981
  declarations: [
10834
10982
  SimpleGridComponent,
@@ -14869,5 +15017,5 @@ HourSchedulingExpandableComponentModule.decorators = [
14869
15017
  * Generated bundle index. Do not edit.
14870
15018
  */
14871
15019
 
14872
- export { ArticleTileComponent, ArticleTileModule, BaseInputComponent, BaseInputDatePickerDirective, BaseModuleScreenConfigService, BaseModuleService, ButtonComponent, ButtonModule, CalendarComponent, CalendarModule, CardComponent, CardModule, Carousel3dComponent, Carousel3dModule, CarouselComponent, CarouselHammerConfig, CarouselModule, CheckmarkOverlayModule, ClickoutsideModule, CoDialogComponent, CoDialogModule, CoDialogWizardComponent, CoDialogWizardModule, CoDirection, CoOrientation, CollapsibleComponent, CollapsibleModule, ColorPickerComponent, ColorPickerModule, ColorSequenceService, ColumnAlign, ContentViewMode, CoreComponentsIcon, CoreComponentsTranslationModule, CoreComponentsTranslationService, CoreDialogModule, CoreDialogService, DoubleCalendarComponent, DoubleCalendarModule, FilterItemComponent, FilterItemMode, FilterItemModule, FilterItemViewmodel, FilterPipe, FilterPipeModule, FilterViewmodel, FormComponent, FormInputUserModelChangeListenerService, FormMasterService, FormModule, GridToolbarButtonComponent, GridToolbarButtonModule, GridToolbarComponent, GridToolbarModule, HourSchedulingComponent, HourSchedulingComponentModule, HourSchedulingExpandableComponent, HourSchedulingExpandableComponentModule, HourSchedulingExpandableTemplateComponent, IconCacheService, IconCollapseHandleComponent, IconCollapseHandleModule, IconComponent, IconModule, ImageComponent, ImageModule, InputCheckboxComponent, InputCheckboxModule, InputDatePickerComponent, InputDatePickerModule, InputDateRangePickerComponent, InputDateRangePickerModule, InputNumberPickerComponent, InputNumberPickerModule, InputRadioButtonComponent, InputRadioButtonModule, InputScannerComponent, InputScannerModule, InputSearchComponent, InputSearchModule, InputTextComponent, InputTextModule, InputTextareaComponent, InputTextareaModule, LevelIndicatorComponent, LevelIndicatorModule, ListOfIconsComponent, ListOfIconsModule, ListOfValuesComponent, ListOfValuesModule, ListOfValuesPopupComponent, LoaderComponent, LoaderModule, NgZoneWrapperService, ObserveVisibilityModule, OrientationOfDirection, OverlayModule, OverlayService, PaginationBarComponent, PaginationBarModule, PaginationComponent, PaginationModule, PopupButtonsComponent, PopupMessageDisplayComponent, PopupModule, PopupWindowShellComponent, PriceDisplayPipe, PriceDisplayPipeModule, PromptService, ResponsiveTextComponent, ResponsiveTextModule, SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME, ScreenConfigurationDirective, ScreenConfigurationModule, SimpleGridColumnDirective, SimpleGridComponent, SimpleGridModule, TemplateWrapperDirective, TemplateWrapperModule, TextInputPopupComponent, TileComponent, TileModule, TileSelectComponent, TileSelectModule, TooltipDirectiveModule, ViewModeButtonsComponent, ViewModeButtonsModule, emailValidator, equalValidator, getValidatePasswordErrorString, maxStringLengthValidator, passwordValidator, precisionScaleValidator, requiredValidator, showHideDialog, InputBoolean as ɵa, RippleModule as ɵb, PaginationService as ɵba, PaginatePipe as ɵbb, SimpleGridCellComponent as ɵbc, ListOfValuesMultiselectPopupComponent as ɵbd, ConfirmationDialogComponent as ɵbe, DialogBaseComponent as ɵbf, CoreDynamicComponentService as ɵbg, PrependPipeModule as ɵbh, PrependPipe as ɵbi, CheckmarkOverlayComponent as ɵbj, ScannerService as ɵbk, TooltipModule as ɵbl, TooltipComponent as ɵbm, TooltipDirective as ɵbn, HourSchedulingTestObjectComponent as ɵbo, MD_RIPPLE_GLOBAL_OPTIONS as ɵc, CoRippleDirective as ɵd, CoViewportRulerService as ɵe, CoScrollDispatcherService as ɵf, CoScrollableDirective as ɵg, StopClickModule as ɵh, StopClickDirective as ɵi, BaseModule as ɵj, AppendPipeModule as ɵk, AppendPipe as ɵl, ValidationErrorModule as ɵm, OverlayDirective as ɵn, OverlayParentDirective as ɵo, CoreLocalizePipe as ɵp, CoreDictionaryService as ɵq, ValidationErrorComponent as ɵr, CommitButtonsModule as ɵs, CommitButtonsComponent as ɵt, ClickOutsideDirective as ɵu, ClickOutsideMasterService as ɵv, CalendarTemplateComponent as ɵw, PopupShowerService as ɵx, BaseSimpleGridComponent as ɵy, ObserveVisibilityDirective as ɵz };
15020
+ export { ArticleTileComponent, ArticleTileModule, BaseInputComponent, BaseInputDatePickerDirective, BaseModuleScreenConfigService, BaseModuleService, ButtonComponent, ButtonModule, CalendarComponent, CalendarModule, CardComponent, CardModule, Carousel3dComponent, Carousel3dModule, CarouselComponent, CarouselHammerConfig, CarouselModule, CheckmarkOverlayModule, ClickoutsideModule, CoDialogComponent, CoDialogModule, CoDialogWizardComponent, CoDialogWizardModule, CoDirection, CoOrientation, CollapsibleComponent, CollapsibleModule, ColorPickerComponent, ColorPickerModule, ColorSequenceService, ColumnAlign, ContentViewMode, CoreComponentsIcon, CoreComponentsTranslationModule, CoreComponentsTranslationService, CoreDialogModule, CoreDialogService, DoubleCalendarComponent, DoubleCalendarModule, FilterItemComponent, FilterItemMode, FilterItemModule, FilterItemViewmodel, FilterPipe, FilterPipeModule, FilterViewmodel, FormComponent, FormInputUserModelChangeListenerService, FormMasterService, FormModule, GridToolbarButtonComponent, GridToolbarButtonModule, GridToolbarComponent, GridToolbarModule, HourSchedulingComponent, HourSchedulingComponentModule, HourSchedulingExpandableComponent, HourSchedulingExpandableComponentModule, HourSchedulingExpandableTemplateComponent, IconCacheService, IconCollapseHandleComponent, IconCollapseHandleModule, IconComponent, IconModule, ImageComponent, ImageModule, InputCheckboxComponent, InputCheckboxModule, InputDatePickerComponent, InputDatePickerModule, InputDateRangePickerComponent, InputDateRangePickerModule, InputNumberPickerComponent, InputNumberPickerModule, InputRadioButtonComponent, InputRadioButtonModule, InputScannerComponent, InputScannerModule, InputSearchComponent, InputSearchModule, InputTextComponent, InputTextModule, InputTextareaComponent, InputTextareaModule, LevelIndicatorComponent, LevelIndicatorModule, ListOfIconsComponent, ListOfIconsModule, ListOfValuesComponent, ListOfValuesModule, ListOfValuesPopupComponent, LoaderComponent, LoaderModule, NgZoneWrapperService, ObserveVisibilityModule, OrientationOfDirection, OverlayModule, OverlayService, PaginationBarComponent, PaginationBarModule, PaginationComponent, PaginationModule, PopupButtonsComponent, PopupMessageDisplayComponent, PopupModule, PopupWindowShellComponent, PriceDisplayPipe, PriceDisplayPipeModule, PromptService, ResponsiveTextComponent, ResponsiveTextModule, SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME, ScreenConfigurationDirective, ScreenConfigurationModule, SimpleGridColumnDirective, SimpleGridComponent, SimpleGridModule, TemplateWrapperDirective, TemplateWrapperModule, TextInputPopupComponent, TileComponent, TileModule, TileSelectComponent, TileSelectModule, TooltipDirectiveModule, ViewModeButtonsComponent, ViewModeButtonsModule, emailValidator, equalValidator, getValidatePasswordErrorString, maxStringLengthValidator, passwordValidator, precisionScaleValidator, requiredValidator, showHideDialog, InputBoolean as ɵa, RippleModule as ɵb, ObserveVisibilityDirective as ɵba, PaginationService as ɵbb, PaginatePipe as ɵbc, SimpleGridCellComponent as ɵbd, ListOfValuesMultiselectPopupComponent as ɵbe, ConfirmationDialogComponent as ɵbf, DialogBaseComponent as ɵbg, CoreDynamicComponentService as ɵbh, PrependPipeModule as ɵbi, PrependPipe as ɵbj, CheckmarkOverlayComponent as ɵbk, ScannerService as ɵbl, TooltipModule as ɵbm, TooltipComponent as ɵbn, TooltipDirective as ɵbo, HourSchedulingTestObjectComponent as ɵbp, MD_RIPPLE_GLOBAL_OPTIONS as ɵc, CoRippleDirective as ɵd, CoViewportRulerService as ɵe, CoScrollDispatcherService as ɵf, CoScrollableDirective as ɵg, StopClickModule as ɵh, StopClickDirective as ɵi, BaseModule as ɵj, AppendPipeModule as ɵk, AppendPipe as ɵl, ValidationErrorModule as ɵm, OverlayDirective as ɵn, OverlayParentDirective as ɵo, CoreLocalizePipe as ɵp, CoreDictionaryService as ɵq, ValidationErrorComponent as ɵr, CommitButtonsModule as ɵs, CommitButtonsComponent as ɵt, ClickOutsideDirective as ɵu, ClickOutsideMasterService as ɵv, CalendarTemplateComponent as ɵw, PopupShowerService as ɵx, BaseSimpleGridComponent as ɵy, ExcelExportService as ɵz };
14873
15021
  //# sourceMappingURL=colijnit-corecomponents_v12.js.map