Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3540 | Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3505 stevensc 1
import React, { createContext, useState } from 'react';
2
 
3
export const MenuContext = createContext({
4
  anchorEl: null,
5
  open: false,
6
  openMenu: () => {},
7
  closeMenu: () => {},
8
  handleClick: () => {}
9
});
10
 
11
export function MenuProvider({ children }) {
12
  const [anchorEl, setAnchorEl] = useState();
13
  const open = Boolean(anchorEl);
14
 
15
  const openMenu = (event) => {
16
    event.stopPropagation();
17
    setAnchorEl(event.currentTarget);
18
  };
19
 
20
  const closeMenu = (event) => {
21
    event.stopPropagation();
22
    setAnchorEl(null);
23
  };
24
 
25
  const handleClick = (onClick, event) => {
26
    event.stopPropagation();
27
    closeMenu();
28
    onClick();
29
  };
30
 
31
  return (
32
    <MenuContext.Provider
33
      value={{
34
        anchorEl,
35
        open,
36
        openMenu,
37
        closeMenu,
38
        handleClick
39
      }}
40
    >
41
      {children}
42
    </MenuContext.Provider>
43
  );
44
}