import React, { createElement, forwardRef } from 'react'
import {
AppBar as RAAppBar,
MenuItemLink,
useTranslate,
usePermissions,
getResources,
} from 'react-admin'
import { useSelector } from 'react-redux'
import { makeStyles, MenuItem, ListItemIcon, Divider } from '@material-ui/core'
import ViewListIcon from '@material-ui/icons/ViewList'
import InfoIcon from '@material-ui/icons/Info'
import { AboutDialog } from '../dialogs'
import PersonalMenu from './PersonalMenu'
import ActivityPanel from './ActivityPanel'
import UserMenu from './UserMenu'
import config from '../config'
const useStyles = makeStyles((theme) => ({
root: {
color: theme.palette.text.secondary,
},
active: {
color: theme.palette.text.primary,
},
icon: { minWidth: theme.spacing(5) },
}))
const AboutMenuItem = forwardRef(({ onClick, ...rest }, ref) => {
const classes = useStyles(rest)
const translate = useTranslate()
const [open, setOpen] = React.useState(false)
const handleOpen = () => {
setOpen(true)
}
const handleClose = () => {
onClick && onClick()
setOpen(false)
}
const label = translate('menu.about')
return (
<>
>
)
})
const settingsResources = (resource) =>
resource.hasList &&
resource.options &&
resource.options.subMenu === 'settings'
const CustomUserMenu = ({ onClick, ...rest }) => {
const translate = useTranslate()
const resources = useSelector(getResources)
const classes = useStyles(rest)
const { permissions } = usePermissions()
const renderSettingsMenuItemLink = (resource) => {
const label = translate(`resources.${resource.name}.name`, {
smart_count: 2,
})
return (
}
onClick={onClick}
sidebarIsOpen={true}
/>
)
}
return (
<>
{config.devActivityPanel && permissions === 'admin' && }
{resources.filter(settingsResources).map(renderSettingsMenuItemLink)}
>
)
}
const AppBar = (props) => } />
export default AppBar