From b36fb8c84089f62761bd8bbbc6962cf4fcc5d9a0 Mon Sep 17 00:00:00 2001 From: ewelinagr Date: Mon, 3 Jun 2024 13:09:57 +0200 Subject: [PATCH 01/42] Change main menu, header and footer. --- .../public/public/images/icon_white.png | Bin 0 -> 5600 bytes .../public/public/images/logo_white.png | Bin 5600 -> 14091 bytes projects/mercury/src/App.theme.js | 60 +++++- projects/mercury/src/layout/Layout.js | 17 +- projects/mercury/src/layout/Layout.styles.js | 2 +- projects/mercury/src/layout/MainMenu.js | 204 ++++++++++-------- projects/mercury/src/layout/MenuDrawer.js | 18 +- .../mercury/src/layout/MenuDrawer.styles.js | 19 +- projects/mercury/src/layout/TopBar.js | 2 +- .../mercury/src/layout/WorkspaceLayout.js | 2 +- .../src/main/resources/icons/jupyter.svg | 24 +-- .../src/main/resources/icons/metadata.svg | 2 +- .../pluto/src/main/resources/icons/omics.svg | 2 +- 13 files changed, 215 insertions(+), 137 deletions(-) create mode 100644 projects/mercury/public/public/images/icon_white.png diff --git a/projects/mercury/public/public/images/icon_white.png b/projects/mercury/public/public/images/icon_white.png new file mode 100644 index 0000000000000000000000000000000000000000..6291bdf6a932e13fec7b73a511ec5ba6b430d679 GIT binary patch literal 5600 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 {}, - renderTopbar = () => -}) => { +const Layout = ({classes, renderMenu, renderMain = () => {}}) => { const [menuExpanded, setMenuExpanded] = useState(window.localStorage.getItem(LOCAL_STORAGE_MENU_KEY) !== 'false'); const [menuOpenDueToHover, setMenuOpenDueToHover] = useState(false); const [timeoutId, setTimeoutId] = useState(); @@ -88,7 +80,6 @@ const Layout = ({ return ( // The app itself consists of a topbar, a drawer and the actual page <> - {renderTopbar()} {renderAlert()} {renderMenu && ( )} -
+
{renderMain()}
-