blob: c621b56f76e0cfd37ab8b2659933fac69f60a715 [file] [log] [blame]
Adrien Béraud150b4782021-04-21 19:40:59 -04001import React, { useState } from 'react'
2import { Box, Button, Menu, MenuItem } from '@material-ui/core'
3import { useHistory, useParams } from "react-router-dom"
Adrien Béraud6ecaa402021-04-06 17:37:25 -04004import authManager from '../AuthManager'
Larbi Gharibe9af9732021-03-31 15:08:01 +01005
6export default function Header() {
Adrien Béraud150b4782021-04-21 19:40:59 -04007 const history = useHistory()
8 const [anchorEl, setAnchorEl] = useState(null)
9 const handleClick = (event) => setAnchorEl(event.currentTarget)
10 const handleClose = () => setAnchorEl(null)
11 const params = useParams()
Larbi Gharibe9af9732021-03-31 15:08:01 +010012
Adrien Béraud150b4782021-04-21 19:40:59 -040013 const goToAccountSelection = () => history.push(`/account`)
14 const goToAccountSettings = () => history.push(`/account/${params.accountId}/settings`)
Larbi Gharibe9af9732021-03-31 15:08:01 +010015
Adrien Béraud150b4782021-04-21 19:40:59 -040016 return (
17 <Box>
18 <Button aria-controls="simple-menu" aria-haspopup="true" onClick={handleClick}>
19 Menu
20 </Button>
21 <Menu
22 id="simple-menu"
23 anchorEl={anchorEl}
24 open={Boolean(anchorEl)}
25 onClose={handleClose}
26 >
27 <MenuItem onClick={goToAccountSelection}>Change account</MenuItem>
28 {params.accountId && <MenuItem onClick={goToAccountSettings}>Account settings</MenuItem>}
29 <MenuItem onClick={() => authManager.disconnect()}>Log out</MenuItem>
30 </Menu>
31 </Box>
32 )
Larbi Gharibe9af9732021-03-31 15:08:01 +010033}