From ff141a8f7e6ccf35dca8423b7e1bcc935f92f7c6 Mon Sep 17 00:00:00 2001 From: Niklas <198754647+BlankAccountsUsername@users.noreply.github.com> Date: Wed, 18 Jun 2025 17:31:34 +0200 Subject: [PATCH] add drawer menu --- .../src/components/{header.tsx => Header.tsx} | 47 +++++++++++++++++-- 1 file changed, 44 insertions(+), 3 deletions(-) rename code/frontend/src/components/{header.tsx => Header.tsx} (54%) diff --git a/code/frontend/src/components/header.tsx b/code/frontend/src/components/Header.tsx similarity index 54% rename from code/frontend/src/components/header.tsx rename to code/frontend/src/components/Header.tsx index 3210f76..351fb46 100644 --- a/code/frontend/src/components/header.tsx +++ b/code/frontend/src/components/Header.tsx @@ -1,7 +1,10 @@ import "./header.css"; import React, { useState, useRef, useEffect } from "react"; -import { Menu, MenuItem } from '@mui/material'; - +import { Divider, List, ListItem, ListItemButton, ListItemIcon, ListItemText, Menu, MenuItem, SwipeableDrawer } from '@mui/material'; +import Box from '@mui/material/Box'; +import InboxIcon from "@mui/icons-material/Inbox"; +import MailIcon from '@mui/icons-material/Mail'; +import MenuIcon from '@mui/icons-material/Menu'; // TODO: Dinge so umstrukturieren, dass der State für das offene menü in Header ist und das Menü auch in Header, sodass es mit width 100% die volle breite einnehmen kann @@ -12,6 +15,37 @@ function Header() { const toggleMenu = () => { setIsOpen(!isOpen); }; + const iconList = [InboxIcon, MailIcon, InboxIcon, MailIcon, InboxIcon, MailIcon]; + + const DrawerList = ( + setIsOpen(false)}> + + {["Inbox", "Starred", "Send email", "Drafts"].map((text, index) => ( + + + + {index % 2 === 0 ? : } + + + + + ))} + + + + {["All mail", "Trash", "Spam"].map((text, index) => ( + + + + {index % 2 === 0 ? : } + + + + + ))} + + + ); return (
@@ -22,7 +56,14 @@ function Header() {

{isOpen? close menu : menu}
- + setIsOpen(false)} + onOpen={() => setIsOpen(true)} + > + {DrawerList} +
); }