Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
67ea28d
Remove unused imports from login page
Bralc003 May 24, 2026
fe434fb
Remove unused imports from all pages
Bralc003 May 24, 2026
28914a8
Change href navigation to RouterLink in HealthAnalytics.js
Bralc003 May 24, 2026
5ab1c0a
Update font and mobile layout for HealthAnalytics.js
Bralc003 May 24, 2026
29e2dab
Update user settings page UI layout
Bralc003 May 24, 2026
37bab88
Fix mobile layout for report template
Bralc003 May 24, 2026
ea8cee2
Update mobile UI on Generate Report Form
Bralc003 May 24, 2026
04eb783
Update Merchant Report form mobile UI
Bralc003 May 24, 2026
5d2924d
Update patient details page layout
Bralc003 May 24, 2026
efe375a
Fix mobile font size on Merchant landing
Bralc003 May 24, 2026
2478d74
Fix mobile font size in Patient Management
Bralc003 May 24, 2026
87cd72c
Update mobile layout on UserLanding
Bralc003 May 24, 2026
610726d
Update no report screen on report history
Bralc003 May 24, 2026
f7a1560
Fix mobile button alignment
Bralc003 May 24, 2026
816d4dd
Remove unused variables and imports after modifications
Bralc003 May 24, 2026
351e541
Resolve eslint errors when running the application
Bralc003 May 24, 2026
49fee27
Fix merchant report form validation
Bralc003 May 24, 2026
bd36659
Update navbar report history route
Bralc003 May 24, 2026
9929858
Fix scan log error for PatientManagement
Bralc003 May 24, 2026
6b4ae93
Merge branch 'dev' into shp-229/mobile-layout-and-font-consistancy
Bralc003 May 25, 2026
fd41307
Fix issues after resolving merge conflict
Bralc003 May 25, 2026
cc6bbc1
Update mobile ui for PatientAcessRequest
Bralc003 May 25, 2026
d5d0d28
Update UI for accept access request form
Bralc003 May 25, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions client/src/components/AppThemeProvider.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import React from "react";
import { ThemeProvider, createTheme } from "@mui/material";
import "@fontsource/russo-one";
import { color, fontWeight } from "@mui/system";
import { ThemeProvider, createTheme } from "@mui/material";

