Following the commands in the following article
https://www.telerik.com/kendo-jquery-ui/documentation/intro/installation/ecmascript
and the steps for version after February 2026 - https://www.telerik.com/kendo-jquery-ui/documentation/intro/installation/ecmascript
when running npm run scripts: custom command or npm run build: custom an error is thrown:
Error: spawn npx ENOENT
at ChildProcess._handle.onexit (node:internal/child_process:287:19)
at onErrorNT (node:internal/child_process:525:16)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21)
Emitted 'error' event on ChildProcess instance at:
at ChildProcess._handle.onexit (node:internal/child_process:293:12)
at onErrorNT (node:internal/child_process:525:16)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21) {
A custom folder containing a custom script wth only the needed components should be created.
Follow the stpes described in the link below:
When running the npm run build error appear Cannot find package 'glob' imported from …..\kendoui.for.jquery.2026.3.811.source\src\rolldown.config.mjs
There should be no error and the kendo scripts should be built as expected.
Errors during build process:
(replace-metadata plugin) [SOURCEMAP_BROKEN] Sourcemap is likely to be incorrect: a plugin (replace-metadata) was used to transform files, but didn't generate a sourcemap for the transformation. Consult the plugin documentation for help: https://rolldown.rs/guide/troubleshooting#warning-sourcemap-is-likely-to-be-incorrect
There should be no errors
1716119
In Kendu UI 2026 Q2 (version 520) file kendo.all.d.ts
The interface IChatOptions has a duplicate defintion for the messageTemplate
Line 3849:
messageTemplate?: MessageTemplateFunction | null;Lines 3916/3917
/** Template for rendering individual messages */
messageTemplate?: MessageTemplateFunction | null;
I am using the Kendo-UI Grid's resizeColumn method do change column widths programmatically (e.g., to distribute column widths by our own custom rules). I have noticed that doing so sometimes leads to unexpected results as demonstrated in this DOJO:
Assume a grid with two columns: one has a fixed size of 200px and the other has no explicit width set.
In the first example, we programmatically set the first column's width to 200px (which should not change anything since the column already is 200px wide.
grid.resizeColumn(column, 200);This works as expected.
In the second example, we programmatically set the first column's width first to 20px and then immediately to 200px. I would expect the final outcome to be the same, since the second column should compensate.
grid.resizeColumn(column, 20);
grid.resizeColumn(column, 200);However, the second column does not shrink and the overall grid grows larger instead. Doing this repeatedly causes the columns to grow larger and larger over time.
Of course, this is a simplified example and I do not call resizeColumn() twice right after each other.
The @progress/kendo-ui npm package creates the following dependency tree:
@progress/kendo-ui 2026.1.415
|
- @progress/kendo-pdfviewer-common ^0.6.4 -> 0.6.4
|
- pdfjs-dist 4.6.82 -> 4.6.82
|
- canvas ^2.11.2 -> 2.11.2
|
- @mapbox/node-pre-gyp ^1.0.0 -> 1.0.11
|
- tar ^6.1.11 -> 6.2.1All packages have been updated to the latest version possible.
Versions <= 7.5.10 of tar have multiple known vulnerabilities:
When you have a simple kendodropdown list that is set to adaptiveMode = "auto", resizing the browser throws. This can be reproduced on your demo pages.
Steps to reproduce:
kendo.virtuallist.js:2890 Uncaught TypeError: Cannot read properties of undefined (reading 'style')
To reproduce :
go to official dojo https://dojo.telerik.com/PfhfyBzh
select all text (ctrl+A) (or select text with image at the same time with mouse)
Start dragging the selection
---> the error occurs (check console devTools)
Uncaught TypeError: Cannot read properties of undefined (reading '_destroyResizeHandles')
The error occurs here :
let fe = u.extend({
create: function(e) {
let t = this;
a(e.body).on(`dragstart` + S, function() {
var t = x.nodes(e.getRange())
, n = !1;
t.forEach(function(e) {
e.nodeName === `IMG` && (n = !0)
}),
n && t.length > 1 && e.elementResizing._destroyResizeHandles()your algorithm find one image in the selection and assume we are resizing and try to call "_destroyResizeHandles"
I think you should test before calling this method so it should be :
n && t.length > 1 && e.elementResizing && e.elementResizing._destroyResizeHandles()
Create a grid with batch set to true and update a field value using the set method of the kendo.data.Model object in JavaScript. The grid cell will be marked as dirty but the "Save changes" or "Cancel changes" buttons will not display. If you click into another editable cell, then the buttons will display.
See https://dojo.telerik.com/TwTMSsrB and attached example.html.zip.
See attached image.png for example image.
If you create a grid with editable set to true, selectable set to one of the multiple options ("multiple, row" or "multiple, cell"), batch set to true and a column with editing disabled (either through the model or through the columns editable property), then when you update an editable cell and click the non-editable cell in the same row the "Save changes" and "Cancel changes" buttons do not appear.
See https://dojo.telerik.com/zAKmmTEU and attached example.html.zip
Notes:
Editable is disabled using a JavaScript function for UnitsInStock
{ field: "UnitsInStock", title: "Units In Stock", width: 120, editable: function() { return false; } },Editable is set to false in the schema model for Discontinued
Discontinued: { type: "boolean", editable: false },
In this example, if you change the value of a UnitPrice cell and then click one of the non-editable cells (UnitsInStock or Discontinued) in the same row, the UnitPrice cell will be marked as dirty, but the "Save changes" and "Cancel changes" buttons will not appear.
This appears to happen because of the following:
Stack trace:
n (kendo.all.min.js:9)See attached image.png for an example image.
Hello
Starting from version 2025.2.520:
Kendo Grid with NumericTextBox cell editor and "navigatable: true" exit edit cell state on double click/hold to select number inside editor.
Earlier versions did not have this issue.
Scenario:
Inside cell with NumericTextBox editor trying to select value without exit from edit cell state.
On click cell, that already in edit mode, switch to read mode (NumericTextBox disappears)
Desirable behavior:
Copy and paste to cell without exit and enter again in edit cell state.
Select all value without loosing editing cell state.
Dojo
When building with NPM, the glob is mismatched. This is currently related to the source code build.
Receiving the specific error message:
[!] SyntaxError: The requested module 'glob' does not provide an export named 'default'
When a user edits a cell/row and presses enter, the cell is marked as dirty. However, the Save and Cancel buttons remain disabled, thus the user should focus on a different cell before being able to save changes.
The cell is closed and marked as dirty, the 'Save changes and 'Cancel changes' buttons remain disabled.
The buttons should be enabled once the cell is marked as dirty.
cellClose: function(e){
e.sender._toggleToolbarEditingItemsVisibility()
},
Example: https://runner.telerik.io/fullscreen/yypoqSea
This example is based on the example from the docs with `navigatable: true` and enough data that the user needs to scroll in order to see the bottom row.
On Chrome on macOS, the filter menu cannot be used when `navigatable: true` and "Tap to click" is enabled in the macOS Trackpad settings. When clicking on the filter icon, the menu disappears very quickly (see screen recording). As a workaround, setting `navigatable` to false seems to resolve the problem. The same issue does not seem to occur on Safari, however, there is still odd behavior with the scrolling.
For some reason, screen size, resolution, and window settings impact the ability to reproduce the issue. The most reliable way for me to reproduce the issue was with Chrome in full screen on a 16-inch MacBook (13-inch works too) with the bookmarks bar showing and no external displays connected. Hiding the bookmarks bar or not using full screen seems to make it more difficult to reproduce.
This is a continuation of the following issue.
Probably related to:
https://source.chromium.org/chromium/chromium/src/+/62d86ddddc8fad157321e42e2acdb18b6ebba951
The animation container's aria-hidden attribute causes a console error in Chrome and Edge.
The animation container's aria-hidden attribute should not cause a console error in Chrome and Edge.
Hi,
We are facing issue on every popup and context menu open. aria-hidden property has been set to true by default while rendering the control.
Blocked aria-hidden on an element because the element that just received focus must not be hidden from assistive technology users. Avoid using aria-hidden on a focused element or its ancestor.
there is no binding for noData
e.g.
noData?: boolean | undefined; interface ChartOptions {
name?: string | undefined;
autoBind?: boolean | undefined;
axisDefaults?: ChartAxisDefaults | undefined;
categoryAxis?: ChartCategoryAxisItem | ChartCategoryAxisItem[] | undefined;
chartArea?: ChartChartArea | undefined;
dataSource?: any|any|kendo.data.DataSource | undefined;
legend?: ChartLegend | undefined;
panes?: ChartPane[] | undefined;
pannable?: boolean | ChartPannable | undefined;
pdf?: ChartPdf | undefined;
persistSeriesVisibility?: boolean | undefined;
plotArea?: ChartPlotArea | undefined;
renderAs?: string | undefined;
series?: ChartSeriesItem[] | undefined;
seriesColors?: any;
seriesDefaults?: ChartSeriesDefaults | undefined;
theme?: string | undefined;
subtitle?: string | ChartSubtitle | undefined;
title?: string | ChartTitle | undefined;
tooltip?: ChartTooltip | undefined;
transitions?: boolean | undefined;
valueAxis?: ChartValueAxisItem | ChartValueAxisItem[] | undefined;
xAxis?: ChartXAxisItem | ChartXAxisItem[] | undefined;
yAxis?: ChartYAxisItem | ChartYAxisItem[] | undefined;
zoomable?: boolean | ChartZoomable | undefined;
axisLabelClick?(e: ChartAxisLabelClickEvent): void;
dataBound?(e: ChartDataBoundEvent): void;
drag?(e: ChartDragEvent): void;
dragEnd?(e: ChartDragEndEvent): void;
dragStart?(e: ChartDragStartEvent): void;
legendItemClick?(e: ChartLegendItemClickEvent): void;
legendItemHover?(e: ChartLegendItemHoverEvent): void;
legendItemLeave?(e: ChartLegendItemLeaveEvent): void;
noteClick?(e: ChartNoteClickEvent): void;
noteHover?(e: ChartNoteHoverEvent): void;
noteLeave?(e: ChartNoteLeaveEvent): void;
paneRender?(e: ChartPaneRenderEvent): void;
plotAreaClick?(e: ChartPlotAreaClickEvent): void;
plotAreaHover?(e: ChartPlotAreaHoverEvent): void;
plotAreaLeave?(e: ChartPlotAreaLeaveEvent): void;
render?(e: ChartRenderEvent): void;
select?(e: ChartSelectEvent): void;
selectEnd?(e: ChartSelectEndEvent): void;
selectStart?(e: ChartSelectStartEvent): void;
seriesClick?(e: ChartSeriesClickEvent): void;
seriesHover?(e: ChartSeriesHoverEvent): void;
seriesOver?(e: ChartSeriesOverEvent): void;
seriesLeave?(e: ChartSeriesLeaveEvent): void;
zoom?(e: ChartZoomEvent): void;
zoomEnd?(e: ChartZoomEndEvent): void;
zoomStart?(e: ChartZoomStartEvent): void;
}
var chart = $("#chart").data("kendoChart");
var series = [];
$(theData.Serieses).each(function (index) {
series.push({
name: theData.Serieses[index].Name,
field: theData.Serieses[index].Name,
data: theData.Serieses[index].SeriesPoints,
xField: "X",
yField: "Y",
color: theData.Serieses[index].Colour,
markers: {
type: theData.Serieses[index].Shape
}
});
});
chart.setOptions({ series: series, noData: series.length == 0 });
chart.redraw();
console.log(chart.options);When updating a chart after instantiation, because noData defaults to true, the overlay is shown immediately
if you try and set noData via setOptions then redraw(), the overlay is still in place
Honestly, this should have been marked as a breaking change as every single chart has to be updated to force noData to false just to show initially
Hello,
My use case:
On grid dataBound, I am iterating over the table rows to perform some piece of custom logic on the row based off of the backing dataItem. Our production site is using version 2024.1.130, and everything is working great. Our next release we've updated to version 2024.2.514, and when we try adding a record, we get an error; when we try to access the dataItem of the last table-row - the dataItem is undefined. The grid.items() in my case is an array of size 21, and the internal _data array is size 20.
Repro conditions (as far as I can tell):
My workaround:
Simply perform a null check on the dataItem before doing the logic. We are calling DataSource.read in the DataSource.sync success callback anyway, so the grid will reload and the dataBound event will be handled afresh.
I've created the below dojo snippet to demonstrate a simplified version of my use case. I tested with 2024.1.130 and seems to work fine. I noticed the issue starting at version 2024.1.319.
https://dojo.telerik.com/INbSBrSg
A note: No, I don't actually use the internal _data property in my code, just for debugging purposes :)
Thanks!
-Alexa
There is an issue with the .k-sorted class being applied to the last column in the grid when the actual column is not visible. It also is not updating the k-sorted when a sort is applied after the grid was created.
This seems to be an issue in the latest release if the column sorted on is hidden, the last column in the grid gets the class. I also noticed that sorting a column does not apply the k-sorted class to the correct column: https://dojo.telerik.com/@dojolee/eFIbaSUn