@progress/kendo-angular-grid 21.0.0-develop.24 → 21.0.0-develop.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.
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1762766484,
14
- version: '21.0.0-develop.24',
13
+ publishDate: 1762792564,
14
+ version: '21.0.0-develop.25',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -305,17 +305,24 @@ export class ListComponent {
305
305
  const previousTotal = this.allItems.length;
306
306
  this.allItems = this.dataMappingService.dataMapper(this.data, this.nonLockedColumnsToRender, this.lockedLeafColumns, this.detailTemplate, this.showFooter);
307
307
  const totalChanged = previousTotal !== this.allItems.length;
308
+ const totalIncreased = this.allItems.length > previousTotal;
308
309
  if (this.totalIsAllItems && totalChanged) {
309
310
  this.scroller.reset(this.skipScroll);
310
311
  this.scroller.total = this.allItems.length;
311
312
  this.itemsToRender = this.allItems.slice(this.scroller.virtualSkip, this.scroller.virtualSkip + this.virtualPageSize);
312
313
  }
313
314
  else if (totalChanged && !this.ctx.grid?.group?.length) {
314
- this.scroller.reset(this.skipScroll);
315
- this.scroller.total = this.total;
316
- // Clear flags to allow viewport update on next change detection
317
- this.skipScroll = false;
318
- this.scroller.scrollSyncing = false;
315
+ // Preserve scroll position for non-virtual endless scrolling (scrollBottom event)
316
+ if (!this.isVirtual && totalIncreased) {
317
+ this.scroller.total = this.total;
318
+ }
319
+ else {
320
+ this.scroller.reset(this.skipScroll);
321
+ this.scroller.total = this.total;
322
+ // Clear flags to allow viewport update on next change detection (virtual scrolling fix)
323
+ this.skipScroll = false;
324
+ this.scroller.scrollSyncing = false;
325
+ }
319
326
  }
320
327
  if (!this.isVirtual || (this.isVirtual && !this.ctx.grid?.pageable && !this.ctx.grid?.group?.length)) {
321
328
  this.itemsToRender = this.allItems;
@@ -22953,8 +22953,8 @@ const packageMetadata = {
22953
22953
  productName: 'Kendo UI for Angular',
22954
22954
  productCode: 'KENDOUIANGULAR',
22955
22955
  productCodes: ['KENDOUIANGULAR'],
22956
- publishDate: 1762766484,
22957
- version: '21.0.0-develop.24',
22956
+ publishDate: 1762792564,
22957
+ version: '21.0.0-develop.25',
22958
22958
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
22959
22959
  };
22960
22960
 
@@ -25581,17 +25581,24 @@ class ListComponent {
25581
25581
  const previousTotal = this.allItems.length;
25582
25582
  this.allItems = this.dataMappingService.dataMapper(this.data, this.nonLockedColumnsToRender, this.lockedLeafColumns, this.detailTemplate, this.showFooter);
25583
25583
  const totalChanged = previousTotal !== this.allItems.length;
25584
+ const totalIncreased = this.allItems.length > previousTotal;
25584
25585
  if (this.totalIsAllItems && totalChanged) {
25585
25586
  this.scroller.reset(this.skipScroll);
25586
25587
  this.scroller.total = this.allItems.length;
25587
25588
  this.itemsToRender = this.allItems.slice(this.scroller.virtualSkip, this.scroller.virtualSkip + this.virtualPageSize);
25588
25589
  }
25589
25590
  else if (totalChanged && !this.ctx.grid?.group?.length) {
25590
- this.scroller.reset(this.skipScroll);
25591
- this.scroller.total = this.total;
25592
- // Clear flags to allow viewport update on next change detection
25593
- this.skipScroll = false;
25594
- this.scroller.scrollSyncing = false;
25591
+ // Preserve scroll position for non-virtual endless scrolling (scrollBottom event)
25592
+ if (!this.isVirtual && totalIncreased) {
25593
+ this.scroller.total = this.total;
25594
+ }
25595
+ else {
25596
+ this.scroller.reset(this.skipScroll);
25597
+ this.scroller.total = this.total;
25598
+ // Clear flags to allow viewport update on next change detection (virtual scrolling fix)
25599
+ this.skipScroll = false;
25600
+ this.scroller.scrollSyncing = false;
25601
+ }
25595
25602
  }
25596
25603
  if (!this.isVirtual || (this.isVirtual && !this.ctx.grid?.pageable && !this.ctx.grid?.group?.length)) {
25597
25604
  this.itemsToRender = this.allItems;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-grid",
3
- "version": "21.0.0-develop.24",
3
+ "version": "21.0.0-develop.25",
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",
@@ -73,7 +73,7 @@
73
73
  "package": {
74
74
  "productName": "Kendo UI for Angular",
75
75
  "productCode": "KENDOUIANGULAR",
76
- "publishDate": 1762766484,
76
+ "publishDate": 1762792564,
77
77
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
78
78
  }
79
79
  },
@@ -86,32 +86,32 @@
86
86
  "@progress/kendo-data-query": "^1.0.0",
87
87
  "@progress/kendo-drawing": "^1.21.0",
88
88
  "@progress/kendo-licensing": "^1.7.0",
89
- "@progress/kendo-angular-buttons": "21.0.0-develop.24",
90
- "@progress/kendo-angular-common": "21.0.0-develop.24",
91
- "@progress/kendo-angular-dateinputs": "21.0.0-develop.24",
92
- "@progress/kendo-angular-layout": "21.0.0-develop.24",
93
- "@progress/kendo-angular-navigation": "21.0.0-develop.24",
94
- "@progress/kendo-angular-dropdowns": "21.0.0-develop.24",
95
- "@progress/kendo-angular-excel-export": "21.0.0-develop.24",
96
- "@progress/kendo-angular-icons": "21.0.0-develop.24",
97
- "@progress/kendo-angular-indicators": "21.0.0-develop.24",
98
- "@progress/kendo-angular-inputs": "21.0.0-develop.24",
99
- "@progress/kendo-angular-conversational-ui": "21.0.0-develop.24",
100
- "@progress/kendo-angular-intl": "21.0.0-develop.24",
101
- "@progress/kendo-angular-l10n": "21.0.0-develop.24",
102
- "@progress/kendo-angular-label": "21.0.0-develop.24",
103
- "@progress/kendo-angular-menu": "21.0.0-develop.24",
104
- "@progress/kendo-angular-pager": "21.0.0-develop.24",
105
- "@progress/kendo-angular-pdf-export": "21.0.0-develop.24",
106
- "@progress/kendo-angular-popup": "21.0.0-develop.24",
107
- "@progress/kendo-angular-toolbar": "21.0.0-develop.24",
108
- "@progress/kendo-angular-upload": "21.0.0-develop.24",
109
- "@progress/kendo-angular-utils": "21.0.0-develop.24",
89
+ "@progress/kendo-angular-buttons": "21.0.0-develop.25",
90
+ "@progress/kendo-angular-common": "21.0.0-develop.25",
91
+ "@progress/kendo-angular-dateinputs": "21.0.0-develop.25",
92
+ "@progress/kendo-angular-layout": "21.0.0-develop.25",
93
+ "@progress/kendo-angular-navigation": "21.0.0-develop.25",
94
+ "@progress/kendo-angular-dropdowns": "21.0.0-develop.25",
95
+ "@progress/kendo-angular-excel-export": "21.0.0-develop.25",
96
+ "@progress/kendo-angular-icons": "21.0.0-develop.25",
97
+ "@progress/kendo-angular-indicators": "21.0.0-develop.25",
98
+ "@progress/kendo-angular-inputs": "21.0.0-develop.25",
99
+ "@progress/kendo-angular-conversational-ui": "21.0.0-develop.25",
100
+ "@progress/kendo-angular-intl": "21.0.0-develop.25",
101
+ "@progress/kendo-angular-l10n": "21.0.0-develop.25",
102
+ "@progress/kendo-angular-label": "21.0.0-develop.25",
103
+ "@progress/kendo-angular-menu": "21.0.0-develop.25",
104
+ "@progress/kendo-angular-pager": "21.0.0-develop.25",
105
+ "@progress/kendo-angular-pdf-export": "21.0.0-develop.25",
106
+ "@progress/kendo-angular-popup": "21.0.0-develop.25",
107
+ "@progress/kendo-angular-toolbar": "21.0.0-develop.25",
108
+ "@progress/kendo-angular-upload": "21.0.0-develop.25",
109
+ "@progress/kendo-angular-utils": "21.0.0-develop.25",
110
110
  "rxjs": "^6.5.3 || ^7.0.0"
111
111
  },
112
112
  "dependencies": {
113
113
  "tslib": "^2.3.1",
114
- "@progress/kendo-angular-schematics": "21.0.0-develop.24",
114
+ "@progress/kendo-angular-schematics": "21.0.0-develop.25",
115
115
  "@progress/kendo-common": "^1.0.1",
116
116
  "@progress/kendo-file-saver": "^1.0.0",
117
117
  "node-html-parser": "^7.0.1"
@@ -5,19 +5,19 @@ const schematics_1 = require("@angular-devkit/schematics");
5
5
  function default_1(options) {
6
6
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
7
7
  // peer deps of the dropdowns
8
- '@progress/kendo-angular-treeview': '21.0.0-develop.24',
9
- '@progress/kendo-angular-navigation': '21.0.0-develop.24',
8
+ '@progress/kendo-angular-treeview': '21.0.0-develop.25',
9
+ '@progress/kendo-angular-navigation': '21.0.0-develop.25',
10
10
  // peer dependency of kendo-angular-inputs
11
- '@progress/kendo-angular-dialog': '21.0.0-develop.24',
11
+ '@progress/kendo-angular-dialog': '21.0.0-develop.25',
12
12
  // peer dependency of kendo-angular-icons
13
13
  '@progress/kendo-svg-icons': '^4.0.0',
14
14
  // peer dependency of kendo-angular-layout
15
- '@progress/kendo-angular-progressbar': '21.0.0-develop.24',
15
+ '@progress/kendo-angular-progressbar': '21.0.0-develop.25',
16
16
  // transitive peer dependencies from toolbar
17
- '@progress/kendo-angular-indicators': '21.0.0-develop.24',
17
+ '@progress/kendo-angular-indicators': '21.0.0-develop.25',
18
18
  // transitive peer dependencies from conversational-ui
19
- '@progress/kendo-angular-menu': '21.0.0-develop.24',
20
- '@progress/kendo-angular-upload': '21.0.0-develop.24'
19
+ '@progress/kendo-angular-menu': '21.0.0-develop.25',
20
+ '@progress/kendo-angular-upload': '21.0.0-develop.25'
21
21
  } });
22
22
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
23
23
  }