@@ -23,8 +23,7 @@ export function ContextMenuProvider({
2323export function ContextMenu ( { menu } : ContextMenuWrapperProps ) {
2424 const menuRef = useRef ( null ) ;
2525
26- const position = menu . position ;
27- const itemGroups = menu . itemGroups ;
26+ const { position, itemGroups } = menu ;
2827
2928 useEffect ( ( ) => {
3029 if ( ! menu . isOpen ) {
@@ -50,42 +49,38 @@ export function ContextMenu({ menu }: ContextMenuWrapperProps) {
5049 setOpen = { menu . close }
5150 justify = "start"
5251 >
53- { itemGroups . map (
54- ( itemGroup : ContextMenuItemGroup , groupIndex : number ) => {
55- return (
56- < div
57- key = { `menu-group-${ groupIndex } ` }
58- data-testid = { `menu-group-${ groupIndex } ` }
59- >
60- { itemGroup . items . map (
61- ( item : ContextMenuItem , itemIndex : number ) => {
62- return (
63- < MenuItem
64- key = { `menu-group-${ groupIndex } -item-${ itemIndex } ` }
65- data-text = { item . label }
66- data-testid = { `menu-group-${ groupIndex } -item-${ itemIndex } ` }
67- onClick = { ( evt : React . MouseEvent ) => {
68- item . onAction ?.( evt ) ;
69- menu . close ( ) ;
70- } }
71- >
72- { item . label }
73- </ MenuItem >
74- ) ;
75- }
76- ) }
77- { groupIndex < itemGroups . length - 1 && (
78- < div
79- key = { `menu-group-${ groupIndex } -separator` }
80- data-testid = { `menu-group-${ groupIndex } -separator` }
52+ { itemGroups . map ( ( items : ContextMenuItemGroup , groupIndex : number ) => {
53+ return (
54+ < div
55+ key = { `menu-group-${ groupIndex } ` }
56+ data-testid = { `menu-group-${ groupIndex } ` }
57+ >
58+ { items . map ( ( item : ContextMenuItem , itemIndex : number ) => {
59+ return (
60+ < MenuItem
61+ key = { `menu-group-${ groupIndex } -item-${ itemIndex } ` }
62+ data-text = { item . label }
63+ data-testid = { `menu-group-${ groupIndex } -item-${ itemIndex } ` }
64+ onClick = { ( evt : React . MouseEvent ) => {
65+ item . onAction ?.( evt ) ;
66+ menu . close ( ) ;
67+ } }
8168 >
82- < MenuSeparator />
83- </ div >
84- ) }
85- </ div >
86- ) ;
87- }
88- ) }
69+ { item . label }
70+ </ MenuItem >
71+ ) ;
72+ } ) }
73+ { groupIndex < itemGroups . length - 1 && (
74+ < div
75+ key = { `menu-group-${ groupIndex } -separator` }
76+ data-testid = { `menu-group-${ groupIndex } -separator` }
77+ >
78+ < MenuSeparator />
79+ </ div >
80+ ) }
81+ </ div >
82+ ) ;
83+ } ) }
8984 </ Menu >
9085 </ div >
9186 ) ;
0 commit comments