From 40a268ab184051f96b6081e9ba81bf1fc85f9df2 Mon Sep 17 00:00:00 2001 From: Daniel C <122758391+danielcj2@users.noreply.github.com> Date: Fri, 26 Jul 2024 12:39:18 -0400 Subject: [PATCH] Updated layout (#450) * Updated layout * Fixed error * Changed integration background to white --- Client/src/Components/Avatar/index.jsx | 2 +- .../Charts/Servers/serverStatus.css | 6 +- .../Dashboard/DashboardMenu/index.css | 20 -- .../Dashboard/DashboardMenu/index.jsx | 84 ------- .../Dashboard/DashboardMenuButton/index.css | 23 -- .../Dashboard/DashboardMenuButton/index.jsx | 32 --- .../Dashboard/DashboardSidebar/index.css | 30 --- .../Dashboard/DashboardSidebar/index.jsx | 27 --- Client/src/Components/Integrations/index.css | 0 Client/src/Components/Integrations/index.jsx | 71 ------ Client/src/Components/NavBar/index.css | 12 +- Client/src/Components/NavBar/index.jsx | 192 +++++++--------- Client/src/Components/Sidebar/index.css | 35 +++ Client/src/Components/Sidebar/index.jsx | 64 ++++++ Client/src/Layouts/HomeLayout/index.css | 63 +++++- Client/src/Layouts/HomeLayout/index.jsx | 14 +- Client/src/Pages/Account/index.jsx | 11 +- Client/src/Pages/Incidents/index.jsx | 8 +- Client/src/Pages/Integrations/index.css | 14 ++ Client/src/Pages/Integrations/index.jsx | 134 +++++++---- Client/src/Pages/Maintenance/index.jsx | 7 +- Client/src/Pages/Monitors/Configure/index.jsx | 11 +- .../Pages/Monitors/CreateMonitor/index.jsx | 11 +- Client/src/Pages/Monitors/Details/index.jsx | 10 +- Client/src/Pages/Monitors/index.css | 208 ++---------------- Client/src/Pages/Monitors/index.jsx | 61 +++-- Client/src/Pages/NotFound/index.jsx | 4 + Client/src/Pages/Settings/index.jsx | 3 - Client/src/Pages/Status/index.jsx | 7 +- Client/src/Utils/PathMap.js | 10 - .../src/assets/Images/Icon-chevron-down.png | Bin 170 -> 0 bytes Client/src/assets/Images/Icon-chevron-up.png | Bin 171 -> 0 bytes Client/src/assets/Images/Icon-link-gray.png | Bin 633 -> 0 bytes .../assets/Images/Icon-maintenance-gray.png | Bin 744 -> 0 bytes .../src/assets/Images/Icon-monitor-gray.png | Bin 897 -> 0 bytes .../assets/Images/Icon-open-in-tab-gray.png | Bin 375 -> 0 bytes Client/src/assets/Images/Icon-search-gray.png | Bin 495 -> 0 bytes .../Images/Icon-setting-actions-gray.png | Bin 761 -> 0 bytes .../src/assets/Images/Icon-setting-gray.png | Bin 863 -> 0 bytes Client/src/assets/Images/Icon-signal-gray.png | Bin 718 -> 0 bytes .../src/assets/Images/Icon-support-gray.png | Bin 878 -> 0 bytes .../src/assets/Images/Icon-warning-gray.png | Bin 462 -> 0 bytes .../Images/maintenance_window_frame.svg | 9 - Client/src/assets/icons/icon-red-error-0.svg | 3 - Client/src/assets/icons/incidents.svg | 3 + Client/src/assets/icons/integrations.svg | 3 + Client/src/assets/icons/maintenance.svg | 3 + .../monitors.svg} | 0 Client/src/assets/icons/page-speed.svg | 3 + Client/src/assets/icons/settings.svg | 6 +- Client/src/assets/icons/status-pages.svg | 3 + Client/src/assets/icons/support.svg | 3 + Client/src/assets/react.svg | 1 - Client/src/index.css | 3 +- 54 files changed, 441 insertions(+), 773 deletions(-) delete mode 100644 Client/src/Components/Dashboard/DashboardMenu/index.css delete mode 100644 Client/src/Components/Dashboard/DashboardMenu/index.jsx delete mode 100644 Client/src/Components/Dashboard/DashboardMenuButton/index.css delete mode 100644 Client/src/Components/Dashboard/DashboardMenuButton/index.jsx delete mode 100644 Client/src/Components/Dashboard/DashboardSidebar/index.css delete mode 100644 Client/src/Components/Dashboard/DashboardSidebar/index.jsx delete mode 100644 Client/src/Components/Integrations/index.css delete mode 100644 Client/src/Components/Integrations/index.jsx create mode 100644 Client/src/Components/Sidebar/index.css create mode 100644 Client/src/Components/Sidebar/index.jsx delete mode 100644 Client/src/Utils/PathMap.js delete mode 100644 Client/src/assets/Images/Icon-chevron-down.png delete mode 100644 Client/src/assets/Images/Icon-chevron-up.png delete mode 100644 Client/src/assets/Images/Icon-link-gray.png delete mode 100644 Client/src/assets/Images/Icon-maintenance-gray.png delete mode 100644 Client/src/assets/Images/Icon-monitor-gray.png delete mode 100644 Client/src/assets/Images/Icon-open-in-tab-gray.png delete mode 100644 Client/src/assets/Images/Icon-search-gray.png delete mode 100644 Client/src/assets/Images/Icon-setting-actions-gray.png delete mode 100644 Client/src/assets/Images/Icon-setting-gray.png delete mode 100644 Client/src/assets/Images/Icon-signal-gray.png delete mode 100644 Client/src/assets/Images/Icon-support-gray.png delete mode 100644 Client/src/assets/Images/Icon-warning-gray.png delete mode 100644 Client/src/assets/Images/maintenance_window_frame.svg delete mode 100644 Client/src/assets/icons/icon-red-error-0.svg create mode 100644 Client/src/assets/icons/incidents.svg create mode 100644 Client/src/assets/icons/integrations.svg create mode 100644 Client/src/assets/icons/maintenance.svg rename Client/src/assets/{Images/Icon-monitor-gray.svg => icons/monitors.svg} (100%) create mode 100644 Client/src/assets/icons/page-speed.svg create mode 100644 Client/src/assets/icons/status-pages.svg create mode 100644 Client/src/assets/icons/support.svg delete mode 100644 Client/src/assets/react.svg diff --git a/Client/src/Components/Avatar/index.jsx b/Client/src/Components/Avatar/index.jsx index 98cc01072..ebb669cf6 100644 --- a/Client/src/Components/Avatar/index.jsx +++ b/Client/src/Components/Avatar/index.jsx @@ -35,7 +35,7 @@ const Avatar = ({ src, small, sx }) => { src ? src : user?.avatarImage ? image : "/static/images/avatar/2.jpg" } sx={{ - fontSize: small ? "12px" : "20px", + fontSize: small ? "13px" : "20px", display: "inline-flex", "&::before": { content: `""`, diff --git a/Client/src/Components/Charts/Servers/serverStatus.css b/Client/src/Components/Charts/Servers/serverStatus.css index b3cad9429..dd15e3e9b 100644 --- a/Client/src/Components/Charts/Servers/serverStatus.css +++ b/Client/src/Components/Charts/Servers/serverStatus.css @@ -1,5 +1,5 @@ :root { - --spacing-general-0: 10px 25px; + --spacing-general-0: 12px 18px; --spacing-general-1: 20px; --color-border-0: #eaecf0; --border-radius-0: 4px; @@ -12,17 +12,19 @@ } .server-status-tile { - min-width: 250px; + min-width: 100px; width: calc(100% - 310px); padding: var(--spacing-general-0); border: 1px solid var(--color-border-0); border-radius: var(--border-radius-0); + background-color: var(--env-var-color-8); } .server-status-tile-title { font-size: var(--font-size-0); font-weight: bold; margin-bottom: calc(var(--spacing-general-1) / 2); + color: var(--env-var-color-1); } .server-status-tile-value { diff --git a/Client/src/Components/Dashboard/DashboardMenu/index.css b/Client/src/Components/Dashboard/DashboardMenu/index.css deleted file mode 100644 index 3c58afdb7..000000000 --- a/Client/src/Components/Dashboard/DashboardMenu/index.css +++ /dev/null @@ -1,20 +0,0 @@ -.dashboard-menu-container { - display: flex; - flex-direction: column; - padding: 20px; -} - -.icon-container { - display: flex; - align-items: center; - margin-bottom: 12px; -} - -.text-container { - display: flex; - align-items: center; -} - -.dashboard-menu-text { - margin-left: 8px; -} diff --git a/Client/src/Components/Dashboard/DashboardMenu/index.jsx b/Client/src/Components/Dashboard/DashboardMenu/index.jsx deleted file mode 100644 index 68b4dec99..000000000 --- a/Client/src/Components/Dashboard/DashboardMenu/index.jsx +++ /dev/null @@ -1,84 +0,0 @@ -import "./index.css"; -import DashboardMenuButton from "../DashboardMenuButton"; - -import Monitors from "../../../assets/Images/Icon-monitor-gray.png"; -import Incidents from "../../../assets/Images/Icon-warning-gray.png"; -import SensorsIcon from "../../../assets/Images/Icon-signal-gray.png"; -import AllInclusiveIcon from "../../../assets/Images/Icon-link-gray.png"; -import MaintenanceIcon from "../../../assets/Images/Icon-maintenance-gray.png"; -import SettingsIcon from "../../../assets/Images/Icon-setting-gray.png"; -import React, { useState, useEffect } from "react"; -import { useNavigate, useLocation } from "react-router-dom"; -import pathMap from "../../../Utils/PathMap"; - -/** - * @component - * DashboardMenu component displays a menu with icons and corresponding text. - * Each menu item consists of an icon and a text label. - * - * @returns {JSX.Element} The JSX element representing the DashboardMenu component. - */ - -function DashboardMenu() { - const [activeButton, setActiveButton] = useState(null); - const navigate = useNavigate(); - const location = useLocation(); - - useEffect(() => { - setActiveButton(location.pathname); - }, [location]); - - const handleClick = (title, path) => { - setActiveButton(title); - navigate(path); - }; - - return ( -
- {DashboardMenuButton( - Monitors, - "Monitors", - "/monitors", - activeButton === "/monitors", - () => handleClick(pathMap["/monitors"], "/monitors") - )} - {DashboardMenuButton( - Incidents, - "Incidents", - "/incidents", - activeButton === "/incidents", - () => handleClick(pathMap["/incidents"], "/incidents") - )} - {DashboardMenuButton( - SensorsIcon, - "Status Pages", - "/status", - activeButton === "/status", - () => handleClick(pathMap["/status"], "/status") - )} - {DashboardMenuButton( - AllInclusiveIcon, - "Integrations", - "/integrations", - activeButton === "/integrations", - () => handleClick(pathMap["/integrations"], "/integrations") - )} - {DashboardMenuButton( - MaintenanceIcon, - "Maintenance", - "/maintenance", - activeButton === "/maintenance", - () => handleClick(pathMap["/maintenance"], "/maintenance") - )} - {DashboardMenuButton( - SettingsIcon, - "Settings", - "/settings", - activeButton === "/settings", - () => handleClick(pathMap["/settings"], "/settings") - )} -
- ); -} - -export default DashboardMenu; diff --git a/Client/src/Components/Dashboard/DashboardMenuButton/index.css b/Client/src/Components/Dashboard/DashboardMenuButton/index.css deleted file mode 100644 index 0966effc3..000000000 --- a/Client/src/Components/Dashboard/DashboardMenuButton/index.css +++ /dev/null @@ -1,23 +0,0 @@ -.icon-container { - padding: 8px 15px; -} - -.icon-container:hover { - background-color: var(--env-var-color-13); - border-radius: var(--env-var-radius-1); - cursor: pointer; -} - -.icon-container.active { - background-color: var(--env-var-color-13); - border-radius: var(--env-var-radius-1); -} - -.icon { - width: var(--env-var-img-width-1); -} - -.dashboard-menu-text { - font-size: var(--env-var-font-size-medium); - color: var(--env-var-color-12); -} diff --git a/Client/src/Components/Dashboard/DashboardMenuButton/index.jsx b/Client/src/Components/Dashboard/DashboardMenuButton/index.jsx deleted file mode 100644 index 34a463ff9..000000000 --- a/Client/src/Components/Dashboard/DashboardMenuButton/index.jsx +++ /dev/null @@ -1,32 +0,0 @@ -import "./index.css"; -import React, { useState } from "react"; -import { useNavigate } from "react-router-dom"; - -/** - * Renders a menu button with an icon and title. - * - * @component - * @param {React.ElementType} icon - The icon component to be rendered. - * @param {string} title - The title of the menu button. - * @returns {React.ReactElement} The rendered menu button component. - */ - -const DashboardMenuButton = (icon, title, to, isActive, onClick) => { - const handleClick = () => { - onClick(); - }; - - return ( -
- Monitors -
- {title} -
-
- ); -}; - -export default DashboardMenuButton; diff --git a/Client/src/Components/Dashboard/DashboardSidebar/index.css b/Client/src/Components/Dashboard/DashboardSidebar/index.css deleted file mode 100644 index 38b327535..000000000 --- a/Client/src/Components/Dashboard/DashboardSidebar/index.css +++ /dev/null @@ -1,30 +0,0 @@ -.dashboard-sidebar { - height: calc(100vh - var(--env-var-nav-bar-height)); - width: 250px; - border: 1px solid var(--color-border-0); - border-top: none; - border-bottom: none; - top: 64px; - position: sticky; - z-index: 100; - display: flex; - flex-direction: column; - justify-content: space-between; -} - -.support-container { - display: flex; - align-items: center; - padding: 28px 35px; - margin-bottom: 30px; -} - -.support-text { - font-size: var(--env-var-font-size-medium); - color: var(--env-var-color-12); -} - -.support-icon { - width: var(--env-var-img-width-1); - margin-right: 8px; -} diff --git a/Client/src/Components/Dashboard/DashboardSidebar/index.jsx b/Client/src/Components/Dashboard/DashboardSidebar/index.jsx deleted file mode 100644 index 815fe861d..000000000 --- a/Client/src/Components/Dashboard/DashboardSidebar/index.jsx +++ /dev/null @@ -1,27 +0,0 @@ -import DashboardMenu from "../DashboardMenu"; -import SvgIcon from "@mui/material/SvgIcon"; -import "./index.css"; -import SupportIcon from "../../../assets/Images/Icon-support-gray.png"; - -/** - * @component - * DashboardSidebar component serves as a sidebar containing the DashboardMenu and a Support icon at the bottom. - * - * @returns {JSX.Element} The JSX element representing the DashboardSidebar component. - */ - -function DashboardSidebar() { - return ( -
-
- -
-
- SupportIcon - Support -
-
- ); -} - -export default DashboardSidebar; diff --git a/Client/src/Components/Integrations/index.css b/Client/src/Components/Integrations/index.css deleted file mode 100644 index e69de29bb..000000000 diff --git a/Client/src/Components/Integrations/index.jsx b/Client/src/Components/Integrations/index.jsx deleted file mode 100644 index 4709adef6..000000000 --- a/Client/src/Components/Integrations/index.jsx +++ /dev/null @@ -1,71 +0,0 @@ -import { Box, Typography, useTheme } from '@mui/material'; -import Button from '../Button'; -import PropTypes from 'prop-types'; - -/** - * Integrations component - * @param {Object} props - Props for the IntegrationsComponent. - * @param {string} props.url - The URL for the integration image. - * @param {string} props.header - The header for the integration. - * @param {string} props.info - Information about the integration. - * @param {Function} props.onClick - The onClick handler for the integration button. - * @returns {JSX.Element} The JSX representation of the IntegrationsComponent. - */ -const IntegrationsComponent = ({ url, header, info, onClick }) => { - const theme = useTheme(); - - return ( - - - - - - {header} - - - {info} - - - -