Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3618 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 3618 Rev 3719
Línea 1... Línea 1...
1
import React, { createContext, useState } from 'react';
1
import React, { createContext, useState } from 'react';
2
 
2
 
3
export const MenuContext = createContext({
3
export const MenuContext = createContext({
4
  anchorEl: null,
4
  anchorEl: null,
5
  open: false,
5
  open: false,
6
  openMenu: () => {},
6
  openMenu: () => {},
7
  closeMenu: () => {},
7
  closeMenu: () => {},
8
  handleClick: () => {}
8
  handleClick: () => {}
9
});
9
});
10
 
10
 
11
export function MenuProvider({ children }) {
11
export function MenuProvider({ children }) {
12
  const [anchorEl, setAnchorEl] = useState();
12
  const [anchorEl, setAnchorEl] = useState();
13
  const open = Boolean(anchorEl);
13
  const open = Boolean(anchorEl);
14
 
14
 
15
  const openMenu = (element) => {
15
  const openMenu = (element) => {
16
    setAnchorEl(element);
16
    setAnchorEl(element);
17
  };
17
  };
18
 
18
 
19
  const closeMenu = () => {
19
  const closeMenu = () => {
20
    setAnchorEl(null);
20
    setAnchorEl(null);
21
  };
21
  };
22
 
22
 
23
  const handleClick = (onClick) => {
23
  const handleClick = (onClick) => {
24
    closeMenu();
24
    closeMenu();
25
    onClick();
25
    onClick();
26
  };
26
  };
27
 
27
 
28
  return (
28
  return (
29
    <MenuContext.Provider value={{ anchorEl, open, openMenu, closeMenu, handleClick }}>
29
    <MenuContext.Provider value={{ anchorEl, open, openMenu, closeMenu, handleClick }}>
30
      {children}
30
      {children}
31
    </MenuContext.Provider>
31
    </MenuContext.Provider>
32
  );
32
  );
33
}
33
}