is there any sample how to build responsive menu ? I've added a few menu items but responsive does not work - it is mess
thanks
Two specific questions:
1. Does react kendo grid support a filter button in the same cell as the header cell? As in the jquery demo here: https://demos.telerik.com/kendo-ui/grid/filter-menu-customization. I could not find a filterable.mode property in the kendo components.
2. Does the react kendo grid support multi-column support? As in the jquery demo here: https://demos.telerik.com/kendo-ui/grid/multicolumnheaders
A more general question:
3. Are there other known limitations between the different implementations? I realize that's a complicated question.
Hello,
Straight to the problem:
My parent component prepares the data for the Gantt
async componentDidMount() {
const items = await
this
.utility.GetListItems();
const taskDataSourceWithInformation = await
this
.utility.GetKendoGanttDataSource(items);
this
.setState({
data: taskDataSourceWithInformation,
allProjects: items
});
}
const result =
this
.state.data ? (
<div>
<IconButton onClick={() =>
this
.setState({showPanel:
true
})}
/>
<GanttContainer data={
this
.state.data} />
</div>
) :
null
;
return
result;
}
First problem: When I click the button, that sets the showPanel variable to true (it does only that), the Gantt loses all its data, then when I click one of the Gantt view buttons, the data shows back.
However, i managed to workaround that with this method (i am not proud of it). I will appreciate it, if you give me better solution.
private onFilterButtonClick = async () => {
this
.selected = $(
"li.k-state-selected"
);
this
.setState(
{
showPanel:
true
},
() => {
$(
"li."
+
this
.selected[0].classList[1]).click();
}
);
};
Ok. Now i want to filter my Gantt data. When i pass different, filtered data source to the "GanttContainer" components (which contains the Gantt), it does not update.
I tried to set it with setDataSource, but i dont know where that must happen and how to do it.
Can you help me with both my problems please.
Best Regards!
Hello,
Is it possible to use functional HOC for CustomGridDetailRow like the one provided in the documentation (below) which is not leading to extra rendering of GridDetailRow?
Or it's a must to use only an instance of React.Component class/GridDetailRow class?
class CustomGridDetailRow extends GridDetailRow {
render() {
const detailData = this.props.dataItem.MasterField2;
return (
<div> This is detail template with another grid inside it <Grid scrollable="none" data={detailData} /></div>
);
}
}
<Grid data={this.state.data} detail={CustomGridDetailRow} >
<GridColumn field="MasterField1" />
</Grid>
The point is that if I try to use functional HOC inside detail prop (or just a function returning CustomGridComponent) there're some issues with rendering DetailRow (like additional re-rendering during scrolling). It seems that this variable inside detail property should be an instance of React.Component/GridDetailRow class, otherwise Grid component can't perform some internal logic based on lifecycle hooks.
Thanks in advance for any response.
I'm using the Kendo React Grid and Kendo React DateInput in an application and both, upon replacing the wrapped grid/DateInput components began causing my Jest tests to fail, not even rendering the mounted component.
Every test suite that mounts a component with a DateInput or Grid in the component tree fails with this error:
TypeError: _this.element.setCustomValidity is not a function
124 | ...passedProps,
125 | } as any;
> 126 | wrapper = Enzyme.mount(
| ^
127 | <
Provider
store={store}>
128 | <
MyComponent
{...props} />
129 | </
Provider
>
at DateInput._this.setValidity (node_modules/@progress/kendo-react-dateinputs/src/dateinput/DateInput.tsx:387:26)
at DateInput.Object.<
anonymous
>.DateInput.componentDidMount (node_modules/@progress/kendo-react-dateinputs/src/dateinput/DateInput.tsx:150:14)
at commitLifeCycles (node_modules/react-dom/cjs/react-dom.development.js:14685:22)
at commitAllLifeCycles (node_modules/react-dom/cjs/react-dom.development.js:15905:7)
at HTMLUnknownElement.callCallback (node_modules/react-dom/cjs/react-dom.development.js:145:14)
at invokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:193:27)
at HTMLUnknownElementImpl._dispatch (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:119:9)
at HTMLUnknownElementImpl.dispatchEvent (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:82:17)
at HTMLUnknownElementImpl.dispatchEvent (node_modules/jsdom/lib/jsdom/living/nodes/HTMLElement-impl.js:30:27)
at HTMLUnknownElement.dispatchEvent (node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:157:21)
at Object.invokeGuardedCallbackDev (node_modules/react-dom/cjs/react-dom.development.js:195:16)
at invokeGuardedCallback (node_modules/react-dom/cjs/react-dom.development.js:248:31)
at commitRoot (node_modules/react-dom/cjs/react-dom.development.js:16075:7)
at completeRoot (node_modules/react-dom/cjs/react-dom.development.js:17463:3)
at performWorkOnRoot (node_modules/react-dom/cjs/react-dom.development.js:17391:9)
at performWork (node_modules/react-dom/cjs/react-dom.development.js:17295:7)
at performSyncWork (node_modules/react-dom/cjs/react-dom.development.js:17267:3)
at requestWork (node_modules/react-dom/cjs/react-dom.development.js:17155:5)
at scheduleWork (node_modules/react-dom/cjs/react-dom.development.js:16949:5)
at scheduleRootUpdate (node_modules/react-dom/cjs/react-dom.development.js:17637:3)
at updateContainerAtExpirationTime (node_modules/react-dom/cjs/react-dom.development.js:17664:10)
at updateContainer (node_modules/react-dom/cjs/react-dom.development.js:17691:10)
at ReactRoot.Object.<
anonymous
>.ReactRoot.render (node_modules/react-dom/cjs/react-dom.development.js:17957:3)
at node_modules/react-dom/cjs/react-dom.development.js:18097:14
at unbatchedUpdates (node_modules/react-dom/cjs/react-dom.development.js:17518:10)
at legacyRenderSubtreeIntoContainer (node_modules/react-dom/cjs/react-dom.development.js:18093:5)
at Object.render (node_modules/react-dom/cjs/react-dom.development.js:18152:12)
at Object.render (node_modules/enzyme-adapter-react-16/build/ReactSixteenAdapter.js:314:114)
at new ReactWrapper (node_modules/enzyme/build/ReactWrapper.js:119:16)
at Object.mount (node_modules/enzyme/build/mount.js:21:10)
at generateMountedWrapper (ts/apps/myApp/components/MyComponent.test.tsx:126:20)
at Object.<
anonymous
> (ts/apps/myApp/components/MyComponent.test.tsx:330:5)
I just upgraded to use the react editor wrapper. The editor is showing up but not all options are available. These are the options I am passing, but it looks like it is just showing the default options. Any ideas?
options: {
tools: [
'bold',
'italic',
'underline',
'strikethrough',
{
name: 'foreColor',
palette: [
'24282D',
'F4F4F4',
'FFD200',
'F04C3E',
'00B050',
'363A3F',
'74777D',
'E4E5E7',
'F2C700',
'EB2D1E',
'FFFFFF',
'237932',
'33373b',
'676A6F',
'D9DADB',
'E5BD00',
'D71E0F',
'21852E',
'0070C0',
'44494F',
'81858B'
]
},
{
name: 'backColor',
palette: [
'24282D',
'F4F4F4',
'FFD200',
'F04C3E',
'00B050',
'363A3F',
'74777D',
'E4E5E7',
'F2C700',
'EB2D1E',
'FFFFFF',
'237932',
'33373b',
'676A6F',
'D9DADB',
'E5BD00',
'D71E0F',
'21852E',
'0070C0',
'44494F',
'81858B'
]
},
'formatting',
'fontSize',
'subscript',
'superscript',
'justifyLeft',
'justifyCenter',
'justifyRight',
'justifyFull',
'insertUnorderedList',
'insertOrderedList',
'indent',
'outdent',
'createLink',
'createTable',
'addColumnLeft',
'addColumnRight',
'addRowAbove',
'addRowBelow',
'deleteRow',
'deleteColumn',
'cleanFormatting',
'print'
],
pasteCleanup: {
all: false,
css: false,
keepNewLines: false,
msAllFormatting: true,
msConvertLists: true,
msTags: true,
none: false,
span: false
}
}
Can anyone confirm if the Kendo React Grids are supposed to be compatible with the Kendo Less Styles? When I attempt to use them with a compiled set of styles from the Kendo LESS sources in the @progress/kendo-ui package, the react grids filter blocks render in a broken, inoperable way as the Less style rules react badly with the classes on the filter cells.
The SASS themes work with it, but don't work with the Relerik Reports views.