dark mode added
This commit is contained in:
parent
5a0568bec9
commit
f42e57d464
6 changed files with 44 additions and 13 deletions
|
|
@ -0,0 +1,27 @@
|
|||
import { useState, useEffect } from "react";
|
||||
|
||||
const DarkModeToggle = () => {
|
||||
const getInitialState = () => {
|
||||
const storedDarkMode = localStorage.getItem("darkMode");
|
||||
return storedDarkMode ? JSON.parse(storedDarkMode) : false;
|
||||
};
|
||||
const [isDarkMode, setIsDarkMode] = useState<boolean>(getInitialState);
|
||||
|
||||
useEffect(() => {
|
||||
document.body.classList.toggle("dark", isDarkMode);
|
||||
localStorage.setItem("darkMode", JSON.stringify(isDarkMode));
|
||||
}, [isDarkMode]);
|
||||
|
||||
return (
|
||||
<div className="fixed bottom-5 right-5">
|
||||
<button
|
||||
onClick={() => setIsDarkMode((prev) => !prev)}
|
||||
className="ml-2 text-gray-700 dark:text-gray-300"
|
||||
>
|
||||
Dark Mode
|
||||
</button>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default DarkModeToggle;
|
||||
|
|
@ -25,7 +25,9 @@ export const FormInput: React.FC<{
|
|||
}) => {
|
||||
return (
|
||||
<div className="flex flex-col gap-2 text-sm mb-2">
|
||||
<label htmlFor={name}>{label}</label>
|
||||
<label htmlFor={name} className="dark:text-slate-500">
|
||||
{label}
|
||||
</label>
|
||||
<input
|
||||
autoFocus={autoFocus}
|
||||
type={inputType}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue