@@ -18,39 +18,39 @@ type ReplaceFieldTypes<TSource, TReplacement> = {
1818 [ P in keyof TSource ] : P extends keyof TReplacement ? TReplacement [ P ] : TSource [ P ] ;
1919}
2020
21- type IContextMenuOptionsNarrowedEvents < TKey = any > = {
22- onContentReady ?: ( ( e : ContentReadyEvent < TKey > ) => void ) ;
23- onDisposing ?: ( ( e : DisposingEvent < TKey > ) => void ) ;
24- onHidden ?: ( ( e : HiddenEvent < TKey > ) => void ) ;
25- onHiding ?: ( ( e : HidingEvent < TKey > ) => void ) ;
26- onInitialized ?: ( ( e : InitializedEvent < TKey > ) => void ) ;
27- onItemClick ?: ( ( e : ItemClickEvent < TKey > ) => void ) ;
28- onItemContextMenu ?: ( ( e : ItemContextMenuEvent < TKey > ) => void ) ;
29- onItemRendered ?: ( ( e : ItemRenderedEvent < TKey > ) => void ) ;
30- onPositioning ?: ( ( e : PositioningEvent < TKey > ) => void ) ;
31- onShowing ?: ( ( e : ShowingEvent < TKey > ) => void ) ;
32- onShown ?: ( ( e : ShownEvent < TKey > ) => void ) ;
21+ type IContextMenuOptionsNarrowedEvents < TItem = any , TKey = any > = {
22+ onContentReady ?: ( ( e : ContentReadyEvent < TItem , TKey > ) => void ) ;
23+ onDisposing ?: ( ( e : DisposingEvent < TItem , TKey > ) => void ) ;
24+ onHidden ?: ( ( e : HiddenEvent < TItem , TKey > ) => void ) ;
25+ onHiding ?: ( ( e : HidingEvent < TItem , TKey > ) => void ) ;
26+ onInitialized ?: ( ( e : InitializedEvent < TItem , TKey > ) => void ) ;
27+ onItemClick ?: ( ( e : ItemClickEvent < TItem , TKey > ) => void ) ;
28+ onItemContextMenu ?: ( ( e : ItemContextMenuEvent < TItem , TKey > ) => void ) ;
29+ onItemRendered ?: ( ( e : ItemRenderedEvent < TItem , TKey > ) => void ) ;
30+ onPositioning ?: ( ( e : PositioningEvent < TItem , TKey > ) => void ) ;
31+ onShowing ?: ( ( e : ShowingEvent < TItem , TKey > ) => void ) ;
32+ onShown ?: ( ( e : ShownEvent < TItem , TKey > ) => void ) ;
3333}
3434
35- type IContextMenuOptions < TKey = any > = React . PropsWithChildren < ReplaceFieldTypes < Properties < TKey > , IContextMenuOptionsNarrowedEvents < TKey > > & IHtmlOptions & {
36- dataSource ?: Properties < TKey > [ "dataSource" ] ;
35+ type IContextMenuOptions < TItem = any , TKey = any > = React . PropsWithChildren < ReplaceFieldTypes < Properties < TItem , TKey > , IContextMenuOptionsNarrowedEvents < TItem , TKey > > & IHtmlOptions & {
36+ dataSource ?: Properties < TItem , TKey > [ "dataSource" ] ;
3737 itemRender ?: ( ...params : any ) => React . ReactNode ;
3838 itemComponent ?: React . ComponentType < any > ;
39- defaultItems ?: Array < dxContextMenuItem > ;
39+ defaultItems ?: Array < any | dxContextMenuItem > ;
4040 defaultSelectedItem ?: any ;
4141 defaultVisible ?: boolean ;
42- onItemsChange ?: ( value : Array < dxContextMenuItem > ) => void ;
42+ onItemsChange ?: ( value : Array < any | dxContextMenuItem > ) => void ;
4343 onSelectedItemChange ?: ( value : any ) => void ;
4444 onVisibleChange ?: ( value : boolean ) => void ;
4545} >
4646
47- interface ContextMenuRef < TKey = any > {
48- instance : ( ) => dxContextMenu < TKey > ;
47+ interface ContextMenuRef < TItem = any , TKey = any > {
48+ instance : ( ) => dxContextMenu < TItem , TKey > ;
4949}
5050
5151const ContextMenu = memo (
5252 forwardRef (
53- < TKey = any > ( props : React . PropsWithChildren < IContextMenuOptions < TKey > > , ref : ForwardedRef < ContextMenuRef < TKey > > ) => {
53+ < TItem = any , TKey = any > ( props : React . PropsWithChildren < IContextMenuOptions < TItem , TKey > > , ref : ForwardedRef < ContextMenuRef < TItem , TKey > > ) => {
5454 const baseRef = useRef < ComponentRef > ( null ) ;
5555
5656 useImperativeHandle ( ref , ( ) => (
@@ -87,7 +87,7 @@ const ContextMenu = memo(
8787 ] ) , [ ] ) ;
8888
8989 return (
90- React . createElement ( BaseComponent < React . PropsWithChildren < IContextMenuOptions < TKey > > > , {
90+ React . createElement ( BaseComponent < React . PropsWithChildren < IContextMenuOptions < TItem , TKey > > > , {
9191 WidgetClass : dxContextMenu ,
9292 ref : baseRef ,
9393 subscribableOptions,
@@ -100,7 +100,7 @@ const ContextMenu = memo(
100100 ) ;
101101 } ,
102102 ) ,
103- ) as < TKey = any > ( props : React . PropsWithChildren < IContextMenuOptions < TKey > > & { ref ?: Ref < ContextMenuRef < TKey > > } ) => ReactElement | null ;
103+ ) as < TItem = any , TKey = any > ( props : React . PropsWithChildren < IContextMenuOptions < TItem , TKey > > & { ref ?: Ref < ContextMenuRef < TItem , TKey > > } ) => ReactElement | null ;
104104
105105
106106// owners:
0 commit comments