Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3694 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3719 stevensc 1
import React, { useContext } from 'react';
2
import { IconButton, MenuItem as MuiMenuItem, Menu as MuiMenu } from '@mui/material';
3
import MoreVert from '@mui/icons-material/MoreVert';
4
 
5
import { MenuContext } from './MenuContext';
6
 
7
export function MenuContent({ icon, children, style, ...props }) {
8
  const { anchorEl, open, openMenu, closeMenu } = useContext(MenuContext);
9
 
10
  return (
11
    <>
12
      <IconButton
13
        onClick={(event) => {
14
          event.stopPropagation();
15
          openMenu(event.currentTarget);
16
        }}
17
        style={style}
18
        {...props}
19
      >
20
        {icon ? icon : <MoreVert />}
21
      </IconButton>
22
      <MuiMenu
23
        anchorEl={anchorEl}
24
        open={open}
25
        onClose={(event) => {
26
          event.stopPropagation();
27
          closeMenu();
28
        }}
29
        anchorOrigin={{
30
          vertical: 'center',
31
          horizontal: 'center'
32
        }}
33
        transformOrigin={{
34
          vertical: 'top',
35
          horizontal: 'right'
36
        }}
37
      >
38
        {children}
39
      </MuiMenu>
40
    </>
41
  );
42
}
43
 
44
export function MenuItem({ onClick, children }) {
45
  const { handleClick } = useContext(MenuContext);
46
 
47
  return (
48
    <MuiMenuItem
49
      onClick={(event) => {
50
        event.stopPropagation();
51
        handleClick(onClick);
52
      }}
53
    >
54
      {children}
55
    </MuiMenuItem>
56
  );
57
}