);
}
-export function SelectTrigger({ children, id }) {
+export function SelectTrigger({ children, value, onClick }) {
+ const { darkMode } = useDarkMode();
return (
+ );
}
-export function SelectContent({ children }) {
+export function SelectContent({ children, isOpen }) {
+ const { darkMode } = useDarkMode();
+ if (!isOpen) return null;
+
return (
-
+
{children}
);
}
-export function SelectItem({ value, children }) {
+export function SelectItem({ value, children, onSelect }) {
+ const { darkMode } = useDarkMode();
return (
console.log(`Selected: ${value}`)}
+ className={`p-2 cursor-pointer transition-all duration-300 ${
+ darkMode
+ ? "hover:bg-gray-900 text-white"
+ : "hover:bg-gray-100 text-black"
+ }`}
+ onClick={() => {
+ if (onSelect) onSelect(value);
+ }}
>
{children}
diff --git a/frontend/src/components/ui/lab-staff/tests/Table.jsx b/frontend/src/components/ui/lab-staff/tests/Table.jsx
index 7bfdac9..0e18fba 100644
--- a/frontend/src/components/ui/lab-staff/tests/Table.jsx
+++ b/frontend/src/components/ui/lab-staff/tests/Table.jsx
@@ -1,23 +1,68 @@
-export const Table = ({ children }) => (
-
-);
+import { useDarkMode } from "../../../../helpers/DarkModeContext";
-export const TableHeader = ({ children }) => (
-
{children}
-);
+export const Table = ({ children }) => {
+ const { darkMode } = useDarkMode();
+ return (
+
+ );
+};
-export const TableRow = ({ children }) => (
-
{children}
-);
+export const TableHeader = ({ children }) => {
+ const { darkMode } = useDarkMode();
+ return (
+
+ {children}
+
+ );
+};
-export const TableHead = ({ children }) => (
-
- {children}
- |
-);
+export const TableRow = ({ children }) => {
+ const { darkMode } = useDarkMode();
+ return (
+
+ {children}
+
+ );
+};
+
+export const TableHead = ({ children }) => {
+ const { darkMode } = useDarkMode();
+ return (
+
+ {children}
+ |
+ );
+};
export const TableBody = ({ children }) =>
{children};
-export const TableCell = ({ children }) => (
-
{children} |
-);
+export const TableCell = ({ children }) => {
+ const { darkMode } = useDarkMode();
+ return (
+
+ {children}
+ |
+ );
+};
diff --git a/frontend/src/components/ui/lab-staff/tests/TextArea.jsx b/frontend/src/components/ui/lab-staff/tests/TextArea.jsx
index ca2a654..d11c24c 100644
--- a/frontend/src/components/ui/lab-staff/tests/TextArea.jsx
+++ b/frontend/src/components/ui/lab-staff/tests/TextArea.jsx
@@ -1,6 +1,9 @@
import React from "react";
+import { useDarkMode } from "../../../../helpers/DarkModeContext";
export function Textarea({ id, value, readOnly, onChange, placeholder }) {
+ const { darkMode } = useDarkMode();
+
return (
);
diff --git a/frontend/src/pages/labStaff/LabStaffSettingsPage.tsx b/frontend/src/pages/labStaff/LabStaffSettingsPage.tsx
index 9f31092..a21df7e 100644
--- a/frontend/src/pages/labStaff/LabStaffSettingsPage.tsx
+++ b/frontend/src/pages/labStaff/LabStaffSettingsPage.tsx
@@ -4,29 +4,25 @@ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "../..
import { Label } from "../../components/ui/admin/Label.jsx"
import { Switch } from "../../components/ui/patient/settings/Switch.jsx"
import { Lock } from 'lucide-react'
-
+import { useDarkMode } from '../../helpers/DarkModeContext.js';
import Sidebar from "../../components/ui/lab-staff/common/Sidebar.jsx"
import Header from "../../components/ui/admin/Header.jsx";
import { Endpoint, putRequest } from "../../helpers/Network.js";
import { toast } from 'react-toastify'
import { Dialog, DialogContent } from "../../components/ui/lab-staff/Dialog.jsx"
-import { Input } from '../../components/ui/login/Input.jsx';
+import { Input } from '../../components/ui/patient/settings/Input.jsx';
import { EyeIcon, EyeOffIcon } from 'lucide-react';
export default function LabStaffSettingsPage() {
const [error, setError] = useState(null);
const [isChangePasswordOpen, setIsChangePasswordOpen] = useState(false);
-
+ const { darkMode, toggleDarkMode } = useDarkMode();
const [currentPassword, setCurrentPassword] = useState('');
const [newPassword, setNewPassword] = useState('');
const [newPasswordConfirm, setNewPasswordConfirm] = useState('');
const [showPassword, setShowPassword] = useState(false);
- const [darkMode, setDarkMode] = useState(false);
-
- const handleDarkModeToggle = (checked) => { };
-
const handleChangePassword = async (e) => {
e.preventDefault();
try {
@@ -43,7 +39,7 @@ export default function LabStaffSettingsPage() {
};
return (
-
+
{/* Main Content */}
@@ -67,7 +63,7 @@ export default function LabStaffSettingsPage() {
diff --git a/frontend/src/pages/labStaff/LabStaffTestsPage.tsx b/frontend/src/pages/labStaff/LabStaffTestsPage.tsx
index 795fb5c..144b8d2 100644
--- a/frontend/src/pages/labStaff/LabStaffTestsPage.tsx
+++ b/frontend/src/pages/labStaff/LabStaffTestsPage.tsx
@@ -11,7 +11,7 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from ".
import { Tabs, TabsContent, TabsList, TabsTrigger } from "../../components/ui/lab-staff/tests/Tabs.jsx"
import { Home, LogOut, FlaskRoundIcon as Flask, Clipboard, Search, AlertTriangle } from 'lucide-react'
import Link from "../../components/ui/lab-staff/tests/Link.jsx"
-
+import { useDarkMode } from '../../helpers/DarkModeContext.js';
import Sidebar from "../../components/ui/lab-staff/common/Sidebar.jsx"
import Header from "../../components/ui/admin/Header.jsx";
@@ -21,7 +21,7 @@ import { toast } from 'react-toastify';
export default function LabStaffTests() {
-
+ const { darkMode } = useDarkMode();
const [searchTerm, setSearchTerm] = useState('')
const [selectedTest, setSelectedTest] = useState(null)
const [testResult, setTestResult] = useState({ result: '' })
@@ -161,7 +161,7 @@ export default function LabStaffTests() {
return (
-