Convert some components to Typescript

Gitlab: #30

Change-Id: I9fbd857ef93866609682fb46be8b04904ee4e66f
diff --git a/client/src/components/Header.tsx b/client/src/components/Header.tsx
new file mode 100644
index 0000000..00d5ebb
--- /dev/null
+++ b/client/src/components/Header.tsx
@@ -0,0 +1,31 @@
+import { Box, Button, Menu, MenuItem } from '@mui/material';
+import { MouseEvent, useState } from 'react';
+import { useNavigate, useParams } from 'react-router-dom';
+
+import authManager from '../AuthManager';
+
+export default function Header() {
+  const navigate = useNavigate();
+  const [anchorEl, setAnchorEl] = useState<HTMLButtonElement | null>(null);
+  const handleClick = (event: MouseEvent<HTMLButtonElement>) => setAnchorEl(event.currentTarget);
+  const handleClose = () => setAnchorEl(null);
+  const params = useParams();
+
+  const goToAccountSelection = () => navigate(`/account`);
+  const goToContacts = () => navigate(`/Contacts`);
+  const goToAccountSettings = () => navigate(`/account/${params.accountId}/settings`);
+
+  return (
+    <Box>
+      <Button aria-controls="simple-menu" aria-haspopup="true" onClick={handleClick}>
+        Menu
+      </Button>
+      <Menu id="simple-menu" anchorEl={anchorEl} open={Boolean(anchorEl)} onClose={handleClose}>
+        <MenuItem onClick={goToAccountSelection}>Change account</MenuItem>
+        <MenuItem onClick={goToContacts}>Contacts</MenuItem>
+        {params.accountId && <MenuItem onClick={goToAccountSettings}>Account settings</MenuItem>}
+        <MenuItem onClick={() => authManager.disconnect()}>Log out</MenuItem>
+      </Menu>
+    </Box>
+  );
+}