From 8c5d3ef6c9b598be8a747fe6ff069e3cfb503ace Mon Sep 17 00:00:00 2001 From: sigmaBoei Date: Wed, 25 Feb 2026 15:20:26 +0800 Subject: [PATCH] done roles layout --- frontend/src/app/roles/page.jsx | 124 +++++++++++++++++++++++ frontend/src/app/roles/styles.module.css | 91 +++++++++++++++++ frontend/src/app/users/page.jsx | 3 +- frontend/src/app/users/styles.module.css | 6 +- 4 files changed, 222 insertions(+), 2 deletions(-) diff --git a/frontend/src/app/roles/page.jsx b/frontend/src/app/roles/page.jsx index e63f19b..8a1e626 100644 --- a/frontend/src/app/roles/page.jsx +++ b/frontend/src/app/roles/page.jsx @@ -1,12 +1,136 @@ import React from "react"; import TopHeader from "../components/topHeader/TopHeader"; import globalStyle from "../globalStyle.module.css"; +import styles from "./styles.module.css"; + const RolesPage = () => { + const sampleData = [ + { + name: "organizatio-owner", + orgId: "67160a5ae69144ff19aafb86", + permissions: "35 Permissions", + }, + { + name: "organizatio-owner", + orgId: "67160a5ae69144ff19aafb86", + permissions: "35 Permissions", + }, + { + name: "organizatio-owner", + orgId: "67160a5ae69144ff19aafb86", + permissions: "35 Permissions", + }, + { + name: "organizatio-owner", + orgId: "67160a5ae69144ff19aafb86", + permissions: "35 Permissions", + }, + { + name: "organizatio-owner", + orgId: "67160a5ae69144ff19aafb86", + permissions: "35 Permissions", + }, + ]; return (
+ {/* Users Table */} +
+ + + + + + + + + + + {sampleData.map((data, index) => { + return ( + + + + + + + ); + })} + +
EmailFull NameDate Created
{data.name}{data.orgId}{data.permissions} +
+ + +
+
+
diff --git a/frontend/src/app/roles/styles.module.css b/frontend/src/app/roles/styles.module.css index e69de29..2a95b1b 100644 --- a/frontend/src/app/roles/styles.module.css +++ b/frontend/src/app/roles/styles.module.css @@ -0,0 +1,91 @@ +.tableContainer { + width: 100%; +} + +/* Table */ +.table { + width: 100%; + border-collapse: collapse; +} +/* Targets whole header */ +.tableHeader { + background: #1c1d2b; + border-bottom: 1px solid #212235; +} +/* Targets individual header */ +.tableHeader th { + align-items: center; + gap: 24px; + padding: 12px 24px; + text-align: left; + color: #85869b; + color: color(display-p3 0.5216 0.5255 0.6); + font-family: Inter; + font-size: 13px; + font-style: normal; + flex: 1 0 0; + font-weight: 500; + line-height: normal; +} + +/* Targets individual body */ +.tableBody td { + padding: 12px 24px; + color: #eeeffd; + color: color(display-p3 0.9333 0.9373 0.9882); + font-family: Inter; + font-size: 13px; + font-style: normal; + font-weight: 500; + line-height: normal; +} + +.tableBody tr { + border-bottom: 1px solid rgba(129, 135, 255, 0); +} +.tableBody tr:hover { + border-bottom: 1px solid rgba(129, 135, 255, 0.25); + border-bottom: 1px solid color(display-p3 0.5098 0.5294 1 / 0.25); + background: rgba(129, 135, 255, 0.05); + background: color(display-p3 0.5098 0.5294 1 / 0.05); +} + +.tableActions { + display: flex; + width: 100px; + justify-content: center; + align-items: center; + gap: 12px; + align-self: stretch; +} +.viewBtn, +.deleteBtn { + display: flex; + padding: 6px; + flex-direction: column; + justify-content: center; + align-items: center; + aspect-ratio: 1/1; + border-radius: 100px; + color: #969af9; + border: none; + border: 1px solid transparent; + background: transparent; + outline: none; + cursor: pointer; +} + +.viewBtn:hover, +.deleteBtn:hover { + border-radius: 100px; + color: #fff; + color: color(display-p3 1 1 1); + border: 1px solid #959aff; + border: 1px solid color(display-p3 0.5892 0.6031 0.9766); + background: linear-gradient(180deg, #696b95 0%, #20202d 100%); + background: linear-gradient( + 180deg, + color(display-p3 0.4118 0.4196 0.5725) 0%, + color(display-p3 0.1241 0.1265 0.1725) 100% + ); +} diff --git a/frontend/src/app/users/page.jsx b/frontend/src/app/users/page.jsx index 990a06a..d3f1c42 100644 --- a/frontend/src/app/users/page.jsx +++ b/frontend/src/app/users/page.jsx @@ -2,6 +2,7 @@ import React from "react"; import TopHeader from "../components/topHeader/TopHeader"; import globalStyle from "../globalStyle.module.css"; import styles from "./styles.module.css"; + const UsersPage = () => { const sampleData = [ { @@ -35,7 +36,7 @@ const UsersPage = () => {
- {/* Table */} + {/* Users Table */}
diff --git a/frontend/src/app/users/styles.module.css b/frontend/src/app/users/styles.module.css index bd000eb..2a95b1b 100644 --- a/frontend/src/app/users/styles.module.css +++ b/frontend/src/app/users/styles.module.css @@ -16,7 +16,7 @@ .tableHeader th { align-items: center; gap: 24px; - padding: 13px 24px; + padding: 12px 24px; text-align: left; color: #85869b; color: color(display-p3 0.5216 0.5255 0.6); @@ -39,6 +39,10 @@ font-weight: 500; line-height: normal; } + +.tableBody tr { + border-bottom: 1px solid rgba(129, 135, 255, 0); +} .tableBody tr:hover { border-bottom: 1px solid rgba(129, 135, 255, 0.25); border-bottom: 1px solid color(display-p3 0.5098 0.5294 1 / 0.25);