@progress/kendo-angular-grid 23.4.0-develop.2 → 23.4.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.
package/codemods/utils.js CHANGED
@@ -3,11 +3,40 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  "use strict";
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
6
29
  Object.defineProperty(exports, "__esModule", { value: true });
7
30
  exports.tsInterfaceTransformer = exports.tsPropertyValueTransformer = exports.tsPropertyTransformer = exports.tsComponentPropertyRemoval = exports.attributeRemoval = exports.attributeValueUpdate = exports.attributeNameValueUpdate = exports.attributeNameUpdate = exports.eventUpdate = exports.htmlTransformer = exports.blockTextElements = void 0;
8
31
  exports.hasKendoInTemplate = hasKendoInTemplate;
9
32
  exports.isImportedFromPackage = isImportedFromPackage;
10
33
  exports.tsPropertyRemoval = tsPropertyRemoval;
34
+ exports.makePattern = makePattern;
35
+ exports.writeInstructionMarker = writeInstructionMarker;
36
+ exports.isApiChangeTarget = isApiChangeTarget;
37
+ exports.isRenderingChangeTarget = isRenderingChangeTarget;
38
+ const fs = __importStar(require("node:fs"));
39
+ const path = __importStar(require("node:path"));
11
40
  exports.blockTextElements = {
12
41
  script: true,
13
42
  noscript: true,
@@ -575,7 +604,7 @@ const tsComponentPropertyRemoval = (source, root, j, packageName, componentType,
575
604
  localVariables.add(path.node.id.name);
576
605
  }
577
606
  });
578
- // Find array variables of type componentType[]
607
+ // Find array variables of type componentType[]
579
608
  // This handles cases like: const arr: ChatComponent[] = [...]; arr[0].property = value;
580
609
  const arrayVariables = new Set();
581
610
  root.find(j.VariableDeclarator).forEach((path) => {
@@ -1366,3 +1395,36 @@ function isComponentTypeMatch(root, j, node, componentType) {
1366
1395
  }
1367
1396
  return false;
1368
1397
  }
1398
+ // Matches CSS class names in CSS selectors (.foo) and as whitespace/quote-delimited
1399
+ // tokens within attribute values, covering both single-class ("foo") and multi-class ("foo bar") cases.
1400
+ function makePattern(classes) {
1401
+ return new RegExp(classes.map(c => String.raw `\.${c}\b|(?<=["'\s])${c}(?=["'\s])`).join('|'));
1402
+ }
1403
+ function writeInstructionMarker(instruction, codemodFilename, affectedFile) {
1404
+ // Write to node_modules/.kendo/migration/<basename(codemodFilename)>
1405
+ // kendo-cli reads the marker by looking up basename(codemod.file) in that directory
1406
+ const markerDir = path.join(process.cwd(), 'node_modules', '.kendo', 'migration');
1407
+ const markerPath = path.join(markerDir, path.basename(codemodFilename));
1408
+ try {
1409
+ fs.mkdirSync(markerDir, { recursive: true });
1410
+ const existing = fs.existsSync(markerPath) ? fs.readFileSync(markerPath, 'utf8') : '';
1411
+ let content = existing;
1412
+ if (!existing.includes(instruction)) {
1413
+ content += instruction + '\n';
1414
+ }
1415
+ const fileLine = ` - ${path.relative(process.cwd(), affectedFile)}`;
1416
+ if (!content.includes(fileLine)) {
1417
+ content += fileLine + '\n';
1418
+ }
1419
+ fs.writeFileSync(markerPath, content);
1420
+ }
1421
+ catch { /* suppress error */ }
1422
+ }
1423
+ function isApiChangeTarget(filePath) {
1424
+ const ext = path.extname(filePath);
1425
+ return ext === '.ts' || ext === '.html';
1426
+ }
1427
+ function isRenderingChangeTarget(filePath) {
1428
+ const ext = path.extname(filePath);
1429
+ return ext === '.ts' || ext === '.html' || ext === '.css' || ext === '.scss' || ext === '.sass' || ext === '.less';
1430
+ }
@@ -0,0 +1,48 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.aiInstructions = exports.aiInstructionsAlt = exports.aiInstructionsGridHeader = exports.aiInstructionsDraggableHeader = void 0;
8
+ exports.default = default_1;
9
+ const utils_1 = require("../utils");
10
+ exports.aiInstructionsDraggableHeader = `k-grid-draggable-header — removed from individual draggable column elements; now added to the Grid wrapper when the Grid is both groupable and reorderable.
11
+ Before: <th class="k-grid-draggable-header"> (on each draggable column)
12
+ After: <div class="k-grid k-grid-draggable-header"> (on the Grid wrapper when groupable and reorderable)
13
+ Update CSS selectors and test assertions that target .k-grid-draggable-header to account for the changed placement.`;
14
+ exports.aiInstructionsGridHeader = `k-grid-header — removed from non-scrollable Grids.
15
+ Before: <div class="k-grid-header"> present on all Grids.
16
+ After: <div class="k-grid-header"> only present on scrollable Grids.
17
+ Ensure CSS rules or selectors relying on .k-grid-header being present on non-scrollable Grids are updated.`;
18
+ exports.aiInstructionsAlt = `k-alt — removed from the Grid rows.
19
+ Before: <tr class="k-alt">
20
+ After: <tr> (no k-alt class)
21
+ Remove any CSS rules or selectors that target .k-alt rows in the Grid.`;
22
+ exports.aiInstructions = `Review your stylesheets, test files, and any code that references these classes:
23
+
24
+ ${exports.aiInstructionsDraggableHeader}
25
+
26
+ ${exports.aiInstructionsGridHeader}
27
+
28
+ ${exports.aiInstructionsAlt}`;
29
+ const classesDraggableHeader = ['k-grid-draggable-header'];
30
+ const patternDraggableHeader = (0, utils_1.makePattern)(classesDraggableHeader);
31
+ const classesGridHeader = ['k-grid-header'];
32
+ const patternGridHeader = (0, utils_1.makePattern)(classesGridHeader);
33
+ const classesAlt = ['k-alt'];
34
+ const patternAlt = (0, utils_1.makePattern)(classesAlt);
35
+ function default_1(fileInfo) {
36
+ if ((0, utils_1.isRenderingChangeTarget)(fileInfo.path)) {
37
+ if (patternDraggableHeader.test(fileInfo.source)) {
38
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructionsDraggableHeader, __filename, fileInfo.path);
39
+ }
40
+ if (patternGridHeader.test(fileInfo.source)) {
41
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructionsGridHeader, __filename, fileInfo.path);
42
+ }
43
+ if (patternAlt.test(fileInfo.source)) {
44
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructionsAlt, __filename, fileInfo.path);
45
+ }
46
+ }
47
+ return fileInfo.source;
48
+ }
@@ -0,0 +1,40 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.aiInstructions = void 0;
8
+ exports.default = default_1;
9
+ const utils_1 = require("../utils");
10
+ const editingDirectivePattern = /kendoGrid(ReactiveEditing|TemplateEditing|InCellEditing|ExternalEditing)/;
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, utils_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ if (filePath.endsWith('.html')) {
17
+ if (editingDirectivePattern.test(fileInfo.source)) {
18
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
19
+ }
20
+ return fileInfo.source;
21
+ }
22
+ let patternDetected = false;
23
+ (0, utils_1.htmlTransformer)(fileInfo, api, (templateContent) => {
24
+ if (editingDirectivePattern.test(templateContent)) {
25
+ patternDetected = true;
26
+ }
27
+ return templateContent;
28
+ });
29
+ if (patternDetected || editingDirectivePattern.test(fileInfo.source)) {
30
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
31
+ }
32
+ return fileInfo.source;
33
+ }
34
+ exports.aiInstructions = `The 'removeConfirmation' property of the Grid editing directives now defaults to 'true' in v19.
35
+
36
+ Before v19, row deletion was immediate with no confirmation dialog. Starting with v19, a built-in confirmation dialog is shown before removing a row.
37
+ If you want to restore the previous behavior and remove rows without a confirmation dialog, explicitly set 'removeConfirmation' to 'false'.
38
+ <kendo-grid [kendoGridReactiveEditing]="createFormGroup" [removeConfirmation]="false"></kendo-grid>
39
+
40
+ Review all Grid usages with editing directives. If you do not want a confirmation dialog on row deletion, add '[removeConfirmation]="false"' to the Grid`;
@@ -0,0 +1,23 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.aiInstructions = void 0;
8
+ exports.default = default_1;
9
+ const utils_1 = require("../utils");
10
+ exports.aiInstructions = `Review your stylesheets, test files, and any code that references the k-column-list-md class. It has been removed from the column list in adaptive mode.
11
+ Before: <div class="k-column-list k-column-list-md">
12
+ After: <div class="k-column-list k-column-list-lg">
13
+ Replace .k-column-list-md selectors with .k-column-list-lg in your styles and tests for the Grid column list in adaptive mode.`;
14
+ const classes = ['k-column-list-md', 'k-column-list'];
15
+ const pattern = (0, utils_1.makePattern)(classes);
16
+ function default_1(fileInfo) {
17
+ if ((0, utils_1.isRenderingChangeTarget)(fileInfo.path)) {
18
+ if (pattern.test(fileInfo.source)) {
19
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
20
+ }
21
+ }
22
+ return fileInfo.source;
23
+ }
@@ -27,11 +27,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  return result;
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.aiInstructions = void 0;
30
31
  exports.default = default_1;
