@progress/kendo-angular-grid 19.3.0-develop.35 → 19.3.0-develop.36
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/common/data-layout-mode.d.ts +5 -3
- package/common/{stacked-layout-settings.d.ts → grid-col-size.d.ts} +0 -11
- package/esm2022/grid.component.mjs +2 -2
- package/esm2022/navigation/navigation.service.mjs +3 -0
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/common/col-group.component.mjs +2 -1
- package/esm2022/rendering/table-body.component.mjs +7 -4
- package/fesm2022/progress-kendo-angular-grid.mjs +16 -9
- package/grid.component.d.ts +1 -1
- package/index.d.ts +1 -1
- package/package.json +21 -21
- package/schematics/ngAdd/index.js +4 -4
- /package/esm2022/common/{stacked-layout-settings.mjs → grid-col-size.mjs} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import {
|
|
5
|
+
import { GridColSize } from "./grid-col-size";
|
|
6
6
|
/**
|
|
7
7
|
* Specifies the Grid data layout display mode.
|
|
8
8
|
*/
|
|
@@ -13,7 +13,9 @@ export interface DataLayoutModeSettings {
|
|
|
13
13
|
*/
|
|
14
14
|
mode?: DataLayoutMode;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Configures the stacked columns layout and widths. The possible options are:
|
|
17
|
+
* * - as a `number` - Sets the number of columns with default widths.
|
|
18
|
+
* * - as an `Array<number | string | GridColSize>` - The size of the array represents the number of columns, and the values represent the column widths
|
|
17
19
|
*/
|
|
18
|
-
|
|
20
|
+
stackedCols?: number | Array<number | string | GridColSize>;
|
|
19
21
|
}
|
|
@@ -2,17 +2,6 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* Specifies settings for the stacked columns layout of the Grid.
|
|
7
|
-
*/
|
|
8
|
-
export interface StackedLayoutSettings {
|
|
9
|
-
/**
|
|
10
|
-
* Configures the stacked columns layout and widths. The possible options are:
|
|
11
|
-
* * - as a `number` - Sets the number of columns with default widths.
|
|
12
|
-
* * - as an `Array<number | string | GridColSize>` - The size of the array represents the number of columns, and the values represent the column widths
|
|
13
|
-
*/
|
|
14
|
-
cols?: number | Array<number | string | GridColSize>;
|
|
15
|
-
}
|
|
16
5
|
/**
|
|
17
6
|
* Represents the size of a column in the stacked layout of the Grid.
|
|
18
7
|
*/
|
|
@@ -2066,8 +2066,8 @@ export class GridComponent {
|
|
|
2066
2066
|
}
|
|
2067
2067
|
this.stackedColumns.columns = [];
|
|
2068
2068
|
if (typeof this.dataLayoutMode === 'object') {
|
|
2069
|
-
if (this.dataLayoutMode.mode === 'stacked' && this.dataLayoutMode.
|
|
2070
|
-
const columns = this.dataLayoutMode.
|
|
2069
|
+
if (this.dataLayoutMode.mode === 'stacked' && this.dataLayoutMode.stackedCols) {
|
|
2070
|
+
const columns = this.dataLayoutMode.stackedCols;
|
|
2071
2071
|
if (typeof columns === 'number') {
|
|
2072
2072
|
for (let i = 0; i < columns; i++) {
|
|
2073
2073
|
const currCol = { width: `${this.wrapper.nativeElement.clientWidth / columns}px` };
|
|
@@ -876,6 +876,9 @@ export class NavigationService {
|
|
|
876
876
|
this.handleStackedTabNavigation(args);
|
|
877
877
|
}
|
|
878
878
|
else if (args.code === Keys.Backspace || args.code === Keys.Delete) {
|
|
879
|
+
if (this.stackedCellEntered || this.editService.isEditing()) {
|
|
880
|
+
return;
|
|
881
|
+
}
|
|
879
882
|
if (this.activeRow && this.activeRow.dataRowIndex >= 0 && this.activeRow.dataItem) {
|
|
880
883
|
const row = this.cursor.row;
|
|
881
884
|
if (!row.groupItem && !this.cursor.cell.detailExpandCell) {
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '19.3.0-develop.
|
|
13
|
+
publishDate: 1754913583,
|
|
14
|
+
version: '19.3.0-develop.36',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -24,7 +24,8 @@ export class ColGroupComponent {
|
|
|
24
24
|
this.ctx = ctx;
|
|
25
25
|
}
|
|
26
26
|
getColumnWidth(column) {
|
|
27
|
-
|
|
27
|
+
const columnWidth = column.width ? `${column.width}px` : undefined;
|
|
28
|
+
return this.isStacked ? '100%' : columnWidth;
|
|
28
29
|
}
|
|
29
30
|
get columnsToRender() {
|
|
30
31
|
return this.isStacked ? [new ColumnBase()] : columnsToRender(this.columns);
|
|
@@ -43,10 +43,13 @@ import * as i7 from "../selection/selection.service";
|
|
|
43
43
|
import * as i8 from "../selection/cell-selection.service";
|
|
44
44
|
import * as i9 from "../common/column-info.service";
|
|
45
45
|
import * as i10 from "../navigation/navigation.service";
|
|
46
|
-
const columnCellIndex = (cell, cells) => {
|
|
46
|
+
const columnCellIndex = (cell, cells, isStacked) => {
|
|
47
47
|
let cellIndex = 0;
|
|
48
48
|
for (let idx = 0; idx < cells.length; idx++) {
|
|
49
|
-
|
|
49
|
+
const isChildCell = cell.parentNode === cells[idx];
|
|
50
|
+
const isActualCell = cell === cells[idx];
|
|
51
|
+
const matches = isActualCell || (isStacked && isChildCell);
|
|
52
|
+
if (matches) {
|
|
50
53
|
return cellIndex;
|
|
51
54
|
}
|
|
52
55
|
if (!hasClasses(cells[idx], 'k-hierarchy-cell k-group-cell')) {
|
|
@@ -408,8 +411,8 @@ export class TableBodyComponent {
|
|
|
408
411
|
}
|
|
409
412
|
}
|
|
410
413
|
cellClickArgs(cell, row, eventArg) {
|
|
411
|
-
const cells = this.isStackedMode ? row.querySelectorAll('.k-grid-stack-cell
|
|
412
|
-
const index = columnCellIndex(cell, cells);
|
|
414
|
+
const cells = this.isStackedMode ? row.querySelectorAll('.k-grid-stack-cell') : row.cells;
|
|
415
|
+
const index = columnCellIndex(cell, cells, this.isStackedMode);
|
|
413
416
|
if (!isPresent(index)) {
|
|
414
417
|
return;
|
|
415
418
|
}
|
|
@@ -4224,6 +4224,9 @@ class NavigationService {
|
|
|
4224
4224
|
this.handleStackedTabNavigation(args);
|
|
4225
4225
|
}
|
|
4226
4226
|
else if (args.code === Keys.Backspace || args.code === Keys.Delete) {
|
|
4227
|
+
if (this.stackedCellEntered || this.editService.isEditing()) {
|
|
4228
|
+
return;
|
|
4229
|
+
}
|
|
4227
4230
|
if (this.activeRow && this.activeRow.dataRowIndex >= 0 && this.activeRow.dataItem) {
|
|
4228
4231
|
const row = this.cursor.row;
|
|
4229
4232
|
if (!row.groupItem && !this.cursor.cell.detailExpandCell) {
|
|
@@ -4653,7 +4656,8 @@ class ColGroupComponent {
|
|
|
4653
4656
|
this.ctx = ctx;
|
|
4654
4657
|
}
|
|
4655
4658
|
getColumnWidth(column) {
|
|
4656
|
-
|
|
4659
|
+
const columnWidth = column.width ? `${column.width}px` : undefined;
|
|
4660
|
+
return this.isStacked ? '100%' : columnWidth;
|
|
4657
4661
|
}
|
|
4658
4662
|
get columnsToRender() {
|
|
4659
4663
|
return this.isStacked ? [new ColumnBase()] : columnsToRender(this.columns);
|
|
@@ -20166,10 +20170,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
20166
20170
|
type: Input
|
|
20167
20171
|
}] } });
|
|
20168
20172
|
|
|
20169
|
-
const columnCellIndex = (cell, cells) => {
|
|
20173
|
+
const columnCellIndex = (cell, cells, isStacked) => {
|
|
20170
20174
|
let cellIndex = 0;
|
|
20171
20175
|
for (let idx = 0; idx < cells.length; idx++) {
|
|
20172
|
-
|
|
20176
|
+
const isChildCell = cell.parentNode === cells[idx];
|
|
20177
|
+
const isActualCell = cell === cells[idx];
|
|
20178
|
+
const matches = isActualCell || (isStacked && isChildCell);
|
|
20179
|
+
if (matches) {
|
|
20173
20180
|
return cellIndex;
|
|
20174
20181
|
}
|
|
20175
20182
|
if (!hasClasses(cells[idx], 'k-hierarchy-cell k-group-cell')) {
|
|
@@ -20531,8 +20538,8 @@ class TableBodyComponent {
|
|
|
20531
20538
|
}
|
|
20532
20539
|
}
|
|
20533
20540
|
cellClickArgs(cell, row, eventArg) {
|
|
20534
|
-
const cells = this.isStackedMode ? row.querySelectorAll('.k-grid-stack-cell
|
|
20535
|
-
const index = columnCellIndex(cell, cells);
|
|
20541
|
+
const cells = this.isStackedMode ? row.querySelectorAll('.k-grid-stack-cell') : row.cells;
|
|
20542
|
+
const index = columnCellIndex(cell, cells, this.isStackedMode);
|
|
20536
20543
|
if (!isPresent(index)) {
|
|
20537
20544
|
return;
|
|
20538
20545
|
}
|
|
@@ -22001,8 +22008,8 @@ const packageMetadata = {
|
|
|
22001
22008
|
productName: 'Kendo UI for Angular',
|
|
22002
22009
|
productCode: 'KENDOUIANGULAR',
|
|
22003
22010
|
productCodes: ['KENDOUIANGULAR'],
|
|
22004
|
-
publishDate:
|
|
22005
|
-
version: '19.3.0-develop.
|
|
22011
|
+
publishDate: 1754913583,
|
|
22012
|
+
version: '19.3.0-develop.36',
|
|
22006
22013
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
22007
22014
|
};
|
|
22008
22015
|
|
|
@@ -31118,8 +31125,8 @@ class GridComponent {
|
|
|
31118
31125
|
}
|
|
31119
31126
|
this.stackedColumns.columns = [];
|
|
31120
31127
|
if (typeof this.dataLayoutMode === 'object') {
|
|
31121
|
-
if (this.dataLayoutMode.mode === 'stacked' && this.dataLayoutMode.
|
|
31122
|
-
const columns = this.dataLayoutMode.
|
|
31128
|
+
if (this.dataLayoutMode.mode === 'stacked' && this.dataLayoutMode.stackedCols) {
|
|
31129
|
+
const columns = this.dataLayoutMode.stackedCols;
|
|
31123
31130
|
if (typeof columns === 'number') {
|
|
31124
31131
|
for (let i = 0; i < columns; i++) {
|
|
31125
31132
|
const currCol = { width: `${this.wrapper.nativeElement.clientWidth / columns}px` };
|
package/grid.component.d.ts
CHANGED
|
@@ -90,7 +90,7 @@ import { AdaptiveRendererComponent } from './adaptiveness/adaptive-renderer.comp
|
|
|
90
90
|
import { DataMappingService } from './data/data-mapping.service';
|
|
91
91
|
import { AIAssistantToolbarDirective } from './rendering/toolbar/tools/ai-assistant/ai-tool.directive';
|
|
92
92
|
import { DataLayoutMode, DataLayoutModeSettings } from './common/data-layout-mode';
|
|
93
|
-
import { GridColSize } from './common/
|
|
93
|
+
import { GridColSize } from './common/grid-col-size';
|
|
94
94
|
import * as i0 from "@angular/core";
|
|
95
95
|
/**
|
|
96
96
|
* Represents the Kendo UI for Angular Data Grid component.
|
package/index.d.ts
CHANGED
|
@@ -198,7 +198,7 @@ export { CellRowspanFn } from './columns/cell-rowspan';
|
|
|
198
198
|
export { HighlightItem } from './highlight/highlight-item';
|
|
199
199
|
export { HighlightDirective } from './highlight/highlight.directive';
|
|
200
200
|
export { DataLayoutMode, DataLayoutModeSettings } from './common/data-layout-mode';
|
|
201
|
-
export {
|
|
201
|
+
export { GridColSize } from './common/grid-col-size';
|
|
202
202
|
export { ColumnMenuTemplateDirective } from './column-menu/column-menu-template.directive';
|
|
203
203
|
export { EditCommandDirective } from './editing/edit-command.directive';
|
|
204
204
|
export { CancelCommandDirective } from './editing/cancel-command.directive';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-grid",
|
|
3
|
-
"version": "19.3.0-develop.
|
|
3
|
+
"version": "19.3.0-develop.36",
|
|
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": 1754913583,
|
|
30
30
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
31
31
|
}
|
|
32
32
|
},
|
|
@@ -39,29 +39,29 @@
|
|
|
39
39
|
"@progress/kendo-data-query": "^1.0.0",
|
|
40
40
|
"@progress/kendo-drawing": "^1.21.0",
|
|
41
41
|
"@progress/kendo-licensing": "^1.7.0",
|
|
42
|
-
"@progress/kendo-angular-buttons": "19.3.0-develop.
|
|
43
|
-
"@progress/kendo-angular-common": "19.3.0-develop.
|
|
44
|
-
"@progress/kendo-angular-dateinputs": "19.3.0-develop.
|
|
45
|
-
"@progress/kendo-angular-layout": "19.3.0-develop.
|
|
46
|
-
"@progress/kendo-angular-navigation": "19.3.0-develop.
|
|
47
|
-
"@progress/kendo-angular-dropdowns": "19.3.0-develop.
|
|
48
|
-
"@progress/kendo-angular-excel-export": "19.3.0-develop.
|
|
49
|
-
"@progress/kendo-angular-icons": "19.3.0-develop.
|
|
50
|
-
"@progress/kendo-angular-inputs": "19.3.0-develop.
|
|
51
|
-
"@progress/kendo-angular-conversational-ui": "19.3.0-develop.
|
|
52
|
-
"@progress/kendo-angular-intl": "19.3.0-develop.
|
|
53
|
-
"@progress/kendo-angular-l10n": "19.3.0-develop.
|
|
54
|
-
"@progress/kendo-angular-label": "19.3.0-develop.
|
|
55
|
-
"@progress/kendo-angular-pager": "19.3.0-develop.
|
|
56
|
-
"@progress/kendo-angular-pdf-export": "19.3.0-develop.
|
|
57
|
-
"@progress/kendo-angular-popup": "19.3.0-develop.
|
|
58
|
-
"@progress/kendo-angular-toolbar": "19.3.0-develop.
|
|
59
|
-
"@progress/kendo-angular-utils": "19.3.0-develop.
|
|
42
|
+
"@progress/kendo-angular-buttons": "19.3.0-develop.36",
|
|
43
|
+
"@progress/kendo-angular-common": "19.3.0-develop.36",
|
|
44
|
+
"@progress/kendo-angular-dateinputs": "19.3.0-develop.36",
|
|
45
|
+
"@progress/kendo-angular-layout": "19.3.0-develop.36",
|
|
46
|
+
"@progress/kendo-angular-navigation": "19.3.0-develop.36",
|
|
47
|
+
"@progress/kendo-angular-dropdowns": "19.3.0-develop.36",
|
|
48
|
+
"@progress/kendo-angular-excel-export": "19.3.0-develop.36",
|
|
49
|
+
"@progress/kendo-angular-icons": "19.3.0-develop.36",
|
|
50
|
+
"@progress/kendo-angular-inputs": "19.3.0-develop.36",
|
|
51
|
+
"@progress/kendo-angular-conversational-ui": "19.3.0-develop.36",
|
|
52
|
+
"@progress/kendo-angular-intl": "19.3.0-develop.36",
|
|
53
|
+
"@progress/kendo-angular-l10n": "19.3.0-develop.36",
|
|
54
|
+
"@progress/kendo-angular-label": "19.3.0-develop.36",
|
|
55
|
+
"@progress/kendo-angular-pager": "19.3.0-develop.36",
|
|
56
|
+
"@progress/kendo-angular-pdf-export": "19.3.0-develop.36",
|
|
57
|
+
"@progress/kendo-angular-popup": "19.3.0-develop.36",
|
|
58
|
+
"@progress/kendo-angular-toolbar": "19.3.0-develop.36",
|
|
59
|
+
"@progress/kendo-angular-utils": "19.3.0-develop.36",
|
|
60
60
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
63
|
"tslib": "^2.3.1",
|
|
64
|
-
"@progress/kendo-angular-schematics": "19.3.0-develop.
|
|
64
|
+
"@progress/kendo-angular-schematics": "19.3.0-develop.36",
|
|
65
65
|
"@progress/kendo-common": "^1.0.1",
|
|
66
66
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
67
67
|
},
|
|
@@ -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.3.0-develop.
|
|
8
|
-
'@progress/kendo-angular-navigation': '19.3.0-develop.
|
|
7
|
+
'@progress/kendo-angular-treeview': '19.3.0-develop.36',
|
|
8
|
+
'@progress/kendo-angular-navigation': '19.3.0-develop.36',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
|
-
'@progress/kendo-angular-dialog': '19.3.0-develop.
|
|
10
|
+
'@progress/kendo-angular-dialog': '19.3.0-develop.36',
|
|
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.3.0-develop.
|
|
14
|
+
'@progress/kendo-angular-progressbar': '19.3.0-develop.36'
|
|
15
15
|
} });
|
|
16
16
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
17
17
|
}
|
|
File without changes
|