import React from 'react'; import { useDispatch } from 'react-redux'; import IconButton from '@material-ui/core/IconButton'; import Menu from '@material-ui/core/Menu'; import MenuItem from '@material-ui/core/MenuItem'; import MoreVertIcon from '@material-ui/icons/MoreVert'; import { wipeDisc, listContent } from '../redux/actions'; import { actions as appActions } from '../redux/app-feature'; import { useShallowEqualSelector } from '../utils'; import Link from '@material-ui/core/Link'; export const TopMenu = function() { const dispatch = useDispatch(); let { mainView } = useShallowEqualSelector(state => state.appState); const [menuAnchorEl, setMenuAnchorEl] = React.useState(null); const menuOpen = Boolean(menuAnchorEl); const handleMenuClick = (event: React.MouseEvent) => { setMenuAnchorEl(event.currentTarget); }; const handleMenuClose = () => { setMenuAnchorEl(null); }; const handleWipeDisc = () => { dispatch(wipeDisc()); handleMenuClose(); }; const handleRefresh = () => { dispatch(listContent()); handleMenuClose(); }; const handleExit = () => { dispatch(appActions.setState('WELCOME')); handleMenuClose(); }; const handleShowAbout = () => { dispatch(appActions.showAboutDialog(true)); handleMenuClose(); }; const menuItems = []; if (mainView === 'MAIN') { menuItems.push( Refresh ); menuItems.push( Wipe Disc ); menuItems.push( Exit ); } menuItems.push( About ); menuItems.push( Fork me on GitHub ); return ( {menuItems} ); };