31
32
  const utils_1 = require("../utils");
32
33
  const fs = __importStar(require("fs"));
33
34
  function default_1(fileInfo, api) {
34
35
  const filePath = fileInfo.path;
36
+ if (!(0, utils_1.isApiChangeTarget)(filePath)) {
37
+ return fileInfo.source;
38
+ }
35
39
  // Handle HTML files and inline templates
36
40
  const htmlResult = (0, utils_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, utils_1.attributeNameUpdate)(templateContent, 'kendo-grid', 'kendoGridGroupBinding', 'kendoGridBinding'));
37
41
  if (filePath.endsWith('.html')) {
@@ -46,3 +50,17 @@ function default_1(fileInfo, api) {
46
50
  const rootSource = j(htmlResult || fileInfo.source);
47
51
  return rootSource.toSource();
48
52
  }
53
+ exports.aiInstructions = `The 'kendoGridGroupBinding' directive has been removed and replaced by 'kendoGridBinding'.
54
+
55
+ The codemod renames the directive attribute automatically. However, 'kendoGridBinding' does not enable grouping by default — you must explicitly configure it:
56
+
57
+ Before:
58
+ <kendo-grid [kendoGridGroupBinding]="gridData" [group]="groups"></kendo-grid>
59
+
60
+ After:
61
+ <kendo-grid [kendoGridBinding]="gridData" [group]="groups" [groupable]="true"></kendo-grid>
62
+
63
+ Alternatively, handle grouping manually via the 'data' property. Set '[groupable]="true"' to show the group panel, bind '[group]' to track the active group descriptors, and handle the 'groupChange' event (or 'dataStateChange' if other data operations such as filtering or sorting are also active) to apply grouping using 'groupBy()' or 'process()' from '@progress/kendo-data-query':
64
+ <kendo-grid [data]="groupedData" [groupable]="true" [group]="groups" (groupChange)="onGroupChange($event)"></kendo-grid>
65
+
66
+ After the rename, add '[groupable]="true"' (or a 'GroupableSettings' object) to the Grid.`;
@@ -0,0 +1,47 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.aiInstructions = void 0;
8
+ exports.default = default_1;
9
+ const utils_1 = require("../utils");
10
+ const rowHeightPattern = /\[rowHeight\]|\[detailRowHeight\]/;
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, utils_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ if (filePath.endsWith('.html')) {
17
+ if (rowHeightPattern.test(fileInfo.source)) {
18
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
19
+ }
20
+ return fileInfo.source;
21
+ }
22
+ let patternDetected = false;
23
+ (0, utils_1.htmlTransformer)(fileInfo, api, (templateContent) => {
24
+ if (rowHeightPattern.test(templateContent)) {
25
+ patternDetected = true;
26
+ }
27
+ return templateContent;
28
+ });
29
+ if (patternDetected) {
30
+ (0, utils_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
31
+ }
32
+ return fileInfo.source;
33
+ }
34
+ exports.aiInstructions = `The Grid 'rowHeight' and 'detailRowHeight' inputs now set the actual DOM row height in v21.
35
+
36
+ Before v21, these properties were used internally for virtual scrolling calculations — they did not affect the rendered row height in the DOM.
37
+
38
+ Starting with v21, both inputs set the 'style.height' CSS attribute on each row's '<tr>' element directly, which changes the visual layout of rows:
39
+ - Rows are rendered at the specified pixel height.
40
+ - If row content requires more space than the specified height, the row still expands to fit the content.
41
+
42
+ Review all Grid usages that set '[rowHeight]' or '[detailRowHeight]'.
43
+ - If you set these values to match the natural row height, no change is required.
44
+ - If you set these values solely for virtual scrolling performance and did not intend to constrain the row height, verify that the rendered row height is still correct after upgrading.
45
+
46
+ Additionally, starting with v21, the 'pageSize' and 'skip' inputs are no longer required for virtual scrolling. The Grid manages its virtual scroll state internally, so you can remove these bindings if they were used solely for virtualization purposes.
47
+ `;
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIOpenEvent', 'GridAIAssistantOpenEvent');
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIPromptRequestEvent', 'GridAIAssistantRequestEvent');
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIPromptSettings', 'GridAIAssistantPromptSettings');
@@ -0,0 +1,17 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const utils_1 = require("../utils");
9
+ function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
13
+ const j = api.jscodeshift;
14
+ const rootSource = j(fileInfo.source);
15
+ (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIRequestData', 'GridAIRequestData');
16
+ return rootSource.toSource();
17
+ }
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIRequestOptions', 'GridAIRequestOptions');
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIResponseErrorEvent', 'GridAIAssistantResponseErrorEvent');
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.default = default_1;
8
8
  const utils_1 = require("../utils");
9
9
  function default_1(fileInfo, api) {
10
+ if (!(0, utils_1.isApiChangeTarget)(fileInfo.path)) {
11
+ return fileInfo.source;
12
+ }
10
13
  const j = api.jscodeshift;
11
14
  const rootSource = j(fileInfo.source);
12
15
  (0, utils_1.tsInterfaceTransformer)(fileInfo, rootSource, j, '@progress/kendo-angular-grid', 'GridToolbarAIWindowSettings', 'GridAIAssistantWindowSettings');
@@ -3362,6 +3362,7 @@ class ColumnResizingService {
3362
3362
  resizedColumns: this.resizedColumns,
3363
3363
  type: 'end'
3364
3364
  });
3365
+ this.resizedColumns?.forEach(({ column }) => column.resizeStartWidth = undefined);
3365
3366
  this.restoreInitialMaxMinWidths();
3366
3367
  this.adjacentColumn = null;
3367
3368
  this.draggedGroupColumn = null;
@@ -18448,7 +18449,10 @@ class ColumnHandleDirective {
18448
18449
  level: column.level
18449
18450
  };
18450
18451
  });
