@colijnit/corecomponents_v12 256.1.23 → 256.1.25

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.
@@ -6546,9 +6546,14 @@ class CalendarTemplateComponent {
6546
6546
  }
6547
6547
  selectDate(day) {
6548
6548
  if (day) {
6549
- this.selectedDate = day;
6550
- this._fillDatesBetweenSelected();
6551
- if (this.doubleCalendar) {
6549
+ if (!this.doubleCalendar) {
6550
+ // Single calendar → select and close
6551
+ this.selectedDate = day;
6552
+ this.setAndClose();
6553
+ }
6554
+ else {
6555
+ this.selectedDate = day;
6556
+ this._fillDatesBetweenSelected();
6552
6557
  this.dateSelected.emit(new Date(this.selectedDate));
6553
6558
  }
6554
6559
  }
@@ -6748,8 +6753,8 @@ CalendarTemplateComponent.decorators = [
6748
6753
  </div>
6749
6754
  </div>
6750
6755
  <div class="calendar-action-buttons" *ngIf="showButtons">
6751
- <span class="set-and-close-button" (click)="setAndClose()">Instellen</span>
6752
- <span class="clear-date-button" (click)="clearDate()">Wissen</span>
6756
+ <span class="set-and-close-button" *ngIf="this.doubleCalendar" (click)="setAndClose()">Instellen</span>
6757
+ <span class="clear-date-button" *ngIf="this.selectedDate" (click)="clearDate()">Wissen</span>
6753
6758
  <span class="cancel-button" (click)="closeDate()">Annuleren</span>
6754
6759
  </div>
6755
6760
  </div>
@@ -9453,12 +9458,135 @@ BaseSimpleGridComponent.propDecorators = {
9453
9458
  handleMouseUp: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
9454
9459
  };
9455
9460
 
9461
+ class ExcelExportService {
9462
+ /**
9463
+ * Export data to Excel file
9464
+ * @param data - Array of objects to export
9465
+ * @param columns - Column configuration (optional)
9466
+ * @param fileName - Name of the exported file
9467
+ * @param sheetName - Name of the Excel sheet
9468
+ */
9469
+ exportToExcel(data, columns, fileName = 'export', sheetName = 'Sheet1') {
9470
+ // If columns are specified, transform data to match column structure
9471
+ let exportData = data;
9472
+ if (columns && columns.length > 0) {
9473
+ exportData = data.map(item => {
9474
+ const newItem = {};
9475
+ columns.forEach(col => {
9476
+ newItem[col.header] = this.getNestedValue(item, col.key);
9477
+ });
9478
+ return newItem;
9479
+ });
9480
+ }
9481
+ // Create workbook and worksheet
9482
+ const wb = XLSX.utils.book_new();
9483
+ const ws = XLSX.utils.json_to_sheet(exportData);
9484
+ // Set column widths if specified
9485
+ if (columns && columns.some(col => col.width)) {
9486
+ const colWidths = columns.map(col => ({ wch: col.width || 20 }));
9487
+ ws['!cols'] = colWidths;
9488
+ }
9489
+ // Add worksheet to workbook
9490
+ XLSX.utils.book_append_sheet(wb, ws, sheetName);
9491
+ // Save file
9492
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9493
+ }
9494
+ /**
9495
+ * Export multiple sheets to one Excel file
9496
+ * @param sheets - Array of sheet data
9497
+ * @param fileName - Name of the exported file
9498
+ */
9499
+ exportMultipleSheets(sheets, fileName = 'multi-sheet-export') {
9500
+ const wb = XLSX.utils.book_new();
9501
+ sheets.forEach(sheet => {
9502
+ let exportData = sheet.data;
9503
+ if (sheet.columns && sheet.columns.length > 0) {
9504
+ exportData = sheet.data.map(item => {
9505
+ const newItem = {};
9506
+ sheet.columns.forEach(col => {
9507
+ newItem[col.header] = this.getNestedValue(item, col.key);
9508
+ });
9509
+ return newItem;
9510
+ });
9511
+ }
9512
+ const ws = XLSX.utils.json_to_sheet(exportData);
9513
+ if (sheet.columns && sheet.columns.some(col => col.width)) {
9514
+ const colWidths = sheet.columns.map(col => ({ wch: col.width || 20 }));
9515
+ ws['!cols'] = colWidths;
9516
+ }
9517
+ XLSX.utils.book_append_sheet(wb, ws, sheet.sheetName);
9518
+ });
9519
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9520
+ }
9521
+ /**
9522
+ * Export HTML table to Excel
9523
+ * @param tableId - ID of the HTML table element
9524
+ * @param fileName - Name of the exported file
9525
+ * @param sheetName - Name of the Excel sheet
9526
+ */
9527
+ exportTableToExcel(tableId, fileName = 'table-export', sheetName = 'Sheet1') {
9528
+ const table = document.getElementById(tableId);
9529
+ if (!table) {
9530
+ console.error(`Table with ID '${tableId}' not found`);
9531
+ return;
9532
+ }
9533
+ const wb = XLSX.utils.book_new();
9534
+ const ws = XLSX.utils.table_to_sheet(table);
9535
+ XLSX.utils.book_append_sheet(wb, ws, sheetName);
9536
+ XLSX.writeFile(wb, `${fileName}.xlsx`);
9537
+ }
9538
+ /**
9539
+ * Get nested object value using dot notation
9540
+ * @param obj - Object to search in
9541
+ * @param path - Dot notation path (e.g., 'user.address.city')
9542
+ */
9543
+ getNestedValue(obj, path) {
9544
+ return path.split('.').reduce((current, key) => {
9545
+ return current && current[key] !== undefined ? current[key] : '';
9546
+ }, obj);
9547
+ }
9548
+ /**
9549
+ * Format date for Excel export
9550
+ * @param date - Date to format
9551
+ * @param format - Format string (default: 'MM/DD/YYYY')
9552
+ */
9553
+ formatDateForExport(date, format = 'MM/DD/YYYY') {
9554
+ if (!date) {
9555
+ return '';
9556
+ }
9557
+ const d = new Date(date);
9558
+ if (isNaN(d.getTime())) {
9559
+ return '';
9560
+ }
9561
+ const month = (d.getMonth() + 1).toString().padStart(2, '0');
9562
+ const day = d.getDate().toString().padStart(2, '0');
9563
+ const year = d.getFullYear();
9564
+ switch (format) {
9565
+ case 'MM/DD/YYYY':
9566
+ return `${month}/${day}/${year}`;
9567
+ case 'DD/MM/YYYY':
9568
+ return `${day}/${month}/${year}`;
9569
+ case 'YYYY-MM-DD':
9570
+ return `${year}-${month}-${day}`;
9571
+ default:
9572
+ return d.toLocaleDateString();
9573
+ }
9574
+ }
9575
+ }
9576
+ ExcelExportService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ExcelExportService_Factory() { return new ExcelExportService(); }, token: ExcelExportService, providedIn: "root" });
9577
+ ExcelExportService.decorators = [
9578
+ { type: Injectable, args: [{
9579
+ providedIn: 'root'
9580
+ },] }
9581
+ ];
9582
+
9456
9583
  class SimpleGridComponent extends BaseSimpleGridComponent {
9457
- constructor(icons, _changeDetection, _formMaster) {
9584
+ constructor(icons, _changeDetection, _formMaster, excelExportService) {
9458
9585
  super();
9459
9586
  this.icons = icons;
9460
9587
  this._changeDetection = _changeDetection;
9461
9588
  this._formMaster = _formMaster;
9589
+ this.excelExportService = excelExportService;
9462
9590
  this.defaultTextAlign = ColumnAlign.Left;
9463
9591
  this.showAdd = false;
9464
9592
  this.showDelete = false;
@@ -9537,13 +9665,6 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9537
9665
  }
9538
9666
  });
9539
9667
  }
