Hi,
Not sure what the preferred way to report a problem is. I have posted it on GitHub as well:
https://github.com/telerik/kendo-react/issues/1519
Could someone help me out with this issue?
Thank you in advance.
Hello,
when using the StrictMode we get an UncaughtError when using the PopupComponent. Fe. when using the Date/Time-Picker.
ERROR
Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.
at checkForNestedUpdates (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:27287:11)
at scheduleUpdateOnFiber (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:25470:3)
at Object.enqueueSetState (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:14067:7)
at Component.setState (webpack-internal:///./node_modules/react/cjs/react.development.js:355:16)
at PopupWithoutContext.componentDidUpdate (webpack-internal:///./node_modules/@progress/kendo-react-popup/dist/es/PopupWithoutContext.js:285:18)
at commitLayoutEffectOnFiber (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:23328:30)
at commitLayoutMountEffects_complete (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:24683:9)
at commitLayoutEffects_begin (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:24669:7)
at commitLayoutEffects_begin (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:24651:11)
at commitLayoutEffects (webpack-internal:///./node_modules/react-dom/cjs/react-dom.development.js:24607:3)
The above error occurred in the <PopupComponent> component:
at PopupWithoutContext (webpack-internal:///./node_modules/@progress/kendo-react-popup/dist/es/PopupWithoutContext.js:97:28)
at eval (webpack-internal:///./node_modules/@progress/kendo-react-popup/dist/es/Popup.js:38:67)
at div
at AsyncFocusBlur (webpack-internal:///./node_modules/@progress/kendo-react-common/dist/es/hocs/AsyncFocusBlur.js:30:23)
at TimePickerWithoutContext (webpack-internal:///./node_modules/@progress/kendo-react-dateinputs/dist/es/timepicker/TimePicker.js:87:28)
at eval (webpack-internal:///./node_modules/@progress/kendo-react-common/dist/es/hocs/withPropsContext.js:28:95)
at component
at Field (webpack-internal:///./node_modules/@progress/kendo-react-form/dist/es/Field.js:37:22)
...
Hello,
Seems the link to the GridColumnMenu accessibility page from the DataGrid accessibility page is broken.
Our tools are also warning us about empty links, caused by the GridColumnMenu button. How would we solve these?
Thank you,
Kristiyan Dimitrov
https://codesandbox.io/s/keen-panka-vctttd?file=/app/main.tsx
In the attached video I am showing the steps taken to reproduce the bug from the reproduction link. Basically if you change the year in DatePicker's calendar - no matter which year you select - the year gets reset back to 1911. I was not able to reproduce this in Kendo's CodeSandbox examples until I noticed that they were using the legacy ReactDOM.render() instead of the new React 18's createRoot. As soon as I replaced it I was able to reproduce the bug.
Another strange observation is that I am able to reproduce this bug in only half of my tries after refresh, another colleague reproduces it in 20-25% of his tries, so it doesn't happen all the time but eventually it will. That's why I've recorded a video on a fresh reload of the attached reproduction. Also, you can sometimes see the year is already wrong after selecting it, or after subsequently selecting the month, or sometimes you don't see the year is reset to 1911 until after you select the specific date and the popup closes.
Although there are other ways to reproduce this issue, the one shown in the video is the easiest to hit the bad scenario. Also, we were not able to reproduce the issue on the DateTimePicker, although it seems to use the same Calendar component underneath.
Our assumptions having previously reported similar problems in Kendo after migrating to React 18 is that due to the concurrent rendering / batching of state updates in React 18's createRoot - something breaks the virtual scroll used in the calendar (in the video when I point to 1912 being the next year after the selected 2021, if we scroll a bit, the virtual scroll picks up and updates the incorrect years) so we end up with stale data for the year when selecting the month/date. This means that there might be other unwanted side effects that we just haven't stumbled upon.
This is a severe bug for our application's end users as they are unable to change the year in the date picker reliably. Falling back to the deprecated ReactDOM.render is not an option.
The issue can be seen on your demo at https://www.telerik.com/kendo-react-ui/components/grid/
Steps:
1) Load the demo from https://www.telerik.com/kendo-react-ui/components/grid/
2) Click on (x) in customerID grouping
3) Look at the console and see the line with exception:
The problem is that `e.originalEvent.target` is an svg object and it's className property is an object, not a string. The object is `SVGAnimatedString {baseVal: '', animVal: ''}` and it doesn't have the method indexOf.
Please fix asap.
Trying to drag an event in the scheduler duplicates (doubles) the event drag hints, but only in DayView.
Reproduction:
https://codesandbox.io/p/sandbox/still-cloud-xrrx72?file=%2Fapp%2Fmain.tsx%3A21%2C26
Workaround:
The problem occurs when the event data doesn't have isAllDay property set. Even if you simply set it to false seems to resolve the issue. Problem is - Kendo's docs say that "The DataItem type does not limit the user to a specific fields in the data array", however the presence of this field is mandatory for the proper functioning of the DayView.
Hello,
After updating the kendo version in my project to "^5.1.0" I've noticed that some errors are appearing in our console when we are trying to resize items in the Scheduler.
"use-resize-item.js:53 Unable to preventDefault inside passive event listener invocation."
I have attached a video with the error.
Thanks!
Hello,
i am new to React and Kendo React UI.
I am reading the documentation for Gantt, and if i understand it correctly i can customize header column (headerCell?), but I dont know how. Is there any examle ?
I wound like to customize the column with dates.
Thank you, Matjaz Reberc
Actual results:
Aria label attribute is not defined for button in 'Insert image' dialogue.
Narrator is announcing as 'No file chosen, choose file, button'.
Expected results:
Aria label attribute should be defined for button in 'Insert image' dialogue.
User Impact:
Adding effective form labels is absolutely necessary to make forms accessible. The purpose of form elements such as a checkboxes, radio buttons, input fields, etc. is often clear for sighted users, even if the form element is not programmatically labeled. This isn't usually the case for screen reader users. Adding a label to all form elements eliminates ambiguity and contributes to a more accessible product.
Hi Team,
###Current Behavior
When displaying checkboxes, they are not aligned for nodes with children vs. nodes without children
### Example
https://stackblitz.com/edit/react-rqvush?file=app/main.jsx
### Expected Behaviour
Nodes checkboxes should be aligned the same regardless of if they have children.
###Version
4.8.0
Thanks and Kind Regards,
Grant
Looking at the JSDoc for for `toDataSourceRequestString` and `toDataSourceRequest`, they both appear to have JSDoc above them, showing the parameter as:
* @param {DataRequestState} state - The state that will be serialized.
Should this actually have `@param {DataSourceRequestState}`?
Given the simple example:
const RatingContainer = () => {
const [ratingValue, setRatingValue] = useState(0);
const clearRating = () => {
setRatingValue(0);
}
const onRatingChange = (event) => {
setRatingValue(event.value);
}
return <div>
<Rating
value={ratingValue}
onChange={onRatingChange}
/>
<Button
onClick={clearRating}
>
Clear
</Button>
</div>
}
export default RatingContainer;
The Rating component behaves as expected when updating `ratingValue` through the Rating component. However, when I want to clear the rating value with the 'Clear' button to update the `ratingValue`, the number of stars displayed doesn't update reflect the value of `ratingValue`.
Here is a subsection of my package.json file.
"@progress/kendo-data-query": "^1.6.0",
"@progress/kendo-drawing": "^1.17.5",
"@progress/kendo-licensing": "^1.3.0",
"@progress/kendo-react-animation": "^5.13.0",
"@progress/kendo-react-buttons": "^5.13.0",
"@progress/kendo-react-charts": "^5.13.0",
"@progress/kendo-react-common": "^5.13.0",
"@progress/kendo-react-data-tools": "^5.13.0",
"@progress/kendo-react-dateinputs": "^5.13.0",
"@progress/kendo-react-dialogs": "^5.13.0",
"@progress/kendo-react-dropdowns": "^5.13.0",
"@progress/kendo-react-editor": "^5.13.0",
"@progress/kendo-react-excel-export": "^5.13.0",
"@progress/kendo-react-form": "^5.13.0",
"@progress/kendo-react-grid": "^5.13.0",
"@progress/kendo-react-indicators": "^5.13.0",
"@progress/kendo-react-inputs": "^5.13.0",
"@progress/kendo-react-intl": "^5.13.0",
"@progress/kendo-react-labels": "^5.13.0",
"@progress/kendo-react-layout": "^5.13.0",
"@progress/kendo-react-listview": "^5.13.0",
"@progress/kendo-react-notification": "^5.13.0",
"@progress/kendo-react-pdf": "^5.13.0",
"@progress/kendo-react-progressbars": "^5.13.0",
"@progress/kendo-react-tooltip": "^5.13.0",
"@progress/kendo-react-treelist": "^5.13.0",
"@progress/kendo-react-treeview": "^5.13.0",
"@progress/kendo-react-upload": "^5.13.0",
"@progress/kendo-svg-icons": "1.4.2",
"@progress/kendo-theme-bootstrap": "^5.2.0",
Controlled TextaArea componenet with autoSize and rows properties.
const App = () => {
const [state, setState] = useState();
return (
<TextArea
value={state}
onChange={(e) => setState(e.value)}
autoSize={true}
rows={2}
/>
);
};
Add couple text lines to extend TextArea size and remove these empty lines in any way
Content from TextArea field is removed but TextArea height stays the same, doesn't come back to it's initial value. It's different comparing to example from your docs where example contains uncontrolled component.
Controlled TextaArea componenet with autoSize and rows properties.
const App = () => {
const [state, setState] = useState();
return (
<TextArea
value={state}
onChange={(e) => setState(e.value)}
autoSize={true}
rows={4}
/>
);
};
and styles like these
.k-textarea textarea {
border: 1px solid blue;
}
Start typing anything
Height of textarea component is decreasing
There is a bug when rendering nested `PanelBarItem` components into a `PanelBar`. This error began in version 8.0 and still exists in 8.2.0.
In the linked example sandbox, you can see that I am rendering an empty array of children and it causes an error. This used to not cause any issues.
An empty array is needed because we render some `PanelBarItems` that come from an AJAX query and so the children starts off as an empty array until the requests completes.
Thank you,
Ryan
Title basically says it all. Issue can be easily observed in the basic Multiselect with virtualization example:
What seems strange is that I cannot reproduce this issue with the combobox virtualization, although I found a somewhat similar bug submitted for the combobox - https://github.com/telerik/kendo-react/issues/1450
Hi team,
Im my example (see here), I've added a 'name' attribute to the 'Persons' resource data, and changed the textField mapping to use the 'name' field, however the scheduler is still displaying the results of the 'text' attribute.
Leading me to think that the scheduler is hardcoded to only look for the text attribute, because if its changed/removed, the scheudler does not display anything, regardless of what the 'textField' value is.
Please advise.
Thanks,
Grant
I would like to add two tables side by side in Telerik Editor two tables side-by-side like I would in google docs for ex:
Hi,
I would like to be able to specify a Grid Column template for the data without having to replicate the entire cell and its properties. Please see below for justification:
Consider the following example of KendoReact Grid Cell customisation: https://www.telerik.com/kendo-react-ui/components/grid/styling/#toc-adding-custom-cells
Following this approach results in the loss of a lot of properties from the grid cell compared with 'default' cells e.g.
<td colspan="1" class="" role="gridcell" aria-colindex="1" aria-selected="false" data-grid-col-index="0">Chai</td>
<td style="background-color: rgba(55, 180, 0, 0.32);">18 <span class="k-icon k-i-sort-asc-sm"></span></td>
These properties are important for many reasons including accessibility. There is another example of KendoReact Grid Cell customisation that preserves these properties here: https://www.telerik.com/kendo-react-ui/components/grid/cells/#toc-customization
e.g.
<td colspan="1" class="" role="gridcell" aria-colindex="4" aria-selected="false" data-grid-col-index="3">39</td>
<td colspan="1" role="gridcell" aria-colindex="5" aria-selected="false" data-grid-col-index="4" style="color: red;">false</td>
However, there is a considerable amount of code required to achieve this:
const CustomCell = (props) => {
const field = props.field || "";
const value = props.dataItem[field];
const navigationAttributes = useTableKeyboardNavigation(props.id);
return (
<td
style={{
color: value ? props.myProp[0].color : props.myProp[1].color,
}}
colSpan={props.colSpan}
role={"gridcell"}
aria-colindex={props.ariaColumnIndex}
aria-selected={props.isSelected}
{...{
[GRID_COL_INDEX_ATTRIBUTE]: props.columnIndex,
}}
{...navigationAttributes}
>
{value === null ? "" : props.dataItem[field].toString()}
</td>
);
};
I would like to be able to define a template for a cell without having to specify these properties every time.
Kind regards,
David