18451
- currentLeafs.forEach(column => column.width = 0);
18452
+ currentLeafs.forEach(column => {
18453
+ column.resizeStartWidth = column.width || headerWidth(this.element);
18454
+ column.width = 0;
18455
+ });
18452
18456
  this.service.measureColumns(columnInfo);
18453
18457
  }
18454
18458
  constructor(draggable, element, service, zone, cdr, ctx, columnInfoService) {
@@ -24242,8 +24246,8 @@ const packageMetadata = {
24242
24246
  productName: 'Kendo UI for Angular',
24243
24247
  productCode: 'KENDOUIANGULAR',
24244
24248
  productCodes: ['KENDOUIANGULAR'],
24245
- publishDate: 1776172268,
24246
- version: '23.4.0-develop.2',
24249
+ publishDate: 1776325098,
24250
+ version: '23.4.0-develop.4',
24247
24251
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
24248
24252
  };
24249
24253
 
@@ -7,7 +7,7 @@ export const packageMetadata = {
7
7
  "productCodes": [
8
8
  "KENDOUIANGULAR"
9
9
  ],
10
- "publishDate": 1776172268,
11
- "version": "23.4.0-develop.2",
10
+ "publishDate": 1776325098,
11
+ "version": "23.4.0-develop.4",
12
12
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
13
13
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-grid",
3
- "version": "23.4.0-develop.2",
3
+ "version": "23.4.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",
@@ -26,46 +26,75 @@
26
26
  "migrations": {
27
27
  "options": {
28
28
  "parser": "tsx",
29
- "pattern": "*.{ts,html}"
29
+ "pattern": "*.{ts,html,css,scss,sass,less}"
30
30
  },
31
31
  "codemods": {
32
+ "18": [
33
+ {
34
+ "description": "The Grid component has rendering changes that may affect custom styling.",
35
+ "file": "codemods/v18/grid-rendering-changes.js",
36
+ "instructionsOnly": true
37
+ }
38
+ ],
39
+ "19": [
40
+ {
41
+ "description": "The Grid editing directives removeConfirmation option now defaults to true",
42
+ "file": "codemods/v19/grid-removeconfirmation.js",
43
+ "instructionsOnly": true
44
+ },
45
+ {
46
+ "description": "The Grid component has rendering changes that may affect custom styling.",
47
+ "file": "codemods/v19/grid-rendering-changes.js",
48
+ "instructionsOnly": true
49
+ }
50
+ ],
32
51
  "20": [
33
52
  {
34
53
  "description": "The Grid's kendoGridGroupBinding directive is deprecated",
35
54
  "file": "codemods/v20/grid-kendogridgroupbinding.js",
36
- "prompt": "true"
55
+ "prompt": "false"
56
+ },
57
+ {
58
+ "description": "The Grid rowHeight and detailRowHeight inputs now set the row height",
59
+ "file": "codemods/v20/grid-rowheight.js",
60
+ "instructionsOnly": true
37
61
  }
38
62
  ],
39
63
  "21": [
40
64
  {
41
65
  "description": "Rename GridToolbarAIOpenEvent interface to GridAIAssistantOpenEvent",
42
66
  "file": "codemods/v21/grid-gridtoolbaraiopenevent.js",
43
- "prompt": "true"
67
+ "prompt": "false"
44
68
  },
45
69
  {
46
70
  "description": "Rename GridToolbarAIRequestOptions interface to GridAIRequestOptions",
47
71
  "file": "codemods/v21/grid-gridtoolbarairequestoptions.js",
48
- "prompt": "true"
72
+ "prompt": "false"
73
+ },
74
+ {
75
+ "description": "Rename GridToolbarAIRequestData interface to GridAIRequestData",
76
+ "file": "codemods/v21/grid-gridtoolbarairequestdata.js",
77
+ "prompt": "false"
49
78
  },
50
79
  {
51
80
  "description": "Rename GridToolbarAIWindowSettings interface to GridAIAssistantWindowSettings",
52
81
  "file": "codemods/v21/grid-gridtoolbaraiwindowsettings.js",
53
- "prompt": "true"
82
+ "prompt": "false"
54
83
  },
55
84
  {
56
85
  "description": "Rename GridToolbarAIPromptRequestEvent interface to GridAIAssistantRequestEvent",
57
86
  "file": "codemods/v21/grid-gridtoolbaraipromptrequestevent.js",
58
- "prompt": "true"
87
+ "prompt": "false"
59
88
  },
60
89
  {
61
90
  "description": "Rename GridToolbarAIResponseErrorEvent interface to GridAIAssistantResponseErrorEvent",
62
91
  "file": "codemods/v21/grid-gridtoolbarairesponseerrorevent.js",
63
- "prompt": "true"
92
+ "prompt": "false"
64
93
  },
65
94
  {
66
95
  "description": "Rename GridToolbarAIPromptSettings interface to GridAIAssistantPromptSettings",
67
96
  "file": "codemods/v21/grid-gridtoolbaraipromptsettings.js",
68
- "prompt": "true"
97
+ "prompt": "false"
69
98
  }
70
99
  ]
71
100
  }
@@ -73,7 +102,7 @@
73
102
  "package": {
74
103
  "productName": "Kendo UI for Angular",
75
104
  "productCode": "KENDOUIANGULAR",
76
- "publishDate": 1776172268,
105
+ "publishDate": 1776325098,
77
106
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
78
107
  }
79
108
  },
@@ -86,32 +115,32 @@
86
115
  "@progress/kendo-data-query": "^1.7.3",
87
116
  "@progress/kendo-drawing": "^1.24.1",
88
117
  "@progress/kendo-licensing": "^1.10.0",
89
- "@progress/kendo-angular-buttons": "23.4.0-develop.2",
90
- "@progress/kendo-angular-common": "23.4.0-develop.2",
91
- "@progress/kendo-angular-dateinputs": "23.4.0-develop.2",
92
- "@progress/kendo-angular-layout": "23.4.0-develop.2",
93
- "@progress/kendo-angular-navigation": "23.4.0-develop.2",
94
- "@progress/kendo-angular-dropdowns": "23.4.0-develop.2",
95
- "@progress/kendo-angular-excel-export": "23.4.0-develop.2",
96
- "@progress/kendo-angular-icons": "23.4.0-develop.2",
97
- "@progress/kendo-angular-indicators": "23.4.0-develop.2",
98
- "@progress/kendo-angular-inputs": "23.4.0-develop.2",
99
- "@progress/kendo-angular-conversational-ui": "23.4.0-develop.2",
100
- "@progress/kendo-angular-intl": "23.4.0-develop.2",
101
- "@progress/kendo-angular-l10n": "23.4.0-develop.2",
102
- "@progress/kendo-angular-label": "23.4.0-develop.2",
103
- "@progress/kendo-angular-menu": "23.4.0-develop.2",
104
- "@progress/kendo-angular-pager": "23.4.0-develop.2",
105
- "@progress/kendo-angular-pdf-export": "23.4.0-develop.2",
106
- "@progress/kendo-angular-popup": "23.4.0-develop.2",
107
- "@progress/kendo-angular-toolbar": "23.4.0-develop.2",
108
- "@progress/kendo-angular-upload": "23.4.0-develop.2",
109
- "@progress/kendo-angular-utils": "23.4.0-develop.2",
118
+ "@progress/kendo-angular-buttons": "23.4.0-develop.4",
119
+ "@progress/kendo-angular-common": "23.4.0-develop.4",
120
+ "@progress/kendo-angular-dateinputs": "23.4.0-develop.4",
121
+ "@progress/kendo-angular-layout": "23.4.0-develop.4",
122
+ "@progress/kendo-angular-navigation": "23.4.0-develop.4",
123
+ "@progress/kendo-angular-dropdowns": "23.4.0-develop.4",
124
+ "@progress/kendo-angular-excel-export": "23.4.0-develop.4",
125
+ "@progress/kendo-angular-icons": "23.4.0-develop.4",
126
+ "@progress/kendo-angular-indicators": "23.4.0-develop.4",
127
+ "@progress/kendo-angular-inputs": "23.4.0-develop.4",
128
+ "@progress/kendo-angular-conversational-ui": "23.4.0-develop.4",
129
+ "@progress/kendo-angular-intl": "23.4.0-develop.4",
130
+ "@progress/kendo-angular-l10n": "23.4.0-develop.4",
131
+ "@progress/kendo-angular-label": "23.4.0-develop.4",
132
+ "@progress/kendo-angular-menu": "23.4.0-develop.4",
133
+ "@progress/kendo-angular-pager": "23.4.0-develop.4",
134
+ "@progress/kendo-angular-pdf-export": "23.4.0-develop.4",
135
+ "@progress/kendo-angular-popup": "23.4.0-develop.4",
136
+ "@progress/kendo-angular-toolbar": "23.4.0-develop.4",
137
+ "@progress/kendo-angular-upload": "23.4.0-develop.4",
138
+ "@progress/kendo-angular-utils": "23.4.0-develop.4",
110
139
  "rxjs": "^6.5.3 || ^7.0.0"
111
140
  },
112
141
  "dependencies": {
113
142
  "tslib": "^2.3.1",
114
- "@progress/kendo-angular-schematics": "23.4.0-develop.2",
143
+ "@progress/kendo-angular-schematics": "23.4.0-develop.4",
115
144
  "@progress/kendo-common": "^1.0.1",
116
145
  "@progress/kendo-file-saver": "^1.0.0",
117
146
  "@progress/kendo-csv": "^1.0.0"
@@ -9,19 +9,19 @@ const schematics_1 = require("@angular-devkit/schematics");
9
9
  function default_1(options) {
10
10
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
11
11
  // peer deps of the dropdowns
12
- '@progress/kendo-angular-treeview': '23.4.0-develop.2',
13
- '@progress/kendo-angular-navigation': '23.4.0-develop.2',
12
+ '@progress/kendo-angular-treeview': '23.4.0-develop.4',
13
+ '@progress/kendo-angular-navigation': '23.4.0-develop.4',
14
14
  // peer dependency of kendo-angular-inputs
15
- '@progress/kendo-angular-dialog': '23.4.0-develop.2',
15
+ '@progress/kendo-angular-dialog': '23.4.0-develop.4',
16
16
  // peer dependency of kendo-angular-icons
17
17
  '@progress/kendo-svg-icons': '^4.0.0',
18
18
  // peer dependency of kendo-angular-layout
19
- '@progress/kendo-angular-progressbar': '23.4.0-develop.2',
19
+ '@progress/kendo-angular-progressbar': '23.4.0-develop.4',
20
20
  // transitive peer dependencies from toolbar
21
- '@progress/kendo-angular-indicators': '23.4.0-develop.2',
21
+ '@progress/kendo-angular-indicators': '23.4.0-develop.4',
22
22
  // transitive peer dependencies from conversational-ui
23
- '@progress/kendo-angular-menu': '23.4.0-develop.2',
24
- '@progress/kendo-angular-upload': '23.4.0-develop.2'
23
+ '@progress/kendo-angular-menu': '23.4.0-develop.4',
24
+ '@progress/kendo-angular-upload': '23.4.0-develop.4'
25
25
  } });
26
26
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
27
27
  }