9540
- isSingleColumn(column) {
9541
- return column.singleColumn;
9542
- }
9543
- rowContainsSingleColumn(row, columns) {
9544
- const singleColumn = columns.find(column => this.isSingleColumn(column) && !!row[column.field]);
9545
- return !!singleColumn;
9546
- }
9547
9668
  addNewRow() {
9548
9669
  return __awaiter(this, void 0, void 0, function* () {
9549
9670
  if (this.inlineEdit) {
@@ -9686,74 +9807,12 @@ class SimpleGridComponent extends BaseSimpleGridComponent {
9686
9807
  return obj !== col;
9687
9808
  });
9688
9809
  }
9689
- // TODO Fix this sort method
9690
- // public sortColumn(col: any, columnValue: string): void {
9691
- // console.log(col);
9692
- // console.log("columnValue " + columnValue);
9693
- // col.isSelected = false;
9694
- //
9695
- // if (this.sortColumnValue === columnValue) {
9696
- // this.sortDirection = this.sortDirection === 'asc' ? 'desc' : 'asc';
9697
- // } else {
9698
- // this.sortColumnValue = columnValue;
9699
- // this.sortDirection = 'asc';
9700
- // }
9701
- //
9702
- // console.log(this.data);
9703
- // // this.data = this._sortData(this.data);
9704
- //
9705
- //
9706
- // this.data.sort((a, b) => {
9707
- // const sign = this.sortDirection === 'asc' ? 1 : -1;
9708
- //
9709
- // console.log("a " + a);
9710
- // console.log("b " + b);
9711
- // console.log(a[this.sortColumnValue]);
9712
- // console.log(b[this.sortColumnValue]);
9713
- // console.log("sign " + sign);
9714
- //
9715
- // if (a[this.sortColumnValue] < b[this.sortColumnValue]) {
9716
- // return -1 * sign;
9717
- // } else if (a[this.sortColumnValue] > b[this.sortColumnValue]) {
9718
- // return 1 * sign;
9719
- // }
9720
- // return 0;
9721
- // });
9722
- //
9723
- //
9724
- //
9725
- // this._detectChanges();
9726
- // // this.data.sort((a, b) => a[this.sortColumnValue] - b[this.sortColumnValue]);
9727
- // console.log(this.data);
9728
- // }
9729
- _sortData(tableData) {
9730
- return tableData.sort((a, b) => {
9731
- const sign = this.sortDirection === 'asc' ? 1 : -1;
9732
- console.log("a " + a);
9733
- console.log("b " + b);
9734
- console.log(a[this.sortColumnValue]);
9735
- console.log(b[this.sortColumnValue]);
9736
- console.log("sign " + sign);
9737
- if (a[this.sortColumnValue] < b[this.sortColumnValue]) {
9738
- return -1 * sign;
9739
- }
9740
- else if (a[this.sortColumnValue] > b[this.sortColumnValue]) {
9741
- return 1 * sign;
9742
- }
9743
- return 0;
9744
- });
9745
- }
9746
9810
  showAllColumns() {
9747
9811
  this.isSettingsMenuOpen = false;
9748
9812
  this.headerColumnsCopy = this.headerColumns;
9749
9813
  }
9750
9814
  exportToExcel() {
9751
- this.isSettingsMenuOpen = false;
9752
- let element = document.getElementById('simple-grid-table');
9753
- const ws = XLSX.utils.table_to_sheet(element);
9754
- const wb = XLSX.utils.book_new();
9755
- XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
9756
- XLSX.writeFile(wb, 'ExcelSheet.xlsx');
9815
+ this.excelExportService.exportTableToExcel('simple-grid-table', 'ExcelSheet', 'Sheet1');
9757
9816
  }
9758
9817
  prepareDataRow(row, index) {
9759
9818
  this.isRowDisabled(row, index);
@@ -9900,140 +9959,148 @@ SimpleGridComponent.decorators = [
9900
9959
  { type: Component, args: [{
9901
9960
  selector: 'co-simple-grid',
9902
9961
  template: `
9903
- <co-grid-toolbar *ngIf="showToolbar" [class.right]="rightToolbar"
9904
- [showEdit]="showEdit"
9905
- [showAdd]="showAdd"
9906
- [showDelete]="showDelete"
9907
- [deleteEnabled]="selectedRowIndex > -1"
9908
- (addClick)="addNewRow()"
9909
- (editClick)="editRow($event)"
9910
- (saveClick)="validateAndSave()"
9911
- (cancelClick)="cancelEditRow()"
9912
- (deleteClick)="removeRow()"
9913
- ></co-grid-toolbar>
9914
- <table
9915
- id="simple-grid-table"
9916
- class="simple-grid-table"
9917
- [clickOutside]="editing"
9918
- (clickOutside)="handleClickOutsideRow()">
9919
- <colgroup>
9920
- <col *ngFor="let column of headerColumnsCopy; let index = index"
9921
- [class.simple-grid-column-auto-fit]="column.autoFit"
9922
- [style.width.px]="column.width"
9923
- [style.min-width.px]="MIN_COLUMN_WIDTH">
9924
- </colgroup>
9925
- <thead>
9926
- <tr>
9927
- <th
9928
- scope="col"
9929
- #headerCell
9930
- class="simple-grid-column-header"
9931
- *ngFor="let column of headerColumnsCopy; let index = index">
9932
- <div
9933
- class="simple-grid-column-header-wrapper"
9934
- [class.resizable]="resizable"
9935
- [class.selected]="column.isSelected"
9936
- [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
9937
- <ng-container *ngIf="column.headerTemplate; else noHeaderTemplate">
9938
- <ng-container [ngTemplateOutlet]="column.headerTemplate"></ng-container>
9939
- </ng-container>
9940
- <ng-template #noHeaderTemplate>
9941
- <div class="simple-grid-column-header-label"
9942
- [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign"
9943
- [class.with-menu]="showGridSettings"
9944
- [textContent]="column.headerText || '&nbsp;'"
9945
- (click)="toggleColumnMenu(column)">
9946
- </div>
9962
+ <co-grid-toolbar
9963
+ *ngIf="showToolbar" [class.right]="rightToolbar"
9964
+ [showEdit]="showEdit"
9965
+ [showAdd]="showAdd"
9966
+ [showDelete]="showDelete"
9967
+ [deleteEnabled]="selectedRowIndex > -1"
9968
+ (addClick)="addNewRow()"
9969
+ (editClick)="editRow($event)"
9970
+ (saveClick)="validateAndSave()"
9971
+ (cancelClick)="cancelEditRow()"
9972
+ (deleteClick)="removeRow()">
9973
+ </co-grid-toolbar>
9974
+
9975
+ <table
9976
+ id="simple-grid-table"
9977
+ class="simple-grid-table"
9978
+ [clickOutside]="editing"
9979
+ (clickOutside)="handleClickOutsideRow()">
9980
+ <colgroup>
9981
+ <col
9982
+ *ngFor="let column of headerColumnsCopy; let index = index"
9983
+ [class.simple-grid-column-auto-fit]="column.autoFit"
9984
+ [style.width.px]="column.width"
9985
+ [style.min-width.px]="MIN_COLUMN_WIDTH">
9986
+ </colgroup>
9987
+ <thead>
9988
+ <tr>
9989
+ <th
9990
+ scope="col"
9991
+ #headerCell
9992
+ class="simple-grid-column-header"
9993
+ *ngFor="let column of headerColumnsCopy; let index = index">
9994
+ <div
9995
+ class="simple-grid-column-header-wrapper"
9996
+ [class.resizable]="resizable"
9997
+ [class.selected]="column.isSelected"
9998
+ [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
9999
+ <ng-container *ngIf="column.headerTemplate; else noHeaderTemplate">
10000
+ <ng-container [ngTemplateOutlet]="column.headerTemplate"></ng-container>
10001
+ </ng-container>
10002
+ <ng-template #noHeaderTemplate>
10003
+ <div
10004
+ class="simple-grid-column-header-label"
10005
+ [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign"
10006
+ [class.with-menu]="showGridSettings"
10007
+ [textContent]="column.headerText || '&nbsp;'"
10008
+ (click)="toggleColumnMenu(column)">
10009
+ </div>
10010
+
10011
+ <div class="column-menu" *ngIf="column.isSelected">
10012
+ <h3 [textContent]="'COLUMN_OPTIONS' | coreLocalize"></h3>
10013
+ <ul>
10014
+ <li (click)="hideColumn(column)">Hide Column</li>
10015
+ <!-- <li (click)="sortColumn(column, column.field)">Sort Column</li>-->
10016
+ </ul>
10017
+ </div>
10018
+ </ng-template>
10019
+ <div
10020
+ *ngIf="resizable && column.resizable"
10021
+ class="simple-grid-column-sizer"
10022
+ (mousedown)="handleSizerMouseDown($event, column)">
10023
+ </div>
10024
+ </div>
10025
+ </th>
10026
+ </tr>
10027
+
10028
+ <div *ngIf="showGridSettings" class="grid-settings">
10029
+ <co-button
10030
+ [class.selected]="isSettingsMenuOpen"
10031
+ [iconData]="icons.getIcon(Icons.CogWheels)"
10032
+ (click)="toggleSettingsMenu()">
10033
+ </co-button>
9947
10034
 
9948
- <div class="column-menu" *ngIf="column.isSelected">
9949
- <h3 [textContent]="'COLUMN_OPTIONS' | coreLocalize"></h3>
9950
- <ul>
9951
- <li (click)="hideColumn(column)">Hide Column</li>
9952
- <!-- <li (click)="sortColumn(column, column.field)">Sort Column</li>-->
9953
- </ul>
10035
+ <div class="settings-menu" *ngIf="isSettingsMenuOpen">
10036
+ <h3 [textContent]="'GRID_OPTIONS' | coreLocalize"></h3>
10037
+ <ul>
10038
+ <li (click)="exportToExcel()">Export to Excel</li>
10039
+ <li *ngIf="headerColumnsCopy.length !== headerColumns.length" (click)="showAllColumns()">
10040
+ Show All Columns
10041
+ </li>
10042
+ </ul>
9954
10043
  </div>
9955
- </ng-template>
9956
- <div *ngIf="resizable && column.resizable" class="simple-grid-column-sizer"
9957
- (mousedown)="handleSizerMouseDown($event, column)"
9958
- ></div>
9959
10044
  </div>
9960
- </th>
9961
- <th *ngIf="showGridSettings" class="simple-grid-column-header grid-settings">
9962
- <co-button
9963
- [class.selected]="isSettingsMenuOpen"
9964
- [iconData]="icons.getIcon(Icons.CogWheels)"
9965
- (click)="toggleSettingsMenu()">
9966
- </co-button>
9967
10045
 
9968
- <div class="settings-menu" *ngIf="isSettingsMenuOpen">
9969
- <h3 [textContent]="'GRID_OPTIONS' | coreLocalize"></h3>
9970
- <ul>
9971
- <li (click)="exportToExcel()">Export to Excel</li>
9972
- <li *ngIf="headerColumnsCopy.length !== headerColumns.length" (click)="showAllColumns()">Show All
9973
- Columns
9974
- </li>
9975
- </ul>
9976
- </div>
9977
- </th>
9978
- </tr>
9979
- </thead>
9980
- <tbody #dropList cdkDropList cdkDropListOrientation="vertical"
9981
- class="simple-grid-drag-drop-list"
9982
- [cdkDropListDisabled]="!dragDropEnabled || editing"
9983
- [cdkDropListData]="data"
9984
- [cdkDropListEnterPredicate]="handleCanDragDrop"
9985
- (cdkDropListDropped)="handleDrop($event)">
9986
- <tr
9987
- class="simple-grid-row"
9988
- [class.selected]="rowIndex === selectedRowIndex && !editing" observeVisibility
9989
- [class.disabled]="getIsRowDisabled(rowIndex)"
9990
- [class.editing]="rowIndex === editRowIndex"
9991
- *ngFor="let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index"
9992
- cdkDrag
9993
- (click)="handleClickRow($event, rowIndex, row)" (dblclick)="handleDblClickRow($event, rowIndex, row)"
9994
- (visibilityChange)="rowVisible.next(row)">
9995
- <co-form class="simple-grid-row-form">
9996
- <ng-container *ngIf="isSingleColumnRow(row)">
9997
- <td class="simple-grid-single-column-cell" [attr.colspan]="headerColumnsCopy.length">
9998
- <co-simple-grid-cell
9999
- [column]="columns[singleColumnIndex(row)]"
10000
- [row]="row"
10001
- [editMode]="false"
10002
- ></co-simple-grid-cell>
10003
- </td>
10004
- </ng-container>
10005
- <ng-container *ngIf="!isSingleColumnRow(row)">
10006
- <ng-container *ngFor="let column of headerColumnsCopy; let columnIndex = index">
10007
- <td class="simple-grid-column-cell" *ngIf="columnIndex !== singleColumnIndex(row)">
10008
- <co-simple-grid-cell
10009
- [column]="column"
10010
- [row]="row"
10011
- [editMode]="inlineEdit && editing && rowIndex === editRowIndex"
10012
- [fieldEditMode]="editCellIndex === columnIndex && rowIndex === editRowIndex"
10013
- (cellClick)="handleCellClick($event, row, rowIndex, columnIndex)"
10014
- ></co-simple-grid-cell>
10015
- <div *ngIf="column.resizable" class="simple-grid-column-sizer-placeholder"></div>
10016
- </td>
10017
- </ng-container>
10018
- </ng-container>
10019
- <td *ngIf="showGridSettings"></td>
10020
- </co-form>
10021
- </tr>
10022
- </tbody>
10023
- </table>
10024
- <co-pagination-bar *ngIf="data?.length > rowsPerPage" class="pagination-bar"
10025
- [itemsPerPage]="rowsPerPage"
10026
- [currentPage]="currentPage"
10027
- [totalItems]="data.length"
10028
- [autoHide]="true"
10029
- (previousClick)="goToPreviousPage()"
10030
- (nextClick)="goToNextPage()"
10031
- (pageClick)="setCurrentPage($event)"
10032
- ></co-pagination-bar>
10046
+ </thead>
10047
+ <tbody
10048
+ #dropList cdkDropList cdkDropListOrientation="vertical"
10049
+ class="simple-grid-drag-drop-list"
10050
+ [cdkDropListDisabled]="!dragDropEnabled || editing"
10051
+ [cdkDropListData]="data"
10052
+ [cdkDropListEnterPredicate]="handleCanDragDrop"
10053
+ (cdkDropListDropped)="handleDrop($event)">
10054
+ <co-form class="simple-grid-row-form">
10055
+ <tr
10056
+ class="simple-grid-row"
10057
+ [class.selected]="rowIndex === selectedRowIndex && !editing" observeVisibility
10058
+ [class.disabled]="getIsRowDisabled(rowIndex)"
10059
+ [class.editing]="rowIndex === editRowIndex"
10060
+ *ngFor="let row of (!!rowsPerPage ? (data | paginate: {itemsPerPage: rowsPerPage, currentPage: currentPage}) : data); last as last; let rowIndex = index"
10061
+ cdkDrag
10062
+ (click)="handleClickRow($event, rowIndex, row)" (dblclick)="handleDblClickRow($event, rowIndex, row)"
10063
+ (visibilityChange)="rowVisible.next(row)">
10064
+ <ng-container *ngIf="isSingleColumnRow(row)">
10065
+ <td class="simple-grid-single-column-cell" [attr.colspan]="headerColumnsCopy.length">
10066
+ <co-simple-grid-cell
10067
+ [column]="columns[singleColumnIndex(row)]"
10068
+ [row]="row"
10069
+ [editMode]="false">
10070
+ </co-simple-grid-cell>
10071
+ </td>
10072
+ </ng-container>
10073
+ <ng-container *ngIf="!isSingleColumnRow(row)">
10074
+ <ng-container *ngFor="let column of headerColumnsCopy; let columnIndex = index">
10075
+ <td class="simple-grid-column-cell" *ngIf="columnIndex !== singleColumnIndex(row)">
10076
+ <co-simple-grid-cell
10077
+ [column]="column"
10078
+ [row]="row"
10079
+ [editMode]="inlineEdit && editing && rowIndex === editRowIndex"
10080
+ [fieldEditMode]="editCellIndex === columnIndex && rowIndex === editRowIndex"
10081
+ (cellClick)="handleCellClick($event, row, rowIndex, columnIndex)">
10082
+ </co-simple-grid-cell>
10083
+ <div *ngIf="column.resizable" class="simple-grid-column-sizer-placeholder"></div>
10084
+ </td>
10085
+ </ng-container>
10086
+ </ng-container>
10087
+ </tr>
10088
+ </co-form>
10089
+ </tbody>
10090
+ </table>
10091
+
10092
+ <co-pagination-bar
10093
+ *ngIf="data?.length > rowsPerPage" class="pagination-bar"
10094
+ [itemsPerPage]="rowsPerPage"
10095
+ [currentPage]="currentPage"
10096
+ [totalItems]="data.length"
10097
+ [autoHide]="true"
10098
+ (previousClick)="goToPreviousPage()"
10099
+ (nextClick)="goToNextPage()"
10100
+ (pageClick)="setCurrentPage($event)">
10101
+ </co-pagination-bar>
10033
10102
  `,
10034
- providers: [
10035
- FormMasterService
10036
- ],
10103
+ providers: [FormMasterService],
10037
10104
  changeDetection: ChangeDetectionStrategy.OnPush,
10038
10105
  encapsulation: ViewEncapsulation.None
10039
10106
  },] }
@@ -10041,7 +10108,8 @@ SimpleGridComponent.decorators = [
10041
10108
  SimpleGridComponent.ctorParameters = () => [
10042
10109
  { type: IconCacheService },
10043
10110
  { type: ChangeDetectorRef },
10044
- { type: FormMasterService }
10111
+ { type: FormMasterService },
10112
+ { type: ExcelExportService }
10045
10113
  ];
10046
10114
  SimpleGridComponent.propDecorators = {
10047
10115
  headerCells: [{ type: ViewChildren, args: ['headerCell',] }],
@@ -14773,5 +14841,5 @@ HourSchedulingExpandableComponentModule.decorators = [
14773
14841
  * Generated bundle index. Do not edit.
14774
14842
  */
14775
14843
 
14776
- 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 };
14844
+ 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 };
14777
14845
  //# sourceMappingURL=colijnit-corecomponents_v12.js.map