diff --git a/frontend/src/app/components/header/components/HeaderDetails.jsx b/frontend/src/app/components/header/components/HeaderDetails.jsx index 154dbb1..28d45bc 100644 --- a/frontend/src/app/components/header/components/HeaderDetails.jsx +++ b/frontend/src/app/components/header/components/HeaderDetails.jsx @@ -221,9 +221,56 @@ const HeaderDetails = () => { {openProfileDropdown && (
{/* Settings */} -
+
+ {/* Icon */} +
+ + + + +
+

Settings

+
{/* Logout */} -
+
+ {/* Icon */} +
+ + + +
+

Logout

+
)} diff --git a/frontend/src/app/components/header/components/Organization.module.css b/frontend/src/app/components/header/components/Organization.module.css index 99bbaf2..2b75584 100644 --- a/frontend/src/app/components/header/components/Organization.module.css +++ b/frontend/src/app/components/header/components/Organization.module.css @@ -88,6 +88,7 @@ box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25); box-shadow: 0 2px 15px 0 color(display-p3 0 0 0 / 0.25); position: absolute; + z-index: 1; top: 100%; margin-top: 8px; left: 0; @@ -198,8 +199,10 @@ .orgList:hover { border-radius: 4px; background: #3c4159; + color: #acb0ff; background: color(display-p3 0.2398 0.2548 0.3399); } + .orgList { display: flex; padding: 6px; @@ -208,6 +211,9 @@ align-self: stretch; border-radius: 4px; } +.orgList:hover .iconTxt p { + color: #acb0ff; +} .iconTxt { display: flex; align-items: center; diff --git a/frontend/src/app/components/header/components/Profile.module.css b/frontend/src/app/components/header/components/Profile.module.css index da28004..64ceacd 100644 --- a/frontend/src/app/components/header/components/Profile.module.css +++ b/frontend/src/app/components/header/components/Profile.module.css @@ -77,7 +77,8 @@ flex-direction: column; align-items: flex-start; gap: 6px; - align-self: stretch; + width: 100%; + left: 0; border-radius: 6px; background: #2d3144; background: color(display-p3 0.1787 0.1913 0.2605); @@ -86,22 +87,41 @@ cursor: pointer; position: absolute; top: 100%; - margin-top: 2px; + margin-top: 3px; } -.settingsBtn { - display: flex; - padding: 8px 12px; - align-items: center; - gap: 10px; - align-self: stretch; - border-radius: 4px; -} +.settingsBtn, .logoutBtn { display: flex; padding: 8px 12px; align-items: center; gap: 10px; align-self: stretch; + color: #acb0ff; border-radius: 4px; } +.settingsBtn:hover, +.logoutBtn:hover { + background: #3c4159; + background: color(display-p3 0.2392 0.2549 0.3412); + + color: #d2d3e1; + color: color(display-p3 0.8235 0.8275 0.8784); +} +.btn { + display: flex; + justify-content: center; + align-items: center; + gap: 12px; +} + +.settingsBtn, +.logoutBtn > p { + color: #acb0ff; + color: color(display-p3 0.678 0.6895 1); + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 400; + line-height: normal; +} diff --git a/frontend/src/app/roles/styles.module.css b/frontend/src/app/roles/styles.module.css index 2a95b1b..a1c4f3c 100644 --- a/frontend/src/app/roles/styles.module.css +++ b/frontend/src/app/roles/styles.module.css @@ -1,5 +1,8 @@ .tableContainer { width: 100%; + height: calc(100vh - 170px); + position: relative; + overflow: auto; } /* Table */ @@ -28,6 +31,12 @@ line-height: normal; } +.tableContainer th { + background-color: #1c1d2b; + top: 0; + position: sticky; +} + /* Targets individual body */ .tableBody td { padding: 12px 24px; diff --git a/frontend/src/app/users/[usersId]/page.jsx b/frontend/src/app/users/[usersId]/page.jsx new file mode 100644 index 0000000..5f74c86 --- /dev/null +++ b/frontend/src/app/users/[usersId]/page.jsx @@ -0,0 +1,17 @@ +import React from "react"; +import TopHeader from "@/app/components/topHeader/TopHeader"; +import globalStyle from "../../globalStyle.module.css"; + +const page = () => { + return ( +
+
+
+ +
+
+
+ ); +}; + +export default page; diff --git a/frontend/src/app/users/add/page.jsx b/frontend/src/app/users/add/page.jsx new file mode 100644 index 0000000..deebbfb --- /dev/null +++ b/frontend/src/app/users/add/page.jsx @@ -0,0 +1,17 @@ +import React from "react"; +import TopHeader from "@/app/components/topHeader/TopHeader"; +import globalStyle from "../../globalStyle.module.css"; + +const page = () => { + return ( +
+
+
+ +
+
+
+ ); +}; + +export default page; diff --git a/frontend/src/app/users/page.jsx b/frontend/src/app/users/page.jsx index d3f1c42..127657a 100644 --- a/frontend/src/app/users/page.jsx +++ b/frontend/src/app/users/page.jsx @@ -1,31 +1,28 @@ +"use client"; import React from "react"; import TopHeader from "../components/topHeader/TopHeader"; import globalStyle from "../globalStyle.module.css"; import styles from "./styles.module.css"; +import { useRouter } from "next/navigation"; const UsersPage = () => { + const router = useRouter(); + const sampleData = [ { + id: 1, email: "nino.moonshot@gmail.com", fullName: "Nino Paul Cervantes", createdAt: "2024-10-21 08:01:31.474 +0000 UTC", }, { + id: 2, email: "nino.moonshot@gmail.com", fullName: "Nino Paul Cervantes", createdAt: "2024-10-21 08:01:31.474 +0000 UTC", }, { - email: "nino.moonshot@gmail.com", - fullName: "Nino Paul Cervantes", - createdAt: "2024-10-21 08:01:31.474 +0000 UTC", - }, - { - email: "nino.moonshot@gmail.com", - fullName: "Nino Paul Cervantes", - createdAt: "2024-10-21 08:01:31.474 +0000 UTC", - }, - { + id: 3, email: "nino.moonshot@gmail.com", fullName: "Nino Paul Cervantes", createdAt: "2024-10-21 08:01:31.474 +0000 UTC", @@ -48,12 +45,15 @@ const UsersPage = () => { - {sampleData.map((data, index) => { + {sampleData.map((user, index) => { return ( - - {data.email} - {data.fullName} - {data.createdAt} + router.push(`/users/${user.id}`)} + > + {user.email} + {user.fullName} + {user.createdAt}