/**
* A centralized MUI theme for the web app.
Expand Down Expand Up @@ -137,6 +135,10 @@ export const appTheme = createTheme({
fontWeight: "regular",
fontFamily: "'Russo One', 'sans-serif'",
},
h6: {
fontWeight: "regular",
fontFamily: "'Russo One', 'sans-serif'",
},
h7: {
fontWeight: "regular",
fontFamily: "'Russo One', 'sans-serif'",
Expand All @@ -150,7 +152,6 @@ export const appTheme = createTheme({
disableRowSelectionOnClick: true,
autoHeight: false,
density: "standard",
autoHeight: false,
},
styleOverrides: {
root: {
Expand Down
55 changes: 18 additions & 37 deletions client/src/components/Navbar.js
Original file line number Diff line number Diff line change
@@ -1,40 +1,35 @@
import AppBar from "@mui/material/AppBar";
import Box from "@mui/material/Box";
import Toolbar from "@mui/material/Toolbar";
import Typography from "@mui/material/Typography";
import Button from "@mui/material/Button";
import Menu from "@mui/material/Menu";
import { useNavigate, useLocation } from "react-router-dom";
import MenuItem from "@mui/material/MenuItem";
import { useContext, useState } from "react";
import logo from "../assets/WellAiLogoTR.png";
import {
Backdrop,
Drawer,
IconButton,
List,
ListItemButton,
IconButton,
Tooltip,
ClickAwayListener,
Backdrop,
} from "@mui/material";
import AppBar from "@mui/material/AppBar";
import Box from "@mui/material/Box";
import Toolbar from "@mui/material/Toolbar";
import Typography from "@mui/material/Typography";
import { useContext, useState } from "react";
import { useLocation, useNavigate } from "react-router-dom";
import logo from "../assets/WellAiLogoTR.png";
import { UserContext } from "../utils/UserContext";
import PrivacyNotice from "./dialog/PrivacyNotice";
import DisclaimerPolicy from "./dialog/DisclaimerPolicy";
import PrivacyNotice from "./dialog/PrivacyNotice";

// Icons
import AccountCircleIcon from "@mui/icons-material/AccountCircle";
import ChevronLeftIcon from "@mui/icons-material/ChevronLeft";
import DashboardIcon from "@mui/icons-material/Dashboard";
import RestorePageIcon from "@mui/icons-material/RestorePage";
import TimelineIcon from "@mui/icons-material/Timeline";
import HistoryIcon from "@mui/icons-material/History";
import SettingsIcon from "@mui/icons-material/Settings";
import LogoutIcon from "@mui/icons-material/Logout";
import FileCopyIcon from "@mui/icons-material/FileCopy";
import GroupIcon from "@mui/icons-material/Group";
import HistoryIcon from "@mui/icons-material/History";
import HowToRegIcon from "@mui/icons-material/HowToReg";
import FileCopyIcon from "@mui/icons-material/FileCopy";
import LogoutIcon from "@mui/icons-material/Logout";
import ManageAccountsIcon from "@mui/icons-material/ManageAccounts";
import MenuIcon from "@mui/icons-material/Menu";
import ChevronLeftIcon from "@mui/icons-material/ChevronLeft";
import RestorePageIcon from "@mui/icons-material/RestorePage";
import SettingsIcon from "@mui/icons-material/Settings";
import TimelineIcon from "@mui/icons-material/Timeline";

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";

Expand All @@ -54,7 +49,7 @@ const NavBar = ({ role }) => {
// User Pages
"/user-landing": "Dashboard",
"/generate-report": "Generate Report",
"/ai-health-prediction": "Report History",
"/report-history": "Report History",
"/health-analytics": "Health Analytics",
"/user-settings": "Settings",

Expand Down Expand Up @@ -115,9 +110,6 @@ const NavBar = ({ role }) => {
{ icon: <LogoutIcon sx={{ color: "#ff4f4f" }} />, title: "Logout" },
];

// Check if settings menu is open
const [openMenu, setOpenMenu] = useState(null);

// User Logout
async function logout() {
await fetch(`${API_BASE}/logout`, {
Expand Down Expand Up @@ -169,11 +161,9 @@ const NavBar = ({ role }) => {
navigate("/health-analytics");
}
if (page === "Settings") {
handleCloseSettings();
navigate("/user-settings");
}
if (page === "Logout") {
handleCloseSettings();
logout();
}
if (page === "Users") {
Expand All @@ -196,15 +186,6 @@ const NavBar = ({ role }) => {
}
}

function handleOpenSettings(e) {
setOpenMenu(e.currentTarget);
console.log(openMenu);
}

function handleCloseSettings() {
setOpenMenu(null);
}

// Navigation Bar for standard user type
if (role === "standard_user")
return (
Expand Down
6 changes: 3 additions & 3 deletions client/src/components/administrator/AccountApprovalTable.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useState, useEffect } from "react";
import { Paper, Button, Box } from "@mui/material";
import { Box, Button, Paper } from "@mui/material";
import { DataGrid } from "@mui/x-data-grid";
import { useEffect, useState } from "react";
import ConfirmationDialog from "../dialog/confirmationDialog";

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";
Expand All @@ -10,7 +10,7 @@ const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";
*
* @returns {@mui.material.Box}
*/
const AccountApprovalTable = ({}) => {
const AccountApprovalTable = () => {
const [userData, setUserData] = useState([]); // Stores user data
const [selectedUser, setselectedUser] = useState(); // Stores the selected user
const [dialogOpen, setDialogOpen] = useState(false); // Stores dialog state
Expand Down
2 changes: 1 addition & 1 deletion client/src/components/administrator/AuditLogSearchBar.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import SearchIcon from "@mui/icons-material/Search";
import { TextField, InputAdornment, Box } from "@mui/material";
import { Box, InputAdornment, TextField } from "@mui/material";
import { memo, useEffect, useState } from "react";

/**
Expand Down
30 changes: 17 additions & 13 deletions client/src/components/administrator/AuditLogTable.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { useCallback, useEffect, useState } from "react";
import { DataGrid } from "@mui/x-data-grid";
import {
Paper,
Box,
Select,
MenuItem,
InputLabel,
FormControl,
Divider,
FormControl,
InputLabel,
MenuItem,
Paper,
Select,
} from "@mui/material";
import { DataGrid } from "@mui/x-data-grid";
import { useCallback, useEffect, useState } from "react";
import AuditLogSearchBar from "./AuditLogSearchBar";

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";
Expand Down Expand Up @@ -53,21 +53,25 @@ const AuditLogTable = () => {
const [userEmail, setUserEmail] = useState("");
const [eventType, setEventType] = useState("");

const fetchLogs = () => {
const fetchLogs = useCallback(() => {
setLoading(true);

const params = new URLSearchParams({
skip: paginationModel.page * paginationModel.pageSize,
limit: paginationModel.pageSize,
});

if (userEmail) params.append("user_email", userEmail);
if (eventType) params.append("event_type", eventType);

if (sortModel.length > 0) {
params.append("sort_by", sortModel[0].field);
params.append("sort_order", sortModel[0].sort || "desc");
}

fetch(`${API_BASE}/logs?${params.toString()}`, { credentials: "include" })
fetch(`${API_BASE}/logs?${params.toString()}`, {
credentials: "include",
})
.then((response) => {
if (!response.ok) {
throw new Error(response.status);
Expand All @@ -83,10 +87,6 @@ const AuditLogTable = () => {
console.log(err);
setLoading(false);
});
};

useEffect(() => {
fetchLogs();
}, [
paginationModel.page,
paginationModel.pageSize,
Expand All @@ -95,6 +95,10 @@ const AuditLogTable = () => {
sortModel,
]);

useEffect(() => {
fetchLogs();
}, [fetchLogs]);

const handleEmailSearchChange = useCallback((value) => {
setPaginationModel((prev) => ({ ...prev, page: 0 }));
setUserEmail(value);
Expand Down
27 changes: 11 additions & 16 deletions client/src/components/administrator/UserManagementTable.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,10 @@
import {
Paper,
Box,
Snackbar,
Alert,
Stack,
Typography,
Divider,
} from "@mui/material";
import { Alert, Box, Divider, Paper, Snackbar } from "@mui/material";
import { DataGrid } from "@mui/x-data-grid";
import { useState, useEffect, useCallback } from "react";
import * as React from "react";
import { useCallback, useEffect, useState } from "react";
import ConfirmationDialog from "../dialog/confirmationDialog";
import UserSearchBar from "./UserSearchBar";
import UserToolBar from "./UserToolBar";
import * as React from "react";

/**
* A table listing all the user accounts in the system with tools to search
Expand Down Expand Up @@ -52,15 +44,18 @@ const UserManagementTable = () => {

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";

const fetchUsers = () => {
const fetchUsers = useCallback(() => {
setLoading(true);

const params = new URLSearchParams({
skip: paginationModel.page * paginationModel.pageSize,
limit: paginationModel.pageSize,
});

if (debouncedSearchQuery) {
params.append("search", debouncedSearchQuery);
}

if (selectedClinic) {
params.append("clinic_id", selectedClinic);
}
Expand All @@ -87,10 +82,6 @@ const UserManagementTable = () => {
console.log(err);
setLoading(false);
});
};

useEffect(() => {
fetchUsers();
}, [
API_BASE,
paginationModel.page,
Expand All @@ -100,6 +91,10 @@ const UserManagementTable = () => {
sortModel,
]);

useEffect(() => {
fetchUsers();
}, [fetchUsers]);

useEffect(() => {
setPaginationModel((prev) => ({ ...prev, page: 0 }));
}, [API_BASE]);
Expand Down
4 changes: 2 additions & 2 deletions client/src/components/administrator/UserSearchBar.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import SearchIcon from "@mui/icons-material/Search";
import { TextField, Box } from "@mui/material";
import { Box, TextField } from "@mui/material";
import InputAdornment from "@mui/material/InputAdornment";
import { useEffect, useState, memo } from "react";
import { memo, useEffect, useState } from "react";

/**
* A search bar that is used as an element in the UserManagementTable to
Expand Down
2 changes: 1 addition & 1 deletion client/src/components/administrator/UserToolBar.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Box, Select, Button, MenuItem } from "@mui/material";
import DeleteForeverIcon from "@mui/icons-material/DeleteForever";
import { Box, Button, MenuItem, Select } from "@mui/material";

/**
* A tool bar to that provides the controls for modifying and filtering user
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
import {
Card,
CardContent,
Container,
Divider,
Paper,
Stack,
Typography,
} from "@mui/material";
import { Card, CardContent, Stack, Typography } from "@mui/material";
import { useEffect, useState } from "react";

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
import {
Card,
CardContent,
Container,
Divider,
Paper,
Stack,
Typography,
} from "@mui/material";
import { Card, CardContent, Stack, Typography } from "@mui/material";
import { useEffect, useState } from "react";

const API_BASE = process.env.REACT_APP_API_URL || "http://localhost:8000";
Expand Down
Loading
Loading