From 0dccd3f2672ceb1ef718228fce9e02943e5da5da Mon Sep 17 00:00:00 2001 From: Niklas <198754647+BlankAccountsUsername@users.noreply.github.com> Date: Sun, 29 Jun 2025 17:29:05 +0200 Subject: [PATCH] reformat Header.tsx, fix index.tsx --- code/frontend/src/components/Header.tsx | 238 ++++++++++++------------ code/frontend/src/index.tsx | 16 +- 2 files changed, 128 insertions(+), 126 deletions(-) diff --git a/code/frontend/src/components/Header.tsx b/code/frontend/src/components/Header.tsx index 4b2b282..c2ab78d 100644 --- a/code/frontend/src/components/Header.tsx +++ b/code/frontend/src/components/Header.tsx @@ -1,12 +1,12 @@ import "./header.css"; import React, { useState } from "react"; import { - List, - ListItem, - ListItemButton, - ListItemIcon, - ListItemText, - SwipeableDrawer, + List, + ListItem, + ListItemButton, + ListItemIcon, + ListItemText, + SwipeableDrawer, } from "@mui/material"; import Box from "@mui/material/Box"; import AddAPhotoIcon from "@mui/icons-material/AddAPhoto"; @@ -16,124 +16,124 @@ import InfoIcon from "@mui/icons-material/Info"; import LogoutIcon from "@mui/icons-material/Logout"; import ExitToAppIcon from "@mui/icons-material/ExitToApp"; import FollowTheSignsIcon from "@mui/icons-material/FollowTheSigns"; -import { useNavigate, replace } from "react-router-dom"; +import { useNavigate } from "react-router-dom"; import { useAuth } from "../api/Auth"; function Header() { - interface ListItemAttributes { - text: string; - icon: React.ElementType; - onClick: () => void; - onlyShowWhen: "loggedIn" | "loggedOut" | "always"; - } - const navigate = useNavigate(); - const [isOpen, setIsOpen] = useState(false); - const toggleMenu = () => { - setIsOpen(!isOpen); - }; - const { logout, user } = useAuth(); - const ListItems: ListItemAttributes[] = [ - { - text: "Feed", - icon: DynamicFeedIcon, - onClick: () => navigate("/feed", { replace: true }), - onlyShowWhen: "always", - }, - { - text: "Create Post", - icon: AddAPhotoIcon, - onClick: () => navigate("/createpost", { replace: true }), - onlyShowWhen: "loggedIn", - }, - { - text: "Profile", - icon: PersonIcon, - onClick: () => navigate("/profile", { replace: true }), - onlyShowWhen: "loggedIn", - }, - { - text: "About", - icon: InfoIcon, - onClick: () => navigate("/about", { replace: true }), - onlyShowWhen: "always", - }, - { - text: "Log Out", - icon: LogoutIcon, - onClick: logout, - onlyShowWhen: "loggedIn", - }, - { - text: "Log In", - icon: ExitToAppIcon, - onClick: () => navigate("/login", { replace: true }), - onlyShowWhen: "loggedOut", - }, - { - text: "Sign Up", - icon: FollowTheSignsIcon, - onClick: () => navigate("/register", { replace: true }), - onlyShowWhen: "loggedOut", - }, - ]; + interface ListItemAttributes { + text: string; + icon: React.ElementType; + onClick: () => void; + onlyShowWhen: "loggedIn" | "loggedOut" | "always"; + } + const navigate = useNavigate(); + const [isOpen, setIsOpen] = useState(false); + const toggleMenu = () => { + setIsOpen(!isOpen); + }; + const { logout, user } = useAuth(); + const ListItems: ListItemAttributes[] = [ + { + text: "Feed", + icon: DynamicFeedIcon, + onClick: () => navigate("/feed", { replace: true }), + onlyShowWhen: "always", + }, + { + text: "Create Post", + icon: AddAPhotoIcon, + onClick: () => navigate("/createpost", { replace: true }), + onlyShowWhen: "loggedIn", + }, + { + text: "Profile", + icon: PersonIcon, + onClick: () => navigate("/profile", { replace: true }), + onlyShowWhen: "loggedIn", + }, + { + text: "About", + icon: InfoIcon, + onClick: () => navigate("/about", { replace: true }), + onlyShowWhen: "always", + }, + { + text: "Log Out", + icon: LogoutIcon, + onClick: logout, + onlyShowWhen: "loggedIn", + }, + { + text: "Log In", + icon: ExitToAppIcon, + onClick: () => navigate("/login", { replace: true }), + onlyShowWhen: "loggedOut", + }, + { + text: "Sign Up", + icon: FollowTheSignsIcon, + onClick: () => navigate("/register", { replace: true }), + onlyShowWhen: "loggedOut", + }, + ]; - const DrawerList = ( - setIsOpen(false)}> - - {ListItems.map((ListItemObject, index) => - ListItemObject.onlyShowWhen == "always" || - (ListItemObject.onlyShowWhen == "loggedIn" && user) || - (ListItemObject.onlyShowWhen == "loggedOut" && !user) ? ( - - - - {React.createElement(ListItemObject.icon)} - - - - - ) : null - )} - - - ); + const DrawerList = ( + setIsOpen(false)}> + + {ListItems.map((ListItemObject, index) => + ListItemObject.onlyShowWhen == "always" || + (ListItemObject.onlyShowWhen == "loggedIn" && user) || + (ListItemObject.onlyShowWhen == "loggedOut" && !user) ? ( + + + + {React.createElement(ListItemObject.icon)} + + + + + ) : null + )} + + + ); - return ( - <> -
- featherIcon -

Feather Feed

- menu -
- setIsOpen(false)} - onOpen={() => setIsOpen(true)} - > - {DrawerList} - - - ); + return ( + <> +
+ featherIcon +

Feather Feed

+ menu +
+ setIsOpen(false)} + onOpen={() => setIsOpen(true)} + > + {DrawerList} + + + ); } export default Header; diff --git a/code/frontend/src/index.tsx b/code/frontend/src/index.tsx index 7902391..1a987aa 100644 --- a/code/frontend/src/index.tsx +++ b/code/frontend/src/index.tsx @@ -1,9 +1,9 @@ -import React from 'react'; -import ReactDOM from 'react-dom/client'; -import './index.css'; -import App from './App'; -import reportWebVitals from './reportWebVitals'; -import { StyledEngineProvider } from '@mui/material'; +import React from "react"; +import ReactDOM from "react-dom/client"; +import "./index.css"; +import App from "./App"; +import reportWebVitals from "./reportWebVitals"; +import { StyledEngineProvider } from "@mui/material"; const root = ReactDOM.createRoot( document.getElementById("root") as HTMLElement @@ -11,7 +11,9 @@ const root = ReactDOM.createRoot( root.render( - + + + );