refactor: move frontend in apps/frontend

This commit is contained in:
Giovanni committed 2026-10-03 18:26:34 +02:00
1 parent dc39113335
commit 31304c931d
225 files changed
+67 -65

No files matched your search

@@ -0,0 +1,75 @@
/*
import Button from "../button/button.jsx";
import { useState, useEffect } from "react";
import styles from "./ThemeSwitcher.module.css";
export default function ThemeSwitcher() {
const [theme, setTheme] = useState("");
useEffect(() => {
const t = localStorage.getItem("theme");
if(t) setTheme(t);
else setTheme("light");
}, []);
const switchTheme = () => {
let newTheme = theme === "light" ? "dark" : "light";
if(theme === null || theme === "") newTheme = "dark";
localStorage.setItem("theme", newTheme);
setTheme(newTheme);
window.dispatchEvent(new Event("theme-changed"));
};
return <Button variant={"default"} onClick={switchTheme} className={styles.themeBtn}>
<img src={`/icons/theme/${theme}.svg`} alt={`${theme} icon`} className={styles.themeIcon} />
<p>Changer de thème </p>
</Button>
}
}*/
import Button from "../Button/Button";
import { useState, useEffect } from "react";
import styles from "./ThemeSwitcher.module.css";
type Theme = "light" | "dark";
export default function ThemeSwitcher() {
const [theme, setTheme] = useState<Theme | "">("");
useEffect(() => {
const savedTheme = localStorage.getItem("theme") as Theme | null;
if (savedTheme) {
setTheme(savedTheme);
} else {
setTheme("light");
}
}, []);
const switchTheme = () => {
const newTheme: Theme = theme === "light" ? "dark" : "light";
localStorage.setItem("theme", newTheme);
setTheme(newTheme);
window.dispatchEvent(new Event("theme-changed"));
};
return (
<Button
variant="default"
onClick={switchTheme}
className={styles.themeBtn}
>
<img
src={`/icons/theme/${theme}.svg`}
alt={`${theme} icon`}
className={styles.themeIcon}
/>
<p>Changer de thème</p>
</Button>
);
}