@progress/kendo-angular-grid 20.1.0-develop.2 → 20.1.0-develop.4

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.
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1758187632,
14
- version: '20.1.0-develop.2',
13
+ publishDate: 1758635087,
14
+ version: '20.1.0-develop.4',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -270,6 +270,9 @@ export class ListComponent {
270
270
  this.handleSkipOnData = true;
271
271
  }
272
272
  if (isChanged('isVirtual', changes)) {
273
+ if (this.isVirtual && !(this.minRowHeight || this.rowHeight)) {
274
+ this.minRowHeight = calcRowHeight(this.table.nativeElement);
275
+ }
273
276
  this.ngZone.onStable.pipe(take(1)).subscribe(() => {
274
277
  this.scroller.reset();
275
278
  this.rowHeightService = this.scroller.rowHeightService = new RowHeightService(this.total, this.rowHeight || this.minRowHeight);
@@ -290,6 +293,7 @@ export class ListComponent {
290
293
  get totalIsAllItems() {
291
294
  return this.isVirtual && (Boolean(this.ctx.grid?.pageable || this.ctx.grid?.group?.length));
292
295
  }
296
+ rebindGroupedDataFlag = false;
293
297
  ngDoCheck() {
294
298
  if (this.virtualColumns && (!this.viewportColumns || this.viewportWidthChange())) {
295
299
  this.updateViewportColumns();
@@ -308,6 +312,14 @@ export class ListComponent {
308
312
  this.scroller.reset(this.skipScroll);
309
313
  this.scroller.total = this.allItems.length;
310
314
  }
315
+ else if (totalChanged && !this.ctx.grid?.group?.length) {
316
+ this.scroller.reset(this.skipScroll);
317
+ this.scroller.total = this.total;
318
+ }
319
+ const rebindGroupedData = this.isVirtual && !totalChanged && this.ctx.grid?.group?.length && !this.rebindGroupedDataFlag;
320
+ if (rebindGroupedData) {
321
+ this.rebindGroupedDataFlag = true;
322
+ }
311
323
  if (shouldCalculatePageSize || !isPresent(this.scroller.rowHeightService)) {
312
324
  const calculatedPageSize = this.virtualPageSize ?? this.calcVirtualPageSize();
313
325
  if (calculatedPageSize > 0) {
@@ -328,6 +340,10 @@ export class ListComponent {
328
340
  });
329
341
  }
330
342
  }
343
+ else if (this.rebindGroupedDataFlag) {
344
+ this.ngZone.run(() => this.itemsToRender = this.allItems.slice(this.scroller.virtualSkip, this.scroller.virtualSkip + this.virtualPageSize));
345
+ this.rebindGroupedDataFlag = false;
346
+ }
331
347
  if (!this.zoneSub) {
332
348
  this.zoneSub = this.ngZone.onStable.subscribe(() => {
333
349
  if (!this.scroller.rowHeightService) {
@@ -22427,8 +22427,8 @@ const packageMetadata = {
22427
22427
  productName: 'Kendo UI for Angular',
22428
22428
  productCode: 'KENDOUIANGULAR',
22429
22429
  productCodes: ['KENDOUIANGULAR'],
22430
- publishDate: 1758187632,
22431
- version: '20.1.0-develop.2',
22430
+ publishDate: 1758635087,
22431
+ version: '20.1.0-develop.4',
22432
22432
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
22433
22433
  };
22434
22434
 
@@ -24993,6 +24993,9 @@ class ListComponent {
24993
24993
  this.handleSkipOnData = true;
24994
24994
  }
24995
24995
  if (isChanged$1('isVirtual', changes)) {
24996
+ if (this.isVirtual && !(this.minRowHeight || this.rowHeight)) {
24997
+ this.minRowHeight = calcRowHeight(this.table.nativeElement);
24998
+ }
24996
24999
  this.ngZone.onStable.pipe(take(1)).subscribe(() => {
24997
25000
  this.scroller.reset();
24998
25001
  this.rowHeightService = this.scroller.rowHeightService = new RowHeightService(this.total, this.rowHeight || this.minRowHeight);
@@ -25013,6 +25016,7 @@ class ListComponent {
25013
25016
  get totalIsAllItems() {
25014
25017
  return this.isVirtual && (Boolean(this.ctx.grid?.pageable || this.ctx.grid?.group?.length));
25015
25018
  }
25019
+ rebindGroupedDataFlag = false;
25016
25020
  ngDoCheck() {
25017
25021
  if (this.virtualColumns && (!this.viewportColumns || this.viewportWidthChange())) {
25018
25022
  this.updateViewportColumns();
@@ -25031,6 +25035,14 @@ class ListComponent {
25031
25035
  this.scroller.reset(this.skipScroll);
25032
25036
  this.scroller.total = this.allItems.length;
25033
25037
  }
25038
+ else if (totalChanged && !this.ctx.grid?.group?.length) {
25039
+ this.scroller.reset(this.skipScroll);
25040
+ this.scroller.total = this.total;
25041
+ }
25042
+ const rebindGroupedData = this.isVirtual && !totalChanged && this.ctx.grid?.group?.length && !this.rebindGroupedDataFlag;
25043
+ if (rebindGroupedData) {
25044
+ this.rebindGroupedDataFlag = true;
25045
+ }
25034
25046
  if (shouldCalculatePageSize || !isPresent(this.scroller.rowHeightService)) {
25035
25047
  const calculatedPageSize = this.virtualPageSize ?? this.calcVirtualPageSize();
25036
25048
  if (calculatedPageSize > 0) {
@@ -25051,6 +25063,10 @@ class ListComponent {
25051
25063
  });
25052
25064
  }
25053
25065
  }
25066
+ else if (this.rebindGroupedDataFlag) {
25067
+ this.ngZone.run(() => this.itemsToRender = this.allItems.slice(this.scroller.virtualSkip, this.scroller.virtualSkip + this.virtualPageSize));
25068
+ this.rebindGroupedDataFlag = false;
25069
+ }
25054
25070
  if (!this.zoneSub) {
25055
25071
  this.zoneSub = this.ngZone.onStable.subscribe(() => {
25056
25072
  if (!this.scroller.rowHeightService) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-grid",
3
- "version": "20.1.0-develop.2",
3
+ "version": "20.1.0-develop.4",
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",
@@ -41,7 +41,7 @@
41
41
  "package": {
42
42
  "productName": "Kendo UI for Angular",
43
43
  "productCode": "KENDOUIANGULAR",
44
- "publishDate": 1758187632,
44
+ "publishDate": 1758635087,
45
45
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
46
46
  }
47
47
  },
@@ -54,29 +54,29 @@
54
54
  "@progress/kendo-data-query": "^1.0.0",
55
55
  "@progress/kendo-drawing": "^1.21.0",
56
56
  "@progress/kendo-licensing": "^1.7.0",
57
- "@progress/kendo-angular-buttons": "20.1.0-develop.2",
58
- "@progress/kendo-angular-common": "20.1.0-develop.2",
59
- "@progress/kendo-angular-dateinputs": "20.1.0-develop.2",
60
- "@progress/kendo-angular-layout": "20.1.0-develop.2",
61
- "@progress/kendo-angular-navigation": "20.1.0-develop.2",
62
- "@progress/kendo-angular-dropdowns": "20.1.0-develop.2",
63
- "@progress/kendo-angular-excel-export": "20.1.0-develop.2",
64
- "@progress/kendo-angular-icons": "20.1.0-develop.2",
65
- "@progress/kendo-angular-inputs": "20.1.0-develop.2",
66
- "@progress/kendo-angular-conversational-ui": "20.1.0-develop.2",
67
- "@progress/kendo-angular-intl": "20.1.0-develop.2",
68
- "@progress/kendo-angular-l10n": "20.1.0-develop.2",
69
- "@progress/kendo-angular-label": "20.1.0-develop.2",
70
- "@progress/kendo-angular-pager": "20.1.0-develop.2",
71
- "@progress/kendo-angular-pdf-export": "20.1.0-develop.2",
72
- "@progress/kendo-angular-popup": "20.1.0-develop.2",
73
- "@progress/kendo-angular-toolbar": "20.1.0-develop.2",
74
- "@progress/kendo-angular-utils": "20.1.0-develop.2",
57
+ "@progress/kendo-angular-buttons": "20.1.0-develop.4",
58
+ "@progress/kendo-angular-common": "20.1.0-develop.4",
59
+ "@progress/kendo-angular-dateinputs": "20.1.0-develop.4",
60
+ "@progress/kendo-angular-layout": "20.1.0-develop.4",
61
+ "@progress/kendo-angular-navigation": "20.1.0-develop.4",
62
+ "@progress/kendo-angular-dropdowns": "20.1.0-develop.4",
63
+ "@progress/kendo-angular-excel-export": "20.1.0-develop.4",
64
+ "@progress/kendo-angular-icons": "20.1.0-develop.4",
65
+ "@progress/kendo-angular-inputs": "20.1.0-develop.4",
66
+ "@progress/kendo-angular-conversational-ui": "20.1.0-develop.4",
67
+ "@progress/kendo-angular-intl": "20.1.0-develop.4",
68
+ "@progress/kendo-angular-l10n": "20.1.0-develop.4",
69
+ "@progress/kendo-angular-label": "20.1.0-develop.4",
70
+ "@progress/kendo-angular-pager": "20.1.0-develop.4",
71
+ "@progress/kendo-angular-pdf-export": "20.1.0-develop.4",
72
+ "@progress/kendo-angular-popup": "20.1.0-develop.4",
73
+ "@progress/kendo-angular-toolbar": "20.1.0-develop.4",
74
+ "@progress/kendo-angular-utils": "20.1.0-develop.4",
75
75
  "rxjs": "^6.5.3 || ^7.0.0"
76
76
  },
77
77
  "dependencies": {
78
78
  "tslib": "^2.3.1",
79
- "@progress/kendo-angular-schematics": "20.1.0-develop.2",
79
+ "@progress/kendo-angular-schematics": "20.1.0-develop.4",
80
80
  "@progress/kendo-common": "^1.0.1",
81
81
  "@progress/kendo-file-saver": "^1.0.0"
82
82
  },
@@ -134,6 +134,7 @@ export declare class ListComponent implements OnInit, OnDestroy, AfterViewInit,
134
134
  }): void;
135
135
  private zoneSub;
136
136
  private get totalIsAllItems();
137
+ private rebindGroupedDataFlag;
137
138
  ngDoCheck(): void;
138
139
  ngAfterViewInit(): void;
139
140
  ngAfterViewChecked(): void;
@@ -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': '20.1.0-develop.2',
8
- '@progress/kendo-angular-navigation': '20.1.0-develop.2',
7
+ '@progress/kendo-angular-treeview': '20.1.0-develop.4',
8
+ '@progress/kendo-angular-navigation': '20.1.0-develop.4',
9
9
  // peer dependency of kendo-angular-inputs
10
- '@progress/kendo-angular-dialog': '20.1.0-develop.2',
10
+ '@progress/kendo-angular-dialog': '20.1.0-develop.4',
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': '20.1.0-develop.2'
14
+ '@progress/kendo-angular-progressbar': '20.1.0-develop.4'
15
15
  } });
16
16
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
17
17
  }