@progress/kendo-angular-grid 19.1.2 → 19.2.0-develop.10
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/aggregates/selection-aggregate.service.d.ts +1 -3
- package/column-menu/column-menu-item.directive.d.ts +1 -1
- package/common/provider.service.d.ts +2 -1
- package/data/data-mapping.service.d.ts +46 -0
- package/databinding.directive.d.ts +2 -1
- package/esm2022/aggregates/selection-aggregate.service.mjs +4 -8
- package/esm2022/column-menu/column-menu-item.directive.mjs +1 -1
- package/esm2022/common/provider.service.mjs +1 -1
- package/esm2022/data/data-mapping.service.mjs +125 -0
- package/esm2022/databinding.directive.mjs +12 -3
- package/esm2022/grid.component.mjs +41 -34
- package/esm2022/grouping/group-scroll-binding.directive.mjs +2 -2
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/list.component.mjs +76 -57
- package/esm2022/rendering/table-body.component.mjs +37 -128
- package/esm2022/selection/selection-checkbox.directive.mjs +1 -1
- package/esm2022/selection/selection.service.mjs +23 -4
- package/esm2022/state-management/undo-redo.directive.mjs +74 -16
- package/esm2022/state-management/undo-redo.service.mjs +0 -1
- package/esm2022/state-management/undo-redo.stack.mjs +6 -0
- package/esm2022/utils.mjs +19 -0
- package/fesm2022/progress-kendo-angular-grid.mjs +934 -785
- package/grid.component.d.ts +12 -6
- package/package.json +20 -20
- package/rendering/list.component.d.ts +9 -6
- package/rendering/table-body.component.d.ts +9 -27
- package/schematics/ngAdd/index.js +4 -4
- package/selection/selection.service.d.ts +1 -1
- package/state-management/undo-redo.directive.d.ts +12 -2
- package/state-management/undo-redo.service.d.ts +0 -2
- package/state-management/undo-redo.stack.d.ts +2 -0
- package/utils.d.ts +5 -0
package/grid.component.d.ts
CHANGED
|
@@ -76,9 +76,10 @@ import { GridNavigableSettings } from './navigation/navigable-settings';
|
|
|
76
76
|
import { GridSize } from './common/size-options';
|
|
77
77
|
import { SizingOptionsService } from './layout/sizing-options.service';
|
|
78
78
|
import { RowReorderEvent } from './row-reordering/types';
|
|
79
|
-
import {
|
|
79
|
+
import { DragTargetContainerDirective, DragTargetDataFn, DropTargetContainerDirective } from '@progress/kendo-angular-utils';
|
|
80
80
|
import { RowReorderService } from './row-reordering/row-reorder.service';
|
|
81
81
|
import { StatusBarTemplateDirective } from './aggregates/status-bar-template.directive';
|
|
82
|
+
import { ListComponent } from './rendering/list.component';
|
|
82
83
|
import { PagerTemplateDirective } from '@progress/kendo-angular-pager';
|
|
83
84
|
import { GridResizableSettings } from './common/resizable-settings';
|
|
84
85
|
import { GridState } from './state-management/grid-state.models';
|
|
@@ -86,6 +87,7 @@ import { UndoRedoService } from './state-management/undo-redo.service';
|
|
|
86
87
|
import { AdaptiveGridService } from './common/adaptiveness.service';
|
|
87
88
|
import { AdaptiveMode } from './adaptiveness/adaptive-mode';
|
|
88
89
|
import { AdaptiveRendererComponent } from './adaptiveness/adaptive-renderer.component';
|
|
90
|
+
import { DataMappingService } from './data/data-mapping.service';
|
|
89
91
|
import * as i0 from "@angular/core";
|
|
90
92
|
/**
|
|
91
93
|
* Represents the Kendo UI for Angular Data Grid component.
|
|
@@ -150,9 +152,9 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
|
|
|
150
152
|
private localization;
|
|
151
153
|
private ctx;
|
|
152
154
|
private sizingService;
|
|
153
|
-
private adaptiveService;
|
|
154
155
|
adaptiveGridService: AdaptiveGridService;
|
|
155
156
|
rowReorderService: RowReorderService;
|
|
157
|
+
private dataMappingService;
|
|
156
158
|
/**
|
|
157
159
|
* Sets the data of the Grid. If you provide an array, the Grid gets the total count automatically.
|
|
158
160
|
* ([more information and example]({% slug binding_grid %})).
|
|
@@ -608,10 +610,8 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
|
|
|
608
610
|
dragTargetContainer: DragTargetContainerDirective;
|
|
609
611
|
dropTargetContainer: DropTargetContainerDirective;
|
|
610
612
|
dialogContainer: ViewContainerRef;
|
|
611
|
-
/**
|
|
612
|
-
* @hidden
|
|
613
|
-
*/
|
|
614
613
|
adaptiveRenderer: AdaptiveRendererComponent;
|
|
614
|
+
listComponent: ListComponent;
|
|
615
615
|
get scrollbarWidth(): number;
|
|
616
616
|
get showPagerInput(): boolean;
|
|
617
617
|
set showPagerInput(value: boolean);
|
|
@@ -695,6 +695,11 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
|
|
|
695
695
|
*/
|
|
696
696
|
blockArrowSelection: boolean;
|
|
697
697
|
undoRedoService: UndoRedoService;
|
|
698
|
+
rowsToRender: Array<GridItem & {
|
|
699
|
+
showDetailRow?: boolean;
|
|
700
|
+
cells?: any[];
|
|
701
|
+
isExpanded?: boolean;
|
|
702
|
+
}>;
|
|
698
703
|
private selectionSubscription;
|
|
699
704
|
private stateChangeSubscription;
|
|
700
705
|
private groupExpandCollapseSubscription;
|
|
@@ -720,7 +725,7 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
|
|
|
720
725
|
private rowReorderSubscription;
|
|
721
726
|
private rtl;
|
|
722
727
|
private _rowSticky;
|
|
723
|
-
constructor(supportService: BrowserSupportService, selectionService: SelectionService, cellSelectionService: CellSelectionService, wrapper: ElementRef, groupInfoService: GroupInfoService, groupsService: GroupsService, changeNotification: ChangeNotificationService, detailsService: DetailsService, editService: EditService, filterService: FilterService, pdfService: PDFService, responsiveService: ResponsiveService, renderer: Renderer2, excelService: ExcelService, ngZone: NgZone, scrollSyncService: ScrollSyncService, domEvents: DomEventsService, columnResizingService: ColumnResizingService, changeDetectorRef: ChangeDetectorRef, columnReorderService: ColumnReorderService, columnInfoService: ColumnInfoService, navigationService: NavigationService, sortService: SortService, scrollRequestService: ScrollRequestService, localization: LocalizationService, ctx: ContextService, sizingService: SizingOptionsService,
|
|
728
|
+
constructor(supportService: BrowserSupportService, selectionService: SelectionService, cellSelectionService: CellSelectionService, wrapper: ElementRef, groupInfoService: GroupInfoService, groupsService: GroupsService, changeNotification: ChangeNotificationService, detailsService: DetailsService, editService: EditService, filterService: FilterService, pdfService: PDFService, responsiveService: ResponsiveService, renderer: Renderer2, excelService: ExcelService, ngZone: NgZone, scrollSyncService: ScrollSyncService, domEvents: DomEventsService, columnResizingService: ColumnResizingService, changeDetectorRef: ChangeDetectorRef, columnReorderService: ColumnReorderService, columnInfoService: ColumnInfoService, navigationService: NavigationService, sortService: SortService, scrollRequestService: ScrollRequestService, localization: LocalizationService, ctx: ContextService, sizingService: SizingOptionsService, adaptiveGridService: AdaptiveGridService, rowReorderService: RowReorderService, dataMappingService: DataMappingService);
|
|
724
729
|
/**
|
|
725
730
|
* Expands the master row at the specified data row index ([see example]({% slug hierarchy_grid %})).
|
|
726
731
|
*
|
|
@@ -767,6 +772,7 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
|
|
|
767
772
|
* @hidden
|
|
768
773
|
*/
|
|
769
774
|
onDataChange(): void;
|
|
775
|
+
ngDoCheck(): void;
|
|
770
776
|
ngOnChanges(changes: {
|
|
771
777
|
[propertyName: string]: SimpleChange;
|
|
772
778
|
}): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-grid",
|
|
3
|
-
"version": "19.
|
|
3
|
+
"version": "19.2.0-develop.10",
|
|
4
4
|
"description": "Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"package": {
|
|
27
27
|
"productName": "Kendo UI for Angular",
|
|
28
28
|
"productCode": "KENDOUIANGULAR",
|
|
29
|
-
"publishDate":
|
|
29
|
+
"publishDate": 1751281289,
|
|
30
30
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
31
31
|
}
|
|
32
32
|
},
|
|
@@ -39,28 +39,28 @@
|
|
|
39
39
|
"@progress/kendo-data-query": "^1.0.0",
|
|
40
40
|
"@progress/kendo-drawing": "^1.21.0",
|
|
41
41
|
"@progress/kendo-licensing": "^1.5.0",
|
|
42
|
-
"@progress/kendo-angular-buttons": "19.
|
|
43
|
-
"@progress/kendo-angular-common": "19.
|
|
44
|
-
"@progress/kendo-angular-dateinputs": "19.
|
|
45
|
-
"@progress/kendo-angular-layout": "19.
|
|
46
|
-
"@progress/kendo-angular-navigation": "19.
|
|
47
|
-
"@progress/kendo-angular-dropdowns": "19.
|
|
48
|
-
"@progress/kendo-angular-excel-export": "19.
|
|
49
|
-
"@progress/kendo-angular-icons": "19.
|
|
50
|
-
"@progress/kendo-angular-inputs": "19.
|
|
51
|
-
"@progress/kendo-angular-intl": "19.
|
|
52
|
-
"@progress/kendo-angular-l10n": "19.
|
|
53
|
-
"@progress/kendo-angular-label": "19.
|
|
54
|
-
"@progress/kendo-angular-pager": "19.
|
|
55
|
-
"@progress/kendo-angular-pdf-export": "19.
|
|
56
|
-
"@progress/kendo-angular-popup": "19.
|
|
57
|
-
"@progress/kendo-angular-toolbar": "19.
|
|
58
|
-
"@progress/kendo-angular-utils": "19.
|
|
42
|
+
"@progress/kendo-angular-buttons": "19.2.0-develop.10",
|
|
43
|
+
"@progress/kendo-angular-common": "19.2.0-develop.10",
|
|
44
|
+
"@progress/kendo-angular-dateinputs": "19.2.0-develop.10",
|
|
45
|
+
"@progress/kendo-angular-layout": "19.2.0-develop.10",
|
|
46
|
+
"@progress/kendo-angular-navigation": "19.2.0-develop.10",
|
|
47
|
+
"@progress/kendo-angular-dropdowns": "19.2.0-develop.10",
|
|
48
|
+
"@progress/kendo-angular-excel-export": "19.2.0-develop.10",
|
|
49
|
+
"@progress/kendo-angular-icons": "19.2.0-develop.10",
|
|
50
|
+
"@progress/kendo-angular-inputs": "19.2.0-develop.10",
|
|
51
|
+
"@progress/kendo-angular-intl": "19.2.0-develop.10",
|
|
52
|
+
"@progress/kendo-angular-l10n": "19.2.0-develop.10",
|
|
53
|
+
"@progress/kendo-angular-label": "19.2.0-develop.10",
|
|
54
|
+
"@progress/kendo-angular-pager": "19.2.0-develop.10",
|
|
55
|
+
"@progress/kendo-angular-pdf-export": "19.2.0-develop.10",
|
|
56
|
+
"@progress/kendo-angular-popup": "19.2.0-develop.10",
|
|
57
|
+
"@progress/kendo-angular-toolbar": "19.2.0-develop.10",
|
|
58
|
+
"@progress/kendo-angular-utils": "19.2.0-develop.10",
|
|
59
59
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
62
|
"tslib": "^2.3.1",
|
|
63
|
-
"@progress/kendo-angular-schematics": "19.
|
|
63
|
+
"@progress/kendo-angular-schematics": "19.2.0-develop.10",
|
|
64
64
|
"@progress/kendo-common": "^1.0.1",
|
|
65
65
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
66
66
|
},
|
|
@@ -31,7 +31,7 @@ import { PDFService } from '../pdf/pdf.service';
|
|
|
31
31
|
import { ColumnInfoService } from '../common/column-info.service';
|
|
32
32
|
import { GridSize } from '../common/size-options';
|
|
33
33
|
import { ContextService } from '../common/provider.service';
|
|
34
|
-
import {
|
|
34
|
+
import { DataMappingService } from '../data/data-mapping.service';
|
|
35
35
|
import * as i0 from "@angular/core";
|
|
36
36
|
/**
|
|
37
37
|
* @hidden
|
|
@@ -60,14 +60,13 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
60
60
|
private changeDetector;
|
|
61
61
|
private pdfService;
|
|
62
62
|
private columnInfo;
|
|
63
|
-
private
|
|
63
|
+
private dataMappingService;
|
|
64
64
|
hostClass: boolean;
|
|
65
65
|
hostRole: string;
|
|
66
66
|
data: Array<any>;
|
|
67
67
|
groups: Array<GroupDescriptor>;
|
|
68
68
|
total: number;
|
|
69
69
|
rowHeight: number;
|
|
70
|
-
stickyRowHeight: number;
|
|
71
70
|
detailRowHeight: number;
|
|
72
71
|
take: number;
|
|
73
72
|
skip: number;
|
|
@@ -92,6 +91,7 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
92
91
|
scrollBottom: EventEmitter<void>;
|
|
93
92
|
totalHeight: number;
|
|
94
93
|
columnsStartIdx: number;
|
|
94
|
+
allItems: any[];
|
|
95
95
|
get showFooter(): boolean;
|
|
96
96
|
get totalWidth(): number;
|
|
97
97
|
container: ElementRef;
|
|
@@ -111,6 +111,7 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
111
111
|
private columnsEndIdx;
|
|
112
112
|
private viewportColumnsWidth;
|
|
113
113
|
private scrollLeft;
|
|
114
|
+
private recalculateRowspan;
|
|
114
115
|
private observer;
|
|
115
116
|
get lockedLeafColumns(): QueryList<ColumnBase>;
|
|
116
117
|
get nonLockedLeafColumns(): QueryList<ColumnBase>;
|
|
@@ -122,7 +123,8 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
122
123
|
private rtl;
|
|
123
124
|
private columnUpdateFrame;
|
|
124
125
|
private hasLockedContainer;
|
|
125
|
-
|
|
126
|
+
private minRowHeight;
|
|
127
|
+
constructor(scrollerFactory: any, detailsService: DetailsService, changeNotification: ChangeNotificationService, suspendService: SuspendService, groupsService: GroupsService, ngZone: NgZone, renderer: Renderer2, scrollSyncService: ScrollSyncService, resizeService: ResizeService, editService: EditService, supportService: BrowserSupportService, navigationService: NavigationService, scrollRequestService: ScrollRequestService, ctx: ContextService, columnResizingService: ColumnResizingService, changeDetector: ChangeDetectorRef, pdfService: PDFService, columnInfo: ColumnInfoService, dataMappingService: DataMappingService);
|
|
126
128
|
ngOnInit(): void;
|
|
127
129
|
ngOnChanges(changes: {
|
|
128
130
|
[propertyName: string]: SimpleChange;
|
|
@@ -136,6 +138,7 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
136
138
|
lockedScroll(): void;
|
|
137
139
|
lockedMousewheel(args: any): void;
|
|
138
140
|
lockedKeydown(args: any): void;
|
|
141
|
+
updateViewportColumns(range?: any): void;
|
|
139
142
|
private detailExpand;
|
|
140
143
|
private attachContainerScroll;
|
|
141
144
|
private createScroller;
|
|
@@ -151,13 +154,13 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
|
|
|
151
154
|
private cleanupScroller;
|
|
152
155
|
private initResizeService;
|
|
153
156
|
private syncContainerHeight;
|
|
154
|
-
private updateViewportColumns;
|
|
155
157
|
private handleColumnScroll;
|
|
156
158
|
private updateColumnViewport;
|
|
157
159
|
private calculateViewportColumns;
|
|
158
160
|
private viewportWidthChange;
|
|
159
161
|
private normalizeScrollLeft;
|
|
160
162
|
private elementScrollLeft;
|
|
163
|
+
private calcVirtualPageSize;
|
|
161
164
|
static ɵfac: i0.ɵɵFactoryDeclaration<ListComponent, never>;
|
|
162
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "kendo-grid-list", never, { "data": { "alias": "data"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "total": { "alias": "total"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "
|
|
165
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "kendo-grid-list", never, { "data": { "alias": "data"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "total": { "alias": "total"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "detailRowHeight": { "alias": "detailRowHeight"; "required": false; }; "take": { "alias": "take"; "required": false; }; "skip": { "alias": "skip"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "detailTemplate": { "alias": "detailTemplate"; "required": false; }; "noRecordsTemplate": { "alias": "noRecordsTemplate"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "groupable": { "alias": "groupable"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "rowClass": { "alias": "rowClass"; "required": false; }; "rowSticky": { "alias": "rowSticky"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "virtualColumns": { "alias": "virtualColumns"; "required": false; }; "isVirtual": { "alias": "isVirtual"; "required": false; }; "cellLoadingTemplate": { "alias": "cellLoadingTemplate"; "required": false; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "contentScroll": "contentScroll"; "pageChange": "pageChange"; "scrollBottom": "scrollBottom"; }, never, never, true, never>;
|
|
163
166
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { SimpleChange, NgZone, Renderer2, ElementRef, OnInit, OnDestroy, OnChanges, DoCheck, TrackByFunction, TemplateRef } from '@angular/core';
|
|
6
|
-
import { GroupDescriptor
|
|
6
|
+
import { GroupDescriptor } from '@progress/kendo-data-query';
|
|
7
7
|
import { ColumnBase } from '../columns/column-base';
|
|
8
8
|
import { DetailTemplateDirective } from './details/detail-template.directive';
|
|
9
9
|
import { GroupsService } from '../grouping/groups.service';
|
|
@@ -20,14 +20,10 @@ import { NavigationService } from '../navigation/navigation.service';
|
|
|
20
20
|
import { GridItem } from '../data/grid-item.interface';
|
|
21
21
|
import { DetailsService } from './details/details.service';
|
|
22
22
|
import { CellSelectionService } from '../selection/cell-selection.service';
|
|
23
|
-
import { GroupItem } from '../data/group-item.interface';
|
|
24
|
-
import { GroupFooterItem } from '../data/group-footer-item.interface';
|
|
25
|
-
import { DataItem } from '../data/data-item.interface';
|
|
26
23
|
import { SVGIcon } from '@progress/kendo-svg-icons';
|
|
27
24
|
import { ContextService } from '../common/provider.service';
|
|
28
25
|
import { ColumnsContainer } from '../columns/columns-container';
|
|
29
26
|
import { RowArgs } from './common/row-args';
|
|
30
|
-
import { RowspanService } from './rowspan.service';
|
|
31
27
|
import * as i0 from "@angular/core";
|
|
32
28
|
/**
|
|
33
29
|
* @hidden
|
|
@@ -46,13 +42,17 @@ export declare class TableBodyComponent implements OnInit, OnDestroy, OnChanges,
|
|
|
46
42
|
cellSelectionService: CellSelectionService;
|
|
47
43
|
private columnInfoService;
|
|
48
44
|
private navigationService;
|
|
49
|
-
private rowspanService;
|
|
50
45
|
columns: Array<ColumnBase>;
|
|
51
46
|
allColumns: Array<ColumnBase>;
|
|
52
47
|
groups: Array<GroupDescriptor>;
|
|
53
48
|
detailTemplate: DetailTemplateDirective;
|
|
54
49
|
noRecordsTemplate: NoRecordsTemplateDirective;
|
|
55
|
-
|
|
50
|
+
rowsToRender: Array<GridItem & {
|
|
51
|
+
showDetailRow?: boolean;
|
|
52
|
+
cells?: any[];
|
|
53
|
+
isExpanded?: boolean;
|
|
54
|
+
showDataItem?: boolean;
|
|
55
|
+
}>;
|
|
56
56
|
skip: number;
|
|
57
57
|
selectable: SelectableSettings | boolean;
|
|
58
58
|
filterable: FilterableSettings;
|
|
@@ -62,7 +62,6 @@ export declare class TableBodyComponent implements OnInit, OnDestroy, OnChanges,
|
|
|
62
62
|
isVirtual: boolean;
|
|
63
63
|
cellLoadingTemplate: TemplateRef<any>;
|
|
64
64
|
skipGroupDecoration: boolean;
|
|
65
|
-
showGroupFooters: boolean;
|
|
66
65
|
lockedColumnsCount: number;
|
|
67
66
|
totalColumnsCount: number;
|
|
68
67
|
virtualColumns: boolean;
|
|
@@ -80,31 +79,14 @@ export declare class TableBodyComponent implements OnInit, OnDestroy, OnChanges,
|
|
|
80
79
|
private clickTimeout;
|
|
81
80
|
private minusIcon;
|
|
82
81
|
private plusIcon;
|
|
83
|
-
|
|
84
|
-
private rerender;
|
|
85
|
-
constructor(detailsService: DetailsService, groupsService: GroupsService, changeNotification: ChangeNotificationService, editService: EditService, ctx: ContextService, ngZone: NgZone, renderer: Renderer2, element: ElementRef, domEvents: DomEventsService, selectionService: SelectionService, cellSelectionService: CellSelectionService, columnInfoService: ColumnInfoService, navigationService: NavigationService, rowspanService: RowspanService);
|
|
82
|
+
constructor(detailsService: DetailsService, groupsService: GroupsService, changeNotification: ChangeNotificationService, editService: EditService, ctx: ContextService, ngZone: NgZone, renderer: Renderer2, element: ElementRef, domEvents: DomEventsService, selectionService: SelectionService, cellSelectionService: CellSelectionService, columnInfoService: ColumnInfoService, navigationService: NavigationService);
|
|
86
83
|
get newDataItem(): any;
|
|
87
|
-
get cachedDataArray(): any[];
|
|
88
84
|
unlockedColumnsCount(item?: any): number;
|
|
89
|
-
shouldSkipCell(rowIndex: number, colIndex: number): boolean;
|
|
90
|
-
getRowspan(row: RowArgs, column: ColumnBase, colIndex: number): number;
|
|
91
85
|
isAriaSelected(item: any, column: ColumnBase): string;
|
|
92
86
|
toggleRow(index: number, dataItem: any): boolean;
|
|
93
|
-
isExpanded(viewItem: any): boolean;
|
|
94
87
|
detailButtonIconName(viewItem: any): string;
|
|
95
88
|
detailButtonSvgIcon(viewItem: any): SVGIcon;
|
|
96
89
|
detailButtonTitle(viewItem: any): any;
|
|
97
|
-
isGroup(item: GridItem): boolean;
|
|
98
|
-
isDataItem(item: GridItem): boolean;
|
|
99
|
-
isFooter(item: GridItem): boolean;
|
|
100
|
-
isFooterItemInExpandedGroup(item: GroupFooterItem): boolean;
|
|
101
|
-
isDataItemInExpandedGroup(item: DataItem): boolean;
|
|
102
|
-
isInExpandedGroup(item: {
|
|
103
|
-
data: GroupResult;
|
|
104
|
-
index: string;
|
|
105
|
-
parentGroup: GroupItem;
|
|
106
|
-
}): boolean;
|
|
107
|
-
isParentGroupExpanded(item: GroupItem): boolean;
|
|
108
90
|
isOdd(item: any): boolean;
|
|
109
91
|
isSelectable(args: RowArgs): boolean;
|
|
110
92
|
isRowSelected(item: any): boolean;
|
|
@@ -142,5 +124,5 @@ export declare class TableBodyComponent implements OnInit, OnDestroy, OnChanges,
|
|
|
142
124
|
private eventTarget;
|
|
143
125
|
private applyStickyRowsStyling;
|
|
144
126
|
static ɵfac: i0.ɵɵFactoryDeclaration<TableBodyComponent, never>;
|
|
145
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TableBodyComponent, "[kendoGridTableBody]", never, { "columns": { "alias": "columns"; "required": false; }; "allColumns": { "alias": "allColumns"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "detailTemplate": { "alias": "detailTemplate"; "required": false; }; "noRecordsTemplate": { "alias": "noRecordsTemplate"; "required": false; }; "
|
|
127
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TableBodyComponent, "[kendoGridTableBody]", never, { "columns": { "alias": "columns"; "required": false; }; "allColumns": { "alias": "allColumns"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "detailTemplate": { "alias": "detailTemplate"; "required": false; }; "noRecordsTemplate": { "alias": "noRecordsTemplate"; "required": false; }; "rowsToRender": { "alias": "rowsToRender"; "required": false; }; "skip": { "alias": "skip"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "noRecordsText": { "alias": "noRecordsText"; "required": false; }; "isLocked": { "alias": "isLocked"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "isVirtual": { "alias": "isVirtual"; "required": false; }; "cellLoadingTemplate": { "alias": "cellLoadingTemplate"; "required": false; }; "skipGroupDecoration": { "alias": "skipGroupDecoration"; "required": false; }; "lockedColumnsCount": { "alias": "lockedColumnsCount"; "required": false; }; "totalColumnsCount": { "alias": "totalColumnsCount"; "required": false; }; "virtualColumns": { "alias": "virtualColumns"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "rowSticky": { "alias": "rowSticky"; "required": false; }; "totalColumns": { "alias": "totalColumns"; "required": false; }; "rowClass": { "alias": "rowClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
146
128
|
}
|
|
@@ -4,14 +4,14 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
4
4
|
function default_1(options) {
|
|
5
5
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
|
|
6
6
|
// peer deps of the dropdowns
|
|
7
|
-
'@progress/kendo-angular-treeview': '19.
|
|
8
|
-
'@progress/kendo-angular-navigation': '19.
|
|
7
|
+
'@progress/kendo-angular-treeview': '19.2.0-develop.10',
|
|
8
|
+
'@progress/kendo-angular-navigation': '19.2.0-develop.10',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
|
-
'@progress/kendo-angular-dialog': '19.
|
|
10
|
+
'@progress/kendo-angular-dialog': '19.2.0-develop.10',
|
|
11
11
|
// peer dependency of kendo-angular-icons
|
|
12
12
|
'@progress/kendo-svg-icons': '^4.0.0',
|
|
13
13
|
// peer dependency of kendo-angular-layout
|
|
14
|
-
'@progress/kendo-angular-progressbar': '19.
|
|
14
|
+
'@progress/kendo-angular-progressbar': '19.2.0-develop.10'
|
|
15
15
|
} });
|
|
16
16
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
17
17
|
}
|
|
@@ -59,7 +59,7 @@ export declare class SelectionService implements OnDestroy {
|
|
|
59
59
|
toggleByIndex(index: number): any;
|
|
60
60
|
select(item: any): any;
|
|
61
61
|
deselect(removedItem: any): void;
|
|
62
|
-
addAllTo(item: any, ctrlKey: boolean, preserveSelection?: boolean): any;
|
|
62
|
+
addAllTo(item: any, ctrlKey: boolean, preserveSelection?: boolean, shiftKey?: boolean): any;
|
|
63
63
|
updateAll(selectAllChecked: boolean): void;
|
|
64
64
|
selectRange(startIndex: number, endIndex: number, preserveSelection: boolean, existingSelections?: any[]): any;
|
|
65
65
|
get selectAllState(): any;
|
|
@@ -8,6 +8,8 @@ import { UndoRedoEvent } from './grid-state.models';
|
|
|
8
8
|
import { EditService } from '../editing/edit.service';
|
|
9
9
|
import { UndoRedoService } from './undo-redo.service';
|
|
10
10
|
import { ChangeNotificationService } from '../data/change-notification.service';
|
|
11
|
+
import { ContextService } from '../common/provider.service';
|
|
12
|
+
import { LocalDataChangesService } from '../editing/local-data-changes.service';
|
|
11
13
|
import * as i0 from "@angular/core";
|
|
12
14
|
/**
|
|
13
15
|
* Represents the directive that manages undo-redo operations in the Grid.
|
|
@@ -25,11 +27,17 @@ export declare class UndoRedoDirective implements OnInit, OnDestroy {
|
|
|
25
27
|
private editService;
|
|
26
28
|
private undoRedoService;
|
|
27
29
|
private changeNotification;
|
|
30
|
+
private ctx?;
|
|
31
|
+
private localDataChangesService?;
|
|
28
32
|
/**
|
|
29
33
|
* Sets the maximum number of actions to keep in the undo-redo stack.
|
|
30
34
|
* @default 10
|
|
31
35
|
*/
|
|
32
36
|
maxStoredStates: number;
|
|
37
|
+
/**
|
|
38
|
+
* Defines the property name of the data item unique key that will be used to identify the items when performing undo-redo actions.
|
|
39
|
+
*/
|
|
40
|
+
itemIdKey: string | undefined;
|
|
33
41
|
/**
|
|
34
42
|
* Fires when you perform the undo action. Provides the Grid state to apply.
|
|
35
43
|
*/
|
|
@@ -45,7 +53,7 @@ export declare class UndoRedoDirective implements OnInit, OnDestroy {
|
|
|
45
53
|
private stack;
|
|
46
54
|
private subs;
|
|
47
55
|
private addToState;
|
|
48
|
-
constructor(host: GridComponent, editService: EditService, undoRedoService: UndoRedoService, changeNotification: ChangeNotificationService);
|
|
56
|
+
constructor(host: GridComponent, editService: EditService, undoRedoService: UndoRedoService, changeNotification: ChangeNotificationService, ctx?: ContextService, localDataChangesService?: LocalDataChangesService);
|
|
49
57
|
ngOnInit(): void;
|
|
50
58
|
ngOnDestroy(): void;
|
|
51
59
|
/**
|
|
@@ -57,6 +65,8 @@ export declare class UndoRedoDirective implements OnInit, OnDestroy {
|
|
|
57
65
|
*/
|
|
58
66
|
undo(): void;
|
|
59
67
|
private updateUndoRedoDisabled;
|
|
68
|
+
private getGridDataItems;
|
|
69
|
+
private isDataStateChangeEvent;
|
|
60
70
|
static ɵfac: i0.ɵɵFactoryDeclaration<UndoRedoDirective, never>;
|
|
61
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<UndoRedoDirective, "[kendoGridUndoRedo]", ["kendoGridUndoRedo"], { "maxStoredStates": { "alias": "maxStoredStates"; "required": false; }; }, { "onUndo": "undo"; "onRedo": "redo"; }, never, never, true, never>;
|
|
71
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<UndoRedoDirective, "[kendoGridUndoRedo]", ["kendoGridUndoRedo"], { "maxStoredStates": { "alias": "maxStoredStates"; "required": false; }; "itemIdKey": { "alias": "itemIdKey"; "required": false; }; }, { "onUndo": "undo"; "onRedo": "redo"; }, never, never, true, never>;
|
|
62
72
|
}
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { Subject } from 'rxjs';
|
|
6
|
-
import { GridState } from './grid-state.models';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
7
|
/**
|
|
9
8
|
* @hidden
|
|
@@ -13,7 +12,6 @@ export declare class UndoRedoService {
|
|
|
13
12
|
onUndo: Subject<undefined>;
|
|
14
13
|
onRedo: Subject<undefined>;
|
|
15
14
|
stackEndReached: Subject<'start' | 'end' | false>;
|
|
16
|
-
setState: Subject<GridState>;
|
|
17
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<UndoRedoService, never>;
|
|
18
16
|
static ɵprov: i0.ɵɵInjectableDeclaration<UndoRedoService>;
|
|
19
17
|
}
|
|
@@ -74,6 +74,8 @@ export declare class UndoRedoStack<T> {
|
|
|
74
74
|
* @returns The previous state or null if can't undo
|
|
75
75
|
*/
|
|
76
76
|
undo(): T | null;
|
|
77
|
+
peekNext(): T | null;
|
|
78
|
+
peekPrev(): T | null;
|
|
77
79
|
/**
|
|
78
80
|
* Performs a redo operation, moving to the next state
|
|
79
81
|
* @returns The next state or null if can't redo
|
package/utils.d.ts
CHANGED
|
@@ -116,3 +116,8 @@ export declare const defaultCellRowSpan: (row: RowArgs, column: ColumnBase, data
|
|
|
116
116
|
* Determines whether selection of multiple ranges is enabled in the selectable settings.
|
|
117
117
|
*/
|
|
118
118
|
export declare const isMultipleRangesEnabled: (selectableSettings: any) => boolean;
|
|
119
|
+
/**
|
|
120
|
+
* @hidden
|
|
121
|
+
* Calculates the height of a table row by inserting a temporary row into the table body when the `rowHeight` option is not set.
|
|
122
|
+
*/
|
|
123
|
+
export declare const calcRowHeight: (tableBody: HTMLTableSectionElement | null) => number;
|